<Pełna XML Schema Reference
Definicja i Wykorzystanie
Element atrybut definiuje atrybut.
Element informacji
- Parent elements: attributeGroup, schemat complexType, ograniczenia (both simpleContent and complexContent) , rozbudowa (zarówno simpleContent i complexContent)
Składnia
<attribute
default=string
fixed=string
form=qualified|unqualified
id=ID
name=NCName
ref=QName
type=QName
use=optional|prohibited|required
any attributes
>
(annotation?,(simpleType?))
</attribute>
(Znak? Deklaruje, że element może wystąpić zero lub jeden raz wewnątrz elementu atrybutu)
Atrybut | Opis |
---|---|
default | Opcjonalny. Określa wartość domyślną atrybutu. Domyślne i stałe atrybuty nie mogą być obecne |
fixed | Opcjonalny. Określa stałą wartość atrybutu. Domyślne i stałe atrybuty nie mogą być obecne |
form | Opcjonalny. Określa formę atrybutu. Domyślną wartością jest wartość attributeFormDefault atrybutu elementu zawierającego atrybut. Można wybrać jeden z następujących:
|
id | Opcjonalny. Określa unikatowy identyfikator dla elementu |
name | Opcjonalny. Określa nazwę atrybutu. Nazwisko, ref atrybuty nie mogą być obecne |
ref | Opcjonalny. Określa odniesienie do podanego atrybutu. Nazwisko, ref atrybuty nie mogą być jednocześnie obecne. Jeżeli sędzia jest obecny, element simpleType, kształt i typ nie może być obecny |
type | Opcjonalny. Określa wbudowany typ danych lub typ prosty. type atrybut może występować tylko wtedy, gdy zawartość nie zawiera elementu simpleType |
use | Opcjonalny. Określa, w jaki jest używany atrybut. Może być jedna z następujących wartości:
|
any attributes | Opcjonalny. Określa atrybuty z innych przestrzeni nazw nie schematu |
Przykład 1
<xs:attribute name="code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z][A-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
Powyższy przykład wskazuje, że "code" atrybut posiada ograniczenia. Jedyna dopuszczalna wartość to dwie wielkie litery od A do Z.
Przykład 2
Aby zadeklarować atrybut przy użyciu istniejącego definicję atrybutu zasięgu typu złożonego, użyj ref atrybut:
<xs:attribute name="code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z][A-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:complexType name="someComplexType">
<xs:attribute ref="code"/>
</xs:complexType>
Przykład 3
Atrybuty mogą mieć albo wartość domyślną lub stałej wartości określonej. Wartość domyślna jest automatycznie przypisany do atrybutu, gdy żadna inna wartość nie jest określona. W poniższym przykładzie wartość domyślną jest "EN" :
<xs:attribute name="lang" type="xs:string" default="EN"/>
Stała wartość jest automatycznie przypisany do atrybutu, gdy żadna inna wartość nie jest określona. Ale w przeciwieństwie do wartości domyślnych; jeśli określono inną wartość niż ustalona, dokument uważa się za nieważny. W poniższym przykładzie stała wartość "EN" :
<xs:attribute name="lang" type="xs:string" fixed="EN"/>
Przykład 4
Wszystkie atrybuty są opcjonalne domyślnie. Aby wyraźnie określić, że atrybut jest opcjonalny, należy użyć "use" atrybut:
<xs:attribute name="lang" type="xs:string" use="optional"/>
Aby atrybut wymagany:
<xs:attribute name="lang" type="xs:string" use="required"/>
<Pełna XML Schema Reference