Gli ultimi tutorial di sviluppo web
 

XSD - Il <schema> Element


Il <schema> elemento è l'elemento principale di ogni schema XML.


Il <schema> Element

Il <schema> elemento è l'elemento principale di ogni XML Schema:

<?xml version="1.0"?>

<xs:schema>
...
...
</xs:schema>

Il <schema> elemento può contenere alcuni attributi. Una dichiarazione schema spesso simile a questa:

<?xml version="1.0"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.w3ii.com"
xmlns="http://www.w3ii.com"
elementFormDefault="qualified">
...
...
</xs:schema>

Il seguente frammento:

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

indica che gli elementi ei tipi di dati utilizzati nello schema provengono dal "http://www.w3.org/2001/XMLSchema" namespace. Si specifica inoltre che gli elementi e tipi di dati che provengono dal "http://www.w3.org/2001/XMLSchema" spazio dei nomi devono avere il prefisso xs:

Questo frammento:

targetNamespace="http://www.w3ii.com"

indica che gli elementi definiti da questo schema (note, to, from, heading, body.) provengono dalla "http://www.w3ii.com" namespace.

Questo frammento:

xmlns="http://www.w3ii.com"

indica che lo spazio dei nomi di default è "http://www.w3ii.com" .

Questo frammento:

elementFormDefault="qualified"

indica che tutti gli elementi utilizzati dal documento di istanza XML che sono stati dichiarati in questo schema deve essere namespace qualificato.


Riferimento a uno schema in un documento XML

Questo documento XML ha un riferimento a uno schema XML:

<?xml version="1.0"?>

<note xmlns="http://www.w3ii.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3ii.com note.xsd">

<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

Il seguente frammento:

xmlns="http://www.w3ii.com"

specifica la dichiarazione di spazio dei nomi predefinito. Questa dichiarazione indica lo schema-validatore che tutti gli elementi utilizzati in questo documento XML sono dichiarati nella "http://www.w3ii.com" namespace.

Una volta ottenuto il namespace XML Schema Instance disponibili:

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

è possibile utilizzare l' schemaLocation attributo. Questo attributo ha due valori, separati da uno spazio. Il primo valore è il namespace da utilizzare. Il secondo valore è la posizione dello schema XML da utilizzare per quel namespace:

xsi:schemaLocation="http://www.w3ii.com note.xsd"