/ / cvc-elt.1.a: no se puede encontrar la declaración del elemento 'xxx' - xml, xsd

cvc-elt.1.a: No se puede encontrar la declaración del elemento 'xxx' - xml, xsd

Tengo que escribir a mano un xml de muestra para mi xsd, pero siempre recibo un mensaje no válido: cvc-elt.1.a: no se puede encontrar la declaración del elemento "RS_WMS_GET_PO_DATA_v2.0".

Mi XSD:

<?xml version="1.0" encoding="utf-16"?>
<schema xmlns:ns0="http://www.rossinc.com/" xmlns:msbtsdml="http://schemas.rossinc.com/BizTalk" xmlns:b="http://schemas.microsoft.com/BizTalk/2003" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.rossinc.com/" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
<appinfo>
<msbtsdml:StoredProcedureName xmlns:msbtsdml="http://schemas.rossinc.com/BizTalk/DMLAdapter">RS_WMS_GET_PO_DATA</msbtsdml:StoredProcedureName>
<msbtsdml:ResponseRootName xmlns:msbtsdml="http://schemas.rossinc.com/BizTalk/DMLAdapter">poData</msbtsdml:ResponseRootName>
</appinfo>
</annotation>
<element name="RS_WMS_GET_PO_DATA_v2.0">
<complexType>
<sequence>
<element minOccurs="1" maxOccurs="1" name="Parameters">
<complexType>
<sequence>
<element default="0" name="ERROR_OCCURRED" type="string">
<annotation>
<appinfo>
<msbtsdml:ParamDir xmlns:msbtsdml="http://schemas.microsoft.com/BizTalk/2003">In</msbtsdml:ParamDir>
</appinfo>
</annotation>
</element>
<element default="1" name="XML_TAGS" type="int">
<annotation>
<appinfo>
<msbtsdml:ParamDir xmlns:msbtsdml="http://schemas.microsoft.com/BizTalk/2003">In</msbtsdml:ParamDir>
</appinfo>
</annotation>
</element>
<element default="0" name="NUM_ROWS" type="int">
<annotation>
<appinfo>
<msbtsdml:ParamDir xmlns:msbtsdml="http://schemas.microsoft.com/BizTalk/2003">In</msbtsdml:ParamDir>
</appinfo>
</annotation>
</element>
</sequence>
</complexType>
</element>
<element name="RS_WMS_GET_PO_DATA">
<complexType>
<all minOccurs="1" maxOccurs="1">
<element name="COMPANY_CODE" type="string" />
<element name="DIVISION" type="string" />
<element name="PO_NUMBER" type="string" />
<element name="PO_WH_SEQUENCE" type="string" />
<element name="ERP_ACTION_CODE" type="string" />
</all>
</complexType>
</element>
<element name="DMLAdapterConfig">
<complexType>
<sequence>
<element name="EnvironmentId" type="string" />
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
</schema>

Mi XML:

<?xml version="1.0" encoding="utf-8"?>
<RS_WMS_GET_PO_DATA_v2.0>
<Parameters>
<ERROR_OCCURRED>0</ERROR_OCCURRED>
<XML_TAGS>1</XML_TAGS>
<NUM_ROWS>0</NUM_ROWS>
</Parameters>
<RS_WMS_GET_PO_DATA>
<COMPANY_CODE></COMPANY_CODE>
<DIVISION></DIVISION>
<PO_NUMBER></PO_NUMBER>
<PO_WH_SEQUENCE></PO_WH_SEQUENCE>
<ERP_ACTION_CODE></ERP_ACTION_CODE>
</RS_WMS_GET_PO_DATA>
<DMLAdapterConfig>
<EnvironmentId></EnvironmentId>
</DMLAdapterConfig>
</RS_WMS_GET_PO_DATA_v2.0>

¿Algunas ideas?

Aquí está el sitio web que estoy usando: http://www.corefiling.com/opensource/schemaValidate.html

Respuestas

4 para la respuesta № 1
<?xml version="1.0" encoding="utf-8"?>
<ns0:RS_WMS_GET_PO_DATA_v2.0 xmlns:ns0="http://www.rossinc.com/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.rossinc.com/ One.xsd ">
<ns0:Parameters>
<ns0:ERROR_OCCURRED>0</ns0:ERROR_OCCURRED>
<ns0:XML_TAGS>1</ns0:XML_TAGS>
<ns0:NUM_ROWS>0</ns0:NUM_ROWS>
</ns0:Parameters>
<ns0:RS_WMS_GET_PO_DATA>
<ns0:COMPANY_CODE>ns0:COMPANY_CODE</ns0:COMPANY_CODE>
<ns0:DIVISION>ns0:DIVISION</ns0:DIVISION>
<ns0:PO_NUMBER>ns0:PO_NUMBER</ns0:PO_NUMBER>
<ns0:PO_WH_SEQUENCE>ns0:PO_WH_SEQUENCE</ns0:PO_WH_SEQUENCE>
<ns0:ERP_ACTION_CODE>ns0:ERP_ACTION_CODE</ns0:ERP_ACTION_CODE>
</ns0:RS_WMS_GET_PO_DATA>
<ns0:DMLAdapterConfig>
<ns0:EnvironmentId>ns0:EnvironmentId</ns0:EnvironmentId>
</ns0:DMLAdapterConfig>
</ns0:RS_WMS_GET_PO_DATA_v2.0>

Como porque no mencionó qué archivo de esquema usar para este archivo XML. Creo que esto resolverá tu problema.


3 para la respuesta № 2

Tuve un cvc-elt.1.a: ¡No puedo encontrar la declaración del problema del elemento !.

Resolví de esta manera:

1.- busque su archivo XSD, si tiene un atributo xmlns, (por ejemplo: xmlns = "http: // yourcompany / blablabla / rootElementName")

2.- mira tu archivo XML, debe tener un atributo xmlns si el XSD ha definido uno.

3.- XML ​​distingue entre mayúsculas y minúsculas. Revise sus etiquetas xml y compárelas con las etiquetas xsd.

¡Saludos!