tipo
Especifica el tipo de un elemento. Este atributo etiqueta a un elemento como perteneciente a un tipo determinado, aunque puede que no exista en el esquema una declaración de elemento que enlace dicho elemento al tipo.
<xsi:type="QName">
Atributos
- QName
Nombre del tipo de datos que se sustituye por el tipo de datos declarado para el elemento.
Comentarios
El atributo type se usa también cuando se utilizan tipos complejos derivados en documentos de instancia en lugar del tipo base esperado.
Ejemplo
En el ejemplo siguiente se muestra el uso del atributo type. El ejemplo usa un un documento de esquema, person.xsd, y una documento de instancia, person.xml. El documento de esquema contiene un tipo base Person, un tipo derivado Employee y una declaración de elemento person. El documento de instancia muestra el uso del atributo xsi:type para especificar que el elemento person del espacio de nombres urn:contoso-com:People es del tipo Employee en el mismo espacio de nombres.
<xs:schema xmlns:xs= "http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:contoso-com:People"
xmlns:ns="urn:contoso-com:People">
<xs:element name="person" type="ns:Person"/>
<xs:complexType name="Person">
<xs:sequence>
<xs:element name= "name" type="xs:string"/>
<xs:element name= "height" type="xs:double" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="Employee">
<xs:complexContent>
<xs:extension base="ns:Person">
<xs:sequence>
<xs:element name="jobDescription" type="xs:string" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>
<p:Person
xmlns:p="urn:contoso-com:People"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:type="p:Employee">
<name>John</name>
<height>59</height>
<jobDescription>manager</jobDescription>
</p:Person>