XML-Know How

Kommentare

Oft ist es wünschenswert, in einem XML-Dokument freisprachliche Kommentare unterzubringen, die nicht Teil des eigentlichen Inhalts sind. Man könnte für Kommentare natürlich ein leeres Element verwenden und den Kommentartext in einem CDATA-Attribut dieses Elements unterbringen. Das hat aber zwei Nachteile. Erstens muss dieses Element in der DTD deklariert werden, so dass in XML-Dokumenten ohne ein Kommentar-Element keine Kommentare möglich wären. Will man überall Kommentare erlauben, würde der Aufwand in der DTD entsprechend hoch ausfallen, da das Kommentarelement in der Deklaration eines jeden anderen Elementes vorkommen müsste. Zweitens würde ein Kommentar-Element unnötigerweise von der Verarbeitungssoftware mit bearbeitet werden müssen, was zu Geschwindigkeitsverlusten führt.

Daher gibt es in XML die Möglichkeit, zwischen der Anfangskennung <!-- und der Endekennung --> beliebigen Text unterzubringen, den die Verarbeitungssoftware ignoriert. Solche Kommentare können deshalb an beliebiger Stelle in einem XML-Dokument oder einer DTD stehen, außer in Tags oder Deklarationen:

Kommentare im XML-Dokument:

<kapitel>
<überschrift>Text des Absatzes</überschrift>

<!-- unvollständig! -->
<absatz>Text des Absatzes</absatz>
<absatz>Text des Absatzes</absatz>
<absatz>Hier ist <wissenschaftler>Meier</wissenschaftler>

<!-- nachprüfen! --> ganz anderer Aufassung.</absatz>
</kapitel>

Kommentar in der DTD:

<!ELEMENT kapitel (überschrift?, (absatz | grafik)+)>
<!ELEMENT überschrift (#PCDATA)>
<!-- reicht diese Deklaration??? -->
<!ELEMENT absatz (#PCDATA | wissenschaftler)*>