UJML Language Reference
UJMLの概念

UJMLはUIEvolution社のUIEngine上で動作するアプリケーションを作成するために設計された、XMLベースの言語です。 UIEngineはクロスプラットフォームかつダイナミックなユーザーインタフェースを実現しているプログラミング環境です。

UJMLの定義にはXML(eXtensible Markup Language) を使用しているため、 XMLの機能(タグやエンティティなど)が欠かすことのできない言語の一部として採用されています。 UJMLとは、UJML DTDを参照するXMLファイルに他なりません。 関連項目: UJML ファイルのレイアウト。 UJML言語のバージョンは、使用するDTDのバージョンに依存しています。 

UJMLには数種類のファイルがあり、それぞれ異なる用途のために存在しています。 関連項目: UJMLファイルの種類UJMLアプリケーションの構造

UJMLはいかなるプラットフォーム上でも動作します

UJMLソースコードはUIEngine上で実行されるバイトコード形式にコンパイルされます。 UIEngineは様々なデバイス上で動作するようにポーティングが行われてきました。その他のデバイスへのポーティングも容易です。 CPUを内蔵しているデバイスならば、UJMLを実行できると考えてよいでしょう。 

デバイスはそれぞれ異なる能力をもっているため、UJMLでは アプリケーションのランタイム時にデバイスの能力に適応することを可能にする機能を備えています。 UJMLでは、同一のコードが携帯電話、MP3プレーヤー、PDA、そしてパソコン上で動作する アプリケーションを作成することが可能です。

UJMLはいかなる場所でも動作します

UJMLはネットワークに完全対応しており、リソースや実行コードをネットワーク越しに読み込む機能を備えています。 この機能はデバイスがパソコン、無線LANカードを内蔵したPDA、そして携帯電話であっても同様に動作します。

UJMLは宣言型の言語です

HTMLと同様、UJMLのほとんどは宣言を行うものから構成されています。 これらのものは属性、プロパティや子要素といったそれぞれの特徴を 定義し、宣言することにより、アプリケーションに有用となります。 UJMLの要素のほとんどのものには名前があり、コードの中においてその名前を 参照することにより、その要素をアクセス/使用/変更/操作することが可能です。 関連項目: 識別子。 

宣言可能なものには、データ、ステート変数、関数、デバイスの画面に表示を行うためのビジュアル要素、 デバイスの音源を使用して音声を再生するためのオーディオ要素、イベント、アプリケーションが必用とする要素、 ステートマシンなど、多岐に渡ります。

UJMLはステート型の言語です

コンピュータプログラムは全てステートマシンである、といえるかもしれません。 しかしUJMLではステートトランジションを言語の基本機能に取り入れることにより、 ステートマシンの概念を一歩進めています。 ステート変数のトランジションを宣言し、ステート変数の値をトランジションの値と同一に 設定すると、ステートトランジションが有効になりあらゆることが可能になります。 例えば音声ファイルを再生する、ビジュアル要素をデバイスの画面に表示する、イベントハンドラを有効にする スクリプティングコードを実行する、といったこと可能になります。

UJMLは手続き型の言語です

他の手続き型言語と異なり、UJMLは手続き型のシンタックスを通じて動作を指示する機能を提供しています。 関連項目: スクリプティングスクリプティングコードをUJMLの宣言要素に組み入れることにより、 トランジションが有効になった際に、スクリプトを実行させることが可能です。 

UJMLは標準的な手続き型のシンタックス要素の全てを備えています。例えばフロー制御、 オペレータやステートメント、といったものです。 UJMLの手続き型の要素はイベントを発生させたり、アプリケーションの状態を変更することにより、 宣言型の要素に影響を与えます。

UJMLはイベント駆動型の言語です

実行中のUJMLアプリケーションはイベントによって駆動されています。 イベントはユーザー入力に対して発生したり、リソースの有無によって発生させることも 可能です。イベントの発生と共に手続き型のスクリプティング要素を実行させ、アプリケーションの状態を 変化させることも可能です。

項目 
説明 
UJMLは明確に定義された構造をもつXMLベースのプログラミング言語です。 
UJMLファイルの種類、およびUJMLファイルに関連しているファイルの種類について。 
UJMLアプリケーションは、実行中のアプリケーションファイルと任意の数のパーティションファイルから構成されています。 
識別子はUJMLコード内のモノを参照するための名前です。 
データとは、UJMLアプリケーションによって格納・管理される情報を指します。 
ステート変数には、ステートトランジションを関連付けることが可能です。 
UJMLにおけるスクリプティングは、宣言型の要素を補完する手続き型の文を指します。 
UJMLではユーザー定義関数を定義し、プログラム中で使用することが可能です。 
UJMLのイベントハンドラはイベントの宣言と、イベント発生時に実行されるスクリプティングコードから構成されています。 
ビジュアル要素とは、UJMLアプリケーションがデバイス画面に表示するグラフィックオブジェクトを定義したUJMLタグのことです。 
オーディオ要素はUJMLアプリケーションから再生するオーディオオブジェクトを定義するための要素です。 
リソースとは、アプリケーションによって使用されるファイルを指します。 
UJMLはユーザー入力を検出するための手段を数種類用意しています。 
ートマシンは互いに関連している変数、関数、ステートトランジションそしてテンプレートを1つに纏めます。 
エクステンションとは、UJMLアプリケーションと連携して動作するネイティブのコードのことを指します。 
UJMLはランタイム時に異なるデバイス上でプログラムの動作を最適化する機能を備えています。 
UJMLは、ランタイム時にプログラムを異なるロケールに適応させることを可能にする機能を提供しています。 
コンパイルとは、UJMLソースコードをUJMLバイトコードに変換する処理のことを指します。 
デバッグとは、ソースコード内のエラーを探し出し修正する作業のことを指します。 
Copyright (c) 2000-2005 by UIEvolution, Inc. All rights reserved.
この項目に関するフィードバックをお寄せください。 Send feedback!