info@a-coding-project.de

XHTML Basic

XHTML Basic ist eine Untergruppe von XHTML. Ein Problem von XHTML ist, dass zum (korrekten) Darstellen von Dokumenten meist aufwendige Programme, ein schneller Prozessor und/oder ein großer Arbeitsspeicher notwendig sind. Geräte mit begrenzten Kapazitäten, wie z.B. Mobiltelefone, PDAs, Settop-Boxen oder Pager, können dabei nicht schritthalten und geraten somit in einen Nachteil. Damit dies nicht der Fall ist und eine möglichst weitflächige Verbreitung und vielseitiger Zugang zu Informationen ermöglicht werden kann, wurde XHTML Basic geschaffen. Es bietet nur das Minimum an benötigten Elementen und Attributen (etc.) und wird somit leichter verwendbar und implementierbar sein. Des Weiteren wird es aufgrund ihrer Nähe zu XHTML von den meisten Webdesignern einfach und schnell zu verstehen sein.

Entstehung

Die Entstehung von XHTML Basic beginnt mit der Erfindung von mobilen Geräten mit denen man auf das Internet,WWWoder WAP-Dienste zugreifen kann. Seit dem existieren mehrere - meist firmenabhängige - Ideen und auch Sprachen, die eine Auszeichnung von Dokumenten für ebendiese (eingeschränkten) Geräte beschreiben und zulassen. Eine derartige Sprache ist beispielsweise WML die vom WAPForum herausgegeben und vertrieben wird.
XHTML Basic greift bestimmte Grundideen und Elementtypen der bereits bestehenden Sprachen (wie z.B. Text-Dekoration, (Hyper-)Links, Formulare, Tabellen, Grafiken und Meta-Informationen) auf und verwendet diese. Dazu wurde Ende 2000 die erste Spezifikation (besser gesagt, die erste Recommendation zur Spezifikation von XHTML Basic) vom W3C herausgegeben.

XHTML Module

XHTML Basic ist von XHTML abgeleitet und wird durch die Verwendung von XHTML Modulen erweitert werden. Die Dokumenttyp-Definition (DTD) von XHTML Basic baut selbst auch schon auf der Ideen von Modulen auf und ist als solche implementiert.

Das verwenden von Modulen bringt einige wichtige Vorteile:

  • Module können fast beliebig verwendet werden
  • der Einsatz von bestimmten Modulen kann für bestimmte Geräte separat geregelt werden
  • die Sprache an sich wird dadurch leichter (~ weniger)

Übereinstimmungen

Damit ein Dokument als ein korrektes XHTML Basic Dokument anerkannt werden kann muss es die folgenden Kennzeichen aufweisen:

  • Das Dokument darf nur Elemente der XHTML Basic DTD sowie Elemente die mit den Regeln dieserDTDübereinstimmend sind verwenden.
  • Das Haupt-Element muss das html-Element sein.
  • Der Standard-Namespace des Haupt-Elements muss der von XHTML sein (xmlns="http://www.w3.org/1999/xhtml/").
  • Es muss eine DOCTYPE-Beschreibung geben, die auf die XHTML Basic DTD verweist (<!DOCTYPE html PUBLIC "-//W3C//DTDXHTMLBasic 1.0//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">).
  • Es muss eine DOCTYPE-Beschreibung geben, die vor dem Haupt-Element zu finden ist.
  • Wenn weitere DTDs eingebettet werden, darf keine Eigenschaft der XHTML Basic DTD überschrieben oder ersetzt werden.

Einschränkungen

Damit XHTML Basic funktionieren kann bedarf es einigen Einschränkungen. Diese sind wie folgt:

Formulare

Der Grundstamm von Forumlarelementen kann verwendet werden. Dazu gehören: form, input (text, password, checkbox, radio, submit, reset, hidden), label, select, option und textarea. Alle anderen Formularelemente werden aufgrund ihres geringen Nutzen für mobile Geräte nicht unterstützt. Des Weiteren sollte daran gedacht werden, dass die Benutzer möglicherweise nicht in der Lage dazu sein könnten lange Texte einzugeben.

Gestaltung und Rahmen

Da die meisten mobilen Geräte kaum oder nur wenige Möglichkeiten bieten Text zu gestalten, werden einige Text-Elemente nicht unterstützt. Dazu gehören u.a. b, i, u, bdo, del und ins, big und small, sub und sup sowie tt.

Sämtliche Arten von Rahmen werden aufgrund der meist zu kleinen Anzeigefläche nicht unterstützt.

Skripte und Events (Ereignisse)

Scripte werden nicht unterstützt (script, noscript) da bei mobilen Geräten meist eine zu kleine Rechenleistung vorliegt, sodass diese nicht in der Lage sind einfache oder komplexe Skripte auszuführen. Deshalb wird davon abgeraten.

Ebenso werden keine Events d.h. event-Attribute oder -Elemente unterstützt, da es kein einheitliches System gibt, welche Events verwendet werden sollten.

StyleSheets

StyleSheets (z.B. CSS) sollten nur in externen Dateien angeboten werden. Dies geschieht dazu, dass Geräte, die keine StyleSheets unterstützen keine unnötigen Daten laden müssen. Demzufolge ist das style-Element nicht in XHTML Basic enthalten. Um externe StyleSheets anzubieten kann - wie gewohnt - das link-Element verwendet werden. Des weiteren werden die Elemente span und div sowie das class sowie das media-Attribut zur stilistischen Anpassung durch StyleSheets unterstützt.

Tabellen

XHTML Basic unterstützt Tabellen nur in ihren einfachsten Gefügen. So sind nur unverschatelte Tabellen mit den folgenden Elementen möglich (alle anderen Tabellen-Elemente werden aufgrund ihres geringeren Nutzens für mobile Geräte nicht unterstützt): table, tr, th, td und caption.

Nicht enthalten sind u.a.: col und colgroup sowie thead, tbody und tfoot.

Elemente und Attribute

Die folgenden Elemente (mit ihren Attributen) sind in XHTML Basic:

  • abbr, acronym, address, body, caption, cite, code, dfn, div, dl, dt, dd, em, h1 - h6, kbd, li, p, ol, samp, span, strong, ul, var
    class, id, title
    xml:lang
  • a
    accesskey
    charset
    href
    hreflang
    rel
    rev
    tabindex
    type
    class, id, title
    xml:lang
  • base
    href
  • blockquote, q
    cite
    class, id, title
    xml:lang
  • br
    class, id, title
  • form
    action
    method (get | post)
    enctype
    class, id, title
    xml:lang
  • head
    profile
    xml:lang
  • html
    version
    xmlns (http://www.w3.org/1999/xhtml)
    xml:lang
  • img
    alt
    height
    longdesc
    src
    width
    class, id, title
    xml:lang
  • input
    accesskey
    checked (checked)
    maxlength
    name
    size
    src
    tabindex
    type (text | password | checkbox | radio | submit | reset | hidden)
    value
    class, id, title
    xml:lang
  • label
    accesskey
    for
    class, id, title
    xml:lang
  • link
    charset
    href
    hreflang
    media
    rel
    rev
    type
    class, id, title
    xml:lang
  • meta
    content
    http-equiv
    name
    scheme
    xml:lang
  • object
    archive
    classid
    codebase
    codetype
    data
    declare (declare)
    name
    standby
    tabindex
    type
    width
    class, id, title
    xml:lang
  • option
    selected (selected)
    value
    class, id, title
    xml:lang
  • param
    id
    name
    type
    value
    valuetype (data | ref | object)
  • pre
    xml:space (preserve)
    class, id, title
    xml:lang
  • select
    multiple (multiple)
    name
    size
    tabindex
    class, id, title
    xml:lang
  • table
    summary
    width
    class, id, title
    xml:lang
  • td, th
    abbr
    align (left | center | right)
    axis
    colspan
    headers
    rowspan
    scope (row | col)
    valign (top | middle | bottom)
    class, id, title
    xml:lang
  • textarea
    accesskey
    cols
    name
    rows
    tabindex
    class, id, title
    xml:lang
  • title
    xml:lang
  • tr
    align (left | center | right)
    valign (top | middle | bottom)
    class, id, title
    xml:lang

Über uns

Stefan Wienströer

Wir entwickeln Webanwendungen mit viel Leidenschaft. Unser Wissen geben wir dabei gerne weiter. Mehr über a coding project

Auch interessant