Latest web development tutorials

XML Schema qualsiasi elemento

> <Any> elemento per elemento ci dà la possibilità di espandere non è specificato dallo schema di un documento XML!


h2> <qualsiasi> elemento

<Any> elemento per elemento ci dà la possibilità di espandere non è specificato dallo schema di un documento XML!

L'esempio seguente è citato frammento di schema XML chiamato "family.xsd" in. Essa mostra una dichiarazione per l'elemento "persona". Usando il <qualsiasi> elemento, siamo in grado di utilizzare qualsiasi elemento (nella <cognome>) Dopo elementi estesi "persona":

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

Ora, vogliamo usare l'elemento "figli" di estendere l'elemento "persona". In tali circostanze ce la possiamo fare, anche se l'autore dello schema di cui sopra non dichiara alcun elemento "figli".

Guardate questo file di schema denominato "children.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:element name="children">
<xs:complexType>
<xs:sequence>
<xs:element name="childname" type="xs:string"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>

</xs:schema>

Il seguente file XML (denominato "Myfamily.xml"), ha utilizzato i dati di due diversi ingredienti di schema, "family.xsd" e "children.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 children.xsd">

<person>
<firstname>Hege</firstname>
<lastname>Refsnes</lastname>
<children>
<childname>Cecilie</childname>
</children>
</person>

<person>
<firstname>Stale</firstname>
<lastname>Refsnes</lastname>
</person>

</persons>

Sopra il file XML è valido, che è dovuto allo schema "family.xsd" Abbiamo permesso dopo elementi opzionali elementi "Cognome" per espandere elemento "persona".

<Any> e <anyAttribute> può essere utilizzato per creare documenti scalabile! Essi hanno la capacità di rendere il documento non conteneva una dichiarazione dello schema XML principale attraverso elementi aggiuntivi.