Logo des digitalen Schulbuchs inf-schule.de. Schriftzug in Zustandsübergangsdiagramm eines endlichen Automaten.

Miniprojekt - MyXHTML

Zielsetzung

Ziel ist es, eine DTD für eine vereinfachte Version von XHTML - kurz MyXHTML - selbst zu entwickeln. Das folgende XHTML-Dokument soll dabei als gültig bzgl. dieser DTD validiert werden.

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html SYSTEM "myxhtml.dtd">
<html>
  <head>
    <title>Steckbrief von Bailey</title>
  </head>
  <body>
    <h1>Steckbrief</h1>
    <p><img alt="Foto von Bailey" src="bailey1.jpg"/></p>
    <p>Ich heiße <em>Bailey</em>. Ich lebe in der Nähe von Kaiserslautern.</p>
    <p>Ich interessiere mich für Agility-Sport. Meine Lieblingsdisziplinen sind:</p>
    <ul>
      <li>Sprung durch einen Reifen</li>
      <li>Lauf über eine Wippe</li>
      <li>Slalomlauf zwischen Stangen</li>
    </ul>
    <p>
      Ich gehe jedes Wochenende zur 
      <a href="www.welpenschule-kl.de/index.html">Welpenschule</a>
      .
    </p>
  </body>
</html>

Hinweise zur Vorgehensweise

Da es sich hier um eine komplexere Aufgabe handelt, beginnen wir schrittweise. Zuerst soll nur folgendes Teildokument betrachtet werden:

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html SYSTEM "myxhtml.dtd">
<html>
  <head>
    <title>Steckbrief von Bailey</title>
  </head>
  <body>
    <h1>Steckbrief</h1>
  </body>
</html>

Eine hierzu passende DTD (abgespeichert in myxhtml.dtd) ist recht leicht zu entwickeln:

<!ELEMENT html (head, body)>
<!ELEMENT head (title)>
<!ELEMENT title (#PCDATA)>
<!ELEMENT body (h1)>
<!ELEMENT h1 (#PCDATA)*>

Das reduzierte XML-Dokument sollte jetzt bzgl. der bisher entwickelten DTD validiert werden.

Nun kann ein XHTML-Dokument mehrere Überschriften 1. Ordnung enthalten. Innerhalb einer Überschrift können bestimmte Zeichenketten auch hervorgehoben werden. Diese Verallgemeinerungen können wie folgt in der DTD berücksichtigt werden:

<!ELEMENT html (head, body)>
<!ELEMENT head (title)>
<!ELEMENT title (#PCDATA)>
<!ELEMENT body (h1)*>
<!ELEMENT h1 (#PCDATA | em)*>
<!ELEMENT em (#PCDATA)>

Nach jeder Änderung sollte das XML-Dokument bzgl. der entwickelten DTD erneut validiert werden.

Aufgabe

Führe die oben gezeigten Schritte durch. Wenn alles soweit geklappt hat, dann erweitere Schritt für Schritt das XML-Dokument und die zugehörige DTD.

X

Fehler melden

X

Suche