JP2000112998A - ダイナミックオブジェクト視覚化及びコ―ド発生 - Google Patents

ダイナミックオブジェクト視覚化及びコ―ド発生

Info

Publication number
JP2000112998A
JP2000112998A JP11279812A JP27981299A JP2000112998A JP 2000112998 A JP2000112998 A JP 2000112998A JP 11279812 A JP11279812 A JP 11279812A JP 27981299 A JP27981299 A JP 27981299A JP 2000112998 A JP2000112998 A JP 2000112998A
Authority
JP
Japan
Prior art keywords
statement
property
scene
computer software
instructions
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
JP11279812A
Other languages
English (en)
Other versions
JP4177531B2 (ja
Inventor
Peter Douglas Hirsch
ダグラス ハーシュ ピーター
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.)
Informix Software Inc
Original Assignee
Informix Software Inc
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 Informix Software Inc filed Critical Informix Software Inc
Publication of JP2000112998A publication Critical patent/JP2000112998A/ja
Application granted granted Critical
Publication of JP4177531B2 publication Critical patent/JP4177531B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/289Object oriented databases
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

(57)【要約】 【課題】 視認可能な情報システムを生成するためのコ
ンピュータ作動装置を提供する。 【解決手段】 バーチャルワールドは、シーン、データ
ソース、グローバルパラメータ、リソース等のブロック
で構築される。シーンは、情報がデータ記憶システムに
記憶されているデータにリンクされている点を除けば、
データプレゼンテーションスライドによく似た情報のビ
ジュアル表示である。データソースからの値はユーザー
の定義したデータエレメントとして図形的に表現され
る。データソースは、照会を生成するブロックダイアグ
ラムで構築される。シーンは、透けて見えるようにデー
タソースをグラフィックエレメントに結合させる描画エ
ディタで作られる。バーチャルワールドが完成すると実
行画像がバイトコードとして表される。バイトコード
は、ランタイムコントロールにより実行され、所要情報
をユーザーに提供する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データベース管理
システム(DBMS)上にアプリケーションを組み立て
るためのビジネスインテリジェンスツールに関する。
【0002】
【発明の背景】プロセッサ、メモリ及びデータ記憶装置
の進化によって、高性能で、しかも経済的なコンピュー
タが出現したことにより、コンピューターは現代の企業
にとって不可欠なものとなった。これらのコンピュータ
にとって重要なアプリケーションには、情報がデータモ
デルに従って収集、構成され、照会に応じて検索される
DBMSが含まれる。DBMSを使えば、ユーザーは、
記録を構成する情報がコンピュータ内で実際にどのよう
に記憶されているのか詳細に知らなくても、コンピュー
タ内に記憶されている記録の場所をつきとめ、追加し、
削除し、そして更新するような操作を実行できるように
なる。
【0003】高性能型DBMSの一つは、記憶されてい
る情報がユーザーには、各々がリレーションと呼ばれて
いるテーブルのセットのように見える、リレーショナル
DBMSとして知られている。各リレーションでは、情
報は、データの列が互いに一つ又はそれ以上の所定の関
数よって関連付けられる行列状に配置されているように
見える。
【0004】照会コンパイラは、リレーショナルDBM
S内の特定の情報にアクセスするために、通常は構造化
照会言語(SQL)のような照会言語で表現されるユー
ザーの要求を、ユーザーの要求に応じたソリューション
を作り出すために1つ又はそれ以上の入力されたリレー
ション上で実行される一式のオペレーションに変換す
る。DBMSによって提供される照会言語を使えば、ユ
ーザーは、DBMSからのデータ検索、データ処理及び
データのレポートへの編成を容易にするアプリケーショ
ンプログラムを開発することもできる。
【0005】ビジネスインテリジェンスツールを開発す
る際の問題の一つは、ツールが作成しようとするレポー
トのタイプである。通常、ツールは、照会言語を使って
予めフォーマットされている定型レポートを作成する。
照会言語はベーシック又はC言語のような従来型プログ
ラミング言語よりは使い易いが、新しい各レポートの作
成には、更に或る程度のプログラミング技術が必要であ
り、かなりの時間がかかる。
【0006】
【発明の概要】本発明は、ユーザーがデータを理解し、
眺め、操作できるようにする、シーンと呼ばれる情報ス
ペースを通して、データへのユーザーアクセスを提供す
る。ある態様では、シーングラフとして表現されている
アプリケーションを実行するための方法が開示される。
シーングラフは1つ又はそれ以上のオブジェクトの階層
的表現であり、各オブジェクトはオブジェクトに関係す
るコードを生成することができるようになっている。ア
プリケーションは、シーングラフの階層を横断し、そし
てシーングラフ内に記憶されている各オブジェクトに対
しては、各オブジェクトが自己実行するように命令する
ことにより実行される。
【0007】本発明のインプリメンテーションには以下
のことが含まれる。本方法は、オブジェクトの各ノード
に関係するバイトコードを検索することと、そのバイト
コードをシーンの1部として記憶することと、そのシー
ンに対するバイトコード実行画像を生成することによ
り、シーングラフの各シーンに対する実行画像を生成す
る。更に、ノードは幾つかのタイプの中の1つのタイプ
として特徴付けられる。ノードタイプが形態タイプであ
る場合、本方法は形態創造ステートメントを生成し、プ
ロパティ開始ステートメントを生成し、各プロパティ毎
に、オブジェクトに関係する各プロパティを設定するた
めのステートメントを生成し、各プロパティをコミット
するためのステートメントを生成する。ノードタイプが
データソースタイプである場合、本方法はデータベース
照会を生成し、参照可能識別子に関する列名を決め、照
会を創造するためのステートメントを生成し、各パラメ
ータ毎に、照会パラメータ値を設定するためのステート
メントを生成し、照会を実行するためのステートメント
を生成する。次に、バイトコード画像が実行エンジンに
供給される。次に実行コンテクストがバイトコードに対
し創造される。
【0008】バイトコード内のステートメントが実行さ
れると、本方法はステートメントが形態創造ステートメ
ントであるか否かを確認し、もしそうであれば、形態を
創造し、トークン化された形態名を使って形態をコンテ
クストハッシュテーブル内に記憶する。ステートメント
がプロパティ開始ステートメントである場合、本方法は
形態をコンテクストハッシュテーブル内で探し、その形
態に関係する開始方法を実行する。ステートメントがプ
ロパティ設定ステートメントである場合、本方法は形態
をコンテクストハッシュテーブル内で探し、その形態に
関係するプロパティの式の値を求め、プロパティに値を
割り当てる。ステートメントがプロパティ終了ステート
メントである場合、本方法は形態をコンテクストハッシ
ュテーブル内で探し、プロパティをコミットするために
その形態に関係するプロパティ終了方法を実行し、形態
を初期化し、ディスプレイリストに形態を追加する。本
方法は又、形態に関係するキャンバスをリフレッシュす
る。オブジェクトの各プロパティが設定され、オブジェ
クトには、設定の前及び後に、オブジェクトのプロパテ
ィが通知される。
【0009】もう1つの態様では、データ表現をビジュ
アルに編集するためのエディタが開示される。データは
親グラフと、その親グラフ内に再帰的にネストされた1
つ又はそれ以上のグラフィカルなデータエレメントを有
している。エディタは親グラフを編集するためのウイン
ドウと、親グラフ内にネストされ、各々がネストされた
グラフを含んでいる1つ又はそれ以上のグラフィカルデ
ータエレメントの各々を編集するための1つ又はそれ以
上のドリルダウン・ウインドウを有している。
【0010】エディタのインプリメンテーションには、
以下のことの内1つ又はそれ以上が含まれている。属性
ウインドウはグラフィカルデータエレメントの各々と関
係付けられる。属性ウインドウは、オブジェクト状態
と、各々が関数式で定義されランタイムにはデータ値と
して参照可能な複数の属性を通してオブジェクト状態に
アクセスできる1つ又はそれ以上のインタフェースとを
有する、コンピューターで実行されるオブジェクトに関
係するプロパティを編集するために用いられる。関数式
は以下のもの、即ち、関数、オペレータ、データベー
ス、列名、変数、定数、の内1つ又はそれ以上を含んで
いる。属性は静的データ値でもよい。関数式は構文解析
され、ランタイム値として記憶される関数が生成され
る。関数は定数であれば、クローンが作られ、デザイン
タイム値として記憶される。更に、式が無効であればエ
ラーメッセージが表示される。
【0011】本発明の利点には、次の一つ又はそれ以上
が含まれる。本発明は、従来のフォームベース又はレポ
ートベースのアプリケーションにとって本質的な制約を
越えて拡張するアプリケーションを組み立てるためのビ
ジュアルなビジネスインテリジェンスツールである。専
門化したプログラマーはアプリケーション開発過程から
除外され、ユーザーをデータに近づけて、アプリケーシ
ョン開発時間が低減できるようにする。ユーザーインタ
ーフェイスは、情報豊かなデータベースと、データの保
管所及び決定支援のようなアプリケーション用に、すぐ
にしかも簡単に作成できる。
【0012】本発明のハイパーリンクは、コンテクスト
と「先見」情報をアプリケーションに提供する。この機
能は、データ駆動アプリケーションを組み立てる際に幾
つかの効果的な利点をサポートする。まず、ユーザー
は、現在いる場所のコンテクストを失うことなく、ポー
タルを通してデータの他の画面を調べることができる。
アプリケーションをブラウジングするユーザーがたどる
経路がアプリケーション自体にも影響を与え、アプリケ
ーションのダイナミックなカスタマイゼイションが行わ
れることもある。更に、コンテクストポータルは、単一
のアプリケーション内の様々なデータソースの統合を簡
単にする。ポータルによって設定されているパラメータ
によってパラメータ化された照会の場合、異なるデータ
ベースからのデータを意味のある方法で組み合わせられ
るようにして、事実上、汎用のクライアントサイドの照
会結合を提供する。その結果、コンテクストポータル
は、ユーザーがデータをハイレベルで理解できるように
し、より良い業務決定ができるようにする。
【0013】ダイナミックオブジェクトプロパティはデ
ータ駆動アプリケーションの開発を容易にし、スプレッ
ドシートの使用以外にはプログラミング経験の無い専門
領域のエキスパートが、ツール作成の強力なアプリケー
ションを容易に使えるようにする。ダイナミックオブジ
ェクトプロパティは、コンパイルされるときにアプリケ
ーションにハードコード化されるスタティックオブジェ
クトプロパティを凌ぐ幾つかの利点を有している。第一
の利点は、プロパティが継ぎ目無く、自動的にデータに
結合されるということである。更に、前記結合は、単に
一つのオブジェクトではなく、むしろオブジェクトの全
クラス(データエレメントノードで表される全オブジェ
クト)に適用される(即ち、各オブジェクトに対する計
算値はオブジェクトにより示される行によって決ま
る)。もう一つの利点は、さもなければ、オブジェクト
の色をデータソースからの一つのコラムか又はコラムの
セットの値によって決めるような簡単なタスクを実行す
るために必要となる、特殊なコーディングを省略できる
ことである。更に、2つ以上のオブジェクトプロパティ
を、一行の一つの列に(又は全行で実行される計算にさ
え)結合することができる。各オブジェクトが一つのリ
ンクに制限されている従来の開発ツールとは対照的に、
本発明では、1つのオブジェクトに関連している各列又
は行を、別々のプロパティへリンクできるようにする。
【0014】シーングラフからコードを生成すればマニ
ュアルプログラミングが不要になるので、開発者は、ツ
ールそのものではなく問題領域に集中できるようにな
る。その結果、プログラミング経験のない専門領域のエ
キスパートでも、すぐに強力なアプリケーションを作成
できる。更に、シーングラフ表示は、アプリケーション
の内容をブラウジングし、ワードプロセッサ内で書類に
関するアウトラインをできるだけ簡単に再順序付けでき
るようにアプリケーションを構成変更するのに効果的な
方法を提供する。
【0015】更に、本発明は、個々のデータポイントの
表示を、できるだけ一般的にトップレベルシーン自体と
して編集できるようにする。この機能により、ドリルダ
ウン及び検索ナビゲーションをサポートする高性能のア
プリケーション作成が可能となる。このナビゲーション
により、ユーザーはデータをより深く理解できるように
なり、より良い業務決定を下せるようになる。
【0016】他の特性及び利点は、以下の説明および請
求項から明らかとなるであろう。
【実施例】アプリケーションを組み立てるためのビジュ
アルビジネスインテリジェンスシステムについて以下説
明する。このシステムでは、開発者が対話型でバーチャ
ルワールドを組み立てるが、その組み立てブロックはシ
ーンと、データソースと、グローバルパラメータと、リ
ソースとを含んでいる。シーンは、情報がデータベース
に記憶されているデータにリンクされている場合を除い
て、プレゼンテーションのスライドに良く似た情報のビ
ジュアルディスプレーである。シーンの中では、データ
ソースから作り出された値が、ユーザー指定のデータエ
レメントとして図表で表される。データソースは、一つ
又はそれ以上のデータベース照会を作成するブロック図
表作成ツールを使って組み立てられる。照会は、SQL
照会であってもよい。シーンは、データソースを直ぐに
分かるようにシーンの図表エレメントに結合するドロー
イングエディタを使って作成される。バーチャルワール
ドが完成すると、バーチャルワールドの実行画像は、バ
イトコード又は引き続いて翻訳されることになるハイレ
ベルコードとして表示される。バーチャルワールドを表
示するバイトコードは、アクティブXコントロールのよ
うなランタイムコントロールにより実行することができ
る。ランタイムコントロールは、ウェブページ又はビジ
ュアルベーシック、C又はC++のようなアクティブX
コントロールをサポートする何れかのアプリケーション
に埋め込むこともできる。
【0017】シーンは、一つ又はそれ以上のオブジェク
トを含んでいてもよい。シーン内のオブジェクトは一式
のプロパティで表示され、クリックや、ユーザーのシー
ンへの接近や、マウス位置のようなイベントによってト
リガされるアクションが割り当てられている。視点は、
シーンを見るための三次元位置である。位置は、シーン
中心からのユーザーのその時点のカーソルのX及びY方
向オフセットと、ユーザーのその時点のズームレベル
(しばしば倍率レベルと呼ばれる)とを使って表わされ
る。視点には、バーチャルワールド内でのナビゲーショ
ンを容易にするために、固有名が付けられてセーブされ
る。ユーザーは名前の付いた視点をマニュアルナビゲー
ションに使うか、又はイベントベースのジャンプアクシ
ョンの目標として使うこともできる。
【0018】データエレメントは、照会の結果生じる行
の図表表示である。これはレイアウト及びデータソース
と常に関連しており、シーンと同様に構成されている。
これはレイアウト及び他のシーンへのワ−ムホールを始
めとする、オブジェクトのどんな組み合わせを含んでい
てもよい。データエレメントを構成するオブジェクトに
関するプロパティは、基準シーンパラメータであるだけ
ではなく、関連したデータソースにある基準コラム名で
もある。シーンエレメント及びデータエレメントはユー
ザーのズームレベルの機能として別々に表示してもよ
い。それぞれの表示は詳細さの水準(LOD)と呼ば
れ、他のLODとは、視覚的に、互いに排他的である。
例えば、一つのドット表示で始まるオブジェクトが、ユ
ーザーがより近くにズームするとアイコンに変化し、更
に近くにズームするとチャートに変化するようにしても
よい。
【0019】詳細さのレベル同士の間の移行点は、ズー
ムファクターという用語で、ユーザーによって定義され
る。シーンエレメント又はデータエレメントはN個の詳
細さのレベルに対してN−1個の移行点を持つ。視認性
も、オブジェク毎ベースに、「視認性」プロパティを下
記のような条件式に設定することによって制御すること
ができる。
【0020】If(ユーザーズーム > 2、真、偽) 従って、移行領域は、互いの表示がズームレベルのある
範囲で相互に排他的であるのではなく重なり合う場所に
作られる。重なりあいは、多種多様なデータエレメント
を含む層状マップ作成時には特に重要である。更に、他
の効果を達成するために、より複雑な表示を視認性の制
御に用いることができる。データソースは、ランタイム
に設定される1つ又はそれ以上の識別子によってパラメ
ータ化できるSQL照会と名前を付けることができる。
データソースが定義される際には、名前が付けられて、
ワールドに追加され、ワールドマネージャのデータソー
スカテゴリに表示される。するとこれらを実行に利用で
きるようになる。その結果はデータシートでブラウジン
グすることができ、又レイアウトの中で用いることがで
きる。レイアウトの中で用いる場合、照会の結果できる
各行はデータエレメントで表示される図表に転換され
る。その結果生じるデータソース内のコラムは、データ
エレメントに含まれるオブジェクトの属性にリンクされ
る。データソース照会内に存在するパラメータはグロー
バルプログラム変数、ローカルシーンパラメータ、又は
ワールドツリー階層で高位置にあるデータソース内のコ
ラムに関連付けられる。
【0021】図1は、一つ又はそれ以上のワールドを同
時に編集するための多様なドキュメントのインターフェ
ースを示している。ユーザーインターフェースの主要な
部分は、ワールドマネージャーウインドウ10と、プロ
ジェクトワークスペース及びエディタウインドウ20及
び22と、オブジェクトインスペクタ30と、コントロ
ールバー40と、アウトプットウインドウ24である。
【0022】ワールドワークスペースは、エディタウイ
ンドウを含むバックグラウンドエリアである。4タイプ
のエディタウインドウが提供されている。シーンエディ
タと呼ばれる図表描画エディタが、トップレベルシーン
を構成するために提供されている。データエレメントエ
ディタと呼ばれる図表描画エディタが、各データポイン
トの表示をレイアウト内に定めるために提供されてい
る。照会エディタと呼ばれるツールが、照会の図形ブロ
ック線図を構築するか、又はSQLを直接手動で入力す
るかのどちらかによって、SQL照会を定義するために
提供されている。照会エディタは又、照会の結果を見る
ためのデータシートも提供する。更に、全バーチャルワ
ールドの二つの視界を示すワールドエディタが提供され
ており、その2つの内第1はパラメータのリンクと共に
ワールドのナビゲーション階層を示すワールドの構造画
面であり、第2は全ワールドに文書化及び検索の機能を
提供する読み出し専用の疑似コードである。
【0023】ワールドマネージャーウインドウ10は、
ユーザーのオープンワールドを編集し管理するための基
本的なインターフェースである。これは、タブ12,1
4,16を備えたドック可能なコントロールバーと対応
する情報のパネルとを有している。ユーザーがタブをク
リックすると、タブは最上部へ移動し下にあったパネル
が表示される。各パネルは、情報のカテゴリを表示する
ため順に一式のボタンを提示する。ボタンをクリックす
ると、そのボタンに関連するカテゴリの情報が表示され
る。図表タブ16は、シーン又はデータエレメントに追
加できる全図表オブジェクトの分類別パレットを提示す
る。
【0024】ワールドマネージャー10は、ワークスペ
ース20の左右どちらかにドックしておくことができ
る。ドックされている状態では、パネルの寸法を横方向
に拡大又は縮小することができる。浮動状態では、縦横
の両方向に拡大又は縮小させることができる。
【0025】図1の例では、ワールドタブ12と呼ばれ
る一つのタブが、その時点で開いているワールドの構成
と階層に関して3つの異なる画面を表示する。各オープ
ンワールドは、ツリーコントロール18内の主要ワーク
スペースの項目の下に表示される。コンテクストメニュ
ーは、ツリーコントロール内に表示される各項目に関し
て利用でき、右のマウスボタンをクリックすると、選択
された項目に関する共通メニューコマンドのリストが提
供される。
【0026】この例では、シーンカテゴリは、グローバ
ルパラメータと各オープンワールド内に含まれているシ
ーンを表示する。グローバルパラメータは、オブジェク
トプロパティとイベントアクション双方内のあらゆるシ
ーンの階層内のどこにでも参照符号を付けて配列してお
くことのできる識別子である。各シーンの下には、シー
ンに関する詳細さのレベル及び各詳細さのレベルから成
るオブジェクトの階層リストと共に、そのローカルパラ
メータ(あれば)と視点のリストがある。一見すると、
各詳細のレベルは互いに排他的である。言い換えると、
一時に一つの詳細さのレベルが見られるだけである。詳
細さのレベルの下にあるツリー内のオブジェクトの順番
は、その引用順番である。別のオブジェクトの下に表示
されるオブジェクトは、チャイルドオブジェクトと呼ば
れ、その所有者はペアレントオブジェクト又は複合オブ
ジェクトと呼ばれる。ツリー内のある項目は、別のシー
ンを参照するワームホール(後述する)のようなツリー
内の他の項目を参照として載せてもよいし、或いはデー
タソースカテゴリに関するツリー内のデータソースを参
照するデータエレメントを参照として載せてもよい。
【0027】データソースカテゴリは、各オープンワー
ルドに含まれる照会のリストを表示する。各データソー
スは、照会パラメータ、列名又は別名、及び照会を構成
するのに照会線図エディタが使われた場合は線図のリス
トを順に含んでいる。提示されるときには、照会線図に
は、構成に使われているブロックとコネクションのリス
トが含まれている。リソースカテゴリは、シーンやその
図表コンテンツ(ノード)に関するプロパティ値の計算
に使われる実行リソースのリストを表示する。基本的リ
ソースタイプには、カラーマップ、カラーシーケンス、
ストック画像、及びユーザークラスが含まれる。
【0028】データタブ14は二つの情報のカテゴリを
含んでおり、その1つは照会線図を構成するのに用いら
れるエレメントのパレットを提供する照会デザインであ
り、もう1つはアクティブなデータベーススキーマのコ
ンテンツをブラウジングできるようびするデータベース
コンテンツである。照会デザインカテゴリのコンテンツ
はパレット形式で提示される。データベースコンテンツ
のカテゴリはツリー形式で提示され、そこでは各表の下
の列名と視界は、列名と種類がダブルコロンで分けられ
て(例えば、employee_name::varchar)表示される。デ
ータベースコンテンツツリーは、アクティブなスキーマ
をブラウジングするのに用いることができる。
【0029】各オープンワールドは、ゼロ又はそれ以上
のオープンエディタウインドウを含んでいる。4つのタ
イプのエディタはそれぞれ、エディタのタイプ及びエデ
ィタのコンテンツを記述するテキストがその後に続く、
独特のアイコンを表示する。テキストのフォーマット
は、下記のような省略フォーマット又は拡張フォーマッ
ト、即ち、 EditorType : Contents 又は、 EditorType : WorldName[.ExtendedContents] であり、ここに、EditorTypeとはエディタのタイプ
(「シーン」、「データエレメント」、「照会」又は
「ワールド」)であり、WorldNameとはコンテンツを含
むワールドの名前であり、Contentsとは編集されている
オブジェクトの短い名前(例えば「DataElement1」)
であり、ExtendedContentsとは編集されているオブジェ
クトの長い名前であり、これはピリオドで分けられた全
ペアレントオブジェクトの象徴化された名前を含んでい
る(例えば「Scene1.ScatterChart 1. DataElement
1」)。
【0030】2つ以上のエディタウインドウがワールド
の所与の部分に対し開かれる。例えば、同一のシーン
は、シーン全体を見るために、100パーセントの倍率
で、一つのエディタの中で編集され、一方別のエディタ
がそのシーンのより細かい部分にズームインする。どち
らかのエディタでシーンが変更されると、両方のウイン
ドウに反映される。
【0031】シーンエディタウインドウは、トップレベ
ルシーンのコンテンツを図表的に編集し、デバグするた
めに用いられる。エディタは、デザインモードとランタ
イムモードとの二つのモードを有している。デザインモ
ード画面では、オブジェクトはグラフィックパレットか
ら追加され、照会の実行なしで表示される。一つ又はそ
れ以上のプロパティ値を通してデータソースに結合され
るオブジェクトは位置ホルダオブジェクトで表示され
る。更に、オブジェクトイベントは何も生成されないの
で、オブジェクトに関連する何らのアクションも実行さ
れない。シーンは何れのズームレベルででも編集するこ
とができ、それはナビゲーションツールバーから設定す
ることができる。
【0032】デザインモード画面は、セレクターバーと
パラメータバーの二つのオプションのドッキングツール
バーを提供する。シーンは別々に異なるズームレベルで
表示されるが、そこでは、各表示又はドローイングによ
ってLODが定められる。セレクターバーは、現在LO
Dが編集されているコントロールを提供する。パラメー
タバーは各パラメータ用のボタンをシーン内に表示す
る。シーンがパラメータを有していなければ、画面メニ
ューから手動でオンに切り替えられない限りバーは表示
されない。パレットに表示されるパラメータは、オブジ
ェクトのプロパティの値を設定するためのオブジェクト
インスペクタで用いられる。パラメータバーは、パラメ
ータが作成、削除、又は編集されると、自動的に更新さ
れる。
【0033】ランタイムモードが選択されると、シーン
のコンテンツは、以下に述べるように、バイトコードへ
コンパイルされて表示される。何らかの関連する照会が
実行されると、オブジェクトイベントが生成され関連す
るアクションが実行される。ランタイムモードがナビゲ
ーションの全性能をサポートするので、他のシーンへの
ワームホール又はジャンプリンクはアクセス可能であ
る。他のシーンへジャンプすると、デザイン画面も新し
いシーンに切り替えられる。ランタイムモードは編集作
業の間に、第二のウインドウを開くことによりデザイン
視界内で同時に見ることができる。同一シーンを表示し
ている多種多様なランタイム画面は独立して作動し、互
いに従属関係にはない。各画面は、アクティブなランタ
イム画面のためのワールドシーンツリー内に反映される
グローバルパラメータの各々のコピーを有している。
【0034】データエレメントエディタウインドウは、
照会結果によるデータポイントの表示を図表的に編集す
るために用いられる。データエレメントエディタウイン
ドウが、デザインモードで図12に示されている。セレ
クターバーとデータソースバーの両方を見ることができ
る。
【0035】シーンエディタウインドウと同様に、デー
タエレメントエディタはデザインモードとランタイムモ
ードの二つのモードを有している。デザインモード画面
ではオブジェクトはグラフィックパレットから追加さ
れ、照会の実行なしで表示される。一つ又はそれ以上の
プロパティ値を通してデータソースに結合されるオブジ
ェクトは、位置ホルダオブジェクトで表示される。更
に、オブジェクトイベントは何も生成されないので、オ
ブジェクトに関連する何らのアクションも実行されな
い。データエレメントは何れのズームレベルででも編集
することができ、それはナビゲーションツールバーから
設定することができる。
【0036】データエレメントは別々に異なるズームレ
ベルで表示されるが、そこでは、各表示又はドローイン
グによってLODが定められる。更に、データエレメン
ト内の異なるオブジェクトは、異なる軸に関連付けられ
る。例えば、取引の量に関するバーを有するストックチ
ャートは二つのY軸を有する。各取引日に関するデータ
エレメントは、価格軸に関連するハイ/ロー/クローズ
バーと、量軸に関連する量バーとを有している。セレク
ターバーは、LODと軸のセットとを編集できるコント
ロールを提供する。パラメータバーは各パラメータ用の
ボタンをシーン内に表示する。パレットに表示されるパ
ラメータは、オブジェクトのプロパティの値を設定する
ためのオブジェクトインスペクタで用いられる。パラメ
ータバーは、パラメータが作成、削除、又は編集される
と、自動的に更新される。
【0037】データソースバーは、データエレメントの
範囲内にある各データソース用のボタンの帯を表示す
る。各ボタンは、オブジェクトインスペクタで用いられ
る列名に対応している。レイアウトを単純にするため、
単一のデータソースが表示される。ネストされたレイア
ウトでは、各照会に関して一つの行が表示される。照会
は、その関連データエレメントのオブジェクトがデータ
エレメントの先祖としてワールドのシーンツリー内に存
在するかどうかという視野で考えられる。データソース
の列が作成、削除、又は編集されると、データソースバ
ーが自動的に更新される。
【0038】照会エディタは、3つの照会の画面を提示
するが、その3つとは、正しく書式化された照会結果を
表示するデータシートと、照会の構成のブロック線図を
提供する照会線図画面と、実際のSQLテキストを表示
するSQL画面とである。ユーザーは、ウインドウの一
番下でスクロールバーの左にある、対応するモードボタ
ンの一つをクリックすることにより、画面間の切り替え
を行う。
【0039】データシート画面は表になった照会の結果
を示す読み出し専用の画面である。照会がパラメータ化
されていれば、データシートは、デフォルト値が照会に
含まれる各パラメータに利用できるときにだけ利用でき
る。データシートは、編集作業の間は、第二ウインドウ
を開くことにより照会線図又はSQLテキスト画面で同
時に見ることができる。照会を変更すると、データシー
トが対話型でリフレッシュされることになる。データシ
ートモードが選択されない場合は、他の画面への変更が
あってもリフレッシュされない。行は、画面へ入ってく
る場合、データシートへロードされる。
【0040】ユーザーは、ワールドマネージャのデータ
タブか又は挿入メニューからブロックを選択することに
よって、照会線図にブロックを追加する。ブロックは、
ソースブロックの出力ポート及び目標ブロックの入力ポ
ートをクリックすることによって接続される。替わり
に、ブロックは、マウスをポートの一つから他のポート
へドラッグし、ユーザがマウスボタンを放すまで表示さ
れる「ゴム結合」接続ラインによっても接続することが
できる。どちらの場合も、カーソルは、接続操作を示す
ために、ポート選択アクションの間で変更される。
【0041】SQL画面は、任意の選択照会が作成さ
れ、編集できるようにする。更に、線図エディタによっ
て生成される式の編集もできるようにする。しかし、S
QLが編集されれば、線図は利用できなくなる。この場
合、ユーザーに警告するために確認ダイアログが表示さ
れる。
【0042】ワールドエディタは、バーチャルワールド
と対話するために、構成画面と疑似コード画面の2つの
画面を提供する。ワールド構成ウインドウは、全ワール
ドに関する機構の階層的な画面を表示する。ワールドル
ートボックスの下にあるボックスはそれぞれ、1つのシ
ーンに対応している。シーンの下にあるボックスは、デ
ータエレメント又はワームホールにより接続されている
他のシーンに対応している。これらの何れかのボックス
をダブルクリックすると、対応するシーン又はデータエ
レメントエディタが開く。ボックス間のリンクは、ワー
ルドシーンツリー内の階層を表す。
【0043】一つのボックスは、図表コンテンツに含ま
れる各データソース及びワームホール用の一つのチャイ
ルドボックスを有している。ワールドの構成次第である
が、ツリーの深さは無限である。例えば、一つのシーン
がもう一つのシーンまでのワームホールを含んでおり、
そのシーンが今度は第一シーンまで戻るワームホールを
含んでいれば、ツリーは第一及び第二シーンの無限の縦
方向シーケンスを含んでいることになる。その結果、ツ
リーは、ユーザーによって明示的に拡張される場合にの
みレベルを拡張することとなる。
【0044】その下の各リンクとボックスは、リンクの
トップにあるボタンをクリックすることにより、表示さ
れたり隠されたりする。最初に表示されるとき、ワール
ドボックスはワールドに含まれる全シーンを表示するた
めに拡張される。ボックスが拡張されると、ツリー構造
は新たに表示されるボックス用の空間を作るようになっ
ている。更に、ワールドのパラメータ化も構成線図に表
示される。グローバルパラメータ、シーンパラメータ、
及び照会パラメータは、その入力としての役割を示すボ
ックスの左側に伸びるテキストボックスとして表示さ
れ、一方照会列は、その出力としての役割を示すボック
スの右側に伸びるテキストボックスとして表示される。
パラメータと列名が別のエディタウインドウで追加、削
除、又は変更される度に、その変更を反映させるために
ボックスが更新される。
【0045】シーン又は照会パラメータが、階層中でよ
り上層のパラメータ若しくは列に設定されている場合に
は、パラメータのテキストボックスは、ソース値に対し
て「配線されている」と示される。これらの接続は構成
線図内で編集することもできる。新規接続を確立し、パ
ラメータの値を設定するためには、当該パラメータに対
する入力接続点と、ソースパラメータ又は列に対する出
力接続点とをマウスでクリックする(順不同)。代わり
に、接続点は、マウスを一方からもう一方へドラッグし
て、その結果ユーザーがマウスを放すまで表示される
「ゴム結合」接続ラインによっても接続できる。どちら
の場合も、カーソルは、接続操作を示すために、選択ア
クションの間で変更される。ここでの注意点は、接続を
有効なものにするためには、ソースはツリー階層中のよ
り高層に存在せねばならないということである。リンク
を排除するには、ユーザーは当該リンクを選択して消去
キーを押せばよい。
【0046】疑似コード画面は、ワールドの全コンテン
ツの読み出し専用画面をテキストフォーマットで提供す
る。疑似コードは、ワールド名と初期シーンから成る初
期ヘッダーを表示するが、これに引き続いて以下のセク
ション、即ち、 グローバルパラメータ ユーザークラス カラーマップ カラーシーケンス ストック画像 データベース接続 データソース シーン が表示される。
【0047】 1つの実行例では、セクションは1組の点線で、 −−−−−−−−−−−−−−−−−−−− セクション名 −−−−−−−−−−−−−−−−−−−− のように囲まれている。
【0048】更に、データソースとシーンは、 −−−−−−−−−−−−−−−−−−−− のような一本の分離線により分けられている。
【0049】これに続くセクションは、各疑似コードエ
レメントに対するフォーマットを表示する。ここで、角
括弧(‘[’と‘]’)はオプションのテキストを意味
し、垂直分離線(‘ヲ’)は、二者選択を意味する点に
注意されたい。 グローバルパラメータフォーマット DataType ParamName [(Buit-in)] ディスクリプション: Description デフォルト値: (None)ヲValue アクセス: [PrivateヲPublic] ユーザークラスフォーマット ClassName 親クラス: (None無し)|ParentClass1 ... [ParentClassN] カラーマップフォーマット(単色): ColormapName 単色: ColormapName(BLより下)=valueL[(ColorName)] ... ColormapName(Bi−Bi+1)=valuei「(ColorName)] ... ColormapName(BUより上)=valueU[(ColorName)] カラーマップフォーマット(混合色) ColormapName 継続カラー(混合色) ColormapName(BLより下)=valueL[(ColorNameL)] ... ColormapName(Bi)=valuei「(ColorNamei)] ... ColormapName(BUより上)=valueU[(ColorNameU)] カラーシーケンスフォーマット ColorSeqName ColorSeqName[0]=value0[(ColorName0)] ... ColorSeqName[N-1]=valueN-1[(ColorNameN-1)] ストック画像フォーマット ImageName フォーマット:[BitmapヲWiondows Metafile|JPEG] データベース接続フォーマット: ConectionName サーバー: Server データベース: Database ユーザー: User デフォルトスキーマ: データソースフォーマット: DataSourceName[(DataType param1,...)] 接続: ConnectionName SQL: SQL シーンフォーマット: SceneName[(DataType param1,...)] ローカルパラメータ: パラメータネーム: paramName ディスクリプション: Description デフォルト値: [value] ... 画面ポイント: 画面ポイント名:ViewpointName[(Buit-in)] ディスクリプション: Description ロケーション: (X,Y) ズーム係数: Zoom% ... オブジェクト: ExtendObjectName プロパティ: DataType PropertyName=PropertyValue ... イベント: EventName(DataType EventParam1,...) [Param=Expression] ... [Action(Option1,...)] ... 疑似コードは、カラーコード型構文を使用して表示され
る。例えば、セクションのヘディングは緑で、データタ
イプは青で、そして他の全テキストは黒で表示される。
疑似コードは、ワールド内どこかで変更がある都度更新
されることになる。
【0050】出力ウインドウは、ワールドが展開され見
えてくるにつれ、コンパイルと実行情報を表示する、ド
ック可能なコントロールバーである。これはまた、警告
とエラーメッセージも表示する。出力ウインドウは、ド
ックされている時は縦方向にサイズを変えることがで
き、浮動時には縦横両方向にサイズ変更できる。
【0051】ランタイムモードでは、視点ダイアログボ
ックスがワールドをナビゲートするために設けられる。
直接アクセスできるようになっているシーンは、シーン
・コンボボックスに表示される。選択されたシーンのた
めの視点は、視点リストボックスに表示される。視点を
選択すると位置編集コントロールの値が更新される。こ
れらのコントロールの値は、位置とズーム係数を指定す
ることにより、注文指示通りに変更される。
【0052】レイアウトウィザードは、新しくレイアウ
トを作るときにユーザーを各段階を通して案内するため
に設けられている。全レイアウトに共通な最初の2段階
は、レイアウトを選択して、次にデータソースを選択す
ることである。次に、各レイアウトは、当該レイアウト
を創造するために必要な限りの多数の追加的レイアウト
特有の段階を有する。
【0053】レイアウトは、軸のセットのようなサポー
トするコンテクスト情報を伴うデータソースに由来する
データエレメントを空間的に配列させたものである。レ
イアウトは、以下の5つのカテゴリのセット、即ち、チ
ャート−連続情報を提示するために使用される、マップ
−1つのデータソース内の多数の曲線や連続情報をレイ
アウトするために使用される、階層−オブジェクトの従
属物を示すために使用される、パターン−独立したオブ
ジェクトを指示されたパターンでレイアウトするために
使用される、フォーム−データソース内の単一の記録を
表示するために使用される、のどれかに当てはまる。
【0054】レイアウトは、シーン或はデータエレメン
ト描画上のどこにでも配置できる。マップや分散チャー
トのような幾つかのレイアウトタイプには、2つ以上の
データエレメントをサポートするものもあり、このよう
にして情報を「階層化する」ことができるわけである。
この場合、各データエレメントには、現行のズームレベ
ルに依存する視認性が割り当てられるわけで、ズームレ
ベルを上げるとより多くの情報が提示できるようにな
る。
【0055】軸ノードは、それらを必要とするレイアウ
トに添付されている。数値ではなくてテキストレベルに
基づく軸を有する棒チャートや列チャートのような幾つ
かのチャートタイプでは、これらの軸の内の1つ又はそ
れ以上がデータソースを必要とするので、データ結合型
である。サポートされる軸には、線形軸、対数軸、及び
日付/時間軸が含まれる。これらの軸は、自動調整式ラ
ベルと小刻みな増分もサポートするので、ズーミングは
より多くの情報を正確な軸値で提供することができる。
【0056】ある種のレイアウトタイプでは、データエ
レメントを位置づけるのに、軸よりもむしろロケーター
を使用するものもある。これらのロケーターは、デザイ
ンタイムには目に見えて表示されないが、そのプロパテ
ィは、レイアウトの他のオブジェクトのプロパティと共
に、オブジェクトインスペクター内に表示される。レイ
アウト内のデータエレメントがレイアウトそのものを保
有するという複合レイアウトも使用できる。普通は、第
2レイアウトに関連するデータソースがパラメータ化さ
れ、1つ又はそれ以上のパラメータが親レイアウトのデ
ータソースの列とリンクされる。
【0057】識別子は、バーチャルワールド内の、オブ
ジェクト、データソース、シーン、パラメータ、ユーザ
ークラス、カラーマップ、カラーシーケンス、視点のよ
うなエレメントにとっての名前である。識別子は、ケー
スには敏感ではなく、1文字に等しいかそれ以上ならど
んな長さでもよい。
【0058】オブジェクトのプロパティは、オブジェク
トの外見を関数式の事項で定義づける、名前の付いた属
性から成る。これらのプロパティへのアクセスはオブジ
ェクトインスペクターを介して行われる。その値は、式
を計算した結果に基づき、ランタイムに設定される。式
には、ランタイムに結果として出る行に自動的に結合さ
れる1つ又はそれ以上のデータソース列の名前を含んで
いる。
【0059】オブジェクトプロパティ式は結果的に、Bo
olean、Numeric、String、Point、PointList、及びImag
eといった基本的なデータタイプの内の1つとなる。導
き出されるNumericタイプには、Color、DateTime、Enu
m、Integer、及びPercentageが含まれる。導き出される
Stringタイプには、FilePath(若しくはURL)及びFo
ntNameが含まれる。
【0060】これより図2の説明に入るが、ここではオ
ブジェクトインスペクター30についてより詳しく示し
ている。オブジェクトインスペクター30は、属性名_
列100とプロパティ列110という2つの列を提供す
る。図2で検査されるオブジェクトは、プロパティ、1
12、114、116、118、120、122、12
4、126を有する。特に、プロパティ114、11
6、118、120、124、126は静的定数であ
る。しかしながら、プロパティ112と122は、動的
であって、実行時に値が決められる。動的なプロパティ
112と122に起因して、データ駆動アプリケーショ
ンを創造する際には、ユーザーは当該動的プロパティを
入力しさえすればコードが自動的に生成される。このよ
うに、動的プロパティ112と122のデータ結合は、
継ぎ目無くプロパティシート30へと統合される。
【0061】オブジェクトインスペクターウインドウ3
0は、オブジェクトのプロパティとイベントを表示する
ドック可能なコントロールバーである。オブジェクトイ
ンスペクターは、ドックされている時には横方向にサイ
ズ変更することができ、浮動時には縦横両方向にサイズ
変更することができる。ウインドウは、ドラッグ中にそ
の位置がドッキングサイトと重なるときには、ワールド
のワークスペースの左又は右にドックされる。オブジェ
クトインスペクター30は、シーンエディタ又はデータ
エレメントエディタウインドウが、デザインモードで稼
働しているときに表示され、エディタの範囲内の全オブ
ジェクトのリストを保有するドロップダウン・コンボボ
ックスを表示する。「ドット」表記法は複合オブジェク
トを示すために使用される。例えば、“ScatterChart
1.DataElement1"は、DataElement1がScatterChart1に
所有されるオブジェクトであることを表している。
【0062】オブジェクト選択コンボボックスの下に
は、あるオブジェクトに関してのプロパティ又はイベン
トの何れかを表示するタブ式シートがある。プロパティ
のタブが選択されると、選択されたオブジェクトのプロ
パティの値を設定するため、2列入力用紙が表示され
る。左列は、プロパティの名前を表示する読み出し専用
列であり、もう一方の右列は、プロパティの値を表示す
る読み出し/書き込み列である。右列に入力される値
は、定数でもよいし、或はデータソースからのパラメー
タの関数又は名前を含んでいる計算値であってもよい。
プロパティ値が計算されるタイプのもの(有限な数の値
にしか設定できない値)であるときは、ドロップダウン
・コンボボックスはそのプロパティにとって正当な値を
リストにして表示される。計算されるタイプには、これ
に限定するわけではないが、次のもの、即ち、フォント
名(例:“Arial",“Courier")、カラー(例:赤、
青)、テキスト整列(例:左、右)、テキストの固定ポ
イント(例:左下、右上)、ブール値(例:真、偽)、
線スタイル(例:実線、点線)、充填パターン(例:べ
た、横方向)が含まれる。
【0063】プロパティが日付或は時間であれば、フィ
ールドがアクティブになるとカレンダーコントロールが
プロパティ値の下に表示される。
【0064】フォーム及びデータエレメントオブジェク
トは、オブジェクトインスペクターのリストに載ってい
るQueryParametersオブジェクトを介して照会パラメー
タの値全体を制御する。QueryParametersオブジェクト
は、フォーム又はデータエレメントの子オブジェクトで
あり、各照会パラメータについてのプロパティを保有し
ている。照会がパラメータ化されていない場合には、Qu
eryParametersオブジェクトは、オブジェクトインスペ
クターに表示されない。オブジェクトに含まれる値は、
ランタイムに、当該照会が実行される前に、照会プロパ
ティーを設定するために使用される。
【0065】図3は、抄録ベースクラスVcPropertyBag
200のプロパティオブジェクトモデルを示している。
VcPropertyBag200は、1つ又はそれ以上の導き出さ
れたクラスに特有のプロパティのセットに対しコンテナ
の役目を果たす。VcPropertyBag200は、プロパティ
とそれらの値にアクセスしそれらを操作するためのイン
ターフェースを提供する。それは又、導き出されたオブ
ジェクトのプリパティのセットについてのタイプ情報を
入手するための純粋に仮想的な方法も提供する。
【0066】VcPropertyBag200から引き出されるの
は、抄録べースクラスVcScene202、及び抄録ベース
クラスVcDrawingNode204である。VcScene202はシ
ーンのためのクラスであって、VcPropertyBag200か
らプロパティを継承する。VcDrawingNode204は、シ
ーンに表示される全グラフィカルオブジェクト用の抄録
ベースクラスであり、やはりVcPropertyBag200から
プロパティを継承する。VcDrawingNode204は、ムー
ブメントをサポートしてプロパティを操作するため、ス
ケーリングのため、及び他の標準的な編集オペレーショ
ンのための純粋に仮想的な方法のセットを提供する。導
き出されたクラスは、適当なプロパティに対する編集オ
ペレーションをマッピングすることに責任を負う。
【0067】VcPropertyBag200は又、クラスVcPrope
rty210のm_propertiesというプロパティのセットを
有しており、このセットには、名前と計算タイプ情報m
_expectedTypeを始めとして、特定オブジェクトプロパ
ティについての全情報が含まれている。m_expectedTyp
eは、求められたプロパティ値のデータタイプ(例:ブ
ール、数字、ストリング等)を記述し、オブジェクトへ
アクセスする経路m_pathを記憶し、そして当該プロパ
ティに関するデザインタイム値m_designValueとランタ
イム値m_runtimeValueを管理する。デザインタイムは
常に定数に決められるので、コンテナオブジェクトは孤
立して(データ或はパラメータにリンクされずに)表示
されることになる。ランタイムの値も定数である場合、
この2つの値は同じ値に設定される。
【0068】VcProperty210はプロパティの名前用の
保管場所を提供するための標準的なストリングクラスで
あるCString212に属するm_nameプロパティを有す
る。VcPropertyオブジェクト210は又、VcPropertyPa
th214と呼ばれるm_pathプロパティのクラスも有し
ており、これはVcPropertyBagのプロパティのセット内
だけに特有のものであるプロパティに対する識別子を記
憶し、ポインターm_nextをVcPropertyPathのリンクさ
れたリストに提供して一まとめにされたプロパティバッ
グをサポートする。
【0069】VcProperty210は又、VcPropertyValue
216と呼ばれるクラスに属する、プロパティm_desig
n値も有する。VcPropertyValue216は、プロパティ
(VcFunction220)にとってのデザインタイム値を表
現する関数を記憶し、またユーザーにより入力された式
を記憶するので、ケース感受性、スペーシング、及び他
の特定項目が、ユーザーの入力に応じて表示されること
になる(CString218)。
【0070】VcFunction220は、構文解析された式エ
レメントのための抄録ベースクラスであり、この関数は
コンテクストオブジェクトを供給することによって求め
られる式ツリーにとってのルートエレメントである。CS
tring218は、ユーザーにより入力される式の保管場
所を提供する標準的なストリングクラスである。
【0071】最後に、VcPropertyオブジェクト210は
また、抄録ベースクラスVcPropertyValue222に属す
るm_runtime値も有する。VcPropertyValue222は、
当該プロパティに対するランタイム値を表す関数を記憶
し、またユーザーにより入力された式を記憶するので、
ケース感受性、スペーシング、及び他の特定項目が、ユ
ーザーの入力に応じて表示されることになる。
【0072】これより図4に移るが、ここでは模範的バ
イトコードの実行を表す線図が示されている。本例で
は、ユーザーは関数を式の形で規定している。式は続い
て構文解析されバイトコードが生成されるが、このバイ
トコードは所望のオペレーションを表すインストラクシ
ョンのハイレベルのセットであり、ランタイムに実行さ
れるものである。バイトコードの実行については図4に
図解されている。
【0073】図4は、模範的VcStmtCreatShapesバイト
コード302の実行について示している。バイトコード
302は、実行されると特定の形態をしたオブジェクト
のインスタンスを作りだし、そのオブジェクに対するト
ークン型の名前をハッシュテーブル・ルックアップ用に
記憶する。バイトコード302により生成されるオブジ
ェクト形態を構築するための1つの模範的実行例として
の疑似コードをブロック310として示している。当該
オブジェクトの形態を構築するための実行疑似コードブ
ロック310では、VcStmtCreatShape'sPerform()方法
が呼び出されると、それはファクトリィオブジェクトの
CreatShape()方法を呼び出して新しい形態のオブジェク
トを創造し、次にそのオブジェクトに対するポインタ
を、コンテクストオブジェクトにより所有されているハ
ッシュテーブルに記憶して、後刻プロパティ設定時のル
ックアップに備える。最後に、本方法は、その創造時に
確立される形態に対する参考事項をリリースする。
【0074】バイト符号302は、当該形態のトークン
化された名前の保管場所を提供するために、標準的なCS
tringクラス300のメンバーであるm_objectIdプロパ
ティを有する。バイトコード302は、シーン内で形態
を創造すことに責任を負う抄録ベースクラスVcShapeFac
tory304のメンバーであるm_factoryプロパティを有
する。VcShapeFactory304の導き出されたクラスは、
形態の特定のクラスを創造し且つそれをキャンバス表示
リストに加えるために、純粋に仮想的なCreatShape()方
法を無効にしなければならない。
【0075】VcShapeFactory304は、概念的なベース
クラスVcShape306から導き出される形態オブジェク
トのインスタンスを創造する。VcShape306は、全形
態オブジェクトにとっての抄録ベースクラスである。そ
れは、形態プロパティを設定するためのトランザクショ
ン指向の多形態インターフェースを提供する。VcShape
の導き出されたクラスは、レンダリングとヒット検知サ
ポートを実行することに責任を持つ。
【0076】図4はまた、抄録クラスVcStmtSetPropert
y320についても示しているが、これは実行されると
形態プロパティの値を設定するバイトコードステートメ
ントのための抄録クラスである。VcStmtSetProperty3
20の導き出されたクラスは各データタイプを表現す
る。抄録クラスVcStmtSetProperty320は、形態のト
ークン化された名前と、プロパティに独自的にアドレス
するために必要なプロパティアイデンティティのセット
とを記憶する。VcStmtSetProperty320は、CStringク
ラス322のメンバーであるプロパティm_objectId
と、クラスVcPropertyPath324のメンバーであるm_p
ropPathプロパティとを有する。VcPropertyPath324
は、プロパティの形態セット内に特有のプロパティのた
めの識別子を記憶して、1まとめにされた形態をサポー
トするために、リンクされたリストVcPropertyPathにポ
インタm_nextを提供する。
【0077】今度はVcStmtSetProperty320がVcStmtS
etStringProperty326により継承されるが、これは、
形態のプロパティの値をストリング値に設定し、且つ、
形態のプロパティを設定する前にプロパティ値を求める
ための抄録ストリング関数VcSftn328に対するポイン
ターを保有している。VcSftn328は所与のコンテクス
トのためのストリングに対し評価を行うVcFunctionから
導き出されるが、この関数は、関数の構文解析されたエ
レメントを保有している構文解析表現ツリーに対するル
ートエレメントである。
【0078】VcStmtSetStringPropertyバイトコード3
26の1つの実施例を、ブロック330に示す。形態の
プロパティを設定するためのこの実施例においては、Vc
StmtSetStringProperty's Perform()方法が呼び出され
ると、それはコンテクストのハッシュテーブルから当該
形態を検索する。それは次に、所与の文脈を用いてスト
リング関数を求め、その結果をプロパティパス経由で当
該形態に渡す。
【0079】これより図5に入るが、ここではサンプル
構文解析型プロパティ関数を説明する線図を示してい
る。本例中の関数は、VcStmtSetStringProperty関数3
50である。関数350は、オブジェクト識別値“Text
1"352を有しているが、これはクラスCstringのメン
バーである。これは、設定予定のプロパティを保有する
形態オブジェクトのトークン化された名前である。VcSt
mtSetStringProperty350は、オブジェクトText1によ
り所有されるTextプロパティの値を、スペース記号によ
って分離されている付属のlast_nameからfirst_name
までにより作り出される計算値に設定する、サンプル・
バイトコード・ステートメントである。本例では、m_o
bjectIdは目標オブジェクト“Text1"を識別するストリ
ングを指し、m_propPathはテキストオブジェクト内に
設定される予定のプロパティのアドレスを指し、m_ftn
はプロパティの値に対し評価を行うストリング関数を指
す。
【0080】VcStmtSetStringPropert350は、その値
がブロック354で設定されるプロパティパスを有す
る。最後に、VcStmtSetStringProperty350はVcSftnC
oncatenate関数360を実行するように指定されてい
る。VcSftnConcatenate360は、2つのメンバースト
リング関数であるm_ftn1(first_name+〃〃)とm_f
tn2(last_name)の結果を連結する、VcSftnから導き
出されるストリング関数である。
【0081】ブロック360内では2つの関数が更に細
かく規定される。ツリーの左枝を下って行くとVcSftnCo
ncatenate関数362が示されている。VcSftnConcatena
te362は、2つのメンバーストリング関数m_ftn1とm
_ftn2を使用して、式(first_name+〃〃)の数値を
求めるすることに責任を負う。ブロック362内には、
2つの関数、即ちm_ref(“first_name")に記憶され
ている識別子の現在値を調べる責任を負うストリング関
数であるVcSftnLookup関数364と、一定ストリング値
を記憶する責任を負うストリング関数であるVcSftnCons
tant370とが追加されている。
【0082】ルックアップ関数364の値は文字ストリ
ング366により求められるが、これは識別子の名前、
“fisrt_name"、を保管する場所を提供する標準ストリ
ングクラスである。定関数370で値を求めると、その
結果はブロック372のスペース(ストリング定数
“ ”)である文字ストリングになる。
【0083】VcSftnConcatenate関数360からツリー
の右側を下っていくと、VcSftnLookup関数380が求め
られる。VcSftnLookup380は、m_ref(“last_nam
e")に記憶されている識別子の現在値を調べる責任を負
うストリング関数である。VcSftnLookup関数380の数
値を求めると、文字ストリングになる。
【0084】シーンからコードを生成するプロセスのオ
ブジェクトモデルについては、図6により詳しく示す。
当該シーンは、シーン内の各形態と論理エレメントのた
めのコードジェネレータを表す描画ノードのリストを保
有する。オブジェクトVcScene400は、視認区域に表
示される全グラフィカルオブジェクト用の描画層若しく
はキャンバスの輪郭を定める。CreatMethod()関数は、
実行されると、グラフィカルオブジェクト付きのシーン
を創造して定住させる一連のバイトコード・ステートメ
ントを生成する。これらのステートメントは、VcCGMeth
od410と呼ばれるオブジェクトに記憶される。
【0085】VcScene400は、クラスVcDrawingNode4
02から導き出されるオブジェクトのリストm_nodesを
保有している。VcDrawingNode402は、シーンのコン
テンツを表現する全形態と論理ノードのための抄録ベー
スクラスである。VcDrawingNode402は、導き出され
たクラスにおけるVcStmt実行ステートメントのリストを
生成するためのインターフェースGetExecStmt()を定義
する。VcDrawingNode402は、VcShapeNode404のサ
ブクラスである。VcShapeNode404は、形態を生成す
るノード用の抄録ベースクラスである。VcShapeNode4
04の導き出されたクラスは、各タイプの形態のプロパ
ティを構築し設定するのに必要なバイトコードステート
メントを生成する。
【0086】またVcShapeNode404は、VcDataNodeク
ラス406のサブクラスであるが、これは、データソー
スをオブジェクトのレイアウトを表すグラフィカルテン
プレートに照会の各行ごとに結合させる形態ノードのク
ラスである。VcDataNodeにより生成されるバイトコード
は、データソースにより供給される結果のセットを反復
し、オブジェクトのセットを創造し、それらをアクティ
ブなシーンに付け加える。
【0087】VcDrawingNode402はまた、描画ノード
のクラスVcLogicNode408によっても継承されるが、
このクラスが今度はVcDataSource410に継承される。
VcLogicNode408は、形態ノードとユーザーの間の関
係を定義するバイトコードを生成する描画ノードのクラ
スである。VcDataScouce410は、データの抄録ソース
を表現する論理ノードのクラスである。導き出されるク
ラスは、レイアウト中のグラフィックを生成するため
に、データノードにより使用されるデータの表になるバ
イトコードを生成することに責任を負う。
【0088】VcDataNode406は、VcDataSource410
のインスタンスを保有する。VcDataSource410は、ク
ラスVcQueryDataSource412に継承される。VcQueryDa
taSource412は、照会インスタンスを構築し、ランタ
イムパラメータに取って代わり、照会を実行するバイト
コードを生成するために、照会オブジェクトと対話をす
ることに責任を持つ。
【0089】次にVcQueryDataSource412は、列とパ
ラメータの名前とタイプを始めとする、SQL照会につ
いての情報を記憶する、VcQuery414のメンバーであ
る照会オブジェクトm_queryを指す。またVcQueryオブ
ジェクト414は、VcColumnクラス416に記憶されて
いる列のセットと、VcParameterクラス417に記憶さ
れているパラメータのセットとを有する。VcColumn41
6は、データベースから検索されるデータの列について
の情報を記憶するので、バイトコード実行ステートメン
トにより使用されるコンテクストオブジェクトにより照
会することができる。VcParameter417は、SQL選
択ステートメントに対する引数の役をする名前の付けら
れた位置ホルダオブジェクトを表している。SQLステ
ートメントが実行される時にはその前に、パラメータ
は、パラメータのランタイム値に置き換えられる。
【0090】VcSceneオブジェクト400は、そのCreat
Mehtod()メンバー関数が呼び出されると、クラスVcCG
Method410のインスタンスを生成する。このVcCGMeth
od410は、抄録ベースクラスVcStmt420に属するオ
ブジェクトのセットを有する。VcStmt420は、全バイ
トコードステートメント用の抄録ベースクラスである。
その完全に仮想的な方法Perform()は、導き出される全
クラスにより実行されるべき実行インターフェースを定
義する。VcStmt抄録ベースクラス420は、422、4
24、426、428、430を始めとする多数のバイ
トコードステートメントにより継承される。VcStmtCrea
tShape422は、実行されると特定の形態オブジェクト
のインスタンスを創造するバイトコードステートメント
である。ステートメント422は、ハッシュテーブル・
ルックアップのために、オブジェクトのトークン化され
た名前を記憶する。VcStmtCreatQuery424は、実行さ
れると特定の照会オブジェクトのインスタンスを創造す
るバイトコードステートメントである。VcStmtBeginPro
perties426は、そのプロパティが設定される予定の
形態インスタンスを通知するバイトコードステートメン
トである。VcStmtSetProperty428は、実行されると
形態のプロパティの値を設定するバイトコードステート
メント用の抄録クラスである。導き出されるクラスは、
形態のトークン化された名前と当該プロパティを独自的
にアドレスするのに必要とされるプロパティIDのセッ
トを記憶する各データタイプを表す。最後に、VcStmtEn
dProperties430は、そのプロパティに対する変更が
完了しており、2つ以上のプロパティに依存する何れの
計算をも実行できることを、形態インスタンスに通知す
るバイトコードステートメントである。
【0091】コード実行処理のオブジェクトモデルは、
図4に示すオブジェクトモデルと同様のものである。簡
単に言うと、VcStmtCreatShapeバイトコードは、実行さ
れると、ハッシュルックアップテーブルのオブジェクト
用にトークン化された名前を記録し、特定の形態を呈す
るオブジェクトのインスタンスを創造する。VcStmtCrea
tShapeバイトコードステートメントは、シーン内に形態
を創造することに責任を持つVcShapeFactory抄録ベース
クラスから導き出されたファクトリィオブジェクトを保
有する。更に、VcStmtSetProperty抄録クラスは、形態
のトークン化された名前と当該プロパティを独自的にア
ドレスするのに必要とされるプロパティIDのセットと
を記憶する。VcStmtSetStringPropertyバイトコードス
テートメントは、ストリング値に対する形態プロパティ
の値を設定するが、形態のプロパティを設定する前にプ
ロパティ値を求めるための抄録ストリング関数に対する
ポインタを保有する。
【0092】これより図7に入るが、プロパティシート
入力プロセス440について説明する。プロパティシー
トの使用に際して、ユーザーはある式を入力する(ステ
ップ440)。その式は次に構文解析され(ステップ4
44)、有効性がチェックされる(ステップ446)。
当該式が無効の場合には、必要なデザイン値を使用して
ランタイム値をクリアするよう処置され(ステップ44
8)、エラーメッセージが表示される(ステップ45
0)。そうではなく当該式が有効である場合には、関数
を創造してその関数をランタイム値として記憶する処置
がとられる(ステプ452)。次に、その関数が一定で
あるかどうかを確定し(ステップ454)、もしそうで
あるなら、関数のクローンを作りデザインタイム値をそ
れに替えて記憶する(ステップ456)。
【0093】次に、バイトコードについてのランタイム
実行可能コードを保有するバイトコード実行画像を無効
にする処理が行われる(ステップ458)。次に、ラン
タイムディスプレイを自動的に更新する必要があるかど
うかをチェックする(ステップ460)。更新が必要で
あるなら、バイトコードが生成され(ステップ47
0)、実行される(ステップ472)。ステップ460
又はステップ472から出て処理は終了する(ステップ
474)。
【0094】次に図8に移るが、ここではオブジェクト
を目に見えるように操ることについてのプロセス820
を詳しく説明する。先ずどのオブジェクトプロパティを
どの変更された属性にマッピングするのかを確定する
(ステップ822)。次に、新しい属性値を表すために
定数関数が創造されるが、この値は次にランタイムプロ
パティ値とデザインタイムプロパティ値として記憶され
る(ステップ824)。バイトコード実行画像は、ここ
で無効とされる(ステップ826)。次に、ランタイム
ディスプレイを自動的に更新する必要があるかどうかを
確定する(ステップ828)。もし必要であれば、バイ
トコードが生成される(ステップ830)。ステップ8
30については、図9により詳細を示す。ステップ83
0に続いてバイトコードが実行される(ステップ83
2)。ステップ832については、図11により詳細を
示す。ステップ828又はステップ832から出て処理
は終了する(ステップ834)。
【0095】次に図9に入るが、ここではバイトコード
を生成するプロセス600について示す。先ず、事前に
記憶されたアプリケーションリソースを入力値とみなし
(ステップ602)、第1シーンを入手する(ステップ
604)。次に当該シーン中の第1ノードを入手する
(ステップ606)。次に、そのノード用のバイトコー
ド実行ステートメントを検索する(ステップ608)。
このステップについては、図10により詳しく示す。ス
テップ608に続いて、ノードを追加して処理する必要
があるかどうかを確定し(ステップ610)、必要があ
れば、ステップ608にループバックする前に次のノー
ドを入手する(ステップ612)。
【0096】全ノードの処理が済むと、VcCGMethodを創
造して、当該シーンに関連するステートメントを記憶す
る(ステップ614)。次に、他にもまだ処理する必要
のあるシーンがあるかどうかを確定する(ステップ61
6)。もしあれば、次のシーンを入手して(ステップ6
18)から、ステップ606までループバックし、バイ
トコード生成プロセスを継続する。全シーンの処理が済
むと、バイト符号実行画像を生成し(ステップ620)
て、本プロセスは終了する(ステップ622)。
【0097】次に図10について説明するが、ここでは
オブジェクトノードについてのバイトコード実行ステー
トメントを入手するためのプロセス630を示す。先ず
ノードタイプを確認する(ステップ632)。ノードが
形態なら、形態創造ステートメントを生成し(ステップ
634)、同様にプロパティ捕捉を開始するためのステ
ートメントを生成する(ステップ636)。次に、ステ
ップ638−644で検索された各プロパティを設定す
るためのステートメントを生成する。最後に、当該プロ
パティをコミットするためのステートメントを創造する
(ステップ646)。
【0098】一方、ノードが照会データソースである場
合には、照会を入手して、パラメータ化されたSQLス
テートメントを生成する(ステップ648)。次に照合
可能な識別子として使用される列名を確定する(ステプ
650)。次に、照会を作り上げるためにステートメン
トを創造する(ステップ652)。次に、ステップ65
4−660で、各照会パラメータを設定する1つ又はそ
れ以上のステートメントを創造する。最後に、照会を実
行するステートメントを創造する(ステップ662)。
ステップ646又はステップ662から出て処理は終了
する(ステップ664)。
【0099】これより図11に移るが、ここではバイト
コードを実行するためのプロセス666を示す。先ず、
実行コンテクストが創造される(ステップ668)。次
に、VcCGMethodPerform()方法を呼び出す(ステップ6
70)。当該ステートメントが検索される(ステップ6
72)。次に、当該ステートメントが分類される(ステ
ップ674)。ステップ674に続いて、VcStmtCreatS
hapeステートメントに出会うと、新しい形態を生成し
(ステップ676)、その形態をコンテクストハッシュ
テーブルにトークン化された名前を使用して記憶する
(ステップ678)。ステップ674に続いて、VcStmt
BeginPropertiesステートメントに出会うと、形態情報
をハッシュテーブルで調べる(ステップ680)。次
に、形態のOnPropertiesBegin()方法を呼び出す(ステ
ップ682)。VcStmtSetPropertyステートメントに出
会うと、形態情報をハッシュテーブルで調べる(ステッ
プ684)。次に、その値をプロパティに割り当てるた
めに形態のSetProperty()方法を呼び出す前に、プロパ
ティ式を求める(ステップ686)。VcStmtEndPropert
iesステートメントに出会うと、形態情報をハッシュテ
ーブルで調べる(ステップ690)。次に、形態のOnPr
opertiesEnd()方法を呼び出す(ステップ692)。次
に、当該形態は初期化され(ステップ694)て、キャ
ンバス・ディスプレイリストに付け加えられる(ステッ
プ696)。
【0100】ステップ678、682、688又は69
6に続いて、ステートメントを追加して実行する必要が
あるかどうかをチェック(ステップ698)して、必要
があれば、ステップ674へとループバックする前に、
次のステートメントを入手する(ステップ800)。
【0101】ステップ698に続いて、実行コンテクス
トを削除し(ステップ802)、キャンバスを新しくす
る(ステップ804)。最後に、処理は終了する(ステ
ップ806)。
【0102】グラフ編集システムを説明する図解を図1
2に示す。シーングラフ480はアプリケーションの階
層を表現している。シーングラフ480中の各エレメン
トはノードと呼ばれ、バイトコードの生成に際してこの
ノードが使用される。更に、2つのデータの画面482
と484を示している。画面482は、2つのデータセ
ットから検索されたデータを示すレイアウト(マップ)
である。
【0103】484の画面では、データポイントは単一
画像485として表示してもよく、図12では強調表示
されている。画像485は、位置ホルダ画像付きのデザ
インモードで示されている。画像485に関連する属性
はウインドウ486に示される。各データエレメントは
自身の描画ウインドウを有しているのでユーザーは何れ
のデータエレメントでも編集することができる。このよ
うに、グラフはデータポイントに配置されるので、グラ
フはデータポイント内に存在することになる。
【0104】図12の編集システムを使えば、ユーザー
は、それが次にグラフ自身の中にネストされるデータポ
イント内にグラフを輪郭付けすることができるようにな
るので、図12の編集システムは、孔を開けて掘り下
げ、より詳しく見る方法を提供しているといえる。この
ように、詳細さのレベルを変えながらシーンを示すため
に使用される場合には、ユーザーがドットにズームする
とそれはグラフに変り、ユーザーがグラフにズームする
と、そのデータポイントは追加的なグラフになってユー
ザーがより詳細なものをみるために孔を掘り下げること
ができるようになっている。グラフ編集システムは、単
一データポイントの表現と、親シーン自身と同じ程度に
普遍的にもなるデータポイント用のあらゆる任意の表現
とを編集する便宜的方法を提供する。
【0105】ワームホールの数学について次に説明す
る。ワームホールは、ユーザーが1つのシーンのウイン
ドウを通して別のシーンを覗けるようにする特別なオブ
ジェクトである。図13は、この効果を図解し、目標シ
ーンに合わせて複合ズーム係数がどのように計算される
のかについて示している。
【0106】図13は、ワームホールを示しているが、
これはハイパーリンクの1つの型式であって、ユーザー
に、ハイパーリンクを介してコンテクストの情報を渡す
と同時に、ハイパーリンクを介して反対側を見せるよう
にしている。ハイパーリンクの反対側が観察できるの
で、この反対側はユーザーにとって「透けている」こと
になる。図13では、ワームホール490は、第1シー
ン492から第2シーン494へのウインドウとして示
されている。従来型のハイパーリンクがステートレスで
あるのに対し、ワームホール490は、ステート情報を
提供する。ユーザー位置491からの、第1シーン49
2に対する第1高度(elev1)496と第2シーン49
4に対する第2高度(elev2)との間の関係は、以下の
式で表される。 本例では、ズーム係数はそれぞれ倍率係数を表す。又、
ズーム係数は関係する高度パラメータに関して逆比例す
る値である。例えば、100%のズーム係数では、高度
パラメータは1となるが、一方ズームウインドウが20
0%の場合には、高度パラメータは0.5となる。
【0107】ワームホールウインドウは、シーンに対し
て定義されているパラメータの値を設定する。ワームホ
ールウインドウは又、目標シーンを拡大することのでき
るあるタイプのレンズとしての役割も果たす。ワームホ
ールの目標シーンは、同じシーンを反復的に表示するた
めには、ソースシーンと同じであってよい。ワームホー
ルに適用される増加するズーム係数は、データの密集域
の混乱状態を低減するために、或は倍率を追加して詳細
さのレベルを増やすために利用できるので、これは格別
有用である。ワームホールは反復限界を定義するパラメ
ータを有するので、反復が無限に続くことはない。
【0108】ユーザーは、より多くの情報を求めて「穴
を開ける」ために、そしてまたオブジェクトを目標シー
ンで「起動させる」ために、ワームホールを抜けてジャ
ンプすることができる。これにより、ズーム率増大の影
響が排除されるだけでなく、第1シーンのオブジェクト
に使用されるメモリーも開放される。ユーザーがマウス
を使用して、ワールドをナビゲートし、オブジェクトと
対話すると、通知イベントが生成されて、これが動作を
トリガすることになる。動作は、デザインタイムにディ
ベロッパにより決められており、次の2つのオプション
段階(順番通り)、即ち、シーン及び/又はグローバル
パラメータの値を設定する段階と、活動を実行する段階
とから成る。
【0109】ワームホールは、オブジェクトインスペク
ターのリストに掲載されているSceneParametersオブジ
ェクトを介してシーンパラメータの値について制御を行
う。SceneParametersオブジェクトは、ワームホールの
子オブジェクトであり、各パラメータに関するプロパテ
ィを保有している。目標シーンがパラメータ化されてい
なければ、SceneParametersオブジェクトは、オブジェ
クトインスペクターに表示されない。この値は、オブジ
ェクトに保有され、ランタイムにシーンのプロパティを
設定するために使用される。
【0110】3タイプのパラメータが照会のランタイム
値を駆動し、更に種々のユーザーコンテクスト変数、即
ちグローバルパラメータ、シーンパラメータ、照会パラ
メータのモニターと制御をも行う。グローバルパラメー
タは、ランタイムのユーザーに、コンテナアプリケーシ
ョンとして設定又はモニターされるべきプロパティとし
て提示される。更に、組み込み型グローバルパラメー
タ、即ち、UserX(ユーザーの中心からの現在の横方向
オフセットをインチ幅で追跡又は設定する)、UserY
(ユーザーの中心からの現在の縦方向オフセットをイン
チ幅で追跡又は設定する)、UserZoom(ユーザーの現在
のズーム(倍率)レベルを追跡又は設定する)、及びUs
erClass(ユーザーのプロファイルクラス名を保有す
る)を利用することもできる。
【0111】照会パラメータは、照会が実行される前に
データソースにより設定される。シーンパラメータはワ
ームホール又はイベント行為により設定される。それら
は、次の属性、即ち、 名前−パラメータ識別子 データタイプ−値タイプ ディスクリプション−内部での文書利用に入手可能 デフォルト値−ワームホールのSceneParameters子オブ
ジェクト又はイベント行為により設定されない場合に使
用される値。デフォルト値が入手できなければシーンは
見ることができない。を有する。
【0112】ユーザークラスは、バーチャルワールドの
動作又は外見をユーザーのアイデンティティに基づいて
カスタマイズするために使用することができる。例え
ば、売上予測に対するワームホールは販売職員と管理職
社員にしか見えないようにするとか、病院の間取り図の
レイアウトでは、管理者向けには空きベッドを強調表示
するのに対し、心臓専門医向けには心臓病患者のベッド
を強調表示するなどしてもよい。全ての新しいワールド
のデフォルトユーザークラスは「匿名」である。
【0113】ワールドにとっての現在のユーザークラス
は、UserClassグローバルパラメータに記憶される。プ
ロパティ値或はイベント方法は、UserClass変数がclass
_nameユーザークラスのメンバーであるかどうか次第
で、真の値か偽の値を戻すIsUser(class_name)プロ
パティ関数を使用することにより、現在のユーザークラ
スに基づくものとなる。標準的なブール式は、直接比較
用又は表示用のUserClassパラメータも保有できる。
【0114】ユーザークラスは、クラスを更に精製する
ためにサブクラスに分けられる。ある1つのクラスのユ
ーザーサブクラスは、別のクラスのサブクラスであって
もよいので、その結果、ユーザークラスは柔軟で多数の
継承性を持つ階層となる。あるユーザークラスがユーザ
ーによって削除されても、2つ以上の他のユーザークラ
スのサブクラスとして存在する場合、ユーザーはユーザ
ークラスの全出現を消去するか否か、或は選択されたイ
ンスタンスだけを消去するかを問われることになる。
【0115】これより図14について説明するが、ここ
ではワームホールのオブジェクトモデルがより詳しく示
されている。VcSceneクラス500は、視認域に表示さ
れる全グラフィカルオブジェクトに対する描画層(キャ
ンバス)の輪郭を定める。VcScene500は、シーン内
に含まれているノードのプロパティによって参照される
パラメータのセットを提供する。当該シーンがレンダー
される前に、各パラメータは設定されねばならず、同様
のやり方で、関数に対する引数は関数が呼び出される前
に設定されねばならない。次に、ワームホール設定ノー
ドは、ワームホールを通してシーンが見えると、計算さ
れた設定を各シーンパラメータに供給する。
【0116】VcSceneクラス500は、VcParameterクラ
ス502のメンバーであるプロパティと、VcDrawingNod
eベースクラス504から導き出されたノードのリスト
を有する。VcParameter502は、名前とデータタイプ
を始めとするシーンパラメータについての情報を記憶
し、一方VcDrawingNode504は、シーンのコンテンツ
を表現する全形態及び論理ノードのための抄録ベースク
ラスである。VcDrawingNode504は、一定でも計算さ
れてもよいプロパティを保有する。計算されたプロパテ
ィは1つ又はそれ以上のシーンパラメータに依存する。
【0117】VcDrawingNode抄録ベースクラス504
は、今度はVcShapeNode506に継承されるが、これは
更にVcWormhoeNode508に継承される。VcShapeNode5
06は、全視認ノードタイプ用の抄録ベースクラスであ
る。VcShapeNode506の導き出されたクラスは、形態
の各タイプの特定の属性及び動作を実行する。VcWormho
leNode508は、別のシーンにリンクするシーンの形態
ノードのクラスである。それは、シーンがレンダーされ
る前に全シーンパラメータの値を設定するための設定用
ノードに対するポインタを保有している。
【0118】VcWormholeNode508は、VcWormholeSett
ingNode512クラスのメンバーであるm_sceneParamet
erSettingsプロパティを有する。VcWormholeSettingNod
e512は、接続シーンのパラメータ毎にワームホール
特定の設定を保持する論理ノードのクラスである。これ
らの設定は、数値を計算されて、シーンがワームホール
にレンダーされる前に当該シーンに渡される。
【0119】VcWormholeSettingNode512も又VcLogic
Node510から導き出されるが、このVcLogicNode51
0はVcDrawingNode504から導き出されるものであ
る。VcLogicNode51は、形態ノードとユーザーの間の
関係を定義するノードのための抄録ベースクラスであ
る。
【0120】図15及び16は、模範的なワームホール
の使い方を示している。図15には4つのワームホー
ル、即ち、ポートフォリオリスク管理ワームホール70
0、市場データワームホール710、考慮中の投資ワー
ムホール720、ファーストコールアナリスト推薦ワー
ムホール730が示されている。ポートフォリオリスク
管理ワームホール700は、当該シーンの第3レベル画
面を表示する3つの詳細なワームホール702、70
4、706とチャート708を示している。この3つの
詳細なワームホール702、704、706は各々、3
種類の別個のファンド又はポートフォリオに関連する金
融動向を示す。その上、ある1つのファンド又はポート
フォリオを代表する1つのワームホールから生じる所与
のシーンの画面は、別のファンドを代表する別のワーム
ホールから生じる同じシーンの画面とは異なる。このよ
うなわけで、例えば、ポートフォリオリスク管理ワーム
ホール700に穴を開け、ファンド702、704、7
06の1つを通って更に特定のポートフォリオ内の会社
に行き当たるまで穴を掘り下げてゆけば、コンテクスト
情報は穴を開ける都度累積されていくので、当該会社の
最終的な画面は特定のファンド又はポートフォリオに対
する関係で生成されることになる。その情報にはそのフ
ァンドにより保有される会社の株式の量や、会社の株主
である期間、その他が含まれる。
【0121】図16の各ワームホールに表現されている
シーンは、関数に対する引数に類似した方法で、compan
y_IDでパラメータ化される。本例では、シーンそれ自
体がユーザーが何の会社を見ているかを特定する引数を
有しており、当該シーンは従ってカスタマイズされる。
従って、ユーザーがこれらのワームホールの何れかを通
して見るときには、シーンはユーザーが見ている特定の
ワームホール独自の姿をしているので、そのシーンは違
って見える。
【0122】先に述べたように、本システムは、プログ
ラミングの専門知識無しでも、データをダイナミックに
見ることができるようにしている。ユーザーは、このよ
うにして、データに近づくことができるので、アプリケ
ーション開発時間が短縮される。ユーザーインターフェ
ースは、情報豊富なデータベースに関して、そしてデー
タ保管とデシジョンサポートのようなアプリケーション
に関して素早く容易に創造できる。更に、従来型のフォ
ームベース若しくはレポートベースのアプリケーション
についてまわる制限は回避される。
【0123】その上、ここに説明した技法は、ハードウ
ェア又はソフトウェアで実行してもよいし、或は両方を
組み合わせて実行してもよい。この技法は、1台毎にプ
ロセッサと、プロセッサが読み込み可能な記憶媒体(揮
発性、非揮発性メモリ及び/又は記憶エレメントを含
む)と、適切な入出力装置とを含んでいる、プログラム
可能なコンピュータ上で実行するコンピュータプログラ
ムで実行するのが望ましい。プログラムコードは、入力
機器を使用して入力されるデータに適用され、説明済み
の関数を実行し、出力情報を生成する。出力情報は、1
つ又はそれ以上の出力装置に適用される。
【0124】各プログラムは、コンピュータシステムと
通信するために、高レベルの手順言語又はオブジェクト
指向プログラム言語で実行することが望ましい。しかし
ながら、本プログラムは、必要に応じアッセンブリ言語
若しくは機械言語で実行することもできる。何れの場合
でも、言語はコンパイル又は翻訳された言語である。
【0125】このような各コンピュータプログラムは、
上記手続きを実行するためにコンピューターが読み込め
ば構成、作動できるような、汎用或は特殊用途のプログ
ラム可能なコンピュータが読み出すことのできる記憶媒
体若しくは記憶装置(例;CD−ROM、ハードディス
ク、又は磁気ディスケット)に記憶されることが望まし
い。本システムはまた、コンピュータープログラムによ
り構成された、コンピュータが読み出し可能な記憶媒体
としても実行できるが、その場合には、そのように構成
された記憶媒体がコンピュータを特定且つ事前に指定さ
れた方法で作動させることになる。
【0126】他の実施例は、先の請求項の範囲にある。
【図面の簡単な説明】
【図1】1つ又はそれ以上のワールドを編集するため
の、多文書インタフェースである。
【図2】オブジェクトインスペクターを示す図である。
【図3】アブストラクトベースクラスVcPropertyBagの
プロパティオブジェクトモデルを示す線図である。
【図4】2バイトコード実行クラスである、VCStmtCrea
tShape及びVcStmtSetPropertyを示す線図である。
【図5】サンプル構文解析型プロパティ関数を示す線図
である。
【図6】シーンからのコード生成プロセスのオブジェク
トモデルを示す線図である。
【図7】プロパティシート入力プロセスを示すフローチ
ャートである。
【図8】オブジェクトを目に見えるように操作するため
のプロセスを示すフローチャートである。
【図9】バイトコード生成用のプロセスを示すフローチ
ャートである。
【図10】ノード向けのバイトコード実行ステートメン
トを入手するためのプロセスを示すフローチャートであ
る。
【図11】バイトコードを実行するためのプロセスを示
すフローチャートである。
【図12】グラフ編集システムを示す線図である。
【図13】ワームホールを示す図である。
【図14】ワームホールのオブジェクトモデルを示す線
図である。
【図15】ワームホール使用法の1例を示す図である。
【図16】ワームホール使用法の別の例を示す図であ
る。
【符号の説明】
10 ワールドマネジャーウインドウ 12,14,16,40 コントロールバー 18 ツリーコントロール 20 プロジェクト作業空間 22 エディタウインドウ 24 出力ウインドウ 30 オブジェクトインスペクター 100 名前列 110 プロパティ列 112,114,116,118,120,122,1
24,126 プロパティ 200 VcPropertyBag 202,400,500 VcScene 204,402,504 VcDrawingNode 210 VcProperty 212,218,300,322 CString 214,324 VcPropertyPath 216,222 VcPropertyValue 220 VcFunction 302 バイトコード 304 VcShapeFactory 306 VcShape 310 疑似コードブロック 320 VcStmtSetProperty 326 VcStmtSetStringProperty 328 VcSftn 330 326のバイトコード 350 VcStmtSetStringProperty関数 352 テキスト1 354 350のプロパティ経路値 360,362 VcSftnConcatenate 364,380 VcSftnLookup関数 366,372 文字列 370 VcSftnConcatenate関数 404,506 VcShapeNode 406 VcDataNode 408,510 VcLogicNode 410 VcCGMethod,VcDataSource 412 VcQueryDataSource 414 VcQuery 416 VcColumn 417,502 VcParameter 420 VcStmt 422,424,426,428,430 バイトコー
ドステートメント 480 シーングラフ 482,484 画面 485 画像 486 ウインドウ 490、702、704、706 ワームホール 492,494 シーン 496,498 高度 508 VcWormholeNode 512 VcWormholeSettingNode 700 ポートフォリオリスク管理ワームホール 708 チャート 710 市場データワームホール 720 考慮中の投資ワームホール 730 ファーストコールアナリスト推薦ワームホール

Claims (60)

    【特許請求の範囲】
  1. 【請求項1】 各々がオブジェクトに関係するコードを
    生成することのできる1つ又はそれ以上のオブジェクト
    の階層的表現であるシーングラフとして表現されている
    アプリケーションを実行するための方法において、前記
    シーングラフの前記階層を横断する段階と、前記シーン
    グラフ内に記憶されている各オブジェクトに対し、各オ
    ブジェクトが自己実行するように命令する段階とを有す
    ることを特徴とする方法。
  2. 【請求項2】 前記シーングラフの各シーン毎に、実行
    画像を生成する段階を更に含むことを特徴とする、上記
    請求項1に記載の方法。
  3. 【請求項3】 前記オブジェクトの各ノードに関係する
    バイトコードを検索する段階と、前記バイトコードを前
    記シーンの一部として記憶する段階と、前記シーンに対
    するバイトコード実行画像を生成する段階とを更に含む
    ことを特徴とする、上記請求項2に記載の方法。
  4. 【請求項4】 ノードを幾つかのタイプの中の1つと特
    徴付ける段階を更に含むことを特徴とする、上記請求項
    3に記載の方法。
  5. 【請求項5】 ノードタイプが形態タイプであるか否か
    を決める段階と、そしてもしそうであれば、形態創造ス
    テートメントを生成する段階と、プロパティ開始ステー
    トメントを生成する段階と、各プロパティ毎に、前記オ
    ブジェクトに関係する各プロパティを設定するためにス
    テートメントを生成する段階と、各プロパティをコミッ
    トするためにステートメントを生成する段階とを更に含
    むことを特徴とする、上記請求項4に記載の方法。
  6. 【請求項6】 ノードタイプがデータソースタイプであ
    るか否かを決める段階と、そしてもしそうであれば、デ
    ータベース照会を生成する段階と、参照可能な識別子に
    対する列名を決める段階と、照会を創造するためにステ
    ートメントを生成する段階と、各パラメータ毎に、照会
    パラメータ値を設定するためにステートメントを創造す
    る段階と、前記照会を実行するためにステートメントを
    生成する段階とを更に含むことを特徴とする、上記請求
    項4に記載の方法。
  7. 【請求項7】 前記バイトコード画像を実行エンジンに
    提供する段階を更に含むことを特徴とする、上記請求項
    3に記載の方法。
  8. 【請求項8】 前記バイトコードのための実行コンテク
    ストを創造する段階を更に含むことを特徴とする、上記
    請求項7に記載の方法。
  9. 【請求項9】 前記実行コンテクストを削除する段階を
    更に含むことを特徴とする、上記請求項8に記載の方
    法。
  10. 【請求項10】 前記バイトコード内の各ステートメン
    トを実行する段階を更に含むことを特徴とする、上記請
    求項8に記載の方法。
  11. 【請求項11】 前記ステートメントが形態創造ステー
    トメントであるか否かを決める段階と、そしてもしそう
    であれば、形態を創造する段階と、前記形態を、トーク
    ン化された形態名を使ってコンテクストハッシュテーブ
    ル内に記憶する段階とを更に含むことを特徴とする、上
    記請求項10に記載の方法。
  12. 【請求項12】 前記ステートメントがプロパティ開始
    ステートメントであるか否かを決める段階と、そしても
    しそうであれば、形態をコンテクストハッシュテーブル
    内で探す段階と、前記形態に関係する開始方法を実行す
    る段階とを更に含むことを特徴とする、上記請求項10
    に記載の方法。
  13. 【請求項13】 前記ステートメントがプロパティ設定
    ステートメントであるか否かを決める段階と、そしても
    しそうであれば、形態をコンテクストハッシュテーブル
    内で探す段階と、前記形態に関係するプロパティ式の値
    を求める段階と、前記プロパティに値を割り当てる段階
    とを更に含むことを特徴とする、上記請求項10に記載
    の方法。
  14. 【請求項14】 前記ステートメントがプロパティ終了
    ステートメントであるか否かを決める段階と、そしても
    しそうであれば、形態をコンテクストハッシュテーブル
    内で探す段階と、プロパティをコミットするために、前
    記形態に関係するプロパティ終了方法を実行する段階
    と、前記形態を初期化する段階と、前記形態をディスプ
    レイリストに追加する段階とを更に含むことを特徴とす
    る、上記請求項10に記載の方法。
  15. 【請求項15】 形態に関係するキャンバスをリフレッ
    シュする段階を更に含むことを特徴とする、上記請求項
    8に記載の方法。
  16. 【請求項16】 前記オブジェクトの各プロパティを設
    定する段階を更に含むことを特徴とする、上記請求項1
    に記載の方法。
  17. 【請求項17】 前記オブジェクトの前記プロパティを
    設定する前に前記オブジェクトに通知する段階を更に含
    むことを特徴とする、上記請求項16に記載の方法。
  18. 【請求項18】 前記オブジェクトの前記プロパティを
    設定するために一連のステートメントを実行する段階を
    更に含むことを特徴とする、上記請求項17に記載の方
    法。
  19. 【請求項19】 前記オブジェクトの全プロパティを設
    定した後に前記オブジェクトに通知する段階を更に含む
    ことを特徴とする、上記請求項18に記載の方法。
  20. 【請求項20】 前記シーングラフが複数のノードを有
    することを特徴とする、上記請求項19に記載の方法。
  21. 【請求項21】 各々がオブジェクトに関係するコード
    を生成することのできる1つ又はそれ以上の前記オブジ
    ェクトの階層的表現であるシーングラフとして表されて
    いるアプリケーションを実行するためのコンピュータソ
    フトウェアにおいて、前記コンピュータソフトウェア
    は、コンピュータ読み取り可能媒体上に常駐し、且つ以
    下のオペレーション、即ち前記シーングラフの階層を横
    断すること及び前記シーングラフ内に記憶されている各
    オブジェクトに対し各オブジェクトが自己実行するよう
    に命令すること、をコンピューターに実行させるための
    命令を有することを特徴とするコンピュータソフトウェ
    ア。
  22. 【請求項22】 前記シーングラフの各シーン毎に実行
    画像を生成するための命令を更に含むことを特徴とす
    る、上記請求項21に記載のコンピュータソフトウェ
    ア。
  23. 【請求項23】 前記オブジェクトの各ノードに関係す
    るバイトコードを検索するための命令と、前記バイトコ
    ードを前記シーンの一部として記憶するための命令と、
    前記シーンに対する前記バイトコード実行画像を生成す
    るための命令とを更に含むことを特徴とする、上記請求
    項22に記載のコンピュータソフトウェア。
  24. 【請求項24】 ノードを幾つかのタイプの中の1つと
    して特徴付けるための命令を更に含むことを特徴とす
    る、上記請求項23に記載のコンピュータソフトウェ
    ア。
  25. 【請求項25】 前記ノードタイプが形態タイプである
    か否かを決定するための命令と、そしてもし形態タイプ
    であれば、形態創造ステートメントを生成するための命
    令と、プロパティ開始ステートメントを生成するための
    命令と、各プロパティ毎に、前記オブジェクトに関係す
    る各プロパティを設定するためのステートメントを生成
    するための命令と、各プロパティをコミットするための
    ステートメントを生成するための命令とを更に含むこと
    を特徴とする、上記請求項24に記載のコンピュータソ
    フトウェア。
  26. 【請求項26】 前記ノードタイプがデータソースタイ
    プであるか否かを決定するための命令と、そしてもしデ
    ータソースタイプであれば、データベース照会を生成す
    るための命令と、参照可能な識別子に対する列名を決め
    るための命令と、前記照会を創造するためのステートメ
    ントを生成するための命令と、各パラメータ毎に照会パ
    ラメータ値を設定するためのステートメントを創造する
    ための命令と、前記照会を実行するためのステートメン
    トを生成するための命令とを更に含むことを特徴とす
    る、上記請求項24に記載のコンピュータソフトウェ
    ア。
  27. 【請求項27】 前記バイトコード画像を実行エンジン
    に提供するための命令を更に含むことを特徴とする上記
    請求項23に記載のコンピュータソフトウェア。
  28. 【請求項28】 前記バイトコードに対する実行コンテ
    クストを創造するための命令を更に含むことを特徴とす
    る、上記請求項27に記載のコンピュータソフトウェ
    ア。
  29. 【請求項29】 前記実行コンテクストを削除するため
    の命令を更に含むことを特徴とする、上記請求項28に
    記載のコンピュータソフトウェア。
  30. 【請求項30】 前記バイトコード内の各ステートメン
    トを実行するための命令を更に含むことを特徴とする、
    上記請求項28に記載のコンピュータソフトウェア。
  31. 【請求項31】 前記ステートメントが形態創造ステー
    トメントであるか否かを決めるための命令と、そして形
    態創造ステートメントであれば、形態を創造するための
    命令と、トークン化された形態名を使って前記形態をコ
    ンテクストハッシュテーブル内に記憶するための命令と
    を更に含むことを特徴とする、上記請求項30に記載の
    コンピュータソフトウェア。
  32. 【請求項32】 前記ステートメントがプロパティ開始
    ステートメントであるか否かを決めるための命令と、そ
    してプロパティ開始ステートメントである場合は、コン
    テクストハッシュテーブル内で形態を探すための命令
    と、前記形態と関係する開始方法を実行するための命令
    とを更に含むことを特徴とする、上記請求項30に記載
    のコンピュータソフトウェア。
  33. 【請求項33】 前記ステートメントがプロパティ設定
    ステートメントであるか否かを決めるための命令と、そ
    してプロパティ設定ステートメントである場合は、コン
    テクストハッシュテーブル内で形態を探すための命令
    と、前記形態と関係するプロパティ式の値を求めるため
    の命令と、前記プロパティに値を割り当てるための命令
    とを更に含むことを特徴とする、上記請求項30に記載
    のコンピュータソフトウェア。
  34. 【請求項34】 前記ステートメントがプロパティ終了
    ステートメントであるか否かを決めるための命令と、そ
    してプロパティ終了ステートメントである場合は、コン
    テクストハッシュテーブル内で形態を探すための命令
    と、前記プロパティをコミットするために前記形態と関
    係するプロパティ終了方法を実行するための命令と、前
    記形態を初期化するための命令と、ディスプレイリスト
    に前記形態を追加するための命令とを更に含むことを特
    徴とする、上記請求項30に記載のコンピュータソフト
    ウェア。
  35. 【請求項35】 形態に関係するキャンバスをリフレッ
    シュするための命令を更に含むことを特徴とする、上記
    請求項28に記載のコンピュータソフトウェア。
  36. 【請求項36】 前記オブジェクトの各プロパティを設
    定するための命令を更に含むことを特徴とする、上記請
    求項21に記載のコンピュータソフトウェア。
  37. 【請求項37】 前記オブジェクトのプロパティを設定
    する前に前記オブジェクトに通知するための命令を更に
    含むことを特徴とする、上記請求項26に記載のコンピ
    ュータソフトウェア。
  38. 【請求項38】 前記オブジェクトのプロパティを設定
    するための一連のステートメントを更に含むことを特徴
    とする、上記請求項27に記載のコンピュータソフトウ
    ェア。
  39. 【請求項39】 前記オブジェクトの全プロパティを設
    定した後に前記オブジェクトに通知するための命令を更
    に含むことを特徴とする、上記請求項28に記載のコン
    ピュータソフトウェア。
  40. 【請求項40】 前記シーングラフが複数のノードを有
    することを特徴とする、上記請求項29に記載のコンピ
    ュータソフトウェア。
  41. 【請求項41】 親グラフと、前記親グラフ内に再帰的
    にネストされている1つ又はそれ以上のグラフィカルデ
    ータエレメントとを有するデータの表現をビジュアルに
    編集するためのエディタにおいて、親グラフを編集する
    ためのウインドウと、各々がネストされたグラフを含み
    且つ前記親グラフ内にネストされている1つ又はそれ以
    上のグラフィカルデータエレメントの各々を編集するた
    めの1つ又はそれ以上のドリルダウンウインドウとを有
    することを特徴とするエディタ。
  42. 【請求項42】 前記グラフィカルデータエレメントの
    各々に関係する属性ウインドウを更に含むことを特徴と
    する、上記請求項41に記載のエディタ。
  43. 【請求項43】 前記属性ウインドウが、オブジェクト
    状態と、複数の属性を通して前記オブジェクト状態への
    アクセスを提供する1つ又はそれ以上のインタフェース
    とを有するコンピューター実行オブジェクトに関係する
    プロパティを編集するために使用され、且つ前記属性の
    各々が関数式として定義され、ランタイムではデータ値
    として参照可能であることを特徴とする、上記請求項4
    2に記載のエディタ。
  44. 【請求項44】 前記関数式が、以下のもの、即ち、関
    数、オペレータ、データベース列名、変数、及び定数の
    内の1つ又はそれ以上を含むことを特徴とする、上記請
    求項43に記載のエディタ。
  45. 【請求項45】 前記属性が静的データ値であることを
    特徴とする、上記請求項43に記載のエディタ。
  46. 【請求項46】 前記関数式が、ランタイム値として記
    憶される関数を生成するために構文解析されることを特
    徴とする上記請求項43に記載のエディタ。
  47. 【請求項47】 前記関数に関係するバイトコードを更
    に含むことを特徴とする上記請求項43に記載のエディ
    タ。
  48. 【請求項48】 前記関数が定数であれば、前記関数の
    クローンが作られ、前記関数がデザインタイム値として
    記憶されることを特徴とする、上記請求項43に記載の
    エディタ。
  49. 【請求項49】 前記式が無効であればエラーメッセー
    ジが表示されることを特徴とする、上記請求項43に記
    載のエディタ。
  50. 【請求項50】 前記グラフの各シーンに関係する実行
    画像を更に含むことを特徴とする、上記請求項49に記
    載のエディタ。
  51. 【請求項51】 親グラフと、前記親グラフ内に再帰的
    にネストされている1つ又はそれ以上のグラフィカルデ
    ータエレメントとを有するデータの表現をビジュアルに
    編集するためのコンピュータソフトウェアにおいて、前
    記コンピュータソフトウェアはコンピュータ読み取り可
    能媒体上に常駐し、且つ以下のオペレーション、即ち、
    親グラフを編集するためのウインドウを表示すること及
    び各々がネストされたグラフを含み且つ前記親グラフ内
    にネストされている1つ又はそれ以上のグラフィカルデ
    ータエレメントの各々を編集するための1つ又はそれ以
    上のドリルダウンウインドウを生成すること、をコンピ
    ューターに実行させるための命令を有することを特徴と
    するコンピュータソフトウェア。
  52. 【請求項52】 前記グラフィカルデータエレメント毎
    に属性ウインドウを生成するためのコードを更に含むこ
    とを特徴とする、上記請求項51に記載のコンピュータ
    ソフトウェア。
  53. 【請求項53】 前記属性ウインドウが、オブジェクト
    状態と、複数の属性を通して前記オブジェクト状態への
    アクセスを提供する1つ又はそれ以上のインタフェース
    とを有するソフトウェアオブジェクトとに関係するプロ
    パティを編集するために使用され、且つ前記属性の各々
    が関数式として定義され、ランタイムではデータ値とし
    て参照可能であることを特徴とする、上記請求項52に
    記載のコンピュータソフトウェア。
  54. 【請求項54】 前記関数式が、以下のもの、即ち、関
    数、オペレータ、データベース列名、変数、及び定数の
    内の1つ又はそれ以上を含むことを特徴とする、上記請
    求項53に記載のコンピュータソフトウェア。
  55. 【請求項55】 前記属性が静的データ値であることを
    特徴とする、上記請求項53に記載のコンピュータソフ
    トウェア。
  56. 【請求項56】 前記関数式が、ランタイム値として記
    憶される関数を生成するために構文解析されることを特
    徴とする上記請求項53に記載のコンピュータソフトウ
    ェア。
  57. 【請求項57】 前記関数に関係するバイトコードを生
    成するためのコードを更に含むことを特徴とする上記請
    求項53に記載のコンピュータソフトウェア。
  58. 【請求項58】 前記関数が定数であれば、前記関数の
    クローンを作り、前記関数をデザインタイム値として記
    憶するためのコードを更に含むことを特徴とする、上記
    請求項53に記載のコンピュータソフトウェア。
  59. 【請求項59】 前記式が無効である場合にエラーメッ
    セージを表示するためのコードを更に含むことを特徴と
    する、上記請求項53に記載のコンピュータソフトウェ
    ア。
  60. 【請求項60】 前記グラフの各シーンに関係する実行
    画像を生成するためのコードを更に含むことを特徴とす
    る、上記請求項59に記載のコンピュータソフトウェ
    ア。
JP27981299A 1998-08-25 1999-08-25 ダイナミックオブジェクト視覚化及びコード発生 Expired - Fee Related JP4177531B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/139,807 US6263339B1 (en) 1998-08-25 1998-08-25 Dynamic object visualization and code generation
US09/139807 1998-08-25

Publications (2)

Publication Number Publication Date
JP2000112998A true JP2000112998A (ja) 2000-04-21
JP4177531B2 JP4177531B2 (ja) 2008-11-05

Family

ID=22488377

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27981299A Expired - Fee Related JP4177531B2 (ja) 1998-08-25 1999-08-25 ダイナミックオブジェクト視覚化及びコード発生

Country Status (5)

Country Link
US (1) US6263339B1 (ja)
EP (1) EP0982670A3 (ja)
JP (1) JP4177531B2 (ja)
AU (1) AU768387B2 (ja)
BR (1) BR9904072A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100962920B1 (ko) 2003-03-27 2010-06-10 마이크로소프트 코포레이션 비주얼 및 장면 그래프 인터페이스
KR101137187B1 (ko) 2003-10-23 2012-04-20 마이크로소프트 코포레이션 비주얼 및 장면 그래프 인터페이스

Families Citing this family (133)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6915301B2 (en) * 1998-08-25 2005-07-05 International Business Machines Corporation Dynamic object properties
US6810522B2 (en) * 1998-10-07 2004-10-26 Invensys Systems, Inc. Method and system for associating parameters of containers and contained objects
CA2256931A1 (en) * 1998-12-23 2000-06-23 Robert Weisz Source editing in a graphical hierarchical environment
JP3645723B2 (ja) * 1998-12-25 2005-05-11 日本電気株式会社 編集内容の自動置換機能付き交換サービス開発支援システム
US6385763B1 (en) * 1998-12-29 2002-05-07 At&T Corp. Methodology for mapping use cases to operations for operational profile development
US6970925B1 (en) * 1999-02-03 2005-11-29 William H. Gates, III Method and system for property notification
US6336211B1 (en) * 1999-05-20 2002-01-01 Xilinx, Inc. Method and apparatus for implementing type-safe heterogeneous property lists
US6700590B1 (en) * 1999-11-01 2004-03-02 Indx Software Corporation System and method for retrieving and presenting data using class-based component and view model
US6996793B1 (en) 2000-03-15 2006-02-07 Cadence Design Systems, Inc. Methods and apparatus for storing and manipulating diagonal interconnect lines of a multidimensional integrated circuit design
WO2001069367A2 (en) * 2000-03-17 2001-09-20 Vizible.Com Inc. A three dimensional spatial user interface
US7743074B1 (en) * 2000-04-05 2010-06-22 Microsoft Corporation Context aware systems and methods utilizing hierarchical tree structures
US7139768B1 (en) * 2000-05-04 2006-11-21 Unisys Corporation OLE DB data access system with schema modification features
US10878178B2 (en) * 2000-06-07 2020-12-29 Pt 291, Llc Modifying web pages to be served by computer server system
US6980996B1 (en) * 2000-06-28 2005-12-27 Cisco Technology, Inc. Generic command interface for multiple executable routines having character-based command tree
US7047526B1 (en) * 2000-06-28 2006-05-16 Cisco Technology, Inc. Generic command interface for multiple executable routines
US7568152B1 (en) * 2000-07-14 2009-07-28 International Business Machines Corporation Text file interface support in an object oriented application
US7086067B1 (en) 2000-07-14 2006-08-01 International Business Machines Corporation Dynamic Java bean for VisualAge for Java
US6938260B1 (en) * 2000-07-14 2005-08-30 International Business Machines Corporation Complex data navigation, manipulation and presentation support for visualage Java
US8176296B2 (en) 2000-10-26 2012-05-08 Cypress Semiconductor Corporation Programmable microcontroller architecture
US8149048B1 (en) 2000-10-26 2012-04-03 Cypress Semiconductor Corporation Apparatus and method for programmable power management in a programmable analog circuit block
US6724220B1 (en) 2000-10-26 2004-04-20 Cyress Semiconductor Corporation Programmable microcontroller architecture (mixed analog/digital)
US7765095B1 (en) 2000-10-26 2010-07-27 Cypress Semiconductor Corporation Conditional branching in an in-circuit emulation system
US8103496B1 (en) 2000-10-26 2012-01-24 Cypress Semicondutor Corporation Breakpoint control in an in-circuit emulation system
US7246344B1 (en) * 2000-12-11 2007-07-17 Microsoft Corporation Drag and drop stateless data class specification and programming
US7493565B2 (en) * 2000-12-22 2009-02-17 Microsoft Corporation Environment-interactive context-aware devices and methods
US7739298B1 (en) * 2001-01-26 2010-06-15 Apple Inc. Using a calculation expression to define and control access rights for records in a database
US6748392B1 (en) * 2001-03-06 2004-06-08 Microsoft Corporation System and method for segmented evaluation of database queries
US7099868B1 (en) * 2001-03-30 2006-08-29 Unisys Corporation State management for a step architecture
US7259747B2 (en) 2001-06-05 2007-08-21 Reactrix Systems, Inc. Interactive video display system
US8300042B2 (en) 2001-06-05 2012-10-30 Microsoft Corporation Interactive video display system using strobed light
US8035612B2 (en) 2002-05-28 2011-10-11 Intellectual Ventures Holding 67 Llc Self-contained interactive video display system
SE0102648A0 (sv) * 2001-08-02 2003-03-06 Lars Höidahl Arrangemang att utföra objekt-orienterad programmering
US7406674B1 (en) 2001-10-24 2008-07-29 Cypress Semiconductor Corporation Method and apparatus for generating microcontroller configuration information
US8078970B1 (en) 2001-11-09 2011-12-13 Cypress Semiconductor Corporation Graphical user interface with user-selectable list-box
US7526422B1 (en) 2001-11-13 2009-04-28 Cypress Semiconductor Corporation System and a method for checking lock-step consistency between an in circuit emulation and a microcontroller
US8042093B1 (en) 2001-11-15 2011-10-18 Cypress Semiconductor Corporation System providing automatic source code generation for personalization and parameterization of user modules
US6715132B1 (en) * 2001-11-19 2004-03-30 Cypress Semiconductor Corporation Datasheet browsing and creation with data-driven datasheet tabs within a microcontroller design tool
US7774190B1 (en) 2001-11-19 2010-08-10 Cypress Semiconductor Corporation Sleep and stall in an in-circuit emulation system
US8069405B1 (en) 2001-11-19 2011-11-29 Cypress Semiconductor Corporation User interface for efficiently browsing an electronic document using data-driven tabs
US7770113B1 (en) 2001-11-19 2010-08-03 Cypress Semiconductor Corporation System and method for dynamically generating a configuration datasheet
US6971004B1 (en) 2001-11-19 2005-11-29 Cypress Semiconductor Corp. System and method of dynamically reconfiguring a programmable integrated circuit
US7844437B1 (en) 2001-11-19 2010-11-30 Cypress Semiconductor Corporation System and method for performing next placements and pruning of disallowed placements for programming an integrated circuit
US8103497B1 (en) 2002-03-28 2012-01-24 Cypress Semiconductor Corporation External interface for event architecture
US7308608B1 (en) 2002-05-01 2007-12-11 Cypress Semiconductor Corporation Reconfigurable testing system and method
US7348963B2 (en) * 2002-05-28 2008-03-25 Reactrix Systems, Inc. Interactive video display system
US7710391B2 (en) * 2002-05-28 2010-05-04 Matthew Bell Processing an image utilizing a spatially varying pattern
US7231630B2 (en) * 2002-07-12 2007-06-12 Ensequence Inc. Method and system automatic control of graphical computer application appearance and execution
US20040010793A1 (en) * 2002-07-12 2004-01-15 Wallace Michael W. Method and system for flexible time-based control of application appearance and behavior
US7761845B1 (en) 2002-09-09 2010-07-20 Cypress Semiconductor Corporation Method for parameterizing a user module
US20040075684A1 (en) * 2002-10-21 2004-04-22 Paul Chater System, method and computer program product for constructing and managing CAD data in cooperative engineering environments
AU2003301043A1 (en) 2002-12-13 2004-07-09 Reactrix Systems Interactive directed light/sound system
US7331042B2 (en) * 2002-12-21 2008-02-12 International Business Machines Corporation Fault-tolerant dynamic editing of GUI display and source code
WO2005020003A2 (en) * 2003-08-13 2005-03-03 National Instruments Corporation Creating a graphical user interface for selected parameters of a graphical program
US8238696B2 (en) 2003-08-21 2012-08-07 Microsoft Corporation Systems and methods for the implementation of a digital images schema for organizing units of information manageable by a hardware/software interface system
US8131739B2 (en) * 2003-08-21 2012-03-06 Microsoft Corporation Systems and methods for interfacing application programs with an item-based storage platform
US7401104B2 (en) 2003-08-21 2008-07-15 Microsoft Corporation Systems and methods for synchronizing computer systems through an intermediary file system share or device
US7590643B2 (en) 2003-08-21 2009-09-15 Microsoft Corporation Systems and methods for extensions and inheritance for units of information manageable by a hardware/software interface system
US8166101B2 (en) 2003-08-21 2012-04-24 Microsoft Corporation Systems and methods for the implementation of a synchronization schemas for units of information manageable by a hardware/software interface system
EP1510940A1 (en) * 2003-08-29 2005-03-02 Sap Ag A method of providing a visualisation graph on a computer and a computer for providing a visualisation graph
US20050063251A1 (en) * 2003-09-04 2005-03-24 Schlumberger Technology Corporation Dynamic generation of vector graphics and animation of bottom hole assembly
CN1902930B (zh) 2003-10-24 2010-12-15 瑞克楚斯系统公司 管理交互式视频显示系统的方法和系统
WO2005041579A2 (en) 2003-10-24 2005-05-06 Reactrix Systems, Inc. Method and system for processing captured image information in an interactive video display system
US20050198617A1 (en) * 2004-03-04 2005-09-08 Vivcom, Inc. Graphically browsing schema documents described by XML schema
US7295049B1 (en) 2004-03-25 2007-11-13 Cypress Semiconductor Corporation Method and circuit for rapid alignment of signals
US8069436B2 (en) 2004-08-13 2011-11-29 Cypress Semiconductor Corporation Providing hardware independence to automate code generation of processing device firmware
US8286125B2 (en) * 2004-08-13 2012-10-09 Cypress Semiconductor Corporation Model for a hardware device-independent method of defining embedded firmware for programmable systems
US8700671B2 (en) * 2004-08-18 2014-04-15 Siemens Aktiengesellschaft System and methods for dynamic generation of point / tag configurations
US8442938B2 (en) * 2005-01-14 2013-05-14 Siemens Aktiengesellschaft Child data structure update in data management system
US7332976B1 (en) 2005-02-04 2008-02-19 Cypress Semiconductor Corporation Poly-phase frequency synthesis oscillator
US7805422B2 (en) 2005-02-28 2010-09-28 Microsoft Corporation Change notification query multiplexing
US9128519B1 (en) * 2005-04-15 2015-09-08 Intellectual Ventures Holding 67 Llc Method and system for state-based control of objects
US7400183B1 (en) 2005-05-05 2008-07-15 Cypress Semiconductor Corporation Voltage controlled oscillator delay cell and method
US8081822B1 (en) 2005-05-31 2011-12-20 Intellectual Ventures Holding 67 Llc System and method for sensing a feature of an object in an interactive video display
US7296248B2 (en) * 2005-06-20 2007-11-13 Freescale Semiconductor, Inc. Method and apparatus for compiling a parameterized cell
US8089461B2 (en) 2005-06-23 2012-01-03 Cypress Semiconductor Corporation Touch wake for electronic devices
US7420561B2 (en) * 2005-07-01 2008-09-02 Honeywell International Inc. Diagnostic visual tools and methods for graphical comparison of data point and historical data density
US20070130206A1 (en) * 2005-08-05 2007-06-07 Siemens Corporate Research Inc System and Method For Integrating Heterogeneous Biomedical Information
US8266579B2 (en) 2005-10-14 2012-09-11 International Business Machines Corporation System and method for developing and deploying a model-driven editor
US8098277B1 (en) 2005-12-02 2012-01-17 Intellectual Ventures Holding 67 Llc Systems and methods for communication between a reactive video system and a mobile communication device
US8085067B1 (en) 2005-12-21 2011-12-27 Cypress Semiconductor Corporation Differential-to-single ended signal converter circuit and method
US8067948B2 (en) 2006-03-27 2011-11-29 Cypress Semiconductor Corporation Input/output multiplexer bus
US8281281B1 (en) * 2006-06-07 2012-10-02 Pixar Setting level of detail transition points
US8260783B2 (en) * 2007-02-27 2012-09-04 Siemens Aktiengesellschaft Storage of multiple, related time-series data streams
US9564902B2 (en) 2007-04-17 2017-02-07 Cypress Semiconductor Corporation Dynamically configurable and re-configurable data path
US8130025B2 (en) 2007-04-17 2012-03-06 Cypress Semiconductor Corporation Numerical band gap
US8516025B2 (en) 2007-04-17 2013-08-20 Cypress Semiconductor Corporation Clock driven dynamic datapath chaining
US8092083B2 (en) 2007-04-17 2012-01-10 Cypress Semiconductor Corporation Temperature sensor with digital bandgap
US8026739B2 (en) 2007-04-17 2011-09-27 Cypress Semiconductor Corporation System level interconnect with programmable switching
US8040266B2 (en) 2007-04-17 2011-10-18 Cypress Semiconductor Corporation Programmable sigma-delta analog-to-digital converter
US7737724B2 (en) 2007-04-17 2010-06-15 Cypress Semiconductor Corporation Universal digital block interconnection and channel routing
US9720805B1 (en) 2007-04-25 2017-08-01 Cypress Semiconductor Corporation System and method for controlling a target device
US8065653B1 (en) 2007-04-25 2011-11-22 Cypress Semiconductor Corporation Configuration of programmable IC design elements
US8266575B1 (en) 2007-04-25 2012-09-11 Cypress Semiconductor Corporation Systems and methods for dynamically reconfiguring a programmable system on a chip
US8024396B2 (en) 2007-04-26 2011-09-20 Microsoft Corporation Distributed behavior controlled execution of modeled applications
US7970892B2 (en) * 2007-06-29 2011-06-28 Microsoft Corporation Tuning and optimizing distributed systems with declarative models
US8239505B2 (en) * 2007-06-29 2012-08-07 Microsoft Corporation Progressively implementing declarative models in distributed systems
US8230386B2 (en) 2007-08-23 2012-07-24 Microsoft Corporation Monitoring distributed applications
US8049569B1 (en) 2007-09-05 2011-11-01 Cypress Semiconductor Corporation Circuit and method for improving the accuracy of a crystal-less oscillator having dual-frequency modes
CN101952818B (zh) 2007-09-14 2016-05-25 智慧投资控股81有限责任公司 基于姿态的用户交互的处理
US8099720B2 (en) 2007-10-26 2012-01-17 Microsoft Corporation Translating declarative models
US20090113292A1 (en) * 2007-10-26 2009-04-30 Microsoft Corporation Flexibly editing heterogeneous documents
US7974939B2 (en) 2007-10-26 2011-07-05 Microsoft Corporation Processing model-based commands for distributed applications
US8181151B2 (en) * 2007-10-26 2012-05-15 Microsoft Corporation Modeling and managing heterogeneous applications
US8225308B2 (en) 2007-10-26 2012-07-17 Microsoft Corporation Managing software lifecycle
US8159682B2 (en) 2007-11-12 2012-04-17 Intellectual Ventures Holding 67 Llc Lens system
US20090193067A1 (en) * 2008-01-30 2009-07-30 Microsoft Corporation Server-based recalculation of vector graphics
US8259163B2 (en) 2008-03-07 2012-09-04 Intellectual Ventures Holding 67 Llc Display with built in 3D sensing
US20090235186A1 (en) * 2008-03-12 2009-09-17 Microsoft Corporation Limited-scope rendering
US8595218B2 (en) 2008-06-12 2013-11-26 Intellectual Ventures Holding 67 Llc Interactive display management systems and methods
US8620635B2 (en) * 2008-06-27 2013-12-31 Microsoft Corporation Composition of analytics models
US8411085B2 (en) 2008-06-27 2013-04-02 Microsoft Corporation Constructing view compositions for domain-specific environments
US20090322739A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Visual Interactions with Analytics
US8612485B2 (en) * 2008-08-11 2013-12-17 Sony Corporation Deferred 3-D scenegraph processing
US8314793B2 (en) 2008-12-24 2012-11-20 Microsoft Corporation Implied analytical reasoning and computation
US9448964B2 (en) 2009-05-04 2016-09-20 Cypress Semiconductor Corporation Autonomous control in a programmable system
US8788574B2 (en) 2009-06-19 2014-07-22 Microsoft Corporation Data-driven visualization of pseudo-infinite scenes
US8259134B2 (en) * 2009-06-19 2012-09-04 Microsoft Corporation Data-driven model implemented with spreadsheets
US9330503B2 (en) 2009-06-19 2016-05-03 Microsoft Technology Licensing, Llc Presaging and surfacing interactivity within data visualizations
US8493406B2 (en) 2009-06-19 2013-07-23 Microsoft Corporation Creating new charts and data visualizations
US8866818B2 (en) 2009-06-19 2014-10-21 Microsoft Corporation Composing shapes and data series in geometries
US8531451B2 (en) 2009-06-19 2013-09-10 Microsoft Corporation Data-driven visualization transformation
US8692826B2 (en) 2009-06-19 2014-04-08 Brian C. Beckman Solver-based visualization framework
US8352397B2 (en) 2009-09-10 2013-01-08 Microsoft Corporation Dependency graph in data-driven model
US9043296B2 (en) 2010-07-30 2015-05-26 Microsoft Technology Licensing, Llc System of providing suggestions based on accessible and contextual information
US9002876B2 (en) * 2010-12-02 2015-04-07 Sap Se Interpreted computer language to analyze business object data with defined relations
US9128479B2 (en) * 2011-11-11 2015-09-08 Rockwell Automation Technologies, Inc. Automation control and monitoring system and method
US10108317B2 (en) * 2013-10-14 2018-10-23 Schneider Electric Software, Llc Configuring process simulation data for semantic zooming
US10222953B2 (en) * 2014-04-30 2019-03-05 Disney Enterprises, Inc. Systems and methods for editing virtual content of a virtual space
US10255045B2 (en) 2015-10-28 2019-04-09 Apple Inc. Graphical representation of data in a program code editor
US9971572B2 (en) * 2015-10-30 2018-05-15 International Business Machines Corporation GUI-driven symbol management and code generator
US11573790B2 (en) 2019-12-05 2023-02-07 International Business Machines Corporation Generation of knowledge graphs based on repositories of code
US11663256B2 (en) * 2021-06-15 2023-05-30 Kyndryl, Inc. Searching data repositories using pictograms and machine learning
US11954424B2 (en) 2022-05-02 2024-04-09 International Business Machines Corporation Automatic domain annotation of structured data

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0668158A (ja) * 1992-05-04 1994-03-11 Internatl Business Mach Corp <Ibm> データベース内の情報を表示する装置および方法
JPH1049544A (ja) * 1996-08-02 1998-02-20 Nippon Telegr & Teleph Corp <Ntt> 視覚的多次元データ分析支援方法及び装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5206950A (en) * 1988-09-23 1993-04-27 Gupta Technologies, Inc. Software development system and method using expanding outline interface
WO1995019597A1 (en) * 1994-01-14 1995-07-20 Strategic Weather Services A user interface for graphically displaying the impact of weather on managerial planning applications
US6014138A (en) * 1994-01-21 2000-01-11 Inprise Corporation Development system with methods for improved visual programming with hierarchical object explorer
US5603025A (en) 1994-07-29 1997-02-11 Borland International, Inc. Methods for hypertext reporting in a relational database management system
US5850548A (en) * 1994-11-14 1998-12-15 Borland International, Inc. System and methods for visual programming based on a high-level hierarchical data flow model
US5893125A (en) * 1995-01-27 1999-04-06 Borland International, Inc. Non-modal database system with methods for incremental maintenance
US5760788A (en) * 1995-07-28 1998-06-02 Microsoft Corporation Graphical programming system and method for enabling a person to learn text-based programming
WO1997007470A1 (en) * 1995-08-17 1997-02-27 Wall Data Incorporated Method and apparatus for storing and retrieving data in a relational database using an object model
US5787431A (en) * 1996-12-16 1998-07-28 Borland International, Inc. Database development system with methods for java-string reference lookups of column names

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0668158A (ja) * 1992-05-04 1994-03-11 Internatl Business Mach Corp <Ibm> データベース内の情報を表示する装置および方法
JPH1049544A (ja) * 1996-08-02 1998-02-20 Nippon Telegr & Teleph Corp <Ntt> 視覚的多次元データ分析支援方法及び装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100962920B1 (ko) 2003-03-27 2010-06-10 마이크로소프트 코포레이션 비주얼 및 장면 그래프 인터페이스
KR101137187B1 (ko) 2003-10-23 2012-04-20 마이크로소프트 코포레이션 비주얼 및 장면 그래프 인터페이스

Also Published As

Publication number Publication date
EP0982670A3 (en) 2005-08-10
BR9904072A (pt) 2000-09-05
JP4177531B2 (ja) 2008-11-05
AU768387B2 (en) 2003-12-11
AU4471499A (en) 2000-03-09
US6263339B1 (en) 2001-07-17
EP0982670A2 (en) 2000-03-01

Similar Documents

Publication Publication Date Title
JP4177531B2 (ja) ダイナミックオブジェクト視覚化及びコード発生
US6282547B1 (en) Hyperlinked relational database visualization system
US6915301B2 (en) Dynamic object properties
JP2000163490A5 (ja)
JP3136035B2 (ja) データベースシステム用インターフェースのための自動レイアウト・ジェネレータ及びその生成方法
US6763498B2 (en) Graphical environment for managing and developing applications
US7418459B2 (en) Object oriented based, business class methodology for performing data metric analysis
US6154750A (en) Method and system for navigation and data entry in heirarchically-organized database views
US7447699B2 (en) Context-based heterogeneous information integration system
US20030204481A1 (en) Method and system for visually constructing XML schemas using an object-oriented model
KR101213798B1 (ko) 복합 데이터 액세스
US20030067481A1 (en) System and method for computer-aided graph-based dependency analysis with integrated documentation
US20040205726A1 (en) System and method for computer-aided graph-based dependency analysis
US6968340B1 (en) Technique for navigating components of a model having complex relationships
WO1997044729A1 (en) Application services builder
de Oliveira et al. Active customization of GIS user interfaces
MXPA99007845A (en) Dynamic properties of obje
MXPA99007846A (en) Visualization of dynamic objects and code generation
MXPA99007847A (en) Context portals based on the atribu
Amsellem ChyPro: A hypermedia programming environment for SmallTalk-80
Staes et al. A seamless integration of graphics and dialogues within a logic based object-oriented language
Magee et al. A VISUAL APPROACH TO DISTRIBUTED PROGRAMMING
WORKSPACE Match Widths OR Heights

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20040227

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080415

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080707

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080819

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: 20080822

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

Free format text: PAYMENT UNTIL: 20110829

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120829

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130829

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees