Unterschied zwischen xs und xsd in der XML-Schemadatei?

82

Was ist der Unterschied zwischen den Präfixen xsund xsdin XML-Schemadateien?

vbence
quelle
6
Es ist nur ein XML-Namespace-Präfix für die XML-Schema-Namespaces, das Sie grundsätzlich nach Ihren Wünschen auswählen können - xs und xsd sind nur die am häufigsten verwendeten
marc_s

Antworten:

105

Aus der XSD 1.0-Spezifikation auf w3.org :

Die XML-Darstellung von Schemakomponenten verwendet ein Vokabular, das durch den Namespace-Namen http://www.w3.org/2001/XMLSchema gekennzeichnet ist . Der Kürze halber verwenden der Text und die Beispiele in dieser Spezifikation das Präfix xs:, um für diesen Namespace zu stehen; In der Praxis kann jedes Präfix verwendet werden.

am Ende sind xs oder xsd nur Präfixe. XSD wird beispielsweise häufiger von Microsoft-Schemas verwendet.

Wichtig ist, wie Sie den Namespace deklarieren.

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  ...
</xs:schema>

oder

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  ...
</xsd:schema>

sollte gleichwertig sein.

Erpel
quelle
7
Die kurze Antwort lautet also: Gibt es keinen Unterschied?
Koray Tugay
Nein! Ich habe eine Weile gebraucht, um das zu klären - nicht nur xs/ xsd- sondern allgemein, wie XML-Schemas funktionieren. Außerdem habe ich den Unterschied zwischen DTD und XSD kennengelernt.
ARK
18

Es gibt keinen Unterschied , es ist nur eine Frage der Wahl

Carpinchosaurio
quelle
8

Die xs:und xsd:werden als Namespace-Präfixe bezeichnet. Sie werden mit xmlnsElementen im Stammelement deklariert .

Konventionell neigen die Leute dazu, entweder xs:oder zu wählen xsd:und dies zuzuordnen http://www.w3.org/2001/XMLSchema. Beides in einem einzigen Dokument zu haben, ist verwirrend und sollte vermieden werden.

Überprüfen Sie Ihre xmlnsDeklarationen, um festzustellen, um welche Namespaces es sich handelt.

Harshal Bhamare
quelle