2016-12-28 2 views
0
  • Как я понимаю, пространство имен в XML (и) XSD используются для смягчения возможной неоднозначности элементов и атрибутов ссылки.
    • атрибут из целевого пространства XML-схемы для specifiying в пространства имен, что элементы, определенные в файле (или всех внутри элемента, который имеет TargetNamespace) соответствуют. Этот применяется только к элементам, «объявленным» в этом контексте (которые имеют их имя, объявленное в атрибуте «имя»).
    • Итак, если я объявляю целевое пространство имен в моей схеме, каждый экземпляр, который я проверяю против него, должен использовать это пространство имен перед любым элементом или атрибутом, объявленным в Схеме, или объявлять его как пространство имен по умолчанию, чтобы избавить меня от необходимости предшествовать каждому типа из этой Схемы с ним.

Если какой-либо из этого неверно, обязательно поправьте меня.Не удается проверить XML Против XSD с TargetNamespace, когда XSD имеет ComplexTypes

Что сводит меня с ума, вот почему не так:

<?xml version="1.0" encoding="UTF-8"?> 
<responsabilities xmlns="http://www.library.org"> 
<responsability>uno</responsability> 
<responsability>dos</responsability> 
<responsability>tres</responsability> 
</responsabilities> 

... проверяет против этого:

<?xml version="1.0" encoding="UTF-8"?> 
<schema targetNamespace="http://www.library.org" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:bpd="http://www.library.org" > 
<element name="responsabilities" type="bpd:responsabilitiesType"/> 
<complexType name="responsabilitiesType"> 
    <sequence> 
     <element maxOccurs="unbounded" name="responsability" type="string" /> 
    </sequence> 
</complexType> 
</schema> 

Он показывает эту ошибку:

The element 'responsabilities' in namespace ' http://www.library.org ' has invalid child element 'responsability' in namespace ' http://www.library.org '. List of possible elements expected: 'responsability'. Line: 1 Column:90

I проверенный против SimpleType, используя ту же схему пространства имен, и не имел никаких проблем.

Спасибо.

ответ

0

Nevermind:

Схема недоставало атрибут:

elementFormDefault="qualified"