(57)【要約】Ｍ２Ｍ／ＩｏＴシステムにおいてセマンティックフレームワーク内でセマンティック推論サービスを有効にすることは、１）推論プロセスの機能コンポーネントおよびフローをハイライトする、セマンティック推論プロセッサの全体的アーキテクチャと、２）異なるシナリオのためのＭ２Ｍ／ＩｏＴシステムにおける推論ルール管理のための定義されたプロシージャと、３）オンデマンドで、かつ先を見越した様式で、セマンティッククエリおよびセマンティックアノテーションプロセスによってトリガされ得る、Ｍ２Ｍ／ＩｏＴシステムにおいてセマンティック推論プロセスをトリガおよび実施するためのプロシージャと、４）生成された情報を記述するためのより多くのセマンティック情報を生成することを含み得るセマンティック推論プロセスを通して生成された新しい情報を取り扱い、処理する方法とを含む。
2019527394.tif 000002
【特許請求の範囲】
【請求項１】
装置であって、前記装置は、
プロセッサと、
前記プロセッサに結合されているメモリと
を備え、
前記メモリは、その上に記憶された実行可能命令を備え、前記命令は、前記プロセッサによって実行されると、
第１のオントロジーおよび第２のオントロジーに関連付けられたセマンティック推論ルールを作成するための要求を受信することと、
前記第１のオントロジーおよび前記第２のオントロジーに関連付けられた前記セマンティック推論ルールを作成するための前記要求を検証することと、
前記第１のオントロジーおよび前記第２のオントロジーに関連付けられた前記セマンティック推論ルールを作成するための前記要求を検証することに基づいて、前記セマンティック推論ルールを作成するための命令を提供することと、
前記セマンティック推論ルールを作成するための前記要求に基づいて、前記第１のオントロジーおよび前記第２のオントロジーに関連付けられた前記セマンティック推論ルールへの参照を受信することと
を含む動作を前記プロセッサに実施させる、装置。
【請求項２】
前記セマンティック推論ルールを作成するための前記要求は、前記セマンティック推論ルールタイプを含む、請求項１に記載の装置。
【請求項３】
前記セマンティック推論ルールを作成するための前記要求は、前記第１のオントロジーまたは前記第２のオントロジーへの参照を含む、請求項１〜２のうちのいずれか１項に記載の装置。
【請求項４】
前記セマンティック推論ルールを作成するための前記要求は、セマンティックアノテーションを検出することに基づく、請求項１〜３のうちのいずれか１項に記載の装置。
【請求項５】
前記セマンティック推論ルールを作成するための前記要求は、前記セマンティック推論ルールのフォーマットを含む、請求項１〜４のうちのいずれか１項に記載の装置。
【請求項６】
前記セマンティック推論ルールを作成するための前記要求は、前記セマンティック推論ルールを記憶するための場所を含む、請求項１〜５のうちのいずれか１項に記載の装置。
【請求項７】
前記セマンティック推論ルールを作成するための前記要求は、前記第１のオントロジーまたは前記第２のオントロジーへの参照を含み、前記参照は、ユニフォームリソース識別子を含む、請求項１〜６のうちのいずれか１項に記載の装置。
【請求項８】
方法であって、前記方法は、
第１のオントロジーおよび第２のオントロジーに関連付けられたセマンティック推論ルールを作成するための要求を受信することと、
前記第１のオントロジーおよび前記第２のオントロジーに関連付けられた前記セマンティック推論ルールを作成するための前記要求を検証することと、
前記第１のオントロジーおよび前記第２のオントロジーに関連付けられた前記セマンティック推論ルールを作成するための前記要求を検証することに基づいて、前記セマンティック推論ルールを作成するための命令を提供することと、
前記セマンティック推論ルールを作成するための前記要求に基づいて、前記第１のオントロジーおよび前記第２のオントロジーに関連付けられた前記セマンティック推論ルールへの参照を受信することと
を含む、方法。
【請求項９】
前記セマンティック推論ルールを作成するための前記要求は、前記セマンティック推論ルールタイプを含む、請求項８に記載の方法。
【請求項１０】
前記セマンティック推論ルールを作成するための前記要求は、前記第１のオントロジーまたは前記第２のオントロジーへの参照を含む、請求項８または９に記載の方法。
【請求項１１】
前記セマンティック推論ルールを作成するための前記要求は、セマンティックアノテーションを検出することに基づく、請求項８、９、または１０に記載の方法。
【請求項１２】
前記第１のオントロジーの更新に基づいて、前記セマンティック推論ルールを削除することをさらに含む、請求項８、９、１０、または１１に記載の方法。
【請求項１３】
前記セマンティック推論ルールを作成するための前記要求は、前記セマンティック推論ルールを記憶するための場所を含む、請求項８、９、１０、１１、または１２に記載の方法。
【請求項１４】
前記セマンティック推論ルールを作成するための前記要求は、前記第１のオントロジーまたは前記第２のオントロジーへの参照を含み、前記参照は、ユニフォームリソース識別子を含む、請求項８、９、１０、１１、１２、または１３に記載の方法。
【請求項１５】
コンピュータプログラムを記憶しているコンピュータ読み取り可能な記憶媒体であって、前記コンピュータプログラムは、データ処理ユニットの中にロード可能であり、前記コンピュータプログラムが前記データ処理ユニットによって起動されると、請求項８−１４のいずれかに記載の方法ステップを前記データ処理ユニットに実行させるように適合されている、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
（背景）
マシンツーマシン（Ｍ２Ｍ）通信は、それが展開されると、必ずしも、直接人間相互作用を要求しないエンティティ間のデータ通信の形態である。Ｍ２Ｍ通信の１つの課題は、展開された機器が効率的に管理され得るように、プロトコルを確立することである。
【０００２】
Ｍ２Ｍ技術は、とりわけ、システムステータス監視、自動エネルギー計測、ホームオートメーション、知的ビルディング内の無線監視、パーソナルエリアネットワーク、パラメータの監視、測位、および医療技術におけるリアルタイム位置特定等の異なる分野における種々のアプリケーションを有効にしている。
【０００３】
（セマンティックウェブ）
セマンティックウェブは、ワールドワイドウェブコンソーシアム（Ｗ３Ｃ）による規格を通したウェブの拡張である。この規格は、ウェブ上での共通データフォーマットおよび交換プロトコルを促進し、最も基本に、リソース記述フレームワーク（ＲＤＦ）を促進する。
【０００４】
セマンティックウェブは、データのために特に設計された以下の言語でパブリッシュすることを伴う：リソース記述フレームワーク（ＲＤＦ）、ウェブオントロジー言語（ＯＷＬ）、および拡張マークアップ言語（ＸＭＬ）。これらの技術は、リンクされたデータのウェブを介してウェブドキュメントのコンテンツを補完または置換する記述を提供するために組み合わせられる。したがって、コンテンツは、ウェブアクセス可能データベース内に記憶される記述データとして、またはドキュメント内のマークアップとして現れ得、ドキュメントは、特に、ＸＭＬとともに散在する拡張ＨＴＭＬ（ＸＨＴＭＬ）におけるもの、または、より多くの場合、単純にＸＭＬにおけるものであり、レイアウトまたはレンダリングキューは、別個に記憶される。
【０００５】
（セマンティックウェブスタック）
セマンティックウェブスタックは、図１に示されるように、Ｗ３Ｃによって規定されたセマンティックウェブのアーキテクチャを図示する。コンポーネントの機能および関係は、以下のように要約されることができる。
【０００６】
ＸＭＬは、ドキュメント内のコンテンツ構造のための要素シンタックスを提供するが、セマンティクスを含まれるコンテンツの意味に関連付けしない。ＸＭＬは、現在、タートル等の代替シンタックスが存在するので、大抵の場合、セマンティックウェブ技術の必要コンポーネントではない。タートルは、事実上標準的であるが、正式な標準化プロセスを経ていない。ＸＭＬスキームは、ＸＭＬドキュメント内に含まれる要素の構造およびコンテンツを提供すること、および制限することを行うための言語である。
【０００７】
ＲＤＦは、ウェブにおける情報を表すためのフレームワークである。ＲＤＦは、本質的に、データモデルである。その基本構築ブロックは、ステートメントと呼ばれる、主語−述語−目的語のトリプルである。主語は、ステートメントが関しているリソースを定義する。述語（または関係）は、主語と目的語との間の関係を定義する。目的語は、ステートメントの目的語であるリソースまたは値を定義する。
【０００８】
図２に示される例では、ＲＤＦステートメントは、Ｔｕｒｔｌｅシンタックス（ＲＤＦ１．１Ｔｕｒｔｌｅ，ｈｔｔｐ：／／ｗｗｗ．ｗ３．ｏｒｇ／ＴＲ／ｔｕｒｔｌｅ／＃ｌａｎｇｕａｇｅ−ｆｅａｔｕｒｅｓ）において、以下のように記述され得、それは、Ｊｏｈｎ  Ｓｍｉｔｈの肩書きが教授であることを意味する。ＲＤＦモデルを使用する全ての情報は、ＲＤＦステートメントのフォーマット、すなわち、ＲＤＦトリプルで表される。
：ＪｏｈｎＳｍｉｔｈ（主語）：ｈａｓＴｉｔｌｅ（述語／関係）：Ｐｒｏｆｅｓｓｏｒ（目的語）
【０００９】
ＲＤＦスキーム（ＲＤＦＳ）は、ＲＤＦを拡張し、プロパティおよびクラスの一般化された階層のためのセマンティクスを用いてそのようなＲＤＦベースのリソースのプロパティおよびクラスを記述するための語彙である。
【００１０】
ＯＷＬは、ＲＤＦＳと対照的に、表現度を改良するために、プロパティおよびクラス、とりわけ、クラス間の関係（例えば、互いに素）、基数（例えば、「正確に１つ」）、相等性、より豊富なタイプのプロパティ、プロパティの特性（例えば、対称）、および列挙されたクラスを記述するためのより多くの語彙を追加する。
【００１１】
ＳＰＡＲＱＬは、ＲＤＦグラフコンテンツ（すなわち、ＲＤＦトリプル）をウェブ上またはＲＤＦストア（すなわち、セマンティックグラフストア）内でクエリおよび操作するためのセマンティックウェブデータソースのためのプロトコルおよびクエリ言語である。
【００１２】
ＳＰＡＲＱＬ１．１クエリは、ＲＤＦグラフのためのクエリ言語であり、データがＲＤＦとしてネイティブに記憶されているか、またはミドルウェアを介してＲＤＦとして見なされるかにかかわらず、多様なデータソースを横断してクエリを表すために使用されることができる。ＳＰＡＲＱＬは、その連言および選言とともに、要求されるグラフパターン、および随意のグラフパターンをクエリするための能力を含む。ＳＰＡＲＱＬは、集約、サブクエリ、否定、表現による値の作成、拡張値試験、およびソースＲＤＦグラフによるクエリの制約もサポートする。ＳＰＡＲＱＬクエリの結果は、結果セットまたはＲＤＦグラフであり得る。
【００１３】
ＳＰＡＲＱＬ１．１更新は、ＲＤＦグラフのための更新言語である。それは、ＲＤＦのためのＳＰＡＲＱＬクエリ言語から導出されるシンタックスを使用する。更新動作は、セマンティックグラフストア内のグラフの集合に対して行われる。動作は、セマンティックグラフストア内のＲＤＦグラフを更新、作成、および除去するために提供される。
【００１４】
ＲＩＦは、Ｗ３Ｃルールインターチェンジフォーマットである。それは、コンピュータが実行し得るウェブルールを表すためのＸＭＬ言語である。ＲＩＦは、ダイアレクトと呼ばれる複数のバージョンを提供する。それは、ＲＩＦ基本論理ダイアレクト（ＲＩＦ−ＢＬＤ）およびＲＩＦ生成ルールダイアレクト（ＲＩＦ  ＰＲＤ）を含む。
【００１５】
（ＲＤＦＳおよびＯＷＬ推論）
ＲＤＦＳは、ＲＤＦドキュメントにおいて使用され得るいくつかのより多くの語彙（例えば、ｓｕｂＣｌａｓｓＯｆ、ｓｕｂＰｒｏｐｅｒｔｙＯｆ）を定義することによって、ＲＤＦを拡張する。これは、ＲＤＦＳ構造のいくつかを活用し、新しい情報を導出することができることを意味する。表１は、ＲＤＦＳ推論ルールのいくつかの例をリストアップし、それは、ＲＤＦトリプル内のＲＤＦＳ語彙に基づいて、論理を定義する。
【表１】
2019527394.tif 000003
【００１６】
ＲＤＦトリプルの一般的フォーマットは、表に提示される。例えば、ｕｓｙは、ＲＤＦトリプルであり、主語ｕ、述語ｓ、および目的語ｙは、任意のクラス、関係、または直定数であり得る。番号３のＲＤＦＳルールを実際の例として検討すると、オントロジーにおいて、ｃは、「犬」のためのクラスとして定義され得、ｃ１は、「哺乳類」のためのクラスとして定義され得、ｃ２は、「動物」のためのクラスとして定義され得る。クラス「犬」が、クラス「哺乳類」のサブクラスとして定義され、クラス「哺乳類」が、クラス「動物」のサブクラスとして定義される場合、「犬」は、「動物」のサブクラスであることが推測され得る。この例は、Ｔｕｒｔｌｅシンタックスを用いて、ＲＤＦトリプル内で以下のように記述され得る。
【表１−１】
2019527394.tif 000004
【００１７】
先に述べられたように、ＲＤＦスキーム（ＲＤＦＳ）を用いると、クラスおよびプロパティの階層関係のみを定義する、またはこれらのプロパティのドメインおよび範囲を定義することが可能である。ＯＷＬは、より豊富な語彙を用いてより複雑なオントロジーのために定義され、ＲＤＦＳより複雑な推論を可能にする。表２は、ＯＷＬ推論ルールのいくつかの例をリストアップし、それは、ＯＷＬ語彙に基づいて、論理を定義する。第２の列は、条件（事実）を規定し、第３の列は、第２の列内の全ての事実が生じる場合の結論を示す。例えば、番号３のルールとして、ｖが、一般的ｏｗｌ：クラスとして定義され、クラスｖが、クラスｗと等しい場合、クラスｖは、クラスｗのサブクラスであると結論付けられ得る。
【表２】
2019527394.tif 000005
【００１８】
（推論ルール言語）
セマンティックウェブルール言語（ＳＷＲＬ）は、セマンティックウェブのために提案される言語であり、それは、ルールならびに論理を表すために使用され得、ＯＷＬ  ＤＬまたはＯＷＬ  Ｌｉｔｅをルールマークアップ言語のサブセットと組み合わせる。ＳＷＲＬは、Ｗ３Ｃによって規格化される。
【００１９】
ルール交換フォーマット（ＲＩＦ）は、Ｗ３Ｃ推奨である。ＲＩＦは、（主に）ＳＰＡＲＱＬ、ＲＤＦ、およびＯＷＬとともに、セマンティックウェブのためのインフラストラクチャの一部である。元々、セマンティックウェブのための「ルール層」として多くの人に想定されているが、実際に、ＲＩＦの設計は、多くの「ルール言語」が存在し、必要とされるのがそれらの間でルールを交換することであるという観察に基づく。
【００２０】
ＲＩＦは、３つのダイアレクト、すなわち、基本論理ダイアレクト（ＢＬＤ）の中に拡張されるコアダイアレクト、プロダクションルールダイアレクト（ＰＲＤ）を含む。
【００２１】
（ｏｎｅＭ２Ｍアーキテクチャ）
開発中のｏｎｅＭ２Ｍ規格（ｏｎｅＭ２Ｍ−ＴＳ−０００１  ｏｎｅＭ２Ｍ  Ｆｕｎｃｔｉｏｎａｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ−Ｖ２．５．０）は、「共通サービスエンティティ（ＣＳＥ）」と呼ばれるサービス層を定義する。サービス層の目的は、異なる「バーティカル」Ｍ２Ｍシステムおよびアプリケーションによって利用され得る「ホリゾンタル」サービスを提供することである。
【００２２】
ＣＳＥは、図３に示されるように、４つの参照点をサポートする。Ｍｃａ参照点は、アプリケーションエンティティ（ＡＥ）とインターフェースをとる。Ｍｃｃ参照点は、同一サービスプロバイダドメイン内の別のＣＳＥとインターフェースをとり、Ｍｃｃ’参照点は、異なるサービスプロバイダドメイン内の別のＣＳＥとインターフェースをとる。Ｍｃｎ参照点は、下層ネットワークサービスエンティティ（ＮＳＥ）とインターフェースをとる。ＮＳＥは、デバイス管理、場所サービス、およびデバイストリガ等の下層ネットワークサービスをＣＳＥに提供する。
【００２３】
ＣＳＥは、「発見」、「データ管理およびリポジトリ」等の「共通サービス機能（ＣＳＦ）」と呼ばれる複数の論理機能を含む。図４は、ｏｎｅＭ２Ｍにおける開発中のＣＳＦを図示する。
【００２４】
（Ｍ２Ｍセマンティックサポートの機能アーキテクチャ）
図５は、Ｍ２Ｍセマンティックサポートのための提案される機能／論理アーキテクチャを示す。主要なコンポーネントは、とりわけ、データリポジトリ２０１、オントロジーリポジトリ２０２、オントロジーモデル化および処理２０３、セマンティックリポジトリ２０４、または推論２００を含み得る。
【００２５】
データリポジトリ２０１は、新しいデータを基本的に含む。加えて、それは、記憶されたデータの検索、修正、および削除をサポートするための機能も提供する。
【００２６】
オントロジーリポジトリ２０２は、オントロジーを含む。オントロジーは、それらのプロパティおよび他の概念に対する関係有するオブジェクトとして概念を定義する概念化の形式的仕様である。したがって、オントロジーは、現実の一部（主語ドメイン）についての論述のための基本概念の共有語彙を定義し、動作を含むそれらの概念を規定する言語的人工物として定義されることができる。
【００２７】
オントロジーモデル化および処理２０３−オントロジーモデル化は、オントロジーを構築するプロセスであり、それは、ドメインをモデル化し、概念についての推論をサポートするために使用される。オントロジーモデル化のための言語の例は、ＸＭＬベースのＲＤＦ、ＲＤＦスキーム（ＲＤＦＳ）、ＯＷＬ等である。オントロジー処理は、Ｍ２Ｍドメインの外部および内部でパブリッシュ／モデル化されたオントロジーを分類し、記憶し、それらの発見機能を提供するプロセスである。オントロジーは、変換され、リソースに対するセマンティクスを有効にするために共有および使用され得る統一された言語（例えば、ＲＤＦＳ／ＯＷＬ）でオントロジーリポジトリ内に記憶される。
【００２８】
セマンティックリポジトリ２０４は、ある表現においてアノテートされたセマンティクス情報を含み、それは、ＲＤＦを利用するオプションを有し得る。セマンティックアノテーションは、バイナリストリーム等の具体的フォーマットにおいてリソースのセマンティクスを表すプロセスである。
【００２９】
Ｍ２Ｍリソースのセマンティックアノテーションは、一貫したデータ変換およびデータ相互運用性を異種Ｍ２Ｍアプリケーションに提供するように、セマンティック情報をＭ２Ｍリソースに追加する方法である。セマンティックリポジトリ内に維持されるセマンティック的にアノテートされたＭ２Ｍリソースは、リソースによって提供されるデータとこれらのデータが意味するものとを理解するＭ２Ｍアプリケーションによってコンタクトされることができる。これらのアノテーションは、有意義な記述を提供し、従来のＭ２Ｍシステム単独よりＭ２Ｍデータをエクスポーズする。
【００３０】
推論２００は、新しい暗示的知識をセマンティック的にアノテートされたデータから導出し、複雑なユーザクエリに回答するための機構である。それは、ソフトウェアの一部として実装されることができ、論理結果をアサートされた事実または公理の組から推測することが可能である。
【００３１】
セマンティック分析およびクエリ２０６−セマンティック分析およびクエリにおいて、Ｍ２Ｍアプリケーションからの要求は、セマンティック的に分析される。分析に基づいて、それは、セマンティッククエリメッセージを作成し、セマンティック情報を要求するためのメッセージを抽象化およびセマンティックにおける機能コンポーネント（例えば、オントロジーリポジトリ、推論、セマンティックマッシュアップ等）に送信する。要求される情報を取得後、それは、Ｍ２Ｍアプリケーションに応答する。
【００３２】
（ｏｎｅＭ２Ｍアーキテクチャ内のセマンティック記述）
＜ｓｅｍａｎｔｉｃＤｅｓｃｒｉｐｔｏｒ＞リソースは、リソースおよび潜在的に他のセマンティック的に関連するリソースに関するセマンティック記述を記憶するために使用される。そのような記述は、オントロジーに従って提供され得る。セマンティック情報は、ｏｎｅＭ２Ｍシステムのセマンティック機能性によって使用され、それは、アプリケーションまたはＣＳＥにも利用可能である。現在、＜ｓｅｍａｎｔｉｃＤｅｓｃｒｉｐｔｏｒ＞リソースは、＜ＡＥ＞、＜ｃｏｎｔａｉｎｅｒ＞、＜ｃｏｎｔｅｎｔＩｎｓｔａｎｃｅ＞、＜ｇｒｏｕｐ＞、および＜ｎｏｄｅ＞リソース下の子リソースであり得る。
【００３３】
＜ｓｅｍａｎｔｉｃＤｅｓｃｒｉｐｔｏｒ＞リソースは、表３（ｏｎｅＭ２Ｍ−ＴＳ−０００１ｏｎｅＭ２Ｍ  Ｆｕｎｃｔｉｏｎａｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ−Ｖ２．５．０に定義される共通およびユニバーサル属性をリストアップしない）に規定された属性を含む。
【表３】
2019527394.tif 000006
【００３４】
（ｏｎｅＭ２Ｍにおけるセマンティックフィルタリング提案）
一般フィルタリングが、要求動作に規定されたフィルタ基準を有することによってサポートされる（ｏｎｅＭ２Ｍ−ＴＳ−０００１ｏｎｅＭ２Ｍ  Ｆｕｎｃｔｉｏｎａｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ−Ｖ２．５．０第８．１．２節）。セマンティックフィルタリングを提供するために、要求動作フィルタ基準のための追加の値が、以下の表に示される定義とともに、ｏｎｅＭ２ＭＴＲ−０００７−Ｓｔｕｄｙ＿ｏｎ＿Ａｂｓｔｒａｃｔｉｏｎ＿ａｎｄ＿Ｓｅｍａｎｔｉｃｓ＿Ｅｎａｂｌｅｍｅｎｔ−Ｖ２．６．０（第８．５．４節）に提案されている。複数のインスタンスが、使用され得、その場合、論理的「ＯＲ」がインスタンス間に適用される、すなわち、セマンティックフィルタのうちの１つ以上のものがセマンティック記述に合致する場合、セマンティックフィルタ基準のための全体的結果は、真である。
【表４】
2019527394.tif 000007
【００３５】
上記提案は、以下の仮定を使用する：セマンティック記述は、ＲＤＦトリプル（表現、例えば、ＲＤＦ／ＸＭＬ、タートル、ｏｎｅＭ２Ｍ内にまだ完全に規定されていない記述フォーマット）として規定される；セマンティックフィルタ基準は、セマンティック記述に対して実行されるべきＳＰＡＲＱＬ要求のために使用されるであろう。
【００３６】
（ｏｎｅＭ２Ｍにおける基礎オントロジーおよびオントロジーマッピング）
現在、ｏｎｅＭ２Ｍは、基礎オントロジーを定義している。基礎オントロジーは、ｏｎｅＭ２Ｍが規格化するであろう唯一のオントロジーであり、それは、他のオントロジーがｏｎｅＭ２Ｍの中にマッピングされ得るように要求される最小限のオントロジー（すなわち、最小数の規約を義務づける）である。基礎オントロジーの主要な目的は、相互運用性を向上させることである。任意の外部オントロジーが、ｏｎｅＭ２Ｍサービス層にパブリッシュされ、基礎オントロジーにマッピングされ得る。外部オントロジーと基礎オントロジーとの間のマッピングを行うことは、発行元の責任である。ｏｎｅＭ２Ｍ  ＴＳ−００１２−ＢａｓｅＯｎｔｏｌｏｇｙ−Ｖ０．６．０に定義されるいくつかのマッピング原理が、存在する。
【００３７】
オントロジーは、比較的に静的であり、すなわち、それは、定義され、Ｍ２Ｍシステムにパブリッシュされると、変更されることは、稀である。アプリケーションは、オントロジー発見プロセスを通して、オントロジーを把握し得る。
【００３８】
（ｏｎｅＭ２Ｍセマンティックフレームワークにおけるセマンティック推論）
ｏｎｅＭ２ＭＴＲ−０００７−Ｓｔｕｄｙ＿ｏｎ＿Ａｂｓｔｒａｃｔｉｏｎ＿ａｎｄ＿Ｓｅｍａｎｔｉｃｓ＿Ｅｎａｂｌｅｍｅｎｔ−Ｖ２．６．０では、セマンティック推論は、新しい暗示的知識をセマンティック的にアノテートされたデータから導出し、複雑なユーザクエリに回答するための機構として定義される。それは、ソフトウェアの一部として実装され、論理結果をアサートされた事実または公理の組から推測することを可能にすることができる。加えて、いくつかの要件が、セマンティック推論をｏｎｅＭ２Ｍセマンティックフレームワーク内で実装するために識別される。
【表５】
2019527394.tif 000008
【００３９】
（定義）
論理的含意：演繹または含意、すなわち、他のものから論理的に得られるもの、または他のものによって含意されるもの。
【００４０】
セマンティック推論：新しい暗示的知識をセマンティック的にアノテートされたデータから導出し、複雑なユーザクエリに回答する機構。それは、ソフトウェアの一部として実装され、アサートされた事実または公理の組から論理結果を推測することが可能であることができる。セマンティック推論ルールは、既存の情報に基づいて、いくつかの新しい知識を導出するために使用され得るいくつかの論理を定義する。セマンティックルールは、論理様式を使用して、オントロジーにおける既存の概念および関係に基づいて、新しい関係を生成することにおける一般的機構を定義することに集中する。
【００４１】
セマンティックアノテーション：一貫したデータ変換およびデータ相互運用性を異種Ｍ２Ｍアプリケーションに提供するためのセマンティック情報（すなわち、メタデータ、ＲＤＦトリプル）をオリジナル情報（例えば、ｏｎｅＭ２Ｍ内のＭ２Ｍリソース）に追加する方法。
【００４２】
オントロジー：それらのプロパティおよび他の概念に対する関係を有するオブジェクトとして概念を定義する概念化（語彙）の形式的仕様。オントロジーは、分類方法に集中し、分類方法は、個々のリソースがそのようなクラスに関連付けられ得る方法に基づいて「クラス」、「サブクラス」を定義すること、およびクラスおよびそのインスタンス間の関係を特徴付けることを強調する。
【００４３】
オントロジーリポジトリ：オントロジーの記憶データベース。
【００４４】
セマンティックグラフストア：セマンティック情報を記憶するデータベース。具体的に、ＲＤＦデータモデルが使用される場合、ＲＤＦ  ｔｒｉｐｌｅｓを記憶するＴｒｉｐｌｅＳｔｏｒｅである。
【発明の概要】
【課題を解決するための手段】
【００４５】
（要約）
セマンティック推論は、定義された推論ルールに依拠して既存の情報に基づいて新しい情報を抽出する能力を提供し、したがって、異なるドメイン（例えば、スマートホーム、スマートトランスポーテーション、および環境監視）間の相互運用性を有効にする。しかしながら、Ｍ２Ｍ／ＩｏＴサービス層においてセマンティック推論能力を有効にする方法は、まだ定義されていない。
【００４６】
本開示は、Ｍ２Ｍ／ＩｏＴシステムにおいてセマンティックフレームワーク内でセマンティック推論サービスを有効にするための機構を定義する。以下が、開示される。以下が開示される：１）推論プロセスの機能コンポーネントおよびフローをハイライトする、セマンティック推論プロセッサの全体的アーキテクチャ；２）異なるシナリオのために定義される、Ｍ２Ｍ／ＩｏＴシステムにおける推論ルール管理（例えば、作成および削除）のためのプロシージャ；３）オンデマンドで、かつ先を見越した様式で、セマンティッククエリおよびセマンティックアノテーションプロセスによってトリガされ得るＭ２Ｍ／ＩｏＴシステムにおいてセマンティック推論プロセスをトリガおよび実施するためのプロシージャ；４）生成された情報（例えば、新しいデータコンテンツ）を記述するためのより多くのセマンティック情報を生成することを含み得る、セマンティック推論プロセスを通して生成された新しい情報を取り扱い、処理する方法。
【００４７】
関連付けられたセマンティック推論をｏｎｅＭ２Ｍリソース指向アーキテクチャ（ＲＯＡ）に適用する方法を示す、新しいリソース、属性、およびメッセージフォーマットも、本明細書に開示される。
【００４８】
本概要は、発明を実施するための形態において以下でさらに説明される、簡略化形態の一連の概念を導入するように提供される。本概要は、請求される主題の主要な特徴または不可欠な特徴を識別することを意図せず、請求される主題の範囲を限定するために使用されることも意図していない。さらに、請求される主題は、本開示の任意の部分で記述されるいずれかまたは全ての不利点を解決する制限に限定されない。
【００４９】
より詳細な理解は、所与の付随の図面と併せて、一例として与えられる以下の説明から得られ得る。
【図面の簡単な説明】
【００５０】
【図１】図１は、セマンティックウェブのアーキテクチャを図示する。
【図２】図２は、ＲＤＦグラフの例を図示する。
【図３】図３は、ｏｎｅＭ２Ｍアーキテクチャを図示する。
【図４】図４は、ｏｎｅＭ２Ｍ共通サービス機能を図示する。
【図５】図５は、Ｍ２Ｍセマンティックサポートの機能アーキテクチャを図示する。
【図６】図６は、＜ｓｅｍａｎｔｉｃＤｅｓｃｒｉｐｔｏｒ＞リソースの構造を図示する。
【図７】図７は、Ｍ２Ｍサービス層セマンティックフレームワーク内のセマンティック推論を有効にするための例示的方法を図示する。
【図８Ａ】図８Ａは、スマートビルディングのための例示的オントロジーを図示する。
【図８Ｂ】図８Ｂは、図８Ａの例示的照明ドメインオントロジーを図示する。
【図９】図９は、照明ドメインの例示的オントロジーを図示する。
【図１０】図１０は、Ｍ２Ｍサービス層セマンティックフレームワーク内のセマンティック推論を有効にするための例示的方法を図示する。
【図１１】図１１は、例示的オントロジーを図示する。
【図１２】図１２は、セマンティッククエリを促進する命令の例を図示する。
【図１３】図１３は、Ｍ２Ｍシステムにおけるセマンティック推論の例示的機能アーキテクチャを図示する。
【図１４】図１４は、ルール管理およびセマンティック推論プロセスのための例示的方法を図示する。
【図１５】図１５は、新しいオントロジーがパブリッシュされ、Ｍ２Ｍシステム内に記憶されるときのタイプ２推論ルールを作成する例示的方法を図示する。
【図１６】図１６は、オントロジーが更新されるときのタイプ２推論ルールを作成する例示的方法を図示する。
【図１７】図１７は、オントロジーが更新されるときの推論ルールを削除するための例示的方法を図示する。
【図１８】図１８は、セマンティッククエリプロセスによってトリガされるセマンティック推論プロセスの例示的方法を図示する。
【図１９】図１９は、セマンティックアノテーションプロセスによってトリガされるセマンティック推論プロセスの例示的方法を図示する。
【図２０】図２０は、推論プロセスを介して生成された新しい情報を処理するための例示的方法を図示する。
【図２１】図２１は、セマンティック推論を伴う例示的ｏｎｅＭ２ＭＣＳＥを図示する。
【図２２】図２２は、サービスとしてセマンティック推論に関連付けられた例示的ユーザインターフェースを図示する。
【図２３】図２３は、本明細書に議論されるようなセマンティック推論サービスを有効にする方法およびシステムに基づいて生成され得る例示的ディスプレイ（例えば、グラフィカルユーザインターフェース）を図示する。
【図２４Ａ】図２４Ａは、開示される主題が実装され得る例示的マシンツーマシン（Ｍ２Ｍ）またはモノのインターネット（ＩｏＴ）通信システムの系統図である。
【図２４Ｂ】図２４Ｂは、図２４Ａに図示されるＭ２Ｍ／ＩｏＴ通信システム内で使用され得る例示的アーキテクチャの系統図である。
【図２４Ｃ】図２４Ｃは、図２４Ａに図示される通信システム内で使用され得る例示的Ｍ２Ｍ／ＩｏＴ端末またはゲートウェイデバイスの系統図である。
【図２４Ｄ】図２４Ｄは、図２４Ａの通信システムの側面が具現化され得る例示的コンピューティングシステムのブロック図である。
【発明を実施するための形態】
【００５１】
（例示的実施形態の詳細な説明）
本明細書に開示されるのは、Ｍ２Ｍ／ＩｏＴシステムにおいてセマンティックフレームワーク内でセマンティック推論サービスを有効にするための機構である。以下に議論されるのは、開示されるセマンティック推論サービスに関する追加の観点を提供する、シナリオである。
【００５２】
第１のシナリオを参照すると、図７は、図９のオントロジー１０１を定義する照明制御アプリケーション１０６によって開始されるセマンティッククエリのプロセスを説明するフローを図示する。以下により詳細に議論されるように、オントロジー１０１を伴う照明制御アプリケーション１０６は、推論能力がトリガまたは有効にされない場合、図８Ｂのオントロジー１００によって定義される照明１０３に関する正確な情報を受信しないこともある。本明細書に開示されるのは、推論をトリガし、推論プロセスを実施する方法および場合であり、それは、従来のマシンツーマシン（Ｍ２Ｍ）システムに定義されていない。推論プロセスによって使用されるルールは、より正確な結果の取得を補助するために、セマンティッククエリプロセスによって管理および使用され得る。
【００５３】
さらなる観点のために、以下は、より詳細に本明細書に開示される、例示的シナリオの解説である。建物内に、多くの照明が、存在する。建物内に据え付けられるこれらの照明は、スマートビルディングアプリ１０４によって制御され、スマートビルディングアプリ１０４は、図８に示されるようなスマートビルディングオントロジー１００を定義し、スマートビルディングオントロジー１００は、照明のためのデバイス（本明細書では、照明とも称される）だけではなく、建物内のある他のデバイスも対象とする。後に、照明制御アプリ１０６が、ＬＥＤ照明（調節可能または調光可能）の更新を試み、例えば、ファームウェア／ソフトウェアを更新する。照明制御アプリ１０６は、照明ドメインに特定であるので、それは、スマートビルディングアプリ１０４によって定義されたオントロジーがすでに存在することを認知しないこともあり、照明制御アプリ１０６は、それ自身の言語（すなわち、オントロジー）を使用するであろう。したがって、それは、図９に示されるような別のオントロジーを定義する。標的照明を更新するために、初期ステップは、ＬＥＤ照明を見出すことである（例えば、このシナリオでは、全てのＬＥＤ照明であるが、あるタイプのＬＥＤ照明等も考えられる）。異なる用語が、２つのオントロジーにおいて使用される（例えば、ｂｒｉｇｈｔｎｅｓｓ  ａｄｊｕｓｔａｂｌｅは、スマートビルディングオントロジーでは、ブーリアン属性である一方、Ｂｒｉｇｈｔｎｅｓｓ＿ａｄｊｕｓｔａｂｌｅ＿ｌｉｇｈｔは、照明のサブクラスである）。推論がなければ、ｏｎｅＭ２ｍ  ＣＳＥ１２４は、照明制御アプリ１０６からのクエリが、照明制御オントロジー１０５内にある一方、スマートビルディングアプリ１０４によって作成された他の照明を表すＲＤＦトリプルが、スマートビルディングアプリ１０４内にあるので、いくつかの照明を見出すことができないこともあり得る。したがって、推論が、他の照明を見出すために使用されるべきである。
【００５４】
図７の方法は、以下のようなものであり得る。示されるように、スマートビルディングアプリ１０４、ｏｎｅＭ２Ｍ  ＣＳＥ１２４、および照明制御アプリ１０６間に、通信が、存在する。ステップ１１０では、スマートビルディングアプリ１０４は、図８Ａに示されるようなスマートビルディングオントロジー１００を定義するためのメッセージを送信し得る。ステップ１１１では、照明制御アプリ１０６は、照明ドメインに関するオントロジー１０１を定義するためのメッセージを送信し得る。ステップ１１２では、スマートビルディングアプリ１０４は、建物内の照明のメタデータを伴うオントロジー１００に従って、セマンティックアノテーションを介してＲＤＦトリプルを作成する、メッセージを送信し得る。ステップ１１３では、照明制御アプリ１０６は、オントロジー１０１に基づいて、スマートビルディングアプリ１０４によって挿入されるＲＤＦトリプルにわたってＬＥＤおよび調節可能照明を見出すためのセマンティッククエリを開始し得る（推論がトリガされるべきである）。ステップ１１４では、推論が適用されると、ｏｎｅＭ２Ｍ  ＣＳＥ１２４は、照明制御アプリ１０６からのクエリへの応答としてそれらのＬＥＤ調節可能照明を返す。
【００５５】
第１のシナリオは、セマンティックスマートビルディング照明制御のコンテキストにおけるものである。図８Ａは、スマートビルディング内のモノ（例えば、床、部屋、照明、またはセンサ）のための例示的オントロジー１００を図示し、照明１０３は、デバイス１０２のサブクラスとして定義され、図７のスマートビルディングアプリケーション１０４は、図８Ａおよび図８Ｂのオントロジー１００を定義する。図８Ａは、オントロジー１０１の一部を図示する。第１のシナリオでは、照明制御アプリケーション１０６は、照明１０５のためのオントロジー１０１を定義し得、それは、図９に示される。電力を節約するために、照明制御アプリケーション１０６は、より多くの照明をオンに切り替える代わりに、いくつかの照明の明るさを調節すべきかどうかを決定し得る。ＬＥＤ照明が、好ましくあり得、選択される照明が同様にｂｒｉｇｈｔｎｅｓｓ＿ａｄｊｕｓｔａｂｌｅであるという選好も存在し得る。したがって、オントロジー１０１を定義する照明制御アプリケーション１０６は、最初に、オントロジー１００に基づいてアノテートされたＲＤＦトリプルにわたって、セマンティッククエリを開始し得る。しかしながら、オントロジー１００は、照明がＬＥＤ照明であり、ｂｒｉｇｈｔｎｅｓｓ＿ａｄｊｕｓｔａｂｌｅ照明であるかどうかを明示的に規定していない。オントロジー１００は、照明１０３を記述するために、プロパティ「ｋｉｎｄ」および「ｂｒｉｇｈｔｎｅｓｓ＿ａｄｊｕｓｔａｂｌｅ」のみを定義する一方、ＬＥＤ照明およびｂｒｉｇｈｔｎｅｓｓ＿ａｄｊｕｓｔａｂｌｅ＿照明は、オントロジー１０１内の照明１０５の２つのサブクラスとして定義されている。従来のシステムでは、この異なる語彙は、オントロジー１０１を定義する照明制御アプリケーション１０６が、オントロジー１００によって定義された照明１０３を伴うスマートビルディング内の所望の照明１０３を発見することを妨げ得る。
【００５６】
セマンティック推論の支援を得て、推論ルールが、以下のように、トリプルのためのＴｕｒｔｌｅフォーマットにおけるセマンティッククエリを促進するために定義され得る。
【表５−１】
2019527394.tif 000009
【００５７】
第１のルールは、その「ｋｉｎｄ」（オントロジー１００に定義されるような）が「ｌｅｄ」である任意の照明１０３（クエスチョンマークから開始する任意のストリングは、変数である）が、オントロジー１０１に従って「ｌｅｄ＿ｌｉｇｈｔ」であることも必要とすることを意味する。オントロジー１００等の名前空間（プレフィックス）は、この関係がオントロジー１００内で定義されることを示すために、関係「ｋｉｎｄ」に関連付けられ得ることに留意されたい。他のオントロジーは、同一「ｋｉｎｄ」関係であるが、異なる意味を伴うものを定義し得る。同様に、第２のルールは、その属性「ｂｒｉｇｈｔｎｅｓｓ＿ａｄｊｕｓｔａｂｌｅ」（オントロジー１００に基づいて）が真である任意の照明１０３が、オントロジー１０１内の「ｂｒｉｇｈｔｎｅｓｓ＿ａｄｊｕｓｔａｂｌｅ＿ｌｉｇｈｔ」でなければならないことを提供する。
【００５８】
第２のシナリオでは、サービスプロバイダは、多くの異なるタイプのセンサを分配し、環境監視サービスに、リアルタイム温度、湿度、空気品質データ等を提供する。したがって、異なるドメインからのアプリケーションは、異なる目的のために、最新情報を入手することができる。旅行者は、その旅先の最新温度および湿度を入手し得る。スマートホームアプライアンスは、温度および湿度を入手し、空調を動的に構成し得る。または、環境庁は、環境監視のために、最新空気品質データを読み出し得る。
【００５９】
図１０は、第２のシナリオに基づく、例示的フロー説明を図示する。示されるように、高度空気品質センサ１２１、ｏｎｅＭ２Ｍ  ＣＳＥ１２４、および環境モニタアプリケーション１２３間に、通信が、存在する。ステップ１２６では、推論ルールが、図１１のオントロジー１３０の中に挿入され得る。ステップ１２７では、セマンティック記述が、オントロジー１３０に基づいて生成され得る（いくつかのトリプルは、挿入された推論ルールに基づき得る−推論がトリガされる）。ステップ１２８では、図１２のオントロジー１３６に基づいて、多機能空気品質センサからの報告されたデータを見出すために、セマンティッククエリが、存在し得る。ステップ１２９では、ｏｎｅＭ２Ｍ  ＣＳＥ１２４は、センサをステップ１２８のクエリへの応答として返す。
【００６０】
セマンティック記述は、センサが、サービスプロバイダによって定義される図１１に示されるようなオントロジー１３０に基づいて最新測定サンプルを報告すると、生成および付加される。例えば、高度空気品質センサ１２１は、空気品質センサ１３２のサブクラスとして定義され得る。高度空気品質センサは、空気中の複数の毒性成分、例えば、一酸化炭素（ＣＯ）、二酸化炭素（ＣＯ２）、および二酸化窒素を測定可能であるように定義される。
【００６１】
図１０を参照すると、環境モニタアプリケーション１２３は、空気中の複数の毒性成分を測定可能なセンサを探し得る。環境監視ドメイン専用あり得るオントロジー１３６（図１１）は、そのようなセンサタイプを多機能（例えば、クラスオントロジー１３６：多機能空気品質センサ）として定義し得る。環境モニタドメインからのセマンティッククエリを促進するために、追加の情報が、それぞれのオントロジー間の２つの概念を接続するために追加され得る。具体的に、ｏｗｌ：ｅｑｕｉｖａｌｅｎｔＣｌａｓｓが、この例では、図１２に示されるように使用され得る。
【００６２】
この情報を統合するための１つの方法は、図１１に示されるように、オントロジー１３６がＭ２Ｍシステムにパブリッシュされると、それをオントロジー１３０の中に挿入することである。図１０は、セマンティック推論がステップ１２７において行われ、セマンティッククエリ（ステップ１２８）がステップ１２７において生成されたセマンティック情報にわたって実施されるフローを図示する。従来のシステムでは、推論ルールの挿入をトリガし（ステップ１２６）、推論を実施し（ステップ１２７）、推論ルールに基づいて、より多くのセマンティック情報を生成する方法を定義するための機構は、存在しない。いくつかの新しいセマンティック情報が、推論プロセスを通して推測されるであろう。例えば、推論ルール：｛？ｌｉｇｈｔｏｎｔｏｌｏｇｙ１３０：ｋｉｎｄ“ｌｅｄ”｝＝＞｛？ｌｉｇｈｔｒｄｆ：ｔｙｐｅｏｎｔｏｌｏｇｙ１３６：ｌｅｄ＿ｌｉｇｈｔ｝を前提として、ｌｉｇｈｔＡｏｎｔｏｌｏｇｙ１３０：ｋｉｎｄ“ｌｅｄ”のようなオントロジー１３０に基づいて記述される照明が存在する場合、１つ以上のトリプル（セマンティック情報）：ｉｇｈｔＡｒｄｆ：ｔｙｐｅｏｎｔｏｌｏｇｙ１３６：ｌｅｄ＿ｌｉｇｈｔが存在し得る。
【００６３】
以下は、従来のセマンティック推論およびクエリシステムに関連付けられたいくつかの問題に関する追加の議論である。上記の第１のシナリオおよび第２のシナリオに図示されるように、Ｍ２Ｍサービス層セマンティックフレームワーク内でセマンティック推論を有効にするために、推論ルールの構成が、存在する。従来の機構は、以下を行う場合、問題を有する：１）セマンティック推論能力を効率的に利用し、他のプロセス（例えば、セマンティッククエリ）の結果に影響を及ぼすために、推論ルールを編成および構築すること。２）他のセマンティック情報およびオントロジーの利用の影響を低減させるような方法で推論ルールを動的に管理すること。
【００６４】
従来のシステムに対して、推論をトリガおよび実施するための機構の欠如は、セマンティック機能性に悪影響を及ぼす。従来のシステムでは、セマンティッククエリは、広義に、セマンティック推論をトリガし得る主要なイベントまたはプロセスと見なされる。先を見越した様式における（例えば、セマンティッククエリ等の任意の外部トリガを伴わずに内部からトリガされる）セマンティック推論のための機構は、従来のシステムにおいて十分に定義されていない。本明細書により詳細に議論されるように、先を見越した様式におけるセマンティック推論は、有用であり得る：１）推論能力を認知していないアプリケーションが、セマンティッククエリを開始するとき；２）セマンティック情報の組が、頻繁にクエリされるとき（推論プロセスを先を見越して起動することは、同一推論プロセスを繰り返すことに基づいて、オーバーヘッドを節約し得る）。異なるタイプのトリガが、本明細書で使用され、それは、推論プロセスを実施するために、従来のシステムと異なるプロシージャおよびステップをもたらし得る。照明およびセンサユースケースに示されるように、新しいオントロジーまたは新しいクラスの追加は、ルールの作成をトリガし得る。トリガは、推論プロセスが、２つのユースケースに議論されるように、所望の情報を発見するためにトリガされるようなセマンティッククエリ要求であり得る。これは、外部トリガの例と見なされ得る。内部トリガのために、セマンティックアノテーションが、一例である。例えば、内部トリガに関して、いくつかのＲＤＦトリプルが作成されると、推論プロセスが先を見越してトリガされ、推論ルールおよび作成されるべきトリプルの組に基づいて、別のトリプルの組を作成し得る。
【００６５】
従来のセマンティック推論およびクエリシステムに関連付けられた問題を継続して参照すると、概して、新しい情報は、セマンティック推論プロセスを通して生成される。例えば、図１０−図１２に関連付けられた第２のシナリオでは、新しいトリプルが、推論ルールに従って、高度空気品質センサ１２１を多機能空気品質センサとして記述するために生成される。しかしながら、従来のシステムでは、新しく生成された情報を処理および記憶する機構は、定義されていない。
【００６６】
前述の問題およびシナリオに照らして、以下が、本明細書で検討される：１）異なるオントロジーおよび関係を伴う異なる推論ルールが、同一トリプルの組に適用され得、したがって、アクセス制御視点から、推測を通して取得される新しい情報は、情報を取得するために使用されたトリプルと一緒に記憶されるべきではない；２）いくつかの新しいデータコンテンツが、メタデータに加え、生成され得る−データコンテンツが、非透過性であるので、理解可能にするためのメタデータを追加する（例えば、コンテンツデータをアノテートする）機構が、好ましい。
【００６７】
図７、１０、および図１４−図２０等の本明細書に図示されるステップを実施するエンティティは、論理エンティティであり得ることを理解されたい。ステップは、図２４Ｃまたは図２４Ｄに図示されるもの等のデバイス、サーバ、またはコンピュータシステムのメモリ内に記憶され、そのプロセッサ上で実行し得る。ある例では、Ｍ２Ｍデバイスの相互作用に関する以下のさらなる詳細を伴って、図７の照明制御アプリケーション１０６またはスマートビルディングアプリケーション１０４およびアプリケーション１６０は、図２４ＡのＭ２Ｍ端末デバイス１８上に常駐し得る一方、図１３のセマンティック推論エンジン１４２および推論ルールマネージャ１４３は、図２４ＡのＭ２Ｍゲートウェイデバイス１４上に常駐し得る。明細書に開示される例示的方法（例えば、図７、１０、および図１４−図２０）間のステップのスキップ、ステップの組み合わせ、またはステップの追加も、考えられる。
【００６８】
Ｍ２Ｍサービス層システム内でのセマンティック推論プロセスをハイライトする方法フロー（図１４）とともに、機能アーキテクチャ（図１３）が、以下に議論される。方法フローは、以下により詳細に議論される、いくつかの主要なプロシージャを含む。図１３は、Ｍ２Ｍシステムにおけるセマンティック推論プロセッサ（ＳＲＰ）１４１の例示的機能アーキテクチャを図示する。ＳＲＰ１４１の全てまたは一部は、図５に示される推論ブロック２００内に含まれ得る。ＳＲＰ１４１は、セマンティック推論エンジン１４２と、推論ルールマネージャ１４３とを含み得る。セマンティック推論エンジン１４２は、推論ルールに基づいて論理を適用することによって推論プロセスを実施することに責任がある。セマンティック推論エンジン１４２は、推論ルールを推論ルールリポジトリから取得し、オントロジー定義における適切なクラス／関係をオントロジーリポジトリから導出し、推論プロセス（例えば、演繹および推測）をセマンティックリポジトリ内に記憶される標的データセットに実施し得る。推論プロセスのためのトリガは、内部エンティティまたは推論プロセッサ外、例えば、セマンティッククエリおよびセマンティックアノテーションプロセスから生じ得る。この機能性は、より詳細に本明細書で議論されるであろう。
【００６９】
ＳＲＰ１４１の推論ルールマネージャ１４３は、セマンティック推論プロセスによって使用される推論ルールリポジトリ内に維持される推論ルールを管理（例えば、作成、更新、または削除）することに責任がある。推論ルールマネージャ１４３は、外部または内部イベントに基づいて、管理プロシージャをトリガし得る。この機能性は、より詳細に本明細書で議論されるであろう。
【００７０】
図１３を継続して参照すると、推論ルールリポジトリ１４４は、概して、推論ルールが記憶および維持される場所と見なされ得る。セマンティック推論エンジン１４２および推論ルールマネージャ１４３は、ルール管理のための所望の推論ルールを読み出し、推論プロセスを実施し得る。推論ルールリポジトリ１４４は、集中型、分散型、またはハイブリッドであり得る。ある例では、推論ルールリポジトリ１４４は、オントロジーリポジトリ１４５内のオントロジー、または別個のコンピューティングデバイス内のオントロジーとともに物理的に設置され得る。
【００７１】
図１４は、セマンティック推論プロセスのいくつかの主要なプロシージャを含む大まかなフローを図示する。方法フローは、概して、推論プロセスに関連する相互作用を図示する。いくつかの方法フローは、暗示または抽象化される（例えば、オントロジーリポジトリにおけるオントロジー管理は、示されない）。
【００７２】
推論ルール管理（ステップ１５１−ステップ１５３）：ステップ１５１では、ルール管理プロセス（作成、削除、または更新）を開始するための内部または外部トリガイベントが、推論ルールマネージャ１４３によって受信される。ステップ１５２では、推論ルールマネージャ１４３は、次いで、オントロジー定義をオントロジーリポジトリから読み出し、新しいルールを検証する。ステップ１５３では、検証が合格する場合、リポジトリルールマネージャ１４３は、実際に、推論ルールリポジトリ１４４において推論ルールを作成、削除、または更新することを要求する。
【００７３】
セマンティック推論プロセス（ステップ１５４−ステップ１５７）：ステップ１５４では、推論プロセスを開始する（例えば、推論ルールによって定義された論理をセマンティック情報の組に適用する）ための内部または外部トリガイベントが、セマンティック推論エンジン１４２によって受信される。セマンティック推論エンジン１４２は、推論ルールリポジトリ１４４と通信し（ステップ１５５）、かつオントロジーリポジトリ１４５と通信し（ステップ１５６）、利用可能な推論ルールを見出す。ステップ１５７では、セマンティック推論エンジン１４２は、推論ルールを標的データセットに適用するための要求をセマンティックリポジトリ１４６に送信する。
【００７４】
ステップ１５８では、推論プロセスの完了後、セマンティック推論エンジン１４２は、セマンティックリポジトリ１４６に、推論プロセスを通して生成された新しいセマンティック情報を記憶するための要求を送信し得る。これを行うべきかどうかは、アプリケーションまたはＭ２Ｍサービス層システムによる構成に依存する。セマンティックリポジトリ１４６は、新しい情報を記憶後、応答する。
【００７５】
推論ルール管理が、以下に議論される。タイプ１またはタイプ２等の異なるタイプの推論ルールが、存在し得る。タイプ１推論ルールは、同一オントロジー内の関係間またはクラス間の論理を定義する。例えば、図７に関連付けられた第１のシナリオに図示されるように、ＬＥＤ照明が明るさ調節可能である場合、タイプ１推論ルールは、以下のように定義され得る：｛？ｌｉｇｈｔｒｄｆ：ｔｙｐｅｏｎｔｏｌｏｇｙ１０１：ｌｅｄ＿ｌｉｇｈｔ｝＝＞｛？ｌｉｇｈｔｒｄｆ：ｔｙｐｅｏｎｔｏｌｏｇｙ１０１：ｂｒｉｇｈｔｎｅｓｓ＿ａｄｊｕｓｔａｂｌｅ＿ｌｉｇｈｔ｝。タイプ２推論ルールは、異なるオントロジー（２つ以上のオントロジー）における関係間またはクラス間の論理を定義する。例えば、図７に関連付けられた第１のシナリオに提示される推論ルールは、それが２つの異なるオントロジーを横断するので、タイプ２推論ルールである。タイプ２推論ルールは、以下のように定義され得る：｛？ｌｉｇｈｔｏｎｔｏｌｏｇｙ１００：ｋｉｎｄ“ｌｅｄ”｝＝＞｛？ｌｉｇｈｔｒｄｆ：ｔｙｐｅｏｎｔｏｌｏｇｙ１０１：ｌｅｄ＿ｌｉｇｈｔ｝。
【００７６】
推論ルールの作成が、以下に議論され。作成は、本明細書に議論されるように、必ずしも、Ｍ２Ｍシステムが推論ルールを作成することを意味するわけではない。代わりに、Ｍ２Ｍシステムは、推論ルールを記憶するためのエントリを作成し得る。Ｍ２Ｍシステムにおけるサービス層エンティティ（例えば、ｏｎｅＭ２Ｍ内のＣＳＥ）は、下層セマンティックシンタックス（例えば、ＲＤＦ／ＲＤＦＳに定義される、ＲＤＦスキーム、クラス、およびプロパティ）を理解できないこともあるが、ＣＲＵＤ動作が、Ｍ２Ｍシステム内の推論ルールを管理するために実施される。
【００７７】
新しい推論ルールの作成をトリガし得る複数のケースが、存在する。ケース１では、新しいオントロジーが、パブリッシュされ、Ｍ２Ｍシステム内に記憶され、新しい推論ルールが、その新しいオントロジー内の関係／クラスとＭ２Ｍシステムにおける既存のオントロジーの関係／クラスとの間に作成される。この場合、新しい推論ルールは、タイプ２であり得る。ケース２では、新しい関係／クラスが、既存のオントロジーに定義され、新しい推論ルールが、この新しい関係／クラスと既存の関係／クラスとの間に作成される。この場合、新しい推論ルールは、タイプ１またはタイプ２であり得る。
【００７８】
図１５は、新しいオントロジーがパブリッシュされ、Ｍ２Ｍシステム内に記憶されるとき（例えば、ケース１）のタイプ２推論ルールを作成する例示的方法を図示する。ステップ１６１では、オントロジー１００は、すでにＭ２Ｍシステム内に記憶されている。同時に、アプリケーション１６０は、オントロジー発見プロセスを通してオントロジー１００を発見する（ステップ１６１）。オントロジー発見プロセスは、アプリケーション１６０が新しいオントロジーをＭ２Ｍシステムにパブリッシュすることを欲するとき等、アプリケーション１６０がオントロジー間にいくつかの推論ルールを作成可能であるかどうかを把握することを欲するときにトリガされ得る。ステップ１６２−ステップ１６４では、アプリケーション１６０は、要求および応答メッセージをオントロジーリポジトリ１４５と交換し、新しいオントロジー１０１をパブリッシュし、Ｍ２Ｍシステムの中に追加する。特に、ステップ１６２では、アプリケーション１６０は、オントロジー１０１を作成するための要求メッセージをオントロジーリポジトリに送信し得る。ステップ１６３では、オントロジー１０１が、作成される。ステップ１６４では、応答メッセージが、アプリケーション１６０に送信され、それは、オントロジー１０１の作成を確認するメッセージを含み得る。ステップ１６４の応答は、作成され、オントロジーリポジトリ１４５内に記憶されるオントロジーへの参照（例えば、ＵＲＬ）を含み得る。
【００７９】
ステップ１６５では、アプリケーション１６０が、オントロジー１０１がＭ２Ｍシステムに正常に追加されたことを確認する応答を入手すると、アプリケーション１６０は、推論ルールマネージャ１４３に、オントロジー１００とオントロジー１０１との間のある論理関係を確立する推論ルールを作成することに対する要求を送信し得る。ステップ１６５の要求メッセージ内に含まれ得るパラメータは、とりわけ、推論ルールタイプ（この例では、タイプ２）、オントロジー（または複数のオントロジー）への参照（例えば、ＵＲＩ）、推論ルール、推論ルールのフォーマット、または推論ルールを記憶するための場所を含み得る。推論ルールタイプは、ステップ１６５の要求において作成すべき推論ルールのタイプを示し、関与するオントロジーの数を含意する。これは、推論ルールマネージャ１４３によって行われる検証方法を提供し、推論ルールマネージャ１４３は、推論ルールを関与するタイプおよびオントロジーと比較する。オントロジーまたは複数のオントロジーへの参照は、推論ルールに含まれるクラス／関係が定義されるオントロジーにアクセスするための参照（例えば、ＵＲＩ）を提供する。推論ルールは、１つまたは２つのオントロジーにおいて定義されるクラス／関係間の論理を示す。例は、図７に関連付けられたシナリオに関して提示される。推論ルールのフォーマットは、アプリケーション１６０または他のエンティティが推論ルールを理解および適用することを助けるために、推論ルールを表すフォーマットを示す。それは、標準フォーマット（例えば、ＲＩＦ）または非標準フォーマットであり得る。推論ルールを記憶するための場所は、推論ルールを記憶すべき場所を示す。推論ルールリポジトリ１４４は、機能データベースであり、それは、推論ルールが実際には別の物理データベース内に記憶され得ることを意味する。アプリケーション１６０が、新しい推論ルールを記憶すべき場所を規定しない場合、ルールマネージャは、新しいルールをデフォルト場所に記憶し得る。例えば、タイプ１推論ルールは、タイプ１ルールが同一オントロジー内のクラス／関係間のいくつかの論理を規定するので、オントロジーが定義されるオントロジーリポジトリ１４５内に記憶され得る。異なるオントロジーを横断して論理関係を示すタイプ２推論ルールに対して、それは、推論ルールリポジトリ１４４内に記憶され得る。推論ルールを作成および維持すべき場所は、通常、推論ルールマネージャ１４３に依存する。
【００８０】
ステップ１６５を参照すると、代替方法が、ステップ１６５の要求をステップ１６２において送信される要求と組み合わせるために実装され得る。アプリケーション１６０は、１つの要求メッセージを送信することによって、オントロジーをパブリッシュし、推論ルールをシステムの中に作成することを要求し得る。その場合、オントロジーリポジトリ１４５は、新しいルールを推論ルールリポジトリ１４４内に作成することに対する要求を直接推論ルールマネージャ１４３に送信し得る。
【００８１】
ステップ１６６では、推論ルールマネージャ１４３は、新しい推論ルールを作成する前に、ステップ１６５の要求を検証し得る。検証は、以下のチェックを含み得る：とりわけ、アプリケーション１６０が推論ルールを作成することを可能にされるかどうか；クラスまたは関係が参照オントロジー内で有効であるかどうか；または、推論ルールを記憶するための所望の場所が有効かつアクセス可能であるかどうか。ステップ１６７では、検証合格に基づいて、推論ルールマネージャ１４３は、新しい推論ルールを作成するための要求を推論ルールリポジトリ１４４に送信する。要求メッセージは、ステップ１６５の要求内に含まれるコンテンツおよびパラメータのうちの１つ以上のものを搬送する。ステップ１６８では、新しい推論ルールが、作成され、推論ルールリポジトリ１４４内に記憶され得る。ステップ１６９では、応答メッセージは、推論ルールマネージャ１４３と、新しい推論ルールを作成するための要求を開始したアプリケーション１６０とに返され得る。ステップ１６９の応答では、新しい推論ルールへの参照は、推論ルールマネージャ１４３およびアプリケーション１６０（すなわち、この場合、発信側）が、他の動作、例えば、削除または無効化のためにルールにアクセスし得るように、含まれ得る。参照は、ＵＲＩまたは一意のＩＤであり得る。
【００８２】
図１５は、タイプ２を参照するが、タイプ１推論ルールの作成は、ほぼ同一プロシージャに従い、いくつかの差異を伴う。第１の差異は、オントロジー１００が、必ずしも、事前に構成され、システム内に記憶されていないということである（例えば、ステップ１６１）。より一般的に、アプリケーション１６０は、タイプ１推論ルールが１つのオントロジー内の関係を明らかにするので、オントロジー１００を発見する必要がないこともある。第２の差異は、ステップ１６５の要求メッセージのパラメータが、タイプ１ルールに関与する関係またはクラスを含むことである。これらのクラスまたは関係は、同一オントロジーにおいて定義される。加えて、パラメータは、タイプ２からタイプ１に変更されるべき推論ルールのタイプを示す。
【００８３】
先に述べられたように、新しい推論ルール、特に、タイプ１ルールは、オントロジー定義とともに、オントロジーリポジトリ１４５内に記憶されることができる。この場合、推論ルールマネージャ１４３は、新しいルールを記憶するために、オントロジーリポジトリ１４５と通信し得る（例えば、図１５におけるステップ１６６およびステップ１６７）。加えて、ここでは、オントロジーをパブリッシュ／管理する同一アプリケーションが、推論ルールを作成すると仮定される。異なるアプリケーションが、最初に、オントロジーを発見および理解し、次いで、オントロジーを管理するエンティティと比較され、推論ルールを作成することも可能である。言い換えると、推論ルールを作成するアプリケーションは、オントロジーを作成するものと異なるアプリケーションであり得る。一般に、これは、タイプ１およびタイプ２ルールの両方に当てはまり得る。
【００８４】
図１６は、オントロジーが更新されたとき、タイプ２推論ルールを作成する例示的方法を図示する（例えば、ケース２）。ステップ１７０では、オントロジー１００およびオントロジー１０１が、システム内に記憶されている。これは、コールフローが２つのオントロジーを接続するタイプ２推論ルールの作成を示すために仮定される。ステップ１７１−ステップ１７３では、アプリケーション１６０は、オントロジー１０１を更新するための要求、例えば、関係またはクラスをオントロジー１０１の中に追加するための要求を送信する。図１６のステップ１７４−ステップ１７８では、アプリケーション１６０は、図１５の同一ステップ１６５−ステップ１６９に従い、オントロジー１０１が正常に更新された後、新しい推論ルールをルールリポジトリ内に作成する。図１５は、ケース１のための新しいルールを作成するプロシージャを示し、プロシージャにおいて、新しいオントロジーは、パブリッシュされ、Ｍ２Ｍシステム内に記憶され、新しい推論ルールが、新しいオントロジー内の関係／クラスとＭ２Ｍシステムにおける既存のオントロジーの関係／クラスとの間に作成される。図１６は、ケース２のための新しいルールを作成するプロシージャを示し、新しい関係／クラスが、既存のオントロジーに定義され、新しい推論ルールが、この新しい関係／クラスと既存の関係／クラスとの間に作成される。ケース１に対して、ルールは、タイプ２である。ルールは、ケース２に対して、タイプ１またはタイプ２であり得る。新しいルールを作成するプロシージャは、同一であり得るが、トリガは、異なる。
【００８５】
図１７は、オントロジーが更新されるとき（例えば、クラスが削除されるとき、または関係が更新されるとき）の推論ルールを削除するための例示的方法を図示し、それは、推論ルールが更新されたクラス／関係とのいくつかの論理を定義するので、推論ルールに影響を及ぼす。オントロジーにおけるある関係またはクラスが削除されるか、またはオントロジーが除去されると、いくつかの推論ルールは、削除される必要があることが可能である。ステップ１８０では、オントロジー１００およびオントロジー１０１の両方が、作成されており、オントロジー１００におけるクラス／関係とオントロジー１０１におけるクラス／関係とを接続する推論ルールが、推論ルールリポジトリ１４４内に維持されている。ステップ１８１−ステップ１８３では、アプリケーション１６０は、オントロジーリポジトリ１４５にコンタクトすることによって、オントロジー１０１に定義されているあるクラス／関係を更新する。ステップ１８４では、アプリケーション１６０は、更新されたオントロジー１０１内のクラス／関係に関連する推論ルールを削除するための要求を送信する。この場合、要求メッセージは、関連クラス／関係へのリンクまたはワイルドカード情報を含み得る。ワイルドカード情報は、ルールのリストを削除するために使用され得る。例えば、クラスＡが、ステップ１８１において削除された場合、アプリケーション１６０は、ステップ１８４において、ワイルドカード情報を提供し、クラスＡを伴う全ての推論ルールを削除するように求め得る。ステップ１８４のための理由が、アプリケーション１６０が特定の推論ルールを削除することを欲するためであることも可能である。この場合、標的推論ルールを識別するための参照（例えば、ルールＩＤまたはＵＲＬ）が、要求内に提供されるべきである。オントロジーリポジトリ１４５が、オントロジーが更新または削除されるとき、推論ルールを削除する必要性を検出可能であると仮定すると、オントロジーリポジトリが、ステップ１８４のこの要求を送信し、オントロジー更新によって影響される推論ルールを削除することも可能である。
【００８６】
ステップ１８５では、推論ルールマネージャ１４３は、アプリケーション１６０が推論ルールを削除する権利を有するかどうかをチェックすること、標的推論ルールが存在するかどうかをチェックすること、標的推論ルールが有効であるかどうかをチェックすること等によって、要求を検証する。ステップ１８６−ステップ１８８では、推論ルールマネージャ１４３は、推論ルールリポジトリ１４４に、標的推論ルールを削除することを要求し、応答が、推論ルールリポジトリ１４４から推論ルールマネージャ１４３およびアプリケーション１６０に返される。ステップ１８７における推論ルールの削除は、削除された推論ルールに基づいて、論理的含意を削除する動作をもたらし得ることに留意されたい。これらの動作を促進するために、論理的含意（例えば、推論プロセスを通して推測される新しいセマンティック情報）が、オリジナルセマンティック情報と別個に記憶されることが提案され、各推論ルールは、ルールに基づいて生成された推測される情報へのリンクを維持する。ある例では、別個に記憶されることに関して、オリジナル情報は、ＵＲＬ：／ＴｒｉｐｌｅＳｔｏｒｅ／ｏｒｉｇｉｎａｌ＿ｄａｔａ＿１とともにＴｒｉｐｌｅＳｔｏｒｅ内に記憶され得る。次いで、いくつかの論理的含意が、推論ルールを適用することによって、オリジナルデータに基づいて生成され、異なるＵＲＬ：／ＴｒｉｐｌｅＳｔｏｒｅ／ｅｎｔａｉｌｅｍｅｎｔｓ＿１とともにＴｒｉｐｌｅＳｔｏｒｅ内に記憶され得る。後に、ＣＲＵＤ動作が、これらの２つの別個のデータセットに実施され得る。
【００８７】
推論ルールの更新は、更新された推論ルールに基づいて生成されたセマンティック情報の更新等のいくつかのさらなる動作をトリガし得る。この種類の動作は、推論ルールと推測されるセマンティック情報との間の同期のために、有意なオーバーヘッドおよび複雑性を被り得る。したがって、推論ルールの直接更新は、回避されるべきである。代わりに、それは、必要ならば、古いものを維持または削除しながら、新しい推論ルールを作成することによって行われ得る。古いルールが削除される場合、古いルールに基づいて推測される情報も、前述のように削除される。
【００８８】
セマンティック推論プロセスのトリガに関する詳細が、以下に議論される。セマンティック推論プロセスは、オンデマンドで、または先を見越した様式で、トリガおよび実施され得る。例えば、アプリケーションまたはクライアントは、セマンティッククエリ要求を開始し得、それは、いくつかの暗示的情報が、抽出され、セマンティッククエリ結果の一部として返され得るように、推論プロセスをトリガし、いくつかの推測および演繹を行い得る。セマンティックアノテーションも、アプリケーションがいくつかのセマンティック情報をセマンティックグラフストア内に作成しようとするとき、セマンティック推論プロセスを先を見越してトリガし得る。推論プロセスは、他のプロセス、例えば、セマンティッククエリおよびセマンティックアノテーションとともにトリガおよび実施され得ることに留意されたい。この節に導入されるセマンティックアノテーションおよびセマンティッククエリプロセス方法は、これらのプロセスについての詳細を含まない。
【００８９】
図１８は、セマンティッククエリプロセスによってトリガされる、セマンティック推論プロセスの例示的方法を図示する。ステップ２１１では、アプリケーション１６０は、要求をセマンティッククエリエンジン１４７に送信することによって、セマンティッククエリプロセスを開始する。ステップ２１１の要求では、セマンティック推論に関連するパラメータは、推論有効化指示、セマンティック推論を通して新しい情報を処理する方法、推論能力要件、推論エンジンへの参照、ルール返信要件、セマンティック推論ルール、またはオントロジーリストを含み得る。
【００９０】
ステップ２１１を継続して参照すると、推論有効化指示は、アプリケーションが、クエリ中、推論プロセスを有効にすること（例えば、トリガ）を欲するかどうかを示し得る。パラメータ「セマンティック推論を通して新しい情報を処理する方法」は、推論プロセスを介して生成された新しいセマンティック情報を処理し、取り扱うための方法の指示であり得る。処理するための潜在的方法は、以下を含み得る：１）新しいメタデータをＭ２Ｍシステムまたはセマンティックグラフストア１４８内に恒久的に記憶すること；２）該当する場合、いくつかのセマンティック情報（例えば、ＲＤＦトリプル）を作成することによって、新しいコンテンツデータをアノテートすること；３）Ｍ２Ｍシステムまたはセマンティックグラフストア１４８内に記憶せずに、新しいセマンティック情報を返すこと；または、４）全ての新しいデータを新しい別個のデータセット内に記憶し、オリジナルデータセットによって使用される同一アクセス制御ポリシを適用すること。
【００９１】
推論能力要件は、アプリケーション１６０が推論プロセスを有効にする場合、所望される推論能力も規定し得る。ＲＤＦＳ推測、ＯＷＬ推測、または一般的推論器（例えば、ユーザ定義推論ルールをサポートする）等の異なるタイプの推論能力が、定義され得る。推論エンジンへの参照は、アプリケーション１６０が推論プロセスを実施するために使用することを所望するセマンティック推論プロセッサ１４１を示し得る。異なる推論エンジンは、異なる推論能力、異なるサポートフォーマット、および異なるインターフェース（例えば、ＲＥＳＴｆｕｌ）を有し得る。これが規定されない場合、デフォルト推論エンジンが、使用され得る。推論エンジンは、Ｍ２Ｍサービス層プラットフォームまたは同一エンジンの異なるインスタンスを通して利用可能な既存のエンジン（例えば、Ｐｅｌｌｅｔ、Ｈｅｒｍｉｔ、Ｖａｍｐｉｒｅ）であり得ることに留意されたい。ルール返信要件は、アプリケーション１６０が、推論プロセスにおいて使用されるルールを通知されることを所望するかどうかを示し得る。ルール返信要件が、設定される場合、使用されるルールが、アプリケーション１６０に、ステップ２２１において、クエリ結果とともに返され得る。セマンティック推論ルールは、アプリケーションがいくつかの自己定義ルールをリアルタイム様式で規定することを可能にし得る。セマンティック推論ルールは、推論のためのシステム内に維持される、推論ルール以外のものである。オントロジーリストは、有用な推論ルールを発見するために使用されるオントロジーのリストを含み得る。同一関係／クラスを伴う多くの推論ルールが、存在し得るが、アプリケーション１６０は、それらの全てには関心がないこともある。このリストを規定することによって、アプリケーション１６０は、推論ルールリポジトリ１４４から見出される推論ルールの数を制限し、推論プロセスに関連付けられた有意なオーバーヘッドを最小限にし得る。例えば、スマートホームアプリケーション（例えば、アプリケーション１６０）は、自宅における空気品質センサを見出すことを所望し得、農業および保険医療ドメインために生成された新しい情報に関心がないので、有用な推論ルールを発見するとき、それらの２つのドメインのために定義されたオントロジーをリストから除外し得る。
【００９２】
図１８を継続して参照すると、ステップ２１２では、クエリ要求を受信すると、セマンティッククエリエンジン１４７は、推論有効化指示をチェックする。セマンティック推論が有効にされない場合、セマンティッククエリエンジン１４７は、単に、規則的クエリプロセスに従って、セマンティッククエリ要求を処理する。推論が、有効にされる（例えば、アプリケーション１６０が、クエリプロセスとともに、セマンティック推論の実施を所望する）場合、セマンティッククエリエンジン１４７は、アプリケーション１６０が、セマンティック推論をサービスとして使用する権利を有するかどうかをチェックし得る。ステップ２１３では、セマンティッククエリエンジン１４７が、アプリケーション１６０がセマンティッククエリとともに推論をトリガすることを可能にされていることを見出す場合、セマンティッククエリエンジン１４７は、要求をセマンティック推論プロセッサ１４１に送信し得る。アプリケーション１６０が、セマンティック推論プロセッサへの参照をステップ２１１の要求内に規定しない場合、セマンティッククエリエンジン１４７は、デフォルト推論プロセッサを使用するか、または発見プロセスを開始し、利用可能な推論プロセッサを見出し得る。
【００９３】
ステップ２１４では、セマンティック推論プロセッサ１４１は、推論プロセスをトリガするためのステップ２１３の要求を受信すると、潜在的に有用な推論ルールを識別する。有用な推論ルールを識別するために、ルールマネージャは、セマンティッククエリプロセスに関与するオントロジーに関連するルールを探し得る。セマンティッククエリは、オントロジーの組をプレフィックス定義ならびにクエリボディ内に含み得る。ステップ２１５では、有用な推論ルールを取得するために、セマンティック推論プロセッサ１４１は、推論ルールリポジトリ１４４に、有用なルールを読み出すための要求を送信し得る。要求メッセージは、ルールマネージャが、対応するオントロジーに定義されるクエリに関与するクラスまたは関係に関連する推論ルールを返し得るように、アプリケーション１６０からのセマンティッククエリを要求内に含み得る。先に議論されるように、推論ルールリポジトリ１４４が、オントロジーリポジトリ１４５と共同設置される場合、ステップ２１５における要求は、オントロジーリポジトリ１４５に進み、潜在的推論ルールを読み出す。
【００９４】
図１８を継続して参照すると、ステップ２１６では、推論ルールリポジトリ１４４は、応答におけるルールの数、推論ルールのリスト、および他のルールリポジトリへの参照等、有用であり得る推論ルールを応答において返し得る。応答におけるルールの数は、潜在的に有用な推論ルールとして識別および返されるルールの数を示し得る。推論ルールのリストは、見出された推論ルールのリストと見なされ得る。他のルールリポジトリへの参照は、セマンティック推論プロセッサ１４１がより有用な推論ルールを見出すことを所望する場合、または推論ルールが現在の推論ルールリポジトリ１４４に見出されない場合、追加の推論ルールを見出すために、別の推論ルールリポジトリ１４４のアクセスを参照し得る。ステップ２１７では、推論ルールを推論ルールリポジトリ１４４から受信すると、セマンティック推論プロセッサ１４１（例えば、推論エンジン）は、より多くの情報がクエリのために返され得るように、推論ルールをクエリの中に統合することによって、セマンティッククエリを更新する。例えば、図７の照明制御アプリケーション１０６は、ＳＰＡＲＱＬクエリを開始し、建物内のＬＥＤ照明を見出し得る。
オリジナルＳＰＡＲＱＬクエリ：
【表５−２】
2019527394.tif 000010
図７に関連付けられた第１のシナリオを参照して提示される以下の推論ルール
【表５−３】
2019527394.tif 000011
を前提として：
セマンティック推論プロセッサは、セマンティッククエリを以下のように更新し得る。
更新されたＳＰＡＲＱＬクエリ：
【表５−４】
2019527394.tif 000012
【００９５】
このステップ２１７に関してこれを行うことによって、クエリは、実際のセマンティック情報（例えば、ＲＤＦトリプル）がスマートビルディングオントロジー１００に基づいて提示される場合、いくつかの情報を返し得る。言い換えると、これは、異なるドメイン／バーティカル（例えば、スマートビルディングおよび照明制御）間の相互運用性を有効にする。スマートビルディング内のデバイスおよびアプライアンスが、オントロジー１００に基づいて記述される一方、照明ドメインから生じる照明制御アプリケーション１０６が、オントロジー１０１に基づいて表されるセマンティック情報を期待することが可能である。そして、推論ルールは、同じモノに対する異なる用語／語彙を用いて２つのドメインを接続する。そのような推論ルールおよび推論能力がなければ、照明制御アプリケーション１０６は、セマンティック情報がオントロジー１００に基づくので、照明を見出さないこともある。
【００９６】
ステップ２１８では、セマンティック推論プロセッサ１４１は、更新されたセマンティッククエリをセマンティッククエリエンジン１４７に返す。セマンティック推論プロセッサ１４１が、修正されたセマンティッククエリをセマンティックグラフストア１４８に送信することも可能である。この場合、ステップ２１８およびステップ２１９は、セマンティック推論プロセッサ１４１からセマンティックグラフストア１４８に更新されたセマンティッククエリ要求を搬送するために、組み合わせられる。ステップ２１９−２２１では、セマンティッククエリエンジン１４７は、セマンティックグラフストア１４８にコンタクトし、セマンティッククエリを標的データセットに実施し（ステップ２２０）、セマンティックグラフストア１４８は、クエリの結果をセマンティッククエリエンジン１４７およびアプリケーション１６０に返す。
【００９７】
図１８を継続して参照すると、代替として、セマンティック推論プロセッサ１４１は、更新されたクエリにおいてオリジナルクエリのコンテンツを除外し得（ステップ２１７）、要求を直接セマンティッククエリのためにセマンティックグラフストア１４８に送信し、セマンティックグラフストア１４８がクエリ結果を返すとき、より多くのトリプルをクエリ結果の中に追加し得る。
【００９８】
セマンティッククエリプロセスに加え、セマンティック推論プロセスは、セマンティックアノテーションプロセスによってもトリガされ得る。Ｍ２Ｍリソースのセマンティックアノテーションは、一貫したデータ変換およびデータ相互運用性を異種Ｍ２Ｍアプリケーションに提供するために、セマンティック情報（例えば、メタデータ、ＲＤＦトリプル）をＭ２Ｍリソースに追加する方法である。例えば、温度は、２０１６年１月８日金曜日のＰｈｉｌａｄｅｌｐｈｉａでは、華氏２０度であり得る。値２０は、データコンテンツであり、それは、アプリケーションに透過性である。他の情報（例えば、単位、時間、または場所）は、データコンテンツ値２０を説明するメタデータである。メタデータがなければ、データコンテンツ自体は、異なるドメインからのアプリケーション（例えば、スマートホームおよびスマートトランスポーテーション）に非透過性である、言い換えると、アプリケーション１６０がコンテンツ値２０が意味する内容を理解することは、困難であり得る。アプリケーション１６０は、これが温度測定値であることさえ把握しないこともある。
【００９９】
図１９は、セマンティック推論プロセスの例示的方法を図示し、それは、セマンティックアノテーションプロセスによってトリガされる。ステップ２３１では、アプリケーション１６０は、セマンティックアノテーション要求をセマンティックアノテーションプロセッサ１４９に送信し、データコンテンツのためのいくつかのセマンティック情報（例えば、ＲＤＦトリプル）を作成する。ステップ２３１の要求は、図１８のステップ２１１に説明されるような類似情報を含み得る。ステップ２３１の要求は、アプリケーション１６０がデータをＭ２Ｍシステムに報告するときの要求と統合され得ることに留意されたい。例えば、温度センサが、最新温度測定をＭ２Ｍサーバに報告するとき、センサは、セマンティックアノテーションプロセッサ１４９に、実際の温度値（例えば、温度測定）を説明するためのいくつかのメタデータ（例えば、セマンティック情報）を作成することも要求し得る。さらに、推論は、新しいセマンティック情報に基づいて、同一メッセージ内で有効にされ得る。ステップ２３２−ステップ２３３では、セマンティックアノテーションプロセッサ１４９は、アプリケーション１６０がアノテーションをトリガすることを可能にされているかどうかを検証し、アプリケーション１６０がそれを行う権利を有する場合、セマンティック情報を作成することによって、セマンティックアノテーションプロセスを実施する。例えば、ステップ２３３では、セマンティックアノテーションプロセッサ１４９は、アノテーションのための新しいセマンティック情報（トリプル）を生成する。
【０１００】
ステップ２３４では、セマンティック情報の作成完了時、セマンティックアノテーションプロセッサ１４９は、推論プロセスが、ステップ２３１において受信された要求内で有効にされているかどうかと、アプリケーション１６０（例えば、発信側）が、推論プロセスを要求する権利を有するかどうかとをチェックする。ステップ２３５では、セマンティックアノテーションプロセッサ１４９は、例えば、アプリケーション１６０がステップ２３１において推論プロセスを有効にする場合、セマンティック推論プロセッサ１４１に、推論プロセスをトリガするための要求を送信する。ステップ２３６−ステップ２３８では、セマンティック推論プロセッサ１４１は、図１８のステップ２１４−ステップ２１６の類似ステップに従い、セマンティック推論プロセッサ１４１の推論ルールマネージャ（例えば、推論ルールマネージャ１４３）にコンタクトすることによって、有用な推論ルールを取得する。ステップ２３９では、セマンティック推論プロセッサ１４１は、いくつかの新しいセマンティック情報を生成し、それは、推論ルールマネージャから取得される推論ルールおよびステップ２３３においてアノテートされたセマンティック情報の両方に基づき得る。例えば、図１０に関連付けられた第２のシナリオに図示されるように、センサデバイスは、ステップ２３３において、以下のトリプル：ｓｅｎｓｏｒＡｒｄｆ：ｔｙｐｅｏｎｔｏｌｏｇｙ１３６：ｍｕｌｔｉ−ｆｕｎｃｔｉｏｎａｌＡｉｒＱｕａｌｉｔｙＳｅｎｓｏｒによって説明され得る。ステップ２３６−ステップ２３８において取得された推論ルール：ｏｎｔｏｌｏｇｙ１３６：ｍｕｌｔｉ−ｆｕｎｃｔｉｏｎａｌＡｉｒＱｕａｌｉｔｙＳｅｎｓｏｒｏｗｌ：ｅｑｕｉｖａｌｅｎｔＣｌａｓｓｏｎｔｏｌｏｇｙ１３０：ａｄｖａｎｃｅｄＡｉｒＱｕａｌｉｔｙＳｅｎｓｏｒを前提とする。言い換えると、オントロジー１３６内のｆｕｎｃｔｉｏｎａｌＡｉｒＱｕａｌｉｔｙＳｅｎｓｏｒは、オントロジー１３０に定義されるａｄｖａｎｃｅｄＡｉｒＱｕａｌｉｔｙＳｅｎｓｏｒと同一である。追加のトリプル：ｓｅｎｓｏｒＡｒｄｆ：ｔｙｐｅｏｎｔｏｌｏｇｙ１３６：ａｄｖａｎｃｅｄＡｉｒＱｕａｌｉｔｙＳｅｎｓｏｒが、ステップ２３９において、セマンティック推論プロセッサ１４１によって生成され得る。この新しいトリプル（：ｓｅｎｓｏｒＡｒｄｆ：ｔｙｐｅｏｎｔｏｌｏｇｙ１３０：ａｄｖａｎｃｅｄＡｉｒＱｕａｌｉｔｙＳｅｎｓｏｒ）は、いくつかのアプリケーショが、オントロジー１３０に基づいて、一酸化炭素（ＣＯ）および二酸化炭素（ＣＯ２）測定を入手するためのいくつかの空気品質センサを見出すことを試みるとき、セマンティッククエリを促進する。
【０１０１】
ステップ２４０を継続して参照すると、セマンティック推論プロセッサ１４１は、推論プロセスを通して生成された新しいセマンティック情報を伴う応答をセマンティックアノテーションプロセッサ１４９に送信する。ステップ２４１では、セマンティックアノテーションプロセッサ１４９は、新しいセマンティック情報を記憶するための要求をセマンティックグラフストア１４８に送信する。ステップ２４２では、セマンティックグラフストア１４８は、新しいトリプルを記憶する。ステップ２４３では、セマンティックグラフストア１４８は、ステップ２４１に関連付けられた応答メッセージをセマンティックアノテーションプロセッサ１４９およびアプリケーション１６０に送信する。ステップ２４３の応答メッセージでは、セマンティックグラフストア１４８は、アノテーションを通して生成されたセマンティック情報が、推論を通して生成されたセマンティック情報と同一場所に記憶されるかどうかを示し、新しいセマンティック情報が記憶されるとき、データセットへの参照を提供し得る。加えて、セマンティックアノテーションプロセッサ１４９からアプリケーション１６０への応答は、オリジナル情報も、Ｍ２Ｍシステム、例えば、ｏｎｅＭ２Ｍ  ＲＯＡ内のリソースツリー内に記憶される場合、オリジナル情報（例えば、ステップ２３１要求における情報またはステップ２３３において生成されたトリプル）への参照を含み得る。
【０１０２】
セマンティック推論プロセスは、推論ルールを通して表される論理を適用することによって、論理的含意を生成し得る。論理的含意は、セマンティック的にアノテートされたデータから導出される暗示的知識である。構成および要件に応じて、論理的含意は、セマンティックグラフストア、例えば、ＴｒｉｐｌｅＳｔｏｒｅ内に記憶される必要があり得る。ここに提示されるのは、論理的含意がセマンティックグラフストア内に記憶されることになると仮定して、論理的含意を処理するためのいくつかの方法（例えば、アクセス制御ポリシまたは記憶装置を構成する）である。新しく生成された情報がデータコンテンツであるか、メタデータであるかに応じて、異なるステップが、実施される。
【０１０３】
図２０は、論理的含意を取り扱う例示的方法を図示する。ステップ２５０では、推論プロセスが、完了される（例えば、論理的含意がすでに生成されている）。ステップ２５１では、セマンティック推論エンジン１４２は、次のステップを決定する前に、論理的含意がデータコンテンツ（例えば、過去１週間の温度の平均値）であるか、メタデータであるかをチェックする。ステップ２５２−ステップ２５７を含むケース２５８では、新しい論理的含意は、メタデータ（例えば、セマンティック情報またはトリプル）である。ステップ２５２では、論理的含意を記憶する前に、アクセス制御ポリシ情報が、新しい論理的含意に関連付けられ得る。セマンティック推論エンジン１４２は、生成される論理的含意に基づいて、オリジナルセマンティック情報に適用されるアクセス制御ポリシ情報を読み出すための要求を送信する。例えば、どのアプリケーションが、オリジナルデータを作成および削除することを可能にされているか、あるＩＰアドレスの組下またはエリア内のどのアプリケーションが、オリジナルデータを読み出すことを可能にされているか。これは、アクセス制御情報の内容の例である。ここでは、同一アクセス制御ポリシが、オリジナルセマンティック情報および新しい推測される情報（例えば、論理的含意）のために使用されると仮定される。したがって、ステップ２５２の要求メッセージは、セマンティックグラフストア１４８内にオリジナルセマンティック情報への参照を含む。
【０１０４】
ステップ２５３では、オリジナルセマンティック情報に適用されるアクセス制御ポリシが、セマンティック推論エンジン１４２に送信される。ステップ２５３のアクセス制御情報は、セマンティックトリプルまたはリソースツリー内のアクセス制御ポリシリソースへの参照の観点からであり得る。ステップ２５４では、セマンティック推論エンジン１４２は、アクセス制御ポリシを新しい論理的含意（すなわち、新しいセマンティック情報）に関連付ける。ステップ２５５では、セマンティック推論エンジン１４２は、セマンティックグラフストア１４８に、新しい論理的含意を所望の場所（例えば、オリジナルセマンティック情報と同一データセットまたは新しいデータセット）に記憶するための要求を送信する。新しい論理的含意を記憶するための所望の場所は、セマンティック推論プロセスをトリガするエンティティによって構成され得るか、または、場所が規定されない場合、デフォルト場所であり得る。例えば、新しいセマンティック情報（例えば、ＲＤＦトリプル）は、グラフストア内の別個のデータセット（例えば、／ｇｒａｐｈＳｔｏｒｅ／ｅｎｔａｉｌｍｅｎｔｓ１）内に記憶され得る一方、オリジナルセマンティック情報は、オリジナルデータセット（例えば、／ｇｒａｐｈＳｔｏｒｅ／ｏｒｉｇｉｎａｌ＿ｄａｔａ＿ｓｅｔ＿１）内に記憶される。要求では、推論エンジンは、ＡＰＩの標準フォーマットを使用し、ＳＰＡＲＱＬ更新およびＨＴＴＰインターフェース等の情報を転送し得る。
【０１０５】
ステップ２５６では、論理的含意は、ステップ２５５の要求に基づいて、記憶され得る。一般に、論理的含意は、オリジナルデータと別個のデータセット内に記憶される。別個の記憶装置は、容易な管理または単純なアクセス制御のためのものであり得る。容易な管理を参照すると、論理的含意は、将来的に管理され得る（更新または削除する）。それらが、オリジナルセマンティック情報と一緒に記憶される場合、セマンティック情報が、オリジナルであるか、または推測されたものであるかを区別することが困難であり、それは、管理をより困難にし得る。対応して、各データセットが、推論プロセスを通して論理的含意を記憶するために作成され、参照が、ステップ２５７において、セマンティック推論エンジン１４２に返される。
【０１０６】
単純アクセス制御に関して、オリジナルセマンティック情報のために、異なるドメインからのアプリケーションは、異なるルールを使用して、推論プロセスをトリガし得る。これらのアプリケーションは、異なるアクセス権を有し得、それが認可されない場合、他のアプリケーションのために生成された論理的含意にアクセスすることを可能にされるべきではない。これは、論理的含意をオリジナルデータから別個に記憶する理由を支持し得る。
【０１０７】
ステップ２５７では、セマンティックグラフストアは、新しいデータセットまたはオリジナル情報を含むものであり得る論理的含意が所望のデータセット内に正常に記憶されることを確認するための応答を推論エンジンに返信する。論理的含意を記憶するデータセットにアクセスするための参照が、応答内に含まれ得る。ケース２６８は、ステップ２６２−ステップ２６７を含む。
【０１０８】
ステップ２６２では、論理的含意が、非透過性であるデータコンテンツ（例えば、純粋値）である場合、新しいデータコンテンツは、セマンティック的にアノテートされるべきである。例えば、温度、湿度、または空気品質の値に基づいて、数字であり得る快適性指数が、追加され、温度が測定された時間および場所、温度値の単位（例えば、華氏または摂氏）等の数字を記述し得る。数字を理解することを可能にするために、日付または場所等のより多くの情報を提供することが有益であり得る。したがって、セマンティック推論エンジン１４２は、セマンティックアノテーションプロセッサ１４９に、セマンティックアノテーションプロセスをトリガするための要求を送信し得る。要求は、以下の情報を含み得る：１）新しいデータコンテンツ；２）新しいデータコンテンツを説明するための情報；または、３）新しいデータコンテンツをアノテートするために使用されるクラスおよび関係を定義するオントロジーへの参照。新しいデータコンテンツの例は、温度、空気品質、および湿度に基づいて、推論プロセスを通して推測される快適性指数であり得る。新しいデータコンテンツを記述するための情報の例は、新しい快適性指数の場所または時間を含み得る。
【０１０９】
図２０を継続して参照すると、ステップ２６３では、セマンティックアノテーションプロセッサ１４９は、Ｍ２Ｍリソースリポジトリ１４０およびセマンティックグラフストア１４８にコンタクトし、アクセス制御ポリシまたはオリジナルセマンティック情報へのリンク等のアノテーション前に、より多くの情報を読み出し得る。ステップ２６４では、セマンティックアノテーションプロセッサ１４９は、新しいセマンティック情報（例えば、新しいデータコンテンツを記述するためのＲＤＦトリプル）の組を生成する。ステップ２６５−ステップ２６７では、セマンティックアノテーションプロセッサ１４９は、セマンティックグラフストア１４８と通信し、アノテーションプロセスを通して、新しい論理的含意（例えば、データコンテンツ）ならびに新しいセマンティック情報を記憶する。データセットにアクセスするための参照が、応答内に含まれる。より具体的に、ステップ２６５では、要求が、新しいセマンティック情報を論理的含意とともにセマンティックグラフストア１４８内に記憶するために送信される。ステップ２６６では、セマンティックグラフストア１４８は、新しいセマンティック情報および論理的含意を記憶する。ステップ２６７では、セマンティックグラフストア１４８は、新しいセマンティック情報をグラフストア内に記憶するデータセットへの参照を含み得る応答を送信する。
【０１１０】
図２１は、ＯｎｅＭ２Ｍ  ＲＯＡにおけるセマンティック推論器の例示的アーキテクチャを図示する。以下に開示されるのは、ｏｎｅＭ２Ｍリソース指向アーキテクチャ（ＲＯＡ）においてセマンティック推論プロセスを適用する方法を示すいくつかの機構である。セマンティック推論器２７２は、ＣＳＥ２７１におけるＣＳＦとして展開され得る。代替として、セマンティック推論器２７２は、セマンティックエンジンの一部として展開され得、それは、セマンティッククエリ、セマンティックアノテーション、およびセマンティック推論等のいくつかのセマンティック関連機能性を含む、ＣＳＥ２７１におけるＣＳＦとして実装される。提案されるＣＳＦは、エンドデバイス、Ｍ２Ｍゲートウェイ、またはＭ２Ｍサーバに展開され得る。
【０１１１】
新しいリソース＜ｒｅａｓｏｎｉｎｇＲｕｌｅ＞が、ｏｎｅＭ２Ｍ  ＲＯＡにおけるセマンティック推論能力を有効にするために開示される。属性および子リソースは、表６にリストアップされる（ｏｎｅＭ２Ｍ−ＴＳ−０００１  ｏｎｅＭ２Ｍ  Ｆｕｎｃｔｉｏｎａｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ−Ｖ２．５．０に定義される共通およびユニバーサル属性のリストアップを伴わずに）。
【表６】
2019527394.tif 000013
【０１１２】
新しいリソースは、＜ＣＳＥＢａｓｅ＞リソースの後または直下に導入されるような＜ｓｅｍａｎｔｉｃＤｅｓｃｒｉｐｔｏｒ＞リソース、＜ＡＥ＞リソース、＜ｃｏｎｔａｉｎｅｒ＞リソース、および＜ｃｏｎｔｅｎｔＩｎｓｔａｎｃｅ＞リソース、＜ｓｅｍａｎｔｉｃＲｅａｓｏｎｅｒ＞リソースの子リソースとして追加され得る。
【０１１３】
表６に示されるように、＜ｒｅａｓｏｎｉｎｇＲｕｌｅ＞リソースは、１つ以上の＜ｒｅａｓｏｎｉｎｇＲｕｌｅ＞リソースを含み得、それらの各々は、異なる推論ルールを表す。これは、集中型推論ルールリポジトリの実装を促進し、全ての推論ルールを１つの＜ｒｅａｓｏｎｉｎｇＲｕｌｅ＞リソース下に維持する。推論ルールは、分散型方法で記憶されることも可能である。１つの＜ｒｅａｓｏｎｉｎｇＲｕｌｅ＞リソースも、複数のルールをルール記述子属性内に含み得るが、これらの複数のルールは、同一の組オントロジーに関連すべきであることに留意されたい。
【０１１４】
加えて、＜ｓｅｍａｎｔｉｃＲｅａｓｏｎｅｒ＞リソースは、ｏｎｅＭ２Ｍシステム内に展開される推論能力を示すために提案される。属性および子リソースは、表７にリストアップされる。
【表７】
2019527394.tif 000014
【０１１５】
本明細書に議論されるように、要求メッセージは、推論ルール管理ならびに推論プロセスを促進するためのいくつかの新しいパラメータを含み得る。
【０１１６】
推論ルール管理を有効にするために、要求メッセージのペイロードは、以下の情報を含み得る：１）ｒｅａｓｏｎｉｎｇＲｕｌｅＴｙｐｅ：管理されるべき推論ルールのタイプ、例えば、作成または削除を示す、２）ｒｅａｓｏｎｉｎｇＲｕｌｅ：推論ルールの記述または推論ルールにアクセスするための参照；３）ｓｔｏｒａｇｅＵＲＩ：作成されるべき新しい推論ルールを記憶する場所、または４）ｆｏｒｍａｔ：管理されるべき推論ルールを表すフォーマット、例えば、ＲＩＦ。
【０１１７】
推論プロセスをトリガおよび実施するために、既存のｏｎｅＭ２Ｍ要求メッセージは、本明細書に議論されるように、ｅｎａｂｌｅｍｅｎｔＩｎｄｉｃａｔｉｏｎ、ｒｅａｓｏｎｉｎｇＣａｐａｂｉｌｉｔｙ、またはｒｅａｓｏｎｉｎｇＲｕｌｅＬｉｓｔを含む。ｅｎａｂｌｅｍｅｎｔＩｎｄｉｃａｔｉｏｎは、メッセージによって要求される動作中、推論が有効にされるかどうかを示す。例えば、セマンティッククエリエンジン１４７が、セマンティッククエリ要求を受信するとき、セマンティッククエリエンジン１４７は、これが有効にされている場合、セマンティック推論プロセッサ１４１にコンタクトし、推論プロセスを開始し、そうでなければ、セマンティッククエリエンジン１４７は、クエリをセマンティックグラフストア１４８に転送する。ｒｅａｓｏｎｉｎｇＣａｐａｂｉｌｉｔｙは、好ましい推論能力、例えば、ＲＤＦＳ推論のみまたはＯＷＬ推論を示す。これは、所望の能力を伴う推論器を選択することに役立ち得る。内部または外部のいずれかで利用可能な複数の推論器が、存在し得る。ｒｅａｓｏｎｉｎｇＲｕｌｅＬｉｓｔは、推論プロセスにおいて使用されるべき推論ルールのリストまたは推論ルールのリストへの参照である。これは、アプリケーションが、１つ以上の推論ルールを要求内に規定することを可能にする。これらのルールは、ユーザによって定義され、推論プロセッサにリアルタイム様式で提供され、それは、システムにおいてすでにあるそれらと異なる。言い換えると、このパラメータは、いくつかのユーザ特定のルールを含み、それは、システム内に記憶されていないこともある。
【０１１８】
図２２は、サービスとしてセマンティック推論に関連付けられた例示的ユーザインターフェースを図示する。パラメータは、本明細書で議論されるセマンティック推論サービスを有効にし、利用するために定義される。ユーザインターフェースは、それらのパラメータをデフォルト値で構成またはプログラミングし、かつセマンティック推論サービスのためのある特徴を有効または無効にするためのスイッチを制御するために実装され得る。ブロック８０１は、セマンティック推論サービスアプリケーション８０２、ウェブサービスアプリケーション８０３、または電子メールアプリケーション８０４等の異なるアプリケーションを伴うデバイス（例えば、Ｍ２Ｍデバイス３０）のユーザインターフェースであり得る。セマンティック推論サービスアプリケーション８０２の選択は、ウィンドウ８０６を開き得、それは、推論またはルール管理等の選択肢を提供する。セマンティック推論サービスを有効にするステップに関連付けられたセマンティック推論構成は、本明細書に議論されるように、ウィンドウ８０７に表示され得る。ウィンドウ８０７内のテキストの選択は、別のウィンドウ８０９を開き得、それは、選択に関連付けられた追加の構成またはパラメータ情報を提供する。
【０１１９】
図２３は、本明細書で議論される方法およびシステムに基づいて生成され得る別の例示的ディスプレイ（例えば、グラフィカルユーザインターフェース）を図示する。ディスプレイインターフェース９０１（例えば、タッチスクリーンディスプレイ）は、ブロック９０２に、表６および７のパラメータ等の本明細書に議論されるようなセマンティック推論サービスの有効化に関連付けられたテキストを提供し得る。別の例では、本明細書で議論されるステップのいずれかの進行度（例えば、送信されたメッセージまたはステップの成功）が、ブロック９０２に表示され得る。加えて、グラフィカル出力９０３が、ディスプレイインターフェース９０１上に表示され得る。グラフィカル出力９０３は、デバイス（例えば、センサ）のトポロジ、本明細書で議論される任意の方法またはシステムの進行度のグラフィカル出力、オントロジーのグラフィカル出力等（例えば、図８Ａ−図８Ｂ）であり得る。
【０１２０】
図２４Ａは、セマンティック推論サービスの有効化に関連付けられた１つ以上の開示される概念が実装され得る例示的マシンツーマシン（Ｍ２Ｍ）、モノのインターネット（ＩｏＴ）、またはモノのウェブ（ＷｏＴ）通信システム１０の略図である（例えば、図７−図２０および付随の議論）。概して、Ｍ２Ｍ技術は、ＩｏＴ／ＷｏＴのための構築ブロックを提供し、任意のＭ２Ｍデバイス、Ｍ２Ｍゲートウェイ、またはＭ２Ｍサービスプラットフォームは、ＩｏＴ／ＷｏＴのコンポーネントならびにＩｏＴ／ＷｏＴサービス層等であり得る。
【０１２１】
図２４Ａに示されるように、Ｍ２Ｍ／ＩｏＴ／ＷｏＴ通信システム１０は、通信ネットワーク１２を含む。通信ネットワーク１２は、固定ネットワーク（例えば、Ｅｔｈｅｒｎｅｔ（登録商標）、Ｆｉｂｅｒ、ＩＳＤＮ、ＰＬＣ等）または無線ネットワーク（例えば、ＷＬＡＮ、セルラー等）、もしくは異種ネットワークのネットワークであり得る。例えば、通信ネットワーク１２は、音声、データ、ビデオ、メッセージング、ブロードキャスト等のコンテンツを複数のユーザに提供する、複数のアクセスネットワークから成り得る。例えば、通信ネットワーク１２は、符号分割多重アクセス（ＣＤＭＡ）、時分割多重アクセス（ＴＤＭＡ）、周波数分割多重アクセス（ＦＤＭＡ）、直交ＦＤＭＡ（ＯＦＤＭＡ）、単一キャリアＦＤＭＡ（ＳＣ−ＦＤＭＡ）等の１つ以上のチャネルアクセス方法を採用し得る。さらに、通信ネットワーク１２は、例えば、コアネットワーク、インターネット、センサネットワーク、工業制御ネットワーク、パーソナルエリアネットワーク、融合個人ネットワーク、衛星ネットワーク、ホームネットワーク、または企業ネットワーク等の他のネットワークを備え得る。
【０１２２】
図２４Ａに示されるように、Ｍ２Ｍ／ＩｏＴ／ＷｏＴ通信システム１０は、インフラストラクチャドメインと、フィールドドメインとを含み得る。インフラストラクチャドメインとは、エンドツーエンドＭ２Ｍ展開のネットワーク側を指し、フィールドドメインとは、通常はＭ２Ｍゲートウェイの背後にあるエリアネットワークを指す。フィールドドメインは、Ｍ２Ｍゲートウェイ１４と、端末デバイス１８とを含む。任意の数のＭ２Ｍゲートウェイデバイス１４およびＭ２Ｍ端末デバイス１８が、所望に応じてＭ２Ｍ／ＩｏＴ／ＷｏＴ通信システム１０に含まれ得ることを理解されるであろう。Ｍ２Ｍゲートウェイデバイス１４およびＭ２Ｍ端末デバイス１８の各々は、通信ネットワーク１２または直接無線リンクを介して、信号を伝送および受信するように構成される。Ｍ２Ｍゲートウェイデバイス１４は、無線Ｍ２Ｍデバイス（例えば、セルラーおよび非セルラー）ならびに固定ネットワークＭ２Ｍデバイス（例えば、ＰＬＣ）が、通信ネットワーク１２等のオペレータネットワークを通して、または直接無線リンクを通してのいずれかで、通信することを可能にする。例えば、Ｍ２Ｍデバイス１８は、データを収集し、通信ネットワーク１２または直接無線リンクを介して、データをＭ２Ｍアプリケーション２０または他のＭ２Ｍデバイス１８に送信し得る。Ｍ２Ｍデバイス１８はまた、Ｍ２Ｍアプリケーション２０またはＭ２Ｍデバイス１８からデータを受信し得る。さらに、データおよび信号は、以下で説明されるように、Ｍ２Ｍサービスプラットフォーム２２を介して、Ｍ２Ｍアプリケーション２０に送信され、そこから受信され得る。Ｍ２Ｍデバイス１８およびゲートウェイ１４は、例えば、セルラー、ＷＬＡＮ、ＷＰＡＮ（例えば、Ｚｉｇｂｅｅ（登録商標）、６ＬｏＷＰＡＮ、Ｂｌｕｅｔｏｏｔｈ（登録商標））、直接無線リンク、および有線を含む、種々のネットワークを介して通信し得る。
【０１２３】
図２４Ｂを参照すると、フィールドドメイン内に例証されるＭ２Ｍサービス層２２（例えば、本明細書に説明されるような図７または図１０のｏｎｅＭ２Ｍ  ＣＳＥ）は、Ｍ２Ｍアプリケーション２０（例えば、アプリケーション１６０または照明制御アプリケーション１０６）、Ｍ２Ｍゲートウェイデバイス１４、ならびにＭ２Ｍ端末デバイス１８および通信ネットワーク１２のためのサービスを提供する。Ｍ２Ｍサービスプラットフォーム２２は、所望に応じて、任意の数のＭ２Ｍアプリケーション、Ｍ２Ｍゲートウェイデバイス１４、Ｍ２Ｍ端末デバイス１８、および通信ネットワーク１２と通信し得ることを理解されるであろう。Ｍ２Ｍサービス層２２は、１つ以上のサーバ、コンピュータ等によって実装され得る。Ｍ２Ｍサービス層２２は、Ｍ２Ｍ端末デバイス１８、Ｍ２Ｍゲートウェイデバイス１４、およびＭ２Ｍアプリケーション２０に適用されるサービス能力を提供する。Ｍ２Ｍサービス層２２の機能は、例えば、ウェブサーバとして、セルラーコアネットワークで、クラウドで等、種々の方法で実装され得る。
【０１２４】
図示されたＭ２Ｍサービス層２２と同様に、インフラストラクチャドメイン内にＭ２Ｍサービス層２２’がある。Ｍ２Ｍサービス層２２’は、インフラストラクチャドメイン内のＭ２Ｍアプリケーション２０’および下層通信ネットワーク１２’のためのサービスを提供する。Ｍ２Ｍサービス層２２’はまた、フィールドドメイン内のＭ２Ｍゲートウェイデバイス１４およびＭ２Ｍ端末デバイス１８のためのサービスも提供する。Ｍ２Ｍサービス層２２’は、任意の数のＭ２Ｍアプリケーション、Ｍ２Ｍゲートウェイデバイス、およびＭ２Ｍ端末デバイスと通信し得ることを理解されるであろう。Ｍ２Ｍサービス層２２’は、異なるサービスプロバイダによってサービス層と相互作用し得る。Ｍ２Ｍサービス層２２’は、１つ以上のサーバ、コンピュータ、仮想マシン（例えば、クラウド／計算／記憶ファーム等）等によって実装され得る。
【０１２５】
図２４Ｂをさらに参照すると、Ｍ２Ｍサービス層２２および２２’は、多様なアプリケーションおよびバーティカルが活用することができるサービス配信能力のコアセットを提供する。これらのサービス能力は、Ｍ２Ｍアプリケーション２０および２０’がデバイスと相互作用し、データ収集、データ分析、デバイス管理、セキュリティ、請求、サービス／デバイス発見等の機能を果たすことを可能にする。本質的に、これらのサービス能力は、これらの機能性を実装する負担をアプリケーションから取り除き、したがって、アプリケーション開発を単純化し、市場に出す費用および時間を削減する。サービス層２２および２２’はまた、Ｍ２Ｍアプリケーション２０および２０’が、サービス層２２および２２’が提供するサービスと関連して、種々のネットワーク１２および１２’を通して通信することも可能にする。
【０１２６】
いくつかの例では、Ｍ２Ｍアプリケーション２０および２０’は、本明細書に開示されるようなセマンティック推論サービスを有効にする方法またはシステムを使用して通信する所望のアプリケーションを含み得る。Ｍ２Ｍアプリケーション２０および２０’は、限定ではないが、輸送、保健および健康、コネクテッドホーム、エネルギー管理、アセット追跡、ならびにセキュリティおよび監視等の種々の業界でのアプリケーションを含み得る。上記のように、システムのデバイス、ゲートウェイ、および他のサーバを経由して作動するＭ２Ｍサービス層は、例えば、データ収集、デバイス管理、セキュリティ、請求、場所追跡／ジオフェンシング、デバイス／サービス発見、およびレガシーシステム統合等の機能をサポートし、サービスとしてこれらの機能をＭ２Ｍアプリケーション２０および２０’に提供する。
【０１２７】
本願のセマンティック推論サービスを有効にする方法またはシステムは、サービス層の一部として実装され得る。サービス層は、アプリケーションプログラミングインターフェース（ＡＰＩ）および下層ネットワーキングインターフェースの組を通して付加価値サービス能力をサポートするミドルウェア層である。Ｍ２Ｍエンティティ（例えば、ハードウェア上で実装される、デバイス、ゲートウェイ、またはサービス／プラットフォーム等のＭ２Ｍ機能エンティティ）は、アプリケーションまたはサービスを提供し得る。ＥＴＳＩ  Ｍ２ＭおよびｏｎｅＭ２Ｍの両方は、本願のセマンティック推論サービスを有効にする方法またはシステムを含み得るサービス層を使用する。ｏｎｅＭ２Ｍサービス層は、共通サービス機能（ＣＳＦ）（すなわち、サービス能力）の組をサポートする。１つ以上の特定のタイプのＣＳＦの組のインスタンス化は、異なるタイプのネットワークノード（例えば、インフラストラクチャノード、中間ノード、特定用途向けノード）上でホストすることができる共通サービスエンティティ（ＣＳＥ）と称される。さらに、本願のセマンティック推論サービスを有効にする方法またはシステムは、本願のセマンティック推論サービスを有効にする方法またはシステム等のサービスにアクセスするために、サービス指向アーキテクチャ（ＳＯＡ）および／またはリソース指向アーキテクチャ（ＲＯＡ）を使用するＭ２Ｍネットワークの一部として実装されることができる。
【０１２８】
本明細書に開示されるように、用語「サービス層」は、ネットワークサービスアーキテクチャ内の機能的層と見なされ得る。サービス層は、典型的に、ＨＴＴＰ、ＣｏＡＰ、またはＭＱＴＴ等のアプリケーションプロトコル層の上方に位置し、付加価値サービスをクライアントアプリケーションに提供する。サービス層はまた、インターフェースを、例えば、制御層およびトランスポート／アクセス層等の下位リソース層におけるコアネットワークに提供する。サービス層は、サービス定義、サービスランタイム有効化、ポリシ管理、アクセス制御、およびサービスクラスタリングを含む（サービス）能力または機能性の複数のカテゴリをサポートする。最近、いくつかの産業規格団体、例えば、ｏｎｅＭ２Ｍが、インターネット／ウェブ、セルラー、企業、およびホームネットワーク等の展開へのＭ２Ｍタイプのデバイスならびにアプリケーションの統合に関連付けられた課題に対処するためのＭ２Ｍサービス層を開発している。Ｍ２Ｍサービス層は、アプリケーションまたは種々のデバイスに、ＣＳＥもしくはサービス能力層（ＳＣＬ）と称され得るサービス層によってサポートされる前述の能力または機能性の集合もしくは組へのアクセスを提供することができる。いくつかの例として、限定ではないが、種々のアプリケーションによって一般に使用され得るセキュリティ、請求、データ管理、デバイス管理、発見、プロビジョニング、および接続性管理が挙げられる。これらの能力または機能性は、Ｍ２Ｍサービス層によって定義されたメッセージフォーマット、リソース構造、およびリソース表現を利用するＡＰＩを介して、そのような種々のアプリケーションに利用可能となる。ＣＳＥまたはＳＣＬは、それらにそのような能力もしくは機能性を使用するために、ハードウェアおよび／もしくはソフトウェアによって実装され得、種々のアプリケーションならびに／もしくはデバイスにエクスポーズされる（サービス）能力または機能性を提供する機能エンティティ（例えば、そのような機能エンティティ間の機能インターフェース）である。
【０１２９】
図２４Ｃは、例えば、Ｍ２Ｍ端末デバイス１８（アプリケーション１６０または照明制御アプリケーション１０６を含み得る）またはＭ２Ｍゲートウェイデバイス１４（図１３の１つ以上のコンポーネントを含み得る）等の例示的Ｍ２Ｍデバイス３０の系統図である。図２４Ｃに示されるように、Ｍ２Ｍデバイス３０は、プロセッサ３２と、送受信機３４と、伝送／受信要素３６と、スピーカ／マイクロホン３８と、キーパッド４０と、ディスプレイ／タッチパッド４２と、非取り外し可能メモリ４４と、取り外し可能メモリ４６と、電源４８と、全地球測位システム（ＧＰＳ）チップセット５０と、他の周辺機器５２とを含み得る。Ｍ２Ｍデバイス３０は、開示される主題と一致したままで、先述の要素の任意の副次的組み合わせを含み得ることを理解されるであろう。Ｍ２Ｍデバイス３０（図７−図２０の１つ以上のコンポーネントを含み得る）は、セマンティック推論サービスの有効化のための開示されるシステムおよび方法を行う例示的実装であり得る。
【０１３０】
プロセッサ３２は、汎用プロセッサ、特殊目的プロセッサ、従来のプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、複数のマイクロプロセッサ、ＤＳＰコアと関連する１つ以上のマイクロプロセッサ、コントローラ、マイクロコントローラ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）回路、任意の他のタイプの集積回路（ＩＣ）、状態マシン等であり得る。プロセッサ３２は、信号符号化、データ処理、電力制御、入出力処理、および／またはＭ２Ｍデバイス３０が無線環境で動作することを可能にする任意の他の機能性を果たし得る。プロセッサ３２は、伝送／受信要素３６に結合され得る送受信機３４に結合され得る。図２４Ｃは、プロセッサ３２および送受信機３４を別個のコンポーネントとして描写するが、プロセッサ３２および送受信機３４は、電子パッケージまたはチップに一緒に組み込まれ得ることを理解されるであろう。プロセッサ３２は、アプリケーション層プログラム（例えば、ブラウザ）および／または無線アクセス層（ＲＡＮ）プログラムおよび／または通信を実施し得る。プロセッサ３２は、例えば、アクセス層および／またはアプリケーション層等で、認証、セキュリティキー一致、および／または暗号化動作等のセキュリティ動作を実施し得る。
【０１３１】
伝送／受信要素３６は、信号をＭ２Ｍサービスプラットフォーム２２に伝送し、またはＭ２Ｍサービスプラットフォーム２２から信号を受信するように構成され得る。例えば、伝送／受信要素３６は、ＲＦ信号を伝送および／または受信するように構成されるアンテナであり得る。伝送／受信要素３６は、ＷＬＡＮ、ＷＰＡＮ、セルラー等の種々のネットワークおよびエアインターフェースをサポートし得る。例では、伝送／受信要素３６は、例えば、ＩＲ、ＵＶ、または可視光信号を伝送および／または受信するように構成されるエミッタ／検出器であり得る。さらに別の例では、伝送／受信要素３６は、ＲＦおよび光信号の両方を伝送ならびに受信するように構成され得る。伝送／受信要素３６は、無線もしくは有線信号の任意の組み合わせを伝送および／または受信するように構成され得ることを理解されるであろう。
【０１３２】
加えて、伝送／受信要素３６は、単一の要素として図２４Ｃで描写されているが、Ｍ２Ｍデバイス３０は、任意の数の伝送／受信要素３６を含み得る。より具体的に、Ｍ２Ｍデバイス３０は、ＭＩＭＯ技術を採用し得る。したがって、例では、Ｍ２Ｍデバイス３０は、無線信号を伝送および受信するための２つ以上の伝送／受信要素３６（例えば、複数のアンテナ）を含み得る。
【０１３３】
送受信機３４は、伝送／受信要素３６によって伝送される信号を変調するように、および伝送／受信要素３６によって受信される信号を復調するように構成され得る。上記のように、Ｍ２Ｍデバイス３０は、マルチモード能力を有し得る。したがって、送受信機３４は、Ｍ２Ｍデバイス３０が、例えば、ＵＴＲＡおよびＩＥＥＥ８０２．１１等の複数のＲＡＴを介して通信することを可能にするための複数の送受信機を含み得る。
【０１３４】
プロセッサ３２は、非取り外し可能メモリ４４および／または取り外し可能メモリ４６等の任意のタイプの好適なメモリから情報にアクセスし、その中にデータを記憶し得る。非取り外し可能メモリ４４は、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、ハードディスク、または任意の他のタイプのメモリ記憶デバイスを含み得る。取り外し可能メモリ４６は、サブスクライバ識別モジュール（ＳＩＭ）カード、メモリスティック、セキュアデジタル（ＳＤ）メモリカード等を含み得る。他の例では、プロセッサ３２は、サーバまたは自宅コンピュータ上等のＭ２Ｍデバイス３０上に物理的に位置しないメモリから情報にアクセスし、その中にデータを記憶し得る。プロセッサ３２は、本明細書に説明される例のうちのいくつかにおけるセマンティック推論サービスの有効化が成功もしくは不成功である（例えば、一般的トリガ推論またはセマンティッククエリ関連付け推論等）に応答して、ディスプレイもしくはインジケータ４２上の照明パターン、画像、または色を制御する、または別様に、セマンティック推論サービスの有効化のステータスおよび関連付けられたコンポーネントを示すように構成され得る。ディスプレイまたはインジケータ４２上の照明パターン、画像、もしくは色の制御は、図に図示される、または本明細書で議論される（例えば、図７、図９、図１４−図２０等）方法フローもしくはコンポーネントのいずれかのステータスを反映し得る。本明細書に開示されるのは、セマンティック推論サービスを有効化するメッセージおよびプロシージャである。メッセージおよびプロシージャは、インターフェース／ＡＰＩを提供するように拡張され、ユーザが、入力ソース（例えば、スピーカ／マイクロホン３８、キーパッド４０、またはディスプレイ／タッチパッド４２）を介して、セマンティック推論サービス関連リソースを要求し、とりわけ、ディスプレイ４２上に表示され得るリソースのセマンティック推論サービス関連情報を要求、構成、またはクエリすることができる。
【０１３５】
プロセッサ３２は、電源４８から電力を受電し得、Ｍ２Ｍデバイス３０内の他のコンポーネントへの電力を分配および／または制御するように構成され得る。電源４８は、Ｍ２Ｍデバイス３０に給電するための任意の好適なデバイスであり得る。例えば、電源４８は、１つ以上の乾電池バッテリ（例えば、ニッケルカドミウム（ＮｉＣｄ）、ニッケル亜鉛（ＮｉＺｎ）、ニッケル水素（ＮｉＭＨ）、リチウムイオン（Ｌｉ−ｉｏｎ）等）、太陽電池、燃料電池等を含み得る。
【０１３６】
プロセッサ３２はまた、Ｍ２Ｍデバイス３０の現在の場所に関する場所情報（例えば、経度および緯度）を提供するように構成されるＧＰＳチップセット５０に結合され得る。Ｍ２Ｍデバイス３０は、本明細書に開示される情報と一致したままで、任意の好適な場所決定方法を介して場所情報を獲得し得ることを理解されるであろう。
【０１３７】
プロセッサ３２はさらに、追加の特徴、機能性、および／または有線もしくは無線接続性を提供する１つ以上のソフトウェアならびに／もしくはハードウェアモジュールを含み得る他の周辺機器５２に結合され得る。例えば、周辺機器５２は、加速度計、バイオメトリック（例えば、指紋）センサ、ｅ−コンパス等の種々のセンサ、衛星送受信機、センサ、デジタルカメラ（写真またはビデオ用）、ユニバーサルシリアルバス（ＵＳＢ）ポートまたは他の相互接続インターフェース、振動デバイス、テレビ送受信機、ハンズフリーヘッドセット、Ｂｌｕｅｔｏｏｔｈ（登録商標）モジュール、周波数変調（ＦＭ）無線ユニット、デジタル音楽プレーヤ、メディアプレーヤ、ビデオゲームプレーヤモジュール、インターネットブラウザ等を含み得る。
【０１３８】
伝送／受信要素３６は、センサ、消費者電子機器、スマートウォッチまたはスマート衣類等のウェアラブルデバイス、医療またはｅ−ヘルスデバイス、ロボット、産業機器、ドローン、車、トラック、電車、または飛行機等の乗り物等の他の装置もしくはデバイスで具現化され得る。伝送／受信要素３６は、周辺機器５２のうちの１つを備え得る相互接続インターフェース等の１つ以上の相互接続インターフェースを介して、そのような装置もしくはデバイスの他のコンポーネント、モジュール、またはシステムに接続し得る。
【０１３９】
図２４Ｄは、例えば、図２４Ａおよび図２４ＢのＭ２Ｍサービスプラットフォーム２２が実装され得る例示的なコンピューティングシステム９０のブロック図である。コンピューティングシステム９０（例えば、Ｍ２Ｍ端末デバイス１８またはＭ２Ｍゲートウェイデバイス１４）は、コンピュータまたはサーバを備え得、主に、そのような命令が記憶またはアクセスされる手段にかかわらず、コンピュータ読み取り可能な命令によって制御され得る。そのようなコンピュータ読み取り可能な命令は、コンピューティングシステム９０を稼働させるように、中央処理装置（ＣＰＵ）９１内で実行され得る。多くの公知のワークステーション、サーバ、および周辺コンピュータでは、中央処理装置９１は、マイクロプロセッサと呼ばれる単一チップＣＰＵによって実装される。他のマシンでは、中央処理装置９１は、複数のプロセッサを備え得る。コプロセッサ８１は、追加の機能を果たす、またはＣＰＵ９１を支援する、主要ＣＰＵ９１とは明確に異なる、随意のプロセッサである。ＣＰＵ９１またはコプロセッサ８１は、トリガメッセージの受信、要求の検証、推論ルールの作成等のセマンティック推論サービスの有効化のための開示されたシステムおよび方法に関連するデータを受信、生成、ならびに処理し得る。
【０１４０】
動作時、ＣＰＵ９１は、命令をフェッチ、復号、および実行し、コンピュータの主要データ転送パスであるシステムバス８０を介して、情報を他のリソースへ、ならびにそこから転送する。そのようなシステムバスは、コンピューティングシステム９０内のコンポーネントを接続し、データ交換のための媒体を定義する。システムバス８０は、典型的に、データを送信するためのデータラインと、アドレスを送信するためのアドレスラインと、インタラプトを送信するため、およびシステムバスを動作させるための制御ラインとを含む。そのようなシステムバス８０の例は、ＰＣＩ（周辺コンポーネント相互接続）バスである。
【０１４１】
システムバス８０に結合されるメモリデバイスは、ランダムアクセスメモリ（ＲＡＭ）８２と、読み取り専用メモリ（ＲＯＭ）９３とを含む。そのようなメモリは、情報が記憶されて読み出されることを可能にする回路を含む。ＲＯＭ９３は、概して、容易に修正されることができない記憶されたデータを含む。ＲＡＭ８２に記憶されたデータは、ＣＰＵ９１または他のハードウェアデバイスによって読み取られること、もしくは変更されることができる。ＲＡＭ８２および／またはＲＯＭ９３へのアクセスは、メモリコントローラ９２によって制御され得る。メモリコントローラ９２は、命令が実行されると、仮想アドレスを物理的アドレスに変換するアドレス変換機能を提供し得る。メモリコントローラ９２はまた、システム内のプロセスを隔離し、ユーザプロセスからシステムプロセスを隔離するメモリ保護機能を提供し得る。したがって、第１のモードで起動するプログラムは、それ自身のプロセス仮想アドレス空間によってマップされるメモリのみにアクセスすることができ、プロセス間のメモリ共有が設定されていない限り、別のプロセスの仮想アドレス空間内のメモリにアクセスすることができない。
【０１４２】
加えて、コンピューティングシステム９０は、ＣＰＵ９１からプリンタ９４、キーボード８４、マウス９５、およびディスクドライブ８５等の周辺機器に命令を通信する責任がある、周辺機器コントローラ８３を含み得る。
【０１４３】
ディスプレイコントローラ９６によって制御される、ディスプレイ８６は、コンピューティングシステム９０によって生成される視覚出力を表示するために使用される。そのような視覚出力は、テキスト、グラフィックス、動画グラフィックス、およびビデオを含み得る。ディスプレイ８６は、ＣＲＴベースのビデオディスプレイ、ＬＣＤベースのフラットパネルディスプレイ、ガスプラズマベースのフラットパネルディスプレイ、またはタッチパネルを伴って実装され得る。ディスプレイコントローラ９６は、ディスプレイ８６に送信されるビデオ信号を生成するために要求される、電子コンポーネントを含む。
【０１４４】
さらに、コンピューティングシステム９０は、図２４Ａおよび２４Ｂのネットワーク１２等の外部通信ネットワークにコンピューティングシステム９０を接続するために使用され得るネットワークアダプタ９７を含み得る。
【０１４５】
本明細書で説明されるシステム、方法、およびプロセスのうちのいずれかまたは全ては、命令が、コンピュータ、サーバ、Ｍ２Ｍ端末デバイス、Ｍ２Ｍゲートウェイデバイス等のマシンによって実行されると、本明細書で説明されるシステム、方法、およびプロセスを行うおよび／または実装される、コンピュータ読み取り可能な記憶媒体上に記憶されたコンピュータ実行可能命令（すなわち、プログラムコード）の形態で具現化され得ることを理解される。具体的に、上記で説明されるステップ、動作、または機能のうちのいずれかは、そのようなコンピュータ実行可能命令の形態で実装され得る。コンピュータ読み取り可能な記憶媒体は、情報の記憶のための任意の方法または技術で実装される、揮発性および不揮発性、取り外し可能および非取り外し可能媒体の両方を含むが、そのようなコンピュータ読み取り可能な記憶媒体は、本質的に、信号を含まない。本明細書の説明から明白なように、記憶媒体は、法的保護対象と解釈されるべきである。コンピュータ読み取り可能な記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）または他の光学ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または所望の情報を記憶するために使用されることができ、かつコンピュータによってアクセスされることができる、任意の他の物理的媒体を含む。
【０１４６】
図に図示されるような本開示の主題（セマンティック推論サービスの有効化）のシステム、または装置を説明する際に、特有の用語が、明確にするために採用される。しかしながら、請求される主題は、そのように選択された具体的用語に限定されることを意図せず、各具体的要素は、類似目的を達成するように同様に動作する、全ての技術的均等物を含むことを理解されたい。
【０１４７】
本明細書に説明される種々の技法は、ハードウェア、ファームウェア、ソフトウェア、もしくは適切である場合、それらの組み合わせに関連して実装され得る。そのようなハードウェア、ファームウェア、およびソフトウェアは、通信ネットワークの種々のノードに位置する装置の中に常駐し得る。本装置は、本明細書に説明される方法をもたらすように、単独で、または互いに組み合わせて動作し得る。本明細書で使用されるように、用語「装置」、「ネットワーク装置」、「ノード」、「デバイス」、および「ネットワークノード」等は、同義的に使用され得る。加えて、単語「または」の使用は、概して、本明細書に別様に提供されない限り、包含的に使用される。
【０１４８】
本明細書は、最良の様態を含む、本発明を開示するために、また、当業者が、任意のデバイスまたはシステムを作製して使用することと、任意の組み込まれた方法を行うこととを含む、本発明を実践することを可能にするために、例を使用する。本発明の特許性のある範囲は、請求項によって定義され、当業者に想起される他の例を含み得る（例えば、本明細書に開示される例示的方法間のステップのスキップ、組み合わせステップ、または追加ステップ）。そのような他の例は、請求項の文字通りの言葉とは異ならない構造要素を有する場合に、または請求項の文字通りの言葉とのごくわずかな差異を伴う同等の構造要素を含む場合に、請求項の範囲内であることを意図している。
【０１４９】
とりわけ、本明細書に説明されるような方法、システム、および装置は、セマンティック推論サービスを有効にする手段を提供し得る。方法、システム、コンピュータ読み取り可能な記憶媒体、または装置は、第１のオントロジーおよび第２のオントロジーに関連付けられた推論ルールを作成するための要求を受信し、第１のオントロジーおよび第２のオントロジーに関連付けられた推論ルールを作成するための要求を検証し、第１のオントロジーおよび第２のオントロジーに関連付けられた推論ルールを作成するための要求の検証に基づいて、推論ルールを作成する命令を提供し、推論ルールを作成するための要求に基づいて、第１のオントロジーおよび第２のオントロジーに関連付けられた推論ルールへの参照を受信する手段を有する。推論ルールを作成するための要求は、推論ルールタイプを含み得る。推論ルールを作成するための要求は、第１のオントロジーまたは第２のオントロジーへの参照を含み得る。推論ルールを作成するための要求は、推論ルールを含み得る。推論ルールを作成するための要求は、推論ルールのフォーマットを含み得る。推論ルールを作成するための要求は、推論ルールを記憶するための場所を含み得る。推論ルールを作成するための要求は、第１のオントロジーまたは第２のオントロジーへの参照を含み得、参照は、ユニフォームリソース識別子を含む。セマンティック推論ルールを作成するための要求は、セマンティックアノテーションの検出に基づき得る。とりわけ、方法、システム、および装置はさらに、第１のオントロジーの更新に基づいて、作成されたセマンティック推論ルールを削除する手段を提供し得る。とりわけ、方法、システム、および装置はさらに、セマンティッククエリ、セマンティックアノテーション、または他のトリガによってトリガされる本明細書に開示されるセマンティック推論プロセスを実施する手段を提供し得る。とりわけ、方法、システム、および装置はさらに、セマンティック推論プロセスを通して生成された新しい情報を管理（例えば、ＣＲＵＤ）する手段を提供し得る。この段落における全ての組み合わせ（ステップの除去または追加を含む）は、発明を実施するための形態の他の部分と一貫した様式で検討される。
【図１】
2019527394.tif 000015
【図２】
2019527394.tif 000016
【図３】
2019527394.tif 000017
【図４】
2019527394.tif 000018
【図５】
2019527394.tif 000019
【図６】
2019527394.tif 000020
【図７】
2019527394.tif 000021
【図８Ａ】
2019527394.tif 000022
【図８Ｂ】
2019527394.tif 000023
【図９】
2019527394.tif 000024
【図１０】
2019527394.tif 000025
【図１１】
2019527394.tif 000026
【図１２】
2019527394.tif 000027
【図１３】
2019527394.tif 000028
【図１４】
2019527394.tif 000029
【図１５】
2019527394.tif 000030
【図１６】
2019527394.tif 000031
【図１７】
2019527394.tif 000032
【図１８】
2019527394.tif 000033
【図１９】
2019527394.tif 000034
【図２０】
2019527394.tif 000035
【図２１】
2019527394.tif 000036
【図２２】
2019527394.tif 000037
【図２３】
2019527394.tif 000038
【図２４Ａ】
2019527394.tif 000039
【図２４Ｂ】
2019527394.tif 000040
【図２４Ｃ】
2019527394.tif 000041
【図２４Ｄ】
2019527394.tif 000042
【国際調査報告】
2019527394.tif 000043