JP2005258930A - データ生成装置、データ生成システム及びデータ生成方法 - Google Patents

データ生成装置、データ生成システム及びデータ生成方法 Download PDF

Info

Publication number
JP2005258930A
JP2005258930A JP2004071244A JP2004071244A JP2005258930A JP 2005258930 A JP2005258930 A JP 2005258930A JP 2004071244 A JP2004071244 A JP 2004071244A JP 2004071244 A JP2004071244 A JP 2004071244A JP 2005258930 A JP2005258930 A JP 2005258930A
Authority
JP
Japan
Prior art keywords
conversion
data
service
value
unit
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
JP2004071244A
Other languages
English (en)
Inventor
Takashi Yoshikawa
貴 吉川
Masaru Ota
賢 太田
Tomohiro Nakagawa
智尋 中川
Hiroshi Inamura
浩 稲村
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.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2004071244A priority Critical patent/JP2005258930A/ja
Publication of JP2005258930A publication Critical patent/JP2005258930A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】データを変換し、目標とする表現形式のデータを容易に得る。
【解決手段】ネットワーク70上で、翻訳サーバ40a,40bと、通貨変換サーバ40c,40dと、単位変換サーバ40eが言語翻訳、通貨変換、単位変換等の変換サービスを提供する。データ生成装置20は、端末装置10から、配信サーバ30bによって提供されるサービスから、配信サーバ30aに提供されるサービスへ切り替える切替要求を取得する。データ生成装置20は、変換サービスを用いて、サービスの切替に必要な変換データを生成する。
【選択図】図1

Description

本発明は、変換装置を用いてデータを生成するデータ生成装置、データ生成システム及びデータ生成方法に関する。
近年、インターネット上で、多くのサーバにより多くのサービスが提供されているが、類似するサービスを提供するサーバが複数存在することが多い。又、サーバに入力すべき入力データや、サーバが出力する出力データの表現形式は、サーバやサービスに固有である。
そのため、ネットワーク上に分散されたサービスを協調して動作させるために、適切な入出力データ変換パスを生成し、サービスを提供するNinja Pathsの研究が、カリフォルニア大学のNinjaプロジェクトとして行われている。Ninja Pathsでは、入出力データ変換モジュールを動的に発見して接続するため、入出力データの相違を吸収できる利点がある(例えば、非特許文献1参照)。又、データを変換する変換サーバを複数接続して目的の種別のデータを得ることや(例えば、特許文献1参照)、変換装置を新たに作成し、データを変換することも行われている(例えば、特許文献2参照)。
更に、入出力インタフェースの相違を吸収するためのインタフェース記述言語を用いる方法が、Ja−Netプロジェクトにおいて提案されている。この方法では、インタフェース記述言語を用いて記述されたCondition Setと呼ばれる要求条件をブロードキャストし、端末装置が利用可能なインタフェースと要求条件とが合致するサービスを利用する(例えば、非特許文献2参照)。
S.Chandrasekaran, S.Madden, M.Ionsecu, "Ninja Paths:An Architecture for Composing Service over Wide Area Networks",CS262 class project writeup, UC Berkeley,2000 須田建也、板生知子、中村哲也、松尾真人,「サービス創発のための適応型ネットワークアーキテクチャ」,信学論(B),Vol.J84-B,No.3,pp.310-320, Mar.2001 特開平9−114638号公報 特開2002−49636号公報
しかしながら従来のサーバでは、複数のサーバが類似するサービスを提供する場合であっても、サーバやサービス毎に、データの表現形式が異なる複数のクライアントアプリケーションを用意する必要があった。そのため、利便性が損なわれていた。更に、端末装置が複数のサービスを切り替えて利用したり、複数のサービスを組み合わせて利用したりする場合に、利用するクライアントアプリケーションが変更され、データの表現形式が変更されてしまうため、そのような利用形態を実現することが困難であった。
一方、データ変換を行うNinja Pathsでは、全てのサーバが全てのサービスについて、Ninja Pathsが提供する基底クラスを継承し、実装する必要があり、制約が大きかった。即ち、全てのサーバに特別な機能を追加する必要があり、サービス自体に手を加える必要があった。このようなNinja Pathsを用いる場合や、変換装置を新規に作成する場合には、コストがかかり、システム構築の負担が大きかった。更に、インタフェース記述言語を用いる方法では、入出力データの変換は行われないため、要求条件に合致せず、端末装置とサービスで入出力データの表現形式が相違する場合には利用できなかった。以上のように、データの表現形式が異なることによる様々な課題があり、それを解決するためのデータ変換を容易に行う技術も提供されていなかった。
そこで、本発明は、データを変換し、目標とする表現形式のデータを容易に得ることを目的とする。
本発明に係るデータ生成装置は、元データを複数の元データ要素の値に分割する分割部と、元データ要素の値を、目標とする目標データの目標データ要素の表現形式で示される値に変換するために必要な変換装置を、元データ要素毎に決定する決定部と、決定部が決定した変換装置に元データ要素の値を提供し、変換装置により表現形式が変換された変換データ要素の値を取得する変換実行部と、変換実行部が取得した変換データ要素の値を結合し、変換データを生成する結合部とを備えることを特徴とする。
元データ要素の値、目標データ要素の値、変換データ要素の値はそれぞれ、元データに含まれる要素に設定されている値、目標データに含まれる要素に設定されている値、変換データに含まれる要素に設定されている値である。このようなデータ生成装置によれば、元データを複数の元データ要素の値に分割し、元データ要素毎に元データ要素の表現形式の値を、目標データ要素の表現形式の値に変換するために必要な変換装置を決定できる。そして、データ生成装置は、決定した変換装置に元データ要素の値を提供してデータ変換を実行させ、表現形式が変換された変換データ要素の値を取得し、変換データを生成することができる。
そのため、データ生成装置は、元データ要素毎の変換に適した変換装置にデータの表現形式を変換させ、その結果である変換データ要素の値を結合することにより、容易に変換データを得ることができる。よって、データ生成装置によれば、データの値を一括して目標データの値に変換する変換装置を新規に作成したり、データの入出力を行う全てのサーバに特別な機能を追加したりすることなく、元データのデータを変換し、目標とする表現形式のデータを容易に得ることができる。
決定部は、元データ要素のオントロジー情報と目標データ要素のオントロジー情報に基づいて、元データ要素と目標データ要素との組み合わせを生成し、その組み合わせに基づいて変換装置を決定することが好ましい。これによれば、データ生成装置は、容易に適切な変換装置を決定できる。
更に、データ生成装置は、目標データに必要な変換データ要素以外の不足要素の値を取得する不足要素取得部を備え、結合部は、変換データ要素の値と不足要素取得部が取得した不足要素の値とを結合し、変換データを生成することが好ましい。これによれば、目標データが、元データ要素の値を変換して得られる変換データ要素の値以外の不足要素を含む場合であっても、データ生成装置は、それを補って適切な変換データを生成することができる。
又、決定部は、結合部が生成した変換データと目標データの条件とを比較し、その比較結果に応じて変換装置を変更することが好ましい。これによれば、データ生成装置は、適切なデータ変換が行われたかを判断でき、不適切な場合には異なるデータ変換を実行させることができる。そのため、データ生成装置は、より正確に変換データを生成できる。
本発明に係るデータ生成システムは、元データを複数の元データ要素の値に分割する分割部と、元データ要素の値を、目標とする目標データの目標データ要素の表現形式で示される値に変換するために必要な変換装置を、元データ要素毎に決定する決定部と、決定部が決定した変換装置に元データ要素の値を提供し、変換装置により表現形式が変換された変換データ要素の値を取得する変換実行部と、変換実行部が取得した変換データ要素の値を結合し、変換データを生成する結合部とを備えるデータ生成装置と、データ生成装置から元データ要素の値を取得して表現形式を変換する変換装置とを備えることを特徴とする。
本発明に係るデータ生成方法は、元データを複数の元データ要素の値に分割し、元データ要素の値を、目標とする目標データの目標データ要素の表現形式で示される値に変換するために必要な変換装置を、元データ要素毎に決定し、決定した変換装置に元データ要素の値を提供し、変換装置により表現形式が変換された変換データ要素の値を取得し、取得した変換データ要素の値を結合し、変換データを生成することを特徴とする。
以上説明したように、本発明によれば、データを変換し、目標とする表現形式のデータを容易に得ることができる。
(データ生成システム)
図1に示すように、データ生成システム1は、端末装置10と、データ生成装置20と、配信サーバ30a,30bと、翻訳サーバ40a,40bと、通貨変換サーバ40c,40dと、単位変換サーバ40eと、サービス情報データベース50と、変換パスデータベース60と、ネットワーク70とを備える。
端末装置10と、データ生成装置20と、配信サーバ30a,30bと、翻訳サーバ40a,40bと、通貨変換サーバ40c,40dと、単位変換サーバ40eと、サービス情報データベース50と、変換パスデータベース60は、ネットワーク70を介して接続し、ネットワーク70を介してデータをやりとりする。ネットワーク70は、例えば、インターネット等を用いることができる。
配信サーバ30a,30b、翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40eは、端末装置10及びデータ生成装置20にサービスを提供する。配信サーバ30a,30b、翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40eは、例えば、コンテンツプロバイダのようなサービス提供者によって、ウェブサービスとして設けられる。
配信サーバ30a,30bはコンテンツを提供する配信サービスを提供する。配信サーバ30a,30bは、例えば、情報検索を行って、その検索結果をコンテンツとして提供する。翻訳サーバ40a,40bは、言語を変換する翻訳サービスを提供する。通貨変換サーバ40c,40dは、通貨単位を変換する通貨変換サービスを提供する。単位変換サーバ40eは、例えば、温度、距離等の単位を変換する単位変換サービスを提供する。このように、翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40eは、言語、単位等のデータの表現形式を変換する変換装置として機能し、データ変換を行う変換サービスを提供する。
配信サーバ30a,30b、翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40eは、サービスに関する情報(以下「サービスメタデータ」という)を、サービス情報データベース50に格納して、登録する。又、配信サーバ30a,30b、翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40eは、データ生成装置20から提供される、変換装置の情報である生成条件、及び、変換パスを格納する。
サービス情報データベース50は、サービスに関するサービスメタデータを記憶する。図2に示すように、サービス情報データベース50は、サービスメタデータとして、サービスID、URL、サービス内容、入力データ情報、出力データ情報を記憶する。配信サーバ30a,30b、翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40eは、サービスIDに対応付けてサービスメタデータを、サービス情報データベース50に格納する。
サービスIDは、サービスを識別する識別データである。配信サーバ30a、配信サーバ30b、翻訳サーバ40a、翻訳サーバ40b、通貨変換サーバ40c、通貨変換サーバ40d、単位変換サーバ40eが提供するサービスにはそれぞれ、サービスIDとして「1」、「2」、「3」、「4」、「5」、「6」、「7」が付与されている。図2のサービス内容に示すように、配信サーバ30a,30bは、それぞれ「食事に関するコンテンツを配信するレストランガイド」、「Restaurant Guide」という内容で示されるサービスを提供する。具体的には、配信サーバ30a,30bは、端末装置10から指定された条件に基づいて検索を行い、食事に関するコンテンツを提供する。翻訳サーバ40aは、「和文英訳」のサービス、翻訳サーバ40bは、「英文和訳」のサービスを提供する。通貨変換サーバ40cは、「米ドル−日本円通貨変換」で示されるサービス、通貨変換サーバ40dは、「シンガポールドル−米ドル通貨変換」で示されるサービスを提供する。単位変換サーバ40eは、温度、距離等の「単位変換」を行うサービスを提供する。
入力データ情報は、配信サーバ30a,30b、翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40e等のサービスを行うサーバが入力を受ける入力データに関する情報である。出力データ情報は、サービスを行うサーバが出力する出力データに関する情報である。入力データ情報や出力データ情報には、入力データや出力データの条件と、入力データや出力データのオントロジー情報等が含まれる。入力データや出力データの条件には、入力データ出力データに含まれる要素の数及び順番、要素の内容、要素の表現形式等がある。
要素の順番は、要素の入力や出力の順番である。サービス情報データベース50では、入力の順番が早い順に要素の内容が格納されている。例えば、図2に示すように、サービスID=1のサービスでは、入力データには3つの要素があり、各要素の内容は「地域」、「予算」、「タイプ」であり、要素の入力順番は、「地域」、「予算」、「タイプ」の順である。
要素の表現形式には、言語、単位、集約要素であるか単一要素であるか等がある。集約要素とは、複数の要素を一つの要素に集約して扱う要素である。集約要素を構成する各要素を「構成要素」という。「集約要素」には例えばウェブサービスで扱われる「クラス」がある。例えば、図2に示すように、サービスID=1のサービスの入力データに含まれる要素「地域」の表現形式は言語が「日本語」、要素「予算」の表現形式は単位が「円」である。又、サービスID=1のサービスの出力データに含まれる要素「所在地」の表現形式は、集約要素であり、集約要素に含まれる構成要素が「住所」、「電話」である。更に、サービスID=7のサービスの入力データに含まれる要素「温度」の表現形式の単位は「摂氏」、出力データに含まれる要素「温度」の表現形式の単位は「華氏」である。
オントロジー情報とは、要素同士の意味の関係性に関する情報をいう。オントロジーは、例えば、文献「溝口理一郎著、“オントロジー工学の試み”、人工知能学会 全国大会論文集、1998年」等において詳しく示されている。例えば、図2に示すように、サービスID=1のサービスの入力データに含まれる要素「予算」のオントロジー情報は、「Budgetに等しい」となっており、要素「予算」と要素「Budgest」の意味は等しいことを示している。又、サービスID=1のサービスの出力データに含まれる要素「店名」のオントロジー情報は、「Nameに含まれる」となっており、要素「店名」の意味の上位概念は「Name」であることを示している。
入力データや出力データの条件は、例えば、WSDL(Web Service Description Language)等の記述言語により記述できる。又、オントロジー情報等は、例えば、OWL(Web Ontology Language)等のオントロジー記述言語により記述できる。
以上のようにして、配信サーバ30a,30b、翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40eが、サービスメタデータをサービス情報データベース50に格納して登録し、サービス情報データベース50が、サービスメタデータを記憶する。
変換パスデータベース60は、変換パスを記憶する。変換パスとは、元データ要素の値を目標データ要素の表現形式で示される値に変換するために必要な変換装置の接続に関する情報である。そのため、変換パスは、どの変換装置をどのような順番で接続するかを示す。変換パスデータベース60は、図3に示すように、切替条件と、生成条件と、変換パスとを記憶する。
端末装置10は、例えば、移動等の何らかの理由により、現在利用しているサービスから類似する他のサービスに、利用するサービスを切り替える場合がある。現在利用している切替元のサービスを「切替元サービス」、新たに利用する切替先のサービスを「切替先サービス」という。切替条件は、切替元サービスと切替先サービスとの対応である。具体的には、変換パスデータベース60は、切替条件「切替元サービスのサービスID→切替先サービスのサービスID」を記憶する。図3に示す「サービスID=2→サービスID=1」は、切替元サービスが、配信サーバ30bが提供するサービスID=2のサービスであり、切替先サービスが、配信サーバ30aが提供するサービスID=1のサービスであることを示している。
生成条件は、変換ペアと不足要素を含む。変換パスデータベース60は、変換ペアと不足要素を、入力データ、出力データ毎に記憶する。変換ペアは、元データ要素と目標データ要素との組み合わせである。即ち、元データ要素は変換前のデータの要素であり、目標データ要素は、目標とする表現形式で表された目標データの要素である。例えば、切替元サービスにおける入力データの要素が元データ要素となり、切替先サービスにおける入力データの要素が目標データ要素となる。
具体的には、変換パスデータベース60は、変換ペア「元データ要素→目標データ要素」を記憶する。例えば、図3に示すように、サービスID=2のサービスからサービスID=1のサービスに切り替える場合、入力データの変換ペアには「Budget→予算」、「Area→地域」がある。又、出力データの変換ペアには「店名→Name」、「情報→Information」、「住所→Address」がある。尚、元データに存在し、目標データに存在しない要素(以下「過剰要素」という)が存在する場合には、変換パスデータベース60は、変換ペアとして「電話→削除」を記憶する。「電話→削除」は、過剰要素を目標データから削除することを示す。
不足要素は、目標データに必要な変換データ要素以外の要素である。変換データ要素は、元データ要素を変換して得られる要素である。例えば、図2に示すように、サービスID=1のサービスでは、入力データの要素として、「地域」、「予算」「タイプ」が必要である。これに対しサービスID=2のサービスにおける入力データの要素は、「Budget」、「Area」だけであり、「タイプ」に相当する要素は必要ない。そのため、目標データであるサービスID=1における入力データに必要な要素のうち、元データ要素であるサービスID=2における入力データの要素を変換して得られる変換データ要素にない「タイプ」が不足要素となる。又、サービスID=2のサービスでは出力データの要素として「Name」、「Information」、「Address」、「Open Hours」を出力する。これに対し、サービスID=1のサービスの出力データは「店名」、「情報」、「住所」、「電話」だけであり、「Open Hours」に対応する要素は出力しない。そのため、目標データであるサービスID=2の出力データの要素のうち、元データ要素であるサービスID=1の出力データの要素を変換して得られる変換データ要素にない「Open Hours」が不足要素となる。
変換パスは、変換装置として機能する翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40eのサービスIDを用いて特定する。変換パスは、サービスを接続する順番を、サービスIDで記述することにより表すことができる。例えば、図3に示すように、サービスID=2のサービスからサービスID=1のサービスに切り替える場合、変換ペア「Budget→予算」の変換パスは「サービスID=6→サービスID=5」となり、サービスID=6のシンガポールドルと米ドルの通貨変換サービスを提供する通貨変換サーバ40dにより変換を行い、次に、サービスID=5の米ドルと日本円の通貨変換サービスを提供する通貨変換サーバ40cにより変換を行うことを示す。
端末装置10は、配信サーバ30a,30b、翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40e等が提供するサービスを、ネットワーク70を介して受ける。端末装置10は、例えば、サービス情報データベース50を参照することによりサービスメタデータを取得できる。端末装置10は、取得したサービスメタデータを参照してサービスを選択し、サービスの提供を要求する提供要求を送信する。提供要求には、サービスIDやURL、サービス内容等、サービスを特定できる情報が含まれる。
例えば、端末装置10が、最初に、サーバ30bが提供するサービスID=2のサービスの提供要求を送信した場合、サーバ30bは、サービスID=2のサービスのためのクライアントアプリケーションを端末装置10に提供する。端末装置10は、取得したサービスID=2のサービスの提供を受けるためのクライアントアプリケーションを動作させてサービスを利用する。
その後、端末装置10は、移動等の何らかの理由により、提供を受けているサービスを他のサービスに切り替えたい場合、データ生成装置20に切替要求を送信する。切替要求には、切替元サービスのサービスIDと切替先サービスのサービスID、及び、切替元サービスの表現形式で表された入力データが含まれる。端末装置10は、切替先サービスにサービスが切り替わった後も、切替元サービスのクライアントアプリケーションを用いてサービスを利用する。例えば、端末装置10は、サービスID=2のサービスからサービスID=1のサービスに切り替わった場合であっても、サービスID=2のサービスのためのクライアントアプリケーションを用いて、サービスID=1のサービスを受ける。端末装置10は、例えば、携帯電話、携帯情報端末、ノートパソコン等を用いることができる。
データ生成装置20は、変換装置を用いてデータを生成する。データ生成装置20は、例えばインターネットサービスプロバイダや携帯電話キャリアによって提供される。データ生成装置20は、図4に示すように、分割部21と、決定部22と、変換実行部23と、不足要素取得部24と、結合部25とを備える。
決定部22は、元データ要素の値を目標データ要素の表現形式で示される値に変換するために必要な変換装置を、元データ要素毎に決定する。決定部22は、分割部21から切替元サービスと切替先サービスのサービスIDを取得する。決定部22は、取得した切替元サービスと切替先サービスのサービスIDに基づいて、サービス情報データベース50から切替元サービスと切替先サービスのサービスメタデータを取得する。決定部22は、サービスメタデータに基づいて入力データ、出力データを複数の要素に分割する。本実施形態では、決定部22は、入力データ情報や出力データ情報を、その内容毎に分割する。決定部22は、切替元サービスの入力データ情報、切替先サービスの出力データ情報を分割した要素を元データ要素とし、切替先サービスの入力データ情報、切替元サービスの出力データ情報を分割した要素を目標データ要素とする。
例えば、切替元サービスがサービスID=2のサービスであり、切替先サービスがサービスID=1のサービスの場合、決定部22は、元データ要素「Budget」、「Area」、「店名」、「情報」、「住所」、「電話」に分割し、目標データ要素「地域」、「予算」、「タイプ」、「Name」、「Address」、「Infomation」、「Open Hours」に分割する。
そして、決定部22は、取得したサービスメタデータに含まれる、元データ要素のオントロジー情報と目標データ要素のオントロジー情報に基づいて変換ペアを生成する。具体的には、決定部22は、オントロジー情報に基づいた元データ要素と目標データ要素のマッチングを行って、要素同士の意味の関係性が「等しい」、「含む」、若しくは「含まれる」関係にある元データ要素と目標データ要素とを対応付けて、変換ペアを生成する。
例えば、決定部22は、元データ要素「Budget」のオントロジー情報「予算に等しい」に基づいて、「Budget」と「予算」とを対応付けて、変換ペア「Budget→予算」を生成する。又、決定部22は、元データ要素「店名」のオントロジー情報は、「Nameに含まれる」に基づいて、「店名」と「Name」とを対応付けて、変換ペア「店名→Name」を生成する。又、決定部22は、オントロジーが記載されていない要素であっても、内容及び表現形式のいずれか、又は、内容及び表現形式の両方が等しい要素を対応づけて変換ペアを作成することができる。例えば、サービスID=5のサービスの入力要素とサービスID=6のサービスの出力要素は、内容が「金額」であり、表現形式が「USDollar」であって共通する。従って、オントロジーが記載されていなくても、決定部22はこれらを対応づけることができる。
又、決定部22は変換ペアを生成できなかった目標データ要素を不足要素とする。例えば、目標データ要素にある「タイプ」に対応する元データ要素がないため、「タイプ」は不足要素となる。更に、決定部22は、過剰要素が存在する場合には、過剰要素を目標データから削除するための変換ペアを生成する。例えば、元データ要素にある「電話」に対応する要素は、目標データには存在しないため、変換ペア「電話→削除」を生成する。この不足要素及び過剰要素は、例えば切替元サービスには入力する必要がなかったデータ要素に対応するデータ要素を、切替先サービスに入力する必要がある場合や、逆に切替先サービスには入力する必要がないデータ要素に対応するデータ要素を、切替元サービスには入力する必要があった場合のように、入力データや出力データの要素の数が異なる場合に生じる。
次に、決定部22は、生成した変換ペアに基づいて、変換装置を決定する。具体的には、決定部22は、元データ要素と目標データ要素に基づいて、サービス情報データベース50を参照し、元データ要素を入力できるサービス(以下「開始ノード側サービス」という)と、目標データ要素を出力できるサービス(以下「終了ノード側サービス」という)を検索する。そして、決定部22は検索した開始ノード側サービスと終了ノード側サービスに同一サービスがあれば、そのサービスを提供するサーバを変換装置に決定する。例えば、「Area→地域」の変換ペアについては、元データ要素である「Area」の表現形式「English」と同じ表現形式の要素を入力できるサービスが開始ノード側サービスである。決定部22は、サービス情報データベース50を参照して、開始ノード側サービスとしてサービスID=4のサービスを検索する。又、目標データ要素である「地域」の表現形式「日本語」と同じ表現形式の要素を出力するサービスが終了ノード側サービスである。決定部22は、サービス情報データベース50を参照して、終了ノード側サービスとしてサービスID=4のサービスを検索する。そして、決定部22は検索した開始ノード側サービスと終了ノード側サービスが同一であるため、サービスID=4を変換パスに決定し、このサービスを提供する翻訳サーバ40bを変換装置に決定する。
一方、決定部22は、開始ノード側サービスと終了ノード側サービスに同一サービスがなければ、開始ノード側サービスが出力する要素と終了ノード側サービスに入力できる要素の表現形式が同一のサービスがあるか検索する。そして、決定部22は、その条件を満たす「開始ノード側サービス→終了ノード側サービス」に変換パスを設定し、これらのサービスを提供するサーバを変換装置に決定する。例えば、「Budget→予算」の変換ペアについては、元データ要素である「Budget」の表現形式「SDollar」と同じ表現形式の要素を入力できるサービスが開始ノード側サービスである。決定部22は、サービス情報データベース50を参照して、開始ノード側サービスとしてサービスID=6のサービスを検索する。又、目標データ要素である「予算」の表現形式「円」と同じ表現形式の要素を出力するサービスが終了ノード側サービスである。決定部22は、サービス情報データベース50を参照して、終了ノード側サービスとしてサービスID=5のサービスを検索する。そして、決定部22は検索した開始ノード側サービスと終了ノード側サービスは同一でないことを判断する。決定部22は、開始ノード側サービスであるサービスID=6のサービスが出力する要素と、終了ノード側サービスであるサービスID=5のサービスに入力できる要素の表現形式が共に「USDollar」で同一であることを判断する。従って「サービスID=6→サービスID=5」を変換パスに決定し、これらのサービスを提供できる通貨変換サーバ40d、40cを変換装置に決定する。このように変換パスは、変換サービスを多段に接続して生成することも可能である。
そして、決定部22は決定した変換装置の情報として、生成条件に対応づけられた変換パスを、切替条件ごとに変換パスデータベース60に格納する。又、決定部22は、分割部21にも、変換装置の情報として生成条件に対応づけられた変換パスを入力する。更に決定部22は、切替元サービス及び切替先サービスを提供するサーバに対しても、変換装置の情報として、生成条件に対応づけられた決定した変換パスを提供する。
更に、決定部22は、結合部25が生成した変換データと目標データの条件とを比較し、比較結果に応じて変換装置を変更する。具体的には決定部22は、結合部25が生成した変換データを取得する。そして、決定部22は、サービス情報データベース50を参照して、目標データの条件を取得する。決定部22は、取得した変換データと目標データの条件を比較し、適切なデータ変換が行われたかを判断する。例えば決定部22は、結合部25から変換データとして「銀座、5200、Italian」を取得する。そして決定部22は、目標データの条件として、サービスID=1のサービスに係る入力データ情報の条件を取得する。決定部22は、これらを比較して変換データが3つのデータ要素の値を備えるかを判断する。又、図2には示されていないが、例えば「予算」の内容に対する表現形式が、正の整数値である旨を示していれば、決定部22は変換データの2つめのデータ要素の値である「5200」が正の整数値であるかを判断する。決定部22は、比較結果として、適切なデータ変換が行われたか否かを結合部25に入力する。そして、決定部22は、適切なデータ変換が行われなかったと判断した場合は、変換装置を変更する。決定部22は、変換装置を決定したのと同様に、変換装置を変更する。ただし、決定部22は、例えば元データ要素の値を目標データ要素の表現形式で示される値に変換できるサービスに係るサービスメタデータが複数サービス情報データベース50に登録されている場合は、以前変換パスに決定したサービスと異なるサービスを変換パスに決定し、そのサービスを提供するサーバを変換装置に決定する。
分割部21は、端末装置10から切替要求を受信する。分割部21は、切替要求に含まれる切替元サービスのサービスIDと切替先サービスのサービスIDに基づいて、変換パスデータベース60を検索し、「切替元サービス→切替先サービス」を切替条件とする変換装置の情報が存在するか否かを判断する。変換装置の情報とは生成条件に対応づけられた変換パスである。決定部22は、目的とする変換装置の情報が存在する場合には、その変換装置の情報を取得する。一方、分割部21は、変換パスデータベース60に、切替要求と一致する切替条件が存在しなければ、決定部22に切替元サービスのサービスIDと切替先サービスのサービスIDを入力し、決定部22から変換装置の情報を取得する。
分割部21は、元データを複数の元データ要素の値に分割する。分割部21は、端末装置10からの切替要求に含まれる切替元サービスの表現形式で表された入力データを取得する。又、分割部21は、切替先サービスを提供するサーバから出力データを取得する。これらのデータは、表現形式を変換される元データとなる。分割部21は、取得した元データを複数の元データ要素の値に分割する。分割部21は、サービス情報データベース50を参照し、各サービスのサービスメタデータを取得する。分割部21は、取得したサービスメタデータに含まれる要素の内容に基づいて、入力データや出力データを分割する。例えば、分割部21は、切替要求に含まれる、切替元サービスの表現形式で表された入力データ「80、Ginza」を取得する。そして、分割部21は、要素の内容である「Budget」、「Area」に基づいて、「80」、「Ginza」に分割する。そして、分割部21は、変換パスデータベース60又は決定部22からから取得した変換装置の情報と、分割して得た元データ要素の値と、取得したサービスメタデータとを、変換実行部23に入力する。更に、分割部21は、決定部22から取得した変換装置の情報に含まれる生成条件に不足要素があれば、これを不足要素取得部24に入力する。
変換実行部23は、決定部22が決定した変換装置に元データ要素の値を提供し、変換装置により表現形式が変換された変換データ要素の値を取得する。具体的には、変換実行部23は、分割部21から取得した元データ要素の値を、分割部21から取得した変換装置の情報である、変換パスに示されるサービスを提供するサーバに提供する。そして、変換実行部23は、サーバにより表現形式が変換された変換データ要素の値を取得する。例えば、変換実行部23は、分割部21から元データ要素の値として「80」、「Ginza」を取得する。又、変換実行部23は、図3に示されるような「サービスID=2→サービスID=1」の切替条件に対応する変換装置の情報を取得する。変換実行部23は、取得した変換装置の情報から、「Budget→予算」の変換ペアに対応する変換パスを取得する。そして変換実行部23は、サービスID=6のサービスを提供する通貨変換サービス40bに「80」を提供し、「シンガポールドル−米ドル通貨変換」のサービスにより変換された値である「50」を取得する。続いて変換実行部23は、サービスID=5のサービスを提供する通貨変換サービス40aに「50」を提供し、「米ドル−日本円通貨変換」のサービスにより変換された値である「5200」を取得する。変換実行部23は同様にして、「Area→地域」の変換ペアに対応する変換パスを参照し、サービスID=4のサービスを提供する翻訳サーバ40bに「Ginza」を提供する。そして、変換実行部23は、翻訳サーバ40bから「銀座」を取得する。このように変換実行部23は、元データ要素の値を、要素の表現形式が異なる変換データ要素の値に変換する。変換実行部23は、変換データ要素の値と、分割部21から取得したサービスメタデータを結合部25に入力する。
不足要素取得部24は、目標データに必要な変換データ要素以外の不足要素の値を取得する。具体的には不足要素取得部24は、分割部21から、目標データに必要な変換データ要素以外の不足要素を取得する。そして、不足要素取得部24は、取得した不足要素の値を端末装置10又は切替先サービスを提供するサーバに問い合わせて取得する。例えば不足要素取得部24が、分割部21から「タイプ」を不足要素として取得した場合は、不足要素取得部24は、「タイプ」の値を端末装置10に問い合わせ、例えば「Italian」を取得する。又、例えば不足要素取得部24が、出力データの不足要素である「Open Hours」を分割部21から取得する。不足要素取得部24は、切替先サービスを提供する配信サーバ30aに対して「Open Hours」の値を問い合わせ、例えば「11:00−23:00」を得る。尚、端末装置10や配信サーバ30aが不足要素を提供できない場合は、不足要素取得部24は、不足要素の値を空白に設定してもよい。そして、不足要素取得部24は、取得した不足要素の値を結合部25に入力する。
結合部25は、変換データ要素の値を結合し、変換データを生成する。特に、結合部25は、変換データ要素の値と不足要素取得部24が取得した不足要素の値とを結合し、変換データを生成する。具体的には、結合部25は、変換実行部23から変換データ要素の値と、サービスメタデータを取得する。又結合部25は、不足要素取得部24から不足要素の値を取得する。そして、結合部25は、変換データ要素の値と不足要素の値を、サービスメタデータに含まれる入力データ情報又は出力データ情報を参照して結合し、変換データを生成する。例えば、結合部25は変換実行部23から「予算」、「地域」の値として「5200」、「銀座」を取得し、不足要素取得部24から「タイプ」の値として「Italian」を取得する。サービスID=1の入力データ情報では、要素の内容は「地域」、「予算」、「タイプ」の順番であり、結合部25が変換要素の値及び不足要素の値を取得したのとは要素の順番が異なる。結合部25は、目標データである、サービスID=1のサービスに係る入力データの要素の内容の順番通り、「銀座、5200、Italian」のように結合する。
結合部25は、変換データを決定部22に入力する。そして、結合部25は、決定部22から変換データと目標データの条件の比較結果を取得する。比較結果が、適切なデータ変換が行われたことを示す場合は、結合部25は、変換データを、切替先サービスを提供するサーバ若しくは端末装置10に提供する。一方、結合部25は、比較結果が、適切なデータ変換が行われなかったことを示す場合は、生成した変換データを破棄する。そして、再度、変換実行部23から変換データ要素の値を取得し、不足要素取得部24から不足要素の値を取得して変換データを生成する。
このようなデータ生成装置20を用いれば、例えば次のように、端末装置10のユーザが移動しながら、同一のクライアントアプリケーションを用いて地域性の高いサービスの提供を受けようとする場合であっても、ユーザの移動に応じて、柔軟に提供を受けるサービスを切り替えることができる。図5に概念的に示されるように、ネットワーク70の一つであるインターネット上で種々のサービスが提供されている。サービス群80aは、シンガポールにおける旅行者向けサービスを複数含む。このうち、「Restaurant Guide」、「Bus Information」、「Singapore Map」、「Traditional City」はコンテンツを提供する配信サービスであり、「Translator」はシンガポール内の端末装置から利用できる変換サービスである。これらのサービスは、例えばシンガポール観光局によって管理される。変換サービスとは翻訳、通貨変換、単位変換等のサービスをいう。一方サービス群80bは、東京における旅行者向けサービスを複数含む。このうち、「レストランガイド」、「電車の路線情報」、「東京の地図」、「店舗情報」はコンテンツを提供する配信サービスであり、「変換サービス」は、東京内の端末装置から利用できる変換サービスである。これらのサービスは、例えば東京の観光局によって管理される。
旅行者Aはシンガポールにおいて、端末装置として、例えば携帯電話を用いてサービスの提供を受けていた者を示す。旅行者Aの携帯電話上では、シンガポールにおける配信サービスの提供を受けるための旅行用クライアントアプリケーションが動作する。このクライアントアプリケーションは、サービス群80aを管理するシンガポール観光局から提供されたものである。従って、クライアントアプリケーションのインターフェースはサービス群80aに含まれる各サービス用にカスタマイズされている。この旅行者Aが東京に移動したものとする。旅行者Aは、シンガポールで提供を受けていた「Restaurant Guide」の代わりに「レストランガイド」を利用したいと考える。ただし、「Restaurant Guide」と「レストランガイド」では入出力データの表現形式が異なるため、携帯電話上のクライアントアプリケーションを用いて、そのまま「レストランガイド」サービスの提供を受けることはできない。しかし、インターネットには、本発明に係るデータ生成装置20、サービス情報データベース50、変換パスデータベース60が接続されている。このため、クライアントアプリケーションが切替要求をデータ生成装置20に送信することにより、必要な表現形式の変換が可能となる。そして旅行者Aは、クライアントアプリケーションを変更せずに、提供を受けるサービスを「Restaurant Guide」から「レストランガイド」に切り替えることが可能となる。即ち、旅行者Aはシンガポールにいたときと同様にサービスを利用できる。これは、東京に居る旅行者Aの友人Bが、旅行者Aからシンガポール観光局によって提供されたクライアントアプリケーションを取得した場合も同様である。
(データ生成方法)
次に、図1に示したデータ生成システム1を用いたデータ生成方法を説明する。まず、図6に、サービスメタデータ登録から変換データが端末装置10に提供されるまでの手順を示す。ここでは、配信サーバ30bが提供するサービスが切替元サービスであり、配信サーバ30aが提供するサービスが切替先サービスである場合について説明する。配信サーバ30a,30b、翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40eはそれぞれサービス情報データベース50に対して、サービスメタデータを格納する(S101,S102,S103)。端末装置10は、データ生成装置20に対して切替要求を送信する(S104)。データ生成装置20は、切替要求に含まれる切替元サービスのサービスIDと切替先サービスのサービスIDに基づいて、変換パスデータベース60を検索し、「切替元サービス→切替先サービス」を切替条件とする変換装置の情報が存在すれば、これを取得する(S105)。
データ生成装置20は、変換装置の情報が存在するか判断し(S106)、存在しなければ、サービスIDに基づいて、サービス情報データベース50から切替元サービスと切替先サービスのサービスメタデータを取得する(S107)。データ生成装置20は、サービスメタデータに含まれる入力データ情報や出力データ情報を複数の要素に分割する(S108)。データ生成装置20は、オントロジー情報に基づいて、元データ要素と目標データ要素の変換ペアを生成する(S109)。データ生成装置20は、生成した変換ペアに基づいて、変換装置を決定する(S110)。データ生成装置20は、決定した変換装置の情報を変換パスデータベース60に格納する(S111)。データ生成装置20は、決定した変換装置の情報を、切替先サービスを提供する配信サーバ30aに対しても提供する(S112)。配信サーバ30aは、提供された変換装置の情報を格納する(S113)。データ生成装置20は、同様に変換装置の情報を切替元サービスを提供する配信サーバ30bに対しても提供し(S114)、配信サーバ30bは、提供された変換装置の情報を格納する(S115)。一方、データ生成装置20が、ステップ(S106)において変換装置の情報が存在すると判断した場合には、ステップ(S107)〜ステップ(S115)は行われない。
そして、データ生成装置20は、サービス情報データベース50から、切替元サービス及び切替先サービスに係るサービスメタデータを取得する(S116)。データ生成装置20は、切替要求に含まれる、切替元サービスの表現形式で表された入力データを元データとして、元データ要素の値に分割する(S117)。データ生成装置20は、決定した変換装置の情報に基づいて、元データ要素の値を、変換サービスを提供する翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40eに提供する(S118)。そして、翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40eは、その応答として変換データ要素の値を提供する(S119)。変換パスが、変換サービスを多段に接続している場合は、ステップ(S118)とステップ(S119)が繰り返される。データ生成装置20は、不足要素を端末装置10に問い合わせて取得する(S120)。データ生成装置20は、変換データ要素の値と不足要素の値を結合して変換データを生成する(S121)。データ生成装置20は、変換データと目標データの条件を比較し、適切なデータ変換が行われたかを判断する(S122)。データ生成装置20は、適切なデータ変換が行われなかったと判断した場合は、再度ステップ(S107)に戻り、変換装置を決定することによって変換装置を変更する。
一方、ステップ(S122)において適切なデータ変換が行われたと判断した場合は、データ生成装置20は変換データを配信サーバ30aに提供する(S123)。そして、配信サーバ30aはコンテンツを提供する(S124)。データ生成装置20は、切替先サービスの出力データであるコンテンツを元データとして、ステップ(S117)〜ステップ(S119)と同様に変換データ要素の値を得る(S125〜S127)。そして、データ生成装置20は、不足要素を配信サーバ30aに問い合わせて取得する(S128)。データ生成装置20は、変換データ要素の値と不足要素の値を結合して変換データを生成する(S129)。データ生成装置20は、ステップ(S122)と同様に適切なデータ変換が行われたかを判断する(S130)。データ生成装置20は、適切なデータ変換が行われなかったと判断した場合は、再度ステップ(S107)に戻り、変換装置を決定することによって変換装置を変更する。一方、データ生成装置20は適切なデータ変換が行われたと判断した場合は、変換データを端末装置10に提供する(S131)。
次に、図7では、決定部22が変換パスを決定する方法を説明する。まず、決定部22は、開始ノード側サービスリスト及び終了ノード側サービスリストを作成する(S201,S202)。開始ノード側サービスは、元データ要素を入力できるサービスであり、終了ノード側サービスは目標データ要素を出力できるサービスである。開始ノード側サービスリストとは、サービス情報データベース50にサービスメタデータが保持されるサービスの内、開始ノード側サービスに該当する全てのサービスのリストである。同様に終了ノード側サービスリストとは、サービス情報データベース50にサービスメタデータが保持されるサービスの内、終了ノード側サービスに該当する全てのサービスのリストである。
決定部22は、両リストに同一のサービスがあるか判断する(S203)。決定部22は、同一のサービスがあれば、変換パスを「開始ノード→該当サービス→終了ノード」に決定する(S204)。尚、初期段階においては開始ノード及び終了ノードには何も設定されていない。従って、1回目の検索であれば、変換パスは該当サービスとなる。一方ステップ(S203)において、同一のサービスがないと判断された場合は、開始ノード側サービスの出力要素と、終了ノード側サービスの入力要素の表現形式が同一のサービスがあるか判断する(S205)。表現形式が同一のサービスがある場合は、決定部22は、変換パスを「開始ノード→該当開始ノード側サービス→該当終了ノード側サービス→終了ノード」に決定する(S206)。
決定部22は、ステップ(S205)においても表現形式が同一のサービスがないと判断した場合には、所定の再起回数の上限に達したか判断する(S207)。上限に達している場合は、変換パスが生成できないものとして終了する。一方、ステップ(S207)において、決定部22が、上限に達していないと判断した場合には、ステップ(S201)に戻って検索をする。その際、決定部22は、開始ノード側サービスリスト内のいずれかのサービスを第1のサービスとし、終了ノード側サービスリスト内のいずれかのサービスを第2のサービスとして決定する(S208)。そして、決定部22は、第1のサービスの出力データの要素を元データ要素に設定し、第2のサービスの入力データの要素を目標データ要素に設定する(S209)。決定部22は、開始ノードとして、それまでに設定されていた開始ノードに第1のサービスを加え、「開始ノード→第1のサービス」を設定する。又決定部22は、終了ノードとして、それまでに設定されていた終了ノードに第2のサービスを加え、「第2のサービス→終了ノード」を設定する(S210)。決定部22は、変換パスに含まれるサービスを提供するサーバを変換装置に決定する(S211)。
尚、決定部22が変換パスを生成する際に、ネットワークの最短経路探索の手法を用いてもよい。又、その際、決定部22は、何らかのポリシに基づいて重み付けを行うことができる。重み付けとしては、例えば各変換サービスを提供するサービスプログラムの実行時間と、変換サービスを提供するサーバとデータ生成装置20とのネットワーク遅延の和である変換サービス実行時間を用いることができる。
(効果)
このような、データ生成装置20、データ生成システム1、データ生成方法によれば、元データを複数の元データ要素の値に分割し、元データ要素毎に元データ要素の表現形式の値を、目標データ要素の表現形式の値に変換するために必要な変換装置を決定できる。そして、データ生成装置20は、決定した変換装置に元データ要素の値を提供してデータ変換を実行させ、表現形式が変換された変換データ要素の値を取得し、変換データを生成することができる。
そのため、データ生成装置20は、元データ要素毎の変換に適した変換装置にデータの表現形式を変換させ、その結果である変換データ要素の値を結合することにより、容易に変換データを得ることができる。よって、データ生成装置20によれば、データの値を一括して目標データの値に変換する変換装置を新規に作成したり、データの入出力を行う全てのサーバに特別な機能を追加したりすることなく、元データのデータを変換し、目標とする表現形式のデータを容易に得ることが可能となる。
即ち、図8に概念的に示されるように、従来端末装置10は、切替元サービスを提供する配信サーバ30bから提供されたクライアントアプリケーションを用いて、入出力データの表現形式が異なるサービスを提供する配信サーバ30aに接続先を切り替えることはできなかった。しかし、本発明に係るデータ生成装置20は、既存の単純な変換サービスを組み合わせて入出力データを変換する変換パスを生成する。このため、端末装置10は、切替元サービスを提供する配信サーバ30bから提供されたクライアントアプリケーションを用いて、入出力データの表現形式が異なるサービスを提供する配信サーバ30aに接続先を切り替えることが可能となる。このように本発明に係るデータ生成装置20を用いれば、入出力データの相違性の問題が解決され、端末装置10は1つのクライアントアプリケーションを用いて複数の同様の機能を提供するネットワークサービスを扱えるようになる。従って、端末装置10は、分散サービス環境において、同一のクライアントアプリケーションを用いて自由に接続先を切り替えることができるため、サービスを利用する際の利便性が増す。
又、新たなサービスを提供するサービスプログラムを開発する際に、サービスプログラムの開発者はサービスプログラムにデータを変換するための機能を持たせたり、データ変換モジュールを新規に開発したりする必要がなく、開発コストが削減されると同時に、新たなサービスの実用可能性が増す。
更に、決定部22が、元データ要素のオントロジー情報と目標データ要素のオントロジー情報に基づいて、元データ要素と目標データ要素との組み合わせを生成し、その組み合わせに基づいて変換装置を決定する。このため、データ生成装置20は、容易に適切な変換装置を決定できる。
特に、決定部22が、変換パスを生成する際に、変換サービス実行時間を重みとして用いたネットワークの最短経路探索の手法を用いれば、全体として最短時間で実行可能な入出力データ変換パスを生成することができる。
又、データ生成装置20は、目標データに必要な変換データ要素以外の不足要素の値を取得する不足要素取得部24を備え、結合部25は、変換データ要素の値と不足要素取得部24が取得した不足要素の値とを結合し、変換データを生成する。このため、目標データが、元データ要素の値を変換して得られる変換データ要素の値以外の不足要素を含む場合であっても、データ生成装置20は、それを補って適切な変換データを生成することができる。
更に、決定部22は、結合部25が生成した変換データと目標データの条件とを比較し、その比較結果に応じて変換装置を変更する。このため、データ生成装置20は、適切なデータ変換が行われたかを判断でき、不適切な場合には異なるデータ変換を実行させることができる。そのため、データ生成装置20は、より正確に変換データを生成できる。
尚、本発明は、上記実施の形態に限定されるものではなく、種々の変更が可能である。
端末装置10は、切替元サービス又は切替先サービスを提供する配信サーバ30a,30bから変換装置の情報を取得してもよい。配信サーバ30a,30bは、データ生成装置20から変換装置の情報の提供を受けた場合には、これを格納する。このようにして配信サーバ30a,30bのいずれかが、切替元サービス及び切替先サービスを切替条件とする変換装置の情報を格納していれば、端末装置10はこれを取得することができる。そして、端末装置10は、取得した変換装置の情報に基づいて、自身で変換実行部23として機能して切替先サービスの提供を受けてもよい。
又、配信サーバ30a,30b、翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40eが端末装置200として機能することもできる。これによれば、複数のサービスを組み合わせて使用する際の、サービスの相互接続性を向上することができる。又、サービスを提供するサービスプログラムが、内部処理の過程で異なるサービスの提供を受けている場合に、実行速度の速いサービスを柔軟に選択し、サービスの機能を向上させることができる。
或いは、端末装置10や、配信サーバ30a,30b、翻訳サーバ40a,40b、通貨変換サーバ40c,40d、単位変換サーバ40eが、データ生成装置20として機能してもよい。これによれば、データ生成装置20を提供するインターネットサービスプロバイダや携帯電話キャリア等の負担を増加させずに、若しくはデータ生成装置20が提供されていなくても、端末装置10は同一のクライアントアプリケーションを用いて入出力データの表現形式が異なる複数のサービスの提供を受けることが可能となる。
更にはデータ生成装置20が、サービス情報データベース50を備えてもよい。又、データ生成装置20が、変換パスデータベース60を備えてもよい。これによれば、データ生成装置20は、変換装置を決定する際にネットワーク70を介してサービス情報データベース50、変換パスデータベース60にアクセスする必要がなくなり、変換装置を決定する速度が向上する。
又、上記実施の形態では、切替要求には切替元サービスのサービスID及び切替先サービスのサービスIDを含むこととしている。しかし、切替要求には切り替え先サービスを指定する情報として、例えばサービスの内容を含んでもよい。この場合、データ生成装置20は、サービス情報データベース50を参照し、サービスメタデータ内のサービスの内容から、切替先サービスを決定することができる。データ生成装置20は、サービスメタデータが、サービス内容のオントロジー情報も含んでいれば、これを用いて切替先サービスを決定することができる。
或いは、切替要求に端末装置10が扱うことができる入出力データの情報を含んでもよい。上記実施の形態においては、端末装置10が扱うことができる入出力データの情報と、切替元サービスの入出力データの情報とは一致する。しかし、例えば端末装置10が、既にサービスを切り替えて利用している場合は、端末装置10が扱うことができる入出力データの情報と、切替元サービスの入出力データの情報は相違する。この場合に、切替元サービスと切替先サービスのサービスメタデータに基づいてデータの変換を行うと、不要な処理を含む場合がある。このため、切替要求に端末装置10が扱うことができる入出力データの情報を含めば、このような問題を解決することができる。
本発明の実施の形態に係るデータ生成システムの構成を示す図である。 本発明の実施の形態に係るサービス情報データベースを示す図である。 本発明の実施の形態に係る変換パスデータベースを示す図である。 本発明の実施の形態に係るデータ生成装置のブロック図である。 本発明の実施の形態に係る利用態様を示すの概念図である。 本発明の実施の形態に係るサービスメタデータ格納から変換データ提供までの手順を示すシーケンス図である。 本発明の実施の形態に係るデータ生成方法の手順を示すシーケンス図である。 本発明の実施の形態による効果を示す概念図である。
符号の説明
1 データ生成システム
20 データ生成装置
21 分割部
22 決定部
23 変換実行部
24 不足要素取得部
25 結合部
30a,30b 配信サーバ
40a,40b 翻訳サーバ
40c,40d 通貨変換サーバ
40e 単位変換サーバ
50 サービス情報データベース
60 変換パスデータベース
70 ネットワーク

Claims (6)

  1. 元データを複数の元データ要素の値に分割する分割部と、
    前記元データ要素の値を、目標とする目標データの目標データ要素の表現形式で示される値に変換するために必要な変換装置を、前記元データ要素毎に決定する決定部と、
    該決定部が決定した前記変換装置に前記元データ要素の値を提供し、前記変換装置により表現形式が変換された変換データ要素の値を取得する変換実行部と、
    該変換実行部が取得した前記変換データ要素の値を結合し、変換データを生成する結合部と
    を備えることを特徴とするデータ生成装置。
  2. 前記決定部は、前記元データ要素のオントロジー情報と前記目標データ要素の前記オントロジー情報に基づいて、前記元データ要素と前記目標データ要素との組み合わせを生成し、該組み合わせに基づいて前記変換装置を決定することを特徴とする請求項1に記載のデータ生成装置。
  3. 前記目標データに必要な前記変換データ要素以外の不足要素の値を取得する不足要素取得部を備え、
    前記結合部は、前記変換データ要素の値と前記不足要素取得部が取得した前記不足要素の値とを結合し、前記変換データを生成することを特徴とする請求項1又は2に記載のデータ生成装置。
  4. 前記決定部は、前記結合部が生成した前記変換データと前記目標データの条件とを比較し、該比較結果に応じて前記変換装置を変更することを特徴とする請求項1乃至3のいずれか1項に記載のデータ生成装置。
  5. 元データを複数の元データ要素の値に分割する分割部と、
    前記元データ要素の値を、目標とする目標データの目標データ要素の表現形式で示される値に変換するために必要な変換装置を、前記元データ要素毎に決定する決定部と、
    該決定部が決定した前記変換装置に前記元データ要素の値を提供し、前記変換装置により表現形式が変換された変換データ要素の値を取得する変換実行部と、
    該変換実行部が取得した前記変換データ要素の値を結合し、変換データを生成する結合部とを備えるデータ生成装置と、
    該データ生成装置から前記元データ要素の値を取得して表現形式を変換する変換装置と
    を備えることを特徴とするデータ生成システム。
  6. 元データを複数の元データ要素の値に分割し、
    前記元データ要素の値を、目標とする目標データの目標データ要素の表現形式で示される値に変換するために必要な変換装置を、前記元データ要素毎に決定し、
    該決定した前記変換装置に前記元データ要素の値を提供し、前記変換装置により表現形式が変換された変換データ要素の値を取得し、
    該取得した前記変換データ要素の値を結合し、変換データを生成することを特徴とするデータ生成方法。

JP2004071244A 2004-03-12 2004-03-12 データ生成装置、データ生成システム及びデータ生成方法 Pending JP2005258930A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004071244A JP2005258930A (ja) 2004-03-12 2004-03-12 データ生成装置、データ生成システム及びデータ生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004071244A JP2005258930A (ja) 2004-03-12 2004-03-12 データ生成装置、データ生成システム及びデータ生成方法

Publications (1)

Publication Number Publication Date
JP2005258930A true JP2005258930A (ja) 2005-09-22

Family

ID=35084563

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004071244A Pending JP2005258930A (ja) 2004-03-12 2004-03-12 データ生成装置、データ生成システム及びデータ生成方法

Country Status (1)

Country Link
JP (1) JP2005258930A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010503905A (ja) * 2006-09-13 2010-02-04 アルカテル−ルーセント 発見ウェブサービス

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010503905A (ja) * 2006-09-13 2010-02-04 アルカテル−ルーセント 発見ウェブサービス

Similar Documents

Publication Publication Date Title
Sun et al. The cost-efficient deployment of replica servers in virtual content distribution networks for data fusion
EP2383943A2 (en) Semantic information-oriented network (SION)
Tenorio-Fornés et al. Open peer-to-peer systems over blockchain and ipfs: An agent oriented framework
Chang et al. A middleware for discovering proximity-based service-oriented industrial internet of things
US9742669B2 (en) Aliasing of named data objects and named graphs for named data networks
US9614897B2 (en) Methods and apparatuses for a network based on hierarchical name structure
Grasic et al. Automating ontology based information integration using service orientation
CN103036983B (zh) 一种信息获取的方法、网络节点、服务器及系统
JP2005258930A (ja) データ生成装置、データ生成システム及びデータ生成方法
Samir et al. Context-based web service discovery framework with qos considerations
Chiplunkar et al. Dynamic Discovery of Web Services using WSDL
Wang et al. Low-cost web service discovery based on distributed decision tree in P2P environments
CN103064872A (zh) 使用数据结构处理搜索查询
CN107038148A (zh) Xml文档的解析方法及解析装置
JP4494901B2 (ja) リソース検索方法およびリソース検索システム
Xu et al. Semantic web services discovery in p2p environment
JP4051462B2 (ja) グリッドシステムにおけるデータ配布方法、グリッドシステム、グリッド仲介装置、グリッド仲介プログラム
Murugan et al. A survey of resource discovery approaches in distributed computing environment
Bramantoro et al. Melayu Grid: Sharing Language Service to Bridge Cultural Difference
Calcina-Ccori et al. Location-aware discovery of services in the IoT: a Swarm approach
CN117112451B (zh) 测试方法、装置、电子设备及计算机可读存储介质
Arabshian et al. Distributed service composition and execution framework in gloserv
JP2007317120A (ja) スケジュールプラン生成装置、スケジュールプラン生成方法およびスケジュールプラン生成プログラム
Huang et al. Network service registration based on role-goal-process-service meta-model in a P2P network
JP2005234762A (ja) リソース検索装置及び方法、ならびに、コンピュータプログラム