JP5202638B2 - リレーショナルモデルのインテリジェントな編集 - Google Patents

リレーショナルモデルのインテリジェントな編集 Download PDF

Info

Publication number
JP5202638B2
JP5202638B2 JP2010527204A JP2010527204A JP5202638B2 JP 5202638 B2 JP5202638 B2 JP 5202638B2 JP 2010527204 A JP2010527204 A JP 2010527204A JP 2010527204 A JP2010527204 A JP 2010527204A JP 5202638 B2 JP5202638 B2 JP 5202638B2
Authority
JP
Japan
Prior art keywords
model
edit
editing
user
endpoint
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.)
Expired - Fee Related
Application number
JP2010527204A
Other languages
English (en)
Other versions
JP2011503680A (ja
Inventor
モリコーネ ローレント
アール.フリン ジェームズ
エー.マニス ウィリアム
マイケル ダントン スティーブン
フォス フロリアン
エー リム キーン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2011503680A publication Critical patent/JP2011503680A/ja
Application granted granted Critical
Publication of JP5202638B2 publication Critical patent/JP5202638B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Description

本発明は、リレーショナルモデルのインテリジェントな編集に関する。
コンピュータは、職場のデバイス、家庭のデバイス及び携帯デバイスに高度に統合されている。コンピュータは、大量の情報を迅速及び効率的に処理可能である。コンピュータシステム上で動作するようにデザインされたソフトウェアアプリケーションは、ビジネス用途、学校の授業及びエンターテイメント等を含む広範な様々な機能をユーザが実行することを可能とする。ソフトウェアアプリケーションは、しばしば、文書を作成するためのワードプロセッサアプリケーション、または電子メールを送信し、受信しかつ整理する電子メールプログラム等の特定のタスクを実行するようにデザインされる。
いくつかの場合において、ソフトウェアアプリケーションを、モデルを生成及び操作するべく使用することができる。例えば、企業体及びその他の団体は、処理及びシステムを記述するためにモデルを使用することができる。モデルは、様々な形式で異なったタイプの情報を示すことができる。いくつかの場合において、モデルは、フロー図の形式でデータを示すことができる。その他の場合、モデルは処理フロー、フローチャート、プロセス図及び/または制御チャートの形式でデータを示すことができる。その他の場合、モデルは、システム内のリソース間の組織的関係を表示するべく使用される。これらのモデルは、しばしば、組織チャートと称される。より広い意味において、モデルを、異なったオブジェクト間の任意のタイプの関係情報を示すために使用することができる。
一般的に、モデルは、そのモデルにおいて使用されている用語体系(terminology)を記述する付随するスキーマを有する。このスキーマは、凡例のような役割を果たし、ユーザまたはソフトウェアアプリケーションが当該スキーマを参考にして、モデルにおいて使用されている用語または記号の意図された意味を判定することを可能にする。いくつかのスキーマは、ユーザが定義可能なタグ(拡張マークアップ言語(XML)タグ)、及びモデル内の様々な要素と対応しているメタデータを含むことができる。このメタデータは、オブジェクトのルックアンドフィール(look and feel)、オブジェクトのレイアウト及びオブジェクトの内容等のオブジェクトのプロパティを示すために使用することができる。従って、コンピュータで実行されるソフトウェアアプリケーションを、モデルを生成及び操作するために使用することができる。
本明細書に記載された実施形態は、モデル内の目標オブジェクトにおいて実行される編集の有効性検証及び1または複数の有効な編集の提示に関する。1つの実施形態において、コンピュータシステムは、モデル内の少なくとも1つの目標オブジェクトにおいて行われる編集の有効性検証の方法を実行する。コンピュータシステムは、モデル内の目標オブジェクトにおいて実行される編集を指示するユーザのジェスチャを受信する。モデルは、当該モデルにおける目標オブジェクトを含むオブジェクト間の関係を定義する制約を含む基本的なスキーマに基づいている。コンピュータシステムは、基本的なスキーマ内の制約のうちの少なくとも1つが、当該目標オブジェクトの指示された編集に関連付けられていることを判定する。この判定に基づいて、コンピュータシステムは、編集が有効であることを判定する。有効な編集は、目標オブジェクトの指示された編集に関連付けられている制約に従う。
他の実施形態において、コンピュータシステムは、モデルオブジェクトに対応する示されたユーザジェスチャに基づいて有効なモデル編集を提示する。コンピュータシステムは、モデル内の目標オブジェクトにおいて実行される編集を指示するユーザジェスチャを受信する。当該モデルは、オブジェクト間の関係を定義する1または複数の制約を含む基本的なスキーマに基づいている。コンピュータシステムは、当該基本的なスキーマにおける少なくとも1つの制約が、目的オブジェクトの指示された編集に関連付けられていることを判定する。最後に、コンピュータシステムは、有効なモデル編集の表示をコンピュータユーザに提供する。
この発明の概要は、発明を実施するための形態において以下にさらに説明されるいくつかの概念を単純な形式で紹介するために提供される。この発明の概要は、本出願の特許請求の範囲に記載された発明の重要な特徴または本質的な特徴を特定することを目的としておらず、本願特許請求の範囲に記載された発明の範囲の判定に使用されることも目的としていない。
本発明の実施形態の上述並びに他の利点及び特徴をさらに明確にするために、本発明の実施形態のさらに具体的な説明が、添付の図面を参照することによって説明される。これらの図面は本発明の一般的な実施形態のみを示し、本発明を限定するものでは無いと理解される。本発明は、添付の図面を使用して、追加の特性及び詳細な内容とともに記載されかつ説明される。
実行される編集の有効性検証、及び示されたユーザジェスチャに基づいた有効なモデル編集の提示を含む本発明の実施形態が動作することができるコンピュータアーキテクチャを示す図である。 モデル内の少なくとも1つの目標オブジェクトにおいて実行される編集の有効性を検証する例示の方法のフローチャートを示した図である。 モデルオブジェクトに対応する示されたユーザジェスチャに基づいて有効なモデル編集を提示する例示の方法のフローチャートを示した図である。 モデル内のエンドポイント間の接続がユーザジェスチャに基づいて編集される本発明の実施形態を示した図である。 モデル内のエンドポイント間の接続がユーザジェスチャに基づいて編集される本発明の実施形態を示した図である。 モデル内のエンドポイント間の接続がユーザジェスチャに基づいて編集される本発明の実施形態を示した図である。 モデル内のエンドポイント間の接続がユーザジェスチャに基づいて編集される本発明の実施形態を示した図である。
本明細書で説明される実施形態は、モデル内の目標オブジェクトにおいて実行される編集の有効性検証及び1または複数の有効な編集の提示に関する。1つの実施形態において、コンピュータシステムは、モデル内の少なくとも1つの目標オブジェクトにおいて行われる編集の有効性検証の方法を実行する。コンピュータシステムは、モデル内の目標オブジェクトにおいて実行される編集を指示するユーザジェスチャを受信する。モデルは、モデル内の目標オブジェクトを含むオブジェクト間の関係を定義する制約を含む基本的なスキーマに基づいている。コンピュータシステムは、基本的なスキーマ内の制約のうちの少なくとも1つが目標オブジェクトの指示された編集に関連付けられていることを判定する。当該判定に基づいて、コンピュータシステムは、当該編集が有効であることを判定する。当該有効な編集は、目標オブジェクトの指示された編集に関連付けられている制約に従う。
他の実施形態において、コンピュータシステムは、モデルオブジェクトに対応する示されたユーザジェスチャに基づいて有効なモデル編集を提示する。コンピュータシステムは、モデル内の目標オブジェクトにおいて実行される編集を指示するユーザジェスチャを受信する。当該モデルは、オブジェクト間の関係を定義する1または複数の制約を含む基本的なスキーマに基づいている。コンピュータシステムは、当該基本的なスキーマ内の制約のうちの少なくとも1つが、目標オブジェクトの指示された編集に関連付けられていることを判定する。最後に、コンピュータシステムは、有効なモデル編集の表示をコンピュータユーザに提供する。
本発明の実施形態は、以下でさらに説明されるように、コンピュータハードウェアを包含する特定用途のコンピュータもしくは汎用コンピュータを含むかまたは使用することができる。本発明の範囲内の実施形態は、コンピュータ実行可能命令及び/またはデータ構造を伝送または保存する物理コンピュータ可読媒体及びその他のコンピュータ可読媒体も含む。このようなコンピュータ可読媒体は、汎用コンピュータシステムまたは特定用途コンピュータシステムによってアクセス可能な任意の市販の媒体とすることができる。コンピュータ実行可能命令を保存するコンピュータ可読媒体は、物理記憶媒体である。コンピュータ実行可能命令を伝送するコンピュータ可読媒体は、伝送媒体である。従って、例示の目的であって限定するものではないが、本発明の実施形態は、少なくとも2つの明確に異なる種類のコンピュータ可読媒体、すなわち物理記憶媒体及び伝送媒体を含むことができる。
物理記憶媒体は、コンピュータ実行可能命令の形式で所望のプログラムコード手段を保存するために使用され、かつ汎用コンピュータまたは特定用途のコンピュータによってアクセス可能な、RAM、ROM、EEPROM、CD−ROMもしくはその他の光学ディスク記憶媒体、磁気ディスク記憶デバイスもしくは他の磁気記憶デバイス、または他の任意の媒体を含むことができる。
「ネットワーク」は、コンピュータシステム及び/もしくはコンピュータモジュール並びに/または他の電子デバイス間での電子データの移送を可能とする1または複数のデータリンクとして定義される。情報がネットワークまたは他の通信接続(有線接続、無線接続または有線接続もしくは無線接続の組み合わせ)を介してコンピュータに伝送または提供される場合、当該コンピュータは、当該接続を伝送媒体として適切にみなす。伝送媒体は、コンピュータ実行可能命令の形式で所望のプログラムコード手段を伝送または移送するために使用され、かつ汎用コンピュータまたは特定用途のコンピュータによってアクセス可能なネットワーク及び/またはデータリンクを含むことができる。上述したものの組み合わせも、コンピュータ可読媒体の範囲内に含まれるべきである。
しかし、様々なコンピュータシステムコンポーネントへの到達において、コンピュータ実行可能命令またはデータ構造の形式のプログラムコード手段を、伝送媒体から物理記憶媒体に自動的に移動することができる。例えば、ネットワークまたはデータリンクを介して受信されるコンピュータ実行可能命令またはデータ構造を、ネットワークインタフェースカード内にバッファすることができ、その後、最終的にコンピュータシステムにおいてコンピュータシステムRAM及び/またはより不揮発性の物理記憶媒体に移動することができる。従って、物理記憶媒体は、伝送媒体も使用する(または主に伝送媒体を使用する)コンピュータシステム内に含まれ得ると理解されるべきである。
コンピュータ実行可能命令は、例えば、汎用コンピュータ、特定用途コンピュータまたは特定用途処理デバイスに特定の機能または機能のグループを実行させる命令及びデータを含む。コンピュータ実行可能命令は、例えば、バイナリ、アセンブリ言語等の中間フォーマット命令、またはソースコードとすることができる。本発明は構造的特徴及び/または方法論的動作に関して説明されたが、添付の特許請求の範囲において画定される本発明は、上述の説明された特徴または動作に必ずしも限定されるものではないことが理解されるべきである。むしろ、説明された機能及び動作は、特許請求の範囲に記載の発明を実施する例示の形態として開示されている。
図1は、本発明の原理が使用され得るコンピュータアーキテクチャ100を示している。コンピュータアーキテクチャ100は、コンピュータシステム101を含む。いくつかの実施形態において、コンピュータシステム101は、システムメモリ155及びプロセッサ156を含み得る。上述のように、メモリ155は、RAM、ROM、ソリッドステートメモリ、磁気メモリ他のメモリを含む。同様に、プロセッサ156は、任意のタイプのプロセッサ、マイクロコントローラ、ステートマシン、または他の情報処理手段及び/もしくはコンピュータシステム機能制御手段とすることができる。
コンピュータ101は、ジェスチャ受信モジュール110も含むことができる。いくつかの実施形態において、ジェスチャ受信モジュール110は、ユーザ105からユーザジェスチャ106を受信するように構成することができる。ユーザ105は、コンピュータシステムと対話可能な任意のタイプのコンピュータユーザとすることができる。ユーザジェスチャ106は、コンピュータシステムによって解釈可能な任意のタイプの入力とすることができる。例えば、ユーザジェスチャは、マウスクリック、キーボード入力、ドラッグアンドドロップ、クリックアンドドラッグ、マウスオーバー(mouseover)、タッチスクリーンを介したタッチ入力、またはカメラもしくはビデオレコーダによって取り込まれる任意のタイプのユーザの動作もしくは物体の動作を含むことができる。ジェスチャ受信モジュール110は、意図された命令としてユーザジェスチャ106を受信して解釈するように構成することができる。例えば、ユーザがドラッグアンドドロップジェスチャを入力した場合、ジェスチャ受信モジュール110は、アイテムを選択して当該アイテムが「ドロップ」されたロケーション(location)に当該アイテムを移動する命令、としてそのジェスチャを解釈することができる。もちろん、他の多くのジェスチャ/命令の組み合わせが可能である。追加的にまたは代替的に、ユーザ106は、どのくらいのジェスチャがジェスチャ受信モジュール110によって解釈されるべきかを定義できる。
解釈されたジェスチャの結果は、指示された編集111である。例えば、ユーザがジェスチャ106を入力した場合、ジェスチャ受信モジュール110は、ジェスチャを特定の命令として解釈することができる。この命令は、オブジェクトにおいて実行される編集を指定することができる(例えば、指示された編集111)。例えば、いくつかの場合において、コンピュータシステム101は、編集モデルとして構成される。本明細書で用いられるモデルという用語は、情報をユーザに表示することが可能な任意のタイプのフレームワークまたは構造を含み得る。このようなフレームワークは、情報を組織化するために使用され得る。例えば、モデルは、システム内のリソース間の組織化された関係を示すために使用することができる。これらは、しばしば、組織チャートまたはorgチャートと称される。orgチャートは、しばしば、階層的な上から下への構造で情報を示す。モデルは、処理フローを示すためにも使用することができる。このようなモデルは、しばしば、フロー図、処理フロー、フローチャート、処理図または制御チャートと称される。これらのモデルは、処理がたどって完了することができる様々な経路を示す。様々なタイプの情報とリンクしている何らかのタイプの関係情報を用いて、様々な形式で表示されることが可能な他のモデルも使用することができる。
いくつかの場合において、モデルは、スキーマを使用して、当該モデルによって示された異なった情報間の関係を定義する。例えば、orgチャートは、「社長」フィールドで開始し、「パートタイム」フィールドで終了することができ、その間にあるフィールドの各々は、他のフィールドとリンクされている。例えば、「社長」フィールドを、「副社長」フィールドにリンクすることができ、「副社長」フィールドを、「レベル1管理者」フィールドにリンクすることができ、「レベル1管理者」フィールドを、「パートタイム」フィールドにリンクすることができる。当該リンクの各々は関係として定義することができ、関係の各々は、当該モデルのスキーマ内の制約として保存することができる。当該スキーマは、フィールドの各々内に含まれ得る情報のタイプを定義することができる。例えば、「社長」タグがスキーマ内で使用されて、企業の社長に関連付けられた情報が指定され得る。「社長」タグは、「パートタイム」が許可される情報とは異なった情報を許可され得る。名前、住所、略歴、経歴、役員名簿等の情報を社長が取得可能であるのに対し、パートタイム従業員はより少ない情報が取得可能であり得る。
スキーマ及び制約を使用して、情報及び情報フィールド間の関係を定義するこの例は、モデル、スキーマ及び制約の多くの可能な用途の単なる一例である。他の変形例も可能である。この例は、モデル、スキーマ及び制約の間の相互関係を示すために提供される。
上述したように、ジェスチャ受信モジュール110は、ユーザジェスチャ106を受信し、当該ジェスチャをモデルの編集に使用される命令として解釈し、指示された編集111を出力する。指示された編集111は、アイテムを編集可能な任意のタイプの命令を含み得る。例えば、指示された編集111は、モデルを含むオブジェクトの変更を目的とした切り取り、コピー、貼り付け、色付け、リシェイプ(re−shaping)、線描画、移動、再リンク、再接続、削除、追加、または他の任意の命令を含むことができる。いくつかの実施形態において、モデル140は、基本的なスキーマ135及び付随する制約137に基づいている。このような場合、基本的なスキーマ及び/または制約137は制限を含み、当該制限の中でモデル140における編集が実行される。従って、編集バリデータ120は、スキーマ135及び制約137の制限に照らして指示された編集111をチェックすることによって、指示された編集111を評価するように構成される。
例えば、いくつかの場合、ユーザ105は、スキーマ135及び制約137に基づいてモデル140を編集することを望むだろう。他の場合、ユーザ105は、選択されたスキーマ及び付随する制約に基づいてモデルを生成することを望むだろう。いくつかの場合、ユーザ105は、基本的なスキーマのグループ136から基本的なスキーマ135及び付随する制約137を選択することができ、スキーマの各々が付随する制約を有する。他の場合、ユーザは、モデルのグループ141から編集のためのモデルを選択することができる。このような場合、選択されたモデルは、基本的なスキーマのグループ136からの付随するスキーマ及び制約を有する。従って、ユーザ105がモデルを選択するかまたは単にスキーマのみを選択したとしても、制約関連付けモジュール125は、モデル及び/またはスキーマを受信し、付随する制約のいずれかが、指示された編集111に関連付けられているかを判定することができる。
制約関連付けモジュール125は、指示された編集に制約が関連付けられているかを様々な態様で判定するように構成することができる。例えば、ユーザ105は、オブジェクトを線で接続する目的で、一方のオブジェクトを他方のオブジェクト上にドラッグし、当該オブジェクトが何らかの関係を有することを指定する。制約関連付けモジュール125は、当該2つのオブジェクトを認識して当該制約にアクセスし、当該制約が当該2つのオブジェクトが接続され何らかの関係を有しているとして示されることを許容するかを判定する。制約の関連付け及び編集有効性判定は、以下でさらに詳細に説明される。
編集バリデータ120は、編集実行モジュール130と通信するように構成され得る。いくつかの実施形態において、編集バリデータによって当該編集が有効であると一度宣言されると、編集実行モジュール130が指示された編集を実行する。無効であると宣言された編集は留保され得、当該編集を無効であると特定するマーク付けされた形式でユーザに示され得ることに注目すべきである。さらに他の場合、どの編集が制約137に基づいて許容されるかに関するヒントが提供されることが望ましい。従って、編集バリデータ120が、指示された編集が有効であることを判定したとしても(例えば有効判定122)、バリデータ120は、他の許容される編集を示す1または複数のヒントを含み得る。従って、編集バリデータ120は、ヒントを伴った有効判定(121)、有効判定(122)、ヒントを伴った無効判定(123)及び無効判定(124)を出力することができる。よって、ヒントが提供された場合、ユーザ105は、当該指示された編集に加えてまたは代えて当該提供された編集を実行するように編集実行モジュール130に指示することができる。従って、編集実行モジュール130は、1または複数の指示された編集及び/または提供された編集に基づいてモデルを編集及び/または生成し、編集されたモデル145をもたらす。いくつかの場合において、編集バリデータ120、制約関連付けモジュール125及び編集実行モジュール130の組み合わせは、エディタ115と称される。
図2は、モデル内の少なくとも1つの目標オブジェクトにおいて実行される編集の有効性検証のための方法200のフローチャートを示している。図4Aから図4Dは、ユーザのジェスチャに基づいたモデル編集の例を示している。方法200は、環境100のコンポーネント及びデータ並びに図4A−4Dのモデル編集例をしばしば参照しつつ説明される。
方法200は、モデル内の少なくとも1つの目標オブジェクトにおいて実行される編集を指示するユーザのジェスチャを受信する動作を含み、当該モデルは、当該モデル内の目標オブジェクトを含むオブジェクト間の関係を定義する1または複数の制約を含む基本的なスキーマに基づいている(動作210)。例えば、ジェスチャ受信モジュール110は、指示された編集111がモデル140内の少なくとも1つの目標オブジェクトにおいて実行されるべきことを指示するユーザジェスチャを受信し得、モデル140は、モデル140内の目標オブジェクトを含むオブジェクト間の関係を定義する基本的なスキーマ135及び付随する制約137に基づいている。上述したように、ジェスチャ受信モジュール110は、ユーザ105からの任意のタイプのユーザジェスチャを受信することができる。いくつかの場合、モジュール110は、ジェスチャを解釈して当該ジェスチャによって指示される編集を特定するように構成される。
例えば、目標オブジェクトのダブルクリックまたは他のオブジェクト上への目標オブジェクトのドラッグアンドドロップ等のジェスチャは、異なった編集を指示することができる。いくつかの実施形態において、目標オブジェクトのダブルクリックは、当該目標オブジェクトを自動的に複製して、新しい全く同じオブジェクトを生成することができる。その一方で、他のオブジェクト上への目標オブジェクトのドラッグアンドドロップは、当該目標オブジェクトを当該他のオブジェクトと線または他のコネクタで接続することを指示することができる。上述の内容から分かるように、これら及び他のジェスチャの各々は、ジェスチャ受信モジュール110のデフォルト設定に基づいてかまたはモジュール110のユーザによってカスタマイズされた設定に基づいて異なって解釈され得る。
方法200は、基本的スキーマ内の制約のうちの少なくとも1つが、目標オブジェクトの指示された編集に関連付けられていることを判定する動作(動作220)も含む。例えば、制約関連付けモジュール125は、基本的スキーマ135に付随する制約137のうちの少なくとも1つが目標オブジェクトの指示された編集111に関連付けられていることを判定することができる。いくつかの実施形態において、図4Aのモデルオブジェクト431Aは目標オブジェクトであり得る。例えば、図4Aはジェスチャ401Aを示し、ここでユーザ(例えばユーザ105)は、この場合において目標オブジェクトである選択オブジェクト430Aとオブジェクト431Aとの間に線405Aを描画している。
モデルオブジェクトの各々は、オブジェクトにおいてコネクタを配置することができる位置を示すエンドポイントを有する。コネクタ425A−Dは、オブジェクトを他のオブジェクトと接続する。いくつかの場合、接続は、モデルの基本的なスキーマ及び付随する制約によって定義されているようにオブジェクト間の関係を示す。従って、図4A−4Dに示されているように、非マッチングエンドポイント415A−Dは、選択オブジェクトを接続することができないオブジェクトの部分を示し、マッチングエンドポイント410A−Dは、目標オブジェクトに接続され得るオブジェクトの部分を示し、接続はモデルの制約に基づいて許容される。
従って、図4Aに示されたように、ユーザは、オブジェクト430Aと431Aとの間に線405Aを描画するジェスチャを入力することができる。当該ジェスチャは、ジェスチャ受信モジュール110によって受信され、2つのオブジェクトがコネクタ(例えばコネクタ425A)で接続されるべきことをジェスチャが指示していることが判定される。制約関連付けモジュール125は、コネクタで2つのオブジェクトを接続する指示された編集が、制約137によってマッチングエンドポイント410Aにおいて許容されることを判定することができる。従って、結果420Aは、オブジェクト430A及び431Aを、コネクタ425Aによってマッチングエンドポイント410Aで接続されているとして示している。
最後に、方法200は、基本的なスキーマ内の制約のうちの少なくとも1つが目標オブジェクトの指示された編集に関連付けられていることの判定に基づいて、当該編集が有効であることを判定する動作を含み、当該有効な編集は、当該目標オブジェクトの指示された編集に関連付けられた少なくとも1つの制約に従う(230)。例えば、制約関連付けモジュール125による基本的なスキーマ135の制約137のうちの少なくとも1つがオブジェクト431Aに対する指示された編集111に関連付けられているかの判定に基づいて、編集バリデータ120は、編集111がオブジェクト431Aに対する指示された編集111に関連付けられた制約137のうちの少なくとも1つに従っている故に、指示された編集111が有効であることを判定する。従って、上述の例において、制約137がマッチングエンドポイント410A間に関係が存在することを示す故に、かつユーザジェスチャがモデルに対して有効であると判定された(有効判定122)故に、マッチングエンドポイント410A間にコネクタを描画する指示された編集は、編集実行モジュール130によって実行され得る(選択的動作240)。基本的なスキーマの少なくとも1つの制約に対応するエンドポイントは、ユーザのディスプレイにおいて強調され得る。いくつかの実施形態において、モデル140は、視覚モデリングアプリケーションにおいて表示され、編集されかつ/または生成され得る。
図3は、モデルオブジェクトに対応する指示されたユーザジェスチャに基づいて1または複数の有効なモデル編集を提示するための方法300のフローチャートを示している。方法300は、環境100のコンポーネント及びデータ並びに図4Aから図4Dのモデル編集例をしばしば参照しつつ説明される。
方法300は、モデル内の少なくとも1つの目標オブジェクトにおいて実行される編集を指示するユーザジェスチャを受信する動作を含み、当該モデルはオブジェクト間の関係を定義する1または複数の制約を含む基本的なスキーマに基づいている(動作310)。例えば、ジェスチャ受信モジュール110は、ユーザジェスチャ106を受信して、指示された編集111がモデル140内の少なくとも1つの目標オブジェクト(例えばオブジェクト431B)において実行されるべきことを示すことができ、モデル140は、当該モデル内のオブジェクト間の関係を定義する制約137を含む基本的なスキーマ135に基づいている。
方法300は、基本的なスキーマ内の制約のうちの少なくとも1つが、目標オブジェクトの指示された編集に関連付けられていることを判定する動作(動作320)も含む。例えば、制約関連付けモジュール125は、基本的なスキーマ135内の制約137のうちの少なくとも1つが目標オブジェクト(例えばオブジェクト431B)に対する指示された編集111に関連付けられていることを判定することができる。従って、選択オブジェクト及び/または目標オブジェクトに対応する基本的なドメインモデル(domain model)内の制約が評価される。編集バリデータ120は、制約の評価に基づいて、指示された編集111の有効性に関する判定、特に、指示された編集111にモデルの制約が適用されるかの判定を行う。
方法300は、基本的なスキーマ内の制約のうちの少なくとも1つが目標オブジェクトの指示された編集に関連付けられている判定に基づいて、ユーザジェスチャに対応するモデル編集が無効であることを、当該目標オブジェクトにおいて実行される指示された編集に関連付けられた制約に基づいて判定する動作(選択的動作330)を選択的に含む。例えば、基本的なスキーマ135内の制約137のうちの少なくとも1つが目標オブジェクト(例えばオブジェクト431B)に対する指示された編集111に関連付けられていることの判定に基づいて、編集バリデータ120は、当該目標オブジェクトにおいて実行される指示された編集111に関連付けられた制約137に基づいて、ユーザジェスチャ106に対応する指示された編集が無効であることを判定する。
指示された編集111は、様々な理由で無効と宣言され得る(無効判定124)。例えば、図4Bに示されているように、選択オブジェクト(例えばオブジェクト430B)は、目標オブジェクト(例えばオブジェクト431B)とのマッチングエンドポイントを持たない。さらに、制約137は、選択オブジェクト430B及び431Bが、それらの間の関係を有することを許容しないまたは許容されないことを示すことができる。例えば、モデルは複数のステップを有する処理フローチャートを含み得、ステップの各々は、連続して完了されなければならない。ユーザは、第1の処理ボックスの選択及び当該第1のボックスがコネクタによって第3の処理に接続されるべきことの指示を示すジェスチャを入力する(例えばユーザは、第3のボックス上に第1のボックスをドラッグする)。この場合、制約関連付けモジュールは、この編集に関連付けられた制約があることを判定し、編集バリデータは当該制約に基づいて無効判定を返信するだろう。これは、モデルの制約及び基本的スキーマによって判定された無効な編集の一例であり、多くの他の様々でさらに複雑な例も可能である。
最後に、方法300は、有効性判定に基づいて、ユーザに対して少なくとも1つの有効なモデル編集の表示をする動作(動作340)を含む。例えば、有効性判定124に基づいて、編集バリデータ120は、コンピュータユーザ105に対して少なくとも1つの有効なモデル編集(例えば、ヒント121及び123)の表示をすることができる。図4Bに示されているように、ユーザはジェスチャ401Bを入力し得、ユーザ描画線405Bは選択オブジェクト430Bと目標オブジェクト431Bとの間にある。この場合、この2つのオブジェクトの間の潜在的な関係が決められていない故に、エンドポイントは存在しない。ジェスチャ401Bに基づいて指示された編集111が受信された後、編集バリデータは、制約125に基づいて、2つのオブジェクトが接続され得ることの表示、及び、さらにこれらのオブジェクトのどの部分が接続されるべきなのかの表示を提供することができる。従って、結果420Bにおいて、マッチングエンドポイント410B及び411Bはコネクタ425Bによって接続され、エンドポイント411Bがオブジェクト410B及び411Bに関する制約に基づいて生成される。
いくつかの場合において、編集バリデータ120は、編集が有効であると判定されたとしても、指示された編集111に基づいてヒントすなわち有効なモデル編集の表示を提供することができる。従って、編集バリデータ120は、編集実行モジュール130に4つの異なった判定、すなわち有効判定及びヒント121、有効判定122、無効判定及びヒント123並びに無効判定124を送信することができる。いくつかの場合において、編集バリデータ120は、指示された編集111に応答しかつ基本的なスキーマの制約に従って複数の有効なモデル編集を提供することができる。
図4Cに示されているように、モデルは複数のエンドポイントを有する複数のオブジェクトを有することができる。いくつかの実施形態において、ジェスチャ401Cの下で、ユーザは、選択モデルオブジェクト430Cをモデルオブジェクトのグループ435Cの線で囲まれた領域内にドラッグし、選択モデルオブジェクト430Cを当該領域内のどこかにドロップすることができる(ドラッグアンドドロップジェスチャ406C)。編集バリデータは、各々のモデルの各々のオブジェクトに対する制約に基づいて、可能なエンドポイントマッチングに関する判定を行うことができる(2以上のモデルが存在する場合)。従って、結果420Cにおいて、マッチングエンドポイント410Cは、コネクタ425Cを介して接続され、非マッチングエンドポイント415Cは接続されない。いくつかの場合において、対応する制約に従って2以上のエンドポイントがマッチングし、ユーザはオプションボックスで、1のボックスに接続するか、選択したボックスに接続するか、またはマッチングする全てのボックスに接続するかの決定するように指示され得る。さらに、いくつかの実施形態において、選択オブジェクト430Cとのマッチングエンドポイントを有さないオブジェクトは、放棄されるかまたは表示から除去されるので、ユーザが選択オブジェクト430Cに関連付けられたオブジェクトに集中することが可能となる。
図4Dにおいて、他のシナリオがジェスチャ401Dの下で示され、このシナリオにおいて、ユーザは選択オブジェクト430Dを選択し、これを視覚モデル編集プログラム内の空きスペース内にドラッグアンドドロップする。いくつかの実施形態において、ユーザ105は、1または複数の他のオブジェクト(例えばモデル)内の他のエンドポイントにマッチングされるべきエンドポイント(例えばエンドポイント412D)を選択している。マッチングエンドポイント450Dを有するオブジェクトテンプレートのセットがユーザに示され得、ユーザがエンドポイント412に対応するエンドポイントを有するオブジェクトテンプレート間で、オブジェクトの各々の基本的なスキーマの制約に従って選択することを可能とされる。従って、この例において、ユーザはオブジェクトテンプレート451D、452D及び453Dから選択を行ってもよく、当該オブジェクトテンプレートの各々は、少なくとも1つのマッチングエンドポイントを有する。結果420Dに示されているように、ユーザ105はオブジェクトテンプレート453Dを選択し得、オブジェクトテンプレート453Dのマッチングエンドポイント(例えば、マッチングエンドポイント410D)は、コネクタ425Dによって接続される。オブジェクトの非マッチングエンドポイント415Dは接続されない。上述のシナリオと同様に、ユーザは、マッチングエンドポイントを有する複数のオブジェクトを任意に選択することができる。さらに、ユーザは、選択オブジェクトにおいて実行される他の編集を指示するジェスチャを行い得る。これらのジェスチャは、基本的なスキーマ(単数または複数)の制約に基づいて有効だと判定された場合に、同様に処理され、実行される。
いくつかの場合において、編集バリデータ120は、無効なモデル編集と機能的に実質同一な有効なモデル編集を含むヒントを提供する。従って、ユーザがオブジェクトを変更しようとするかまたは2つのオブジェクト間の関係を形成しようとしかつジェスチャが無効な編集をもたらす場合、編集バリデータ120は当該ジェスチャによって指示されたのと同様の他の編集を決定することができる。
いくつかの実施形態において、指示された編集111は無効であるという判定において、編集実行モジュール130はモデル編集が実行されるのを防止することができる。追加的にまたは代替的に、編集実行モジュール130は、基本的なスキーマの制約に対応する新しいモデルオブジェクトを生成することができる。ユーザは、生成される新しいモデルオブジェクトのタイプを選択することができる。いくつかの実施形態において、ヒントとして提供されて表示されるモデル編集は、テキスト形式で記述することができる。他の場合、表示される有効なモデル編集は、モデルにおける編集の提示された効果を示す重畳された画像を含むことができる。従って、ユーザは、当該重畳された画像から当該編集を実行するか否かを判定可能だろう。
従って、ユーザは、1または複数のモデルにおいて実行されるべき編集を示すジェスチャを行うことができる。編集の有効性は、それらが適用される前に判定され、ユーザが、モデル(1または複数)の基本的なスキーマ(1または複数)の制約に基づいた有効な態様においてモデル(1または複数)を編集することが保証される。さらに、ユーザが無効な編集を指示した場合、ヒントが提供されるので、ユーザはモデルにおいて実行される有効な編集を指示可能である。
本発明は、本発明の趣旨または本質的な特徴から逸脱することなく、他の特定の態様で実施され得る。説明された実施形態は、全てにおいて単なる例示であって限定的なものではないと考えられるべきである。従って、本発明の範囲は、上述の説明よりもむしろ添付の特許請求の範囲によって示される。特許請求の範囲に記載の発明と均等な意味及び範囲内ある全ての変更は、それらの範囲内に包含される。

Claims (13)

  1. コンピュータシステムにおいてモデルオブジェクトに対応する示されたユーザジェスチャに基づいて1または複数の有効なモデル編集を提示する方法であって、
    ジェスチャ受信モジュールが、モデル内の選択オブジェクト及び複数の目標オブジェクトにおいて実行される編集を指示するユーザジェスチャを受信する動作であって、前記モデルは、オブジェクト間の関係を定義する1または複数の制約を含む基本的なスキーマに基づいており、前記選択オブジェクト及び前記複数の目標オブジェクトは、複数のエンドポイントを有する、動作と、
    制約関連付けモジュールが、前記基本的なスキーマ内の前記制約のうちの少なくとも1つが前記指示された編集に関連付けられていることを判定する動作と、
    編集バリデータが、前記指示された編集に関連付けられた前記少なくとも1つの制約に基づいて、前記複数の目標オブジェクトの各エンドポイントが前記選択オブジェクトの各エンドポイントとマッチングするかどうかを判定する動作と、
    前記編集バリデータが、当該マッチングするエンドポイントを含む前記目標オブジェクトを含む少なくとも1つの有効なモデル編集をユーザディスプレイに表示する動作と
    を含むことを特徴とする方法。
  2. 編集実行モジュールが、前記エンドポイントがマッチングしないとの判定に基づいて、前記モデル編集の実行を防止する動作をさらに含むことを特徴とする請求項に記載の方法。
  3. 前記目標オブジェクト及び前記選択オブジェクトにおける前記マッチングするエンドポイントは、コネクタを用いて接続されことを特徴とする請求項に記載の方法。
  4. 前記エンドポイントの各々は前記基本的なスキーマの少なくとも1つの制約に対応していることを特徴とする請求項に記載の方法。
  5. 前記有効なモデル編集は、前記目標オブジェクトの前記マッチングするエンドポイントと前記選択オブジェクトの前記マッチングするエンドポイントとの間に前記コネクタを設けることを含むことを特徴とする請求項に記載の方法。
  6. 前記マッチングするエンドポイントが前記ユーザディスプレイにおいて強調表示されることを特徴とする請求項に記載の方法。
  7. 前記表示する動作は、ユーザが選択する選択肢のリストを表示することを含み、前記リスト内の選択肢の各々は前記有効なモデル編集を含むことを特徴とする請求項に記載の方法。
  8. 編集実行モジュールが、前記エンドポイントがマッチングしないとの判定に応答しかつ前記指示された編集に応答して、前記基本的なスキーマの前記制約に対応する新しいモデルオブジェクトを生成する動作をさらに含むことを特徴とする請求項に記載の方法。
  9. 編集実行モジュールが、視覚モデリングアプリケーション内に前記モデルを表示する動作をさらに含むことを特徴とする請求項1に記載の方法。
  10. 前記編集実行モジュールが、前記エンドポイントがマッチングするという判定に応答して前記指示された編集を実行する動作をさらに含むことを特徴とする請求項1に記載の方法。
  11. コンピュータシステムの1または複数のプロセッサによって実行される際に、前記コンピュータシステムに、請求項1に記載の方法を実行させるためのコンピュータ実行可能命令を格納したことを特徴とするコンピュータ可読記録
  12. 前記表示された有効なモデル編集がテキスト形式で記述されることを特徴とする請求項に記載の方法
  13. 前記表示された有効なモデル編集が前記モデルにおける前記編集の効果を示す重畳された画像を含むことを特徴とする請求項に記載の方法
JP2010527204A 2007-09-28 2008-09-26 リレーショナルモデルのインテリジェントな編集 Expired - Fee Related JP5202638B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/864,397 US20090089739A1 (en) 2007-09-28 2007-09-28 Intelligent editing of relational models
US11/864,397 2007-09-28
PCT/US2008/077956 WO2009045918A2 (en) 2007-09-28 2008-09-26 Intelligent editing of relational models

Publications (2)

Publication Number Publication Date
JP2011503680A JP2011503680A (ja) 2011-01-27
JP5202638B2 true JP5202638B2 (ja) 2013-06-05

Family

ID=40509856

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010527204A Expired - Fee Related JP5202638B2 (ja) 2007-09-28 2008-09-26 リレーショナルモデルのインテリジェントな編集

Country Status (7)

Country Link
US (1) US20090089739A1 (ja)
EP (1) EP2203847A4 (ja)
JP (1) JP5202638B2 (ja)
CN (1) CN101809564B (ja)
BR (1) BRPI0816222A2 (ja)
RU (1) RU2472214C2 (ja)
WO (1) WO2009045918A2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8880564B2 (en) * 2007-10-11 2014-11-04 Microsoft Corporation Generic model editing framework
US8612892B2 (en) * 2009-06-18 2013-12-17 Microsoft Corporation Incremental run-time layout composition
US9405449B2 (en) 2010-01-14 2016-08-02 Microsoft Technology Licensing, Llc Layout constraint manipulation via user gesture recognition
US8261213B2 (en) 2010-01-28 2012-09-04 Microsoft Corporation Brush, carbon-copy, and fill gestures
US9519356B2 (en) * 2010-02-04 2016-12-13 Microsoft Technology Licensing, Llc Link gestures
US9454304B2 (en) 2010-02-25 2016-09-27 Microsoft Technology Licensing, Llc Multi-screen dual tap gesture
US8990732B2 (en) * 2010-05-14 2015-03-24 Sap Se Value interval selection on multi-touch devices
US8316314B2 (en) * 2010-06-30 2012-11-20 Thermo Electron Scientific Instruments Llc Intelligent multi-functional macros language for analytical measurements
CN106575354B (zh) * 2014-05-21 2021-11-05 汤杰宝游戏公司 有形界面对象的虚拟化
US9734608B2 (en) 2015-07-30 2017-08-15 Microsoft Technology Licensing, Llc Incremental automatic layout of graph diagram for disjoint graphs
RU2613026C1 (ru) * 2015-09-30 2017-03-14 Общество с ограниченной ответственностью "Интерсофт" Способ подготовки документов на языках разметки при реализации пользовательского интерфейса для работы с данными информационной системы
CN108351768B (zh) 2015-09-30 2021-04-20 伊恩杰里索芙特公司 用标记语言编写文档的同时实现处理信息系统的数据的用户界面的方法
US9600244B1 (en) 2015-12-09 2017-03-21 International Business Machines Corporation Cognitive editor
US10957117B2 (en) * 2018-10-15 2021-03-23 Adobe Inc. Intuitive editing of three-dimensional models

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5497500A (en) * 1986-04-14 1996-03-05 National Instruments Corporation Method and apparatus for more efficient function synchronization in a data flow program
JPH05119987A (ja) * 1991-10-30 1993-05-18 Hitachi Ltd 動的仕様の検証ルールの図形式定義方法
US6606101B1 (en) * 1993-10-25 2003-08-12 Microsoft Corporation Information pointers
JPH08180110A (ja) * 1994-12-27 1996-07-12 Hitachi Ltd 業務プロセス定義方法
US6437805B1 (en) * 1996-09-23 2002-08-20 National Instruments Corporation System and method for accessing object capabilities in a graphical program
US7000106B2 (en) * 1999-03-26 2006-02-14 Siemens Communications, Inc. Methods and apparatus for kernel mode encryption of computer telephony
US7000108B1 (en) * 2000-05-02 2006-02-14 International Business Machines Corporation System, apparatus and method for presentation and manipulation of personal information syntax objects
US7089256B2 (en) * 2000-07-11 2006-08-08 Knowledge Dynamics, Inc. Universal data editor
US7676798B2 (en) * 2003-10-24 2010-03-09 Microsoft Corporation Mechanism for obtaining and applying constraints to constructs within an interactive environment
RU2253894C1 (ru) * 2003-12-22 2005-06-10 Григорьев Евгений Александрович Объектно-ориентированная система управления реляционными базами данных
EP1710736A4 (en) * 2004-01-21 2011-11-16 Metalogic Inc METHOD, DEVICE AND SYSTEM FOR RESOLVING RESTRICTIONS
US20050172261A1 (en) * 2004-01-30 2005-08-04 Yuknewicz Paul J. Architecture for creating a user interface using a data schema
JP4667386B2 (ja) * 2004-09-24 2011-04-13 富士通株式会社 業務モデル図作成支援プログラム、業務モデル図作成支援方法、および業務モデル図作成支援装置
US8510657B2 (en) * 2004-09-30 2013-08-13 Microsoft Corporation Editing the text of an arbitrary graphic via a hierarchical list
US8170901B2 (en) * 2004-10-01 2012-05-01 Microsoft Corporation Extensible framework for designing workflows
KR20060079690A (ko) * 2005-01-03 2006-07-06 아토정보기술 주식회사 템플릿과 패턴을 이용한 컴포넌트 기반의 프로그래밍 자동화 방법
US7506306B2 (en) * 2005-05-24 2009-03-17 International Business Machines Corporation Graphical editor with incremental development
GB0512668D0 (en) * 2005-06-22 2005-07-27 Ibm System and method for use in visual modelling
US8042110B1 (en) * 2005-06-24 2011-10-18 Oracle America, Inc. Dynamic grouping of application components
KR100744886B1 (ko) * 2005-06-28 2007-08-01 학교법인 포항공과대학교 아사달 : 휘처 기반 소프트웨어 제품라인 개발 환경을제공하는 시스템
US7747944B2 (en) * 2005-06-30 2010-06-29 Microsoft Corporation Semantically applying style transformation to objects in a graphic
US7505991B2 (en) * 2005-08-04 2009-03-17 Microsoft Corporation Semantic model development and deployment
CN1955991A (zh) * 2005-10-25 2007-05-02 国际商业机器公司 在业务模型中集成模型语义和领域语义的方法和装置
US9058129B2 (en) * 2005-11-14 2015-06-16 Oracle International Corporation System and method of correlation and change tracking between business requirements, architectural design, and implementation of applications
US7737996B2 (en) * 2005-12-01 2010-06-15 Microsoft Corporation Techniques for automated animation
US20070240069A1 (en) * 2006-04-11 2007-10-11 Invensys Systems, Inc. Appearance objects for configuring and graphically displaying programmed/configured process control

Also Published As

Publication number Publication date
RU2010111782A (ru) 2011-10-10
WO2009045918A2 (en) 2009-04-09
WO2009045918A3 (en) 2009-06-04
EP2203847A2 (en) 2010-07-07
EP2203847A4 (en) 2010-10-20
JP2011503680A (ja) 2011-01-27
BRPI0816222A2 (pt) 2015-06-16
CN101809564A (zh) 2010-08-18
CN101809564B (zh) 2013-04-24
RU2472214C2 (ru) 2013-01-10
US20090089739A1 (en) 2009-04-02

Similar Documents

Publication Publication Date Title
JP5202638B2 (ja) リレーショナルモデルのインテリジェントな編集
US11275742B2 (en) Digital processing systems and methods for smart table filter with embedded boolean logic in collaborative work systems
Mori et al. Tool support for designing nomadic applications
US7272818B2 (en) Creation of an object within an object hierarchy structure
US8631388B2 (en) Graphical editor with incremental development
EP2321723B1 (en) Automatic user interface generation for entity interaction
US10331765B2 (en) Methods and apparatus for translating forms to native mobile applications
US8938679B1 (en) Comment system for interactive graphical designs
US8103703B1 (en) System and method for providing content-specific topics in a mind mapping system
US7899846B2 (en) Declarative model editor generation
US20190079910A1 (en) Systems and methods for collaborative editing of interactive walkthroughs of content
US20060225091A1 (en) Customizing and personalizing views in content aggregation frameworks
Willman Beginning PyQt
US20170109338A1 (en) System and method for interacting in layers in channels over the display of a resource by another application
JP2011501327A (ja) 宣言型モデルの解釈
KR100261265B1 (ko) 웹 문서 저작을 위한 장치 및 그 운용 방법
JP2016115022A (ja) 情報処理装置、情報処理方法、およびプログラム
CN101203848A (zh) 文档处理装置和文档处理方法
US11113451B2 (en) Representation of mark-up of master documents
JP2021533456A (ja) ネットワーク化された共同ワークスペースにおいてウェブ・ソケット接続を介して拡充ノート・データ・オブジェクトを伝えるための方法、装置及びコンピュータ可読媒体
KR20190115401A (ko) 링크 뷰 방법, 링크 뷰 장치 및 링크 뷰 프로그램
Wesley Pro JQuery in Oracle Application Express
CN106796512A (zh) 投影工作空间的方法以及应用该投影工作空间的方法的系统
JPH0475136A (ja) プログラム開発装置
WO2013090298A1 (en) Systems and methods for creating, editing and publishing cross-platform interactive electronic works

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110808

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121213

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130212

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

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees