Grundlagen von XML

Weblication® verwendet das XML-Format, um Inhalte und Konfigurationsdaten zu speichern. Bei der Verwendung von XML gelten verbindliche Regeln, welche die Notation und das Format der XML-Dateien definieren. XML-Dateien müssen "valide und wohlgeformt" sein:

Jede XML-Datei darf über genau ein einziges Root-Element verfügen

Beispiele für valides XML: Ein einziges Root-Element

<rootelement>
  <element>Inhalt</element>
</rootelement>

Beispiele für nicht valides XML: Mehrere Root-Elemente

<rootelement>
  <element>Inhalt</element>
</rootelement>

<zweitesElement>
  <anderesElement>Inhalt</anderesElement>
</zweitesElement>

XML-Elemente müssen mit den Zeichen a-z und A-Z beginnen, alle anderen Zeichen sind verboten

Beispiele für valides XML: Korrekte Benennung der Elemente

<element>
  <anderesElement></anderesElement>
</element>

Beispiele für nicht valides XML: Falsche Benennung der Elemente

<2element>
  <_nocheins></_nocheins>
</2element>

XML-Elemente müssen nach Öffnen wieder geschlossen werden

Beispiele für valides XML: Korrektes Schliessen geöffneter Elemente

<element>Das ist der Wert</element>

oder als Element ohne Inhalt:

<element />

Beispiele für nicht valides XML: Fehlerhaftes Schliessen geöffneter Elemente

<element>Das ist der Wert<element>

oder als Element ohne Inhalt:

<element>

Das Speichern von Inhalten erfolgt entweder als Textnode innerhalb eines Elements, oder als Attribut eines Elements:

Speichern von Werten als Text-Node oder Attribut

Speichern als Text-Node:
<element>Das ist der Text-Node</element>

Speichern als Attribut:
<element attributname="attributwert" />

Kombiniert:
<element attributname="attributwert">Das ist der Textnode</element>

Unterschied:

Werte in Attributen dürfen keine Sonderzeichen beinhalten, speziell die öffnenden und schliessenden Tag-Zeichen kleiner als (<) und größer als (>) dürfen nicht verwendet werden. Das macht Attribute zur Verwendung für HTML-formatierten Text und weitere HTML-Elemente wie Links (a href="..") und Bilder (img src="") unbrauchbar.

In der Regel werden Attribute verwendet, um einfache Namen und IDs, die ausschliesslich aus Strings bestehen, zu speichern. Text-Nodes werden verwendet, um komplexe Textinhalte mit HTML-Formatierungen oder Pfadangaben zu speichern:

Beispiel für die Dateispeicherung in Attributen und Textnodes

<wd:item id="text" name="Fliesstext" type="element.text">
  <wd:fragment id="text" name="Fliesstext" type="text.standard"><![CDATA[Das ist ein html-formatierter Fliesstext mit <i>HTML-Auszeichnungen</i>.]]></wd:fragment>
</wd:item>

Bei der Verschachtelung von Elementen definiert die Lage der Elemente ihre Beziehung zueinander: Elemente, die unterhalb eines Elements liegen, werden als CHILDNODES oder CHILDS bezeichnet, Elemente, die parallel zu anderen Elementen liegen, verhalten sich zu diesen als SIBLINGNODES oder SIBLINGS. Ein Element, das andere Elemente beinhalt, wird aus Sicht der darin befindlichen Elemente als PARENTNODE oder PARENT bezeichnet:

Referenzierung von Elementen zueinander

<elementA>		// PARENT ZU b und c
  <elementB></elementB>	// CHILD zu a, SIBLING zu c
  <elementC></elementC>	// CHILD zu a, SIBLING zu b
</elementA>

Daraus wird ersichtlich, dass ein Element mehr als nur eine Funktion in der Referenzierung haben kann - diese ist immer abhängig von der relativen Sichtweise. So ist beispielsweise das Element elementB zu elementA ein CHILD-Element, zu elementC ein SIBLING-Element.

Weitere Informationen zur Nutzung und Definition von XML und XSLT finden Sie hier:

wiki.selfhtml.org XML

wiki.selfhtml.org: XML/XSL/XSLT