XSD Karışık Elemanlar
- Önceki Sayfa XSD Sınırlama
- Sonraki Sayfa XSD Boş Elemanlar
Karmaşık element, diğer elementler ve/veya özellikleri içerir.
Karmaşık element nedir?
Karmaşık element, diğer elementler ve/veya özellikleri içeren XML elementlerdir.
Dört tür karmaşık element vardır:
- Boş element
- Diğer elementler içeren elementler
- Yalnızca metin içeren elementler
- Elementler ve metin içeren elementler
Açıklama:Bu elementler, tümü de özellikler içerebilir!
Karmaşık element örnekleri
Karmaşık element, "product", boştur:
<product pid="1345"/>
Karmaşık element, "employee", yalnızca diğer elementleri içerir:
<employee> <firstname>John</firstname> <lastname>Smith</lastname> </employee>
Karmaşık element, "food", yalnızca metin içerir:
<food type="dessert">Dondurma</food>
Karmaşık element, "description", elementler ve metin içerir:
<description> Bu, <date lang="norwegian">03.03.99</date> tarihinde gerçekleşti ... </description>
Karmaşık element nasıl tanımlanır?
Bu karmaşık XML elementini görün, "employee", yalnızca diğer elementleri içerir:
<employee> <firstname>John</firstname> <lastname>Smith</lastname> </employee>
XML Şemasında, karmaşık elementleri tanımlamak için iki yöntemimiz var:
1. Bu elementi adlandırmakla, "employee" elementine doğrudan erişebilirsiniz, şu şekilde:
<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>
Eğer yukarıda tanımlanan yöntemi kullanırsanız, sadece "employee" belirlenen bileşik türünü kullanabilir. Lütfen alt elementlerini ve "firstname" ile "lastname" elementlerini dikkatlice inceleyin, bu elementler <sequence> indikatörü içinde yer alır. Bu, alt elementlerin tanımlandıkları sırayla出现 gerektiği anlamına gelir. Ayrıca XSD Indikatörleri Bu bölümde, indikatörler hakkında daha fazla bilgi öğrenin.
2. "employee" elementi type özelliğini kullanabilir, bu özellik, kullanılacak bileşik türünün adını referans alır:
<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>
Eğer yukarıda tanımlanan yöntemi kullandıysanız, belirli bir bileşik türünü kullanabilen birkaç element olabilir, örneğ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>
Ayrıca, mevcut bileşik bir bileşik üzerine bir bileşik olarak, bu şekilde eklemeler yapabilirsiniz:
<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>
- Önceki Sayfa XSD Sınırlama
- Sonraki Sayfa XSD Boş Elemanlar