Схема XML приводит к элементу XML без пространства имен
У меня возникли проблемы с очень простой схемой. В теле xml, которое схема указывает на первый дочерний элемент корневого элемента, указано, что оно имеет xmlns = "", что вызывает у меня проблемы с проверкой.
Я искал и искал и неоднократно пытался выяснить, почему это происходит, и у меня не было никакого успеха. Это вызывает большую проблему с моим серверным кодом, так как я составляю тело xml и проверка его не удалась из-за того, что у моего элемента нет xmlns = "".
Я хотел бы понять, почему xmlns = "" является результатом определения схемы и как это исправить.
Вот схема:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.example.org"
xmlns="http://www.example.org">
<xs:simpleType name="XYZ">
<xs:restriction base="xs:string">
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ABC">
<xs:sequence>
<xs:element name="PQR" type="XYZ"/>
</xs:sequence>
</xs:complexType>
<xs:element name="A1">
<xs:complexType>
<xs:sequence>
<xs:element name="result" type="ABC"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
На основе этой схемы создается следующий документ:
<?xml version="1.0" encoding="UTF-8"?>
<A1 xmlns="http://www.example.org">
<result xmlns="">
<PQR></PQR>
</result>
</A1>
Я хотел бы это:
<?xml version="1.0" encoding="UTF-8"?>
<A1 xmlns="http://www.example.org">
<result>
<PQR></PQR>
</result>
</A1>
Я смотрю на это и пытаюсь что-то около дня. Не должен<result>
элемент просто является частью целевого пространства имен, что делает xmlns = "" ненужным?
Кроме того, когда я пытаюсь проверить это, я получаю следующую ошибку:
System ID: /Users/dev/Desktop/Untitled3.xml
Main validation file: /Users/dev/Desktop/Untitled3.xml
Schema: /Users/dev/Desktop/test.xsd
Engine name: Xerces
Severity: error
Description: cvc-complex-type.2.4.a: Invalid content was found starting with element '{"http://www.example.org":PQR}'. One of '{PQR}' is expected.
Start location: 4:10
End location: 4:13
URL: http://www.w3.org/TR/xmlschema-1/#cvc-complex-type