Schemasprachen in der Technischen Dokumentation

Artikelbild Schemasprachen für die Technische Doku

23. November 2021

Was sind Schemasprachen für die technische Dokumentation?

Schemasprachen definieren Regelwerke für XML Dokumente und beschreiben Struktur und Inhalt dieser Dokumente syntaktisch. Das definierte Regelwerk stellt somit sicher, dass das XML Dokument valide ist, also aus korrekten, einheitlichen und maschinenlesbaren Informationseinheiten besteht.

Es gibt grammatik- und regelbasierte Schemasprachen: DTD, XML Schema und Relax NG gehören zu den grammatikbasierten Schemasprachen. Mit ihnen lassen sich Elemente und Attribute definieren und Datentypen festlegen. Aus den definierten Inhaltsmodellen ergibt sich in welcher Reihenfolge, Häufigkeit und Hierarchie ein Element verwendet werden darf. Schematron ist dagegen eine regelbasierte Schemasprache. Mit ihr lassen sich zusätzliche Konventionen formulieren, die die grammatikalischen Regeln einer XML-Anwendung ergänzen.

Die wichtigsten Schemasprachen im Detail

DTD (Document Type Definition) einfach erklärt

Eine Dokumenttypdefinition (engl. document type definition), abgekürzt DTD, ist ein Regelwerk, das die logische Struktur eines Dokuments mit Elementen, Attributen, Entitäten und Notationen beschreibt. In einer DTD wird die Reihenfolge, die Anordnung und die Art des Inhalts festgelegt. Die Anzahl und die Qualität der Elemente bestimmt den Detailgrad einer DTD und damit den Grad der Semantik. DTD ist die verbreitetste Syntax von Dokumententypen.

XML Schema (XSD): Struktur und Datentypen definieren

XML Schema, abgekürzt XSD (XML Schema Definition), wird ebenfalls zur Definition von Strukturen in XML-Dokumenten verwendet. Anders als bei einer DTD wird die Struktur hier selbst als XML-Dokument beschrieben. XML Schema ist primär für den Austausch zwischen Applikationen (z.B. Webservices) und datenintensiven Workflows gedacht. DTDs eignen sich dagegen besser für textlastige Anwendungen.

Relax NG: Die flexible Alternative

Die Regular Language Description for XML New Generation, kurz RELAX NG, ist ebenfalls eine Schemasprache zur Definition der Struktur von XML-Dokumenten und ein internationaler Standard ISO/IEC 1975-2 innerhalb der Document Schema Definition Language. Genau wie XML Schema verwendet auch RELAX NG im Gegensatz zu einer DTD keine eigene Syntax, sondern (wahlweise) XML-basiertes Vokabular. RELAX NG ist mächtiger als DTD aber weniger komplex als XML Schema und auch geeignet, wenn es um die Validierung von Elementen und Attributen in XML-Dokumenten geht. RELAX NG entstand aus dem Wunsch die Nachteile von DTD und XML Schema zu beseitigen: die neue Schemasprache sollte XML-Syntax verwenden und leichtgewichtig sein. Das ist mit RELAX NG gelungen.

Schematron: Regeln für die XML-Validierung

Schematron ist eine Schemasprache, die keine formale Grammatik verwendet und damit nicht zur Definition (wie DTD und XML Schema), sondern zur Validierung von XML-Dokumenten dient. Es werden Regeln definiert, die in den grammatikbasierten Schemasprachen nicht möglich sind. Seit Mai 2006 ist Schematron 1.6 ein offizieller ISO/IEC-Standard. Schematron stellt eine Ergänzung zu herkömmlichen Schemasprachen dar. Mittlerweile wird Schematron von den gängigen XML-Editoren unterstützt. So stellt beispielsweise der Oxygen Editor eine Schematron Quick Fix Funktionalität zur Verfügung, die Regelverletzungen automatisch erkennt und korrigiert.

Was unterscheidet XML Schema von einer DTD?

KriteriumDTD (Document Type Definition)XML Schema (XSD)
DatentypenKeine bzw. sehr eingeschränkte Unterstützung für DatentypenUmfangreiche Unterstützung für Datentypen (z. B. String, Integer, Datum)
Kardinalitäten & BedingungenNur einfache Strukturdefinition möglichErweiterbar durch Integritätsbedingungen und detaillierte Kardinalitäten
NamespacesKeine Unterstützung für NamespacesUnterstützt Namespaces zur Vermeidung von Namenskonflikten
SyntaxEigene, nicht-XML-basierte SyntaxXML-basierte Syntax
ValidierungBenötigt eigenen ParserKann mit standardmäßigen XML-Parsern validiert werden
Vererbung / Typ-HierarchienNicht möglichUnterstützung von Vererbung und Typ-Hierarchien
Reihenfolge von ElementenStreng definiertAuch reihenfolgeunabhängige Strukturen möglich
SemantikGeringe AusdrucksstärkeHöhere semantische Ausdruckskraft
Komplexität / MächtigkeitEinfacher, aber weniger leistungsfähigMächtiger und ausdrucksstärker, besonders für Datenstrukturen
TransformierbarkeitGrundlage für XML SchemaJede DTD kann in ein XML Schema überführt werden (umgekehrt nicht immer möglich)

Schemasprachen im Vergleich: DTD & Schematron vs. XML Schema

DTD und Schematron vs. XML Schema

Wir geben Ihnen einen Einblick in die verschiedenen Schemasprachen und ordnen die unterschiedlichen Begriffe ein. Wir widmen uns der Frage, ob es überhaupt die richtige Schemasprache für die Technische Dokumentation gibt und zeigen in zwei Praxisbeispielen verschiedene Szenarien für den Einsatz von Schemasprachen und den Einsatz von Schematron zur Validierung.

Foto Maximilian Gärber Technical Consultant PANTOPIX

Maximilian Gärber

Technical Consultant | PANTOPIX

Wir informieren Sie gerne regelmäßig über neue Artikel, Videos oder Podcast-Folgen.

Knowledge

Erfahren Sie mehr über das Vernetzen von Informationen

In jüngster Zeit hat KI viel Aufmerksamkeit erregt, da sie die Möglichkeiten eröffnet manuelle Aufgaben zu automatisieren. Die Innovationskraft dieses
Diesen Beitrag teilen
Kopiert!

Suche