Почему этот XDocument не проходит проверку?

Учитывая, что схема (анонимизирована, ключевые точки интереса переименовываются, а остальные опускаются ):

<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="inspec"
    targetNamespace="the_right_namespace"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
>
  <xs:element name="inspec">
    <xs:complexType>
      <xs:all>
        <xs:element name="a_scalar_property" type="xs:int"/>
        <xs:element name="a_collection_property">
          <xs:complexType>
            <snip>
          </xs:complexType>
        </xs:element>
        <xs:element name="another_collection_property">
          <xs:complexType>                
            <snip>
          </xs:complexType>
        </xs:element>                       
      </xs:all>
    </xs:complexType>
  </xs:element>
</xs:schema>

. и экземпляр (, объявленный с использованием литералов VB xml):

Dim xDocument = 
<x:inspec xmlns:x='the_right_namespace'>
<a_collection_property/>
<another_collection_property/>
</x:inspec>

проверка завершается с ошибкой с сообщениемThe element 'inspec' in namespace 'the_right_namespace' has incomplete content. List of possible elements expected: 'a_scalar_property'.

Почему? Элемент all, согласно W3Schools:

«Элемент all указывает, что дочерние элементы могут появляться в любом порядке и что каждый дочерний элемент может встречаться ноль или один раз».

Пропустить a_scalar_property— это то же самое, что включить его ноль раз. Почему этот документ не проходит проверку?

И не говорите что-то вроде «опубликуйте полный код» -, это не мой IP-адрес, и я сделал его анонимным по уважительной причине. Это очень мало, и я проверил этот минимальный пример, он дает тот же результат.

5
задан Tom W 1 July 2012 в 10:35
поделиться