Menu

 

Erweiterungen

Erweiterungen bei HTML

HTML-Seiten besitzen als SGML-Sprache zwar eine genau definierte Struktur, die in der DTD ( Document Type Definition) festgelegt ist. Ohne Kenntnis der DTD kann aber die Hierarchie eines Dokuments nicht zweifelsfrei ermittelt werden. Manche Elemente haben kein Ende-Tag (wie z. B. <br/> für Zeilenumbruch) oder ein optionales Ende-Tag (wie <p> für Paragraph). Nur die DTD bestimmt, welche Elemente dies sind. Kennt man sie nicht, so ist die Dokumenthierarchie mehrdeutig. XHTML als XML-Sprache behebt diesen Mangel.

HTML ist eigentlich nicht erweiterbar, übliche Browser gehen aber bei der HTML-Interpretation folgendermassen vor:

  • Auszeichnung durch unbekannte Elemente wird ignoriert.
  • Sie versuchen aus einer nicht-konformen Seite das Beste zu machen, d. h. eine Seite wird auf jeden Fall interpretiert.
  • Bei syntaktischen Fehlern werden keine Meldungen erzeugt.

Damit ist die Interpretation von verschiedenen HTML-Versionen möglich. Führt eine Version ein neues Element oder Attribute ein, wird dieses von älteren Browsern einfach ignoriert. Kennt ein HTML-3.2 fähiger Browser beispielsweise das in HTML 4.0 eingeführte acronym -Element (für Abkürzungen) nicht, wird es überlesen und die Abkürzung erscheint im normalen Zeichensatz. Gleiches gilt für browserspezifische Erweiterungen. Das blink -Element ist in keinem HTML-Standard enthalten. Netscape Browser stellen den Text dann blinkend dar und andere Browser geben den Text wiederum normal aus.

Erweiterungen bei XHTML

XHTML geht einen anderen Weg (das X steht ja gerade für extensible, erweiterbar). XHTML nutzt dazu das Namensraum-Konzept von XML aus. Eine XHTML-Version bildet dabei einen solchen Namensraum. Erweiterungen wie MathML und SVG stellen weitere Namensräume dar. In einem XHTML-Dokument können solche Erweiterungen eingebunden und verwendet werden. Die Dokumente folgen dann strikt ihren Standards. Erweiterungen, auch zukünftige, sind dennoch durch Bildung von neuen Namensräumen möglich, ohne dass beispielsweise der XHTML-1.1 Standard geändert werden müsste.

Durch die Verwendung von Namensräumen ist darüberhinaus ein Konflikt von Elementen gleichen Namens in verschiedenen Erweiterungen ausgeschlossen. Diese können immer eindeutig zugeordnet und sogar mit der Kennung des Namensraums ausgewählt werden.

Ein Browser, der eine Erweiterung oder neue Version nicht kennt, hat bei XHTML folgende Möglichkeiten:

  • Er kann die Darstellung zunächst ablehnen (möglicherweise mit der Option, sie trotzdem zu zeigen und das Beste daraus zu machen)
  • Er kann die Hierarchie der Seite ermitteln, und versuchen, Elemente, die in älteren Versionen definiert sind, so wie in der älteren Version darzustellen

Natürlich kann ein Browser, der in seiner Version, auf ein fehlendes blink -Element trifft, nicht einfach den Text blinkend darstellen. Auch mathematischer Formelsatz ist unmöglich, wenn die Routinen nicht vorhanden sind. Der Browser hat aber folgende Möglichkeiten

  • Er kann die Auszeichnung durch unbekannte Elemente ignorieren und den Text einfach darstellen (wie unter HTML).
  • Unbekannte Teile kann er ignorieren (diese Möglichkeit existiert bei HTML nicht)
  • Er kann versuchen, aus dem Web ein Plug-In für die Erweiterung zu laden und die Seite dann korrekt darstellen.

 

 

 
   Anzeigen

Navigation:    Webdesign - Programmierung - Web Grafiken - Software Guides - Tools - Templates - Schriftarten - Seminare - IT News
Partner:   Template OK - PCopen - SITEopen - PCopen Schweiz - HTMLopen Schweiz - VirtualUniversity.ch - WEB-SET.com - YesMMS - Job und Karriere