Elemen Kombinasi XSD
- Halaman Sebelumnya Fimitasi XSD
- Halaman Berikutnya Elemen Kosong XSD
Elemen gabungan mengandung elemen lain serta/atau atribut.
Apa itu elemen gabungan?
Elemen gabungan adalah elemen XML yang berisi elemen lain serta/atau atribut.
Terdapat empat jenis elemen gabungan:
- Elemen kosong
- Elemen yang berisi elemen lain
- Elemen yang hanya berisi teks
- Elemen yang berisi elemen dan teks
Keterangan:Elemen di atas dapat berisi atribut!
Contoh elemen gabungan
Elemen gabungan, "product", kosong:
<product pid="1345"/>
Elemen gabungan, "employee", hanya berisi elemen lain:
<employee> <firstname>John</firstname> <lastname>Smith</lastname> </employee>
Elemen gabungan, "food", hanya berisi teks:
<food type="dessert">Ice cream</food>
Elemen gabungan, "description", berisi elemen dan teks:
<description> Hal ini terjadi pada <date lang="norwegian">03.03.99</date> .... </description>
Bagaimana mendefinisikan elemen gabungan?
Lihat elemen gabungan XML ini, "employee", yang hanya mengandung elemen lain:
<employee> <firstname>John</firstname> <lastname>Smith</lastname> </employee>
Dalam XML Schema, ada dua cara untuk mendefinisikan elemen gabungan:
1. Dengan menamai elemen ini, Anda dapat secara langsung mengdeclare elemen "employee", seperti ini:
<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>
Jika Anda menggunakan metode yang dijelaskan di atas, hanya "employee" yang dapat menggunakan jenis gabungan yang ditentukan. Perhatikan bahwa elemen anak, "firstname" dan "lastname", diselengkapkan dalam penunjuk <sequence>. Ini berarti elemen anak harus muncul dalam urutan yang diumumkan. Anda akan menemukan Penunjuk XSD Bagian ini mempelajari lebih lanjut tentang penunjuk XSD.
2. Elemen "employee" dapat digunakan dengan atribut type, yang berfungsi untuk merujuk kepada nama jenis gabungan yang digunakan:
<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>
Jika Anda menggunakan metode yang dijelaskan di atas, banyak elemen dapat menggunakan jenis gabungan yang sama, seperti ini:
<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>
Anda juga dapat menambahkan beberapa elemen di atas elemen gabungan yang sudah ada, seperti ini:
<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>
- Halaman Sebelumnya Fimitasi XSD
- Halaman Berikutnya Elemen Kosong XSD