Erstellen einer XML-Grammatik mit DTDs

In früheren Artikeln wurde die Weiterentwicklung des Editors für Formbriefe in Richtung Verwendung von XML geschildert und die Document Type Definitions (DTDs) als ein primäres Design-Element vorgestellt. In diesem Artikel werden einige der bei der Erstellung von DTDs hinsichtlich des Designs getroffene Entscheidungen beleuchtet und Wege aufgezeigt, wie dieses Projekt noch verbessert werden kann.

Listing A zeigt unsere komplette DTD für die Beschreibung der Formbrief-Vorlagen. Es sind Elementtypen zur Text-Formatierung und für mögliche Benutzereingaben enthalten. Listing B zeigt ein Beispiel für eine vollständige Briefvorlage-Datei, in der die hier beschriebenen Elemente und Methoden angewandt werden.

Root-Elemente
Unsere Dokumente verwenden entweder den Elementtyp Brief oder den Elementtyp Formular als Root-Element. Der Unterschied liegt in den Standardrändern und dem Einfügen eines Briefkopfs. Hier die gegenwärtigen Definitionen:


<!ELEMENT letter ANY><!ELEMENT form ANY><!ATTLIST form
dest CDATA #IMPLIED
top CDATA "0"
bottom CDATA "0"
left CDATA "0"
right CDATA "0"
logo_x CDATA "0"
logo_y CDATA "0"
orient ( land | port ) "port">

Beachten Sie, dass nur das Formular-Element eine Festlegung von Rändern und Ausrichtung sowie das Einfügen eines Logos erlaubt. Diese Werte sind im Brief nicht veränderbar. Wir hätten daher diese festen Werte als Teil der DTD definieren können. Auf diese Weise können alle Standardwerte an einer Stelle erfasst werden, außerdem übernimmt so der Parser einen weiteren Teil der Arbeit:


<!ATTLIST letter
top CDATA #FIXED "12"
bottom CDATA #FIXED "6"
left CDATA #FIXED "15"
right CDATA #FIXED "15"
logo_x CDATA #FIXED "6.25"
logo_y CDATA #FIXED "2"
orient CDATA #FIXED "port">

Die Spezifikation #FIXED bedeutet, dass ein bestimmtes Attribut den angegebenen Wert aufweisen muss. Im Allgemeinen enthalten Dokumente keine eigenen Attribute sondern verwenden die Standard-Werte.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Google schließt Zero-Day-Lücke in Chrome

Von ihr geht ein hohes Risiko aus. Angreifbar sind Chrome für Windows, macOS und Linux.

15 Stunden ago

KI erkennt Emotionen in echten Sportsituationen

Forschende des KIT haben ein Modell zur Emotionsanalyse entwickelt, das affektive Zustände ähnlich genau wie…

1 Tag ago

Ermittlern gelingt weiterer Schlag gegen Ransomware-Gruppe LockBit

Sie decken die Identität des Kopfs der Gruppe auf. Britische Behörden fahnden mit einem Foto…

2 Tagen ago

Apple stellt neuen Mobilprozessor M4 vor

Er treibt das neue iPad Pro mit OLED-Display an. Apple verspricht eine deutliche Leistungssteigerung gegenüber…

3 Tagen ago

Cyberabwehr: Mindestens zwei kritische Vorfälle pro Tag

Davon entfällt ein Viertel auf staatliche Einrichtungen und 12 Prozent auf Industrieunternehmen.

3 Tagen ago

Tunnelvision: Exploit umgeht VPN-Verschlüsselung

Forscher umgehen die Verschlüsselung und erhalten Zugriff auf VPN-Datenverkehr im Klartext. Für ihren Angriff benötigen…

3 Tagen ago