Behandlung von Leerraumzeichen
Unter einem Leerraumzeichen versteht man ein Leerzeichen, Tabulator oder einen Zeilenumbruch. Diese werden in edML ähnlich wie in HTML und CSS behandelt (siehe MDN Artikel How whitespace is handled by HTML, CSS, and in the DOM). Das bedeutet, dass Leerraumzeichen, die im XML-Dokument auftreten, im dargestellten Kurs zum großen Teil nicht auftauchen, sondern stattdessen dazu genutzt werden können, den Quellcode gut lesbar zu halten. Es gibt jedoch auch Ausnahmen.
Darstellung von Leerraumzeichen
Die genauen Regeln für die Darstellung von Leerraumzeichen sind wie folgt:
- In allen Elementen, die mehr als nur Inline-Elemente oder Text enthalten dürfen, werden Leerraumzeichen ignoriert. Das betrifft etwa die beiden Elemente
list
undtable
, weil diese Elemente noch die Nicht-Inline-Elementelistitem
undrow
enthalten dürfen. Außerdem betrifft das all diejenigen Elemente, welche die grobe Struktur des Kursdokuments beschreiben, wie etwacourse
odervariant
. Leerraumzeichen dienen in diesen Elementen nur der Lesbarkeit des Quellcodes. -
In Elementen, welchen nur Inline-Elemente oder Text enthalten dürfen, aber selbst keine Inline-Elemente sind, wie etwa
p
odertitle
, wird bei der Darstellung nach folgendem Verfahren vorgegangen:- Zuerst werden alle Leerraumzeichen, die im Element oder einem Unterelement vorkommen, durch Leerzeichen ersetzt.
- Anschließend werden diese Leerzeichen kollabiert, das heißt, aufeinanderfolgende Leerzeichen werden durch ein einfaches Leerzeichen ersetzt. Dabei können auch Leerzeichen, die aus unterschiedlichen Unterelementen stammen, kollabiert werden.
- Schließlich werden alle Leerzeichen am Anfang und am Ende des Elements gelöscht.
-
In speziellen Elementen, wie etwa
codelisting
, werden die Leerraumzeichen dagegen behalten und nicht kollabiert.