XSD-yhdistetyt elementit
- Edellinen sivu XSD-rajoitukset
- Seuraava sivu XSD-tyhjät elementit
Monimutkainen elementti sisältää muita elementtejä ja/tai ominaisuuksia.
Mikä on monimutkainen elementti?
Monimutkainen elementti tarkoittaa XML-elementtiä, joka sisältää muita elementtejä ja/tai ominaisuuksia.
On neljä erilaista monimutkaista elementtiä:
- Tyhjä elementti
- Elementit, jotka sisältävät muita elementtejä
- Elementit, jotka sisältävät vain tekstiä
- Elementit, jotka sisältävät elementtejä ja tekstiä
Huomautus:Edellä mainitut elementit voivat sisältää ominaisuuksia!
Monimutkaisen elementin esimerkki
Monimutkainen elementti, "product", on tyhjä:
<product pid="1345"/>
Monimutkainen elementti, "employee", sisältää vain muita elementtejä:
<employee> <firstname>John</firstname> <lastname>Smith</lastname> </employee>
Monimutkainen elementti, "food", sisältää vain tekstiä:
<food type="dessert">Jäätelö</food>
Monimutkainen elementti, "description", sisältää elementtejä ja tekstiä:
<description> Tämä tapahtui <date lang="norwegian">03.03.99</date> .... </description>
Miten määritellään monimutkainen elementti?
Katso tämä yhdistelmä XML-elementti, "employee", joka sisältää vain muita elementtejä:
<employee> <firstname>John</firstname> <lastname>Smith</lastname> </employee>
XML Schema:ssa meillä on kaksi tapaa määritellä yhdistelmäelementtejä:
1. Nimeämällä tämän elementin, voit suoraan määritellä "employee"-elementin, kuten näin:
<xs:element name="employee"> <xs:complexType> <xs:sequence> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element>
Jos käytät edellä kuvattua menetelmää, vain "employee" voi käyttää määritettyä yhdistelmätyyppiä. Huomaa, että sen alielementit, "firstname" ja "lastname", ovat sisällä vihjettä <sequence>issa. Tämä tarkoittaa, että alielementit on annettava niiden ilmoitetussa järjestyksessä. Voit löytää XSD-vihjeet Tämä luku oppii lisää vihjeitä vihjeistä.
2. "employee"-elementti voi käyttää type-ominaisuutta, jonka tarkoitus on viitata käytettävään yhdistelmätyypin nimeen:
<xs:element name="employee" type="personinfo"/> <xs:complexType name="personinfo"> <xs:sequence> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type="xs:string"/> </xs:sequence> </xs:complexType>
Jos käytät edellä kuvattua menetelmää, useat elementit voivat käyttää samaa yhdistelmätyyppiä, kuten näin:
<xs:element name="employee" type="personinfo"/> <xs:element name="student" type="personinfo"/> <xs:element name="member" type="personinfo"/> <xs:complexType name="personinfo"> <xs:sequence> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type="xs:string"/> </xs:sequence> </xs:complexType>
Voit myös lisätä elementtejä olemassa olevaan yhdistelmäelementtiin perustuen tiettyyn yhdistelmäelementtiin, kuten näin:
<xs:element name="employee" type="fullpersoninfo"/> <xs:complexType name="personinfo"> <xs:sequence> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type="xs:string"/> </xs:sequence> </xs:complexType> <xs:complexType name="fullpersoninfo"> <xs:complexContent> <xs:extension base="personinfo"> <xs:sequence> <xs:element name="address" type="xs:string"/> <xs:element name="city" type="xs:string"/> <xs:element name="country" type="xs:string"/> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType>
- Edellinen sivu XSD-rajoitukset
- Seuraava sivu XSD-tyhjät elementit