(57)【要約】【課題】オンライン環境で複数言語コンテンツを提供する装置及び方法を提供する。【解決手段】使用されるべき言語に関してユーザ又はアプリケーションから入力を受け取り（１０２）、データ辞書に対する埋め込まれたタグを含んだアプリケーション・テンプレートから入力を受け取り（１０４）、少なくとも１つのデータ辞書にアクセスし（１０６）、そして出力を生成するために適当な１つのデータ辞書からのデータとアプリケーション・テンプレートを一緒にする（１０８）。本発明は開発プラットホームの中心としてシンプル・サーバー・ページを使用したテンプレート技術を組込んだウェブアプリケーション開発システムを使用して、ウェブアプリケーションを異なる言語で高速に利用可能にできる。【選択図】図２
2004502241.tif 000002
【特許請求の範囲】
【請求項１】
複数言語ページを生成するシステムであって、
出力の生成に使用されるべき言語を指定できるユーザ・アプリケーションと、
複数の埋め込まれたタグを含んだアプリケーション・テンプレートと、
複数のエントリイを持った少なくとも１つの辞書であって、前記少なくとも１つの辞書の前記エントリイの各々が前記ユーザ・アプリケーション及び前記アプリケーション・テンプレートに接続的に関連しているものと、
前記出力のコンテンツを生成するために、前記ユーザ・アプリケーション及び前記アプリケーション・テンプレートからの入力を受取り、前記入力を適当な前記辞書からのデータと結合することができる処理モジュールと、
を含むことを特徴とするシステム。
【請求項２】
請求項１に記載のシステムにおいて、前記少なくとも１つの辞書の前記エントリイの各々が、共通言語仕様及びタグ識別子を介して前記ユーザ・アプリケーション及び前記アプリケーション・テンプレートと接続的に関連していることを特徴とするシステム。
【請求項３】
請求項１に記載のシステムにおいて、前記データがテキスト、チャート、ダイアグラム及び図形からなるグループから選択されていることを特徴とするシステム。
【請求項４】
請求項１に記載のシステムにおいて、前記ユーザ・アプリケーションのユーザが前記出力中に使用されるべき前記言語を指定できることを特徴とするシステム。
【請求項５】
請求項１に記載のシステムにおいて、前記ユーザ・アプリケーションが自動的に前記出力中に使用されるべき前記言語を指定することを特徴とするシステム。
【請求項６】
請求項１に記載のシステムにおいて、前記アプリケーション・テンプレートがシンプル・サーバー・ページを使用して構成されていることを特徴とするシステム。
【請求項７】
請求項１に記載のシステムにおいて、前記出力の前記コンテンツから分離されたデザイン情報をさらに含むことを特徴とするシステム。
【請求項８】
請求項７に記載のシステムにおいて、ダイナミック実時間表示画面を生成するために、前記デザイン情報及び前記コンテンツを結合するソフトウェア・エンジンをさらに含むことを特徴とするシステム。
【請求項９】
請求項１に記載のシステムにおいて、前記出力がＨＴＭＬコードを含むことを特徴とするシステム。
【請求項１０】
請求項１に記載のシステムにおいて、前記出力の少なくとも一部を記憶する一組のテンプレート・フアイルをさらに含むことを特徴とするシステム。
【請求項１１】
請求項１に記載のシステムにおいて、前記データが翻訳言語テキストを含むことを特徴とするシステム。
【請求項１２】
請求項１１に記載のシステムにおいて、前記翻訳言語テキストを維持するためのウェブベース・ユーザインターフエイスをさらに含むことを特徴とするシステム。
【請求項１３】
請求項１１に記載のシステムにおいて、前記翻訳言語テキストを編集するための翻訳機をさらに含むことを特徴とするシステム。
【請求項１４】
請求項１に記載のシステムにおいて、前記ユーザ・アプリケーションがジャバ・アプリケーションを含むことを特徴とするシステム。
【請求項１５】
請求項１４に記載のシステムにおいて、前記ジャバ・アプリケーションが少なくとも１つのデータベース内のクラス定義を含むことを特徴とするシステム。
【請求項１６】
請求項１に記載のシステムにおいて、外部コンテンツの少なくとも１つのソースをさらに含むことを特徴とするシステム。
【請求項１７】
請求項１６に記載のシステムにおいて、前記処理モジュールが前記出力のコンテンツを生成する際に使用される外部コンテンツの前記ソースからの入力をさらに受取るように構成されていることを特徴とするシステム。
【請求項１８】
請求項１に記載のシステムにおいて、展開のための少なくとも１つのマクロをさらに含むことを特徴とするシステム。
【請求項１９】
請求項１に記載のシステムにおいて、少なくとも１つの支援ツールをさらに含むことを特徴とするシステム。
【請求項２０】
オンライン環境内で複数言語ページを生成する方法であって、
出力を生成するために使用されるべき言語に関して、ユーザ・アプリケーションから入力を受け取り、
アプリケーション・テンプレートから、データ辞書への埋め込まれたタグを含んだ入力を受け取り、
複数のエントリイを持ち、そのエントリイの少なくともいくつかが関連言語識別子及びタグ識別子を有する少なくとも１つのデータ辞書にアクセスし、
前記出力を生成するために、適当な前記データ辞書からのデータと前記アプリケシーョン・テンプレートとを一緒にする、
ことを含むことを特徴とする方法。
【請求項２１】
請求項２０に記載の方法において、前記出力中に使用されるべき前記言語を前記ユーザ・アプリケーションのユーザが選択できるステップをさらに含むことを特徴とする方法。
【請求項２２】
請求項２０に記載の方法において、前記アプリケーション・テンプレートをシンプル・サーバー・ページを使用して構成するステップをさらに含むことを特徴とする方法。
【請求項２３】
請求項２０に記載の方法において、前記コンテンツから分離されたデザイン情報を維持するステップをさらに含むことを特徴とする方法。
【請求項２４】
請求項２０に記載の方法において、前記出力の少なくとも一部をテンプレート・フアイルの組内に記憶するステップをさらに含むことを特徴とする方法。
【請求項２５】
請求項２０に記載の方法において、翻訳言語情報を前記少なくとも１つのデータ辞書内に記憶するステップをさらに含むことを特徴とする方法。
【請求項２６】
請求項２５に記載の方法において、ウェブベース・ユーザインターフエイスを使用して前記翻訳言語テキストを維持するステップをさらに含むことを特徴とする方法。
【請求項２７】
請求項２５に記載の方法において、翻訳機を使用して前記翻訳言語テキストを維持するステップをさらに含むことを特徴とする方法。
【請求項２８】
請求項２０に記載の方法において、前記出力の前記コンテンツを生成する際に使用される少なくとも１つの外部コンテンツから入力を受け取るステップをさらに含むことを特徴とする方法。
【請求項２９】
請求項２５に記載の方法において、展開のために少なくとも１つのマクロを生成するステップをさらに含むことを特徴とする方法。
【請求項３０】
請求項２５に記載の方法において、少なくとも１つの支援ツールにアクセスするステップをさらに含むことを特徴とする方法。
【請求項３１】
請求項２０に記載の方法において、オンライン環境で使用されることを特徴とする方法。
【請求項３２】
請求項１に記載のシステムにおいて、オンライン環境で使用されることを特徴とするシステム。
【請求項３３】
請求項１に記載のシステムにおいて、前記出力が少なくとも１つの表示ページであることを特徴とするシステム。
【請求項３４】
請求項２０に記載の方法において、前記出力が少なくとも１つの表示ページであることを特徴とする方法。
【請求項３５】
複数言語ページを生成するシステムであって、
出力の生成に使用されるべき言語を指定できるユーザ・アプリケーションと、
複数の埋め込まれたタグを含んだアプリケーション・テンプレートと、
複数のエントリイを持ち言語に関連した少なくとも１つの辞書であって、前記少なくとも１つの辞書の前記エントリイの各々が前記アプリケーション・テンプレートに接続的に関連しているものと、
前記出力のコンテンツを生成するために、前記ユーザ・アプリケーション及び前記アプリケーション・テンプレートからの入力を受取り、前記入力を適当な前記辞書からのデータと結合することができる処理モジュールと、
を含むことを特徴とするシステム。
【請求項３６】
複数言語ページを生成する方法であって、
出力を生成するために使用されるべき言語に関して、ユーザ・アプリケーションから入力を受け取り、
アプリケーション・テンプレートから、データ辞書に対する埋め込まれたタグを含んだ入力を受け取り、
複数のエントリイを持ち、そのエントリイの少なくともいくつかが関連タグ識別子を有する少なくとも１つの言語に関連したデータ辞書にアクセスし、
前記出力を生成するために、適当な前記データ辞書からのデータと前記アプリケシーョン・テンプレートとを一緒にする、
ことを含むことを特徴とする方法。
【請求項３７】
請求項２０に記載の方法において、実時間で実行されることを特徴とする方法。
【請求項３８】
請求項３６に記載の方法において、実時間で実行されることを特徴とする方法。
【発明の詳細な説明】
【０００１】
著作権通知
本特許書類の開示中には著作権保護を受けるものが含まれている。著作権所有者は、いかなる者の特許商標庁の特許ファイル又はレコードに表れるような特許書類又は特許開示のファクシミリな複製については異議を有さないが、その他についてはどんなことについても全ての著作権を留保する。
【０００２】
優先権主張
本出願は２０００年６月２３日に米国に出願された仮出願「オンライン環境内で複数言語コンテンツを提供する装置及びその方法」、出願番号６０／２１３，７５４の優先権を主張する。
【０００３】
【発明の属する技術分野】
本発明は、一般に、オンライン環境内で複数言語コンテンツを提供する装置及びその方法に関し、より詳細には、ユーザが選択した言語で提供されるようにテンプレートによりウェブ・ページのカスタマイズを自動的に生成する装置及びその方法に関する。
【０００４】
【発明の背景】
ワールド・ワイド・ウェブなどのオンライン環境では、コンテンツ提供者のウェブ・ページがそのコンテンツ提供者の第１言語を持たないユーザによりアクセスされる場合がしばしばある。これは問題を有する。コンテンツ提供者は普通、最新の更新された情報を提供したいと欲するが、別の言語への翻訳は普通、かなりの時間がかかる。
【０００５】
この問題を解決するための伝統的な方法は、普通、開発者は（人間の）言語翻訳者及びおそらくウェブ・サイトデザイン者の協力も受けて、翻訳を行ないそして選択した言語で新しいページをマニュアルで作成することが必要である。代替的な方法は、統一的なページ・デザイン及びレイアウトを犠牲にして、オンザフライでページを翻訳することができる。
【０００６】
【発明の開示】
従って、本発明はオンライン環境内で複数言語コンテンツを提供する装置及びその方法を提供することにより従来の装置及び方法の負荷・制約を減少することを目的とする。特に、本発明はユーザが選択した言語で提供されるようにテンプレートによりウェブ・ページのカスタマイズを自動的に生成する装置及びその方法を提供する。元の言語のウェブ・ページは一組のタグが埋め込まれている。これらのタグはウェブ・ページがテンプレートとして動作することを可能にし、各タグは実時間でテキスト、チャート、表、図、データ及び他の情報などの情報を辞書から抽出して、それをウェブ・ページと共に表示するためのポインタとして動作する。使用される辞書、従って、エンドユーザが見る言語は好ましくはユーザに又はユーザのアプリケーションによりサイトを訪問する前に選択される。このようにして、ウェブ・ページは表示される実際の内容に関係無く再デザインできる。一方、実際の内容は画面レイアウトと関係無くして必要に応じて修正できる（実時間辞書内で）。
【０００７】
本発明の実施の形態は、シンプル・サーバー・ページ（ＳＳＰ）を開発プラットホームとして使用するテンプレート技術を組み込んだウェブ・アプリケーション開発システム内で使用できる。ＳＳＰはアプリケーションを異なる言語で素早く利用できる。
【０００８】
テンプレート技術
ウェブ・アプリケーション開発でテンプレート技術を使用すると、ソフトウェア・アプリケーション・プログラムが画面レイアウトの見えるデザイン（又は、ウェブ・ブラウザーに表示できるウェブ・ページ）をソフトウェア・アプリケーションの下にあるロジックから切離すことを可能にする。普通、表示画面の外観はソフトウェアのロジックよりもしばしば変化する。ソフトウェア・プログラマはしばしば良いビジュアル・デザイナーではないから、プログラマがソフトウェアのロジック又は機能の観点に純粋に集中できるようにするため、画面デザインの観点をアプリケーション開発プロセスの外に出すことは合理的に思える。
【０００９】
普通のウェブ・アプリケーションにおいては、画面の外観は画面を生成するために使用されるＨＴＭＬコードにより主として制御される。本発明において具現化されているテンプレート技術はプログラマによりＨＴＭＬコードの大部分を別のテキスト・ファイルの組（テンプレート・ファイル）へ置かせる。プログラム実行中（又は実行時中）に、動的実時間表示画面を作成するために、ＳＳＰエンジンはＳＳＰ埋め込みＨＴＭＬコードをソフトウェア・アプリケーションからのデータと結合する。
【００１０】
ＳＳＰ技術
システムはいくつかの特別な目的をもって設計される。
【００１１】
簡潔性
テンプレート技術を定義することにより、開発者は本質的に自由に別の言語を持つ。テンプレート技術は通常のＨＴＭＬの特徴に加え、別の特徴を有し、そしてこれらの特徴はそれら自身の言語を有する。マイクロソフトのアクテイブ・サーバー・ページ及びアライヤのコールド・フュージョンのように、いくつかの既存のテンプレート技術が存在する。これらの製品の各々は新しい言語を導入し、一般に複雑である。本発明の主な目的はソフトウエアがより早く開発できるように、学習及び使用が単純な言語を定義することである。
【００１２】
この簡潔性と引換えに、ＳＳＰは前述したテンプレート技術と同じ数の特徴を商業的に有用さのために含む必要がない。これはみためほどは悪いトレードオフではない。従来方法では、普通、特徴の組のほんの一部しか使用されない。ＳＳＰは常に全部ではなくとも大部分の特徴を使用する。
【００１３】
複数言語の実時間支援
１つの実施の形態では、ＳＳＰは英語で開発プロセスを支援し、そして、開発者が最小の努力で複数の言語で出力を生成することを可能にする。例えば、多くの英語を話す開発者はどんな外国語も知らない。しかし、多くの顧客又はコンテンツ視聴者は彼らの第１言語として日本語または別の言語を使用する。従って、方法は開発者が彼ら自身の使用（すなわち、開発とテスト）のために主として英語で彼らのソフトウェアを書き画面を作成することができることが望まれるが、外国の言葉を話すユーザのために別の言語で容易に画面を作成できることが望まれる。
【００１４】
また、システムが実行されている状態で翻訳と文法を修正するなど実時間で使用されているどんな言語も調節できることが望まれる。この目的のために、翻訳された言語のテキストは、開発システムの一部としてウェブ・ベースのユーザ・インターフェイスにより保守できる。これはコンピュータでない（すなわち、人間の）翻訳者がどんな外国語テキストをシステムへ入力しそして編集することを可能にする。
【００１５】
最小データ入力
データ要素のタイピングの必要性を最小にすることは、開発者がより少ない時間で画面を生成することを可能にする。特に、普通のテンプレート技術は、ソフトウェア・アプリケーションからのデータ項目を出力画面の対応する表示データ項目と結合することを開発者に要求する。普通、この結合は、ソフトウェア・アプリケーション内で各データ項目の名前を示し、そしてテンプレート・ファイル内で再びその名前を示すプログラムを作成することを含む。ＳＳＰ技術の使用はこの二重タイピングを省略する。
【００１６】
【発明の実施の形態の詳細な説明】
ここに開示される本発明は、複数言語コンテンツ・ページを作成する開発システム及び方法に関する。本発明はここに開示された実施の形態に限定されるものではないことを理解すべきである。本発明の完全な理解を与えるために数々の詳細な説明がなされる。しかし、当業者には明らかになるように、本発明を実施するには特定の詳細を用いる必要はない。
【００１７】
図１は、エンドユーザに言語特定ページを提供するためにどのようにさまざまなコンポーネントが相互作用するかを示す、アプリケーション開発プロセスの実施の形態の全体図を示す。ＳＳＰエンジンが、言語辞書から情報を動的に抽出しウェブ・ページ上に実時間で情報を表示するためにアプリケーション及びＳＳＰファイルを操作する。本発明の実施の形態５において、ユーザは選ばれた言語でウェブ・ページ・コンテンツを要求する。システムは自動的に言語選択を認識して、言語辞書を選択して適当なコンテンツを生成する。
【００１８】
図１に示すように、ユーザ１９はユーザ・アプリケーション１０を操作する。アプリケーションを操作する前のあるポイントで、おそらくインストレーション又はコンフイギュレーション・プロセスの際、ユーザ・アプリケーションは特定の目標言語のコンテンツを要求するように設定される。そのポイントから先は、目標言語が変更されるまで、ユーザ・アプリケーションはその言語でコンテンツを要求する。１つの実施の形態では、ユーザ・アプリケーション１０はジャバ・コール又はサブルーチン１１を介してジャバ・アプリケーション１２をコールする。ある実施の形態では、ジャバ・アプリケーション１２はユーザが操作するユーザ・アプリケーションとして単独で動作する。ジャバ・アプリケーションはその重要性が以下に説明される１つ又は複数のデータベース２０又はデイレクトリイにクラス定義１３を有する。ジャバ・アプリケーションはさらにＳＳＰエンジン・サーバー・プロセスへのコールを含む。
【００１９】
ＳＳＰファイル１４は、普通、ユーザがシステムにアクセスする前に用意される。ＳＳＰファイルはＳＳＰ特有命令及び標準ＨＴＭＬコードの両方を含む。そのため、それはＳＳＰデータをコールし、そして結果としてのページ１８の視覚的レイアウトを提供する役割をする。ＳＳＰエンジン１６は、ジャバ・アプリケーション１２及びＳＳＰファイル１４からの両方の入力を受取る。追加の情報はこのポイントで、第３者コンテンツ・プロバイダなどのシステム自身の外部の他のソース１５から結合される。この方法で、ＳＳＰエンジン１６は構成プログラム／ファイルから必要な情報を抽出し、そして１つの実施の形態ではＨＴＭＬコード１７出力であってよい表示されるウェブ・ページ１８への出力を生成するための実行時コンパイラーとして動作する。全体のプロセスはここでは「展開」と呼ばれる。
【００２０】
図２は、ユーザから又はアプリケーション１０２からの使用される言語に関する入力が受取られる類似のプロセス１００を示す。そして、入力は、データ辞書への埋め込まれたタグを含んだアプリケーション・テンプレート１０４から受取られる。そして、各エンリトイが関連する言語識別子及びタグ識別子を有する少なくとも１つのデータ辞書がアクセスされる。そして、アプリケーション・テンプレートは、所望の出力を生成するために適当なデータ辞書１０８からのデータと一緒にされる。
【００２１】
本発明の新規な特徴は、一組のデータベース又は辞書２０から情報又はデータ・コンテンツを識別して抽出するために埋め込まれたコードを使用することである。辞書の組２０は、各目標言語２２、２３についての辞書を含むことができる。それはまた特定の言語２１に特有でない辞書も含む。このような辞書は例えば、いずれの目標言語においても認識されるデータ・コンテンツ（例えば、数値フォーマットの）を含むことができる。
【００２２】
ユーザ・アプリケーションがすでに特定の目標言語に予め設定されているため、システムはどちらの言語辞書２２、２３が出力のために使用されるべきかを知っている。ＳＳＰエンジンがこのようにＳＳＰファイルをコンパイルする時、それは２５を適当な言語辞書からの適当な情報の可変の位置（例えば、コンテンツ・マクロ）に挿入する。
【００２３】
本発明の特定の実施の形態において、ＳＳＰエンジンは１つ又は複数の言語辞書２４の内容を更新するために情報（例えば、ユーザ・アプリケーションから得られるように）を使用する。辞書はまた外部手段により更新できる。１つの実施の形態では、人間の翻訳者３０がシステムにより必要とされるテキスト又はコンテンツの翻訳を実行する。この翻訳はシステム上で実時間でなされるか、又は、別の場所でオフ・ライン方法でできる。そして、新たに翻訳された情報は適当な言語辞書に直接にアップロードされる。ＳＳＰエンジン１６が常に辞書からの最も新しい情報でＳＳＰファイルを動的にコンパイルすることによりユーザ・アプリケーションに応答するため、新しく翻訳された情報は実時間のように見える。ウェブ・ページの全体のデザイン（ＳＳＰファイルにより定義されるように）は同じままであるため、情報を含んだウェブ・ページを再開発する必要が無い。修正されたコンテンツはユーザのシステムに表示のために送られる前にシステムにより自動的に挿入又は展開される。
【００２４】
ＳＳＰプロセス
ＳＳＰエンジンの使用は次ぎのステップを含む。
【００２５】
Ｉ．出力を定義するためにＳＳＰファイルを作成する。このファイルは、展開のための１つ又は複数のマクロを特定するＨＴＭＬ及びＳＳＰデイレクテイブを含む。このステップはプログラマー自身、又は、アプリケーション・プログラマーと同じ熟練セットを必ずしも必要としない別の人、ＳＳＰ作者、により達成できる（コード例２）。
ＩＩ．ジャバ・プログラムにおいて、１つ又は複数のジャバ・オブジェクト又はデータ変数が、マクロ・マップを作成してそのマップをエンジンに加えることによりＳＳＰエンジンに利用可能となる（コード例１）。
ＩＩＩ．同じジャバ・プログラムにおいて、名前が付けられたＳＳＰファイルから出力を展開上で生成するために、ａｔ．ｓｓｐ．Ｓｅｒｖｅｒ方法がコールされる（コード例１）。
【００２６】
以下に示されるコード例１が、ａｔ．ｓｓｐ．Ｓｅｒｖｅｒプロセスをコールするために使用されるジャバ・プログラムの単純な例である。
【００２７】
コード例１
【表１】
2004502241.tif 000003
次ぎのコード例２が標準のＨＴＭＬとＳＳＰ特有コードを含んだＳＳＰの例を示す。
【００２８】
コード例２
【表２】
2004502241.tif 000004
【００２９】
コード例２に示されるサンプル・プログラムは、もし、オブジェクトＭｙＣｌａｓｓ ｃが、「４５３．２３」のフィールド値と「ｏｔｈｅｒ ｓｔｒｉｎｇ」を有するならば、英語で次ぎのＨＴＭＬ出力を生成する。
【００３０】
コード例３
【表３】
2004502241.tif 000005
【００３１】
自動的クラスフィールド抽出
プログラマは、一つのコールによりＳＳＰエンジンに複雑なジャバ・オブジェクトを送ることができる。プログラマは、個別のデータ・フイールドをネームして送る必要がない。例えば、複雑なアカウント・オブジェクトがあるシステムにおいて、その一部が以下のコード例４に示されている。
【００３２】
コード例４
【表４】
2004502241.tif 000006
【００３３】
そして、プログラマは、一つのユニット（コード例５に示される）としてオブジェクトを単に送ることにより、アカウント・オブジェクトをＳＳＰシステムに送ることができる。
【００３４】
コード例５
【表５】
2004502241.tif 000007
【００３５】
アカウント・オブジェクト内の全てのフイールドが利用可能なため、プログラマ又はＳＳＰ作者は、後のステージで元のソース・プログラムを変更すること無しにどのフイールドが出力デイスプレイで使用されるかを決定できる。特に、パブリック・スコープを有するいずれのデータ・フイールド又はサブ・フイールドが使用のために利用可能である。
【００３６】
自動的スマートデート・フイールド抽出
上記のコード例４において、ＳＳＰエンジンはシステム特別フイールド・スマートデータを理解した。スマートデート・データ・フイールドを見て、ＳＳＰが自動的にスマートデート値から４つの名前のついたマクロを作成する。もしスマートデート・マップが「デート」と呼ばれた場合、ＳＳＰエンジンはＳＳＰテキスト・フアイルの４つのフイールド：ｄａｔｅ．ｙが年数、ｄａｔｅ．ｍが月数、そしてｄａｔｅ．ｄが日数であるストリングとしての日付であるｄａｔｅ、を利用可能にする。
【００３７】
スマート・オブジエクト展開実現
ＳＳＰエンジンは、ａｄｄＭａｐインターフェイスを介してＳＳＰエンジンへ送られたどんなオブジェクトを解析しそして出会った各データ・フイールドに対してマクロを生成するために、内部的にジャバ言語リフレクション・サポートを使用する。これは、どのデータ・フイールドが出力生成のために必要であるかの決定を延期する。全てのデータ・フイールドがＳＳＰエンジンに利用可能である。
【００３８】
オブジェクトについてのマップを受取る際、ＳＳＰエンジンはそのクラス内の各データ・フイールドを帰納的に構文解析し、そしてデータ・フイールド名をマップ名への添え字として使用して、アクセス可能なデータ・フイールドの各々に着いて内部的にマクロ・エントリイを作成する。
【００３９】
自動的リスト・ボックス生成
しばしば、データ・フイールドは、値の可能な組の一つの値を表す。例えば、ジェンダー・フイールドは「男」又は「女」のいずれかを含むことができる。電話番号タイプ・フイールドは、家の電話、職場の電話、フアックス、携帯電話等についての値を含むことができる。ＳＳＰエンジンは、この種類のデータ・フイールドのサポートを構築する。このタイプのデータ・フイールドを使用するために、開発者は以下のことをしなければならない。
【００４０】
１．エニュメレーション・クラスＥｎｕｍからサブクラスされたジャバ・データ・クラスを定義する。
２．データベース・テーブルを定義して、そして英語と日本語の両方で可能な値の組をテーブルに記憶する。各エニュメレーション・タイプは、データベース・テーブルを要求する。
３．ジャバ・クラスと支援テーブルが適正に定義されると、ＳＳＰ作者は他のどんなマクロと同様にエニュメレーション・データ・タイプのデータ・フイールドを参照できる。ＳＳＰエンジンはデータ・フイールドにより定義された値を探し、そして読み出し専用フイールドとして現在データ・フイールド値に対して現在言語に関連したテキスト・ストリングを出力する。
４．もしＳＳＰ作者が入力／編集フイールドを出力したい場合、ＳＳＰ作者は「特別」マーカー文字をマクロの終わり−感嘆ポイントへ付加する。感嘆ポイントを見て、ＳＳＰエンジンはそのデータ・フイールドに対するドロップ・ダウン・リスト・ボックスを生成するＨＴＭＬの組を出力する。
【００４１】
以下のコード例６が、どのようにエニュメレートされたフイールドがドロップ・ダウン・リスト特徴として使用されるかの例である。
【００４２】
コード例６
【表６】
2004502241.tif 000008
【００４３】
ＳＳＰエンジンは、それが表示するドロップ・ダウン値の組内の現在値に対する「選択された」指示子を含む。
【００４４】
フォーマットされた数値フイールド表示
ＳＳＰエンジンは、浮遊点数値を表示する時、特定の数の少数位置を持つ出力にフォーマットすることがしばしば好ましいことを認識する。ＳＳＰ作者は、「特定」感嘆ポイント文字をマクロ名の終わりに最初に付加することにより、フォーマット記述ストリングをマクロ展開ＳＳＰデイレクテイブの終わりに追加できる。（コード例７）：
【００４５】
コード例７
【表７】
2004502241.tif 000009
【００４６】
ジャバ・テキスト小数フォーマット・ストリングに対して有効な小数フォーマット・ストリングであるいずれのフォーマットも動作する。
【００４７】
ＳＳＰ言語シンタックス
シンプル・サーバー・ページは、ＨＴＭＬ及び、選択的に、ＳＳＰデイレクテイブ又は命令で、コードされたウェブ・ページ出力を含む。１つの実施の形態では、全てのＳＳＰデイレクテイブは、通常のＨＴＭＬシンタックスではない特定の文字シーケンスで開始する。以下に示される例では、全てのデイレクテイブは、カールされた開いたブレース文字の２つの組で開始し、キーワードと特別の記号の一続きが続く。
【００４８】
コメント・デイレクテイブ
コメント・デイレクテイブは、ＳＳＰ作者がＳＳＰファイル中にコメントを挿入することを可能にする。コメントは出力の一部としては送られない。従って、作者は、エンドユーザがそれらを見ないこと知りながらコメント・デイレクテイブを使用してＳＳＰ中にいかなるドキュメンテーションを置くことができる。
｛｛％＊Ａｎｙ ｔｅｘｔ ｃａｎ ｍａｋｅ ｕｐ ｔｈｅ ｃｏｍｍｅｎｔ．｝｝
【００４９】
マクロ置換え
マクロ・デイレクテイブは、実行時中のソフトウエア・プログラム内のプログラミングにより与えられる対応するデータ項目とマクロ・デイレクテイブを置換える。
【００５０】
【表８】
2004502241.tif 000010
【００５１】
条件付デイレクテイブ
条件付デイレクテイブは、利用可能性が定義されているかどうかに基づいて出力の選択的な表示を可能にする。
【００５２】
【表９】
2004502241.tif 000011
【００５３】
包含デイレクテイブ
包含デイレクテイブは、１つのＳＳＰフアイルが別のＳＳＰフアイルの内容中に入り込むことを可能にする。このデイレクテイブは、ＳＳＰ作者が共通に使用される出力を共有フアイル内に置くことを可能にする。
【００５４】
｛｛％ＩＮＣＬＵＤＥ ｉｎｃｌｕｄｅｄ＿ｆｉｌｅ＿ｎａｍｅ  ｏｐｔｉｏｎａｌ＿ａｒｇｕｍｅｎｔ｝｝
選択的な独立変数（ｏｐｔｉｏｎａｌ ａｒｇｕｍｅｎｔ）は、包含されるフアイル中に数値変数｛｛１｝｝、｛｛２｝｝等として利用可能である。
【００５５】
ルーピング・デイレクテイブ
ルーピング・デイレクテイブは、同じマクロ変数の複数のインスタンスの表示を可能にする。
【００５６】
【表１０】
2004502241.tif 000012
【００５７】
展開タイプ
ＳＳＰエンジンは展開する変数のデータタイプを理解する。特に、それは以下のデータタイプを識別する。
・スマートデート
・Ｅｎｕｍ
・チエックボックス
・ダブル
当該技術分野について知識を有する者には明らかなように、他のデータタイプも含めることができ、ＳＳＰエンジンにより理解でき。そして、これらは本発明の精神と範囲の中に含まれる。
【００５８】
複数言語支援
複数言語マクロ
複数言語マクロは、次ぎのフォームを有する。
｛｛：Ａ＿ｗｏｒｄ＿ｏｒ＿ｓｅｎｔｅｎｃｅ｝｝
この例では、ＳＳＰ作者は先頭にコロン文字を持つＳＳＰ括弧内に単一の単語（又は、複数の単語）を囲んでいる。実行時中の展開の際、もし出力言語が英語であるとして決定されたならば、ＳＳＰエンジンはスペースと置換えられたいずれの下線付き文字を持つ単語又は複数の単語を単に繰り返す。ＳＳＰ作者又は開発者は英語で入力された出力を正確に見ることができる。
【００５９】
もしＳＳＰエンジンが始めてマクロに出会う場合、それはマクロをデータベース内のＳＳＰ辞書内に保存する。識別のために、ＳＳＰエンジンは単語の大文字、小文字を無視できる。
【００６０】
もし出力言語が他の言語に設定されている場合、ＳＳＰエンジンはその言語について対応するエントリイが存在するかどうかを決定するために辞書内のこのマクロを探す。もしこのようなエントリイが存在すれば、翻訳されたテキストが元の英語のテキストの代わりに展開の際に出力される（そして、その後に表示される）。
【００６１】
複数言語メッセージ
時々、複数言語マクロ・フアシリテイはより長い文章のテキストを支援するには十分ではない。より長いテキスト文章又はパラグラフ全体に対しては、英語の元のテキストをコロン形式で入力する方法を使用することは実際的ではない。これらの文章タイプに対しては、ＳＳＰはメッセージ・クラスを支援する。
【００６２】
メッセージ・クラスは、独特なメッセージ番号と対応する記号名の組を定義する。ＳＳＰフアイルにおいて、ＳＳＰ作者はメッセージ記号名を指定することにより、メッセージを指定できる。
｛｛＃ｍｅｓｓａｇｅ＿ｎａｍｅ｝｝
【００６３】
メッセージ実現
ＳＳＰエンジンが展開プロセス中にメッセージ・レファレンスに出会う時、それはデータベース・テーブルからメッセージ番号を見る。もしメッセージ番号が見つかると、現在の言語設定に依存して、英語又はメッセージ・テーブル中の翻訳されたテキストを画面に出力する。
【００６４】
プログラミング・インターフエイス
プログラマーは、ＳＳＰエンジンを呼び出すためにＳＳＰジャバ言語プログラミング・インターフエイスを使用できる。一つの実施の形態では、主実行時インターフエイスが、ａｔ．ｓｓｐ．Ｓｅｒｖｅｒオブシェクトにより提供される。設定言語メソッドは次ぎのＳＳＰ処理のための実行時言語を設定する。クリア、マップ追加、及び、マップ除去メソッドは、ＳＳＰマクロへの値の結合又は割当てのインターフエイスを提供する。サーバ方法はＳＳＰフアイルを処理することで指定されたＳＳＰフアイルからの画面出力を生成し、そしてマップ追加メソッドを使用する前にファイル中に定義された結合された変数をもったどんなマクロも展開する。
【００６５】
翻訳メソッドは、現在言語設定への翻訳ストリングへの直接のアクセスを提供する。このメソッドは、ジャバ・プログラムがＳＳＰエンジンを使用する必要無くして言語辞書を使用することを可能にする。
【００６６】
翻訳フアシリテイ・インターフエイス
アプリケーション・サーバーは、複数言語支援を管理するために言語翻訳者のために３つの特別な内部機能を有する。第１の機能は、翻訳者が基本辞書と関連した辞書テキストを追加又は編集することを可能にする。翻訳者は、辞書内の全ての単語又は句をリストしたり探索できる。辞書エントリイを探し出した後、翻訳者はウェブ・ブラウザー・インターフエイスを使用して英語又は翻訳されたテキストを編集できる。
【００６７】
第２の機能は、翻訳者が列挙されたデータ・フイールドに関連したデータ値の組を編集することを可能にする。１つの実施の形態では、主画面は翻訳者が列挙されたデータ・フイールド組の一つを選択することを可能にする。組が選択されると、翻訳者は英語又は翻訳されたテキストにおいて各個別の可能なデータ値を編集できる。
【００６８】
第３の機能は、翻訳者がどんな特定の定義されたメッセージ番号に対応した英語又は翻訳されたテキストを編集することを可能にする。
【００６９】
支援ツール
本発明ではいくつかの支援ツールが使用できる。例えば、レポート・ツールが、選択的にＳＳＰフアイル内に定義された複数言語テキストを抽出して、いずれのＳＳＰテキスト・フアイルについてオフライン・シンタックス検査をする。
【００７０】
【産業上の利用可能性】
本発明のその他の特徴、観点及び目的は図及び特許請求の範囲の請求項の記載から得ることができる。
【００７１】
本発明の他の実施の形態を開発することがてき、そして本発明及び請求項の精神及び範囲内に含むことができる。当該技術に知識を有する者には、ここに説明された特定の詳細は本発明を実施するのに必要でないことが明らかである。
【図面の簡単な説明】
【図１】複数の言語でウェブ・ページを提供できる本発明の実施の形態のシステムの概略を示す図。
【図２】本発明の１つの実施の形態による方法のフローチャートを示す図。
【図１】
2004502241.tif 000013
【図２】
2004502241.tif 000014
【国際公開パンフレット】
2004502241.tif 000015
2004502241.tif 000016
2004502241.tif 000017
2004502241.tif 000018
2004502241.tif 000019
2004502241.tif 000020
2004502241.tif 000021
2004502241.tif 000022
2004502241.tif 000023
2004502241.tif 000024
2004502241.tif 000025
2004502241.tif 000026
2004502241.tif 000027
2004502241.tif 000028
2004502241.tif 000029
2004502241.tif 000030
2004502241.tif 000031
2004502241.tif 000032
2004502241.tif 000033
2004502241.tif 000034
2004502241.tif 000035
2004502241.tif 000036
【国際調査報告】
2004502241.tif 000037