(57)【特許請求の範囲】
【請求項１】
処理ユニットと、前記処理ユニットに動作可能に連結され、ユーザデバイスおよび１つまたは複数のリソースホストと動作可能に通信するよう構成される通信コンポーネントと、前記処理ユニットに動作可能に連結され、ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）プレゼンテーション層が記憶されるメモリと、を有するコンピュータ装置において、前記ＸＭＬプレゼンテーション層が前記処理ユニット上で実行されることにより、前記コンピュータ装置が実行する方法であって、
前記ユーザデバイスと遠隔に存在するリモートに実行可能なアプリケーションのリソース情報を前記１つまたは複数のリソースホストから取得するステップであって、前記リソース情報は、前記リモートに実行可能なアプリケーションを起動するための情報を含む、ステップと、
前記リモートに実行可能なアプリケーションのリソース情報を、前記リモートに実行可能なアプリケーションを非クライアント固有のフォーマットで記述するＸＭＬ文書にレンダリングするステップであって、レンダリングされる前記リソース情報は、前記リモートに実行可能なアプリケーションに対応する少なくとも１つのアイコンを含み、前記少なくとも１つのアイコンは前記リモートに実行可能なアプリケーションを起動するためにクリックされる、ステップと、
前記ＸＭＬ文書を前記ユーザデバイスに提供するステップと
を含み、
前記ＸＭＬ文書を前記ユーザデバイスに提供する前記ステップは、前記リモートに実行可能なアプリケーションを求める前記ユーザデバイスからの要求に応答して、前記ＸＭＬ文書を提供するステップを
含むことを特徴とする方法。
【請求項２】
前記リソース情報は、前記リモートに実行可能なアプリケーションと関連付けることができる１つまたは複数のファイルのタイプを識別するファイルの関連付けを、さらに含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記ＸＭＬ文書を前記ユーザデバイスに提供する前記ステップは、前記ＸＭＬ文書をシンジケーションフィードとして提供するステップを含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記ＸＭＬ文書を前記ユーザデバイスに提供する前記ステップは、前記リモートに実行可能なアプリケーションのそれぞれのタイムスタンプ情報を有する前記ＸＭＬ文書を提供するステップであって、前記タイムスタンプ情報により、前記リモートに実行可能なアプリケーションのそれぞれが前回のリモートに実行可能なアプリケーションのバージョンから修正されたかどうかを、前記ユーザデバイスが判定することが可能になるステップを含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記リモートに実行可能なアプリケーションのリソース情報を前記ＸＭＬ文書にレンダリングする前記ステップは、前記リモートに実行可能なアプリケーションのリソース情報を、前記リモートに実行可能なアプリケーションのそれぞれのタイムスタンプ情報を有する前記ＸＭＬ文書にレンダリングするステップであって、前記タイムスタンプ情報により、前記リモートに実行可能なアプリケーションのそれぞれが前回のリモートに実行可能なアプリケーションのバージョンから修正されたかどうかを、前記ユーザデバイスが判定することが可能になるステップを含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記ＸＭＬプレゼンテーション層は、ＸＭＬフィードコンポーネントを含み、前記リモートに実行可能なアプリケーションのリソース情報を前記ＸＭＬ文書にレンダリングする前記ステップは、前記リモートに実行可能なアプリケーションのリソース情報を、前記ＸＭＬフィードコンポーネントを使用して、前記ＸＭＬ文書にレンダリングするステップを含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記ＸＭＬプレゼンテーション層は、情報コンポーネントを含み、
前記リモートに実行可能なアプリケーションを求める要求を前記ユーザデバイスから前記情報コンポーネントに受け取るステップと、前記情報コンポーネントから前記ＸＭＬフィードコンポーネントにＸＭＬフィードのコールを行うステップとをさらに含むことを特徴とする請求項６に記載の方法。
【請求項８】
前記リモートに実行可能なアプリケーションの現在のリストがキャッシュされ、前記ユーザデバイスに提供することが可能であるかどうかを判定するステップをさらに含み、前記リモートに実行可能なアプリケーションのリソース情報を前記１つまたは複数のリソースホストから取得する前記ステップは、前記リモートに実行可能なアプリケーションの前記現在のリストがキャッシュされておらず、前記ユーザデバイスに提供することが可能でない場合に、前記リモートに実行可能なアプリケーションのリソース情報を取得するステップを含むことを特徴とする請求項１に記載の方法。
【請求項９】
処理ユニットと、前記処理ユニットに動作可能に連結され、１つまたは複数のリモートリソースホストと動作可能に通信するよう構成される通信コンポーネントと、前記処理ユニットに動作可能に連結され、スマートクライアントが記憶されるメモリと、を有するユーザデバイスにおいて、前記スマートクライアントが前記処理ユニット上で実行されることにより、前記ユーザデバイスが実行する方法であって、
前記ユーザデバイスと遠隔に存在するリモートに実行可能なアプリケーションのリソース情報を含有するＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）文書を、前記１つまたは複数のリモートリソースホストから受け取るステップであって、前記リソース情報は、前記リモートに実行可能なアプリケーションを起動するための情報を含み、前記ＸＭＬ文書は、前記リモートに実行可能なアプリケーションを非クライアント固有のフォーマットで記述するよう構成されるステップと、
前記ＸＭＬ文書をパースして、前記リモートに実行可能なアプリケーションを判定するステップと、
前記リモートに実行可能なアプリケーションのリソース情報を表示するステップであって、前記リソース情報は、前記リモートに実行可能なアプリケーションに対応する少なくとも１つのアイコンを含み、前記少なくとも１つのアイコンは前記リモートに実行可能なアプリケーションを起動するためにクリックされる、ステップと
を含み、
前記リモートに実行可能なアプリケーションのリソース情報を含有する前記ＸＭＬ文書を前記１つまたは複数のリモートリソースホストから受け取るステップは、前記リモートに実行可能なアプリケーションを求める前記ユーザデバイスからの要求に応答して、前記ＸＭＬ文書を受け取るステップを
含むことを特徴とする方法。
【請求項１０】
前記リソース情報は、前記リモートに実行可能なアプリケーションと関連付けることができる１つまたは複数のファイルのタイプを識別するファイルの関連付けを、さらに含むことを特徴とする請求項９に記載の方法。
【請求項１１】
前記リモートに実行可能なアプリケーションのリソース情報を含有する前記ＸＭＬ文書を前記１つまたは複数のリモートリソースホストから受け取る前記ステップは、前記ＸＭＬ文書をシンジケーションフィードとして受け取るステップを含むことを特徴とする請求項９に記載の方法。
【請求項１２】
前記リモートに実行可能なアプリケーションのリソース情報を含有する前記ＸＭＬ文書を前記１つまたは複数のリモートリソースホストから受け取る前記ステップは、前記リモートに実行可能なアプリケーションのそれぞれのタイムスタンプ情報を有する前記ＸＭＬ文書を受け取るステップを含み、
前記リモートに実行可能なアプリケーションのそれぞれが前回のリモートに実行可能なアプリケーションのバージョンから修正されたかどうかを、前記タイムスタンプ情報を使用して判定するステップをさらに含むことを特徴とする請求項９に記載の方法。
【請求項１３】
処理ユニットと、
前記処理ユニットに動作可能に連結され、ユーザデバイスおよび１つまたは複数のリソースホストと動作可能に通信するよう構成される通信コンポーネントと、
前記処理ユニットに動作可能に連結され、ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）プレゼンテーション層がメモリの上に記憶されるメモリであって、前記ＸＭＬプレゼンテーション層は、前記処理ユニット上で実行されると、
前記ユーザデバイスと遠隔に存在するリモートに実行可能なアプリケーションのリソース情報を前記１つまたは複数のリソースホストから取得するステップであって、前記リソース情報は、前記リモートに実行可能なアプリケーションを起動するための情報を含む、ステップと、
前記リモートに実行可能なアプリケーションのリソース情報を、前記リモートに実行可能なアプリケーションを非クライアント固有のフォーマットで記述するＸＭＬ文書にレンダリングするステップであって、レンダリングされる前記リソース情報は、前記リモートに実行可能なアプリケーションに対応する少なくとも１つのアイコンを含み、前記少なくとも１つのアイコンは前記リモートに実行可能なアプリケーションを起動するためにクリックされる、ステップと、
前記ＸＭＬ文書を前記ユーザデバイスに提供するステップと
を含み、
前記ＸＭＬ文書を前記ユーザデバイスに提供する前記ステップは、前記リモートに実行可能なアプリケーションを求める前記ユーザデバイスからの要求に応答して、前記ＸＭＬ文書を提供するステップを
含む方法を実施する動作を行うよう構成されるメモリと
を備えることを特徴とするコンピュータシステム。
【請求項１４】
前記リソース情報は、前記リモートに実行可能なアプリケーションと関連付けることができる１つまたは複数のファイルのタイプを識別するファイルの関連付けを、さらに含むことを特徴とする請求項１３に記載のシステム。
【請求項１５】
前記ＸＭＬ文書を前記ユーザデバイスに提供する前記ステップは、前記ＸＭＬ文書をシンジケーションフィードとして提供するステップを含むことを特徴とする請求項１３に記載のシステム。
【請求項１６】
前記リモートに実行可能なアプリケーションのリソース情報を前記ＸＭＬ文書にレンダリングする前記ステップは、前記リモートに実行可能なアプリケーションのリソース情報を、前記リモートに実行可能なアプリケーションのそれぞれのタイムスタンプ情報を有する前記ＸＭＬ文書にレンダリングするステップであって、前記タイムスタンプ情報により、前記リモートに実行可能なアプリケーションのそれぞれが前回のリモートに実行可能なアプリケーションのバージョンから修正されたかどうかを、前記ユーザデバイスが判定することが可能になるステップを含むことを特徴とする請求項１３に記載のシステム。
【請求項１７】
前記リモートに実行可能なアプリケーションの現在のリストがキャッシュされ、ユーザデバイスに提供することが可能であるかどうかを判定するステップをさらに含み、
前記リモートに実行可能なアプリケーションのリソース情報を、前記１つまたは複数のリソースホストから取得する前記ステップは、前記リモートに実行可能なアプリケーションの前記現在のリストがキャッシュされておらず、ユーザデバイスに提供することが可能でない場合に、前記リモートに実行可能なアプリケーションのリソース情報を取得するステップを含むことを特徴とする請求項１３に記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
ユーザは、自分のローカルなコンピュータ上でどのようにリソースを起動するかを理解し、知っている。ドメイン（例えば、Ａｃｔｉｖｅ  Ｄｉｒｅｃｔｏｒｙドメイン）に接続すると、管理者は、グループポリシーを介したリソースおよび設定のプッシュ配信により、リソースをインストールし、リモートのデスクトップをセットアップする負荷を軽減することができる。
【０００２】
インターネットを介して非マネージドデスクトップにリソースを「インストールする」現在の方法は、完全と言うには程遠い。ユーザがインストールする必要のあるインストールファイルを送信する、またはＴＳ（Ｔｅｒｍｉｎａｌ  Ｓｅｒｖｉｃｅ）  Ｗｅｂアクセスのような技術を使用するというような、いくつかの選択肢があるだけであり、その場合、ユーザがウェブページを介してリモートプログラムを起動することを許可するアクセスのためのＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を、管理者がユーザに与えることができる。しかし、これらのタイプのインストールには制限がある。例えば、ユーザがローカルにインストールしなければならないということは、管理者が、リソースにパッチを当てる制御、または、追加のパッケージをユーザがインストールするという補助なしにアプリケーションをアップグレードする制御を失うということを意味する。ＴＳ  Ｗｅｂアクセスのような解決策は、リソースを管理する能力を提供するには優れているが、別の面で制限があり、例えば、ファイルをダブルクリックしてリモートのアプリケーションを起動することはできない。従って、従来の方法のこれらの望ましくない態様を減少または軽減させる方法及びシステムは、非常に有用であろう。
【発明の概要】
【０００３】
リモートリソースのウェブアクセスのためのＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）ベースのウェブフィードの技術について説明する。一般に、本開示に従う実装により、有利に、管理者が非マネージドの機器からのリソースを追加、削除、および更新することが可能となり、さらに、ファイルの拡張子を引き継ぐ能力を有するというように、それらのリソースがローカルにインストールされたリソースのように振舞うことが可能になる。
【０００４】
一実施形態において、方法には、１つまたは複数の利用可能なリソースに関する情報を１つまたは複数のリソースホストから取得するステップ、１つまたは複数の利用可能なリソースに関する情報を、１つまたは複数の利用可能なリソースを非クライアント固有のフォーマットで記述するＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）文書にレンダリングするステップ、およびＸＭＬ文書をユーザデバイスに提供するステップを含む。いくつかの実施形態において、ＸＭＬ文書を提供するステップには、ＸＭＬ文書をシンジケーションフィードとして提供するステップを含むことができる。さらなる実施形態において、情報をレンダリングするステップには、１つまたは複数の利用可能なリソースのそれぞれのタイムスタンプ情報を提供するステップを含むことができ、タイムスタンプ情報は、１つまたは複数の利用可能なリソースのそれぞれが前回の利用可能なリソースのバージョンから修正されたかどうかを、ユーザデバイスが判定することを可能にする。
【０００５】
別の実施形態において、方法には、１つまたは複数の利用可能なリソースに関する情報を含有するＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）文書を、１つまたは複数のリモートリソースホストから受け取るステップ、ＸＭＬ文書をパースして、１つまたは複数の利用可能なリソースを判定するステップ、および１つまたは複数の利用可能なリソースに関する情報を表示するステップを含む。ＸＭＬ文書は、１つまたは複数の利用可能なリソースを非クライアント固有のフォーマットで記述する。いくつかの実施形態において、ＸＭＬ文書をパースするステップには、ＸＭＬ文書をパースして、１つまたは複数のリモートアプリケーションファイル、アイコン、またはＲＤＰファイルを提供するステップを含むことができる。
【０００６】
さらに別の実施形態において、コンピューティングシステムには、処理ユニット、処理ユニットに動作可能に連結され、ユーザデバイスおよび１つまたは複数のリソースホストと動作可能に通信するよう構成される通信コンポーネント、および処理ユニットに動作可能に連結されるメモリを含む。メモリには、ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）プレゼンテーション層を含む。ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）プレゼンテーション層はメモリ上に記憶され、処理ユニット上で実行されると、１つまたは複数の利用可能なリソースに関する情報を１つまたは複数のリソースホストから取得するステップ、１つまたは複数の利用可能なリソースに関する情報を、１つまたは複数の利用可能なリソースを非クライアント固有のフォーマットで記述するＸＭＬ文書にレンダリングするステップ、およびＸＭＬ文書をユーザデバイスに提供するステップを含む方法を実施する動作を行うよう構成される。代替的実施形態において、方法には、利用可能なリソースの現在のリストがキャッシュされて、クライアントデバイスに提供することが可能であるかどうかを判定するステップをさらに含む。
【０００７】
本「発明の概要」は、以下の「発明を実施するための形態」でさらに説明する概念を選択して簡略化した形式で紹介するために提供するものである。本「発明の概要」は、特許請求の主題の重要な特徴または主要な特徴を特定することを意図しておらず、特許請求の主題の範囲を決定する際の助けとして使用されることも意図していない。
【図面の簡単な説明】
【０００８】
「発明を実施するための形態」を、添付の図面を参照して説明する。図面において、異なる図面に同一の参照番号を使用している場合、同様または同一の事項であることを示す。
【０００９】
【図１】本開示に従ってリモートリソースのウェブアクセスのためのＸＭＬベースのウェブフィードの技術を実装するための例示の環境を示す図である。
【図２】本開示の実施形態に従ってＸＭＬフィードをフェッチするための接続シーケンスを示す図である。
【図３】本開示の実施形態に従ってＸＭＬコンテンツをレンダリングするための処理のフローチャートである。
【図４】本開示の別の実施形態に従ってＸＭＬコンテンツをレンダリングするための処理のフローチャートである。
【図５】本開示の実施形態に従う図１の環境のユーザコンピュータの概略図である。
【図６】本開示に従う図１の環境のデータフロー図の概略図である。
【図７】本開示に従ってリモートリソースのウェブアクセスのためのＸＭＬベースのウェブフィードの技術を実装するための代替の環境を示す図である。
【発明を実施するための形態】
【００１０】
本明細書に、リモートリソースのウェブアクセスのためのＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）ベースのウェブフィードの技術を開示する。一般に、本開示に従うシステムおよび方法の実施形態により、起動後にローカルにインストールされたプログラムとほとんど同じように振舞うリモートプログラムを起動する能力を、有利に提供する（例えば、クリップボードアクセス、ツールチップ統合等）。加えて、そのような実施形態では、既存のウェブアクセスシステムのインフラストラクチャを活用することができ、また、管理者が非マネージドの機器からのアプリケーションを効果的に追加、削除、および更新することを可能にすることもできる。
【００１１】
図１は、本開示の１つまたは複数の実施形態に従ってリモートリソースのウェブアクセスのためのＸＭＬベースのウェブフィードの技術を実装するための例示的環境１００を示す。本実施形態において、環境１００には、ウェブサーバ１３０と動作可能に通信するユーザコンピュータ１１０を含み、ウェブサーバ１３０は、順に複数のリソースホスト１４０と動作可能に通信する。リソースホスト１４０には、例えば、端末サーバ、ディレクトリ、ディレクトリサービス（例えば、Ａｃｔｉｖｅ  Ｄｉｒｅｃｔｏｒｙ）、集中型パブリッシングソース、または任意の他の適切なホストもしくはソースを含むことができる。より具体的には、ユーザコンピュータ１１０上にインストールされるスマートクライアント１２０が、ウェブサーバ１３０上にインストールされるＸＭＬプレゼンテーション層１３２と動作可能に通信する。ＸＭＬプレゼンテーション層１３２には、フィードコンポーネント１３４およびＩＩＳ（Ｉｎｔｅｒｎｅｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｅｒｖｅｒ）１３６を含むことができる。各リソースホスト１４０には、１つまたは複数のリソース１４２がその上にインストールされる。そのようなリソースには、例えば、アプリケーション、ソフトウェアプログラム、デスクトップ、文書、データ、または任意の他の適切なリソースを含むことができる。
【００１２】
動作においては、スマートクライアント１２０は、ウェブサーバ１３０に、リモートリソースホスト１４０上で見つかる利用可能なリソースを求める要求１２２を行うことができる。いくつかの実施形態において、ＸＭＬプレゼンテーション層１３２のＩＩＳ１３６は、要求１２２を受け取り、ＸＭＬフィードコンポーネント１３４にＸＭＬフィードのコール１３８を行う。いくつかの実施形態において、ＸＭＬプレゼンテーション層１３２は、利用可能なリソースの現在のリストが既にキャッシュされ、スマートクライアント１２０に提供することが可能であるかどうかを判定する。リソースの現在のリストがキャッシュされていない場合、ＸＭＬプレゼンテーション層１３２は（例えば、ＸＭＬフィードコンポーネント１３４を使用して）、１つまたは複数のリソースホスト１４０に、各リソースホスト１４０上で利用可能なリソースのリストを求める要求１３５を送る。リソースホスト１４０は、それぞれのリソースホスト１４０上で利用可能な、利用可能リソース１４２のリスト１４５を返す。ＸＭＬフィードコンポーネント１３４は、スマートクライアント１２０に返すＸＭＬフィード１２５にリスト１４５をレンダリングする。リモートリソースホスト１４０上で利用可能なリソース１４２に対応するアイコン１１２を、ユーザコンピュータ１１０の表示コンポーネント１１４上に表示することができる。ユーザ（図示せず）は、選択されたリソース１４２を、対応するアイコン１１２をクリックすることにより起動することができ、それによりユーザは、ローカルにインストールされたプログラムとほとんど同じように、リソース１４２を使用することが可能になる。
【００１３】
ＸＭＬプレゼンテーション層１３２により与えられるＸＭＬフィード１２５は、リソースデータ１４５（例えば、アプリケーションデータを含む）を符号化するための、厳密に構造化されたＸＭＬフォーマットとすることができる。従って、提示することを基本として、一般にユーザの経験を記述すること等に適応し、かつウェブブラウザにより使用されることが意図される（すなわち、クライアント固有の）、緩く構造化されたＸＭＬフォーマット（例えば、拡張可能ハイパーテキストマークアップ言語）を使用できる従来のウェブアクセスシステムとは異なり、ＸＭＬプレゼンテーション層１３２により与えられるＸＭＬフィード１２５は、より綿密に構造化され、異なる目的を達成するために使用することが可能である。本開示のＸＭＬフィード１２５には、提示することを基本とするＸＭＬフォーマットが使用できない追加の情報、例えば、ファイルの関連付け、クライアントの構成データ、およびこの時点では未知のまたは予期しない他のデータを含むことができる。さらに、本開示のＸＭＬフィード１２５は、非クライアント固有（すなわち、一般用）であり、使用するソフトウェアをに関して何ら想定することなく、利用可能なリソースを記述する。ＸＭＬフィード１２５は、この時点では未知のまたは予期しないいくつかの方法を含む、様々な方法で使用されるよう意図される。
【００１４】
いくつかの実施形態において、本件特許出願人から入手可能であるＴＳ（Ｔｅｒｍｉｎａｌ  Ｓｅｒｖｉｃｅｓ）  Ｗｅｂアクセスシステムといった、リモートリソースにアクセスするための既存のウェブアクセスシステムは、本開示の態様を組み込んで、リモートリソースのユーザに改善されたサービスを提供することができる。使用することができるネットワークを介するリソースへのリモートアクセスを可能にする他のシステムには、例えば、Ｖｅｃｔｏｒ  Ｎｅｔｗｏｒｋｓ社から入手可能なＰＣ−Ｄｕｏ  Ｒｅｍｏｔｅ  Ｃｏｎｔｒｏｌ、Ｃｉｔｒｉｘ社から入手可能な製品、または任意の他の適切なリモートネットワークアクセスシステムを含む。そのようなウェブアクセスシステムには、本開示に従うＸＭＬフィードを有利に含み、端末サーバを含むリソースホストからリソースデータを収集することができる。
【００１５】
例えば、いくつかの実施形態において、管理者は、ユーザにＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を与えて、スマートクライアント１２０を示す。ＵＲＬは、電子通信システム（例えば、Ｅｘｃｈａｎｇｅ「登録商標」、Ｅｖｅｒｅｓｔ「登録商標」、Ｚｉｍｂｒａ  Ｃｏｌｌａｂｏｒａｔｉｏｎ  Ｓｕｉｔｅ、または他の適切なシステムもしくは方法）を介して提供することが可能であり、ユーザがＵＲＬを用いてスマートクライアント１２０を特別に構成しなければならないことを、必ずしも排除しない。スマートクライアントが構成され、認証されると、クライアント機器上の開始メニューに、管理者がそのユーザに利用可能にしたリモートリソースを含むことができる。加えて、ファイルの関連付けが、それらのプログラムに対してなされる。
【００１６】
管理者が、ユーザに利用可能なリソースを削除または追加するとき、これらの変更が、クライアントコンピュータの開始メニュー上に映し出され、ファイルの関連付けが、それに従って更新される。この点から、ユーザがファイルを選択するとき、そのファイル形式を操作することができるローカルリソースまたはリモートリソースのどちらかが存在する場合に、そのローカルリソースまたはリモートリソースのどちらかにおいてファイルが開かれる。
【００１７】
ＸＭＬ文書を介してリモートリソースといったネットワークリソースをパブリッシュすることの利点の１つは、この配信方法をサポートする標準の技術が幅広い事である。本開示に従う実施形態はまた、管理者が、非マネージドの機器が利用可能なリソースを容易に追加、削除および更新することを可能にすることができ、それらのリソースが、ローカルにインストールされたリソースのように振舞うことを可能にすることができる。
【００１８】
図２は、本開示の実施形態に従ってＸＭＬフィードをフェッチするための接続シーケンス２００を示す図である。本実施形態において、ウェブ対応クライアントアプリケーション２０２は、ＸＭＬプレゼンテーション層２０５に利用可能なリソースを求める要求２０４を行う。例えば、いくつかの実施形態において、ウェブ対応クライアントアプリケーション２０２は、図１に示すようなユーザコンピュータ上にインストールされるスマートクライアントとすることができる。あるいは、ウェブ対応クライアントアプリケーション２０２を、例えば、携帯電話、ＰＤＡ（ｐｅｒｓｏｎａｌ  ｄａｔａ  ａｓｓｉｓｔａｎｔ）、携帯用ナビゲーション装置、ＷｉＦｉ対応コンポーネント、または任意の他の適切なプラットフォームといった様々な適切なプラットフォーム上にインストールすることができる。
【００１９】
図２にさらに示すように、ＸＭＬプレゼンテーション層２０５は、要求２０４を受け取る（例えば、情報コンポーネント２０６または他の適切なコンポーネントを介して）。ＸＭＬプレゼンテーション層２０５は、ＸＭＬコンテンツをレンダリングする２０８よう構成される（例えば、ＸＭＬフィードコンポーネント２１０または他の適切なコンポーネントを使用して）。ＸＭＬプレゼンテーション層２０５は次に、本件特許出願人から入手可能なＴｅｒｍｉｎａｌ  Ｓｅｒｖｉｃｅｓ  ＲＡＰ  Ｗｅｂアクセスサービスといった、リモートアプリケーションパブリッシング（ＲＡＰ）ウェブサービス２１４からのリモートリソースを要求する２１２。ＲＡＰウェブサービス２１４は、利用可能なリソースを含むリソース情報２１６を、ＸＭＬプレゼンテーション層２０５に提供する。ＸＭＬプレゼンテーション層２０５は、ウェブ対応クライアントアプリケーション２０２に返されるＸＭＬフィード２１８に、リソース情報２１６をレンダリングする。
【００２０】
特定の実施形態において、ＸＭＬプレゼンテーション層２０５では、セットアップおよびデータ伝送に既存のターミナルサービスウェブアクセス（ＴＳＷＡ）構造を使用するが、見つけることが可能なリソース２１６のリストを、例えば、リソース、アイコンおよびＲＤＰ（Ｒｅｍｏｔｅ  Ｄｅｓｋｔｏｐ  Ｐｒｏｔｏｃｏｌ）ファイルを含むことができるＸＭＬ文書２１８に変換する、新規のコンポーネントおよび特徴を組み込んでいる。従って、ＸＭＬプレゼンテーション層２０５は、ＨＴＭＬ（Ｈｙｐｅｒｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）文書に変換されること、または他のリソースにより直接使用されることが可能なＸＭＬ文書２１８を提供する。
【００２１】
図３は、本開示の実施形態に従って、ＸＭＬプレゼンテーション層２０５により実施することができる、ＸＭＬコンテンツをレンダリングするための処理３００のフローチャートである。本実施形態において、処理３００には、３０２にて、ウェブ構成内のリソースホストのリストを取得するステップを含む。処理３００は、３０４にて、サーバのリストから、まだ処理されていないサーバがあるかどうかを判定する。ある場合、処理３００は、３０６にて、リモートリソースをウェブサービスから取得し、処理３００は、３０８にて、全てのリソースが未処理のサーバからフェッチされたかどうかを判定する。全てのリソースがフェッチされたのではない場合、処理３００は３０４に戻り、未処理のサーバの判定を継続し（３０４にて）、全てのリモートリソースがフェッチされるまで（３０８にて）、リモートリソースを取得する（３０６にて）。
【００２２】
処理３００は、３１０にて、返されたリソースを現在のリソースリストにマージし、処理３００は３０４に戻り、何らかの未処理のサーバが残っているかどうかを判定する。未処理のサーバが無くなると（３０４にて）、処理３００は、３１２にて、現在のリソースリストのＸＭＬ文書（またはフィード）を生成し、３１４にて、現在のリソースリストのＸＭＬ文書を返す。
【００２３】
図４は、本開示の別の実施形態に従って、ＸＭＬプレゼンテーション層２０５により実施することができる、ＸＭＬコンテンツをレンダリングするための処理４００のフローチャートである。本実施形態において、処理４００には、４０２にて、リモート端末サーバを識別するステップを含む。処理４００は、４０４にて、ウェブサービスを介してリモート端末サーバからリモートリソースを取得し、４０６にて、リモート端末サーバからの全てのリソースがフェッチされたかどうかを判定する。全てのリソースがフェッチされたのではない場合、処理４００は４０４に戻り、ウェブサービスからリモートリソースの取得を継続する。
【００２４】
全てのリソースがフェッチされると（４０６にて）、処理４００は、４０８にて、返されたリソースを現在のリソースリストにマージする。４１０にて、現在のリソースリストのＸＭＬ文書（またはフィード）を生成し、４１２にて、現在のリソースリストのＸＭＬ文書を、ウェブ対応クライアントリソースに返す。
【００２５】
ＸＭＬプレゼンテーション層から利用可能なリソースのＸＭＬフィードを受け取るユーザコンピュータ１１０は、任意の適切なコンピューティングデバイスまたはプラットフォームとすることができる。例えば、図５は、本開示の実施形態に従うコンピューティングデバイス５００の概略図である。極めて基本的な構成では、コンピューティングデバイス５００には、少なくとも１つの処理ユニット５０２およびシステムメモリ５０４を含む。コンピューティングデバイス５００の正確な構成およびタイプによっては、システムメモリ５０４は、揮発性（例えば、ＲＡＭ）、不揮発性（例えば、ＲＯＭおよびフラッシュメモリ）、またはこの２つの何らかの組み合わせとすることができる。システムメモリ５０４には一般的には、オペレーティングシステム５０６、１つまたは複数のプログラムモジュール５０８を含み、かつプログラムデータ５１０を含むことができる。代替として、他のモジュールと同様に、プログラムモジュール５０８をオペレーティングシステム５０６の一部として実装することができ、またはプログラムモジュール５０８をコンピューティングデバイス上にインストールし、かつシステムメモリ５０４とは別個の他のメモリ（例えば、非リムーバブル記憶装置５２２）に記憶することができる。
【００２６】
図５にさらに示すように、スマートクライアント１２０は、システムメモリ５０４に記憶される。スマートクライアント１２０は、ＸＭＬプレゼンテーション層１３２と動作可能に通信するように構成されて、起動後にローカルにインストールされたプログラムほとんど同じように振舞うリモートプログラムを起動する能力を提供する。スマートクライアント１２０の実施形態は、図６に関して、以下にさらに詳細に説明する。
【００２７】
コンピューティングデバイス５００は、追加の特徴または機能性を有することができる。例えば、コンピューティングデバイス５００には、追加のデータ記憶装置（リムーバブルおよび／または非リムーバブル）、例えば、磁気ディスク、光ディスク、またはテープ、等を含むこともできる。そのような追加の記憶装置を、リムーバブル記憶装置５２０および非リムーバブル記憶装置５２２として図８に示す。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータといった情報を記憶するための任意の方法または技術で実装される、揮発性および不揮発性、リムーバブルおよび非リムーバブルの媒体を含むことができる。システムメモリ５０６、リムーバブル記憶装置５２０、および非リムーバブル記憶装置５２２は、全てコンピュータ記憶媒体の例である。従って、コンピュータ記憶媒体には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリもしくは他のメモリ技術、ＣＤ−ＲＯＭ、ＤＶＤ（ｄｉｇｉｔａｌ  ｖｅｒｓａｔｉｌｅ  ｄｉｓｋ）もしくは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、または、所望の情報を記憶するために使用可能であり、かつコンピューティングデバイス５００によりアクセス可能な任意の他の媒体を含むが、これに限らない。任意のそのようなコンピュータ記憶媒体は、デバイス５００の一部とすることができる。コンピューティングデバイス５００はまた、キーボード、マウス、ペン、音声入力デバイス、およびタッチ入力デバイスといった入力デバイス（単数または複数）５２４を有することができる。表示装置、スピーカ、およびプリンタといった出力デバイス（単数または複数）５２６も含むことができる。これらのデバイスは、当該技術分野において周知のものであり、詳細に検討する必要はない。
【００２８】
コンピューティングデバイス５００にはまた、デバイスが、例えばネットワークを介して、他のコンピューティングデバイス５３０と通信することを可能にする、通信接続５２８を含むことができる。通信接続（単数または複数）５２８は、通信媒体の一例である。通信媒体は一般的には、コンピュータ可読命令、データ構造、プログラムモジュール、または、搬送波または他のトランスポート機構といった変調データ信号における他のデータにより具現化することができ、任意の情報配信媒体を含む。
【００２９】
種々のモジュールおよび技術を、１つまたは複数のコンピュータまたは他のデバイスにより実行される、プログラムモジュールといったコンピュータ実行可能命令の一般的コンテキストで、本明細書において説明することができる。一般に、プログラムモジュールには、特定のタスクを実施するため、または特定の抽象データ型を実装するための、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造等を含む。これらのプログラムモジュール等を、ネイティブコードとして実行するか、または、例えば仮想マシンまたは他のジャストインタイムのコンパイル実行環境において、ダウンロードし実行することができる。一般的には、プログラムモジュールの機能性は、種々の実施形態で所望の通りに組み合わせまたは分配することができる。これらのモジュールおよび技術の実装を、何らかの形式のコンピュータ可読媒体上に記憶するか、またはそれを介して伝送することができる。
【００３０】
当然のことながら、スマートクライアント１２０を幅広い種々の方法で構成して、本明細書において説明する所望の機能性および能力を提供することができる。例えば、図６は、スマートクライアント６２０、および本開示の特定の実施形態に従う代表的環境６００の他のコンポーネント６１０との種々の相互作用の線図である。
【００３１】
図６に示す実施形態において、スマートクライアント６００には、環境６００のフィード構成６１２と動作可能に通信するワークスペースマネジャ６２２を含む。いくつかの実施形態において、フィード構成６１２は、ワークスペースへの接続６１４時のユーザ入力を表し、リソースフィードを取得するためのＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）および認証情報を含むことができる。
【００３２】
ワークスペースマネジャ６２２は、スマートクライアント６２０の機能に関連するいくつかまたは全てのアクティビティの中央マネージャ（またはドライバ）とすることができる。いくつかの実施形態において、ワークスペースマネジャ６２２を、以下の内の１つまたは複数を実施するよう構成することができる。以下とはすなわち、ワークスペースフォルダ６２４の作成および削除を管理すること、パーサ６２６を起動してリモートリソース６２８またはダウンロードされたファイル６３０（例えば、ＲＤＰファイル）を指定されたフォルダロケーションにまとめること、ビューマネジャ６３２を起動してリモートリソースを（例えば、指定されたフォルダロケーション６３４を与えることにより）表示すること、複数のリモートワークスペース６３６を管理すること、または任意の他の適切な機能である。
【００３３】
例えば、いくつかの実施形態において、ワークスペースマネジャ６２２は、ＵＩ（ｕｓｅｒ  ｉｎｔｅｒｆａｃｅ）スレッドを作成し、ウィンドウメッセージループをセットアップすることができる。ウィンドウメッセージループは、オブジェクトの作成中に呼び出される。ワークスペース６３６上で動作を実施する要求を、メッセージループを介してＵＩスレッドに直列化することができる。特定の実施形態において、ＵＩスレッドの直列化は、単一の構成プロセスを一度に進行中にする（すなわち、新しいワークスペースを構成する）ことができる。一度に複数の動作を実施しようとユーザが試みても（例えば、「ワークスペースに接続」する動作を開始し、次に、最初の動作が完了した構成になる前にもう一度開始する）、進行中の構成ウィンドウが前景に出されて、その試みは阻止される。しかし、ＵＩスレッドの直列化により、複数のワークスペースウィンドウが同時に開かれることを防ぐことができる。構成プロセスが完了し、ワークスペースウィンドウが表示されると、ウィンドウ事象が、ＵＩスレッドが有するウィンドウプロシージャに伝達される。従って、直列化されたＵＩスレッドは、複数の開いたウィンドウを操作すること、および、新しいワークスペース管理要求に応答することも可能である。いくつかの実施形態において、ＵＩスレッドは、ネットワーク要求、ディスクアクセス等といったブロッキングアクティビティを何ら実施することはできない。その代わり、そのようなブロッキングアクティビティは、ＵＩスレッドにより生み出された別個のワーカスレッドに引き渡され、ワーカスレッドは、パーサ６２６を起動して、ブロッキングアクティビティを操作することができる。ＵＩスレッドにより、任意のブロッキング動作から出てキャンセルする選択肢をユーザに与えることもできる。
【００３４】
パーサ６２６には、フィード検索６３８を起動してＸＭＬにおいて指定されるリモートリソースのフィードをフェッチする役割がある。特定の実施形態において、パーサ６２６はまた、以下の内の１つまたは複数を実施することができる。以下とはすなわち、ＸＭＬファイル６３０をパースして各リモートリソースに対するＲＤＰファイルおよびアイコンについての情報を抽出すること、およびフィード検索を起動してＲＤＰファイルおよびアイコンを指定されたフォルダ６４０にダウンロードすることである。
【００３５】
フィード検索６３８は、リソースサーバ６１６（例えば、図１のウェブサーバ１３０）との接続を管理することができる。さらに詳細には、フィード検索６３８を、情報６４２（ＸＭＬファイル、ＲＤＰファイル、アイコン等）をリソースサーバ６１４からダウンロードするよう構成することができる。
【００３６】
ビューマネジャ６３２を、リモートリソースの表示を操作するよう構成することができる。ビューマネジャ６３２はまた、以下の内の１つまたは複数を実施するよう構成することができる。以下とはすなわち、エクスプローラブラウザコントロールを作成および構成して、スマートクライアント６２０のコンポーネントによりダウンロードされたＲＤＰファイルをホストすること、およびエクスプローラブラウザコントロールを作成および構成して、ＲＤＰファイル型のシェルエクステンションハンドラ６４４として動作して表示されたフォルダ内のＲＤＰファイルのルック・アンド・フィール（例えば、ビューウィンドウ、ロケーション等）６４６をカスタマイズすることである。
【００３７】
特定の実施形態において、ビューマネジャ６２６の機能を異なるコンテキストにおいて実施することができる。例えば、第１のコンテキストにおいて、Ｗｉｎｄｏｗｓ  Ｅｘｐｌｏｒｅｒ「登録商標」６１８（本件特許出願人社製）は、エクスプローラブラウザコントロールにファイルを表示する前に、ＲＤＰファイルのシェルエクステンションハンドラを（例えば、ＣＯＭを介して）起動することができる。代替のコンテキストにおいて、表示する前にＲＤＰファイルを操作する他の方法も使用することができる。
【００３８】
動作においては、スマートクライアント６２０のコンポーネントは、サーバ６１６と通信してリソースのリストを取得すること、およびユーザインターフェース内にデータを提示する（例えば、アイコンおよび／またはＲＤＰファイルを表示する）ことを含めて、ワークスペースに関するデータ（リソース）を協同的に取得することができる。スマートクライアント６２０は、リソースサーバ６１６と通信してリソースのリストを取得することができる。リソースは、最終的にはクライアントコンピュータ１１０上にＲＤＰファイルとして表すことができる。スマートクライアント６２０は、ＵＩ（ｕｓｅｒ  ｉｎｔｅｒｆａｃｅ）内にデータを提示する時に、以下の内の１つまたは複数を起動することができる。以下とはすなわち、エクスプローラブラウザコントロールをカプセル化するＵＩ内にＲＤＰファイルを提示すること、またはシェルエクステンションハンドラを使用してＲＤＰファイルの振舞いおよび外観をカスタマイズすることである。
【００３９】
当然のことながら、本開示の技術に基づき様々な代替の実施形態が考えられ、かつ本開示は、本明細書において説明し添付の図面で示す特定の実施形態に限るものではない。例えば、図７は、本開示に従ってＸＭＬベースのウェブフィードの技術を実装するための代替の環境７００を示す。本実施形態において、環境７００には、スマートクライアント１２０を有するユーザコンピュータ１１０を含む。バックエンド７５０は、スマートクライアント１２０と動作可能に通信し、かつアプリケーションプログラミングインターフェース７５２、７６２、および１つまたは複数のネットワーク７７０を介して、中央サーバ７６０と動作可能に通信する。バックエンド７５０には、フィードコンポーネント１３４およびＩＩＳ（Ｉｎｔｅｒｎｅｔ  ｉｎｆｏｒｍａｔｉｏｎ  ｓｅｒｖｅｒ）１３６を有するＸＭＬプレゼンテーション層７３２を含む。
【００４０】
中央サーバ７６０は、１つまたは複数のリソース（またはソフトウェアプログラム）１４２がその上にインストールされた１つまたは複数のリモートリソースホスト１４０と、動作可能に通信する。図７に示される実施形態において、例えば、リソースホスト１４０には、本件特許出願人が開発したＡｃｔｉｖｅ  Ｄｉｒｅｃｔｏｒｙとして知られるディレクトリサービスといった、ディレクトリサービス１４０Ｂを含む。上述したように、リソースホスト１４０には、端末サーバ、ディレクトリ、ディレクトリサービス（例えば、Ａｃｔｉｖｅ  Ｄｉｒｅｃｔｏｒｙ）、集中型パブリッシングソース、または任意の他の適切なホストもしくはソースを含むことができる。
【００４１】
動作においては、スマートクライアント１２０は、バックエンド７５０に、リモートリソースホスト１４０上で見つかる利用可能なリソースを求める要求１２２を行う。いくつかの実施形態において、ＸＭＬプレゼンテーション層７３２のＩＩＳ１３６は、要求１２２を受け取り、ＸＭＬフィードコンポーネント１３４にＸＭＬフィードのコール１３８行う。いくつかの実施形態において、ＸＭＬプレゼンテーション層７３２は、利用可能なリソースの現在のリストが既にキャッシュされ、スマートクライアント１２０に提供することが可能であるかどうかを判定し、そうであると判定すると、キャッシュされたリストを、スマートクライアント１２０に提供する。リソースの現在のリストがキャッシュされていない場合、ＸＭＬプレゼンテーション層７３２は（例えば、ＸＭＬフィードコンポーネント１３４を使用して）、現在のリソースの要求を中央サーバ７６０に伝え、中央サーバがリソースホスト１４０に、各リソースホスト１４０上で利用可能なリソースのリストを求める要求１３５を送る。リソースホスト１４０は、それぞれの端末サーバ１４０上で利用可能な、利用可能なリソース１４２のリスト１４５を返し、中央サーバ７６０が、利用可能なリソース情報をバックエンド７５０に返す。上述のように、ＸＭＬフィードコンポーネント１３４は、スマートクライアント１２０に返すＸＭＬフィード１２５にリスト１４５をレンダリングする。リソース１４２に対応するアイコン１１２を、ユーザコンピュータ１１０の表示コンポーネント１１４上に表示することができ、ユーザが、ローカルにインストールされたプログラムとほとんど同じようにリソース１４２を使用することが可能になる。
【００４２】
さらなる実施形態において、ＸＭＬフィード１２５は、様々な代替の方法で使用することができ、ユーザコンピュータ１１０への配信に限らない。例えば、図７に示すように、ＸＭＬフィード１２５を、ネットワーク７７０を介して中央サーバ７６０またはリソースホスト１４０にフィードバック７２５することができる。フィードバックされたＸＭＬフィード７２５は、例えば、どのリソースをホストすべきかを判定するためにリソースホスト１４０により使用されるか、または任意の他の適切な使用がなされる。さらに他の実施形態において、種々の目的、例えば、ＨＴＭＬウェブページ７４２にＸＭＬフィード１２５を変換する（例えば、ＸＳＬＴ（Ｅｘｔｅｎｓｉｂｌｅ  Ｓｔｙｌｅｓｈｅｅｔ  Ｌａｎｇｕａｇｅ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎ）といった技術を介して）というような目的で、ＸＭＬフィード１２５を使用することができるウェブサーバ７４０に、ＸＭＬフィード１２５を提供７３５することができる。
【００４３】
上述したように、リモートリソース１４２といったネットワークリソースを、ＸＭＬ文書１２５を介してパブリッシュすることの利点の１つは、この配信方法をサポートする標準技術の幅が広いことである。そのような技術の１つは、一般に、ウェブシンジケーションと称され、パブリッシュされたネットワークリソースに対する変更についてエンドユーザに通知する処理を簡素化するものである。
【００４４】
例えば、エンドユーザが、自分のクライアントコンピュータで、全ての利用可能なネットワークリソース（例えば、リモートリソース１４２）へのシームレスなアクセスが常に許可されることは、エンドユーザにとっては興味深い事であろう。本開示の技術によると、そのようなリソースは、単一のＸＭＬ文書１２５にパブリッシュされる。このＸＭＬ文書１２５に変更があれば、エンドユーザは、自分のユーザコンピュータ（または他のプラットフォーム）１１０にそれを反映させたいであろう。同期機構を実装して、ユーザコンピュータ１１０の構成とパブリッシュされたリソースデータとの間のこの同期を自動的に達成することができる。例えば、いくつかの実施形態において、ユーザコンピュータ１１０上の処理は、完全なＸＭＬファイル１２５を周期的にダウンロードし、それをユーザコンピュータ１１０上の構成と比較し、ユーザコンピュータ１１０の構成（またはクライアントの構成）を更新して任意の最新の変更を組み込むことができる。
【００４５】
ＸＭＬ文書は、数十または数百もの利用可能なリソースを記述することができるため、そのような自動同期機構は、クライアントおよびウェブサーバの両方に対し著しいリソースオーバヘッドを要求することになる。ほとんどのパブリッシュされたリソースが長期間同じままであろうと予測できるため、そのような同期アクティビティに関連するオーバヘッド負荷を、タイムスタンプ情報をＸＭＬ文書１２５の各リソースノードに含まれるようにすることにより、減少させることが可能である。
【００４６】
より具体的には、図１および７を参照すると、１つまたは複数の利用可能なリソースに関する情報１４５をＸＭＬ文書１２５にレンダリングすることには、１つまたは複数の利用可能なリソースのそれぞれにタイムスタンプ情報を提供することが含むことができ、タイムスタンプ情報により、１つまたは複数の利用可能なリソースのそれぞれが前回の利用可能なリソースのバージョンから修正されたかどうかを、ユーザコンピュータ１１０が判定することが可能になる。これにより、スマートクライアント１２０が、タイムスタンプ情報を分析し、変更されたリソースに対する補足ファイル（例えば、ＲＤＰファイルおよびアイコン）のみをダウンロードすることが可能になる。そのような同期機構は、各リソース（またはアプリケーション）が同期の度に何らかの処理を受けること、および、クライアント側の状態が各リモートリソースの何らかのデータ（例えば、「最新更新」時の値の形式で）を保持することを要求することができる。
【００４７】
さらなる実施形態において、ウェブシンジケーション技術（例えば、Ｒｅａｌｌｙ  Ｓｉｍｐｌｅ  ＳｙｎｄｉｃａｔｉｏｎまたはＡｔｏｍ）により、同期のオーバヘッドを減少させる必要性に対して代替の解決策が提供される（例えば、ｈｔｔｐ：／／ｗｗｗ．ｒｓｓｂｏａｒｄ．ｏｒｇ／ｒｓｓｓｐｅｃｉｆｉｃａｔｉｏｎ；ｈｔｔｐ：／／ｔｏｏｌｓ．ｉｅｔｆ．ｏｒｇ／ｈｔｍｌ／ｒｆｃ４２８７を参照）。これらの技術により、主要なウェブリソースを、そのリソースに対する変更についての時間ベースの情報で補うことができる。これは、「シンジケーションフィード」、すなわち、その主要なリソースに対してどんな最新の変更がなされたかを、機械可読の標準ＸＭＬ言語で記述する、周知のロケーションにあるウェブ文書、において実装される。例えば、ニューヨークタイムスのような出版物のウェブサイトは、数種類のコンテンツのシンジケーションフィードを提供することができる。例えば、新しい記事がウェブサイトに追加されると、エントリも関連するシンジケーションフィードに追加されて、ユーザに変更を通知する。シンジケーションクライアントはこのフィード文書をＵＲＬから周期的に検索し、このフィード文書をパースすることにより、１つのシンジケーションクライアントがユーザに最近追加された記事について通知することができる。本開示の教示に従うＸＭＬフィードの実施形態では、クライアントを、そのユーザコンピュータ上にインストールできるリモートリソースに対する変更について更新するというコンテキストにおいて、ウェブシンジケーション技術を同様に使用することができる。
【００４８】
図５のコンピューティングデバイス５００を、ユーザデバイス（例えば、図１のユーザコンピュータ１１０）を表するものとして説明したが、当然のことながら、代替の実施形態において、コンピューティングデバイス５００は、本明細書に開示するシステムおよび方法の他のハードウェアデバイスを表すものとすることもできる。例えば、コンピューティングデバイス５００のスマートクライアント１２０を、ＸＭＬプレゼンテーション層（例えば、図１のＸＭＬプレゼンテーション層１３２、図２のＸＭＬプレゼンテーション層２０５、または図７のＸＭＬプレゼンテーション層７３２）と置き替えると、コンピューティングデバイス５００は、図１のウェブサーバ１３０または図７のバックエンド７５０の実施形態を表すことができる。同様に、スマートクライアント１２０を省略すると、コンピューティングデバイス５００は、図７の中央サーバ７６０またはリソースホスト１４０の実施形態を表すものとすることができる。
結論
【００４９】
主題を、構造的特徴および／または方法論的な動作に固有の言語で説明したが、当然のことながら、添付の請求項に定義する主題は必ずしも説明した特定の特徴または動作に限定されない。むしろ、特定の特徴および動作は、請求項を実装する例示的形式として開示するものである。
【図２】
0005389829.tif 000002
【図３】
0005389829.tif 000003
【図４】
0005389829.tif 000004
【図５】
0005389829.tif 000005
【図６】
0005389829.tif 000006
【図１】
0005389829.tif 000007
【図７】
0005389829.tif 000008