WML2.0 Tutorial
WML2 ist eine Sprache, die die Syntax und Semantik der folgenden Elemente erweitert:
- XHTML Basic [ XHTMLBasic ]
- CSS Mobile Profile [ CSSMP ]
- Unique semantics of WML1.0 [ WML1.0 ]
WML2 ist für die Angabe der Präsentation und Benutzerinteraktion auf Geräten mit eingeschränkten Funktionen wie Mobiltelefonen und anderen drahtlosen Mobilterminals optimiert.
Dieses Tutorial enthält Details zur WML-Version (Wireless Markup Language) 2. Dieses Tutorial bezieht sich auf Version 2.0 von WML als WML2.
Das vom W3C definierte XHTML Basic ist eine geeignete Teilmenge von XHTML, einer Neuformulierung von HTML in XML.
Grundlegende Ziele von WML2:
Es gibt fünf Hauptziele für WML2:
Backward compatibility: Die WML2-Anwendung sollte auch auf alten Geräten ausgeführt werden.
Convergence with existing and evolving Internet standards: XHTML Basic [XHTMLBasic] und CSS Mobile Profile [CSSMP]
Optimisation of access from small, limited devices:WAP-fähige Geräte sind im Allgemeinen klein und batteriebetrieben und haben einen relativ begrenzten Speicher und eine relativ begrenzte CPU-Leistung. Daher sollte WML2 so optimiert sein, dass es auf diesen Geräten ausgeführt werden kann.
Allowance for the creation of distinct user interfaces: WAP ermöglicht die Erstellung von Man Machine Interfaces (MMIs) mit maximaler Flexibilität und Fähigkeit eines Anbieters, die Benutzererfahrung zu verbessern.
Internationalisation of the architecture:WAP zielt auf gängige Zeichencodes für den internationalen Gebrauch ab. Dies umfasst internationale Symbole und Piktogrammsätze für Endbenutzer sowie die lokale Zeichenkodierung für Inhaltsentwickler.
WML2 Vision:
Die WML2-Vision besteht darin, eine Sprache zu erstellen, die die Syntax und Semantik von XHTML Basic und CSS Mobile mit der einzigartigen Semantik von WML1 erweitert. Der Benutzer sollte nicht wissen, wie die WML1-Kompatibilität erreicht wird.
Die WML2-Sprachstruktur:
WML2 ist eine neue Sprache mit folgenden Komponenten:
(1) XHTML Basic:
Diese Elementgruppe dient zur W3C-Konvergenz. Für einige der Elemente werden WML-Erweiterungsattribute hinzugefügt, um die WML1-Funktionalität zu erreichen.
(1a) XHTML-Grundelemente:
a Abk. Akronym Adresse Basis Blockquote BR Beschriftung Zitiercode dd dfn div dl dt em Form h1 h2 h3 h4 h5 h6 Kopf kbd Bezeichnung li Link Objekt ol param pre q samp span starke Tabelle td th Titel tr ul var
(1b) XHTML-Basiselemente mit WML-Erweiterungsattributen:
body html img Eingabe Meta Option p Stil Textbereich auswählen
(2) XHTML-Modularisierungselemente:
Diese Elementgruppe besteht aus ausgewählten Elementen aus den Modulen von XHTML, die nicht in XHTML Basic enthalten sind. Die meisten Elemente sind aus Gründen der WML1-Kompatibilität enthalten. Ein Element ist als Erweiterung enthalten, die für eingeschränkte Mobilteilfunktionen geeignet ist.
(2a) XHTML-Modularisierung zur Abwärtskompatibilität mit WML1:
b groß i klein (vom Präsentationsmodul) u (vom Legacy-Modul) Feldsatzoptgruppe (vom Formularmodul)
(2b) XHTML-Modularisierungselemente zur Funktionserweiterung:
Std
(3) WML-Erweiterungselemente:
Einige Elemente stammen aus WML1, da die entsprechenden Funktionen in XHTML Basic oder XHTML Modularization nicht bereitgestellt werden. Ein Element zur Verbesserung der WML1-Funktionen ist enthalten.
(3a) WML-Erweiterungselemente (aus Gründen der WML1-Kompatibilität):
wml: Zugriff wml: Anker wml: Karte wml: do wml: getvar wml: go wml: noop wml: onevent wml: Postfeld wml: prev wml: Aktualisierung wml: setvar wml: timer
(3b) WML-Erweiterungselemente (zur Funktionserweiterung):
wml: Widget
WML-Dokumentstrukturmodule:
Die folgenden Elemente im Strukturmodul werden verwendet, um die Struktur eines WML2-Dokuments anzugeben:
- body
- html
- wml:card
- head
- title
Das Körperelement:
Das Attribut wml: newcontext gibt an, ob der Browserkontext beim Laden des Dokuments in einem genau definierten Zustand initialisiert wird. Wenn der Attributwert wml: newcontext "true" ist, MUSS der Browser den Browserkontext bei der Navigation zu dieser Karte neu initialisieren.
Das HTML-Element:
Das Attribut xmlns: wml bezieht sich auf den WML-Namespace, zum Beispiel: http://www.wapforum.org/2001/wml.
Das Attribut wml: use-xml-fragmentes wird verwendet, um anzugeben, wie eine Fragmentkennung vom Benutzeragenten interpretiert wird. Einzelheiten zur Verwendung von wml: use-xml-fragmente in der Aufgabe go und der Aufgabe prev.
Das wml: card Element:
Das Element wml: card gibt ein Fragment des Dokumententexts an. In einem Dokument können mehrere wml: Kartenelemente enthalten sein. Jedes wml: card-Element repräsentiert eine individuelle Präsentation und / oder Interaktion mit dem Benutzer.
Wenn der newcontext-Attributwert des wml: card-Elements "true" ist, MUSS der Browser den Browserkontext bei der Navigation zu dieser Karte neu initialisieren.
Das Kopfelement:
Dieses Element speichert Kopfzeileninformationen des Dokuments wie Metaelement und Stylesheet usw.
Das Titelelement:
Dieses Element wird verwendet, um einen Dokumenttitel einzufügen
NOTE:WML-Entwickler können den XHTML-Dokumentstil verwenden, dh die Körperstruktur, oder sie können eine Sammlung von Karten verwenden. Wenn die Körperstruktur verwendet wird, wird ein Dokument unter Verwendung eines Körperelements erstellt. Das body-Element enthält den Inhalt des Dokuments. Wenn eine Kartensammlung verwendet wird, wird ein Dokument mit einem oder mehreren wml: -Kartenelementen erstellt.
WML2-Aufgaben
Die folgenden Aufgaben sind in WML2.0 definiert. Diese Aufgaben sind WML1.0 sehr ähnlich
- Die Go-Aufgabe
- Die vorherige Aufgabe
- Die Noop-Aufgabe
- Die Aktualisierungsaufgabe
WML2-Ereignisse:
Die folgenden Ereignistypen sind in WML2 definiert:
Intrinsic event: Ein Ereignis, das vom Benutzeragenten generiert wird und die folgenden Ereignisse enthält, die WML1.0 ähneln
- ontimer
- onenterforward
- onenterbackward
- onpick
Extrinsic event:Ein Ereignis, das von einem externen Agenten an den Benutzeragenten gesendet wurde. Die WML 2-Spezifikation gibt keine Klassen von extrinsischen Ereignissen an. Ein Beispiel für eine extrinsische WML-Ereignisklasse können WTA-Ereignisse sein
WML2-Dokumenttyp:
WML2-Dokumente werden durch den MIME-Medientyp "application / wml + xml" identifiziert. Der Typ "application / xhtml + xml" kann verwendet werden, um Dokumente aus einer der XHTML-basierten Markup-Sprachen, einschließlich XHTML Basic, zu identifizieren.
Die DOCTYPE-Deklaration kann den XHTML Basic Formal Public Identifier und auch den URI der XHTML Basic DTD enthalten, wie unten angegeben:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN"
"http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">
Stylesheets mit WML2
Stylesheets können zum Stylen von WML2-Dokumenten verwendet werden. Stilinformationen können einem Dokument auf drei Arten zugeordnet werden:
Externes Stylesheet:
Ein externes Stylesheet kann einem Dokument mithilfe einer speziellen XML-Verarbeitungsanweisung oder des Link-Elements zugeordnet werden. Die Verwendung der XML-Verarbeitungsanweisung kann ebenfalls verwendet werden.
Im folgenden Beispiel wird die XML-Verarbeitungsanweisung verwendet, um das externe Stylesheet "mobile.css" zuzuordnen.
<?xml-stylesheet href="mobile.css"
media="handheld" type="text/css" ?>
Im folgenden Beispiel wird das Link-Element verwendet, um das externe Stylesheet "mystyle.css" zuzuordnen:
<html>
<head>
<link href="mystyle.css" type="text/css" rel="stylesheet"/>
...
</head>
...
</html>
Interne Stylesheets:
Stilinformationen können mithilfe des Stilelements im Dokument gefunden werden. Dieses Element muss sich wie der Link im Dokumentenkopf befinden.
Das folgende Beispiel zeigt ein internes Stylesheet:
<html>
<head>
<style type="text/css">
p { text-align: center; }
</style>
...
</head>
...
</html>
Inline-Stil:
Sie können Stilinformationen für ein einzelnes Element mithilfe des Stilattributs angeben . Dies wird als Inline-Stil bezeichnet.
Im folgenden Beispiel werden Inline-Stilinformationen auf ein bestimmtes Absatzelement angewendet:
<p style="text-align: center">...</p>
Das WML2-Standard-Stylesheet:
Hier ist ein Beispiel für ein Stylesheet für WML 2.0:
body, card, div, p, center, hr, h1, h2, h3, h4, h5, h6,
address, blockquote, pre, ol, ul, dl, dt, dd,
form, fieldset, object { display: block }
li { display: list-item }
head { display: none }
table { display: table }
tr { display: table-row }
td, th { display: table-cell }
caption { display: table-caption }
th { font-weight: bolder; text-align: center }
caption { text-align: center }
h1, h2, h3, h4, h5, h6, b, strong { font-weight: bolder }
i, cite, em, var,address { font-style: italic }
pre, code, kbd, pre { white-space: pre }
big { font-size: larger}
small { font-size: smaller}
hr { border: 1px inset }
ol { list-style-type: decimal }
u { text-decoration: underline }
Die WML2-Elemente:
Hier ist ein Link zu einer vollständigen Liste aller WML2-Elemente. Die meisten Elemente sind in der XHTML-Spezifikation verfügbar, mit Ausnahme einiger Elemente, die mit WML beginnen: Diese Elemente sind spezifisch für WML.
Alle Elemente haben hier die gleiche Bedeutung wie in der XHTML-Spezifikation.
WML2-Tags-ReferenzZusammenfassung:
Wir können daraus schließen, dass Sie, wenn Sie XHTML und WML1.0 kennen, nichts zu tun haben, um WML2.0 zu lernen
Wenn Sie weiterlesen möchten, finden Sie hier die vollständige Spezifikation für WAP2.0 und WML2.0