WAP 1.0端末での処理。

WAP 1.0端末(EZウェブ旧世代機, オープンウェーブ社海外端末)では以下のように処理されます。

WAP 1.0端末での処理・目次。

変換後の文書型。

WML 1.1に変換されます。

テキスト処理。

一般のテキスト処理。

タグのテキスト処理。

HTML文書のタグ変換処理。

ここで挙げていないタグは、全て無視されます。

1. <html>要素開始タグ。

lang属性(xml:lang属性も可)の値を、言語情報として取得します。

2. <title>要素。

内容を文書の題名として取得します。

尚、<title>要素を記述していない場合の題名は不定な文字列となります。

3. <base>要素。

href属性で指定されるURLを相対URLの基準とします。

尚、正当な仕様では相対URLが出てくる前に一回だけ記述出来る事になっており、しらぎくモバイルシステムでもこれに違背した場合は相対URLの扱いを保障出来ません。

4. <script>要素及び<style>要素。

内容を含めて削除されます。

5. <map>要素。

携帯電話向けのコンテンツには利用されないため、<map>要素は全部削除されます。

6. id属性。

id属性を検出した場合、その地点を分割点(後述)とします。

7. リスト要素。

<dl>, <ul>及び<ol>要素内では、以下のように扱います。

内容は全てリストアイテム要素となるようにします。

余白取りのために、リストアイテム要素で無い要素をリスト要素の直下に置いている場合、その扱いは不定になります。

リストアイテムの開始タグが、リスト要素の直下に無い場合。
リストアイテムの終了タグが正しく終わっていない場合。

これらの場合は、一番内側のリスト要素の直下になるまで閉じていない要素を閉じ(正当なリストアイテム要素を含む)、その上でリストアイテムを開始するなどします。

WAP 1.0での扱い。

WML 1.1にはリスト要素が定義されておりません。

このため、要素の入れ個数に応じて行頭に「&nbsp;」を適宜挿入し、必要に応じてマーカを付けるなどの措置を執っております。

8. <h○>要素, <p>要素, <address>要素及び<pre>要素。

全て<p mode="wrap">要素に置換されます。

また、属性に関して、以下の読替を行います。

リスト要素外の<h○>要素及び<p>要素
align属性が指定されている場合
変換前のalign属性が変換後のalign属性に反映されます。
align属性が指定されていない場合
設定ファイルでの指定に従ったalign属性が附与されます。
リスト要素内の<h○>要素及び<p>要素

開始タグの箇所に<br />要素が挿入され、上記の読替えによるタグは出力されません。

当然、align属性も無効になります。

その他の属性は削除されます。

9 <blockquote>要素。

<blockquote>要素の前後に、以下のメッセージが付与されます。

<blockquote>要素タグは一切出力されません。

但し、内容となるテキストに対して、行頭に必ず「> 」が付与されるようになっております

<blockquote>開始タグ直前。

<blockquote>要素にtitle属性が付与されていない場合は、以下の出力になります。

<p align="left" mode="wrap">&nbsp;*以下引用。</p>

title属性が付与されている場合は、以下の出力になります。

<p align="left" mode="wrap">&nbsp;*<i>○○</i>より。</p>

<blockquote>終了タグ直後。

<blockquote>終了タグの直後には、以下のように出力されます。

<p align="left" mode="wrap">&nbsp;*引用ここまで。</p>

重要事項。

上記の通り、<blockquote>要素にはその直前直後に引用を表すメッセージが自動的に付与され、これを忌避する事は出来ません。

このため、<blockquote>要素を字下げの目的で利用している場合は問題が生じ得る事をお含み置き下さい。

10. <div>要素及び<center>要素。

WML 1.1ではテキストは全て<p>要素となっていなければなりません。

<div>要素及び<center>要素は、そこから先で出力する<p>要素のalign属性値を変更する働きのみとなります。

尚、変更前と変更後で変わらない状態で<p>要素を改めて出力する場合、一旦<p>要素を閉じずにその箇所に<br />要素を出力します。

11. <form>要素。(平成17年 9月 9日 更新)

WMLでは<form>要素に対応する機能を実現する事は極めて難しいものとなっております。

このためしらぎくモバイルシステムでは、WAP 1.0端末には<form>要素は一切出力しませんでしたが、第3.180版(平成17年 9月 9日)以降から擬似的にフォーム機能を実現する処理を追加しました。

フォーム機能の概要。

WAP 1.0端末では、入力フォームから入れられた値を変数に収納し、それを送信するクエリに反映させると言う方式を採っております。

これに関しての詳細は割愛させて頂きますが、しらぎくモバイルシステムでは以下のように処理が分かれます。

  1. 変数を初期化する処理
  2. クエリの送信に関する指定
  3. フォームの本体
変数を初期化する処理。

変数の初期は処理は単一のカードに変換されます。

このカードはフォームに入る前に自動的に処理されます。

また、<input type="reset">要素を指定した場合も、このカードにジャンプする事で変数が初期化されます。

クエリの送信に関する指定。

フォーム本体のカードの冒頭に、クエリ送信に関する指定を記述します。

フォーム本体。

具体的には、以下のように変換されます。

<input type="text">要素
<input type="password">要素

WMLの<input>要素に変換されます。

有効な属性はname, value, istyleのみです。

istyle属性は値に合わせたformat属性に変換されます。

<input type="radio">要素

同一のname属性を持つ<input type="radio">要素を一纏めにして、<select>要素に変換します。

このとき、<input type="radio">要素直後の文字列を<option>要素の内容とします。

<input type="checkbox">要素

「はい」「いいえ」を内容とする二つの<option>要素を持つ<select>要素に変換します。

このとき、checked属性がついているものは「はい」が先行し、そうで無いものは「いいえ」が先行します。

<input type="submit">要素

端末のacceptソフトキーに反映させます。

具体的には<do type="accept">要素となります。

この要素の内容は<form>要素のmethod属性値などにより異なったものとなります。

また、以下の点にご注意下さい。

また、この要素はWML文書本体外に移動されるため、当該要素があった位置には「○○はACCEPTキーを押して下さい」と言う文字列が置かれます。

<input type="reset">要素

端末のsoft1ソフトキーに反映させます。

具体的には<do type="soft1">要素となります。

この要素の内容は変数初期化カードへのURLをhref属性値に持つ<go>要素となります。

また、以下の点にご注意下さい。

また、この要素はWML文書本体外に移動されるため、当該要素があった位置には「○○はSOFT1キーを押して下さい」と言う文字列が置かれます。

<textarea>要素

内容の連続する改行・タブ・半角空白を一纏めにして、それをvalue属性値とする<input type="text">要素に変換します。

istyle属性は有効ですが、値に合わせたformat属性に変換されます。

<select>要素

WMLの<select>要素に変換します。

multiple属性は無視します。

内容の<optgroup>要素の開始・終了タグは無視します。

また、内容の<option>要素でselected属性がついているものは、先頭に移されます。

<option>要素

WMLの<option>要素に変換します。

value属性が無い場合は、要素の内容をvalue属性値とします。

<fieldset>要素
現ヴァージョンでは開始タグ・終了タグとも無視します。
<label>要素

現ヴァージョンでは開始タグ・終了タグとも無視します。

但し、<input type="radio">要素及び<input type="checkbox">要素が<label>要素に含まれている場合には、当該要素の直後の文字列をこの要素の終了タグまで認識するものとします。

具体的な処理結果に関しては、別文書・WAP 1.0端末でのフォーム変換変換処理例に挙げておりますのでご覧下さい。

注意。

WAP 1.0機では、以下の制約があります。

12. <marquee>要素。

<p align="left" mode="nowrap">要素に変換されます。

13. <hr>要素。

<p align="left" mode="nowrap">&nbsp;------------</p>」に変換されます。

尚、「-」の数は端末から送られてくる画面の行当りの文字数によります。

14. <br>要素。

<br />要素に置換します。

15. 論理インライン要素(<a>要素を除く)。

以下の要素に関しては、<i>要素に置換されます。

また、以下の要素に関しては、<b>要素に置換されます。

16. <a>要素。

name属性は分割点(後述)になります。

href属性値に関しては、以下のようになります。

https://スキームかftp://スキームが与えられている場合。
WAP 1.0端末では処理不能のため、アンカーを生成しません(<a>要素のタグは無視されます)。
mailto:が与えられている場合。
そのまま出力します。
tel:スキームが与えられている場合。
WAP 1.0でのスキームに変換して出力します。
フラグメント名のみ指定されている場合(href="#…"属性)。
サイト内の画像を指定していると判定された場合。
当該画像を表示させるページを自動作成するCGIへのURLに変換します。
<a>要素に「rel="external"」属性が付いている場合(平成17年 8月26日)。

<a>要素に「rel="external"」属性が付いている場合はサイト内の画像で無い限り、サイト外にあるリソースと見なします。

従って、「rel="external"」属性を付けた場合、サイト内部のページであっても、当該ページを表示させるCGIのURLには変換されず、そのまま出力されます。

サイト内のページを指定していると判定された場合。

当該ページを表示させるCGIへのURLに変換します。

尚、フラグメント名も指定している場合は、指定されたフラグメントが付与されます。

サイト外と判定された場合。
そのまま出力します。

17. <object>要素。(平成17年 9月11日)

<object>要素はtype属性が静止画像(image/gif, image.jpeg及びimage/png)で且つdata属性がある場合に限り有効となります。

<object>要素で静止画像を扱う場合は、内容(次の</object>タグまでの記述)からタグを全て取去ったものをalt属性値とし、data属性値をsrc属性値とする<img>要素に変換して<img>要素処理に引き渡します。

18. <img>要素。

<img>要素の扱い。

<img>要素は、設定により以下のようになります。

画像をインライン表示にしない設定にしている場合

強制的にブロックレヴェル要素化されます

画像をインライン表示にする設定にしていなければ、強制的にブロックレヴェル要素化されます

すなわち、インラインの画像は前後で強制的に改行されます。

具体的には、開いている段落/見出し要素及びアンカーを一旦閉じて、<img>要素を<p align="cneter" mode="wrap">要素の内容にして出力したあと、一度閉じた要素を再度開きます。

画像をインライン表示にする設定にしている場合

<img>要素外での処理は行なわれません。

尚、画像をインライン表示にする/しない設定のデフォルト設定は、以下のようになっております。

いずれの場合も設定ファイル画像をインライン表示にする/しない設定の切替が可能になっております。

src属性値の扱い。

この他、src属性値に関して以下のような処理が行われます。

内部のJPEG画像と判定された場合。

当該JPEG画像を機種により振分けるCGIへのURLに変換します。

内部のGIF画像と判定された場合。

当該GIF画像を機種により適切なものに変換するCGIへのURLに変換します。

サイト外と判定された場合。
そのまま出力します。

19. <table>要素。

テーブルに関しては、一旦<dl>要素に変換して処理されます。

WAP 1.0端末での分割機能について。

WML 1.1には、フラグメントの概念がありません。

代りに、カードと言う概念があります。

この為、フラグメントIDに関しては、カード分割と言うやり方で対処するものとします。

分割機能の実際。

分割された場合、分割点より前に分割されたコンテンツがあればそこへのリンクが自動的に附加されます。

同様に後にも分割されたコンテンツがあれば、リンクが生成されます。

WAP 1.0端末でのURLの扱い。

<a>要素及び<img>要素でCGIへのURLに変換する場合、以下のようになります。

全て相対URLとなります。

CGIに引渡すリソース名の指定はクエリ値となります。

尚、実機に対してエクストラパスを用いた場合は、クエリでパラメータを指定するURLへリダイレクトとなります。

また、フラグメント名はカラー端末ではURL末尾に附加され、白黒専用端末では分割ファイルの選択用のパラメータとしてクエリに組込まれます。


ページ外へのご案内。