<Komple XML Şeması Referans
Tanımı ve Kullanımı
complexType elemanı kompleks tipi tanımlar. Karmaşık bir tipi eleman diğer elemanları ve / veya özelliklerini içeren bir XML elemanıdır.
eleman Bilgi
- Parent elements: eleman, yeniden tanımlamak, şema
Sözdizimi
<complexType
id=ID
name=NCName
abstract=true|false
mixed=true|false
block=(#all|list of (extension|restriction))
final=(#all|list of (extension|restriction))
(? Işareti elemanı sıfır veya bir kez ortaya çıkabilir beyan ve * işareti eleman complexType öğesinin içinde sıfır veya daha fazla kez bulunabileceğini beyan) nitelik Açıklama id İsteğe bağlı. eleman için benzersiz bir kimlik belirtir name İsteğe bağlı. eleman için bir ad belirtir abstract İsteğe bağlı. Karmaşık tip bir örneğinin belgede kullanılıp kullanılamayacağını belirler. Doğru bir elemanın doğrudan bu karmaşık tip kullanmaz fakat bu kompleks türünden türetilmiş bir kompleks türü kullanmak gerektiğini gösterir. Standart yanlıştır mixed İsteğe bağlı. karakter verileri bu complexType öğesinin alt öğeleri arasında görünmesine izin belirtir. Standart yanlıştır. Bir simpleContent eleman çocuk eleman ise, mixed nitelik izin verilmiyor! block İsteğe bağlı. Bu karmaşık tür yerine kullanılmasını türetme belirli bir türü olan bir karmaşık türü önler. Bu değer, #all veya uzatılması ya da kısıtlama bir alt kümesi, bir listesini de içerebilir: - uzantısı - uzantı tarafından türetilen karmaşık türleri engeller
- kısıtlama - sınırlama ile türetilen karmaşık türleri engeller
- #all - türetilen tüm karmaşık türleri engeller
final İsteğe bağlı. Bu kompleks tipi elemanın türetme belirlenmiş bir tip önler. #all veya uzatma veya kısıtlama bir alt kümesidir listesi içerebilir. - uzantısı - uzatma türetme önler
- kısıtlama - sınırlama ile türetme önler
- #all - bütün türetme önler
any attributes İsteğe bağlı. olmayan şema ad ile başka özelliklerini belirtir
Örnek 1
Aşağıdaki örnek adlı bir eleman vardır "note" karmaşık bir türden olması:
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Örnek 2
Aşağıdaki örnek, bir karmaşık türü vardır "fullpersoninfo" bir karmaşık tür türemektedir, "personinfo" üç ek elemanlarla kalıtsal tip uzatarak, (address, city and country) :
<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>
Yukarıdaki örnekte "employee" içermelidir elemanı, sırayla, aşağıdaki unsurları: "firstname" , "lastname" , "address" , "city" ve "country" .
<Komple XML Şeması Referans