(57)【要約】【課題】異なるアプリケーション間で、データ送信に先だってやり取りすることなく、データを送受信する。【解決手段】通信部１３は、他の通信装置１０との間で通信データ１７を送受信する。記憶部１４は、通信データ１７と、アプリケーション１１が扱うデータオブジェクト１５との間で、データの符号および形式を相互に変換する変換規則１６を記憶する。変換部１２は、アプリケーション１１とは独立であって、通信データ１７とデータオブジェクト１５との間で、変換規則１６に従って相互に変換する。変換部１２は、データオブジェクト１５を送信する場合に、他の通信装置１０に依存せず、データオブジェクト１５を扱うアプリケーション１１が指定する変換規則１６に従って、データオブジェクト１５を通信データ１７に変換し、通信データ１７を受信した場合に、変換規則１６に従って通信データ１７をデータオブジェクト１５に変換する。【選択図】図１
2014157438.tif 000002
【特許請求の範囲】
【請求項１】
他の通信装置との間で通信データを送受信する通信部と、
前記他の通信装置との間で送受信する通信データと、アプリケーションプログラムが扱うデータオブジェクトとの間で、データの符号および形式を相互に変換する規則を記憶する記憶部と、
前記通信データと前記データオブジェクトとの間で、前記規則に従って相互に変換する、前記アプリケーションプログラムとは独立の変換部と、
を備え、
前記変換部は、前記データオブジェクトを送信する場合に、前記他の通信装置に依存せず、該データオブジェクトを扱う前記アプリケーションプログラムが指定する前記規則に従って、該データオブジェクトを前記通信データに変換し、前記通信データを受信した場合に、前記規則に従って該通信データを前記データオブジェクトに変換する、通信装置。
【請求項２】
前記規則は、前記通信データの形式と前記データオブジェクトの形式の組み合わせごとに、前記通信データの要素と前記データオブジェクトの要素との対応関係およびそれぞれの符号化方法の情報を含む、請求項１に記載の通信装置。
【請求項３】
他の通信装置との間で通信データを送受信する通信装置が行う通信方法であって、
前記他の通信装置との間で通信データを送受信するステップと、
前記通信装置が記憶する、前記他の通信装置との間で送受信する通信データと、アプリケーションプログラムが扱うデータオブジェクトとの間で、データの符号および形式を相互に変換する規則に従って、前記アプリケーションプログラムの動作とは独立に、前記通信データと前記データオブジェクトとの間で相互に変換する、変換ステップと、
を備え、
前記変換ステップでは、前記データオブジェクトを送信する場合に、前記他の通信装置に依存せず、該データオブジェクトを扱う前記アプリケーションプログラムが指定する前記規則に従って、該データオブジェクトを前記通信データに変換し、前記通信データを受信した場合に、前記規則に従って該通信データを前記データオブジェクトに変換する、通信方法。
【請求項４】
通信装置が備えるコンピュータを、
他の通信装置との間で通信データを送受信する通信部、
前記他の通信装置との間で送受信する通信データと、アプリケーションプログラムが扱うデータオブジェクトとの間で、データの符号および形式を相互に変換する規則を記憶する記憶部、および
前記通信データと前記データオブジェクトとの間で、前記規則に従って相互に変換する、前記アプリケーションプログラムとは独立の変換部、
として機能させ、
前記変換部は、前記データオブジェクトを送信する場合に、前記他の通信装置に依存せず、該データオブジェクトを扱う前記アプリケーションプログラムが指定する前記規則に従って、該データオブジェクトを前記通信データに変換し、前記通信データを受信した場合に、前記規則に従って該通信データを前記データオブジェクトに変換する、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、アプリケーションプログラムが扱うデータを送受信する通信装置、通信方法およびプログラムに関する。
【背景技術】
【０００２】
端末とそのアプリケーションプログラムの機能や特性によって、同じコンテンツでもデータ構造と符号化方式に異なる形式を用いることがある。その場合、コンテンツをどこかでデータ変換する必要がある。データ変換するには、コンテンツを送信するサーバ側でデータ変換する場合と、データを受信するクライアント側でデータ変換する場合がある。
【０００３】
例えば、特許文献１のコンテンツ配信システムでは、機能などのクライアント端末固有の情報はクライアント端末側で管理するが、各クライアント端末向けのコンテンツ変換はサーバ側で行う。特許文献１のコンテンツ配信システムでは、クライアント端末の機能に応じたコンテンツ変換の内容をクライアント端末側で決定し、コンテンツ変換の内容が与えられたモバイルエージェントをサーバ側に移動させる。サーバ側では、配信すべきコンテンツをモバイルエージェントの持つコンテンツ変換の内容に基づいて変換し、変換したコンテンツをモバイルエージェントによってクライアント端末に持ち帰らせる。
【０００４】
特許文献２の技術では、中継サーバが、ＰＤＡ、携帯電話からのコンテンツ閲覧要求を中継し、インターネットを介してサーバのコンテンツを取得する。そして中継サーバは、要求されたコンテンツに含まれる構造化文書に専用プロトコルを適用して専用フォーマットデータを生成し、コンテンツ閲覧要求に応答するレスポンスとして専用フォーマットデータをＰＤＡ、携帯電話に送信する。
【０００５】
特許文献３の情報通信端末装置では、データファイル中のシグネチャに応じてファイル形式を判定し、判定されたファイル形式に応じてデータファイルを再生する。そして、ファイル形式判定部の判定結果及びデータファイルの拡張子に応じて当該データファイルの利用を制限する。
【０００６】
また特許文献４には、ワイヤレスデバイス性能データを要求して、性能データに対する最適ファイルサイズを提供する技術が記載されている。特許文献４の技術では、要求された性能データのサイズを推定し、要求当事者の好みのような他の要因を評価して、最適性能データファイルサイズを決定する。そして、最適サイズにされた性能データファイルを準備し、アクセス可能にする。
【０００７】
通信相手毎に異なる形式でデータを送受信するには、以下の３つの方式がある。
（１）データを送信するサーバ側で、データを受信する個々のクライアント端末の仕様に合わせた形式にデータを変換し、クライアント端末それぞれにとって最適なコンテンツを配信する方式（方式（１）と呼ぶ。）。
（２）コンテンツを配信するサーバ側ではいずれのクライアント端末に対しても共通のコンテンツを配信し、受信したクライアント端末側で各々にとって最適なコンテンツに変換する配信方式（方式（２）と呼ぶ。）。
（３）機能などのクライアント端末固有の情報はクライアント端末側で管理し、各クライアント端末向けのコンテンツ変換はサーバ側で行う方式（方式（３）と呼ぶ。）。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００３−７６６００号公報
【特許文献２】特開２００４−１１８３９０号公報
【特許文献３】特開２００４−２２０２０３号公報
【特許文献４】特表２０１０−５１２１２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
方式（１）では、サーバ側でクライアント端末の仕様を管理する必要がある。新たなクライアント端末に配信する場合は、クライアント端末の仕様を何らかの方法で設定する必要がある。方式（２）では、クライアント端末側で、必要なデータ形式すべてについて変換プログラムを準備する必要がある。
【００１０】
方式（１）及び方式（２）の課題を解決するためのものとして方式（３）（例えば、特許文献１）があるが、モバイルエージェントと呼ばれる仕組みをサーバとクライアントの間で通信する必要があった。
【００１１】
この発明は、上記のような問題点を解決するためになされたものであり、異なるアプリケーション間で、データ送信に先だってやり取りすることなく、データを送受信することを目的とする。
【課題を解決するための手段】
【００１２】
上述の目的を達成するため、本発明の観点に係る通信装置は、他の通信装置との間で通信データを送受信する通信部と、他の通信装置との間で送受信する通信データと、アプリケーションプログラムが扱うデータオブジェクトとの間で、データの符号および形式を相互に変換する規則を記憶する記憶部と、通信データとデータオブジェクトとの間で、規則に従って相互に変換する、アプリケーションプログラムとは独立の変換部と、を備える。変換部は、データオブジェクトを送信する場合に、他の通信装置に依存せず、データオブジェクトを扱うアプリケーションプログラムが指定する規則に従って、データオブジェクトを通信データに変換し、通信データを受信した場合に、規則に従って通信データをデータオブジェクトに変換する。
【発明の効果】
【００１３】
本発明によれば、異なるアプリケーション間で、データ送信に先だってやり取りすることなく、データを送受信することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施の形態１に係る通信装置の構成を示すブロック図である。
【図２】実施の形態１のデータ送信時における処理の流れを示す図である。
【図３】実施の形態１のデータ受信時における処理の流れを示す図である。
【図４】データオブジェクトと通信データの位置付けを示す図である。
【図５】通信データのフォーマットの例を示す図である。
【図６】実施の形態１の定義ファイルを示す図である。
【図７】定義ファイルの関連を示す図である。
【図８】データオブジェクトと通信データの例を示す図である。
【図９】システム定義ファイルとデータ定義ファイルの例を示す図である。
【図１０】データオブジェクト用型定義ファイルの例を示す図である。
【図１１】データオブジェクト用データ定義ファイルの例を示す図である。
【図１２】データオブジェクト集合定義ファイルの例を示す図である。
【図１３】データの例を示す図である。
【図１４】通信データ用型定義ファイルの例を示す図である。
【図１５】通信データ用データ定義ファイルの例を示す図である。
【図１６】通信データ集合定義ファイルの例を示す図である。
【図１７】変換定義ファイルの例を示す図である。
【図１８】本発明の実施の形態２に係る通信装置のネットワークを介して接続した構成を示す図である。
【図１９】本発明の実施の形態３に係るデータオブジェクトと通信データの関係を示す図である。
【図２０】本発明の実施の形態に係る通信装置のハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施の形態について図面を参照して説明する。なお、図中、同一または相当する部分には同じ符号を付す。
【００１６】
実施の形態１
図１は、本発明の実施の形態１に係る通信装置の構成を示すブロック図である。図１では、２つの通信装置がネットワーク４０を介して互いに接続されている。通信装置１０は、アプリケーション１１、変換部１２、通信部１３および記憶部１４から構成される。記憶部１４は、データオブジェクト１５、変換規則１６および通信データ１７を記憶する。
【００１７】
アプリケーション１１は、データオブジェクト１５を扱って、各種の処理を行う。例えば、アプリケーション１１は、データオブジェクト１５を再生・表示し、編集し、または、新たなデータオブジェクト１５を生成する。変換部１２は、データオブジェクト１５と通信データ１７とを、変換規則１６に従って相互に変換する。通信部１３は、変換部１２でデータオブジェクト１５から変換された通信データ１７を、他の通信装置に送信する。あるいは、他の通信装置から受信した通信データ１７を記憶部１４に記憶させる。
【００１８】
図２は、実施の形態１のデータ送信時における処理の流れを示す図である。アプリケーション１１は所定の処理を実施し（ステップＳ１１）、データオブジェクト１５を設定する（ステップＳ１２）。アプリケーション１１はデータオブジェクト１５を記憶部１４に記憶させる。その後、変換部１２が記憶部１４からデータオブジェクト１５を取得し（ステップＳ１３）、アプリケーション１１に指定された変換規則１６に従って、データオブジェクト１５を変換して（ステップＳ１４）通信データ１７を設定する（ステップＳ１５）。変換部１２は、通信データ１７を記憶部１４に記憶させる。通信部１３は、記憶部１４から通信データ１７を取得して（ステップＳ１６）、通信データ１７を他の通信装置に送信する（ステップＳ１７）。
【００１９】
図３は、実施の形態１のデータ受信時における処理の流れを示す図である。他の通信装置１０より送信された通信データ１７は、ネットワーク４０を通って受信側の通信装置１０の通信部１３で受信する（ステップＳ２１）。通信部１３は、受信した通信データ１７を記憶部１４に記憶させる（ステップＳ２２）。変換部１２は、記憶部１４から通信データ１７を取得し（ステップＳ２３）、変換規則１６に従って変換して（ステップＳ２４）データオブジェクト１５を設定する（ステップＳ２５）。変換部１２は、データオブジェクト１５を記憶部１４に記憶させる。その後、アプリケーション１１は、記憶部１４からデータオブジェクト１５を取得し（ステップＳ２６）、そのデータに対して所定の処理を実施する（ステップＳ２７）。
【００２０】
このように、アプリケーション１１からのデータ設定／取得を、通信データ１７ではなく、アプリケーション１１で決まっている形式のデータオブジェクト１５に対して実施することが可能となる。つまり、通信ネットワークの帯域や通信相手により通信データ１７のフォーマットを変更した場合にも、同じデータオブジェクト１５を扱うことが可能となり、アプリケーション１１が通信データ１７を意識する必要がない。
【００２１】
図４は、データオブジェクトと通信データの位置付けを示す図である。装置内のレイヤ構成は、図１と同様であり、アプリケーション１１、データオブジェクト１５、変換部１２、通信データ１７である。図４の例では６種類の通信データ１７のフォーマットを示す。ここで、データのデータサイズ（バイト数）をサイズで表し、データを区別するための情報をタグで表している。
【００２２】
フォーマットＦ１は、「データ形式：バイナリ、タグ：なし、サイズ：なし」である。タグもサイズの情報も持たないバイナリ形式のため、同一データを表現する際には他のフォーマットに比べて最も効率的であるが、その反面、データ項目数やデータサイズは固定である。
【００２３】
フォーマットＦ２は、「データ形式：バイナリ、タグ：なし、サイズ：あり」である。データのサイズ情報を持っているためデータの終端を判断することができ、データサイズを可変とすることができる。しかし、データ項目数は固定である必要がある。ここで、あるデータにおいてデータサイズを固定とした場合には、サイズを省略することができる。
【００２４】
フォーマットＦ３は、「データ形式：バイナリ、タグ：あり、サイズ：なし」である。データのタグ情報を持っているため、データ項目数を可変とすることができる。しかし、データサイズは固定である。
【００２５】
フォーマットＦ４は、「データ形式：バイナリ、タグ：あり、サイズ：あり」である。データのタグ情報を持っているため、データを省略することによりデータ項目数を可変とすることができる。また、データのサイズ情報により、データサイズも可変とすることができる。ここで、あるデータにおいてデータサイズを固定とした場合には、サイズを省略することができる。
【００２６】
フォーマットＦ５は、「データ形式：テキスト、タグ：なし」である。文字コードによりデータの終端を判断することができるため、データサイズは可変とすることができる。しかし、データ項目数は固定である。
【００２７】
フォーマットＦ６は、「データ形式：テキスト、タグ：あり」である。文字コードによりデータの終端を判断することができる。さらに、データのタグ情報を持っているため、データを省略することによりデータ項目数を可変とすることができる。
【００２８】
図５は、通信データのフォーマットの例を示す図である。図５に示すフォーマットＦ１〜Ｆ６は、図４のフォーマットＦ１〜Ｆ６に対応している。図５は、データオブジェクト１５がデータ１とデータ２の２つのデータを持っている場合を例示している。
【００２９】
上述のようなデータオブジェクト１５と通信データ１７を変換部１２を用いて変換するためには、それぞれで対象となるデータの定義が必要である。本実施の形態では、４つの定義を用いる。
【００３０】
１つ目が、データオブジェクト１５に対する定義であり、データオブジェクト１５にどのようなデータがどのような並びで入っているかを規定する。２つ目が、変換部１２に対する定義であり、データオブジェクト１５と通信データ１７の変換方法を規定する。３つ目が、通信データ１７に対する定義であり、通信データ１７にどのようなデータがどのような並びで入っているかを規定する。４つ目が、システム固有の情報に関する定義であり、データのバイトオーダやテキスト形式の文字コード、および改行コード等を規定する。
【００３１】
本実施の形態では、これらを９つのファイルに定義する。図６は、実施の形態１の定義ファイルを示す図である。また、図７は、定義ファイルの関連を示す図である。
【００３２】
データオブジェクト集合定義ファイル９１は、データオブジェクト１５に対する定義であり、上記の１つ目の定義に該当する。データオブジェクト用データ定義ファイル９２とデータオブジェクト用型定義ファイル９３は、データオブジェクト集合定義ファイル９１で共通的に使用するデータや型に対する定義である。データオブジェクト集合定義ファイル９１には、データオブジェクト１５のデータの集合と並びを、データオブジェクト用データ定義ファイル９２で定義したデータの集合として規定する。
【００３３】
データオブジェクト用データ定義ファイル９２には、データオブジェクト１５用の具体的データを、データオブジェクト用型定義ファイル９３で定義した型や値域を用いて規定する。データオブジェクト用型定義ファイル９３には、データオブジェクト１５用のデータの型として、プリミティブ型及びユーザ定義型を、特定の情報に特化しない抽象的な型で規定する。
【００３４】
変換定義ファイル９４は、変換部１２に対する定義であり、上記の２つ目の定義に該当する。
【００３５】
通信データ集合定義ファイル９５は、通信データ１７に対する定義であり、上記の３つ目の定義に該当する。通信データ用データ定義ファイル９６と通信データ用型定義ファイル９７は、通信データ集合定義ファイル９５で共通的に使用するデータや型に対する定義である。通信データ集合定義ファイル９５には、通信データ１７のデータの集合と並びを、通信データ用データ定義ファイル９６で定義したデータの集合として規定する。通信データ用データ定義ファイル９６には、タグやデータサイズ等の通信データ１７固有の情報を規定する。通信データ用型定義ファイル９７には、通信データ１７用のデータの型として、ユーザ定義型を定義する。
【００３６】
データ定義ファイル９８は、データオブジェクト集合定義ファイル９１と通信データ集合定義ファイル９５で共通的に使用するデータに対する定義である。データ定義ファイル９８には、データを識別するためのＩＤやシンボルを定義する。データ定義ファイル９８には、データ変換で扱うデータのみを定義し、データオブジェクト１５や通信データ１７に固有の情報については、それぞれのデータ定義ファイル９８に定義する。
【００３７】
システム定義ファイル９９は、システム固有の情報に対する定義であり、上記の４つ目の定義に該当する。
【００３８】
変換規則１６には、変換定義ファイル９４、データオブジェクト用型定義ファイル９３、データオブジェクト用データ定義ファイル９２、通信データ用型定義ファイル９７、通信データ用データ定義ファイル９６が含まれる。また、それぞれの定義ファイルには、ヘッダ情報として定義ファイルそのものの情報（バージョン、文字コード、改行コード等）を規定する。
【００３９】
図８は、データオブジェクトと通信データの例を示す図である。図８では、アプリケーションＡはデータオブジェクトＡを扱い、アプリケーションＢは、データオブジェクトＢを扱う。データオブジェクトＡは、名前、および、色と数のセットを含み、データオブジェクトＢは、名前および色を含む。通信データ１７のフォーマットには、テキスト、タグありと、バイナリ、タグなしがあることを想定する。データオブジェクトＡは、いずれかの通信データ１７に変換されて送信される。宛先の通信装置に受信された通信データ１７は、データオブジェクトＢに変換される。
【００４０】
図９は、システム定義ファイルとデータ定義ファイルの例を示す図である。システム定義ファイルdc_sys.defは、アプリケーション１１が扱うデータのバイト順がリトルエンディアン（データの下位バイトから順に並べる方式）であり、通信するデータのバイト順がビッグエンディアン（データの上位バイトから順に並べる方式）であることを示す。また、文字コードがＳＪＩＳ（Ｓｈｉｆｔ−ＪＩＳ）であり、改行コードがＣＲＬＦ（Carriage-Return Line-Feed）であることを規定している。
【００４１】
データ定義ファイル９８は、それぞれのデータを識別するためのＩＤとシンボルを規定する。図９のデータ定義ファイルdc_dat.defでは、シンボルFruitで表される対象がデータであることを示す。TagTypeには他に、例えば、繰り返しの開始または終了を示す型がある。
【００４２】
図１０は、データオブジェクト用型定義ファイルの例を示す図である。データオブジェクト用型定義ファイルdc_dtype.defは、色と数のセットのシンボルがColorNumberであり、データは、テキストと整数であることを示す。
【００４３】
図１１は、データオブジェクト用データ定義ファイルの例を示す図である。データオブジェクト用データ定義ファイル９２は、データオブジェクト１５がもつデータそのものの定義を規定する。例えば、データオブジェクト用データ定義ファイルdc_def_Fruit-Dtd0003.defは、ID=0003のデータが名前であって、データタイプがテキストであることを示す。データオブジェクト用データ定義ファイルdc_dat_Fruit-Dtd0006.defは、ID=0006のデータが色と数のセットであって、データタイプがColorNumberであることを示す。データタイプColorNumberは、データオブジェクト用型定義ファイルdc_dtype.defによって、データがテキストと整数であることが分かる。
【００４４】
図１２は、データオブジェクト集合定義ファイルの例を示す図である。データオブジェクト集合定義ファイルは、データオブジェクト１５がもつデータの並びを規定する。例えば、データオブジェクト集合定義ファイルdc_datSet_0007_V1.0.defは、データオブジェクトＡがデータFruit-Dtd0003とデータFruit-Dtd0006の順にならんでいることを表す。
【００４５】
図１３は、データの例を示す図である。データオブジェクト用データ定義ファイルのＩＤが示すデータである。例えば、データオブジェクト用データ定義ファイルdc_def_Fruit-Dtd0003.defに示されるID=0003のデータは、“りんご”である。データオブジェクト用データ定義ファイルdc_dat_Fruit-Dtd0006.defに示されるID=0006のデータは、“赤”、１である。
【００４６】
図１４は、通信データ用型定義ファイルの例を示す図である。通信データ用型定義ファイル９７は、通信データ用データ定義ファイル９６のTypeに指定する通信データ１７の型を規定する。通信データ用型定義ファイルdc_ctype.defの「＃定義なし」は、通信データ用データ定義ファイル９６のTypeで、予約語として規定されるプリミティブ型しか用いないことを示す。プリミティブ型には、例えば、テキスト（ｔｘｔ）、整数（ｉｎｔ）等がある。
【００４７】
図１５は、通信データ用データ定義ファイルの例を示す図である。通信データ用データ定義ファイル９６は、通信データ１７がもつデータそのものの定義を規定する。例えば、通信データ用データ定義ファイルdc_cdat_Fruit-Cdtd0009.defは、ID=0009のデータが名前であって、TagIDがNameであり、データタイプがテキストであることを示す。例えば、通信データ用データ定義ファイルdc_cdat_Fruit-Cdtd0011.defは、ID=0011のデータが数であって、データタイプが整数であることを示す。
【００４８】
図１６は、通信データ集合定義ファイルの例を示す図である。通信データ集合定義ファイル９５は、通信データ１７がもつデータの並びを規定する。例えば、通信データ集合定義ファイルdc_cdatSet_0012_V1.0.defは、テキスト、タグありのフォーマットであって、データFruit-Cdtd0009、データFruit-Cdtd0010およびデータFruit-Cdtd0011の順にならんでいることを示す。例えば、データFruit-Cdtd0009は、図１５に示すように、通信データ用データ定義ファイルdc_cdat_Fruit-Cdtd0009.defに規定されている。
【００４９】
図１７は、変換定義ファイルの例を示す図である。変換定義ファイル９４は、データオブジェクト１５と通信データ１７とが相互に変換される対応関係を示す。例えば、変換定義ファイルdc_cnv_0007-0012.defは、データオブジェクト集合定義ファイルdc_datSet_0007_V1.0.defと、通信データ集合定義ファイルdc_cdatSet_0012_V1.0.defとの対応関係を示す。例えば、データオブジェクト１５のデータFruit-Dtd0003と通信データ１７のデータFruit-Cdtd0009が相互に変換されるべきことを示す。また、データオブジェクト１５のデータFruit-Dtd0006（の第１要素）またはデータFruit-Dtd0004と、通信データ１７のデータFruit-Cdtd0010が相互に変換されるべきことを示す。
【００５０】
以上に示す各種定義ファイルを用いて、例えば、図８に示すアプリケーションＡからアプリケーションＢに、名前＝“りんご”、色＝“赤”、数＝１は、以下のように通信される。
１）アプリケーションＡ側の変換部１２は、変換定義ファイルdc_cnv_0007-0012.defを読み込む。変換定義ファイル９４は、アプリケーション１１によって指定される。
２）変換部１２は、変換定義ファイルdc_cnv_0007-0012.defに従って、名前＝“りんご”、色＝“赤”、数＝１を、通信データ集合定義ファイルdc_cdatSet_0012_V1.0.defに規定される通信データ１７に変換する。
３）通信部１３は、通信データ１７を宛先の通信装置に送信する。
４）通信データ１７を受信した通信装置（アプリケーションＢ側）では、変換部１２が変換定義ファイルdc_cnv_0008-0012.def（図示せず）を読み込む。変換定義ファイルdc_cnv_0008-0012.defは、変換定義ファイルdc_cnv_0007-0012.defのうち、“Fruit-Cdtd0011 > Fruit-Dtd0006/Fruit-Dtd0005”を含まないか、または“Fruit-Cdtd0011 > null”である。
５）変換部１２は、変換定義ファイルdc_cnv_0008-0012.defに従って、通信データ１７を、アプリケーションＢが扱うデータオブジェクトＢの名前＝“りんご”、色＝“赤”に変換する。
６）アプリケーションＢは、データオブジェクトＢを用いて処理を行う。
【００５１】
以上説明したように、実施の形態１の通信装置によれば、異なるアプリケーション１１間で、データ送信に先だってやり取りすることなく、データを送受信することができる。また、変換部１２を変換規則１６に従って、データオブジェクト１５と通信データ１７とを相互にデータ変換するように構成したので、変換規則１６を規定するだけで、さまざまなデータ変換に汎用的に対応することができる。
【００５２】
実施の形態２
図１８は、本発明の実施の形態２に係る通信装置のネットワークを介して接続した構成を示す図である。図１８の例では、通信装置Ｗ、通信装置Ｔ、通信装置Ｕ及び通信装置Ｖがネットワーク４０を介して接続されている。それぞれの通信装置は、実施の形態１の通信装置１０と同様の構成であって、アプリケーション１１、記憶部１４、変換部１２および通信部１３を備える。記憶部１４には、データオブジェクト１５、変換規則１６および通信データ１７が記憶される。実施の形態２では、データオブジェクト１５どうし、および通信データ１７どうしを区別するため、異なる符号を用いるが、それぞれの実体は、実施の形態１のそれらと同じである。
【００５３】
図１８の例では、通信装置Ｗのアプリケーション１１は、データオブジェクトＡ１及びデータオブジェクトＡ２の処理が可能である。データオブジェクトＡ１は、変換部１２によって通信データＢ１または通信データＢ２に変換可能である。また、通信データＢ３及び通信データＢ４は、変換部１２によってデータオブジェクトＡ２に変換可能である。
【００５４】
通信装置Ｔのアプリケーション１１は、データオブジェクトＡ１及びデータオブジェクトＡ２の処理が可能であるる。データオブジェクトＡ２は、変換部１２によって通信データＢ３に変換可能である。また、通信データＢ１は、変換部１２によってデータオブジェクトＡ１に変換可能である。通信装置Ｗと通信装置Ｔでは、２つの変換部１２が描かれているが、実体は１つであって、用いる変換規則１６が異なっている。
【００５５】
通信装置Ｕのアプリケーション１１は、データオブジェクトＡ１の処理が可能である。通信データＢ２は、変換部１２によってデータオブジェクトＡ１に変換可能である。
【００５６】
通信装置Ｖのアプリケーション１１は、データオブジェクトＡ２の処理が可能である。データオブジェクトＡ２は、変換部１２によって通信データＢ４に変換可能である。
【００５７】
例えば、通信装置ＶがデータオブジェクトＡ２を通信データＢ４に変換して、通信装置Ｗに送信する。通信装置Ｗは、通信データＢ４をデータオブジェクトＡ２に変換してアプリケーション１１で処理できる。通信装置Ｗは、アプリケーション１１でデータオブジェクトＡ２を処理して、データオブジェクトＡ１を生成したと想定する。データオブジェクトＡ１を通信データＢ１または通信データＢ２に変換して、通信装置Ｔまたは通信装置Ｕに送信することができる。
【００５８】
通信装置Ｔでは、通信データＢ１をデータオブジェクトＡ１に変換して、アプリケーション１１で処理できる。また、通信装置Ｕでは、通信データＢ２をデータオブジェクトＡ１に変換してアプリケーション１１で処理できる。
【００５９】
あるいは、通信装置Ｔから、データオブジェクトＡ２を通信データＢ３に変換して、通信装置Ｗに送信することができる。通信装置Ｗでは、通信データＢ３をデータオブジェクトＡ２に変換し、さらに、通信データＢ４に変換することができる。そして、通信装置Ｗは、通信データＢ４を通信装置Ｖに送信することができる。
【００６０】
このように変換部１２を用いることで、特定のデータオブジェクト１５と複数種類の通信データ１７の相互変換が可能となり、ネットワーク４０の帯域や通信相手に応じた通信データ１７のフォーマットで通信することができる。また、アプリケーション１１が意識するのはデータオブジェクト１５のみでよく、通信データ１７毎にアプリケーション処理を変更する必要がない。
【００６１】
実施の形態３
図１９は、本発明の実施の形態３に係るデータオブジェクトと通信データの関係を示す図である。図１９は、図４または図５に示す通信データのフォーマットＦ６を用いる。通信データのフォーマットＦ６は、例えば、ＸＭＬ等のマークアップ言語が該当する。実施の形態３では、通信データ１７どうしを区別するため、異なる符号を用いるが、それぞれの実体は、実施の形態１の通信データ１７と同じである。図１９では、例として、変換部１２を用いて変換可能なデータオブジェクト１５と通信データＢ５、通信データＢ６および通信データＢ７の関係を示す。データオブジェクト１５は、データＸ、データＹ、データＺの３つのデータを有する場合を例に説明する。
【００６２】
通信データＢ５は、データオブジェクト１５が持っている３つすべてのデータを、変換部１２を用いて通信データ１７に変換した場合の例である。データＸ、データＹ、データＺは、それぞれに対応した開始タグと終了タグで区別される。この通信データＢ５を、変換部１２を用いてデータオブジェクト１５に変換するためには、開始タグと終了タグによってデータを識別し、データオブジェクト化すればよい。
【００６３】
通信データＢ６は、データオブジェクト１５が持っている３つのデータのうちデータの必要度の高いデータＸとデータＺのみを、変換部１２を用いて通信データ１７に変換した場合の例である。データＸとデータＺは、それぞれに対応した開始タグと終了タグで区別される。この通信データＢ６を、変換部１２を用いてデータオブジェクト１５に変換するためには、開始タグと終了タグによってデータＸとデータＺを識別する。通信データＢ６に格納されていないデータＹについては、規定されたルールに従ったデータを補い、データオブジェクト化すればよい。もしくは、データＹが受信側で必要ない場合には、空データ（Ｎｕｌｌ）としてデータオブジェクト化すればよい。
【００６４】
通信データＢ７は、データオブジェクト１５が持っている３つのデータのうちデータの必要度の最も低いデータＹのデータサイズを削減し、変換部１２を用いて通信データ１７に変換した場合の例である。データＸ、データＹ’およびデータＺは、それぞれに対応した開始タグと終了タグで区別される。この通信データＢ７を、変換部１２を用いてデータオブジェクト１５に変換するためには、開始タグと終了タグによってデータＸとデータＺを識別し、データサイズが削減されたデータＹ’については、変換部１２内でデータサイズの照会を行い、規定されたルールに従ってデータを補い、データオブジェクト化すればよい。
【００６５】
なお、このようなデータ項目とデータサイズの削減は、通信データ１７の他のフォーマットでも同様に可能である。基本的に、通信データ１７がタグ情報を有する場合には、データ項目の削減が可能であり、サイズを持っているかデータ形式がテキストの場合には、データサイズの削減が可能である。図４のフォーマットＦ１においては、規定したデータ項目及びデータサイズから削減は基本的に不可能である。フォーマットＦ２においては、データサイズの削減が可能である。フォーマットＦ３においては、データ項目の削減が可能である。フォーマットＦ４においては、データ項目とデータサイズの削減が可能である。フォーマットＦ５においては、データサイズの削減が可能である。フォーマットＦ６においては、データ項目とデータサイズの削減が可能である。
【００６６】
以上説明したように、データオブジェクト１５を送信する場合に、通信の特性に合わせて、通信データ１７のフォーマットを選択することができる。異なる通信データ１７のフォーマットでもデータオブジェクト１５に変換するので、アプリケーション１１は、通信データ１７のフォーマットによって処理を変える必要がなく、異なるアプリケーション１１間で、データ送信に先だってやり取りすることなく、データを送受信することができる。
【００６７】
図２０は、本発明の実施の形態に係る通信装置のハードウェア構成例を示すブロック図である。図２０は、図１の通信装置１０の構成を示す。
【００６８】
通信装置１０は、図２０に示すように、制御部２１、主記憶部２２、外部記憶部２３、操作部２４、表示部２５および送受信部２６を備える。主記憶部２２、外部記憶部２３、操作部２４、表示部２５および送受信部２６はいずれも内部バス２０を介して制御部２１に接続されている。
【００６９】
制御部２１はＣＰＵ（Central Processing Unit）等から構成され、外部記憶部２３に記憶されている制御プログラム２９に従って、データ変換のための処理を実行する。
【００７０】
主記憶部２２はＲＡＭ（Random-Access Memory）等から構成され、外部記憶部２３に記憶されている制御プログラム２９をロードし、制御部２１の作業領域として用いられる。
【００７１】
外部記憶部２３は、フラッシュメモリ、ハードディスク、ＤＶＤ−ＲＡＭ（Digital Versatile Disc Random-Access Memory）、ＤＶＤ−ＲＷ（Digital Versatile Disc ReWritable）等の不揮発性メモリから構成され、上述の処理を制御部２１に行わせるための制御プログラム２９を予め記憶し、また、制御部２１の指示に従って、この制御プログラム２９が記憶するデータを制御部２１に供給し、制御部２１から供給されたデータを記憶する。外部記憶部２３は、例えば、データオブジェクト１５、変換規則１６および通信データ１７を記憶する。
【００７２】
操作部２４はキーボードおよびマウスまたはタッチパネルなどのポインティングデバイス等と、キーボードおよびポインティングデバイス等を内部バス２０に接続するインタフェース装置から構成されている。操作部２４を介して、変換規則に関する入力操作を受付ける。
【００７３】
表示部２５は、ＬＣＤ（Liquid Crystal Display）もしくは有機ＥＬディスプレイ、およびスピーカなどから構成され、データオブジェクト１５、変換規則１６、通信データ１７などを表示する。また、アプリケーション１１の処理に伴う表示を行う。
【００７４】
送受信部２６は、無線送受信機、無線モデムまたは網終端装置、およびそれらと接続するシリアルインタフェースまたはＬＡＮ（Local Area Network）インタフェースから構成されている。送受信部２６を介して、通信データ１７を送受信する。
【００７５】
通信装置１０のアプリケーション１１、変換部１２および通信部１３の処理は、制御プログラム２９が、制御部２１、主記憶部２２、外部記憶部２３、操作部２４、表示部２５および送受信部２６などを資源として用いて処理することによって実行する。
【００７６】
その他、前記のハードウエア構成やフローチャートは一例であり、任意に変更および修正が可能である。
【００７７】
制御部２１、主記憶部２２、外部記憶部２３、操作部２４、内部バス２０などから構成される制御処理を行う中心となる部分は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。たとえば、前記の動作を実行するためのコンピュータプログラムを、コンピュータが読み取り可能な記録媒体（フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等）に格納して配布し、当該コンピュータプログラムをコンピュータにインストールすることにより、前記の処理を実行する通信装置１０を構成してもよい。また、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置に当該コンピュータプログラムを格納しておき、通常のコンピュータシステムがダウンロード等することで通信装置１０を構成してもよい。
【００７８】
通信装置１０の機能を、ＯＳ（オペレーティングシステム）とアプリケーションプログラムの分担、またはＯＳとアプリケーションプログラムとの協働により実現する場合などには、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。
【００７９】
また、搬送波にコンピュータプログラムを重畳し、通信ネットワークを介して配信することも可能である。たとえば、通信ネットワーク上の掲示板(BBS：Bulletin Board System)に前記コンピュータプログラムを掲示し、ネットワークを介して前記コンピュータプログラムを配信してもよい。そして、このコンピュータプログラムを起動し、ＯＳの制御下で、他のアプリケーションプログラムと同様に実行することにより、前記の処理を実行できるように構成してもよい。
【符号の説明】
【００８０】
１０  通信装置、１１  アプリケーション、１２  変換部、１３  通信部、１４  記憶部、１５  データオブジェクト、１６  変換規則、１７  通信データ、２０  内部バス、２１  制御部、２２  主記憶部、２３  外部記憶部、２４  操作部、２５  表示部、２６  送受信部、２９  制御プログラム、４０  ネットワーク、９１  データオブジェクト集合定義ファイル、９２  データオブジェクト用データ定義ファイル、９３  データオブジェクト用型定義ファイル、９４  変換定義ファイル、９５  通信データ集合定義ファイル、９６  通信データ用データ定義ファイル、９７  通信データ用型定義ファイル、９８  データ定義ファイル、９９  システム定義ファイル、Ａ１，Ａ２  データオブジェクト、Ｂ１，Ｂ２，Ｂ３，Ｂ４，Ｂ５，Ｂ６，Ｂ７  通信データ。
【図１】
2014157438.tif 000003
【図２】
2014157438.tif 000004
【図３】
2014157438.tif 000005
【図４】
2014157438.tif 000006
【図５】
2014157438.tif 000007
【図６】
2014157438.tif 000008
【図７】
2014157438.tif 000009
【図８】
2014157438.tif 000010
【図９】
2014157438.tif 000011
【図１０】
2014157438.tif 000012
【図１１】
2014157438.tif 000013
【図１２】
2014157438.tif 000014
【図１３】
2014157438.tif 000015
【図１４】
2014157438.tif 000016
【図１５】
2014157438.tif 000017
【図１６】
2014157438.tif 000018
【図１７】
2014157438.tif 000019
【図１８】
2014157438.tif 000020
【図１９】
2014157438.tif 000021
【図２０】
2014157438.tif 000022