JP5886376B2 - 構造化メタデータに基づく発見を公開するプラグインモデルのための方法および装置 - Google Patents

構造化メタデータに基づく発見を公開するプラグインモデルのための方法および装置 Download PDF

Info

Publication number
JP5886376B2
JP5886376B2 JP2014143385A JP2014143385A JP5886376B2 JP 5886376 B2 JP5886376 B2 JP 5886376B2 JP 2014143385 A JP2014143385 A JP 2014143385A JP 2014143385 A JP2014143385 A JP 2014143385A JP 5886376 B2 JP5886376 B2 JP 5886376B2
Authority
JP
Japan
Prior art keywords
service
service description
unique
keyword
searchable
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.)
Expired - Fee Related
Application number
JP2014143385A
Other languages
English (en)
Other versions
JP2014241141A (ja
Inventor
アシュウィン・スワミナサン
ランジス・スブラマニアン・ジャヤラム
ビドヤ・ナラヤナン
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.)
Qualcomm Inc
Original Assignee
Qualcomm 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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2014241141A publication Critical patent/JP2014241141A/ja
Application granted granted Critical
Publication of JP5886376B2 publication Critical patent/JP5886376B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99936Pattern matching access

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

優先権の主張
米国特許法第119条に基づく優先権の主張
本特許出願は、本特許の譲受人に譲渡され、明白に参照によって本明細書に組み込まれている、2009年6月11日に出願した、「METHODS AND APPARATUS FOR A PLUG−IN MODEL FOR PUBLISHING STRUCTURED DATA IN A DISTRIBUTED NETWORK」という名称の仮出願第61/186,319号に対する優先権を主張する。
本開示は、モバイル動作環境に関し、より詳細には、オーバレイネットワークと、オーバレイネットワーク内でデータ構造を公開する方法および装置とに関する。
オーバレイネットワークとは、既存のネットワークの上に構築される、ノードおよび論理リンクからなる仮想ネットワークである。オーバレイネットワークの例は、インターネット、Chord、Content Addressable Network(CAN)、Pastry、およびViceroyを含むが、それに限定されない。一部のオーバレイネットワークでは、各ノードは、データをネットワークに分散させて、データの格納および取出しにおけるネットワーク効率を増すように、区画(partition)と呼ばれる、オーバレイネットワークデータの一部分を格納することができる。
オーバレイネットワークに参加するデバイスまたはノードは、オーバレイネットワーク内の別のデバイスまたはノードからサービスを取得することを望む場合がある。このようなサービスは、複数のサービス記述言語のいずれか1つを使って、オーバレイネットワーク内で公開され、該複数のサービス記述言語のそれぞれは、公開されているサービスを見つけるのに使用するための、対応するサービス発見プロトコルをもつ。Wikipediaによって与えられるサービス発見の定義は、「サービス発見プロトコルは、デバイスと、こうしたデバイスによってコンピュータネットワーク上で提供されるサービスとの自動検出を可能にするネットワークプロトコルである」と述べている。言い換えると、サービス発見は、リクエストされたサービスのサービスプロバイダを見つけるアクションである。要望されたサービスの場所(通常、サービスプロバイダのアドレス)が取得されると、ユーザは、そのサービスにさらにアクセスし、利用することができる。
概して、サービス発見プロトコルは、(a)オーバレイ上でサービスを提供するサービスプロバイダ、および(b)サービスを利用するクライアント、という2つのエンティティを含む。一態様において、サービスプロバイダの例は、印刷、スキャン、ファックス送信、格納、音楽共有、ファイル共有、ゲームなどのサービス、およびたとえば映画チケット、ホテル、航空券を予約するため、またはオンラインゲームなどのためのウェブサービスを提供するノードを含む。さらに、ネットワーク内のどのノードも、クライアントとして作用し得る。したがって、サービス発見の目標は、関心を引くある特定のサービス(このようなサービスが存在する場合)のサービスプロバイダをクライアントが見つけるのを助けることである。
ピアツーピアオーバレイネットワークにおいてサービス発見が成功するために、サービスプロバイダは、そのサービス(1つまたは複数)を、サービス記述言語を使って指定するべきであり、サービスについてのメタデータは、検索可能な何らかの形で、オーバレイ内のノード上に格納されているべきであり、クライアントは、対応するサービスを見つけるのを助けるためにクエリシステムに渡される検索可能キーワードを使って、サービス要求を表すことができるべきである。
ただし、従来技術では、異なるプロトコルを使用するので、全利用可能サービスを見つける上で問題が起こる。上述したように、サービスは一般に、サービス記述言語により記述され、この言語は、オーバレイでのサービスの公開と、サービスの発見の両方に使われる。ただし、異なる種類のサービスを記述する、標準化され、広く普及し、広く展開されているいくつかのサービス記述言語がある。一部の例は、OWL−S、UDDI、UPnP、WSDL、XML、RDFなどを含む。こうした言語はそれぞれ、独自の普及領域をもっており、明らかに勝っているものはない。したがって、異なる言語が異なるサービスによって使われるので、クライアントは、クライアントのクエリと同じ言語を使って記述されたサービスを認識することしかできない。従来技術では、発見プロトコルとサービス記述言語との間は、緩やかに結合されている。たとえば、UPnPは、独自のサービス記述言語を使い、UDDIは、ウェブサービス用のWSDLを使う、などのようになる。したがって、多くの利用可能サービスは認識されない。
複数のサービス言語を扱うという問題に対処しようとするこれまでの試みは、あるサービス記述言語で公開されたサービス記述を、最終的にはオーバレイで公開することができる別の言語に変換するための翻訳機の使用を伴ってきた。ただし、このようなアプローチは煩わしく、異なるN個のサービス記述言語が与えられると(Nは正の整数)、少なくともO(N)個の翻訳機が各ノードにおいて実装される必要がある。ここで、Oは何らかの関数である。
したがって、サービス記述の効率的公開と、効率的クエリ処理とを可能にする、複数のサービス言語を扱う方法を実現することが望ましいであろう。
以下では、1つまたは複数の態様の基本的な理解のために、このような態様の簡略化した要約を提示している。この要約は、企図したすべての態様の包括的な概要ではなく、すべての態様の主要または重大な要素を明らかにすることも、一部または全部の態様の範囲を定めることも意図していない。その唯一の目的は、後で提示するより詳細な説明の前置きとして、1つまたは複数の態様のいくつかの概念を、簡略化した形で提示することである。
一態様によると、ネットワーク内でサービスを公開または発見する方法は、ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信することと、固有サービス記述から1つまたは複数のキーワードを抽出することと、各キーワードは、ネットワーク上でのサービス発見に必要とされる情報に対応し、固有サービス記述から、1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出することと、必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って検索可能サービス記述を生成することと、必須フィールドは、固有サービス記述から抽出された各キーワードを備え、キーワードとともに公開フィールドは、各抽出されたキーワードに対応する抽出された追加情報を備え、サービスを広告するためにネットワークにオーバレイ検索可能サービス記述を公開することと、を備える。
さらに他の一態様は、ネットワーク内でサービスを公開または発見するように構成された少なくとも1つのプロセッサに関し、このプロセッサは、ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信する第1のモジュールと、固有サービス記述から1つまたは複数のキーワードを抽出する第2のモジュールと、各キーワードはネットワーク上でのサービス発見に必要とされる情報に対応し、固有サービス記述から、1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出する第3のモジュールと、必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って検索可能サービス記述を生成する第4のモジュールと、必須フィールドは固有サービス記述から抽出された各キーワードを備え、キーワードとともに公開フィールドは、各抽出キーワードに対応する抽出された追加情報を備え、サービスを広告するために、ネットワークに検索可能サービス記述を公開する第5のモジュールと、を備える。
さらに別の態様は、コンピュータに、ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信させる第1のコードセットと、コンピュータに、固有サービス記述から1つまたは複数のキーワードを抽出させる第2のコードセットと、各キーワードはネットワーク上でのサービス発見に必要とされる情報に対応し、コンピュータに、固有サービス記述から、1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出させる第3のコードセットと、コンピュータに、必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って検索可能サービス記述を生成させる第4のコードセットと、必須フィールドは固有サービス記述から抽出された各キーワードを備え、キーワードとともに公開フィールドは各抽出されたキーワードに対応し、コンピュータに、サービスを広告するために、ネットワークに検索可能サービス記述を公開させる第5のコードセットと、を備えるコンピュータ可読媒体を備えるコンピュータプログラム製品に関する。
さらに他の一態様は、ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信するための手段と、固有サービス記述から1つまたは複数のキーワードを抽出するための手段と、各キーワードはネットワーク上でのサービス発見に必要とされる情報に対応し、固有サービス記述から、1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出するための手段と、必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って検索可能サービス記述を生成するための手段と、必須フィールドは固有サービス記述から抽出された各キーワードを備え、キーワードとともに公開フィールドは各抽出されたキーワードに対応する抽出された追加情報を備え、サービスを広告するために、ネットワークに検索可能サービス記述を公開するための手段と、を備える装置に関する。
別の態様は、ネットワーク内でサービスを公開する装置に関し、該装置は、ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信するように構成された受信機と、検索可能スキーマプラグイン構成要素と、を備え、該検索可能スキーマプラグイン構成要素は、固有サービス記述から1つまたは複数のキーワードを抽出し、各キーワードはネットワーク上でのサービス発見に必要とされる情報に対応し、固有サービス記述から、1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出し、必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って検索可能サービス記述を生成し、必須フィールドは固有サービス記述から抽出された各キーワードを備え、キーワードとともに公開フィールドは各抽出されたキーワードに対応する抽出された追加情報を備え、さらに、該装置は、サービスを広告するために、オーバレイネットワークに検索可能サービス記述を公開する公開処理構成要素を備える。
別の態様によると、ネットワーク検索クエリを処理する方法は、固有サービス記述言語での固有サービスクエリを受信することと、固有サービスクエリを、正規化スキーマに従って検索可能クエリに翻訳することと、固有検索クエリによって識別されるサービスを求めてネットワークを検索することと、検索は正規化スキーマに従って実施され、検索結果を、正規化スキーマから固有検索記述言語に翻訳することと、を備える。
上記および関連目的の遂行のために、1つまたは複数の態様は、以下で完全に記載するとともに請求項において具体的に指摘する特徴を備える。以下の説明および添付の図面では、1つまたは複数の態様の特定の例示的特徴を詳しく説明する。ただし、こうした特徴は、様々な態様の原理を利用し得るための様々なやり方のいくつかを示すに過ぎず、本記述は、このようなすべての態様とその等価物とを含むことを意図している。
本開示態様を、本開示態様を限定するためではなく例示するために与えられる、添付の図面とともに以下に記載するが、同じ呼称は同じ要素を示す。
ピアツーピアネットワークの態様を示すブロック図。 ネットワークにおいて、異なる様々なサービス記述言語をサポートする、サービス公開のためのシステムの態様を示す概略図。 図1のネットワークまたは図2のシステムにおいて、本明細書に記載する機能を実施するように構成されたコンピューティングデバイスの態様を示す概略図。 検索可能サービス記述を生成および公開する方法の態様を示すフローチャート。 サービスを求めるクエリを処理する方法の態様を示すフローチャート。 ネットワーク内でサービスを公開および発見するシステムの態様を示す概略図。 正規化スキーマの例を示す図。 正規化スキーマの例を示す図。 正規化スキーマの別の例を示す図。
次に、図面を参照して、様々な態様を記載する。以下の記述では、説明目的で、1つまたは複数の態様の完全な理解のために多数の具体的詳細を説明する。ただし、こうした態様(1つまたは複数)は、こうした具体的詳細なしで実施され得ることが明らかであろう。
ネットワーク、たとえばピアツーピアネットワークは、コンピュータネットワーク上で、デバイスと、こうしたデバイスによって提供されるサービスとを発見する能力に依拠する。サービスを記述するのに、様々なサービス記述言語スキーマが使われ得る。本明細書に記載するシステムおよび方法は、サービスを公開し発見する共通フレームワークを提供する。サービスは、サービスを記述するのに使われるサービス記述言語に関わらず、公開し発見することができる。
図1を参照すると、ピアツーピアオーバレイネットワーク100のブロック図が与えられている。ネットワーク100は、インターネットプロトコルネットワークなど、どのタイプのネットワークも備える基底ネットワーク102を備える。基底ネットワーク102を、単一エンティティとして示してあるが、基底ネットワークは、WAN、LAN、ワイヤレスネットワーク、または他のあらゆるタイプのネットワークなど、任意の数またはタイプのネットワークを備えてもよい。図1は、ピアツーピアオーバレイネットワークを示すが、本出願は、オーバレイネットワークに限定されない。本明細書に記載するシステムおよび方法は、集中型ネットワークを含む、どのタイプのネットワークにも等しく適用可能である。たとえば、ネットワーク100は、発見サービスを提供するサーバを含み得る。このようなケースでは、サーバは、発見に関連した情報を収容するディレクトリとして作用し得る。たとえば、サーバは、ネットワーク内のノードによって公開されるキーワードと、対応する情報とを収容し得る。ノードは、情報をサーバに公開してよく、クエリもサーバに送られ得る。
ある態様において、基底ネットワーク102は、複数のピアツーピアネットワーク(104、106、108)を備える。ピアツーピアネットワーク104、106、108は、それぞれ、基底ネットワーク102のノードのサブセットを構成し、こうしたノードが通信可能なように、基底ネットワーク102のサービスを利用して動作する。たとえば、ピアツーピアネットワーク104、106、108において、ノードは、基底ネットワーク102によって与えられる通信リンクによって接続されて、所望のルーティングパスを形成する。ピアツーピアネットワーク104、106、106は、いかなるルーティング構成も可能にするためのどのトポロジまたはアーキテクチャを有してもよく、図1に示す構成に限定されない。
ピアツーピアオーバレイネットワーク、たとえばネットワーク104、106、108内部で、各ノードは、サービスプロバイダとして、および/またはクライアントとして動作することができる。つまり、ノードは、オーバレイにサービスを提供することができ、他の1つまたは複数のノードのサービスを利用することができる。このようなサービスは、たとえば、印刷、スキャン、ファックス送信、格納、音楽共有、ファイル共有、ゲーム、映画のチケット、ホテル、航空券の予約、またはオンラインゲームなどのウェブサービスを含み得る。ただし、こうしたサービス例は非限定的であり、実際のサービスは、列挙したものより多くの、または少ないサービスを含み得ることに留意されたい。各ノードは、たとえば、パーソナルコンピュータ、ラップトップコンピュータ、ワイヤレス通信デバイス、モバイル電話、携帯情報端末、プリンタ、ファックスマシン、および/または他のあらゆるネットワーク接続可能コンピューティングデバイスなどのコンピューティングデバイスを備え得る。
サービス発見プロトコルを使って、クライアントとして動作するノードが、関心を引くある特定のサービスのサービスプロバイダを見つけるのを支援することができる。サービスプロバイダは、そのサービスを、たとえば、拡張マークアップ言語(XML)、Research Description Format(RDF)、RDF−S、ウェブサービス記述言語(WSDL)、WSDL−S、オントロジーウェブ言語(OWL)、サービス用オントロジーウェブ言語(OWL−S)、Universal Description Discovery and Integration(UDDI)、ユニバーサルプラグアンドプレイ(UPnP)、および/または他のサービス記述言語などのサービス記述言語を使って指定する。サービスについてのメタデータは、オーバレイ内のノード上に検索可能フォーマットで格納され、クライアントは、対応するサービスを見つけるのを助けるための、クエリシステムに渡される検索可能キーワードを使ってサービス要求を表せばよい。
図2は、異なる様々なサービス記述言語をサポートする、サービス公開のための例示的なシステム200を示す。システム200は、ピアツーピアネットワーク上で広告し、発見されるべきサービス用の共通フレームワークを提供する。図2に示すように、サービス記述のためのデータ202は、たとえば、XML、XDS、RDF、RDF−S、WSDL、UDDI、UPnP、OWL、OWL−s、およびそれ以外など、どのサービス記述言語/スキーマ204を使って公開してもよい。1つまたは複数のプラグインモジュール206は、サービス記述を、たとえばそれぞれのサービス記述言語204での、その固有の形から、正規化スキーマ209に基づく検索可能サービス記述208に変換するために提供される。検索可能サービス記述208は次いで、オーバレイネットワーク210上で公開される。
検索可能サービス記述208は、サービス発見に必要とされる情報と、サービスを順位づけし、アクセスするのに必要とされる情報とをすべて集約するのを可能にする。検索可能サービス記述208の公開は、固有サービス記述からのキーワードの抽出を含む。キーワードは、たとえば、XML属性値のペアとして、RDFトリプルとして、単純なキーワードとして、または他のいかなる抽出方法にも従って抽出することができる。プラグインモジュール206は、抽出されるべき特定のフィールドと、そのフィールドを抽出するフォーマットとを定義する正規化スキーマ209を提供する。正規化スキーマ209は、サービス記述言語の機能のすべてを提供するわけではないので、サービス記述言語ではない。翻訳機の使用とは異なり、プラグインモジュール206は、あるサービス記述言語から他の1つまたは複数のサービス記述言語には翻訳しない。そうではなく、プラグインモジュール206は、正規化スキーマ209に基づいて、元のサービス記述からの一定のデータの抽出を容易にする。たとえば、正規化スキーマ209によって指定されたフィールドは、固有サービス記述204中の特定のデータにマップされる。したがって、オーバレイネットワーク上で公開されるのは、正規化スキーマ209に従って抽出された情報である。したがって、それぞれ異なるサービス記述言語での複数のバージョンのサービス記述を、ネットワーク上で公開させるのではなく、どのノードによっても検索し認識することができる単一の記述が、ネットワークに公開され得る。
図3は、ピアツーピアおよび/またはオーバレイネットワーク内のノードとして働き得る例示的なコンピューティングデバイス300を示す。コンピューティングデバイス300は、本明細書に記載する1つまたは複数の構成要素および機能に関連づけられた処理機能を実施するプロセッサ302を含む。プロセッサ302は、単一または複数のプロセッサまたはマルチコアプロセッサセットを含み得る。さらに、プロセッサ302は、統合型処理システムおよび/または分散型処理システムとして実装することができる。
コンピューティングデバイス300は、たとえば、プロセッサ302によって実行されるアプリケーションのローカルバージョンを格納するメモリ304をさらに含む。メモリ304は、ランダムアクセスメモリ(RAM)、読出し専用メモリ(ROM)、テープ、磁気ディスク、光ディスク、揮発性メモリ、不揮発性メモリ、およびそのあらゆる組合せなど、コンピュータによって使用可能などのタイプのメモリも含み得る。
さらに、コンピュータデバイス300は、本明細書に記載するハードウェアと、ソフトウェアと、サービスとを使用して、1人または複数の当事者との通信を確立し維持することを可能にする通信構成要素306を含む。通信構成要素306は、コンピュータデバイス300上の構成要素の間で、ならびにコンピュータデバイス300と、通信ネットワークを越えて配置されたデバイスおよび/またはコンピュータデバイス300にシリアルもしくはローカルに接続されたデバイスなどの外部デバイスとの間で通信内容を搬送することができる。たとえば、通信構成要素306は、1つまたは複数のバスを含んでよく、それぞれ、外部デバイスとインターフェースをとるように動作可能な送信機と受信機とに関連づけられた送信チェーン構成要素と受信チェーン構成要素とをさらに含んでよい。さらに、たとえば、通信構成要素306は、コンピュータデバイス300がオーバレイネットワーク内の他のノードと通信することを可能にするように構成され得る。
さらに、コンピュータデバイス300は、データストア308をさらに含んでよく、データストア308は、本明細書に記載する態様と関連して利用される、情報、データベース、およびプログラムの大容量記憶を可能にする、ハードウェアおよび/またはソフトウェアの適切などの組合せでもよい。たとえば、データストア308は、プロセッサ302によって現時点で実行されていないアプリケーション用のデータリポジトリでよい。
コンピュータデバイス300は、コンピュータデバイス300のユーザから入力を受信するように動作可能であり、ユーザへの表示用の出力を生成するようにさらに動作可能な、ユーザインターフェース構成要素310をさらに含み得る。ユーザインターフェース構成要素310は、キーボード、数字パッド、マウス、タッチディスプレイ、ナビゲーションキー、ファンクションキー、マイクロホン、音声認識構成要素、ユーザから入力を受信することが可能な他のいかなる機構、またはそのどのような組合せも含むが、それに限定されない、1つまたは複数の入力デバイスを含み得る。さらに、ユーザインターフェース構成要素310は、ディスプレイ、スピーカ、触覚フィードバック機構、プリンタ、ユーザに出力を提示することが可能な他のいかなる機構、またはそのどのような組合せも含むが、それに限定されない、1つまたは複数の出力デバイスを含み得る。
ある態様において、コンピュータデバイス300は、1つまたは複数の検索可能スキーマプラグインモジュール206も含み得る。たとえば、1つまたは複数のプラグインモジュール206は、メモリ304に格納することができる。各スキーマプラグインモジュール206は、正規化スキーマ209に基づいて、あらゆるサービス記述言語204で書かれたサービス記述から検索可能サービス記述208(図2)を生成するように構成され得る。検索可能サービス記述208は、ネットワークに公開され、サービスに対するクエリを処理するのに使われる。検索可能サービス記述208の生成は、サービス記述からキーワードを、その固有の形で抽出することと、次いで、こうしたキーワードを、検索可能サービス記述208のフォーマットでネットワーク上に広告することとを含む。
コンピュータデバイス300は、検索可能サービス記述208(図2)の公開を容易にする公開処理モジュール312をさらに含む。さらに、ネットワークへのクエリを処理するクエリ処理モジュール314も含まれる。クエリが固有サービス記述言語で受信されると、クエリ処理モジュール314は、正規化スキーマ209に基づいてクエリを翻訳するように構成される。したがって、ネットワークの検索を実施することができる。検索結果が取得されると、クエリ処理モジュール314は、結果を、元のクエリの固有サービス記述言語に逆翻訳するように、また、結果を要求側に転送するように構成される。
図4は、検索可能サービス記述を生成および公開する例示的な方法を示すフローチャートである。402で示すように、プロセスは、たとえば、XML、RDF、WSDL、OWL、および/または他のあらゆるサービス記述言語などの固有サービス記述言語で書かれたサービス記述の受信で始まる。図2、3に示すプラグインモジュール206が、固有言語サービス記述を受信する。
404で示すように、1つまたは複数のキーワードを、サービス記述から抽出することができる。さらに、キーワードとともに公開されるべき、他の識別された情報も抽出される。キーワードは、たとえば、サービス名、サービス記述言語などに対応する。406で示すように、検索可能サービス記述が、正規化スキーマに基づいて、抽出されたキーワードと、他の識別情報とを使って作成される。検索可能サービス記述は、たとえば、必須、オプション、および「キーワードとともに公開」などのフィールドを備えるが、これらに限定するものではない。正規化スキーマは、サービス記述言語ファイル中の複数の属性から選択され得る属性を各フィールド内に備える。異なるサービス記述言語は、特定の属性に対して異なる命名規則を有し得る。正規化スキーマは、属性ごとに標準属性名を定義する。キーワードを抽出し、検索可能サービス記述を生成するとき、固有属性値は、適切な標準属性名に関連づけられる。
必須フィールドは、サービス発見のためにネットワーク上で公開されなければならない固有サービス記述にある情報をすべて備える。必須情報の例は、たとえば、サービス記述に関連づけられたサービス名、サービスによって使われるサービス記述言語についての情報などを含むが、それに限定されない。必須フィールドは、サービスが複数の言語で記述されている場合、2つ以上のサービス記述言語を含み得る。さらに、サービス発見を容易にするためのテキスト記述および/またはキーワード、サービスとコンタクトするための情報、および/またはサービスに関連があるとともに他のフィールドによって記述されない可能なキーワードのリストなど、他の情報が、必須フィールド中に含まれ得る。
オプションフィールドは、サービス発見のために公開され得る情報すべてを含む。このフィールドは、発展型検索および発見を容易にするための追加情報を提示し、既に必須フィールド中にあるフィールドは含まなくてよい。オプションフィールド中の例示的エンティティは、たとえば、サービスが受け取る可能な入力タイプについての情報、サービスが生成する可能な出力タイプについての情報、サービスの前提条件およびスキーマに従って定義される前提条件インスタンスに及ぶ範囲、サービスのある特定の結果についての情報およびどのような条件で出力が生成されるか、公開元についての情報、サービスに関連があるとともに他のフィールドによって記述されない可能キーワードのリスト、および/または他の情報、を含み得る。
「キーワードとともに公開」フィールドは、必須およびオプションフィールドから抽出されたキーワードとともに公開される必要がある情報を備える。「キーワードとともに公開」フィールドは、たとえば、ある特定のキーワードに特有であるとともに、その選ばれたキーワードのみとともに格納されている情報、サービス記述から抽出された全キーワードと一緒に格納されている記述されるサービスについての情報、および/または他の情報、を含み得る。たとえば、ある特定のキーワードに特有の情報は、サービス記述のドキュメントにおいてある特定のキーワードが出現する回数を含んでもよい。この情報は、クエリ結果の順位づけが索引語−頻度値に基づいて行われる、関連性ベースの検索に有用であり得る。
再度図4を参照すると、406で示すように、正規化スキーマに基づいて作成された検索可能サービス記述は、ネットワークに公開することができる。検索可能サービス記述によって記述されたサービスは次いで、どのサービス記述言語でフォーマットされた検索クエリを発行するノードによっても発見され得る。
図5は、サービスに対するクエリを処理する例示的な方法を示すフローチャートである。502で示すように、プロセスは、固有検索記述言語でのクエリが受信されたとき始まる。504で示すように、クエリは次いで、正規化スキーマに基づいて、サービスクエリに翻訳される。506で示すように、サービスクエリに合致するサービスを求めて、ネットワークの検索が実施される。本明細書に記載するように、ネットワークは、正規化スキーマに基づいてフォーマットされているサービス記述を格納している。508で示すように、検索クエリの結果が受信される。結果は、正規化スキーマに従ってもフォーマットされる。510で示すように、結果は、対応する固有検索クエリの元のまたは固有サービス記述言語に翻訳される。
図6に移ると、ネットワークにおいてサービスを公開および発見するシステム600が示されている。図示するように、システム600は、プロセッサ、ソフトウェア、またはその組合せ(たとえば、ファームウェア)によって実装される機能を表し得る機能ブロックを含む。システム600は、連携して作用する電気構成要素の論理グループ602を含む。システム600は、たとえば、ピアツーピアネットワーク内のノードとして作用するコンピューティングデバイスによって実装することができる。
論理グループ602は、ネットワークにおける公開のために第1のサービス記述言語でのサービスの固有サービス記述を受信するモジュール604を含む。さらに、論理グループ602は、1つまたは複数のキーワードを固有サービス記述から抽出するモジュール606を含み、各キーワードは、ネットワーク上でのサービス発見に必要とされる情報に対応する。論理グループ602は、さらに、1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を固有サービス記述から抽出するモジュール608と、必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って検索可能サービス記述を生成するモジュール610と、を備え、当該必須フィールドは固有サービス記述から抽出された各キーワードを備え、当該キーワードとともに公開フィールドは、各抽出されたキーワードに対応する抽出された追加情報を備え、当該論理グループ602は、さらに、サービスを広告するために、検索可能サービス記述をネットワークに公開するモジュール612を含む。さらに、システム600は、電気構成要素604〜612に関連づけられた機能を実行する命令を保持するメモリ618を含む。メモリ618の外部にあるものとして示してあるが、電気構成要素604〜612は、メモリ618内部に存在してもよいことを理解されたい。
正規化スキーマ209(図2)の一例は、Qualcomm,Incから入手可能なGenie検索可能スキーマである。正規化スキーマ209と同様に、Genie検索可能スキーマ(GSSまたはGenie)は、サービス記述言語ではない。このスキーマは、サービス記述言語の機能性をすべて提供するわけではないので、サービス記述言語と理解されるべきではない。GSSは、サービス発見に必要とされる情報と、サービスを順位づけ、アクセスするのに必要とされる情報とをすべて集約するための機構を提供するだけである。Genieでは、サービスは、その固有サービス記述を使って記述されると考える。固有サービス記述は、OWL−S、WSDL、UPnP、または他の公知もしくは未発見スキーマでもよいであろう。この情報をオーバレイ上に公開することは、2つのステップを伴う。第1のステップは、記述からキーワードを抽出することである。抽出された各キーワードは、3つのタイプ、すなわち、単純なキーワード、XML属性値のペア、およびRDFトリプルの1つでよい。次のステップは、こうしたキーワードをオーバレイ上で広告することである。広告は、PUTコマンドを使って行うことができる。PUTコマンドは、入力として、ResourceNameと、AuthNameと、KindIDと、Nameと、Valueと、LifeTimeとをもつ。PUTコマンドは、3タイプのキーワード用に、異なる3つのkindID、すなわち、KEYWORDと、XML_KEYWORDと、RDF_KEYWORDとをサポートすることに留意されたい。
GSSは、それゆえ、サービス公開における中間ステップとして作用する。GSSは、元のサービス記述から抽出されたキーワードのリストを、こうしたキーワードと一緒に公開され得る追加サイド情報のリストとともに含む。GSSは、ステップ1の最終生成物であり、Genieミドルウェアを含み得るノードに、サービス記述のどこの部分を公開してよく、何をオーバレイに格納することができるかについての何らかの情報を提供する。GSS自体は、オーバレイ内のどのノードにも、1つのドキュメントとしては格納されない。
GSSは、3つの基本フィールドを含む。
1.必須(required):オーバレイにおいて公開されなければならない固有サービス記述中のフィールドをすべて含む。
2.オプション(optional):オプションであるとともにサービス発見のために公開してよい固有サービス記述中の情報をすべて含む。
3.キーワードとともに公開(publishWithKeywords):このフィールドは、固有サービス記述から抽出された各キーワードとともに公開される必要がある情報をすべて含む。
図7は、GSS700の例を示す。必須(required)フィールド702は、サービス発見のためにオーバレイ上で公開される必要がある情報をすべて含む。必須フィールド702は、下に列挙する以下のエンティティを含み得る。どのGSS700の必須フィールド702も、servicenameとservicedescriptionlanguageとを含み、必須フィールド702中の残りのフィールドについては、GSS700に含めるのは任意である。テーブル1は、必須フィールド中のエントリの例を示す。
Figure 0005886376
フィールドservicedescriptionlanguageは、サービスによって使われるサービス記述言語についての情報を含む。必須フィールドは、少なくとも1つのservicedescriptionlanguageフィールドを含まなければならない。必須フィールドは、サービスが複数の言語で記述されている場合は、2つ以上のservicedescriptionlanguageフィールドを含み得る。このフィールド中の値は、ある特定の言語によって記述されているサービスをノード/アプリケーションに検索させるように標準化される必要がある。可能な選択肢は、以下を含む。
・ウェブサービス記述言語にはWSDL、
・OWL−Sの場合はOWLS、
・OWLの場合はOWL、
・Universal Description,Discovery,and Integrationの場合はUDDI、
・ユニバーサルプラグアンドプレイの場合はUPnP、など。
フィールドsearchKeywordsは、サービスに関連のある可能キーワードのリストをもつ。この情報は、固有サービス記述から抽出してもよく、サービス、アプリケーション、またはノードによって、サービスを公開するときに追加するだけでもよい。searchKeywordsフィールド中の情報は、単純なキーワード、XML属性値のペア、またはRDFトリプルでもよい。キーワードは、外部手段によって(サービスまたはアプリケーションなどにより)追加される場合、図7でのように、フィールドuserDefinedKeyword中に封入される。
オプション(optional)フィールド704は、サービス発見のために公開してよい情報をすべて含む。オプションフィールド704は、発展型検索および発見を容易にするための追加情報を提示し、既に必須フィールド中にあるフィールドは含まなくてよい。オプションフィールド内のエンティティはすべて、本当に任意であり、テーブル2に示す以下のエントリを含む。
Figure 0005886376
フィールドservicePublisherは、追加サブフィールド、すなわち、公開元の名称を含むservicePublisherNameと、公開元についてのテキスト記述および/またはキーワードを含むtextDescription(サービス広告は、こうしたキーワードでユーザに検索させたい場合、追加キーワードを追加してよい)と、サービスとのコンタクト法についての情報を含むcontactInformationとを有する。
フィールドsearchKeywordsは、サービスと関連があるとともに必須フィールド中で直接カバーされない可能キーワードのリストをもつ。この情報は、固有サービス記述から抽出してもよく、サービス、アプリケーション、またはノードによって、サービスを公開するときに追加するだけでもよい。searchKeywordsフィールド中の情報は、単純なキーワード、XML属性値のペア、またはRDFトリプルでよい。可能な例は、OWL−SスキーマにおけるserviceParameterおよびserviceCategoryフィールドを含む。フィールドserviceParameterは、OWL−Sでのプロファイル記述を伴い得るプロパティの拡張可能リストをもつ。このフィールドは、追加サブフィールド、すなわち、serviceParameterName(実際のパラメータの名前)と、sParameter(パラメータの値をポイントする)とを有し得る。serviceCategoryは、OWL−S外部であり、可能性としてはOWL[OWL−S]外部でよい何らかの類別に基づくサービスのカテゴリを記述する。このカテゴリは、以下のフィールドを含む。すなわち、(a)categoryName:実際のカテゴリの名前、(b)taxonomy:分類方式への参照を格納する、(c)value:具体的分類における値をポイントする、および(d)code:サービスタイプごとの分類に関連づけられたコードを格納する。serviceParameterおよびserviceCategoryフィールドは、OWL−Sバージョン1.1における主要プロファイル記述中に存在し、バージョン1.2で始まる比較的最近のバージョンのProfile.owl外部では廃止されてきた。こうしたバージョンにおいて、こうしたフィールドは、それぞれ、ServiceParameter.owlおよびServiceCategory.owlという別個のファイルに見ることができる。
オーバレイにおいて公開される情報の量に依存して、オプションフィールドおよびそのサブフィールドは、公開されてもされなくてもよい。それゆえ、必須およびオプションフィールドは、サービス発見のためにオーバレイにおいて何を公開しなければならないか、または公開してよいかを、オーバレイが決めるためのやり方を提供する。
publishWithKeywordフィールド706は、必須およびオプションフィールドから抽出されたキーワードとともに公開される必要がある情報を含む。publishWithKeywordフィールド706は主として、2つのタイプの情報、すなわち、ある特定のキーワードに特有であるとともにその選ばれたキーワードとだけ一緒に格納されている情報を含むkeywordSpecificInfoと、記述されるサービスについての情報を含むserviceSpecificInfoとを含む。keywordSpecificInfoとは異なり、serviceSpecificInfoは、サービスのプロパティであり、サービス記述から抽出された全キーワードと一緒に格納される。keywordSpecificInfoの例は、ある特定のキーワードがドキュメントまたはサービス記述中に出現する回数であるnumberOfOccurrencesである。この情報は、クエリ結果の順位づけが索引語−頻度値に基づいて行われる、関連性ベースの検索に有用であり得る。
serviceSpecificInfoのいくつかの例は、serviceReputationおよびcontactInformationである。serviceReputationは、サービスの評価を指定する。この情報は、ユーザが異なる検索結果の中から選ぶのを助けるために、検索プロセスの最後に、ユーザに提示すればよい。この評価スコアは、検索結果を順位づけるのにも使うことができる。serviceReputationは、publishWithKeyword中のオプションフィールドである。serviceReputationとは対照的に、contactInformationフィールドは、publishWithKeywordにおいて必須であり、必須およびオプションフィールドから抽出されたすべてのキーワードとともに公開されなければならない。このフィールドは、以下の中にあってよい少なくとも1つのエントリを含まなければならない。すなわち、overlayURI:オーバレイ内のサービス記述ドキュメントへのURIポインタ、weburi:サービスもしくはサービス記述へのポインタであるURLもしくはURI(これはオーバレイ特有ポインタでなくてよい)、contactNode:ノード識別子やnodeIDなど、サービスを提供するノードについての情報(contactNodeフィールドは、結果のスコーピングと順位づけとを容易にするための、ノードの評価格付けおよびノードの場所などの追加情報を含み得る)、またはcontactPerson:サービスを担当する人の名前およびコンタクト情報である。publishWithKeywordに含まれる情報は、取り出された結果の順位づけとスコーピングとに使うことができ、キーワードPUTコマンドのDocumentPointerおよびOtherInfoフィールドにおいてキーワードとともに公開される。
普及している1つのサービス記述言語は、OWL−Sである。OWL−Sは、サービス用の上位レイヤオントロジー(ontology)を提供する。サービスは、サービスクラスを使って記述される。Serviceクラスは、宣言されたWebサービスに対する組織的参照ポイントを与える。各Serviceインスタンスは、ServiceProfile記述を提示し、ServiceModel記述で記述され、ServiceGrounding記述をサポートすることになる。ServiceProfileは、エージェントがサービスを発見するのに必要とされる情報を与え、ServiceModelおよびServiceGroundingは、見つかると、まとめられて、エージェントがサービスを利用するのに十分な情報を与える。サービスプロファイルは、サービスを求めているエージェントが、サービスがエージェントの必要を満たすかどうか判定するのに適したやり方で、「サービスが何を行うか」を伝える。この表現形式は、サービスによって何が遂行されるか、サービス適用可能性およびサービス品質に対する制限、ならびにサービス要求元がサービスをうまく利用するために満足しなければならない要件の記述を含み得る。OWL−SにおけるServiceProfileクラスは、サービスの発見に必要とされる情報をすべて与え、それゆえ、この情報は、公開用に十分である。
上述したGSS700は、OWL−SにおけるServiceProfileクラスに対しカプセル化し及びラッパー(wrapper)を提供する。GSS700は、ServiceProfileに基づくので、OWL−SプロパティからGSSフィールドへのマッピングは、テーブル3に示すように簡単である。
Figure 0005886376
いくつかの具体的サービス記述言語への、GSS700の適用の例について、ここで論じる。
サンプルOWL−Sサービス記述が付表Aで与えられ、Genie検索可能スキーマ700へのその記述の翻訳が付表Bで与えられる。付表Aの例では、その構造およびサブフィールドがOWL−Sスキーマでは直接は定義されず、http://www.daml.org/services/owl-s/1.0/ActorDefault.owlという別個のファイルで定義され、<!ENTITY actor “http:/ /www.daml.org/services/owl-s/1.0/ActorDefault.owl”>というコマンドを使って示される「actor」など、一定のフィールドがサービス記述中にあることに留意されたい。このようなエントリは、GSSスキーマ700では直接は定義されず、searchKeywordsフィールドに含まれ得る。
別の普及しているサービス記述言語は、WSDLである。WSDLは、1つは抽象であり1つは具象である2つの根本的段階で、ウェブサービスを記述する。各段階において、記述は、いくつかの構成物を使って、記述の再利用性を促進し、独立した設計問題を切り離す。WSDLの2つの普及バージョン、すなわち、WSDL1.1およびWSDL2.0がある。抽象レベルで、WSDLは、WSDLが送り、受信するメッセージに関してウェブサービスを記述する。メッセージは、通常はXMLスキーマである、タイプシステムを使う具体的ワイヤーフォーマットに依存せずに記述される。操作により、メッセージ交換パターンを1つまたは複数のメッセージと関連づける。メッセージ交換パターンは、送られる及び/または受信されるメッセージのシーケンスおよびカーディナリティ(cardinality)と、それらが誰に論理的に送られ、及び/または誰から受信されるかを識別する。インターフェースが、トランスポートまたはワイヤーフォーマットとは無関係に、操作を1つのグループにする。具象レベルで、バインドが、1つまたは複数のインターフェースに関するトランスポートおよびワイヤーフォーマットの詳細を指定する。エンドポイントが、ネットワークアドレスをバインドに関連づける。最終的に、サービスが、共通インターフェースを実装するエンドポイントを1つのグループにする。
2つのWSDLバージョンの間には、重要な違いがいくつかある。こうした違いは、記述言語へのさらなるセマンティクスの追加と、portTypeからインターフェース、ポートからエンドポイントへの変更などのようないくつかのメッセージ構成物の再命名と、バージョン2.0のXMLスキーマのタイプシステムを使って指定されるいくつかのメッセージ構成物の削除/廃止とを含む。2つのバージョンの間のこうした重要な違いを除くと、WSDL1.1からWSDL2.0への1対1のマッピングが存在し、ユーザが既存のWSDL1.1ドキュメントをバージョン2.0のファイルに変えるのを助けるいくつかの変換器が存在する。一態様において、GSS700は、WSDL2.0サービス記述をGSS700に変換するための機構を提供し、WSDL1.1からWSDL2.0への変換は、このような変換器に任せる。
OWL−Sのケースとは異なり、WSDLは、ServiceProfileをもたず、サービスの発見に必要とされる情報は、サービス記述全体から集められる必要がある。テーブル4には、GSSフィールドと、GSSフィールドがそこから抽出され得るWSDL2.0サービス記述の一部と、を示すための詳細が与えられている。テーブルに見られるように、servicenameおよびtextdescriptionなど、GSS700におけるいくつかのフィールドは、WSDLサービスのプロパティから取得することができ、hasInputおよびhasOutputなど、他のいくつかのGSSフィールドは、WSDLインターフェース構成要素のプロパティから導出することができる。
Figure 0005886376
WSDL1.1サービス記述のサンプルを、付表Cに示し、それに対応するWSDL2.0およびGenie検索可能スキーマ700を、それぞれ、付表Dおよび付表Eに示す。
UDDI(Universal Description, Discovery, and Integration)プロトコルは、ウェブサービスのスタックを備える関連標準のグループの中心的要素である。UDDI仕様は、サービス指向アーキテクチャのネットワークベースのソフトウェア構成要素を公開し発見する標準的方法を定義する。その開発は、企業ソフトウェアベンダおよび顧客からなるOASISコンソーシアムによって先導されている。
UDDIレジストリの機能的目的は、ウェブサービスについてのデータおよびメタデータを表現することである。レジストリは、公衆網上または組織の内部インフラストラクチャ内でのいずれで使用するためであっても、ウェブサービスを類別し、カタログし、管理するための、標準ベースの機構を提供するので、こうしたサービスは、他のアプリケーションによって発見し消費することができる。サービスベースのアプリケーションの中でのインダイレクション(indirection)を一般化した戦略の一部として、UDDIは、設計時間と実行時間の両方において、コードの再利用の増大とインフラストラクチャ管理の向上とを含む、いくつかの利益をITマネージャにもたらす。
UDDIレジストリによって使われるコア情報モデルは、いくつかのXMLスキーマにおいて定義される。XMLが選ばれたのは、データについて、プラットフォームに中立な見方をし、階層関係を中立に記述させるからである。XSDが選ばれたのは、豊富なデータタイプをサポートし、スキーマで表される情報モデルに基づいて情報を容易に記述し検証することができるからである。UDDI XSDは、UDDIレジストリの基本情報モデルと、対話フレームワークとを形成する。情報モデルの主要構成要素は、サービスのビジネス機能(businessServiceと呼ばれる)の記述と、サービスを公開した組織(businessEntity)についての情報と、サービスのプログラマティックインターフェース、またはAPIへの参照を含む、サービスの技術詳細(bindingTemplate)と、たとえばtModelsにおいて定義される分類、トランスポート、デジタル署名など、他の様々な属性またはメタデータとを含む。テーブル5では、GSSフィールドと、こうしたフィールドがそこから抽出され得るUDDIサービス記述の一部とを示す詳細が与えられている。
Figure 0005886376
「ユニバーサルプラグアンドプレイ」というフレーズから派生したUPnPは、家庭および企業環境内のデバイス向けの単純なピアツーピアネットワーキングを提供することを目指すネットワークプロトコルのセットである。UPnPは、TCP/IP、HTTP、XMLおよびSOAPなど、オープンなインターネットベース標準に基づいてプロトコルを定義することによって、この目標を達成する。UPnPプロトコルは、アドレス指定、サービス発見のための手順、サービス記述、ならびにサービス交換のための制御、イベント通知および提示を含む、ピアツーピアネットワーキングのほぼ全側面を定義する。
UPnPは、サービスを提供するデバイス(Device)、およびデバイスによって提供されるサービスをユーザがそれを通して制御することができる制御ポイント(Control point)という2つのクラスの機能的エンティティを定義する。Simple Service Discovery Protocol(SSDP)として知られる、UPnPのサービス発見プロトコルは、新規デバイスが、それ自体をそのネットワーク内の制御ポイントに広告することを可能にする。同様に、制御ポイントは、ネットワークに参加すると、SSDPを使って、ネットワーク内で関心を引くデバイスを検索する。制御ポイントは、サービスを発見した後、サービスの包括的記述(XMLで表される)を、サービス発見中に取得したURLから取り出す。このサービス記述ファイルは、組み込まれているサービスのリスト、ならびに制御、イベント通知および提示に関する情報に対するURLを含む。
UPnPのケースにおいて、デバイスは、ネットワークに追加されると、またはデバイスの広告を一新すると、NOTIFYメッセージをマルチキャスト(またはユニキャスト)する。NOTIFYメッセージは、以下のものを使う。
・General Event Notification Architecture(GENA)によって定義されるNOTIFY動詞
・HOSTヘッダー中のSSDP用にIANAによって予約されたマルチキャストアドレスおよびポート
・CACHE−CONTROLヘッダー中の広告の持続期間
・LOCATIONヘッダー中の、発見のための場所
・NT(通知タイプ)ヘッダー中の広告用の特定タイプ
・NTS(通知サブタイプ)ヘッダー中のサブタイプ
○広告用のssdp:alive(付表Fの例を参照)
○アップデート用のssdp:update(付表Gの例を参照)
○広告をキャンセルするためのssdp:byebye(付表Hの例を参照)
・USN(ユニークなシリアル番号unique serial number)ヘッダー中でのこの広告に対する一意のID
NOTIFYメッセージは、以下のフォーマットで与えられる。
NOTIFY*HTTP/1.1 HOST:(HostAddress):(ServicePort) CACHE-CONTROL:max-age=LifeTime LOCATION:ルートテ゛ハ゛イス用のUPnP記述に対するURL NT: 検索目標NTS: ssdp:alive USN: ユニークなシリアル番号上記において、
NOTIFY このメッセージがサービス広告であることを示す。
HOST 広告されるサービスのIPアドレスとポート番号とを与える。デバイスは通常、NOTIFYメッセージ用に239.255.255.250:1900を使う。
CACHE-CONTROL 広告されるサービスの存続時間を秒で設定する。
LOCATION ルートデバイス用UPnP記述へのURLを指定する。
NT 広告されるサービスの検索目標を指定する。
NTS SSDPの現在の状況を示す。
USN 広告を一意に識別するUUID。
他のタイプのサービス記述言語とは異なり、UPnPは、NOTIFYメッセージの一部として、サービス向けのいかなる名称も定義しないことに留意されたい。ただし、NOTIFYメッセージは、LOCATIONフィールド中にUPnP記述用のURLを含み、このドキュメントは、デバイスによって提供されるサービスの名称を含む、サービスについての追加情報を含む。
NOTIFYメッセージは、UPnP記述用のURLを含む。ノードは、サービスを公開するとき、NOTIFYメッセージのLOCATIONフィールドにあるUPnP記述から情報を抽出し、オーバレイ上で公開する必要もある。この情報は、XMLで指定される。記述は、2つの部分の中にあり、1つはデバイス用の記述、もう一つはデバイスによって提供される、ネストされたサービスごとの記述である。デバイス記述は、デバイスのタイプと、コンテナプロパティと、デバイスによって指定されるユーザインターフェース(UI)情報とを含む。デバイス記述は、XMLフォーマットである。サービスは、デバイス内の機能ユニットであり、コンテナに含まれる。サービス記述ファイルは、メソッドと状態変数(またはプロパティ)とを含み、OWL−SまたはWSDLファイルに含まれるものと同様である。
サービスの記述に使われるサンプルXMLファイルが、付表Iで与えられている。UPnPのケースにおいて、デバイスは、2つの情報セットを公開する必要がある。第1のセットは、NOTIFYメッセージから導出され、サービス記述の場所についての情報と、UPnP M−SEARCHクエリに回答するのに必要とされるNT/ST値とを含む。公開されるべき第2の情報セットは、デバイス/サービス記述ファイルからもたらされる。GSSフォーマットを使ってNOTIFYメッセージ中で情報を公開するために、公開側ノードは、図8に示すGSS800を作成しなければならない。
NOTIFYメッセージは、オーバレイにおいてデバイスを広告し、アップデートし、消去するのに使われる。次のステップは、デバイス/サービス記述ファイルを公開することである。付表Iは、XMLで書かれたUPnPデバイス記述ファイルの例を挙げており、対応するGSSは、付表Jに示してある。こうした付表に見ることができるように、デバイス記述ファイルは、デバイス、モデル、モデル名、製造元、およびモデルURIについての情報を含む。この情報に加え、デバイス記述ファイルは、<service></service>フィールドに封入されたデバイスによって提供されるサービスについての情報を含む。このフィールドは、サービス記述ファイル用のURIを含む、サービスについてのさらなる情報を含む。公開プロセスの一部として、サービス提供ピアは、この情報を抽出し、GSSの形でオーバレイ上で公開する必要もある。
異なる2つのスキーマ(または、この例におけるWSDLなど、同じ方式の、異なる2つのバージョンでさえも)が、同じドキュメント/クエリを、同じことを意味するが異なるやり方で記述することも可能であろう。たとえば、オーバレイ内のプリンタサービス(service1という)は、servicename=”myprinter”であるschema1を使って広告することができ、検索要求は、属性printername=”myprinter”である全サービス記述を見つけるために、schema2を使って発行することができる。単純な検索システムは、値「myprinter」に関連づけられた異なる属性をもつので、service1を戻すことはない。というのは、サービスを記述するのに使われるスキーマと、クエリを公式化するスキーマとは異なるからである。OWL−SおよびWSDLのケースにおける別の例では、こうしたスキーマは、共通して使われるフィールドを指すのに、それぞれ、textDescriptionおよびdocumentationなど、異なる属性名を利用する。このようなシナリオの1つの扱い方は、簡略化された汎用スキーマを1つ用意し、その全サービスおよびクエリがこのスキーマに従うことを強制することである。ただし、このような解決法は、あまりに制約的であり、新たな未定義の言語の要望に対処することができない。
GSS700は、この問題を扱うために、単純化した手法をとる。GSS700は、上述したように、たとえばservicename、textdescription、hasInput、hasOutputなど、共通して使われるものに対する標準属性名のリストを定義する。こうした属性に対して、GSS700は、固有サービス記述スキーマから対応する値を抽出し、標準属性名とともにオーバレイにおいて公開する。リスト中で具体的に定義されない他の属性に対しては、GSS700は、固有スキーマで定義される属性名を直接公開する。上で定義したプラグイン206(図2)は、この公開プロセスを助け、固有属性名を標準属性名に翻訳する。
問い合わせ(querying)は、公開と同じステップに従う。固有属性名に対するクエリが与えられると、プラグイン206は、標準属性のリストを調べ、存在する場合、固有属性名を標準のものに翻訳する。このクエリは、標準属性名をもつSEARCHコマンドを使ってオーバレイに送られる。先に記載したプリンタサービスの例では、「printername=myprinter」という形のクエリに対して、プラグインは、クエリを「servicename=myprinter」に変換し、オーバレイ上で、修正されたクエリを送ることになる。この時点で、検索の出力は、「myprinter」に関連づけられた同じ属性をもつので、service1を含むことになる。
したがって、正規化されたオーバレイスキーマ209の一例は、上述したGSS700を含むが、正規化されたオーバレイスキーマ209の上述の機能性を実施する、他の具体的スキーマも開発され得ることを理解されたい。
本出願において使われる際、「構成要素」、「モジュール」、「システム」などの用語は、ハードウェア、ファームウェア、ハードウェアとソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアなどだが、それに限定されないコンピュータ関連エンティティを含むことを意図している。たとえば、構成要素は、プロセッサ上で稼動するプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラム、および/またはコンピュータでよいが、それに限定されない。例として、コンピューティングデバイス上で稼動するアプリケーションおよびそのコンピューティングデバイス両方が構成要素となり得る。1つまたは複数の構成要素が実行プロセスおよび/またはスレッド中に存在してよく、構成要素は、1台のコンピュータに配置し、かつ/または2台以上のコンピュータの間に分散してよい。さらに、こうした構成要素は、様々なデータ構造が格納された様々なコンピュータ可読媒体から実行し得る。構成要素は、ローカルおよび/またはリモートプロセスによって、1つまたは複数のデータパケット、たとえば、ローカルシステム、分散型システム内の別の構成要素と、および/またはインターネットなどのネットワークを越えて、他のシステムと信号により対話する、ある構成要素からのデータをもつ信号に従って通信することができ得る。
さらに、様々な態様を、ワイヤード端末でもワイヤレス端末でもよい端末との関連で本明細書に記載してある。端末は、システム、デバイス、加入者ユニット、加入者局、移動局、モバイル、モバイルデバイス、リモートステーション、リモート端末、アクセス端末、ユーザ端末、端末、通信デバイス、ユーザエージェント、ユーザデバイス、またはユーザ機器(UE)と呼ぶこともできる。ワイヤレス端末は、セルラー電話、衛星電話、コードレス電話、セッション開始プロトコル(SIP)電話、無線ローカルループ(WLL)局、携帯情報端末(PDA)、無線接続機能をもつハンドヘルドデバイス、コンピューティングデバイス、または無線モデムに接続された他の処理デバイスでよい。さらに、様々な態様を、基地局との関連で、本明細書に記載してある。基地局は、ワイヤレス端末(1つまたは複数)との通信に使用することができ、アクセスポイント、ノードB、または他の何らかの用語で呼ばれてもよい。
さらに、「または」という用語は、排他的な「または」ではなく、包含的な「または」を意味することを意図している。つまり、特に指定がない限り、または文脈から明らかでない限り、「XがAまたはBを利用する」というフレーズは、自然な包含的置換のいずれも意味することを意図している。つまり、「XがAまたはBを利用する」というフレーズは、XがAを利用する、XがBを利用する、またはXがAおよびB両方を利用する、という事例のいずれによっても満たされる。さらに、本出願および添付の請求項において使われる冠詞「a」および「an」は概して、特に指定がない限り、または単数形を対象とすることが文脈から明らかでない限り、「1つまたは複数」を意味するものと企図されるべきである。
本明細書に記載する技法は、CDMA、TDMA、FDMA、OFDMA、SC−FDMAおよび他のシステムなど、様々なワイヤレス通信システムに用いられ得る。「システム」および「ネットワーク」という用語はしばしば、入れ換えて使われる。CDMAシステムは、たとえばユニバーサル地上無線アクセス(UTRA)、cdma2000などの無線技術を実装し得る。UTRAは、広帯域CDMA(W−CDMA)およびCDMAの他の変形体を含む。さらに、cdma2000は、IS−2000、IS−95およびIS−856標準をカバーする。TDMAシステムは、汎欧州デジタルモバイル電話方式(GSM(登録商標))などの無線技術を実装し得る。OFDMAシステムは、たとえばEvolved UTRA(E−UTRA)、ウルトラモバイルブロードバンド(UMB)、IEEE802.11(Wi−Fi)、IEEE802.16(WiMAX)、IEEE802.20、Flash−OFDMなどの無線技術を実装し得る。UTRAおよびE−UTRAは、ユニバーサルモバイル通信システム(UMTS)の一部である。3GPPロングタームエボリューション(LTE)は、E−UTRAを用いるUMTSのリリースであり、ダウンリンク上ではOFDMAを、およびアップリンク上ではSC−FDMAを利用する。UTRA、E−UTRA、UMTS、LTEおよびGSMは、「第3世代パートナーシッププロジェクト」(3GPP)という名称の組織からのドキュメントに記載されている。さらに、cdma2000およびUMBは、「第3世代パートナーシッププロジェクト2」(3GPP2)という名称の組織からのドキュメントに記載されている。さらに、このようなワイヤレス通信システムは、不対無認可スペクトル、802.xxワイヤレスLAN、ブルートゥースおよび他のあらゆる短距離または長距離、ワイヤレス通信技法をしばしば用いるピアツーピア(たとえば、モバイルツーモバイル)アドホックネットワークシステムをさらに含み得る。
いくつかのデバイス、構成要素、モジュールなどを含み得るシステムに関して、様々な態様または特徴を提示する。様々なシステムは、追加デバイス、構成要素、モジュールなどを含んでよく、かつ/または図面に関連して論じたデバイス、構成要素、モジュールなどのすべては含まなくてもよいことを理解されたい。こうした手法の組合せも用いられ得る。
本明細書で開示した態様に関連して記載した様々な例示的論理、論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラム可能ゲートアレイ(FPGA)または他のプログラム可能論理素子、離散ゲートもしくはトランジスタ論理、離散ハードウェア構成要素、または本明細書に記載した機能を実施するように設計されたその任意の組合せで実装され、または実施され得る。汎用プロセッサはマイクロプロセッサでよいが、代替形態では、プロセッサは、従来のどのプロセッサ、コントローラ、マイクロコントローラ、または状態マシンでもよい。プロセッサは、コンピューティングデバイスの組合せ、たとえば、DSPおよびマイクロプロセッサ、複数のマイクロプロセッサ、DSPコアを併用する1つもしくは複数のマイクロプロセッサ、または他のこのような任意の構成の組合せとしても実装され得る。さらに、少なくとも1つのプロセッサが、上述したステップおよび/またはアクションの1つまたは複数を実施するように動作可能な1つまたは複数のモジュールを備え得る。
さらに、本明細書で開示した態様に関連して記載した方法またはアルゴリズムのステップおよび/またはアクションは、直接ハードウェアとして、プロセッサによって実行されるソフトウェアモジュールとして、またはこの2つの組合せとしても実施することができ得る。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、取外し可能ディスク、CD−ROM、または当該分野において公知である他のどの形の記憶媒体の中にも存在し得る。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読むとともに情報を書き込めるように、プロセッサに結合され得る。代替形態では、記憶媒体は、プロセッサに統合され得る。さらに、一部の態様では、プロセッサおよび記憶媒体は、ASICに存在し得る。さらに、ASICは、ユーザ端末に存在し得る。代替態様では、プロセッサおよび記憶媒体は、離散構成要素としてユーザ端末に存在し得る。さらに、いくつかの態様では、方法またはアルゴリズムのステップおよび/またはアクションは、コンピュータプログラム製品に組み込まれ得る機械可読媒体および/またはコンピュータ可読媒体上に、コードおよび/または命令の1つまたは任意の組合せまたはセットとして存在し得る。
1つまたは複数の態様では、記載した機能は、ハードウェア、ソフトウェア、ファームウェア、またはその組合せで実装され得る。ソフトウェアで実装される場合、機能は、コンピュータ可読媒体に1つまたは複数の命令またはコードとして格納され、または送信され得る。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を容易にするどの媒体も含むコンピュータ記憶媒体および通信媒体両方を含む。記憶媒体は、コンピュータによってアクセスされ得る市販されているどの媒体でもよい。限定ではなく例として、このようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD−ROMもしくは他の光ディスク記憶、磁気ディスク記憶もしくは他の磁気記憶デバイス、または所望のプログラムコードを命令もしくはデータ構造の形で搬送し、もしくは格納するのに使われ、コンピュータによってアクセスされ得る他のどの媒体も備え得る。また、どの接続も、コンピュータ可読媒体と呼ばれ得る。たとえば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者線(DSL)、または赤外線、ラジオ、およびマイクロ波などの無線技術を使ってウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、ラジオ、およびマイクロ波などの無線技術は、媒体の定義に含まれる。本明細書で使用するディスク(disk)およびディスク(disc)は、コンパクトディスク(CD)、レーザディスク、光ディスク、デジタル多用途ディスク(DVD)、フロッピー(登録商標)ディスク、およびブルーレイディスクを含むが、ディスク(disk)は通常はデータを磁気的に再現し、ディスク(disc)は通常、データをレーザで光学的に再現する。上記の組合せも、コンピュータ可読媒体の範囲内に含まれるべきである。
上記開示では、例示的態様および/または態様を論じているが、記載した態様および/または添付の請求項によって定義される態様の範囲から逸脱することなく、本明細書において様々な変更および修正を行ってよいことに留意されたい。さらに、記載した態様および/または態様の要素は、単数形で記載され、権利請求される場合があるが、単数形への限定が明示的に記載されていない限り、複数形も企図される。さらに、特に記載のない限り、任意の態様および/または態様の全部または一部分が、他の任意の態様および/または態様の全部または一部分とともに利用され得る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[C1]
ネットワーク内でサービスを公開または発見する方法であって、
ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信することと、
前記固有サービス記述から1つまたは複数のキーワードを抽出することと、各キーワードは前記ネットワーク上でのサービス発見に必要とされる情報に対応し、
前記固有サービス記述から、前記1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出することと、
必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って、検索可能サービス記述を生成することと、前記必須フィールドは前記固有サービス記述から抽出された各キーワードを備え、前記キーワードとともに公開フィールドは各抽出されたキーワードに対応する前記抽出された追加情報を備え、
前記サービスを広告するために、前記ネットワークに前記検索可能サービス記述を公開することと、
を備える方法。
[C2]
前記正規化スキーマの前記必須フィールドおよび前記キーワードとともに公開フィールドは、それぞれ、複数の固有サービス記述言語のそれぞれにおける、1つまたは複数の対応するプロパティにマッピングされる、C1記載の方法。
[C3]
前記マッッピングは、前記固有サービス記述属性名に対応する複数の標準属性名から選択される標準属性名を選択することと、前記標準属性名を、前記固有サービス記述属性名に対応する、前記固有サービス記述から抽出された固有属性値に関連づけることと、をさらに備え、
記生成することは、前記標準属性名および前記対応する固有属性値をもつ前記検索可能サービス記述を生成することをさらに備える、C2記載の方法。
[C4]
前記マッピングは、前記固有サービス記述から前記固有サービス記述属性名と前記対応する固有属性値とを抽出することをさらに備え、前記生成することは、前記固有サービス記述属性名および前記対応する固有属性値をもつ前記検索可能サービス記述を生成することをさらに備える、C2記載の方法。
[C5]
前記検索可能サービス記述を生成することは、正規化された拡張マークアップ言語(XML)属性値のペアまたは資源記述フレームワーク(RDF:Resource Description Framework)トリプルを生成することをさらに備える、C1記載の方法。
[C6]
1つまたは複数のキーワードを抽出することは、サービス名に対応する第1のキーワードと、サービス記述言語に対応する第2のキーワードとを抽出することをさらに備え、
追加情報を抽出することは、各抽出されたキーワードに対応するキーワード特有情報または各抽出されたキーワードに対応するサービス特有情報のうちの1つまたは複数を抽出することをさらに備える、C1記載の方法。
[C7]
1つまたは複数のキーワードを抽出することは、追加検索キーワードを含むテキスト記述に対応する第3のキーワードと、前記サービスへのコンタクトの仕方を記述するコンタクト情報に対応する第4のキーワードと、前記サービスに関連があるとともに他のフィールドによって記述されない検索キーワードのリストに対応する第5のキーワードとのうちの1つまたは複数を抽出することをさらに備え、
キーワード特有情報を抽出することは、各キーワードが出現する出現回数を抽出することをさらに備え、
サービス特有情報を抽出することは、サービス評価またはコンタクト情報のうちの少なくとも1つを抽出することをさらに備える、C6に記載の方法。
[C8]
前記固有サービス記述から、前記1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数のオプション情報を抽出すること、をさらに備え、各オプション情報はサービス発見に必須でなく、
前記生成することは、オプションフィールドをさらに有する前記正規化スキーマに従って前記検索可能サービス記述を生成することをさらに備え、前記オプションフィールドは、各抽出されたキーワードに対応する各オプション情報を備える、
C1記載の方法。
[C9]
前記オプション情報は、
前記サービスが受け取る入力のタイプについての情報、
前記サービスが生成する出力のタイプについての情報、
前記サービスの前提条件および前提条件インスタンスに及ぶ範囲についての情報、
前記サービスの結果、およびどのような条件で前記出力が生成されるかのうちの1つについての情報、
前記サービスへのコンタクトの仕方についての情報、
前記サービスの公開元についての情報、および
前記サービスに関連があるとともに他のフィールドによって記述されない他のキーワードのリスト
のうちの少なくとも1つを備える、C8記載の方法。
[C10]
第2の固有サービス記述言語での固有サービスクエリを受信することと、
前記固有サービスクエリを、前記正規化スキーマに従って検索可能クエリに翻訳することと、
前記正規化スキーマでのクエリ結果を受信することと、
固有クエリ結果を定義するために、前記クエリ結果を、前記正規化スキーマから前記第2の固有サービス記述言語に翻訳することと、
前記固有クエリ結果を送信することと、
をさらに備える、C1記載の方法。
[C11]
前記ネットワークは分散型オーバレイネットワークである、C1記載の方法。
[C12]
前記ネットワークは発見サービスを提供するように構成されたサーバを備える、C1記載の方法。
[C13]
ネットワーク内でサービスを公開または発見するように構成された少なくとも1つのプロセッサであって、
ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信する第1のモジュールと、
前記固有サービス記述から1つまたは複数のキーワードを抽出する第2のモジュールと、各キーワードは、前記ネットワーク上でのサービス発見に必要とされる情報に対応し、
前記固有サービス記述から、前記1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出する第3のモジュールと、
必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って検索可能サービス記述を生成する第4のモジュールと、前記必須フィールドは前記固有サービス記述から抽出された各キーワードを備え、前記キーワードとともに公開フィールドは各抽出されたキーワードに対応する前記抽出された追加情報を備え、
前記サービスを広告するために、前記ネットワークに前記検索可能サービス記述を公開する第5のモジュールと、
を備えるプロセッサ。
[C14]
コンピュータに、ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信させる第1のコードセットと、
前記コンピュータに、前記固有サービス記述から1つまたは複数のキーワードを抽出させる第2のコードセットと、各キーワードは前記ネットワーク上でのサービス発見に必要とされる情報に対応し、
前記コンピュータに、前記固有サービス記述から、前記1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出させる第3のコードセットと、
前記コンピュータに、必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って検索可能サービス記述を生成させる第4のコードセットと、前記必須フィールドは前記固有サービス記述から抽出された各キーワードを備え、前記キーワードとともに公開フィールドは、各抽出キーワードに対応する前記抽出された追加情報を備え、
前記コンピュータに、前記サービスを広告するために、前記ネットワークに前記検索可能サービス記述を公開させる第5のコードセットと、
を備えるコンピュータ可読媒体を備えるコンピュータプログラム製品。
[C15]
ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信する手段と、
前記固有サービス記述から1つまたは複数のキーワードを抽出する手段と、各キーワードは前記ネットワーク上でのサービス発見に必要とされる情報に対応し、
前記固有サービス記述から、前記1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出する手段と、
必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って検索可能サービス記述を生成する手段と、前記必須フィールドは前記固有サービス記述から抽出された各キーワードを備え、前記キーワードとともに公開フィールドは各抽出キーワードに対応する前記抽出された追加情報を備え、
前記サービスを広告するために、前記ネットワークに前記検索可能サービス記述を公開する手段と、
を備える装置。
[C16]
ネットワーク内でサービスを公開する装置であって、
ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信する受信機と、
検索可能スキーマプラグイン構成要素と、前記検索可能スキーマプラグイン構成要素は、
前記固有サービス記述から1つまたは複数のキーワードを抽出し、各キーワードは前記ネットワーク上でのサービス発見に必要とされる情報に対応し、
前記固有サービス記述から、前記1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出し、
必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って検索可能サービス記述を生成し、前記必須フィールドは前記固有サービス記述から抽出された各キーワードを備え、前記キーワードとともに公開フィールドは各抽出されたキーワードに対応する前記抽出された追加情報を備え、
前記サービスを広告するために、前記ネットワークに前記検索可能サービス記述を公開する公開処理構成要素と、
を備える装置。
[C17]
前記検索可能スキーマプラグイン構成要素は、さらに、前記正規化スキーマの前記必須フィールドおよび前記キーワードとともに公開フィールドのそれぞれを、複数の固有サービス記述言語それぞれにおける1つまたは複数の対応するプロパティにマッピングする、C16に記載の装置。
[C18]
前記検索可能スキーマプラグイン構成要素は、さらに、
前記固有サービス記述属性名に対応する複数の標準属性名から選択される標準属性名を選択し、
前記標準属性名を、前記固有検索記述属性名に対応する前記固有サービス記述から抽出された固有属性値に関連づけ、
前記標準属性名および前記対応する固有属性値をもつ前記検索可能サービス記述を生成する、
C17記載の装置。
[C19]
検索可能スキーマプラグイン構成要素は、さらに、
前記固有サービス記述から前記固有サービス記述属性名と前記対応する固有属性値とを抽出し、
前記固有サービス記述属性名および前記対応する固有属性値をもつ前記検索可能サービス記述を生成する
C17記載の装置。
[C20]
前記検索可能スキーマプラグイン構成要素は、さらに、正規化された拡張マークアップ言語(XML)属性値のペアまたは資源記述フレームワーク(RDF:Resource Description Framework)トリプルを生成する、C16記載の装置。
[C21]
前記検索可能スキーマプラグイン構成要素は、さらに、
サービス名に対応する第1のキーワードと、サービス記述言語に対応する第2のキーワードとを抽出し、
各抽出されたキーワードに対応するキーワード特有情報または各抽出されたキーワードに対応するサービス特有情報のうちの1つまたは複数を抽出する、
C16記載の装置。
[C22]
前記検索可能スキーマプラグイン構成要素は、さらに、
追加検索キーワードを含むテキスト記述に対応する第3のキーワード、前記サービスへのコンタクトの仕方を記述するコンタクト情報に対応する第4のキーワードと、前記サービスに関連があるとともに他のフィールドによって記述されない検索キーワードのリストに対応する第5のキーワードとのうちの1つまたは複数を抽出し、
各キーワードの出現回数を抽出し、
サービス評価またはコンタクト情報のうちの少なくとも1つを抽出する、
C21記載の装置。
[C23]
前記検索可能スキーマプラグイン構成要素は、さらに、
前記1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数のオプション情報を、前記固有サービス記述から抽出し、各オプション情報はサービス発見に必須でなく、
オプションフィールドをさらに有する前記正規化スキーマに従って前記検索可能サービス記述を生成し、前記オプションフィールドは各抽出されたキーワードに対応する各オプション情報を備える、
C16記載の装置。
[C24]
前記オプション情報は、
前記サービスが受け取る入力のタイプについての情報、
前記サービスが生成する出力のタイプについての情報、
前記サービスの前提条件および前提条件インスタンスに及ぶ範囲についての情報、
前記サービスの結果、およびどのような条件で前記出力が生成されるかのうちの1つについての情報、
前記サービスへのコンタクトの仕方についての情報、
前記サービスの公開元についての情報、ならびに
前記サービスに関連があるとともに他のフィールドによって記述されない他のキーワードのリスト、
のうちの少なくとも1つを備える、C23記載の装置。
[C25]
第2の固有記述言語での固有サービスクエリを受信し、前記固有サービスクエリを、前記正規化スキーマに従って検索可能サービスクエリに翻訳し、前記正規化スキーマでのクエリ結果を受信し、固有クエリ結果を定義するために、前記クエリ結果を、前記正規化スキーマから前記第2の固有記述言語に翻訳し、前記固有クエリ結果を送信するクエリ処理構成要素、をさらに備えるC16記載の装置。
[C26]
前記ネットワークは分散型オーバレイネットワークである、C16記載の装置。
[C27]
前記ネットワークは発見サービスを提供するように構成されたサーバを備える、C16に記載装置。
[C28]
ネットワーク検索クエリを処理する方法であって、
固有サービス記述言語での固有サービスクエリを受信することと、
前記固有サービスクエリを、前記正規化スキーマに従って検索可能クエリに翻訳することと、
前記固有検索クエリによって識別されるサービスを求めてネットワークを検索することと、前記検索は前記正規化スキーマに従って実施され、
検索結果を、前記正規化スキーマから前記固有検索記述言語に翻訳することと、
を備える方法。
付表ABravo Airサービス用OWL−Sスキーマ
Figure 0005886376
Figure 0005886376
Figure 0005886376
Figure 0005886376
Figure 0005886376
Figure 0005886376
付表BBravo Airサービス用Genie検索可能スキーマ
Figure 0005886376
Figure 0005886376
Figure 0005886376
付表CStock Quotaサービス用WSDL1.1スキーマ
Figure 0005886376
Figure 0005886376
付表DStock QuoteサービスのWSDL1.1スキーマからWSDL2.0への変換[WSDLExample]からの例
Figure 0005886376
Figure 0005886376
付表EStock Quoteサービス用GSSスキーマ
Figure 0005886376
Figure 0005886376
付表FNOTIFYを使ってのUPnPデバイスの公開以下は、UPnPサービスを公開するUPnPコマンドを指定する:
NOTIFY*HTTP/1.1
HOST:(HostAddress):(ServicePort)
CACHE−CONTROL:max−age=LifeTime
LOCATION:ルートデバイス用UPnP記述に対するURL
NT:検索目標
NTS:ssdp:alive
USN:ユニークなシリアル番号この情報は、GSSで以下のように表される:
Figure 0005886376
この情報がGSSに変換されると、公開側ノードは、LOCATIONフィールドからXMLデバイス/サービス記述ファイルをダウンロードし、オーバレイ上で別個に公開する必要がある。
付表GNOTIFYを使ってのUPnPデバイスのアップデート以下は、UPnPサービスをアップデートするUPnPコマンドを指定する:
NOTIFY*HTTP/1.1
HOST:(HostAddress):(ServicePort)
CACHE−CONTROL:max−age=LifeTime
LOCATION:ルートデバイス用UPnP記述に対するURL
NT:検索目標
NTS:ssdp:update
USN:ユニークなシリアル番号この情報は、サービスがどのように公開されるかと同様に、以下のようにGSSで表される:
Figure 0005886376
この情報がGSSに変換されると、公開側ノードは、LOCATIONフィールドからXMLデバイス/サービス記述ファイルをダウンロードし、アップデートされた情報をオーバレイが確実にもつようにするために、再度オーバレイ上で公開する必要もある。
付表HNOTIFYを使ってのUPnPデバイスの消去以下は、UPnPサービスを消去するUPnPコマンドを指定する:
NOTIFY*HTTP/1.1
HOST:(HostAddress):(ServicePort)
NT:検索目標
NTS:ssdp:byebye
USN:ユニークなシリアル番号サービスを担当するピアは、デバイス/サービス記述ファイルのロケーションとともに、ピアが提供するサービスのリストを用いてテーブルを維持する必要がある。NOTIFYメッセージ(上記の通り)を使って消去コマンドが発行されると、担当ピアは、デバイス/サービス記述ファイルを取得し、ファイル中のキーワードごとに消去コマンドを送る必要がある。あるいは、格納側ノードが、存続期間が満了したときにキーワードを消去してよい。
付表IUPnPデバイス用の例示的XMLスキーマ
Figure 0005886376
Figure 0005886376
付表JXMLスキーマからGSSへの変換
Figure 0005886376

Claims (21)

  1. ネットワーク内でサービスを公開または発見する方法であって、前記方法はコンピュータデバイスが実行し、
    ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信することと、
    前記固有サービス記述から1つまたは複数のキーワードを抽出することと、各キーワードは前記ネットワーク上でのサービス発見に必要とされる情報に対応し、
    前記固有サービス記述から、前記1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出することと、
    必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って、検索可能サービス記述を生成することと、前記必須フィールドは前記固有サービス記述から抽出された各キーワードを備え、前記キーワードとともに公開フィールドは各抽出されたキーワードに対応する前記抽出された追加情報を備え、
    前記サービスを広告するために、前記ネットワークに前記検索可能サービス記述を公開することと、
    第2の固有サービス記述言語での固有サービスクエリを受信することと、
    前記固有サービスクエリを、前記正規化スキーマに従って検索可能クエリに翻訳することと、前記検索可能クエリに合致するサービスを求めて前記ネットワークの検索が実施され、
    を備え、
    前記正規化スキーマの前記必須フィールドおよび前記キーワードとともに公開フィールドは、それぞれ、複数の固有サービス記述言語のそれぞれにおける、1つまたは複数の対応する属性にマッピングされ、
    前記マッピングは、各固有サービス記述属性名に対し標準属性名を定義し、
    前記1つまたは複数のキーワードを抽出することは、前記標準属性名にマッピングされた前記固有サービス記述属性名に対応する固有属性値を抽出することを備え、
    前記生成することは、
    前記標準属性名に、前記固有サービス記述から抽出された前記固有属性値を関連づけることと、
    前記標準属性名および前記対応する固有属性値をもつ前記検索可能サービス記述を生成することと、を備える、方法。
  2. 前記検索可能サービス記述を生成することは、正規化された拡張マークアップ言語(XML)属性値のペアまたはリソース記述フレームワーク(RDF:Resource Description Framework)トリプルを生成することをさらに備える、請求項1記載の方法。
  3. 1つまたは複数のキーワードを抽出することは、サービス名に対応する第1のキーワードと、サービス記述言語に対応する第2のキーワードとを抽出することをさらに備え、
    追加情報を抽出することは、各抽出されたキーワードに対応するキーワード特有情報または各抽出されたキーワードに対応するサービス特有情報のうちの1つまたは複数を抽出することをさらに備える、請求項1記載の方法。
  4. 1つまたは複数のキーワードを抽出することは、追加検索キーワードを含むテキスト記述に対応する第3のキーワードと、前記サービスへのコンタクトの仕方を記述するコンタクト情報に対応する第4のキーワードと、前記サービスに関連があるとともに他のフィールドによって記述されない検索キーワードのリストに対応する第5のキーワードとのうちの1つまたは複数を抽出することをさらに備え、
    キーワード特有情報を抽出することは、各キーワードが出現する出現回数を抽出することをさらに備え、
    サービス特有情報を抽出することは、サービス評価またはコンタクト情報のうちの少なくとも1つを抽出することをさらに備える、請求項3に記載の方法。
  5. 前記固有サービス記述から、前記1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数のオプション情報を抽出すること、をさらに備え、各オプション情報はサービス発見に必須でなく、
    前記生成することは、オプションフィールドをさらに有する前記正規化スキーマに従って前記検索可能サービス記述を生成することをさらに備え、前記オプションフィールドは、各抽出されたキーワードに対応する各オプション情報を備える、
    請求項1記載の方法。
  6. 前記オプション情報は、
    前記サービスが受け取る入力のタイプについての情報、
    前記サービスが生成する出力のタイプについての情報、
    前記サービスの前提条件および前提条件インスタンスに及ぶ範囲についての情報、
    前記サービスの結果、およびどのような条件で前記出力が生成されるかのうちの1つについての情報、
    前記サービスへのコンタクトの仕方についての情報、
    前記サービスの公開元についての情報、および
    前記サービスに関連があるとともに他のフィールドによって記述されない他のキーワードのリスト
    のうちの少なくとも1つを備える、請求項5記載の方法。
  7. 前記正規化スキーマでのクエリ結果を受信することと、
    固有クエリ結果を定義するために、前記クエリ結果を、前記正規化スキーマから前記第2の固有サービス記述言語に翻訳することと、
    前記固有クエリ結果を送信することと、
    をさらに備える、請求項1記載の方法。
  8. 前記ネットワークは分散型オーバレイネットワークである、請求項1記載の方法。
  9. 前記ネットワークは発見サービスを提供するように構成されたサーバを備える、請求項1記載の方法。
  10. ネットワーク内でサービスを公開または発見するように構成された少なくとも1つのプロセッサであって、
    ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信する第1のモジュールと、
    前記固有サービス記述から1つまたは複数のキーワードを抽出する第2のモジュールと、各キーワードは、前記ネットワーク上でのサービス発見に必要とされる情報に対応し、
    前記固有サービス記述から、前記1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出する第3のモジュールと、
    必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って検索可能サービス記述を生成する第4のモジュールと、前記必須フィールドは前記固有サービス記述から抽出された各キーワードを備え、前記キーワードとともに公開フィールドは各抽出されたキーワードに対応する前記抽出された追加情報を備え、
    前記サービスを広告するために、前記ネットワークに前記検索可能サービス記述を公開する第5のモジュールと、
    第2の固有サービス記述言語での固有サービスクエリを受信し、前記固有サービスクエリを、前記正規化スキーマに従って検索可能クエリに翻訳する第6のモジュールと、前記検索可能クエリに合致するサービスを求めて前記ネットワークの検索が実施され、
    を備え、
    前記正規化スキーマの前記必須フィールドおよび前記キーワードとともに公開フィールドは、それぞれ、複数の固有サービス記述言語のそれぞれにおける、1つまたは複数の対応する属性にマッピングされ、
    前記マッピングは、各固有サービス記述属性名に対し標準属性名を定義し、
    前記第2のモジュールは、前記標準属性名にマッピングされた前記固有サービス記述属性名に対応する固有属性値を抽出し、
    前記第4のモジュールは、
    前記標準属性名に、前記固有サービス記述から抽出された前記固有属性値を関連づけ、
    前記標準属性名および前記対応する固有属性値をもつ前記検索可能サービス記述を生成する、プロセッサ。
  11. コンピュータに、ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信させる第1のコードセットと、
    前記コンピュータに、前記固有サービス記述から1つまたは複数のキーワードを抽出させる第2のコードセットと、各キーワードは前記ネットワーク上でのサービス発見に必要とされる情報に対応し、
    前記コンピュータに、前記固有サービス記述から、前記1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出させる第3のコードセットと、
    前記コンピュータに、必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って検索可能サービス記述を生成させる第4のコードセットと、前記必須フィールドは前記固有サービス記述から抽出された各キーワードを備え、前記キーワードとともに公開フィールドは、各抽出キーワードに対応する前記抽出された追加情報を備え、
    前記コンピュータに、前記サービスを広告するために、前記ネットワークに前記検索可能サービス記述を公開させる第5のコードセットと、
    前記コンピュータに、第2の固有サービス記述言語での固有サービスクエリを受信させ、前記固有サービスクエリを、前記正規化スキーマに従って検索可能クエリに翻訳させる第6のコードセットと、前記検索可能クエリに合致するサービスを求めて前記ネットワークの検索が実施され、
    を備え、
    前記正規化スキーマの前記必須フィールドおよび前記キーワードとともに公開フィールドは、それぞれ、複数の固有サービス記述言語のそれぞれにおける、1つまたは複数の対応する属性にマッピングされ、
    前記マッピングは、各固有サービス記述属性名に対し標準属性名を定義し、
    1つまたは複数のキーワードを抽出することは、前記標準属性名にマッピングされた前記固有サービス記述属性名に対応する固有属性値を抽出することを備え、
    前記生成することは、
    前記標準属性名に、前記固有サービス記述から抽出された前記固有属性値を関連づけることと、
    前記標準属性名および前記対応する固有属性値をもつ前記検索可能サービス記述を生成することと、を備えるコンピュータプログラム。
  12. ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信する手段と、
    前記固有サービス記述から1つまたは複数のキーワードを抽出する手段と、各キーワードは前記ネットワーク上でのサービス発見に必要とされる情報に対応し、
    前記固有サービス記述から、前記1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出する手段と、
    必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って検索可能サービス記述を生成する手段と、前記必須フィールドは前記固有サービス記述から抽出された各キーワードを備え、前記キーワードとともに公開フィールドは各抽出キーワードに対応する前記抽出された追加情報を備え、
    前記サービスを広告するために、前記ネットワークに前記検索可能サービス記述を公開する手段と、
    第2の固有サービス記述言語での固有サービスクエリを受信し、前記固有サービスクエリを、前記正規化スキーマに従って検索可能クエリに翻訳する手段と、前記検索可能クエリに合致するサービスを求めて前記ネットワークの検索が実施され、
    を備え、
    前記正規化スキーマの前記必須フィールドおよび前記キーワードとともに公開フィールドは、それぞれ、複数の固有サービス記述言語のそれぞれにおける、1つまたは複数の対応する属性にマッピングされ、
    前記マッピングは、各固有サービス記述属性名に対し標準属性名を定義し、
    前記1つまたは複数のキーワードを抽出する手段は、前記標準属性名にマッピングされた前記固有サービス記述属性名に対応する固有属性値を抽出する手段を備え、
    前記生成する手段は、
    前記標準属性名に、前記固有サービス記述から抽出された前記固有属性値を関連づける手段と、
    前記標準属性名および前記対応する固有属性値をもつ前記検索可能サービス記述を生成する手段と、を備える装置。
  13. ネットワーク内でサービスを公開する装置であって、
    ネットワーク内での公開のために、第1のサービス記述言語での、サービスの固有サービス記述を受信する受信機と、
    検索可能スキーマプラグイン構成要素と、前記検索可能スキーマプラグイン構成要素は、
    前記固有サービス記述から1つまたは複数のキーワードを抽出し、各キーワードは前記ネットワーク上でのサービス発見に必要とされる情報に対応し、
    前記固有サービス記述から、前記1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数の追加情報を抽出し、
    必須フィールドとキーワードとともに公開フィールドとをもつ正規化スキーマに従って検索可能サービス記述を生成し、前記必須フィールドは前記固有サービス記述から抽出された各キーワードを備え、前記キーワードとともに公開フィールドは各抽出されたキーワードに対応する前記抽出された追加情報を備え、
    前記サービスを広告するために、前記ネットワークに前記検索可能サービス記述を公開する公開処理構成要素と、
    第2の固有記述言語での固有サービスクエリを受信し、前記固有サービスクエリを、前記正規化スキーマに従って検索可能サービスクエリに翻訳するクエリ処理構成要素と、前記検索可能クエリに合致するサービスを求めて前記ネットワークの検索が実施され、
    を備え、
    前記正規化スキーマの前記必須フィールドおよび前記キーワードとともに公開フィールドは、それぞれ、複数の固有サービス記述言語のそれぞれにおける、1つまたは複数の対応する属性にマッピングされ、
    前記マッピングは、各固有サービス記述属性名に対し標準属性名を定義し、
    前記1つまたは複数のキーワードを抽出することは、前記標準属性名にマッピングされた前記固有サービス記述属性名に対応する固有属性値を抽出することを備え、
    前記生成することは、
    前記標準属性名に、前記固有サービス記述から抽出された前記固有属性値を関連づけることと、
    前記標準属性名および前記対応する固有属性値をもつ前記検索可能サービス記述を生成することと、を備える装置。
  14. 前記検索可能スキーマプラグイン構成要素は、さらに、正規化された拡張マークアップ言語(XML)属性値のペアまたはリソース記述フレームワーク(RDF:Resource Description Framework)トリプルを生成する、請求項13記載の装置。
  15. 前記検索可能スキーマプラグイン構成要素は、さらに、
    サービス名に対応する第1のキーワードと、サービス記述言語に対応する第2のキーワードとを抽出し、
    各抽出されたキーワードに対応するキーワード特有情報または各抽出されたキーワードに対応するサービス特有情報のうちの1つまたは複数を抽出する、
    請求項13記載の装置。
  16. 前記検索可能スキーマプラグイン構成要素は、さらに、
    追加検索キーワードを含むテキスト記述に対応する第3のキーワード、前記サービスへのコンタクトの仕方を記述するコンタクト情報に対応する第4のキーワードと、前記サービスに関連があるとともに他のフィールドによって記述されない検索キーワードのリストに対応する第5のキーワードとのうちの1つまたは複数を抽出し、
    各キーワードの出現回数を抽出し、
    サービス評価またはコンタクト情報のうちの少なくとも1つを抽出する、
    請求項15記載の装置。
  17. 前記検索可能スキーマプラグイン構成要素は、さらに、
    前記1つまたは複数の抽出されたキーワードのそれぞれに対応する1つまたは複数のオプション情報を、前記固有サービス記述から抽出し、各オプション情報はサービス発見に必須でなく、
    オプションフィールドをさらに有する前記正規化スキーマに従って前記検索可能サービス記述を生成し、前記オプションフィールドは各抽出されたキーワードに対応する各オプション情報を備える、
    請求項13記載の装置。
  18. 前記オプション情報は、
    前記サービスが受け取る入力のタイプについての情報、
    前記サービスが生成する出力のタイプについての情報、
    前記サービスの前提条件および前提条件インスタンスに及ぶ範囲についての情報、
    前記サービスの結果、およびどのような条件で前記出力が生成されるかのうちの1つについての情報、
    前記サービスへのコンタクトの仕方についての情報、
    前記サービスの公開元についての情報、ならびに
    前記サービスに関連があるとともに他のフィールドによって記述されない他のキーワードのリスト、
    のうちの少なくとも1つを備える、請求項17記載の装置。
  19. 前記クエリ処理構成要素は、さらに、前記正規化スキーマでのクエリ結果を受信し、固有クエリ結果を定義するために、前記クエリ結果を、前記正規化スキーマから前記第2の固有記述言語に翻訳し、前記固有クエリ結果を送信する、請求項13記載の装置。
  20. 前記ネットワークは分散型オーバレイネットワークである、請求項13記載の装置。
  21. 前記ネットワークは発見サービスを提供するように構成されたサーバを備える、請求項13に記載装置。
JP2014143385A 2009-06-11 2014-07-11 構造化メタデータに基づく発見を公開するプラグインモデルのための方法および装置 Expired - Fee Related JP5886376B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US18631909P 2009-06-11 2009-06-11
US61/186,319 2009-06-11
US12/797,940 2010-06-10
US12/797,940 US9043409B2 (en) 2009-06-11 2010-06-10 Methods and apparatus for a plug-in model for publishing structured meta-data based discovery

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2012515206A Division JP2012530299A (ja) 2009-06-11 2010-06-11 構造化メタデータに基づく発見を公開するプラグインモデルのための方法および装置

Publications (2)

Publication Number Publication Date
JP2014241141A JP2014241141A (ja) 2014-12-25
JP5886376B2 true JP5886376B2 (ja) 2016-03-22

Family

ID=42988180

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2012515206A Withdrawn JP2012530299A (ja) 2009-06-11 2010-06-11 構造化メタデータに基づく発見を公開するプラグインモデルのための方法および装置
JP2014143385A Expired - Fee Related JP5886376B2 (ja) 2009-06-11 2014-07-11 構造化メタデータに基づく発見を公開するプラグインモデルのための方法および装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2012515206A Withdrawn JP2012530299A (ja) 2009-06-11 2010-06-11 構造化メタデータに基づく発見を公開するプラグインモデルのための方法および装置

Country Status (7)

Country Link
US (1) US9043409B2 (ja)
EP (1) EP2441234A1 (ja)
JP (2) JP2012530299A (ja)
KR (1) KR101357704B1 (ja)
CN (1) CN102461125B (ja)
TW (1) TW201108006A (ja)
WO (1) WO2010144889A1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9547676B2 (en) 2010-03-30 2017-01-17 Disos Pty Ltd. Cloud computing operating system and method
US20120158772A1 (en) * 2010-12-20 2012-06-21 Sap Ag Automated generation of structured service descriptions from semi-structured enterprise service repositories
JP5874214B2 (ja) * 2011-06-24 2016-03-02 ソニー株式会社 情報処理装置、プログラム、情報処理方法及び情報処理システム
CN103888954A (zh) * 2012-12-20 2014-06-25 中国人民解放军总参谋部第六十一研究所 一种面向服务的无线电架构sora
US20140316808A1 (en) * 2013-04-23 2014-10-23 Lexmark International Technology Sa Cross-Enterprise Electronic Healthcare Document Sharing
US9913308B2 (en) 2013-10-28 2018-03-06 Koninklijke Kpn N.V. Device-to-device discovery and control in a wide area network
CN103716308B (zh) * 2013-12-17 2017-04-12 北京京东尚科信息技术有限公司 一种多协议平台通信方法及多协议平台
US10372689B1 (en) * 2014-08-04 2019-08-06 Intuit, Inc. Consumer-defined service endpoints
US10353955B2 (en) * 2014-11-06 2019-07-16 Lexisnexis, A Division Of Reed Elsevier Inc. Systems and methods for normalized schema comparison
US10455401B2 (en) * 2015-02-24 2019-10-22 Apple Inc. Neighbor awareness networking datapath—reciprocation and coexistence
CN107667544B (zh) * 2015-06-04 2021-11-09 瑞典爱立信有限公司 控制移动终端的通信模式
CN105426200B (zh) * 2015-10-30 2018-11-09 小米科技有限责任公司 通讯模组固件和插件生成方法及装置
CN109710814B (zh) * 2018-12-17 2021-09-03 航天恒星科技有限公司 一种多源遥感数据归档处理方法及装置
US12058193B2 (en) * 2021-06-30 2024-08-06 Tencent America LLC Bidirectional presentation datastream
KR102692238B1 (ko) * 2022-05-11 2024-08-06 (주)투비소프트 Ui 개발 툴이 탑재된 전자 단말 장치 및 그 동작 방법
KR102683141B1 (ko) * 2022-05-18 2024-07-09 (주)투비소프트 Ui 설계안에 대한 이미지 분석을 통해 ui 컴포넌트 자동 생성 기능을 제공할 수 있는 ui 개발 툴이 탑재된 전자 단말 장치 및 그 동작 방법

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6256623B1 (en) 1998-06-22 2001-07-03 Microsoft Corporation Network search access construct for accessing web-based search services
JP2002063054A (ja) * 2000-08-17 2002-02-28 Nippon Telegr & Teleph Corp <Ntt> オペレーションシステム間情報流通用共通モデル構築方法
FR2813471B1 (fr) 2000-08-31 2002-12-20 Schneider Automation Systeme de communication d'un equipement d'automatisme base sur le protocole soap
US6781567B2 (en) 2000-09-29 2004-08-24 Seiko Epson Corporation Driving method for electro-optical device, electro-optical device, and electronic apparatus
TWI280488B (en) 2000-09-29 2007-05-01 Victor Hsieh Online intelligent information comparison agent of multilingual electronic data sources over inter-connected computer networks
JP2002196990A (ja) * 2000-12-27 2002-07-12 Kddi Corp サービス発見プロトコル変換ゲートウェイ
US7149732B2 (en) 2001-10-12 2006-12-12 Microsoft Corporation Clustering web queries
US20030172127A1 (en) * 2002-02-06 2003-09-11 Northrup Charles J. Execution of process by references to directory service
JP2003304523A (ja) 2002-02-08 2003-10-24 Ntt Docomo Inc 情報配信システム、情報配信方法、情報配信サーバ、コンテンツ配信サーバ及び端末
US7054857B2 (en) 2002-05-08 2006-05-30 Overture Services, Inc. Use of extensible markup language in a system and method for influencing a position on a search result list generated by a computer network search engine
CN100418088C (zh) 2002-09-03 2008-09-10 富士通株式会社 检索处理系统及方法
CN1181649C (zh) 2002-09-18 2004-12-22 联想(北京)有限公司 家庭网络中不同子网设备间描述信息的转换方法
JP2004199515A (ja) 2002-12-19 2004-07-15 Fuji Xerox Co Ltd サービス検索装置、サービス検索方法、クライアント装置
US20040128344A1 (en) 2002-12-30 2004-07-01 Nokia Corporation Content and service registration, query and subscription, and notification in networks
US7007014B2 (en) 2003-04-04 2006-02-28 Yahoo! Inc. Canonicalization of terms in a keyword-based presentation system
JP4401679B2 (ja) 2003-05-12 2010-01-20 キヤノン株式会社 制御装置、制御プログラム、制御方法
JP4661047B2 (ja) 2003-05-30 2011-03-30 ソニー株式会社 情報処理装置及び情報処理方法、並びにコンピュータ・プログラム
US20050097087A1 (en) * 2003-11-03 2005-05-05 Punaganti Venkata Murali K. System and method for providing a unified framework for service discovery
US7656822B1 (en) * 2003-12-22 2010-02-02 Sun Microsystems, Inc. Method and apparatus for decentralized device and service description and discovery
KR100636380B1 (ko) * 2004-12-17 2006-10-19 한국전자통신연구원 이종의 홈네트워크 미들웨어상에 접속해 있는 홈디바이스들간의 상호 연동을 위한 홈네트워크 범용미들웨어 브릿지 시스템 및 그 방법
CN100456286C (zh) 2005-01-17 2009-01-28 马岩 一种通用的文件搜索系统及方法
EP1681823A1 (en) * 2005-01-17 2006-07-19 Sap Ag A method and a system to organize and manage a semantic web service discovery
WO2006127197A2 (en) 2005-04-26 2006-11-30 Matsushita Electric Industrial Co., Ltd. Mechanism to support transparent roaming in heterogeneous service discovery systems
WO2007005131A2 (en) 2005-05-19 2007-01-11 Matsushita Electric Industrial Co., Ltd. System and method for multiprotocol service discovery in a computer network
US20060277189A1 (en) * 2005-06-02 2006-12-07 Microsoft Corporation Translation of search result display elements
JP2007072654A (ja) 2005-09-06 2007-03-22 Yokogawa Electric Corp サービス検索装置及びサービス検索システム
EP1835417A1 (en) * 2006-03-13 2007-09-19 Alcatel Lucent Web service with associated lexical tree
US20070280206A1 (en) 2006-05-31 2007-12-06 Samsung Electronics Co., Ltd. Method for consuming heterogeneous services on heterogeneous devices using script plugins
EP1865687B1 (en) * 2006-06-06 2011-05-11 Koninklijke KPN N.V. Proxy-bridge for connecting different types of devices
US7831586B2 (en) * 2006-06-09 2010-11-09 Ebay Inc. System and method for application programming interfaces for keyword extraction and contextual advertisement generation
US20080086490A1 (en) * 2006-10-04 2008-04-10 Sap Ag Discovery of services matching a service request
TWI328965B (en) 2006-11-06 2010-08-11 Arcadyan Technology Corp Method for creating a customized tv/radio service from user-selected contents and playback device using the same
JP2010515338A (ja) * 2006-12-28 2010-05-06 テレフオンアクチーボラゲット エル エム エリクソン(パブル) サービス発見のための方法と装置
US20080244514A1 (en) * 2007-03-29 2008-10-02 Microsoft Corporation Scriptable object model for network based services
US20090006311A1 (en) 2007-06-28 2009-01-01 Yahoo! Inc. Automated system to improve search engine optimization on web pages
US8046355B2 (en) 2007-09-04 2011-10-25 Google Inc. Word decompounder
US7769749B2 (en) 2007-11-13 2010-08-03 Yahoo! Inc. Web page categorization using graph-based term selection
US7987163B2 (en) * 2008-02-12 2011-07-26 Bae Systems Information And Electronic Systems Integration Inc. Apparatus and method for dynamic web service discovery
CN101237457B (zh) 2008-03-14 2010-09-29 华为技术有限公司 一种服务发现方法、系统及设备
US8560563B2 (en) * 2008-07-09 2013-10-15 International Business Machines Corporation Apparatus and method of semantic service correlation system
US8185536B2 (en) * 2009-01-30 2012-05-22 Hewlett-Packard Development Company, L.P. Rank-order service providers based on desired service properties
US8255405B2 (en) * 2009-01-30 2012-08-28 Hewlett-Packard Development Company, L.P. Term extraction from service description documents
US10754896B2 (en) * 2009-03-24 2020-08-25 Micro Focus Llc Transforming a description of services for web services

Also Published As

Publication number Publication date
JP2014241141A (ja) 2014-12-25
KR20120028373A (ko) 2012-03-22
US9043409B2 (en) 2015-05-26
US20110072055A1 (en) 2011-03-24
CN102461125B (zh) 2015-11-25
KR101357704B1 (ko) 2014-02-03
JP2012530299A (ja) 2012-11-29
WO2010144889A1 (en) 2010-12-16
CN102461125A (zh) 2012-05-16
EP2441234A1 (en) 2012-04-18
TW201108006A (en) 2011-03-01

Similar Documents

Publication Publication Date Title
JP5886376B2 (ja) 構造化メタデータに基づく発見を公開するプラグインモデルのための方法および装置
US20050193106A1 (en) Service discovery and delivery for ad-hoc networks
KR101079570B1 (ko) 검색 웹 서비스
EP1253766B1 (en) Peer group name server
US8423671B2 (en) Middleware device and method of supporting compatibility of devices in home network
JP2010503088A (ja) 連結ディスカバリ・ウェブ・サービス
US7805485B2 (en) Web services interface extension channel
Elenius et al. Ontology-based Service Discovery in P2P Networks.
Gu et al. An architecture for flexible service discovery in OCTOPUS
Lin et al. Osgi-based smart home architecture for heterogeneous network
US20110016226A1 (en) Methods and Apparatus for Updating Index Information While Adding and Updating Documents in a Distributed Network
Thompson et al. Service description for pervasive service discovery
KR100965458B1 (ko) 유비쿼터스 서브네트워크 연동을 위한 브로커
Blefari-Melazzi et al. Context-aware service discovery in mobile heterogeneous environments
Pantazoglou et al. Discovering web services and JXTA peer-to-peer services in a unified manner
Li et al. Combine concept of agent and service to build distributed object-oriented system
Leitner et al. Towards flexible interface mediation for dynamic service invocations
Wang et al. A semantic service discovery approach for ubiquitous computing
Livingstone Service Discovery in Pervasive Systems
Bashah et al. Service Discovery for mobile multi-domain multilanguage environments
Schmitt et al. An extensible framework for context-aware communication management using heterogeneous sensor networks
Wang et al. Design issues of semantic service discovery for ubiquitous computing
Leitner et al. A Mediator-Based Approach to Resolving Interface Heterogeneity of Web Services
Elenius Service discovery in peer-to-peer networks
Zhu Scalability of p2p based mobile web services discovery

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150630

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20150930

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151029

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160112

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160210

R150 Certificate of patent or registration of utility model

Ref document number: 5886376

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees