creé la siguiente XSD (con Eclipse):Error de validación XSD: Elemento '{http://www.example.com} Ámbito': no se espera este elemento. Esperado es (Alcance)
<?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>
y validar con este sencillo XML
<?xml version="1.0"?>
<Make xmlns="http://www.example.com">
<Scope>
</Scope>
</Make>
da:
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
En mi opinión, esto debe ser correcto: el archivo XML está en el espacio de nombres http://www.example.com (lo que también dice el validador) .
Y para el XSD configuré el espacio de nombres predeterminado para el esquema XSD (esto es lo que hace Eclipse, ¡así que debería ser correcto!) Y doy el targetNamespace correcto. También traté de usar
<element name="tnd:Scope" />
Sin embargo, esto tampoco funciona.
¿Esto es un error en xmllint o dónde está el problema?
Saludos divB
Typo? 'tnd: Scope' debe ser' tns: Scope' – Filburt