XSD любой элемент - PullRequest
       6

XSD любой элемент

1 голос
/ 07 апреля 2010

Я пытаюсь создать список, в котором некоторые элементы определены, а некоторые нет, без приоритета порядка.Я попробовал это таким образом, с любым элементом:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:complexType name="object" mixed="true">
  <xs:choice>
    <xs:element name="value" minOccurs="1" maxOccurs="1">
    <xs:simpleType>
     <xs:restriction base="xs:integer">
      <xs:enumeration value="1"/>
     </xs:restriction>
    </xs:simpleType>
 </xs:element>    
 <xs:any namespace="##any" processContents="skip"/>  
  </xs:choice>
</xs:complexType>

<xs:element name="object" type="object"/>

</xs:schema> 

И он говорит мне эту ошибку:

: 0: 0: ошибка: сложный тип «объект» нарушаетуникальное правило атрибуции частиц в его компонентах 'value' и '## any'

Может кто-нибудь помочь мне решить проблему?

1 Ответ

2 голосов
/ 07 апреля 2010

Вы не можете определить свою схему таким образом, она нарушает уникальное правило атрибуции частиц: синтаксический анализатор не может определить, должен ли элемент «значение», найденный в документе, проверяться на «значение» или «любой».

Вот хороший обзор .

Подумайте об использовании двух пространств имен и использовании xsd: любое с пространством имен, это устранит проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...