XML/Regeln/Wohlgeformtheit
Der Begriff "Wohlgeformtheit", der Ihnen im Zusammenhang mit XML immer wieder begegnen wird, bedeutet, dass eine Datei die Regeln von XML korrekt einhält.
<?xml version="1.0"?>
<Dialog>
<Adam Emotion="heftig">ich liebe dich!</Adam>
<Eva Emotion="heftig">ich dich auch!</Eva>
</Dialog>
Es handelt sich aus folgenden Gründen um eine wohlgeformte XML-Datei:
- am Beginn steht die Seite XML-Deklaration, die den Bezug zu XML herstellt.
- Es gibt mindestens ein Datenelement (im Beispiel sind es drei: <Dialog>...</Dialog>, <Adam>...</Adam> und <Eva>...</Eva>)
- Es gibt bei den Datenelementen ein äußerstes Element (auch als Dokument-Element bezeichnet), das alle anderen Datenelemente enthält (im Beispiel: <Dialog>...</Dialog>).
Was jedoch fehlt, ist der Bezug zu einer DTD, in der die verwendeten Elemente definiert sind. Deshalb kann man über das Beispiel sagen, es ist wohlgeformt, aber nicht gültig.
Gültigkeit eines XML-Dokuments / vollständiges XML-Dokument
Ein gültiges XML-Dokument enthält zu Beginn eine XML-Deklaration und anschließend eine Dokumenttyp-Deklaration, in der entweder eine externe DTD-Datei oder intern die nötigen DTD-Regeln angegeben werden. Man kann also sagen, ein gültiges XML-Dokument ist wohlgeformt und außerdem noch validierbar, also gegen die in einer DTD definierten Regeln überprüfbar.
<?xml version="1.0"?>
<!DOCTYPE quelle [
<!ELEMENT quelle (adresse, beschreibung)>
<!ELEMENT adresse (#PCDATA)>
<!ELEMENT beschreibung (#PCDATA)>
]>
<quelle>
<adresse>http://www.selfhtml.org/</adresse>
<beschreibung>fast alles zum Thema HTML</beschreibung>
</quelle>
Das Beispiel startet mit der üblichen XML-Deklaration. Danach folgt eine Dokumenttyp-Deklaration mit internen DTD-Regeln. Genauso gut könnte an dieser Stelle auch eine Dokumenttyp-Deklaration stehen, die auf eine externe DTD verweist. Definiert wird im Beispiel ein Dokumenttyp namens quelle
mit dem gleichnamigen Dokument-Element quelle
und zwei davon abhängigen Elementen adresse
und beschreibung
. Zur genauen Syntax von DTD-Definitionen siehe Dokumenttyp-Definitionen (DTDs).
Im Anschluss an die Dokumenttyp-Deklaration folgen die Daten. Der Name des Dokumenttyps, im Beispiel quelle
, muss gleich dem Namen des Dokument-Elements sein. Das Dokument-Element ist das äußerste Element in der Hierarchie, dem alle anderen Elemente untergeordnet sind. Im Beispiel ist der gesamte Datenbereich in <quelle>...</quelle>
eingeschlossen.
Innerhalb des Dokument-Elements werden die Daten nach den Regeln notiert, die von der DTD vorgegeben werden. Im Beispiel wurden im DTD-Bereich die beiden Elemente adresse
und beschreibung
als innere Elemente des Dokument-Elements quelle
definiert. Im Datenbereich spiegelt sich das wider durch die Notationen <adresse>...</adresse>
und <beschreibung>...</beschreibung>
. Der DTD-Bereich im Beispiel erlaubt nichts anderes als die einmalige Verwendung dieser beiden Elemente.
Das Beispiel erfüllt damit alle Kriterien einer gültigen und vollständigen XML-Datei.