(57)【特許請求の範囲】
【請求項１】
ユーザ毎に情報サービスの設定を記憶するプロファイルのデータ結合を設定する結合リンク情報を作成するプロファイル結合装置において、
構造が異なる複数の前記プロファイルを相互に比較し、前記結合リンク情報の候補を作成するプロファイル比較部と、
前記結合リンク情報の候補の中から、採用する前記結合リンク情報を確定するプロファイル結合設定部と、
前記情報サービスを提供する情報サービス提供装置からプロファイルの取得要求があると、
前記結合リンク情報が有する結合リンク種別がミラーである場合、要求されたプロファイルにアクセスして、アクセス要求に基づいて該プロファイル内の指定されたデータにアクセスし、取得処理を行って、その結果をアクセス要求元の前記情報サービス装置に返送し、
前記結合リンク情報が有する結合リンク種別がエイリアスである場合、該結合リンク情報に示された結合相手の複数プロファイル管理部に取得要求を転送し、該結合相手の複数プロファイル管理部から取得結果が返送されたら、そのデータに、該結合リンク情報に示された変換フィルタを適用して、得られた結果をアクセス要求元の前記情報サービス提供装置に返送する、複数プロファイル管理部と、
を有することを特徴とするプロファイル結合装置。
【請求項２】
請求項１記載のプロファイル結合装置において、前記プロファイル比較部が、前記プロファイルの構造の類似性を比較するスキーマ類似性判定部を有することを特徴とするプロファイル結合装置。
【請求項３】
請求項１又は２記載のプロファイル結合装置において、前記プロファイル比較部が、前記プロファイルからサンプルデータを読み出し、サンプルデータに含まれる語彙の類似性を比較するサンプルデータ類似性判定部を有することを特徴とするプロファイル結合装置。
【請求項４】
請求項１及至３のいずれか記載のプロファイル結合装置において、前記プロファイル結合設定部が、前記結合リンク情報の候補を出力し、管理者に候補の選択を可能にすることを特徴とするプロファイル結合装置。
【請求項５】
請求項１及至４のいずれか記載のプロファイル結合装置において、前記プロファイル結合設定部が、複数のプロファイルの構造を表示することを特徴とするプロファイル結合装置。
【請求項６】
ユーザ毎に情報サービスの設定を記憶するプロファイルのデータ結合を設定する結合リンク情報を作成するプロファイル結合方法において、
構造が異なる複数の前記プロファイルを相互に比較し、前記結合リンク情報の候補を作成するプロファイル比較ステップと、
前記結合リンク情報の候補の中から、採用する前記結合リンク情報を確定するプロファイル結合設定ステップと、
前記情報サービスを提供する情報サービス提供装置からプロファイルの取得要求があると、
前記結合リンク情報が有する結合リンク種別がミラーである場合、要求されたプロファイルにアクセスして、アクセス要求に基づいて該プロファイル内の指定されたデータにアクセスし、取得処理を行って、その結果をアクセス要求元の前記情報サービス装置に返送し、
前記結合リンク情報が有する結合リンク種別がエイリアスである場合、該結合リンク情報に示された結合相手の複数プロファイル管理部に取得要求を転送し、該結合相手の複数プロファイル管理部から取得結果が返送されたら、そのデータに、該結合リンク情報に示された変換フィルタを適用して、得られた結果をアクセス要求元の前記情報サービス装置に返送する、複数プロファイル管理ステップと、
を有することを特徴とするプロファイル結合方法。
【請求項７】
ユーザ毎に情報サービスの設定を記憶するプロファイルのデータ結合を設定する結合リンク情報を作成するコンピュータに、
構造が異なる複数の前記プロファイルを相互に比較し、前記結合リンク情報の候補を作成するプロファイル比較手順と、
前記結合リンク情報の候補の中から、採用する前記結合リンク情報を確定するプロファイル結合設定手順と、
前記情報サービスを提供する情報サービス提供装置からプロファイルの取得要求があると、
前記結合リンク情報が有する結合リンク種別がミラーである場合、要求されたプロファイルにアクセスして、アクセス要求に基づいて該プロファイル内の指定されたデータにアクセスし、取得処理を行って、その結果をアクセス要求元の前記情報サービス装置に返送し、
前記結合リンク情報が有する結合リンク種別がエイリアスである場合、該結合リンク情報に示された結合相手の複数プロファイル管理部に取得要求を転送し、該結合相手の複数プロファイル管理部から取得結果が返送されたら、そのデータに、該結合リンク情報に示された変換フィルタを適用して、得られた結果をアクセス要求元の前記情報サービス装置に返送する、複数プロファイル管理手順と、
を実行させることを特徴とするプロファイル結合プログラム。
【請求項８】
前記プロファイル比較手順が、前記プロファイルの構造の類似性を比較するスキーマ類似性判定手順を有することを特徴とする請求項７記載のプロファイル結合プログラム。
【請求項９】
前記プロファイル比較手順が、前記プロファイルからサンプルデータを読み出し、サンプルデータに含まれる語彙の類似性を比較するサンプルデータ類似性手順を有することを特徴とする請求項７又は８記載のプロファイル結合プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ表現形式やデータ構造が異なるデータを結合する装置及び方法であり、特に、ネットワークで接続された複数のコンピュータによる情報サービスの状態を管理するプロファイルに関する。
【０００２】
【従来の技術】
近年、インターネット上でのサービスの多様化、携帯電話などからのインターネット接続の多様化に応じて、インターネットを使った通信を基盤として、会員制の様々なサービスを多数の利用者に提供する情報サイトが存在し、多数の利用者を獲得している。
【０００３】
図２１によれば、個々のサービスは、各利用者に対して、プロファイルと呼ばれるデータ構造をもつ。プロファイルとは、各ユーザの個別の情報や個別の設定を記憶するデータである。このプロファイルによって、情報サイトは各ユーザに固有のサービスを提供することができる。
【０００４】
しかし、ユーザが同じ情報サイト内で別のサービスを利用するときには、既に他のサービスのプロファイルに入力済の情報であっても、プロファイルを新たに作り直すために、入力する必要がある。したがって、情報サイトが新たなサービスを開始する場合、多数のユーザがプロファイルを新規に作成することになる。
【０００５】
図２２によれば、「特願平１２−１５２３６７  複数プロファイル管理装置，管理方法および複数プロファイル管理用プログラム記録媒体」では、複数プロファイル管理部によって、複数のプロファイル間の同じ内容のデータ同士を結合することによって、仮想的な統合プロファイルを設定し、各サービスから見て、統一された１つのプロファイルのように取り扱える発明が記載されている。
【０００６】
このため、新たなサービスを提供する場合、既に他のプロファイルに記載済の内容について新たに作成する必要がなく、既存のプロファイルを利用することで、情報サイトの管理者やユーザの負担が軽減される。また、結合されたプロファイルのデータの片方が更新された場合、結合先のプロファイルのデータも更新され、情報サイトの管理者やユーザが同じ内容を結合先のプロファイルのデータへ更新する必要がなくなる。
【０００７】
しかし、「特願平１２−１５２３６７」の問題点は、複数のプロファイルの結合を1箇所の複数プロファイル管理部をもつコンピュータ（以後、複数プロファイル管理コンピュータ）で管理、処理しようとする点である。この場合、どのプロファイルのデータにアクセスする場合でも必ず１つの複数プロファイル管理コンピュータが処理することになり、全プロファイルの操作の負荷が複数プロファイル管理コンピュータに集中するので、速度低下を起こしやすい問題がある。また、複数プロファイル管理コンピュータが停止すると、プロファイルに関する処理が全くできなくなり、全サービスが停止する問題がある。
【０００８】
このため、結合を行うプロファイル毎に、設定された結合状態に基づいてプロファイル間の連携動作を行う複数の複数プロファイル管理部を設ける。これにより、プロファイル関する処理を1箇所に集中させることを防ぎ、結合後も各プロファイルを各々別に管理、運営することが可能である。
【０００９】
従来の「特願平１２−１５２３６７」では、各データの結合は、データの型が完全一致する場合に限定されており、それらが同一のデータ型でなければならない問題があった。したがって、あるプロファイルのデータが、他のプロファイルのデータと内容が同一であっても、結合して同じデータとして取り扱いできないことがあった。
【００１０】
これに対して、異なるプロファイル間のデータの結合を定義する場合に、結合するデータ間でのデータ変換を設定し、複数プロファイル管理コンピュータでデータ変換を行うことが考えられる。従来のプロファイルは文字列データに基づくテーブル形式のプロファイルが一般的であった。しかし、今後のプロファイルは、ポータビリティを考慮して、テーブル形式を含む任意のデータ構造を表現できるXML形式を採用する傾向が強まっている。XMLデータ構造規定に関する標準仕様であるXML-schemaに基づくXMLデータでは、オブジェクト指向に基づく複雑なデータ型を表現できるため、プロファイル内のデータ要素として、文字列以外のデータ型を考慮する必要があり、XML形式のプロファイルでは今後、このようなデータ変換の頻度は高くなる傾向がある。
【００１１】
【発明が解決しようとする課題】
しかし、「特願平１２−１５２３６７」のように単純なテーブル構造で、データの完全一致したデータの結合の場合、データの結合の設定は容易であったが、複数プロファイル管理が分散化し、またプロファイルのデータ構造が複雑化するにしたがって、プロファイル間のデータの結合の設定は困難になってきた。
【００１２】
【課題を解決するための手段】
このため、本発明では、アクセス方法、データ構造（スキーマ）やデータ型が異なるプロファイル間の結合の設定作業のために、プロファイル結合装置を用いる。
【００１３】
プロファイル結合装置は、任意のデータ構造を表現した２つのプロファイルのスキーマを入力として、それらプロファイルのデータ構造における各データ要素間の類似性を評価し、結合候補を出力するプロファイル比較部１２と、各プロファイルのスキーマ（データ構造）とプロファイル比較部１２が出力した結合候補をプロファイル管理用端末の画面に表示しながら、プロファイル間の結合設定を管理者が操作できるプロファイル結合設定部１１とを備える。
【００１４】
【作用】
図１を用いて、プロファイル結合装置の作用を示す。
【００１５】
各サービス１３は、プログラムであり、ユーザ毎に設定されたプロファイル１５にしたがって、各ユーザにサービスを提供する。プロファイル１５の構造は、スキーマ１６によって定義される。
【００１６】
管理者が、結合を行う２つのプロファイル１７を指定すると、その情報がプロファイル結合設定部１１からプロファイル比較部１２に伝わる。プロファイル比較部１２は、指定された２つのプロファイル１５のスキーマ１６を取得し、それらのデータ構造の類似性を判定し、その評価結果をプロファイル結合設定部１１に送る。受け取った類似性判定結果を、結合可能と評価した結合リンク情報１７の候補として、プロファイル結合設定部１１の画面上に表示する。管理者はプロファイル比較部１２から提案された複数の結合候補に対して、採用／不採用の分類を行い、最後に採用に分類されたプロファイル結合設定情報の確定を指示する。確定が指示されると、プロファイル比較部１２は、採用に分類されたプロファイルの結合リンク情報１７を、複数プロファイル管理部１４に設定して、結合作業を終了する。
【００１７】
サービス１３が結合作業済みのいずれかの複数プロファイル管理部１４にアクセスすると、複数プロファイル管理部１４は、設定された結合リンク情報１７に基づいて、同一コンピュータ内のプロファイル１５のデータ操作を行い、また他のプロファイル管理用コンピュータ４３と通信して、連携動作を行う。
【００１８】
このように、プロファイル結合設定部１１の画面上にプロファイル比較部１２が生成した評価結果が自動的に表示されるため、管理者はプロファイル結合設定部１１が提案する結合候補を取捨選択するだけでプロファイル結合を行うことができるため、作業の負担を大幅に軽減できる。また、サービス提供者が蓄積したプロファイル資産を有効利用しつつ、また、XMLのように洗練された構造化データに対応して、迅速に新規サービスの提供や、新たなサービスサイトの構築が可能となる。
【００１９】
【発明の実施の形態】
以下、図面を参照して本発明の好適な実施の形態を詳細に説明する。
【００２０】
図２に本実施形態の構成図を示す。
【００２１】
サービス１３は、サービス提供コンピュータ２２が実行することで、ユーザ毎にサービスを提供する。
【００２２】
各サービス１３の各々ユーザに対する設定は、プロファイル管理コンピュータ２３がプロファイル１５に記憶する。プロファイル１５の構造は、スキーマ１６としてプロファイル管理コンピュータ２３が記憶する。
【００２３】
プロファイル結合作業を行うプロファイル結合装置２１は、プロファイル結合設定部１１とプロファイル比較部１２を備える。プロファイル結合装置２１は、プロファイル結合設定部１１のために、管理者との入出力装置を備える。
【００２４】
サービス提供コンピュータ２２が複数のサービス１３を実行することや、複数プロファイル管理部１４を備えて、プロファイル１５やスキーマ１６を記憶してもよい。
【００２５】
プロファイル比較部１２は、複数プロファイル管理コンピュータ２３のいずれかに配置するようにしてもよい。
【００２６】
また、プロファイル結合装置２１、サービス提供装置４２，プロファイル管理コンピュータ２３を備えたコンピュータであってもよい。
【００２７】
本出願で扱うプロファイル１５は、テーブル形式だけでなく、任意のツリー構造のデータを扱うことを想定する。プロファイルの構造とそれに含まれるデータ要素の名前付けを示したものがスキーマ１６である。スキーマの構成例を図３及び図４に示す。スキーマ１６に基づいて実際のデータが入れられたものがプロファイル１５の実体であり、図５、６に、それぞれ図３、図４のスキーマ１６に対応するプロファイル１５を示す。複数ユーザで共有されるプロファイル管理用コンピュータ４３では、プロファイル１５は１つのスキーマ１６に対し、複数のデータの実体が管理される。しかし、パーソナルコンピュータで管理される個人情報のように、１つのスキーマ１６に対し、１つだけのデータの実体を管理する場合もある。
【００２８】
また、プロファイル１５が任意のツリー構造で表現されることを許容する場合、その表現形式としてXML型式が用いられることが多い。スキーマ１６の表現の標準としては、RDF schemaやXML schemaがあるが、多くの場合、オブジェクト指向言語と親和性が高いXML schemaが使われると思われる。図７に、図３で示されるスキーマ１６をXML scheme型式によって定義した定義例を示す。図８に、このXML schema型式によるスキーマ１６によって定義された、プロファイル１５の格納例を示す。
【００２９】
図５と図６のプロファイル１５は、それぞれ異なるサービス１３に関するプロファイル１５である。ここで、図５で示されるプロファイル１５と図６で示されるプロファイル１５で、共通する項目について結合することを考える。図５と図６のプロファイル１５のスキーマ３５の構成はそれそれ図３、図４で示される。例えば、図３のuserProfileノード下のnameノード下における、surnameノードのデータ要素とgivenNameノードデータ要素をつなぎ合わせたものと、図４のuserProfileノード下のfullNameノードのデータ要素は、どちらもユーザの名前を表し、同一であるという結合状態を設定できることが考えられる。同様に、図３のpostalAddressノード下の複数のノードを繋ぎ合わせたものと、図４のaddressノードのデータ要素は、どちらもユーザの住所を表し、と同一であるという結合状態を設定することも考えられる。
【００３０】
上述の２つの結合状態を設定するのが、結合リンク情報１７である。図９に、結合リンク情報１７の構成図を示す。このようなプロファイル間の結合状態は、図９で示されるような一方のプロファイルにおける１つ以上のノード位置情報と、他方のプロファイルにおける１つ以上のノード位置情報と、それらノードのデータ要素の変換フィルタ情報から構成される結合リンク情報１７で管理される。
【００３１】
図１０に、結合リンク情報１７の一例を示す。図１０では、上述の二つの結合状態について示している。この例では、結合リンク情報１７は、結合される一方のプロファイルのデータ要素位置の集合と、他方のプロファイルのデータ要素位置の集合により結合関係を表し、変換フィルタにより、それぞれのデータ要素がプロファイル間でどのように変換されるかを示す。図１０の２つの結合リンク情報１７における変換フィルタは文字列結合として定義しており、さらに文字列結合に必要な付加情報を与えている。例えば、結合リンク１情報の変換フィルタでは、%11+" " +%12 = %2のように示されている。ここで%11はプロファイル１の１つ目のデータ要素("userProfile/name/surname")を表し、%12はプロファイル１の２つ目のデータ要素("userProfile/name/givenName")を表す。これらが、空白文字(" ")を挟んで文字列結合した結果が、%2（すなわち、プロファイル２のデータ要素に一致することを示している。
【００３２】
変換フィルタのその他の例としては、１対１結合の例として数値型データと文字列型データの変換や、多対多結合の例として、日本語表記で複数要素からなる住所データと英語表記の複数要素からなる住所データとの変換などが考えられる。
【００３３】
また、図１０の例では、結合リンク情報１７に結合種別が示されており、ミラーまたはエイリアスが指定される。結合リンク情報１７−１のようにミラーが指定された場合、複数プロファイル管理部１４は結合された２つのプロファイル１５の両方にデータの実体が存在するように動作する。一方、結合リンク情報１７−２のようにエイリアスが指定された場合、データの実体は一方のプロファイル１５（図の例ではプロファイル１５−１）のみに保存され、プロファイル１５−２側に発行されたプロファイル１５のアクセス要求がプロファイル１５−１に転送されるように、複数プロファイル管理部１４は動作する。
【００３４】
本発明では、結合リンク情報１７はプロファイル比較部１２によって生成され、管理者がプロファイル結合設定部１１から指示を行うことにより、決定された結合リンク情報１７が最終的に複数プロファイル管理部１４に転送される。
【００３５】
図１１に、プロファイル結合設定部１１のフローチャートを示し、結合リンク情報１７を生成するプロファイル比較部１２との相互作用を示す。
【００３６】
プロファイル結合設定部１１が初期操作待ち（ステップ１１０１）のとき、管理者によるプロファイル選択操作が行われると、プロファイル結合設定部１１は指定された複数プロファイル管理部１４にアクセスし、選択されたプロファイル１５のスキーマ１６を取得する（ステップ１１０２）。さらに、取得したスキーマ１６を解析してその構造を画面に表示する（ステップ１１０３）。次に、プロファイル結合設定部１１は、プロファイル比較部１２を起動させ（ステップ１１０４）、管理者による結合操作待ちの状態になる（ステップ１１０５）。
【００３７】
この後、プロファイル比較部１２から送られた結合リンク情報１７の候補を画面に表示する。
【００３８】
管理者が画面上に表示された結合リンク情報１７の候補から１つの結合リンク情報１７を選び、採用操作を行うと、プロファイル結合設定部１１は採用要求をプロファイル比較部１２に送信し、結合操作待ち状態に戻る（ステップ１１０６）。
【００３９】
また、管理者が画面上に表示された結合リンク情報１７の候補から１つの結合リンク情報１７を選び、不採用操作を行うと、プロファイル結合設定部１１は不採用要求をプロファイル比較部１２に送信し、結合操作待ち状態に戻る（ステップ１１０７）。
【００４０】
また、管理者がステップ１１０６の採用リストまたはステップ１１０７の不採用リストから１つの結合リンク情報１７を選び、取り消し操作を行うと、プロファイル結合設定部１１は取り消し要求をプロファイル比較部１２に送信し、結合操作待ち状態に戻る（ステップ１１０８）。
【００４１】
管理者がステップ１１０６の採用リストの確定操作を行うと、プロファイル結合設定部１１は確定要求を送信し（ステップ１１０９）、プロファイル比較部１２を停止し（ステップ１１１０）、初期操作待ち状態に戻る。
【００４２】
図１２にプロファイル比較部１２の構成図を示す。プロファイル比較部１２は、複数プロファイル管理部１４と通信することによって、結合対象の二つプロファイル１５のスキーマ１６とプロファイル１５のそれぞれのデータの１つをサンプルデータとして読み込む。類似性判定部１２０１は、二つのプロファイル１５のスキーマ１６を比較し、候補となる結合リンク情報１７を出力してプロファイル結合設定部１１に送信する。結合リンク情報移動部１２０２は、プロファイル結合設定部１１からの指示を受けて、結合リンク情報１７を移動させるから構成される。
【００４３】
図１３にプロファイル比較部１２のフローチャートを示す。
【００４４】
まず、プロファイル結合設定部１１から要求を待つ（ステップ１３０１）。
【００４５】
プロファイル結合設定部１１から要求が、プロファイル１５の類似性判定部１２０１の起動要求だった場合（ステップ１３０２）、類似性判定部１２０１を起動する（ステップ１３０３）。
【００４６】
プロファイル結合設定部１１がステップ１１０６によって、指定した結合リンク情報１７の採用した場合、採用処理を行う（ステップ１３０４）。
【００４７】
プロファイル結合設定部１１がステップ１１０７によって、指定した結合リンク情報１７の不採用にした場合、不採用処理を行う（ステップ１３０５）。
【００４８】
プロファイル結合設定部１１がステップ１１０８によって、指定した結合リンク情報１７の取消した場合、取消処理を行う（ステップ１３０６）。
【００４９】
プロファイル結合設定部１１がステップ１１０９によって、指定した結合リンク情報１７の確定要求をした場合、確定処理を行う（ステップ１３０７）。
【００５０】
結合リンク情報移動部１２０２は、ステップ１３０４〜１３０７の処理に応じて、類似性判定部１２０１または結合リンク情報移動部１２０２に要求を転送するように動作する（ステップ１３０８）。  図１４に、類似性判定部１２０１の構成図を示す。類似性判定部１２０１は、スキーマ類似性判定部１４０１とサンプルデータ類似性判定部１４０３で構成される。
【００５１】
図１５に、類似性判定部１２０１のフローチャートを示す。類似性判定部１２０１はスキーマ類似性判定部１４０１とサンプルデータ類似性判定部１４０３を順に実行して、候補となる結合リンク情報１７を生成しながら、それらの評価値を設定していく。
【００５２】
また、スキーマ類似性判定部１４０１とサンプルデータ類似性判定部１４０３は共に、データのツリー構造の類似性を比較や、データに含まれる語彙の類似性を比較するという共通の動作を行う。従って、図１７に示されるように、類似性判定部１２０１内に、ツリー構造類似性判定部１４０２と語彙類似性判定部１４０４を設け、これらをスキーマ類似性判定部１４０１とサンプルデータ類似性判定部１４０３で共有して実行するようにしている。
【００５３】
図１６に、スキーマ類似性判定部１４０１のフローチャートを示す。
【００５４】
スキーマ類似性判定開始が指示されると、指定された２つのプロファイル管理部からスキーマを取得し、ツリー構造の内部データを作成する（ステップ１６０１）。作成された２つのツリーから任意のノードを１つづつ選び、ノード名の類似性の評価値を演算する（ステップ１６０２）。ここで、評価値の有効性を上げるために、ツリー構造類似性判定部１４０２、語彙類似性判定部１４０４、字句解析部１４０７を併用してもよい。
【００５５】
ツリー構造類似性判定部１４０２は、比較対象のノードにおけるルートノードからの親ノード名を含むパス名を抽出し、比較対象ノード名が異なっていても、上位のノード名が類似していたり、比較対象ノードの子ノードの構成が類似していれば、一定比率の評価値を与えるように働くものとする。
【００５６】
語彙類似性判定部１４０４は、語彙テーブル１４０５を用いて、比較対象のノード名が一致していなくても、２つの比較対象ノード名が同義語であると判断された場合に、一定比率の評価値を与えるように働くものとする。
【００５７】
字句解析部１４０７は、字句解析辞書１４０８を用いて、比較対象ノード名を意味をもつ単語で区切り、各単語の意味の強さに重み付けを行い、それを考慮した評価値を演算するように働くものとする。
【００５８】
類似性の評価値を演算した後、その評価値が一定値以上であるなら（ステップ１６０３）、評価対象の２つのノード位置と評価値を設定した結合リンク情報１７を生成し、結合リンク情報１７の候補リスト保存領域に追加する（ステップ１６０４）。次に、追加した結合リンク情報１７をプロファイル結合設定部１１に通知する（ステップ１６０５）。
【００５９】
以上の処理を、すべてのノードの組み合わせについて繰り返し行う（ステップ１６０６）。
【００６０】
図１７に、サンプルデータ類似性判定部１４０３のフローチャートを示す。
【００６１】
サンプルデータ類似性判定開始が指示されると、指定された２つのプロファイル管理部からサンプルデータを取得する（ステップ１７０１）。次に、２つのサンプルデータのツリーから、各々任意のノードを選び、それらノードの値の類似性を計算する（ステップ１７０２）。ここで、評価値の有効性を上げるために、ツリー構造類似性判定部１４０２、語彙類似性判定部１４０４、字句解析部１４０７を併用してもよい。
【００６２】
ツリー構造類似性判定部１４０２は、比較対象のノードにおけるルートノードからの親ノード値を含む値のリストを抽出し、比較対象ノード値が異なっていても、上位のノード値が類似していたり、比較対象ノードの子ノードの値の構成が類似していれば、一定比率の評価値を与えるように働くものとする。
【００６３】
語彙類似性判定部１４０４は、語彙テーブル１４０５を用いて、比較対象のノード値が一致していなくても、２つの比較対象ノード値が同義語であると判断された場合に、一定比率の評価値を与えるように働くものとする。
【００６４】
字句解析部１４０７は、字句解析辞書１４０８を用いて、比較対象ノード値を意味をもつ単語で区切り、各単語の意味の強さに重み付けを行い、それを考慮した評価値を演算するように働くものとする。
【００６５】
類似性判定の評価値を演算した後、その評価値が一定値以上であるなら（ステップ１７０３）、比較したノードの組みに対応する結合リンク情報１７が候補リスト保存領域にあるかどうかを調べる（ステップ１７０４）。対応する結合リンク情報１７がなければ、評価対象の２つのノード位置と評価値を設定した結合リンク情報１７を生成し、結合リンク情報１７の候補リスト保存領域に追加する（ステップ１７０５）。対応する結合リンク情報１７があれば、結合リンク情報１７の既設定評価値と新たに演算した評価値を合わせて正規化した値を、結合リンク情報１７に設定する（ステップ１７０６）。次に、追加または修正した結合リンク情報１７をプロファイル結合設定部１１に通知する。（ステップ１７０７）以上の処理を、すべてのノードの組み合わせについて繰り返し行う（ステップ１７０８）。
【００６６】
先に示した図３のスキーマ１６と図４で示す別のスキーマ１６を対象として、スキーマ１６の類似性判定を行う場合を考える。ここで、各ノードのルートからのフルパス名を比較すると、図４における
userProfile/phone/areaCode
userProfile/phone/localNumberの部分と、図３における
userProfile/phoneNumbers/home/areaCode
userProfile/phoneNumbers/home/localNumberの部分、または、
userProfile/phoneNumbers/business/areaCode
userProfile/phoneNumbers/business/localNumberの部分、または、
userProfile/phoneNumbers/mobile/areaCode
userProfile/phoneNumbers/mobile/localNumberの部分が似通っていることが分かる。従って、図４におけるphoneノードと図３におけるhomeノード、businessノード、mobileノードとの類似性の評価値を高く設定するように振る舞う。このような小ノードの構造による親ノードの評価値を決定する評価関数の例を以下に示す。
0004186474.tif 000002
となる。
【００６７】
語彙類似性判定の例を示す。一方のプロファイル１５に"mailAddress"という名前のノードがあり、他方のプロファイル１５に"e-mail"という名前のノードがあった場合、単純な文字列の部分一致を比較しただけでは、類似性評価値は０のままである。しかし、語彙テーブル１４０５に"mailAddress"と"e-mail"という単語が例えば評価値0.8で登録してある場合には、これらのノードの類似性を0.8として提案することが可能である。
【００６８】
次に字句解析部１４０７を利用した例を示す。一方のプロファイル３６に"currentAvailableTerminals"という名前のノードがあり、他方のプロファイル３６に"terminalIds"という名前のノードがあり、どちらもユーザが所有している通信端末のアドレスリストが格納されていると仮定する。この場合、単純な文字列の部分一致を評価しただけでは、類似性の評価値は０のままだが、字句解析により、ノード名を複数の単語に分解して類似性の評価を演算することが可能となる。日本語の場合には単語の区切りは辞書がなければ不可能であるため、汎用の携帯要素解析部を流用する必要があるが、スキーマ１６のノード名を英文で定義している場合には、多くの場合、単語の先頭を大文字にしたり（インターキャップ方式と呼ばれる）、単語と単語の間にアンダースコア(#)を挿入したりして、単語の区切りを分かるようにスキーマを定義することが一般的である。このような場合は単語辞書は不要であり、インターキャップ対応字句解析部１４０７、あるいはアンダースコア対応字句解析部１４０７の実装を用意すればよい。上記の例は、インターキャップによる単語の区切りが分かるため、２つのノード名は以下のように単語に分解される。
currentAvailableTerminals = current + available + terminals
terminalIds = terminal + ids
２つの単語の集合に関し、例えば、一致した文字列の長さに線形な部分一致評価を試みると、
0004186474.tif 000003
となる。また、さらに単語の意味の重み付けを考慮した辞書を用意した場合で、current、availableの重みを0.3、terminalの重みを1.0とした場合、これを評価すると、
0004186474.tif 000004
という評価になり、類似性評価のある程度高い候補として提案することができる。
【００６９】
以上のようにして、類似性判定部は結合候補となる結合リンク情報１７に適切な評価値を設定して、プロファイル結合設定部１１に順次送信する。管理者がプロファイル結合設定部１１の画面上に提示された結合リンクに対し、採用、不採用、取り消し、確定の操作を行うと、その操作に対応する要求がプロファイル結合設定部１１から、類似性判定部に送られる。これらの要求は、図１５のフローで示した通り、結合リンク情報移動部１２０２に転送され、適切な処理が行われる。
【００７０】
図１８に、結合リンク情報移動部１２０２のフローチャートを示す。
【００７１】
結合リンク情報移動部１２０２は、プロファイル結合設定部１１からの結合リンク採用要求、不採用要求、取り消し要求、および、候補リスト全体の確定要求のいずれかを受信した時に、対応する処理を行う。プロファイル結合設定部１１からの要求が採用、不採用、取り消し、確定のいずれでもなかった場合、エラー通知を返送し、要求待ち状態に戻る。
【００７２】
結合リンク採用要求を受信した場合（ステップ１８０１）、指定された結合リンク情報１７を候補リストから採用リストに移動し、移動結果をプロファイル結合設定部１１に通知する（ステップ１８０２）。
【００７３】
結合リンク不採用要求を受信した場合（ステップ１８０３）、指定された結合リンク情報１７を候補リストから不採用リストに移動し、移動結果をプロファイル結合設定部１１に通知する（ステップ１８０４）。
【００７４】
結合リンク採用／不採用取り消し要求を受信した場合（ステップ１８０５）、採用リストまたは不採用リスト内にある結合リンク情報１７を候補リスト移動し、移動結果をプロファイル結合設定部１１に通知する（ステップ１８０６）。
【００７５】
結合リンク確定要求を受信した場合（ステップ１８０７）、採用リストにあるすべての結合リンク情報１７を、複数プロファイル管理部１４内の結合リンク情報１７リストに移動し、移動結果をプロファイル結合設定部１１に通知する（ステップ１８０８）。
【００７６】
図１９に、プロファイル結合設定部１１の表示画面例を示す。画面の上半分の部分には、結合対象の２つのプロファイル１５のスキーマ１６の状態を表示しており、それぞれのスキーマ１６をツリー上に表示する部分とデータ要素名毎のテーブル形式で表示する部分に分けられている。また、各々のデータ要素が同じであるとして、リンクが張られている部分に関してはデータ要素同士が太線で接続されて見えるようになっている。
【００７７】
画面の下半分の部分は、プロファイル比較部１２が提案しているリンク候補のリストが、画面上のリンク評価結果一覧というテーブル形式で表示され、それぞれのリンク候補の評価値がパーセントで示されている。また、採用リンク一覧、不採用リンク一覧が同様にテーブル形式で表示され、この２つのテーブルはそれぞれの名前がついたタブでテーブル内容の表示が切り替わるようになっている。
【００７８】
ここで、例えばリンク評価結果で提案されている、/Profile/employeeIDと/person/IDとのリンク情報（評価点数64）を選択すると、画面上半分のスキーマ１６のツリー表示部分で、employeeIDとIDが点線で結ばれ、どのデータ要素同士のリンクなのかが分かるようになっている。ここで、確定操作を行うと、/Profile/employeeIDと/person/IDとのリンク情報はリンク評価結果一覧から消え、採用リンク一覧に現れる。それと同時に、画面上半分の点線で表されていたリンクの線画が、実線の表示に変化する。このようにして、複雑な構造のプロファイル１５同士の結合を、プロファイル結合設定部１１が提案した候補から取捨選択することにより、容易に結合作業を行うことが可能となる。
【００７９】
このようにして、複数プロファイル管理部１４内の結合リンク情報１７リストには、正しく設定された結合情報が蓄積される。サービスから複数プロファイル管理部１４に対し、プロファイル１５の取得または書換えのデータアクセス要求が発生した場合、複数プロファイル管理部１４は結合リンク情報１７リストを参照して、結合状態に合った処理を行う。
【００８０】
図２０に、複数プロファイル管理部のフローチャートを示す。  複数プロファイル管理部１４がデータアクセス要求を受信する（ステップ２００１）と、要求されたプロファイル１５のデータ要素名が結合リンク情報１７リストにあるかどうかを調べる（ステップ２００２）。もしなければ、通常の処理として、自プロファイル１５にアクセスし、アクセス要求に基づいてプロファイル１５内の指定されたデータにアクセスし、取得または書換えを行う（ステップ２００３）。
【００８１】
もし、結合リンク情報１７リストに要求されたデータ要素名がある場合、サービスからのアクセス要求種別をチェックし、取得要求か書換え要求かで処理を分岐する（ステップ２００４）。
【００８２】
取得要求の場合、結合リンク種別がミラーであるか、または結合リンク種別がエイリアスであっても自プロファイルがマスターであるなら、自プロファイルにアクセスし、アクセス要求に基づいてプロファイル内の指定されたデータにアクセスし、取得処理を行って（ステップ２００３）、その結果をアクセス要求元のサービスに返送する（ステップ２００４）。
【００８３】
結合リンク種別がエイリアスであり、かつ自プロファイル１５がマスターでない場合は、結合リンク情報１７に示された結合相手の複数プロファイル管理部１４に取得要求を転送する（ステップ２００５）。結合相手の複数プロファイル管理部１４から取得結果が返送されたら、そのデータに結合リンク情報１７に示された変換フィルタを適用して（ステップ２００６）、得られた結果をアクセス要求元のサービスに返送する（ステップ２００４）。
【００８４】
もし、アクセス要求種別が書換え要求であった場合、結合リンク種別がミラーであるか、または結合リンク種別がエイリアスで自プロファイルがマスターでない場合は、書換え要求のパラメータのデータに結合リンク情報１７に示された変換フィルタを適用し（ステップ２００７）、結合相手の複数プロファイル管理部１４に書換え要求を転送する（ステップ２００８）。
【００８５】
また、もし、結合リンク種別がミラーであるか、または結合リンク種別がエイリアスで自プロファイルがマスターである場合は、アクセス要求に基づいてプロファイル内の指定された情報にアクセスし、書換え処理を行って（ステップ２００９）、その結果をアクセス元のサービスに返送する（ステップ２０１０）。
【００８６】
また、もし、結合リンク種別がエイリアスでかつ自プロファイルがマスターである場合は、そのデータに結合リンク情報１７に示された変換フィルタを適用して（ステップ２０１１）、結合相手の複数プロファイル管理部１４に書換え要求を転送し（ステップ２０１２）、その結果をアクセス元のサービスに返送する（ステップ２０１３）。
【００８７】
以上のようにして、それぞれ独立に存在するプロファイル１５であっても、プロファイル結合設定部１１によって設定された通りに、結合されたプロファイル１５を運用できる。
【００８８】
プロファイル結合装置４１、サービス提供コンピュータ４２、及びプロファイル管理コンピュータ４３は、それぞれハードウェアとしては、図示は省略するが例えば１または複数のＣＰＵと、主記憶装置と、ハードディスク等の外部記憶装置と、通信装置と、それらを接続するバス等からなるコンピュータによって実現される。このコンピュータをプロファイル結合装置４１として機能させるためのソフトウェアプログラムは、コンピュータに読み取り可能な可搬媒体メモリ、半導体メモリ、ハードディスクなどの適当な記録媒体に格納することができる。
【００８９】
【発明の効果】
以上のように本発明によれば、プロファイル結合装置により、異なる構造をもつ複数のプロファイルのデータ結合を容易にし、複雑な構造をもつプロファイルのデータ結合を可能にし、プロファイルが設定されたサービスの便利性を向上させ、新サービスの立ち上げに寄与するところが大きい。
【図面の簡単な説明】
【図１】本発明に係る原理説明図である。
【図２】本発明に係る実施形態の構成図である。
【図３】本発明に係るスキーマの構成例である。
【図４】本発明に係るスキーマの構成例である。
【図５】本発明に係るプロファイルの例である。
【図６】本発明に係るプロファイルの例である。
【図７】本発明に係るスキーマの定義例である。
【図８】本発明に係るプロファイルの格納例である。
【図９】本発明に係る結合リンク情報の構成図である。
【図１０】本発明に係る結合リンク情報の例である。
【図１１】本発明に係るプロファイル結合設定部のフローチャートである。
【図１２】本発明に係るプロファイル比較部構成図である。
【図１３】本発明に係るプロファイル比較部のフローチャートである。
【図１４】本発明に係る類似性判定部構成図である。
【図１５】本発明に係る類似性判定部のフローチャートである。
【図１６】本発明に係るスキーマ類似性判定部構成図である。
【図１７】本発明に係るスキーマ類似性判定部のフローチャートである。
【図１８】本発明に係る結合リンク情報移動部のフローチャートである。
【図１９】本発明に係るプロファイル結合設定部の表示画面例である。
【図２０】本発明に係る複数プロファイル管理部のフローチャートである。
【図２１】本発明に係る従来のプロファイルとサービスの関係である。
【図２２】本発明に係る従来の方式による構成である。
【符号の説明】
１１  プロファイル結合設定部
１２  プロファイル比較部
１３  サービス
１４  複数プロファイル管理部
１５  プロファイル
１６  スキーマ
１７  結合リンク情報
２１  プロファイル結合装置
２２  サービス提供コンピュータ
２３  プロファイル管理コンピュータ
１１０１  初期操作待ちステップ
１１０２  スキーマ所得ステップ
１１０３  構造表示ステップ
１１０４  プロファイル比較部起動ステップ
１１０５  結合操作待ちステップ
１１０６  採用要求送信ステップ
１１０７  不採用要求送信ステップ
１１０８  取消要求送信ステップ
１１０９  確定要求送信ステップ
１１１０  プロファイル比較部停止ステップ
１２０１  類似性判定部
１２０２  結合リンク情報移動部
１３０１  要求待ちステップ
１３０２  起動要求判定ステップ
１３０３  類似性判定部起動ステップ
１３０４  採用要求判定ステップ
１３０５  不採用要求判定ステップ
１３０６  取消要求判定ステップ
１３０７  確定判定ステップ
１３０８  結合リンク情報移動部通信ステップ
１４０１  スキーマ類似性判定部
１４０２  ツリー構造類似性判定部
１４０３  サンプルデータ類似性判定部
１４０４  語彙類似性判定部
１４０５  語彙テーブル
１４０６  操作情報評価部
１４０７  字句解析部
１４０８  字句解析辞書
１６０１  ツリー構造作成ステップ
１６０２  ノード類似性計算ステップ
１６０３  評価値判定ステップ
１６０４  結合リンク情報作成ステップ
１６０５  結合リンク情報通知ステップ
１６０６  評価済判定ステップ
１７０１  サンプルデータ所得ステップ
１７０２  ノード類似性計算ステップ
１７０３  評価値判定ステップ
１７０４  結合リンク情報判定ステップ
１７０５  結合リンク情報追加ステップ
１７０６  結合リンク情報正規化ステップ
１７０７  結合リンク情報内容通知ステップ
１７０８  評価済判定ステップ
１８０１  採用要求判定ステップ
１８０２  結合リンク情報採用ステップ
１８０３  不採用要求判定ステップ
１８０４  結合リンク情報不採用ステップ
１８０５  取消要求判定ステップ
１８０６  結合リンク情報取消ステップ
１８０７  確定要求判定ステップ
１８０８  結合リンク情報確定ステップ
２００１  データアクセス要求待ちステップ
２００２  データアクセス要求種別判定ステップ
２００３  指定データアクセスステップ
２００４  アクセス要求元通信ステップ
２００５  取得要求ステップ
２００６  変換フィルタ適用ステップ
２００７  変換フィルタ適用ステップ
２００８  書き換え要求転送ステップ
２００９  プロファイルアクセスステップ
２０１０  アクセス要求元通信ステップ
２０１１  変換フィルタ適用ステップ
２０１２  書き換え要求転送ステップ
２０１３  アクセス要求元通信ステップ
【図１】
0004186474.tif 000005
【図２】
0004186474.tif 000006
【図３】
0004186474.tif 000007
【図４】
0004186474.tif 000008
【図５】
0004186474.tif 000009
【図６】
0004186474.tif 000010
【図７】
0004186474.tif 000011
【図８】
0004186474.tif 000012
【図９】
0004186474.tif 000013
【図１０】
0004186474.tif 000014
【図１１】
0004186474.tif 000015
【図１２】
0004186474.tif 000016
【図１３】
0004186474.tif 000017
【図１４】
0004186474.tif 000018
【図１５】
0004186474.tif 000019
【図１６】
0004186474.tif 000020
【図１７】
0004186474.tif 000021
【図１８】
0004186474.tif 000022
【図１９】
0004186474.tif 000023
【図２０】
0004186474.tif 000024
【図２１】
0004186474.tif 000025
【図２２】
0004186474.tif 000026