<Pełna XML Schema Reference
Definicja i Wykorzystanie
Element element definiuje elementu.
Element informacji
- Parent elements: schematu, wybór, wszystko, sekwencja, grupa
Składnia
<element
id=ID
name=NCName
ref=QName
type=QName
substitutionGroup=QName
default=string
fixed=string
form=qualified|unqualified
maxOccurs=nonNegativeInteger|unbounded
minOccurs=nonNegativeInteger
nillable=true|false
abstract=true|false
block=(#all|list of (extension|restriction))
final=(#all|list of (extension|restriction))
any attributes
>
annotation?,(simpleType|complexType)?,(unique|key|keyref)*
</element>
(Znak? Deklaruje, że element może wystąpić zero lub jeden raz, a * Znak deklaruje, że element może wystąpić zero lub więcej razy wewnątrz elementu elementu)
Atrybut | Opis |
---|---|
id | Opcjonalny. Określa unikatowy identyfikator dla elementu |
name | Opcjonalny. Określa nazwę elementu. Ten atrybut jest wymagany, jeśli element nadrzędny jest elementem schematu |
ref | Opcjonalny. Odnosi się do nazwy innego elementu. ref atrybut może zawierać prefiks obszaru nazw. Cecha ta nie może być stosowane, gdy element nadrzędny jest element schematu |
type | Opcjonalny. Określa albo nazwę wbudowany typ danych lub nazwy simpleType lub elementu complexType |
substitutionGroup | Opcjonalny. Określa nazwę elementu, który może być podstawiony przez ten element. Cecha ta nie może być stosowane, gdy element nadrzędny nie jest elementem schematu |
default | Opcjonalny. Określa domyślną wartość dla elementu (może być stosowany tylko wtedy, gdy zawartość elementu jest prosty typ lub tylko tekst) |
fixed | Opcjonalny. Określa stałą wartość dla elementu (może być stosowany tylko wtedy, gdy zawartość elementu jest prosty typ lub tylko tekst) |
form | Opcjonalny. Określa formę dla elementu. "unqualified" wskazuje, że element ten nie jest wymagany, aby zostać zakwalifikowane z przedrostkiem przestrzeni nazw. "qualified" oznacza, że element ten musi być kwalifikowane z przedrostkiem przestrzeni nazw. Domyślną wartością jest wartość elementFormDefault atrybutu elementu schematu. Cecha ta nie może być stosowane, gdy element nadrzędny jest element schematu |
maxOccurs | Opcjonalny. Określa maksymalną liczbę razy ten element może wystąpić w elemencie nadrzędnym. Wartość ta może być dowolna liczba> = 0, lub jeśli chcesz ustawić żadnego limitu maksymalnej liczby, należy użyć wartości "unbounded" . Wartością domyślną jest 1. Ten atrybut nie może być używany, jeśli element nadrzędny jest elementem schematu |
minOccurs | Opcjonalny. Określa minimalną liczbę razy ten element może wystąpić w elemencie nadrzędnym. Wartość ta może być dowolna wartość liczbowa> = 0. Wartość domyślna wynosi 1. Ten atrybut nie może być używany, jeśli element nadrzędny jest elementem schematu |
nillable | Opcjonalny. Określa, czy wyraźna wartość zerowa może być przypisany do danego elementu. Prawdziwa umożliwia wystąpienie elementu mieć null atrybut ustawiony na true. null atrybut jest zdefiniowany jako część przestrzeni nazw XML Schema dla instancji. Domyślnie jest fałszywy |
abstract | Opcjonalny. Określa czy element może być stosowany w dokumencie np. True oznacza, że dany element nie może pojawić się w dokumencie instancji. Zamiast tego, kolejny element, którego substitutionGroup atrybut zawiera kwalifikowana nazwa (QName) tego elementu musi pojawić się w miejscu tego elementu. Domyślnie jest fałszywy |
block | Opcjonalny. Zapobiega to element z określonego typu pochodnej zostały użyte w miejscu tego elementu. Wartość ta może zawierać #all lub listę, która jest podzbiorem rozszerzenia, ograniczenia lub equivClass:
|
final | Opcjonalny. Ustawia domyślną wartość final atrybutu elementu elementu. Cecha ta nie może być stosowane, gdy element nadrzędny nie jest elementem schematu. Wartość ta może zawierać #all lub listę, która jest podzbiorem rozszerzenia lub ograniczenia:
|
any attributes | Opcjonalny. Określa atrybuty z innych przestrzeni nazw nie schematu |
Przykład 1
Poniższy przykład jest schemat z czterech prostych elementów nazwanych "fname" , "lname" , "age" i "dateborn" , które są typu string, nonNegativeInteger i daty:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="fname" type="xs:string"/>
<xs:element name="lname" type="xs:string"/>
<xs:element name="age" type="xs:nonNegativeInteger"/>
<xs:element name="dateborn" type="xs:date"/>
</xs:schema>
Przykład 2
Poniższy przykład jest schemat z elementem o nazwie "note" , który jest typu złożonego. "note" element zawiera cztery inne proste elementy; "to" , "from" , "heading" i "body" :
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Przykład 3
Ten przykład jest równa przykładzie 2, ale tutaj zdecydowaliśmy się użyć ref atrybut odnosi się do nazw elementów:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element ref="to"/>
<xs:element ref="from"/>
<xs:element ref="heading"/>
<xs:element ref="body"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:schema>
<Pełna XML Schema Reference