Ошибка проверки XSD: Элемент "{http://www.example.com} Scope": Этот элемент не ожидается. Ожидаемый (Сфера)
Я создал следующий XSD (с Eclipse):
<code> <?xml version="1.0" encoding="UTF-8"?> <schema targetNamespace="http://www.example.com" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.example.com"> <element name="Make"> <complexType> <sequence> <element name="Scope"></element> </sequence> </complexType> </element> </schema> </code>
и проверка с помощью этого простого XML
<code> <?xml version="1.0"?> <Make xmlns="http://www.example.com"> <Scope> </Scope> </Make> </code>
дает:
<code> xmllint.exe --noout --schema sources.xsd sources.xml sources.xml:3: element Scope: Schemas validity error : Element '{http://www.example.com}Scope': This element is not expected. Expected is ( Scope ). sources.xml fails to validate </code>
На мой взгляд, этоmust быть правильным: файл XML находится в пространстве именhttp://www.example.com (что также говорит валидатор).
А для XSD я устанавливаю пространство имен по умолчанию для схемы XSD (это то, что делает Eclipse, поэтому оно должно быть правильным!), И я даю правильный targetNamespace. Я также пытался использовать
<code><element name="tnd:Scope" /> </code>
Однако это тоже не работает.
Это ошибка в xmllint или где проблема?
С уважением DIVB