XML Schema attribute-element
Definition og brug
attribute-elementet definerer en egenskab.
Elementinformation
Antal forekomster | Defineres én gang i schema-elementet. Citeres flere gange i komplekse typer eller egenskabsgrupper. |
Forældrelement | attributeGroup、schema、complexType、restriction (simpleContent)、extension (simpleContent)、restriction (complexContent)、extension (complexContent) |
Indhold | annotation、simpleType |
Syntaks
<attribute default=string fixed=string form=qualified|unqualified id=ID name=NCName ref=QName type=QName use=optional|prohibited|required enhver egenskab > (annotation?,(simpleType?)) </attribute>
(?-symbolet erklærer, at dette element kan optræde nul eller én gang i attribute-elementet.)
Egenskab
default
Valgfri. Angiver standardværdien for egenskaben. Default- og fixed-attributter kan ikke optræde samtidig.
fixed
Valgfri. Angiver den faste værdi for egenskaben. Default- og fixed-attributter kan ikke optræde samtidig.
form
Valgfri. Angiver formatet for egenskaben. Standardværdien er værdien af attributeFormDefault-attributten i schema-elementet, der indeholder egenskaben. Kan indstilles til følgende værdier:
- "qualified" - Angiver, at egenskaben skal begrænses gennem et navnerumpræfiks og egenskabens ikoniske navn (NCName).
- "unqualified" - Angiver, at denne egenskab ikke skal være begrænset af et navnerumpræfiks og ikke skal matche egenskabens ikonisk navn (NCName), dvs. den lokale navn.
id
Valgfri. Angiv det unikke ID for elementet.
navn
Valgfri. Angiv navnet på egenskaben. name- og ref-egenskaber kan ikke optræde samtidig.
ref
Valgfri. Angiv en reference til den specificerede egenskab. name- og ref-egenskaber kan ikke optræde samtidig. Hvis ref optræder, kan simpleType-element, form og type ikke optræde.
type
Valgfri. Angiv en indbygget datatype eller en simpel type. type-egenskaben skal kun optræde, hvis indholdet ikke indeholder en simpleType-element.
brug
Valgfri. Angiv, hvordan egenskaben skal bruges. Du kan sætte følgende værdier:
- Valgfri - egenskaben er valgfri og kan have enhver værdi (standard).
- Prohibiteret - egenskaben må ikke bruges.
- Obligatorisk - egenskaben er påkrævet.
enhver egenskab
Valgfri. Angiv eventuelle andre egenskaber med non-schema-namnespacen.
Eksempel
Eksempel 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>
Det foregående eksempel indikerer, at "code"-egenskaben har en begrænsning. De eneste accepterede værdier er to bogstaver fra store bogstaver A til Z.
Eksempel 2
For at bruge en eksisterende egenskabsdefinition i en kompleks type til at erklære en egenskab, brug ref-egenskaben:
<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>
Eksempel 3
Egenskaben kan enten have en standardværdi eller en specificeret fast værdi. Hvis ingen andre værdier er angivet, tildeler dokumentet automatisk en standardværdi til egenskaben. I det følgende eksempel er standardværdien "EN":
<xs:attribute name="lang" type="xs:string" default="EN"/>
Hvis ingen andre værdier er angivet, tildeler dokumentet automatisk en fast værdi til egenskaben. Men forskellig fra standardværdien, hvis du angiver en værdi, der ikke er en fast værdi for egenskaben, vil dokumentet validere det som ugyldigt. I det følgende eksempel er den faste værdi "EN":
<xs:attribute name="lang" type="xs:string" fixed="EN"/>
Eksempel 4
Alle egenskaber er som standard valgfri. For at specifikt definere egenskaber som valgfri, skal du bruge "use"-egenskaben:
<xs:attribute name="lang" type="xs:string" use="optional"/>
Gør egenskaben obligatorisk:
<xs:attribute name="lang" type="xs:string" use="required"/>