(57)【特許請求の範囲】
【請求項１】
複数の有形オブジェクトと関連付けられたデータを追跡および管理するために使用されるデータモデルのテンプレートおよびアーチファクトを管理するために意味論的タグ付けを使用する方法であって、前記方法は、
コンピューティングデバイスのプロセッサが、複数の有形オブジェクトと関連付けられたデータを管理するための複数のデータモデルを作成するための複数の再使用可能なテンプレートを提供することであって、各再使用可能なテンプレートは、有形オブジェクトのタイプに特有であり、前記複数の再使用可能なテンプレートは、階層構造に編成され、前記階層構造において、１つ以上の再使用可能なテンプレートは、他の再使用可能なテンプレートと親関係を有することにより、各親テンプレートのコンテンツが、対応する子テンプレートにおいて自動的に複製される、ことと、
前記プロセッサが、前記データモデルの前記複数の再使用可能なテンプレートを管理するための１つ以上の意味論的タグを用いて、１つ以上の再使用可能な子テンプレートと親関係を有する第１の再使用可能なテンプレートをタグ付けする要求を受信することであって、前記１つ以上の意味論的タグのうちの意味論的タグは、前記第１の再使用可能なテンプレートのコンテンツと関連付けられた用語を含む、ことと、
前記プロセッサが、前記意味論的タグを用いて前記第１の再使用可能なテンプレートをタグ付けすることであって、前記１つ以上の再使用可能な子テンプレートは、継承されたオブジェクトであり、前記１つ以上の再使用可能な子テンプレートは、前記第１の再使用可能なテンプレートから、前記意味論的タグを含むデータプロパティを継承する、ことと、
タグ用語を用いた検索要求に応答して、前記プロセッサが、前記タグ用語と少なくとも部分的に一致する意味論的タグを有する１つ以上の再使用可能なテンプレートを引き出し、前記引き出された１つ以上の再使用可能なテンプレートのグラフィカル表現をもたらすことと
を含む、方法。
【請求項２】
前記プロセッサが、再使用可能な親テンプレートと関連付けられた第１のレベル情報と、再使用可能な子テンプレートと関連付けられた第２のレベル情報とを受信することと、
前記プロセッサが、前記受信された第１のレベル情報および前記第２のレベル情報を使用して、第３および第４の再使用可能なテンプレートを定義することと
をさらに含む、請求項１に記載の方法。
【請求項３】
前記タグ付けされた第１の再使用可能なテンプレートと、前記タグ付けされた１つ以上の再使用可能な子テンプレートの各々とを持続性メモリに記憶することを含む、請求項１に記載の方法。
【請求項４】
前記プロセッサが、前記１つ以上の意味論的タグを使用する第２のサーバに前記提供された１つ以上のテンプレートおよび関連付けられたアーチファクトを転送することをさらに含む、請求項１に記載の方法。
【請求項５】
前記コンピューティングデバイスのプロセッサが、前記１つ以上の意味論的タグを用いて前記データモデルのアーチファクトをタグ付けすることを含み、前記アーチファクトは、前記第１の再使用可能なテンプレートと関連付けられている、請求項１に記載の方法。
【請求項６】
前記複数の再使用可能なテンプレートのコンテンツは、プロパティ、サービス、およびイベントからなる群から選択される１つ以上の要素を含む、請求項１に記載の方法。
【請求項７】
前記１つ以上の再使用可能なテンプレートのうちの再使用可能なテンプレートの選択を受信することと、
前記選択された再使用可能なテンプレートを使用して、対応する１つ以上の第１の有形オブジェクトと関連付けられたデータを管理するために１つ以上の第１のデータモデルを作成することと
を含む、請求項１に記載の方法。
【請求項８】
前記グラフィカル表現は、１つ以上の引き出された再使用可能なテンプレートの各々の間の相互接続を提示する、請求項１に記載の方法。
【請求項９】
複数の有形オブジェクトと関連付けられたデータを追跡および管理するために使用されるデータモデルのテンプレートおよびアーチファクトを管理するために意味論的タグ付けを使用するための命令が記憶されている非一過性コンピュータ読み取り可能な媒体であって、前記命令は、少なくとも１つのプロセッサによって実行されると、前記プロセッサに、
複数の有形オブジェクトと関連付けられたデータを管理するための複数のデータモデルを作成するための複数の再使用可能なテンプレートを提供することであって、各再使用可能なテンプレートは、有形オブジェクトのタイプに特有であり、前記複数の再使用可能なテンプレートは、階層構造に編成され、前記階層構造において、１つ以上の再使用可能なテンプレートは、他の再使用可能なテンプレートと親関係を有することにより、各親テンプレートのコンテンツが、対応する子テンプレートにおいて自動的に複製される、ことと、
前記データモデルの前記複数の再使用可能なテンプレートを管理するための１つ以上の意味論的タグを用いて、１つ以上の再使用可能な子テンプレートと親関係を有する第１の再使用可能なテンプレートをタグ付けする要求を受信することであって、前記１つ以上の意味論的タグのうちの意味論的タグは、前記第１の再使用可能なテンプレートのコンテンツと関連付けられた用語を含む、ことと、
前記意味論的タグを用いて前記第１の再使用可能なテンプレートをタグ付けすることであって、前記１つ以上の再使用可能な子テンプレートは、継承されたオブジェクトであり、前記１つ以上の再使用可能な子テンプレートは、前記第１の再使用可能なテンプレートから、前記意味論的タグを含むデータプロパティを継承する、ことと、
タグ用語を用いた検索要求に応答して、前記タグ用語と少なくとも部分的に一致する意味論的タグを有する１つ以上の再使用可能なテンプレートを引き出し、前記引き出された１つ以上の再使用可能なテンプレートのグラフィカル表現をもたらすことと
を行わせる、コンピュータ読み取り可能な媒体。
【請求項１０】
前記命令は、前記プロセッサによって実行されると、前記プロセッサに、
再使用可能な親テンプレートと関連付けられた第１のレベル情報と、再使用可能な子テンプレートと関連付けられた第２のレベル情報とを受信することと、
前記受信された第１のレベル情報および前記第２のレベル情報を使用して、第３および第４の再使用可能なテンプレートを定義することと
を行わせる、請求項９に記載のコンピュータ読み取り可能な媒体。
【請求項１１】
前記命令は、前記プロセッサによって実行されると、前記プロセッサに、前記タグ付けされた第１の再使用可能なテンプレートと、前記タグ付けされた１つ以上の再使用可能な子テンプレートの各々とを持続性メモリに記憶することを行わせる、請求項９に記載のコンピュータ読み取り可能な媒体。
【請求項１２】
前記命令は、前記プロセッサによって実行されると、前記プロセッサに、前記１つ以上の意味論的タグを使用する第２のサーバに前記提供された１つ以上のテンプレートおよび関連付けられたアーチファクトを転送することを行わせる、請求項９に記載のコンピュータ読み取り可能な媒体。
【請求項１３】
前記命令は、前記プロセッサによって実行されると、前記プロセッサに、前記１つ以上の意味論的タグを用いて前記データモデルのアーチファクトをタグ付けすることを行わせ、前記アーチファクトは、前記第１の再使用可能なテンプレートと関連付けられている、請求項９に記載のコンピュータ読み取り可能な媒体。
【請求項１４】
前記複数の再使用可能なテンプレートのコンテンツは、プロパティ、サービス、およびイベントからなる群から選択される１つ以上の要素を含む、請求項９に記載のコンピュータ読み取り可能な媒体。
【請求項１５】
前記命令は、前記プロセッサによって実行されると、前記少なくとも１つのプロセッサに、
前記１つ以上の再使用可能なテンプレートのうちの再使用可能なテンプレートの選択を受信することと、
前記選択された再使用可能なテンプレートを使用して、対応する１つ以上の第１の有形オブジェクトと関連付けられたデータを管理するために１つ以上の第１のデータモデルを作成することと
を行わせる、請求項９に記載のコンピュータ読み取り可能な媒体。
【請求項１６】
前記グラフィカル表現は、１つ以上の引き出された再使用可能なテンプレートの各々の間の相互接続を提示する、請求項９に記載のコンピュータ読み取り可能な媒体。
【請求項１７】
デバイスであって、
１つ以上のプロセッサと、
メモリと
を備え、前記メモリは、前記１つ以上のプロセッサに結合されており、前記メモリは、命令が記憶されており、前記命令は、前記１つ以上のプロセッサによって実行されると、前記１つ以上のプロセッサに、
複数の有形オブジェクトと関連付けられたデータを管理するための複数のデータモデルを作成するための複数の再使用可能なテンプレートを提供することであって、各再使用可能なテンプレートは、有形オブジェクトのタイプに特有であり、前記複数の再使用可能なテンプレートは、階層構造に編成され、前記階層構造において、１つ以上の再使用可能なテンプレートは、他の再使用可能なテンプレートと親関係を有することにより、各親テンプレートのコンテンツが、対応する子テンプレートにおいて自動的に複製される、ことと、
前記データモデルの前記複数の再使用可能なテンプレートを管理するための１つ以上の意味論的タグを用いて、１つ以上の再使用可能な子テンプレートと親関係を有する第１の再使用可能なテンプレートをタグ付けする要求を受信することであって、前記１つ以上の意味論的タグのうちの意味論的タグは、前記第１の再使用可能なテンプレートのコンテンツと関連付けられた用語を含む、ことと、
前記意味論的タグを用いて前記第１の再使用可能なテンプレートをタグ付けすることであって、前記１つ以上の再使用可能な子テンプレートは、継承されたオブジェクトであり、前記１つ以上の再使用可能な子テンプレートは、前記第１の再使用可能なテンプレートから、前記意味論的タグを含むデータプロパティを継承する、ことと、
タグ用語を用いた検索要求に応答して、前記タグ用語と少なくとも部分的に一致する意味論的タグを有する１つ以上の再使用可能なテンプレートを引き出し、前記引き出された１つ以上の再使用可能なテンプレートのグラフィカル表現をもたらすことと
を行わせる、デバイス。
【請求項１８】
前記命令は、前記プロセッサによって実行されると、前記プロセッサに、
再使用可能な親テンプレートと関連付けられた第１のレベル情報と、再使用可能な子テンプレートと関連付けられた第２のレベル情報とを受信することと、
前記受信された第１のレベル情報および前記第２のレベル情報を使用して、第３および第４の再使用可能なテンプレートを定義することと
をさらに行わせる、請求項１７に記載のデバイス。
【請求項１９】
前記命令は、前記プロセッサによって実行されると、前記プロセッサに、前記１つ以上の意味論的タグを用いて前記データモデルのアーチファクトをタグ付けすることを行わせ、前記アーチファクトは、前記第１の再使用可能なテンプレートと関連付けられている、請求項１７に記載のデバイス。
【請求項２０】
前記複数の再使用可能なテンプレートのコンテンツは、プロパティ、サービス、およびイベントからなる群から選択される１つ以上の要素を含む、請求項１７に記載のデバイス。
【請求項２１】
前記命令は、前記プロセッサによって実行されると、前記少なくとも１つのプロセッサに、
前記１つ以上の再使用可能なテンプレートのうちの再使用可能なテンプレートの選択を受信することと、
前記選択された再使用可能なテンプレートを使用して、対応する１つ以上の第１の有形オブジェクトと関連付けられたデータを管理するために１つ以上の第１のデータモデルを作成することと
を行わせる、請求項１７に記載のデバイス。
【請求項２２】
前記グラフィカル表現は、１つ以上の引き出された再使用可能なテンプレートの各々の間の相互接続を提示する、請求項１７に記載のデバイス。
【請求項２３】
前記命令は、前記プロセッサによって実行されると、前記プロセッサに、前記タグ付けされた第１の再使用可能なテンプレートと、前記タグ付けされた１つ以上の再使用可能な子テンプレートの各々とを持続性メモリに記憶することを行わせる、請求項１７に記載のデバイス。
【請求項２４】
前記命令は、前記プロセッサによって実行されると、前記プロセッサに、前記１つ以上の意味論的タグを使用する第２のサーバに前記提供された１つ以上のテンプレートおよび関連付けられたアーチファクトを転送することを行わせる、請求項１７に記載のデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願）
本願は、米国仮特許出願第６１／７９３，６２７号（２０１３年３月１５日出願、名称「ＭＥＴＨＯＤＳ  ＦＯＲ  ＭＡＮＡＧＩＮＧ  ＡＰＰＬＩＣＡＴＩＯＮＳ  ＵＳＩＮＧ  ＳＥＭＡＮＴＩＣ  ＭＯＤＥＬＩＮＧ  ＡＮＤ  ＴＡＧＧＩＮＧ  ＡＮＤ  ＤＥＶＩＣＥＳ  ＴＨＥＲＥＯＦ」）に基づく優先権およびその出願の利益を主張し、その出願の文言は、その全体が参照によって援用される。
【０００２】
（発明の分野）
本発明は、概して、データを管理するための方法およびシステムに関する。より具体的には、特定の実施形態では、本発明は、データの意味論的モデル化およびタグ付けのためのシステムおよび方法に関する。
【背景技術】
【０００３】
（背景）
ソフトウェア開発のプロセスは、研究、新しい開発、プロトタイピング、修正、および再使用を伴う。加えて、動的コンピューティングアプリケーションの開発は、コンテンツデベロッパが、大量のコンテンツアーチファクトを編成、管理、および展開することを要求する。コンテンツアーチファクトを正確に開発するために、コンテンツデベロッパは、物理的世界を反映する論理モデルを作成しなければならない。そのようなモデルは、次いで、アーチファクトの最高レベルの再使用性およびコンピューティングアプリケーション（単数または複数）を維持する最低コストを提供するために、共通オブジェクトに分解される。コンピューティングアプリケーションの複雑性が増すにつれて、共通オブジェクトの数もまた、増加し、それによって、これらの共通オブジェクトの追跡および維持のプロセスを重要にする。
【０００４】
現在、既存の技術は、典型的には、これらの共通オブジェクトを多くの異なるメモリ位置に記憶する。その結果、コンテンツデベロッパは、コンピューティングアプリケーションの開発に関連する共通オブジェクトを識別するために、コンテンツアーチファクトのための多数の位置を通して手動で検索を行う必要がある。本手動検索プロセスは、非効率的であり、時間がかかり、かつ手間がかかる。
【発明の概要】
【課題を解決するための手段】
【０００５】
（概要）
一側面では、本開示は、意味論的タグを使用してデータを管理するための方法を説明する。本方法は、コンピューティングデバイスのプロセッサによって、有形オブジェクトの第１のセットに対応するデータモデルを提供することを含んでもよく、データモデルは、有形オブジェクトの第１のセットと関連付けられた１つ以上のデータプロパティの第１のセットを有する第１のテンプレートクラスを含む。第１のテンプレートクラスは、１つ以上の意味論的タグの第１のセットにタグ付けされてもよく、意味論的タグの第１のセットは、第１のテンプレートクラスのデータプロパティの第１のセットに対応する。意味論的タグは、グラフィカルユーザインターフェースにアクセス可能な語彙データベース内にリスト化された１つ以上の単語に関連付けられてもよい。グラフィカルユーザインターフェースは、開発作業空間の一部であってもよい。
【０００６】
いくつかの実装では、本方法は、プロセッサによって、コンピューティングデバイスにアクセス可能なグラフィカルユーザインターフェースにおいて受信された入力に応答して、データモデルの第２のテンプレートクラスのためのクラス定義を受信することを含む。第２のテンプレートクラスは、有形オブジェクトの第２のセットに対応してもよい。第２のテンプレートクラスは、クラス定義内に、第１のテンプレートクラスによって定義されてもよい。第２のテンプレートクラスは、１つ以上のデータプロパティの第２のセットを有してもよく、プロセッサは、データプロパティの第２のセット内にデータプロパティの第１のセットを含むようにクラス定義を使用する。第２のテンプレートクラスは、クラス定義が受信された後、グラフィカルユーザインターフェースからのいずれの入力もなしに記憶されてもよい。第２のテンプレートクラスは、継承されたオブジェクトクラスであってもよく、第２のテンプレートクラスは、データプロパティを第１のテンプレートクラスから継承する。いくつかの実装では、第１のテンプレートクラスは、第２のテンプレートクラスの（オブジェクト指向プログラミングのコンテキスト内で採用されるような）継承であってもよい。データプロパティの第１のセットおよび第２のセットは、有形オブジェクトの個別のセットのそれぞれと関連付けられた地理的情報を含んでもよい。クラス定義は、オブジェクトを作成するための拡張可能テンプレートであってもよく、オブジェクトはそれぞれ、クラス定義のコンストラクタによって作成され、クラスは、クラス定義のインスタンスを作成するようにインスタンス化される。
【０００７】
いくつかの実装では、本方法は、プロセッサによって、第２のテンプレートクラスを１つ以上の意味論的タグの第２のセットとともに記憶することを含み、プロセッサは、意味論的タグの第２のセット内に意味論的タグの第１のセットを含むようにクラス定義を使用する。いくつかの実装では、第２のテンプレートクラスは、第１のテンプレートクラスから意味論的タグを継承してもよい。いくつかの実装では、第２のテンプレートクラスは、意味論的タグを複製してもよい。いくつかの実装では、第２のテンプレートクラスは、第１のテンプレートクラスから意味論的タグを継承してもよい。いくつかの実装では、第２のテンプレートクラスは、意味論的タグを複製してもよい。
【０００８】
一側面では、本開示は、プロセッサおよびメモリを含むシステムを説明し、メモリは、命令を記憶し、命令は、プロセッサによって実行されると、プロセッサに、有形オブジェクトの第１のセットに対応するデータモデルを提供させ、データモデルは、有形オブジェクトの第１のセットと関連付けられた１つ以上のデータプロパティの第１のセットを有する第１のテンプレートクラスを含む。第１のテンプレートクラスは、１つ以上の意味論的タグの第１のセットにタグ付けされてもよく、意味論的タグの第１のセットは、第１のテンプレートクラスのデータプロパティの第１のセットに対応する。意味論的タグは、グラフィカルユーザインターフェースにアクセス可能な語彙データベース内にリスト化された１つ以上の単語に関連付けられてもよい。グラフィカルユーザインターフェースは、開発作業空間の一部であってもよい。
【０００９】
命令は、実行されると、さらに、プロセッサに、コンピューティングデバイスにアクセス可能なグラフィカルユーザインターフェースにおいて受信された入力に応答して、データモデルの第２のテンプレートクラスのためのクラス定義を受信させる。第２のテンプレートクラスは、有形オブジェクトの第２のセットに対応してもよい。第２のテンプレートクラスは、クラス定義内に、第１のテンプレートクラスによって定義されてもよい。第２のテンプレートクラスは、１つ以上のデータプロパティの第２のセットを有してもよく、プロセッサは、第２のデータプロパティのセット内に第１のデータプロパティのセットを含むようにクラス定義を使用する。第２のテンプレートクラスは、クラス定義が受信された後、グラフィカルユーザインターフェースからのいずれの入力もなしに記憶されてもよい。第２のテンプレートクラスは、継承されたオブジェクトクラスであってもよく、第２のテンプレートクラスは、第１のテンプレートクラスからデータプロパティを継承する。いくつかの実装では、第１のテンプレートクラスは、第２のテンプレートクラスの（オブジェクト指向プログラミングのコンテキスト内で採用されるような）継承であってもよい。データプロパティの第１セットおよび第２のセットは、有形オブジェクトの個別のセットのそれぞれと関連付けられた地理的情報を含んでもよい。クラス定義は、オブジェクトを作成するための拡張可能テンプレートであってもよく、オブジェクトはそれぞれ、クラス定義のコンストラクタによって作成され、クラスは、クラス定義のインスタンスを作成するようにインスタンス化される。
【００１０】
命令は、実行されると、さらに、プロセッサに、第２のテンプレートクラスを１つ以上の意味論的タグの第２のセットとともに記憶させ、プロセッサは、意味論的タグの第２のセット内に意味論的タグの第１のセットを含むようにクラス定義を使用する。いくつかの実装では、第２のテンプレートクラスは、第１のテンプレートクラスから意味論的タグを継承してもよい。いくつかの実装では、第２のテンプレートクラスは、意味論的タグを複製してもよい。
本発明は、例えば、以下を提供する。
（項目１）
意味論的タグを使用してデータを管理する方法であって、前記方法は、
コンピューティングデバイスのプロセッサによって、有形オブジェクトの第１のセットに対応するデータモデルを提供することであって、
前記データモデルは、前記有形オブジェクトの第１のセットと関連付けられた１つ以上のデータプロパティの第１のセットを有する第１のテンプレートクラスを含み、
前記第１のテンプレートクラスは、１つ以上の意味論的タグの第１のセットにタグ付けされ、
前記１つ以上の意味論的タグの第１のセットは、前記第１のテンプレートクラスの前記１つ以上のデータプロパティの第１のセットに対応する、
ことと、
前記プロセッサによって、前記コンピューティングデバイスにアクセス可能なグラフィカルユーザインターフェースにおいて受信された入力に応答して、前記データモデルの第２のテンプレートクラスのためのクラス定義を受信することであって、
前記第２のテンプレートクラスは、有形オブジェクトの第２のセットに対応し、
前記第２のテンプレートクラスは、前記クラス定義内において、前記第１のテンプレートクラスによって定義され、
前記第２のテンプレートクラスは、１つ以上のデータプロパティの第２のセットを有し、
前記プロセッサは、前記１つ以上のデータプロパティの第２のセット内に前記１つ以上のデータプロパティの第１のセットを含むように前記クラス定義を使用する、
ことと、
前記プロセッサによって、前記第２のテンプレートクラスを１つ以上の意味論的タグの第２のセットとともに記憶することであって、
前記プロセッサは、前記１つ以上の意味論的タグの第２のセット内に前記１つ以上の意味論的タグの第１のセットを含むように前記クラス定義を使用する、
ことと
を含む、方法。
（項目２）
前記第２のテンプレートクラスは、前記クラス定義が受信された後、前記グラフィカルユーザインターフェースからのいずれの入力もなしに記憶される、項目１に記載の方法。
（項目３）
前記第２のテンプレートクラスは、継承されたオブジェクトクラスであり、前記第２のテンプレートクラスは、前記第１のテンプレートクラスからデータプロパティを継承する、前記項目のいずれかに記載の方法。
（項目４）
前記１つ以上のデータプロパティの第１のセットは、前記有形オブジェクトの第１のセットのそれぞれと関連付けられた地理的情報を含む、前記項目のいずれかに記載の方法。
（項目５）
前記１つ以上のデータプロパティの第２のセットは、前記有形オブジェクトの第２のセットのそれぞれと関連付けられた地理的情報を含む、前記項目のいずれかに記載の方法。
（項目６）
前記意味論的タグは、前記グラフィカルユーザインターフェースにアクセス可能な語彙データベース内にリスト化された１つ以上の単語に関連付けられる、前記項目のいずれかに記載の方法。
（項目７）
前記クラス定義は、オブジェクトを作成するための拡張可能テンプレートであり、前記オブジェクトのそれぞれは、前記クラス定義のコンストラクタによって作成され、前記クラスは、前記クラス定義のインスタンスを作成するようにインスタンス化される、前記項目のいずれかに記載の方法。
（項目８）
前記グラフィカルユーザインターフェースは、開発作業空間の一部である、前記項目のいずれかに記載の方法。
（項目９）
命令が記憶されている非一過性コンピュータ読み取り可能な媒体であって、前記命令は、コンピューティングデバイスのプロセッサによって実行されると、前記プロセッサに、
前記コンピューティングデバイスにおいて、有形オブジェクトの第１のセットに対応するデータモデルを提供することであって、
前記データモデルは、前記有形オブジェクトの第１のセットと関連付けられた１つ以上のデータプロパティの第１のセットを有する第１のテンプレートクラスを含み、
前記第１のテンプレートクラスは、１つ以上の意味論的タグの第１のセットにタグ付けされ、
前記１つ以上の意味論的タグの第１のセットは、前記第１のテンプレートクラスの前記１つ以上のデータプロパティの第１のセットに対応する、
ことと、
前記コンピューティングデバイスにアクセス可能なグラフィカルユーザインターフェースにおいて受信された入力に応答して、前記データモデルの第２のテンプレートクラスのためのクラス定義を受信することであって、
前記第２のテンプレートクラスは、有形オブジェクトの第２のセットに対応し、
前記第２のテンプレートクラスは、前記クラス定義内において、前記第１のテンプレートクラスによって定義され、
前記第２のテンプレートクラスは、１つ以上のデータプロパティの第２のセットを有し、
前記プロセッサは、前記１つ以上のデータプロパティの第２のセット内に前記１つ以上のデータプロパティの第１のセットを含むように前記クラス定義を使用する、
ことと、
前記第２のテンプレートクラスを１つ以上の意味論的タグの第２のセットとともに記憶することであって、
前記プロセッサは、前記１つ以上の意味論的タグの第２のセット内に前記１つ以上の意味論的タグの第１のセットを含むように前記クラス定義を使用する、
ことと
を行わせる、コンピュータ読み取り可能な媒体。
（項目１０）
前記第２のテンプレートクラスは、前記クラス定義が受信された後、前記グラフィカルユーザインターフェースからのいずれの入力もなしに記憶される、前記項目のいずれかに記載のコンピュータ読み取り可能な媒体。
（項目１１）
前記第１のテンプレートクラスは、前記第２のテンプレートクラスの継承されたオブジェクトクラスである、前記項目のいずれかに記載のコンピュータ読み取り可能な媒体。
（項目１２）
前記第２のテンプレートクラスは、継承されたオブジェクトクラスであり、前記第２のテンプレートクラスは、前記第１のテンプレートクラスからデータプロパティを継承する、前記項目のいずれかに記載のコンピュータ読み取り可能な媒体。
（項目１３）
前記１つ以上のデータプロパティの第２のセットは、前記有形オブジェクトの第２のセットのそれぞれと関連付けられた地理的情報を含む、前記項目のいずれかに記載のコンピュータ読み取り可能な媒体。
（項目１４）
前記意味論的タグは、語彙データベース内にリスト化された１つ以上の単語に関連付けられる、前記項目のいずれかに記載のコンピュータ読み取り可能な媒体。
（項目１５）
前記クラス定義は、オブジェクトを作成するための拡張可能テンプレートであり、前記オブジェクトのそれぞれは、前記クラス定義のコンストラクタによって作成され、前記クラスは、前記クラス定義のインスタンスを作成するようにインスタンス化される、前記項目のいずれかに記載のコンピュータ読み取り可能な媒体。
（項目１６）
前記グラフィカルユーザインターフェースは、開発作業空間の一部である、前記項目のいずれかに記載のコンピュータ読み取り可能な媒体。
（項目１７）
システムであって、前記システムは、
プロセッサと、
一式の命令が記憶されたメモリと
を含み、前記命令は、前記プロセッサによって実行されると、前記プロセッサに、
有形オブジェクトの第１のセットに対応するデータモデルを提供することであって、
前記データモデルは、前記有形オブジェクトの第１のセットと関連付けられた１つ以上のデータプロパティの第１のセットを有する第１のテンプレートクラスを含み、
前記第１のテンプレートクラスは、１つ以上の意味論的タグの第１のセットにタグ付けされ、
前記１つ以上の意味論的タグの第１のセットは、前記第１のテンプレートクラスの１つ以上のデータプロパティの第１のセットに対応する、
ことと、
前記システムにアクセス可能なグラフィカルユーザインターフェースにおいて受信された入力に応答して、前記データモデルの第２のテンプレートクラスのためのクラス定義を受信することであって、
前記第２のテンプレートクラスは、有形オブジェクトの第２のセットに対応し、
前記第２のテンプレートクラスは、前記クラス定義内において、前記第１のテンプレートクラスによって定義され、
前記第２のテンプレートクラスは、１つ以上のデータプロパティの第２のセットを有し、
前記プロセッサは、前記１つ以上のデータプロパティの第２のセット内に前記１つ以上のデータプロパティの第１のセットを含むように前記クラス定義を使用する、
ことと、
前記第２のテンプレートクラスを１つ以上の意味論的タグの第２のセットとともに記憶することであって、
前記プロセッサは、前記１つ以上の意味論的タグの第２のセット内に前記１つ以上の意味論的タグの第１のセットを含むように前記クラス定義を使用する、
ことと
を行わせる、システム。
（項目１８）
前記第２のテンプレートクラスは、前記クラス定義が受信された後、前記グラフィカルユーザインターフェースからのいずれの入力もなしに記憶される、項目１７に記載のシステム。
（項目１９）
前記第２のテンプレートクラスは、継承されたオブジェクトクラスであって、前記第２のテンプレートクラスは、前記第１のテンプレートクラスからデータプロパティを継承する、前記項目のいずれかに記載のシステム。
（項目２０）
前記１つ以上のデータプロパティの第１のセットは、前記有形オブジェクトの第１のセットのそれぞれと関連付けられた地理的情報を含む、前記項目のいずれかに記載のシステム。
（項目２１）
前記１つ以上のデータプロパティの第２のセットは、前記有形オブジェクトの第２のセットのそれぞれと関連付けられた地理的情報を含む、前記項目のいずれかに記載のシステム。
（項目２２）
前記意味論的タグは、語彙データベース内にリスト化された１つ以上の単語に関連付けられる、前記項目のいずれかに記載のシステム。
（項目２３）
前記クラス定義は、オブジェクトを作成するための拡張可能テンプレートであり、前記オブジェクトのそれぞれは、前記クラス定義のコンストラクタによって作成され、前記クラスは、前記クラス定義のインスタンスを作成するようにインスタンス化される、前記項目のいずれかに記載のシステム。
（項目２４）
前記グラフィカルユーザインターフェースは、開発作業空間の一部である、前記項目のいずれかに記載のシステム。
【図面の簡単な説明】
【００１１】
添付図面と併せて解釈される以下の説明を参照することによって、本開示の先述および他の目的、側面、特徴、および利点が、より明白となり、より理解されるであろう。
【図１】図１は、意味論的モデル化およびタグ付けを使用して、コンピューティングアプリケーションを管理する、コンピューティングデバイスにおける例示的環境の略図である。
【図２】図２は、例示的コンピューティングデバイスの略図である。
【図３】図３は、意味論的モデル化およびタグ付けを使用して、コンピューティングアプリケーションを管理するための例示的方法のフローチャートである。
【図４】図４は、意味論的タグを使用してコンピューティングアプリケーションを管理するための例示的作業空間の略図である。
【図５】図５は、意味論的タグを使用してコンピューティングアプリケーションを管理するための例示的作業空間の略図である。
【図６】図６は、意味論的タグを使用してデータを管理する例示的方法のフローチャートである。
【図７】図７は、本開示に説明されている技法を実装するために使用されることができる、コンピューティングデバイスおよびモバイルコンピューティングデバイスの例を示す。
【発明を実施するための形態】
【００１２】
（詳細な説明）
意味論的モデル化およびタグ付けを使用してアプリケーションを管理する、コンピューティングデバイスにおけるコンピューティングアプリケーションマネージャを伴う例示的環境が、図１に図示される。本特定の例では、環境は、アプリケーションマネージャコンピューティングデバイス（すなわち、アプリケーションマネージャを実行するコンピューティングデバイス）と、複数のクライアントコンピューティングデバイスと、１つ以上の通信ネットワークによって全てがともに結合されている複数のサーバとを含むが、本環境は、他の構成において、他の数およびタイプのシステム、デバイス、構成要素、および要素を含むことができる。
【００１３】
図１および図２を参照すると、アプリケーションマネージャコンピューティングデバイスは、意味論的モデル化およびタグ付けを使用してアプリケーションを管理することを含む、いくつかの機能を提供するが、他のタイプおよび数の機能を実行する、他のタイプの数のコンピューティングデバイスが、使用されることができる。本特定の例では、アプリケーションマネージャコンピューティングデバイスは、バスまたは他のリンクによってともに結合される、中央処理ユニット（ＣＰＵ）またはプロセッサと、メモリと、入力デバイスと、ディスプレイデバイスと、ネットワークインターフェースとを含むが、他の構成および位置における他の数およびタイプのシステム、デバイス、構成要素、および要素が、使用されることができる。
【００１４】
アプリケーションマネージャコンピューティングデバイス内のプロセッサは、本明細書に一例として説明および図示されるような本技術の１つ以上の側面のために、記憶された命令のプログラムを実行するが、他のタイプおよび数の処理デバイスならびに論理が、使用され得、プロセッサは、他の数およびタイプのプログラムされた命令を実行し得る。
【００１５】
アプリケーションマネージャコンピューティングデバイス内のメモリは、本技術の１つ以上の側面のためにこれらのプログラムされた命令を記憶し、本明細書に説明および図示されるように、これらの命令を実行するように構成されるが、プログラムされた命令の一部または全部は、他の場所における実行のために記憶および実行または構成され得る。システムまたはフロッピー（登録商標）ディスク内のランダムアクセスメモリ（ＲＡＭ）または読取専用メモリ（ＲＯＭ）、ハードディスク、ＣＤ  ＲＯＭ、ＤＶＤ  ＲＯＭ、またはアプリケーションマネージャコンピューティングデバイス内のプロセッサに結合される磁気、光学、または他の読取および書込システムから読み取られ、かつ書き込まれる、他のコンピュータ読み取り可能な媒体等の種々の異なるタイプのメモリ記憶デバイスが、アプリケーションマネージャコンピューティングデバイス内のメモリのために使用されることができる。
【００１６】
アプリケーションマネージャコンピューティングデバイスの入力デバイスは、一例にすぎないが、データを入力し、かつ／またはアプリケーションマネージャコンピューティングデバイスを構成し、プログラムし、かつ／または動作させること等のために、管理者等のユーザが、アプリケーションマネージャコンピューティングデバイスと相互作用することを可能にする。一例にすぎないが、入力デバイスは、タッチスクリーン、キーボード、および／またはコンピュータのうちの１つ以上を含んでもよいが、他のタイプおよび数の入力デバイスが、使用され得る。
【００１７】
アプリケーションマネージャコンピューティングデバイスのディスプレイデバイスは、管理者等のユーザが、一例にすぎないが、データおよび／または他の情報を閲覧することを可能にする。一例にすぎないが、ディスプレイデバイスは、ＣＲＴ、ＬＥＤモニタ、またはＬＣＤモニタのうちの１つ以上を含んでもよいが、他のタイプおよび数のディスプレイデバイスが、使用され得る。
【００１８】
アプリケーションマネージャコンピューティングデバイス内のネットワークインターフェースデバイスは、１つ以上の通信ネットワークを通じて、アプリケーションマネージャコンピューティングデバイスと、複数のクライアントコンピューティングデバイスと、複数のサーバとの間に動作可能に結合し、その間で通信するために使用されるが、他のタイプおよび数の接続および構成を伴う、他のタイプおよび数の通信ネットワークまたはシステムが、使用されることができる。一例にすぎないが、１つ以上の通信ネットワークは、Ｅｔｈｅｒｎｅｔ（登録商標）を通じたＴＣＰ／ＩＰならびにＮＦＳ、ＣＩＦＳ、ＳＯＡＰ、ＸＭＬ、ＬＤＡＰ、およびＳＮＭＰを含む業界標準的プロトコルを使用することができるが、それぞれがその独自の通信プロトコルを有する直接接続、ローカルエリアネットワーク、広域ネットワーク、モデムおよび電話回線、電子メール、および無線通信技術等の他のタイプおよび数の通信ネットワークが、使用されることができる。
【００１９】
本特定の例では、クライアントコンピューティングデバイスおよび複数のサーバはそれぞれ、バスまたは他のリンクによってともに結合される、中央処理ユニット（ＣＰＵ）またはプロセッサと、メモリと、入力／ディスプレイデバイスインターフェースと、ネットワークインターフェースまたはＩ／Ｏシステムとを含むが、他の構成における他の数およびタイプのシステム、デバイス、構成要素、および要素が、使用されることができる。
【００２０】
クライアントコンピューティングデバイスはそれぞれ、アプリケーションマネージャコンピューティングデバイスを利用して、一例にすぎないが、アプリケーション開発のためのテンプレートおよびアーチファクトを識別および取得してもよいが、クライアントコンピューティングデバイスはそれぞれ、他のタイプおよび数の動作および機能を実行してもよく、他のタイプ、数のコンピューティングデバイスが、アプリケーションマネージャコンピューティングデバイスと相互作用するように結合され得る。
【００２１】
サーバはそれぞれ、例えば、ＨＴＴＰベースのアプリケーションＲＦＣプロトコルあるいはＣＩＦＳまたはＮＦＳプロトコルに従って、通信ネットワークを介して、要求側クライアントコンピューティングデバイスから受信された要求を処理してもよい。ＣＩＦＳアプリケーション、ＮＦＳアプリケーション、ＨＴＴＰウェブサーバアプリケーション、および／またはＦＴＰアプリケーション等の種々のネットワーク処理アプリケーションが、サーバ上で動作し、クライアントコンピューティングデバイスからの要求に応答して、データ（例えば、ファイル、ウェブページ）をアプリケーションマネージャコンピューティングデバイスに伝送してもよい。サーバはそれぞれ、クライアントコンピューティングデバイスまたはアプリケーションマネージャコンピューティングデバイスから、サーバ上の個別のアプリケーションに向かってダイレクトされた要求に応答して、データを提供する、またはデータを受信してもよい。サーバはそれぞれ、ハードウェアまたはソフトウェアであってもよく、あるいは内部または外部ネットワークを含み得る、サーバプール内の複数のサーバを伴うシステムを表してもよい。本例では、サーバは、Ｍｉｃｒｏｓｏｆｔ（登録商標）ＩＩＳサーバまたはＡｐａｃｈｅ（登録商標）サーバの任意のバージョンであってもよいが、他のタイプのサーバが、使用されてもよい。
【００２２】
アプリケーションマネージャコンピューティングデバイス、クライアントコンピューティングデバイス、および複数のサーバの例が、本明細書に図示および説明されるが、これらのデバイスおよびシステムはそれぞれ、任意の好適なコンピュータシステムまたはコンピューティングデバイス上に実装されることができる。本明細書に説明される例のデバイスおよびシステムは、例示的目的のためのものであり、当業者によって理解されるように、本例を実装するために使用される特定のハードウェアおよびソフトウェアの多くの変形例が、可能性として考えられることを理解されたい。
【００２３】
さらに、本例のシステムはそれぞれ、本明細書に説明および図示されるように、かつ当業者によって理解されるように、本例の教示に従ってプログラムされる、１つ以上の汎用コンピュータシステム、マイクロプロセッサ、デジタル信号プロセッサ、およびマイクロコントローラを使用して便宜的に実装されてもよい。
【００２４】
加えて、２つ以上のコンピューティングデバイスまたはシステムが、本例の任意の実施形態におけるシステムの任意の１つのために代用されることができる。故に、冗長性およびレプリケーション等の分散型処理の原理および利点もまた、所望に応じて実装され、本例のデバイスおよびシステムのロバスト性および性能を増加させることができる。本例はまた、一例にすぎないが、任意の好適な形態（例えば、音声およびモデム）における電気通信、無線通信媒体、無線通信ネットワーク、セルラー通信ネットワーク、３Ｇ通信ネットワーク、公衆交換電話網（ＰＳＴＮ）、パケットデータネットワーク（ＰＤＮ）、インターネット、イントラネット、およびそれらの組み合わせを含む、任意の好適なインターフェース機構および通信技術を使用して、任意の好適なネットワークを横断して拡張する、コンピュータシステムまたはシステム上に実装されてもよい。
【００２５】
本例はまた、本明細書に説明されるように、本明細書に一例として説明および図示される本技術の１つ以上の側面のために、プロセッサによって実行されると、プロセッサに、本明細書に説明および図示される例の方法を実装するために必要なステップを実施させる、その上に記憶された命令を有する非一過性コンピュータ読み取り可能な媒体として具現化されてもよい。ここで、意味論的モデル化およびタグ付けを使用してアプリケーションを管理するための例示的方法が、図１−３を参照して以下に説明される。
【００２６】
例示的プロセスは、アプリケーションマネージャコンピューティングデバイスが、クライアントコンピューティングデバイスから、モデルのためのテンプレートおよびアーチファクトを開発する要求を受信するステップから開始するが、アプリケーションマネージャコンピューティングデバイスは、任意の他のデバイスから任意の他のタイプまたは要求を受信してもよい。一例にすぎないが、アプリケーションマネージャコンピューティングデバイスは、投資対効果を決定するために地理的地域内における小売店への食品製品の配達を追跡および管理するモデルを開発する要求を受信し、選択される地理的地域は、Ｐｈｉｌａｄｅｌｐｈｉａである。いくつかの実装では、テンプレートが、アセットのクラスを記述するために使用されてもよい。この目的を達成するために、所与の電子デバイスの個々のインスタンスではなく、テンプレートが、タイプを定義する。テンプレートは、代替として、本明細書では、「テンプレートクラス」と称される。
【００２７】
次に、アプリケーションマネージャコンピューティングデバイスは、要求側クライアントコンピューティングデバイスからモデルを開発する要求と関連付けられた情報を受信する。本例では、アプリケーションマネージャコンピューティングデバイスは、本特定の本例では、本領域内の配達トラックの総数、製造プラントの数、および食品製品が小売場所に配達される倉庫の数等の、地理的領域と関連付けられた第１のレベル情報を受信する。加えて、アプリケーションマネージャコンピューティングデバイスはまた、本特定の本例では、各トラックのドライバ情報、各トラックのための積載量、ならびに冷蔵トラックのための温度センサ値および湿度センサ値等の第２のレベル情報を受信する。いくつかの実装では、第１および第２のレベルは、テンプレート内のデータプロパティとして定義されてもよい。
【００２８】
受信された第１のレベルおよび第２のレベル情報を使用して、アプリケーションマネージャコンピューティングデバイスは、要求されるモデルのための複数のテンプレートを定義するが、アプリケーションマネージャコンピューティングデバイスは、要求されるモデルの開発と関連付けられた任意の量の他のタイプのアーチファクトを開発、定義、および／または取得することができる。本例では、アプリケーションマネージャコンピューティングデバイスは、Ｂａｓｅ＿Ｔｒｕｃｋテンプレートをトラックの容量、トラックのドライバ、在庫、および場所等のプロパティとともに定義する。加えて、アプリケーションマネージャコンピューティングデバイスは、Ｒｅｆｒｉｇｅｒａｔｅｄ＿Ｔｒｕｃｋのための別のテンプレートをトラックの容量、トラックのドライバ、在庫、場所、ならびに温度および湿度センサ値を含むプロパティとともに定義する。いくつかの実装では、プロパティは、テキスト記述またはストリングとして、テンプレートクラス内に記憶されてもよい。
【００２９】
複数のテンプレートの定義に応じて、アプリケーションマネージャコンピューティングデバイスは、作成されたテンプレートおよびアーチファクト毎に意味論的タグを定義することによって、テンプレートおよび任意の他の開発されたアーチファクトを編成する。一例にすぎないが、アプリケーションマネージャコンピューティングデバイスは、アプリケーション語彙データベースを使用して、意味論的タグを定義する。アプリケーション語彙は、本例では、意味論的タグを定義するために情報内に定義される用語を使用することに関する。当然ながら、用語は、単語の一部、ワイルドカード、略語、頭字語を含んでもよい。同様に、タグは、動詞時制および他の文法形態を考慮してもよい。さらなる例証の目的のために、本例では、アプリケーションマネージャコンピューティングデバイスは、定義されたテンプレートおよびアーチファクトのそれぞれに対して、Ｔｒｕｃｋ＿ＴｒａｃｋｉｎｇおよびＲｅｇｉｏｎ等のタグを定義する。
【００３０】
加えて、アプリケーションマネージャコンピューティングデバイスがさらに、以前に作成されたテンプレートＢａｓｅ＿Ｔｒｕｃｋから別のテンプレートＤｅｌｉｖｅｒｙ＿Ｔｒｕｃｋを定義する場合、アプリケーションマネージャコンピューティングデバイスは、自動的に、Ｂａｓｅ＿Ｔｒｕｃｋに関連付けられた意味論的タグを含む、テンプレートＢａｓｅ＿Ｔｒｕｃｋ内に定義された全プロパティを最新の作成されたテンプレートＤｅｌｉｖｅｒｙ＿Ｔｒｕｃｋに適用する。いくつかの実装では、所与のテンプレートは、他のテンプレートを継承または含み得るクラスオブジェクトであってもよい。加えて、アプリケーションマネージャコンピューティングデバイスがさらに、Ｂａｓｅ＿ＴｒｕｃｋおよびＲｅｆｒｉｇｅｒａｔｅｄ＿Ｔｒｕｃｋの両方を使用して、（例えば、クラス定義のために）別のテンプレートＲｅｆｒｉｇｅｒａｔｅｄ＿Ｄｅｌｉｖｅｒｙ＿Ｔｒｕｃｋを定義する場合、アプリケーションマネージャコンピューティングデバイスは、自動的に、Ｂａｓｅ＿ＴｒｕｃｋおよびＲｅｆｒｉｇｅｒａｔｅｄ＿Ｔｒｕｃｋ内に定義された全プロパティを最新の作成されたテンプレートＲｅｆｒｉｇｅｒａｔｅｄ＿Ｄｅｌｉｖｅｒｙ＿Ｔｒｕｃｋに適用し、Ｂａｓｅ＿ＴｒｕｃｋおよびＲｅｆｒｉｇｅｒａｔｅｄ＿Ｔｒｕｃｋの両方と関連付けられたタグを最新の作成されたテンプレートＲｅｆｒｉｇｅｒａｔｅｄ＿Ｄｅｌｉｖｅｒｙ＿Ｔｒｕｃｋに割り当てる。
【００３１】
さらに、アプリケーションマネージャコンピューティングデバイスは、タグ付けされたテンプレートおよびアーチファクトのそれぞれをアプリケーションマネージャコンピューティングデバイスのメモリ内に記憶するが、アプリケーションマネージャコンピューティングデバイスは、テンプレートおよびアーチファクトを他の位置に記憶することもできる。
【００３２】
テンプレートアーチファクトが、ソリューションの要件を満たすように定義されると、テンプレートの特定のインスタンスが、作成される。本例では、Ｐｈｉｌａｄｅｌｐｈｉａ領域内の各特定の配達トラックは、以前に定義されたテンプレートのうちの１つからインスタンス化され、アプリケーションマネージャコンピューティングデバイスは、自動的に、そのインスタンスのために定義されたテンプレート内に定義された全プロパティおよび特性を適用する。モデル内に特定のインスタンスを記述する意味論的タグもまた、適用される。
【００３３】
次に、アプリケーションマネージャコンピューティングデバイスは、通知を要求側クライアントコンピューティングデバイスに送信し、テンプレートおよびアーチファクトの定義および編成の完了を要求側クライアントコンピューティングデバイスに示す。
【００３４】
アプリケーションマネージャコンピューティングデバイスが、要求されるモデルと関連付けられた全ての定義されたテンプレートおよびアーチファクトを提供する別の要求を要求側クライアントコンピューティングデバイスから受信すると、アプリケーションマネージャコンピューティングデバイスは、編成されたテンプレートおよびアーチファクトのグラフィカル表現を要求側クライアントコンピューティングデバイスに提供するが、アプリケーションマネージャコンピューティングデバイスは、テンプレートおよびアーチファクトを任意の他のフォーマットで提供することができる。アプリケーションマネージャコンピューティングデバイスによって提供されるグラフィカル表現は、テンプレートおよびアーチファクトのそれぞれをその関連付けられたタグとともに含む。本例では、テンプレートＢａｓｅ＿ＴｒｕｃｋおよびＲｅｆｒｉｇｅｒａｔｅｄ＿Ｔｒｕｃｋは、タグＴｒｕｃｋ＿ＴｒａｃｋｉｎｇおよびＲｅｇｉｏｎ−Ｐｈｉｌｌｙとともに図式的に表される。加えて、グラフィカル表現は、テンプレートおよびアーチファクトのそれぞれ間の相互接続を含み、故に、本例では、グラフィカル表現は、Ｄｅｌｉｖｅｒｙ＿ＴｒｕｃｋテンプレートがＢａｓｅ＿Ｔｒｕｃｋテンプレートから継承され、Ｒｅｆｒｉｇｅｒａｔｅｄ＿Ｄｅｌｉｖｅｒｙ＿ＴｒｕｃｋテンプレートがＢａｓｅ＿ＴｒｕｃｋおよびＲｅｆｒｉｇｅｒａｔｅｄ＿Ｔｒｕｃｋテンプレートから継承されたことを示す。
【００３５】
図４は、図１−３に関連して説明されるように、テンプレートおよびアーチファクトを管理するための例示的グラフィカル作業空間を示す。論じられるように、テンプレートは、もののインスタンスではなく、もののタイプを定義してもよい。また、論じられるように、これらのものは、有形オブジェクト（トラック等）であってもよい。いくつかの実装では、テンプレートは、トラックを構成するものを決定または定義する共通情報を含んでもよい。この目的を達成するために、アセットのクラスは、概して、データモデルおよび情報モデルによって定義されるような説明の定義の共通セットを有する複数のトラックを指す。
【００３６】
いくつかの実装では、アセットのクラスは、「Ｔｈｉｎｇ」と称されてもよい。「Ｔｈｉｎｇ」は、「Ｔｈｉｎｇ  Ｔｅｍｐｌａｔｅ」のインスタンスとして定義されてもよい。「Ｔｈｉｎｇ  Ｔｅｍｐｌａｔｅ」は、「Ｔｈｉｎｇ  Ｔｅｍｐｌａｔｅ」、および「Ｔｈｉｎｇ  ｉｎｓｔａｎｃｅ」のプロパティ、サービス、およびイベントのセットによって定義される１つ以上の「Ｔｈｉｎｇ  Ｓｈａｐｅｓ」から継承し得る抽象クラスであってもよい。この目的を達成するために、「Ｔｈｉｎｇ  Ｔｅｍｐｌａｔｅ」が、１つ以上の「Ｔｈｉｎｇ  Ｓｈａｐｅｓ」から継承する場合、「Ｔｈｉｎｇ  Ｓｈａｐｅｓ」の全プロパティ、イベント、およびサービスは、「Ｔｈｉｎｇ  Ｔｅｍｐｌａｔｅ」の一部である。「Ｔｈｉｎｇ  ｉｎｓｔａｎｃｅ」が、「Ｔｈｉｎｇ  Ｔｅｍｐｌａｔｅ」から作成されるとき、「Ｔｈｉｎｇ  Ｔｅｍｐｌａｔｅ」の全プロパティ、イベント、およびサービスが、「Ｔｈｉｎｇ  ｉｎｓｔａｎｃｅ」内で実現される。したがって、新しいサービス、プロパティ、または能力が、「Ｔｈｉｎｇ  Ｓｈａｐｅ」または「Ｔｈｉｎｇ  Ｔｅｍｐｌａｔｅ」レベルで定義される場合、それらのエンティティから導出された各「Ｔｈｉｎｇ」インスタンスは、そのサービス、プロパティ、または能力を直接継承する。この目的を達成するために、新しい「Ｔｈｉｎｇ」が、モデル内で定義されるとすぐに、その「Ｔｈｉｎｇ」のためのサービスおよびデータのフルセットが、クラスとして利用可能となる。
【００３７】
いくつかの実装では、テンプレートは、所与のデータベース内に記憶されたデータを有する工業団地における一式の機械類、所与のデータベース内に記憶されたデータを有する事業所または官公庁における一式のコンピュータまたはオフィス機器、所与のデータベース内に記憶されたデータを有する市場または自動販売機における一式の店頭機械、所与のデータベース内に記憶されたデータを有する一式の建築機器または車両、所与のデータベース内に記憶されたデータを有する一式の発電または配電機器、所与のデータベース内に記憶されたデータを有する一式の変電所または送電機器、所与のデータベース内に記憶されたデータを有する一式の建物計器、所与のデータベース内に記憶された動作データを有する全てのサーバ、所与のデータベース内に記憶されたデータを有する一式のネットワーキングまたはルーティング機器、所与のデータベース内に記憶されたデータを有する一式のスマートアプライアンス、所与のデータベース内に記憶されたデータを有する一式の運動機械、所与のデータベース内に記憶されたデータを有する一式の医療デバイスまたはプロテーゼデバイス、所与のデータベース内に記憶されたデータを有する一式の医療診断デバイスまたは病院機器、所与のデータベース内に記憶されたデータを有する一式の商業用車両または輸送コンテナ、所与のデータベース内に記憶されたデータを有する一式の自動車または電動自転車、所与のデータベース内に記憶されたデータを有する一式の携帯電話、所与のデータベース内に記憶されたデータを有する一式のラップトップ、所与のデータベース内に記憶されたデータを有する一式のタブレット、所与のデータベース内に記憶されたデータを有する一式の電子リーダ、または、所与のデータベース内に記憶されたデータを有する一式の衣料用電子タグを含み得るアセットのクラスのためのものであってもよい。図４に戻って参照すると、作業空間は、種々のタイプのアセットおよびアセットのクラスを含む。これらのアセットおよびアセットのクラスは、センサ、セキュリティ機器、自動販売機４２、医療機器、車両（例えば、図１−３に関連して説明されるように）、プラント機器、採掘機器、および工場機械類を含む。センサ機器は、例えば、「ＡＢ  Ｔｅｓｔ  Ｒｅｍｏｔｅ  Ｔｕｎｎｅｌｉｎｇ  Ｔｈｉｎｇ」として示される。セキュリティ機器は、「Ｓｅｃｕｒｉｔｙ  Ｍｏｎｉｔｏｒ」として示される。自動販売機は、「ＶＭ−００７  Ｇｅｎｅｒｉｃ  Ｔｈｉｎｇ」として示される。医療機器は、「ＣＴ−２」として示される。車両のクラスは、「Ｖｅｈｉｃｌｅ４２」として示される。プラント機器は、「Ｐ１  Ｌ２  Ｋｅｔｔｌｅ」として示される（所与のプラント１のライン２上のケトル機械を指す）。採掘機器は、「Ｓｔａｔｉｏｎ  ３  ＬＯＣ１」として示される。工場機器は、「Ｐｌａｎｔ５」として示される（Ｙｅｎｇｃｈａｎｇ（中国）における工場を指す）。
【００３８】
図５は、意味論的タグを使用してコンピューティングアプリケーションを管理するための例示的作業空間の略図である。図５に示されるように、テンプレートによって作成されたクラスのインスタンス（例えば、「Ｐ１＿Ｌ２＿Ｋｅｔｔｌｅ」）を割り当てるとき、インスタンスは、意味論的タグを割り当てられてもよい。意味論的タグは、製造されるケトル等のために、「ｋｅｔｔｌｅｍｆｇ」として示される略語を含んでもよい。タグは、検索されて、追加されてもよく、または、作業空間を通してエンドユーザによって追加されてもよい。
【００３９】
アプリケーションマネージャコンピューティングデバイスはまた、タグを使用して、付加的情報を検索するための選択肢を要求側クライアントコンピューティングデバイスに提供してもよい。本特定の例では、アプリケーションマネージャコンピューティングデバイスは、タグＴｒｕｃｋ＿Ｔｒａｃｋｉｎｇを用いて、全アーチファクトおよびテンプレートを検索する選択肢を提供し得る。クライアントコンピューティングデバイスからの検索の確認を受信すると、アプリケーションマネージャコンピューティングデバイスは、メモリおよびサーバ内に存在するＴｒｕｃｋ＿Ｔｒａｃｋｉｎｇとしてタグ付けされた全テンプレートおよびアーチファクトを検索し、検索された結果を要求側クライアントコンピューティングデバイスに提供する。加えて、アプリケーションマネージャコンピューティングデバイスは、要求側クライアントコンピューティングデバイスが、検索結果のいずれかを選択し、選択検索結果を修正し、最後に、修正されたコンテンツを記憶することを補助する。
【００４０】
アプリケーションマネージャコンピューティングデバイスはまた、タグを使用して、付加的情報を検索し、関連コンテンツアーチファクトをあるシステムから別のシステムにトランスポートするための選択肢を要求側クライアントコンピューティングデバイスに提供してもよい。典型的例は、開発システムから試験システム、最後に、以前に定義された意味論的タグを使用する生産システムに、新しいコンピューティングアプリケーションのためのコンテンツアーチファクトを移動させることである。
【００４１】
テンプレートおよびアーチファクトのグラフィカル表現を提供することによって、開示される技術は、クライアントコンピューティングデバイスのユーザが、作成されたモデルを迅速かつ効果的に理解することを補助する利点を提供する。加えて、タグを使用して、テンプレートおよびアーチファクトを編成することによって、クライアントコンピューティングデバイスのユーザは、タグを使用して、任意の付加的情報を迅速に検索することができる。さらに、作成されたアーチファクトおよびテンプレートを編成することによって、要求側クライアントコンピューティングデバイスの任意の新しいユーザまたはデベロッパは、テンプレートおよびアーチファクトのそれぞれを手動で検索して、それらの間の接続を理解しようと試みることなく、モデルを迅速に理解することができる。
【００４２】
図６は、意味論的タグを使用してデータを管理する例示的方法のフローチャートである。本方法は、コンピューティングデバイスのプロセッサによって、有形オブジェクトの第１のセットに対応するデータモデルを提供することを含んでもよく、データモデルは、有形オブジェクトの第１のセットと関連付けられた１つ以上のデータプロパティの第１のセットを有する第１のテンプレートクラスを含む（ステップ６０２）。第１のテンプレートクラスは、１つ以上の意味論的タグの第１のセットにタグ付けされてもよく、意味論的タグの第１のセットは、第１のテンプレートクラスのデータプロパティの第１のセットに対応する。意味論的タグは、グラフィカルユーザインターフェースにアクセス可能な語彙データベース内にリスト化された１つ以上の単語に関連付けられてもよい。グラフィカルユーザインターフェースは、開発作業空間の一部であってもよい。
【００４３】
いくつかの実装では、本方法は、プロセッサによって、コンピューティングデバイスにアクセス可能なグラフィカルユーザインターフェースにおいて受信された入力に応答して、データモデルのための第２のテンプレートクラスのためのクラス定義を受信することを含む（ステップ６０４）。第２のテンプレートクラスは、有形オブジェクトの第２のセットに対応してもよい。第２のテンプレートクラスは、クラス定義内に、第１のテンプレートクラスによって定義されてもよい。第２のテンプレートクラスは、１つ以上のデータプロパティの第２のセットを有してもよく、プロセッサは、第２のデータプロパティのセット内にデータプロパティの第１のセットを含むようにクラス定義を使用する。第２のテンプレートクラスは、クラス定義が受信された後、グラフィカルユーザインターフェースから任意の入力を伴わずに、記憶されてもよい。第２のテンプレートクラスは、継承されたオブジェクトクラスであってもよく、第２のテンプレートクラスは、第１のテンプレートクラスからデータプロパティを継承する。いくつかの実装では、第１のテンプレートクラスは、第２のテンプレートクラスの（オブジェクト指向プログラミングのコンテキスト内で採用されるような）継承であってもよい。データプロパティの第１のセットおよび第２のセットは、有形オブジェクトの個別のセットのそれぞれと関連付けられた地理的情報を含んでもよい。クラス定義は、オブジェクトを作成するための拡張可能テンプレートであってもよく、オブジェクトはそれぞれ、クラス定義のコンストラクタによって作成され、クラスは、インスタンス化され、クラス定義のインスタンスを作成する。
【００４４】
いくつかの実装では、本方法は、プロセッサによって、第２のテンプレートクラスを１つ以上の意味論的タグの第２のセットとともに記憶することを含み、プロセッサは、意味論的タグの第２のセット内に意味論的タグの第１のセットを含むようにクラス定義を使用する（ステップ６０６）。いくつかの実装では、第２のテンプレートクラスは、第１のテンプレートクラスから意味論的タグを継承してもよい。いくつかの実装では、第２のテンプレートクラスは、意味論的タグを複製してもよい。
【００４５】
図７は、本開示で説明される技法を実装するために使用されることができる、コンピューティングデバイス７００およびモバイルコンピューティングデバイス７６０の例を示す。コンピューティングデバイス７００は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータ等の種々の形態のデジタルコンピュータを表すことを目的としている。モバイルコンピューティングデバイス７６０は、携帯情報端末、携帯電話、スマートフォン、および他の類似コンピューティングデバイス等の種々の形態のモバイルデバイスを表すことを目的としている。ここで示される構成要素、それらの接続および関係、ならびにそれらの機能は、例であるように意図されているにすぎず、限定的となるように意図されていない。
【００４６】
コンピューティングデバイス７００は、プロセッサ７０２と、メモリ７０４と、記憶デバイス７０６と、メモリ７０４および複数の高速拡張ポート７１０に接続する高速インターフェース７０８と、低速拡張ポート７１４および記憶デバイス７０６に接続する低速インターフェース７１２とを含む。プロセッサ７０２、メモリ７０４、記憶デバイス７０６、高速インターフェース７０６、高速拡張ポート７１０、および低速インターフェース７１２はそれぞれ、種々のバスを使用して相互接続され、共通マザーボード上に、または適宜に他の様式で搭載されてもよい。プロセッサ７０２は、高速インターフェース７０８に結合されたディスプレイ７１６等の外部入力／出力デバイス上のＧＵＩのためにグラフィカル情報を表示するために、メモリ７０４の中に、または記憶デバイス７０６上に記憶された命令を含む、コンピューティングデバイス７００内で実行するための命令を処理することができる。他の実装では、複数のメモリおよびメモリのタイプとともに、複数のプロセッサおよび／または複数のバスが適宜使用されてもよい。また、複数のコンピューティングデバイスが接続されてもよく、各デバイスは、（例えば、サーババンク、ブレードサーバ群、またはマルチプロセッサシステムとして）必要な動作の部分を提供する。
【００４７】
メモリ７０４は、コンピューティングデバイス７００内に情報を記憶する。いくつかの実装では、メモリ７０４は、１つまたは複数の揮発性メモリユニットである。いくつかの実装では、メモリ７０４は、１つまたは複数の不揮発性メモリユニットである。メモリ７０４はまた、磁気または光ディスク等の別の形態のコンピュータ読み取り可能な媒体であってもよい。
【００４８】
記憶デバイス７０６は、コンピューティングデバイス７００用の大容量記憶装置を提供することが可能である。いくつかの実装では、記憶デバイス７０６は、フロッピー（登録商標）ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリまたは他の類似ソリッドステートメモリデバイス、または記憶領域ネットワークあるいは他の構成におけるデバイスを含むデバイスのアレイ等のコンピュータ読み取り可能な媒体であってもよいか、またはそれを含んでもよい。命令を情報キャリアに記憶することができる。命令は、１つ以上の処理デバイス（例えば、プロセッサ７０２）によって実行されたとき、上記で説明されるもの等の１つ以上の方法を行ってもよい。命令はまた、コンピュータまたは機械読み取り可能な媒体（例えば、メモリ７０４、記憶デバイス７０６、またはプロセッサ７０２上のメモリ）等の１つ以上の記憶デバイスによって記憶され得る。
【００４９】
高速インターフェース７０６が、コンピューティングデバイス７００の帯域幅集中動作を管理する一方で、低速インターフェース７１２は、より少ない帯域幅集中動作を管理する。そのような機能の割付は、例にすぎない。いくつかの実装では、高速インターフェース７０６は、メモリ７０４、（例えば、グラフィックスプロセッサまたはアクセラレータを通して）ディスプレイ７１６、および種々の拡張カード（図示せず）を受け入れ得る高速拡張ポート７１０に結合される。本実装では、低速インターフェース７１２は、記憶デバイス７０６および低速拡張ポート７１４に結合される。種々の通信ポート（例えば、ＵＳＢ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｅｔｈｅｒｎｅｔ（登録商標）、無線Ｅｔｈｅｒｎｅｔ（登録商標））を含み得る低速拡張ポート７１４は、キーボード、ポインティングデバイス、スキャナ、または、例えば、ネットワークアダプタを通して、スイッチまたはルータ等のネットワーキングデバイス等の１つ以上の入出力デバイスに結合されてもよい。
【００５０】
コンピューティングデバイス７００は、図に示されるように、いくつかの異なる形態で実装されてもよい。例えば、標準サーバ７２０として、またはそのようなサーバ群の中で複数回実装されてもよい。加えて、それは、ラップトップコンピュータ７２２等のパーソナルコンピュータで実装されてもよい。それはまた、ラックサーバシステム７２４の一部として実装されてもよい。代替として、コンピューティングデバイス７００からの構成要素は、モバイルコンピューティングデバイス７６０等のモバイルデバイス（図示せず）の中の他の構成要素と組み合わせられてもよい。そのようなデバイスのそれぞれは、コンピューティングデバイス７００およびモバイルコンピューティングデバイス７６０のうちの１つ以上を含有んでもよく、システム全体が、相互と通信する複数のコンピューティングデバイスで構成されてもよい。
【００５１】
モバイルコンピューティングデバイス７６０は、いくつかある構成要素の中でも特に、プロセッサ７６２と、メモリ７６４と、ディスプレイ７６４等の入力／出力デバイスと、通信インターフェース７６６と、トランシーバ７６８とを含む。モバイルコンピューティングデバイス７６０はまた、付加的な記憶装置を提供するように、マイクロドライブまたは他のデバイス等の記憶デバイスを提供されてもよい。プロセッサ７６２、メモリ７６４、ディスプレイ７６４、通信インターフェース７６６、およびトランシーバ７６８のそれぞれは、種々のバスを使用して相互接続され、構成要素のうちのいくつかは、共通マザーボード上に、または適宜他の様式で搭載されてもよい。
【００５２】
プロセッサ７６２は、メモリ７６４に記憶された命令を含む命令をモバイルコンピューティングデバイス７６０内で実行することができる。プロセッサ７６２は、別個かつ複数のアナログおよびデジタルプロセッサを含む、チップのチップセットとして実装されてもよい。プロセッサ７６２は、例えば、ユーザインターフェースの制御、モバイルコンピューティングデバイス７６０によって実行されるコンピューティングアプリケーション、およびモバイルコンピューティングデバイス７６０による無線通信等のモバイルコンピューティングデバイス７６０の他の構成要素の協調を提供してもよい。
【００５３】
プロセッサ７６２は、制御インターフェース７６８およびディスプレイ７６４に結合されたディスプレイインターフェース７６６を通して、ユーザと通信してもよい。ディスプレイ７６４は、例えば、ＴＦＴ（薄膜トランジスタ液晶ディスプレイ）ディスプレイ、またはＯＬＥＤ（有機発光ダイオード）ディスプレイ、あるいは他の適切なディスプレイ技術であってもよい。ディスプレイインターフェース７６６は、グラフィカルおよび他の情報をユーザに提示するようにディスプレイ７６４を駆動するための適切な回路を備えてもよい。制御インターフェース７６８は、ユーザからコマンドを受信し、それらをプロセッサ７６２に提出するために変換してもよい。加えて、外部インターフェース７６２が、他のデバイスとのモバイルコンピューティングデバイス７６０の近距離通信を可能にするよう、プロセッサ７６２との通信を提供してもよい。外部インターフェース７６２は、例えば、いくつかの実装では有線通信、または他の実装では無線通信を提供してもよく、複数のインターフェースも使用されてもよい。
【００５４】
メモリ７６４は、モバイルコンピューティングデバイス７６０内に情報を記憶する。メモリ７６４は、１つまたは複数のコンピュータ読み取り可能な媒体、１つまたは複数の揮発性メモリユニット、あるいは１つまたは複数の不揮発性メモリユニットのうちの１つ以上として実装され得る。拡張メモリ７７４もまた、提供され、例えば、ＳＩＭＭ（シングルインラインメモリモジュール）カードインターフェースを含み得る、拡張インターフェース７７２を通してモバイルコンピューティングデバイス７６０に接続されてもよい。拡張メモリ７７４は、モバイルコンピューティングデバイス７６０のために余分な記憶空間を提供してもよく、またはモバイルコンピューティングデバイス７６０のためのコンピューティングアプリケーションまたは他の情報も記憶してもよい。具体的には、拡張メモリ７７４は、上記で説明されるプロセスを実行または補完する命令を含んでもよく、かつ安全な情報も含んでもよい。したがって、例えば、拡張メモリ７７４は、モバイルコンピューティングデバイス７６０用のセキュリティモジュールとして提供されてもよく、かつモバイルコンピューティングデバイス７６０の安全な使用を可能にする命令でプログラムされてもよい。加えて、ハッキング不可能な様式でＳＩＭＭカード上に識別情報を置くことのように、付加的な情報とともに、安全なコンピューティングアプリケーションがＳＩＭＭカードを介して提供されてもよい。
【００５５】
メモリは、例えば、以下で議論されるようなフラッシュメモリおよび／またはＮＶＲＡＭメモリ（不揮発性ランダムアクセスメモリ）を含んでもよい。いくつかの実装では、命令は、情報キャリアに記憶され、命令は、１つ以上の処理デバイス（例えば、プロセッサ７６２）によって実行されたとき、上記で説明されるもの等の１つ以上の方法を行う。命令はまた、１つ以上のコンピュータまたは機械読み取り可能な媒体（例えば、メモリ７６４、拡張メモリ７７４、またはプロセッサ７６２上のメモリ）等の１つ以上の記憶デバイスによって記憶されてもよい。いくつかの実装では、命令は、例えば、トランシーバ７６８または外部インターフェース７６２を経由して、伝搬信号において受信され得る。
【００５６】
モバイルコンピューティングデバイス７６０は、必要な場合にデジタル信号処理回路を含み得る通信インターフェース７６６を通して無線で通信してもよい。通信インターフェース７６６は、とりわけ、ＧＳＭ（登録商標）音声電話（グローバルシステムフォーモバイルコミュニケーションズ）、ＳＭＳ（ショートメッセージサービス）、ＥＭＳ（拡張メッセージングサービス）、またはＭＭＳメッセージング（マルチメディアメッセージングサービス）、ＣＤＭＡ（符号分割多重アクセス）、ＴＤＭＡ（時分割多重アクセス）、ＰＤＣ（パーソナルデジタルセルラー）、ＷＣＤＭＡ（登録商標）（広帯域符号分割多重アクセス）、ＣＤＭＡ２０００、またはＧＰＲＳ（汎用パケット無線サービス）等の種々のモードまたはプロトコルの下で通信を提供してもよい。そのような通信は、例えば、無線周波数を使用して、トランシーバ７６８を通して起こってもよい。加えて、短距離通信が、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−ＦｉＴＭ、または他のトランシーバ（図示せず）を使用して、起こってもよい。加えて、ＧＰＳ（全地球測位システム）受信器モジュール７７０が、モバイルコンピューティングデバイス７６０上で作動するコンピューティングアプリケーションによって適宜使用され得る、付加的なナビゲーションおよび位置関連無線データをモバイルコンピューティングデバイス７６０に提供してもよい。
【００５７】
モバイルコンピューティングデバイス７６０はまた、ユーザから口頭の情報を受信し、それを使用可能なデジタル情報に変換し得る、音声コーデック７６０を使用して、可聴式に通信してもよい。音声コーデック７６０は、同様に、例えば、モバイルコンピューティングデバイス７６０のハンドセットの中で、スピーカ等を通してユーザのための可聴音を生成してもよい。そのような音は、音声電話からの音を含んでもよく、録音された音（例えば、音声メッセージ、音楽ファイル等）を含んでもよく、また、モバイルコンピューティングデバイス７６０上で動作するコピュータアプリケーションによって生成される音を含んでもよい。
【００５８】
モバイルコンピューティングデバイス７６０は、図に示されるように、いくつかの異なる形態で実装されてもよい。例えば、それは、携帯電話７８０として実装されてもよい。それはまた、スマートフォン５８２、携帯情報端末、または他の類似モバイルデバイスの一部として実装されてもよい。
【００５９】
本明細書で説明されるシステムおよび技法の種々の実装は、デジタル電子回路、集積回路、特別に設計されたＡＳＩＣ（特定用途向け集積回路）、コンピュータハードウェア、ファームウェア、ソフトウェア、および／またはそれらの組み合わせで実現され得る。これらの種々の実装は、少なくとも１つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および／または解釈可能である１つ以上のコンピュータプログラムでの実装を含むことができ、少なくとも１つのプログラマブルプロセッサは、専用または汎用であり、記憶システム、少なくとも１つの入力デバイス、および少なくとも１つの出力デバイスからデータおよび命令を受信し、かつそこへデータおよび命令を伝送するように結合され得る。
【００６０】
これらのコンピュータプログラム（プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られている）は、プログラマブルプロセッサのための機械命令を含み、高次プロシージャおよび／またはオブジェクト指向プログラミング言語で、および／またはアセンブリ／機械言語で実装され得る。本明細書で使用される場合、機械読み取り可能な媒体およびコンピュータ読み取り可能な媒体という用語は、機械読み取り可能な信号として機械命令を受信する機械読み取り可能な媒体を含むプログラマブルプロセッサに機械命令および／またはデータを提供するために使用される、任意のコンピュータプログラム製品、装置、および／またはデバイス（例えば、磁気ディスク、光ディスク、メモリ、プログラマブル論理デバイス（ＰＬＤ））を指す。機械読み取り可能な信号という用語は、機械命令および／またはデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
【００６１】
ユーザとの相互作用を提供するために、本明細書で説明されるシステムおよび技法は、ユーザに情報を表示するための表示デバイス（例えば、ＣＲＴ（陰極線管）またはＬＣＤ（液晶ディスプレイ）モニタ）と、ユーザが入力をコンピュータに提供することができるキーボードおよびポインティングデバイス（例えば、マウスまたはトラックボール）とを有するコンピュータ上で実装され得る。他の種類のデバイスも、ユーザとの相互作用を提供するために使用されることができ、例えば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック（例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバック）であり得、ユーザからの入力は、音響、発話、または触覚入力を含む、任意の形態で受信され得る。
【００６２】
本明細書で説明されるシステムおよび技法は、（例えば、データサーバとしての）バックエンド構成要素を含む、またはミドルウェア構成要素（例えば、アプリケーションサーバ）を含む、またはフロントエンド構成要素（例えば、グラフィカルユーザインターフェースを有するクライアントコンピュータ、またはユーザが本明細書で説明されるシステムおよび技法の実装と相互作用することができるウェブブラウザ）を含む、あるいはそのようなバックエンド、ミドルウェア、またはフロントエンド構成要素の任意の組み合わせを含む、コンピューティングシステムで実装され得る。本システムの構成要素は、任意の形態または媒体のデジタルデータ通信（例えば、通信ネットワーク）によって相互接続され得る。通信ネットワークの例は、ローカルエリアネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、およびインターネットを含む。
【００６３】
コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントおよびサーバは、概して、相互から遠隔にあり、典型的には、通信ネットワークを通して相互作用する。クライアントおよびサーバの関係は、それぞれのコンピュータ上で作動し、相互にクライアント・サーバ関係を有する、コンピュータプログラムによって生じる。
【００６４】
本明細書で説明されるシステムおよび方法の機能および装置を考慮して、いくつかの実装では、意味論的モデル化およびタグ付けを使用して、データを管理するための方法およびシステムが提供される。取引承認決定をサポートするための方法および装置の特定の実装が説明されたが、本開示の概念を組み込む他の実装が使用されてもよいことが、当業者に明白となるであろう。したがって、本開示は、特定の実装に限定されるべきではないが、むしろ以下の特許請求の範囲の精神および範囲によってのみ限定されるべきである。
【００６５】
このように、本発明の基本概念が説明されたが、前述の詳細な開示は、一例のみとして提示され、限定ではないことが意図されることが、当業者に明白となるであろう。種々の変更、改良、および修正が、当業者に想起および意図されるが、本明細書に明示的に記載されない。これらの変更、改良、および修正は、本明細書によって示唆されることが意図され、本発明の精神および範囲内である。加えて、処理要素またはシーケンス、あるいは番号、文字、または他の指定の使用の列挙される順序は、したがって、特許請求の範囲に規定され得ない限り、請求されるプロセスを任意の順序に限定することを意図するものではない。故に、本発明は、以下の特許請求の範囲およびその均等物によってのみ限定される。
【図１】
0006285010.tif 000002
【図２】
0006285010.tif 000003
【図３】
0006285010.tif 000004
【図４】
0006285010.tif 000005
【図５】
0006285010.tif 000006
【図６】
0006285010.tif 000007
【図７】
0006285010.tif 000008