kitu cha kina cha XML Schema complexType
ufafanuzi na usaidizi
complexType kina cha uadilifu wa kitu. Kitu cha kina cha uadilifu ni kitu cha XML ambacho kina kitu cha kina na au mifano au mabaki ya mifano.
taarifa ya kitu cha kina
madai | ina kikuu cha kikamilika kwa makosa; kwenye kitu cha kina kwa mara moja. |
makose mkuu | element, redefine, schema |
maudhui | annotation, simpleContent, complexContent, group, all, choice, sequence, attribute, attributeGroup, anyAttribute |
语法
any attributes > (annotation?,(simpleContent|complexContent|((group|all| choice|sequence)?,((attribute|attributeGroup)*,anyAttribute?))))
(? 符号声明在 complexType 元素中,元素可出现零次或一次,* 符号声明元素可出现零次或多次。)
属性
id
可选。规定该元素的唯一的 ID。
name
可选。规定元素的名称。
abstract
可选。规定在实例文档中是否可以使用复杂类型。如果该值为 true,则元素不能直接使用该复杂类型,而是必须使用从该复杂类型派生的复杂类型。 默认值为 false。
mixed
可选。规定是否允许字符数据出现在该复杂类型的子元素之间。 默认值为 false。
- 如果 simpleContent 元素是子元素,则不允许 mixed 属性。
- 如果 complexContent 元素是子元素,则该 mixed 属性可被 complexContent 元素的 mixed 属性重写。
block
可选。防止具有指定派生类型的复杂类型被用来替代该复杂类型。该值可以包含 #all 或者一个列表,该列表是 extension 或 restriction 的子集:
- extension - 防止通过扩展派生的复杂类型被用来替代该复杂类型。
- restriction - 防止通过限制派生的复杂类型被用来替代该复杂类型。
- #all - 防止所有派生的复杂类型被用来替代该复杂类型。
final
Inayopungua. Hifadhi kwa kuwa hapatikani kuzaliwa kwa kifupi cha kifupi cha elementu hii. Inayoweza kuwa na #all au orodha, orodha hii ina kuwa na kiwango cha extension au restriction.
- extension - Kupunguza kuzaliwa kwa kufikia.
- restriction - Kupunguza kuzaliwa kwa kuzingatia.
- #all - Kupunguza kila kuzaliwa (kuzingatia na kufikia).
any attributes
Inafaa. Inakadiri ya kumiliki ya kina ya uhusiano wa hisia hivi:
Mfano
Mfano 1
Mfano wa "note" kina aina ya hisia ya kina:
<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>
Mfano 2
Mfano wa "fullpersoninfo" kina, inayotumia tatu ya upungufu wa hisia (address, city na country) kufikia aina ya hisia iliyotumika kwa "personinfo":
<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>
Kwenye mifano ya juu, mifano ya juu ya 'employee' inahitaji kuwa na mifano inayotawala kwa mawazo yafuatavyo: 'firstname', 'lastname', 'address', 'city' na 'country'.