Комплексные типы XSD - содержащие только текст
- Предыдущая страница XSD, содержащий только элементы
- Следующая страница Смешанное содержимое XSD
Комплексный элемент, содержащий только текст, может содержать текст и атрибуты.
Комплексный элемент, содержащий только текст
Этот тип содержит только простое содержимое (текст и атрибуты), поэтому мы должны добавить элемент simpleContent к этому содержимому. При использовании простого содержимого我们必须 определить расширение или ограничение внутри элемента simpleContent, как это:
<xs:element name="некоторое имя"> <xs:complexType> <xs:simpleContent> <xs:extension base="basetype"> .... .... </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element>
или:
<xs:element name="некоторое имя"> <xs:complexType> <xs:simpleContent> <xs:restriction base="basetype"> .... .... </xs:restriction> </xs:simpleContent> </xs:complexType> </xs:element>
Совет:Используйте элементы extension или restriction для расширения или ограничения базового простого типа элемента.
Вот пример элемента XML, "shoesize", который содержит только текст:
<shoesize country="france">35</shoesize>
В этом примере объявлен сложный тип, содержимое которого определено как целое число, и элемент "shoesize" содержит атрибут с именем "country":
<xs:element name="shoesize"> <xs:complexType> <xs:simpleContent> <xs:extension base="xs:integer"> <xs:attribute name="country" type="xs:string" /> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element>
Мы также можем определить имя для элемента complexType и позволить атрибуту type элемента "shoesize" ссылаться на это имя (с помощью этого метода, несколько элементов могут ссылаться на один и тот же сложный тип):
<xs:element name="shoesize" type="shoetype"/> <xs:complexType name="shoetype"> <xs:simpleContent> <xs:extension base="xs:integer"> <xs:attribute name="country" type="xs:string" /> </xs:extension> </xs:simpleContent> </xs:complexType>
- Предыдущая страница XSD, содержащий только элементы
- Следующая страница Смешанное содержимое XSD