web-dev-qa-db-fra.com

Quelle est la difference entre xsd et xsi?

Quelle est exactement la différence entre XML Schema Document et XML Schema Instance?

  • xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  • xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

Veuillez développer.

21
Piyush

xsd et xsi Similitudes

  • Les deux sont Préfixes d'espace de noms XML , abréviations pour un ( Espace de noms XML .
  • Les deux sont, comme tous les préfixes d'espace de noms, nommés arbitrairement; d'autres abréviations de préfixe d'espace de noms pourraient également être utilisées. Cependant, les deux préfixes sont conventionnel et sont donc recommandés. (Une alternative également conventionnelle à xsd est xs.)

xsd et xsi Différences

Voir également

18
kjhughes

http://www.w3.org/2001/XMLSchema

La version simple: il s'agit de l'espace de noms utilisé dans un schéma XML (XSD). Un schéma XML est utilisé pour décrire ce qui est valide dans un document d'instance XML.

La version moins simple: il s'agit de l'espace de noms d'un schéma XML qui décrit la structure d'un schéma XML. En d'autres termes, un schéma qui se décrit.

Un schéma XML (XSD) doit être écrit à l'aide des types définis dans ce schéma.

Par exemple.

<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="MyElement" type="xs:string" />
</xs:schema>

http://www.w3.org/2001/XMLSchema-instance

Il s'agit d'un espace de noms utilisé dans les documents d'instance XML pour fournir des données supplémentaires à l'analyseur XML qui le traite. Il décrit les attributs xsi: schemalocation, xsi: noSchemalocation, xsi: type et xsi: nil que l'analyseur XML peut utiliser pour l'assister dans la validation.

Par exemple.

<MyElement xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
           xsi:noNamespaceSchemaLocation="MySchema.xsd">
    string
</MyElement>
4
Sprotty