Zum Inhalt springen

Element (Auszeichnungssprache)

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 13. Juli 2005 um 11:20 Uhr durch 82.82.251.236 (Diskussion). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Ein SGML-Element ist ein Knoten in dem durch SGML repräsentierten Informationsbaum. Ein SGML-Element besteht aus den Element-Eigenschaften (Name, SGML-Attribute) und dem Element-Inhalt. In einer SGML-Instanz wird ein SGML-Element durch SGML-Tags repräsentiert.

Insorfern kann man sagen: Ein SGML-Element dient zum Auszeichnen von Textdateien. Beispielsweise:

 <elem>  .... </elem>

Das SGML-Element ist hierbei elem, das durch den öffnenden Tag <elem> sowie den schließenden Tag </elem> gebildet wird. Der schließende Tag kann entfallen, wenn das Element keinen Inhalt hat und die verwendete SGML-Anwendung es erlaubt. Anstelle von <elem></elem> kann dies zum Beispiel durch den Tag <elem /> erreicht werden.

Die am häufigten verwendete SGML-Anwendung ist sicherlich HTML. Diese nutzt jedoch einige Eigenschaften von SGML, die die Dokumente schwer parse-bar machen (z.B. SHORTTAG). So ist z.B. das Folgende ein komplettes, dem Standard entsprechendes HTML-Dokument verglichen mit dem kompletten Parse-Baum:

valides HTML-Dokument vollständiger Parse-Baum
  <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
  
  
  <title>bla</>
  
  
  <p/foo/
  
  
  <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
  <html>
    <head>
      <title>bla</title>
    </head>
    <body>
      <p>foo</p>
    </body>
  </html>

Hierbei werden implizit folgende Ergänzungen vorgenommen:

  • Durch das Öffnen des title-Elements wird das html- sowie head-Element geöffnet.
  • Das title Element wird durch die Zeichenkette </ wieder beendet.
  • Durch das Öffnen eines Elements des Textkörpers (body), wird dieser geöffnet und zuvor der Kopf (head) geschlossen.
  • Das p-Tag wird durch den Schrägstrich (/) beendet.
  • Der nächste Schrägstrich schließt das p-Element.
  • Das Ende des Dokuments beendet den Textkörper sowie das html-Dokument.


Um diese Probleme zu umgehen, wurde eine Untermenge von SGML definiert, nämlich XML, die einfach weiterzuverarbeiten ist. HTML wurde dann als XML-konforme Anwendung XHTML neu definiert.


Besonderheiten

SGML-Element

Bei SGML kann in der Deklaration definiert werden, wie Elemente aussehen (sie müssen nicht notwendigerweise in spitzen Klammern stehen). Ebenso kann die Beachtung der Groß-/Kleinschreibung und das Vorhandensein von Starttag bzw. Endtag (Tag-Minimierung) eingestellt werden. Elemente, die als EMPTY deklariert sind dürfen kein Endtag haben. Attribute können dergestalt minimiert sein, dass nur der Wert des Attributes angegeben wird.

XML-Element

Bei XML müssen alle geöffneten Tags von Elementen auch wieder geschlossen werden, die Groß-/Kleinschreibung wird beachtet. Attribute müssen immer als Name-/Wert-Paar angegeben werden.

Leere Elemente dürfen auch als Leeres-Element-Tag dargestellt werden:

   <colspec colwidth="10*" />

HTML-Element

Manche HTML-Elemente müssen nicht geschlossen werden (z.B. <br>). Das liegt daran, dass HTML eine Anwendung von SGML ist, wo die sogenannte Tag-Minimierung angewandt wird, die in der DTD festgelegt wird. Ebenso können manche Attribute einfach durch ihren Inhalt angegeben werden.

In XML ist die Tag-Minimierung weggefallen, d.h. es muss jedes Element geschlossen werden, also auch in XHTML. Desgleichen müssen Attribute immer als Name-/Wert-Paar dargestellt werden.

HTML:
 <p>Erste Zeile<br>Zweite Zeile</p>
XHTML:
 <p>Erste Zeile<br />Zweite Zeile</p> 

Siehe auch: Markup