(57)【要約】      （修正有）【課題】複数のアプリケーションがＸＭＬ互換フォーマットで構築された文書を利用する際、アプリケーション毎にインタフェースを用意する必要がない情報処理システム、データ管理方法、情報処理装置及びその制御方法と制御プログラムを提供する。【解決手段】情報処理装置１００は、データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイル１２０を入力するファイル入力部１０１と、データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイル１３０を生成する第１生成部１０２と、データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェース１４０を生成する第２生成部１０３と、を備える。【選択図】図１
2015181009.tif 000002
【特許請求の範囲】
【請求項１】
データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力手段と、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成手段と、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成手段と、
前記データモデルが、デバイスが収集したデータを加工して加工データを生成する加工データモデルである場合に、前記第１言語の加工データモデルから加工ルールを生成する第３生成手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記第１言語はＸＭＬ(Extensible Markup Language)であることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第２言語はＳＱＬ(Structured Query Language)であることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記第３言語はＷＳＤＬ(Web Services Description Language)であることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記第１生成手段が生成した前記第２言語の前記データベース構成ファイルからデータベースを作成する作成手段と、
前記生成されたデータベースに蓄積するデータを、当該情報処理装置に接続されるデバイスから収集するためのデバイスインタフェースと、
を備え、
前記アプリケーションインタフェースは、アプリケーションから当該情報処理装置への所定のプロトコルによるデータ要求に応答して、前記データベースに蓄積されたデータを検索して所望のデータを前記アプリケーションに返信することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記所定のプロトコルはＳＯＡＰ(Simple Object Access Protocol)であることを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記アプリケーションインタフェースは、当該情報処理装置へのアプリケーションからの所定のプロトコルによる加工データ要求に応答して、前記データベースのデータを、前記加工データ要求に対応する加工ルールに従って加工された加工データを前記アプリケーションに返信することを特徴とする請求項５に記載の情報処理装置。
【請求項８】
前記第３生成手段は、前記加工ルールで使用する関数を記憶する記憶手段を有し、前記第１言語の加工データモデルに対応した前記関数を前記記憶手段から読み出して前記加工ルールの生成に使用することを特徴とする請求項７に記載の情報処理装置。
【請求項９】
データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力ステップと、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成ステップと、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成ステップと、
前記データモデルが、デバイスが収集したデータを加工して加工データを生成する加工データモデルである場合に、前記第１言語の加工データモデルから加工ルールを生成する第３生成ステップと、
を含むことを特徴とする情報処理装置の制御方法。
【請求項１０】
データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力ステップと、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成ステップと、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成ステップと、
前記データモデルが、デバイスが収集したデータを加工して加工データを生成する加工データモデルである場合に、前記第１言語の加工データモデルから加工ルールを生成する第３生成ステップと、
をコンピュータに実行させることを特徴とする制御プログラム。
【請求項１１】
情報処理装置と、
前記情報処理装置に対し、デバイスインタフェースを介して接続されたデバイスと、
前記情報処理装置に対し、アプリケーションインタフェースを介して接続されたアプリケーションと、
を含む情報処理システムであって、
前記情報処理装置は、
前記アプリケーションに対応して、データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力手段と、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成手段と、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成手段と、
前記データモデルが、デバイスが収集したデータを加工して加工データを生成する加工データモデルである場合に、前記第１言語の加工データモデルから加工ルールを生成する第３生成手段と、
データベースに蓄積するデータを前記デバイスから前記デバイスインタフェースを介して収集するデータ収集手段と、
前記加工ルールを用いて、前記デバイスインタフェースを介して収集されたデータを加工して前記データベースに蓄積するデータ加工手段と、
前記アプリケーションからの所定のプロトコルによるデータ要求に応答して、前記データベースに蓄積されたデータを検索し、前記アプリケーションインタフェースを介して所望のデータを前記アプリケーションに提供するデータ提供手段と、
を備えることを特徴とする情報処理システム。
【請求項１２】
デバイスインタフェースを介してデバイスからデータを収集し、アプリケーションインタフェースを介してアプリケーションからの要求に応答してデータを提供するデータ管理方法であって、
前記アプリケーションに対応して、データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力ステップと、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成ステップと、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成ステップと、
前記データモデルが、デバイスが収集したデータを加工して加工データを生成する加工データモデルである場合に、前記第１言語の加工データモデルから加工ルールを生成する第３生成ステップと、
データベースに蓄積するデータを前記デバイスから前記デバイスインタフェースを介して収集するデータ収集ステップと、
前記加工ルールを用いて、前記デバイスインタフェースを介して収集されたデータを加工して前記データベースに蓄積する加工ステップと、
前記アプリケーションからの所定のプロトコルによるデータ要求に応答して、前記データベースに蓄積されたデータを検索し、前記アプリケーションインタフェースを介して所望のデータを前記アプリケーションに提供するデータ提供ステップと、
を含むことを特徴とするデータ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のデバイスからデータを収集して複数のアプリケーションからの要求に応答してデータを提供するための技術に関する。
【背景技術】
【０００２】
上記技術分野において、特許文献１に示されているように、ＸＭＬ互換フォーマットで構築された文書を用いてスキーマを生成する技術が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−０９２５２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記従来技術は、単に、ＸＭＬ構造の正しさを検証するためのものであり、複数のアプリケーションが当該構造を有するデータを利用する際、アプリケーション毎にインタフェースを用意する必要がある。
【０００５】
本発明の目的は、上述の課題を解決する技術を提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明に係る装置は、
データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力手段と、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成手段と、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成手段と、
を備えることを特徴とする。
【０００７】
上記目的を達成するため、本発明に係る方法は、
データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力ステップと、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成ステップと、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成ステップと、
を含むことを特徴とする。
【０００８】
上記目的を達成するため、本発明に係るプログラムは、
データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力ステップと、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成ステップと、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成ステップと、
をコンピュータに実行させることを特徴とする。
【０００９】
上記目的を達成するため、本発明に係るシステムは、
情報処理装置と、
前記情報処理装置に対し、デバイスインタフェースを介して接続されたデバイスと、
前記情報処理装置に対し、アプリケーションインタフェースを介して接続されたアプリケーションと、
を含む情報処理システムであって、
前記情報処理装置は、
前記アプリケーションに対応して、データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力手段と、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成手段と、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成手段と、
データベースに蓄積するデータを前記デバイスから前記デバイスインタフェースを介して収集するデータ収集手段と、
前記アプリケーションからの所定のプロトコルによるデータ要求に応答して、前記データベースに蓄積されたデータを検索し、前記アプリケーションインタフェースを介して所望のデータを前記アプリケーションに提供するデータ提供手段と、
を備えることを特徴とする。
【００１０】
上記目的を達成するため、本発明に係る方法は、
デバイスインタフェースを介してデバイスからデータを収集し、アプリケーションインタフェースを介してアプリケーションからの要求に応答してデータを提供するデータ管理方法であって、
前記アプリケーションに対応して、データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力ステップと、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成ステップと、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成ステップと、
データベースに蓄積するデータを前記デバイスから前記デバイスインタフェースを介して収集するデータ収集ステップと、
前記アプリケーションからの所定のプロトコルによるデータ要求に応答して、前記データベースに蓄積されたデータを検索し、前記アプリケーションインタフェースを介して所望のデータを前記アプリケーションに提供するデータ提供ステップと、
を含むことを特徴とする。
【発明の効果】
【００１１】
本発明によれば、複数のアプリケーション毎にインタフェースを用意しなくとも、デバイスからデータを収集してアプリケーションからの要求に応答してデータを提供できる。
【図面の簡単な説明】
【００１２】
上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。
【００１３】
【図１】本発明の第１実施形態に係る情報処理装置の構成を示すブロック図である。
【図２】本発明の第２実施形態に係る情報処理システムの機能構成を示すブロック図である。
【図３】本発明の第２実施形態に係る情報処理システムの動作手順を示すシーケンス図である。
【図４】本発明の第２実施形態に係るデバイスデータモデルの登録手順を示す図である。
【図５】本発明の第２実施形態に係る加工データモデルの登録手順を示す図である。
【図６】本発明の第２実施形態に係るデータ収集または加工データ生成の手順を示す図である。
【図７】本発明の第２実施形態に係るアプリケーションへのデータまたは加工データの提供手順を示す図である。
【図８】本発明の第２実施形態に係る情報処理装置のハードウェア構成を示すブロック図である。
【図９】本発明の第２実施形態に係るデータモデルの構成を示す図である。
【図１０Ａ】本発明の第２実施形態に係る言語記述変換テーブルの構成を示す図である。
【図１０Ｂ】本発明の第２実施形態に係るＤＢテーブル生成によるデバイスデータＤＢの構成を示す図である。
【図１０Ｃ】本発明の第２実施形態に係るデバイス接続および設定入力によるＤＢテーブルへのデバイス設定を示す図である。
【図１０Ｄ】本発明の第２実施形態に係るデバイスデータ受信によるＤＢテーブルへのデバイスデータ蓄積を示す図である。
【図１０Ｅ】本発明の第２実施形態に係る加工ルール生成およびアプリケーションインタフェース生成による加工ルール（関数群）およびアプリケーションＩＦ群の構成を示す図である。
【図１１】本発明の第２実施形態に係る情報処理装置におけるアプリケーションインタフェースおよびデータベースの生成例を示す図である。
【図１２】本発明の第２実施形態に係る情報処理装置の動作手順を示すフローチャートである。
【図１３】本発明の第２実施形態に係るデバイスデータモデルに基づくアプリケーションインタフェースおよびデータベースの生成具体例を示す図である。
【図１４】本発明の第２実施形態に係る加工データモデルに基づくアプリケーションインタフェース、データベースおよび加工ルールの生成具体例を示す図である。
【図１５】本発明の第３実施形態に係る情報処理システムの構成を示すブロック図である。
【発明を実施するための形態】
【００１４】
以下に、図面を参照して、本発明の実施の形態について例示的に詳しく説明する。ただし、以下の実施の形態に記載されている構成要素はあくまで例示であり、本発明の技術範囲をそれらのみに限定する趣旨のものではない。
【００１５】
［第１実施形態］
本発明の第１実施形態としての情報処理装置１００について、図１を用いて説明する。情報処理装置１００は、デバイスからデータを収集してアプリケーションからの要求に応答してデータを提供する装置である。
【００１６】
情報処理装置１００は、ファイル入力部１０１と第１生成部１０２と第２生成部１０３とを備えている。ファイル入力部１０１は、データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイル１２０を入力する。第１生成部１０２は、データモデルファイル１２０から、データベース記述用の第２言語で記述されたデータベース構成ファイル１３０を生成する。第２生成部１０３は、データモデルファイル１２０から、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェース１４０を生成する。
【００１７】
以上の構成によれば、複数のアプリケーション毎にインタフェースを用意しなくとも、デバイスからデータを収集してアプリケーションからの要求に応答してデータを提供できる。
【００１８】
［第２実施形態］
次に本発明の第２実施形態に係る情報処理システムについて、図２以降を用いて説明する。
【００１９】
《情報処理システムの機能構成》
図２は、本実施形態に係る情報処理システム２００の機能構成を説明するための図である。
【００２０】
情報処理システム２００は、本実施形態のＭ２Ｍ−ＰＦ(Machine-to-Machine Platform)である情報処理装置２１０を含む。情報処理装置２１０に入力されるデータモデルファイル２０１と、情報処理装置２１０から情報提供を受けるアプリケーション２０２と、情報処理装置２１０のために情報を収集するデバイス２０３とを含む。なお、アプリケーション２０２やデバイス２０３はパーソナルコンピュータや通信端末によるものであってよい。また、デバイス２０３は頭脳を持たない単なるセンサ類であってもよい。かかる構成によって、本実施形態の情報処理システム２００は、デバイスデータを収集して保持し、アプリケーションに提供するデータ管理を実現する。
【００２１】
情報処理装置２１０は、開発者／管理者ＩＦ２２０を有する。開発者／管理者ＩＦ２２０は、開発者や管理者（以下、オペレータとも言う）が入力したＸＭＬ(Extensible Markup Language)で記載されたデータモデルファイル２０１から、アプリケーションインタフェース（以下、ＩＦ）と、データベース構成ファイルを生成する。また、オペレータにより入力されたデータモデルファイル２０１が加工データモデルの場合はさらに加工ルールを生成する。
【００２２】
開発者／管理者ＩＦ２２０は、ＸＭＬで記述されたデータモデルファイル２０１を入力するファイル入力部２２１を有する。また、入力されたＸＭＬで記述されたデータモデルファイル２０１からアプリケーションインタフェース記述用のＷＳＤＬ(Web Services Description Language)を生成するＷＳＤＬ生成部２２２を有する。また、入力されたＸＭＬで記述されたデータモデルファイル２０１からデータベース記述用のＳＱＬ(Structured Query Language)を生成するＳＱＬ生成部２２３と、ＳＱＬに基づいてデータベース構成を有するテーブルを生成するＤＢテーブル生成部２２４を有する。
【００２３】
また、情報処理装置２１０は、アプリケーションＩＦ２３０、デバイスＩＦ２４０、デバイスデータデータベース（以下、ＤＢ）２５０、処理実行部２６０および認証部２７０を有する。アプリケーションＩＦ２３０は、アプリケーション２０２とデータのやり取りをする。デバイスＩＦ２４０は、デバイス２０３から情報を収集する（あるいはサービスを提供する）。デバイスデータＤＢ２５０は、デバイス２０３から収集したデバイスデータを蓄積する。処理実行部２６０は、デバイスデータの収集／蓄積／読出などの処理を実行する。また、処理実行部２６０は、加工データモデルに基づいて生成された加工ルールを記憶する。認証部２７０は、データモデルファイル２０１を入力するオペレータや、アプリケーション２０２、デバイス２０３の認証を行なう。なお、認証部２７０が行う認証処理については、本実施形態の主要処理ではないので、以下の動作説明においては、その説明は省略する。
【００２４】
《情報処理システムの動作手順》
図３は、本実施形態に係る情報処理システムの動作手順３００を示すシーケンス図である。
【００２５】
まず、ステップＳ３０１において、オペレータはデバイスデータモデルのデータモデルファイル２０１を、ファイル入力部２２１を介して情報処理装置２１０に入力する。ステップＳ３０３において、情報処理装置２１０は、デバイスデータモデルに基づき、ＷＳＤＬで記述されたアプリケーションインタフェースをＷＳＤＬ生成部２２２で生成する。また、情報処理装置２１０は、デバイスデータモデルに基づき、デバイスデータ用のＤＢテーブルを作成するためのＳＱＬをＳＱＬ生成部２２３で生成する。情報処理装置２１０は、当該ＳＱＬを用い、ＤＢテーブル生成部２２４でデバイスデータ用のＤＢテーブルを生成して、デバイスデータモデルを登録する（図４参照）。デバイスデータモデルが登録されると、ステップＳ３０５において、情報処理装置２１０は、Ｓ３０３で生成されたアプリケーションインタフェースを一意に定めるＩＤおよびＤＢテーブルを一意に定めるＩＤをアプリケーション２０２側に通知する。
【００２６】
また、ステップＳ３０７において、オペレータは加工データモデルのデータモデルファイル２０１を、ファイル入力部２２１を介して情報処理装置２１０に入力する。ステップＳ３０９において、情報処理装置２１０は、加工データモデルに基づき、ＷＳＤＬで記述されたアプリケーションインタフェースをＷＳＤＬ生成部２２２で生成する。また、情報処理装置２１０は、加工データモデルに基づき、加工データ用のＤＢテーブルを作成するためのＳＱＬをＳＱＬ生成部２２３で生成する。情報処理装置２１０は、当該ＳＱＬを用い、ＤＢテーブル生成部２２４で加工データ用のＤＢテーブルを生成する。さらに、情報処理装置２１０は、加工データモデルに基づき、加工ルール生成部２２５で加工ルールを生成して、加工データモデルを登録する（図５参照）。加工データモデルが登録されると、ステップＳ３１１において、情報処理装置２１０は、Ｓ３０９で生成されたアプリケーションインタフェースを一意に定めるＩＤ、ＤＢテーブルを一意に定めるＩＤおよび加工ルールを一意に定めるＩＤをアプリケーション２０２側に通知する。
なお、デバイスデータモデルと加工データモデルとは、１つのデータモデルファイル２０１に混在しているのが一般的であり、ステップＳ３０１およびＳ３０３と、Ｓ３０５およびＳ３０７とが複数回繰り返される。したがって、その順序に制限はない。また、アプリケーション２０２側に各ＩＤを通知する動作はまとめて行なってもよい。
【００２７】
次に、ステップＳ３１３において、デバイスの接続に対応して、アプリケーションのユーザからデバイス情報が情報処理装置２１０に設定される。情報処理装置２１０は、当該デバイス情報に従い、ステップＳ３１５において、ＤＢテーブルにデータを送るデバイスを登録する（図１０Ｃ参照）。
【００２８】
情報処理装置２１０は、接続されたデバイスからデバイスＩＦ２４０を介してデバイスデータを収集して、生成されたＤＢテーブルに格納、蓄積する。すなわち、ステップＳ３１７において、情報処理装置２１０はデバイス２０３からデバイスデータを受信する。ステップＳ３１９において、情報処理装置２１０は、デバイスデータ用のＤＢテーブル内にデータを収集する。あるいは、ステップＳ３１９において、情報処理装置２１０は、収集したデータを加工ルールに基づき加工処理して加工データを生成し、加工データ用のＤＢテーブルに格納、蓄積する（図６参照）。
【００２９】
アプリケーション２０２がデバイス２０３から収集されたデータ（または、加工データ）を望む場合は、ステップＳ３２１において、情報処理装置２１０にデータ（加工データ）を要求する。情報処理装置２１０は、ＤＢテーブル内に収集されたアプリケーション２０２の所望のデータあるいは所望の加工データを提供する。そして、アプリケーション２０２は、情報処理装置２１０から提供されたデータ（加工データ）を利用して処理を行なう（図７参照）。
【００３０】
以下、情報処理システムの動作手順３００をさらに詳細に説明する。なお、図４〜図７において、各動作手順で使用されない機能構成部は削除されるか、簡単なボックスのみで示してある。
【００３１】
（デバイスデータモデルの登録）
図４は、本実施形態に係るデバイスデータモデルの登録手順Ｓ３０１，Ｓ３０３を示す図である。
【００３２】
ステップＳ４０１において、ＸＭＬで記述されたデバイスデータモデル４０１がファイル入力部２２１に入力される。ステップＳ４０３において、デバイスデータモデル４０１は、ＷＳＤＬ生成部２２２およびＳＱＬ生成部２２３に入力される。ステップＳ４０５において、ＷＳＤＬ生成部２２２でＸＭＬのデバイスデータモデル４０１に基づいて生成されたＷＳＤＬがアプリケーションＩＦ２３０に送信され、記憶される。ＷＳＤＬ生成部２２２は、例えばデバイスデータモデル４０１内のタグを参照し、アプリケーション２０２が当該デバイスデータモデル４０１に基づき生成されるデバイスデータ用のＤＢテーブルから取得対象とするデータを特定するためにどのような情報を送信するか判断する。そして、ＷＤＳＬ生成部２２２は、判断の結果に基づいてＷＳＤＬを生成する。
【００３３】
一方、ステップＳ４０７において、ＳＱＬ生成部２２３がＸＭＬのデバイスデータモデル４０１に基づいてＳＱＬを生成する。そして生成されたＳＱＬによって、ＤＢテーブル生成部２２４がデバイスデータ用のＤＢテーブルを生成し、デバイスデータＤＢ２５０内に確保する。ＳＱＬ生成部２２３は、例えばデバイスデータモデル４０１内のタグを参照し、デバイスデータ用のＤＢテーブルがどのような要素を持つかを判断する。そしてＳＱＬ生成部２２３は、判断の結果に基づいて当該要素を持つテーブルを生成するためのＳＱＬを作成する。ＤＢ生成部２２４は、当該ＳＱＬを用いてデバイスデータ用のＤＢテーブルを生成する。
【００３４】
（加工データモデルの登録）
図５は、本実施形態に係る加工データモデルの登録手順Ｓ３０７，Ｓ３０９を示す図である。
【００３５】
ステップＳ５０１において、ＸＭＬで記述された加工データモデル５０１がファイル入力部２２１に入力される。ステップＳ５０３において、加工データモデル５０１は、ＷＳＤＬ生成部２２２およびＳＱＬ生成部２２３、さらに加工ルール生成部２２５に入力される。ステップＳ５０５において、ＷＳＤＬ生成部２２２でＸＭＬの加工データモデル５０１に基づいて生成されたＷＳＤＬがアプリケーションＩＦ２３０に送信され、記憶される。ＷＳＤＬ生成部２２２が加工データに基づいてＷＳＤＬを生成する流れは、上述したデバイスデータモデルの流れと同様である。
【００３６】
また、ステップＳ５０７において、加工ルール生成部２２５においてＸＭＬの加工データモデル５０１に基づいて生成された加工ルールが、処理実行部２６０内に準備される。加工ルール生成部２２５は、加工データモデル５０１内に設定された情報に基づき、処理実行部２６０に予め準備された関数（例えば、データの最大値や最小値、平均値を算出する関数など）をどのようにデバイスデータに適用し、当該デバイスデータを加工するか等を定める加工ルールを生成する。ここで、加工データモデル５０１には、例えば、ある関数を適用するデバイスデータの範囲や、当該加工ルールを適用する時間間隔などの情報が定義される。また、処理実行部２６０に予め準備された関数以外にも、加工データモデル５０１に新たな関数を定義しておくことで、加工ルール生成部２２５は、当該加工データモデル５０１に定義された関数を用いて加工ルールを生成することができる。
【００３７】
また、ステップＳ５０９において、ＳＱＬ生成部２２３がＸＭＬの加工データモデル５０１に基づいてＳＱＬを生成する。そして生成されたＳＱＬを用いて、ＤＢテーブル生成部２２４が加工データ用のＤＢテーブルを生成し、デバイスデータＤＢ２５０内に確保する。ＤＢテーブル生成部２２４が加工データ用のＤＢテーブルを作成する流れは、上述したデバイスデータモデルの流れと同様である。
【００３８】
（データ収集または加工データ生成）
図６は、本実施形態に係るデータ収集または加工データ生成の手順Ｓ３１７，Ｓ３１９を示す図である。
【００３９】
ステップＳ６０１において、デバイス２０３からのデバイスデータは、デバイスデータＤＢ２５０内のデバイスデータ用のＤＢテーブルに蓄積される。一方、ステップＳ６０３において、デバイスデータ用のＤＢテーブルからのデータが読み出されて処理実行部２６０内の加工ルールに従って加工され、デバイスデータＤＢ２５０内の加工データ用のＤＢテーブルには加工データが蓄積される。例えば、あるセンサＡにより、１分毎に温度と湿度がデバイスデータとして収集され、デバイスデータ用（センサＡ用）のＤＢテーブルに格納されているとする。また、「１時間毎の平均温度および平均湿度を算出して記録する」という加工ルールが、処理実行部２６０内に設定されていたとする。この場合、処理実行部２６０は、当該加工ルールに従い、１時間おきにセンサＡ用のＤＢテーブルから１時間分のデバイスデータを読み出し、平均温度と平均湿度を算出する。そして、処理実行部２６０は、算出した平均温度と平均湿度を加工データ用のＤＢテーブルに蓄積する。なお、「平均を算出する」といった関数は、処理実行部２６０に予め準備されていてもよいし、加工データモデル５０１内に定義されていてもよい。
【００４０】
（アプリケーションへのデータまたは加工データの提供）
図７は、本実施形態に係るアプリケーションへのデータまたは加工データの提供手順Ｓ３２１，Ｓ３２３を示す図である。
【００４１】
ステップＳ７０１において、アプリケーション２０２からの要求が情報処理装置２１０に渡される。ステップＳ７０３において、アプリケーションＩＦ２３０を介したアプリケーション２０２の要求に基づき、処理実行部２６０がデバイスデータＤＢ２５０のデバイスデータ用のＤＢテーブルや加工データ用のＤＢテーブルから今までに蓄積したデバイスデータの中から当該要求に合致するデバイスデータを読み出す。例えば、アプリケーション２０２は、取得対象データを記憶するＤＢテーブルのレコードを一意に定めるキー、および当該ＤＢテーブルのカラムを一意に定める情報を要求に含める。なお、アプリケーション２０２は、ステップＳ３０５やステップＳ３１１で受信した各ＩＤに基づいてアプリケーションＩＦ２３０と所望のデータが格納されたＤＢテーブルとの対応を判断することができる。そして、ステップＳ７０５において、情報処理装置２１０は、アプリケーション２０２からの要求に対応するデータを送信する。すなわち、アプリケーション２０２が要求したデータの提供が実現する。
【００４２】
《情報処理装置のハードウェア構成》
図８は、本実施形態に係る情報処理装置２１０のハードウェア構成を示すブロック図である。図８において、情報処理装置２１０は、ＣＰＵ８１０、ＲＯＭ８２０、通信制御部８３０、ＲＡＭ８４０およびストレージ８５０を備えている。
【００４３】
ＣＰＵ８１０は中央処理部であって、様々なプログラムを実行することにより情報処理装置２１０全体を制御する。ＲＯＭ８２０は、リードオンリメモリであり、ＣＰＵ８１０が最初に実行すべきブートプログラムの他、各種パラメータ等を記憶している。通信制御部８３０は、ネットワークを介したアプリケーションやデバイスの端末との通信を制御する。また、ＲＡＭ８４０は、ランダムアクセスメモリであり各種記憶領域を有している。ストレージ８５０は、データ群やデータベースのほか、プログラムを記憶している。情報処理装置２１０はさらに、入出力インタフェース８６０を備え、入出力インタフェース８６０を介して、オペレータ操作部８６１、表示部８６２に接続されている。
【００４４】
ＲＡＭ８４０は、オペレータ操作部８６１に対するオペレータの操作に応じて入力されたデータモデルファイル２０１を記憶する領域を有している。また、本情報処理装置２１０によりデータモデルファイル２０１から生成されたＷＳＤＬで記載されたアプリケーションＩＦ８４１と、ＳＱＬで記載されたデバイスデータＤＢ２５０のフォーマット８４２とを記憶する領域を有している。デバイスデータＤＢ２５０のフォーマット８４２は、デバイスデータ用のＤＢテーブルや加工データ用のＤＢテーブルを含む。アプリケーションＩＦ８４１はセットアップされ、ストレージ８５０において、アプリケーションＩＦ群８５１として記憶される。デバイスデータ用のＤＢテーブルや加工データ用のＤＢテーブルは、ストレージ８５０において、デバイスデータＤＢ２５０内に準備される。ＲＡＭ８４０はまた、加工データモデルから生成される加工ルール８４３を記憶する領域を有している。かかる加工ルール８４３は、ストレージ８５０のあらかじめ準備された関数群を含む加工ルール（関数群）８５２に格納される。
【００４５】
ＲＡＭ８４０はまた、デバイスから収集したデバイスデータ８４４を一時的に記憶する領域を有し、そのデバイスデータ８４４は、ストレージ８５０のデバイスデータＤＢ２５０のデバイスデータ用のＤＢテーブルや加工データ用のＤＢテーブルに蓄積される。ＲＡＭ８４０はまた、デバイスを制御するためのデバイス制御情報４４５を記憶する記憶領域を有している。ＲＡＭ８４０はさらに、アプリケーションから受信したアプリケーション受信情報８４６と、アプリケーションに送信すべきアプリケーション送信情報８４７とを記憶する記憶領域を備えている。
【００４６】
一方、ストレージ８５０は、アプリケーションＩＦ群８５１、デバイスデータＤＢ２５０、加工ルール（関数群）８５２、に加えて、ＸＭＬで記載されたデータモデルからＷＳＤＬで記述されたアプリケーションインタフェース、ＳＱＬで記載されたデータベース構成に変換するための、言語記述変換テーブル８５３を記憶する。また、ストレージ８５０は、情報処理プログラム８５４を格納している。ＣＰＵ８１０は、情報処理プログラム８５４やアプリケーションＩＦ群８５１、加工ルール（関数群）８５２、言語記述変換テーブル８５３などを読み出して実行することにより、図２の各機能構成とその処理（図４〜図７参照）を実現する。
【００４７】
なお、図８には、本実施形態に必須なデータやプログラムのみが示されており、ＯＳなどの汎用のデータやプログラムは図示されていない。
【００４８】
（データモデル）
図９は、本実施形態に係るデータモデルの構成９００を示す図である。かかるデータモデルは、開発者（オペレータ）がデータモデルをＸＭＬで記述する場合に、その支援としてあらかじめ準備されてよい。その場合には、図８のストレージにデータモデルのテンプレートが記憶されて、開発者（オペレータ）に対し対話的に提供される。
【００４９】
本実施形態のデータモデルは、抽象モデルを継承して作成することができる。本例では、テンプレートは、汎用objectテンプレート９１１を親クラス（抽象クラス）とし、デバイスタイプ層９１２と、業種別タイプ層９１３と、実モデル層９１４との、全体で４階層に分けている。図９の上段例では、テンプレートが「汎用オブジェクト」⇒「センサ」⇒「農業センサ」⇒「ABC社製農業センサ」と継承して、データモデルを作成している。すなわち、子データモデルには親データモデルの属性が継承される。インスタンス(実体)９２０は、データモデルに値を投入することで生成される。
【００５０】
（言語記述変換テーブル）
図１０Ａは、本実施形態に係る言語記述変換テーブル８５３の構成を示す図である。なお、この構成に限定されることはない。
【００５１】
言語記述変換テーブル８５３は、ＸＭＬデータモデル１０１１の記述に対応付けて、データベースを生成するＳＱＬ記述のためのＳＱＬ記載用データ１０１２として、収集対象や収集条件などが記憶される。また、加工データモデルの場合の加工処理に対応する加工ルール用データ１０１３が記憶される。また、アプリケーションインタフェースをＷＳＤＬで記載するためのＷＳＤＬ記述用データ１０４１として、使用されるメッセージフォーマットやその他条件が記憶される。なお、ＳＱＬ記載用データ１０１２の収集条件としては、例えば、データの精度や収集時間単位などが設定できる。
【００５２】
例えば、デバイスデータモデル１０２１に対応しては、ＳＱＬ記述用データ１０１２には収集対象として"温度"、"湿度"が記憶され、加工処理は無く、ＷＳＤＬ記述にはメッセージフォーマットとしてＭ１が記憶されている。また、加工データモデル１０２２に対応しては、ＳＱＬ記述用データ１０１２には収集対象として"最高温度"、"最低温度"が記憶され、加工処理は最高／最低の選択（演算）が、ＷＳＤＬ記述にはメッセージフォーマットとしてＭ２が記憶されている。
【００５３】
（ＤＢテーブルの生成）
図１０Ｂは、本実施形態に係るＤＢテーブル生成によるデバイスデータＤＢ２５０の構成を示す図である。
【００５４】
デバイスデータＤＢ２５０には、生成されたデバイスデータ用のＤＢテーブルや加工データ用のＤＢテーブルが検索可能に蓄積される。そのため、ＤＢテーブル作成時に一意のＤＢテーブルＩＤが付され、それがＤＢテーブルＩＤ一覧１０３１に登録される。そして、各ＤＢテーブルＩＤに紐付いて空のＤＢテーブル１０３２，１０３３、１０３４が確保される。図１０Ｂにおいて、ＤＢテーブルＩＤが"ＤＢ０００１"のＤＢテーブル１０３２は温度と湿度を収集し、ＤＢテーブルＩＤが"ＤＢ０００２"のＤＢテーブル１０３３は温度、湿度、気圧および風力を収集する。また、ＤＢテーブルＩＤが"ＤＢ１００１"のＤＢテーブル１０３４は加工データ用のＤＢテーブルであり、最高温度と最低温度を収集する。本実施形態では、例えば、ＤＢテーブルＩＤの数字部分の最上位が"１"であるＤＢテーブルが加工データ用のＤＢテーブルを示す。
【００５５】
（デバイス設定）
図１０Ｃは、本実施形態に係るデバイス接続および設定入力によるＤＢテーブルへのデバイス設定Ｓ３１３、Ｓ３１５を示す図である。本例では、図１０Ｂの空のＤＢテーブル１０３２について説明するが、他のＤＢテーブルへのデバイス設定も同様である。
【００５６】
空のＤＢテーブル１０３２に対して、アプリケーション２０２からデバイスＩＤ"１"でシリアルＮｏ"１２３４"のデバイス情報１０４１が設定される。そして、当該デバイスが情報処理装置２１０に接続されると、デバイスが設定されたＤＢテーブル１０４２になって、情報収集の準備が整うことになる。
【００５７】
（デバイスデータ蓄積）
図１０Ｄは、本実施形態に係るデバイスデータ受信によるＤＢテーブルへのデバイスデータ蓄積Ｓ３１７、Ｓ３１９を示す図である。なお、本例もＤＢテーブル１０３２に基づく例を説明するが、他のＤＢテーブルにおいても同様である。また、図１０Ｄでは、図１０ＣにさらにデバイスＩＤ"２"でシリアルＮｏ"５６７８"のデバイスが接続されているとして説明する。
【００５８】
２つのデバイスが設定されているＤＢテーブル１０４３に対して、デバイスＩＤ"１"のデバイスから温度２３（℃）、湿度５０（％）を受信し、デバイスＩＤ"２"のデバイスから温度２５（℃）、湿度６０（％）を受信したとする（図１０Ｄの１０５１）。情報処理装置２１０が、これら受信データを格納するとＤＢテーブル１０５２となる。
【００５９】
（加工ルール生成およびアプリケーションインタフェース生成）
図１０Ｅは、本実施形態に係る加工ルール生成およびアプリケーションインタフェース生成による加工ルール（関数群）８５２およびアプリケーションＩＦ群８５１の構成を示す図である。
【００６０】
加工ルール（関数群）８５２には、加工ルールが検索可能に蓄積される。そのため、加工ルール作成時に一意の加工ルールＩＤが付され、それが加工ルールＩＤ一覧１０６１に登録される。そして、各加工ルールＩＤに紐付いて加工ルール１０６２、１０６３が確保される。加工ルール１０６２、１０６３は、例えば、関数と入力データ、出力データにより定義されるが、これに限定されるものではない。
【００６１】
また、アプリケーションＩＦ群８５１には、アプリケーションＩＦが検索可能に蓄積される。そのため、アプリケーションＩＦ作成時に一意のアプリケーションＩＦ・ＩＤが付され、それがアプリケーションＩＦ・ＩＤ一覧１０７１に登録される。そして、各アプリケーションＩＦ・ＩＤに紐付いてアプリケーションＩＦ１０７２、１０７３が確保される。アプリケーションＩＦ１０７２、１０７３は、例えば、プロトコルと入力メッセージ、出力メッセージにより定義されるが、これに限定されるものではない。
【００６２】
（アプリケーションインタフェースおよびデータベースの生成）
図１１は、本実施形態に係る情報処理装置におけるアプリケーションインタフェースおよびデータベースの生成例１１００を示す図である。
【００６３】
図１１の上段は、デバイスデータモデル４０１の場合に生成されるデバイスデータ用のＤＢテーブル１１１０と、ＳＯＡＰ(Simple Object Access Protocol)インタフェース１１２０とを示す図である。デバイスデータ用のＤＢテーブル１１１０には、デバイスＩＤとシリアルＮｏとに対応付けて、設置位置(location)、温度(temperature)、湿度(humidity)などが記憶される。また、ＳＯＡＰインタフェース１１２０によれば、ＩＤ001の温度が検索されることになる。
【００６４】
一方、図１１の下段は、加工データモデル５０１の場合に生成される加工データ用のＤＢテーブル１１３０と、ＳＯＡＰインタフェース１１４０とを示す図である。加工データ用のＤＢテーブル１１３０には、デバイスＩＤとシリアルＮｏとに対応付けて、最高温度(MaxTemperature)、最低温度(MinTemperature)などが記憶される。最高温度(MaxTemperature)や最低温度(MinTemperature)を見つける処理が加工ルールとなり、例えば引数で指定された範囲のデータの中から最高温度を見つける関数が準備されていれば、当該関数の引数を決定することにより「一定範囲のデータの中から最高温度を見つける」という加工ルールを生成できる。そしてこの加工ルールに従い、加工データ用のＤＢテーブルに各情報が記憶される。また、ＳＯＡＰインタフェース１１４０によれば、ＩＤ001の最高温度が検索されることになる。
なお、図１１には、ＳＯＡＰインタフェースを示したが、本実施形態で有用な所定のプロトコルのインタフェースが使用可能である。
【００６５】
《情報処理装置の動作手順》
図１２は、本実施形態に係る情報処理装置２１０の動作手順を示すフローチャートである。このフローチャートは、図８のＣＰＵ８１０によってＲＡＭ８４０を使用しながら実行されて、図２の各機能構成部を実現する。
【００６６】
まず、情報処置装置２００は、ステップＳ１２１１においてデータモデルが入力されたか否かを判定し、ステップＳ１２２１においてアプリケーション２０２からのアクセスか否かを判定し、ステップＳ１２３１においてデバイス２０３からのアクセスか否かを判定する。なお、本実施形態ではＳ１２１１、Ｓ１２２１、Ｓ１２３１の順に判定を行っているが、これらの判定の実行順序は任意とすることができる。
【００６７】
データモデルが入力された場合はステップＳ１２１３に進んで、情報処理装置２１０は、ＸＭＬ記述のデータモデルから、ＳＱＬ記述のＤＢテーブルおよびＷＳＤＬ記述のアプリケーションインタフェース２３０を生成する。次に、ステップＳ１２１５において、情報処理装置２１０は、生成したアプリケーションインタフェース２３０をセットアップする。ステップＳ１２１７において、情報処理装置２１０は、デバイスデータＤＢ２５０に生成されたＤＢテーブルをセットアップする。ステップＳ１２１９において、情報処理装置２１０は、生成された加工ルールをセットアップする。
【００６８】
アプリケーション２０２からのアクセスであればステップＳ１２２３に進んで、情報処理装置２１０は、アプリケーションインタフェース２３０を介してアプリケーション２０２からの指示メッセージを受信する。次に、ステップＳ１２２５において、情報処理装置２１０は、アプリケーション２０２のリクエストに対応して、収集したデバイスデータをデバイスデータＤＢ２５０から読み出す。ステップＳ１２２７においては、情報処理装置２１０は、アプリケーションのリクエストに対応するデバイスデータの処理を行なう。そして、ステップＳ１２２９において、情報処理装置２１０は、デバイスデータの処理結果をアプリケーションの要求に応答して送信する。
【００６９】
デバイス２０３からのアクセスであればステップＳ１２３３に進んで、情報処理装置２１０は、デバイスインタフェース２４０を介してデバイスデータを収集して、デバイスデータＤＢ２５０に蓄積する。
【００７０】
なお、本実施形態では、加工データモデルの場合に、あらかじめデバイスデータＤＢ２５０のＤＢテーブルに加工データを蓄積してもよいし、アプリケーション２０２からのアクセス時にデバイスデータＤＢ２５０からのデバイスデータに対して加工を行なって、アプリケーションに返信してもよい。あるいは、加工内容の複雑さによって、デバイスデータＤＢ２５０への蓄積時に加工処理する場合と、アプリケーション２０２からのアクセス時に加工処理する場合とを切り分けてもよい。
【００７１】
《具体的な生成例》
本実施形態による、デバイスデータモデルからアプリケーションインタフェースおよびＤＢテーブルを生成する具体例と、加工データモデルからアプリケーションインタフェース、ＤＢテーブルおよび加工ルールを生成する具体例を示す。
【００７２】
（デバイスデータモデル）
図１３は、本実施形態に係るデバイスデータモデルに基づくアプリケーションインタフェースおよびＤＢテーブルの生成具体例１３００である。
【００７３】
入力ＸＭＬ例はデバイスデータモデル１３０１を示す。このデバイスデータモデル１３０１は、モデル名が"ＡＢＣ気象センサ"であり、整数の"ＩＤ"と、文字列の"シリアルＮｏ"とに対応付けて、整数の"温度"と整数の"湿度"などを含む。
【００７４】
このＸＭＬで記述されたデバイスデータモデル１３０１からは、ＳＱＬ生成部２２３によりＳＱＬ記述１３１０が生成される。本例では、ＳＱＬ生成部２２３は、デバイスデータモデル１３０１内のタグが「ｐａｒａｍ」の行を参照し、当該ＤＢテーブルがどのような要素を持つかを判断してＳＱＬ記述１３１０を生成する。かかるＳＱＬ記述１３１０により、デバイスデータＤＢ２５０に空のデバイスデータ用のＤＢテーブル２５１が生成され、デバイスからのデバイスデータ収集により温度および湿度が蓄積されたＤＢテーブル２５２となる。
【００７５】
一方、このＸＭＬで記述されたデバイスデータモデル１３０１からは、ＷＳＤＬ生成部２２２によりＷＳＤＬ記述１３２０が生成される。本例では、ＷＳＤＬ生成部２２２は、デバイスデータモデル１３０１内のタグが「ｐａｒａｍ」の行を参照し、デバイス２０３が取得するデータの構造や型を判断してＷＳＤＬ記述１３２０を生成する。かかるＷＳＤＬ記述１３２０には、アプリケーションインタフェースとしてアプリケーション２０２からの入力メッセージおよびアプリケーション２０２への出力メッセージが定義されている。
【００７６】
このようにして、情報処理装置２１０のアプリケーションＩＦ２３０とデバイスデータ用のＤＢテーブル２５１とが生成されて、セットアップされる。
【００７７】
かかる情報処理装置２１０に対して、アプリケーション２０２からは、アプリケーションインタフェースに対して、ＤＢテーブル２５２の中からＩＤ＝１の温度を検索するＳＯＡＰによるデータ要求１３４０が送信されている。すなわち、アプリケーション２０２は、情報処理装置２１０のアプリケーションインタフェース以降の処理を考慮すること無しに、必要なデータを検索することができる。
【００７８】
（加工データモデル）
図１４は、本実施形態に係る加工データモデルに基づくアプリケーションインタフェース、データベースおよび加工ルールの生成具体例１４００である。
【００７９】
入力ＸＭＬ例は加工データモデル１４０１を示す。この加工データモデル１４０１は、モデル名が"ＸＹＺ気象センサ"であり、整数の"ＩＤ"と、文字列の"シリアルＮｏ"とに対応付けて、整数の"最高温度"と整数の"最低温度"などを含む。
【００８０】
このＸＭＬで記述された加工データモデル１４０１からは、デバイスデータモデルの場合と同様に、ＳＱＬ記述１４１０とＷＳＤＬ記述１４２０が生成される。かかるＳＱＬ記述１４１０により、温度最高温度と最低温度を記憶する領域を有する空の加工データ用ＤＢテーブル１４３２が生成される。また、加工データモデル１４０１に設定された、使用する関数や関数の適用範囲などの「対象のデバイスデータをどのように加工するか」を定義する情報に基づき、加工ルール生成部２２５により、デバイスデータＤＢ２５０のＤＢテーブル２５２から温度を読み出して最高温度／最低温度を見つける加工ルール１４３１が生成される。そして、加工ルール１４３１に従い、ＤＢテーブル２５２に蓄積されたデバイスデータの中から最高温度および最低温度が検索され、ＤＢテーブル１４３２に蓄積される。
【００８１】
このようにして、情報処理装置２１０のアプリケーションインタフェース２３０と加工データ用ＤＢテーブル１４３２とが生成されてセットアップされると共に、加工ルール１４３１がセットアップされる。
【００８２】
かかる情報処理装置２１０に対して、アプリケーション２０２からは、アプリケーションインタフェースに対して、ＤＢテーブル１４３２の中からＩＤ＝２の最高温度を検索するＳＯＡＰによる加工データ要求１４４０が送信されている。すなわち、アプリケーション２０２は、情報処理装置２１０のアプリケーションインタフェース以降の処理を考慮すること無しに、必要なデータを検索して加工することができる。
【００８３】
以上説明したように、本実施形態によれば、ＸＭＬにより記述されたデータモデルが入力されると、アプリケーションインタフェースとデータベースのテーブルとが独立に生成されるので、どのアプリケーションからも簡単な操作でデータを取得できる。また、データの加工も簡単な操作で可能である。
【００８４】
［第３実施形態］
次に本発明の第３実施形態に係る情報処理システム１５００について、図１５を用いて説明する。
【００８５】
《情報処理システムの構成》
図１５は、本実施形態に係る情報処理システム１５００の構成を示すブロック図である。本実施形態に係る情報処理システム１５００は、上記第２実施形態と比べると、デバイスデータの収集、アプリケーションからの問い合わせ、データモデルの入力を含めて、すべてがネットワークを介して行なわれるクラウドシステムである点で異なる。その他の構成および動作は、第２実施形態と同様であるため詳しい説明を省略する。
【００８６】
情報処理システム１５００では、ネットワーク１５６０を介して、アプリケーション群１５３１〜１５３ｉ〜１５３ｎと、デバイス群（１５４１〜１５４ｎ、１５５１〜１５５ｎ）と、オペレータ１５２１がデータモデルを入力するオペレータ端末１５２０とが接続される。デバイス群は、携帯端末１５４１〜１５４ｎやセンサ類１５５１〜１５５ｎなどを含み、データ収集が可能な機器であれば特に限定はない。
【００８７】
ネットワーク１５６０には、本実施形態の情報処理装置１５１０が接続されている。情報処理装置１５１０は、通信制御部１５１１を有し、上記アプリケーション群、デバイス群およびオペレータ端末とネットワーク１５６０を介して通信する。情報処理装置１５１０内には、通信制御部１５１１に接続するデータモデル処理部１５１２と、デバイスデータ処理部１５１３と、アプリケーション対応部１５１４とを有している。また、それぞれの処理部、対応部に接続するデバイスデータＤＢ１５１５を有している。ここで、データモデル処理部１５１２、デバイスデータ処理部１５１３、およびアプリケーション対応部１５１４は、第２実施形態の構成をその処理対象から３つの分類したものである。したがって、データモデル処理部１５１２が通信制御部１５１１に接続されていること、すなわち図２のファイル入力部２２１がアプリケーションやデバイスと同様にネットワークを介して送受信する違いがあるのみである。
【００８８】
［他の実施形態］
以上、本発明の実施形態について詳述したが、それぞれの実施形態に含まれる別々の特徴を如何様に組み合わせたシステムまたは装置も、本発明の範疇に含まれる。
【００８９】
また、本発明は、複数の機器から構成されるシステムに適用されてもよいし、単体の装置に適用されてもよい。さらに、本発明は、実施形態の機能を実現する制御プログラムが、システムあるいは装置に直接あるいは遠隔から供給される場合にも適用可能である。したがって、本発明の機能をコンピュータで実現するために、コンピュータにインストールされる制御プログラム、あるいはその制御プログラムを格納した媒体、その制御プログラムをダウンロードさせるＷＷＷ(World Wide Web)サーバも、本発明の範疇に含まれる。
以下、参考形態の例を付記する。
１．
データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力手段と、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成手段と、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成手段と、
を備えることを特徴とする情報処理装置。
２．
前記第１言語はＸＭＬ(Extensible Markup Language)であることを特徴とする１．に記載の情報処理装置。
３．
前記第２言語はＳＱＬ(Structured Query Language)であることを特徴とする１．または２．に記載の情報処理装置。
４．
前記第３言語はＷＳＤＬ(Web Services Description Language)であることを特徴とする１．乃至３．のいずれか１つに記載の情報処理装置。
５．
前記第１生成手段が生成した前記第２言語の前記データベース構成ファイルからデータベースを作成する作成手段と、
前記生成されたデータベースに蓄積するデータを、当該情報処理装置に接続されるデバイスから収集するためのデバイスインタフェースと、
を備え、
前記アプリケーションインタフェースは、アプリケーションから当該情報処理装置への所定のプロトコルによるデータ要求に応答して、前記データベースに蓄積されたデータを検索して所望のデータを前記アプリケーションに返信することを特徴とする１．乃至４．のいずれか１つに記載の情報処理装置。
６．
前記所定のプロトコルはＳＯＡＰ(Simple Object Access Protocol)であることを特徴とする５．に記載の情報処理装置。
７．
前記データモデルが、デバイスが収集したデータを加工して加工データを生成する加工データモデルである場合に、前記第１言語の加工データモデルから加工ルールを生成する第３生成手段をさらに備えることを特徴とする１．乃至６．のいずれか１つに記載の情報処理装置。
８．
前記第３生成手段は、前記加工ルールで使用する関数を記憶する記憶手段を有し、前記第１言語の加工データモデルに対応した前記関数を前記記憶手段から読み出して前記加工ルールの生成に使用することを特徴とする７．に記載の情報処理装置。
９．
前記アプリケーションインタフェースは、当該情報処理装置へのアプリケーションからの所定のプロトコルによる加工データ要求に応答して、前記データベースのデータを、要求された加工ルールに従って加工し、加工データを前記アプリケーションに返信することを特徴とする７．または８．に記載の情報処理装置。
１０．
データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力ステップと、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成ステップと、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成ステップと、
を含むことを特徴とする情報処理装置の制御方法。
１１．
データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力ステップと、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成ステップと、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成ステップと、
をコンピュータに実行させることを特徴とする制御プログラム。
１２．
情報処理装置と、
前記情報処理装置に対し、デバイスインタフェースを介して接続されたデバイスと、
前記情報処理装置に対し、アプリケーションインタフェースを介して接続されたアプリケーションと、
を含む情報処理システムであって、
前記情報処理装置は、
前記アプリケーションに対応して、データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力手段と、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成手段と、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成手段と、
データベースに蓄積するデータを前記デバイスから前記デバイスインタフェースを介して収集するデータ収集手段と、
前記アプリケーションからの所定のプロトコルによるデータ要求に応答して、前記データベースに蓄積されたデータを検索し、前記アプリケーションインタフェースを介して所望のデータを前記アプリケーションに提供するデータ提供手段と、
を備えることを特徴とする情報処理システム。
１３．
デバイスインタフェースを介してデバイスからデータを収集し、アプリケーションインタフェースを介してアプリケーションからの要求に応答してデータを提供するデータ管理方法であって、
前記アプリケーションに対応して、データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力ステップと、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成ステップと、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成ステップと、
データベースに蓄積するデータを前記デバイスから前記デバイスインタフェースを介して収集するデータ収集ステップと、
前記アプリケーションからの所定のプロトコルによるデータ要求に応答して、前記データベースに蓄積されたデータを検索し、前記アプリケーションインタフェースを介して所望のデータを前記アプリケーションに提供するデータ提供ステップと、
を含むことを特徴とするデータ管理方法。
【００９０】
この出願は、２０１１年５月２４日に出願された日本出願特願２０１１−１１６３６７号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2015181009.tif 000003
【図２】
2015181009.tif 000004
【図３】
2015181009.tif 000005
【図４】
2015181009.tif 000006
【図５】
2015181009.tif 000007
【図６】
2015181009.tif 000008
【図７】
2015181009.tif 000009
【図８】
2015181009.tif 000010
【図９】
2015181009.tif 000011
【図１０Ａ】
2015181009.tif 000012
【図１０Ｂ】
2015181009.tif 000013
【図１０Ｃ】
2015181009.tif 000014
【図１０Ｄ】
2015181009.tif 000015
【図１０Ｅ】
2015181009.tif 000016
【図１１】
2015181009.tif 000017
【図１２】
2015181009.tif 000018
【図１３】
2015181009.tif 000019
【図１４】
2015181009.tif 000020
【図１５】
2015181009.tif 000021
【手続補正書】
【提出日】平成27年4月21日(2015.4.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力手段と、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成手段と、
前記第１生成手段が生成した前記第２言語の前記データベース構成ファイルからデータベースを作成する作成手段と、
前記作成されたデータベースに蓄積するデータを、情報処理装置に接続されるデバイスから収集するためのデバイスインタフェースと、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述され、アプリケーションから当該情報処理装置への所定のプロトコルによるデータ要求に応答して、前記データベースに蓄積されたデータを検索して所望のデータを前記アプリケーションに返信するアプリケーションインタフェースを生成する第２生成手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記デバイスはセンサデバイスである、
請求項１に記載の情報処理装置。
【請求項３】
前記デバイスから収集されるデータは、前記データモデルに従うデータである、
請求項１または２に記載の情報処理装置。
【請求項４】
データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力ステップと、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成ステップと、
前記第１生成ステップで生成した前記第２言語の前記データベース構成ファイルからデータベースを作成する作成ステップと、
前記作成されたデータベースに蓄積するデータを、当該情報処理装置に接続されるデバイスから収集するためのデバイスインタフェースを介して収集する収集ステップと、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述され、アプリケーションから当該情報処理装置への所定のプロトコルによるデータ要求に応答して、前記データベースに蓄積されたデータを検索して所望のデータを前記アプリケーションに返信するアプリケーションインタフェースを生成する第２生成ステップと、
を含むことを特徴とする情報処理装置の制御方法。
【請求項５】
データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力ステップと、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成ステップと、
前記第１生成ステップで生成された前記第２言語の前記データベース構成ファイルからデータベースを作成する作成ステップと、
前記作成されたデータベースに蓄積するデータを、当該情報処理装置に接続されるデバイスから収集するためのデバイスインタフェースを介して収集する収集ステップと、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述され、アプリケーションから当該情報処理装置への所定のプロトコルによるデータ要求に応答して、前記データベースに蓄積されたデータを検索して所望のデータを前記アプリケーションに返信するアプリケーションインタフェースを生成する第２生成ステップと、
をコンピュータに実行させることを特徴とする制御プログラム。
【請求項６】
情報処理装置と、
前記情報処理装置に対し、デバイスインタフェースを介して接続されたデバイスと、
前記情報処理装置に対し、アプリケーションインタフェースを介して接続されたアプリケーションと、
を含む情報処理システムであって、
前記情報処理装置は、
前記アプリケーションに対応して、データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力手段と、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成手段と、
前記第１生成手段が生成した前記第２言語の前記データベース構成ファイルからデータベースを作成する作成手段と、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成手段と、
前記データベースに蓄積するデータを前記デバイスから前記デバイスインタフェースを介して収集するデータ収集手段と、
前記アプリケーションからの所定のプロトコルによるデータ要求に応答して、前記データベースに蓄積されたデータを検索し、前記アプリケーションインタフェースを介して所望のデータを前記アプリケーションに提供するデータ提供手段と、
を備えることを特徴とする情報処理システム。
【請求項７】
デバイスインタフェースを介してデバイスからデータを収集し、アプリケーションインタフェースを介してアプリケーションからの要求に応答してデータを提供するデータ管理方法であって、
前記アプリケーションに対応して、データモデル記述用の第１言語でデータモデルを表わしたデータモデルファイルを入力するファイル入力ステップと、
前記データモデルファイルから、データベース記述用の第２言語で記述されたデータベース構成ファイルを生成する第１生成ステップと、
前記第１生成ステップで生成された前記第２言語の前記データベース構成ファイルからデータベースを作成する作成ステップと、
前記データモデルファイルから、アプリケーションインタフェース記述用の第３言語で記述されたアプリケーションインタフェースを生成する第２生成ステップと、
前記データベースに蓄積するデータを前記デバイスから前記デバイスインタフェースを介して収集するデータ収集ステップと、
前記アプリケーションからの所定のプロトコルによるデータ要求に応答して、前記データベースに蓄積されたデータを検索し、前記アプリケーションインタフェースを介して所望のデータを前記アプリケーションに提供するデータ提供ステップと、
を含むことを特徴とするデータ管理方法。