XML схема для фиксированного элемента с фиксированным атрибутом?
Вопрос
Что было бы правильной декларацией XML Schema 1.0 для A
<notice xml:lang="en">Banana banana banana</notice>
.
Где:
- XML: атрибут Lang является обязательным
- значение "en" является фиксированным и обязательным
- Содержание уведомления - простой текст.
- Содержание уведомления исправлено (как указано выше) и обязательно?
Мои лучшие (но неверные) усилия - следующий фрагмент:
<xs:element name="notice" use="required" fixed="Banana banana banana">
<xs:complexType>
<xs:simpleContent>
<xs:extension>
<xs:attribute ref="xml:lang" use="required" fixed="en"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
.Решение
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="http://www.w3.org/XML/1998/namespace" />
<xs:element name="notice" type="notice"/>
<xs:complexType name="notice">
<xs:simpleContent>
<xs:extension base="CONTENT">
<xs:attribute ref="xml:lang" use="required" fixed="en"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="CONTENT">
<xs:restriction base="xs:string">
<xs:enumeration value="Banana banana banana"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
. Не связан с StackOverflow