XML Schema any-element
Definitie en gebruik
Een any-element laat elke element van de opgegeven naamruimte zien in een sequence of choice-element.
Dit element laat de maker toe om de XML-document te verbreden met elementen die niet door het schema zijn gedefinieerd.
Elementinformatie
Item | Verklaring |
---|---|
Voorkomingsaantal | Onbeperkt |
Ouder-element | choice, sequence |
Inhoud | annotation |
Syntaxis
<any id=ID maxOccurs=nonNegativeInteger|unbounded minOccurs=nonNegativeInteger namespace=namespace processContents=lax|skip|strict enkele eigenschappen > (annotation?) </any>
(? Symbool verklaart dat een element kan voorkomen in elke element eenmaal of niet.)
Eigenschap
id
Optioneel. Stelt het unieke ID van dit element vast.
maxOccurs
Optioneel. Stelt het maximale aantal keren dat een any-element kan voorkomen in een ouder-element vast. De waarde kan een niet-negatief gehele getal zijn. Gebruik de string "unbounded" om geen limiet op het aantal keren te stellen. De standaardwaarde is 1.
minOccurs
Optioneel. Bepaal het minste aantal keren dat het <any>-element in het ouder-element kan voorkomen. De waarde kan een geheel getal groter of gelijk aan nul zijn. Om het <any>-groep optioneel te maken, stel deze eigenschap in op nul. De standaardwaarde is 1.
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 naamruimte kunnen voorkomen.
- ##targetNamespace - Elementen uit de doelnaamruimte van het ouder-element waarin dit element wordt opgenomen, kunnen voorkomen.
- Lijst van {URI-referenties van namespaces, ##targetNamespace, ##local} - Elementen uit de door spaties gescheiden lijst van namespaces kunnen voorkomen. De lijst kan de volgende inhoud bevatten: URI-referenties van de namespaces ##targetNamespace en ##local.
processContents
Optioneel. Een indicator die aangeeft hoe de applicatie of de XML-verwerker de validatie van het XML-document moet verwerken 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 het schema van de vereiste naamruimte verkrijgen en alle elementen van deze naamruimte moeten worden geverifieerd. (Standaard)
- lax - Het is hetzelfde als strict; maar er wordt geen fout gemeld zelfs als de schema niet beschikbaar is.
- skip - De XML-verwerker controleert geen elementen van de opgegeven naamruimte.
enkele eigenschappen
Optioneel. Bepaal andere eigenschappen met een non-schematische naamruimte.
Voorbeeld
Hier is een voorbeeld dat een verklaring van een "person"-element toont. Door gebruik te maken van het <any>-element, kan de maker de inhoud van "person" uitbreiden met elk element (na het <lastname>):
<xs:element name="person"> <xs:complexType> <xs:sequence> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type="xs:string"/> <xs:any minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element>