Jika saya memiliki banyak tipe kompleks di xsd, yang misalnya memiliki sejumlah bidang umum, seperti 'id', atau 'nama', atau 'tanggal' atau 'anyspecialId', yang berarti tipe tersebut sangat mirip satu sama lain. yang lain, dan akan menjadi mimpi buruk untuk menambahkan lagi satu bidang umum ke masing-masing bidang tersebut. Apakah mungkin untuk mendefinisikan beberapa tipe dasar untuk tipe kompleks, sehingga tipe kompleks ini akan memperluas bidang/item dari tipe induk dasar? Dalam hal ini saya hanya menambahkan bidang baru ini ke tipe dasar, dan bukan ke masing-masing bidang turunan. Apakah itu mungkin?
beberapa elemen memiliki banyak kesamaan dalam skema xsd
comment
Ekstensi tidak selalu merupakan yang terbaik; jika Anda mengalami masalah yang melibatkan pembatasan, menerjemahkannya ke objek tidaklah mudah, jadi menggunakan model grup (untuk elemen xsd:group dan atribut atributGroup) adalah alternatif lain yang mungkin ingin Anda pertimbangkan untuk mencapai usabilitas.
- person Petru Gardea   schedule 16.03.2012
Jawaban (2)
Tentu saja Anda harus menggunakan ekstensi tipe:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<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>
</xs:schema>
http://www.w3schools.com/schema/el_extension.asp
person
andbi
schedule
16.03.2012
Menurunkan tipe berdasarkan ekstensi tentu saja merupakan salah satu cara untuk mengatasi hal ini. Pendekatan lain yang kadang-kadang bisa bekerja lebih baik adalah dengan menggunakan kelompok model bernama. Hal ini bisa lebih fleksibel, misalnya tidak menerapkan batasan bahwa elemen umum harus didahulukan sebelum elemen khusus.
person
Michael Kay
schedule
16.03.2012