JP2004537134A - ブラウザ対応ヒューマンインターフェイスデスクリプションを生成し且つ処理するための方法およびシステム - Google Patents

ブラウザ対応ヒューマンインターフェイスデスクリプションを生成し且つ処理するための方法およびシステム Download PDF

Info

Publication number
JP2004537134A
JP2004537134A JP2003517744A JP2003517744A JP2004537134A JP 2004537134 A JP2004537134 A JP 2004537134A JP 2003517744 A JP2003517744 A JP 2003517744A JP 2003517744 A JP2003517744 A JP 2003517744A JP 2004537134 A JP2004537134 A JP 2004537134A
Authority
JP
Japan
Prior art keywords
human interface
data
description
interface description
computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2003517744A
Other languages
English (en)
Other versions
JP4647209B2 (ja
Inventor
ディルク・アーラート
ギュンター・リービッヒ
ヴォルフガング・コッホ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SAP SE
Original Assignee
SAP SE
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SAP SE filed Critical SAP SE
Publication of JP2004537134A publication Critical patent/JP2004537134A/ja
Application granted granted Critical
Publication of JP4647209B2 publication Critical patent/JP4647209B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Document Processing Apparatus (AREA)
  • Computer And Data Communications (AREA)

Abstract

アプリケーション特定ヒューマンインターフェイスデスクリプションは、標準化ヒューマンインターフェイスデスクリプションに変換される。標準化ヒューマンインターフェイスデスクリプションは、ヒューマンインターフェイスレイアウトテンプレートとデータデスクリプションに分解される。データインスタンスは、データデスクリプションから作成され、ヒューマンインターフェイスレイアウトテンプレートと共にブラウザ対応ヒューマンインターフェイスデスクリプションにマージされ、ユーザデータ入力を促すために翻訳される。レイアウトエレメントのステータスは、データインスタンスまたは標準化ヒューマンインターフェイスデスクリプションのランタイムコピーに格納される。

Description

【技術分野】
【0001】
本発明は、概して、データ処理システムのヒューマンインターフェイスに関し、更に詳しくは、自動生成されたヒューマンインターフェイスを通じてコンピュータと情報のやり取りを行うためのコンピュータに実装される方法およびコンピュータシステムに関する。
【背景技術】
【0002】
従来技術のシステムにおいては、ヒューマンインターフェイスは、標準化されたヒューマンインターフェイス記述言語(SIDL; Standardized Human Interface Description Language)を用いて記述される。以下で用いられる“ヒューマンインターフェイス”なる用語は、コンピュータ上で動作するアプリケーションプログラムと人間が対話(interact)するための如何なる種類のアプリケーションインターフェイスをも表す。ヒューマンインターフェイスの例には、グラフィカルユーザインターフェイス(GUI)またはボイスユーザインターフェイス(VUI)がある。
【0003】
一般には、SIDLは、“拡張マークアップ言語”(XML; Extensible Markup Language)を基にした言語であって一組のレイアウトコンポーネント(layout component)を提供する。レイアウトコンポーネントは、ヒューマンインターフェイスの特定のエレメントを記述する記述命令(description instruction)から成る。以下では、この記述命令をレイアウトエレメント(layout element)と称す。変換ルール(transform rules)を含む変換プログラム(transformer program)は、レイアウトエレメントをブラウザ対応のデスクリプションに変換する。
【0004】
ブラウザは、以下のように、“ハイパーテキストマークアップ言語”(HTML; Hyper Text Markup Language)、“ワイヤレスマークアップ言語”(WML; Wireless Markup Language)、または“音声拡張マークアップ言語”(VXML; Voice Extensible Markup Language)のようなマークアップ言語で記述されたドキュメントを、このドキュメントのビジュアルまたはオーディオプレゼンテーションに“翻訳(render)”するコンピュータプログラムである。ブラウザは、装置特定(device specific)のものであり得る。例えば、パーソナルコンピュータ画面上のHTMLドキュメントを翻訳するブラウザは、ワイヤレスアプリケーションプロトコル(WAP)の携帯電話ディスプレイ上のWMLドキュメントを翻訳するブラウザとは異なる。
【0005】
ブラウザ対応のデスクリプションは、ヒューマンインターフェイスの一部としてのコンピュータの出力装置上で、対応するビジュアルまたはオーディオレイアウトエレメントに従来ブラウザにより翻訳され得る。SIDLにおいて、レイアウトエレメントは、一般には、“行(row)”、“セル(cell)”、“テーブル(table)”、“グリッド(grid)”等のようなアプリケーション独立の特性を有している。以下では、このようなレイアウトエレメントを基本レイアウトエレメントと称す。基本レイアウトエレメントは、任意のアプリケーションの如何なるコンテキスト(context)においても再使用することができる。
【0006】
しかしながら、アプリケーション特定ヒューマンインターフェイスを生成することを欲するアプリケーションプログラマは、そのアプリケーションの分野において知られた記述的用語(descriptive term)を用いることによりこのヒューマンインターフェイスを記述することを望む。以下では、用語“アプリケーションプログラマ”は、ヒューマンインターフェイスを作成するユーザをも含む。例えば、会社の経理担当管理者(controller)は、その会社における他の管理者から次の会計年度の計画資料を得るためのヒューマンインターフェイスを設計するときに“アプリケーションプログラマ”になり得る。例えば、通覧インターフェイス(survey interface)を記述する際、前もってリストアップされたアプリケーション独立の用語の代わりに“質問表(questionnaire)”または“質問(question)”のような用語を用いることによりヒューマンインターフェイスの構造を記述することは便利である。アプリケーション特定レイアウトエレメントをSIDLに付け加えれば、SIDLが分かりづらくなる。多くの異なるレイアウトエレメントは、類似又は等しい複数のビジュアルレイアウトエレメントを結果として生じ、従って標準化されたSIDLを余剰のアプリケーション特定レイアウトエレメントを通してオーバロード(overload)する。この余剰分は、ますます増加するレイアウトエレメントのリストから適切なレイアウトエレメントを効率良く識別することにおいてアプリケーションプログラマを煩わせる。さらに、新たなレイアウトエレメントが付け加えられるたびに、毎回、変換プログラムを調整しなければならない。なぜなら、新たなレイアウトエレメント用の変換ルールを付け加える必要があるからである。これはSIDLにとって不都合な手続きである。なぜなら、規格というものは頻繁に変えられるべきではないからである。
【0007】
さらに、ワールドワイドウェブコンソーシアム(W3C)のXforms 1.0 規格(2001年6月8日)において、全ヒューマンインターフェイス設計過程を通じてデータ情報およびレイアウト情報が分離されるという前提(assumption)が設けられた。これは、アプリケーションにおいて使用されるデータモデルの正確な知識を要求とする。以下では、データモデルは、ヒューマンインターフェイスによって使用(ディスプレイ、プレイ、キャプチャ、等)されるデータのデータ記述に相当する。しかしながら、ヒューマンインターフェイスの設計が開始するときに、そのデータモデルが未知であるアプリケーションが存在する。例えば、アプリケーションプログラマが通覧(survey)アプリケーションを作成するとき、通常、通覧フォーム(質問表)を通して得られるべき情報は、その通覧を開発している間に定められる。入力フィールドは、それがその設計過程の間に定められると、上記フォームに付け加えられる。一般に、対応するデータ(例えば、質問グループへの多様な質問のグループ分けのようなデータ間の従属関係)を記述するデータモデルは存在しない。
【0008】
さらに、ユーザがヒューマンインターフェイスを通じてWebアプリケーションと情報をやり取りする(例えば、ユーザがデータをサブミットする)とき、通常、ヒューマンインターフェイスは、その初期状態において翻訳(render)される。相互のやり取りの前に、ヒューマンインターフェイスのレイアウトステータス(layout status)がよく失われる。なぜなら、アプリケーションがそれを記憶しないからである。
【発明の開示】
【課題を解決するための手段】
【0009】
従って、本発明は、標準化基本レイアウトエレメント(standardized layout elements)を変更することなく、アプリケーション特定レイアウトエレメントを提供すること及びそれらを標準化基本レイアウトエレメントを介してブラウザ対応のデスクリプション言語に変換(transform)することの技術的課題を解決するための方法、コンピュータシステムおよびコンピュータプログラムプロダクト(product)を提供する。
【0010】
説明の便宜のため、および本発明を限定する意図はないものとした上で、本発明の以下の説明では、ヒューマンインターフェイスはグラフィカルユーザインターフェイスであるものと仮定する。しかしながら、用語“レイアウトエレメント”は、以下ではグラフィカルレイアウトエレメントを表現するために用いられ、またボイスヒューマンインターフェイスにおける意味を有し、それは、特定の対話(相互のやりとり(interaction))図式に付随するサウンド(例えば、話し言葉)のシーケンスに対応する。
【0011】
本発明の第1の好ましい実施形態による技術的課題に対する解法は、次の特徴により提供される。
a)所定のアプリケーション特定ヒューマンインターフェイスデスクリプションは、複数のアプリケーション特定レイアウトエレメントを備える。
b)コンピュータシステムは、アプリケーション特定ヒューマンインターフェイスデスクリプションを、複数の基本レイアウトエレメントを備える標準化ヒューマンインターフェイスデスクリプション(standardized human interface description)に変換(transform)する。
c)コンピュータシステムは、標準化ヒューマンインターフェイスデスクリプションをブラウザ対応のヒューマンインターフェイスデスクリプションにコンバート(convert)する。
【0012】
アプリケーションプログラマがコンピュータシステムのアプリケーションヒューマンインターフェイス開発ツールをより良く制することが本発明の利点である。アプリケーション特定レイアウトエレメント(ASLE)は、一般に、標準化されたSIDLのレイアウトエレメント(BLE)よりも高い抽象作用(abstraction)を有する。これは、効率の良いアプリケーション特定ヒューマンインターフェイス開発の工程を支援する。なぜなら、アプリケーションプログラマは、そのアプリケーションのために具体的に設計された少数のレイアウトエレメントを使用できるからである。SIDLを介したヒューマンインターフェイスのブラウザ対応デスクリプション言語(例えばHTML)へのアプリケーション特定インターフェイスデスクリプション言語(AIDL)の変換を自動化することによってSIDLが変更されることはない。SIDLは、ヒューマンインターフェイスを記述するための、アプリケーション独立かつブラウザ独立の標準化されたフォーマットである。好ましくは、自動化は、“拡張スタイルシート言語変換”(XSLT; Extensible Style sheet Language Transformation)のような、スタイルシート言語変換を用いることにより達成される。XSLTは、XMLドキュメントを他のXMLドキュメントに変換するための言語である。XSLTプロセッサは、第1のXMLドキュメントを読み取り、そしてXSLスタイルシートにある命令に従い、そしてそれは第2のXMLドキュメントまたはXMLドキュメントの断片(fragment)を出力する。
【0013】
ヒューマンインターフェイスの自動生成されたブラウザ対応デスクリプションが、レイアウト情報がデータ情報から分離される前にレイアウトにとって編集可能であることは本発明の更なる利点である。これは、アプリケーションプログラマが、ヒューマンインターフェイスの自動生成されたブラウザ対応デスクリプションを洗練するために、標準のWebオーサリングツールを使用することを可能にする。
【0014】
さらに、本発明は、レイアウト情報とデータ情報が混在するドキュメントに基づきレイアウト情報からデータ情報を自動的に分離することの技術的課題を解決する。
本発明の第1の好ましい実施形態による技術的課題の解決法は、次の特徴により提供される。
d)コンピュータシステムは、ブラウザ対応ヒューマンインターフェイスデスクリプションを、ヒューマンインターフェイスレイアウトテンプレートおよびデータデスクリプションに分解する。
【0015】
発明のコンピュータシステムが、当初にデータモデルを欠いているアプリケーションのためにデータモデルを自動生成することは本発明の利点である。これは、データ情報およびレイアウト情報の双方を備えるヒューマンインターフェイスデスクリプションを通じてアプリケーションが規定されるときの例である。この種のアプリケーションの例には、通覧フォームまたはサービス要求用フォームがある。通覧フォームは、通覧設計プロセスの間に規定され且つ予め規定されたデータデスクリプションが存在しない入力または回答フィールド(answer field)を備えてもよい。サービス要求はまた、予め規定されないフィールドを備えてもよい。例えば、もしサービスが極めて頻繁に使用されないのであれば、そのサービスのための所定のデータデスクリプションは存在しなくてもよい。
【0016】
さらに、本発明は、コンピュータとのユーザとの対話(interaction)の後にヒューマンインターフェイスを用いてユーザに指示(prompt)する技術的課題を解決する。ここで、上記ヒューマンインターフェイスは、対話の前のそのステータスを“記憶(remember)”する。この文脈における“記憶”は、階層の拡張ステータス(expansion status of hierarchy)のような、レイアウトエレメントのステータスを保持する本発明のコンピュータシステムの能力を記述するために使用される。
【0017】
本発明の第1の好ましい実施形態による技術的課題の解決法は、次の特徴により提供される。即ち、本コンピュータシステムは、
e)データデスクリプションからデータインスタンスを作成し、
f)そのデータインスタンスをヒューマンインターフェイスレイアウトと共に個々のブラウザ対応ヒューマンインターフェイスデスクリプションにマージ(merge)し、
g)データ入力のためにユーザに指示(prompt)するための個々のブラウザ対応ヒューマンインターフェイスデスクリプションを翻訳し、
h)ユーザからデータを受け取り、
i)データインスタンスにそのデータを格納し、
j)少なくとも一つのレイアウトエレメントのステータスを格納する。
【0018】
従って、本発明の更なる利点は、ユーザが、ヒューマンインターフェイスを通じてデータを入力し且つデータをサブミットするとすぐに、データサブミッション(data submission)が発生する前と同じステータスを提示するヒューマンインターフェイスを用いて入力指示(prompt)されることである。例えば、ユーザが階層の或るノードに関するデータを入力するために階層を拡張したとき、データサブミッション後の階層の拡張ステータスはデータサブミッション前と同じままである。第1の実施形態において、特徴a)〜d)は設計時間で処理されるが、特徴e)〜j)はコンピュータシステムのランタイム(runtime)で処理される。以下では、ランタイム(runtime)は、ヒューマンインターフェイスが実行している(ユーザによって対話形式で使用されている)間に起こることを意味する。デザインタイム(design time)は、ヒューマンインターフェイスがデザインされている間(対話形式で使用される前)に生じることを意味する。
【0019】
第2に、本発明の第2の好ましい実施形態において、特徴c)およびd)は、次の特徴で置き換えられる。
k)コンピュータシステムは、標準化ヒューマンインターフェイスデスクリプションをヒューマンインターフェイスレイアウトおよびデータデスクリプションに分解する。
【0020】
その利点は、アプリケーション特定ヒューマンインターフェイスデスクリプションから開始するときの個々のブラウザ対応ヒューマンインターフェイスデスクリプションの生成を全自動化することである。個々のブラウザ対応ヒューマンインターフェイスの生成中にユーザ対話が発生しないので、第2の好ましい実施形態は、特徴e)〜j)およびk)を備えることによりランタイム処理を拡張することを可能とする。第1の実施形態における特徴c)およびd)はデザインタイムに実行される。
【0021】
XSLTのようなスタイルシート言語変換が変換(transformation)またはコンバージョン(conversion)ルールを規定するために代わりに使用される本発明の記述における任意の個所で、当業者は、Java(登録商標)のような任意のプログラミング言語でそれらのルールを実施することもできる。
【0022】
本発明の特徴は、添付の特許請求の範囲において特に示された構成要素および組み合わせによって実現され且つ達成される。上述の概要および以下の詳細な説明は代表的なものであって説明的なものに過ぎず、且つ説明されるように本発明を制限するものではない。
【発明を実施するための最良の形態】
【0023】
可能な限り、同一または類似するパーツを参照するために図面の全体にわたって同一の参照番号が使用されるであろう。説明の便宜上、文末の参照番号一覧に、最も重要な参照番号およびそれらの説明をリストアップする。
【0024】
図1は、複数のコンピュータ900,901,902(または90q、ただし、q=0…Q−1であり、Qは任意の数)を備える本発明のコンピュータネットワークシステム999の簡略化されたブロックダイアグラムを図示する。
【0025】
コンピュータ900−902は、コンピュータ間ネットワーク990を介して接続される。コンピュータ900は、プロセッサ910、メモリ920、バス930を備え、且つ、状況に応じて入力装置940および出力装置950(I/O装置、ユーザインターフェイス960)を備える。図示されたように、本発明は、コンピュータプログラムプロダクト100(CPP)、プログラムキャリア970、およびプログラム信号980によって与えられ、これらを総じて“プログラム”と称す。
【0026】
コンピュータ900に関しては、コンピュータ901/902は、“リモートコンピュータ”として参照され、コンピュータ901/902は、例えば、サーバ、ルータ、ピア装置(peer device)、または他の共通ネットワークノードであり、代表的には、コンピュータ900に関連して述べた構成要素の多くまたは全部を備える。従って、コンピュータ900における構成要素100および910−980はまた、総じて、コンピュータ90qにおいて対応する構成要素10qおよび91q−98q(q=0について示される)を示す。
【0027】
コンピュータ900は、例えば、従来型のパーソナルコンピュータ(PC)、デスクトップおよびハンドヘルド装置、マルチプロセッサコンピュータ、ペンコンピュータ、マイクロプロセッサベースまたはプログラマブルな民生電子機器、ミニコンピュータ、メインフレームコンピュータ、パーソナルモバイルコンピュータ装置、携帯電話、携帯型または固定型パーソナルコンピュータ、パームトップコンピュータ、またはその種の他のものである。
【0028】
プロセッサ910は、例えば、中央演算処理装置(CPU)、マイクロコントローラユニット、デジタルシグナルプロセッサ(DSP)、またはその種の他のものである。
【0029】
メモリ920は、データおよび命令を一時的または恒久的に格納する要素を象徴する。メモリ920が都合よくコンピュータ900の一部として図示されているが、メモリ機能は、ネットワーク990、コンピュータ901/902、およびプロセッサ910自体(例えば、キャッシュ、レジスタ)、またはその他においても提供され得る。メモリ920は、読み出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、または他のアクセスオプションを備えるメモリであってもよい。メモリ920は、コンピュータ読み取り可能な媒体によって物理的に提供され、例えば、(a)ハードディスク、フロッピー(登録商標)ディスクのような磁気媒体、または他の磁気ディスク、テープ、カセットテープ、(b)光ディスク(CD−ROM、デジタルバーサタイルディスク−DVD)のような光媒体、(c)DRAM、SRAM、EPROM、EEPROM、メモリスティックのような半導体媒体、またはペーパー(paper)のような他の任意の媒体によってもよい。
【0030】
状況に応じて、メモリ920は異なる媒体にわたって分散される。メモリ920の部分はリムーバブル(removable)または非リムーバブルであってもよい。コンピュータ900は、例えばディスクドライブ、テープドライブなどのような、この技術分野でよく知られた装置を使用して媒体からの読み出しおよび媒体への書き込みを行う。
【0031】
メモリ920は、例えば基本入出力システム(BIOS)、オペレーティングシステム(OS)、プログラムライブラリ、コンパイラ、インタプリタ、およびテキストプロセッシングツールのようなサポートモジュールを格納する。サポートモジュールは、市販されており、そして当業者によってコンピュータ900上にインストールすることができる。簡単のため、これらモジュールは図示されていない。
【0032】
CPP100はプログラム命令を備え、状況に応じて、本発明の方法ステップをプロセッサ910に実行させるデータを備える。方法ステップは、以下に更に詳細に説明される。換言すると、CPP100は、コンピュータ900の動作と、ネットワークシステム999におけるその相互のやりとり(interaction)を規定する。例えば、制約する意図なしに、CPP100は、任意のプログラミング言語におけるソースコードとして、且つコンパイルされた形式でのオブジェクトコード(“binary code”)として利用可能である。当業者であれば、上述のサポートモジュール(例えば、コンパイラ、インタプリタ、オペレーティングシステム)の任意のものでCPP100を使用することができる。
【0033】
CPP100は、メモリ920に格納されているように図示されているが、CPP100は他の場所に配置し得る。CPP100はまたキャリア970に具現されてもよい。
【0034】
キャリア970は、コンピュータ900の外部に図示されている。CPP100をコンピュータ900に移すために、キャリア970は、都合よく入力装置940に差し込まれる。キャリア970は、大いに上述した媒体(メモリ920参照)のような、任意のコンピュータ読み取り可能な媒体として提供される。概して、キャリア970は、本発明の方法を実施するためにその中に具現されたコンピュータ読み取り可能なプログラムコード手段を備えるコンピュータ読み取り可能な媒体からなるメーカー品である。さらに、プログラム信号980はまた、コンピュータプログラム100を具現し得る。信号980は、ネットワーク990上をコンピュータ900に伝わる。
【0035】
コンピュータ900に結びつけて、CPP100、プログラムキャリア970、およびプログラム信号980を説明したことは都合がよい。状況に応じて、プログラムキャリア971/972(図示なし)およびプログラム信号981/982は、コンピュータ901/902においてプロセッサ911/912(図示なし)によって実行されるべきコンピュータプログラムプロダクト(CPP)101/102をそれぞれ具象化する。
【0036】
入力装置940は、コンピュータ900による処理のためにデータおよび命令を提供する装置を象徴する。例えば、装置940は、キーボード、ポインティングデバイス(例えばマウス、トラックボール、カーソル方向キー)、マイクロホン、ジョイスティック、ゲームパッド、スキャナである。その例はヒューマンインタを備える装置であるが、装置940は、ワイヤレスレシーバ(例えば衛星放送受信アンテナまたは地上波アンテナ)、センサ(例えば温度計)、カウンタ(例えば工場における物品カウンタ)のように、人間と対話することなく動作することもできる。入力装置940は、キャリア970を読み取る役目を果たすこともできる。
【0037】
出力装置950は、命令および処理されたデータを与える装置を象徴する。例えば、モニタまたはディスプレイ、ブラウン管(CRT)、フラットパネルディスプレイ、液晶ディスプレイ(LCD)、スピーカ、プリンタ、プロッタ、バイブレーション警報装置である。上述と同様に、出力装置950は、ユーザとコミュニケーションをとるが、さらにコンピュータと通信することもできる。
【0038】
入力装置940および出力装置950は、単一の装置に一体化されることができ、装置940および950の何れも任意的(optional)に提供され得る。
【0039】
バス930およびネットワーク990は、命令およびデータ信号を伝えることにより論理的および物理的接続を提供する。一方、コンピュータ900内部の接続は、都合の良いことに、“バス930”として参照され、コンピュータ900−902の間の接続は、“ネットワーク990”として参照される。状況に応じて、ネットワーク990は、データ伝送およびプロトコルコンバージョンを専門にするコンピュータであるゲートウェイを備える。
【0040】
装置940および950は、バス930によって(図示するように)、またはネットワーク990によって(任意的)、コンピュータ900に接続される。一方、コンピュータ900内部の信号は大部分が電気的信号であり、ネットワークにおける信号は、電気的、磁気的、光学的またはワイヤレス(無線)信号である。
【0041】
ネットワーク環境(ネットワーク990のような)は、オフィス、企業規模のコンピュータネットワーク、イントラネット、およびインターネット(即ち、ワールドワイドウェブ)においては一般的である。リモートコンピュータとコンピュータ900との間の物理的な距離は重要ではない。ネットワーク990は、有線または無線ネットワークであってもよい。少しばかりのネットワーク実施の名称を挙げると、ネットワーク990は、例えば、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、公衆交換電話網(PSTN);総合デジタル通信網(ISDN)、赤外(IR)リンク、無線リンク、ユニバーサルモバイルテレコミュニケーションシステム(UMTS)、グローバルシステムフォーモバイルコミュニケーションズ(GSM)、符号分割多元接続(CDMA)、または衛星リンクである。
【0042】
伝送プロトコルおよびデータフォーマットは、例えば、伝送制御プロトコル/インターネットプロトコル(TCP/IP; transmission control protocol/internet protocol)、ハイパーテキストトランスファプロトコル(HTTP; hyper text transfer protocol)、セキュアHTTP(secure HTTP)、ワイヤレスアプリケーションプロトコル、ユニークリソースロケータ(URL; unique resource locator)、ユニークリソースアイデンティファイア(URI; unique resource identifier)、ハイパーテキストマークアップ言語HTML(hyper text markup language)、拡張マークアップ言語(XML; extensible markup language)、拡張ハイパーテキストマークアップ言語(XHTML; extensible hyper text markup language)、ワイヤレスアプリケーションマークアップ言語(WML; wireless application markup language)等として知られている。
【0043】
上記要素間に結合されたインターフェイスもこの技術分野では良く知られている。簡単のためにインターフェイスは図示されていない。インターフェイスは、例えば、シリアルポートインターフェイス、パラレルポートインターフェイス、ゲームポート(game port)、ユニバーサルシリアルバス(USB)インターフェイス、内部または外部モデム、ビデオアダプター(video adaptor)、またはサウンドカード(sound card)である。
【0044】
コンピュータおよびプログラムは、密接に関連している。以下で用いられるように、“コンピュータが提供する”および“プログラムが提供する”というような言い回しは、プログラムによって制御されるコンピュータによる動作を表現するための便利な省略形である。
【0045】
本発明にとって、コンピュータプログラム、ファイル、またはドキュメントがコンピュータシステム999のどこに格納されているかは重要ではない。説明の便宜上、それらはコンピュータ900のメモリ920に格納されているものとする。
【0046】
図2は、ブラウザ対応ヒューマンンタデスクリプションを自動的に生成し且つ処理するための本発明のコンピュータ実施の方法(computer implemented method)の二つの実施形態の簡略化したフローチャートを図示する。
【0047】
詳細な説明の全体にわたって使用されるヒューマンインターフェイスの例は、通覧(survey)アプリケーションの例である。会社の経理担当管理者は、他の管理者から会計年度2002年の計画資料を手に入れることを欲する。このため、その経理担当管理者は、種々の質問グループ(question group)からなる通覧質問表(survey questionnaire)を作成する。各質問グループは、“計画コスト(planned cost)”または“計画収入(planned revenues)”のような特定の分野に言及する。各質問グループは、種々の質問を含むことができる。この例で用いられる質問は、質問グループ“計画コスト(planned cost)”に属し、そして“計画トラベルコスト(planned travel cost):”を取り込む。その質問に対する入力を指示(prompt)された管理者は、その質問の隣に、それらの計画データ(planning data)を入力し、そして該当する計画データを記入した後にそのデータをサブミットする。
【0048】
デスクリプションにおいて用いられるプログラムコーディング部分は、代表的なものであって説明的なものに過ぎず、且つ完全機能のコンピュータプログラムを提供することを意図したものではない。
【0049】
図2Aは、方法400の第1の好ましい実施形態を図示する。
方法400は、
a)所定のアプリケーション特定ヒューマンインターフェイスデスクリプション110を提供するステップ410と、
b)アプリケーション特定ヒューマンインターフェイスデスクリプション110(図4参照)を、標準化ヒューマンインターフェイスデスクリプション120に変換するステップ420とを備える。
【0050】
方法400の第1の実施形態は、任意的に、ステップc)からj)をさらに備える。即ち、
c)標準化ヒューマンインターフェイスデスクリプション120を、ブラウザ対応ヒューマンインターフェイスデスクリプション130(図4参照)にコンバート(convert)するステップ430と、
d)ブラウザ対応ヒューマンインターフェイスデスクリプション130を、ヒューマンインターフェイスレイアウトテンプレート140−1およびデータデスクリプション140−2(図5B)に分解するステップ450と、
e)データデスクリプション140−2からデータインスタンス150(図7参照)を作成するステップと、
f)データインスタンス150を、ヒューマンインターフェイスレイアウトテンプレート140−1と共に個々のブラウザ対応ヒューマンインターフェイスデスクリプション160(図7参照)にマージ(merge)するステップ470と、
g)個々のブラウザ対応ヒューマンインターフェイスデスクリプション160を翻訳して、ユーザ(図示なし)にデータ入力を指示(prompt)するステップ475と、
h)データ170(図示なし)をユーザから受け取るステップ480と、
i)上記データ170をデータインスタンス150に格納するステップ485と、
j)少なくとも一つの基本レイアウトエレメント122,123,124−1,124−2,125,126,127(図6参照)のステータスを格納するステップ490とを備える。
【0051】
ここで上記ステップを詳細に説明する。
提供ステップ410において、コンピュータシステム999(図1参照)は、所定のアプリケーション特定ヒューマンインターフェイスデスクリプション110を提供する。好ましくは、所定のアプリケーション特定ヒューマンインターフェイスデスクリプション110は、マークアップ言語記述ドキュメントである。
【0052】
XMLのような任意のマークアップ言語は、アプリケーション特定レイアウトエレメント(ASLE)の複数111(図4参照)を規定する目的を果たす。表1は、三つの特定のアプリケーション(通覧(survey)、財務報告(financial reporting)、サービス要求(service request))のコンテキスト(context)におけるASLEの代表例を示す。
【0053】
【表1】
Figure 2004537134
【0054】
表1は、アプリケーションと、これらアプリケーション特定レイアウトエレメント(ASLE)の例である。
【0055】
表2は、ASLE質問表、質問グループ、および質問を用いた通覧アプリケーション特定ヒューマンインターフェイスデスクリプションのXMLコードの例を与える。この例において、タグ(<>)の中の接頭辞“que:”(表2参照)は、アプリケーション“通覧(survey)”のネームスペースを表す。以下のライン番号は表2を引用する。この例は、ネーム属性“survey”(ライン2)を有する質問表112(図6参照)を示す。質問表112は、ネーム属性“planned_costs”(ライン3)を有する質問表113を備える。質問グループ113は、ネーム属性“travel”(ライン4)を有する質問114を備える。各ネーム属性は、相対的なデータパスを表す。この例においては、種々のASLEのネーム属性は、ネーム属性において相対的なデータパスから完全なデータパス“//survey/planned_costs/travel”を構築する。完全なデータパスは、通覧アプリケーションのデータアプリケーションの一部になる。完全なデータパスは、質問114に対するデータの格納場所を特定する。相対的データパスを使用することは、アプリケーションプログラマがネーム属性を調整することなくASLE定義(ASLE definition)を再使用することを可能にする。例えば、ASLE質問114は、任意のASLE質問グループにコピーでき、そして完全なデータパスは、対応するASLEのネーム属性において相対的データパスを連結することにより正しく構築される。
【0056】
任意的に、絶対的データパスを使用することができる。この例では、質問114のネーム属性は、完全なデータパス“//survey/planned_costs/travel”である一方、質問グループ113および質問112のネーム属性は完全なデータパスに使用されない。好ましくは、そのデータパスは、この技術分野において知られているXパス表記法を使用する。
【0057】
Xパス(XMLパス言語)は、ドキュメントの論理的構造または階層を通してパスに基づきアドレッシングシンタックスを用いることによりXMLにおいて項目を捜し出して処理するための方法を記述する言語である。Xパス言語は、“Xパス W3C 勧告 バージョン1.0、1999年11月16日”に述べられている。Xパスはまた、より高い抽象化(abstraction)レベルでアプリケーションプログラマがドキュメントを取り扱うことを可能にする。Xパスは、XSLTおよびXポインタ(SMLポインタ言語)の双方によって使用され且つそれら双方の一部として特定される言語である。それは、XML情報セット(Infoset)において規定された情報アブストラクションを使用する。Xパスは、XMLシンタックスそれ自体を使用しないので、XML以外のコンテキストにおいては使用できない。
【0058】
【表2】
Figure 2004537134
【0059】
表2は、通覧の例におけるアプリケーション特定ヒューマンインターフェイスデスクリプションドキュメント110である。
【0060】
質問114は、属性テキスト114−1、スタイル114−2、ビジブル(visible)114−3、およびデフォルト114−4を備える。テキスト属性114−1“Planned travel costs 2002 : ”は、ユーザに対する質問の題目(subject)を示す。スタイル属性114−2“入力フィールド(inputField)”は、質問タイプ(question type)を記述し、ここで回答は入力フィールド(input field)に書き込まれる。他のスタイルの例は、“ラジオボタン(radioButton)”であり、ここではユーザは、ラジオボタンを選択することにより複数の選択肢から選択することができる。動的なビジブル属性114−3“{Boolean(//survey/planned_costs/travel)}”は質問の表示を制御する。データパス“//survey/planned_costs/travel”が通覧アプリケーションのデータデスクリプションに存在する場合、質問が表示される(目に見えるようになる)。デフォルト属性114−4は、デフォルト値“0.0”を質問のデータパスに割り当てる。ライン5−7において、閉タグ</…>は、対応するASLE定義の終わりを規定する。
【0061】
変換ステップ420において、アプリケーション特定ヒューマンインターフェイスデスクリプション110は、標準化ヒューマンインターフェイスデスクリプション120に変換される。好ましくは、標準化ヒューマンインターフェイスデスクリプション120はマークアップ言語デスクリプションである。XMLのような任意のマークアップ言語は、基本レイアウトエレメント122,123,124−1,124−2,125,126,127の複数121を規定する目的を果たす。好ましくは、XSLTのようなスタイルシート言語変換が変換ルールを使用することにより変換ステップ420を実行する。通覧の例における変換ルールの例が表3に示されている。
【0062】
以下のライン番号は表3を引用する。ライン1は、XMLドキュメントの開始を示す。ライン2は、XSLT変換の開始を示す。接頭辞“xs1:”は、SIDLにおけるBLEの定義を示す。
【0063】
ライン4は、ASLE質問表112のための変換ルールの開始を示す。質問表112と一致するBLEはページ(page)127(ライン5)である。BLEページ127は、他のレイアウトエレメント(ライン6)を備える。ライン7および8は、質問表変換ルールを閉じる。
【0064】
ライン9は、ASLE質問グループ(ASLE questionGroup)113のための変換ルールの開始を示す。質問グループ113と一致するBLEはグリッド(Grid)122(ライン10)である。グリッド(Grid)122は、質問グループ113における質問の数に相当する多くの行(row)と二つの列(column)(ライン10)を備える。ライン11は、グリッド(Grid)122におけるBLE(例えば行)をさらに備える。ライン12および13は、質問グループ変換ルールを閉じる。
【0065】
ライン14は、質問グループ113におけるASLE質問(ASLE question)114のための変換ルールの開始を示す。質問114は、二つのセル(cell)124−1,124−2(BLE)と共にBLE行(BLE Row)123(ライン15)に変換される。行123は、質問属性ビジブル(question attribute visible)114−3から導き出される行属性“visible”を運ぶ。
【0066】
BLEセル124−1(ライン16)は、BLEテキスト出力(BLE TextOutput)126を備える。テキスト出力126は、質問属性テキスト114−1(ライン17)と一致する。セル124−2(ライン19)は、BLEフィールド入力(FieldInput)125(ライン22)を含む。フィールド入力125は、質問スタイル属性114−2である入力フィールド(InputField)(ライン21)と一致する。さらに、質問デフォルト属性114−4の値はBLEフィールド入力(BLE FieldInput)125(ライン22)に割り当てられる。フィールド入力125においてユーザから受け取った入力データ170(図7参照)は、ネーム属性(ライン23,24)における相対的データパスを用いることによって構築される対応した完全なデータパスの下に格納される。ライン18および25ないし31は、質問ASLEのための変換ルールを閉じる。
【0067】
【表3A】
Figure 2004537134
【0068】
【表3B】
Figure 2004537134
【0069】
表3は、通覧(survey)の例におけるASLEからBLEへの変換ルールである。
通覧の例において、コンピュータシステム999(図1参照)のプロセッサ910は、表3の変換ルールに関して表2を処理する。この変換の出力を表4に示す。表4は、ASLEの複数111に代えてBLEの複数121を備える表2と同様のヒューマンインターフェイス951(図6参照)を記述するXMLドキュメントに対応する。表4におけるBLEは、表3の対応する変換ルールによって表2のASLEから導き出される。この変換の利点は、ヒューマンインターフェイス951を記述するために、アプリケーション独立かつブラウザ独立の標準化されたフォーマットである。
【0070】
以下のライン番号は表4を引用する。BLEページ(BLE page)127は、ライン2において規定され、そしてライン14において閉じられる。ページ127はBLEをさらに備える。ライン4は、ASLE質問グループ(ASLE questionGroup)113から導き出されるBLEグリッド(BLE Grid)122を記述する。この例におけるグリッド122は、一つの行(row)と二つの列(column)を備える。グリッド122は、ASLE質問(ALSE question)114から導き出されるBLE行(BLE Row)を備える。行123はビジブル属性(visible attribute)114−1(ライン5)を運ぶ。行123はBLE125、126(ライン9,6)を備える。BLE126は、質問テキスト属性(question text attribute)114−1(ライン7)から導き出される。BLE125は質問スタイル属性(question style attribute)114−2(ライン10)から導き出され、そしてデフォルト属性114−4はBLE125のデフォルト属性のままでいる。BLE125のデータのための完全なデータパスは、表3の質問変換ルールによって決定される。ライン8および11−14は、対応するBLEの閉コマンド(closing command)である。
【0071】
【表4】
Figure 2004537134
【0072】
表4は、通覧の例における標準化ヒューマンインターフェイスデスクリプションドキュメント120である。
【0073】
任意的なコンバート(converting)ステップ430において、標準化インターフェイスデスクリプション120は、ブラウザ対応ヒューマンインターフェイスデスクリプション130(図4参照)にコンバート(convert)される。好ましくは、ブラウザ対応ヒューマンインターフェイスデスクリプション130は、マークアップ言語デスクリプションドキュメントである。例えば、パーソナルコンピュータ上の従来のブラウザ用のドキュメントはHTMLまたはXHTMLで記述できる。好ましくは、標準化ヒューマンインターフェイスデスクリプションドキュメント120からブラウザ対応ヒューマンインターフェイスデスクリプションドキュメント130へのコンバージョン(conversion)は、適切なコンバージョンルールを用いることによりXSLTのようなスタイルシート言語変換を通して実行される。例えば、XSLTによるXHTMLへのXMLドキュメントのコンバージョンはこの技術分野では知られている。好ましくは、コンバージョンルールは、表3で述べられた変換ルールと類似の方法で実施される。好ましくは、プロセッサ920が、標準化ヒューマンインターフェイスデスクリプションドキュメント120にコンバージョンルールを適用し、そしてBLEが、ブラウザ対応ヒューマンインターフェイスデスクリプションドキュメント130の対応するブラウザ対応マークアップ言語命令にコンバートされる。このコンバージョンの利点は、ブラウザ対応ヒューマンインターフェイスデスクリプションドキュメント130が、マイクロソフト(登録商標)FrontPageまたはアドビ(登録商標)GoLiveのような標準的なwebオーサリングツールを用いてレイアウトの更なるリファインのためにユーザによって編集可能である。
【0074】
表5は、通覧の例におけるブラウザ対応ヒューマンインターフェイスデスクリプション130のXHTMLドキュメント例を図示する。標準的なHTML命令は、当業者に知られているので、詳細に説明しない。以下のライン番号は表5を引用する。BLEページ(BLE page)127(図6参照)は、ライン1−6および22−24にコンバートされ、そこではライン6はページ127についての対話方法(interaction method)を規定する。BLEグリッド(BLE grid)122は、一つの行123(ライン10,19)を備えるライン9,20のテーブル命令(table instruction)にコンバートされる。セル124−1のコンバージョンは、結果としてライン11−13を生じ、且つセル124−2のコンバージョンはライン14−18を生じる。ライン12の“span”タグは、BLE126(表4、ライン7参照)に由来する。入力フィールド命令(ライン16)のネーム属性は完全なデータパスに対応する。
【0075】
【表5】
Figure 2004537134
【0076】
表5は、通覧の例におけるブラウザ対応ヒューマンインターフェイスデスクリプションドキュメント130である。
【0077】
入力フィールド命令は、更なる属性タイプおよび値を運ぶ。タイプ属性“text”は、フィールド入力BLE(FieldInput BLE)125(表4、ライン10参照)に由来し、且つその値は、対応するデフォルト値“0.0”に由来する。
【0078】
任意的な分解ステップ450において、コンピュータシステム999は、ヒューマンインターフェイスレイアウトテンプレート140−1およびデータデスクリプション140−2(図5B参照)を、ブラウザ対応ヒューマンインターフェイスデスクリプション130から抽出する。最初に述べたように、通覧またはサービス要求のようないくつかのアプリケーションに対しては、データデスクリプションは、そのアプリケーションのためのヒューマンインターフェイス951(図6参照)が記述されるときに、その時点で時間内に存在しない。従って、いくつかのアプリケーションについて、ブラウザ対応ヒューマンインターフェイスデスクリプションドキュメント130は、レイアウト情報とデータデスクリプションの混合を含む。好ましくは、ランタイム中にデータはレイアウト情報とは別に格納される。このことは、各データインスタンスで余剰のレイアウト情報を格納することなく、ユーザ特定およびアプリケーション特定のデータのインスタンス化を可能とする。好ましくは、分解ステップ450は、XSLTのようなスタイルシート言語変換をブラウザ対応ヒューマンインターフェイスデスクリプション130に適用することにより実施される。レイアウトテンプレート140−1を抽出するステップ451、およびデータデスクリプション140−2の詳細は図3Bに基づき説明される。
【0079】
更なる任意的なステップ、即ち、e)インスタンス化するステップ460、f)マージステップ470、g)翻訳ステップ475、h)受取ステップ480、i)データ格納ステップ485、およびj)ステータス格納ステップ490は図7に基づいて詳細に説明される。
【0080】
図2Bは、第2の、方法400の好ましい実施形態を図示する。第1の実施形態(図2A参照)との相違点は、ステップc)およびd)(標準化デスクリプション430をコンバートするステップ、およびブラウザ対応デスクリプション450を分解するステップ)を、標準化デスクリプション440を分解するステップk)で置き換えたことである。第1の実施形態において、アプリケーションプログラマは、ステップ430の後にヒューマンインターフェイスレイアウトデスクリプションをリファインすることができ、そして分解ステップ450は、リファインされたレイアウトデスクリプション(ブラウザ対応ヒューマンインターフェイスデスクリプション130)に基づき実行される。それに対し、第2の実施形態においては、分解ステップ440は、標準化ヒューマンインターフェイスデスクリプション120に基づき自動的に実行される。この例における自動的ヒューマンインターフェイスの生成は、アプリケーションプログラマがレイアウトをリファインすることを許容しない。分解ステップ440において、コンピュータシステム999は、標準化ヒューマンインターフェイスデスクリプション120から、ヒューマンインターフェイスレイアウトテンプレート140−1およびデータデスクリプション140−2(図5A参照)を抽出する。好ましくは、分解ステップ440は、XSLTのようなスタイルシート言語変換を、標準化ヒューマンインターフェイスデスクリプション120に適用することにより実施される。レイアウトテンプレート140−1を抽出するステップ441、およびデータデスクリプション140−2を抽出するステップ442は、図3Aに基づき説明される。
【0081】
図3は、方法400のいくつかのステップの詳細を示す。
図3Aは、分解ステップ440のサブステップ、即ち、レイアウトテンプレート140−1(図5A参照)を抽出するサブステップ441と、データデスクリプション140−2を抽出するサブステップ442を図示する。
【0082】
レイアウトテンプレート抽出ステップ441において、コンピュータシステム999は、好ましくは、XSLT(表6参照)のようなスタイルシート変換を用い、標準化ヒューマンインターフェイスデスクリプション120(図5A参照)を処理してレイアウトテンプレート140−1を生成する。
【0083】
説明の便宜上、表6は、BLEフィールド入力(BLE FieldInput)125(表4、ライン10参照;図6参照)のための変換ルールの例を含む。なぜなら、BLEフィールド入力125がレイアウト情報とデータの両方を含むからである。他のレイアウトエレメントのための変換ルールは、従って如何なる当業者によっても規定することができる。明示的な表の引用を除いては以下のライン番号は表6を引用する。
【0084】
【表6】
Figure 2004537134
【0085】
表6は、通覧の例における標準化ヒューマンインターフェイスデスクリプション120からレイアウトテンプレート140−1を抽出するための変換ルールである。
【0086】
ライン1,14は、XSL変換ドキュメントを示す。ライン3,12は、BLEフィールド入力(BLE FieldInput)125のための変換ルールを含む。ライン4は、もとの表4のライン10に適用されたときに目標の表7を生成する。目標の表7は、通覧の例におけるレイアウトテンプレート140−1の好ましいXSLTの実施である。デフォルト属性値“0.0”(元の表4、ライン10参照)の形式におけるデータ情報は、レイアウトテンプレート140−1の中に生成されない。ここでレイアウト情報はデータから分離される。しかし、代替物(placeholder)が、対応するデータにリンクすることを可能にする。
【0087】
【表7】
Figure 2004537134
【0088】
表7は、通覧の例におけるレイアウトテンプレートドキュメント140−1である。
【0089】
ライン5−10は、“value-of”命令(表7、ライン13)を備える値属性(value attribute)のために目標の表7のライン12,14におけるXSL属性命令を生成する。“value-of”命令は値が格納される場所を示し(例えば、データインスタンス150;図7参照)、従って、分離されたレイアウトおよびデータ情報のリンクを提供する。
【0090】
データデスクリプション抽出ステップ442において、コンピュータシステム999は、データデスクリプション140−2を生成するために、好ましくはXSLTのようなスタイルシート変換を用いて、標準化ヒューマンインターフェイスデスクリプション120(図5A参照)を処理する。通覧の例において、XSL変換は、ネームドキュメントについてドキュメントをスキャンすることにより、表4におけるXMLドキュメントを処理する。データパス情報を備えるネーム属性が検出されるたびに、対応するタグ(<data_path_element>,</data_path_element>)が、各データパスエレメントについてデータデスクリプションドキュメント140−2(表8参照)に挿入される。好ましくは、データデスクリプションドキュメント140−2は、XMLのようなマークアップ言語で記述される。ネーム属性“//survey/planned_costs/travel”は表4のライン10において検出される。通覧の例において結果として生じるデータデスクリプション140−2は表8に示される。以下のライン番号は表8を引用する。ライン1は、XMLドキュメントを示す。ライン2−4は、デフォルト値“0.0”(ライン4)のデータパス“//survey/planned_costs/travel”を規定する。閉タグ</…>(ライン4から6)は、データパスの定義を完結する。
【0091】
【表8】
Figure 2004537134
【0092】
表8は、通覧の例におけるデータデスクリプションドキュメント140−2である。
【0093】
図3Bは、分解ステップ450のサブステップ、即ち、レイアウトテンプレート140−1(図5A参照)を抽出するサブステップ451と、データデスクリプション140−2を抽出するサブステップ452を図示する。
レイアウトテンプレート抽出ステップ451において、コンピュータシステム999は、レイアウトテンプレート140−1を生成するために、好ましくはXSLTのようなスタイルシート変換を用いて、ブラウザ対応ヒューマンインターフェイスデスクリプション130(図5B参照)を処理する。表9は、通覧の例について、ブラウザ対応ヒューマンインターフェイスデスクリプション130(元の表5参照)をレイアウトテンプレート140−1(目標の表7参照)に変換する変換ルールを図示する。説明の便宜上、表9は、入力フィールド命令(表5、ライン16)のための変換ルールの例を含む。なぜなら、入力フィールド命令は、レイアウト情報およびデータの両方を含むからである。他のレイアウトエレメントのための変換ルールは、従ってこの技術分野のいかなる当業者によっても規定できる。明示的な表の引用を除いては以下のライン番号は表9を引用する。
【0094】
ライン1は、XSLTドキュメントの開始を示す。ライン3,13は、それに含まれたコーディング(coding)が、もとの表5(表5、ライン16参照)の入力フィールド命令に適合することを示す。ライン4,12は、結果として目標の表7のライン11,15になる元の表5の入力フィールド命令をコピーする。ライン5は、値属性を除いて全ての元の表属性をコピーする。従って、目標の表7のライン11は値属性を持たない。レイアウト情報は、ここでデータから分離される。しかし、代替物(placeholder)が、対応するデータにリンクすることを許可する。従って、ライン6−11は、目標の表7のライン12−14の中に値属性のためのXSL命令を生成する。ライン6,7,11は、目標の表7のライン12,14において(入力フィールド命令の)値属性のための属性命令を生成する。ライン8−10は、データインスタンス150における対応する場所から除去されたデータを取り出すために“value-of”命令を備える目標の表7のライン13を生成する。
【0095】
【表9】
Figure 2004537134
【0096】
表9は、通覧の例においてブラウザ対応ヒューマンインターフェイスデスクリプション130からレイアウトテンプレート140−1を抽出するための変換ルールである。
【0097】
データデスクリプション抽出ステップ452において、コンピュータシステム999は、データデスクリプション140−2を生成するために、好ましくはXSLTのようなスタイルシート変換を用いて、標準化ヒューマンインターフェイスデスクリプション130(図5B参照)を処理する。
【0098】
通覧の例において、XSL変換は、ネーム属性についてドキュメントをスキャンすることにより表5におけるXHTMLドキュメントを処理する。データパス情報を備えるネーム属性が検出されるたびに、データパス情報の各データパスエレメント(<data_path_element>,</data_path_element>)のための対応タグがデータデスクリプションドキュメント140−2(表8参照)に挿入される。ネーム属性“/survey/planned_costs/travel”は表5のライン16において検出される。この通覧の例において結果として生じるデータデスクリプションドキュメント140−2は表8に示され、そして既に図3Aに基づき説明された。
【0099】
レイアウトテンプレート140−1およびデータデスクリプション140−2は、図3Aに基づき述べられた対応ドキュメントと同等である。通覧の例において、表7および8において述べられたドキュメントが生成される。
【0100】
図4は、本発明の方法400におけるステップ420,430で処理されるドキュメント110,120,130を図示する。
所定のアプリケーション特定ヒューマンインターフェイスデスクリプション110は、アプリケーション特定レイアウトエレメント112,113,114(図6参照)の複数111を備える。好ましくは、ASLEは、XML(表2参照)のようなマークアップ言語で記述される。
【0101】
コンピュータシステム999は、ASLEからBLEへの変換(表3参照)のための変換ルールをアプリケーション特定ヒューマンインターフェイスデスクリプション110に適用して、それを標準化ヒューマンインターフェイスデスクリプション120に変換420する。標準化ヒューマンインターフェイスデスクリプション120は、基本レイアウトエレメント122,123,124−1,124−2,125,126,127の複数120を備える。好ましくは、BLEは、XML(表4参照)のようなマークアップ言語で記述され、その変換はXSLTのようなスタイルシート言語変換である。
【0102】
任意的に、コンピュータシステム999は、コンバージョンルールを標準化ヒューマンインターフェイスデスクリプション120に適用して、ステップ430でそれをブラウザ対応ヒューマンインターフェイスデスクリプション130にコンバートする。ブラウザ対応ヒューマンインターフェイスデスクリプション130は、マイクロソフト(登録商標)FrontPageまたはアドビ(登録商標)GoLoveのようなwebオーサリングツールを用いて編集可能である。例えば、ブラウザ対応ヒューマンインターフェイスデスクリプション130は、マークアップ言語ドキュメント(例えば、XHTML)であり、そこでは全てのBLEエレメントが、従来のブラウザ(表5参照)によって翻訳できるマークアップ言語命令(例えばXHTML命令)にコンバートされる。好ましくは、そのコンバージョンは、XMLステートメントをXHTML命令にコンバートするXSLTのようなスタイルシート言語変換である。
【0103】
図5は、方法400において処理される更なるドキュメント140−1,140−2を図示する。
【0104】
図5Aは、標準化ヒューマンインターフェイス120をレイアウトテンプレート140−1およびデータデスクリプション140−2に分解するステップ440を図示する。レイアウトテンプレート140−1を抽出するステップ441のための変換ルールは、表6に詳細に記述されている。データデスクリプション140−2を抽出するステップ442は図3Aに記述されている。
【0105】
図5Bは、ブラウザ対応ヒューマンインターフェイスデスクリプション130をレイアウトテンプレート140−1およびデータデスクリプション140−2に分解するステップ450を図示する。レイアウトテンプレート140−1を抽出するステップ451は、表9に詳細に記述されている。データデスクリプション140−2を抽出するステップ442は、部3Bに詳細に記述されている。
【0106】
図6は、ALSE112,113,114およびBLE122,123,124−1,124−2,125,126,127を図示する。ALEは実線で示され、BLEは破線で示される。
【0107】
ヒューマンインターフェイスデスクリプションは、ALSEで最初に記述される。通覧のレイアウトにおいては、ASLE質問表(ALSEs questionnaire)112、質問グループ(questionGroup)113および質問(question)114が使用される。ASLEは、質問表112が少なくとも一つの質問グループ113を備え且つ質問グループ113が少なくとも一つの質問114を備えるヒューマンインターフェイス951の論理的構造を示す。質問114は、属性114−1から114−4のような属性を備える。例えば、ヒューマンインターフェイス951は、、出力装置950(図1参照)上に表示される。
【0108】
SIDLにおけるBLEは、一般にはページ(page)127、グリッド(grid)122、行(row)123、またはセル(cell)124−1,124−2のようなアプリケーション独立またはグラフィカルなキャラクターを備える。テキスト出力(TextOutput)フィールド126または入力フィールド(inputField)125のような異なるタイプのデータはセルに割り付けられる。セルは、行およびセルをさらに備える更なるグリッドを実に備えることができ、ここでのラジオボタン、チェックボックスまたは任意の他のデータタイプがセルに割り付けられる。従って、BLEの一般的性質は、任意の種類のアプリケーション特定ヒューマンインターフェイス951を構成することを可能とする。
【0109】
本発明は、論理的に構築されたASLE112,113,114をグラフィカルに構築されたBLE122,123,124−1,124−2,125,126,127に自動的に変換するための方法400を提供する。ASLEへのBLEの割り当ては、変換ルール(図2、表3の記述参照)として記述されている。通覧の例において、以下の表10の割り当ては表3の変換ルールにおいて規定されている。
【0110】
【表10】
Figure 2004537134
【0111】
表10は、通覧の例におけるASLEとBLEの割り当てである。
【0112】
図7は、ランタイム中の本発明によるドキュメント140−1,140−2,150,160(任意の120−1)およびデータ170の処理を図示する。ドキュメント120−1は、標準化ユーザインターフェイスデスクリプション120のランタイムコピー(runtime copy)である。
【0113】
本発明の好ましい実施形態において、コンピュータシステム999(図1参照)は、ランタイム中に方法400(図2参照)の残った任意的なステップ、即ち、
e)データデスクリプション140−2からデータインスタンス150を作成するステップ460、
f)データインスタンス150をヒューマンインターフェイスレイアウトテンプレート140−1と共に個々のブラウザ対応ヒューマンインターフェイスデスクリプション160にマージするステップ470と、
g)ユーザ(図示なし)にデータ入力を指示するためにブラウザ対応ヒューマンインターフェイスデスクリプション160を翻訳するステップ475と、
h)ユーザからデータ170を受け取るステップ480と、
i)データ170をデータインスタンス150に格納するステップ485と、
j)少なくとも一つの基本レイアウトエレメント(122,123,124−1,124−2,125,126,127)のステータスを格納するステップ490と、
を実行する。
【0114】
作成ステップ460において、コンピュータシステム999は、結果としてデータインスタンス150になる更なるランタイム依存のデータ(ランタイム中に生成または修正されたデータ)によってデータデスクリプション140−2を補完する。ランタイム依存のデータの例は、ユーザネーム、ドキュメント生成日時、セッションID、エラーメッセージ等である。好ましくは、データインスタンス150は、XMLドキュメントのようなマークアップ言語である。以下のライン番号は表11を引用する。通覧の例において、表11は、そのヘッダ(ライン3,5)にランタイム依存データのユーザネーム(“USER1”、ライン1)を備えるエンベロープ(ライン2,13)を図示し、一方では、そのデータデスクリプション(ライン7−11)は、その本体(body)(ライン6,12)を形成する。エンベロープネームスペースは、接頭辞“env:”により表される。
【0115】
【表11】
Figure 2004537134
【0116】
表11は、通覧の例におけるデータインスタンスドキュメント150である。
【0117】
マージステップ470において、レイアウトテンプレート140−1は、データインスタンス150に適用される。好ましくは、これはデータインスタンス150のスタイルシート変換(表7参照)に対応する。
【0118】
要求があれば、データインスタンス150は、レイアウトテンプレート140−1を適用する前に、例えばアプリケーションプログラム(例えばコンピュータ901上のコンピュータプログラム101)によって修正される。これはインターフェイス155を通して達成される。例えば、コンピュータシステム999(図1参照)は、(例えばコンピュータ900上の)データインスタンス150のデータをアプリケーションプログラムにインターフェイス155を通して転送し、そしてデータインスタンス150は、インターフェイス155を通してアプリケーションプログラムから修正されたデータを受け取る。この利点は、データインスタンス150のアプリケーション特定の初期化(application specific initialization)である。例えば、通覧の例において、ユーザ(例えば、USER1、表11のライン4参照)は、次の会計年度のための計画トラベルコスト(planned travel costs)を入力することを欲する。対応するデータデスクリプション140−2から導き出されるデフォルト値は、“0.0”(表11、ライン9参照)である。この例において、アプリケーションプログラムは、前会計年度のユーザの実際のトラベルコストを知っている。アプリケーションプログラムはインターフェイス155を通して呼び出され、そして前のトラベルコストについての質問を実施する。結果値はインターフェイス155を通してデータインスタンス150に戻され、そして古いデフォルト値を置き換える。
【0119】
表12は、マージステップ470の結果として個々のブラウザ対応ヒューマンインターフェイスデスクリプションドキュメント160を示す。好ましくは、ドキュメント160は、XHTMLのようなマークアップ言語で記述される。以下のライン番号は表12を引用する。ドキュメント160は、表5におけるドキュメント130と類似する。ライン4および10における相違点は、ステータス格納ステップ490において詳細に説明される。通覧の例のライン19において、データインスタンス150(デフォルト値“0.0”)からのデータおよびレイアウト情報(入力)は、表7(レイアウトテンプレート140−1)のライン11−15が表11(データインスタンス150)に適用されたときにマージされる。
【0120】
【表12A】
Figure 2004537134
【0121】
【表12B】
Figure 2004537134
【0122】
表12は、通覧の例における個々のブラウザ対応ヒューマンインターフェイスデスクリプションドキュメント160である。
翻訳ステップ475(図2参照)において、個々のブラウザ対応ヒューマンインターフェイスデスクリプション160は、例えば出力装置950(図1参照)上で従来のブラウザによって翻訳される。通覧の例において、ユーザは、図6(破線)に示されるBLEに類似する構造を備える画面で入力を指示される。ユーザは、テキスト出力(Textoutput)BLE126の中の質問文を読み、そしてデフォルト値が表示されているフィールド入力(FieldInput)BLE125にデータを入力することを要求される。もし一つよりも多くの質問が表示されれば、全てのデータ入力を終えた後に、ユーザはデータ170をサブミットする。例えば、データのサブミッションはヒューマンインターフェイス951上の適切な簿欄をクリックすることにより、または入力装置940(図1参照)上の“ENTER”キーを選択することにより実施される。
【0123】
データを受け取るステップ480において、コンピュータシステム999のコンピュータ(例えば、コンピュータ900、図1参照)は、ユーザインターフェイス960(図1参照)を経てユーザからデータ170を受け取る。データ170は、少なくとも一つのデータセットを備える。好ましくは、データ170は、データ170の書くデータセットについてネームおよび値を備えた形式で受け取られる。好ましくは、各データセットのネームは、データインスタンス150に準拠したXパスであり、且つ対応するデータセットの値の格納場所を示す。表13は、通覧の例におけるデータ170を示す。表13の各行は、データ170のデータセットに対応する。
【0124】
【表13】
Figure 2004537134
【0125】
表13は、通覧の例におけるデータ170のフォーマットである。
【0126】
データ格納ステップ485において、データ170は、対応する場所のデータインスタンス150に格納される。通覧の例において、格納場所は、表13のネームカラム(例えば、“//survey/planned_costs/travel”)から自動的に知られる。任意的に、データ170を格納した後、データ170は、マージステップ470のデスクリプションと同様に、インターフェイス155を用いることによりアプリケーションプログラム(図示なし)によって処理することができる。
【0127】
ステータス格納ステップ490において、少なくとも一つの基本レイアウトエレメント(122,123,124−1,124−2,125,126,127)がデータインスタンス150に格納される。あるいは、ステータスは、標準化ヒューマンインターフェイスデスクリプション120のランタイムコピーに格納することができる(破線)。
【0128】
基本レイアウトエレメントのステータスは、ユーザがデータ170をサブミットする時間内の時点でのレイアウトエレメントについての情報を備える。例えば、もし、ヒューマンインターフェイス951を通したやり取り(interacting)の間にユーザが階層を拡張すれば、その階層の拡張ステータスが格納される。通覧の例においては、BLEページ127のステータスはヒューマンインターフェイス951(図6参照)上のカーソルの位置である。ユーザがデータを一つよりも多くのBLEフィールド入力(FieldInput)に入力する場合、カーソルは、一般には最後のデータ入力を受け取ったBLEにとどまる。説明の便宜上、フィールド入力(FieldInput)125のみを考慮する。この場合、BLEページ127のステータス“cursorPos”は、BLE125に特有のポインタである。このようなポインタは、各BLEについて特有なIDとして実施できる。通覧の例において、データパス“/survey/planned_costs/travel”は、BLEフィールド入力(FieldInput)125に対する特有のIDとしての役目を果たす。ユーザがデータ170をサブミットするときにカーソルがBLEにあると仮定すれば、例えば、ページ127のステータスcuesorPos=“/survey/planned_costs/travel”はここのブラウザ対応ヒューマンインターフェイスデスクリプション160の隠れたフィールドに設定される。表12(ドキュメント160)の通覧の例において、これは、カーソル位置を決定する機能(例えばジャバスクリプト(登録商標)機能)(表12、ライン4b参照)を用いることにより、そしてそのカーソル位置をドキュメント160の更なるフィールド命令に変換する表12のライン10により達成される。好ましくは、上記更なる入力フィールド命令は、隠された入力フィールド(hidden input field)のためのものである。上記更なる入力フィールド命令の内容は、データ170の一部である。ネーム属性“//env:envelope/env:states/uicl:page/@cursorPos”は、データインスタンス150における“state”位置(<env:envelope><env:states><uicl:page … cursorPos=…>;表4参照、に対応する。ここで、value=“//survey/planned_costs/travel”は、値属性cursolPos(表14、ライン17参照)として格納される。個々のブラウザ対応ヒューマンインターフェイスデスクリプション160がデータ170のサブミッションの後に再生成されるときに、ドキュメント160(表12、タインスタンス4a参照)の更なる機能が実行され、データインスタンス150からBLEページ127のステータス情報を取得し、そしてそれに応じてカーソル位置を設定する。
【0129】
【表14】
Figure 2004537134
【0130】
表14は、レイアウトエレメントステータスを格納した後のデータインスタンスドキュメントである。
【0131】
本発明の別の好ましい実施形態において、BLEステータスは、標準化ユーザインターフェイスデスクリプション120のランタイムコピー120−1に格納され得る。この別な実施形態は、方法400のステップ430,450がステップ440に置き換えられた本発明の第2の好ましい実施形態が使用されるときに機能する。これは、方法ステップ440を更に備えるための方法ステップ460−490(図2参照)からのランタイム環境の拡張を意味する。この例では、通覧の例を用いて、データ170におけるBLEステータス情報は、ランタイムコピー120−1(表15、ライン2)に直接的に格納される。少なくとも2回、ヒューマンインターフェイス951を翻訳するステップ475が行われるときにステータスが設定されるように、分解ステップ440、作成ステップ460、およびマージステップ470の期間中、ステータス情報が保存される。
【0132】
【表15】
Figure 2004537134
【0133】
表15は、通覧の例における標準化ヒューマンインターフェイスデスクリプションドキュメント120のランタイムコピー120−1であり、ステータス情報を含む。
【0134】
本発明は、コンピュータに実施される方法400として説明された。そして、本発明は、これからコンピュータシステム999として説明される。
【0135】
本発明のコンピュータシステム999は、ヒューマンインターフェイスデスクリプションを自動的に生成し、そして処理する。
【0136】
コンピュータ900(図1参照)は動作中のコンピュータ(operating computer)であるとする。当業者であれば、サーバコンピュータ(例えば、コンピュータ901、図1参照)がデータ処理のために使用され且つクライアントコンピュータ(例えば、コンピュータ900、図1参照)がブラウザを備えたフロントエンドコンピュータとして動作するところのクライアントサーバシステムにおいて、本発明を実施することもできる。
【0137】
コンピュータシステム999の第1の好ましい実施形態は、次の手段、即ち、
a)所定のアプリケーション特定ヒューマンインターフェイスデスクリプション110(図4参照)を供給するステップ410(図2参照)のための手段と、
b)アプリケーション特定ヒューマンインターフェイスデスクリプション110を、標準化ヒューマンインターフェイスデスクリプション120(図4参照)に変換するステップ420(図2参照)のための手段とを備える。
【0138】
好ましくは、手段a)は、XML(表2参照)のようなマークアップ言語ドキュメント110を備え、ASLE112,113,114(図6参照)の複数111を更に備える。アプリケーション特定ヒューマンインターフェイスデスクリプションドキュメント110は、好ましくは、コンピュータ900のメモリ920(図1参照)に格納される。
【0139】
好ましくは、手段b)は、ASLE112,113,114を、標準化ヒューマンインターフェイスデスクリプション120のBLE122,123,124−1,124−2,125,126,127(図6参照)に変換するための変換ルールのセットを備える。例えば、その変換ルールは、スタイルシート言語変換ドキュメント(表3参照)として実施され、そしてメモリ920に格納される。標準化ヒューマンインターフェイスデスクリプション120は、好ましくは、マークアップ言語ドキュメント(表4参照)として実施され、そしてまたメモリ920に格納される。プロセッサ910は、変換ルールを処理し、そしてそれらをアプリケーション特定ヒューマンインターフェイスデスクリプションドキュメント110に適用する。
【0140】
任意的に、第1の実施形態においては、コンピュータシステム999は、手段c)からj)を更に備える。任意の手段はこれから詳細に説明される。
c)は、標準化ヒューマンインターフェイスデスクリプション120を、ブラウザ対応ヒューマンインターフェイスデスクリプション130(図4参照)にコンバートするステップ430(図2参照)のための手段である。好ましくは、コンピュータ910は、ドキュメント120のBLE122,123,124−1,124−2,125,126,127をドキュメント130のブラウザ対応マークアップ言語の命令にコンバートするコンバージョンルールのセットを適用することにより、ドキュメント120をコンバートする。好ましくは、プロセッサ120は、コンバージョンルールからなるスタイルシート言語変換を処理するときにそのコンバージョンを実行する。結果として生じるドキュメント130はメモリ920に格納される。
【0141】
d)は、ブラウザ対応ヒューマンインターフェイスデスクリプション130を、ヒューマンインターフェイスレイアウトテンプレート140−1(図5参照)およびデータデスクリプション140−2(図5参照)に分解するステップ450(図2参照)のための手段である。手段d)は、好ましくは、レイアウトテンプレート140−1およびデータデスクリプション140−2を抽出するためにドキュメント130に適用される二つのスタイルシート言語変換ドキュメントを備える。レイアウトテンプレート140−1を抽出するためのスタイルシート変換ドキュメントの例は表9に与えられている。好ましくは、データテンプレート140−1は表9で与えられる。好ましくは、データテンプレート140−1は、スタイルシート言語変換ドキュメントである。データデスクリプション140−2を抽出するためのこのスタイルシート言語変換ドキュメントは、図3Bの詳細な説明で述べられる。好ましくは,プロセッサ910は、二つのスタイルシート言語変換ドキュメントを処理し、その結果として生じるドキュメント140−1および140−2をメモリ920に格納する。コンピュータシステム999のこの第1の好ましい実施形態において、分解ステップ450がヒューマンインターフェイス951(図6参照)のデザインタイム(design-time)の間に発生するので、メモリ920のメモリ部分が使用される。
【0142】
e)は、データデスクリプション140−2からデータインスタンス150(図7参照)を作成するステップ460(図2参照)のための手段である。
f)は、データインスタンス150をヒューマンインターフェイスレイアウトテンプレート140−1と共に個々のブラウザ対応ヒューマンインターフェイスデスクリプション160(図7参照)にマージするステップ470(図2参照)のための手段である。
g)は、ユーザにデータ入力を指示するために個々のブラウザ対応ヒューマンインターフェイスデスクリプション160を翻訳するステップ475(図2参照)のための手段である。
h)は、ユーザからデータ170(図7参照)を受け取るステップ480(図2参照)のための手段である。
i)は、データ170をデータインスタンス150に格納するステップ485のための手段である。そして、
j)は、少なくとも一つの基本レイアウトエレメント122,123,124−1,124−2,125,126,127のステータスを格納するステップ490のための手段である。
【0143】
好ましくは、手段e)はコンピュータプログラムを備え、そのコンピュータプログラムは、メモリ920からデータデスクリプション140−2を読み取ると共に、ランタイム依存のデータをデータデスクリプション140−2のデータに付け加えることによりメモリ920(例えば、ランタイムデータを格納するためのRAM)のランタイム部においてデータインスタンスドキュメント150を生成するものである。ランタイム依存のデータは、ランタイム中に、例えばアプリケーションプログラム(例えば、コンピュータ901上の101、図1の記載参照)によって生成されまたは修正される。表11は、データインスタンス150の例を示し、それはマークアップ言語ドキュメントとして実施される。
【0144】
好ましくは、手段f)は、レイアウトテンプレート140−1を備え、それは、この例においてはスタイルシート言語変換ドキュメント(表7参照)である。プロセッサ910は、メモリ920からレイアウトテンプレート140−1を読み取って、そしてそれをデータインスタンス150に適用する。その結果は個々のブラウザ対応ヒューマンインターフェイスデスクリプション160(表12のXHTMLの例参照)であり、それはメモリ920のランタイム部に格納されているマークアップ言語ドキュメントである。
【0145】
好ましくは、手段g)は、コンピュータのプロセッサ(例えば、コンピュータ900のプロセッサ910)により実行されるマイクロソフト(登録商標)インターネットエクスプリーラまたはネットスケープ(登録商標)ナビゲータのような従来のブラウザプログラム(図示なし)を備える。ブラウザは、ブラウザ対応ヒューマンインターフェイスデスクリプション160を翻訳し、そしてその結果を、出力装置950上にヒューマンインターフェイス951として表示する。好ましくは、ヒューマンインターフェイス951は、ヒューマンインターフェイス951を通してユーザにデータ170(図7参照)を入力指示する。ユーザは、入力装置940(図1参照)を通してデータを入力する。例えば、ユーザは、マウス装置によりヒューマンインターフェイスにおいて表示された入力フィールドを選択し、そしてキーボードによりデータを入力する。
【0146】
好ましくは、手段h)は、コンピュータ900の基本入出力システム(BIOS)およびブラウザを備える。BIOSは、バス930(図1参照)を通して入力装置940から信号を受け取る。その信号はキャラクターとして解釈され、そして出力装置950上にブラウザによって適切に表示される。ユーザによってデータ170のサブミッションがなされると(例えば、マウス装置を用いてサブミットボタンをクリックすることにより)、コンピュータ900は、バス930を通してデータ170を受け取る。
【0147】
好ましくは、手段i)は、表13およびストレージプログラムに従ってデータ170のフォーマットを用いることにより実施される。ストレージプログラムは、データインスタンス150に属するメモリ920のランタイムメモリ部にデータ170を自動的に格納する。正確なストレージアドレスは、表13の各データセットの名の下にXパスから導き出される。
【0148】
好ましくは、手段j)は、ドキュメント160(表12参照)における隠れたフィールドおよびジャバスクリプト(登録商標)機能を用いることにより実施される。ジャバスクリプト(登録商標)機能は、少なくとも一つの基本レイアウトエレメント122,123,124−1,124−2,126,127のステータスを決定し、そしてそのステータスを、隠れたフィールドに格納する。隠れたフィールドは、サブミットされたデータ170の一部になり、そしてストレージプログラムによりデータインスタンス150(表14、ライン7参照)にデータ170の他のデータセットと一緒に格納される。データ170の他のデータセットのように、ステータスもまた、正確なストレージアドレスに対応するXパスと共にネームを含む。
【0149】
コンピュータシステム999の第2の好ましい実施形態において、手段c)およびd)は、標準化ヒューマンインターフェイスデスクリプション120をヒューマンインターフェイスレイアウトテンプレート140−1およびデータデスクリプション140−2に分解するステップ440のために、任意的な手段k)によって置き換えられる。好ましくは、手段k)は、レイアウトテンプレート140−1およびデータデスクリプション140−2を抽出するために、ドキュメント120に適用される二つのスタイルシート言語変換ドキュメントとして実施される。レイアウトテンプレート140−1を抽出するためのスタイルシート変換ドキュメントの例が表6に与えられている。好ましくは、データテンプレート140−1はスタイルシート言語変換ドキュメントである。データデスクリプション140−2を抽出するためのスタイルシート言語変換ドキュメントは、図3Aの詳細な説明で述べられる。好ましくは、プロセッサ910は、二つのスタイルシート言語変換ドキュメントを処理し、そしてその結果として生じたドキュメント140−1および140−2をメモリ920に格納する。コンピュータシステム999のこの第2の実施形態において、分解ステップ450がヒューマンインターフェイス951(図6参照)のデザインタイムの間に発生するので、メモリ920のデザインタイムメモリ部が使用される。
【0150】
コンピュータシステム999の別の好ましい実施形態において、ランタイム処理は、拡張されて手段b)およびk)を更に備える。これを達成するため、コンピュータシステム999は、手段b)の更なる一部として、標準化ヒューマンインターフェイスデスクリプション120のランタイムコピー120−1(図7参照)を生成する。好ましくは、ランタイムコピー120−1は、メモリ920のランタイムメモリ部に格納される。この場合は、分解手段k)は、レイアウトテンプレート140−1およびデータデスクリプション140−2を抽出するために、ドキュメント140−2の代わりにランタイムコピー120−1をアクセスし、それら双方はまたメモリ920のランタイムメモリ部に格納される。この別の実施形態においては、手段j)は、データインスタンス150の代わりにデータ170の少なくとも一つのステータスデータセットをランタイムコピー120−1に格納490する(図7の破線、表15、ライン2参照)。分解手段k)は、それから、ステータスデータをデータデスクリプション140−2に抽出し、そしてレイアウトテンプレート140−1において対応するリンクを生成する。
【0151】
本発明はコンピュータ実施の方法400およびコンピュータシステム999として説明された。そして、これから、本発明は、コンピュータ読み取り可能なデータキャリア970(図1参照)上に格納可能なコンピュータプログラムプロダクト100(図1参照)として説明される。
【0152】
コンピュータプログラムプロダクト100は、コンピュータ(例えば、コンピュータ900)のプロセッサ(例えば、プロセッサ910)にヒューマンインターフェイスデスクリプションを生成させ且つ処理させるための複数の命令を備える。コンピュータプログラムプロダクト100は、コンピュータ900に以下のステップを実行させる。
a)所定のアプリケーション特定ヒューマンインターフェイスデスクリプション110を提供するステップ410。
b)アプリケーション特定ヒューマンインターフェイスデスクリプション110を標準化ヒューマンインターフェイスデスクリプション120に変換するステップ420。
【0153】
第1の好ましい実施形態において、コンピュータプログラムプロダクト100は、コンピュータ900に、更なる任意的なステップc)からj)を実行させる。
c)標準化ヒューマンインターフェイスデスクリプション120をブラウザ対応ヒューマンインターフェイスデスクリプション130にコンバートするステップ430。
d)ブラウザ対応ヒューマンインターフェイスデスクリプション130をヒューマンインターフェイスレイアウトテンプレート140−1およびデータデスクリプション140−2に分解するステップ450。
e)データデスクリプション140−2からデータインスタンス150を作成するステップ460。
f)データインスタンス150を、ヒューマンインターフェイスレイアウトテンプレート140−1と共に個々のブラウザ対応ヒューマンインターフェイスデスクリプション160にマージするステップ。
g)ユーザにデータ入力を指示するために、個々のブラウザ対応ヒューマンインターフェイスデスクリプション160を翻訳するステップ475。
h)ユーザからデータ170を受け取るステップ480。
i)データ170をデータインスタンス150に格納するステップ485.
j)少なくとも一つの基本レイアウトエレメント122,123,124−1,124−2,125,126,127のステータスを格納するステップ490.
【0154】
コンピュータプログラム100のステップa)からj)は、方法400のステップa)からj)とそれぞれ等価であり、それらは、図2,3,7に基づき詳細に説明された。
【0155】
第2の好ましい実施形態において、コンピュータプログラムプロダクト100は、コンピュータ900に、ステップc)およびd)の代わりに任意的なステップk)を実行させる。
k)標準化ヒューマンインターフェイスデスクリプション120を、ヒューマンインターフェイスレイアウトテンプレート140−1およびデータデスクリプション140−2に分解するステップ440。
コンピュータプログラム100のステップk)は、図2および3に基づき詳細に説明された方法400のステップk)と等価である。
コンピュータプログラムプロダクト100の実施形態のそれぞれは、コンピュータ読み取り可能なデータキャリア(例えば、データキャリア970)に格納してもよい。
【0156】
【表16A】
Figure 2004537134
【0157】
【表16B】
Figure 2004537134

【図面の簡単な説明】
【0158】
【図1】本発明のコンピュータネットワークシステムの簡略化したブロックダイアグラムを示す図である。
【図2A】ブラウザ対応ヒューマンインターフェイスデスクリプションを自動的に生成し且つ処理するための本発明の方法の一実施形態の簡略化されたフローチャートを示す図である。
【図2B】ブラウザ対応ヒューマンインターフェイスデスクリプションを自動的に生成し且つ処理するための本発明の方法の一実施形態の簡略化されたフローチャートを示す図である。
【図3A】方法ステップを図解する図である。
【図3B】方法ステップを図解する図である。
【図4】本発明の方法で処理されるドキュメントを図解する図である。
【図5A】本発明の方法で処理される更なるドキュメントを示す図である。
【図5B】本発明の方法で処理される更なるドキュメントを示す図である。
【図6】ALSEおよびBLEを図解する図である。
【図7】ランタイム中の本発明によるドキュメントおよびデータの処理を図解する図である。

Claims (39)

  1. ヒューマンインターフェイスデスクリプションを生成し且つ処理するためのコンピュータ実施の方法(400)であって、
    所定のアプリケーション特定ヒューマンインターフェイスデスクリプション(110)を供給するステップ(410)と、
    前記アプリケーション特定ヒューマンインターフェイスデスクリプション(110)を標準化されたヒューマンインターフェイスデスクリプション(120)に変換するステップ(420)と
    を具備する方法。
  2. 前記所定のアプリケーション特定ヒューマンインターフェイスデスクリプション(110)は、アプリケーション特定レイアウトエレメント(112,113,114)の複数(111)を用いたマークアップ言語であることを特徴とする請求項1記載の方法。
  3. 前記標準化されたヒューマンインターフェイスデスクリプション(120)は、基本レイアウトエレメント(122,123,124−1,124−2,125,126,127)の複数(121)を用いたマークアップ言語デスクリプションであることを特徴とする請求項1記載の方法。
  4. 前記変換ステップ(420)は、プログラミング言語での変換プログラムを使用することを特徴とする請求項1記載の方法。
  5. 前記変換プログラムは、スタイルシート言語変換であることを特徴とする請求項4記載の方法。
  6. 前記標準化されたヒューマンインターフェイスデスクリプション(120)をブラウザ対応ヒューマンインターフェイスデスクリプション(130)に変換するステップ(430)をさらに備えたことを特徴とする請求項1記載の方法。
  7. 前記ブラウザ対応ヒューマンインターフェイスデスクリプション(130)は、マークアップ言語デスクリプションであることを特徴とする請求項6記載の方法。
  8. 前記変換ステップ(430)は、プログラミング言語でのコンバージョンプログラムを使用することを特徴とする請求項6記載の方法。
  9. 前記コンバージョンプログラムは、スタイルシート言語変換であることを特徴とする請求項8記載の方法。
  10. 前記標準化されたヒューマンインターフェイスデスクリプション(120)を、ヒューマンインターフェイスレイアウトテンプレート(140−1)およびデータデスクリプション(140−2)に分解するステップ(440)をさらに備えることを特徴とする請求項1記載の方法。
  11. 前記分解ステップ(440)は、
    ヒューマンインターフェイスレイアウトテンプレート(140−1)を、標準化されたヒューマンインターフェイスデスクリプション(120)から抽出するステップ(441)と、
    前記データデスクリプション(140−2)を、前記標準化されたヒューマンインターフェイスデスクリプション(120)から抽出するステップ(442)と
    を備えたことを特徴とする請求項10記載の方法。
  12. 前記抽出ステップ(441,442)は、プログラム言語での変換プログラムを使用することを特徴とする請求項11記載の方法。
  13. 前記変換プログラムは、スタイルシート言語変換であることを特徴とする請求項12記載の方法。
  14. 前記ブラウザ対応ヒューマンインターフェイスデスクリプション(130)を、ヒューマンインターフェイスレイアウトテンプレート(140−1)およびデータデスクリプション(140−2)に分解するステップ(450)をさらに備えたことを特徴とする請求項6記載の方法。
  15. 前記分解ステップは、
    前記ヒューマンインターフェイスレイアウトテンプレート(140−1)を前記ブラウザ対応ヒューマンインターフェイスデスクリプション(130)から抽出するステップ(451)と、
    前記データデスクリプション(140−2)を前記ブラウザ対応ヒューマンインターフェイスデスクリプション(130)から抽出するステップ(452)と
    を備えたことを特徴とする請求項14記載の方法。
  16. 前記抽出ステップ(451,452)は、プログラミング言語での変換プログラムを使用することを特徴とする請求項15記載の方法。
  17. 前記変換プログラムは、スタイルシート言語変換であることを特徴とする請求項16記載の方法。
  18. 前記データデスクリプション(140−2)からデータインスタンス(150)を作成するステップ(460)と、
    前記データインスタンス(150)を前記ヒューマンインターフェイスレイアウトテンプレート(140−1)と共に個々のブラウザ対応ヒューマンインターフェイスデスクリプション(160)にマージするステップ(470)と、
    ユーザにデータ入力を指示するために前記個々のブラウザ対応ヒューマンインターフェイスデスクリプション(160)を翻訳するステップ(475)と、
    前記ユーザからデータ(170)を受け取るステップ(480)と、
    前記データ(170)をデータインスタンス(150)に格納するステップ(485)と、
    少なくとも一つの基本レイアウトエレメント(122,123,124−1,124−2,125,126,127)のステータスを格納するステップ(490)と
    をさらに備えたことを特徴とする請求項14記載の方法。
  19. 前記マージステップ(470)は、プログラミング言語での変換プログラムを使用することを特徴とする請求項18記載の方法。
  20. 前記変換プログラムは、スタイルシート言語変換であることを特徴とする請求項19記載の方法。
  21. 前記受取ステップ(480)において、前記データ(170)はXパスを構成(comprise)することを特徴とする請求項18記載の方法。
  22. 前記データデスクリプション(140−2)からデータインスタンス(150)を作成するステップ(460)と、
    前記データインスタンス(150)を、前記ヒューマンインターフェイスレイアウトテンプレート(140−1)と共に個々のブラウザ対応ヒューマンインターフェイスデスクリプション(160)にマージするステップ(470)と、
    ユーザにデータ入力を指示するために、前記個々のブラウザ対応ヒューマンインターフェイスデスクリプション(160)を翻訳するステップ(475)と、
    前記ユーザからデータ(170)を受け取るステップ(480)と、
    前記データ(170)を前記データインスタンス(150)に格納するステップ(485)と、
    少なくとも一つの基本レイアウトエレメント(122,123,124−1,124−2,125,126,127)のステータスを格納するステップ(490)と
    をさらに備えたことを特徴とする請求項10記載の方法。
  23. 前記マージステップ(470)は、プログラム言語での変換プログラムを使用することを特徴とする請求項22記載の方法。
  24. 前記変換プログラムは、スタイルシート言語変換であることを特徴とする請求項23記載の方法。
  25. 前記受取ステップ(480)において、前記データ(170)はXパスを構成することを特徴とする請求項22記載の方法。
  26. ヒューマンインターフェイスデスクリプションを生成し且つ処理するためのコンピュータシステムであって、
    所定のアプリケーション特定ヒューマンインターフェイスデスクリプション(110)を供給するステップ(410)のための手段と、
    前記アプリケーション特定ヒューマンインターフェイスデスクリプション(110)を、標準化されたヒューマンインターフェイスデスクリプション(120)に変換するステップ(420)のための手段と
    を具備するシステム。
  27. 前記標準化されたヒューマンインターフェイスデスクリプション(120)をブラウザ対応ヒューマンインターフェイスデスクリプション(130)に変換するステップ(430)のための手段をさらに備えたことを特徴とする請求項26記載のシステム。
  28. 前記ブラウザ対応ヒューマンインターフェイスデスクリプション(130)を、ヒューマンインターフェイスレイアウトテンプレート(140−1)およびデータデスクリプション(140−2)に分解するステップ(450)をさらに備えたことを特徴とする請求項27記載のシステム。
  29. 前記データデスクリプション(140−2)からデータインスタンス(150)を作成するステップ(460)のための手段と、
    前記データインスタンス(150)を前記ヒューマンインターフェイスレイアウトテンプレート(140−1)と共に個々のブラウザ対応ヒューマンインターフェイスデスクリプション(160)にマージするステップ(470)のための手段と、
    ユーザにデータ入力を指示するために前記個々のブラウザ対応ヒューマンインターフェイスデスクリプション(160)を翻訳するステップ(475)のための手段と、
    前記ユーザからデータ(170)を受け取るステップ(480)のための手段と、
    前記データ(170)をデータインスタンス(150)に格納するステップ(485)のための手段と、
    少なくとも一つの基本レイアウトエレメント(122,123,124−1,124−2,125,126,127)のステータスを格納するステップ(490)のための手段と
    をさらに備えたことを特徴とする請求項28記載のシステム。
  30. 前記標準化されたヒューマンインターフェイスデスクリプション(120)を、ヒューマンインターフェイスレイアウトテンプレート(140−1)およびデータデスクリプション(140−2)に分解するステップ(440)のための手段をさらに備えたことを特徴とする請求項26に記載の方法。
  31. 前記データデスクリプション(140−2)からデータインスタンス(150)を作成するステップ(460)のための手段と、
    前記データインスタンス(150)を、前記ヒューマンインターフェイスレイアウトテンプレート(140−1)と共に個々のブラウザ対応ヒューマンインターフェイスデスクリプション(160)にマージするステップ(470)のための手段と、
    ユーザにデータ入力を指示するために、前記個々のブラウザ対応ヒューマンインターフェイスデスクリプション(160)を翻訳するステップ(475)のための手段と、
    前記ユーザからデータ(170)を受け取るステップ(480)のための手段と、
    前記データ(170)を前記データインスタンス(150)に格納するステップ(485)のための手段と、
    少なくとも一つの基本レイアウトエレメント(122,123,124−1,124−2,125,126,127)のステータスを格納するステップ(490)のための手段と
    をさらに備えたことを特徴とする請求項30記載のシステム。
  32. コンピュータ(900)のプロセッサ(910)にヒューマンインターフェイスデスクリプションを生成させ且つ処理させるための複数の命令を備えたコンピュータプログラムプロダクトであって、
    所定のアプリケーション特定ヒューマンインターフェイスデスクリプション(110)を供給するステップと、
    前記アプリケーション特定ヒューマンインターフェイスデスクリプション(110)を標準化されたヒューマンインターフェイスデスクリプション(120)に変換するステップ(420)と
    を前記コンピュータ(900)に実行させるためのコンピュータプログラムプロダクト。
  33. 前記標準化されたヒューマンインターフェイスデスクリプション(120)をブラウザ対応ヒューマンインターフェイスデスクリプション(130)にコンバートするステップ(430)を前記コンピュータ(900)にさらに実行させるための請求項32記載のコンピュータプログラムプロダクト。
  34. 前記ブラウザ対応ヒューマンインターフェイスデスクリプション(130)を、ヒューマンインターフェイスレイアウトテンプレート(140−1)およびデータデスクリプション(140−2)に分解するステップ(450)を前記コンピュータ(900)にさらに実行させるための請求項33記載のコンピュータプログラムプロダクト。
  35. 前記データデスクリプション(140−2)からデータインスタンス(150)を作成するステップ(460)と、
    前記データインスタンス(150)を、前記ヒューマンインターフェイスレイアウトテンプレート(140−1)と共に個々のブラウザ対応ヒューマンインターフェイスデスクリプション(160)にマージするステップ(470)と、
    ユーザにデータ入力を指示するために、前記個々のブラウザ対応ヒューマンインスタンスデスクリプション(160)を翻訳するステップ(475)と、
    前記ユーザからデータ(170)を受け取るステップ(480)と、
    前記データ(170)を前記データインスタンス(150)に格納するステップ(485)と、
    少なくとも一つの基本レイアウトエレメント(122,123,124−1,124−2,125,126,127)のステータスを格納するステップ(490)と
    を前記コンピュータ(900)にさらに実行させるための請求項34記載のコンピュータプログラムプロダクト。
  36. 前記標準化されたヒューマンインターフェイスデスクリプション(120)をヒューマンインターフェイスレイアウトテンプレート(140−1)およびデータデスクリプション(140−2)に分解するステップ(440)を前記コンピュータ(900)にさらに実行させるための請求項32記載のコンピュータプログラムプロダクト。
  37. 前記データデスクリプション(140−2)からデータインスタンス(150)を作成するステップ(460)と、
    前記データインスタンス(150)を前記ヒューマンインターフェイスレイアウトテンプレート(140−1)と共に個々のブラウザ対応ヒューマンインターフェイスデスクリプション(160)にマージするステップ(470)と、
    ユーザにデータ入力を指示するために、前記個々のブラウザ対応ヒューマンインターフェイスデスクリプション(160)を翻訳するステップ(475)と、
    前記ユーザからデータ(170)を受け取るステップ(480)と、
    前記データ(170)を前記データインスタンス(150)に格納するステップ(485)と、
    少なくとも一つの基本レイアウトエレメント(122,123,124−1,124−2,125,126,127)のステータスを格納するステップ(490)と
    を前記コンピュータ(900)にさらに実行させるための請求項36記載のコンピュータプログラムプロダクト。
  38. コンピュータ(900)によって読み取り可能なデータキャリア(970)であって、前記コンピュータ(900)のプロセッサにヒューマンインターフェイスデスクリプションを生成させ且つ処理させるための複数の命令と、前記コンピュータ(900)に、請求項1,6,14,18記載の方法(400)のステップを実行させる複数の命令とを格納するデータキャリア。
  39. コンピュータ(900)によって読み取り可能なデータキャリアであって、前記コンピュータ(900)のプロセッサ(910)にヒューマンインターフェイスデスクリプションを生成させ且つ処理させるための複数の命令と、前記コンピュータ(900)に、請求項1,10,22記載の方法(400)のステップを実行させる複数の命令とを格納するデータキャリア。
JP2003517744A 2001-07-27 2002-04-16 ブラウザ対応ヒューマンインターフェイスデスクリプションを生成し且つ処理するための方法およびシステム Expired - Lifetime JP4647209B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP01118306A EP1280055B1 (en) 2001-07-27 2001-07-27 Method and computer system for creating and processing a browser compliant human interface description
PCT/EP2002/004209 WO2003012634A1 (en) 2001-07-27 2002-04-16 Method and computer system for creating and processing a browser compliant human interface description

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2008101949A Division JP4800343B2 (ja) 2001-07-27 2008-04-09 ブラウザ対応ヒューマンインターフェイスデスクリプションを生成し且つ処理するための方法およびシステム

Publications (2)

Publication Number Publication Date
JP2004537134A true JP2004537134A (ja) 2004-12-09
JP4647209B2 JP4647209B2 (ja) 2011-03-09

Family

ID=8178178

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2003517744A Expired - Lifetime JP4647209B2 (ja) 2001-07-27 2002-04-16 ブラウザ対応ヒューマンインターフェイスデスクリプションを生成し且つ処理するための方法およびシステム
JP2008101949A Expired - Lifetime JP4800343B2 (ja) 2001-07-27 2008-04-09 ブラウザ対応ヒューマンインターフェイスデスクリプションを生成し且つ処理するための方法およびシステム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2008101949A Expired - Lifetime JP4800343B2 (ja) 2001-07-27 2008-04-09 ブラウザ対応ヒューマンインターフェイスデスクリプションを生成し且つ処理するための方法およびシステム

Country Status (7)

Country Link
US (1) US8037407B2 (ja)
EP (1) EP1280055B1 (ja)
JP (2) JP4647209B2 (ja)
AT (1) ATE464601T1 (ja)
CA (1) CA2455322C (ja)
DE (1) DE60141823D1 (ja)
WO (1) WO2003012634A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE459043T1 (de) * 2001-07-27 2010-03-15 Sap Ag Verfahren und rechnersystem zum bereitstellen und verarbeiten einer beschreibung einer menschschnittstelle
EP1280054A1 (en) * 2001-07-27 2003-01-29 Sap Ag Method and computer system for separating and processing layout information and data of a document
DE102004010203B4 (de) * 2004-03-02 2007-05-10 Siemens Ag Verfahren, Vorrichtung und Computerprogramm zur Erstellung einer Projektierung für ein Bediengerät einer Automatisierungskomponente
US7620893B2 (en) 2004-03-31 2009-11-17 Sap Ag Aiding a user in using a software application
IES20090437A2 (en) * 2009-06-03 2009-09-02 Port Vines Res Ltd Re-engineering of computer source code
US10198414B2 (en) * 2009-09-10 2019-02-05 Usablenet Inc. Methods for optimizing interaction with a form in a website page and systems thereof
US9122764B2 (en) * 2010-03-24 2015-09-01 Fisher-Rosemount Systems, Inc. Methods and apparatus to access process data stored on a server
US20110239109A1 (en) * 2010-03-24 2011-09-29 Mark Nixon Methods and apparatus to display process data
US8375297B2 (en) * 2010-08-18 2013-02-12 Accenture Global Services Limited Orthogonal transformation of web pages
US9575873B2 (en) 2013-09-13 2017-02-21 Sap Se Software testing system and method
US11061991B2 (en) 2014-09-05 2021-07-13 Airwatch, Llc Secure document sharing
US10885209B2 (en) 2015-04-17 2021-01-05 Dropbox, Inc. Collection folder for collecting file submissions in response to a public file request
US10102388B2 (en) 2015-04-17 2018-10-16 Dropbox, Inc. Collection folder for collecting file submissions in response to a public file request
US9692826B2 (en) 2015-04-17 2017-06-27 Dropbox, Inc. Collection folder for collecting file submissions via a customizable file request
US20170154019A1 (en) * 2015-11-30 2017-06-01 Open Text Sa Ulc Template-driven transformation systems and methods
US10713966B2 (en) * 2015-12-31 2020-07-14 Dropbox, Inc. Assignments for classrooms
US10607498B2 (en) 2015-12-31 2020-03-31 Dropbox, Inc. Releasing assignments to students

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000020985A1 (en) * 1998-10-01 2000-04-13 Bcl Computers, Inc. Conversion of data representing a document to other formats for manipulation and display
JP2000242641A (ja) * 1999-02-23 2000-09-08 Mitsubishi Electric Corp 構造化文書処理装置および構造化文書処理方法
WO2001018630A2 (en) * 1999-09-09 2001-03-15 Percussion Software, Inc. Xml dynamic content retrieval using style and content definition sheets
WO2001029636A2 (en) * 1999-10-21 2001-04-26 2Roam, Inc. Intelligent harvesting and navigation system and method
JP2001143006A (ja) * 1999-11-16 2001-05-25 Daiwa Institute Of Research Ltd 電子決裁文書の自動作成システム
WO2001046837A2 (en) * 1999-12-21 2001-06-28 Datapower Technology, Inc. Method and apparatus of data exchange using runtime code generator and translator
JP2002268882A (ja) * 2001-03-07 2002-09-20 Fujitsu Ltd Webアプリケーションシステム、及びプログラム

Family Cites Families (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US249486A (en) * 1881-11-15 sampson
US34066A (en) * 1862-01-07 Improved automatic fan
US111963A (en) * 1871-02-21 Improvement
US5860073A (en) * 1995-07-17 1999-01-12 Microsoft Corporation Style sheets for publishing system
US5995985A (en) * 1995-11-16 1999-11-30 Starfish Software, Inc. Information management system with improved methods and interface for printing data
US5944781A (en) * 1996-05-30 1999-08-31 Sun Microsystems, Inc. Persistent executable object system and method
US5961601A (en) 1996-06-07 1999-10-05 International Business Machines Corporation Preserving state information in a continuing conversation between a client and server networked via a stateless protocol
JP3887867B2 (ja) * 1997-02-26 2007-02-28 株式会社日立製作所 構造化文書の登録方法
US6023714A (en) * 1997-04-24 2000-02-08 Microsoft Corporation Method and system for dynamically adapting the layout of a document to an output device
US6322810B1 (en) * 1997-07-14 2001-11-27 Hayat Alkan-Onyuksel Materials and methods for making improved micelle compositions
US7222087B1 (en) * 1997-09-12 2007-05-22 Amazon.Com, Inc. Method and system for placing a purchase order via a communications network
US6157936A (en) 1997-09-30 2000-12-05 Unisys Corp. Method for extending the hypertext markup language (HTML) to support a graphical user interface control presentation
US6279015B1 (en) * 1997-12-23 2001-08-21 Ricoh Company, Ltd. Method and apparatus for providing a graphical user interface for creating and editing a mapping of a first structural description to a second structural description
US6192380B1 (en) * 1998-03-31 2001-02-20 Intel Corporation Automatic web based form fill-in
US6820235B1 (en) 1998-06-05 2004-11-16 Phase Forward Inc. Clinical trial data management system and method
US6083276A (en) * 1998-06-11 2000-07-04 Corel, Inc. Creating and configuring component-based applications using a text-based descriptive attribute grammar
JP2000035959A (ja) * 1998-07-17 2000-02-02 Matsushita Electric Ind Co Ltd ワードプロセッサの文書管理方法とその装置
US6266682B1 (en) * 1998-08-31 2001-07-24 Xerox Corporation Tagging related files in a document management system
CA2352210A1 (en) * 1998-11-27 2000-06-08 British Telecommunications Public Limited Company Session announcement for adaptive component configuration
US7461336B1 (en) 1998-12-10 2008-12-02 Art Technology Group, Inc. System and method for automatic mapping of hypertext input fields to software components
WO2000052596A2 (en) 1999-03-04 2000-09-08 Cardiff Software, Inc. Automated form generation into an advanced page layout format with embedded field definitions
CA2334233C (en) * 1999-03-05 2010-10-26 Kenneth J. Klask Graphical user interface engine for embedded systems
US6429882B1 (en) 1999-03-15 2002-08-06 Sun Microsystems, Inc. User interface component
US6212534B1 (en) * 1999-05-13 2001-04-03 X-Collaboration Software Corp. System and method for facilitating collaboration in connection with generating documents among a plurality of operators using networked computer systems
US7650355B1 (en) * 1999-05-21 2010-01-19 E-Numerate Solutions, Inc. Reusable macro markup language
US7039863B1 (en) * 1999-07-23 2006-05-02 Adobe Systems Incorporated Computer generation of documents using layout elements and content elements
US6701486B1 (en) * 1999-07-29 2004-03-02 Grischa Corporation Method, apparatus, and computer program product for automatic page suppression in forms
US6651217B1 (en) * 1999-09-01 2003-11-18 Microsoft Corporation System and method for populating forms with previously used data values
US6516349B1 (en) * 1999-09-07 2003-02-04 Sun Microsystems, Inc. System for updating a set of instantiated content providers based on changes in content provider directory without interruption of a network information services
US7685252B1 (en) * 1999-10-12 2010-03-23 International Business Machines Corporation Methods and systems for multi-modal browsing and implementation of a conversational markup language
US6589290B1 (en) * 1999-10-29 2003-07-08 America Online, Inc. Method and apparatus for populating a form with data
US7016977B1 (en) * 1999-11-05 2006-03-21 International Business Machines Corporation Method and system for multilingual web server
US7194680B1 (en) * 1999-12-07 2007-03-20 Adobe Systems Incorporated Formatting content by example
US6928623B1 (en) * 1999-12-30 2005-08-09 International Business Machines Corporation Method and system for selecting a target window for automatic fill-in
US6603489B1 (en) * 2000-02-09 2003-08-05 International Business Machines Corporation Electronic calendaring system that automatically predicts calendar entries based upon previous activities
EP1126380A1 (en) * 2000-02-16 2001-08-22 Sun Microsystems, Inc. Converting a formatted document into an XML-document
US6922810B1 (en) 2000-03-07 2005-07-26 Microsoft Corporation Grammar-based automatic data completion and suggestion for user input
US6968503B1 (en) * 2000-03-09 2005-11-22 Quovadx, Inc. XML user interface for a workflow server
US7702995B2 (en) * 2000-04-24 2010-04-20 TVWorks, LLC. Method and system for transforming content for execution on multiple platforms
US6981028B1 (en) * 2000-04-28 2005-12-27 Obongo, Inc. Method and system of implementing recorded data for automating internet interactions
US6941510B1 (en) * 2000-06-06 2005-09-06 Groove Networks, Inc. Method and apparatus for efficient management of XML documents
DE10028842A1 (de) * 2000-06-15 2002-01-03 Ralf Mimoun Verfahren zur Erzeugung einer Bedienoberfläche für eine Standard-Applikation in einem Browser eines Computernetzwerkes
US6801224B1 (en) * 2000-09-14 2004-10-05 International Business Machines Corporation Method, system, and program for generating a graphical user interface window for an application program
WO2002048900A2 (en) * 2000-12-15 2002-06-20 International Business Machines Corporation Method and system for off-loading parts of a document to a document repository
US20020093530A1 (en) * 2001-01-17 2002-07-18 Prasad Krothapalli Automatic filling and submission of completed forms
US20020111963A1 (en) 2001-02-14 2002-08-15 International Business Machines Corporation Method, system, and program for preprocessing a document to render on an output device
US20040205530A1 (en) * 2001-06-28 2004-10-14 Borg Michael J. System and method to automatically complete electronic forms
US20030014442A1 (en) * 2001-07-16 2003-01-16 Shiigi Clyde K. Web site application development method using object model for managing web-based content
ATE459043T1 (de) 2001-07-27 2010-03-15 Sap Ag Verfahren und rechnersystem zum bereitstellen und verarbeiten einer beschreibung einer menschschnittstelle
EP1280054A1 (en) 2001-07-27 2003-01-29 Sap Ag Method and computer system for separating and processing layout information and data of a document
US7234105B2 (en) * 2001-09-20 2007-06-19 Sap Ag Methods and systems for providing a document with interactive elements to retrieve information for processing by business applications
US7324983B1 (en) * 2001-11-08 2008-01-29 I2 Technologies Us, Inc. Reproducible selection of members in a hierarchy
US7058886B1 (en) * 2001-12-18 2006-06-06 Open Invention Network Method and apparatus for declarative error handling and presentation
US7143359B2 (en) * 2002-01-03 2006-11-28 International Business Machines Corporation Emulating advanced graphical user interface elements in a hypermedia content browser
JP4068570B2 (ja) * 2002-02-08 2008-03-26 富士通株式会社 文書配信装置、文書受信装置、文書配信方法、文書配信プログラム、文書配信システム
US7117429B2 (en) * 2002-06-12 2006-10-03 Oracle International Corporation Methods and systems for managing styles electronic documents
US20040003341A1 (en) * 2002-06-20 2004-01-01 Koninklijke Philips Electronics N.V. Method and apparatus for processing electronic forms for use with resource constrained devices
US7185271B2 (en) * 2002-08-20 2007-02-27 Hewlett-Packard Development Company, L.P. Methods and systems for implementing auto-complete in a web page
CA2409788A1 (en) * 2002-10-25 2004-04-25 Ibm Canada Limited-Ibm Canada Limitee Architecture for dynamically monitoring computer application data
US7334188B2 (en) * 2003-07-11 2008-02-19 Computer Associates Think, Inc. System and method for generating HTML based on common XSLT
US20060224397A1 (en) * 2005-03-29 2006-10-05 Ipac, Llc Methods, systems, and computer program products for saving form submissions
US20070186150A1 (en) * 2006-02-03 2007-08-09 Raosoft, Inc. Web-based client-local environment for structured interaction with a form

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000020985A1 (en) * 1998-10-01 2000-04-13 Bcl Computers, Inc. Conversion of data representing a document to other formats for manipulation and display
JP2000242641A (ja) * 1999-02-23 2000-09-08 Mitsubishi Electric Corp 構造化文書処理装置および構造化文書処理方法
WO2001018630A2 (en) * 1999-09-09 2001-03-15 Percussion Software, Inc. Xml dynamic content retrieval using style and content definition sheets
WO2001029636A2 (en) * 1999-10-21 2001-04-26 2Roam, Inc. Intelligent harvesting and navigation system and method
JP2001143006A (ja) * 1999-11-16 2001-05-25 Daiwa Institute Of Research Ltd 電子決裁文書の自動作成システム
WO2001046837A2 (en) * 1999-12-21 2001-06-28 Datapower Technology, Inc. Method and apparatus of data exchange using runtime code generator and translator
JP2002268882A (ja) * 2001-03-07 2002-09-20 Fujitsu Ltd Webアプリケーションシステム、及びプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CONSTANTINOS PHANOURIOU, UIML: A DEVICE-INDEPENDENT USER INTERFACE MARKUP LANGUAGE, JPN4007011407, 26 September 2000 (2000-09-26), pages 26 - 45, ISSN: 0000865020 *
杉山敬三、服部元、吉原貴仁、小花貞夫: ""TMNに基づくWeb-based Managementシステムの実現"", 情報処理学会第58回(平成11年前期)全国大会 講演論文集(3)『データベースとメディア ネットワー, CSNJ199900003001, 11 March 1999 (1999-03-11), pages 3 - 577, ISSN: 0000756562 *

Also Published As

Publication number Publication date
CA2455322C (en) 2010-07-06
JP4800343B2 (ja) 2011-10-26
EP1280055A1 (en) 2003-01-29
DE60141823D1 (de) 2010-05-27
JP2008198229A (ja) 2008-08-28
WO2003012634A1 (en) 2003-02-13
JP4647209B2 (ja) 2011-03-09
ATE464601T1 (de) 2010-04-15
US20040249487A1 (en) 2004-12-09
EP1280055B1 (en) 2010-04-14
CA2455322A1 (en) 2003-02-13
US8037407B2 (en) 2011-10-11

Similar Documents

Publication Publication Date Title
JP4800343B2 (ja) ブラウザ対応ヒューマンインターフェイスデスクリプションを生成し且つ処理するための方法およびシステム
US7237190B2 (en) System and method for generating multiple customizable interfaces for XML documents
US7496828B2 (en) Method and system for mapping tags to classes using namespaces
US6678889B1 (en) Systems, methods and computer program products for locating resources within an XML document defining a console for managing multiple application programs
US20060209035A1 (en) Device independent specification of navigation shortcuts in an application
US20060004768A1 (en) Automated creation of web page to XML translation servers
US20050060046A1 (en) Information processing apparatus, its control method, and program
US20050278695A1 (en) System and method for modifying code assist within an integrated development environment
KR20010050382A (ko) 컴퓨터 모니터 상에 디스플레이하기 위한 문서인터페이스를 개별화하는 방법, 장치 및 제조물
US20030140332A1 (en) Method and apparatus for generating a software development tool
JP4044040B2 (ja) ドキュメントのデータおよびレイアウト情報を分離して処理するための方法およびコンピュータシステム
JP4647208B2 (ja) ヒューマンインターフェイスデスクリプションを提供し且つ処理するための方法およびコンピュータシステム
AU2002315294A1 (en) Method and computer system for separating and processing layout informationn and data of a document
AU2002310851A1 (en) Method and computer system for providing and processing a human interface description
US20050165712A1 (en) Method for operating software object using natural language and program for the same
AU2002308144B2 (en) Method and computer system for creating and processing a browser compliant human interface description
Plomp et al. Comparing Transcoding Tools for Use with a Generic User Interface Format.
Pohja et al. Web User Interaction: Comparison of Declarative Approaches
AU2002308144A1 (en) Method and computer system for creating and processing a browser compliant human interface description
EP1326175B1 (en) Method and computer system for editing text elements having hierachical relationships
Sarang XSLT and Apache Xalan
Pohja et al. Web User Interaction
Anthony Untangled Web: The Evolution of an Enterprise-Level Design

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060622

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060718

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20061018

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20061025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070619

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070919

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20071211

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080409

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20080527

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20080822

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101018

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101208

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131217

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4647209

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term