XML Schema unique-elementti

Määrittely ja käyttö

unique-elementti määrittää ominaisuuden tai elementin arvon (tai ominaisuuden tai elementin arvon yhdistelmän) olevan yksilöllinen määritellyllä alueella. Arvon on oltava yksilöllinen tai nolla.

unique-elementin on sisällyttävä järjestyksessä seuraavat elementit:

selector-elementti

selector-elementti sisältää XPath-lausekkeen, joka määrittää elementtisarjan, jossa field-elementin määrittämä arvo on yksilöllinen.

On oltava yksi ja vain yksi selector-elementti.

field-elementti

Jokainen field-elementti sisältää XPath-lausekkeen, joka määrittää arvon, joka on yksilöllinen valitulle elementtisarjalle (ominaisuus tai elementin arvo).

Jos on useita field-elementtejä, field-elementtien yhdistelmän on oltava ainutlaatuinen. Tässä tapauksessa yksittäisen field-elementin arvo ei välttämättä ole ainutlaatuinen valittujen elementtien kannalta, mutta kaikkien kenttien yhdistelmän on oltava ainutlaatuinen.

On oltava yksi tai useita field-elementtejä.

Elementtieto

Esiintymiskerrat Kerran
Isäelementti elementti
Sisältö merkintä、alaosa、valitsin

Syntaksi

<unique
id=ID
nimi=NCName
mikä tahansa ominaisuudet
>
(merkintä?,(valitsin,alaosa+))
</unique>

(?-merkki ilmoittaa, että elementti voi esiintyä unique-elementissä nollan tai yhden kerran。)

Ominaisuudet Kuvaus
id Valinnainen. Määritä elementin ainutlaatuinen ID.
nimi Välttämätön. Määritä elementille nimi.
mikä tahansa ominaisuudet Valinnainen. Määritä minkä tahansa non-schema-nimellisen tilan määrittely.

Esimerkki

Esimerkki 1

Tämä esimerkki on yhdistetty kaksi yksinkertaista tyyppiä:

<xs:element name="jeans_size">
  <xs:simpleType>
    <xs:union memberTypes="sizebyno sizebystring" />
  </xs:simpleType>
</xs:element>
<xs:simpleType name="sizebyno">
  <xs:restriction base="xs:positiveInteger">
    <xs:maxInclusive value="42"/>
  </xs:restriction>
</xs:simpleType>
<xs:simpleType name="sizebystring">
  <xs:restriction base="xs:string">
    <xs:enumeration value="small"/>
    <xs:enumeration value="medium"/>
    <xs:enumeration value="large"/>
  </xs:restriction>
</xs:simpleType>