Heim >Backend-Entwicklung >XML/RSS-Tutorial >Detaillierte Erläuterung des XSD-Beispielcodes für die Schemadefinition in der XML-Programmierung

Detaillierte Erläuterung des XSD-Beispielcodes für die Schemadefinition in der XML-Programmierung

黄舟
黄舟Original
2017-03-10 19:28:511724Durchsuche

Dieser Artikel führt hauptsächlich die detaillierte Erklärung der Schemadefinition XSD in der XML-Programmierung ein und erklärt, wie man Schemata deklariert und Typen in XML-Dokumenten definiert. Freunde in Not können darauf verweisen

XML-Schema wird normalerweise For genannt XML-Schemadefinition (XSD). Es dient zur Beschreibung und Validierung der Struktur und des Inhalts von XML-Daten. XML-Schemas definieren Elemente, Attribute und Datentypen. Schemaelemente unterstützen auch Namespaces. Es ähnelt einem Datenbankschema, das die Daten in einer Datenbank beschreibt.

Syntax
Wir müssen das Schema im XML-Dokument wie folgt deklarieren:

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

Beispiel

Das folgende Beispiel zeigt, wie das Schema verwendet wird:

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

Die Grundidee des XML-Schemas besteht darin, das rechtliche Format zu beschreiben, das ein XML-Dokument akzeptieren kann .

Elemente
Wie wir im Kapitel XML-Elemente gesehen haben, sind Elemente XML-Dokumentbausteine. Elemente können in XSD wie folgt definiert werden:

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

Typ definieren
Wir können XML-Schemaelemente wie folgt definieren:

Einfacher Typ: Einfache Typelemente können nur im Textkontext verwendet werden. Einige vordefinierte einfache Typen sind: xs:integer, xs:boolean, xs:string, xs:data. Zum Beispiel:

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

Komplexer Typ: Ein komplexer Typ ist ein Container, der durch andere Elemente definiert wird. Ermöglicht es uns anzugeben, welches Element untergeordnete Elemente enthalten kann, um dem XML-Dokument eine gewisse Struktur zu verleihen. Zum Beispiel:

<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>

Im obigen Beispiel besteht das Address-Element aus untergeordneten Elementen. Es ist ein Container für andere 6f87483d610e6467d66b50e3582f428d-Definitionen, der es uns ermöglicht, eine einfache Hierarchie von Elementen in einem XML-Dokument aufzubauen.

Globale Typen: Für globale Typen können wir im Dokument unabhängige Typen definieren, die auch alle anderen Referenzen verwenden können. Angenommen, wir möchten Person und Firma für verschiedene Firmenadressen verallgemeinern. In diesem Fall können wir einen generischen Typ wie folgt definieren:

<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>

und diesen Typ dann im folgenden Beispiel verwenden:

<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>

Name und Firma müssen nicht mehr zweimal definiert werden (einmal für Adresse1 und einmal für Adresse2), jetzt haben wir eine unabhängige Definition. Dies erleichtert die Wartung. Wenn wir uns beispielsweise dafür entscheiden, einer Adresse das Element „Postleitzahl“ hinzuzufügen, muss es nur an einer Stelle hinzugefügt werden.

Attribute
Attribute in XSD stellen zusätzliche Informationen zu einem Element bereit. Attribute mit Namens- und Typattributen lauten wie folgt:

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


Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des XSD-Beispielcodes für die Schemadefinition in der XML-Programmierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn