Die einzige normative Version ist die englische Version unter:
http://www.w3.org/TR/2008/REC-xhtml-basic-20080729
Diese Übersetzung ist zu finden unter:
http://www.schumacher-netz.de/TR/2008/REC-xhtml-basic-20080729-de.html
Diese Übersetzung kann Fehler enthalten. Kommentare oder Korrekturvorschläge zu dieser deutschen Übersetzung senden Sie dem Übersetzer bitte per Email.
Weitere Übersetzungen zum Thema XML finden Sie auf den Seiten des Übersetzers.
Übersetzer: Stefan Schumacher (www.schumacher-netz.de)
Informationen zum
Urheberrecht.
Bitte konsultieren Sie die Errata für dieses Dokument, die normative Korrekturen für dieses Dokument enthalten können.
Beachten Sie auch die Übersetzungen.
Dieses Dokument ist auch in diesen nicht normativen Formaten erhältlich: PostScript, PDF, ZIP-Archiv, und Gezipptes TAR-Archiv.
Copyright © 2007-2008 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and document use rules apply.
div
in einem eigenen Kasten oder im Text
unterlegt mit dieser Hintergrundfarbe.Der XHTML-Basic-Dokumenttyp schließt die Module ein, die mindestens erforderlich sind, um ein Dokumenttyp der XHTML-Muttersprache zu sein. Zusätzlich beinhaltet er Grafiken, Formulare, grundlegende Tabellen und Objektunterstützung. Er ist für Web-Clients geschaffen worden, die nicht alle XHTML-Eigenheiten unterstützen; zum Beispiel Web-Clients wie Mobiltelefone, PDAs, Pager oder Settop-Boxen. Dieser Dokumenttyp ist ausreichend für Inhaltserstellung ausgestattet.
XHTML Basic ist als allgemeine Grundlage entworfen worden, die erweitert werden kann. Zum Beispiel kann ein Ereignismodul, das umfassender ist als das traditionelle HTML-4-Ereignissystem, eingefügt werden oder es kann durch zusätzliche Module der XHTML-Modularisation, wie dem Skript-Modul, erweitert werden. Das Ziel von XHTML Basic ist es, eine gemeinsame Sprache vorzulegen, die von verschiedensten Benutzerschnittstellen unterstützt wird.
Diese Version 1.1 ersetzt Version 1.0 wie in http://www.w3.org/TR/2000/REC-xhtml-basic-20001219 definiert. Mehrere neue Eigenschaften wurden in diese Revision eingearbeitet, um den Benutzern kleiner Geräte, die Hauptnutzer dieser Sprache sind, besser gerecht zu werden:
li
(definiert in [XHTMLMOD])Die Dokumenttyp-Definition ist auf Grundlage der XHTML-Module implementiert, wie in Modularisierung von XHTML [XHTMLMOD] beschrieben.
Dieser Abschnitt beschreibt den Status dieses Dokuments zur Zeit seiner Publikation. Andere Dokumente können dieses Dokument ersetzen. Eine Aufstellung aktueller W3C-Publikationen und die aktuelle Revision dieses Technischen Reports befindet sich im Index der Technischen Reporte des W3C unter http://www.w3.org/TR/.
Dieses Dokument ist eine W3C-Empfehlung und ersetzt die Version der XHTML Basic-Empfehlung vom 19. Dezember 2000. Die Empfehlung spiegelt eine wirtschaftsübergreifende Übereinkunft über bestimmte Eigenschaften der Markup-Sprache wieder, die es Autoren gestattet, reichhaltigen Web-Inhalt zu erzeugen, der an verschiedenste Geräte geliefert werden kann.
Dieses Dokument ist von der W3C XHTML2 Arbeitsgruppe als Teil der W3C HTML Arbeitsgruppe erstellt worden. Bitte konsultieren Sie den Implementierungbericht der Arbeitsgruppe. Eine gibt eine Version, die die Unterschiede zur Vorgeschlagenen Empfehlung hervorhebt. Eine Version, die die Unterschiede zur Empfehlung vom 19. Dezember 2000 hervorhebt, ist ebenfalls verfügbar.
Bitte schicken Sie Kommentare über diese Dokument an www-html-editor@w3.org (Archiv). Es ist nicht angebracht, Diskussionen an diese E-Mail-Adresse zu senden. Öffentliche Diskussion kann auf www-html@w3.org (Archiv) stattfinden.
Diese Dokument wurde von W3C-Mitgliedern, von Software-Entwicklern und von anderen W3C-Gruppen und Interessierten überprüft und ist vom Direktor als eine W3C-Empfehlung anerkannt. Sie ist ein beständiges Dokument und kann als Referenzmaterial verwendet oder durch andere Dokumente zitiert werden. Die Rolle des W3C bei der Erstellung dieser Empfehlung ist es, die Aufmerksamkeit auf das Dokument zu lenken und ihre weitläufige Verbreitung zu fördern. Dieses verbessert die Funktionalität und die Interoperabilität des Webs.
Diese Dokument wurde von einer Gruppe erstellt, die unter der W3C Patent Policy vom 05. Februar 2004 arbeitet. W3C pflegt eine öffentliche Aufstellung aller Patentoffenlegungen, die in Verbindung mit den gelieferten Ergebnissen erstellt wurde; diese Seite enthält auch Anweisungen zur Offenlegung eines Patents. Ein Individuum, das aktuelles Wissen über ein Patent hat, das nach Glauben dieses Individuums essentielle Forderungen enthält, muss diese Informationen in Übereinstimmung mit Abschnitt 6 der W3C Patent Policy offenlegen.
HTML 4 ist eine leistungsstarke Sprache für Webinhalte, aber das Design passt nicht zu den Anforderungen kleiner Benutzerschnittstellen, z.B. zu den Implementierungskosten (Prozessortakt, Speicher, etc.), sofern alle Eigenschaften verwendet werden. Benutzerschnittstellen mit begrenzten Resourcen können eine volle Implementierung der HTML-4-Eigenschaften nicht generell unterstützen. Da nur mit einem voll ausgerüsteten Computer der Zugang zum World Wide Web möglich ist, ist eine große Personengruppe vom Zugang zu Online-Informationen und Online-Diensten ausgeschlossen.
Da es viele Möglichkeiten gibt, HTML zu beschneiden, existieren viele fast identische Untermengen, die von Organisationen und Gesellschaften definiert wurden. Ohne eine gemeinsame Grundlage wird es schwierig, Applikationen für eine große Zahl verschiedener Web-Clients zu entwickeln.
Die Motivation für XHTML Basic besteht darin, einen XHTML-Dokumenttyp bereitzustellen, der von Gemeinschaften geteilt werden kann, (z.B. von Desktops, TVs und Mobiltelefonen), und der reich genug für einfache Inhaltserstellung ist. Neue gemeinschaftsweite Dokumenttypen können durch die Erweiterung vonXHTML Basic in der Weise definiert werden, dass XHTML Basic-Dokumente innerhalb des gültigen Bereichs des neuen Dokumenttyps liegen. So kann ein XHTML Basic-Dokument von möglichst vielen Web-Clients angezeigt werden.
Die Dokumenttyp-Definition für XHTML Basic ist auf Grundlage der XHTML-Module implementiert, die in XHTML-Modularisierung [XHTMLMOD] beschrieben werden.
Für Informationen zum besten Vorgehen bei mobilem Inhalt verweisen wir Sie auf [MOBILEBP].
Informationsgeräte sind für bestimmte Zwecke gedacht. Sie unterstützen die Eigenschaften, die sie für die Funktionen benötigen, die sie erfüllen sollen. Die folgenden Beispiele zeigen verschiedene Informationsgeräte:
Existierende Untermengen und Varianten von HTML für diese Clients schließen "Compact HTML" [CHTML], die "Wireless Markup Language" [WML] und die "HTML 4.0 Guidelines for Mobile Access" [GUIDELINES] ein. Die gemeinsamen Eigenschaften in diesen Dokumenttypen beinhalten:
Diese HTML-Eigenschaften waren der Ausgangspunkt für das Design von XHTML Basic. Weil sich viele Autoren mit den Eigenschaften von HTML auskennen, bilden sie eine nützliche Ausgangssprache, die mit Markup-Modulen anderer Sprachen kombiniert werden kann, entsprechend den Methoden, die in XHTML-Modularisierung [XHTMLMOD] beschrieben sind. Zum Beispiel kann XHTML Basic mit einem angepassten Modul erweitert werden, um reichhaltigere Auszeichnungssemantik in bestimmten Umgebungen zu unterstützen.
Es ist nicht die Intention von XHTML Basic, zukünftige Sprachen zu limitieren. Weil aber die Charakteristiken von HTML 4 (Rahmen, komplexe Tabellen, bestimmte Attribut-Event-Handler usw.) für Clients wie Desktop-Computer entwickelt wurden, hat sich gezeigt, dass sie nicht für kleinere Geräte geeignet sind. XHTML Basic wird erweitert und ausgebaut werden. XHTML von gemeinsamen und grundlegenden Eigenschaften aus zu erweitern, anstatt von fast identischen Untermengen oder zu umfangreichen Funktionen in HTML 4, wird sowohl für die Interoperabilität im Web als auch für die Skalierbarkeit von Vorteil sein.
Verglichen mit der reichhaltigen Funktionalität von HTML 4, sieht XHTML Basic vielleicht wie ein Rückschritt aus, aber in der Tat sind es zwei Schritte voraus, auf der einen Seite für Clients, die viele Eigenheiten von HTML 4 nicht benötigen und auf der anderen Seite für Entwickler, die nur eine XHTML-Untermenge anstatt von vielen bekommen.
Dieser Abschnitt erklärt, warum bestimmte HTML-Eigenschaften nicht Teil von XHTML Basic sind.
Viele einfache Web-Clients können nur Monospace-Schriftzeichen darstellen. Bidirektionaler Text, fettgedruckte Schriftarten und andere Texterweiterungs-Elemente werden nicht unterstützt.
Es wird empfohlen, dass Style Sheets verwendet werden, um eine Darstellung zu erzeugen, die für das Gerät angemessen ist.
Basic XHTML-Tabellen ([XHTMLMOD], Abschnitt 5.6.1) werden unterstützt, aber Tabellen könnten auf kleinen Geräten schwierig darzustellen sein. Es wird empfohlen, dass Entwickler den Web Content Accessibility Guidelines 1.0 zur Erstellung zugänglicher Tabellen ([WCAG10], Richtlinie 5) folgen. Beachten Sie, dass im Basic-Tabellenmodul verschachtelte Tabellen nicht gestattet sind.
Rahmen werden nicht unterstützt. Rahmen erfordern ein Bildschirm-Interface und sind eventuell für kleine Geräten wie Telefone, Pager und Uhren nicht geeignet.
Dieser Abschnitt ist normativ.
Ein konformes XHTML Basic-Dokument ist ein Dokument, das nur die Eigenschaften erfordert, die in dieser Spezifikation vorgeschrieben sind. Ein solches Dokument muss alle folgenden Kriterien erfüllen:
<html>
sein.http://www.w3.org/1999/xhtml
.<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd">
XHTML Basic 1.1-Dokumente SOLLTEN mit dem Internet-Medientyp "application/xhtml+xml" beschriftet werden, wie in [RFC3236] definiert. Weitere Informationen zur Verwendung von Medientypen in XHTML finden sich im informativen Hinweistext [XHTMLMIME].
Die Benutzerschnittstelle muss konform zum Abschnitt "Konforme Benutzerschnittstellen" der Spezifikation XHTML 1.0 ([XHTML1], Abschnitt 3.2) sein.
Dieser Abschnitt ist normativ.
Der XHTML Basic-Dokumenttyp wird aus XHTML-Modulen definiert. Alle XHTML-Module sind in der Spezifikation "XHTML-Modularisierung" [XHTMLMOD] definiert.
XHTML Basic besteht aus den folgenden XHTML-Modulen:
body, head, html, title
abbr, acronym, address, blockquote, br, cite, code, dfn, div, em, h1, h2, h3, h4, h5, h6, kbd, p, pre, q, samp, span, strong, var
a
dl, dt, dd, ol, ul, li
button, fieldset, form, input, label, legend, select, optgroup, option, textarea
caption, table, td, th, tr
img
object, param
b, big, hr, i, small, sub, sup, tt
meta
link
base
script
und noscript
style
style
target
.
Beachte:
(*) = Dieses Modul ist ein erforderliches Modul der XHTML-Wirtsprache.
XHTML Basic verwendet auch das
Modul für das XHTML-Attribut inputmode wie
in dieser Spezifikation definiert. Dieses Modul erweitert die Elemente
input
und textarea
des XHTML-Formularmoduls um das
Attribut inputmode
.
Schlussendlich erweitert XHTML Basic das Element li
des
XHTML-Listenmoduls um das Attribut value
.
Eine DTD von XML 1.0 DTD ist verfügbar unter Appendix B.
Obwohl die Sprache XHTML Basic verwendet werden kann, wie sie ist - als eine einfache XHTML-Sprache mit Text, Verweisen und Bildern - ist die Absicht hinter dem einfachen Aufbau, die Verwendung als Wirtsprache. Eine Wirtsprache kann ein Gemisch aus Vokabularen enthalten, die alle in einen Dokumententyp eingelagert sind. Naturgemäß ist XHTML die Wirtsprache, weil Internet-Entwickler daran gewöhnt sind.
Wird Markup aus anderen Sprachen zu XHTML Basic hinzugefügt, ist der daraus hervorgenende Dokumententyp eine Erweiterung von XHTML Basic. Autoren können Inhalte für XHTML Basic erstellen oder den Vorteil der Erweiterungen nutzen. Das Ziel von XHTML Basic ist es, als gemeinsame Sprache zu dienen, die von verschiedensten Benutzerschnittstellen unterstützt wird.
Dieser Abschnitt ist normativ.
Dieser Abschnitt war ursprünglich eine Komponente von XForms 1.0 und wurde von Martin Duerst verfasst.
Das Modul für das Attribut inputmode definiert das Attribut
inputmode
.
Die folgende Tabelle listet zusätzliche Attribute für Elemente auf, die anderswo definiert sind, wenn das Modul inputmode ausgewählt ist.
Elemente | Attribute | Bemerkungen |
---|---|---|
input& | inputmode (CDATA) | Wenn das Grundlegende Formularmodul oder das Formularmodul ausgewählt sind. |
textarea& | inputmode (CDATA) | Wenn das Grundlegende Formularmodul oder das Formularmodul ausgewählt sind. |
Das Attribut inputmode
gibt der Benutzerschnittstelle einen
Hinweis
darauf, einen passenden Eingabemodus für Texteingaben in ein
verknüpftes Formular-Steuerelement auszuwählen. Der Eingabemodus kann eine
Tastaturkonfiguration, ein Eingabemethoden-Editor (auch Front End-Prozessor
genannt) oder jede andere Einstellung sein, die die Eingabe betrifft, die im
Gerät (in den Geräten) verwendet wird.
Mit Verwendung von inputmode
kann der Autor der Schnittstelle
Hinweise geben, um die Formulareingabe für den Benutzer einfacher zu machen.
Autoren sollten das Attribut inputmode
nutzen, woimmer es
möglich ist und dabei sicherstellen, dass die verwendeten Werte
möglichst viele Geräte ansprechen.
inputmode
Der Wert des Attributs inputmode
ist eine Liste von Token,
getrennt durch Leerzeichen. Token sind entweder Folgen von alphabetischen
Zeichen oder absolute URIs. Die Letzteren können von den Ersteren
unterschieden werden, wenn man beachtet, dass absolute URIs ein ':'
enthalten. Token unterscheiden zwischen Groß- und
Kleinschreibung, sind case-sensitive. Alle Token, die nur aus alphabetischen
Zeichen bestehen, sie sind in dieser Spezifikation definiert, in
5.3 Liste der Token (oder einem
Nachfolger dieser Spezifikation).
Diese Spezifikation definiert keine URIs zur Verwendung als Token, erlaubt aber anderen, solche URIs zur Erweiterung zu definieren. Das kann für Geräte notwendig werden, die Eingabemethoden verwenden, die nicht von den Token abgedeckt werden, die hier gegeben werden. Der URI sollte zu einer von Menschen zu lesenden Beschreibung der Eingabemethode verweisen, die mit der Verwendung des URIs als Token verbunden ist. Diese Beschreibung sollte die Eingabemethode beschreiben, die von diesem Token angegeben wird, und ob und wie dieses Token andere Token modifiziert oder von anderen Token modifiziert wird.
Beim Antreffen eines leeren Formular-Steuerelements mit einem
inputmode
-Attribut, sollte die Benutzerschnittstelle die
Eingabemethode wählen, die vom inputmode
-Attributwert
angegeben wird. Benutzerprogramme sollten das inputmode-Attribut nicht
verwenden, um die Eingabemethode zu wählen, wenn das angetroffene
Formular-Steuerelement bereits Text enthält. Um die entsprechende
Eingabemethode anzugeben, wenn ein angetroffenes Formular-Steuerelement
bereits Text enthält, sollten sich Benutzerschnittstellen auf
plattform-spezifische Konventionen stützen.
Benutzerschnittstellen sollten alle Eingabemethoden verfügbar machen, die vom (Betriebs-)System/Gerät, auf dem sie laufen bzw. zu dem sie Zugang haben, unterstützt werden und die für die normale Verwendung durch den Benutzer installiert sind. Das sind gewöhnlich nur wenige der Eingabemethoden, die mit den Token beschrieben werden können, die hier definiert sind.
Beachte:
Zusätzliche Richtlinien für die Implementierung von Benutzerschnittstellen gibt es unter [UAAG 1.0].
Der folgende einfache Algorithmus wird verwendet, um zu definieren, wie
Benutzerschnittstellen die Werte eines inputmode
-Attributs den
Eingabemethoden zuordnen, die sie zur Verfügung stellen können.
Dieser Algorithmus muss nicht direkt implementiert werden,
Benutzerschnittstellen müssen sich nur so verhalten, als würden
sie ihn benutzen. Der Algorithmus ist nicht dazu geschaffen, "offensichtliche"
oder "erwünschte" Ergebnisse für jede mögliche Kombination
von Token zu erzeugen, aber um richtiges Verhalten für gängige
Token-Kombinationen und vorhersehbares Verhalten in allen Fällen zu
erzeugen.
Erstens, jede verfügbare Eingabemethode wird durch eine oder mehrere Listen mit Token vertreten. Eine Eingabemethode kann von mehr als einer Token-Liste vertreten werden; zum Beispiel würden auf einem System, das für einen griechischen Benutzer eingerichtet ist, sowohl "greek upperCase" als auch "user upperCase" die gleiche Eingabemethode vertreten. Zwei Listen können nicht gleich sein.
Zweitens, das Attribut inputmode
wird vom Anfang bis zum Ende
untersucht. Für jedes Token t im Attibut inputmode
gilt: gibt es in der übrig bleibenden Token-Liste, die verfügbare
Eingabe-Methoden vertritt, irgendeine Token-Liste, die t
enthält, dann
werden alle nicht t enthaltenden Token-Listen, die verfügbare
Eingabe-Methoden vertreten, entfernt. Gibt es keine übrig bleibende
Token-Liste, die t enthält, dann wird t nicht
beachtet.
Drittens, sind ein oder mehrere Token-Listen übrig, und vertreten sie alle die gleiche Eingabemethode, dann wird diese Eingabemethode ausgewählt. Ist keine Liste übrig (gleichbedeutend mit, es gab keine zu Beginn) oder vertritt die übrig gebliebene Liste mehr als eine Eingabemethode, dann wird keine Eingabemethode ausgewählt.
Beispiel: Angenommen, die Liste der Token-Listen, die die verfügbaren
Eingabemethoden vertreten, ist:
{"cyrillic upperCase", "cyrillic lowerCase", "cyrillic",
"latin", "user upperCase", "user lowerCase"},
dann wählen die folgenden inputmode
-Werte die folgenden
Eingabemethoden:
"cyrillic title" wählt "cyrillic" aus,
"cyrillic lowerCase" wählt "cyrillic lowerCase" aus,
"lowerCase cyrillic" wählt "cyrillic lowerCase" aus,
"latin upperCase" wählt "latin" aus, aber
"upperCase latin" wählt "cyrillic upperCase" oder "user upperCase",
wenn sie die gleiche Eingabemethde vertreten und wählt keine Eingabemethode
aus, wenn "cyrillic upperCase" und "user upperCase" nicht die gleiche
Eingabemethode vertreten.
In dieser Spezifikation definierte Token werden in zwei Kategorien
eingeteilt: Schriftsatz-Token und Modifizierer.
In inputmode
-Attributen sollten
Schriftsatz-Token immer vor den Modifizierern aufgeführt werden.
Schriftsatz-Token geben einen allgemeinen Hinweis auf den Zeichensatz, der von einer Eingabemethode abgedeckt wird. In den meisten Fällen vertreten Schriftsatz-Token direkt einen [Unicode-Zeichensatz]. Einige Token vertreten die Blocknamen in der Java-Klasse java.lang.Character.UnicodeBlock ([Java Unicode Blocks]) oder Unicode-Blocknamen. Dies bedeutet jedoch weder, dass eine Eingabemethode die Eingabe aller Zeichen des Zeichensatzes oder Blocks erlauben muss, noch dass eine Eingabemethode nur auf die Zeichen dieses bestimmten Zeichensatzes begrenzt ist. Zum Beispiel sind nicht alle Zeichen des Latin-Zeichensatzes auf einer "latin"-Tastatur enthalten, aber sie enthält Interpunktion, die nicht dem Latin-Zeichensatz zugeordnet ist. Die Schriftsatz-Namen sind dem Unicode-Standard, Version 3.2, entnommen.
Eingabemethode-Token | Kommentare |
---|---|
arabic | Unicode-Schriftsatz |
armenian | Unicode-Schriftsatz |
bengali | Unicode-Schriftsatz |
bopomofo | Unicode-Schriftsatz |
braille | zur Erzeugung von Braille-Mustern (nicht um ein Braille-Eingabegerät anzugeben) |
buhid | Unicode-Schriftsatz |
canadianAboriginal | Unicode-Schriftsatz |
cherokee | Unicode-Schriftsatz |
cyrillic | Unicode-Schriftsatz |
deseret | Unicode-Schriftsatz |
devanagari | Unicode-Schriftsatz |
ethiopic | Unicode-Schriftsatz |
georgian | Unicode-Schriftsatz |
greek | Unicode-Schriftsatz |
gothic | Unicode-Schriftsatz |
gujarati | Unicode-Schriftsatz |
gurmukhi | Unicode-Schriftsatz |
han | Unicode-Schriftsatz |
hangul | Unicode-Schriftsatz |
hanja | Untermenge von 'han', verwendet in koreanischer Schrift |
hanunoo | Unicode-Schriftsatz |
hebrew | Unicode-Schriftsatz |
hiragana | Unicode-Schriftsatz (kann andere japanische Schriftsätze einschließen, erzeugt bei der Konvertierung aus hiragana) |
ipa | Internationales Phonetisches Alphabet |
kanji | Untermenge von 'han', verwendet in japanischer Schrift |
kannada | Unicode-Schriftsatz |
katakana | Unicode-Schriftsatz (vollbreit, nicht halbbreit) |
khmer | Unicode-Schriftsatz |
lao | Unicode-Schriftsatz |
latin | Unicode-Schriftsatz |
malayalam | Unicode-Schriftsatz |
math | mathematische Symbole und zugehörige Zeichen |
mongolian | Unicode-Schriftsatz |
myanmar | Unicode-Schriftsatz |
ogham | Unicode-Schriftsatz |
oldItalic | Unicode-Schriftsatz |
oriya | Unicode-Schriftsatz |
runic | Unicode-Schriftsatz |
simplifiedHanzi | Untermenge von 'han', verwendet in der Schrift des Vereinfachten Chinesisch |
sinhala | Unicode-Schriftsatz |
syriac | Unicode-Schriftsatz |
tagalog | Unicode-Schriftsatz |
tagbanwa | Unicode-Schriftsatz |
tamil | Unicode-Schriftsatz |
telugu | Unicode-Schriftsatz |
thaana | Unicode-Schriftsatz |
thai | Unicode-Schriftsatz |
tibetan | Unicode-Schriftsatz |
traditionalHanzi | Untermenge von 'han', verwendet in Traditionellem Chinesisch |
user | Besonderer Wert, der die 'benutzereigene' Eingabe anzeigt (zum Beispiel, um ihren Namen oder Text in ihrer Muttersprache einzugeben). |
yi | Unicode-Schriftsatz |
Modifizierer-Token können den für sie geltenden Schriftsätzen hinzugefügt werden. Sie dienen zur genaueren Bestimmung der Art der Zeichen, die in einem Formularsteuerelement erwartet werden. Traditionelle PC-Tastaturen benötigen die meisten Modifizierer-Token nicht (in der Tat wären Benutzer dieser Geräte sehr erstaunt, wenn das Programm entscheiden würde, die Groß- und Kleinschreibung selbst zu ändern; CAPS lock für upperCase könnte eine Ausnahme sein). Jedoch können Modifizierer-Token sehr hilfreich sein, um Eingabemethoden für Kleingeräte zu bestimmen.
Eingabemethode-Token | Kommentare |
---|---|
lowerCase | lowercase (für Schriftsätze mit Groß- und Kleinschreibung) |
upperCase | uppercase (für Schriftsätze mit Groß- und Kleinschreibung) |
titleCase | title case (für Schriftsätze mit Groß- und Kleinschreibung): Worte beginnen mit einem Großbuchstaben |
startUpper | Beginne Eingabe mit einem Großbuchstaben, dann fahre mit Kleinbuchstaben fort |
digits | Ziffern eines bestimmten Schriftsatzes (zum Beispiel inputmode='thai digits') |
symbols | Symbole, Interpunktion (geeignet für einen bestimmten Schriftsatz) |
predictOn | Textvoraussage eingeschaltet (zum Beispiel für laufenden Text) |
predictOff | Textvoraussage ausgeschaltet (zum Beispiel für Passwörter) |
halfWidth | kompatible Formulare für halbbreite Zeichen (zum Beispiel Katakana; veraltet/deprecated) |
Benutzerschnittstellen können Informationen verwenden, die in einer
XML Schema pattern-Fassette verfügbar sind, um die Eingabemethode zu
bestimmen. Beachten Sie, dass eine pattern-Fassette eine starke Beschränkung
des lexikalischen Wertes einer Datenknoten-Instanz ist und verschiedene
Beschränkungen für unterschiedliche Teile des Datenelements angeben kann.
Das Attribut inputmode
ist ein zarter
Hinweis auf die Art der Zeichen, die der
Benutzer höchstwahrscheinlich beginnt, in das Formularsteuerelement
einzugeben. Das Attribut inputmode
wird aus folgenden Gründen
zusätzlich zu pattern-Fassetten angeboten:
Die Anzahl der erlaubten Zeichen in einem Muster könnte so hoch sein,
dass es nicht möglich ist, eine vernünftigen Einstellung der
Eingabemethode abzuleiten. Dennoch gibt es häufig eine Zeichenart,
die vom Benutzer mit hoher Wahrscheinlichkeit eingegeben werden
wird. In solchen Fällen gestattet inputmode
, die
Eingabemethode zum Vorteil des Benutzers einzustellen.
In einigen Fällen wäre es möglich, die Einstellung der Eingabemethode über das Muster abzuleiten, weil der erlaubte Zeichensatz im Muster nahe dem Zeichensatz liegt, der von einem inputmode-Attributwert vertreten wird. Jedoch würde eine solche Ableitung eine Menge Daten und Berechnungen auf Seiten der Benutzerschnittstelle erfordern.
Kleingeräte könnten die Überprüfung der Muster dem Server überlassen, werden aber einfach auf jene Eingabemethoden umschalten können, die sie unterstützen. Die Dateneingabe für den Benutzer einfacher machen zu können, ist auf Kleingeräten besonders wichtig.
Dies ist ein Beispiel eines Formulars für die japanische Adresseneingabe. Es wird in Tabellenform dargestellt; es wird in einer späteren Version dieser Spezifikation durch tatsächliche Syntax ersetzt werden.
Überschrift: | inputmode |
---|---|
Familienname | hiragana |
(in kana) | katakana |
Vorname | hiragana |
(in kana) | katakana |
PLZ | latin digits |
Addresse | hiragana |
(in kana) | katakana |
latin lowerCase | |
Telefon | latin digits |
Kommentare | user predictOn |
Version 1.0 dieser Spezifikation wurde von der W3C HTML Arbeitsgruppe erstellt. Zur Zeit der Veröffentlichung der ersten Edition waren Mitglied:
Version 1.1 dieser Spezifikation wurde von der W3C XHTML2-Arbeitsgruppe erstellt. Zur Zeit der Veröffentlichung waren Mitglied:
Dank an Gary Adams (Sun Microsystems), Jonny Axelsson (Metastasis design), Peter Chen (Philips), Dan Connolly (W3C), John Cowan (Reuters), Martin J. Dürst (W3C), Johan Hjelm (Ericsson), Ian Jacobs (W3C), Susan Lesch (W3C), Louis Theran (Nokia), Quinton Zondervan (Lotus), Mitglieder der W3C Mobile Access Interest Group, der W3C Synchronized Multimedia-Arbeitsgruppe, der W3C WAI Protocols and Formats-Arbeitsgruppe und der Open Mobile Alliance für die Mithilfe, das Überarbeiten und Kommentieren dieses Dokuments.
Dieser Anhang ist normativ.
Die DTD-Implementierung von XHTML Basic 1.1 ist in diesem Anhang enthalten. Es gibt direkte Verweise zu den verschiedenen Dateien, und es gibt diese Dokumente ebenfalls in den gezippten Tar-Archivdateien und Zip-Archivdateien, auf die am Anfang dieses Dokuments verwiesen wird. Bitte beachten Sie, dass sich die Dateien hinter den Verweisen "diese Version" mit der Zeit langsam ändern können, sofern W3C neue Spezifikationen veröffentlicht.
Dieser Abschnitt enthält die SGML Open Catalog-format-Definition für die öffentlichen Identifizierer von XHTML Basic.
Diese Version dieser Datei kann von http://www.w3.org/TR/2008/REC-xhtml-basic-20080729/xhtml-basic11.cat heruntergeladen werden. Die aktuelle Version ist verfügbar unter http://www.w3.org/MarkUp/DTD/xhtml-basic11.cat.
-- .......................................................................... -- -- File catalog ............................................................ -- -- XHTML Basic Catalog Data File Revision: $Id: index.html,v 1.1 2008/07/26 17:02:25 jules Exp $ SMI See "Entity Management", SGML Open Technical Resolution 9401 for detailed information on supplying and using catalog data. This document is available from OASIS at URL: <http://www.oasis-open.org/html/tr9401.html> -- -- .......................................................................... -- -- SGML declaration associated with XML .................................... -- OVERRIDE YES SGMLDECL "xml1.dcl" -- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -- -- XHTML Basic DTD modular driver file ..................................... -- PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "xhtml-basic11.dtd" -- XHTML Basic framework module ............................................. -- PUBLIC "-//W3C//ENTITIES XHTML Basic 1.1 Document Model 1.0//EN" "xhtml-basic11-model-1.mod" -- XHTML Inputmode module ............................................. -- PUBLIC "-//W3C//ELEMENTS XHTML Inputmode 1.0//EN" "xhtml-inputmode-1.mod" -- End of catalog data ..................................................... -- -- .......................................................................... --
Dieser Abschnitt enthält den Treiber für die XHTML Basic-Dokumenttypimplementierung als eine XML DTD. Sie stützt sich auf die Implementierung von XHTML-Modulen wie definiert in [XHTMLMOD].
Diese Version dieser Datei kann von http://www.w3.org/TR/2008/REC-xhtml-basic-20080729/xhtml-basic11.dtd heruntergeladen werden. Die aktuelle Version ist verfügbar unter http://www.w3.org/MarkUp/DTD/xhtml-basic11.dtd.
<!-- XHTML Basic 1.1 DTD ...................................................... --> <!-- file: xhtml-basic11.dtd --> <!-- XHTML Basic 1.1 DTD This is XHTML Basic, a proper subset of XHTML. The Extensible HyperText Markup Language (XHTML) Copyright 1998-2007 World Wide Web Consortium (Massachusetts Institute of Technology, European Research Consortium for Informatics and Mathematics, Keio University). All Rights Reserved. Permission to use, copy, modify and distribute the XHTML Basic DTD and its accompanying documentation for any purpose and without fee is hereby granted in perpetuity, provided that the above copyright notice and this paragraph appear in all copies. The copyright holders make no representation about the suitability of the DTD for any purpose. It is provided "as is" without expressed or implied warranty. Editors: Murray M. Altheim <mailto:altheim@eng.sun.com> Peter Stark <mailto:Peter.Stark@ecs.ericsson.se> Shane McCarron <mailto:shane@aptest.com> Revision: $Id: index.html,v 1.1 2008/07/26 17:02:25 jules Exp $ --> <!-- This is the driver file for version 1.1 of the XHTML Basic DTD. This DTD is identified by the PUBLIC and SYSTEM identifiers: PUBLIC: "-//W3C//DTD XHTML Basic 1.1//EN" SYSTEM: "http://www.w3.org/MarkUp/DTD/xhtml-basic11.dtd" --> <!ENTITY % XHTML.version "-//W3C//DTD XHTML Basic 1.1//EN" > <!-- Use this URI to identify the default namespace: "http://www.w3.org/1999/xhtml" See the Qualified Names module for information on the use of namespace prefixes in the DTD. --> <!ENTITY % NS.prefixed "IGNORE" > <!ENTITY % XHTML.prefix "" > <!-- Reserved for use with the XLink namespace: --> <!ENTITY % XLINK.xmlns "" > <!ENTITY % XLINK.xmlns.attrib "" > <!-- For example, if you are using XHTML Basic 1.1 directly, use the public identifier in the DOCTYPE declaration, with the namespace declaration on the document element to identify the default namespace: <?xml version="1.0"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "http://www.w3.org/MarkUp/DTD/xhtml-basic11.dtd" > <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" > ... </html> --> <!-- reserved for future use with document profiles --> <!ENTITY % XHTML.profile "" > <!-- Bidirectional Text features This feature-test entity is used to declare elements and attributes used for bidirectional text support. --> <!ENTITY % XHTML.bidi "IGNORE" > <?doc type="doctype" role="title" { XHTML Basic 1.1 } ?> <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: --> <!ENTITY % xhtml-events.module "INCLUDE" > <!ENTITY % xhtml-bdo.module "%XHTML.bidi;" > <!-- Inline Style Module ........................................ --> <!ENTITY % xhtml-inlstyle.module "INCLUDE" > <![%xhtml-inlstyle.module;[ <!ENTITY % xhtml-inlstyle.mod PUBLIC "-//W3C//ELEMENTS XHTML Inline Style 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-inlstyle-1.mod" > %xhtml-inlstyle.mod;]]> <!ENTITY % xhtml-model.mod PUBLIC "-//W3C//ENTITIES XHTML Basic 1.1 Document Model 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-basic11-model-1.mod" > <!ENTITY % xhtml-framework.mod PUBLIC "-//W3C//ENTITIES XHTML Modular Framework 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-framework-1.mod" > %xhtml-framework.mod; <!ENTITY % pre.content "( #PCDATA | %InlStruct.class; %InlPhras.class; %Anchor.class; %Inline.extra; )*" > <!ENTITY % xhtml-text.mod PUBLIC "-//W3C//ELEMENTS XHTML Text 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-text-1.mod" > %xhtml-text.mod; <!ENTITY % xhtml-hypertext.mod PUBLIC "-//W3C//ELEMENTS XHTML Hypertext 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-hypertext-1.mod" > %xhtml-hypertext.mod; <!ENTITY % xhtml-list.mod PUBLIC "-//W3C//ELEMENTS XHTML Lists 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-list-1.mod" > %xhtml-list.mod; <!-- Add in the value attribute to the li element --> <!ATTLIST %li.qname; value %Number.datatype; #IMPLIED > <!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: --> <!-- Scripting Module ........................................... --> <!ENTITY % xhtml-script.module "INCLUDE" > <![%xhtml-script.module;[ <!ENTITY % xhtml-script.mod PUBLIC "-//W3C//ELEMENTS XHTML Scripting 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-script-1.mod" > %xhtml-script.mod;]]> <!-- Style Sheets Module ......................................... --> <!ENTITY % xhtml-style.module "INCLUDE" > <![%xhtml-style.module;[ <!ENTITY % xhtml-style.mod PUBLIC "-//W3C//ELEMENTS XHTML Style Sheets 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-style-1.mod" > %xhtml-style.mod;]]> <!-- Image Module ............................................... --> <!ENTITY % xhtml-image.module "INCLUDE" > <![%xhtml-image.module;[ <!ENTITY % xhtml-image.mod PUBLIC "-//W3C//ELEMENTS XHTML Images 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-image-1.mod" > %xhtml-image.mod;]]> <!-- Tables Module ............................................... --> <!ENTITY % xhtml-table.module "INCLUDE" > <![%xhtml-table.module;[ <!ENTITY % xhtml-table.mod PUBLIC "-//W3C//ELEMENTS XHTML Basic Tables 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-basic-table-1.mod" > %xhtml-table.mod;]]> <!-- Forms Module ............................................... --> <!ENTITY % xhtml-form.module "INCLUDE" > <![%xhtml-form.module;[ <!ENTITY % xhtml-form.mod PUBLIC "-//W3C//ELEMENTS XHTML Forms 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-form-1.mod" > %xhtml-form.mod;]]> <!-- Presentation Module ........................................ --> <!ENTITY % xhtml-pres.module "INCLUDE" > <![%xhtml-pres.module;[ <!ENTITY % xhtml-pres.mod PUBLIC "-//W3C//ELEMENTS XHTML Presentation 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-pres-1.mod" > %xhtml-pres.mod;]]> <!-- Link Element Module ........................................ --> <!ENTITY % xhtml-link.module "INCLUDE" > <![%xhtml-link.module;[ <!ENTITY % xhtml-link.mod PUBLIC "-//W3C//ELEMENTS XHTML Link Element 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-link-1.mod" > %xhtml-link.mod;]]> <!-- Document Metainformation Module ............................ --> <!ENTITY % xhtml-meta.module "INCLUDE" > <![%xhtml-meta.module;[ <!ENTITY % xhtml-meta.mod PUBLIC "-//W3C//ELEMENTS XHTML Metainformation 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-meta-1.mod" > %xhtml-meta.mod;]]> <!-- Base Element Module ........................................ --> <!ENTITY % xhtml-base.module "INCLUDE" > <![%xhtml-base.module;[ <!ENTITY % xhtml-base.mod PUBLIC "-//W3C//ELEMENTS XHTML Base Element 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-base-1.mod" > %xhtml-base.mod;]]> <!-- Param Element Module ....................................... --> <!ENTITY % xhtml-param.module "INCLUDE" > <![%xhtml-param.module;[ <!ENTITY % xhtml-param.mod PUBLIC "-//W3C//ELEMENTS XHTML Param Element 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-param-1.mod" > %xhtml-param.mod;]]> <!-- Embedded Object Module ..................................... --> <!ENTITY % xhtml-object.module "INCLUDE" > <![%xhtml-object.module;[ <!ENTITY % xhtml-object.mod PUBLIC "-//W3C//ELEMENTS XHTML Embedded Object 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-object-1.mod" > %xhtml-object.mod;]]> <!-- Inputmode Attribute Module .................................. --> <!ENTITY % xhtml-inputmode.module "INCLUDE" > <![%xhtml-inputmode.module;[ <!ENTITY % xhtml-inputmode.mod PUBLIC "-//W3C//ELEMENTS XHTML Inputmode 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-inputmode-1.mod" > %xhtml-inputmode.mod;]]> <!-- Target Attribute Module .................................... --> <!ENTITY % xhtml-target.module "INCLUDE" > <![%xhtml-target.module;[ <!ENTITY % xhtml-target.mod PUBLIC "-//W3C//ELEMENTS XHTML Target 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-target-1.mod" > %xhtml-target.mod;]]> <!ENTITY % xhtml-struct.mod PUBLIC "-//W3C//ELEMENTS XHTML Document Structure 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-struct-1.mod" > %xhtml-struct.mod; <!-- end of XHTML Basic 1.1 DTD ........................................... -->
Ein Dokumenttyp der XHTML-Familie (wie XHTML Basic) muss das verwendete Inhaltsmodell definieren. Dies wird durch ein getrenntes Inhaltsmodell-Modul erreicht, das durch das XHTML Modular Framework instantisiert wird. Das Inhaltsmodell-Modul und der XHTML Basic-Treiber (oben) arbeiten zusammen, um die Modul-Implementierungen den besonderen Anforderungen des Dokumenttyps anzupassen. Das Inhaltsmodell-Modul für XHTML Basic ist folgend definiert:
Diese Version dieser Datei kann von http://www.w3.org/TR/2008/REC-xhtml-basic-20080729/xhtml-basic11-model-1.mod heruntergeladen werden. Die aktuelle Version ist verfügbar unter http://www.w3.org/MarkUp/DTD/xhtml-basic11-model-1.mod.
<!-- ....................................................................... --> <!-- XHTML Basic 1.1 Document Model Module .................................... --> <!-- file: xhtml-basic11-model-1.mod This is XHTML Basic, a proper subset of XHTML. Copyright 1998-2007 W3C (MIT, ERCIM, Keio), All Rights Reserved. Revision: $Id: index.html,v 1.1 2008/07/26 17:02:25 jules Exp $ SMI This DTD module is identified by the PUBLIC and SYSTEM identifiers: PUBLIC "-//W3C//ENTITIES XHTML Basic 1.1 Document Model 1.0//EN" SYSTEM "http://www.w3.org/MarkUp/DTD/xhtml-basic11-model-1.mod" Revisions: (none) ....................................................................... --> <!-- XHTML Basic Document Model This module describes the groupings of elements that make up common content models for XHTML elements. --> <!-- Optional Elements in head .............. --> <!ENTITY % HeadOpts.mix "( %script.qname; | %style.qname; | %meta.qname; | %link.qname; | %object.qname; )*" > <!-- script and noscript are used to contain scripts and alternative content --> <!ENTITY % Script.class "| %script.qname; | %noscript.qname;" > <!-- Miscellaneous Elements ................. --> <!ENTITY % Misc.extra "" > <!-- These elements are neither block nor inline, and can essentially be used anywhere in the document body. --> <!ENTITY % Misc.class "%Script.class; %Misc.extra;" > <!-- Inline Elements ........................ --> <!ENTITY % InlStruct.class "%br.qname; | %span.qname;" > <!ENTITY % InlPhras.class "| %em.qname; | %strong.qname; | %dfn.qname; | %code.qname; | %samp.qname; | %kbd.qname; | %var.qname; | %cite.qname; | %abbr.qname; | %acronym.qname; | %q.qname;" > <!ENTITY % InlPres.class "| %tt.qname; | %i.qname; | %b.qname; | %big.qname; | %small.qname; | %sub.qname; | %sup.qname;" > <!ENTITY % I18n.class "" > <!ENTITY % Anchor.class "| %a.qname;" > <!ENTITY % InlSpecial.class "| %img.qname; | %object.qname;" > <!ENTITY % InlForm.class "| %input.qname; | %select.qname; | %textarea.qname; | %label.qname; | %button.qname;" > <!ENTITY % Inline.extra "" > <!ENTITY % Inline.class "%InlStruct.class; %InlPhras.class; %InlPres.class; %Anchor.class; %InlSpecial.class; %InlForm.class; %Inline.extra;" > <!ENTITY % InlNoAnchor.class "%InlStruct.class; %InlPhras.class; %InlPres.class; %InlSpecial.class; %InlForm.class; %Inline.extra;" > <!ENTITY % InlNoAnchor.mix "%InlNoAnchor.class; %Misc.class;" > <!ENTITY % Inline.mix "%Inline.class; %Misc.class;" > <!-- Block Elements ......................... --> <!ENTITY % Heading.class "%h1.qname; | %h2.qname; | %h3.qname; | %h4.qname; | %h5.qname; | %h6.qname;" > <!ENTITY % List.class "%ul.qname; | %ol.qname; | %dl.qname;" > <!ENTITY % Table.class "| %table.qname;" > <!ENTITY % Form.class "| %form.qname;" > <!ENTITY % Fieldset.class "| %fieldset.qname;" > <!ENTITY % BlkStruct.class "%p.qname; | %div.qname;" > <!ENTITY % BlkPhras.class "| %pre.qname; | %blockquote.qname; | %address.qname;" > <!ENTITY % BlkPres.class "| %hr.qname;" > <!ENTITY % BlkSpecial.class "%Table.class; %Form.class; %Fieldset.class;" > <!ENTITY % Block.extra "" > <!ENTITY % Block.class "%BlkStruct.class; %BlkPhras.class; %BlkPres.class; %BlkSpecial.class; %Block.extra;" > <!ENTITY % Block.mix "%Heading.class; | %List.class; | %Block.class; %Misc.class;" > <!-- All Content Elements ................... --> <!-- declares all content except tables --> <!ENTITY % FlowNoTable.mix "%Heading.class; | %List.class; | %BlkStruct.class; %BlkPhras.class; %Form.class; %Block.extra; | %Inline.class; %Misc.class;" > <!ENTITY % Flow.mix "%Heading.class; | %List.class; | %Block.class; | %Inline.class; %Misc.class;" > <!-- end of xhtml-basic11-model-1.mod -->
Schlussendlich definieren wir das neue Attributmodul inputmode.
Diese Version dieser Datei kann von http://www.w3.org/TR/2008/REC-xhtml-basic-20080729/xhtml-inputmode-1.mod heruntergeladen werden. Die aktuelle Version ist verfügbar unter http://www.w3.org/MarkUp/DTD/xhtml-inputmode-1.mod.
<!-- ...................................................................... --> <!-- XHTML Inputmode Module .............................................. --> <!-- file: xhtml-inputmode-1.mod This is XHTML, a reformulation of HTML as a modular XML application. Copyright 1998-2007 W3C (MIT, ERCIM, Keio), All Rights Reserved. Revision: $Id: index.html,v 1.1 2008/07/26 17:02:25 jules Exp $ This DTD module is identified by the PUBLIC and SYSTEM identifiers: PUBLIC "-//W3C//ELEMENTS XHTML Inputmode 1.0//EN" SYSTEM "http://www.w3.org/MarkUp/DTD/xhtml-inputmode-1.mod" Revisions: (none) ....................................................................... --> <!-- Inputmode inputmode This module declares the 'inputmode' attribute used for suggesting the input mode associated with an input or textarea element. --> <!-- render in this frame --> <!ENTITY % Inputmode.datatype "CDATA" > <!-- add 'inputmode' attribute to 'input' element --> <!ATTLIST %input.qname; inputmode %Inputmode.datatype; #IMPLIED > <!-- add 'inputmode' attribute to 'textarea' element --> <!ATTLIST %textarea.qname; inputmode %Inputmode.datatype; #IMPLIED > <!-- end of xhtml-inputmode-1.mod -->