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>