Unterschied zwischen XSD und DTD

XSD vs. DTD

Die XML-Schemadefinition (auch XSD genannt) ist eine von verschiedenen XML-Schemasprachen. Diese spezielle Sprache wurde als W3C-Empfehlung veröffentlicht. Es war die Prototypsprache für die folgenden, die die Schemasprache für XML trennen konnten, und die erste, die den Empfehlungsstatus durch das W3C erlangte. Um Verwechslungen mit anderen Verwendungen des Ausdrucks XML Schema zu vermeiden, haben viele Benutzer die Sprache als WSD bezeichnet (um sie als eine von W3C empfohlene Sprache zu unterscheiden - steht für W3C XML Schema). Andere Benutzer verwiesen jedoch auf ihre üblichere Form, XSD (XML Schema Document).

Document Type Definition (auch als DTD bezeichnet) ist eine Gruppe von Markup-Deklarationen, die speziell zum Definieren eines Dokumenttyps für Markup-Sprachen der SGML-Familie verwendet werden (die drei häufigsten sind SGML, XML und HTML). DTD ist eine bestimmte Art von XML-Schema. DTDs verwenden eine knappe formale Syntax. Dies bedeutet, dass es sich um eine Markup-Deklaration handelt, die die genauen Elemente und Referenzen deklariert, die in einem bestimmten Dokumenttyp angezeigt werden können. Außerdem wird der Inhalt und die Attribute der Elemente angegeben. Ein weiterer wichtiger Aspekt der DTD ist die Fähigkeit, Entitäten zu deklarieren, die die Möglichkeit haben, im Instanzdokument verwendet zu werden.

XSD kann verwendet werden, um einen Satz von Regeln auszudrücken, an den sich ein XML-Dokument halten muss. XML-Dokumente müssen diesem Regelwerk entsprechen, um gemäß ihrem jeweiligen Schema als "gültig" betrachtet zu werden. XSD unterscheidet sich von anderen XML-Schemasprachen dadurch, dass es auch mit der Idee entworfen wurde, dass die Feststellung der Gültigkeit eines Dokuments zu einer Sammlung von Informationen führt, die bestimmten Datentypen entsprechen. Dieser Informationssatz nach der Validierung ist zwar nützlich bei der Entwicklung von XML-Dokumentenverarbeitungssoftware, seine Abhängigkeit von bestimmten Datentypen ist jedoch eine Funktion, die erhebliche Kritik hervorgerufen hat.

DTDs sind in Anwendungen weit verbreitet, die spezielle Veröffentlichungszeichen erfordern (z. B. XML- und HTML-Zeichenentitätsreferenzen). Diese speziellen Publishing-Charaktere stammten aus den größeren Sets, die als Merkmale des ISO-SGML-Standards definiert wurden. Eine bestimmte Dokumenttypdefinition verknüpft eine DTD mit einem XML-Dokument. DTDs tauchen in doctypedecl - einem syntaktischen Fragment - am Anfang eines XML-Dokuments auf. Diese Deklaration legt fest, dass es sich bei dem XML-Dokument um eine Instanz eines DTDs handelt, auf den verwiesen wird. Die DTD gibt zwei spezifische Deklarationen ab: Eine interne Untermenge, die Bestandteil der DTD im Dokument selbst ist, und eine externe Untermenge, die sich in einer separaten Textdatei befindet.

Zusammenfassung:

1. XSD ist eine durch W3C empfohlene XML-Schemasprache. DTD ist eine Gruppe von Auszeichnungsdeklarationen, die zur Definition eines Dokumenttyps verwendet werden.

2. XSD wird verwendet, um einen Satz von Regeln auszudrücken, an den sich ein XML-Dokument halten muss. Eine Dokumenttypdefinition verknüpft eine DTD mit einem XML-Dokument.