Najnowsze tutoriale tworzenie stron internetowych
 

XML Schemat Element Element


<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:
  • Rozszerzenie - zapobiega elementy pochodzące co za tym idzie
  • Ograniczenie - zapobiega elementy pochodzące od ograniczeń
  • substytucji - zapobiega elementy pochodzące z podstawienia
  • #all - zapobiega wszystkie elementy pochodzące
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:
  • Rozszerzenie - zapobiega elementy pochodzące co za tym idzie
  • Ograniczenie - zapobiega elementy pochodzące od ograniczeń
  • #all - zapobiega wszystkie elementy pochodzące
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