Latest web development tutorials

XML-Schema anyAttribute Element

<AnyAttribute> -Element ermöglicht es uns, die XML-Dokumenteigenschaften durch das Schema spezifiziert sind nicht zu verlängern!


<AnyAttribute> -Element ermöglicht es uns, die XML-Dokumenteigenschaften durch das Schema spezifiziert sind nicht zu verlängern!

Das folgende Beispiel ist ein Fragment aus dem XML-Schema mit dem Namen "family.xsd" von. Es zeigt uns, eine Erklärung gegen die "Person" Element. Durch die Verwendung des <anyAttribute> -Element, können wir eine beliebige Anzahl von Attributen, die der "Person" Element hinzufügen:

<xs:element name="person">
<xs:complexType>
<xs:sequence>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="lastname" type="xs:string"/>
</xs:sequence>
<xs:anyAttribute/>
</xs:complexType>
</xs:element>

Nun hoffen wir, dass durch die "Gender", dass das Attribut "Person" Element zu erweitern. In diesem Fall können wir tun so, auch wenn der Autor des Schemas oben nie "Geschlecht" Attribut deklariert.

Schauen Sie sich dieses Schema Datei mit dem Namen "attribute.xsd":

<?xml version="1.0" encoding="ISO-8859-1"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.w3schools.com"
xmlns="http://www.w3schools.com"
elementFormDefault="qualified">

<xs:attribute name="gender">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="male|female"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>

</xs:schema>

Die folgende XML (genannt "Myfamily.xml"), die Verwendung von Zutaten aus verschiedenen Schemas, "family.xsd" und "attribute.xsd":

<?xml version="1.0" encoding="ISO-8859-1"?>

<persons xmlns="http://www.microsoft.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:SchemaLocation="http://www.microsoft.com family.xsd
http://www.w3schools.com attribute.xsd">

<person gender="female">
<firstname>Hege</firstname>
<lastname>Refsnes</lastname>
</person>

<person gender="male">
<firstname>Stale</firstname>
<lastname>Refsnes</lastname>
</person>

</persons>

Diese XML-Datei oben ist gültig, weil das Schema "family.xsd" ermöglicht es uns, Attribute der "Person" Element hinzuzufügen.

<Any> und <anyAttribute> kann verwendet werden, skalierbare Dokument zu erstellen! Sie haben die Möglichkeit, das Dokument zu machen nicht eine Erklärung des Haupt XML-Schema durch zusätzliche Elemente enthalten.