XML Schema anyAttribute element
Definition and usage
The anyAttribute element allows creators to extend the XML document with attributes not specified by the schema.
element information
item | description |
---|---|
occurrence | unrestricted |
parent element | complexType, restriction (simpleContent), extension (simpleContent), restriction (complexContent), extension (complexContent), attributeGroup |
Innehåll | anteckning |
Syntaks
<anyAttribute id=ID namespace=namespace processContents=lax|skip|strict valfria attribut > (anteckning?) </anyAttribute>
(?-teckenet anger att elementet kan förekomma noll eller en gång inom anyAttribute-elementet.)
Egenskaper
id
Valfritt. Definiera det unika ID:t för elementet.
namespace
Valfritt. Definiera namnrymden för element som kan användas. Om ingen namnrymd är specificerad, är standarden ##any. Om en namnrymd specificeras, måste det vara ett av följande värden.
- ##any - Element från alla namnrymdar kan förekomma (standard).
- ##other - Element från alla andra namnrymdar utanför den målnamnrymd som innehåller det aktuella elementet kan förekomma.
- ##local - Element utan namnrymdsgräns kan förekomma.
- ##targetNamespace - Element från den målnamnrymd som innehåller det aktuella elementet kan förekomma.
- En lista över URI-referenser av namnrymdar, ##targetNamespace, ##local - Element från en med mellanslag åtskilda namnrymdslista kan förekomma. Listan kan innehålla följande: URI-referenser till namnrymdar ##targetNamespace och ##local.
processContents
Valfritt. En indikator som anger hur applikationen eller XML-handlaren bör behandla valideringen av XML-dokumentet baserat på element som specificeras av detta any-element. Om processContents-attributet inte är specificerat, är standarden strict. Om processContents är specificerat, måste det vara ett av följande värden.
- strict - XML-handlaren måste få tag på den nödvändiga namnrymdens schema och måste verifiera alla element från dessa namnrymdar. (Standard)
- lax - Som strict; men inga fel uppstår även om man inte kan få tag på den specifika skalan.
- skip - XML-handlaren verifierar inte alla element från den specificerade namnrymden.
valfria attribut
Valfritt. Definiera alla andra attribut med non-schema-namnrymd.
Exempel
Följande exempel visar en deklaration för "person"-elementet. Genom att använda <anyAttribute>-elementet kan skaparen lägga till ett obegränsat antal egenskaper till "person"-elementet:
<xs:element name="person"> <xs:complexType> <xs:sequence> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type="xs:string"/> </xs:sequence> <xs:anyAttribute/> </xs:complexType> </xs:element>