XML Schema anyAttribute-element
Definitie en gebruik
De element 'anyAttribute' laat de maker toe om de XML-document te verbreden met eigenschappen die niet zijn gedefinieerd in het schema.
Elementinformatie
Item | Verklaring |
---|---|
Aantal keren dat het voorkomt | Geen beperking |
Hoofdcomponent | complexType, restriction (simpleContent), extension (simpleContent), restriction (complexContent), extension (complexContent), attributeGroup |
Inhoud | annotatie |
Syntaxis
<anyAttribute id=ID namespace=namespace processContents=lax|skip|strict alle eigenschappen > (annotatie?) </anyAttribute>
(? Het teken ? vermeldt dat het element binnen het anyAttribute-element nul of één keer kan voorkomen.)
Eigenschappen
id
Optioneel. Bepaal het unieke ID van dit element.
namespace
Optioneel. Bepaal de naamruimte van de elementen die kunnen worden gebruikt. Als de naamruimte niet is gespecificeerd, is de standaardwaarde ##any. Als de naamruimte is gespecificeerd, moet het een van de volgende waarden zijn.
- ##any - Elementen uit elke naamruimte kunnen voorkomen (standaard).
- ##other - Elementen uit elke andere naamruimte dan de doelnaamruimte van het ouder-element kunnen voorkomen.
- ##local - Elementen zonder naamruimtebeperking kunnen voorkomen.
- ##targetNamespace - Elementen uit de doelnaamruimte van het ouder-element waarin dit element zich bevindt, kunnen voorkomen.
- Lijst van {URI-referenties van naamruimtes, ##targetNamespace, ##local} - Elementen uit de door spaties gescheiden lijst van naamruimtes kunnen voorkomen. Deze lijst kan de volgende inhoud bevatten: de URI-referenties van de naamruimtes ##targetNamespace en ##local.
processContents
Optioneel. Een indicator die aangeeft hoe de applicatie of XML-verwerker de validatie van het XML-document moet afhandelen op basis van de elementen die door het any-element zijn gespecificeerd. Als de property processContents niet is gespecificeerd, is de standaardwaarde strict. Als processContents is gespecificeerd, moet het een van de volgende waarden zijn.
- strict - De XML-verwerker moet de structuur van de vereiste naamruimte verkrijgen en alle elementen uit deze naamruimte moeten worden geverifieerd. (Standaard)
- lax - Hetzelfde als strict; maar er worden geen fouten gemeld als de structuur niet beschikbaar is.
- skip - De XML-verwerker controleert geen elementen uit de opgegeven naamruimte.
alle eigenschappen
Optioneel. Bepaal alle andere eigenschappen met een non-schematische naamruimte.
Voorbeeld
Hier is een voorbeeld van een verklaring voor het "person"-element. Door het gebruik van het <anyAttribute>-element kan de maker een onbeperkt aantal eigenschappen toevoegen aan het "person"-element:
<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>