WMLScript の構文の基本
2022-01-19 13:34:26
WMLScriptはWireless Application ProtocolのWAPアプリケーション層の一部で、WMLカードグループやカードにクライアント側の処理ロジックを追加できるようにしたものです。携帯電話などの狭帯域の通信機器に、より対応することができます。WMLScriptをWMLプログラミングに使用することで、クライアントアプリケーションの柔軟性を効果的に高めることができます。また、WMLScriptを別のツールとして使用し、強力なWAPウェブアプリケーションやワイヤレスウェブページを開発することも可能です。この章では、WMLScript 1.1プログラミングの基本ルール、変数とデータ型、演算子と式などの基本構文について詳しく説明します。なお、簡単のため、今後、"WMLScript 1.1" を "WMLScript" と表記することにします。
7.1 簡単な例 WMLScript の関数を WML プログラムから呼び出す例
最初の2章を終えて、C言語に慣れた読者は、WMLの関数機能や論理演算機能が非常に限定的であることに気がついたかもしれません。WMLScriptは豊富な関数機能を提供するが、WAPアプリケーション開発においてWMLプログラミングを強化するために、WMLScriptを利用することができる。WMLScriptの文や関数を呼び出すコマンドは、WML内に直接記述することができます。
7.3 WMLScriptの基本ルール
WMLScriptは、多くの基本的なルールにおいて、WMLを踏襲しています。しかし、WMLScript は C 言語をモデルとしているため、その構文的な特徴は C 言語と非常によく似ています。もしあなたが C 言語に慣れているならば、この部分を学び、マスターするのは比較的簡単なはずです。
7.3.1 WMLScriptとURL
WMLScript は WML と同様に、WWW や HTML のリソースにアクセスするための URL や HTTP の仕様を踏襲し、URL の利用範囲を拡大したものです。WMLScript では、ハイパーリンクやファイルパス、ファイル名だけでなく、外部関数やアクセス制御情報なども URL として扱うことができます。
このため、WMLScript では、WML のバリエーションとして、HTML におけるリソース位置の命名方法を改良し、Fragment Anchor という形式を採用してリソース位置を扱えるようにしています。フラグメントアンカーは、文書の URL 規則に従って定義され、フラグメント識別子の前にウェルサイズ(#)が付くように記述されます。セグメントアンカーを使用することで、WMLScript プログラムは WMLScript のコンパイルユニット内で指定された関数の位置を特定し、その関数を呼び出す際に必要なパラメータを渡すことができます。
例えば、WAP電話のユーザーがブラウザを通じて外部のWMLScript関数を呼び出す場合、まず関数があるURLアドレスをhttp://www.acme.com/myScripts.scr。次に関数名と引数をセグメントアンカーとして扱い、testFunc('Test%20argument ', -8)というように、セグメントアンカーを含む最終URLアドレスは、http://www.acme.com/myScripts.scr#testFunc('Test%20argument ', -8)という形式で記述されるようにします。ウェルサイズ(#)が追加されていることに注意してください。
ブラウザはこのような呼び出しを受けると、まずアクセス制御のチェックを行います。呼び出し元がアクセス権を持っていない場合、関数呼び出しは終了されます。そうでなければ、呼び出し操作は引き続き実行され、アンカーポイントの関数名とコンパイル済みプログラムの外部関数を照合し、適合しない場合は実行が終了します。そうでなければ、さらに関数パラメータの形式、数、型、パラメータ値の属性について判断し、要件を満たしていれば関数呼び出しは成功し、さもなければ関数呼び出しは拒否されます。
7.1 簡単な例 WMLScript の関数を WML プログラムから呼び出す例
最初の2章を終えて、C言語に慣れた読者は、WMLの関数機能や論理演算機能が非常に限定的であることに気がついたかもしれません。WMLScriptは豊富な関数機能を提供するが、WAPアプリケーション開発においてWMLプログラミングを強化するために、WMLScriptを利用することができる。WMLScriptの文や関数を呼び出すコマンドは、WML内に直接記述することができます。
7.3 WMLScriptの基本ルール
WMLScriptは、多くの基本的なルールにおいて、WMLを踏襲しています。しかし、WMLScript は C 言語をモデルとしているため、その構文的な特徴は C 言語と非常によく似ています。もしあなたが C 言語に慣れているならば、この部分を学び、マスターするのは比較的簡単なはずです。
7.3.1 WMLScriptとURL
WMLScript は WML と同様に、WWW や HTML のリソースにアクセスするための URL や HTTP の仕様を踏襲し、URL の利用範囲を拡大したものです。WMLScript では、ハイパーリンクやファイルパス、ファイル名だけでなく、外部関数やアクセス制御情報なども URL として扱うことができます。
このため、WMLScript では、WML のバリエーションとして、HTML におけるリソース位置の命名方法を改良し、Fragment Anchor という形式を採用してリソース位置を扱えるようにしています。フラグメントアンカーは、文書の URL 規則に従って定義され、フラグメント識別子の前にウェルサイズ(#)が付くように記述されます。セグメントアンカーを使用することで、WMLScript プログラムは WMLScript のコンパイルユニット内で指定された関数の位置を特定し、その関数を呼び出す際に必要なパラメータを渡すことができます。
例えば、WAP電話のユーザーがブラウザを通じて外部のWMLScript関数を呼び出す場合、まず関数があるURLアドレスをhttp://www.acme.com/myScripts.scr。次に関数名と引数をセグメントアンカーとして扱い、testFunc('Test%20argument ', -8)というように、セグメントアンカーを含む最終URLアドレスは、http://www.acme.com/myScripts.scr#testFunc('Test%20argument ', -8)という形式で記述されるようにします。ウェルサイズ(#)が追加されていることに注意してください。
ブラウザはこのような呼び出しを受けると、まずアクセス制御のチェックを行います。呼び出し元がアクセス権を持っていない場合、関数呼び出しは終了されます。そうでなければ、呼び出し操作は引き続き実行され、アンカーポイントの関数名とコンパイル済みプログラムの外部関数を照合し、適合しない場合は実行が終了します。そうでなければ、さらに関数パラメータの形式、数、型、パラメータ値の属性について判断し、要件を満たしていれば関数呼び出しは成功し、さもなければ関数呼び出しは拒否されます。
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン