JP2021140357A - 情報処理装置、情報処理プログラム及び情報処理方法 - Google Patents

情報処理装置、情報処理プログラム及び情報処理方法 Download PDF

Info

Publication number
JP2021140357A
JP2021140357A JP2020036223A JP2020036223A JP2021140357A JP 2021140357 A JP2021140357 A JP 2021140357A JP 2020036223 A JP2020036223 A JP 2020036223A JP 2020036223 A JP2020036223 A JP 2020036223A JP 2021140357 A JP2021140357 A JP 2021140357A
Authority
JP
Japan
Prior art keywords
information
identification information
class
rule
assigned
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2020036223A
Other languages
English (en)
Inventor
慎也 豊永
Shinya Toyonaga
慎也 豊永
貴久 鈴木
Takahisa Suzuki
貴久 鈴木
隆一 松倉
Ryuichi Matsukura
隆一 松倉
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2020036223A priority Critical patent/JP2021140357A/ja
Publication of JP2021140357A publication Critical patent/JP2021140357A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】電子機器の可用性を向上させる情報処理装置、情報処理プログラム及び情報処理方法を提供する。【解決手段】推測ルールデータベース16は、階層化され且つ電子機器に関する情報についての概念を表すクラスを各階層に1つ又は複数有する前記電子機器の情報モデルにおいて、所定階層が有する前記クラスに割り当てる識別情報を、所定階層の下層におけるクラスに割り当てられた識別情報を基に決定するための推測ルールを格納する。上層情報付与部13は、下層におけるクラスに割り当てられた識別情報を基に、推測ルールデータベース16に格納された推測ルールにしたがい所定階層における各クラスに識別情報を付与する。【選択図】図4

Description

本発明は、情報処理装置、情報処理プログラム及び情報処理方法に関する。
工場などの現場では製造機器、レガシーデバイス及びモバイル端末など様々な電子機器が接続されている。以下では、電子機器をデバイスと呼ぶ場合がある。そのため、このような構成を有するシステムでは、IoT(Internet of Things)の分野における通信プロトコルやデータモデルが異なるデバイスが混在することが一般的である。このようなデバイス間における通信プロトコルやデータモデルの違いは、特定のデバイスと特定のアプリケーションとが連携するといったサイロ構造を生み出す。IoTシステムにおいてサイロ構造が生じると、管理コストが増大するだけでなく、各デバイスから収集されるデータを利用した包括的な分析を妨げる要因となる。この問題は、インターオペラビリティの欠如と呼ばれる。
これまでは、IoTシステムにおけるインターオペラビリティを得る方法として、プロトコル変換やデータモデル変換を行うアダプタを開発する方法があった。ただし、この方法では、アプリケーションとデバイスとの組み合わせの数に応じて、アダプタを開発することになり、デバイスの数の増加に応じて開発数も増加するため開発工数が膨大になってしまう。
また、インターオペラビリティを得る他の方法として、標準化団体によりデバイスのインタフェースのWebAPI(Application Programming Interface)への統一が進められている。このアプローチにより、デバイスの属性を表すプロパティや機能及びそれらにアクセスするためのURLを共通化された情報モデルとして記述することができ、アプリケーションにそのデバイスとの連携方法を提示することができる。
国際標準規格のWeb of Thingsで用いられる情報モデルの例として、温度センサデバイスの情報モデルがある。温度センサデバイスは、プロパティとして温度情報を有しており、アプリケーションが、その温度情報を取得するには情報モデルに記述されたformsフォームフィールドのhrefフィールドに示されるURLをhttpプロトコルでGETアクセスする。この場合、例えば、アプリケーションが取得するデータは数値であり、単位は摂氏などである。アプリケーションは、情報モデルを解釈することによって、デバイスのインタフェースと取得できるデータとを把握することが可能となる。
デバイスの情報モデルは、管理者によって情報モデルリポジトリに登録され更新される。アプリケーションは、情報モデルリポジトリから情報モデルを取得して、解釈して、情報モデルに基づいてデバイスにアクセスする。
ただし、情報モデルの記述には自由度があるため、製造元毎に情報モデルの表現方法が異なる場合があり、デバイスから取得したデータをそのままアプリケーションで使用できないケースが多い。例えば、温度情報を表す文字列として「temperature」や「temp」が使用されたり、「温度」が用いられたりする可能性がある。また、温度の単位であれば、「Celsius」や「CEL」が使用されたり、「℃」が用いられたりする可能性がある。このような、情報モデルの表現方法の違いがインターオペラビリティの欠如の要因となるため、データの再利用性を高め、各デバイスと多数のアプリケーションとを連携可能にするためには、情報モデルに使用されるボキャブラリを共通化することが望ましい。
ボキャブラリを共通化するための仕組みとしてオントロジーがある。オントロジーは、現実世界の概念をクラスとして定義し、さらにクラス間の関係を定義したものである。オントロジーはステークホルダー間で共有され、オントロジーに含まれるクラス名は、ステークホルダー間で共通のボキャブラリを提供する。製造元は、このオントロジーにより提供されるクラス名を付与することで、情報モデルにデバイス間での共通の意味及び解釈を与えることができる。このクラス名はセマンティックタームと呼ばれる場合がある。セマンティックタームは、各クラスの概念を表す文字列であり、そのクラスの識別情報にあたる。
このようにセマンティックタームを情報モデルに付与することで、異なる記述が用いられた情報モデルの間で実態は同じであるが異なる表現が用いられた情報に共通の解釈を与えることが可能となる。これにより、アプリケーションは、セマンティックタームを使用して情報モデルを比較することで記述の違いを吸収する処理の必要性などを機械的に判断することが可能になる。
セマンティックタームを付加する従来技術として以下のような技術がある。例えば、デバイスの設置場所、アドレス及びデータ単位と言ったデバイスの属性情報などのアプリケーションの構成管理情報を用いて、デバイスの情報モデルに注釈情報を付与する。そして、セマンティックタームに注釈を自動的に付加することを再帰的に繰り返し、特定のデータに対応するセマンティックタームの特定を容易にする従来技術がある。また、入力された自然言語の定義文から取得された情報に対して文字列比較条件が成立した際に、意味クラスを推測する従来技術がある。
特表2018−503905号公報 特開2010−282517号公報
しかしながら、現実世界のすべての概念を定義したオントロジーを手に入れることは困難である。実際には、複数の団体がそれぞれの領域でオントロジーを定義しており、同じ概念を別のクラス構造で定義する場合もある。そのため、オントロジーを用いて情報モデルを整理しても、同じオントロジーを参照するデバイスとアプリケーションの連携に限定され、インターオペラビリティの欠如の要因となる。このように、情報モデル間で解釈が異なりインターオペラビリティが欠如する場合、アプリケーションによる意図したデバイスの検出が失敗するおそれがあり、デバイスの可用性を向上させることは困難となる。
ここで、複数のオントロジーが混在する場合でも、デバイスとアプリケーションを連携させるために、オントロジーを別のオントロジーにマッピングする技術が提案されている。しかし、この技術はあらかじめ情報モデルにいずれかのオントロジーを参照したセマンティックタームを付与していることが前提となる。そのため、情報モデルの数だけ手動で適切なセマンティックタームを探して付与することとなり、多大な工数がかかるため、実現困難である。また、既に動作しているデバイスの情報モデルにセマンティックタームが付与されていないケースも多く、共通の意味解釈を与えるためには手動でセマンティックタームを付与することは煩雑であり、実現困難である。そのため、情報モデル間での解釈が異なる状態が継続するおそれがあり、デバイスの可用性を向上させることは困難となる。
また、セマンティックタームに注釈を再帰的に付加する従来技術では、ルールリポジトリと推論器によって新しい注釈情報を付与することが行われている。しかし、他のデータに割り当てられたセマンティックタームからの特定のデータに割り当てるセマンティックタームの決定方法が具体的でなく、情報モデルの解釈を共通化することは困難である。また、自然言語の定義文から意味クラスを推測する従来技術は、階層構造を有する情報モデルへの適用も困難である。そのため、これらの従来技術を用いても、情報モデル間での解釈が異なる状態が継続するおそれがあり、デバイスの可用性を向上させることは困難となる。
開示の技術は、上記に鑑みてなされたものであって、電子機器の可用性を向上させる情報処理装置、情報処理プログラム及び情報処理方法を提供することを目的とする。
本願の開示する情報処理装置、情報処理プログラム及び情報処理方法の一つの態様において、ルール格納部は、階層化され且つ電子機器に関する情報についての概念を表すクラスを各階層に1つ又は複数有する前記電子機器の情報モデルにおいて以下の推測ルールを格納する。推測ルールは、所定階層が有する前記クラスに割り当てる識別情報を、前記所定階層の下層における前記クラスに割り当てられた前記識別情報を基に決定するためのルールである。識別情報付与部は、前記下層における前記クラスに割り当てられた前記識別情報を基に、前記ルール格納部に格納された前記推測ルールにしたがい前記所定階層における各前記クラスに前記識別情報を付与する。
1つの側面では、本発明は、電子機器の可用性を向上させることができる。
図1は、IoTシステムのシステム構成図である。 図2は、情報モデルの構造の概要を表す図である。 図3は、温度センサの情報モデルを表す図である。 図4は、管理端末装置のブロック図である。 図5は、オントロジーの構造の一例を表す図である。 図6は、オントロジーをXML形式で表現したRDFの一例の図である。 図7は、推測ルールの一例を表す図である。 図8は、異なる解釈がなされる情報モデルの一例を表す図である。 図9は、セマンティックターム付加処理の全体のフローチャートである。 図10Aは、上層のクラスに対するセマンティックターム付加処理のフローチャートである。 図10Bは、上層のクラスに対するセマンティックターム付加処理のフローチャートである。 図11は、実施例2に係る最下層のクラスに対するセマンティックタームの検索時の制約条件を説明するための図である。 図12は、実施例2に係る最下層のクラスに対するセマンティックタームの付加処理を説明するための図である。 図13は、管理端末装置のハードウェア構成図である。
以下に、本願の開示する情報処理装置、情報処理プログラム及び情報処理方法の実施例を図面に基づいて詳細に説明する。なお、以下の実施例により本願の開示する情報処理装置、情報処理プログラム及び情報処理方法が限定されるものではない。
図1は、IoTシステムのシステム構成図である。本実施例に係るIoTシステム2は、図1に示すように、情報モデルリポジトリ20、アプリケーションサーバ21及びデバイス22を有する。
デバイス22は、クラウド環境やネットワークを介して制御可能なIoTデバイスである。デバイス22は、冷蔵庫やクーラーなどの家電や家具であってもよいし、自動車、工場、農作機械、インフラなどであってもよい。図1では、デバイス22を2つ記載したが、デバイス22の数に特に制限はない。
情報モデルリポジトリ20は、各デバイス22の情報モデルを格納する。情報モデルリポジトリ20は、管理端末装置1及びアプリケーションサーバ21と接続される。情報モデルリポジトリ20に格納される基本となる情報モデルは、管理端末装置1を使用して管理者により手動で作成される。この段階では、各デバイス22の情報モデルに含まれる情報にセマンティックタームは付加されておらず共通化されていない。以下では、管理者により情報モデルリポジトリ20に格納される情報モデルを、「基本情報モデル」と言う場合がある。
ここで、情報モデルについて説明する。図2は、情報モデルの構造の概要を表す図である。情報モデル200は、デバイス22に関する各種情報を提供するモデルデータであり、デバイス22毎に作成される。例えば、情報モデル200は、図2に示すように階層構造を有する。情報モデル200は、デバイス22の識別情報であるデバイス情報201を最上層に有する。例えば、デバイス22が冷蔵庫であれば、デバイス情報201には、冷蔵庫を表す情報が登録される。このデバイス情報201が、「機器名」の一例にあたる。
次に、情報モデル200は、デバイス情報201の直下の階層に、デバイス22が有する各種属性を表すプロパティ情報202及び203を有する。例えば、プロパティ情報202及び203には、温度情報や圧力情報といったデバイス22が有する環境情報や、ドアの開閉状態やスイッチのオンオフ状態といったデバイス22の状態情報の識別情報が登録される。デバイス情報201の直下に配置されるプロパティ情報202及び203の数に特に制限はなく、デバイス22が有する属性の数に依存する。このプロパティ情報202及び203が、「第1属性情報」の一例にあたる。
さらに、情報モデル200は、プロパティ情報202の直下の階層に、プロパティ情報202に与えられる値などを詳細に規定する基本情報204〜206を有する。同様に、情報モデル200は、プロパティ情報203の直下の階層にプロパティ情報203を詳細に規定する基本情報207を有する。例えば、基本情報204〜207には、デバイス22を表す各種属性のデータ型や単位などといったデバイス22の属性の内容を具体的に示す情報が登録される。プロパティ情報202や203の配下に配置される基本情報204〜207の数に特に制限はなく、各プロパティ情報202や203を具体的に表現するために使用する情報の数に依存する。この基本情報204〜206が、「第2属性情報」の一例にあたる。
ここで、図2では、情報モデル200が3階層を有する場合を図示したが、この階層の数に特に制限はない。例えば、プロパティ情報202がオブジェクト型の情報の場合、そのプロパティ情報202の配下にさらにプロパティ情報が配置されてもよい。デバイス情報201、プロパティ情報202及び203、並びに、基本情報204〜207は、実世界の概念を示す情報が格納される項目であり、以下では、それぞれを区別しない場合「クラス」と呼ぶ。
例えば、デバイス22が温度センサであれば、図3のような情報モデル200が作成される。図3は、温度センサの情報モデルを表す図である。情報モデル200は、例えば、中括弧により階層毎の区分が示される。すなわち、図3で示したシンタックスでは、「@context」以下の中括弧の始め括弧毎に、1つずつ階層が下がることを表し、終わり括弧毎に階層が1つ上がることを表す。
図3の場合、デバイス情報201には、デバイス22の識別情報として「device1」が登録される。このように、デバイス情報201は、デバイス22を識別することが可能であれば、その機能を直接表す名称以外の単なる識別情報であってもよい。
また、デバイス22が温度センサの場合、プロパティ情報202は、温度に関するデバイス22であることを表す「temperature」が登録される。図3では、プロパティ情報202のみを記載したが、他のプロパティ情報203がある場合、プロパティ情報202と並列にプロパティ情報203が登録される。
さらに、基本情報204は、プロパティ情報202におけるデータ型が数値であることを表す。また、基本情報205は、プロパティ情報202において使用される単位が摂氏であることを表す。また、基本情報206は、プロパティ情報202の取得先アドレスを提供する。すなわち、デバイス情報201にあたるデバイス22は、プロパティ情報202及び基本情報204〜206を含む温度プロパティ210を有することが分かる。
ただし、情報モデル200が基本情報モデルの状態では、デバイス22の製造元毎や登録した管理者毎に各クラスに割り当てられた情報の記述が異なる場合がある。例えば、温度を表すプロパティ情報であっても、「temperature」と記述される場合や「temp」と記述される場合がある。そこで、本実施例に係るIoTシステム2では、情報モデルリポジトリ20に格納された基本情報モデルに共通化されたセマンティックタームが付加された共通化情報モデルが、管理端末装置1により、情報モデルリポジトリ20に格納される。
アプリケーションサーバ21は、後述する共通化されたセマンティックが付与された共通化情報モデルを情報モデルリポジトリ20から取得する。そして、アプリケーションサーバ21は、取得した共通化情報モデルにしたがい、各デバイス22のそれぞれに応じた処理を決定する。そして、アプリケーションサーバ21は、各デバイス22を操作するアプリケーションを動作させて、各デバイス22に対してアクセスして適切な処理を行う。例えば、アプリケーションサーバ21は、温度が高い場合にクーラーを作動させたり、冷蔵庫のドアが開いている場合に警告メールを送信したりする。
管理端末装置1は、各デバイス22の基本情報モデルを情報モデルリポジトリ20から取得し、取得した基本情報モデルの各クラスに共通の解釈を与えるためのセマンティックタームを付加した共通化情報モデルを作成して、情報モデルリポジトリ20に格納する。以下に、図4を参照して、管理端末装置1の詳細について説明する。図4は、管理端末装置のブロック図である。
管理端末装置1は、図4に示すように、基本情報モデル取得部11、最下層情報付与部12、上層情報付与部13、共通化情報モデル出力部14、オントロジーデータベース15及び推測ルールデータベース16を有する。
オントロジーデータベース15には、セマンティックタームの付与に使用するオントロジーが格納される。このオントロジーが、「識別情報」の一例にあたる。図5は、オントロジーの構造の一例を表す図である。
例えば、図5に示すオントロジー300は、環境情報を表すクラスとして「ex:EnvironmentInfo」を定義する。「ex:EnvironmentInfo」は、下位概念として圧力クラスである「ex:Pressure」、温度クラスである「ex:Temperature」を有する。また、「ex:EnvironmentInfo」が単位を持つことを表すために、オントロジー300は、「ex:hasUnit」で単位クラスである「ex:Unit」と「ex:EnvironmentInfo」との関係を表す。「ex:Unit」は、下位概念として温度の単位クラスである「ex:TemperatureUnit」を有する。さらに、「ex:TemperatureUnit」は、その下位概念として摂氏を表すクラスである「ex:Celsius」、ケルビンを表すクラスである「ex:Kelvin」及び華氏を表すクラスである「ex:Fahrenheit」を有する。さらに、温度クラスである「ex:Temperature」が温度の単位クラスである「ex:TemperatureUnit」を有することを表すために、「ex:hasTemperatureUnit」により「ex:Temperature」と「ex:TemperatureUnit」との関係を表す。さらに、オントロジーでは、関係と関係の間にも関係を定義することができ、「ex:hasTemperatureUnit」は、「ex:hasUnit」の下位概念として定義される。これらのオントロジー300におけるクラス名がセマンティックタームとして使用される。
このような構造を有するオントロジー300は、例えば、リソース記述フレームワーク(RDF:Resource Description Framework)によって記述され得る。このオントロジー300の記述には、例えば、リソース記述フレームワークスキーマ(RDFS:RDF Schema)やウェブオントロジー記述言語(OWL:Web Ontology Language)で定義されるボキャブラリを用いることができる。
RDFは、主語、述語及び目的語のトリプルによって記述され、主語と目的語の関係を述語で表現する。RDFより、オントロジーにおける、クラスとクラスの関係、関係と関係の関係、関係とクラスの関係、クラスとリテラルの関係及び関係とリテラルの関係が定義可能である。ここで、リテラルは、任意の文字列や数値を表す定数である。クラス及び関係は、URI(Uniform Resource Identifier)やURL(Uniform Resource Locator)によって識別され、このURIやURLがセマンティックタームとして利用される。
例えば、オントロジー300は、図6のように表される。図6は、オントロジーをXML(Extensible Markup Language)形式で表現したRDFの一例の図である。
図6におけるブロック301は、各クラスや関係に付与するURI又はURLのプレフィックスと、それらに対するネームスペースを定義する。
ブロック302は、環境情報クラスとそのサブクラスを定義している。ここでは、ブロック302において、「ex:Pressure」と「ex:Temperature」が「ex:EnvironmentInfo」のサブクラスであることが定義される。例えば、「ex:Pressure」と「rdfs:subClassOf」と「ex:EnvironmentInfo」とのトリプルによって、「ex:Pressure」が「ex:EnvironmentInfo」のサブクラスであることが定義される。
ブロック303は、単位クラスとそのサブクラスを定義する。ここでは、ブロック303において、「ex:TemperatureUnit」が「ex:Unit」のサブクラスであり、「ex:Celsius」、「ex:Kelvin」及び「ex:Fahrenheit」は「ex:TemperatureUnit」のサブクラスであることが定義される。
ブロック304は環境情報と単位間の関係を表すプロパティとサブプロパティを定義する。ここでは、ブロック304において、「ex:hasUnit」は、主語が「ex:EnvironmentInfo」であり、目的語が「ex:Unit」である述語と定義される。この定義は、「ex:hasUnit」と「rdfs:domain」と「ex:EnvironmentInfo」とのトリプルと「ex:hasUnit」と「rdfs:range」と「ex:Unit」とのトリプルによって形成される。また、ブロック304において、「ex:hasTemperatureUnit」は「ex:hasUnit」のサブプロパティであり、主語が「ex:Temperature」であり、目的語が「ex:TemperatureUnit」である述語と定義される。
すなわち、オントロジーデータベース15には、例えば、図6に示すような形式で記載されたオントロジーが格納される。
推測ルールデータベース16には、特定層の各クラスに対して割り当てるセマンティックタームを、その特定層の下層の各クラスに割り当てられたセマンティックタームから決定するための推測ルールが格納される。推測ルールでは、上層に付与されるセマンティックタームに対して、そのセマンティックタームを付与するための条件が定義される。この推測ルールデータベース16が、「ルール格納部」の一例にあたる。
図7は、推測ルールの一例を示す図である。図7の推測ルールリスト400における「saref:Temperature」は温度プロパティを表すセマンティックタームである。そして、「saref:Temperature」のセマンティックタームを付与するための条件が、ブロック401に示される。
ブロック401は、詳細ルール411〜413のいずれかを満たす場合に、プロパティ情報にセマンティックタームとして「saref:Temperature」を付与する推定ルールである。詳細ルール411は、そのプロパティの直下にデータ型を「数値」とするクラス及び単位を「摂氏」とするクラスがある場合であり、そのプロパティ情報が「数値でありかつ単位が摂氏である」場合と言える。また、詳細ルール412は、そのプロパティの直下にデータ型を「数値」とするクラス及び単位を「華氏」とするクラスがある場合であり、そのプロパティ情報が「数値でありかつ単位が華氏である」場合と言える。また、詳細ルール413は、そのプロパティの直下にデータ型を「数値」とするクラス及び単位を「ケルビン」とするクラスがある場合であり、そのプロパティ情報が「数値でありかつ単位がケルビンである」場合と言える。ブロック401に示される推測ルールでは、データ型と単位の条件とがキーバリューペアで表現され、それらの論理積で表される各条件のうちのいずれかにあたることが、セマンティックタームの付与条件であることが、oneOfフィールドによって表現される。このブロック401で示される推測ルールが、「第2推測ルール」の一例にあたる。
ブロック402〜404は、デバイス情報に付与するセマンティックタームの推測ルールである。ブロック402における「saref:TemperatureSensor」は温度センサデバイスを表すセマンティックタームである。そして、「saref:TemperatureSensor」をあるデバイス情報に付与するための条件は、そのデバイス情報の直下に、種別を「saref:Temperature」とするクラスを有するプロパティ情報が含まれることである。また、「saref:Switch」はスイッチを表すセマンティックタームである。そして、あるデバイス情報に「saref:Switch」を付与するための条件は、そのデバイス情報の直下に種別を「saref:OnOffState」とするクラスを有するプロパティ情報が含まれることである。また、「saref:LightSwitch」は照明を表すセマンティックタームである。そして、「saref:LightSwitch」をあるデバイス情報に付与するための条件は、そのデバイス情報の直下に種別を「saref:OnOffState」とするクラス及び「saref:Light」とするクラスを有するプロパティ情報が含まれることである。このように、デバイス情報を付与する推測ルールは、propertiesフィールドによって定義される。そして、ブロック402〜404で表される各propertiesフィールドはand条件で結ばれる。このブロック402〜404の推測ルールを用いると、あるデバイス情報に「saref:LightSwitch」を付与する場合は必ず「saref:Switch」も付与することになる。このように複数のセマンティックタームが付与される場合には、本実施例では、すべてのセマンティックタームをリストとして付与されるとする。ただし、他の方法で付与するセマンティックタームを選択してもよく、オントロジーにおいてより下位の概念や、条件の厳しいセマンティックタームを付与するとしてもよい。このブロック402〜404で示される推測ルールが、「第1推測ルール」の一例にあたる。
例えば、推測ルールデータベース16には、図7に示すようなシンタックスで表された推測ルールが格納される。ただし、推測ルールは、図7に例示したルールに限らず、下層のクラスに割り当てられたセマンティックタームから上層のクラスに割り当てるセマンティックルールを決定できるルールであれば他のルールを用いてもよい。
図4に戻って説明を続ける。基本情報モデル取得部11は、情報モデルリポジトリ20に格納された各デバイス22の基本情報モデルを取得する。そして、基本情報モデル取得部11は、取得した各デバイス22の基本情報モデルを最下層情報付与部12へ出力する。
最下層情報付与部12は、各デバイス22の基本情報モデルの入力を基本情報モデル取得部11から受ける。そして、最下層情報付与部12は、取得した基本情報モデルの文字列と、オントロジーデータベース15に格納された各オントロジーの文字列とを比較する。そして、最下層情報付与部12は、既存の文字列比較による類似度を用いて最下層のクラス、すなわち基準情報にセマンティックタームを付与する。ここで、オントロジーデータベース15にApache Jenaのようなオープンソースのトリプルストアフレームワークを使用した場合、最下層情報付与部12は、オントロジーのクラス定義や関係を容易に取得可能となる。その後、最下層情報付与部12は、基本情報モデルの最下層の各クラスにセマンティックタームが付与された情報モデルを上層情報付与部13へ出力する。
上層情報付与部13は、基本情報モデルの最下層の各クラスにセマンティックタームが付与された情報モデルの入力を最下層情報付与部12から受ける。そして、上層情報付与部13は、最下層の各クラスに付与されたセマンティックタームを用いて、推測ルールにしたがって上層のプロパティに付与するセマンティックタームを決定する。上層情報付与部13は、全ての層のクラスにセマンティックタームを付与するために、推測ルールを繰り返し適用することで下層から段階的にセマンティックタームを付与する。推測ルールの最大適用回数は入力された情報モデルのネストの深さから1減じた値であるため、上層情報付与部13は、推測ルールの適用をネストの深さから1を減じた回数行えば、全ての層のクラスにセマンティックタームを付与できる。そこで、上層情報付与部13は、情報モデル内のそれぞれのクラスに、それぞれの推測ルールが合致するかを判断するために、ループ処理を実施して各クラスに付与するセマンティックタームを決定して付与する。以下に上層のクラスへのセマンティックタームの付与処理を詳細に説明する。
上層情報付与部13は、ネストの深さを算出する。例えば、図3に示す情報モデル200を取得した場合、上層情報付与部13は、context以下の中括弧の数を求めてネストの深さを算出する。
次に、上層情報付与部13は、最下層のクラスを除く情報モデルの各層のクラスの中から未処理のクラスを1つ選択する。以下では、選択したクラスを、「選択クラス」と呼ぶ。次に、上層情報付与部13は、選択クラスに付与するセマンティックタームの判定に用いる推測ルールを未処理の推測ルールの中から1つ選択する。
次に、上層情報付与部13は、選択した推測ルールがプロパティを含むか否かを判定する。具体的には、例えば、図7に示す推測ルールリスト400を用いる場合、ブロック401で示される選択ルールには、「properties」の文字列が含まれないので、ブロック401の推測ルールを選択した場合、上層情報付与部13は、プロパティを含まないと判定する。これに対して、ブロック402〜404はいずれも「properties」の文字列を含むので、ブロック402〜404のうちのいずれかの推測ルールを選択した場合、上層情報付与部13は、プロパティを含むと判定する。
選択した推測ルールがプロパティを含む場合、上層情報付与部13は、選択クラスの直下の階層のクラスに付与されたセマンティックタームリストを取得する。次に、上層情報付与部13は、選択した推測ルールのプロパティがセマンティックタームリストの部分集合であるか否かを判定する。例えば、図7におけるブロック402で表される推測ルールが選択された場合で説明する。この場合、推測ルールのプロパティは、「saref:Temperature」である。そして、選択クラスの直下に配置された各プロパティ情報のセマンティックタームリストが、例えば、「saref:Temperature」、「saref:Pressure」である場合、推測ルールのプロパティはセマンティックタームリストの部分集合にあたる。その場合、上層情報付与部13は、選択した推測ルールのプロパティがセマンティックタームリストの部分集合であると判定する。これに対して、選択クラスの直下に配置された各プロパティ情報のセマンティックタームリストが、例えば、「saref:OnOffState」、「saref:Light」である場合、推測ルールのプロパティはセマンティックタームリストの部分集合にあたらない。その場合、上層情報付与部13は、選択した推測ルールのプロパティがセマンティックタームリストの部分集合ではないと判定する。
また、選択クラスの直下のクラスのセマンティックタームが決定していない場合、上層情報付与部13は、直下のクラスのセマンティックタームリストとして空集合を取得する。その場合、上層情報付与部13は、選択した推測ルールのプロパティがセマンティックタームリストの部分集合ではないと判定する。
選択した推測ルールのプロパティがセマンティックタームリストの部分集合の場合、上層情報付与部13は、選択した推測ルールで指定されたセマンティックタームを、選択クラスに付与するセマンティックタームとして決定する。そして、上層情報付与部13は、選択クラスの種別に選択した推測ルールで指定されたセマンティックタームを追加して、セマンティックタームの付与を行う。これに対して、選択した推測ルールのプロパティがセマンティックタームリストの部分集合でない場合、上層情報付与部13は、選択した推測ルールによるセマンティックタームの付与をおこなわない。そして、上層情報付与部13は、選択した推測ルールによるセマンティックタームの付与の判定処理を完了する。
一方、選択した推測ルールがプロパティを含まない場合、上層情報付与部13は、選択した推測ルールがoneOfを含むか否かを判定する。すなわち、上層情報付与部13は、選択した推測ルールが複数の詳細ルールで規定される条件のいずれかを満足するかを判定させる推測ルールであるか否かを判定する。
選択した推測ルールがoneOfを含む場合、上層情報付与部13は、oneOf内に配置された詳細ルールを1つ選択する。そして、上層情報付与部13は、選択した詳細ルールが定義するキーバリューペアが、選択クラスの直下の階層の各クラスに割り当てられたセマンティックタームに一致するか否かを判定する。キーバリューペアが選択クラスの直下の階層の各クラスに割り当てられたセマンティックタームに一致する場合、上層情報付与部13は、選択クラスのセマンティックタームとして、選択した推測ルールで指定されたセマンティックタームを付与する。これに対して、キーバリューペアが選択クラスの直下の階層の各クラスに割り当てられたセマンティックタームに一致しない場合、上層情報付与部13は、選択した詳細ルールによるセマンティックタームの付与を終了する。
例えば、図7のブロック401で表される推測ルールのうち詳細ルール411を選択した場合、上層情報付与部13は、「number」及び「om:degree_Celsius」のキーバリューペアを取得する。そして、選択クラスの直下の階層のクラスにセマンティックタームとして「type, number」が付与されたクラスと「unit, om:degree_Celsius」が付与されたクラスがある場合、上層情報付与部13は、選択クラスのセマンティックタームを「saref:Temperature」と決定する。一方、選択クラスの直下の階層のクラスの値が詳細ルール411に示すキーバリューペアと一致しない場合、上層情報付与部13は、選択した詳細ルールによるセマンティックタームの付与を終了する。
上層情報付与部13は、選択した推測ルールに含まれる全ての詳細ルールについてセマンティックタームの付与の判定処理を実行した場合に、選択した推測ルールによるセマンティックタームの付与の判定処理を完了する。
また、選択した推測ルールがプロパティを含まず且つoneOfも含まない場合、上層情報付与部13は、選択した推測ルールを詳細ルールが1つだけのルールと判定する。そして、上層情報付与部13は、選択した推測ルールが定義するキーバリューペアが選択クラスの直下の階層の各クラスに割り当てられたセマンティックタームに一致するか否かを判定する。キーバリューペアが選択クラスの直下の階層の各クラスに割り当てられたセマンティックタームに一致する場合、上層情報付与部13は、選択クラスにその推測ルールで指定されたセマンティックタームを付与する。これに対して、キーバリューペアが選択クラスの直下の階層の各クラスに割り当てられたセマンティックタームに一致しない場合、上層情報付与部13は、選択した詳細ルールによるセマンティックタームの付与を終了する。そして、上層情報付与部13は、選択した推測ルールによるセマンティックタームの付与の判定処理を完了する。
上層情報付与部13は、全ての推測ルールについて選択クラスに対するセマンティックタームの付与の判定処理を行う。全ての推測ルールについてセマンティックタームの付与の判定処理を完了すると、上層情報付与部13は、選択クラスに対するセマンティックタームの付与の判定処理を完了する。上層情報付与部13は、取得した情報モデルに含まれる全てのクラスに対してセマンティックタームの付与の判定処理を実行する。
例えば、上層情報付与部13は、最下層以外の全階層の各クラスについてのセマンティックターム付与処理を、算出したネストの深さから1を減じた値の回数繰り返す。これにより、上層情報付与部13は、全てのクラスに対するセマンティックタームの付与処理を完了することができる。そして、情報モデルに含まれる全てのクラスに対してセマンティックタームの付与の判定処理が完了すると、上層情報付与部13は、その情報モデルに対するセマンティックタームの付与処理を終了する。
上層情報付与部13は、基本情報モデルの最下層以外の各層の各クラスにセマンティックタームを付与することで共通化情報モデルを生成する。そして、上層情報付与部13は、生成した共通化情報モデルを共通化情報モデル出力部14へ出力する。この上層情報付与部13が、「識別情報付与部」の一例にあたる。
共通化情報モデル出力部14は、共通化情報モデルの入力を上層情報付与部13から受ける。そして、共通化情報モデル出力部14は、基本情報モデルの各クラスにセマンティックタームを付加して情報モデル間での解釈の共通化を行った共通化情報モデルを情報モデルリポジトリ20に格納する。これにより、アプリケーションサーバ21が、情報モデルリポジトリ20に格納された共通化情報モデルを使用してデバイス22の管理及び制御を行うことができる。
図8は、異なる解釈がなされる情報モデルの一例を表す図である。共通化情報モデル200A及び200Bは、いずれも温度センサを表す情報モデルである。
共通化情報モデル200Aでは、「temperature」と表されるプロパティの「@type」フィールドに「ex:Temperature」と表されるセマンティックターム221であるが付与されることで、このプロパティが温度情報であることが示される。また、「unit」フィールドに「ex:Celsius」と表されるセマンティックターム222が付与されることで、このプロパティの単位が摂氏であることが表される。
共通化情報モデル200Bでは、「Temp」と表されるプロパティの「@type」フィールドに「ex:Temperature」と表されるセマンティックターム223が付与されることで、このプロパティが温度情報であることが示される。また、「unit」フィールドに「ex:Kelvin」と表されるセマンティックターム224が付与されることで、このプロパティの単位が摂氏であることが表される。
このようにセマンティックタームが付与されることで、共通化情報モデル200Aの「Temperature」と表されるプロパティと共通化情報モデル200Bの「Temp」と表されるプロパティが、同じ温度情報であるという共通解釈が与えられる。さらに、それぞれのプロパティで使用される単位が異なるという共通解釈が与えられる。これにより、アプリケーションサーバ21は、セマンティックタームを利用して共通化情報モデル200A及び200Bで表されるデバイス22を、温度プロパティを提供する温度センサとして検出することができる。さらに、アプリケーションサーバ21は、共通化情報モデル200A及び200Bを比較することで、それぞれの単位の違いを吸収する処理の使用などを機械的判定することが可能となる。
次に、図9を参照して、本実施例に係る管理端末装置1によるセマンティックターム付加処理の全体の流れを説明する。図9は、セマンティックターム付加処理の全体のフローチャートである。
基本情報モデル取得部11は、基本情報モデルを情報モデルリポジトリ20から取得する(ステップS1)。基本情報モデル取得部11は、取得した基本情報モデルを最下層情報付与部12へ出力する。
最下層情報付与部12は、基本情報モデルの入力を基本情報モデル取得部11から受ける。次に、最下層情報付与部12は、基本情報モデルの最下層の各クラスの文字列を取得する。そして、最下層情報付与部12は、基本情報モデルの最下層の各クラスの文字列と、オントロジーデータベース15に格納された各オントロジーの文字列とを比較し、類似度を用いて最下層の各クラスにセマンティックタームを付与する(ステップS2)。その後、最下層情報付与部12は、最下層の各クラスにセマンティックタームが付与された基本情報モデルを上層情報付与部13へ出力する。
上層情報付与部13は、最下層の各クラスにセマンティックタームが付与された基本情報モデルの入力を最下層情報付与部12から受ける。そして、上層情報付与部13は、最下層の各クラスに付与されたセマンティックターム及び推測ルールデータベース16に格納された推測ルールを用いて、上層の各クラスに再帰的にセマンティックタームを付与する(ステップS3)。その後、上層情報付与部13は、各層の各クラスにセマンティックタームを付与した共通化情報モデルを共通化情報モデル出力部14へ出力する。
共通化情報モデル出力部14は、共通化情報モデルの入力を上層情報付与部13から受ける。そして、共通化情報モデル出力部14は、取得した共通化情報モデルを情報モデルリポジトリ20へ出力して格納させる(ステップS4)。
次に、図10A及び10Bを参照して、本実施例に係る管理端末装置1による上層のクラスに対するセマンティックターム付加処理の流れを説明する。図10A及び図10Bは、上層のクラスに対するセマンティックターム付加処理のフローチャートである。図10A及び図10Bのフローチャートで示した各処理は、図9のステップS3で実行される処理の一例にあたる。
上層情報付与部13は、基本情報モデルの最下層の各クラスにセマンティックタームが付与された情報モデルを最下層情報付与部12から取得する(ステップS101)。
次に、上層情報付与部13は、ネストの深さを算出する(ステップS102)。
次に、上層情報付与部13は、セマンティックターム付加処理のループ回数を表すiを初期化して、i=0とする(ステップS103)。
次に、上層情報付与部13は、最下層のクラスを除く情報モデルの各層のクラスの中から未処理のクラスを1つ選択する(ステップS104)。
次に、上層情報付与部13は、選択クラスに付与するセマンティックタームの判定に用いる推測ルールを未処理の推測ルールの中から1つ選択する(ステップS105)。
上層情報付与部13は、選択した推測ルールがプロパティを含むか否かを判定する(ステップS106)。
選択した推測ルールがプロパティを含む場合(ステップS106:肯定)、上層情報付与部13は、選択クラスの直下の階層のクラスに付与されたセマンティックタームリストを取得する(ステップS107)。
次に、上層情報付与部13は、選択した推測ルールのプロパティがセマンティックタームリストの部分集合であるか否かを判定する(ステップS108)。
選択した推測ルールのプロパティがセマンティックタームリストの部分集合でない場合(ステップS108:否定)、上層情報付与部13は、ステップS115へ進む。
これに対して、選択した推測ルールのプロパティがセマンティックタームリストの部分集合の場合(ステップS108:肯定)、上層情報付与部13は、選択した推測ルールで指定されたセマンティックタームを、選択クラスに付与するセマンティックタームとして決定する。そして、上層情報付与部13は、選択した推測ルールで指定されたセマンティックタームを選択クラスの種別に追加する(ステップS114)。
一方、選択した推測ルールがプロパティを含まない場合(ステップS106:否定)、上層情報付与部13は、選択した推測ルールがoneOfを含むか否かを判定する(ステップS109)。
選択した推測ルールがoneOfを含む場合(ステップS109:肯定)、上層情報付与部13は、oneOf内に配置された詳細ルールを1つ選択する(ステップS110)。
次に、上層情報付与部13は、選択した詳細ルールが定義するキーバリューペアを取得する。そして、上層情報付与部13は、取得したキーバリューペアが選択クラスの直下の階層の各クラスに割り当てられたセマンティックタームに一致するか否かを判定する(ステップS111)。
キーバリューペアが直下の階層の各クラスのセマンティックタームに一致する場合(ステップS111:肯定)、上層情報付与部13は、選択した推測ルールで指定されたセマンティックタームを選択クラスのセマンティックタームとして決定する。そして、上層情報付与部13は、選択した推測ルールで指定されたセマンティックタームを選択クラスの種別に追加する(ステップS114)。
これに対して、キーバリューペアが直下の階層の各クラスのセマンティックタームに一致しない場合(ステップS111:否定)、上層情報付与部13は、oneOf内の全ての詳細ルールの処理が完了したか否かを判定する(ステップS112)。
処理が完了していない詳細ルールが残っている場合(ステップS112:否定)、上層情報付与部13は、ステップS110へ戻る。これに対して、oneOf内の全ての詳細ルールの処理が完了した場合(ステップS112:肯定)、上層情報付与部13は、ステップS115へ進む。
一方、選択した推測ルールがoneOfを含まない場合(ステップS109:否定)、上層情報付与部13は、選択した推測ルールが定義するキーバリューペアを取得する。そして、上層情報付与部13は、取得したキーバリューペアが選択クラスの直下の階層の各クラスに割り当てられたセマンティックタームに一致するか否かを判定する(ステップS113)。
キーバリューペアが直下の階層の各クラスに割り当てられたセマンティックタームに一致する場合(ステップS113:肯定)、上層情報付与部13は、選択した推測ルールで指定されたセマンティックタームを選択クラスのセマンティックタームとして決定する。そして、上層情報付与部13は、選択した推測ルールで指定されたセマンティックタームを選択クラスの種別に追加する(ステップS114)。
これに対して、キーバリューペアが直下の階層の各クラスに割り当てられたセマンティックタームに一致しない場合(ステップS113:否定)、上層情報付与部13は、ステップS115へ進む。
その後、上層情報付与部13は、選択クラスに関して全ての推測ルールについてセマンティックタームの判定処理が完了したか否かを判定する(ステップS115)。セマンティックタームの判定処理を行っていない推測ルールが残っている場合(ステップS115:否定)、上層情報付与部13は、ステップS105へ戻る。
一方、選択クラスに関して全ての推測ルールについてセマンティックタームの判定処理が完了した場合(ステップS115:肯定)、上層情報付与部13は、全てのクラスについてセマンティックターム付与処理が完了したか否かを判定する(ステップS116)。
セマンティックターム付与処理を行っていないクラスが残っている場合(ステップS116:否定)、上層情報付与部13は、ステップS104へ戻る。
一方、全てのクラスについてセマンティックターム付与処理が完了した場合(ステップS116:肯定)、上層情報付与部13は、iがネストの深さから1を減算した値よりも小さいか否かを判定する(ステップS117)。
iがネストの深さから1を減算した値よりも小さい場合(ステップS117:肯定)、上層情報付与部13は、iを1つインクリメントする(ステップS118)。その後、上層情報付与部13は、ステップS104へ戻る。
これに対して、iがネストの深さから1を減算した値以上の場合(ステップS117:否定)、上層情報付与部13は、情報モデルに対するセマンティックタームの付与を終了する。その後、上層情報付与部13は、セマンティックタームを付与した共通化情報モデルを情報モデルリポジトリ20へ出力して格納させる(ステップS119)。
以上に説明したように、本実施例に係る管理端末装置は、情報モデルにおける最下層のクラスに文字比較を用いてセマンティックタームを付与する。その後、管理端末装置は、下層のクラスのセマンティックターム及び推測ルールを用いて、上層のクラスのセマンティックタームを推測して付与することで、セマンティックタームの再帰的な付与を行う。
このような処理により、本実施例に係る管理端末装置は、セマンティックタームを持たない情報モデルに、各情報モデル間で共通するセマンティックタームを自動的に付与することができる。これにより、情報モデル間での解釈を共通化することができ、IoTシステムにおけるデバイスの可用性を向上させることができる。
また、手動でセマンティックタームを付与する工数や情報モデルやデータの意味を解釈するための追加のソフトウェア開発に伴う開発工数などを削減することが可能となる。また、参照するオントロジーを変更する場合や、新規追加するデバイスに対応する場合に、推測ルールを変更することで自動的に適切なセマンティックタームの付与が行え、IoTシステム構築の工数を削減することが可能となる。
次に、実施例2について説明する。本実施例に係る管理端末装置は、最下層のクラスに対するセマンティックターム付与時に、文字列比較の対象とするセマンティックタームの範囲を制限する。本実施例に係る管理端末装置も、図4のブロック図で表される。以下の説明では、実施例1と同様の各部の動作については説明を省略する場合がある。
本実施例に係る、最下層情報付与部12は、文字列比較を行う情報モデルの各クラスに与えられた文字列であるフィールド名とオントロジーのセマンティックタームとを関連付ける紐付けルールを予め有する。
図11は、実施例2に係る最下層クラスに対するセマンティックタームの検索時の制約条件を説明するための図である。例えば、図11における紐付けルール501は、フィールド名が「unit」である場合に、比較するセマンティックタームを列挙する。すなわち、紐付けルール501は、フィールド名が「unit」であるクラスについては、セマンティックタームが「om:degree_Celsius」、「om:degree_Fharenheit」、「om:kelvin」、「om:lux」などを比較対象のセマンティックタームとするルールである。
また、紐付けルール502は、フィールド名が「enum」であり、且つ、文字列列挙型である場合に、「saref:OnOffState」や「saref:OpenCloseState」などを比較対象のセマンティックタームとするルールである。
最下層情報付与部12は、文字列比較を行う情報モデルの最下層のクラスの文字列を取得する。そして、最下層情報付与部12は、取得した文字列について定められた紐付けルールが存在するか否かを判定する。特定の文字列について紐付けルールが存在する場合、最下層情報付与部12は、その文字列についてその紐付けルールで指定されたセマンティックルールとの間で文字列比較を行う。これに対して、特定の文字列について紐付けルールが存在しなければ、最下層情報付与部12は、その文字列について全てのセマンティックタームを対象として文字列比較を実行する。
図12は、実施例2に係る最下層のクラスに対するセマンティックタームの付加処理を説明するための図である。ここでは、図11で示した制約条件を用いて文字列比較を行う場合で説明する。
最下層情報付与部12は、情報モデル231における最下層のクラスのフィールド名が「unit」と判定する。その場合、最下層情報付与部12は、図11の紐付けルール501を参照して、セマンティックターム群320のうちの「om:degree_Celsius」、「om:degree_Fharenheit」、「om:kelvin」、「om:lux」などのセマンティックタームを選択する。次に、最下層情報付与部12は、「unit」の値である「Celsius」という文字列と、選択したセマンティックタームの各文字列とで文字列比較を行う(ステップS201)。そして、最下層情報付与部12は、フィールド名が「unit」である最下層のクラスに「om:degree_Celsius」というセマンティックタームを付与する(ステップS202)。これにより、最下層情報付与部12は、共通情報モデル232を生成する。
また、最下層情報付与部12は、情報モデル233における最下層のクラスのフィールド名が「enum」であり、且つ、文字列列挙型と判定する。その場合、最下層情報付与部12は、図11の紐付けルール502を参照して、セマンティックターム群320のうちの「saref:OnOffState」や「saref:OpenCloseState」などのセマンティックタームを選択する。次に、最下層情報付与部12は、「enum」で列挙される文字列のそれぞれと選択したセマンティックタームのサブクラスのセマンティックタームのそれぞれが1対1で合致するセマンティックタームを検出する。具体的には、最下層情報付与部12は、「enum」で列挙される「ON」という文字列と、選択したセマンティックタームのサブクラスの各セマンティックタームとで文字列比較を行う(ステップS203)。また、最下層情報付与部12は、「enum」で列挙される「OFF」という文字列と、選択したセマンティックタームのサブクラスの各セマンティックタームとで文字列比較を行う(ステップS204)。そして、最下層情報付与部12は、フィールド名が「enum」である最下層のクラスに「saref:OnOffState」というセマンティックタームを付与する(ステップS205)。これにより、最下層情報付与部12は、最下層のクラスにセマンティックタームが付与された情報モデル234を生成する。
次に、図13を参照して、管理端末装置1のハードウェア構成について説明する。図13は、管理端末装置のハードウェア構成図である。
管理端末装置1は、図13に示すように、CPU(Central Processing Unit)91、メモリ92、ハードディスク93及びネットワークインタフェース94を有する。CPU91は、メモリ92、ハードディスク93及びネットワークインタフェース94とバスを介して接続される。
ネットワークインタフェース94は、外部装置との通信インタフェースである。例えば、ネットワークインタフェース94は、図4に例示した情報モデルリポジトリ20とCPU91との通信を中継する。
ハードディスク93は、例えば、図4に例示したオントロジーデータベース15及び推測ルールデータベース16の機能を実現する。また、ハードディスク93は、図4に例示した基本情報モデル取得部11、最下層情報付与部12、上層情報付与部13及び共通化情報モデル14の機能を実現するためのプログラムを含む各種プログラムを格納する。
CPU91は、ハードディスク93から各種プログラムを読み出してメモリ92上に展開して実行する。これにより、CPU91は、図4に例示した基本情報モデル取得部11、最下層情報付与部12、上層情報付与部13及び共通化情報モデル14の機能を実現する。
以上に説明したように、本実施例に係る管理端末装置は、最下層のクラスにセマンティックタームを付与する場合の文字列比較において、比較対象とするセマンティックタームを制限する。これにより、セマンティックタームの付与における計算量を削減することが可能となる。
1 管理端末装置
2 IoTシステム
11 基本情報モデル取得部
12 最下層情報付与部
13 上層情報付与部
14 共通化情報モデル出力部
15 オントロジーデータベース
16 推測ルールデータベース
20 情報モデルリポジトリ
21 アプリケーションサーバ
22 デバイス

Claims (9)

  1. 階層化され且つ電子機器に関する情報についての概念を表すクラスを各階層に1つ又は複数有する前記電子機器の情報モデルにおいて、所定階層が有する前記クラスに割り当てる識別情報を、前記所定階層の下層における前記クラスに割り当てられた前記識別情報を基に決定するための推測ルールを格納するルール格納部と、
    前記下層における前記クラスに割り当てられた前記識別情報を基に、前記ルール格納部に格納された前記推測ルールにしたがい前記所定階層における各前記クラスに前記識別情報を付与する識別情報付与部と
    を備えたことを特徴とする情報処理装置。
  2. 前記情報モデルの最下層における前記クラスに割り当てる前記識別情報を、予め決められた前記クラスと前記識別情報との対応情報を基に決定して付与する最下層情報付与部をさらに備え、
    前記識別情報付与部は、前記最下層情報付与部により付与された前記情報モデルの前記最下層における前記クラスの前記識別情報を基に、前記推測ルールにしたがい前記所定階層における各前記クラスに割り当てる前記識別情報を決定する
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記クラスは、前記電子機器を表す機器名及び前記機器名の下層に前記電子機器の属性を表す第1属性情報を有し、
    前記識別情報付与部は、前記第1属性情報の前記識別情報と特定機器名の識別情報との対応を表す第1推測ルールを基に、前記機器名に前記識別情報を付与する
    ことを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記識別情報付与部は、前記識別情報の付与対象とする前記機器名の下層の前記第1属性情報に付与された前記識別情報を取得し、1つ又は複数の前記第1属性情報の識別情報と特定機器名の識別情報との対応を示す前記第1推測ルールを基に、前記第1推測ルールで示された前記第1属性情報の識別情報の集合が取得した前記識別情報の集合の部分集合である場合に、前記識別情報の付与対象とする前記機器名に前記特定機器名の識別情報を付与することを特徴とする請求項3に記載の情報処理装置。
  5. 前記クラスは、前記第1属性情報の下層に前記第1属性情報の属性を表す第2属性情報を有し、
    前記識別情報付与部は、前記第2属性情報の識別情報の組と特定の第1属性情報の識別情報との対応を表す第2推測ルールに基に、前記第1属性情報に識別情報を付与する
    ことを特徴とする請求項3又は4に記載の情報処理装置。
  6. 前記識別情報付与部は、前記識別情報の付与対象とする前記第1属性情報の下層の前記第2属性情報に付与された前記識別情報を取得し、前記取得した前記識別情報の中に前記第2推測ルールで示された前記第2属性情報の識別情報の組が含まれる場合に、前記識別情報の付与対象とする前記第1属性情報に前記特定の第1属性情報の識別情報を付与することを特徴とする請求項5に記載の情報処理装置。
  7. 前記最下層情報付与部は、各前記クラスの情報に応じた検索条件を予め有し、前記検索条件を用いて、前記情報モデルの前記最下層における前記クラスに割り当てる前記識別情報を決定することを特徴とする請求項2に記載の情報処理装置。
  8. 階層化され且つ電子機器に関する情報についての概念を表すクラスを各階層に1つ又は複数有する前記電子機器の情報モデルにおいて、所定階層が有する前記クラスに割り当てる識別情報を、前記所定階層の下層における前記クラスに割り当てられた前記識別情報を基に決定するための推測ルールを保持し、
    前記下層における前記クラスに割り当てられた前記識別情報を基に、前記推測ルールにしたがい前記所定階層における各前記クラスに前記識別情報を付与する
    ことを特徴とする情報処理方法。
  9. 階層化され且つ電子機器に関する情報についての概念を表すクラスを各階層に1つ又は複数有する前記電子機器の情報モデルにおいて、所定階層が有する前記クラスに割り当てる識別情報を、前記所定階層の下層における前記クラスに割り当てられた前記識別情報を基に決定するための推測ルールを保持し、
    前記下層における前記クラスに割り当てられた前記識別情報を基に、前記推測ルールにしたがい前記所定階層における各前記クラスに前記識別情報を付与する
    処理をコンピュータに実行させることを特徴とする情報処理プログラム。
JP2020036223A 2020-03-03 2020-03-03 情報処理装置、情報処理プログラム及び情報処理方法 Pending JP2021140357A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020036223A JP2021140357A (ja) 2020-03-03 2020-03-03 情報処理装置、情報処理プログラム及び情報処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020036223A JP2021140357A (ja) 2020-03-03 2020-03-03 情報処理装置、情報処理プログラム及び情報処理方法

Publications (1)

Publication Number Publication Date
JP2021140357A true JP2021140357A (ja) 2021-09-16

Family

ID=77668658

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020036223A Pending JP2021140357A (ja) 2020-03-03 2020-03-03 情報処理装置、情報処理プログラム及び情報処理方法

Country Status (1)

Country Link
JP (1) JP2021140357A (ja)

Similar Documents

Publication Publication Date Title
JP6636631B2 (ja) セマンティックiotのためのrestful動作
Kučera et al. Semantic BMS: Allowing usage of building automation data in facility benchmarking
KR20050051864A (ko) 온톨로지 기반의 지식 모델링 방법 및 그 시스템
CN111723176B (zh) 一种用于生成合成交互的语义描述的方法
KR102662252B1 (ko) 자동화 목적들을 위한 데이터 모델을 타겟 온톨로지로 변환하기 위한 방법
CN110023851B (zh) 具有知识库的建筑管理系统
CN104410568B (zh) 一种智能家居语义网关的设计方法
US20220188448A1 (en) System and method for implementing mandatory access control on queries of a self-describing data system
Pfeiffer et al. Modeling capabilities of digital twin platforms-old wine in new bottles?
KR101637504B1 (ko) 비정형 데이터 처리 시스템 및 방법
CN115329504B (zh) 一种基于复杂产品结构的bom构建方法
KR20200123565A (ko) 데이터 관리 체계에 기반하여 데이터를 관리하는 장치 및 방법
Rasmussen et al. Integrating building information modeling and sensor observations using semantic web
Zhu et al. IFC-graph for facilitating building information access and query
Graube et al. Integrating industrial middleware in linked data collaboration networks
CN117271460B (zh) 基于科研数字对象语用关系的科研数联网服务方法与系统
Fierro Self-Adapting Software for Cyberphysical Systems
Höltgen et al. Implementation of an Open Web Interface for the Container-based Exchange of Linked Building Data
Möller et al. Towards an architecture to support data access in research data spaces
Ocker et al. Leveraging digital twins for compatibility checks in production systems engineering
CN110933952B (zh) 用于分布式数据系统的语义搜索及规则的方法
JP2021140357A (ja) 情報処理装置、情報処理プログラム及び情報処理方法
Pomp et al. Enabling semantics in enterprises
Vander Sande et al. The datatank: an open data adapter with semantic output
Song et al. Data consistency management in an open smart home management platform

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231003

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20240402