JP2004507009A - 式をグラフィカルに定義する方法 - Google Patents

式をグラフィカルに定義する方法 Download PDF

Info

Publication number
JP2004507009A
JP2004507009A JP2002521699A JP2002521699A JP2004507009A JP 2004507009 A JP2004507009 A JP 2004507009A JP 2002521699 A JP2002521699 A JP 2002521699A JP 2002521699 A JP2002521699 A JP 2002521699A JP 2004507009 A JP2004507009 A JP 2004507009A
Authority
JP
Japan
Prior art keywords
variable
operator
computer
expression
input
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
JP2002521699A
Other languages
English (en)
Inventor
バーグ クリストファー イアン
ジョンストン グレゴリー オーウェン
ジョーンズ ラッセル ベネディクト
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xemplex Pty Ltd
Original Assignee
Xemplex Pty Ltd
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 Xemplex Pty Ltd filed Critical Xemplex Pty Ltd
Publication of JP2004507009A publication Critical patent/JP2004507009A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming

Abstract

少なくとも1つの入力を処理して少なくとも1つの結果を生成する方法を定義するための第1の演算子オブジェクトを提供することを含む、コンピュータにより実行される、グラフィカルに式を定義する方法。第1の演算子オブジェクトのグラフィカルな表現が表示される。データを含むための変数オブジェクトが提供される。変数オブジェクトを第1の演算子オブジェクトの入力の1つ又は結果の1つに関連付けるためのユーザからの入力が受け取られる。第1の変数オブジェクトのグラフィカルな表現及びその演算子オブジェクトに対する関係が表示される。オブジェクト間の関係の論理的な記述が記録され、これによって式を定義する。
【選択図】図2

Description

【0001】
【技術分野】
本発明は、入力データを処理して結果を生成するための式をグラフィカルに定義する方法に関する。特に、その方法は、コンピュータプログラムの形態により具体化される。
【0002】
【背景技術】
データの複雑な処理のためには、通常、多くの複雑な式を必要とする。その式を定義するためには、しばしば、データの処理を表現する多数のレベルのアプローチを提供するモデルが有効である。モデルの各レベルのために必要とされている式を解くことは、しばしば難しいに違いない。もし式がグラフィカルに表現でき定義できるならば、それはこの処理のためにさらに役に立つに違いない。
【0003】
コドスキー他による米国特許No.4901221は、プロセスをモデリングするためのグラフィカルなシステム及び方法を開示している。その開示されている方法は、図表を作成するユーザが、創造された図表がある結果を達成するための手続き上の方法をグラフィカルに表示するようなブロック図エディターを使用することを可能にする。ユーザがデータ流れ図を作成する時、機械語命令は自動的に生成され、それは表示手続きに対応する実行手続きを特徴つける。ユーザはグラフィカルなプログラミング環境を使用することによって、テキストベースのコンピュータプログラムを単独で創造することができる。この方法の限界は、これが、任意の与えられた時間に入力変数に当てるデータの関数の結果である各出力を生成するための繰り返し制御に依存しているということである。これはまた、データフローの多数の繰り返しを制御するための繰り返し制御手段を参照する繰り返しアイコンを含むデータ流れ図の、スクリーン上での組み立てにも依存している。
【0004】
特にデータの繰り返しを考慮することなしにモデルを設計する場合には、モデルに適合したオブジェクトを設計する場合が望ましい。
【0005】
【発明の開示】
本発明の目的は、式をグラフィカルに定義する方法を提供することにある。
【0006】
本発明の第1の観点によれば、少なくとも1つの入力を処理し少なくとも1つの結果を生成する方法を定義するための第1の演算子オブジェクトを提供し、前記第1の演算子オブジェクトをグラフィカルな表現で表示し、データを保持するための第1の変数オブジェクトを提供し、前記変数オブジェクトを前記第1の演算子オブジェクトの前記入力の1つまたは前記出力の1つに関係付ける入力をユーザから受け付け、前記第1の変数オブジェクト及びその前記第1の演算子オブジェクトとの関係をグラフィカルな表現で表示し、前記オブジェクト間の関係の論理的な記述を記録し、これにより、論理的記述により式が定義されるコンピュータにより実行されるグラフィカルに式を定義する方法が提供される。
【0007】
本発明の第2の観点によれば、データを保持するための変数オブジェクトを提供し、前記変数オブジェクトをグラフィカルな表現で表示し、少なくとも1つの入力を処理し少なくとも1つの結果を生成する方法を定義するための第1の演算子オブジェクトを提供し、前記第1の演算子オブジェクトの前記入力の1つまたは前記出力の1つを前記変数オブジェクトに関係付ける入力をユーザから受け付け、前記第1の演算子オブジェクト及びその前記変数オブジェクトとの関係をグラフィカルな表現で表示し、前記オブジェクト間の関係の論理的な記述を記録し、これにより論理的記述により式が定義されるコンピュータにより実行されるグラフィカルに式を定義する方法が提供される。
【0008】
好適には、前記方法は、1以上のさらなる変数オブジェクトを提供し、前記さらなる変数オブジェクトの各々を第1の演算子オブジェクトの前記入力の1つまたは前記出力の1つに関係付けるさらなる入力をユーザから受け付け、前記さらなる変数オブジェクト及びそれらの前記演算子オブジェクトとの関係をグラフィカルな表現で表示する工程をさらに有する。
【0009】
好適には、前記方法は、1以上のさらなる演算子オブジェクトを提供し、各変数オブジェクトを前記さらなる演算子オブジェクトの前記入力の1つまたは前記出力の1つに関係付けるさらなる入力をユーザから受け付け、前記さらなる演算子オブジェクト及びその前記変数オブジェクトとの関係をグラフィカルな表現で表示する工程をさらに有する。
【0010】
好適には、各変数オブジェクトは、データソースからのデータを提供するための入力オブジェクト、データの行き先にデータを供給する出力オブジェクト、又は、1つの演算子オブジェクト又はもう1つの演算子オブジェクトからデータを流すための結合オブジェクトより選択される。好適には、結合オブジェクトは演算子オブジェクトの間のリンクとして表現される。好適には、各変数オブジェクトは変数ラベルを伴って提供される。好適には、各演算子オブジェクトは演算子ラベルを伴って提供される。
【0011】
好適には、前記式の前記論理的な記述は前記オブジェクト間の論理的関係により定義される。好適には、オブジェクト間の前記関係の前記グラフィカルな表示を定義する前記式のグラフィカルな定義は記録される。
【0012】
好適には、前記方法は、前記論理的な定義を記述する情報を記憶する工程を含む。好適には、前記方法は、前記グラフィカルな定義定義を記述する情報を記憶する工程を含む。
【0013】
好適には、2以上の前記演算子オブジェクトがグループ化されており、グループ化は、グルーピングの演算子オブジェクトを定義し、その中においてはグルーピングの境界を横切りグループ内の演算子オブジェクトの入力に対して結合されている変数オブジェクトがグルーピングオブジェクトコンポーネントの入力となり、グルーピングの境界をクロスしグループ内の演算子オブジェクトの結果に結合された変数オブジェクトは、グルーピングの演算子オブジェクトの結果となる。
好適には、他のオブジェクトにリンクされていないグループ内の演算子オブジェクトの入力及び結果は、各々、グループのオペレータオブジェクトの入力及び結果となる。好適には、グループ化されたオブジェクトのグラフィカルな表現は、グループの演算子オブジェクトのグラフィカルな表現によって配置され、グループのコンテンツへのグラフィカルな表現は、グループのオブジェクトの表現へのリンクのグラフィカルな表現により配置される。
【0014】
好適には、定義された式の論理的な定義は、グループの演算子オブジェクトの内容を含む。好適には、表示される全ての式のグラフィックの定義は、グループの演算子オブジェクトの内容を含まない。好適には、グループの演算子オブジェクトの内容は、式の全てのグラフィカルな表現とは分離されてグラフィカルに表現される。
【0015】
好適には、変数オブジェクトは保持可能なデータのタイプを定義する属性を付される。好適には、演算子オブジェクトの入漁k及び結果は、演算子オブジェクトが受け取ること及び生成することが各々予測されるデータのタイプを定義する属性を付される。
【0016】
好適には、変数オブジェクトは、既に定義されており調停する演算子オブジェクトによって関係付けられている他の変数オブジェクトの属性から、属性を受け継ぐ。好適には、変数オブジェクトは、既に定義されており、関係付けられている演算子オブジェクトの入力又は結果の属性から、属性を受け継ぐ。好適には、演算子オブジェクトの入力または結果は、既に定義されており関係付けられている変数オブジェクトの属性から、属性を受け継ぐ。
【0017】
好適には、既に付されており対応が関係付けられているオブジェクトの属性をチェックするステップを含む。
【0018】
好適には、ラベル付けされた変数オブジェクトのライブラリが予め定義されている。好適には、ラベル付けされた変数オブジェクトのライブラリが予め定義されており、各ラベル付けされた変数オブジェクトの処理の方法、その生成のための入力及び出力もまた、予め定義されている。
【0019】
好適には、変数オブジェクトの変数ラベルは、予め定義した変数ラベルのリストから選択される。好適には、各変数ラベルには、ラベルによりラベル付けされた変数オブジェクトが含むことができるデータのタイプが定義されている属性が付されている。好適には、変数ラベルの選択は、変数オブジェクトへのラベルに関連付けられた属性が付される。好適には、変数オブジェクトに付されている属性は、選択が有効なラベルの選択を制限する。
【0020】
好適には、演算子オブジェクトは、少なくとも、加算、減算、乗算、除算、ルックアップテーブル及び条件付動作の1つである。好適には、演算子オブジェクトは、より複雑な演算子の実行にリンクされた多数の単純な演算子を含む多数の段階の演算である。好適には、一形態においては、演算子オブジェクトはデータベースのキュエリである。好適には、第1の演算子オブジェクトはデータベースへの書き込みを行う。
【0021】
好適には、演算子オブジェクトの演算子ラベルは予め定義された演算子ラベルのリストより選択される。好適には、各演算子ラベルには、ラベルを付された演算子オブジェクトが受け取り又は提供することのできる入力又は結果の各々のデータのタイプを定義する属性が付される。好適には、演算子ラベルの選択は、演算子オブジェクトへのラベルに関連する属性が付されている。好適には、演算子オブジェクトに付された属性は、選択されることが可能なラベルの選択を制限する。
【0022】
好適には、論理的な記述はランタイムエンジンにより使用され、定義した式の処理が行われ、各変数オブジェクトに提供されたデータは、演算子オブジェクトの入力にリンクされ、これにより、データは、式のオペランドとなり、演算子オブジェクトによって表現される各演算子は、式の演算子となり、演算子オブジェクトの各結果は、次の演算子又は式の最終的な結果となり、これにより、式の処理が実行され式の結果が得られる。
【0023】
好適には、各変数に対して名前領域が定義され、これにより、変数オブジェクトにより表現される論理的な変数におけるデータは、名前空間内の変数オブジェクトの各発生と同じである。好適には、名前空間は、モデル化された式に対するデフォルトグローバルによる。好適には、論理的な結合は、名前空間内のラベルが付された変数オブジェクトの各発生の間に生成される。好適には、グラフィカルなリンクが表示され、ラベル付けされた変数オブジェクトの発生の間の論理的な結合が示される。
【0024】
好適には、名前空間は各演算子オブジェクトに定義され、これにより、演算子オブジェクトにより表現される論理的な演算子の処理は、名前空間内の演算子オブジェクトの各発生と同じである。
【0025】
好適には、グループ化された演算子オブジェクトは、1回以上グループ化された演算子オブジェクトの定義に使用され、式の論理的な定義に適用される。
【0026】
好適には、ラベルの属性は、タイプ、単位及びディメンションを有する。好適には、グラフィカルな定義は、XMLにより記述される。好適には、論理的な記述は、XMLにより記述される。
【0027】
好適には、各演算子オブジェクトは、演算子オブジェクトにより表現される演算子により実行される多数の演算の定義を含み、各定義は、演算子により処理されることができるデータの分離したタイプのためである。
【0028】
好適には、演算子オブジェクトは、1つ以上の入力及び1つ以上の出力を有するコンポーネントとしてグラフィカルに表現され、そのコンポーネントは、表現される演算子に表示されるインジケータを有する。好適には、演算子オブジェクトは、結果を生成するための処理の方法の入力が未だ定義されていない演算子の表現である空コンポーネントである。好適には、前記空コンポーネントは、適切に定義された方法を有する適切な演算子オブジェクトをサーチするための基準を形勢するために使用される。
【0029】
好適には、オブジェクトのライブラリが提供される。好適には、オブジェクトは、外部より供給される。
【0030】
本発明の第3の観点によれば、本発明に係るグラフィカルに式を定義するシステムは、ディスプレイ及びユーザ入力手段を有するコンピュータと、少なくとも1つの入力を処理し少なくとも1つの結果を生成する方法を定義するための第1の演算子オブジェクトを提供する手段と、前記第1の演算子オブジェクトをグラフィカルな表現で表示する手段と、データを保持するための第1の変数オブジェクトを提供する手段と、前記変数オブジェクトを前記第1の演算子オブジェクトの前記入力の1つまたは前記出力の1つに関係付ける入力をユーザから受け付ける手段と、前記第1の変数オブジェクト及びその前記第1の演算子オブジェクトとの関係をグラフィカルな表現で表示する手段とを有し、これによりオブジェクト間の関係により式が定義される。
【0031】
本発明の第4の観点によれば、本発明のコンピュータをコントロールすることにより式をグラフィカルに定義するコンピュータプログラムは、少なくとも1つの入力を処理し少なくとも1つの結果を生成する方法を定義するための第1の演算子オブジェクトを提供し、前記第1の演算子オブジェクトをグラフィカルな表現で表示し、データを保持するための第1の変数オブジェクトを提供し、前記変数オブジェクトを前記第1の演算子オブジェクトの前記入力の1つまたは前記出力の1つに関係付ける入力をユーザから受け付け、前記第1の変数オブジェクト及びその前記第1の演算子オブジェクトとの関係をグラフィカルな表現で表示し、前記オブジェクト間の関係の論理的な記述を記録し、これにより、オブジェクト間の関係により式が定義される。
【0032】
本発明の第5の観点によれば、本発明に関わる記録媒体は、前述したコンピュータプログラムが記録されたコンピュータにより読み取り可能な記録媒体である。
【0033】
本発明の第6の観点によれば、本発明のコンピュータにより実行されるグラフィカルに式を定義する方法は、少なくとも1つのデータを保持するための変数オブジェクトを提供し、少なくとも1つの前記入力データを処理し結果を生成する方法を定義する演算子を提供し、ユーザに結果の変数を選択するための変数のリストを表示し、入力データの処理の結果を記憶するための結果の変数の選択をユーザから受け取り、前記選択された結果の変数をグラフィカルな表現により表示し、演算子を選択するための演算子のリストをユーザに表示し、ユーザより演算子の選択を受け取り、選択された演算子のグラフィカルな表現を表示し、ユーザに前記変数か1以上の定数であるところの少なくとも1つの入力を選択させるため、入力データを記憶するための入力のリストを表示し、ユーザからの少なくとも1つの入力の選択を受け取り、前記選択された入力のグラフィカルな表現を表示し、これにより、選択された結果変数を、選択された処理による選択された入力の処理と等しくすることによって、式を定義する。
【0034】
本発明の第7の観点によれば、本発明のコンピュータにより実行されるグラフィカルに式を定義する方法は、予め設定された属性を有する少なくとも1つの変数のタイプを提供し、少なくとも1つの前記入力データを処理し結果を生成する方法を定義する少なくとも1つの演算を提供し、ユーザに変数のタイプを選択させるため変数のタイプのリストを表示し、ユーザからの変数のタイプの選択を受け取り、選択した変数のタイプに対する名前を受け取り、名前が付された変数を表示し、ユーザに演算を選択させるための演算のリストを表示し、ユーザからの演算の選択を受け取り、選択された変数を選択された演算と協働させるためのユーザからの入力を受け取り、選択された変数を入力された変数か結果の変数とし、選択された変数が結果の変数とされた場合には、ユーザから少なくとも1つの入力変数か入力定数及びその入力変数又は入力定数に対する名前を受け取り、その入力された変数又は入力された定数をグラフィカルに表示し、選択された変数が入力の変数とされた場合には、出力変数の名前を受け取り、これをグラフィカルに表示し、これにより、入力変数又は入力定数による入力データの選択された演算による処理の結果により式を定義し、結果の変数を得る。
【0035】
【発明を実施するための最良の形態】
式は、1つ以上のオペランドに演算子を適用することによる結果の計算のための方法論の記述である。典型的には、オペランドは代数学上の観念における変数である。本発明は、オペランド(変数)及び演算子に関しての記述としての式を定義する。具体的には、変数及び演算子は関係がある。簡単な式X=A+Bは、オペランドA及びBと加算演算子(+)との間の関係の記述である。本発明は、これがグラフィカルに表現されることを可能にするものであり、これは複雑なモデルや関数を表現するときに望ましい。本発明はまた、定義されたグラフィカルな関係の記述、換言すれば、式を定義する変数と演算子との間の関係を生成する。
【0036】
本発明の方法は、グラフィカルの式定義ツール(GFDT)12により実行される。図1に示すように、GFDT12は、グラフィカルユーザインターフェイス(GUI)14と相互に作用する。GUI14は、コンピュータのオペレーティングシステムの一部を構成する。その一例は、マイクロソフトのウィンドウズ(Microsoft Windows)の種々の版、マッキントゥッシュブランドのコンピュータのためのMacOS、あるいは、UNIXオペレーティングシステムの下で動作するX−Windowsである。GFDT12は、グラフィックディスプレイに提供するための命令を提供するGUI14と通信する。
【0037】
図2に示すように、FGDT12は、2つの主要部、コンポーネントマネージャ(Component Manager)16及びコネクションマネージャ(Connection Manager)18を有する。コンポーネントマネージャ16は、少なくとも1つの入力を処理し結果を生成する方法を定義するために提供される演算子オブジェクト20を取り扱う。演算子オブジェクトは、式の中の演算子を示す物である。本例においては、演算子はコンポーネントとして参照される。従ってコンポーネントマネージャは好適な具体例の目的のためにコンポーネントオブジェクト(Component Object)を管理する。
【0038】
コネクションマネージャ18は、変数オブジェクトを取り扱う。変数オブジェクトは、式の結果の計算の各実例のための式の中のオペランドを示す物である。変数オブジェクトには多数の型が生じ、その主な1つは、コンポーネントにまたはコンポーネントからデータを流す、後により詳細に説明するような、結合オブジェクト(Connector Object)22である。変数オブジェクトの他の型は、一般的にラベルにより名前が付けられる入力及び出力オブジェクトである。これらは、好適な具体例において、名前付き結合として参照される。それらにはユーザが参照できるラベルが付付されるので、コンポーネントに又はコンポーネントから流されるデータについての情報を知るための、名前付き結合として参照される。
【0039】
GFDT12は、ユーザに対して、GUI14を介して、定義される際に式をグラフィカルに表現するインターフェイスを提供する。GFDT12はまた、それが定義された時に、式の論理的な記述を記録する。グラフィックの記述の記録は論理的な記述の記録とは区別される。論理的な記述は、インターフェイスの中に表示されるオブジェクトの間の関係を論理的な用語により記述される。インターフェイス24の画面のコピーを図3に示す。
【0040】
インターフェイス24は、標準的なWindowsのウィンドウであり、ツールバーブ26、基本ウィンドウ28及び補助ウィンドウ30を有する。基本ウィンドウ28は、総括的な式の部分を示すカレントページを表示する。ウィンドウ26は、ページセレクタ32を含む。その他のページは、式のほかの部分を示すように提供される。メインウィンドウ28は、アキュムレータのための簡単なモデルを表示して示されている。
【0041】
式またはモデルを作成する方法を、図4A〜4Dを参照して記述する。この例は、採掘現場に関わる。採掘現場の計画、予算を組むこと又は監視は、予め定義された式に従った計算の結果を用いることにより行われる。式は、入力変数に含まれる情報が特定の演算子に従って処理され結果を生成したときに生成された結果を決定する。その結果から、採掘現場の運営の計画、予算を組むこと又は監視は実行される。具体的には、”Load and Haul IPD”の結果が一例として使用される。”Load and Haul”は、このケースでは、デフィアンス(Defiance)という名前の穴における、採掘穴からの鉱物に含まれる物質の積載及び運搬のコストである。
【0042】
図4Aに示すように、”Load and Haul IPD”が計算されることが望まれている。マウスの移動によりポインタの位置を決め、クリックし、ドラッグし、所望の位置に変数オブジェクトを下ろすというよく知られている処理により、変数オブジェクト34がツールバー26より選択され、メインウィンドウ中に配置される。その変数オブジェクトには、”Load and Haul IPD”という名称が付与される。使用されるシンボルに対する取り決めは、名称の付された変数(名称の付された変数オブジェクト)は円形の中、コンポーネント(演算子オブジェクト)は入力を表す内向きの矢印及び出力を表す外向きの矢印を伴う矩形、及び、データの流れの結合(変数オブジェクト)はラインにより表現する、というものである。
【0043】
”Load and Haul IPD”変数34には特定の属性が付与されてもよい。これは、補助ウィンドウ30中の”Properties”タブが選択され、これは数値でなければならないというような所望の属性、より具体的にはそれは通貨を示す数値でなければならずその通貨単位は”AU$”であるというような属性が入力されることにより行われる。一度生成されたその変数は、”Load and Haul IPD”とラベルが付された円形34として、ビデオディスプレイユニット上にグラフィカルに表現される。その変数のアイコンは、それが手入力のような任意の適切なソースからデータを受け取ってもよい、それは他のプログラムから受け取られてもよい、又は データベースから受け取られてもよい、ということを表現することになるだろう。
【0044】
”Load and Haul IPD”は、”Load and Haul(精選)”データが加えられた”Load and Haul IPD(バルク)”データから計算される。すなわち、”Load and Haul IPD”はバルク物質及び精選物質の積載及び運搬のコストを表現する。バルク状物質は、鉱物が含有する物質及び非鉱物が含有する物質を生成する採掘方法から得られる。精選された鉱物は、上質な、鉱物が含有する物質を生成する採掘方法から得られる。
【0045】
図4(B)に示すように、次のステップは、ツールバー26からコンポーネント36を選択すること及びメインウインドウ28中に配置することである。通常、各コンポーネントのボタンの数又はリストはユーザに提供され、そこから、図3に示すような加算、減算、乗算、除算等から選択される。条件付き演算、及び、微積分、三角法等のその他のより複雑な演算等のコンポーネントは、ルックアップテーブルのようにして提供される。これに加えて、データまたはテキストを取り扱う演算も含まれる。実行可能な演算の型は制限されない。実際に多数のレベル化された演算を含む膨大な演算のライブラリが利用可能にされている。これについては、後により詳細に説明する。このケースでは、”加算”演算が選択されている。加算は、ボックス36としてグラフィカルに表現される。加算は少なくとも2つの(このケースでは実際に2つの)入力及び1つの出力を有する。そして、オブジェクト間の関係が生成される。このケースにおいては、”Load and Haul IPD”変数は加算の結果である。従って、結合オブジェクト38をツールバー26より選択することによって、これらは結合され、加算コンポーネント36の出力矢印を”Load and Haul IPD”変数34に接続するライン38が引かれる。従って、”Load and Haul IPD”は連携の特徴の効力によって結果変数となる。入力及び出力は矢印として表現され、連係は、結果の矢印と変数との間の結合38として表現される。
【0046】
図4(C)に示すように、もう1つの変数オブジェクト40がツールバー26より選択され、メインウィンドウ28中に配置され、”Load and Haul IPD(バルク)”の名称が付される。変数名は、初めのうちは、ユーザが所望の変数を選択するためのリストを生成するために入力される。その他の点としては、変数の名称は、要求されるように入力されてよい。”Load and Haul IPD(バルク)”変数40は、もう1つの結合オブジェクト42がツールバー26より選択されて2つのオブジェクトの間が結合されることによって、加算演算子36の入力と連携される。このようにして、”Load and Haul IPD(バルク)”は入力変数になる。”Load and Haul IPD(バルク)”は円形40として表現され、入力関係は、変数とコンポーネントの間の結合42として表現される。
【0047】
図4(D)に示すように、”Load and Haul IPD(精選)”と名称が付されたもう1つの変数44が選択され、配置され、加算演算子36の他方の入力と連携される。この式の定義は、これにより完了する。結果の変数、コンポーネント(演算子)及び入力の変数の選択、及び、それらの間の関係は、次のように定義された式という結果をもたらす:「入力変数”Load and Haul IPD(バルク)”及び入力変数”Load and Haul IPD(精選)”は、加算演算子によって合算され、結果の変数”Load and Haul IPD”が生成される。」。式が演算の実行に付された時には、入漁データ変数に入力されたデータが、定義された式に従って、結果変数に入力される結果を生成する。
【0048】
定義した式を後の回復のために記憶するために、各オブジェクトの型、名称及び属性は、全て、ウィンドウ28内の各オブジェクトの位置に対応して記録される。この情報により、式は、記憶し後の表示の際に回復することが可能となる。
【0049】
ブロック図による式の描画と同時に、式の論理的な定義も記録される。再び図4(A)を参照すると、変数オブジェクト”Load and Haul IPD”34 の生成は登録される。図4(B)においては、加算コンポーネント36の生成もまた、その配置と同様に登録される。加算コンポーネントの出力と変数”Load and Haul IPD”との間の結合38の配置も登録される。そして、コンポーネントの結果の出力と結果の変数との間の論理的な結合が、記録される。
【0050】
図4(C)に示すように、同様に、変数オブジェクト”Load and Haul IPD(バルク)”40及びその加算コンポーネントの第1の入力への結合が登録される。再び図4(D)においては、”Load and Haul IPD(精選)”精選変数の生成及びその加算コンポーネントの第2の入力への結合も登録される。コンポーネント及びそれらの間の結合(及びこれによるそれらの関係)の登録は、これによって登録される。従って、式の論理的な定義が、オブジェクト及びそれらの関係の記述という形態で生成される。画面上の位置及びその他のグラフィカルな情報は、その論理的記述に対しては重要ではなく、単にグラフィックの記述の中に記録される。
【0051】
そのグラフィックの記述は、ユーザ、ある意味で関わることのできるユーザ、に対する式の表示のために使用され、式の論理的な記述の記録は、式の処理エンジンによって、定義された式を使用に供するために使用される。ユーザは、論理的な記述に関わる必要はなく、処理エンジンは、グラフィックの記述に関わる必要はない。このような単純な式を対象とするこの段階においては、グラフィックの記述及び論理的な記述は、概念のレベルにおいては実質的に異ならない。しかしながら、より複雑な式がモデル化されるに際しては、後述するように、これらの定義は異なってくる。しかしそれでも、ユーザはまだ、定義される式に対して、式のグラフィカルな表現によって知的なレベルで関わることができ、式の処理エンジンは、単にグラフィカルな表現に関連するのみの情報を除外しなければならないということ無しに、論理的な記述を使用することができる。
【0052】
変数と演算子との間の連携は、演算子の他の入力の属性が少なくともある程度の範囲で決定されることを可能にする。例えば、結果の変数の演算子との連携は、このケースでは通貨を示す数値であるが、演算子の入力の属性が知られることを可能にする。”Load and Haul IPD(バルク)”入力変数が入力の1つと連携されている時には、この入力変数に連携されている属性は、演算子の要求に対してチェックされる。代わりに、もし”Load and Haul IPD(バルク)”入力変数がそれに連携された属性を持っていなければ、それはこれらの属性を受け継ぐことができる。従って、”Load and Haul IPD”は通貨を示す数値であるという属性を持っているので、”Load and Haul IPD(バルク)”及び”Load and Haul IPD”の両方の変数もまた、通貨を示す数値であるに違いない。チェックが実行され、もしいずれかの入力が要求されている属性と一致しなかった場合には、警告が発せられるか、又は、この連携は許されない。また別の状態としては、もし入力が連携している属性を持っていなければ、その通貨を示す数値であるとの属性が受け継がれる。
【0053】
チェックと継承は双方向に働くことができる。すなわち、もし入力が通貨を示す数値であるとの属性を持っているならば、結果もまたチェックされ、それが矛盾のない属性を持っているか否かを確かめられる。通常は、より最近に生成された入力/結果変数が、チェックされる。
【0054】
コンポーネントの入力及び出力は、コンポーネントに関わる属性情報を保持する。コンポーネントは、入力から出力を生成するという機能とともに、その入力及び出力の属性により定義される。
【0055】
図5において、”Load and Haul IPD(バルク)”40の値を計算する式は、入力変数”Bulk Rate”48と入力変数”Bulk BCMs”50の乗算によって定義される。バルクレート(”Bulk Rate”)は、その場所における各1立方メートルのバルクの鉱物が含有する物質の採掘のためのコストを示す。バルクBCM(”Bulk BCMs”)は、バルクの物質の(その場所に)堆積された立法メートル(BCM)を示す。この式は、同様のステップを使用することにより再び組み立てることができ、先の式が定義される。”Load and Haul IPD(バルク)”入力変数40は、結果変数として使用可能である。それは、従って、選択されディsプレイ上に表現される。もし、”Bulk Rate”及び”Bulk BCMs”入力変数が、まだ使用可能でないならば、それらは入力される。乗算演算子オブジェクト46が、次に、選択され、入力変数及び出力変数と連携される。これは、乗算演算子の表現がドラッグされて配置されることにより実行されてよい。入力及び結果変数は演算子に関係付けられる。従って、入力変数(”Bulk Rate”及び”Bulk BCMs”)は演算子の入力に結合され、出力の矢印は結果変数(”Load and Haul IPD(バルク)”)に結合される。ここで、変数及び演算子の配置の順番は、先に定義した式とは異なる。この順番は、属性のチェック及び継承の順番の相違のみををもたらす。もし、乗算の時に入力変数の属性が結果変数の属性と矛盾していれば、属性の継承に問題があるとのメッセージがユーザに提供される。すなわち、もし、バルクレート入力変数が容積当たりの価格を示す数値であるとの属性を持っていなければ、及び/又は、バルクBCM入力変数が容積を示す数値であるとの属性を持っていなければ、警告メッセージが与えられるか、又は、もし2つのうちの一方が正しい属性を持っていれば他方に正しい属性が継承される。属性の解析と継承は、変数/定数の次元に限定される必要はない。数値の単位もチェック可能であり、例えば、もし一方の単位がAU$であり他方の単位がUS$である場合、これは警告という結果になる。これに代わって、後に記述するように転換を行ってもよい。
【0056】
この式は、図4(D)の式と同じページに生成されてもよいし、新しいページに生成されてもよい。もし別々のページになるのであれば、適切なページを選択するために、ページセレクタ32が使用される。これはまた、特に、それらが別々のページ上にあるならば、グラフィックの定義が論理的な定義から分離され始める場所でもある。各ページが各式に対する分離されたグラフィックの定義を含む場合には、論理的な定義は、図5の式の”Load and Haul IPD(バルク)”結果変数と図4(D)の式の”Load and Haul IPD(バルク)”入力変数との間の結合を形成する。1つの式は、ユーザに対して、2つのより小さな式として表現される。これは、式の知的な理解を助けるが、論理的には、分離はない。これは、同じ名前が付されている変数が作用する特有の空間を有しているときに分離が生じることができないと言うことではない。変数(及びコンポーネント)に対する名称の空間は、それらのアプリケーションを限定し定義されることが可能である。これについては、後に詳細に説明する。
【0057】
ここで、コンポーネントマネージャ16及びコネクションマネージャ18により行われる処理について、図6,7及び8を参照してより詳細に説明する。図6に示すように、コンポーネントマネージャ16は、まず、52において、ユーザにコンポーネントタイプを、ツールバー26の中に表示されているパレットから選択させる。図3に示す例においては、加算、減算、乗算及び除算のボタンがコンポーネントとして選択されるように提供されている。これらのボタンの1つが押されると、オペレーティングシステムはコンポーネントマネージャ16にその特定のボタンが選択されたことを通知する。演算子コンポーネントのタイプは知られている。そこで、ユーザは、54において、描画ウィンドウ28の中でクリックする。すると、クリックされた場所にコンポーネントが配置されるという結果をもたらす。これは、56においてコンポーネントが描画ウィンドウ28の中に描画され、58においてコンポーネントが式の定義の中に登録されるということを必然的にもたらす。コンポーネントの名称、そのタイプ及びページ上の位置やコンポーネントを表現するためのアイコンの詳細のようなコンポーネントのグラフィカルな表現のための詳細な仕様が記憶される。論理的な定義におていは、コンポーネントの名称やタイプのような詳細が登録される。
【0058】
図7に示すように、名前の付された結合が式の中に含まれることになる時には、ユーザは、60において、名前の付された結合コンポーネントのタイプを、パレットから選択する。62において、ユーザが描画ウィンドウ28をクリックすると、64において、名称が空の結合変数が描画される。その後ユーザは、変数に名前を付したり、または待機した後で名前を付すことが可能である。もし、それに名前が付されたら、66においてが、ユーザsが名前を入力するための設備が提供され、その名前は、その後、68において名称が付された新しい結合において表示される。その名称が付された結合は、その後、70において登録される。名前、タイプ、ページ上の位置、名称が付された結合等の名称が付された結合のグラフィカルな表示に関わる詳細は、記録される。名称、タイプ及び名称が付された結合のような名称が付された結合の論理的な記述の詳細は登録される。
【0059】
図8に示すように、コンポーネント間又はコンポーネントと名前が付された結合の間のような演算子オブジェクト間の結合は、図8に示すような関係で記述される。ユーザは、72において、ツールバーより結合オプションを選択する。ユーザは、74において、コンポーネント上をクリックし、名前の付された結合または他のコンポーネントに結合されている結合子をドラッグする。コネクションマネージャは、76において、それから結合を許すか否かを結合されているオブジェクトの属性に基づいて決定する。もし、78に”no”で示すように、結合が許されなければ、88において、描画されているラインの色を赤に変えることによって警告を発するか、あるいはまた、名前が付された結合の色が赤に変えられる。90においてユーザがマウスを開放した時には、92において描画は達成されず、従って結合は登録されない。もし、78に”yes”で示すように結合が許された場合には、80において、その名前が付された結合の色は緑に変化される。82においてユーザがマウスを開放した時には、84において結合を表現するラインが描画され、86において結合は登録される。ラインの終了点やラインの頂点(曲がり目)のような結合(ライン)のグラフィカルな表現に関する詳細。結合されているコンポーネントの詳細のような論理的な記述に関する詳細は登録される。
【0060】
図6,7及び8に記述された処理は、図面の各ページにおいて発生する。これに加えて、グラフィックの記述においては、各図面は記録された名称(ページ名)を有し、図面の各ページに対しては、各登録コンポーネント、名称が付された結合及び結合の詳細が記録される。これに加えて、ネームスペースの詳細が、後により詳細に説明するように、記録される。
【0061】
図9を参照して、式の定義のもう1つの例を示す。この例においては、”Bulk Rate”48は、ルックアップテーブル94によりいくつかの変数及び定数96〜104から定義される。PIT96は、採掘穴の名前を表す変数である。Schedule98は、採掘される鉱物の量に依存する採掘レートを表す変数である。RL100は、鉱物が掘り出される採掘穴の深さの相対的なレベルを表す変数である。MaterialType102は、例えばそれが新しい物質または沈殿した土砂であるというような、採掘された物質のタイプを表す変数である。Bulk”B”は、文字定数である。ルックアップテーブル94は、5つの入力の値に基づいて、値を調べる演算である。そしてその結果の値は、結果変数48に提供される。図は、その入力及びその出力の間の結合を示す。入力、結果及び演算の選択及びこれらの画面上への表現の配置による関係の構築は記録される。これらのオブジェクト及びそれらの間の関係の論理的な記述はこの式を定義する。
【0062】
図10に示すように、このように大きく記述された例はトップダウンの方法論を使用し、いくつかの単純な式としてのモデルを定義している。これらの式は合わせられるか、又は、示されたの同様の1つの複雑な式として描画される。理解できるように、入力変数”PIT”96、入力変数”SCHEDULE”98、入力変数”RL”100、入力変数”MATERIAL TYPE”102、入力変数”Bulk”B””104、入力変数”Bulk BCMs”50及び入力変数”Load and Haul IPD(精選)”44が全て使用されて、最終的な出力である結果変数”Load and Haul IPD”34が計算される。輪郭をとって符号を付した領域106は、多くのステップが存在する式(モジュール)が連鎖されてより複雑な上のレベルの式を生成されることが可能であることを示す。破線のボックス106の内側のステップは、上位のコンポーネントを形成するためにグループ化され得る。上位のコンポーネントの入力は、”X”により示され、出力は小さいサークルにより示される。
【0063】
上のレベルの式もまた、変数”Bulk Rate”及び”Load and Haul IPD(バルク)”の必要無しに、定義されることが可能である。その代わりに、演算子94の出力が直接に演算子46の入力に与えられ、演算子46の出力は、演算子36の入力に直接に与えられる。換言すれば、演算子は、直接的に連鎖されることが可能である。しかしながら、もし変数”Bulk Rate”及び”Load and Haul IPD(バルク)”がどこかよその場所で使用されている時には、この式の設計は、図10に示すように行うことがより適切かもしれない。
【0064】
演算子の連鎖のコンポーネント化は、コンポーネント化される要素の周りのボックス106の描画及びコンポーネント化する機能の選択により行われる。ボックス106の中のオブジェクトは、その際、カレントページから消去されて、当たらしページに移される。新しいコンポーネントの内部の働きは、新しいページ上において観察可能である。コンポーネントのグラフィックの記述は新しいページにコピーされる。消去されたオブジェクトの場所には、図11に示すように、新しいコンポーネント108が置かれる。コンポーネントのグラフィックの記述は、新しいコンポーネント108への入力を形成する消去されたコンポーネントへの各入力を伴って、カレントページの記述に含まれる。名前が付された結合96〜104、50及び44からの結合は、新しいコンポーネント108の入力に対応して生成される。新しいコンポーネントの出力からの結合は、名前が付されたコンポーネント34に結合される。カレントページの記述は、新しいコンポーネント及びそれらに対する結合を反映してアップデートされる。新しいコンポーネントの入力の各々と、他のページにおいてグループ化されたコンポーネントの入力の各々との間には、論理的な結合が生成される。同様に、そのコンポーネントの出力と他のページのコンポーネントの出力との間には、論理的な結合が生成される。従って、このモデルの論理的な記述は、モデルのグラフィックの記述が異なるのに対して、実際には変更されずに維持される。
【0065】
図11において、図10の106内の連鎖した演算子は1つにグループ化されて、より高いレベルの演算子108を提供している。この演算子は、5つの入漁を要求し、”Load and Haul IPD”の結果変数を生成する。その後は、上位のレベルの演算子108を構成するより低いレベルの式の各々を再定義する必要無しに、新しいコンポーネント108は再利用されることが可能である。コンポーネントの働きを見せるための設備は提供されるかもしれない。これは、例えば、コンポーネントの内部の働きが見せられているページまでページがめくられることにより、内部の連鎖が表示されるまで、それがオープンされるように上位のレベルの式の上でダブルクリックをすることによってもよい。このドリルダウンと呼ばれる次に詳細なレベルを見るための処理である。
【0066】
見てきたように、トップダウンの設計方法は、それらが矛盾なく継承されていることを保証するためのチェックがなされる各レベルの属性を伴う種々の式を定義するために使用され得る。同様にボトムアップの設計方法も採用可能である。これは、多数のレベルのモデルを生成することを許容し、これはグラフィカルに表現され、定義され得る。より上位のレベルの機能のモジュール式の組み立てもまた実行される。
【0067】
図12に示すように、継承は、選択が可能な変数/定数の選択肢を制限するために使用されることができる。すなわち、もし、もう1つの変数を選択することによって、選択された変数がある属性を持たなければならない場合、その変数の選択は、要求される属性を保持する変数に制限されるかもしれない。その他の変数は”グレイアウト”され、選択が不可能にされるか、又は、単純に選択肢のリストに表示されなくされる。継承される属性の一例は、ディメンションの継承である。この場合は、各変数は、例えば距離、時間、量等の少なくとも1つのディメンションを有しなければならない。
【0068】
図12において提供される例においては、定義される式は、A×B=Cである。変数には、タイプ、ディメンション及び単位を含む属性が与えられる。この場合、結果変数Cは、実数の変数であり、質量・距離のディメンション及びキログラムメータ(kgm)の単位を有する。Aは、実数で、そのディメンションは質量で、単位はキログラム(kg)であるという属性を有する。Bは、実数または整数のいずれかであるという属性により定義される。これは、Bは実数または整数のいずれかであるという継承の効果による、A及びCの属性の定義の結果である。もし、例えば、Cが整数として定義されており、Aが整数として定義されていた場合には、これにより、Bも必然的に整数となる。これに加えて、Cは質量・距離(kgm)というディメンションであり、Aは質量(kg)というディメンションであるので、必然的に、Bは距離(m)のディメンションを有することとなる。同様に、もし、A及びBが最初にAがkgでBがmであると定義されるならば、ディメンション及び各入力の単位の効力及び演算子の効果により、単位Cは必然的にkgmとならなければならない。
【0069】
Bは、実数または整数でありディメンションはメータであるので、それらの継承した属性に適合する実際の変数のタイプは、Bである入力変数のタイプを制限する。以前に入力されたいくつかの変数のタイプをリストにしたプルダウンメニュー110が示される。属性に適合する変数のタイプは、通常のフォントによって示され、属性に適合しない変数は、”グレイアウト”されて示される。もちろん、この代わりに、選択が許されない変数のタイプは、単純に表示されないようにしてもよい。
【0070】
この場合、変数タイプ”SHAFT DIAMETER”又は”LEVER ARM LENGTH”が選択され得る。プルダウンメニュから選択されたこれらの変数のいずれかが、その後変数Bの変数タイプとなる。選択され得る変数は、データベース又は変数のライブラリ等の種々のソースから獲得され、手入力されることはない。プルダウンメニュは、図示のごとく、原文通りの変数名のリストを含む。しかしながら、プルダウンメニューの中においては、変数のアイコンの表現も使用可能である。その他の適切な選択手段を使用するようにしてもよい。
【0071】
同じ処理は、Aのようなその他の入力変数、同様にCのような結果の変数にも適用可能である。変数の選択の順番が、その後の変数(又は定数)の属性を必然的に決定する。
【0072】
式の定義の進行をチェックするために、定義される式の一部分の上のポインタが配置された場所に設備が含まれ、そのような大きく定義された式を表示するウィンドウが出現する(図13(A)及び図13(B)に示すように)。
【0073】
図13(A)においては、ポインタはルックアップテーブルの入力のいずれか1つの上に配置されているということがわかる。ポインタの下には、入力の属性は0以上の数字であるグレード(”Grade”)である必要があることを示しているボックスが出現する。グレードはメートルトンあたりのグラムの属性で与えられるということもわかる。
【0074】
図13(B)においては、ポインタはスケジュール結果変数をさしていることが示される。それは、式の定義をそのように大きく示している。このケースにおいては、式の定義は、もし(ルックアップテーブル:変数の中のデータを伴った”montyly cost period”:”period”が”monthly costs lower”値と等しい)であれば、結果は低い方の値(L)であり、さもなければ結果は高い方の値(U)である。これはまた、入力された式のシンタックスをチェックすることも可能である。
【0075】
図14に示すように、この例においては、はさみの圧力の式が定義されている。はさみの圧力(”SHARE STRESS”)=(半径”RADIUS”×曲がりの角度(”ANGLE OF TWIST”)×(はさみの弾性力”SHARE MODULUS OF ELASTICITY”))÷長さ(”LENGTH”)。この例においては、表示されるオブジェクトを表現するアイコンが異なる。はさみの弾性力120は、入力を受け取るルックアップテーブル演算子である。それは、金属合金入力変数122であり、その中においてデータは受け取られる。ルックアップテーブルは、GFDTの中に記憶されているデータを参照するコンポーネントである。あるいは、ルックアップテーブルは、外部データを参照するコンポーネントである。例えば、外部データは、スプレッドシートの形態であってよい。GFDTは、データが外部のソフトウエアアプリケーションから転送されことを可能にするプラグインにより提供されることも可能である。標準的なスプレッドシートアプリケーションは、マイクロソフト・エクセルである。GFDTは、プラグインを介して、エクセルスプレッドシート内のデータを検索するために、エクセルと通信することができる。ルックアップテーブルは、各金属合金のはさみ弾性力に関しては、物質供給者によって供給されるデータから得られる。データは、いくつかの物質供給者から提供されてよい。データは、物質供給者によって提供されたデータベース124から提供されてもよい。データベースは、インターネットのようなコンピュータネットワークを介してアクセスされるようにしてもよい。従って、演算子120はデータベース124をアクセスするデータベースキュエリを伴ってもよい。データベース124は、分散データベースであってもよい。したがって、グラフィカルに式を定義する方法は、データベースキュエリは本方法に従って定義される式の特定のであるとして、データベースキュエリを定義するためにも用いられてもよい。
【0076】
図15に示すように、この例においては、結果変数Eは、E=C(A×B)+Dとして定義され、Cは他の関数である。もし、Cが定義されていなければ、これは空コンポーネントと呼ばれる。Cの属性は、図15に示す式の他の属性により定義されてよい。すなわち、変数A,B,D及びEが、ある程度までは、Cが保持しなければならない動作の入力及び出力という属性を定義する。Cは徐々に定義されることも可能であり、その結果、もし図16に示すようにCに対してもしさらなる入力”f”、”g”及び”w”を加えることが望まれた場合、式が徐々に定義されるように、これらを式に加えられる。新しい入力をコンポーネントCに加えることが望まれている時には、入力をコンポーネントに加えるための選択が選択され、新しい入力及び出力が要望されるように生成される。このように、更なる名前が付された変数”f”、”g”及び”w”が、ここでコンポーネントCの各入力に結合されることが可能である。道央に、追加の出力を要求されたように付け加えることが可能である。
【0077】
コンポーネントCの機能を明記することが望まれた時には、図17に示すように次のレベルへのドリルダウンによって、Cがオープンされることができる。Cの機能のもう1つのレイヤーはボックス126の中に示されるように定義される。あるいはまた、Cの機能は、コンポーネントのライブラリから描画されてもよい。基本ライブラリがGFDTには提供されてもよいし、あるいはまた、ライブラリはオンラインにより提供されてもよい。一度、要求を実行するコンポーネントが発見されたら、それは、式の中に挿入される。図18に示すように、異なるマシン上に存在するコンポーネントが発見されたら、それはコンポーネントの要求される属性を果たし、要求される機能をコンポーネントに付加されている記述のように実行する。そして、これは、インターネットのようなコンピュータネットワークを介してGFDTのローカルなインスタンスに対して、生成されている式に挿入するために、転送されることができる。
【0078】
図16を参照すると、CはA及びBの生成物の機能であり、また、入力f、g及びwを受け取ることがわかる。すなわち、C=(A×B、f、g、w)である。図17を参照すると、Cがドリルダウンした時、A及びBの生成物は結合子128によって借りの変数”p”に結合されていることがわかる。変数”p”は、そこで、統合演算子”=”によって示されるように、入力変数”w”と比較される。”RESULT”演算子は、比較の結果が真かどうかをテストし、その場合には、入力”f”及び”g”を受け取るルックアップテーブルの結果が提供される。一方、もし、比較の結果が偽ならば、結果は0である。”RESULT”演算子の結果は、その後、乗算演算子(”x”)によって示されるように、定数”k”と乗算され、出力130が提供される。これは、そして、加算演算子(”+”)の丹生ロクに提供され、そこで変数Dと加算され、結果Eが提供される。
【0079】
空コンポーネントは、いっぱいに定義されているコンポーネントのプレイスホルダとして提供されることができる。空コンポーネントは、まだ、定義されたその入力と出力との間の機能を持っていない。ユーザは、空コンポーネントを設計環境の中に配置し、その入力及び出力を定義する。コンポーネントの機能は、その後に要求されたように定義されることが可能であるか、又は、入力及び出力の定義は、機能を実行可能なコンポーネントをライブラリから探すときのその探索基準を形成することができる。探索基準は、さらに、キーワード、より上位のクラスの構造情報当のように提供されることができる。空コンポーネントは、さらに、トップダウン設計方法の助けとなる。
【0080】
グラフィカルな表現を支援するために、カラーコーディングを使用することは望ましい。例えば、1つのカラーは、ブルーとし、変数を表現するできる。もう1つのカラーは、グリーンとし、演算子を表現するのに使用する。入力は薄い影付きのライトブルーであり、出力は深い影付きのダークブルーである。これは、式の表現の視覚的な認識の支援となり、特に、複雑で多数レベルの式が表現される時の支援となる。その他の視覚的な表現としては、図中で使用されていたように、アイコンが変数、定数及び演算子を表現するために使用される。
【0081】
GFDTモデルのオブジェクトの多くは、ユーザが観察できて、さらに/又は、変更できるような属性を伴って提供される。図19に示すように、アキュムレータコンポーネントはエクセルスプレッドシート132から受け取った入力を蓄積するように定義される。スプレッドシート132から分離した出力は、演算子134において、最新のサブトータル(ランニングトータル)に加えられ、メモリ演算子136により記憶される。そして、スプレッドシートからの最後の列のデータの時に、ランニングトータル変数138からの結果は、ゲート140によって、合計変数142にゲートされる。そしてこれは別のスプレッドシート144に渡る。146結合子は、高輝度で示される。補助ウィンドウ30に、高輝度オブジェクトの属性が示されている。その高輝度結合子146の属性は、その名前が”コネクタ1”であり、それが数字タイプであり、それは長さのディメンションのためにメータを単位として提供されるということである。ウィザードが、属性の選択を支援するために、Delphi又はVisual Basicのような製品で提供されるものと同様の方法により提供される。いくつかの予め定義されたデータのタイプが、彼らの必要性に応じてユーザによってさらに拡張可能なように提供される。あるいは、ユーザは、拡張したデータタイプのライブラリを購入する又は獲得するようにしてもよい。例えば、複素数のデータタイプは、複素数の実数及び虚数である2つの独立した数字として表現され、また、他の例においては、エンジンの出力の一般的なデータタイプのサブコンポーネントとして、エンジンの出力はパワー、トルク及び角速度によって表現されるかもしれない。
【0082】
図19において、ユーザはフィールドの値を編集することによって、または、ドロップダウンリストから選択を作成することにより、属性の値を簡単に変更することができる。
【0083】
複素数データのタイプは、また、それらに対して実行される動作を定義する必要がある。演算子は、モデルによる表現として、存在するコンポーネントを使用する。例えば、複素数の加算は、実数の加算とは異なるセットの演算子を要求する。それらはともに”プラス(plus)”コンポーネントによって表現されるが、コンポーネントがそのデータタイプを取り扱う方法は、そのデータタイプの本質に依存する。コンポーネントへの結合がなされる時には、これまでに結合子のデータタイプ、又は、演算子又は名前が付された結合の入力又は出力の属性が存在している場所においてはネゴシエーション処理が行われ、データタイプの結合は矛盾ないものでなければならない。このように、各オブジェクト間のネゴシエーション処理を通して、正しいデータタイプが選択される。
【0084】
図20に示すように、加算コンポーネント148は、データタイプに依存して加算のいくつかの方法を実行することができる。これは、データのオーバーローディングとして知られている。データタイプは、テーブルに示すような異なるデータのタイプを処理するための固有の方法により提供されるが、異なるデータタイプを処理するための加算の方法が提供される。追加の定義を加えるためのフォーマットを定義する予め定義された図表が提供されているので、さらなるデータタイプを追加しコンポーネントにより処理されることが可能である。
【0085】
特有のタイプの単位でデータが提供される場合においては、多くのケースにおいてしばしば、変換のファクタが要求される。例えば、時間という同じディメンションにおいて、1つの単位が秒でありもう1つの単位が分で有る場合等である。そのときに変換が要求される。変換のファクタは、例えば時間当たりのキロメータのスピードを、分当たりのメータに変換する時にも要求される。また、ディメンションの定義は、単位の基本的なディメンションの組み合わせを要求する。基本的な定義は、長さ、時間、質量、金額等である。例えば、加速度は、長さ×時間の二乗である。その他の属性もまた、オブジェクトに対して提供される。その他の属性の例は、セキュリティ情報(その情報を使用することのできるユーザのタイプや暗号化情報)、バージョン情報(バージョン番号及びそのバージョンが有効な期間)、証明書情報(保証されたソースから来たものであることを特定するデータタイプ機能)、課金情報(使用に対する支払いのため及びデータ又はオブジェクトに対する署名のためのアクセス)、位置情報(データやオブジェクトの場所のためのIPアドレスやファイル名等)及びブローカ情報(コンポーネントの管理者の情報)を含む。
【0086】
モデル、名前が付された結合及びコンポーネントの定義の各々は、それ自身の名称のスペースを有する。これは、各モデル又はコンポーネントの定義において使用されている各オブジェクトの名前は、それらのモデルまたはコンポーネントに対してユニークであることを意味する。共通の名前を使用している異なるモデル又は異なるコンポーネントの定義、そして特に名前が付された結合のオブジェクトは、同じオブジェクトではない。しかしながら、名称のスペースは変更可能である。これは、変数の名前は特定の範囲内においてのみ適用されるという、多くのプログラム言語におけるローカル変数と同種である。これは、同じ名前を有するものの関係のない2つのオブジェクトが相互に混同されることを防ぐことになる。
【0087】
いくつかの動作は非本質的な外部のものである。これは、それらは、式に関わるエンジンの外部で実行されるということを意味する。それらは、通常アプリケーションに固有のプラグインを通して、外部のコンポーネントを、任意の入力の要求とともにコールすることにより実行される。結果は、さらなる式の処理のために、(そのプラグインを介して)そのエンジンにフィードバックされる。非本質的な外部のコンポーネントは、コンポーネントタイプの定義ファイルを読み込むことによって、GFDT内において有効にされる。そしてこれは、GFDTによる使用のための定義をコンポーネントに対して提供する。コンポーネントタイプは、標準的には、入力及び出力の結合子のセットを有し、コンポーネントがコンポーネントタイプに応じて生成される。
【0088】
もし名前が付された結合がコンポーネントの外部の任意の場所で使用されるならば、1つのグループのコンポーネントのコンポーネント化の時には、コンポーネントの外部に導かれるすべての結合は、名前が付されたコンポーネントに対する入力及び出力オブジェクトを生成し入力する。もし、名前が付された結合がコンポーネントの内部のみで使用されるならば、その名前が付された結合の名前のスペースはコンポーネントとなる。これは、もはやコンポーネントの外部においては有効ではない。この方法は、詳細を隠しユーザにモデルを組み立てる時により構造的なアプローチを行うように仕向ける手段を提供する。複雑なコンポーネントは、十分に定義されたインターフェイスを有する機能ブロックが効果的である。ユーザは、定義されたインターフェイス及び機能ブロックが提供された時に、”スパゲッティ・コード”なモデルを組み立てるのが難しいことに気づく。
【0089】
いくつかのコンポーネントは、マイクロソフト・エクセル、ワードスプレッドシートのように、非本質的な外部のコンポーネントである。これは、GFDTコンポーネントの中に含まれることとなり、モデルの定義の時に使用される。定義が実行され式が計算される時に、実際にエクセルスプレッドシートが使用される。エンジンは、データをコンポーネントに対して及びコンポーネントから流すために、スプレッドシートとエクセルを介して通信を行う。リモートコンポーネントは、メインのモデルとは異なるエンジンで実行する。ローカルな機能エンジンの支店からは、これらは、内部の働きがわからないブラックボックスである。
【0090】
コンポーネント等の2つの要素の間で結合が要求された場合、名前が付された結合がページ上に配置され、ラベルが割り当てられる。そして、その名前が付された結合に属性が割り当てられる。名前が付された結合は、この段階で他のオブジェクトに結合される必要はないが、ほかの名前が付された結合オブジェクトが設計中のページに配置されて、同じラベルがドロップダウンリストから選択されることによって、その他の場所で使用可能となる。これは、新しいオブジェクトを生成しているのではなく、存在している同じオブジェクトに2番目のインスタンスを許したことになる。提供された2番目のインスタンスは、最初のものと同じ名前スペースの中となる。図21に示すように、2つの名前が付された結合の論理的な結合が形成されると、その結果、コンポーネントのような他のオブジェクトへの結合子が名前が付された結合に結合された時に、名前が付された結合の全てのインスタンスは、コンポーネントの属性を隠すことが可能となる。同様に、ある場所の名前が付された結合にデータが提供された時に、論理的な結合のために、それは他の場所の名前が付された結合にも提供される。さらに、その他の論理的な結合のインスタンスは、属性を他のコンポーネントまたは名前が付された結合に関係のある他の結合に転送する。標準的には、名前が付された結合は、モデルの中間値と同様に入力されるデータ及び出力されるデータの確認のために使用される。名前が付された結合は、モデル内の多くの場所に現れる伝統的なソフトウエアプログラム言語における変数と同種であり、コードの実行の間、変化する値を伝達する。名前が付された結合、又は、演算子の入力への数値の割り当ては、ただ1箇所において行われる。なぜならば、その値は、名前が付された結合の他のインスタンスに流されるからである。従って、ただ1つの出力の結合が、演算子又は名前が付された結合の入力に結合することが許される。
【0091】
図22を参照して、コンポーネントAがあるページの名前が付された結合に出力を提供し、これにより、ほかのページの名前が付された結合がコンポーネントBに入漁kを提供するときには、効果は、コンポーネントAの出力とコンポーネントBの入力の論理的な結合が生成されるということである。論理的な結合は、モデルの種々のコンポーネントを介したデータの通信の本質である。論理的な定義に関しては、名前が付された結合は、これは純粋にコンポーネント及び結合の間の網の目状のネットワークであるため、無意味である。
【0092】
2つのオブジェクトの結合の間においては、チェック、照合及び採択が行われる。例えば、もしディメンションが両方の結合に対して定義されていた場合、結合が許可されるためには、それらは同じでなければならない。単位は、変換ファクタが決定されることができる限りにおいては、位置する必要はない。もし一方の端部で属性のいずれかが定義されていない場合は、属性が矛盾ないものであることを維持するために、それらが採択されるか、又は、異なる属性が破棄される。一度、結合の間で矛盾のないデータタイプが調整されたら、コンポーネントは、データタイプに対して有効に動作する機能を保持していることを確認するためのチェックが実行される。もし、保持してない場合には、次に、任意の変換手段が、矛盾なく互換性のあるものに変換するか否かを確認するチェックを行う。例えば、数値は、テキスト文字列に変換する必要がある等である。
【0093】
出力は、多くの入力に結合されてよく、したがって2つの結合の間のネゴシエーションは単純ではないということに注意すべきである。さらなる入力が結合のセットに付加される各瞬間に、データタイプに矛盾がないことの確認を行うための、さらなる調停が実施され、もし必要であれば、データタイプが新しい結合に適合するものに変更される。コンポーネントマネージャは、有効で過負荷な機能で、適切なデータタイプとともに動作するセットをサーチする。これに加えて、有効なデータ変換手段がチェックされ、データが受け入れ可能なデータタイプに変換可能であるか否かの確認がなされる。もし、これが不可能であれば、コネクションマネージャは、結合が結合するコンポーネントと再度調停をするよう試みる。これは、全ての結合の属性を、モデル全体において再度調停する状態に導くかもしれない。しかしながら、ユーザは、調停の続行が許される新結合からの距離を定義することにより、この処理の拡大を制限することができる。
【図面の簡単な説明】
【図1】
図1は、本発明の方法を実行する、グラフィカルな式定義ツールを含むシステムの概略図である。
【図2】
図2は、図1のグラフィカルな式定義ツールの概略図である。
【図3】
図3は、図1及び2におけるグラフィカルな式定義ツールにより生成されたウィンドウの画面のコピーである。
【図4】
図4(A)は、好適な実施例におけるグラフィカルな式の表現の第1のステップの概略図であり、図4(B)は、グラフィカルな式の表現の第2のステップの概略図であり、図4(C)は、グラフィカルな式の表現の第3のステップの概略図であり、図4(D)は、グラフィカルな式の表現の第4のステップの概略図である。
【図5】
図5は、グラフィカルに表現された式の概略図である。
【図6】
図6は、コンポーネント(演算子)オブジェクトの生成のステップを示すフローチャートである。
【図7】
図7は、名前が付された結合(変数)オブジェクトの生成のステップを示すフローチャートである。
【図8】
図8は、結合オブジェクトの生成のステップを示すフローチャートである。
【図9】
図9は、グラフィカルに表現された式の概略図である。
【図10】
図10は、図4(D)、5及び9において定義され、統合されて上位のレベルの式が形成されたしいのグラフィカルな表示を示す図である。
【図11】
図11は、個々の段階は示さないように短縮した図10に示した上位のレベルの式のグラフィカルな表示を示す図である。
【図12】
図12は、変数属性の継承による変数タイプの制限のさらなる例を示す図である。
【図13】
図13(A)は、ルックアップテーブルコンポーネントへの入力の属性を示すポインタを伴う式の概略図であり、図13(B)は、名前が付された結合への入力の属性を示すポインタを伴う式の概略図である。
【図14】
図14は、式への入力変数を伴うグラフィカルに定義された式の概略図である。
【図15】
図15は、演算子を含むほかのグラフィカルに定義された式の概略図である。
【図16】
図16は、図15の機能Cがどのように変更されたかを示す図である。
【図17】
図17は、図12の機能Cが追加の詳細を追加されるかを示す図である。
【図18】
図18は、第1のコンピュータからコンピュータネットワークを介して第2のコンピュータに、コンピュータを通ってコンポーネントが通過する状態を示す概略図である。
【図19】
図19は、図2に示したグラフィカルな式定義ツールのほかの画面を示す図である。
【図20】
図20は、演算子により実行されるオーバーフローの方法を示す概略図である。
【図21】
図21は、異なるページ上の名前が付された結合オブジェクトの間の論理的な結合を示す概略図である。
【図22】
図22は、異なるページ上の名前が付された結合オブジェクトの間の論理的な結合及び異なったページ上の機能Bの入漁への機能Aの出力の概略図である。
【図23】
図23は、本発明を説明するための図である。
【図24】
図24は、本発明を説明するための図である。
【図25】
図25は、第1の付録の前半部分である。
【図26】
図26は、第1の付録の後半部分である。
【図27】
図27は、第2の付録である。
【符号の説明】
12…GFDT
14…マイクロソフトウィンドウズGUI
16…コンポーネントマネージャ
18…コネクションマネージャ
20…コンポーネントオブジェクト
22…コネクションオブジェクト

Claims (60)

  1. 少なくとも1つの入力を処理し少なくとも1つの結果を生成する方法を定義するための第1の演算子オブジェクトを提供し、
    前記第1の演算子オブジェクトをグラフィカルな表現で表示し、
    データを保持するための第1の変数オブジェクトを提供し、
    前記変数オブジェクトを前記第1の演算子オブジェクトの前記入力の1つまたは前記出力の1つに関係付ける入力をユーザから受け付け、
    前記第1の変数オブジェクト及びその前記第1の演算子オブジェクトとの関係をグラフィカルな表現で表示し、
    前記オブジェクト間の関係の論理的な記述を記録し、
    これにより、論理的記述により式が定義される
    コンピュータにより実行されるグラフィカルに式を定義する方法。
  2. データを保持するための変数オブジェクトを提供し、
    前記変数オブジェクトをグラフィカルな表現で表示し、
    少なくとも1つの入力を処理し少なくとも1つの結果を生成する方法を定義するための第1の演算子オブジェクトを提供し、
    前記第1の演算子オブジェクトの前記入力の1つまたは前記出力の1つを前記変数オブジェクトに関係付ける入力をユーザから受け付け、
    前記第1の演算子オブジェクト及びその前記変数オブジェクトとの関係をグラフィカルな表現で表示し、
    前記オブジェクト間の関係の論理的な記述を記録し、
    これにより論理的記述により式が定義される
    コンピュータにより実行されるグラフィカルに式を定義する方法。
  3. 1以上のさらなる変数オブジェクトを提供し、
    前記さらなる変数オブジェクトの各々を第1の演算子オブジェクトの前記入力の1つまたは前記出力の1つに関係付けるさらなる入力をユーザから受け付け、
    前記さらなる変数オブジェクト及びそれらの前記演算子オブジェクトとの関係をグラフィカルな表現で表示する
    工程をさらに有する請求項1又は2に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  4. 1以上のさらなる演算子オブジェクトを提供し、
    各変数オブジェクトを前記さらなる演算子オブジェクトの前記入力の1つまたは前記出力の1つに関係付けるさらなる入力をユーザから受け付け、
    前記さらなる演算子オブジェクト及びその前記変数オブジェクトとの関係をグラフィカルな表現で表示する
    工程をさらに有する請求項1〜3のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  5. 各変数オブジェクトは、データソースからのデータを提供するための入力オブジェクト、データの行き先にデータを供給する出力オブジェクト、又は、1つの演算子オブジェクト又はもう1つの演算子オブジェクトからデータを流すための結合オブジェクトより選択される
    請求項1〜4のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  6. 結合オブジェクトは演算子オブジェクトの間のリンクとして表現される
    請求項1〜5のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  7. 各変数オブジェクトは変数ラベルを伴って提供される
    請求項1〜6のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  8. 各演算子オブジェクトは演算子ラベルを伴って提供される
    請求項1〜7のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  9. 前記式の前記論理的な記述は前記オブジェクト間の論理的関係により定義される
    請求項1〜8のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  10. オブジェクト間の前記関係の前記グラフィカルな表示を定義する前記式のグラフィカルな定義は記録される
    請求項1〜9のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  11. 前記論理的な定義を記述する情報を記憶するステップを含む
    請求項1〜10のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  12. 前記グラフィカルな定義定義を記述する情報を記憶するステップを含む
    請求項1〜10のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  13. 2以上の前記演算子オブジェクトがグループ化されており、グループ化は、グルーピングの演算子オブジェクトを定義し、その中においてはグルーピングの境界を横切りグループ内の演算子オブジェクトの入力に対して結合されている変数オブジェクトがグルーピングオブジェクトコンポーネントの入力となり、グルーピングの境界をクロスしグループ内の演算子オブジェクトの結果に結合された変数オブジェクトは、グルーピングの演算子オブジェクトの結果となる
    請求項1〜12のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  14. 他のオブジェクトにリンクされていないグループ内の演算子オブジェクトの入力及び結果は、各々、グループのオペレータオブジェクトの入力及び結果となる 請求項13に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  15. グループ化されたオブジェクトのグラフィカルな表現は、グループの演算子オブジェクトのグラフィカルな表現によって配置され、グループのコンテンツへのグラフィカルな表現は、グループのオブジェクトの表現へのリンクのグラフィカルな表現により配置される
    請求項13又は14に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  16. 定義された式の論理的な定義は、グループの演算子オブジェクトの内容を含む 請求項13又は15に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  17. 表示される全ての式のグラフィックの定義は、グループの演算子オブジェクトの内容を含まない
    請求項13又は16に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  18. グループの演算子オブジェクトの内容は、式の全てのグラフィカルな表現とは分離されてグラフィカルに表現される
    請求項13又は17に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  19. 変数オブジェクトは保持可能なデータのタイプを定義する属性を付される
    請求項1〜18のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  20. 演算子オブジェクトの入漁k及び結果は、演算子オブジェクトが受け取ること及び生成することが各々予測されるデータのタイプを定義する属性を付される
    請求項19に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  21. 変数オブジェクトは、既に定義されており調停する演算子オブジェクトによっ
    て関係付けられている他の変数オブジェクトの属性から、属性を受け継ぐ
    請求項20に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  22. 変数オブジェクトは、既に定義されており、関係付けられている演算子オブジェクトの入力又は結果の属性から、属性を受け継ぐ
    請求項20に記載のコンピュータにより実行されるグラフィカルに式を定義す
    る方法。
  23. 演算子オブジェクトの入力または結果は、既に定義されており関係付けられている変数オブジェクトの属性から、属性を受け継ぐ
    請求項19〜22のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  24. 既に付されており対応が関係付けられているオブジェクトの属性をチェックす
    るステップを含む
    請求項19から23のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  25. ラベル付けされた変数オブジェクトのライブラリが予め定義されている
    請求項7に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  26. ラベル付けされた変数オブジェクトのライブラリが予め定義されており、各ラベル付けされた変数オブジェクトの処理の方法、その生成のための入力及び出力もまた、予め定義されている
    請求項8に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  27. 変数オブジェクトの変数ラベルは、予め定義した変数ラベルのリストから選択される
    請求項7又は25に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  28. 各変数ラベルには、ラベルによりラベル付けされた変数オブジェクトが含むことができるデータのタイプが定義されている属性が付されている
    請求項19に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  29. 変数ラベルの選択は、変数オブジェクトへのラベルに関連付けられた属性が付される
    請求項19に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  30. 変数オブジェクトに付されている属性は、選択が有効なラベルの選択を制限する
    請求項29に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  31. 演算子オブジェクトは、少なくとも、加算、減算、乗算、除算、ルックアップテーブル及び条件付動作の1つである
    請求項1〜30のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  32. 演算子オブジェクトは、より複雑な演算子の実行にリンクされた多数の単純な演算子を含む多数の段階の演算である
    請求項1〜30のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  33. 一形態においては、演算子オブジェクトはデータベースのキュエリである
    請求項1〜30のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  34. 第1の演算子オブジェクトはデータベースへの書き込みを行う
    請求項1〜30のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  35. 演算子オブジェクトの演算子ラベルは予め定義された演算子ラベルのリストより選択される
    請求項8に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  36. 各演算子ラベルには、ラベルを付された演算子オブジェクトが受け取り又は提供することのできる入力又は結果の各々のデータのタイプを定義する属性が付される
    請求項35に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  37. 演算子ラベルの選択は、演算子オブジェクトへのラベルに関連する属性が付されている
    請求項36に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  38. 演算子オブジェクトに付された属性は、選択されることが可能なラベルの選択を制限する
    請求項37に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  39. 論理的な記述はランタイムエンジンにより使用され、定義した式の処理が行われ、各変数オブジェクトに提供されたデータは、演算子オブジェクトの入力にリンクされ、これにより、データは、式のオペランドとなり、演算子オブジェクトによって表現される各演算子は、式の演算子となり、演算子オブジェクトの各結果は、次の演算子又は式の最終的な結果となり、これにより、式の処理が実行され式の結果が得られる
    請求項1〜38のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  40. 各変数に対して名前領域が定義され、これにより、変数オブジェクトにより表現される論理的な変数におけるデータは、名前空間内の変数オブジェクトの各発生と同じである。
    請求項1〜39のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  41. 名前空間は、モデル化された式に対するデフォルトグローバルによる
    請求項40に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  42. 論理的な結合は、名前空間内のラベルが付された変数オブジェクトの各発生の間に生成される
    請求項40に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  43. グラフィカルなリンクが表示され、ラベル付けされた変数オブジェクトの発生の間の論理的な結合が示される
    請求項40に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  44. 名前空間は各演算子オブジェクトに定義され、これにより、演算子オブジェクトにより表現される論理的な演算子の処理は、名前空間内の演算子オブジェクトの各発生と同じである
    請求項1〜43のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  45. 名前空間は、モデル化された式に対するデフォルトグローバルによる
    請求項44に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  46. グループ化された演算子オブジェクトは、1回以上グループ化された演算子オブジェクトの定義に使用され、式の論理的な定義に適用される
    請求項13に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  47. ラベルの属性は、タイプ、単位及びディメンションを有する
    請求項19に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  48. グラフィカルな定義は、XMLにより記述される
    請求項10に記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  49. 論理的な記述は、XMLにより記述される
    請求項1〜48のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  50. 各演算子オブジェクトは、演算子オブジェクトにより表現される演算子により実行される多数の演算の定義を含み、各定義は、演算子により処理されることができるデータの分離したタイプのためである
    請求項1〜49のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  51. 演算子オブジェクトは、1つ以上の入力及び1つ以上の出力を有するコンポーネントとしてグラフィカルに表現され、そのコンポーネントは、表現される演算子に表示されるインジケータを有する
    請求項1〜50のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  52. 演算子オブジェクトは、結果を生成するための処理の方法の入力が未だ定義されていない演算子の表現である空コンポーネントである
    請求項1〜51のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  53. 前記空コンポーネントは、適切に定義された方法を有する適切な演算子オブジェクトをサーチするための基準を形勢するために使用される
    請求項1〜51のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  54. オブジェクトのライブラリが提供される
    請求項1〜53のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  55. オブジェクトは、外部より供給される
    請求項1〜53のいずれかに記載のコンピュータにより実行されるグラフィカルに式を定義する方法。
  56. ディスプレイ及びユーザ入力手段を有するコンピュータと、
    少なくとも1つの入力を処理し少なくとも1つの結果を生成する方法を定義するための第1の演算子オブジェクトを提供する手段と、
    前記第1の演算子オブジェクトをグラフィカルな表現で表示する手段と、
    データを保持するための第1の変数オブジェクトを提供する手段と、
    前記変数オブジェクトを前記第1の演算子オブジェクトの前記入力の1つまたは前記出力の1つに関係付ける入力をユーザから受け付ける手段と、
    前記第1の変数オブジェクト及びその前記第1の演算子オブジェクトとの関係をグラフィカルな表現で表示する手段と
    を有し、これによりオブジェクト間の関係により式が定義される
    グラフィカルに式を定義するシステム。
  57. コンピュータをコントロールすることにより式をグラフィカルに定義するコンピュータプログラムであって、
    少なくとも1つの入力を処理し少なくとも1つの結果を生成する方法を定義するための第1の演算子オブジェクトを提供し、
    前記第1の演算子オブジェクトをグラフィカルな表現で表示し、
    データを保持するための第1の変数オブジェクトを提供し、
    前記変数オブジェクトを前記第1の演算子オブジェクトの前記入力の1つまたは前記出力の1つに関係付ける入力をユーザから受け付け、
    前記第1の変数オブジェクト及びその前記第1の演算子オブジェクトとの関係をグラフィカルな表現で表示し、
    前記オブジェクト間の関係の論理的な記述を記録し、
    これにより、オブジェクト間の関係により式が定義される
    コンピュータプログラム
  58. 請求項57に記載のコンピュータプログラムが記録されたコンピュータにより読み取り可能な記録媒体。
  59. 少なくとも1つのデータを保持するための変数オブジェクトを提供し、
    少なくとも1つの前記入力データを処理し結果を生成する方法を定義する演算子を提供し、
    ユーザに結果の変数を選択するための変数のリストを表示し、
    入力データの処理の結果を記憶するための結果の変数の選択をユーザから受け取り、
    前記選択された結果の変数をグラフィカルな表現により表示し、
    演算子を選択するための演算子のリストをユーザに表示し、
    ユーザより演算子の選択を受け取り、
    選択された演算子のグラフィカルな表現を表示し、
    ユーザに前記変数か1以上の定数であるところの少なくとも1つの入力を選択させるため、入力データを記憶するための入力のリストを表示し、
    ユーザからの少なくとも1つの入力の選択を受け取り、
    前記選択された入力のグラフィカルな表現を表示し、
    これにより、選択された結果変数を、選択された処理による選択された入力の処理と等しくすることによって、式を定義する
    コンピュータにより実行されるグラフィカルに式を定義する方法。
  60. 予め設定された属性を有する少なくとも1つの変数のタイプを提供し、
    少なくとも1つの前記入力データを処理し結果を生成する方法を定義する少なくとも1つの演算を提供し、
    ユーザに変数のタイプを選択させるため変数のタイプのリストを表示し、
    ユーザからの変数のタイプの選択を受け取り、
    選択した変数のタイプに対する名前を受け取り、
    名前が付された変数を表示し、
    ユーザに演算を選択させるための演算のリストを表示し、
    ユーザからの演算の選択を受け取り、
    選択された変数を選択された演算と協働させるためのユーザからの入力を受け取り、選択された変数を入力された変数か結果の変数とし、
    選択された変数が結果の変数とされた場合には、ユーザから少なくとも1つの入力変数か入力定数及びその入力変数又は入力定数に対する名前を受け取り、その入力された変数又は入力された定数をグラフィカルに表示し、
    選択された変数が入力の変数とされた場合には、出力変数の名前を受け取り、これをグラフィカルに表示し、
    これにより、入力変数又は入力定数による入力データの選択された演算による処理の結果により式を定義し、結果の変数を得る
    コンピュータにより実行されるグラフィカルに式を定義する方法。
JP2002521699A 2000-08-24 2001-08-24 式をグラフィカルに定義する方法 Pending JP2004507009A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
AUPQ9664A AUPQ966400A0 (en) 2000-08-24 2000-08-24 Method of graphically defining a formula
PCT/AU2001/001053 WO2002017074A1 (en) 2000-08-24 2001-08-24 Method of graphically defining a formula

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2007284314A Division JP2008165739A (ja) 2000-08-24 2007-10-31 式をグラフィカルに定義する方法

Publications (1)

Publication Number Publication Date
JP2004507009A true JP2004507009A (ja) 2004-03-04

Family

ID=3823718

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2002521699A Pending JP2004507009A (ja) 2000-08-24 2001-08-24 式をグラフィカルに定義する方法
JP2007284314A Pending JP2008165739A (ja) 2000-08-24 2007-10-31 式をグラフィカルに定義する方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2007284314A Pending JP2008165739A (ja) 2000-08-24 2007-10-31 式をグラフィカルに定義する方法

Country Status (9)

Country Link
US (2) US20030191765A1 (ja)
EP (1) EP1330710A4 (ja)
JP (2) JP2004507009A (ja)
CN (1) CN1246775C (ja)
AU (1) AUPQ966400A0 (ja)
BR (1) BR0107137A (ja)
IL (1) IL149292A0 (ja)
WO (1) WO2002017074A1 (ja)
ZA (1) ZA200203118B (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006039847A (ja) * 2004-07-26 2006-02-09 Canon Inc データ検索方法及び装置、プログラム、可読メモリ
JP2007538321A (ja) * 2004-05-20 2007-12-27 コード バリー ピーティーワイ リィミティッド コード生成方法
US9521209B2 (en) 2002-11-06 2016-12-13 Code Valley Corp Pty Ltd Code generation

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6505123B1 (en) 2000-07-24 2003-01-07 Weatherbank, Inc. Interactive weather advisory system
ES2340478T3 (es) * 2002-05-03 2010-06-04 American Power Conversion Corporation Procedimiento y aparato para recoger y mostrar la informacion de un dispositivo de red.
GB2391144A (en) * 2002-07-19 2004-01-28 Kaydara Inc Retrieval of information related to selected displayed object
US8832178B2 (en) 2002-11-06 2014-09-09 Noel William Lovisa Service implementation
AU2002953011A0 (en) 2002-12-02 2002-12-12 Xemplex Pty Ltd Method of componentisation of a graphically defined formula
AU2003900913A0 (en) * 2003-02-28 2003-03-13 Xemplex Pty Ltd Graphically defining a formula within a spreadsheet program
US11100582B2 (en) 2003-09-22 2021-08-24 Trading Technologies International, Inc. System and method for dynamically determining quantity for risk management
US7861185B1 (en) 2003-12-30 2010-12-28 Trading Technologies International, Inc. System and method for dynamically determining quantity for risk management
JP2007535740A (ja) * 2004-03-23 2007-12-06 アンヘル・パラショス・オルエタ 計算式の管理
US7444584B1 (en) * 2004-03-30 2008-10-28 Microsoft Corporation Method and system for formulaically redirecting and modifying formula set operations in a spreadsheet application
US7769783B2 (en) * 2004-04-20 2010-08-03 Reuters Limited Computing algebraic equations
US7543740B2 (en) * 2004-09-17 2009-06-09 Digital Envoy, Inc. Fraud analyst smart cookie
US20080010678A1 (en) * 2004-09-17 2008-01-10 Jeff Burdette Authentication Proxy
US7497374B2 (en) * 2004-09-17 2009-03-03 Digital Envoy, Inc. Fraud risk advisor
US7451397B2 (en) * 2004-12-15 2008-11-11 Microsoft Corporation System and method for automatically completing spreadsheet formulas
US7564458B2 (en) * 2004-12-15 2009-07-21 Microsoft Corporation System and method for interactively linking data to shapes in a diagram
US20060161469A1 (en) 2005-01-14 2006-07-20 Weatherbank, Inc. Interactive advisory system
US8832121B2 (en) 2005-02-02 2014-09-09 Accuweather, Inc. Location-based data communications system and method
US8234293B2 (en) * 2005-09-08 2012-07-31 Microsoft Corporation Autocompleting with queries to a database
US8229467B2 (en) 2006-01-19 2012-07-24 Locator IP, L.P. Interactive advisory system
US8589869B2 (en) 2006-09-07 2013-11-19 Wolfram Alpha Llc Methods and systems for determining a formula
US7774189B2 (en) * 2006-12-01 2010-08-10 International Business Machines Corporation System and method for simulating data flow using dataflow computing system
US8634814B2 (en) 2007-02-23 2014-01-21 Locator IP, L.P. Interactive advisory system for prioritizing content
US8635125B2 (en) * 2007-07-03 2014-01-21 Microsoft Corporation Automatic calculation with multiple editable fields
US7860863B2 (en) * 2007-09-05 2010-12-28 International Business Machines Corporation Optimization model for processing hierarchical data in stream systems
US7941460B2 (en) * 2007-09-05 2011-05-10 International Business Machines Corporation Compilation model for processing hierarchical data in stream systems
US8006175B2 (en) * 2007-10-29 2011-08-23 Microsoft Corporation Calculation of spreadsheet data
US20110302514A1 (en) * 2008-03-11 2011-12-08 Creative Information Technology Method for designing a graphical interface program
US8161380B2 (en) * 2008-06-26 2012-04-17 International Business Machines Corporation Pipeline optimization based on polymorphic schema knowledge
CN101436309B (zh) * 2008-12-15 2011-03-30 北大方正集团有限公司 一种修改公式运算符的方法和装置
CN101436308A (zh) * 2008-12-15 2009-05-20 北大方正集团有限公司 一种用于交互式公式排版软件的公式输入方法及系统
US8601015B1 (en) 2009-05-15 2013-12-03 Wolfram Alpha Llc Dynamic example generation for queries
US8788524B1 (en) 2009-05-15 2014-07-22 Wolfram Alpha Llc Method and system for responding to queries in an imprecise syntax
US9652803B2 (en) 2009-10-20 2017-05-16 Trading Technologies International, Inc. Virtualizing for user-defined algorithm electronic trading
US8484015B1 (en) 2010-05-14 2013-07-09 Wolfram Alpha Llc Entity pages
US8812298B1 (en) 2010-07-28 2014-08-19 Wolfram Alpha Llc Macro replacement of natural language input
US8566220B2 (en) 2011-01-26 2013-10-22 Trading Technologies International, Inc. Block placing tool for building a user-defined algorithm for electronic trading
JP5653250B2 (ja) * 2011-02-21 2015-01-14 中国電力株式会社 データ分析支援装置、データ分析支援方法及びプログラム
US9069814B2 (en) 2011-07-27 2015-06-30 Wolfram Alpha Llc Method and system for using natural language to generate widgets
US9734252B2 (en) 2011-09-08 2017-08-15 Wolfram Alpha Llc Method and system for analyzing data using a query answering system
US9851950B2 (en) 2011-11-15 2017-12-26 Wolfram Alpha Llc Programming in a precise syntax using natural language
US9405424B2 (en) 2012-08-29 2016-08-02 Wolfram Alpha, Llc Method and system for distributing and displaying graphical items
US9646316B2 (en) * 2012-08-31 2017-05-09 Ncr Corporation Techniques for deployment of universal promotion conditions for offer evaluations
JP6331537B2 (ja) * 2014-03-19 2018-05-30 カシオ計算機株式会社 変数値表示制御装置、変数値表示制御方法及びプログラム
US20170277738A1 (en) * 2015-01-29 2017-09-28 Palantir Technologies Inc. Temporal representation of structured information in an object model
US10325014B2 (en) 2015-04-30 2019-06-18 Workiva Inc. System and method for convergent document collaboration
US9158832B1 (en) 2015-05-18 2015-10-13 Workiva Inc. Method and computing device for maintaining dependencies among reference elements
US10255263B2 (en) 2015-05-18 2019-04-09 Workiva Inc. Data storage and retrieval system and method for storing cell coordinates in a computer memory
CN107621934B (zh) * 2017-07-28 2020-11-03 中国人民解放军国防信息学院 基于组件化、图形化算子的评估指标计算方法及装置
EP3441918A1 (en) * 2017-08-09 2019-02-13 Siemens Aktiengesellschaft System and method for plant efficiency evaluation
CN109690473B (zh) * 2017-09-11 2022-04-15 深圳配天智能技术研究院有限公司 一种图形化编程方法、装置、计算机存储介质及视觉系统
CN109432799A (zh) * 2018-10-30 2019-03-08 上海创豆科技有限公司 电子积木及其控制方法、控制装置以及存储介质
US11755825B2 (en) 2019-09-12 2023-09-12 Workiva Inc. Method, system, and computing device for facilitating private drafting
US11100281B1 (en) 2020-08-17 2021-08-24 Workiva Inc. System and method for maintaining links and revisions
US11443108B2 (en) 2020-08-17 2022-09-13 Workiva Inc. System and method for document management using branching
US11100277B1 (en) 2021-02-15 2021-08-24 Workiva Inc. Systems, methods, and computer-readable media for flow-through formatting for links
US11354362B1 (en) 2021-05-06 2022-06-07 Workiva Inc. System and method for copying linked documents
US11640495B1 (en) 2021-10-15 2023-05-02 Workiva Inc. Systems and methods for translation comments flowback
CN115130993A (zh) * 2022-07-01 2022-09-30 江苏海洋大学 一种自动绘制高校课程开设关系拓扑结构图的方法

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5481741A (en) * 1986-04-14 1996-01-02 National Instruments Corporation Method and apparatus for providing attribute nodes in a graphical data flow environment
US4901221A (en) * 1986-04-14 1990-02-13 National Instruments, Inc. Graphical system for modelling a process and associated method
US4914568A (en) * 1986-10-24 1990-04-03 National Instruments, Inc. Graphical system for modelling a process and associated method
US5021976A (en) * 1988-11-14 1991-06-04 Microelectronics And Computer Technology Corporation Method and system for generating dynamic, interactive visual representations of information structures within a computer
US5301301A (en) * 1991-01-30 1994-04-05 National Instruments Corporation Polymorphic dataflow block diagram system and method for programming a computer
JPH0675937A (ja) * 1992-02-07 1994-03-18 Fuji Xerox Co Ltd シミュレーションモデル作成装置
US5408603A (en) * 1992-03-31 1995-04-18 Dow Benelux N.V. Global process control information system and method
JPH05341972A (ja) * 1992-06-08 1993-12-24 Mitsubishi Heavy Ind Ltd ソフトウエア開発装置
JPH06161726A (ja) * 1992-11-20 1994-06-10 Toshiba Corp ツールデータ再利用装置
JPH06259403A (ja) * 1993-03-02 1994-09-16 Babcock Hitachi Kk ブロック線図の解析システム
US5546507A (en) * 1993-08-20 1996-08-13 Unisys Corporation Apparatus and method for generating a knowledge base
US6064409A (en) * 1993-09-22 2000-05-16 National Instruments Corporation System and method for providing audio probe and debugging features in a graphical data flow program
US5548749A (en) * 1993-10-29 1996-08-20 Wall Data Incorporated Semantic orbject modeling system for creating relational database schemas
US5592663A (en) * 1993-12-17 1997-01-07 Nagamori; Nobuhiko Graphing method and apparatus for data base retrieval
DE69600794T2 (de) * 1995-02-22 1999-06-02 Agust S Egilsson Graphische entwicklungs- und verwaltungsumgebung für anwendungsprogramme
US5963724A (en) * 1996-02-16 1999-10-05 Analogy, Inc. Component-based analog and mixed-signal simulation model development
US6802053B1 (en) * 1997-08-18 2004-10-05 National Instruments Corporation Graphical programming system with distributed block diagram execution and front panel display
US6173438B1 (en) * 1997-08-18 2001-01-09 National Instruments Corporation Embedded graphical programming system
US5901068A (en) * 1997-10-07 1999-05-04 Invention Machine Corporation Computer based system for displaying in full motion linked concept components for producing selected technical results
US6051029A (en) * 1997-10-31 2000-04-18 Entelos, Inc. Method of generating a display for a dynamic simulation model utilizing node and link representations
US6078739A (en) * 1997-11-25 2000-06-20 Entelos, Inc. Method of managing objects and parameter values associated with the objects within a simulation model
WO1999027443A1 (en) * 1997-11-25 1999-06-03 Entelos, Inc. A method of monitoring values within a simulation model
JP2000020291A (ja) * 1998-07-06 2000-01-21 Toyota Motor Corp 車両用プログラム開発支援方法および装置
US6330569B1 (en) * 1999-06-30 2001-12-11 Unisys Corp. Method for versioning a UML model in a repository in accordance with an updated XML representation of the UML model
US6681383B1 (en) * 2000-04-04 2004-01-20 Sosy, Inc. Automatic software production system
US6766326B1 (en) * 2000-07-24 2004-07-20 Resty M Cena Universal storage for dynamic databases
US8453111B2 (en) * 2004-05-14 2013-05-28 National Instruments Corporation Generating a hardware description for a programmable hardware element based on a graphical program including multiple models of computation

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9521209B2 (en) 2002-11-06 2016-12-13 Code Valley Corp Pty Ltd Code generation
US10140098B2 (en) 2002-11-06 2018-11-27 Noel William Lovisa Code generation
JP2007538321A (ja) * 2004-05-20 2007-12-27 コード バリー ピーティーワイ リィミティッド コード生成方法
JP2012230710A (ja) * 2004-05-20 2012-11-22 Cord Bally Corp Pty Ltd 計算機が実行可能なコードを生成する方法及び計算機が実行可能なコードを生成するために使用されるコンポーネントを提供する方法
JP2006039847A (ja) * 2004-07-26 2006-02-09 Canon Inc データ検索方法及び装置、プログラム、可読メモリ

Also Published As

Publication number Publication date
IL149292A0 (en) 2002-11-10
CN1392978A (zh) 2003-01-22
EP1330710A4 (en) 2007-04-11
ZA200203118B (en) 2003-12-19
JP2008165739A (ja) 2008-07-17
CN1246775C (zh) 2006-03-22
AUPQ966400A0 (en) 2000-09-21
EP1330710A1 (en) 2003-07-30
WO2002017074A1 (en) 2002-02-28
BR0107137A (pt) 2004-12-07
US20100077331A1 (en) 2010-03-25
US20030191765A1 (en) 2003-10-09

Similar Documents

Publication Publication Date Title
JP2004507009A (ja) 式をグラフィカルに定義する方法
US6898783B1 (en) Object oriented based methodology for modeling business functionality for enabling implementation in a web based environment
JP5106840B2 (ja) データ要素のモデル化
US20190018659A1 (en) Method and system for visual data mapping and code generation to support data integration
EP2378415B1 (en) Service integration modeling and execution framework
US7370315B1 (en) Visual programming environment providing synchronization between source code and graphical component objects
US9395958B2 (en) Systems and methods for drag-and-drop data binding
US20160239270A1 (en) Systems and methods for enhancing software products
US7334216B2 (en) Method and apparatus for automatic generation of information system user interfaces
EP1603034B1 (en) Method and apparatus for generating user interfaces based upon automation with full flexibility
US6970883B2 (en) Search facility for local and remote interface repositories
US8046736B1 (en) Generated code from graphical user interface
US7392162B1 (en) System and method for device developing model networks purely by modelling as meta-data in a software application
US20030088483A1 (en) System, method and computer program product for an enhanced E-commerce graphical user interface
JP2001256050A (ja) グラフィカル開発システム及び方法
Jaaksi Object‐oriented specification of user interfaces
Paternò et al. Exploiting web service annotations in model-based user interface development
AU2001281591B2 (en) Method of graphically defining a formula
JP2571143B2 (ja) プログラム開発装置
JP2003241965A (ja) プログラム作成支援方法、プログラム作成支援プログラム及びプログラム作成支援装置
AU2001281591A1 (en) Method of graphically defining a formula
Kinnucan et al. A graphical variant approach to object-oriented modeling of dynamic systems.
Schlegel et al. A flow centric interaction model for requirements specification and user interface generation
Insalaco et al. ADAGE-LOR-94-04A Version 2.0 August 9, 1995
Zhang Design and construction of a library-based software reuse model to support distributed and grid computing.

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061128

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070228

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070307

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070528

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070703

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071031

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20071214

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20080123

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

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20080222