XML Schema any-elementti
Määrittely ja käyttö
Any-elementti mahdollistaa määritellyn nimenkutsun elementtien näkyvyyden, jotka voivat olla minkä tahansa elementin sisällä, jossa on sequence- tai choice-elementti.
Tämä elementti mahdollistaa luojan laajentaa XML-dokumenttia elementtejä, joita schema ei ole määrittänyt.
Elementtiinfo
Hankkeet | Kuvaus |
---|---|
Esiintymiskerta | Rajoittamaton |
Isäelementti | choice、sequence |
Sisältö | annotation |
Syntaksi
<any id=ID maxOccurs=nonNegativeInteger|unbounded minOccurs=nonNegativeInteger namespace=namespace processContents=lax|skip|strict muiden ominaisuuksien > (annotation?) </any>
(?-merkki määrittää elementin, joka voi esiintyä millä tahansa elementissä nollan tai yhden kerran.)
Atribuutti
id
Valinnainen. Määrittää elementin ainutlaatuisen ID:n.
maxOccurs
Valinnainen. Määrittää, kuinka monta kertaa any-elementti voi esiintyä isäelementissä. Arvo voi olla yhtä suuri tai suurempi kuin nolla kokonaisluku. Jos et halua asettaa enimmäismäärää, käytä merkkijonoa "unbounded". Oletusarvo on 1.
minOccurs
Valinnainen. Määrittelee, kuinka monta kertaa any-elementti voi ilmestyä isäelementissä. Arvo voi olla yli tai yhtä suuri kuin nolla. Jos haluat määrittää any-ryhmän valinnaiseksi, aseta tämä ominaisuus arvoon nolla. Oletusarvo on 1.
namespace
Valinnainen. Määrittelee nimelevyjen, joissa voidaan käyttää elementtejä. Jos nimelevyä ei ole määritelty, oletusarvo on ##any. Jos nimelevyä on määritelty, se on seuraavista arvoista yksi:
- ##any - Kaikkien nimelevyjen elementit voivat ilmestyä (oletusarvo).
- ##other - Kaikkien isäelementin nimelevyjen ulkopuolelta tulevat elementit voivat ilmestyä.
- ##local - Nimelemättömät elementit voivat ilmestyä.
- ##targetNamespace - Elementit, jotka kuuluvat isäelementtiin sisältyvään nimelevyyn, voivat ilmestyä.
- {URI viittaukset nimelevyille, ##targetNamespace, ##local} - Listan elementit, jotka voivat ilmestyä erotetuista nimelevyistä, voivat sisältää seuraavaa: Nimelevyjen URI viittaukset ##targetNamespace ja ##local.
processContents
Valinnainen. Viittaus, joka kertoo sovellukselle tai XML-käsittelijälle, miten XML-dokumentin vahvistusta käsitellään elementin määrittämän elementin perusteella. Jos processContents-ominaisuutta ei ole määritelty, oletusarvo on strict. Jos määritetty, se on seuraavista arvoista yksi:
- strict - XML-käsittelijän on saatava tarvittava rakenne ja se on vahvistettava kaikki elementit näistä nimelevyistä. (Oletusarvo)
- lax - Sama kuin strict; mutta, vaikka rakennetta ei voida hakea, ei tapahdu minkäänlaista virhettä.
- skip - XML-käsittelijä ei yritä vahvistaa kaikkia tiettyä nimeälevyä tulevia elementtejä.
muiden ominaisuuksien
Valinnainen. Määrittelee minkä tahansa non-schema-nimellisyyden mukaiset muiden ominaisuuksien.
Esimerkki
Esimerkki näyttää "person"-elementin yhden määrittelyn. Käyttämällä <any>-elementtiä, luoja voi laajentaa "person"-elementin sisältöä mihin tahansa elementtiin (joka tulee <lastname> jälkeen):
<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>