JP2010504591A - 共通コンポーネントフレームワーク - Google Patents

共通コンポーネントフレームワーク Download PDF

Info

Publication number
JP2010504591A
JP2010504591A JP2009529252A JP2009529252A JP2010504591A JP 2010504591 A JP2010504591 A JP 2010504591A JP 2009529252 A JP2009529252 A JP 2009529252A JP 2009529252 A JP2009529252 A JP 2009529252A JP 2010504591 A JP2010504591 A JP 2010504591A
Authority
JP
Japan
Prior art keywords
component
container
interface
data
user
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.)
Pending
Application number
JP2009529252A
Other languages
English (en)
Inventor
ホルムズ,レイモンド,ダグラス
ルング,コーク,ピン
タイルデスレイ,マイク
ツェ ホウ,アドリアン チュー
コルバ,ニコラス
Original Assignee
ロイターズ アメリカ,アイエヌシー.
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 ロイターズ アメリカ,アイエヌシー. filed Critical ロイターズ アメリカ,アイエヌシー.
Publication of JP2010504591A publication Critical patent/JP2010504591A/ja
Pending 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/543User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

共通コンポーネントフレームワーク(CCF)は多階層ソフトウエアアプリケーションにおける通信用のコンテナインターフェース及びコンポーネントインターフェースを提供する。コンポーネントコンテキストデータは、コンテナ内で実行するコンポーネントの最新の状態を記述するコンテナへ及び該コンテナから送信され得る。コンテキストデータはコンポーネントと相互作用するユーザーによって確認した特殊なエンティティ(例えば会社又は株券)に相当し得る。コンテナは、コンポーネントの振舞いを同期化しかつコーディネートするために異なったコンポーネント間でコンテキストデータを通信し得、比較的頑丈で一貫したユーザー経験をもたらす。コンポーネントコンテキストデータに加えて、特性、メニューオプション及びデータフィールドのような他の情報がコンテナとコンポーネントとの間で送信され得、ウェブに基づくコンポーネントをコンテナにより完全に結合するのをサポートする。
【選択図】 図2

Description

本発明は、総括的にはソフトウエアアプリケーションにおけるオブジェクト間の通信方法に関するものである。さらに特に、本発明はコンテナアプリケーションとコンテナ内のコンポーネントソフトウエアオブジェクトとの間に確立されたジェネリック通信フレームワークに関する。
ソフトウエアアプリケーションは、普通、ソフトウエアコンテナアプリケーション内で実行するモジュラコンポーネントに基づく多段アプリケーションとして実行される。これらのコンテナ・コンポーネントアプリケーションは、開発、可搬性及び拡張性において利点がある。コンテナアプリケーションは、トランザクション、セキュリティ、及びコンポーネント管理機能を処理でき、コンポーネントの開発者は自分のコンポーネントによって実行される特定の機能性に集中できる。さらに、コンテナは多数のコンポーネント間でコーデイネートでき、コンポーネントの各々と同時に通信することによって振舞いを同期化できる。
これらの利点が実現され得る前に、コンテナアプリケーションとそのコンポーネントとの間で有効な通信標準が確立されなければならない。これは、コンポーネント及びコンテナの両方が多数の異なるオブジェクトタイプの任意の一つであり得るので、努力目標であり得る。例えば、コンポーネントは、単一HTMLページ、ウェブに基づくオブジェクト、或いはアプリケーションオブジェクトの例として実行され得る。任意のウェブに基づくオブジェクトの場合、コンテナは別のウェブページ、或いはディスクトップコンテナアプリケーションである。通信の困難性を解消する先行技術の一つの方法では、固有のコンポーネントを備えたコンテナの使用が伴う。ディスクトップコンテナアプリケーションが、特にそのコンテナ内で使用するように設計した固有のコンポーネントを含んでいる場合、これらのいわゆる“スマート”コンポーネントはコンテナ環境内に密に一体化され得る。例えば、スマートコンポーネントは別個のポップアップウインドウで始まるよりむしろコンテナ例の柔軟なシート(例えばコンテナウインドウにおけるタイル又はタブのような)内に直接配置され得る。同様に、コンポーネントは比較的頑丈な機能性をサポートし、そしてコンテナの柔軟なパラダイム内に完全に一体化され得る。
しかし、ウェブに基づくコンポーネントは、固有のスマートコンポーネントのようにコンテナに密に一体化され得ない。従って、典型的なコンテナアーキテクチュアにおけるウェブに基づくコンポーネントは、しばしば限定された機能をサポートし、論理的なユーザー経験を殆どもたらさない。さらに、上述のように、コンテナ内でランする固有のスマートコンポーネントはしばしば特定のコンテナアプリケーションに対して特別に設計されなければならない。その結果、スマートコンポーネントはしばしば他のコンテナ内では動作できず、コンテナ・コンポーネントソフトウエアアプリケーションの主要な利点の多くを無にしている。
従って、多段ソフトウエアアプリケーションにおいてはコンテナとコンポーネントとの間の通信システムの必要性が残っている。
上記の課題に鑑みて、本発明は、多段ソフトウエアアプリケーションにおけるコンテナとコンポーネントソフトウエアオブジェクトとの間の通信用共通コンポーネントフレームワーク(CCF)を提供する。
本発明の一つの特徴において、コンポーネントはコンテナにおける登録機能の呼び出しを行う。この機能を用いることにより、コンテナ及びコンポーネントは、ジェネリック機能の呼び出し及びその他におけるデータ要求を実行するのに用いたCCFインターフェースポインターを交換し得る。ある実施形態では、インターフェースポインターのこの交換はコンポーネントの具体例の近くで生じ得るので、第2の機能呼び出しはコンポーネントがコンテナから呼び出し及びデータ要求を受ける準備ができていることを知らせるために登録機能の幾分後に用いられ得る。コンテナ及びコンポーネントによってこれらのインターフェースが一度確立されると、いずれかの側で範囲内で行われている他のユーザーアクション或いはその他の状態変化を通知し、通知したコンテナ又はコンポーネントが変化に基いてそれの振舞いをコーディネートする適切なアクションを取り得るようにする。
別の特徴において、CCFインターフェースポインターの交換の後、ユーザーは、例えばコンポーネントにおけるユーザーインターフェースコントロールをクリック又は選択することによってそのコンポーネントにおいてコンテキスト変化を生じさせる。例として、コンテキスト変化は財務データ又はニュース及び分析を行うコンポーネントにおいて財務上の実体(例えば会社、株券、債券、市場など)の選択に相当し得る。コンテキストの変化に応じてコンポーネントは、コンテナの変化を知らせる事象を送り、新しいコンテキストを提供する。コンテナは、必要ならばコンテキストデータを変換して、新しいコンテキストデータを、コンテナ内でランしている一つ以上の他のコンポーネントへ伝送する。従って、異なる機能を行うように別個に設計され開発されたコンポーネントでもCCFインターフェースを通してコンテナによってコーディネートされそして同期化され得、それによりユーザーに、より途切れない固有の経験をもたらす。
さらに別の特徴によれば、コンテキスト変化は、コンポーネントにおける一つのユーザーインターフェースコントロールの、同一コンテナでランしている別のコンポーネントへのユーザードラッグアンドドロップ操作によって生じ得る。コンポーネント間のドラッグアンドドロップサポートは、ユーザーにユーザーの選択の特定のコンポーネントへコンテキストをドラッグさせ得、或いは一つのコンポーネントのユーザーインターフェースから別のコンポーネントへ特殊なデータフィールドをユーザーにドラッグさせ得る。この機能の例として、財務データ検索コンポーネントによって戻されたサーチ結果は、同じコンテナ内でランしている近くのスプレッドシートコンポーネント(例えばマイクロソフトエクセルオブジェクトインスタンス)内へドラッグされ得る。
本発明のこれらの特徴並びにその他の輪転及び特徴は本発明の以下の詳細な説明、特許請求の範囲及び添付図面から明らかであり理解される。
本発明は例として添付図面に例示されるがそれらに限定されず、添付図面において同じ参照番号は同様な要素を示している。
本発明の特徴による計算環境のブロック線図を示す。 本発明の特徴によるソフトウエアコンポーネントアーキテクチャのブロック線図を示す。 本発明の特徴によるコンポーネントとコンテナとの間の通信を例示しているフロー線図である。 本発明の特徴による共通コンポーネントフレームワーク(CCF)機能の実行を例示しているフロー線図である。 本発明の特徴によるCCFコンテナ内のCCF作動型コンポーネントとのユーザー相互作用を説明しているスクリーン画面を示す。 本発明の特徴によるCCFコンテナ内のCCF作動型コンポーネントとのユーザー相互作用を説明しているスクリーン画面を示す。 本発明の特徴によるCCFコンテナ内のCCF作動型コンポーネントとのユーザー相互作用を説明しているスクリーン画面を示す。 本発明の特徴によるCCFコンテナ内のCCF作動型コンポーネントとのユーザー相互作用を説明しているスクリーン画面を示す。 本発明の特徴によるCCFコンテナ内のCCF作動型コンポーネントとのユーザー相互作用を説明しているスクリーン画面を示す。
以下の種々の実施形態の説明において、本発明の一部を成す添付図面が参照され、添付図面には本発明を実施し得る種々の実施形態を例示している。他の実施形態を利用でき、そして本発明の範囲から逸脱することなしに構造及び機能を変更できることは理解されるべきである。
本発明はソフトウエアオブジェクト通信に関するものであるので、最初に適当な汎用計算システム環境について説明する。一つ以上の特徴を実施し得るコンピュータ100は、適当な計算環境のほんの一例にすぎず、明細書で説明する使用の範囲又は特徴の機能性に関していかなる限定も提示するものではない。
実例としての計算環境
図1には、本明細書に記載した一つ以上の特徴が実施され得る計算環境を示している。コンピュータ100のような計算装置は、データを入力し、出力し、記憶し及び処理する種々のコンポーネントを内蔵し得る。例えば、プロセッサ105は、一つ以上のアプリケーションを実行し、記憶装置115のような記憶装置からデータを検索し、及び/又はディスプレイ120のような装置へデータを出力する種々のタスクを行い得る。プロセッサ105は、ランダム・アクセス・メモリ(RAM)モジュール110に接続され得、このRAMモジュール110にはアプリケーションデータ及び/又は命令が一時的に記憶され得る。RAMモジュール110は任意の順序で記憶され、アクセスされ得、RAMモジュール110における記憶場所に等しくアクセス可能である。コンピュータ100はさらに読取り専用メモリ(ROM)112を備え得、このROM112は、そこに記憶されたデータをコンピュータ100の作動停止後に残存又は提供できる。ROM112は、コンピュータ100の基本入出力システム(BIOS)を記憶することを含めて種々の目的のために用いられ得る。ROM112は、さらに、動作停止及び再起動時でも情報を残存するようにデータ及び時間情報を記憶し得る。さらに、記憶装置115は、アプリケーション及びデータファイルを含めた種々のデータについて長期記憶できる。一つの例では、プロセッサ105は記憶装置115からアプリケーションを検索でき、そしてアプリケーションを実行しながらアプリケーションRAMモジュール110に関連した命令を一時的に記憶できる。
コンピュータ100は、種々のコンポーネント及び装置を通してデータを出力できる。上述のように、一つのかかる出力装置はディスプレイ120であり得る。別の出力装置は、スピーカー125のような音響出力装置を含み得る。各出力装置120、125はディスプレイアダプター122及び音響アダプター127のような出力アダプターと組合わされて、プロセッサ命令を相応した音響及びビデオ信号に変換する。出力システムに加えて、コンピュータ100は、キーボード130、記憶メディアドライブ135及び/又はマイクロホン(図示していない)のような種々の入力装置からの入力を受信及び/又は許容し得る。出力装置120、125の場合には、入力装置130、135の各々は、入力をコンピュータで読取り可能/認識可能なデータに変換するアダプター140と組合わされ得る。一つの例では、マイクロホン(図示していない)を通して受信した音声入力はデジタルフォーマットに変換されて、データファイルに記憶され得る。一つ以上の例では、メディアドライブ135のような装置は、入力及び出力装置の両方として作用でき、それにより、ユーザーはデータを記憶メディア(例えばDVD−R、CD−RWなど)に書き込んだり、かかる記憶メディアからデータを読み出したりできる。
コンピュータ100はさらに、ネットワークを通してデータを送受信するための一つ以上の通信コンポーネントを備えることができる。種々の形式のネットワークは、セルラネットワーク、デジタル同報ネットワーク、インターネットプロトコル(IP)ネットワークなどを含む。コンピュータ100はこれらのネットワークの一つ以上を通して通信する用にされたアダプターを備えることができる。特に、コンピュータ100は、IPネットワーク160(例えばLAN、WAN又はインターネット)を通して一つ以上の他のコンピュータすなわち計算装置と通信するネットワークアダプター150を備えることができる。一つの例では、アダプター150は会社又は組織のネットワーク160を通しての電子メールメッセージ及び/又は財務データのようなデータの伝送を容易にさせることができる。別の例では、アダプター150はインターネット160のような国際ネットワークからの情報の受信又は伝送を容易にすることができる。アダプター150は、一つ以上のネットワークプロトコルに関連する一組以上の命令を備え得る。例えば、アダプター150は、IPネットワークパケットを処理するための第1組の命令と、セルラネットワークパケットの処理に関連した第2組の命令とを備え得る。一つ以上の構成では、ネットワークアダプター150はコンピュータ100に対して無線ネットワークアクセスを行い得る。
当業者には認められるように、コンピュータ100のような計算装置は種々のその他のコンポーネントを備えることができ、図1に示す装置及びシステムに限定されない。
実例の特徴
共通コンポーネントフレームワーク(CCF)のソフトウエアアーキテクチャ及びインターフェースの詳細について説明する前に、はじめに以下の説明を行う。CCFは、一つ以上のウェブに基づくソフトウエアコンポーネントとこれらコンポーネントに関連したコンテナとの間の通信を標準化するために用いられ得るインターフェースである。ウェブに基づくソフトウエアコンポーネントは、例えば単純なHTMLウェブページ或いはアクティブXオブジェクトやジャワアプレットのような比較的複雑なウェブに基づくオブジェクトであり得る。コンテナはまたウェブページ或いはウェブに基づく親オブジェクトであり得るが、代わりにコンピュータ100上でランするディスクトップソフトウエアアプリケーションでもよい。例として、ルータのエクストラ・ディスクトップ・ソフトウエアアプリケーションは、CCF作動型コンテナとして機能するように実行され得る。ディスクトップアプリケーションCCFコンテナの一つの潜在的利点は、ディスクトップコンテナ内に取り込まれたネイティブコンポーネントのものと同様な振舞いを示す操作可能なHTMLコンポーネントに関するものである。これらのネイティブ名いわゆる“スマート”コンポーネントは通常コンテナアプリケーション及び従ってしばしば特定のコンテナアプリケーションによって規定される。
図2を参照すると、ソフトウエアコンポーネントアーキテクチャのブロック線図が例示されている。図2において、コンテナアプリケーション210の単一実例は、一つ以上のCCF作動型コンポーネント(例えばコンポーネント240)及び非CCFコンポーネント(他のオブジェクト250〜280)を含めた多くの種々のコンポーネントを収容し得る。上述のように、他のオブジェクト250〜280は、コンテナ内に特定の機能をもたらすように設計したネイティブな(固有の)コンテナ・特定コンポーネントであり得る。コンテナ220はこの例では、コンテナアプリケーション210内でランし、CCFインターフェースのコンテナ側を実行するクライアント・アプリケーション・オブジェクトであり得る。コンテナ220は、アプリケーション210に収納した全ての他のコンポーネント250〜280と同じ又は同様な仕方でコンテナアプリケーション210と通信し得る。
コンテナ220と通信するウェブに基づくCCFコンポーネント240は、マイクロソフト・インターネット・エクスプローラ(IE)・ブラウザのようなインターネット・ブラウザ・アプリケーション230のインスタンス内でランし得る。当然、代わりに他のブラウザ・アプリケーションを用いることができる。ブラウザ・アプリケーション230はIE組み込み可能なオブジェクトの組み込みコピーである。以下に詳しく説明するように、コンポーネント240はCCFコンテナ220と直接通信するので、コンポーネント240は任意の特定の銘柄又は形態のブラウザ・アプリケーション230に依存する必要はない。
コンテナ220が多数のCCFコンポーネント240を収納している場合には、付加的な専用の記憶装置及び多数のコンポーネント240との同時通信を調整(管理)する論理装置が必要とされ得ることが認められる。この調整を行う一つの方法は、各収納したコンポーネント240に対してCCFインターフェースの別個のインスタンスを維持することによる。
図2に示すものと僅かに異なる形態では、コンポーネント240のような多数のCCFコンポーネントは、同じブラウザオブジェクト230内でランする。かかる形態では、ブラウザ230においてランする親ウェブページはそれ自体単一コンポーネントとしてコンテナ220に供給され得ると共に、またそれ自体コンテナとして多数の内部CCFコンポーネント240に供給され得るようにCCFインターフェースのコンテナ側をサポートする。コンテナとコンポーネントとの間を通過するオブジェクト及びデータは、ブラウザ230で実行されるジャワスクリプト・インタープリタ―のネイティブオブジェクト及びデータであり得る。例えば、インターネット・エクスプローラ・ブラウザでは、IEは、IDイズパッチオブジェクト及びVARIANTSをジャワスクリプトタイプにかつジャワスクリプトタイプから自動的に変換する。こうしてCCFコンポーネントはこのブラウザ機能を高めるように実行され得る。
上述のように、コンポーネント240は、ブラウザ230の任意の特定の銘柄又は形態に依存する必要はない。しかし、一つの形態では、CCFコンテナ220インターフェースは、コンポーネント240がマイクロソフト・インターネット・エクスプローラ・ブラウザのインスタンス、及び特にIE COM組み込み可能なオブジェクトのインスタンス内に存在していると仮定する。この例では、CCFコンポーネント240は、コンテナ220を位置決めするためにインターネット・エクスプローラ特定オブジェクト“外部ウインドウ”をアクセスし得る。しかし、コンポーネント240がこのオブジェクトをアクセスできない場合には、結果として“外部ウインドウ”コンテナ220を備えず、それでブラウザ(例えばHTML)コンテナ220を位置決めするように試みされ得ることになる。ブラウザコンテナ220を位置決めするには、コンポーネント240は、ブラウザコンテナ220を備えていることを表すグローバルなジャワスクリプト機能について検索し得る。代わりに、コンポーネント240は、まず、“外部ウインドウ”コンテナ220にアクセスすることをする前に、ブラウザコンテナ220にアクセスすることを試みてもよい。当然、CCF通信は、コンテナ220とコンポーネント240との間に少なくともある通信経路が存在する限り、コンテナ又はコンポーネントを位置決め(特定)しかつアクセスする他の技法を用いてコンテナ220とコンポーネント240との間で可能である。コンポーネント240がコンテナ220との通信を確立しない場合には、コンポーネント240のタイプ及び手段に関連してある特定のコンポーネントが低減した機能をもたらし得るが、それでもランし続け得る。
CCFインターフェースはまた、単にCOMオブジェクトが、普通に知られた技法を用いてコンテナ220とコンポーネント240との間で通過されるように構成される。これらのCOMオブジェクトはIDイズパッチンターフェースを実行し、VARIANTデータタイプのデータを通し得る。“外部ウインドウ”インターフェースはこのCOM/IDイズパッチ通信を要求し得るが、他の通信方法では駄目であることが認識されるべきである。例えば、ブラウザコンテナ220はインターフェースを実行するのにネイティブなジャワスクリプトオブジェクト及び機能を使用し得る。
図3を参照すると、コンテナ220とコンポーネント240との間の通信のステップを例示しているフロー線図が示されている。ステップ301においては、コンポーネント240は、コンテナ220との登録機能すなわちいわゆるハンドシェーク(初期接続)機能を開始する。可能なハンドシェーク機能規定の例を以下に示す。
Figure 2010504591
この例では、機能は新しいコンポーネント240によってCCFコンテナ220において呼び出される。コンポーネント240に戻されるナルでない値は、ハンドシェーク・プロセスが成功したことを表している。さらに、コンテナ220がウェブに基づくオブジェクト(例えば、図2に示すようにIEブラウザにおいてランするHTMLコンテナ)内でランしている場合には、レジスタ・ウイズ・CCFコンテナハンドシェーク機能はブラウザ内でグローバルである。しかし、コンテナ220がブラウザオブジェクトでランしない場合には、レジスタ・ウイズ・CCFコンテナハンドシェーク機能は、代わりに、外部ウインドウ・レジスタ・ウイズ・CCFコンテナを用いて行われ得る。
上記に示したように、レジスタ・ウイズ・CCFコンテナ機能は、その機能をCCF作動型コンポーネント240で呼び出すことができ、CCF作動型コンテナ220はインターフェース・ポインタを交換するためにかかる呼び出しを受信できる。さらに、このハンドシェーク機能を処理している間に、コンテナ220は、例えば、コンポーネント・セションXMLパラメータを解析することによってコンポーネント240でランしているCCFバージョンを決めることができる。ある特定のインプリメンテーション(処理系)においては、バージョン・ナンバー(版数)は、ピリオド(期間)で区切られた三つの別個のパーツ(例えば数)から成り得る。例えば、コンテナ220は、コンポーネント240がCCFインターフェース・バージョン“3.4.5”でランしていることを決めるために、コンポーネント・セションXMLパラメータを解析する。この例では、最初の数(“3”)は、新しいCCFインプリメンテーションが前のバージョンと互換性がない時に変わるだけである主バージョンである。第2の数(“4”)は、CCFインプリメンテーションにおける前のバージョンからのバックワード(逆方向)互換性変化を表している副(従)バージョンを表している。第3の数(“5”)は、CCFインターフェース自体を変えるものではないが、バグを修正したり特定の構成の意味をリファインし得るインプリメンテーションの変化を反映するのに用いられる。CCFバージョンが自体のCCFインプリメンテーションによってサポートされないコンポーネント240でランしていることをコンテナ220が決めると、コンテナ220はナル値をコンポーネント240に戻すことによってハンドシェーク要求を単純に断り得る。
できれば、CCFインターフェースの新しいバージョンは、前のバージョンと逆方向互換性であるように設計され得る。CCFコンテナ及びコンポーネント・インターフェースの新しいバージョンにおけるバックワード及びフューチャ互換性を比較的良好に可能にするために、機能は、予期していない或いは認識していない入力がCCFインターフェースの比較的最近のバージョンと通信することになりそうなので、かかる入力を取り消すように設計され得る。
図3に戻って、ハンドシェーク機能を満足に完了すると、コンテナ220はコンポーネント240からCCF呼出しを受信するように用意がなされる。従って、ステップ302において、コンポーネント240は、CCFコンテナ・インターフェースにおいて規定した機能を呼び出すことにより、コンテナ220における機能を呼び出す。利用可能なCCF機能呼出しについては以下で図4を参照して詳細に説明する。
ステップ303においては、コンポーネント240は“オンロード事象”をコンテナ220へ伝送する。以下で詳細に説明するオンロード事象は、呼出しコンポーネント240が現在CCF機能呼出しを受信する用意ができていることをコンテナ220に指示する。従って、ステップ304において、コンテナ220内のコンポーネント240又は別のコンポーネントによる呼出しについてコンテナ・インターフェース機能を受信しサポートし続けながら、コンテナ220は、CCFコンポーネント・インターフェースにおいて規定した機能を呼出し得る。そして、ステップ305において、コンポーネント240はコンテナ220に“オンロード”事象を伝送し、コンポーネント240がもはやCCF呼出しを許可していないことをコンテナ220に指示することによりかかるコンポーネントを登録しない。オンロードがそれの消去中にコンポーネント240によって典型的に伝送されている間に、コンポーネント240はコンテナ220との通信を再確立するように繰り返し試み続ける。しかし、ある特定のインプリメンテーションにおいては、コンポーネント240は、ステップ301で得られたコンテナ・インターフェース・ポインタを再使用するようにはされない。かかる場合には、コンポーネント240は、コンポーネント220との通信を再開する前に、再び、コンテナのハンドシェーク機能(例えばレジスタ・ウイズ・CCFコンテナ)を呼び出すように要求され得る。
図4を参照すると、CCF機能の実施を例示しているフロー線図が示されている。ステップ401において、機能呼出しは、CCFコンテナ220でか或いはCCF作動型コンポーネント240において受信される。上述のように、CCFコンテナ220は、CCFコンポーネント・インターフェースにおいて規定した、コンポーネント240でサポートされた機能と異なる、CCFコンテナ・インターフェースにおいて規定した、機能セットをサポートし得る。
ステップ402において、受信装置は、どのCCF機能が呼出しによって引き出されたかを決める。この例では、コンテナ220とコンポーネント240との両方によって単に二つだけの可能なCCF機能すなわち“GetData()”及び“ProcessEvent()”機能がサポートされる。コンテナ・インターフェース及びコンポーネント・インターフェースは、同じ機能規定(すなわち同じ数及びデータタイプの入出力パラメータ)をもち得る同一セットのCCF機能を規定し得るので、これは、コンポーネント・インターフェースでサポートされた実際の機能性がコンテナ・インターフェースでサポートされたものと同じであること意味していない。例えば、CCF ProcessEvent()”機能は、事象名称に相応するストリング(文字列)入力パラメータを許容し得、種々のセットの事象はコンテナ220及びコンポーネント240によってサポートされる。CCFコンテナ・インターフェース及びCCFコンポーネント・インターフェースで潜在的にサポートされた事象のリストを以下に説明する。CCFインターフェースに対してこの事象及びデータ回復機能を実行する一つの仕方は以下のインターフェース規定で例示される。
Figure 2010504591
この例では、ICCFオブジェクトはgetDataか又はprocessEvent機能をサポートする。機能規定に示されるように、ICCFObjに対するポインターは両方のICCF方法によって要求された入力パラメータである。パラメータとしてパスした参照ICCFObjは、(processEvent機能によって)伝送される事象或いは(getData事象によって)要求されるデータに相応した“名称”ストリング(例えばBSTR)を含んでいる。参照ICCFObjはまた、事象又は要求を処理するためにコンテナ220又はコンポーネント240によって解析され用いられ得るXML(拡張マーク付け言語)文書の形態の付加的な情報を提供するために、“xmldata(拡張マーク付け言語データ)”ストリング(文字列)を含んでいる。
事象及び回復可能なデータの種々の形態が可能であり、以下ある起こり得る事象及び要求名称について詳細に説明する。しかし、ある形態では、CCF機能呼び出しで通過したICCFObjにおける名称識別子はナルすなわち空値にできない。すなわち、事象名称又は要求されるデータを特定することなしにデータを要求し或いは事象を伝送するあらゆる試みは、結果として呼ぶ側に戻されるエラーとなる。これに対して、xmldata識別子は、多くの事象又はデータ要求が事象又は要求をうまく処理するためにCCFコンテナ220又はコンポーネント240に対して付加的なデータを全く要求し得ないので、しばしばナル又は空値であり得る。
従って、機能呼び出しに関係なく、名称及びxmldataパラメータは、ステップ403において呼び出しを受信するCCFオブジェクトによって解析され、それで所望の事象又はデータ要求は処理され得る。ステップ404において、要求された機能性は実施され、そしてステップ405において、機能戻り値及び/又はデータは機能呼び側に戻される。
図3及び図4に参照して上記で説明したように、コンテナ220及びコンポーネント240は、それぞれのCCFインターフェースを介して事象を伝送しそしてデータ要求を行うことにより相互作用し得る。これらの事象及び/又はデータ要求がなされる時に、データは、CCFスキーマ・ファイルによって特に規定された複合顧客データタイプ(例えば情報タイプ)にパスされる。CCFスキーマ・ファイルは普通、XML文書(例えばXMLスキーマ定義(XSD)ファイル)として実施され、そしてCCFコンテナ及びコンポーネント機能性を実行するJavaScriptファイルと共にコンピュータ100にダウンロードされる。普通に知られているように、XSDファイルは、XML要素及び属性の項目で、いかなるデータ値及びタイプに基いて要素及び属性が記憶し得る条件と共に情報タイプを規定できる。他のXML文書と同様に、XSDは、受信するソフトウエアコンポーネントによって解析されそして適切なタイプのオブジェクト実例(インスタンス)を生成するのに用いられ得る。
情報タイプを規定するサンプルXSDファイルは以下に含まれる。この例では、コンテキストデータ情報タイプを、コンテキストデータXSDファイルによって十分に説明する。タイプ名称はxs:complexType要素の“名称”属性で指定され、またタイプの構造はこのxs:complexTypeタグ内に含まれるもので規定される。従って以下の例では、
Figure 2010504591
反復記号はコンテキストデータタイプの構造を表し、数字やストリングのような簡単なデータタイプのセットを含み得、そしてまたさらに複雑な埋め込みデータタイプも含み得る。以下のコンテキストデータXSDファイルでは、コンテキストデータタイプは一連の実体オブジェクト(<xs:sequence maxOccurs=“unbounded”>tag内の<xs:element ref=“Entity”>tagで表された)及び任意のストリング属性名称付きsearchID(<xs:atribute name=“searchID”type=“xs:string”use=“optional”>tagで表された)を含む。さらに、コンテキストデータXSDファイルでは、実体オブジェクトタイプは同様にして定義される。従って、送信側からXMLデータを受信するソフトウエアコンポーネントは、XMLを解析してタイプ“コンテキストデータ”のオブジェクトを表しているかを決め、そしてコンテキストデータXSDファイルにアクセスして受信したデータの妥当性を確認し、コンテキストデータソフトウエアオブジェクトを構築しそしてXMLファイルから解析した値をもつオブジェクトを生成することができる。
本明細書に記載した多くの可能なCCF事象及びデータ要求において、“コンテキストデータ”データタイプの実体は、CCFコンテナとコンポーネントとの間の最も頻繁にパスした情報である。その最も単純な形式では、コンテキストデータ実体は、単一エンティティ(例えば、財務上の実体(例えば会社、株券、債券、市場、土地など)を、そのエンティティの一つ以上の識別子(例えばRIC、CUSIP、ISINなど)を記憶することにより記載し得る。他の場合には、コンテキストデータ実体は、主エンティティと関連するフィールド(すなわち名称値対)及び/又はサブエンティティオブジェクトを表す多くの複合データを保持し得る。コンテキストデータ実体は、またエンティティのフラット・リストか又は階層木構造として記憶したエンティティのリストから成り得る。
コンポーネント240はコンテナ220内でランしている間に、コンポーネント240は典型的には、コンポーネント240のユーザーインターフェース内に与えられるデータのフォーカスに基いて設定され得る主コンテキストを備えている。コンポーネント240ユーザーが例えばコンポーネントUIにおいて異なるエンティティ項目をクリックすることにより新しいフォーカスを設定すると、それに応じてコンポーネント240はそれの主コンテキストを更新すべきであり、こうしてコンテナ220は最新のコンテキストを得ることができ、そして他のコンポーネントとディスプレイ/アクティビィティを同期化できる。コンポーネント240は、それ自体の主コンテキストを単純に維持する他に、コンテキストメニュー選択のためにユーザーマウスクリック、ダブルクリック、ドラッグ或いは右クリックの形式で付加的なコンテキストをコンテナ220に出力し得る。これらの付加的なコンテキストは他のコンポーネントに入力するためにコンテナ220によって用いられ得る。
Figure 2010504591
Figure 2010504591
コンテナ・コンポーネントCCF通信に適合した情報タイプの幾つかの付加的な例は、XSDファイルとして記載され、下記に参考として挙げられる。
上記で説明したように、コンテナ220及びコンポーネント240がCCFインターフェースポインターを交換すると、それらはそれらのそれぞれのインターフェースを介して相互作用し得る。この相互作用は、図4において例示したように一方から他方へ伝送した事象及び要求の形式を取り得る。以下のセクションは、CCFインターフェースに含まれ得るある特定の事象及びデータ要求についての情報を提供する。同じセットの事象及びデータ要求は両方向において(すなわち、コンテナインターフェース及びコンポーネントの両方において)実行され得るが、単に一方向においてのみ実行される他の事象及び/又はデータ要求があり得る。例えば、コンポーネント対コンテナ事象は、相応したコンテナ対コンポーネント事象がサポートされない場合に、コンポーネント240の最新の状態の表示としてそれのコンテナ220へ伝送され得る。以下の多くのコンポーネント対コンテナ事象はコンポーネントに置けるあるユーザー作用によってトリガーされる。
コンポーネント対コンテナ事象の例
1. オンロード この例では、オンロード事象は、ハンドシェーク作用の後コンテナ220に伝送される最初の事象である。この事象は、コンポーネント240が目下初期化され、そしてコンテナ220からの事象及び要求を許容するように準備されることを表している。この事象で伝送される該データはXML文書としてコンテナ220に伝送されるコンポーネント240の記述である。
2. オンアンロード オンアンロード事象は、コンポーネント240の実体からコンテナ220に伝送される最後の事象である。この事象では、データは伝送されない。この事象に対するプロセス事象作用呼び戻しの後、コンポーネント240はもはやコンテナ220から事象及び要求を受け入れない。しかし、コンテナ220は、この事象の処理中にコンポーネント240へ要求及び/又は事象を伝送し得る。
3. オンクリック オンクリック事象は、コンポーネント240のユーザーインターフェースにおいてコンテナ220のユーザーマウスクリック作用が行われていることを通知する。この事象は、コンテナ240がデータリンクのためにこのデータを使用したい場合に、別のコンポーネントにデータリンクする(すなわちコンポーネント240の出力が別のコンポーネントに対する入力として用いられる)コンポーネント240に対する機構である。この事象に対するデータは、ユーザーがクリックオンしたコンポーネント内のエンティティ(例えば、ユーザーインタフェース制御ボタン、ドロップダウンメニューなど)を記述し、そしてコンテキストデータXSDファイルにおける上述で定義したコンテキストデータ実体の形式を取り得る。
4. オンダブルクリック オンダブルクリック事象は、オンクリック事象と同様であるが、コンテナ220がコンポーネント240のユーザーインターフェースにおいてユーザーダブルクリックを行うことを通知する。
5. オンコンテキストドラッグスタート オンコンテキストドラッグスタート事象は、ユーザーがコンポーネント240に表示されたあるエンティティをドラッグしようとしていることをコンテナ220に通知する。オンクリック事象と同様に、この事象に対するデータは、ユーザーがドラッグしているエンティティを記述する(例えばエンティティコンテキストを記述する)コンテキストデータ データ構造であり得る。オンクリック事象と同様に、この事象は、コンポーネント240から別のコンポーネント内へデータ出力を供給するのに用いられ得る。
6. オンコンポーネントドラッグスタート オンコンポーネントドラッグスタート事象は、ユーザーが全体コンポーネントをドラッグするように試みていることをコンテナ220に通知するためにコンポーネント240によって伝送される。このコンポーネントはコンポーネント240であり得、或いは別のコンポーネント(例えばコンポーネント240のサブディスプレイ)であり得る。ある特定のコンポーネントは、例えばユーザーインターフェースにおいてクロック・アンド・ドラッグについてユーザーのドラッグ“ハンドル”表示することによってドラッグ操作をサポートし得る。この事象は、コンポーネントの最新の状態を記述するデータ構造を提供し、そしてコンテナ220における別の場所においてコンポーネント240を複製することによって用いられ得る。
7. オンコンテキストメニュー オンコンテキストメニュー事象は、ユーザーがコンポーネント240内で右クリックしていることをコンテナ220に通知する。この事象を受信した後、コンテナ220はコンポーネント240のユーザーインターフェースにコンテキストを表示することで応答し得る。この事象は右クリックの位置のスクリーン関連座標のようなデータを、コンポーネント240がコンテキストメニューに加えたいメニューオプションを表す情報と共に提供し得る。さらに、ユーザーの右クリックがユーザーインターフェースエンティティにおいてなされた場合には、データは、エンティティが該事象で伝送され得ることを記述している。
8. オン更新コマンドバー オン更新コマンドバー事象は、ユーザー作用に応じて伝送され得る。事象データは、コンテキストメニュー、ツールバー及び/又はサービスメニューを記述している。この事象を用いて、コンポーネント240は、コンポーネント240がランしている間にこれらのメニュー又はツールバーを顧客対応し得る。例えば、コンポーネント240は、オンコンテキストメニュー事象において特化された値を変えるためにオン更新コマンドバーに新しい値を提供し得る。
9. オンコンテキスト変更 オンコンテキスト変更事象は、コンポーネント240が現在主フォーカスを変更したことをコンテナ220に通知する。事象データは新しいコンテキストを記述している。
10. オン特性変更 オン特性変更事象は、一つ以上の特性の値が変更したことをコンテナ220に通知する。この事象のデータは、変更した特性を記述し、新しい値を含み得る。
11. オンポップアップ オンポップアップ事象は、コンテナ220がコンポーネント240のユーザーインターフェースにCCF作動オンポップアップウインドウを備えたい場合にコンテナ220によってコンポーネントへ伝送される。該事象でコンテナ220によって伝送されるデータは、ポップアップウインドウの好ましいサイズ及び場所に相当し得る。データはまたポップアップウインドウにロードされることになるCCFコンポーネント240の記述も含み得る。
12. オンログ オンログ事象は、コンテナ220のログファイルにおけるエントリーが一つであることを要求するようにコンポーネント240によって伝送される。コンポーネント240はこの事象を用いてコンポーネントの重大な出来事(ハプニング)(例えばエラーの発生、ユーザートランザクションなど)を記録し得る。事象データは、ログすべきメッセージのテキスト及び重大度(例えば臨界、高い、警告、情報、デバッグなど)を含んでいる。ある特定のログしたメッセージは、例えばCCFコンポーネント240におけるエラーをデバッグするため、ユーザーによって読取られることなる場合に付加的なユーザー便宜のためにローカライズされ得る。
コンポーネント対コンテナデータ要求の例
1. 永続データ 永続データ要求は、例えばコンテナ220が保存コピー、コンポーネントドロップ、コンポーネントペーストから、或いはポップアップ事象に応じてコンポーネント240を作る際に用いられ得る。このデータ要求でコンポーネント240によってデータは伝送されない。この要求の戻り値は、コンポーネント240の必要な全ての状態情報を含み得、それでコンポーネントはそれの状態を回復できる。例えば、コンポーネント240は、ハンドシェーク機能呼び出しを首尾よくした後でしかもオンロードを伝送する前にこの要求を行い得る。コンテナ220は、コンポーネント240の寿命を通してこの状態データのコピーを保持し得る。
2. 探索 コンポーネント240は探索データを伝送し、コンポーネント240に代わってコンテナ220が探索を行うようにする。この要求で供給されるデータは実行されることになる探索を記述している。
コンテナ対コンポーネント事象の例
下記は、コンテナ220が上記で述べたオンロードとオンアンロードとの間で、コンポーネント240に伝送し得る事象の例である。
1. オンコンテキスト変更 オンコンテキスト変更事象は、コンテナ220で伝送されたコンテキストでコンポーネント240の実体を提供する。事象でパスしたコンテキストデータがコンポーネント240の現在の存在するコンテキスト情報と整合しない場合には、この事象はコンテキストを変更するようにコンポーネント240における要求として機能し得る。事象は別のCCF作動コンポーネントで生じ得、そしてコンテナ220で変換される必要なしに、コンテナ220を介して意図したコンポーネント240へ伝送され得る。他のオンコンテキスト変更事象呼び出しにおいては、コンテナ220はコンテキストをコンポーネント240に伝送する前にこのコンテキストを変換する必要があり得る。或いはそれは未知のタイプの識別子でコンテキストを構成し得そしてその識別子をコンポーネント240へ通して解釈させ得る。
2. オン特性変更 オン特性変更事象は、コンテナ220にコンポーネント240の一つ以上の特性の値を変更させ得る。変更すべき特性に相応したデータはこの事象で伝送され得る。コンポーネント240は、コンポーネント240に対する読み取り専用特性又は非存在特性を変更するコンテナ220による試みを無効にするように構成され得る。
3. オンコマンド オンコマンド事象は、ユーザーがメニュー又はツールバー(例えばReutersツールバー、サービスメニュー、またはコンテキストメニュー)から選択したことをコンポーネント240へ通知する。この事象で提供されるデータはユーザーの選択を記述している。
コンテナ対コンポーネントデータ要求の例
1. コンテキスト コンテナ220はコンポーネント240の最新のコンテキストを検索するためにコンテキストデータ要求を用い得る。このデータ要求ではデータは供給されない。コンテナ220は、コンテナ220が同時に表示し得る他のコンポーネントとコンポーネント240を同期化するために、コンポーネントスタートアップ中にこの情報を用い得る。
2. 記述 記述データ要求はコンポーネント240の記述をコンテナ220へ戻す。これはコンポーネント240で伝送したオンロード事象でパスされた同じ記述であり得る。従ってコンテナ220がこの値をキャッシュしていない場合には、このデータ要求でそれを得ることはできない。
3. 永続データ 永続データ データ要求は、コンテナ220にコンポーネント240の最新の状態のコピーを検索させ得る。永続データ データ要求は、ユーザーがコンポーネント240を保存したい場合に用いられ得る。
4. 特性 特性データ要求はコンポーネント240の全ての特性の最新の値を検索するためコンテナ220によって伝送される。
5. ヘルプurl ヘルプurlデータ要求は、コンテナ・レベルヘルプ機能性を作成する際に、コンテナ220の便宜性のために設けられたヘルプ汎用リソース・ロケータ(URL)のコピーを戻す。
6. インプットオーナー インプットオーナーデータ要求はストリング(文字列)“コンポーネント”か又は“コンテナ”を戻し、そしてユーザー入力を制御するためにコンテナ220によって用いられる。値は、入力フォーカスがコンポーネント240内のユーザーインターフェースコントロールにある際には“コンポーネント”に設定され、そしてその他の全ての時間では“コンテナ”である。コンテナ220はこの値を用いて、ユーザー入力(例えばキーボード及びメニュー入力)を処理するか或いはコンポーネント240で処理すべきユーザー入力を通すかどうかを決めることができる。
コンテナとコンポーネントの両方についての上記のCCF機能性は、ウェブページに埋め込まれそしてブラウザ230で実行され得るスクリプト言語、例えばNetscape JavaScriptで書き込まれた顧客側フレームワークとして構成され得る。このような構成では、CCF JavaScriptファイルは各コンポーネントに含まれるように要求され得る。しかし、コンポーネントクリエータはまた、他の技術、例えばマイクロソフト・ビジュアル・ベースを用いてJavaScript事象供給及びアプリケーションプログラムインターフェース(API)を潜在的に作成し得る。さらに、コンポーネントクリエータはJavaScriptにおいてそれら自体のインターフェースを作成し得る。
次に図5及び図6を参照すると、コンポーネント・コンテナ通信のために上記のCCF作動機能を用いてサポートされ得るユーザー機能性を例示する例が示されている。
図5において、CCF作動ストック・トラッカーコンポーネント240はコンポーネントユーザーインターフェースディスプレイペイン510に表示される。同時に、ニュースヘッドラインを表示するように構成した別のコンポーネント241は、同一コンテナ220内でランし、コンポーネント240に隣接したブラウザに表示される。この例では、コンテナ220はルータの3000Xtraコンテナアプリケーションの実例であり、またストック・トラッカーコンポーネント240は3000Xtra引用符オブジェクトである。図5に示すように、コンポーネント241のディスプレイペイン520は、ニュースを表示するために目標会社が選択しなかったので、空である。言い換えれば、コンポーネント241はランするが、最新のコンテキストを備えていない。また図5に示すように、ストック・トラッカーコンポーネント240の最新のコンテキストはIBMコーポレーションに相当する“IBM.N”である。
この例では、ストック・トラッカーコンポーネント240は、上記のオンコンテキストドラッグスタート事象を用いてコンテキストのドラッグ及びドロップをサポートするCCF作動コンポーネントである。従って、ユーザーは、最新のコンポーネント240外のディスプレイペイン510における強調した“IBM.N”をクリックしドラッグし得、そして図5に例示するように、隣接したコンポーネント241のディスプレイペイン520に入れられる。ユーザーがコンポーネント240内のエンティティをドラッグする時、ドラッグされるエンティティはコンテナ220に出力として伝送され得、それでコンテナ220はコンテキストを記憶でき、そしてエンティティがドロップされる時該コンテキストを使用できる。
ユーザーが異なるCCF作動コンポーネント241におけるエンティティをドロップすると、新しいコンテキストがコンテナ220から目標コンポーネント241にパスされる。それに応答して、コンポーネント241は、コンテナ220によって提供される新しいコンテキストと整合するように主コンテキストを変更するのに必要な(しばしばコンポーネント特有の)作用を行う。新しいコンテキストがこの例の場合のように別のCCF作動コンポーネントで生じる場合には、事象は通常変更なしのコンテキストをパスする。しかし、新しいコンテキストが非CCF作動コンポーネントのような別のソースから生じる場合には、コンテナ220は入力を適切なコンテキストに変換するように試み得る。コンテナ220は、供給された入力をそれ自体においてコンテキストデータに(例えば探索機能性を用いて)変換するように試み得、或いは目標コンポーネントがコンテキストを理解するという見込みにおいて、未知のタイプの識別子をもつ非CCF作動コンポーネントから目標コンポーネントへコンテキストを単純にパスし得る。
この例では、ソースコンポーネント240及び目標コンポーネント241の両方はCCF作動されるので、コンテキストパスプロセスは相当に容易であり得る。目標コンポーネント241は、例えばオンロード事象でパスした記述データを用いて、許容できるコンテキストデータのタイプをコンテナ220に記述し得る。そうである場合には、コンテナ220はコンポーネント240とコーディネートして、目標コンポーネント241に対するコンテキストの正しいタイプを得ることができる。さらに、必要ならば、コンテナ220は、コンテキストを目標コンポーネント241に許容できる形式及びデータタイプに変換し得る。
次に図6を参照すると、新しいコンテキストはニュースヘッドラインコンポーネント241にパスし、そしてコンポーネント特有の機能性はIBMに関連したニュース事象を示すディスプレイペイン520を更新するために新しいコンテキストに応じて引き出される。
次に、図7及び図8を参照すると、CCF作動コンポーネント及びコンテナを用いてサポートされ得るユーザー機能性を例示する別の例が示されている。図7において、CCF作動コンポーネント240はユーザーの選択した発行者に関連した評定を表示するように構成される。ユーザーがコンポーネント240内のドロップ・ダウン・ユーザーインターフェースコントロールから発行者名称(例えばGenral Motors)を入力又は選択すると、コンポーネント240は、関連した評定データを検索し、ディスプレイペイン730にそれを表示する。コンポーネント240の基本機能性は、コンポーネント240に対して全体として内部にあり、そしてコンテナ220と相互作用することなしに生じ得る。しかし、コンポーネント240で行われる基本機能性及びユーザーインターフェースコントロールに加えて、マイクロソフトエクセルアイコン720で顧客対応した標準のツールバー710もコンポーネント240内に組み込まれる。エクセルアイコン720は、CCF作動コンポーネント240がコンポーネントディスプレイペイン730からエクセルスプレッドシートへのデータの移出をサポートすることを指示している。この例では、コンポーネント240は、オンロード事象でコンテナ220に伝送した記述においてこの情報(及び可能ならばアイコン720自体)をパスすることによってエクセルアイコン720がツールバー710に表示されることになることをコンテナ220に指示し得る。
ユーザーがディスプレイペイン730において評定データでアイコン720をクリックする時、新しいマイクロソフトエクセルアプリケーションウインドウ241は、図8に示すように、具体化されてユーザーに表示される。この例では、ユーザークリックを検知した後、コンテナ220は、エクセルアイコン720がクリックされたことを表すオンコマンド事象をコンポーネント240へ伝送し得る。この事象を受信した後、コンポーネント240は、ディスプレイペイン730における評定データに相応したエクセルワークシートを検索するために遠隔データサーバに要求を伝送し得、そして既存のIE機能性を用いて新しいポップアップウインドウ241におけるワークシートでエクセルのインスタンスをスタートし得る。従って、この例では、コンテナ220は、ツールバー項目又はメニューオプションの選択をコンポーネント240へ簡単に通知して、コンポーネントにいかなる別のコンテナ・コンポーネント通信なしに選択を処理させ得る。当然、他のコンポーネント・コンテナ構成において、二つの間の通信はデータ検索や提示などのための種々の技法をサポートし続け得る。例えば、CCF通信を用いて、コンテナ・コンポーネントは、コンテナ内の新しいコンポーネントの創作とコーディネートし、そして遠隔サーバから検索したデータ又は直接コンポーネントディスプレイペイン730におけるデータで新しいコンポーネントを生成し得る。
さらに、コンテナ220は新しいコンポーネントを作り、そしてそれらの間の直接コンポーネント対コンポーネント通信をセットアップし得る。例えば、コンポーネントは、オンポップアップ又はオンコンポーネントドラッグスタート事象で伝送した永続データの一部と同じコンテナ内でランする別のコンポーネントに任意のデータをパスし得る。他の構成では、一つのコンポーネントは別のコンポーネントを含み得、二つはCCFインターフェースを拡張してそれら自体のプライベートデータフォーマットに対する事象を提供するように相互に一致し得る。
図7及び図8に示すエクセル機能性への移行に加えて、CCF作動コンポーネント及びコンテナは幾つかの異なるユーザー相互作用特徴をサポートできる。これらの潜在的な特徴の幾つかを挙げている表は以下に含まれる。
Figure 2010504591
次に図9を参照すると、維持し通信する特性値に関連した、CCFコンテナ220内でランするCCF作動コンポーネント240とのユーザー相互作用の別の変形例が示されている。上述のように、コンポーネント240は特性情報をそれのコンテナ220へ及びその逆に供給し得、コンポーネント240でサポートしたユーザー機能性に基いてコンテナ220にタイトルバー910、ツールバー920及びメニュー930を顧客対応させることができる。当然、特性名称、値、タイプ及びコンポーネント240でサポートした特性のアクセス許可は特有のコンポーネント240に関連し得る。しかし、ある特定の実施形態では、コンポーネント240は特性の予定の最少セットを維持するように要求され得る。図9において、例えばコンポーネント240はルータの3000Xtraコンテナ220内でランし、そして少なくとも三つの特性をコンテナ220に露呈するように要求される。第1の、“タイトル”特性は、コンテナ220がタイトルバー910においてラベルを設定するのに用いる読取り専用のストリング(文字列)値である(すなわちコンポーネント240自体で単に設定され得る)。この例では、コンポーネント240は“発行情報”のタイトルを設定し、従ってコンテナ220に値を検索させそしてタイトルバー910を更新させ得る。第2の特性“ヘルプURL”は、コンポーネント240で設定されそしてコンテナ220で検索される別の読取り専用特性である。ヘルプURL特性は非NULL値をもつ場合には、コンテナ220は、コンポーネント240に設けたヘルプコンテンツにユーザーをリダイレクトする、設けたURLに対して結合し得る(例えばツールバー920におけるヘルプボタン又はヘルプメニュー項目のような)。従って、コンポーネント・特殊ユーザーヘルプはコンテナ220のメニュー及びツールバー内に設けられ得る。この例における第3の要求された特性は、論理“セレクタビジュアル”特性である。セレクタビジュアル特性は、コンテナメニュー930におけるショウコンポーネント処理項目940のユーザー選択に応じてコンテナ220によって設定される。この特性がTRUEに設定される時、コンポーネント240はその処理を露呈し、コンポーネント240がドラッグするために利用できる場合に、コンテナ220内のコンポーネント240を選択及びドラッグさせ得る。従って、ある特定の特性はコンテナ220によってか又はコンポーネント240によって或いはそれら両方によって設定され得て、コンテナ220のフレームワーク内でコンポーネント特有サポートを提供し、ユーザーには比較的継ぎ目のない論理的な経験をもたらす。
一つのアレンジメントでは、図3及び図4を参照して上記の技法と同様なコンポーネントソフトウエアオブジェクトとソフトウエアコンテナオブジェクトとの間の電子通信用の方法がサポートされる。この方法は、コンテナオブジェクト220において登録作用を開始すること、コンテナオブジェクト220内のコンポーネントオブジェクト240でサポートされた一般的なコンポーネント・インターフェースに相応した第1のインターフェースポインターを上記作用内に通すことを含む。本方法は、コンテナ220から、コンテナ(コンポーネントの誤りでは)240でサポートされた一般的なコンテ・ナインターフェースに相応した第2のインターフェースポインターを受信することを含み、第1及び第2のインターフェースは、コンポーネント240とコンテナ220との間の一般的な通信のための機能の予定のセットをサポートする。本方法はまた、コンポーネント240内でランするユーザーインターフェースコントロールにおいてユーザー入力を受信すること、受信したユーザー入力に関連したコンテナインターフェースによってサポートされた機能を決めること、及び第2のインターフェースポインターを用いてコンテナインターフェースにおける機能を呼び出すことを含む。ある特定の実施形態では、コンテナ220及び第1のコンポーネント240は、ブラウザ・アプリケーション230のインスタンス内で実行し得る。さらに、本方法は、第2のインターフェースを介してコンテナ220から、エンティティ識別子を含むコンポーネントコンテキストデータを受信することを含み得る。エンティティ識別子は会社、株券、債券、市場又は土地のような財務上のエンティティ(実体)と組み合わされ得る。さらに本方法は、コンテナ220からのコンポーネントコンテキストデータの受信に応じてコンポーネントコンテキストデータに基づく遠隔データ記憶部からデータを検索すること、検索したデータを用いてコンポーネント・特有の機能性を実行すること、及び実行したコンポーネント・特有の機能性に基きコンポーネント240のユーザーインターフェースを更新することを含み得る。
別のアレンジメントにおいて、図3及び図4を参照して上記の技法と同様な多数のコンポーネントソフトウエアオブジェクト240、241とコンテナソフトウエアオブジェクト220との間の電子通信用の第2の方法が提供される。この第2の方法は、コンテナ220から第1のコンポーネント240へ、第1のコンポーネント240に関してコンテナ220でサポートされた多数の機能を定義する第1のインターフェースポインターを送信すること、及びコンテナ220で第2のコンポーネントオブジェクトから、コンテナ220に関して第2のコンポーネント241でサポートされた多数の機能を定義する第2のインターフェースポインターを受信することを含む。本方法はさらに、第1のユーザー作用が第1のコンポーネント240内で生じていることを表し、コンポーネントコンテキストデータを含む指示を第1のインターフェースから受信すること、第2のコンポーネント241と関連した第2のユーザー作用を検知すること、及び第2のインターフェースを介してコンポーネントコンテキストデータを第2のコンポーネント241に送信することを含み得る。
第2の方法はまた、コンポーネントコンテキストデータが第2のコンポーネント241に適合できるかどうかを決めること、及びコンポーネントコンテキストデータが第2のコンポーネント241に適合できない場合に、第2のコンポーネント241を記述する記憶情報に基いてコンポーネントコンテキストデータを変換することを含み得る。ある特定の実施形態では、第1のユーザー作用は、会社、株券、債券、市場又は土地のような第1のコンポーネント240内のユーザーインターフェースからエンティティ(実体)の選択に相応し得る。第1のユーザー作用はまた、第1のコンポーネント240内のユーザーインターフェースにおけるエンティティと関連したドラッグ事象、或いは該エンティティに関連したドロップ事象に相応し得、ドロップ事象はユーザーインターフェースにおいて第2のコンポーネント241内で生じる。さらに、第1のユーザー作用は、第1のコンポーネット240のユーザーインターフェース内の一つ以上のデータフィールドを指定し得、また第2のユーザー作用は、第2のコンポーネント241のユーザーインターフェースへの指定したデータフィールドに対するドロップ事象に相応し得る。第1又は第2のユーザー作用はまた、スプレッドシートソフトウエアアプリケーションへ選択したデータフィールドを移行するユーザーコマンドに相応し得る。一つの実施形態では、コンテナ220及び第1のコンポーネント240はブラウザアプリケーション230のインスタンス内で実行し得る。
本明細書で説明した方法、モデル及びアーキテクチャの種々の特徴はコンピュータで読取り可能な命令の形態でコンピュータで読取り可能な媒体に記憶され得る。コンピュータで読取り可能な媒体のタイプは、磁気テープドライブ、光学記憶装置、フラッシュドライブ、ランダムアクセスメモリー(RAM)、読取り専用メモリー(ROM)などを含み得る。さらに、本明細書で説明した方法、モデル及びアーキテクチャの特徴はまたその他の産業及びアプリケーションでも用いられ得る。
本発明は好ましい例示の実施形態について説明してきた。本明細書の記載から特許請求の範囲の範囲及び精神の範囲内で多数の他の実施形態、変更及び変形が当業者によって行われる。
付 録
コンテキストデータ情報タイプは上記で詳細に説明しそして上記のコンテキストデータXSDスキーマ・ファイルにおいて定義してきた。しかし、本明細書で記載したCCFインターフェース及び他の特徴を用いたコンテナ・コンポーネント通信は、コンテナとコンポーネントとの間のコンテキストデータをパスすることに限定されない。多くの他の情報タイプも通信され得、またかかるタイプの幾つかの例は以下に記載し、この付録においてはXSDとして記載する。例えば、以下の特性XSDファイルは、特性についてのコンテナ220の要求に応じてコンポーネント240によって作られコンテナ220に伝送されるXMLインスタンスに相応する“特性”情報タイプについてのスキーマを定義している。
Figure 2010504591
Figure 2010504591
以下の探索目標XSDファイルは、探索エンジンに対する引き数(パラメタ)及び探索結果に加えられることになる変換を供給するために用いた“探索目標”情報タイプを定義する。探索目標データは、コンポーネント220に対する入力についての探索において、特定の探索エンジンの少なくとも一つをサポートするコンテナ220をアシストする。
Figure 2010504591
Figure 2010504591
以下の記述XSDファイルは、コンポーネント240でサポートした機能性にコンテナ220にアクセスさせ得るようにするためコンテナ220によって作られたXMLインスタントについてのスキーマを定義する。
Figure 2010504591
Figure 2010504591
最後に、更新コマンドバーXSDファイルは、コンポーネント240がコンテナ220において現在表示されているツールバー、サービスメニュー、及び/又はコンテキストメニューを更新又は変更する必要がある時に、コンテナ220に伝送される、コンポーネント240で作られたXMLインスタンスについてのスキーマを定義する。ある特定の実施形態では、コンポーネントは単にコンテナ220におけるそれ自体のコンポーネント・特定のメニューを変更する許可を提供する。
Figure 2010504591

Claims (23)

  1. コンポーネントソフトウエアオブジェクトとソフトウエアコンテナオブジェクトとの間の電子通信のコンピュータ実行方法であって、
    コンテナオブジェクトにおいて登録作用を開始し、コンテナオブジェクト内のコンポーネントオブジェクトでサポートされた一般的なコンポーネント・インターフェースに相応した第1のインターフェースポインターを上記作用内に通すこと;
    コンテナオブジェクトから、コンテナオブジェクトでサポートされた一般的なコンテ・ナインターフェースに相応した第2のインターフェースポインターを受信し、第1及び第2のインターフェースが、コンポーネントとコンテナとの間の一般的な通信のための機能の予定のセットをサポートすること;
    コンポーネント内でランするユーザーインターフェースコントロールにおいてユーザー入力を受信すること;
    受信したユーザー入力に関連したコンテナインターフェースによってサポートされた機能を決めること;及び
    第2のインターフェースポインターを用いてコンテナインターフェースにおける機能を呼び出すこと
    を含むことを特徴する方法。
  2. コンテナオブジェクト及び第1のコンポーネントが、ブラウザ・アプリケーションのインスタンス内で実行することを特徴とする請求項1記載の方法。
  3. さらに、第2のインターフェースを介してコンテナオブジェクトから、エンティティ識別子を含むコンポーネントコンテキストデータを受信することを含むことを特徴とする請求項1記載の方法。
  4. エンティティ識別子が、会社名、株券名、債券名、市場名及び土地名の一つに関連されることを特徴とする請求項3記載の方法。
  5. さらに、コンテナオブジェクトからのコンポーネントコンテキストデータの受信に応じて、コンポーネントコンテキストデータに基いて遠隔データ記憶部からデータを検索すること;
    検索したデータを用いてコンポーネント・特有の機能性を実行すること;及び
    実行したコンポーネント・特有の機能性に基きコンポーネントオブジェクトのユーザーインターフェースを更新すること
    を含むことを特徴とする請求項3記載の方法。
  6. コンポーネントソフトウエアオブジェクトとコンテナソフトウエアオブジェクトとの間の電子通信のコンピュータ実行方法であって、
    コンテナから第1のコンポーネントオブジェクトへ、第1のコンポーネントに関してコンテナでサポートされた多数の機能を定義する第1のインターフェースポインターを送信すること;
    コンテナで第2のコンポーネントオブジェクトから、コンテナに関して第2のコンポーネントでサポートされた多数の機能を定義する第2のインターフェースポインターを受信すること;
    第1のユーザー作用が第1のコンポーネント内で生じていることを表し、コンポーネントコンテキストデータを含む指示を第1のインターフェースを介して受信すること;
    第2のコンポーネントと関連した第2のユーザー作用を検知すること;及び
    第2のインターフェースを介してコンポーネントコンテキストデータを第2のコンポーネントに送信すること
    を含むことを特徴とする方法。
  7. コンポーネントコンテキストデータが第2のコンポーネントに適合できるかどうかを決めること;及び
    コンポーネントコンテキストデータが第2のコンポーネントに適合できない場合に、第2のコンポーネントを記述する記憶情報に基いて上記コンポーネントコンテキストデータを変換すること
    を含むことを特徴とする請求項6記載の方法。
  8. 第1のユーザー作用が、第1のコンポーネント内のユーザーインターフェースからのエンティティの選択から成ることを特徴とする請求項6記載の方法。
  9. 選択したエンティティが、会社名、株券名、債券名、市場名及び土地名の一つから成ることを特徴とする請求項8記載の方法。
  10. 第1のユーザー作用が、第1のコンポーネント内のユーザーインターフェースにおけるエンティティと関連したドラッグ事象から成ることを特徴とする請求項6記載の方法。
  11. 第2のユーザー作用が、エンティティに関連したドロップ事象から成り、ドロップ事象が第2のコンポーネント内でユーザーインターフェースにおいて生じることを特徴とする請求項10記載の方法。
  12. 第1のユーザー作用が、第1のコンポーネットのユーザーインターフェース内の一つ以上のデータフィールドを指定し、また第2のユーザー作用が、第2のコンポーネントのユーザーインターフェースへの指定したデータフィールドに対するドロップ事象から成ることを特徴とする請求項6記載の方法。
  13. 第1及び第2のユーザー作用の一方が、スプレッドシートソフトウエアアプリケーションへ選択したデータフィールドを移行するユーザーコマンドから成ることを特徴とする請求項6記載の方法。
  14. コンテナ、第1のコンポーネント及び第2のコンポーネントがブラウザアプリケーションのインスタンス内で実行することを特徴とする請求項6記載の方法。
  15. コンピュータシステムにおいて実行した際に、
    第1のコンポーネントオブジェクトへ、第1のコンポーネントに関してサポートされた多数の機能を定義する第1のインターフェースポインターを送信すること;
    第2のコンポーネントオブジェクトから、第2のコンポーネントでサポートされた多数の機能を定義する第2のインターフェースポインターを受信すること;
    第1のユーザー作用が第1のコンポーネント内で生じていることを表し、コンポーネントコンテキストデータを含む指示を第1のインターフェースを介して受信すること;
    第2のコンポーネントと関連した第2のユーザー作用を検知すること;及び
    第2のインターフェースを介してコンポーネントコンテキストデータを第2のコンポーネントに送信すること
    を含む方法を実行するコンピュータ実施可能な命令を記憶する一つ以上のコンピュータで読取り可能な媒体。
  16. 方法はさらに、
    コンポーネントコンテキストデータが第2のコンポーネントに適合できるかどうかを決めること;及び
    コンポーネントコンテキストデータが第2のコンポーネントに適合できない場合に、第2のコンポーネントを記述する記憶情報に基いて上記コンポーネントコンテキストデータを変換すること
    を含むことを特徴とする請求項15記載のコンピュータで読取り可能な媒体。
  17. 第1のユーザー作用が、第1のコンポーネント内のユーザーインターフェースからのエンティティの選択から成ることを特徴とする請求項15記載のコンピュータで読取り可能な媒体。
  18. 選択したエンティティが、会社、株券、債券、市場及び土地の一つから成ることを特徴とする請求項17記載のコンピュータで読取り可能な媒体。
  19. 第1のユーザー作用が、第1のコンポーネント内のユーザーインターフェースにおけるエンティティと関連したドラッグ事象から成ることを特徴とする請求項15記載のコンピュータで読取り可能な媒体。
  20. 第2のユーザー作用が、エンティティに関連したドロップ事象から成り、ドロップ事象が第2のコンポーネント内でユーザーインターフェースにおいて生じることを特徴とする請求項19記載のコンピュータで読取り可能な媒体。
  21. 第1のユーザー作用が、第1のコンポーネットのユーザーインターフェース内の一つ以上のデータフィールドを指定し、また第2のユーザー作用が、第2のコンポーネントのユーザーインターフェースへの指定したデータフィールドに対するドロップ事象から成ることを特徴とする請求項15記載のコンピュータで読取り可能な媒体。
  22. 第1及び第2のユーザー作用の一方が、スプレッドシートソフトウエアアプリケーションへ選択したデータフィールドを移行するユーザーコマンドから成ることを特徴とする請求項15記載のコンピュータで読取り可能な媒体。
  23. ブラウザアプリケーションのインスタンス内で方法が実行され、第1のコンポーネント及び第2のコンポーネントが同一インターネットブラウザアプリケーションのインスタンス内で実行することを特徴とする請求項15記載のコンピュータで読取り可能な媒体。
JP2009529252A 2006-09-21 2007-09-21 共通コンポーネントフレームワーク Pending JP2010504591A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/533,900 US7805730B2 (en) 2006-09-21 2006-09-21 Common component framework
PCT/US2007/020481 WO2008036399A2 (en) 2006-09-21 2007-09-21 Common component framework

Publications (1)

Publication Number Publication Date
JP2010504591A true JP2010504591A (ja) 2010-02-12

Family

ID=39047569

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009529252A Pending JP2010504591A (ja) 2006-09-21 2007-09-21 共通コンポーネントフレームワーク

Country Status (7)

Country Link
US (2) US7805730B2 (ja)
EP (1) EP2064623A2 (ja)
JP (1) JP2010504591A (ja)
CN (1) CN101529382B (ja)
AU (1) AU2007297617B2 (ja)
CA (1) CA2664161C (ja)
WO (1) WO2008036399A2 (ja)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8958483B2 (en) 2007-02-27 2015-02-17 Adobe Systems Incorporated Audio/video content synchronization and display
US9967620B2 (en) * 2007-03-16 2018-05-08 Adobe Systems Incorporated Video highlights for streaming media
US7797352B1 (en) 2007-06-19 2010-09-14 Adobe Systems Incorporated Community based digital content auditing and streaming
US8020177B2 (en) * 2007-07-27 2011-09-13 Composite Ideas, Llc Contained command invocation middleware framework
US9684736B2 (en) 2009-01-29 2017-06-20 Oracle International Corporation Communication handler for flex integration with a secure application
US9760381B2 (en) * 2009-01-30 2017-09-12 Oracle International Corporation Configurable toolbar
CN101908078A (zh) * 2010-08-30 2010-12-08 深圳市五巨科技有限公司 一种将网页数据导入excel表格的方法和装置
US8655944B2 (en) 2010-10-05 2014-02-18 Microsoft Corporation Website compatibility shims
US8793708B2 (en) 2010-12-08 2014-07-29 Microsoft Corporation Creation and termination of component scopes
US9525587B2 (en) 2012-05-17 2016-12-20 International Business Machines Corporation Updating web resources
US9690563B2 (en) * 2012-05-17 2017-06-27 International Business Machines Corporation Updating web resources
US9378226B1 (en) * 2012-10-10 2016-06-28 Google Inc. Method and system for a user-defined field type
US20140372935A1 (en) * 2013-06-14 2014-12-18 Microsoft Corporation Input Processing based on Input Context
CN104915185B (zh) * 2014-03-11 2019-04-02 腾讯科技(深圳)有限公司 程序组件耦合处理方法和相关装置
US9513671B2 (en) 2014-08-01 2016-12-06 Microsoft Technology Licensing, Llc Peripheral retention device
US10191986B2 (en) 2014-08-11 2019-01-29 Microsoft Technology Licensing, Llc Web resource compatibility with web applications
US9705637B2 (en) 2014-08-19 2017-07-11 Microsoft Technology Licensing, Llc Guard band utilization for wireless data communication
US9397723B2 (en) 2014-08-26 2016-07-19 Microsoft Technology Licensing, Llc Spread spectrum wireless over non-contiguous channels
US9424048B2 (en) 2014-09-15 2016-08-23 Microsoft Technology Licensing, Llc Inductive peripheral retention device
CN105867956A (zh) * 2015-10-28 2016-08-17 乐视网信息技术(北京)股份有限公司 在宿主应用页面中展现插件视图元素的方法及装置
CN108259435B (zh) * 2016-12-29 2021-02-26 中国移动通信集团浙江有限公司 接入Web组件的混合应用的实现方法及装置
US11201906B2 (en) * 2017-08-29 2021-12-14 International Business Machines Corporation Providing instructions during remote viewing of a user interface
CN107766494B (zh) * 2017-10-19 2021-11-30 北京科技大学 材料基因工程数据的存储方法及系统
CN108009030B (zh) * 2017-12-04 2021-04-06 北京三快在线科技有限公司 通信方法和装置以及计算设备
US10901581B2 (en) 2018-05-16 2021-01-26 ChartIQ, Inc. Assimilation method and system for browser and non-browser display window
US10783017B2 (en) 2018-05-16 2020-09-22 ChartIQ, Inc. System and method for integrating multiple applications
CN112583977A (zh) * 2019-09-12 2021-03-30 成都鼎桥通信技术有限公司 消息同步方法、装置及存储介质
US11429783B2 (en) * 2019-09-30 2022-08-30 Stats Llc Augmented natural language generation platform
CN117032665B (zh) * 2023-07-24 2024-05-03 易方达基金管理有限公司 一种投资因子的可视化构建方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09510567A (ja) * 1994-03-21 1997-10-21 オブジェクト テクノロジー ライセンシング コーポレイション ドキュメント・プロキシィ・フレームワーク

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805885A (en) * 1992-12-24 1998-09-08 Microsoft Corporation Method and system for aggregating objects
US5694546A (en) * 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
US6061695A (en) * 1996-12-06 2000-05-09 Microsoft Corporation Operating system shell having a windowing graphical user interface with a desktop displayed as a hypertext multimedia document
US6694513B1 (en) * 1999-07-06 2004-02-17 Abb Ab Method of integrating an application in a computerized system
EP1246059B1 (en) * 2001-03-26 2006-08-30 Sun Microsystems, Inc. Dynamic interface aggregation on demand
US6836870B2 (en) 2001-06-15 2004-12-28 Cubic Corporation Method and system for incorporating a dynamic situation display in a powerpoint slide show presentation
US7379977B2 (en) * 2001-07-24 2008-05-27 Steve Walrath System and method for display of multiple electronic pages
US7409674B2 (en) * 2002-12-26 2008-08-05 Research In Motion Limited System and method of creating and communicating with component based wireless applications
US7500248B2 (en) * 2003-04-29 2009-03-03 Microsoft Corporation Systems and methods for implementing aggregation containers
US7756905B2 (en) * 2004-02-27 2010-07-13 Research In Motion Limited System and method for building mixed mode execution environment for component applications
US20060111936A1 (en) * 2004-11-23 2006-05-25 General Electric Company Container system and method for hosting healthcare applications and componentized archiecture
US20060259462A1 (en) * 2005-05-12 2006-11-16 Sybase, Inc. System and Methodology for Real-time Content Aggregation and Syndication

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09510567A (ja) * 1994-03-21 1997-10-21 オブジェクト テクノロジー ライセンシング コーポレイション ドキュメント・プロキシィ・フレームワーク

Non-Patent Citations (16)

* Cited by examiner, † Cited by third party
Title
CSND199700138007; 青山幹雄: '「コンポーネントウェアの挑戦:アプリケーション開発の変革を目指して[後編]協調オブジェクトと実現例」' bit 1996年4月号(第28巻,第4号), 19960401, 第95〜103頁, 共立出版株式会社 *
CSND199700386005; David Platt: '「この秋の流行はフリースレッド」' MSJ(マイクロソフトシステムジャーナル日本語版) No.51, 19971018, 第72〜86頁, 株式会社アスキー *
CSND199700402010; George Shepherd(外1名)著,小松伸行訳: '「UNDOCUMENTEDコーナー OLEドラッグ&ドロップのMFCによる実装」' DDJ(Dr.Dobb's Journal Japan) 1997年2月号(第6巻,第2号), 19970201, 第93〜99頁, 株式会社翔泳社 *
CSND199700838007; 中本浩: '「いんさいどまっきんとっしゅ 第9回 コピー・ペーストとドラッグ・ドロップ」' 日経MAC 1998年1月号(第6巻,第1号), 19971218, 第250〜255頁, 日経BP社 *
CSND199900574018; 斉藤明嗣: '「Programming Rescue OLE開発教書 第28回 OLEコントロールのイベントの仕組み」' Inside Windows 1999年4月号(第5巻,第4号), 19990401, 第115頁, ソフトバンク株式会社 *
CSND200000086007; Michael T. McKeown: '「ActiveXとOLEコントロール96でコントロールコンテナをインターネット対応に」' マイクロソフト・インタラクティブ・デベロッパー日本語版 1997 September:No.3, 19970918, 第71〜91頁, 株式会社アスキー *
CSND200000445005; Brent Rector(外1名): '「ATL 3.0のカスタムインターフェイス機能を利用したActiveXコントロールの開発 Part I」' MSJ(マイクロソフトシステムジャーナル日本語版) No.60, 19990318, 第71〜84頁, 株式会社アスキー *
CSND200601204015; '「短期集中連載 Web制作のためのFireFox拡張機能カタログ Series#03」' Web Designing 2006年6月号(第6巻,第6号), 20060601, 第110〜112頁, (株)毎日コミュニケーションズ *
JPN6012013228; David Platt: '「この秋の流行はフリースレッド」' MSJ(マイクロソフトシステムジャーナル日本語版) No.51, 19971018, 第72〜86頁, 株式会社アスキー *
JPN6012013233; Brent Rector(外1名): '「ATL 3.0のカスタムインターフェイス機能を利用したActiveXコントロールの開発 Part I」' MSJ(マイクロソフトシステムジャーナル日本語版) No.60, 19990318, 第71〜84頁, 株式会社アスキー *
JPN6012013235; 斉藤明嗣: '「Programming Rescue OLE開発教書 第28回 OLEコントロールのイベントの仕組み」' Inside Windows 1999年4月号(第5巻,第4号), 19990401, 第115頁, ソフトバンク株式会社 *
JPN6012013238; 青山幹雄: '「コンポーネントウェアの挑戦:アプリケーション開発の変革を目指して[後編]協調オブジェクトと実現例」' bit 1996年4月号(第28巻,第4号), 19960401, 第95〜103頁, 共立出版株式会社 *
JPN6012053669; Michael T. McKeown: '「ActiveXとOLEコントロール96でコントロールコンテナをインターネット対応に」' マイクロソフト・インタラクティブ・デベロッパー日本語版 1997 September:No.3, 19970918, 第71〜91頁, 株式会社アスキー *
JPN6012053670; '「短期集中連載 Web制作のためのFireFox拡張機能カタログ Series#03」' Web Designing 2006年6月号(第6巻,第6号), 20060601, 第110〜112頁, (株)毎日コミュニケーションズ *
JPN6012053671; 中本浩: '「いんさいどまっきんとっしゅ 第9回 コピー・ペーストとドラッグ・ドロップ」' 日経MAC 1998年1月号(第6巻,第1号), 19971218, 第250〜255頁, 日経BP社 *
JPN6012053673; George Shepherd(外1名)著,小松伸行訳: '「UNDOCUMENTEDコーナー OLEドラッグ&ドロップのMFCによる実装」' DDJ(Dr.Dobb's Journal Japan) 1997年2月号(第6巻,第2号), 19970201, 第93〜99頁, 株式会社翔泳社 *

Also Published As

Publication number Publication date
EP2064623A2 (en) 2009-06-03
CN101529382B (zh) 2014-06-18
US8578395B2 (en) 2013-11-05
CN101529382A (zh) 2009-09-09
AU2007297617B2 (en) 2011-12-01
CA2664161C (en) 2015-11-24
WO2008036399A2 (en) 2008-03-27
US7805730B2 (en) 2010-09-28
AU2007297617A1 (en) 2008-03-27
WO2008036399A3 (en) 2008-05-08
US20080077941A1 (en) 2008-03-27
US20100325641A1 (en) 2010-12-23
CA2664161A1 (en) 2008-03-27

Similar Documents

Publication Publication Date Title
AU2007297617B2 (en) Common component framework
US8898285B2 (en) Service oriented architecture version and dependency control
JP5075920B2 (ja) ウェブデータ使用のプラットフォーム
JP5809328B2 (ja) ウィジェットフレームワーク、リアルタイムサービス統合およびリアルタイムリソース集約
JP4842305B2 (ja) ワールドワイドウェブアプリケーション用の非セーブデータを暗示的にコミットするための計算システム及び方法
US7287229B2 (en) Template-driven process system
US20030081003A1 (en) System and method to facilitate analysis and removal of errors from an application
US20030093575A1 (en) Application view component for system integration
US20090132919A1 (en) Appending Hover Help to Hover Help for a User Interface
US7568162B2 (en) Visual helps while using code assist in visual tools
WO2003034285A1 (en) Application view component for system integration
US8667083B2 (en) Simplifying provisioning of asynchronous interaction with enterprise suites having synchronous integration points
AU2016203934B2 (en) Widget framework, real-time service orchestration, and real-time resource aggregation
AU2015200369B2 (en) Widget framework, real-time service orchestration, and real-time resource aggregation
AU2002347920A1 (en) Application view component for system integration

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20100412

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100414

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120313

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120612

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120619

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120712

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120720

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120725

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121016

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130115

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130122

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130214

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130221

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130315

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130325

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130409

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130611