Sono ancora un po 'nuovo per XML Schema ecc. E ho lavorato per sviluppare alcuni XML, Schema e un foglio di stile (XSLT). Ho fatto progressi ragionevoli, ma poi mi sono reso conto che il mio schema aveva smesso di funzionare, quindi l'ho riportato a un esempio non descrittivo più semplice.Convalida schema XML: Impossibile trovare la dichiarazione dell'elemento
Ecco il mio XML:
<?xml version="1.0" encoding="UTF-8"?>
<Root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="Test.Namespace"
schemaLocation="http://myNameSpace.com Test1.xsd">
<element1 id="001">
<element2 id="001.1">
<element3 id="001.1" />
</element2>
</element1>
</Root>
ho scritto uno schema che è qui:
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="Test.Namespace"
elementFormDefault="qualified">
<xsd:element name="Root">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="element1" maxOccurs="unbounded" type="element1Type"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="element1Type">
<xsd:sequence>
<xsd:element name="element2" maxOccurs="unbounded" type="element2Type"/>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:string"/>
</xsd:complexType>
<xsd:complexType name="element2Type">
<xsd:sequence>
<xsd:element name="item" type="element3Type"/>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:string"/>
</xsd:complexType>
<xsd:complexType name="element3Type">
<xsd:attribute name="id" type="xsd:string"/>
</xsd:complexType>
</xsd:schema>
Lo schema rappresentativa della struttura del mio vero XML.
Ora, quando cerco di convalidare il mio XML, ottengo questo errore:
cvc-elt.1: Cannot find the declaration of element 'Root'. [7]
Questo credo sia a che fare con un problema di spazio dei nomi sull'elemento radice, ma io non sono davvero sicuro.
Qualcuno può suggerire cosa sto facendo male, per favore.
Ho corretto quanto segue come suggerito e ora funziona Il chiarimento dei "Nomi" Tre era quello di cui avevo bisogno. – Nerdio