Junior
Какви типове данни съществуват в XSD?
sobes.tech AI
Отговор от AI
- Прости типове (Simple Types)
- Производни от вградени типове:
xs:booleanxs:byte,xs:short,xs:int,xs:longxs:unsignedByte,xs:unsignedShort,xs:unsignedInt,xs:unsignedLongxs:decimalxs:float,xs:doublexs:stringxs:date,xs:time,xs:dateTimexs:durationxs:gYearMonth,xs:gYear,xs:gMonthDay,xs:gDay,xs:gMonthxs:anyURIxs:QNamexs:NOTATIONxs:base64Binaryxs:hexBinaryxs:languagexs:normalizedString,xs:token(произход отxs:string)xs:ID,xs:IDREF,xs:IDREFS,xs:ENTITY,xs:ENTITIES,xs:NMTOKEN,xs:NMTOKENS(за XML-специфични типове)
- Ограничени типове (restriction)
- Типове списъци (list)
- Типове съюз (union)
- Производни от вградени типове:
- Сложни типове (Complex Types)
- Съдържат елементи и атрибути
- Могат да имат модели на съдържание:
empty(само атрибути)element-only(само елементи)mixed(елементи и текстово съдържание)simpleContent(само атрибути и прост текст)
- Могат да използват:
xs:sequence(последователност от елементи)xs:choice(един от предложените елементи)xs:all(всички изброени елементи във всякакъв ред, всеки не повече от веднъж)
Пример за дефиниране на ограничен прост тип:
<!-- Определяне на нов тип PositiveInteger, който е положително цяло число -->
<xs:simpleType name="PositiveInteger">
<xs:restriction base="xs:int">
<xs:minInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
Пример за дефиниране на сложен тип:
<!-- Определяне на сложен тип Person, съдържащ елементите name и age -->
<xs:complexType name="Person">
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="age" type="xs:int"/>
</xs:sequence>
</xs:complexType>