Ich fand diesen sehr hilfreichen Artikel auf WSDL auf http://msdn.microsoft.com/en-us/library/ms996486.aspx, wie auf SO in einem anderen Post irgendwo empfohlen.Ist die Verwendung von XML-Namespaces korrekt?
Ich frage mich jedoch, ob es in diesem Beispiel keinen Fehler gab.
Hier ist der (vereinfacht) Schema:
<xs:schema
targetNamespace="http://example.org/math/types/"
xmlns="http://example.org/math/types/"
>
<xs:complexType name="MathInput">
<xs:sequence>
<xs:element name="x" type="xs:double"/>
<xs:element name="y" type="xs:double"/>
</xs:sequence>
</xs:complexType>
<xs:element name="Add" type="MathInput"/>
</xs:schema>
Hier ist die Instanz (in SOAP aufgeführt):
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
>
<SOAP-ENV:Body>
<m:Add xmlns:m="http://example.org/math/types/">
<x>3.14159265358979</x>
<y>3.14159265358979</y>
</m:Add>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Meine Unsicherheit über die < x> und < y> Elemente. Ist es o.k. dass sie unqualifiziert sind?
[Update] Wird die XML-Instanz anhand des angegebenen Schemas validiert?
Schöne Antwort! Ich mag die sehr praktischen Beispiele, die Sie verwenden, um zu erklären, was vor sich geht. Auf diese Weise kann ich meine X-Path Fähigkeiten gleichzeitig auffrischen :-). Das Beispiel ist nicht mein eigenes und deshalb habe ich mich nur gefragt, ob sie einen Fehler gemacht haben und vergessen haben, x und y zu qualifizieren, oder ob es einen toleranten XML-Validierungsmodus gab, dem es nichts ausmachte, wenn Sie vergessen haben, die Präfixe hinzuzufügen. – Student
Ich denke, ich könnte genauer sein und fragen: Wird die XML-Instanz gegen das gegebene Schema validieren? – Student
Ja, mit dem Schema, das Sie angegeben haben, wird der XML-Code für dieses Schema validiert. Ich habe es mit einem Tool namens OxygenXml überprüft. Wenn Sie an der XSD-Validierung arbeiten, empfehle ich Ihnen dringend, es herunterzuladen. –