(57)【要約】  メディア・リポジトリ内に複数のメディア・データ・ファイルを格納するメディア配布システムおよび方法。クライアント電子装置のユーザは、複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることが可能となる。クライアント電子装置のユーザは、メディア配布システムに関連する１つまたは複数の加入アカウントを管理することが可能となる。
2010503080.tif 000002
【特許請求の範囲】
【請求項１】
複数のメディア・データ・ファイルを格納するメディア・リポジトリと、
アカウント・アプリケーション・プログラミング・インターフェースであって、
クライアント電子装置のユーザが、前記複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にし、
前記クライアント電子装置の前記ユーザが、前記メディア配布システムに関連する１つまたは複数の加入アカウントを管理することを可能にする
ように構成されたアカウント・アプリケーション・プログラミング・インターフェースと
を備えるメディア配布システム。
【請求項２】
前記アカウント・アプリケーション・プログラミング・インターフェースが、１つまたは複数のクライアント・スタブと通信するように構成される１つまたは複数のサーバ・スタブを含む請求項１に記載のメディア配布システム。
【請求項３】
前記アカウント・アプリケーション・プログラミング・インターフェースがさらに、
標準化プロトコルを使用して前記クライアント電子装置からデータ要求を受信し、
受信した前記データ要求に応答して、データをサード・パーティ使用可能フォーマットで前記クライアント電子装置に提供する
ように構成される請求項１に記載のメディア配布システム。
【請求項４】
メディア・リポジトリ内に複数のメディア・データ・ファイルを格納すること、
クライアント電子装置のユーザが、前記複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にすること、および
前記クライアント電子装置の前記ユーザが、前記メディア配布システムに関連する１つまたは複数の加入アカウントを管理することを可能にすること
を含む方法。
【請求項５】
複数のメディア・データ・ファイルを格納するメディア・リポジトリと、
ライブラリ管理アプリケーション・プログラミング・インターフェースであって、
クライアント電子装置のユーザが、前記複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にし、
前記クライアント電子装置の前記ユーザが、前記メディア配布システムに関連する１つまたは複数のメディア・ライブラリを管理することを可能にする
ように構成されたライブラリ管理アプリケーション・プログラミング・インターフェースと
を備えるメディア配布システム。
【請求項６】
前記ライブラリ管理アプリケーション・プログラミング・インターフェースが、１つまたは複数のクライアント・スタブと通信するように構成される１つまたは複数のサーバ・スタブを含む請求項５に記載のメディア配布システム。
【請求項７】
前記ライブラリ管理アプリケーション・プログラミング・インターフェースがさらに、
標準化プロトコルを使用して前記クライアント電子装置からデータ要求を受信し、
受信した前記データ要求に応答して、データをサード・パーティ使用可能フォーマットで前記クライアント電子装置に提供する
ように構成される請求項５に記載のメディア配布システム。
【請求項８】
メディア・リポジトリ内に複数のメディア・データ・ファイルを格納すること、
クライアント電子装置のユーザが、前記複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にすること、および
前記クライアント電子装置の前記ユーザが、前記メディア配布システムに関連する１つまたは複数のメディア・ライブラリを管理することを可能にすること
を含む方法。
【請求項９】
複数のメディア・データ・ファイルを格納するメディア・リポジトリと、
メタデータ・アプリケーション・プログラミング・インターフェースであって、
クライアント電子装置のユーザが、前記複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にし、
前記クライアント電子装置の前記ユーザが、１つまたは複数の検索語句を定義することを可能にし、
前記１つまたは複数の検索語句に基づいて、前記複数のメディア・データ・ファイルの少なくとも一部に対して照会を実行し、
結果セットを生成し、
前記結果セットの一部を、結果セット全体未満となるように前記ユーザに対して表示する
ように構成されたメタデータ・アプリケーション・プログラミング・インターフェースと
を備えるメディア配布システム。
【請求項１０】
前記メタデータ・アプリケーション・プログラミング・インターフェースが、１つまたは複数のクライアント・スタブと通信するように構成される１つまたは複数のサーバ・スタブを含む請求項９に記載のメディア配布システム。
【請求項１１】
前記メタデータ・アプリケーション・プログラミング・インターフェースがさらに、
標準化プロトコルを使用して前記クライアント電子装置からデータ要求を受信し、
受信した前記データ要求に応答して、データをサード・パーティ使用可能フォーマットで前記クライアント電子装置に提供する
ように構成される請求項９に記載のメディア配布システム。
【請求項１２】
メディア・リポジトリ内に複数のメディア・データ・ファイルを格納すること、
クライアント電子装置のユーザが、前記複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にすること、
前記クライアント電子装置の前記ユーザが、１つまたは複数の検索語句を定義することを可能にすること、
前記１つまたは複数の検索語句に基づいて、前記複数のメディア・データ・ファイルの少なくとも一部に対して照会を実行すること、
結果セットを生成すること、および
前記結果セットの一部を、結果セット全体未満となるように前記ユーザに対して表示すること
を含む方法。
【請求項１３】
複数のメディア・データ・ファイルを格納するメディア・リポジトリと、
再生アプリケーション・プログラミング・インターフェースであって、
クライアント電子装置のユーザが、前記複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にし、
前記ユーザによって確立された、前記メディア配布システムとの間の接続の数を監視し、
前記ユーザによって確立可能な接続の数を定義済みの接続限度に制限する最大接続ポリシーを実施する
ように構成された再生アプリケーション・プログラミング・インターフェースと
を備えるメディア配布システム。
【請求項１４】
前記再生アプリケーション・プログラミング・インターフェースが、１つまたは複数のクライアント・スタブと通信するように構成される１つまたは複数のサーバ・スタブを含む請求項１３に記載のメディア配布システム。
【請求項１５】
前記再生アプリケーション・プログラミング・インターフェースがさらに、
標準化プロトコルを使用して前記クライアント電子装置からデータ要求を受信し、
受信した前記データ要求に応答して、データをサード・パーティ使用可能フォーマットで前記クライアント電子装置に提供する
ように構成される請求項１３に記載のメディア配布システム。
【請求項１６】
メディア・リポジトリ内に複数のメディア・データ・ファイルを格納すること、
クライアント電子装置のユーザが、前記複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にすること、
前記ユーザによって確立された、メディア配布システムとの間の接続の数を監視すること、および
前記ユーザによって確立可能な接続の数を定義済みの接続限度に制限する最大接続ポリシーを実施すること
を含む方法。
【請求項１７】
複数のメディア・データ・ファイルを格納するメディア・リポジトリと、
検索アプリケーション・プログラミング・インターフェースであって、
クライアント電子装置のユーザが、前記複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にし、
ユーザが第１検索語句を定義することを可能にし、
前記第１検索語句に基づいて、前記複数のメディア・データ・ファイルの少なくとも一部の第１照会を実行し、
ユーザが第２検索語句を定義することを可能にし、
前記第１および第２検索語句に基づいて、前記複数のメディア・データ・ファイルの少なくとも一部の第２照会を実行する
ように構成された検索アプリケーション・プログラミング・インターフェースと
を備えるメディア配布システム。
【請求項１８】
前記検索アプリケーション・プログラミング・インターフェースが、１つまたは複数のクライアント・スタブと通信するように構成される１つまたは複数のサーバ・スタブを含む請求項１７に記載のメディア配布システム。
【請求項１９】
前記検索アプリケーション・プログラミング・インターフェースがさらに、
標準化プロトコルを使用して前記クライアント電子装置からデータ要求を受信し、
受信した前記データ要求に応答して、データをサード・パーティ使用可能フォーマットで前記クライアント電子装置に提供する
ように構成される請求項１７に記載のメディア配布システム。
【請求項２０】
メディア・リポジトリ内に複数のメディア・データ・ファイルを格納すること、
クライアント電子装置のユーザが、前記複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にすること、
ユーザが第１検索語句を定義することを可能にすること、
前記第１検索語句に基づいて、前記複数のメディア・データ・ファイルの少なくとも一部の第１照会を実行すること、
ユーザが第２検索語句を定義することを可能にすること、および
前記第１および第２検索語句に基づいて、前記複数のメディア・データ・ファイルの少なくとも一部の第２照会を実行すること
を含む方法。
【請求項２１】
複数のメディア・データ・ファイルを格納するように構成されたメディア・リポジトリと、
前記複数のメディア・データ・ファイルのうちの１つまたは複数を識別するファイル・カタログと、
クライアント電子装置のユーザが前記ファイル・カタログをブラウズ／検索し、前記複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルを識別することを可能にするように構成されたアプリケーション・プログラム・インターフェースと
を備えるメディア配布システムであって、
前記アプリケーション・プログラム・インターフェースがさらに、
標準化プロトコルを使用して前記クライアント電子装置からデータ要求を受信し、
受信した前記データ要求に応答して、データをサード・パーティ使用可能フォーマットで前記クライアント電子装置に提供する
ように構成されるメディア配布システム。
【請求項２２】
前記標準化プロトコルが、
Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ＳＯＡＰ）、Ｊａｖａ（登録商標）  Ｓｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ（ＪＳＯＮ）、ＲＥｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ（ＲＥＳＴ）、およびｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ  Ｒｅｍｏｔｅ  Ｐｒｏｃｅｄｕｒｅ  Ｐｒｏｔｏｃｏｌ（ＸＭＬ−ＲＰＣ）
からなるグループから選ばれる請求項２１に記載のメディア配布システム。
【請求項２３】
受信した前記データ要求に応答して、データをサード・パーティ使用可能フォーマットで前記クライアント電子装置に提供することが、
どのように前記クライアント電子装置が前記メディア配布システムと通信することができるかを記述するサービス記述を、前記クライアント電子装置に提供すること
を含む請求項２１に記載のメディア配布システム。
【請求項２４】
前記サービス記述がＷｅｂ  Ｓｅｒｖｉｃｅｓ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ（ＷＳＤＬ）である請求項２３に記載のメディア配布システム。
【請求項２５】
前記クライアント電子装置が、
前記サービス記述を処理して、前記メディア配布システムにアクセスするための１つまたは複数のクライアント・スタブを生成する
ように構成される請求項２３に記載のメディア配布システム。
【請求項２６】
前記アプリケーション・プログラム・インターフェースが、１つまたは複数のクライアント・スタブと通信するように構成される１つまたは複数のサーバ・スタブを含む請求項２１に記載のメディア配布システム。
【請求項２７】
メディア・リポジトリ内に複数のメディア・データ・ファイルを格納すること、
前記複数のメディア・データ・ファイルのうちの１つまたは複数をファイル・カタログ内で識別すること、
標準化プロトコルを使用して、クライアント電子装置からデータ要求を受信すること、
受信した前記データ要求に応答して、データをサード・パーティ使用可能フォーマットで前記クライアント電子装置に提供すること、および
前記クライアント電子装置のユーザが、前記ファイル・カタログをブラウズ／検索して、前記複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルを識別することを可能にすること
を含む方法。
【請求項２８】
前記標準化プロトコルが、
Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ＳＯＡＰ）、Ｊａｖａ（登録商標）  Ｓｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ（ＪＳＯＮ）、ＲＥｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ（ＲＥＳＴ）、およびｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ  Ｒｅｍｏｔｅ  Ｐｒｏｃｅｄｕｒｅ  Ｐｒｏｔｏｃｏｌ（ＸＭＬ−ＲＰＣ）
からなるグループから選ばれる請求項２７に記載の方法。
【請求項２９】
受信した前記データ要求に応答して、データをサード・パーティ使用可能フォーマットで前記クライアント電子装置に提供することが、
どのように前記クライアント電子装置が前記メディア配布システムと通信することができるかを記述するサービス記述を、前記クライアント電子装置に提供すること
を含む請求項２７に記載の方法。
【請求項３０】
前記サービス記述がＷｅｂ  Ｓｅｒｖｉｃｅｓ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ（ＷＳＤＬ）である請求項２９に記載の方法。
【請求項３１】
前記クライアント電子装置が、
前記サービス記述を処理して、前記メディア配布システムにアクセスするための１つまたは複数のクライアント・スタブを生成する
ように構成される請求項２９に記載の方法。
【請求項３２】
複数の命令が格納されたコンピュータ可読媒体上に常駐するコンピュータ・プログラム製品であって、前記複数の命令が、プロセッサによって実行されたとき、前記プロセッサに、
メディア・リポジトリ内に複数のメディア・データ・ファイルを格納すること、
前記複数のメディア・データ・ファイルのうちの１つまたは複数をファイル・カタログ内で識別すること、
標準化プロトコルを使用して、クライアント電子装置からデータ要求を受信すること、
受信した前記データ要求に応答して、データをサード・パーティ使用可能フォーマットで前記クライアント電子装置に提供すること、および
前記クライアント電子装置のユーザが、前記ファイル・カタログをブラウズ／検索して、前記複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルを識別することを可能にすること
を含むオペレーションを実行させるコンピュータ・プログラム製品。
【請求項３３】
前記標準化プロトコルが、
Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ＳＯＡＰ）、Ｊａｖａ（登録商標）  Ｓｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ（ＪＳＯＮ）、ＲＥｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ（ＲＥＳＴ）、およびｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ  Ｒｅｍｏｔｅ  Ｐｒｏｃｅｄｕｒｅ  Ｐｒｏｔｏｃｏｌ（ＸＭＬ−ＲＰＣ）
からなるグループから選ばれる請求項３２に記載のコンピュータ・プログラム製品。
【請求項３４】
受信した前記データ要求に応答して、データをサード・パーティ使用可能フォーマットで前記クライアント電子装置に提供する前記命令が、
どのように前記クライアント電子装置が前記メディア配布システムと通信することができるかを記述するサービス記述を、前記クライアント電子装置に提供する
命令を含む請求項３２に記載のコンピュータ・プログラム製品。
【請求項３５】
前記サービス記述がＷｅｂ  Ｓｅｒｖｉｃｅｓ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ（ＷＳＤＬ）である請求項３４に記載のコンピュータ・プログラム製品。
【請求項３６】
前記クライアント電子装置が、
前記サービス記述を処理して、前記メディア配布システムにアクセスするための１つまたは複数のクライアント・スタブを生成する
ように構成される請求項３４に記載のコンピュータ・プログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
本願は、参照により本明細書に組み込まれる以下の出願の優先権を主張する。２００６年８月３１日出願の「ＡＰＩ−Ａｃｃｅｓｓｉｂｌｅ  Ｍｅｄｉａ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  Ｓｙｓｔｅｍ」という名称の米国仮特許出願第６０／８４２，０５６号、および２００６年９月８日出願の「ＡＰＩ−Ａｃｃｅｓｓｉｂｌｅ  Ｍｅｄｉａ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  Ｓｙｓｔｅｍ」という名称の米国仮特許出願第６０／８４３，２１２号。
【０００２】
本開示は、メディア配布システムに関し、より詳細には、ＡＰＩアクセス可能メディア配布システムに関する。
【背景技術】
【０００３】
メディア配布システム（例えば、ワシントン州シアトルのＲｅａｌＮｅｔｗｏｒｋｓ  Ｉｎｃ．によって提供されるＲｈａｐｓｏｄｙ（商標）サービス）は、メディア・データ・ファイルをメディア・サーバからユーザのクライアント電子装置（例えば、パーソナル・メディア・プレーヤ、携帯情報端末、またはマルチメディア携帯電話）に配布する。メディア配布システムは、ユーザが例えばダウンロード済みメディア・データ・ファイルを受信し、かつ／またはリモート・メディア・データ・ファイルをストリーミングすることを可能にすることにより、メディア・データ・ファイルを配布することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国仮特許出願第６０／８４２，０５６号
【特許文献２】米国仮特許出願第６０／８４３，２１２号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
遺憾ながら、メディア配布システムにアクセスするのにしばしば専用クライアント・アプリケーションが必要となる。さらに、この専用クライアント・アプリケーションは通常はパーソナル・コンピュータ（例えばデスクトップ・コンピュータまたはラップトップ・コンピュータ）上で実行されるので、メディア配布システムが、クライアント電子装置で直接的にアクセス可能ではない可能性がある。
【課題を解決するための手段】
【０００６】
第１の実施態様では、メディア配布システムが、複数のメディア・データ・ファイルを格納するメディア・リポジトリを含む。アカウント・アプリケーション・プログラミング・インターフェースが、クライアント電子装置のユーザが、複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にする。アカウント・アプリケーション・プログラミング・インターフェースは、クライアント電子装置のユーザが、メディア配布システムに関連する１つまたは複数の加入アカウントを管理することを可能にするように構成される。
【０００７】
以下の特徴のうちの１つまたは複数を含めることができる。アカウント・アプリケーション・プログラミング・インターフェースは、１つまたは複数のクライアント・スタブと通信するように構成される１つまたは複数のサーバ・スタブを含むことができる。さらに、標準化プロトコルを使用してクライアント電子装置からデータ要求を受信し、受信したデータ要求に応答して、データをサード・パーティ使用可能フォーマット（サード・パーティアプリケーションで使用可能な標準化フォーマット）サード・パーティ使用可能フォーマットでクライアント電子装置に提供するようにアカウント・アプリケーション・プログラミング・インターフェースを構成することができる。  
【０００８】
別の実施態様では、方法は、メディア・リポジトリ内に複数のメディア・データ・ファイルを格納することを含む。クライアント電子装置のユーザは、複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることが可能となる。クライアント電子装置のユーザは、メディア配布システムに関連する１つまたは複数の加入アカウントを管理することが可能となる。
【０００９】
別の実施態様では、メディア配布システムは、複数のメディア・データ・ファイルを格納するメディア・リポジトリを含む。ライブラリ管理アプリケーション・プログラミング・インターフェースが、クライアント電子装置のユーザが、複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にする。ライブラリ管理アプリケーション・プログラミング・インターフェースは、クライアント電子装置のユーザが、メディア配布システムに関連する１つまたは複数のメディア・ライブラリを管理することを可能にするように構成される。
【００１０】
以下の特徴のうちの１つまたは複数を含めることができる。ライブラリ管理アプリケーション・プログラミング・インターフェースは、１つまたは複数のクライアント・スタブと通信するように構成される１つまたは複数のサーバ・スタブを含むことができる。さらに、標準化プロトコルを使用してクライアント電子装置からデータ要求を受信し、受信したデータ要求に応答して、データをサード・パーティ使用可能フォーマットでクライアント電子装置に提供するようにライブラリ管理アプリケーション・プログラミング・インターフェースを構成することができる。
【００１１】
別の実施態様では、方法は、メディア・リポジトリ内に複数のメディア・データ・ファイルを格納することを含む。クライアント電子装置のユーザは、複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることが可能となる。クライアント電子装置のユーザは、メディア配布システムに関連する１つまたは複数のメディア・ライブラリを管理することが可能となる。
【００１２】
別の実施態様では、メディア配布システムは、複数のメディア・データ・ファイルを格納するメディア・リポジトリを含む。メタデータ・アプリケーション・プログラミング・インターフェースは、クライアント電子装置のユーザが、複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にする。メタデータ・アプリケーション・プログラミング・インターフェースは、クライアント電子装置のユーザが、１つまたは複数の検索語句を定義することを可能にするように構成される。１つまたは複数の検索語句に基づいて、複数のメディア・データ・ファイルの少なくとも一部に対して照会が実行される。結果セットが生成され、結果セットの一部が、結果セット全体未満となるようにユーザに対して表示される。
【００１３】
以下の特徴のうちの１つまたは複数を含めることができる。メタデータ・アプリケーション・プログラミング・インターフェースは、１つまたは複数のクライアント・スタブと通信するように構成される１つまたは複数のサーバ・スタブを含むことができる。さらに、標準化プロトコルを使用してクライアント電子装置からデータ要求を受信し、受信したデータ要求に応答して、データをサード・パーティ使用可能フォーマットでクライアント電子装置に提供するようにメタデータ・アプリケーション・プログラミング・インターフェースを構成することができる。  
【００１４】
別の実施態様では、方法は、メディア・リポジトリ内に複数のメディア・データ・ファイルを格納することを含む。クライアント電子装置のユーザは、複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることが可能となる。クライアント電子装置のユーザは、１つまたは複数の検索語句を定義することが可能となる。１つまたは複数の検索語句に基づいて、複数のメディア・データ・ファイルの少なくとも一部に対して照会が実行される。結果セットが生成される。結果セットの一部が、結果セット全体未満となるようにユーザに対して表示される。
【００１５】
別の実施態様では、メディア配布システムは、複数のメディア・データ・ファイルを格納するメディア・リポジトリを含む。再生アプリケーション・プログラミング・インターフェースは、クライアント電子装置のユーザが、複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にする。再生アプリケーション・プログラミング・インターフェースは、ユーザによって確立された、音楽配布システムとの間の接続の数を監視するように構成される。ユーザによって確立可能な接続の数を定義済みの接続限度に制限する最大接続ポリシーが実施される。
【００１６】
以下の特徴のうちの１つまたは複数を含めることができる。再生アプリケーション・プログラミング・インターフェースは、１つまたは複数のクライアント・スタブと通信するように構成される１つまたは複数のサーバ・スタブを含むことができる。さらに、標準化プロトコルを使用してクライアント電子装置からデータ要求を受信し、受信したデータ要求に応答して、データをサード・パーティ使用可能フォーマットでクライアント電子装置に提供するように再生アプリケーション・プログラミング・インターフェースを構成することができる。
【００１７】
別の実施態様では、方法は、メディア・リポジトリ内に複数のメディア・データ・ファイルを格納することを含む。クライアント電子装置のユーザは、複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることが可能となる。ユーザによって確立された、メディア配布システムとの間の接続の数が監視される。ユーザによって確立可能な接続の数を定義済みの接続限度に制限する最大接続ポリシーが実施される。
【００１８】
別の実施態様では、メディア配布システムは、複数のメディア・データ・ファイルを格納するメディア・リポジトリを含む。検索アプリケーション・プログラミング・インターフェースが、クライアント電子装置のユーザが、複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることを可能にする。検索アプリケーション・プログラミング・インターフェースは、ユーザが第１検索語句を定義し、第１検索語句に基づいて、複数のメディア・データ・ファイルの少なくとも一部の第１照会を実行することを可能にするように構成される。ユーザは、第２検索語句を定義し、第１および第２検索語句に基づいて、複数のメディア・データ・ファイルの少なくとも一部の第２照会を実行することが可能となる。
【００１９】
以下の特徴のうちの１つまたは複数を含めることができる。検索アプリケーション・プログラミング・インターフェースは、１つまたは複数のクライアント・スタブと通信するように構成される１つまたは複数のサーバ・スタブを含むことができる。さらに、標準化プロトコルを使用してクライアント電子装置からデータ要求を受信し、受信したデータ要求に応答して、データをサード・パーティ使用可能フォーマットでクライアント電子装置に提供するように検索アプリケーション・プログラミング・インターフェースを構成することができる。
【００２０】
別の実施態様では、方法は、メディア・リポジトリ内に複数のメディア・データ・ファイルを格納することを含む。クライアント電子装置のユーザは、複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルにアクセスすることが可能となる。ユーザは、第１検索語句を定義することが可能となる。複数のメディア・データ・ファイルの少なくとも一部の第１照会が、第１検索語句に基づいて実行される。ユーザは、第２検索語句を定義することが可能となる。複数のメディア・データ・ファイルの少なくとも一部の第２照会が、第１および第２検索語句に基づいて実行される。
【００２１】
別の実施態様では、メディア配布システムは、複数のメディア・データ・ファイルと、複数のメディア・データ・ファイルのうちの１つまたは複数を識別するファイル・カタログとを格納するメディア・リポジトリを含む。アプリケーション・プログラム・インターフェースは、クライアント電子装置のユーザが、ファイル・カタログをブラウズ／検索して、複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルを識別することを可能にする。アプリケーション・プログラム・インターフェースは、標準化プロトコルを使用してクライアント電子装置からデータ要求を受信し、受信したデータ要求に応答して、データをサード・パーティ使用可能フォーマットでクライアント電子装置に提供するように構成される。
【００２２】
以下の特徴のうちの１つまたは複数を含めることができる。Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ＳＯＡＰ）、Ｊａｖａ（登録商標）  Ｓｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ（ＪＳＯＮ）、ＲＥｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ（ＲＥＳＴ）、およびｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ  Ｒｅｍｏｔｅ  Ｐｒｏｃｅｄｕｒｅ  ｃａｌｌ（ＸＭＬ−ＲＰＣ）からなるグループから、標準化プロトコルを選ぶことができる。
【００２３】
受信したデータ要求に応答して、データをサード・パーティ使用可能フォーマットでクライアント電子装置に提供することは、どのようにクライアント電子装置がメディア配布システムと通信することができるかを記述するサービス記述を、クライアント電子装置に提供することを含むことができる。サービス記述は、Ｗｅｂ  Ｓｅｒｖｉｃｅｓ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ（ＷＳＤＬ）でよい。
【００２４】
サービス記述を処理して、メディア配布システムにアクセスするための１つまたは複数のクライアント・スタブを生成するようにクライアント電子装置を構成することができる。アプリケーション・プログラム・インターフェースは、１つまたは複数のクライアント・スタブと通信するように構成される１つまたは複数のサーバ・スタブを含むことができる。
【００２５】
別の実施態様では、方法は、メディア・リポジトリ内に複数のメディア・データ・ファイルを格納することを含む。複数のメディア・データ・ファイルのうちの１つまたは複数が、ファイル・カタログ内で識別される。標準化プロトコルを使用して、データ要求がクライアント電子装置から受信される。受信したデータ要求に応答して、データが、サード・パーティ使用可能フォーマットでクライアント電子装置に提供される。クライアント電子装置のユーザは、ファイル・カタログをブラウズ／検索して、複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルを識別することが可能となる。
【００２６】
以下の特徴のうちの１つまたは複数を含めることができる。Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ＳＯＡＰ）、Ｊａｖａ（登録商標）  Ｓｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ（ＪＳＯＮ）、ＲＥｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ（ＲＥＳＴ）、およびｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ  Ｒｅｍｏｔｅ  Ｐｒｏｃｅｄｕｒｅ  ｃａｌｌ（ＸＭＬ−ＲＰＣ）からなるグループから、標準化プロトコルを選ぶことができる。
【００２７】
受信したデータ要求に応答して、データをサード・パーティ使用可能フォーマットでクライアント電子装置に提供することは、どのようにクライアント電子装置がメディア配布システムと通信することができるかを記述するサービス記述を、クライアント電子装置に提供することを含むことができる。サービス記述は、Ｗｅｂ  Ｓｅｒｖｉｃｅｓ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ（ＷＳＤＬ）でよい。
【００２８】
サービス記述を処理して、メディア配布システムにアクセスするための１つまたは複数のクライアント・スタブを生成するようにクライアント電子装置を構成することができる。
【００２９】
別の実施態様では、コンピュータ・プログラム製品が、複数の命令がその上に格納されたコンピュータ可読媒体上に常駐する。プロセッサによって実行されたとき、命令は、メディア・リポジトリ内に複数のメディア・データ・ファイルを格納することを含むオペレーションをプロセッサに実行させる。複数のメディア・データ・ファイルのうちの１つまたは複数が、ファイル・カタログ内で識別される。標準化プロトコルを使用して、データ要求がクライアント電子装置から受信される。受信したデータ要求に応答して、データが、サード・パーティ使用可能フォーマットでクライアント電子装置に提供される。クライアント電子装置のユーザは、ファイル・カタログをブラウズ／検索して、複数のメディア・データ・ファイルから選ばれた１つまたは複数のメディア・データ・ファイルを識別することが可能となる。
【００３０】
以下の特徴のうちの１つまたは複数を含めることができる。Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ＳＯＡＰ）、Ｊａｖａ（登録商標）  Ｓｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ（ＪＳＯＮ）、ＲＥｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ（ＲＥＳＴ）、およびｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ  Ｒｅｍｏｔｅ  Ｐｒｏｃｅｄｕｒｅ  ｃａｌｌ（ＸＭＬ−ＲＰＣ）からなるグループから、標準化プロトコルを選ぶことができる。
【００３１】
受信したデータ要求に応答して、データをサード・パーティ使用可能フォーマットでクライアント電子装置に提供することは、どのようにクライアント電子装置がメディア配布システムと通信することができるかを記述するサービス記述を、クライアント電子装置に提供することを含むことができる。サービス記述は、Ｗｅｂ  Ｓｅｒｖｉｃｅｓ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ（ＷＳＤＬ）でよい。
【００３２】
サービス記述を処理して、メディア配布システムにアクセスするための１つまたは複数のクライアント・スタブを生成するようにクライアント電子装置を構成することができる。
【００３３】
１つまたは複数の実施態様の詳細が、添付の図面および以下の説明で記述される。説明および図面から他の特徴および利点が明らかとなるであろう。
【図面の簡単な説明】
【００３４】
【図１】分散コンピューティング・ネットワークに結合されたメディア配布システム、クライアント・アプリケーション、プロキシ・アプリケーション、およびパーソナル・メディア装置のダイアグラムである。
【図２】図１のパーソナル・メディア装置の等角投影図である。
【図３】図１のパーソナル・メディア装置のダイアグラムである。
【図４】図１のメディア配布システムとのデータ交換のダイアグラムである。
【図５】図１のメディア配布システムによって実行されるプロセスの流れ図である。
【図６】図１のメディア配布システムによって実行されるプロセスの流れ図である。
【図７】図１のメディア配布システムによって実行されるプロセスの流れ図である。
【図８】図１のメディア配布システムによって実行されるプロセスの流れ図である。
【図９】図１のメディア配布システムによって実行されるプロセスの流れ図である。
【図１０】図１のメディア配布システムによって実行されるプロセスの流れ図である。
【発明を実施するための形態】
【００３５】
システム概要
図１を参照すると、例えばパーソナル・メディア装置１２（したがってユーザ１４）が、メディア配布システム１８からメディア・コンテンツ１６を得ることを可能にするＡＰＩ（すなわちアプリケーション・プログラミング・インターフェース）１０が示されている。メディア・コンテンツ１６は、例えば、周知の圧縮技法を使用して圧縮することのできるデジタル符号化オーディオおよび／またはビデオ・メディア・データ・ファイルでよい。そのような圧縮技法の例は、限定はしないが、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、Ｈ．２６３、Ｈ．２６４、Ａｄｖａｎｃｅｄ  Ａｕｄｉｏ  Ｃｏｄｉｎｇ、ならびに国際標準化機構（ＩＳＯ）およびＭｏｔｉｏｎ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＭＰＥＧ）によって公表された他の技法を含むことができる。
【００３６】
メディア配布システム１８から受信されるメディア・コンテンツ１６のフォーマットの例は、例えば、メディア配布システム１８から受信される購入済みダウンロード（すなわち、例えばユーザ１４に対して永続的な使用のために許諾されたメディア・コンテンツ）と、メディア配布システム１８から受信される加入ダウンロード（すなわち、例えばユーザ１４に対して、メディア配布システム１８との有効な加入契約が存在する間の使用のために許諾されたメディア・コンテンツ）と、メディア配布システム１８からストリーミングされるメディア・コンテンツとを含むことができる。通常、メディア・コンテンツが、例えばコンピュータ２８からパーソナル・メディア装置１２にストリーミングされるとき、メディア・コンテンツのコピーは、パーソナル・メディア装置１２上に永続的に保持されない。メディア配布システム１８に加えて、他のソースからメディア・コンテンツを得ることができ、他のソースの例は、限定はしないが、音楽コンパクト・ディスクからリッピングされたファイルを含むことができる。
【００３７】
メディア配布システム１８によって配布されるメディア・コンテンツ１６のタイプの例は、オーディオ・メディア・データ・ファイル（その例は、限定はしないが、例えば音楽ファイル、オーディオ・ニュース・ブロードキャスト、オーディオ・スポーツ・ブロードキャスト、および書籍の音声記録を含むことができる）と、ビデオ・メディア・データ・ファイル（その例は、限定はしないが、例えば音声を含まないビデオ場面を含むことができる）と、オーディオ／ビデオ・メディア・データ・ファイル（その例は、限定はしないが、例えばａ／ｖニュース・ブロードキャスト、ａ／ｖスポーツ・ブロードキャスト、長編の映画およびムービークリップ、ミュージック・ビデオ、ならびにテレビジョン・ショーのエピソードを含むことができる）と、マルチメディア・コンテンツ・メディア・データ・ファイル（その例は、限定はしないが、例えば対話型のプレゼンテーションおよびスライドショーを含むことができる）とを含む。
【００３８】
メディア配布システム１８は、メディア・データ・ストリームおよび／またはメディア・データ・ファイルを複数のユーザ（例えばユーザ１４、２０、２２、２４、２６）に提供することができる。そのようなメディア配布システム１８の例は、ワシントン州シアトルのＲｅａｌＮｅｔｗｏｒｋｓ  Ｉｎｃ．によって提供されるＲｈａｐｓｏｄｙ（商標）サービスを含む。
【００３９】
メディア配布システム１８は、ネットワーク３０（例えばインターネット）に接続されるコンピュータ２８（例えばサーバコンピュータ）上に常駐し、コンピュータ２８によって実行されるサーバアプリケーションでよい。コンピュータ２８は、ネットワーク・オペレーティング・システムを実行するウェブサーバでよく、ネットワーク・オペレーティング・システムの例は、限定はしないが、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）  ＸＰ  Ｓｅｒｖｅｒ（商標）、Ｎｏｖｅｌｌ  Ｎｅｔｗａｒｅ（商標）、またはＲｅｄｈａｔ  Ｌｉｎｕｘ（商標）を含むことができる。
【００４０】
コンピュータ２８はまた、ウェブサーバ・アプリケーションも実行することができ、ウェブサーバ・アプリケーションの例は、限定はしないが、ネットワーク３０を介してコンピュータ２８へのＨＴＴＰ（すなわちＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）アクセスを可能にするＭｉｃｒｏｓｏｆｔ  ＩＩＳ（商標）、Ｎｏｖｅｌｌ  Ｗｅｂｓｅｒｖｅｒ（商標）、またはＡｐａｃｈｅ  Ｗｅｂｓｅｒｖｅｒ（商標）を含むことができる。例えばローカル・エリア・ネットワーク、広域ネットワーク、イントラネットなどの１つまたは複数の２次ネットワーク（例えばネットワーク３２）にネットワーク３０を接続することができる。
【００４１】
コンピュータ２８に結合された記憶装置３４上に格納することのできる、メディア配布システム１８およびＡＰＩ１０の命令セットおよびサブルーチンを、コンピュータ２８に組み込まれた１つまたは複数のプロセッサ（図示せず）ならびに１つまたは複数のメモリ・アーキテクチャ（図示せず）で実行することができる。さらに、メディア配布システム１８から入手可能なメディア・データ・ファイルを、例えば、コンピュータ２８に取り付けられた記憶装置３４上に格納することができる。記憶装置３４は、限定はしないが、ハード・ディスク・ドライブ、テープ・ドライブ、光学式ドライブ、ＲＡＩＤアレイ、ランダム・アクセス・メモリ（ＲＡＭ）、または読取り専用メモリ（ＲＯＭ）を含むことができる。
【００４２】
ユーザ１４、２０、２２、２４、２６は、例えばネットワーク３０および／または２次ネットワーク３２を介して、メディア配布システム１８にアクセスすることができる。さらに、擬似リンク線３６で示されるように、２次ネットワーク３２を介してコンピュータ２８（すなわち、メディア配布システム１８を実行するコンピュータ）をネットワーク３０に接続することができる。
【００４３】
メディア配布システム１８に直接的にアクセスすることができ、またはプロキシ・コンピュータを介してアクセスすることができる。例えば、ユーザ２０、２４、２６は、様々なクライアント電子装置を介してメディア配布システム１８に直接的にアクセスすることができ、様々なクライアント電子装置の例は、限定はしないが、例えばパーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２、テレビジョン（図示せず）、ケーブル・ボックス（図示せず）、インターネットラジオ（図示せず）、または専用ネットワーク装置（例えば、Ａ  Ｒｏｋｕ（商標）  Ｓｏｕｎｄｂｒｉｄｇｅ  Ｍ５００、Ｍ１０００、およびＭ２０００、図示せず）を含むことができる。さらに／あるいは、クライアント・コンピュータ４４を介してメディア配布システム１８に直接的にアクセスすることができる。
【００４４】
さらに、メディア配布システム１８に直接的にアクセスする装置を、ネットワーク３０（またはネットワーク３２）に直接的に結合することができる。例えば、クライアント・コンピュータ４４が、ハードワイヤード・ネットワーク接続を介してネットワーク３０に直接的に結合されるように示されている。さらに、クライアント・コンピュータ４４は、例えばユーザ２２がネットワーク３０（またはネットワーク３２）を介してメディア配布システム１８にアクセスし、メディア配布システム１８を構成することを可能にするクライアント・アプリケーション４６（その例は、限定はしないが、ワシントン州レドモンドのＭｉｃｒｏｓｏｆｔ  Ｉｎｃ．から入手可能なＭｉｃｒｏｓｏｆｔ  Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（商標）、Ｎｅｔｓｃａｐｅ  Ｎａｖｉｇａｔｏｒ（商標）、ワシントン州シアトルのＲｅａｌＮｅｔｗｏｒｋｓ  Ｉｎｃ．から入手可能なＲｈａｐｓｏｄｙ（商標）クライアントおよびＲｅａｌＰｌａｙｅｒ（商標）クライアント、または特殊インターフェースを含むことができる）を実行することができる。クライアント・コンピュータ４４はオペレーティング・システムを実行することができ、オペレーティング・システムの例は、限定はしないが、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）  ＸＰ（商標）またはＲｅｄｈａｔ  Ｌｉｎｕｘ（商標）を含むことができる。
【００４５】
クライアント・コンピュータ４４に結合された記憶装置４８上に格納することのできるクライアント・アプリケーション４６の命令セットおよびサブルーチンを、クライアント・コンピュータ４４に組み込まれた１つまたは複数のプロセッサ（図示せず）ならびに１つまたは複数のメモリ・アーキテクチャ（図示せず）で実行することができる。記憶装置４８は、限定はしないが、ハード・ディスク・ドライブ、テープ・ドライブ、光学式ドライブ、ＲＡＩＤアレイ、ランダム・アクセス・メモリ（ＲＡＭ）、または読取り専用メモリ（ＲＯＭ）を含むことができる。
【００４６】
あるいは、メディア配布システム１８に直接的にアクセスする装置を、ネットワーク３０（またはネットワーク３２）に間接的に結合することもできる。例えば、パーソナル・メディア装置３８が、パーソナル・メディア装置３８とワイヤレス・アクセス・ポイント（すなわちＷＡＰ）５２との間で確立されたワイヤレス通信チャネル５０を介してネットワーク３０にワイヤレスに結合されるように示されており、ＷＡＰ５２が、ネットワーク３０に直接的に結合されるように示されている。ＷＡＰ５２は、例えば、パーソナル・メディア装置３８とＷＡＰ５２の間の通信チャネル５０を確立することのできるＩＥＥＥ８０２．１１ａ装置、ＩＥＥＥ８０２．１１ｂ装置、ＩＥＥＥ８０２．１１ｇ装置、Ｗｉ−Ｆｉ装置、および／またはＢｌｕｅｔｏｏｔｈ装置でよい。
【００４７】
当技術分野で周知のように、ＩＥＥＥ８０２．１１ｘ仕様は、経路共有のためにイーサネット（登録商標）・プロトコルおよびキャリア検知多重アクセス／衝突回避（すなわちＣＳＭＡ／ＣＡ）を使用することができる。様々な８０２．１１ｘ仕様は、例えば位相偏移キーイング（すなわちＰＳＫ）変調または相補符号キーイング（すなわちＣＣＫ）変調を使用することができる。当技術分野で周知のように、Ｂｌｕｅｔｏｏｔｈは、近距離ワイヤレス接続を使用して、例えば携帯電話、コンピュータ、および携帯情報端末を相互接続することを可能にする、電気通信業界の仕様である。
【００４８】
さらに、携帯情報端末４０が、セルラ／ネットワーク・ブリッジ５４（ネットワーク３０に直接的に結合されるように示されている）を介してネットワーク３０にワイヤレスに結合されるように示されており、携帯電話４２が、セルラ／ネットワーク・ブリッジ５６（ネットワーク３２に直接的に結合されるように示されている）を介してネットワーク３２にワイヤレスに結合されるように示されている。
【００４９】
メディア配布システム１８に直接的にアクセスすることに加えて、クライアント電子装置は、プロキシ・コンピュータを介してメディア配布システム１８に間接的にアクセスすることができる。例えば、パーソナル・メディア装置１２が、プロキシ・コンピュータ５８を介してメディア配布システム１８にアクセスするように示されている。プロキシ・コンピュータ５８はプロキシ・アプリケーション５９を実行することができ、プロキシ・アプリケーション５９は、クライアント・アプリケーション４６の機能と同様の機能を有することができる。
【００５０】
クライアント電子装置
上記で論じたように、クライアント電子装置の例は、パーソナル・メディア装置１２、３８、携帯情報端末４０、および携帯電話４２を含むことができる。したがって、以下の開示はパーソナル・メディア装置１２、３８を対象とするが、以下の開示を任意のクライアント電子装置（携帯情報端末４０、携帯電話４２、テレビジョン（図示せず）、ケーブル・ボックス（図示せず）、インターネットラジオ（図示せず）、および専用ネットワーク装置（図示せず）を含む）に対して同様に適用できることを理解されたい。
【００５１】
図２も参照すると、ドッキング・クレードル６０（受け台）を介してパーソナル・メディア装置１２、３８を例えばプロキシ・コンピュータ５８に接続することができる。通常、パーソナル・メディア装置１２、３８は、パーソナル・メディア装置１２、３８をドッキング・クレードル６０に結合するバス・インターフェース（以下でより詳細に議論する）を含む。ドッキング・クレードル６０を、例えばプロキシ・コンピュータ５８内に含まれるユニバーサル・シリアル・バス（すなわちＵＳＢ）ポート、シリアル・ポート、またはＩＥＥＥ１３９４（すなわちＦｉｒｅＷｉｒｅ）ポートに（ケーブル６２で）結合することができる。例えば、パーソナル・メディア装置１２、３８内に含まれるバス・インターフェースはＵＳＢインターフェースでよく、ドッキング・クレードル６０は、ＵＳＢハブ（すなわち、パーソナル・メディア装置１２、３８とドッキング・クレードル６０の「ホット」結合および解放を可能にするプラグ・アンド・プレイ・インターフェース）として機能することができる。
【００５２】
プロキシ・コンピュータ５８は、パーソナル・メディア装置１２、３８に対するインターネット・ゲートウェイとして機能することができる。例えばユニバーサル・プラグ・アンド・プレイ・プロトコル（すなわちＵＰｎＰ）の使用により、例えば、パーソナル・メディア装置１２、３８は、プロキシ・コンピュータ５８を使用して、ネットワーク３０（およびネットワーク３２）を介してメディア配布システム１８にアクセスし、メディア・コンテンツ１６を得ることができる。具体的には、メディア配布システム１８を求める要求をパーソナル・メディア装置１２、３８から受信したとき、プロキシ・コンピュータ５８（パーソナル・メディア装置１２、３８の代わりにインターネット・クライアントとして働く）は、コンピュータ２８（すなわち、メディア配布システム１８を実行するコンピュータ）に適切なウェブページ／サービスを要求することができる。要求されたウェブページ／サービスがプロキシ・コンピュータ５８に返されたとき、プロキシ・コンピュータ５８は、返されたウェブページ／サービスを（パーソナル・メディア装置１２、３８によって行われた）元の要求と関係付けることができ、ウェブページ／サービスをパーソナル・メディア装置１２、３８に転送することができる。したがって、プロキシ・コンピュータ５８は、パーソナル・メディア装置１２、３８をコンピュータ２８に、したがってメディア配布システム１８に結合するコンジットとして機能することができる。
【００５３】
図３も参照すると、パーソナル・メディア装置１２、３８のダイアグラムが示されている。パーソナル・メディア装置１２、３８は、マイクロプロセッサ１５０（例えば、カリフォルニア州サンタクララのＩｎｔｅｌ  Ｃｏｒｐｏｒａｔｉｏｎによって製造されるＡＲＭ（商標）マイクロプロセッサ）、不揮発性メモリ（例えば読取り専用メモリ１５２）、および揮発性メモリ（例えばランダム・アクセス・メモリ１５４）を含むことができ、そのそれぞれを、１つまたは複数のデータ／システム・バス１５６、１５８を介して相互接続することができる。パーソナル・メディア装置１２、３８はまた、例えばアナログ・オーディオ信号を、例えばヘッドフォン・アセンブリ１６４、リモート・スピーカ・アセンブリ１６６、またはイヤ・バッド・アセンブリ１６８と取外し可能に係合するオーディオ・ジャック１６２に提供するオーディオ・サブシステム１６０をも含むことができる。あるいは、１つまたは複数の内部オーディオ・スピーカ（図示せず）を含むようにパーソナル・メディア装置１２、３８を構成することもできる。
【００５４】
パーソナル・メディア装置１２、３８は、装置アプリケーション６４（その例は、限定はしないが、Ｒｈａｐｓｏｄｙ（商標）クライアント、ＲｅａｌＰｌａｙｅｒ（商標）クライアント、または特殊インターフェースを含むことができる）を実行することができる。パーソナル・メディア装置１２、３８は、オペレーティング・システムを実行することができ、オペレーティング・システムの例は、限定はしないが、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）  ＣＥ（商標）、Ｒｅｄｈａｔ  Ｌｉｎｕｘ（商標）、Ｐａｌｍ  ＯＳ（商標）、または装置特有のオペレーティング・システム（すなわちカスタム・オペレーティング・システム）を含むことができる。
【００５５】
パーソナル・メディア装置１２、３８に結合された記憶装置６６上に格納することのできる装置アプリケーション６４の命令セットおよびサブルーチンを、パーソナル・メディア装置１２、３８に組み込まれた１つまたは複数のプロセッサ（図示せず）および１つまたは複数のメモリ・アーキテクチャ（図示せず）で実行することができる。記憶装置６６は、例えば、ハード・ディスク・ドライブ、光学式ドライブ、ランダム・アクセス・メモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、ＣＦ（すなわちコンパクト・フラッシュ）カード、ＳＤ（すなわちｓｅｃｕｒｅ  ｄｉｇｉｔａｌ）カード、スマートメディア・カード、メモリ・スティック、およびマルチメディア・カードでよい。
【００５６】
パーソナル・メディア装置１２、３８はまた、ユーザ・インターフェース１７０およびディスプレイ・サブシステム１７２をも含むことができる。ユーザ・インターフェース１７０は、パーソナル・メディア装置１２、３８内に含まれる様々な入力装置からデータ信号を受信することができ、様々な入力装置の例は、（限定はしないが）例えばレーティング・スイッチ７４、７６、後方スキップ・スイッチ７８、前方スキップ・スイッチ８０、再生／停止スイッチ８２、メニュー・スイッチ８４、ラジオ・スイッチ８６、およびスライダ・アセンブリ８８を含むことができる。ディスプレイ・サブシステム１７２は、パーソナル・メディア装置１２、３８内に含まれるディスプレイ・パネル９０にディスプレイ信号を提供することができる。ディスプレイ・パネル９０は、例えばアクティブ・マトリックス液晶ディスプレイ・パネル、パッシブ・マトリックス液晶ディスプレイ・パネル、発光ダイオード・ディスプレイ・パネルでよい。
【００５７】
オーディオ・サブシステム１６０、ユーザ・インターフェース１７０、およびディスプレイ・サブシステム１７２を、（それぞれ）１つまたは複数のデータ／システム・バス１７４、１７６、１７８を介してマイクロプロセッサ１５０とそれぞれ結合することができる。
【００５８】
パーソナル・メディア装置１２、３８の使用中、パーソナル・メディア装置１２、３８内に格納された様々なメディア・コンテンツ９２、９４、９６の例えばタイトルおよびアーティストを表示するようにディスプレイ・パネル９０を構成することができる。スライダ・アセンブリ８８を使用して、パーソナル・メディア装置１２、３８内に格納されたメディア・コンテンツのリストを上方または下方にスクロールすることができる。所望のメディア・コンテンツが強調表示されるとき（例えば、「Ｔａｊ  Ｍａｈａｌ」による「Ｐｈａｎｔｏｍ  Ｂｌｕｅｓ」）、ユーザ１４は、再生／停止スイッチ８２を使用して、レンダリング（表示）のためにメディア・コンテンツを選択することができる。ユーザ１４は、前方スキップ・スイッチ８０を使用して、次のメディア・コンテンツ（例えば「Ｒｏｂｅｒｔ  Ｊｏｈｎｓｏｎ」による「Ｈａｐｐｙ  Ｔｏ  Ｂｅ  Ｊｕｓｔ．．．」）まで前方にスキップすることができ、または後方スキップ・スイッチ７８を使用して、前のメディア・コンテンツ（例えば「Ｌｅｒｏｙ  Ｂｒｏｗｎｓｔｏｎｅ」による「Ｂｉｇ  Ｎｅｗ  Ｏｒｌｅａｎｓ．．．」）まで後方にスキップすることができる。さらに、ユーザ１４は、レーティング・スイッチ７４、７６を使用することにより、メディア・コンテンツを聴くときにメディア・コンテンツをレーティングすることができる。
【００５９】
ユーザは、ディスプレイ・パネル９０を例えばスライダ・アセンブリ８８と共に使用して、パーソナル・メディア装置１２、３８内に格納され、かつ／またはメディア配布システム１８から入手可能なメディア・コンテンツを検索／ブラウズすることができる。例えば、検索画面１００をレンダリングするために、ユーザは、スライダ・アセンブリ８８を押下して保持することができる。検索画面１００は、アーティスト・フィールド１０２、アルバム・フィールド１０４、およびトラック・フィールド１０６を含むことができる。例えばスライダ・アセンブリ８８を使用して、ユーザは、フィールド１０２、１０４、１０６の間を移動し、適切な検索語句を適切なフィールドに入力することができる。例えば、ユーザは、「Ｒｏｂｅｒｔ  Ｊｏｈｎｓｏｎ」という語句をアーティスト・フィールド１０２に入力することができる。フィールド１０２に入力するとき、スライダ・アセンブリ８８を使用して、適切な文字を入力することができる。例えば、スライダ・アセンブリ８８の上方移動または下方移動は、ユーザがフィールド間を移動することを可能にすることができ、スライダ・アセンブリ８８の押下の結果、特定のフィールドを選択することができる。選択の後、スライダ・アセンブリ８８の上方移動または下方移動は、ユーザが適切な文字を選択することを可能にすることができ、スライダ・アセンブリ８８の押下の結果、文字を選択することができる。あるいは、フル・キーボードまたは部分的キーボード（図示せず）を含むようにパーソナル・メディア装置１２、３８を構成することもできる。検索語句が定義された後、ユーザは、「検索」ボタン１０８または（別法として）「取消し」ボタン１１０を選択することができる。
【００６０】
上記で論じたように、パーソナル・メディア装置１２、３８は、ドッキング・クレードル６０を介して例えばプロキシ・コンピュータ５８とインターフェースするためのバス・インターフェース１８０を含むことができる。さらに、上記で論じたように、パーソナル・メディア装置１２、３８を、例えば、パーソナル・メディア装置１２、３８と、例えばＷＡＰ５２との間で確立されたワイヤレス通信チャネル５０を介して、ネットワーク３０（および／または他のパーソナル・メディア装置）にワイヤレスに結合することができる。したがって、パーソナル・メディア装置１２、３８は、パーソナル・メディア装置１２、３８をネットワーク３０（またはネットワーク３２）および／または他のパーソナル・メディア装置にワイヤレスに結合するワイヤレス・インターフェース１８２を含むことができる。例えばＷＡＰ５２に対するＲＦ通信のためのアンテナ・アセンブリ１８４、および／または例えば第２パーソナル・メディア装置との赤外線通信のためのＩＲ（すなわち赤外線）通信アセンブリ１８６に、ワイヤレス・インターフェース１８２を結合することができる。さらに、上記で論じたように、パーソナル・メディア装置１２、３８は、装置アプリケーション６４の命令セットおよびサブルーチンを格納する記憶装置６６を含むことができる。さらに、記憶装置６６を使用して、メディア配布システム１８からダウンロードされたメディア・データ・ファイルを格納し、メディア配布システム１８からストリーミングされたメディア・データ・ストリーム（またはその部分）を一時的に格納することができる。
【００６１】
記憶装置６６、バス・インターフェース１８０、およびワイヤレス・インターフェース１８２を、（それぞれ）１つまたは複数のデータ／システム・バス１８８、１９０、１９２を介してマイクロプロセッサ１５０とそれぞれ結合することができる。
【００６２】
上記で論じたように、メディア配布システム１８は、ユーザ１４、２０、２２、２４、２６にメディア・コンテンツを配布することができ、それによって、配布されるメディア・コンテンツは、メディア・データ・ストリームおよび／またはメディア・データ・ファイルの形式でよい。
【００６３】
したがって、ユーザがメディア・データ・ファイルをダウンロードすることだけを可能にするようにメディア配布システム１８を構成することができる。例えば、メディア配布システム１８からメディア・データ・ファイル（その例は、限定はしないが、ＭＰ３エンコーダまたはＡｄｖａｎｃｅｄ  Ａｕｄｉｏ  Ｃｏｄｉｎｇ（ＡＡＣ）エンコーダを使用して符号化および圧縮されたオーディオ・ファイル、あるいはデジタル・ビデオ符号化ファイルを含むことができる）をダウンロードすることをユーザ２０に許可することができ、それによって、メディア・データ・ファイルのコピーが、パーソナル・メディア装置３８に転送される。
【００６４】
あるいは、ユーザがメディア・データ・ファイルのメディア・データ・ストリームを受信および処理することだけを可能にするようにメディア配布システム１８を構成することもできる。例えば、メディア配布システム１８から受信されるメディア・データ・ストリームを（携帯情報端末４０上で）受信および処理することをユーザ２４に許可することができる。上記で論じたように、メディア・コンテンツが例えばコンピュータ２８から携帯情報端末４０にストリーミングされるとき、メディア・データ・ファイルのコピーを携帯情報端末４０上に永続的に保持することはできない。
【００６５】
さらに、ユーザがメディア・データ・ストリームを受信および処理し、メディア・データ・ファイルをダウンロードすることを可能にするようにメディア配布システム１８を構成することができる。そのようなメディア配布システムの例は、ワシントン州シアトルのＲｅａｌＮｅｔｗｏｒｋｓ，Ｉｎｃ．によって提供されるＲｈａｐｓｏｄｙ（商標）サービスを含む。したがって、メディア配布システム１８から、デジタル符号化メディア・データ・ファイルをダウンロードし、メディア・データ・ストリームを受信および処理することをユーザ２６に許可することができる。したがって、メディア・データ・ファイルのコピーをコンピュータ２８から携帯電話４２に転送することができ、メディア・データ・ファイルのストリームをコンピュータ２８から携帯電話４２で受信することができる。
【００６６】
直接的アクセス
上記で論じたように、メディア配布システム１８に直接的にアクセスすることができ、またはプロキシ・コンピュータを介してアクセスすることができる。例えば、ユーザ２０、２４、２６は、様々なクライアント電子装置を介してメディア配布システム１８に直接的にアクセスすることができ、様々なクライアント電子装置の例は、限定はしないが、例えばパーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２、テレビジョン（図示せず）、ケーブル・ボックス（図示せず）、インターネットラジオ（図示せず）、または専用ネットワーク装置（図示せず）を含むことができる。
【００６７】
メディア配布システム１８に直接的にアクセスするとき、標準化プロトコルを使用することができる。例えば、ＳＯＡＰ（すなわちＳｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）を使用して、クライアント電子装置（例えばパーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２）をメディア配布システム１８に結合することができる。
【００６８】
当技術分野で周知のように、ＳＯＡＰプロトコルは、コンピュータ・ネットワーク（例えばネットワーク３０、３２）を介してＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）メッセージを交換することを可能にする。ＨＴＴＰ（すなわちＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）を使用してこうしたメッセージを交換することができる。
【００６９】
ＳＯＡＰは、ＲＰＣ（すなわちＲｅｍｏｔｅ  Ｐｒｏｃｅｄｕｒｅ  Ｐｒｏｔｏｃｏｌ）プロセスを使用することができ、ＲＰＣプロセスでは、第１ネットワーク・ノード（例えばパーソナル・メディア装置３８）が別のネットワーク・ノード（例えばコンピュータ２８）に要求メッセージを送信し、第２ネットワーク・ノード（例えばコンピュータ２８）が第１ネットワーク・ノード（例えばパーソナル・メディア装置３８）に応答メッセージを送信する。上記ではシステムがＳＯＡＰを使用するものとして説明されるが、他の構成も可能であり、本開示の範囲内にあるとみなされる。例えば、ＪＳＯＮ（すなわちＪａｖａ（登録商標）  Ｓｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎａｔａｔｉｏｎ）、ＲＥＳＴ（すなわちＲＥｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ）、およびＸＭＬ−ＲＰＣ（すなわちｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｅａｇｅ  Ｒｅｍｏｔｅ  Ｐｒｏｃｅｄｕｒｅ  ｃａｌｌ）などの他のプロトコルを使用することができる。
【００７０】
アプリケーション・プログラミング・インターフェース
図４および５も参照すると、上記で論じたように、メディア配布システム１８は、コンピュータ２８と、パーソナル・メディア装置３８、携帯情報端末４０、および携帯電話４２との間の、例えばＳＯＡＰを介する通信を可能にするためにＡＰＩ１０を含むことができる。さらに、以下でより詳細に論じるように、メディア配布システム１８／ＡＰＩ１０は、装置アプリケーション６４内に含まれる１つまたは複数のクライアント・スタブ２０２と対話するために１つまたは複数のサーバ・スタブ２００を含むことができる。
【００７１】
ＡＰＩ１０は、メディア配布システム１８のサービスを求める要求を他のコンピュータ・プログラム（例えば装置アプリケーション６４）によって作成することを可能にし、かつ／またはメディア配布システム１８からデータを取り出すこと、および／またはメディア配布システム１８にデータを提供することを可能にする、メディア配布システム１８に対するインターフェースとして働くことができる。
【００７２】
ＡＰＩ１０は、（メディア配布システム１８内の）機能のソース・コードに対するアクセスを許可することなく、または（メディア配布システム１８内の）機能の内部動作の詳細な理解を必要とすることなく、どのように装置アプリケーション６４が（メディア配布システム１８内の）１組の機能にアクセスすることができるかを記述することができる。
【００７３】
上記で論じたように、メディア配布システム１８は、（ダウンロードまたはストリームの形態の）メディア・データ・ファイル２０４を、例えば、パーソナル・メディア装置１２、３８、携帯情報端末４０、携帯電話４２などのクライアント電子装置に提供する。メディア配布システム１８はまた、メディア・データ・ファイル２０４を索引付けし、メディア配布システム１８を介して入手可能なメディア・データ・ファイル２０４をユーザが検索／ブラウズすることを可能にするファイル・カタログ２０６を維持することもできる。コンピュータ２８に結合された記憶装置３４上にファイル・カタログ２０６を維持することができる。メディア・データ・ファイル２０４および／またはファイル・カタログ２０６をメディア・リポジトリ２０７内に含めることができる。メディア・リポジトリ２０７の任意の例は、Ｏｒａｃｌｅ（商標）データベース、ＩＢＭ  ＤＢ２（商標）データベース、Ｓｙｂａｓｅ（商標）データベース、Ｃｏｍｐｕｔｅｒ  Ａｓｓｏｃｉａｔｅｓ（商標）データベース、またはＭｉｃｒｏｓｏｆｔ  Ａｃｃｅｓｓ（商標）データベースなどのデータベースを含むことができる。
【００７４】
以下でより詳細に論じるように、クライアント電子装置（例えばパーソナル・メディア装置１２、３８、携帯情報端末４０、および携帯電話４２）のユーザが、ファイル・カタログ２０６をブラウズ／検索し（２５０）、複数のメディア・データ・ファイル２０４から選ばれた１つまたは複数のメディア・データ・ファイルを識別する（２５２）ことを可能にするようにＡＰＩ１０を構成することができる。さらに、標準化プロトコルを使用して、クライアント電子装置（例えばパーソナル・メディア装置１２、３８、携帯情報端末４０、および携帯電話４２）からデータ要求を受信し（２５４）、受信したデータ要求に応答して、データをサード・パーティ使用可能フォーマットでクライアント電子装置（例えばパーソナル・メディア装置１２、３８、携帯情報端末４０、および携帯電話４２）に提供する（２５６）ようにＡＰＩ１０を構成することができる。
【００７５】
クライアント電子装置の構成
メディア配布システム１８に直接的にアクセスするようにクライアント電子装置（例えばパーソナル・メディア装置１２、３８、携帯情報端末４０、および携帯電話４２）を構成するとき、２つの装置（例えばクライアント電子装置とコンピュータ２８）間で、標準化プロトコルを確立することができる。上記で論じたように、そのような標準化プロトコルの一例はＳＯＡＰである。標準化プロトコルが確立され、装置が互いに通信することができるようになると、例えば記憶装置３４上に常駐する、１つまたは複数のＷＳＤＬ（すなわちＷｅｂ  Ｓｅｒｖｉｃｅｓ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）２０８をクライアント電子装置で処理して、任意の必要なクライアント・スタブ（例えばクライアント・スタブ２０２）の生成を自動化することができる。
【００７６】
ＷＳＤＬ２０８は、クライアント装置がどのようにウェブ・サービスと通信することができるかを記述するサービス記述（通常はＸＭＬ）である。例えば、ＷＳＤＬ２０８は、装置アプリケーション６４（したがってクライアント電子装置）がどのようにメディア配布システム１８／ＡＰＩ１０と通信することができるかを記述することができる。さらに、ＷＳＤＬ２０８は、例えば、メディア配布システム１８と対話するのに必要なプロトコル・バインディングおよびメッセージ・フォーマットを定義することができる。通常、サポートされるオペレーションおよびメッセージが抽象的に記述され、次いでネットワーク・プロトコル（例えばＳＯＡＰ）にバインドされる。したがって、ＷＳＤＬ２０８は、メディア配布システム１８に対するパブリック・インターフェースを定義することができる。
【００７７】
したがって、メディア配布システム１８に直接的にアクセスするようにクライアント電子装置を構成するとき、通信がコンピュータ２８（すなわち、メディア配布システム１８を実行するコンピュータ）とクライアント電子装置（例えばパーソナル・メディア装置１２、３８、携帯情報端末４０、および携帯電話４２）との間で（標準化プロトコルを使用して）確立されると、クライアント電子装置は、１つまたは複数のＷＳＤＬ２０８を（コンピュータ２８から）得て、それを処理して、クライアント電子装置がアクセスすることを望むサービス／機能に関する適切なクライアント・スタブ（例えばクライアント・スタブ２０２）を生成することができる。ＷＳＤＬ２０８の例は以下の通りである。
アカウント管理ＷＳＤＬ（実施例１）
（コマンド）
ライブラリ管理ＷＳＤＬ（実施例２）
（コマンド）
メタデータＷＳＤＬ（実施例３）
（コマンド）
再生ＷＳＤＬ（実施例４）
（コマンド）
検索ＷＳＤＬ（実施例５）
（コマンド）
【００７８】
ＷＳＤＬを生成するとき、ＷＳＤＬが構成される方式（したがって、クライアント・スタブが生成される方式）は、プログラマの意図に基づいて変化する可能性がある。例えば、メディア配布システム１８のすべてのサービス／機能に関するクライアント・スタブを生成するように単一のＷＳＤＬを設計することができる。あるいは、メディア配布システム１８内で利用可能な各サービス／機能について別々のＷＳＤＬを利用可能にすることもできる。例えば、第１ＷＳＤＬ（上記で示される）を、メディア配布システム１８のアカウント管理サービス／機能に関するクライアント・スタブを生成するのに利用可能にすることができ、第２ＷＳＤＬ（上記で示される）を、メディア配布システム１８のライブラリ管理サービス／機能に関するクライアント・スタブを生成するのに利用可能にすることができ、第３ＷＳＤＬ（上記で示される）を、メディア配布システム１８のメタデータ・サービス／機能に関するクライアント・スタブを生成するのに利用可能にすることができ、第４ＷＳＤＬ（上記で示される）を、メディア配布システム１８の再生サービス／機能に関するクライアント・スタブを生成するのに利用可能にすることができ、第５ＷＳＤＬ（上記で示される）を、メディア配布システム１８の検索サービス／機能に関するクライアント・スタブを生成するのに利用可能にすることができる。
【００７９】
クライアント電子装置（例えばパーソナル・メディア装置１２、３８、携帯情報端末４０、携帯電話４２）がメディア配布システム１８の様々なサービス／機能にアクセスすることを可能にするように適切なクライアント・スタブ（例えば、クライアント・スタブ２０２）が生成された後、クライアント電子装置は、例えば、ファイル・カタログ２０６をブラウズ／検索し（２５０）、複数のメディア・データ・ファイル２０４から選ばれた１つまたは複数のメディア・データ・ファイルを識別し（２５２）、標準化プロトコルを使用してクライアント電子装置からデータ要求（複数可）を受信し（２５４）、受信したデータ要求（複数可）に応答して、データをサード・パーティ使用可能フォーマットでクライアント電子装置に提供する（２５６）ことができる。メディア配布システム１８の様々なサービス／機能の例は、検索サービス／機能、アカウント管理サービス／機能、再生サービス／機能、メタデータ・サービス／機能、およびライブラリ・サービス／機能を含む。
【００８０】
ＲＰＣ通信
上記で論じたように、ＳＯＡＰは、ＲＰＣ（すなわちＲｅｍｏｔｅ  Ｐｒｏｃｅｄｕｒｅ  Ｐｒｏｔｏｃｏｌ）プロセスを使用することができ、ＲＰＣプロセスでは、第１ネットワーク・ノード（例えばパーソナル・メディア装置３８）が別のネットワーク・ノード（例えばコンピュータ２８）に要求メッセージを送信し、第２ネットワーク・ノード（例えばコンピュータ２８）が第１ネットワーク・ノード（例えばパーソナル・メディア装置３８）に応答メッセージを送信する。
【００８１】
ＲＰＣプロセスは通常、（例えば、装置アプリケーション６４内の）クライアント側で開始する。装置アプリケーション６４はクライアント・スタブ２０２を呼び出すことができ、上述のように、クライアント・スタブ２０２は、（通常はＷＳＤＬを使用して）メディア配布システム１８の様々なサービス／機能へのアクセスを可能にするように生成される。通常、サービス／機能を実装するコードを含むのではなく、クライアント・スタブ２０２は、必要なパラメータを装置アプリケーション６４から取り出すことができ、それをクライアント・ランタイム・ライブラリ２１０に提供することができる。装置アプリケーション６４から得られるパラメータは、例えば、ファイル・カタログ２０２をブラウズ／検索する（２５０）ときに使用される検索語句を定義し、ダウンロードのための１つまたは複数のメディア・データ・ファイル２００を識別し（２５２）、コンピュータ２８にメタデータを要求または送信し、ユーザのライブラリにエントリを追加し、またはユーザのライブラリからエントリを除去し、あるいは加入アカウントをセットアップし、または取り消すことができる。
【００８２】
クライアント・ランタイム・ライブラリ２１０は、（装置アプリケーション６４から得られる）パラメータをＮＤＲ（すなわちＮｅｔｗｏｒｋ  Ｄａｔａ  Ｒｅｐｒｅｓｅｎｔａｉｏｎ）フォーマットのメッセージ２１２に変換することができる。標準化プロトコル２１４（例えばＳＯＡＰ）を使用して、ネットワーク３０、３２を介してメッセージ２１２をコンピュータ２８（すなわち、メディア配布システム１８を実行するコンピュータ）に送信することができる。クライアント・ランタイム・ライブラリ２１０は、クライアント・スタブ２０２の機能をサポートするルーチンのオブジェクト・ライブラリでよい。
【００８３】
コンピュータ２８がクライアント電子装置からＮＤＲメッセージ２１２を受信するとき（２５４）、サーバ・ランタイム・ライブラリ２１６は、ＮＤＲメッセージ２１２を受諾して、サーバ・スタブ２００を呼び出すことができる。サーバ・スタブ２００は、メッセージ２１２内に含まれるパラメータを取り出し、それを、ネットワーク伝送フォーマット（すなわちＮＤＲフォーマット）から、コンピュータ２８で使用可能なフォーマットに変換することができる。変換した後、サーバ・スタブ２００は、メディア配布システム１８内の要求されたサービス／機能を呼び出すことができる。
【００８４】
メディア配布システム１８内の要求されたサービス／機能が実行されると、１つまたは複数の出力パラメータを（コンピュータ２８上で）生成することができる。メディア配布システム１８で生成される出力パラメータは、例えば、検索結果を定義し、ダウンロード要求の受信を確認し、またはメタデータの受信を確認することができる。
【００８５】
サーバ・ランタイム・ライブラリ２１６は、（メディア配布システム１８で生成された）出力パラメータをＮＤＲフォーマットのメッセージ２１８に変換することができる。ネットワーク３０、３２を介してクライアント電子装置（例えばパーソナル・メディア装置１２、３８、携帯情報端末４０、または携帯電話４２）にメッセージ２１８を（すなわち、標準化プロトコル２２０（例えばＳＯＡＰ）を使用して）提供することができる（２５６）。サーバ・ランタイム・ライブラリ２１６は、サーバ・スタブ２００の機能をサポートするルーチンのオブジェクト・ライブラリでよい。
【００８６】
クライアント電子装置がコンピュータ２８からＮＤＲメッセージ２１８を受信したとき、クライアント・ランタイム・ライブラリ２１０は、ＮＤＲメッセージ２１８を受諾し、クライアント・スタブ２０２を呼び出すことができる。クライアント・スタブ２０２は、メッセージ２１８内に含まれる出力パラメータを取り出し、それを、ネットワーク伝送フォーマット（すなわちＮＤＲフォーマット）から、クライアント電子装置で使用可能なフォーマットに変換することができる。
【００８７】
上記で論じたように、クライアント電子装置に提供されるデータを、サード・パーティ使用可能フォーマット（すなわち、サード・パーティアプリケーションで使用可能な標準化フォーマット）で提供することができる。そのようなフォーマットの一例はＸＭＬである。したがって、メッセージ２１２、２１８のうちの１つまたは複数は、様々なアプリケーション（例えばウェブ・ブラウザ）で処理可能なＸＭＬベースのメッセージでよい。
【００８８】
特殊ＡＰＩ
上記で論じたように、ＷＳＤＬを生成するとき、ＷＳＤＬが構成される方式（したがって、クライアント・スタブが生成される方式）は、プログラマの意図に基づいて変化する可能性がある。例えば、メディア配布システム１８内で利用可能な各サービス／機能について別々のＷＳＤＬを利用可能にすることができる。したがって、第１ＷＳＤＬを、メディア配布システム１８のアカウント管理サービス／機能に関するクライアント・スタブを生成するのに利用可能にすることができ、第２ＷＳＤＬを、メディア配布システム１８のライブラリ管理サービス／機能に関するクライアント・スタブを生成するのに利用可能にすることができ、第３ＷＳＤＬを、メディア配布システム１８のメタデータ・サービス／機能に関するクライアント・スタブを生成するのに利用可能にすることができ、第４ＷＳＤＬを、メディア配布システム１８の再生サービス／機能に関するクライアント・スタブを生成するのに利用可能にすることができ、第５ＷＳＤＬを、メディア配布システム１８の検索サービス／機能に関するクライアント・スタブを生成するのに利用可能にすることができる。
【００８９】
アカウント管理ＡＰＩ
図６も参照すると、クライアント電子装置（例えばパーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２）のユーザ（例えばユーザ２０、２４、２６）が複数のメディア・データ・ファイル（例えばメディア・データ・ファイル２０４）から選ばれた１つまたは複数のメディア・データ・ファイルにアクセスする（３００）ことを可能にすることのできるアカウント管理ＡＰＩとしてＡＰＩ１０を構成することができる。クライアント電子装置（例えばパーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２）のユーザ（例えばユーザ２０、２４、２６）がメディア配布システム１８に関連する１つまたは複数の加入アカウントを管理する（３０２）ことを可能にするようにアカウント管理ＡＰＩを構成することができる。
【００９０】
メディア配布システム１８は、ユーザ（例えばユーザ２０、２４、２６）がメディア配布システム１８に加入し、メディア配布システム１８へのアクセスの許可を受けるための、例えば月々の加入料を支払うという点で、加入ベースのサービスでよい。ユーザ（例えばユーザ２０、２４、２６）がメディア配布システム１８に加入すると、ユーザは、クライアント電子装置上で使用するためにメディア・コンテンツ（例えばメディア・データ・ファイル２０４）を得ることができ、クライアント電子装置の例は、限定はしないが、パーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２、テレビジョン（図示せず）、ケーブル・ボックス（図示せず）、インターネットラジオ（図示せず）、または専用ネットワーク装置（図示せず）を含むことができる。
【００９１】
上記で論じたように、メディア配布システム１８から得られるメディア・コンテンツ（例えばメディア・データ・ファイル２０４）は、例えば、メディア配布システム１８から受信される購入済みダウンロード（すなわち、例えばユーザ２０、２４、２６に対して、永続的な使用のために許諾されたメディア・コンテンツ）と、メディア配布システム１８から受信される加入ダウンロード（すなわち、例えばユーザ２０、２４、２６に対して、メディア配布システム１８との有効な加入契約が存在する間の使用のために許諾されたメディア・コンテンツ）と、メディア配布システム１８からストリーミングされるメディア・コンテンツの形態でよい。
【００９２】
通常、メディア配布システム１８にアクセスするとき、メディア配布システム１８に対して、ユーザ（例えばユーザ２０、２４、２６）および／またはクライアント電子装置（例えばパーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２）を識別するユーザ「証明書」を提供するようにユーザ２０、２４、２６に要求することができる。こうした証明書の受信時に、メディア配布システム１８は、証明書を検証することを試みることができ、検証された場合、ユーザ２０、２４、２６および／または装置３８、４０、４２に、メディア加入システム１８へのアクセスを許可する。メディア配布システム１８で受信および検証される証明書は、限定はしないが、ユーザ名、ユーザ・パスワード、ユーザ・キー、装置名、装置パスワード、装置キー、ならびに／あるいは１つまたは複数のデジタル証明書を含むことができる。
【００９３】
最初にクライアント電子装置を構成するとき、ユーザにメディア配布システム１８への「トライアル」加入を許可することができ、したがって、ユーザは、サービスを無料で試すことが可能となる。したがって、「トライアル」加入の生成を可能にするようにアカウント管理ＡＰＩ（例えばＡＰＩ１０）を構成することができる。しかし、こうした「トライアル」加入は、限定された期間（例えば１か月）についてのものでよく、または使用の制限を与えることができる（例えば２５回の再生／ダウンロード）。したがって、トライアル加入の満了日／時刻を監視するようにＡＰＩ１０を構成することができ、満了日／時刻（またはそれに妥当に近い日付／時刻）の発生時に、ＡＰＩ１０は、ユーザ（例えばユーザ２０、２４、２６）に、ユーザの「トライアル」加入を有料加入に転換するオプションを提示することができる。例えばディスプレイ・パネル９０（図２）を介して、この提案をユーザに提示することができる。提案が受諾された場合、追加の情報（例えば請求情報）を提供するようにユーザに要求することができる。
【００９４】
アカウント管理ＡＰＩ（例えばＡＰＩ１０）を介して、他のアカウント管理サービス／機能をユーザ（例えばユーザ２０、２４、２６）に対して利用可能にすることができる。例えば、ＡＰＩ１０は、例えばユーザがメディア配布システム１８との新しい有料加入を生成し、メディア配布システム１８との既存の有料加入を更新し、メディア配布システム１８とのトライアル加入を取り消し、メディア配布システム１８との有料加入を取り消すことを可能にすることができる。
【００９５】
ライブラリ管理ＡＰＩ
図７も参照すると、クライアント電子装置（例えばパーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２）のユーザ（例えばユーザ２０、２４、２６）が複数のメディア・データ・ファイル（例えばメディア・データ・ファイル２０４）から選ばれた１つまたは複数のメディア・データ・ファイルにアクセスする（３５０）ことを可能にすることのできるライブラリ管理ＡＰＩとしてＡＰＩ１０を構成することができる。クライアント電子装置（例えばパーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２）のユーザ（例えばユーザ２０、２４、２６）が、メディア配布システム１８に関連する１つまたは複数のメディア・ライブラリを管理する（３５２）ことを可能にするようにライブラリ管理ＡＰＩを構成することができる。
【００９６】
限定はしないが、パーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２、テレビジョン（図示せず）、ケーブル・ボックス（図示せず）、インターネットラジオ（図示せず）、または専用ネットワーク装置（図示せず）を含むことのできるクライアント電子装置の使用中、クライアント電子装置上でレンダリングされるメディア・コンテンツ項目（例えばメディア・データ・ファイル２０４）を監視して、クライアント電子装置上でレンダリングされるメディア・コンテンツ項目のシーケンスを定義するメディア履歴ファイル１１２を編集するのに使用することができる。メディア履歴ファイル１１２は通常はローカルに維持される（例えば、クライアント電子装置上のメモリ内に維持される）が、別法として／さらに、メディア履歴ファイル１１２をリモート・メディア履歴ファイル１１２’としてリモートに維持する（例えば、コンピュータ２８上に維持する）ことができる。
【００９７】
クライアント電子装置を通じて、ユーザ（例えばユーザ２０、２４、２６）は、メディア履歴ファイル１１２、１１２’（またはその部分）をプレイリストとして保存することができる。プレイリストの一例は、メディア配布システム１８が順番にレンダリングすることのできるメディア・コンテンツ項目（例えば、ストリーミングされた加入トラックおよびアルバム、ダウンロードされた加入トラックおよびアルバム、ならびに購入／リッピングされたトラック）のグループを含むことができる。このことは、ユーザが、カスタム音楽コンピレーションを（複数のプレイリストの形態で）編集することを可能にする。
【００９８】
ライブラリ管理ＡＰＩ（例えばＡＰＩ１０）は、クライアント電子装置のユーザが、メディア配布システム１８に関連する１つまたは複数のメディア・ライブラリ・ファイル（例えばライブラリ・ファイル１１４、１１４’）を管理する（３５２）ことを可能にすることができる。プレイリストと同様に、メディア・ライブラリ・ファイル１１４、１１４’は、個々のメディア・コンテンツ項目（例えば、ストリーミングされた加入トラックおよびアルバム、ダウンロードされた加入トラックおよびアルバム、ならびに購入／リッピングされたトラック）をグループ化し、定義し、かつ／または配置することができる。メディア・ライブラリ・ファイル１１４は通常はローカルに維持される（例えば、クライアント電子装置上のメモリ内に維持される）が、別法として／さらに、メディア・ライブラリ・ファイル１１４をリモート・メディア・ライブラリ・ファイル１１４’としてリモートに維持する（例えば、コンピュータ２８上に維持する）ことができる。
【００９９】
ライブラリ管理ＡＰＩ（例えばＡＰＩ１０）を介して、他のライブラリ管理サービス／機能をユーザ（例えばユーザ２０、２４、２６）に対して利用可能にすることができる。例えば、ＡＰＩ１０は、ユーザがライブラリ・ファイル（例えばライブラリ・ファイル１１４、１１４’）を定義し、ライブラリ・ファイルを保存し、ライブラリ・ファイルを削除し、ライブラリ・ファイルを修正し、ライブラリ・ファイルを（メディア配布システム１８の別のユーザと）共有し、（メディア配布システム１８の別のユーザによる閲覧のために）ライブラリ・ファイルを公表することを可能にすることができる。
【０１００】
メタデータＡＰＩ
図８も参照すると、クライアント電子装置（例えばパーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２）のユーザ（例えばユーザ２０、２４、２６）が、複数のメディア・データ・ファイル（例えばメディア・データ・ファイル２０４）から選ばれた１つまたは複数のメディア・データ・ファイルにアクセスする（４００）ことを可能にすることのできるメタデータＡＰＩとしてＡＰＩ１０を構成することができる。クライアント電子装置（例えばパーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２）のユーザ（例えばユーザ２０、２４、２６）が１つまたは複数の検索語句を定義する（４０２）ことを可能にするようにメタデータ・アプリケーション・プログラミング・インターフェースを構成することができる。１つまたは複数の検索語句に基づいて、複数のメディア・データ・ファイルの少なくとも一部に対して照会を実行することができる（４０４）。結果セットを生成することができ（４０６）、結果セットの一部を、その一部が結果セット全体未満となることができるようにユーザ（例えばユーザ２０、２４、２６）に対して表示することができる（４０８）。
【０１０１】
上記で論じたように、メディア配布システム１８は、メディア・データ・ストリームおよび／またはメディア・データ・ファイルをユーザ（例えばユーザ２０、２４、２６）に提供することができる。メタデータを、メディア配布システム１８によって提供される各メディア・データ・ストリームおよび／またはメディア・データ・ファイルと関連付けることができる。このメタデータは、（限定はしないが）例えばアーティスト識別子、アルバム識別子、トラック識別子、アルバム・カバー・イメージ、音楽ジャンル識別子、および優先順位レーティングを含むことができる。音楽ジャンル識別子の例は、限定はしないが「ロック」、「ブルース」、「クラシック」、「オールディーズ」、および「ヒップ・ホップ」を含むことができる。優先順位レーティングの例は、番号１〜１０を含むことができる。したがって、番号１の優先順位レーティングは、非常に影響力のある／人気のあるアーティストを識別することができ、番号１０の優先順位レーティングは、影響力のない／人気のないアーティストを識別することができる。メディア配布システム１８の従業員がレーティングを定義することができるという点で、優先順位レーティングを編集式に決定することができる。あるいは／さらに、例えばトラックまたはアーティストが（任意のユーザによって）レンダリングされる回数がアーティストの優先順位レーティングを決定するという点で、優先順位レーティングを統計的に決定することができる。
【０１０２】
上記で論じたように、クライアント電子装置のユーザ（例えばユーザ２０、２４、２６）は、検索画面１００を例えばスライダ・アセンブリ８８と共に使用して、パーソナル・メディア装置１２、３８内に格納され、かつ／またはメディア配布システム１８から利用可能なメディア・コンテンツを検索／ブラウズすることができる。アーティスト・フィールド１０２、アルバム・フィールド１０４、およびトラック・フィールド１０６に加えて、検索画面１００は、ジャンル・フィールド１１６および優先順位フィールド１１８を含むことができる。例えばスライダ・アセンブリ８８を使用して、ユーザは、フィールド１０２、１０４、１０６、１１６、１１８の間を移動し、適切な検索語句を適切なフィールドに入力することができる。
【０１０３】
メタデータＡＰＩ（例えばＡＰＩ１０）は、クライアント電子装置（例えばパーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２）のユーザ（例えばユーザ２０、２４、２６）が、例えばフィールド１０２、１０４、１０６、１１６、１１８内の１つまたは複数の検索語句を定義する（４０２）ことを可能にすることができる。例えば、フィールド１０２、１０４、１０６を空白のままにすることができ、ユーザは、ジャンル・フィールド１１６に「ブルース」という語を入力し、優先順位フィールド１１８に「１０」を入力することができる。上記で論じたように、フィールド（例えばフィールド１１６、１１８）に入力するとき、スライダ・アセンブリ８８を使用して適切な文字を入力することができる。検索語句が定義されると、ユーザは、「検索」ボタン１０８または（別法として）「取消し」ボタン１１０を選択することができる。
【０１０４】
「検索」ボタン１０８が選択される場合、１つまたは複数の検索語句に基づいて、複数のメディア・データ・ファイルの少なくとも一部に対して照会を実行することができる（４０４）。例えば、検索語句が「ブルース」（ジャンルについて）および「１０」（優先順位レーティングについて）である場合、ＡＰＩ１０は、メディア・データ・ファイル（例えばメディア・データ・ファイル２０４）を照会して、どのメディア・データ・ファイルが照会を満たすか（すなわち、どのメディア・データ・ファイルが優先順位レーティング「１０」を有し、かつ「ブルース」として分類されるか）を判定することができる。上記で論じたように、メタデータを使用して、メディア・データ・ファイルの優先順位レーティングおよびジャンルを定義することができる。したがって、メディア・データ・ファイルに関連するメタデータを検索することにより、結果セットを生成することができる（４０６）。クライアント電子装置は、比較的小型のディスプレイ・パネル（例えば図２のディスプレイ・パネル９０）を含むことがあるので、ディスプレイ・パネルの表示能力を超える、無制限の結果セットの生成は望ましくないことがある。例えば、ディスプレイ・パネル９０が最大で１０個の行項目を含む結果セットを表示することができ、生成される結果セットが３５０個の行項目を含む場合、結果セットを１０個の行項目の増分で表示することが望ましいことがある。したがって、ＡＰＩ１０は、結果セットの一部のみを、その一部が結果セット全体未満となることができるように、ユーザ（例えばユーザ２０、２４、２６）に対して表示することができる（４０８）。したがって、結果セットが大規模であり、ディスプレイ・パネルが最大で１０個の行項目を表示することができる場合、ＡＰＩ１０は行項目１〜１０を表示することができる。ディスプレイ・パネル９０上で行項目１１〜２０を確認するために、例えばスライダ・アセンブリ８８を下方向に移動するようにユーザに要求することができる。
【０１０５】
さらに／あるいは、大規模な結果セットについて、ＡＰＩ１０は、アルファベットの各文字についての開始行項目を識別するアルファベット索引をレンダリングすることができる。例えば、３５０個の行項目結果セットが生成される場合、ディスプレイ・パネル９０上にアルファベット索引をレンダリングすることができる。そのようなアルファベット索引の一例は以下の通りである。
【表１】
2010503080.tif 000003
【０１０６】
したがって、３５０個の行項目を含む結果セットについて、（ＡＰＩ１０によってレンダリングされた）アルファベット索引は、アルファベットの各文字についての開始行項目を定義することができる。例えば、ユーザが「Ｒｏｂｅｒｔ  Ｊｏｈｎｓｏｎ」に関心があった場合、「Ｒｏｂｅｒｔ  Ｊｏｈｎｓｏｎ」が行項目１１０から行項目１２２の中のどこかにリストされることになるので（アーティストがラスト・ネーム、ファースト・ネームのフォーマットでリストされると仮定する）、ユーザは、行項目１１０まで前方にスキップすることができる。
【０１０７】
ＡＰＩ１０がアルファベット索引をレンダリングするとき、ユーザは、例えばスライダ・アセンブリ８８を使用して、適切な行項目開始地点（例えば行項目１１０）を選択することができる。ユーザが適切な行項目開始地点（例えば行項目１１０）を選択すると、ＡＰＩ１０は、定義済みのいくつかの行項目（例えば１０個）を、例えばディスプレイ・パネル９０内でレンダリングすることができる。例えば、上述のアルファベット索引から「１１０」を選択するとき、ＡＰＩ１０は、（ディスプレイ・パネル９０内で）行項目１１０〜１１９をレンダリングすることができる。ユーザが次の１０個の行項目を確認することを望む場合、ユーザは、例えばスライダ・アセンブリ８８を使用することができる。
【０１０８】
再生ＡＰＩ
図９も参照すると、クライアント電子装置（例えばパーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２）のユーザ（例えばユーザ２０、２４、２６）が複数のメディア・データ・ファイル（例えばメディア・データ・ファイル２０４）から選ばれた１つまたは複数のメディア・データ・ファイルにアクセスする（４５０）ことを可能にする再生ＡＰＩとしてＡＰＩ１０を構成することができる。ユーザ（例えばユーザ２０、２４、２６）によって確立された、音楽配布システム１８との間の接続の数を監視する（４５２）ように再生ＡＰＩを構成することができる。ユーザ（例えばユーザ２０、２４、２６）によって確立可能な接続の数を定義済みの接続限度に制限する最大接続ポリシーを実施することができる（４５４）。
【０１０９】
具体的には、音楽配布システム１８を複数の装置と共に働くように構成することができる。例えば、クライアント電子装置（例えば、パーソナル・メディア装置３８、携帯情報端末４０、および携帯電話４２）は、ユーザ（例えばユーザ２０、２４、２６）が（例えば、車内にいる間、ジョギング中、ハイキング中、または運動中に）メディア配布システム１８にリモートにアクセスすることを可能にすることができる。さらにクライアント・コンピュータ４４は、ユーザが自宅または仕事場にいる間にメディア配布システム１８にアクセスすることを可能にすることができる。さらに、専用ネットワーク装置（例えば、Ａ  Ｒｏｋｕ（商標）  Ｓｏｕｎｄｂｒｉｄｇｅ  Ｍ５００、Ｍ１０００、およびＭ２０００、図示せず）が、メディア配布システム１８をホーム・エンターテイメント・システム（図示せず）とインターフェースさせることができ、したがって、ホーム・エンターテイメント・システムを使用してメディア・コンテンツ項目をレンダリングすることが可能となる。したがって、単一の加入が複数の同時接続をサポートすることを可能にするようにメディア配布システム１８を構成することができる。したがって、ユーザが、仕事場にいる間にメディア配布システム１８にアクセスすることができると共に、ユーザの配偶者が、自宅にいる間にメディア配布システム１８に同時にアクセスすることができる。
【０１１０】
したがって、ユーザ（例えばユーザ２０、２４、２６）によって確立された、音楽配布システム１８との間の接続の数を監視する（４５２）ように再生ＡＰＩを構成することができる。ユーザ（例えばユーザ２０、２４、２６）によって確立可能な接続の数を定義済みの接続限度に制限する最大接続ポリシーを実施することができる（４５４）。したがって、定義済みの接続限度が２である場合、ユーザが、（例えば仕事場から）メディア配布システム１８にアクセスすることができると共に、ユーザの配偶者が、（例えば自宅から）メディア配布システム１８に同時にアクセスすることができる。しかし、ユーザの息子がジョギング中に（パーソナル・メディア装置３８を使用して）メディア配布システム１８に同時にアクセスすることを試みる場合、（この例では）第３の接続を許可することは、同時接続が２つという例示的接続限度を超過することになるので、接続を拒否することができる。
【０１１１】
検索ＡＰＩ
図１０も参照すると、クライアント電子装置（例えばパーソナル・メディア装置３８、携帯情報端末４０、携帯電話４２）のユーザが複数のメディア・データ・ファイル（例えばメディア・データ・ファイル２０４）から選ばれた１つまたは複数のメディア・データ・ファイルにアクセスする（５００）ことを可能にすることのできる検索ＡＰＩとしてＡＰＩ１０を構成することができる。ユーザ（例えばユーザ２０、２４、２６）が第１検索語句を定義し（５０２）、第１検索語句に基づいて複数のメディア・データ・ファイルの少なくとも一部の第１照会を実行する（５０４）ことを可能にするように検索ＡＰＩを構成することができる。ユーザ（例えばユーザ２０、２４、２６）が第２検索語句を定義し（５０６）、第１および第２検索語句に基づいて、複数のメディア・データ・ファイルの少なくとも一部の第２照会を実行する（５０８）ことを可能にすることができる。
【０１１２】
上記で論じたように、クライアント電子装置のユーザ（例えばユーザ２０、２４、２６）は、検索画面１００を例えばスライダ・アセンブリ８８と共に使用して、パーソナル・メディア装置１２、３８内に格納され、かつ／またはメディア配布システム１８から入手可能なメディア・コンテンツを検索／ブラウズすることができる。検索画面１００は、アーティスト・フィールド１０２、アルバム・フィールド１０４、トラック・フィールド１０６、ジャンル・フィールド１１６、および優先順位フィールド１１８などの複数の検索フィールドを含むことができる。  
【０１１３】
上述の検索手順に加えて、各文字がフィールド１０２、１０４、１０６、１１６、１１８のうちの１つに入力された後に照会を自動的に実行することができる。例えば、ユーザが「Ｊｏｈｎｓｏｎ」から「Ｊ」を定義する場合（５０２）、照会を自動的に実行して（５０４）、どのアーティストが「Ｊ」で始まるラスト・ネームを有するかを判定することができる。この結果、可能性のある合致が例えば５０，０００個得られることがある。次いでユーザは、第２語句（すなわち「Ｏ」）をアーティスト・フィールド１０２内に定義することができ（５０６）（合計で２つの検索語句、すなわち「ＪＯ」）、第２照会を自動的に実行することができる（５０８）。この結果、可能性のある合致が例えば３０，０００個得られることがある。次いでユーザは、結果セットが、例えばサイズがディスプレイ・パネル９０上で容易にナビゲート可能となるまで、引き続き追加の文字を入力することができる（その結果、検索語句の合計数が多くなる）。したがって、固有であり、かつ長いラスト・ネームを有するアーティストについて、管理可能な結果セットを生成するために、ユーザが必要なのは、アーティストの（ラスト・ネーム全体ではなく）ラスト・ネームの小部分を入力することだけでよい。
【０１１４】
いくつかの実施態様を説明した。それでも、様々な修正を行うことができることを理解されよう。したがって、他の実施態様は、以下の特許請求の範囲の範囲内にある。
【図１】
2010503080.tif 000004
【図２】
2010503080.tif 000005
【図３】
2010503080.tif 000006
【図４】
2010503080.tif 000007
【図５】
2010503080.tif 000008
【図６】
2010503080.tif 000009
【図７】
2010503080.tif 000010
【図８】
2010503080.tif 000011
【図９】
2010503080.tif 000012
【図１０】
2010503080.tif 000013
【誤訳訂正書】
【提出日】平成21年6月2日(2009.6.2)
【誤訳訂正１】
【訂正対象書類名】明細書
【訂正対象項目名】００７７
【訂正方法】変更
【訂正の内容】
【００７７】
したがって、メディア配布システム１８に直接的にアクセスするようにクライアント電子装置を構成するとき、通信がコンピュータ２８（すなわち、メディア配布システム１８を実行するコンピュータ）とクライアント電子装置（例えばパーソナル・メディア装置１２、３８、携帯情報端末４０、および携帯電話４２）との間で（標準化プロトコルを使用して）確立されると、クライアント電子装置は、１つまたは複数のＷＳＤＬ２０８を（コンピュータ２８から）得て、それを処理して、クライアント電子装置がアクセスすることを望むサービス／機能に関する適切なクライアント・スタブ（例えばクライアント・スタブ２０２）を生成することができる。ＷＳＤＬ２０８の例は以下の通りである。
アカウント管理ＷＳＤＬ（実施例１）
2010503080.tif 000014
2010503080.tif 000015
2010503080.tif 000016
2010503080.tif 000017
ライブラリ管理ＷＳＤＬ（実施例２）
2010503080.tif 000018
2010503080.tif 000019
2010503080.tif 000020
2010503080.tif 000021
2010503080.tif 000022
2010503080.tif 000023
2010503080.tif 000024
2010503080.tif 000025
2010503080.tif 000026
2010503080.tif 000027
2010503080.tif 000028
2010503080.tif 000029
2010503080.tif 000030
2010503080.tif 000031
2010503080.tif 000032
2010503080.tif 000033
2010503080.tif 000034
2010503080.tif 000035
2010503080.tif 000036
2010503080.tif 000037
2010503080.tif 000038
2010503080.tif 000039
2010503080.tif 000040
2010503080.tif 000041
2010503080.tif 000042
2010503080.tif 000043
2010503080.tif 000044
2010503080.tif 000045
2010503080.tif 000046
2010503080.tif 000047
2010503080.tif 000048
2010503080.tif 000049
2010503080.tif 000050
2010503080.tif 000051
2010503080.tif 000052
2010503080.tif 000053
2010503080.tif 000054
2010503080.tif 000055
2010503080.tif 000056
2010503080.tif 000057
2010503080.tif 000058
2010503080.tif 000059
2010503080.tif 000060
2010503080.tif 000061
2010503080.tif 000062
2010503080.tif 000063
メタデータＷＳＤＬ（実施例３）
2010503080.tif 000064
2010503080.tif 000065
2010503080.tif 000066
2010503080.tif 000067
2010503080.tif 000068
2010503080.tif 000069
2010503080.tif 000070
2010503080.tif 000071
2010503080.tif 000072
2010503080.tif 000073
2010503080.tif 000074
2010503080.tif 000075
2010503080.tif 000076
2010503080.tif 000077
2010503080.tif 000078
2010503080.tif 000079
2010503080.tif 000080
2010503080.tif 000081
2010503080.tif 000082
2010503080.tif 000083
2010503080.tif 000084
2010503080.tif 000085
2010503080.tif 000086
2010503080.tif 000087
2010503080.tif 000088
2010503080.tif 000089
2010503080.tif 000090
2010503080.tif 000091
2010503080.tif 000092
2010503080.tif 000093
2010503080.tif 000094
2010503080.tif 000095
2010503080.tif 000096
2010503080.tif 000097
2010503080.tif 000098
2010503080.tif 000099
2010503080.tif 000100
2010503080.tif 000101
2010503080.tif 000102
2010503080.tif 000103
2010503080.tif 000104
2010503080.tif 000105
2010503080.tif 000106
2010503080.tif 000107
2010503080.tif 000108
2010503080.tif 000109
2010503080.tif 000110
2010503080.tif 000111
2010503080.tif 000112
再生ＷＳＤＬ（実施例４）
2010503080.tif 000113
2010503080.tif 000114
2010503080.tif 000115
2010503080.tif 000116
2010503080.tif 000117
検索ＷＳＤＬ（実施例５）
2010503080.tif 000118
2010503080.tif 000119
2010503080.tif 000120
2010503080.tif 000121
2010503080.tif 000122
2010503080.tif 000123
【国際調査報告】
2010503080.tif 000124
2010503080.tif 000125
2010503080.tif 000126