XML-Schema führt zu einem XML-Element ohne Namespace

Ich habe Probleme mit einem sehr einfachen Schema. In dem XML-Body, den das Schema als erstes untergeordnetes Element des Root-Elements angibt, ist xmlns = "" angegeben, was für mich zu Validierungsproblemen führt.

Ich habe wiederholt gesucht und gesucht und versucht herauszufinden, warum es passiert und ich hatte keinen Erfolg. Dies verursacht ein größeres Problem mit meinem Servercode, da ich einen XML-Body erstelle und die Validierung fehlschlägt, da mein Element nicht xmlns = "" hat.

Ich möchte verstehen, warum xmlns = "" aus der Schemadefinition resultiert und wie dies behoben werden kann.

Hier ist das Schema:

<?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>

Ausgehend von diesem Schema wird das folgende Dokument erstellt:

<?xml version="1.0" encoding="UTF-8"?>
<A1 xmlns="http://www.example.org">
    <result xmlns="">
        <PQR></PQR>
    </result>
</A1>

Das würde mir gefallen

<?xml version="1.0" encoding="UTF-8"?>
<A1 xmlns="http://www.example.org">
    <result>
        <PQR></PQR>
    </result>
</A1>

Ich habe mir das angeschaut und probiere es jetzt ungefähr einen Tag lang aus. Sollte das @ nic<result> Element ist nur ein Teil des Zielnamespace, wodurch xmlns = "" unnötig wird?

Zusätzlich wird beim Versuch, die Überprüfung durchzuführen, die folgende Fehlermeldung angezeigt:

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

Antworten auf die Frage(2)

Ihre Antwort auf die Frage