xsd: Взаимно Исключающие Атрибуты
От: alzav  
Дата: 01.09.06 13:58
Оценка:
Как в xsd сделать взаимно исключающие атрибуты?

В http://www.w3.org/2000/10/XMLSchema работала конструкция такого вида:


    <xs:element name="Id">
        <xs:complexType>
            <xs:choice>
                <xs:complexType>
                    <xs:attribute name="Name" type="xs:string"/>
                </xs:complexType>
                <xs:element name="ISBN" type="ISBN-type" minOccurs="0" maxOccurs="unbounded"/>
                <xs:element name="“„Š" type="xs:string" minOccurs="0"/>
                <xs:element name="Š" type="xs:string" minOccurs="0"/>
                <xs:element name="Š®¤" type="xs:string" minOccurs="0"/>
            </xs:choice>
        </xs:complexType>
    </xs:element>


В http://www.w3.org/2001/XMLSchema, оказывается, такое в принципе не работает и атрибут вообще нельзя сделать предметом выбора (xs:choice) — в элементе xs:choice теперь недопустимо использование элемента xs:complexType.

Возможно как нибудь сделать два взаимно исключающих атрибута?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.