Maison >développement back-end >Tutoriel XML/RSS >Explication détaillée de l'exemple de code XSD pour la définition de schéma dans la programmation XML

Explication détaillée de l'exemple de code XSD pour la définition de schéma dans la programmation XML

黄舟
黄舟original
2017-03-10 19:28:511723parcourir

Cet article présente principalement l'explication détaillée de la définition de schéma XSD dans la programmation XML, et explique comment déclarer un schéma et définir des types dans les documents XML. Les amis dans le besoin peuvent s'y référer

Le schéma XML est généralement appelé For. Définition de schéma XML (XSD). Il est utilisé pour décrire et valider la structure et le contenu des données XML. Les schémas XML définissent des éléments, des attributs et des types de données. Les éléments de schéma prennent également en charge les espaces de noms. Il est similaire à un schéma de base de données qui décrit les données d'une base de données.

Syntaxe
Nous devons déclarer le schéma dans le document XML comme suit :

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

Exemple

L'exemple suivant montre comment utiliser un schéma :

  
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">  
  
      
          
              
              
              
          
      
  

L'idée de base derrière les schémas XML est de décrire les formats légaux qui peuvent être acceptés par XML. documents.

Éléments
Comme nous l'avons vu dans le chapitre sur les éléments XML, les éléments sont des éléments constitutifs d'un document XML. Les éléments peuvent être définis dans XSD comme suit :

<xs:element name="x" type="y"/>

Définition du type
Nous pouvons définir les éléments du schéma XML comme suit :

Type simple : les éléments de type simple ne peuvent être utilisés que dans un contexte textuel. Certains types simples prédéfinis sont : xs:integer, xs:boolean, xs:string, xs:data. Par exemple :

<xs:element name="phone_number" type="xs:int" />

Type complexe : Un type complexe est un conteneur défini par d'autres éléments. Nous permet de spécifier quel élément peut contenir des éléments enfants pour fournir une certaine structure au document XML. Par exemple :

<xs:element name="Address">  
    <xs:complexType>  
        <xs:sequence>  
            <xs:element name="name" type="xs:string" />  
            <xs:element name="company" type="xs:string" />  
            <xs:element name="phone" type="xs:int" />  
        </xs:sequence>  
    </xs:complexType>  
</xs:element>

Dans l'exemple ci-dessus, l'élément Address est composé d'éléments enfants. Il s'agit d'un conteneur pour d'autres définitions 6f87483d610e6467d66b50e3582f428d, nous permettant de construire une hiérarchie simple d'éléments dans un document XML.

Types globaux : Pour les types globaux, nous pouvons définir des types indépendants dans le document, qui peuvent également utiliser toutes les autres références. Par exemple, disons que nous souhaitons généraliser la personne et l'entreprise pour différentes adresses d'entreprise. Dans ce cas, on peut définir un type générique comme celui-ci :

<xs:element name="AddressType">  
    <xs:complexType>  
        <xs:sequence>  
            <xs:element name="name" type="xs:string" />  
            <xs:element name="company" type="xs:string" />  
        </xs:sequence>  
    </xs:complexType>  
</xs:element>

puis utiliser ce type dans l'exemple suivant :

<xs:element name="Address1">  
    <xs:complexType>  
        <xs:sequence>  
            <xs:element name="address" type="AddressType" />  
            <xs:element name="phone1" type="xs:int" />  
        </xs:sequence>  
    </xs:complexType>  
</xs:element>  
<xs:element name="Address2">  
    <xs:complexType>  
        <xs:sequence>  
            <xs:element name="address" type="AddressType" />  
            <xs:element name="phone2" type="xs:int" />  
        </xs:sequence>  
    </xs:complexType>  
</xs:element>

Plus besoin de définir deux fois le nom et la société (une fois pour l'adresse 1 et une fois pour l'adresse 2), nous avons désormais une définition indépendante. Cela facilite la maintenance, par exemple si l'on décide d'ajouter un élément "Code postal" à une adresse, il suffit de l'ajouter à un seul endroit.

Attributs
Les attributs dans XSD fournissent des informations supplémentaires sur un élément. Les attributs avec les attributs de nom et de type sont les suivants :

<xs:attribute name="x" type="y"/>


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn