Elemento schema XML Schema
Definizione e uso
L'elemento schema definisce l'elemento radice dello schema.
Informazioni elemento
Insorgenza | una |
Padre elemento | (无父元素) |
Contenuto | include、import、annotation、redefine、attribute、attributeGroup、element、group、notation、simpleType、complexType |
Grammatica
<schema id=ID attributeFormDefault=qualified|unqualified elementFormDefault=qualified|unqualified blockDefault=(#all|list of (extension|restriction|substitution)) finalDefault=(#all|list of (extension|restriction|list|union)) targetNamespace=anyURI version=token xmlns=anyURI qualsiasi attributo > ((include|import|redefine|annotation)*,(((simpleType|complexType| group|attributeGroup)|element|attribute|notation),annotation*)*) </schema>
proprietà
id
Opzionale. Definisce l'ID unico dell'elemento.
attributeFormDefault
Opzionale. La forma dell'attributo dichiarato nel namespace di destinazione di questo schema. Il valore deve essere uno dei seguenti stringhe: "qualified" o "unqualified". Il valore predefinito è "unqualified".
- "unqualified" indica che non è necessario specificare l'attributo del namespace di destinazione con prefisso di namespace.
- "qualified" indica che è necessario specificare l'attributo del namespace di destinazione con prefisso di namespace.
elementFormDefault
Opzionale. La forma dell'elemento dichiarato nel namespace di destinazione di questo schema. Il valore deve essere uno dei seguenti stringhe: "qualified" o "unqualified". Il valore predefinito è "unqualified".
- "unqualified" indica che non è necessario specificare l'elemento del namespace di destinazione con prefisso di namespace.
- "qualified" indica che è necessario specificare l'elemento del namespace di destinazione con prefisso di namespace.
blockDefault
Opzionale. Definisce il valore predefinito dell'attributo block sugli elementi element e complexType nel namespace di destinazione. L'attributo block impedisce che un tipo complesso (o elemento) con un tipo derivato specificato venga utilizzato per sostituire un tipo complesso (o elemento) ereditato. Il valore può includere #all o una lista che è un sottoinsieme di extension, restriction o substitution:
- extension - Impedisce che i tipi complessi derivati tramite estensione vengano utilizzati per sostituire questo tipo complesso.
- restriction - Impedisce che i tipi complessi derivati tramite restrizione vengano utilizzati per sostituire questo tipo complesso.
- substitution - Impedisce la sostituzione dell'elemento.
- #all - Impedisce che tutti i tipi complessi derivati vengano utilizzati per sostituire questo tipo complesso.
finalDefault
Opzionale. Definisce il valore predefinito dell'attributo final degli elementi element, simpleType e complexType nel namespace di destinazione dell'architettura. L'attributo final impedisce che l'elemento, il simpleType o il complexType specificato venga sostituito da un tipo derivato. Per gli elementi element e complexType, il valore può includere #all o una lista che è un sottoinsieme di extension o restriction. Per gli elementi simpleType, il valore può anche includere list e union:
- extension - Di default, gli elementi del schema non possono essere derivati attraverso estensione. Applica solo agli elementi element e complexType.
- restriction - Evita la derivazione attraverso restrizione.
- list - Evita la derivazione attraverso una lista. Applica solo agli elementi simpleType.
- union - Evita la derivazione attraverso unione. Applica solo agli elementi simpleType.
- #all - Di default, gli elementi del schema non possono essere derivati da qualsiasi metodo.
targetNamespace
Il riferimento URI della namespace del schema. Può anche assegnare un prefisso a tale namespace. Se non assegnato alcun prefisso, il componente schema del namespace può essere utilizzato insieme a riferimenti non limitati.
versione
Opzionale. Stabilisce la versione del schema.
xmlns
Stabilisce un URI di riferimento di una o più namespace utilizzati in questo schema. Se non assegnato alcun prefisso, il componente schema del namespace può essere utilizzato con riferimenti non limitati.
qualsiasi attributo
Opzionale. Stabilisce qualsiasi altra proprietà con namespace non schema.
Esempio
Esempio 1
<?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="values" type="xs:string"> </xs:schema>
Esempio 2
In questo esempio, il componente schema (nome dell'elemento, tipo) nella namespace http://www.w3.org/2001/XMLSchema è non limitato, mentre http://www.codew3c.com/codew3cschema (mystring) è limitato dal prefisso wsc:
<?xml version="1.0"?> <schema xmlns="http://www.w3.org/2001/XMLSchema"}} xmlns:wsc="http://www.codew3c.com/codew3cschema" <element name="fname" type="wsc:mystring"/> </schema>