(57)【要約】一組のターゲット・ファイルが、これらのファイルのターゲット・アドレス又はＵＲＬをメイン・ファイルの１次ファイル名にエンコードすることで、該メイン・ファイルにリンクされる。メイン・ファイルの１次ファイル名と、リンクされた各ターゲット・ファイルのエンコード・アドレスとの識別のため、セパレータ文字を用いる。リンクされたターゲット・ファイルは、メイン・ファイルのソース・ファイル、メタデータ、マルチメディア情報、及びサービスを含むあらゆる形式のものとなる。大半のファイル・システムは有効ファイル名につき特定文字を受け入れず、リンクされたターゲット・ファイルのアドレスは、いずれかの禁止文字を関連する許可文字で置き換えるようエンコードする。辞書編集テーブルが、禁止文字及び対応する許可文字の全ペアを格納する。同様に、ファイル名の長さは一般に２５６文字に制限されるので、エンコード・アドレス又はＵＲＬの長さが減少するようにエンコード処理を最適化できる。
2006508436.tif 000002
【特許請求の範囲】
【請求項１】
１次ファイル名と少なくとも１つのエンコードされたターゲット・ファイル・アドレスとを含むファイル名を持つメイン・ファイルであって、前記メイン・ファイルの前記１次ファイル名と、前記少なくとも１つのエンコードされたターゲット・ファイル・アドレスとが、第１の制御文字によって分離され、２つの連続するエンコードされたターゲット・アドレスが、第２の制御文字によって分離される、メイン・ファイル、を有するコンピュータ等が可読な媒体。
【請求項２】
前記ファイル名にエンコードされた前記ターゲット・アドレスにて使用可能なターゲット・ファイルが、前記メイン・ファイルのソース・ファイルである、請求項１に記載のコンピュータ等が可読な媒体。
【請求項３】
ターゲット・アドレスにて使用可能な少なくとも１つのターゲット・ファイルを、１次ファイル名を持ったメイン・ファイルにハイパーリンクするための方法であって、
前記ターゲット・ファイルの各々の前記ターゲット・アドレスをエンコードするステップ（ステップ１１０）と、
前記１次ファイル名及び前記エンコードされたターゲット・アドレスをファイル名に結合するステップ（ステップ１１５）と、
前記ファイル名を用いて前記メイン・ファイルの名前を変更するステップ（ステップ１２０）であって、前記１次ファイル名と、前記エンコードされたターゲット・アドレスとが、第１の制御文字によって分離され、２つの連続するエンコードされたターゲット・アドレスが、第２の制御文字によって分離される、ステップと、
を有する方法。
【請求項４】
前記ターゲット・ファイルの各々の前記ターゲット・アドレスをエンコードする前記ステップが、
所定の文字を検出するために、前記ターゲット・ファイルの各々の前記ターゲット・アドレスを分析するステップと、
前記所定の文字を関連する文字で置き換えるステップと、
を含み、前記所定の文字及び関連する文字が辞書編集テーブルに格納される、請求項３に記載の方法。
【請求項５】
前記エンコードされたターゲット・アドレスが、前記エンコードされたターゲット・アドレスを前記１次ファイル名の拡張子ドットの前に挿入することによって前記１次ファイル名と結合される、請求項３又は請求項４のいずれか１項に記載の方法。
【請求項６】
前記エンコードされたターゲット・アドレスのサイズを減少させるための圧縮ステップをさらに含む、請求項３から請求項５までのいずれか１項に記載の方法。
【請求項７】
いくつかのターゲット・ファイルをメイン・ファイルにハイパーリンクするための請求項３から請求項５までのいずれか１項に記載の方法であって、
いくつかのエンコードされたターゲット・アドレスについて、パスが共通であるかどうかを判断するステップと、
いくつかのエンコードされたターゲット・アドレスについて、パスが共通である場合には、
前記共通パスを含む第１のエンコードされたターゲット・アドレスのうちの前記共通パスの末尾に、第３の専用文字を挿入するステップと、
前記共通パスを含む後続のエンコードされたターゲット・アドレスのうちの前記共通パスを削除するステップと、
前記共通パスを含まないエンコードされたターゲット・アドレスの前に、第４の制御文字を挿入するステップと、
をさらに有する方法。
【請求項８】
ファイル名が１次ファイル名と少なくとも１つのエンコードされたターゲット・アドレスとを含むメイン・ファイルのうちから、使用可能な少なくとも１つのターゲット・ファイルにアクセスする方法であって、
前記ファイル名を解析するステップ（ステップ３００）と、
請求項３から請求項７までのいずれか１項に記載のエンコード処理に従って、前記少なくとも１つのエンコードされたターゲット・アドレスをデコードするステップ（ステップ３２０）と、
前記デコードされたターゲット・アドレスにて使用可能な前記少なくとも１つのターゲット・ファイルにアクセスするステップ（ステップ３２５）と、
を含む方法。
【請求項９】
前記デコードされたターゲット・アドレスにて使用可能な前記少なくとも１つのターゲット・ファイルの形式を決定するために、前記デコードされたターゲット・アドレスを分析するステップと、
前記少なくとも１つのターゲット・ファイルの形式に関連するアプリケーションを起動するステップと、
をさらに含む、請求項８に記載の方法。
【請求項１０】
請求項３から請求項９までのいずれか１項に記載の方法を実行するための手段を備える装置。
【請求項１１】
請求項３から請求項９までのいずれか１項に記載の方法を実行するための命令を含む、コンピュータ等が可読な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報記憶検索システムに関し、より具体的には、ファイルから、そのファイルが複製されたソース・ファイル及び／又は他のいずれかのターゲット・ファイル（同一の又は異なるコンピュータ・システムに配置されたソース・ファイル及び／又は他のターゲット・ファイル）へのハイパーリンクを生成するための方法及びシステムに関する。
【背景技術】
【０００２】
一般に、コンピュータ・システムは、コンピュータ・プログラム、テキスト文書、図形、画像、音声、映像、又は、この種の情報のいずれかの組み合わせを含むファイルのような他の情報及び文書といったデータを格納する。これらのファイルは、典型的には、コンピュータと関連するハード・ディスク・ドライブに保持されるが、メモリ、フロッピー（商標）ドライブ、リモート・サーバ、又は、他の形式の大容量記憶媒体に保持されることもある。それらの検索を簡単にするために、ファイルは、一般に、多数のディレクトリ又はフォルダ間に配布される。各々のディレクトリ又はフォルダは、サブディレクトリ又はサブフォルダを有するものとすることができる。コンピュータ・システムは、何百ものこうしたディレクトリ又はフォルダを含むことになり、コンピュータ・システムの一部とすることができるファイル・サーバは、何千ものこうしたディレクトリ又はフォルダを有することになる。ユーザは、一般に、例えば「myphoto.gif」のような、典型的には短い文字列であるファイルのファイル名と、例えば「C:\photos\myphoto.gif」のような、ファイル名の前に付加することができるディスク・ドライブ指定及びディレクトリ又はフォルダとを用いることによって、ファイルを探し出す。
【０００３】
異なる形式のファイル・システムが、異なるオペレーティング・システムにおいてで使用される。各々のファイル・システム形式は、独自のフォーマットと、ファイル名の長さ、最大のファイル・サイズなどのような特性のセットとを有する。例えば、Ｌｉｎｕｘ（商標）オペレーティング・システムでは、最も一般的に用いられるファイル・システム形式は、ｅｘｔ２ｆｓとしても知られるＳｅｃｏｎｄ  Ｅｘｔｅｎｄｅｄ  Ｆｉｌｅ  ｓｙｓｔｅｍである。このファイル・システムは、２５６文字までのファイル名を可能にする。Ｗｉｎｄｏｗｓ（Ｍｉｃｒｏｓｏｆｔ社の登録商標）のＶＦＡＴ（Ｗｉｎｄｏｗｓ９５）ファイル・システム及びＦＡＴ３２（Ｗｉｎｄｏｗｓ９８）ファイル・システムでは、ファイル名の最大の長さは２５５文字である。ＮＴＦＳ及びＵＮＩＸ（商標）ファイル・システムでは、ファイル名の最大の長さは２５６文字である。
【０００４】
インターネットでは、例えば、ＨＴＴＰサーバ、ファイル又はプログラム、及び、表示するためのファイル又はＨＴＭＬ文書のようなリソースを識別するために、アドレス指定方式が用いられる。このアドレス指定方式は、Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ（ＵＲＬ）と呼ばれる。ＵＲＬは、例えば「ｈｔｔｐ」のような、サーバにアクセスするときに用いるアプリケーション・プロトコルと、サーバ・ホスト名とも呼ばれるサーバが作動しているサイトのインターネット・ドメイン名と、サーバのポート番号（ポート番号は、ＵＲＬに指定することはできないが、サーバ・ホスト名を変換することによって得られる）と、サーバのファイル構造内におけるリソースの位置と、を含むことができる。例えば、ＵＲＬ、
http://www.christusrex.org/www2/berry/f6v.html
は、アプリケーション・プロトコル「ｈｔｔｐ」と、サーバ・ホスト名「www.christusrex.org」と、アクセスされたファイルへのサーバ・ファイル・パス「/www2/berry/f6v.html」とを指定する。
【０００５】
クライアントの要求がファイルに対するものである場合には、ＨＴＴＰサーバは、該ファイルを探し出し、それを該クライアントに送信する。検索されたファイルの形式に応じて、クライアントは、ファイルを処理するアプリケーションを起動することができる。ファイルの受信時に、クライアントのブラウザは、典型的には、例えば該ファイルを処理するアプリケーション・プログラムを起動するなど、受信後に該ファイルをどのように処理するかを判断するために、拡張子を調べる。例えば、ＨＴＭＬ文書が検索された場合には、クライアントのウェブ・ブラウザは、該ＨＴＭＬ文書を解析してそれを表示することができる。同様に、ワード処理文書が検索された場合には、クライアントは、該文書を処理するワード・プロセッサを起動することができる。代替的に、アクセスされたファイルは、さらに使用するためにローカルに保存する（すなわちダウンロードする）ことができる。
【０００６】
大部分のオペレーティング・システム及びファイル・システムは、一旦ファイルがダウンロードされると、ダウンロード又はコピーされたファイル（子）とソース・ファイル（親）との間の関係を追跡することができない。例えば、ファイルが、インターネットなどのネットワークから、すなわちサーバ・コンピュータからクライアント・コンピュータにコピーされたときは、ソース・ファイルのＵＲＬがコピーされたファイルと共に記録されないため、該クライアント・コンピュータ上のコピー・ファイルと該サーバ・コンピュータ上のソース・ファイルとの関係は失われる。
【０００７】
オープンで防護手段のないネットワーク上の、特にインターネット上の電子情報の交換に関連する重大な危険性が、転送時のデータの変更に影響する。結果として、ネットワークを通して受信されたファイルが破壊も改ざんもされていないこと、及び／又は、該ファイルが偽者によって送信されたものではないことを検証するために、該ファイルを検査することが重要である。文書が変更されたときに、オリジナル文書を回復するために、例えば変更を分析するために、ソース・ファイルを追跡することも重要である。
【０００８】
ファイルはまた、該ファイルと関連付けられた記述及び参照情報、すなわちファイル・メタデータを有することがある。この情報は、ソース、コンテンツ、生成の日付及び場所、所有権又は著作権情報、主な記憶場所、使用状態、関連文書、ファイル又はサービスと関連付けられたアプリケーション、に関するものとすることができる。しかしながら、大部分のファイル・システムは、ファイルと関連メタデータとの永続的な接続を保持することができない。ファイルが、あるコンピュータ・システムから別のコンピュータ・システムに送信されたときは、そのファイルと関連メタデータとの接続が失われることが多い。
【０００９】
ユーザが、例えば受信した電子メールに添付されたファイルのアイコンをクリックすることによって、ネットワークを通してファイルを受信するときは、該ユーザは、添付ファイルとは別に、こうしたファイルと関連するメタデータを入手することが必要であろう。例えば、ファイルがインターネット・サーバから受信されたときに、該ファイルが破壊も改ざんもされなかったことをいくつかの方法で検証するか、又は該ファイルが偽者ではなく正規の送信者から受信されたものであることを検証することが必要な場合がある。特に、受信ファイルがソフトウェア・プログラムである場合には、「トロイの木馬」を含む可能性があるか又はユーザのコンピュータをウイルスに感染させる可能性があるプログラム・ファイルにコンピュータ・システムをさらす前に、該受信ファイルが信頼できるパーティによって送信されたことを保証することが最も重要であろう。この目的のため、ユーザは、ファイルを実行する前に該ファイルの信頼性及び整合性を検証するために、ファイル・メタデータ、特にデジタル証明書及びデジタル署名にアクセスすることが必要な場合になる。
【００１０】
今日、ファイルとそのファイルのメタデータとの関連付けを実行するための異なる手法が存在する。基本的には、ファイルのメタデータを、該ファイルの同一ファイル名にエンコードするか、ファイル・ラッパー構造の一部として該ファイルの先頭に付加若しくは追加するか、該ファイル内の特定の都合のよい位置のどこかに埋め込むか、又は、完全に別のファイルとして作成することができる。各々の手法は、固有の利点及び欠点を有する。すなわち、
−ファイル名がメタデータをエンコードするようにファイルに名前を付けることは、理論上は可能であるが、ファイル名を記述的なものにする試みが行われる場合はあるものの、ファイル名の長さ制限のために、ファイルの適切な記述をファイル名に与えることは一般に不可能である。
【００１１】
−ファイルを区切り文字を用いてラッピングし、該ファイルの先頭又は末尾にメタデータを付加又は追加することは、（該ファイル及び該メタデータの両方が一緒に移動するので）都合がよく、このようにエンコードされた該メタデータを抽出するアルゴリズムは、簡単かつ効率的である。逆に言えば、ラッパー及びメタデータは、一般に、ファイルを当初の意図通りに用いることができる前に削除されなければならない。このため、メタデータ分析は、典型的には、ファイルが検索されたときにのみ行われる。ファイルが後に転送又は移動された場合には、メタデータは失われるであろう。メタデータ・ラッピング方法に関する別の制約は、こういった方法が、画像、映像、音声、又は実行可能ファイルのような多くの形式のファイルにメタデータをエンコードする使用を防止する標準形式のファイル及びファイル・フォーマットには適合しないことである。
【００１２】
−メタデータをファイルのデジタル表現に埋め込むことは、非特許文献１に記載される。画像に高ビット・レートでエンコードする最も一般的な形態は、画像の最小有効輝度ビットを埋め込みデータと置き換えることである。この技術は、知覚不可能なものであり（画像の変化は目立たないものである）、電子透かし又は改ざん防止を含む種々の目的に役立つことがある。メタデータはファイルに埋め込まれるので、ファイル検索時か、ファイルがレンダリングされるたびか、又は受信後のいずれか任意の時期に、メタデータ抽出を行うことができる。このようなデータ埋め込み方法の最大の制約は、考えられる多くの異なる形式のファイル及びファイル・フォーマット、特に画像、映像、音声、又は実行可能ファイルにメタデータを統合する方法（及び位置）に関して、現在は標準化されていないこと、及び、多くの異なる方法でエンコードされたファイルからメタデータを抽出するアルゴリズムの複合さが増すことである。この解決策の別の欠点は、埋め込まれたメタデータが、文書の可読性に影響を及ぼす場合があること、又は、デジタル画像の品質を劣化させる場合があることである。
【００１３】
−例えばサーバ上に、関連ファイルとは別にメタファイルを維持することは、メタファイルへのアクセスに対応する利点を有するが、（それ自体がファイルのメタデータである）メタファイルのアドレスは、あらかじめ知られていなければならないか、又は何らかの方法でファイルから決定されなければならない。よく知られた解決策は、何らかの辞書編集ルール（lexicographic rule）を用いて、例えば異なるファイル拡張子を用いて、メタファイルのファイル名を関連ファイルのファイル名に関連付けることからなる。いくつかのアプリケーションが、ファイルをこれらのアプリケーションによって生成されるメタファイルと関連付けるためにファイル名規則を用いる場合には、関連ファイル（又はメタファイル）についてのファイル名が分かりにくくなり、そのアプリケーションに対してのみ意味のあるものとなることがある。別の重要な欠点は、ファイルが、例えばネットワークを通して異なるシステムに送信されるときには、ファイルとメタファイルとの関連付けが失われる場合があることである。
【００１４】
結果として、メイン・ファイルから、ソース・ファイル又は他の関連ファイルのいずれかとすることができるターゲット・ファイルへのハイパーリンクを生成するための方法及びシステムに対する必要性が存在する。
【００１５】
【非特許文献１】”Techniques for data hiding” by W.Bender and al. IBM Systems Journal,Vol.35,No.3&4,1996
【発明の開示】
【発明が解決しようとする課題】
【００１６】
したがって、本発明の広義の目的は、上述のような従来技術の欠点を改善することである。
【００１７】
本発明の別の目的は、メイン・ファイルからターゲット・ファイルへのハイパーリンクを生成し、該メイン・ファイルから各々のターゲット・ファイルにアクセスできるようにする方法及びシステムを提供することである。
【００１８】
本発明のさらなる目的は、メイン・ファイルから、該メイン・ファイルが検索されたソースへのハイパーリンクを生成する方法及びシステムを提供することである。
【００１９】
本発明のさらに別の目的は、メイン・ファイルから関連メタデータへのハイパーリンクを生成する方法及びシステムを提供することである。
【課題を解決するための手段】
【００２０】
これらの及び他の関連する目的の達成は、１次ファイル名と少なくとも１つのエンコードされたターゲット・ファイル・アドレスとを含むファイル名を有するメイン・ファイルを含み、該メイン・ファイルの該１次ファイル名と、該少なくとも１つのエンコードされたターゲット・ファイル・アドレスとが、第１の制御文字によって分離され、２つの連続するエンコードされたターゲット・アドレスが、第２の制御文字によって分離されることを特徴とする、コンピュータ等により可読な媒体と、
ターゲット・アドレスで使用可能な少なくとも１つのターゲット・ファイルを、１次ファイル名を有するメイン・ファイルにハイパーリンクするための方法であって、
−該ターゲット・ファイルの各々の該ターゲット・アドレスをエンコードするステップと、
−該１次ファイル名及び該エンコードされたターゲット・アドレスをファイル名に結合するステップと、
−該ファイル名を用いて該メイン・ファイルの名前を変更するステップと、
を含み、該１次ファイル名と、該エンコードされたターゲット・アドレスとが、第１の制御文字によって分離され、２つの連続するエンコードされたターゲット・アドレスが、第２の制御文字によって分離されることを特徴とする方法と、
によって実現される。
【発明を実施するための最良の形態】
【００２１】
本発明のさらなる利点は、図面及び詳細な説明を検討することによって、当業者に明らかとなるであろう。あらゆる付加的な利点をこれらに組み入れ得ることが意図されている。
【００２２】
本発明によれば、メイン・ファイルのファイル名は、特定の辞書編集を使用して、１つ又はいくつかのターゲット・ファイルのターゲット・アドレスをエンコードするのに用いられる。用いられる辞書編集は、ファイル・システムによって禁止されることがある特定の文字、例えばＭｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓシステムの「＼」を避けるように、及び／又は、ターゲット・アドレスのサイズを減少させるように該ターゲット・アドレスをエンコードするために、決定される。エンコードされることになるターゲット・アドレスは、例えば、ローカル・アドレス、プライベート・ネットワークにおけるアドレス、又はインターネット・アドレスなど、いかなる形式のものとすることもできるが、例示の目的で、以下の説明で与えられる例は、ＵＲＬ型のアドレスに基づくものとする。
【００２３】
第１の実施形態においては、ファイルが保存されるソース・ファイル・アドレスをエンコードするための方法が開示される。この実施形態によれば、ソース・ファイル・アドレスは、メイン・ファイルがサーバからユーザ・システムに送信されたときか、又は、メイン・ファイルがローカルに保存されるか若しくは別のシステムに送信されたときのいずれかのときに、エンコードすることができる。同様に、ソース・ファイル・アドレスは、ソース・ファイルのアドレス、又は、メイン・ファイルが含まれるインターネット・ページのアドレスのいずれかを表すことができる。
【００２４】
図１は、ソース・ファイル・アドレスをエンコードするのに用いられるアルゴリズムの例を示す。図１ａに示されるように、第１のステップは、メイン・ファイルの１次ファイル名、すなわちソース・ファイル・アドレスをエンコードする前のファイルのファイル名を取得すること（枠１００）、及び、該メイン・ファイルが含まれるインターネット・ページのＵＲＬ、又はソース・ファイル・アドレスとも呼ばれる該メイン・ファイルの独自アドレスを取得すること（枠１０５）からなる。次に、ソース・ファイル・アドレスは、エンコードされ（枠１１０）、ファイルの名前が１次ファイル名とエンコードされたソース・ファイル・アドレスとを含むファイル名を用いて変更される（枠１２０）前に、特定のセパレータを用いてメイン・ファイルの１次ファイル名と結合される（枠１１５）。
【００２５】
図１ｂは、エンコード・アルゴリズムの例を示す（枠１１０）。変数ｉがゼロにセットされ（枠１２５）、ｉ番目の文字はソース・ファイル・アドレスの文字列から抽出される（枠１３０）。この抽出された文字がユーザのファイル・システムによって禁止されたものであるかどうかを判断するために、検査が実行される（枠１３５）。この抽出された文字が禁止されたものではない場合には、変数ｉが１だけ増加され（枠１５０）、変数ｉが、ソース・ファイル・アドレスの長さと等しい最大値に達したかどうかを判断するために、新しい検査が実行される（枠１５５）。変数ｉがその最大値に達していなかった場合には、その前の４つのステップ（枠１３０から１５５まで）が繰り返される。一方、変数ｉがその最大値に達した場合には、処理は停止する。抽出された文字が禁止されたものである場合には、辞書編集テーブル１４５において対応する文字が選択され、この選択された文字が、禁止された文字と置き換えられる（枠１４０）。次に、上述のように、変数ｉが１だけ増加され、変数ｉがその最大値に達したかどうかを判断する検査が実行される。
【００２６】
例として、以下のＵＲＬ、
「http://www.my_server.com/ph_012.html」
を有するインターネット・ページに含まれ、１次ファイル名として「my_photo.jpg」を有する画像からなるメイン・ファイルと、
「：」が「．．」に関連付けられ、
「／」が「（」に関連付けられる、
辞書編集テーブルを考える。
【００２７】
ユーザが、標準メニュー「ｓａｖｅ．．．」、「ｓａｖｅ  ａｓ．．．」、又は「ｓｅｎｄ  ｔｏ．．．」のような、この画像をダウンロードするためのオプションを選択したときは、この画像は、対応する１次ファイル名と共にインターネット・サーバからユーザ・システムに送信され、ＵＲＬは、前述の辞書編集テーブルを用いることによって、以下のように、すなわち、
「http..((www.my_server.com(ph_012.html」
のようにエンコードされる。
【００２８】
次に、エンコードされたＵＲＬは、１次ファイル名と結合される。この例においては、エンコードされたＵＲＬは、セパレータとして用いられる括弧に囲まれる。エンコードされたＵＲＬは、以下のように、すなわち、
「my_photo(http..((www.my_server.com(ph_012.html).jpg」
のように、１次ファイル名の拡張子ドットの前に挿入され、メイン・ファイルの名前は、この「エンコードされたハイパーリンク・ファイル名」を用いて変更される。
【００２９】
画像が含まれており、該画像が複製されるインターネット・ページのアドレスを関連付ける代わりに、エンコードされたハイパーリンク・ファイル名は、ソース画像ファイルのアドレスを含むことができる。例えば、画像ファイルのアドレスが、
「http://www.my_server.com/my_ph.jpg」
である場合には、エンコードされたソース・ファイル・アドレスは、
「http..((www.my_server.com(my_ph.jpg」
であり、したがって、格納された画像ファイルに割り当てられる「エンコードされたハイパーリンク・ファイル名」は、
「my_photo(http..((www.my_server.com(my_ph.jpg).jpg」
である。
【００３０】
このエンコード・アルゴリズムは、例示の目的で意図的に極めて単純なものとされていることに留意しなければならない。好ましいアルゴリズムは、一連の禁止文字を単一の文字で置き換えること、例えば「／／：」を「（」で置き換えることからなるものであろう。同様に、いくつかの文字のセットを、より短縮されたコードで置き換えること、例えば「ｈｔｔｐ：／／」を「Ｈ！」で置き換えることができる。このようなエンコード最適化は、後述されることになる。
【００３１】
第２の実施形態においては、１つ又は複数の関連ターゲット・ファイルのアドレスをエンコードするための方法が開示される。上述のように、ターゲット・ファイルは、例えば、ソース・ファイル、メタデータ、コンピュータ・プログラム、テキスト文書、図形、画像、音声、映像、又は他の情報からなるものとすることができる。ターゲット・ファイルは、例えばＨＴＭＬファイルを通してアクセスできるサービスを提供することもできる。この実施形態においては、本発明の方法は、例えばメイン・ファイルを保存するときに任意に起動することができるモジュールのような、多くのソフトウェアのモジュールとして統合するか、又は、独立したソフトウェアとして実装することができる。図２はこの実施形態の主なステップを示す。処理が終了していない場合には、メイン・ファイルの１次ファイル名を取得（枠２００）した後、ユーザがターゲット・ファイルを関連付ける必要があるかどうかを判断する検査が実行される（枠２０５）。ユーザがターゲット・ファイルを関連付ける必要がある場合には、関連付ける第１のターゲット・ファイルのアドレスを入力するように、該ユーザに対して要求が送信される（枠２１０）。これを受けて、ユーザは、ターゲット・アドレスを入力するか、又は標準的なブラウズ機能を用いてターゲット・アドレスを決定することができる。次に、関連付けるターゲット・ファイルのアドレスがエンコードされ（枠１１０´）、特定のセパレータを用いて１次ファイル名と結合される（枠２１５）。図１ｂを参照して説明したものと同様のアルゴリズムを用いて、関連付けるターゲット・ファイルのアドレスをエンコードすることができる。ユーザがさらにターゲット・ファイルを関連付けることを望むかどうかを判断するために、第２の検査が実行される（枠２２０）。それ以上関連付けるターゲット・ファイルが存在しない場合には、処理は終了する。そうでなければ、その前の４つのステップ（枠２１０から２２０まで）が繰り返される。エンコードされたハイパーリンク・ファイル名を解析して、各々のターゲット・アドレスを検索することができるように、エンコードされたターゲット・アドレスの各々の間に制御文字が挿入される。複製又は保存されたメイン・ファイルのソース・ファイルのアドレスは、どのような関連ターゲット・ファイルにもリンクできることに留意しなければならない。
【００３２】
例示として再び前述の例を利用し、ここでは、ユーザは、画像のソースのアドレスとは別に、該画像のテキスト記述を含むターゲット・ファイルのアドレスを関連付けようとしているものとする。したがって、この新しい例においては、ソース・ファイル・アドレスと画像記述ファイルのアドレスの両方が、画像の１次ファイル名に関連付けられなければならない。この例においては、画像の１次ファイル名は「my_photo.jpg」であり、ソース画像ファイルのＵＲＬは、
「http://www.my_server.com/my_ph.jpg」
であり、テキスト記述ファイルのＵＲＬは、
「http://www.my_server.com/my_ph.txt」
であり、辞書編集テーブルは、以前と同様に、
「：」が「．．」に関連付けられ、
「／」が「（」に関連付けられる。
【００３３】
このメイン・ファイルを保存するときは、ユーザは、「ａｓｓｏｃｉａｔｅ  ｆｉｌｅｓ  ．．．」のようなオプションを選択し、次に、自分が関連付けたいターゲット・ファイルを選択することができる。このような場合には、関連付けるすべてのターゲット・ファイルのアドレスがエンコードされる。したがって、この例においては、エンコードされたターゲット・アドレスは、
「http..((www.my_server.com(my_ph.jpg」
「http..((www.my_server.com(my_ph.txt」
であり、これらは、以下のように、すなわち、
「my_photo(http..((www.my_server.com(my_ph.jpg{http..((www.my_server.com(my_ph.txt).jpg」
のように、１次ファイル名と結合される。
【００３４】
この例においては、外側の括弧「（」及び「）」は、ハイパーリンクがエンコードされた１次ファイル名の部分を識別するセパレータとして用いられ、ブラケット「｛」が、エンコードされたターゲット・アドレスの各々の間に挿入される。
【００３５】
ここでも同様に、エンコード手順は、エンコードされたハイパーリンク・ファイル名の長さを減少させるように最適化することができる。
【００３６】
第３の実施形態は、ターゲット・ファイルのいくつかのエンコードされたアドレスを含むファイル名をデコードし、次に、これらのターゲット・ファイルにアクセスするための方法に関する。図３は、このような方法を実行するアルゴリズムの例を示す。ファイル名が１次ファイル名とエンコードされたターゲット・アドレスとを含むメイン・ファイルを選択した後であって、「ｖｉｅｗ  ｓｏｕｒｃｅ  ｆｉｌｅ  ．．．」又は「ｖｉｅｗ  ａｓｓｏｃｉａｔｅｄ  ｆｉｌｅｓ  ．．．」のようなボタン又はメニューを選択したときには、該ファイル名は、エンコード処理の際に使用されたものと同一のセパレータを用いて解析される（枠３００）。次に、ハイパーリンクの数ｎ、すなわちエンコードされたターゲット・アドレスの数が求められ（枠３０５）、変数ｉがゼロにセットされる（枠３１０）。ｉ番目のエンコードされたターゲット・アドレスが選択され（枠３１５）、このターゲット・アドレスをエンコードするのに使用された辞書編集テーブル、例えばテーブル１４５を用いて、デコードされる（枠３２０）。このデコードされたターゲット・アドレスを用いて、関連ターゲット・ファイルにアクセスすることができる（枠３２５）。インターネット・ブラウザ・システムにおいてファイルを処理する場合が一般的であるため、選択されたオプション又はソフトウェア設定に応じて、アクセスされたターゲット・ファイルはローカルに保存されるか、又はターゲット・ファイルを閲覧するために自動的にプラグインが起動することになる。例えば、アクセスされたターゲット・ファイルが画像の場合には、画像ビューア又はエディタが自動的に起動することになる。好ましくは、ターゲット・ファイルの形式は、ターゲット・アドレスの拡張子を分析することによって判断される。次に、変数ｉが１だけ増加され（枠３３０）、全てのハイパーリンクがアクセスされたかどうか、すなわち、変数ｉがエンコードされたターゲット・アドレスの数ｎに達したかどうかを判断する検査が実行され（枠３３５）、変数ｉがｎに達した場合には、処理は終了する。そうでなければ、すなわち、変数ｉがエンコードされたハイパーリンクの数ｎに達していない場合には、その前の５つのステップ（枠３１５から３３５まで）が繰り返される。必要に応じて、アルゴリズムは、関連ターゲット・ファイルの全てにアクセスすることを避けるために、該関連ターゲット・ファイルがアクセスされなければならないハイパーリンクをユーザが選択できるようにするサブモジュールを含むことができる。理解しやすいように、このようなオプションは、図３のアルゴリズムには表示されない。
【００３７】
このデコード・アルゴリズムは、エンコードされたハイパーリンク・ファイル名が、
「my_photo(http..((www.my_server.com(my_ph.jpg{http..((www.my_server.com(my_ph.txt).jpg」
である前述の例を用いて説明することができる。
【００３８】
セパレータ「（」、「）」、及び「｛」を識別することによって、エンコードされたハイパーリンク・ファイル名を解析し、メイン・ファイルの１次ファイル名及びエンコードされたターゲット・アドレス、すなわち、それぞれ、
１次ファイル名：my_photo.jpg
エンコードされたターゲット・アドレス１：http..((www.my_server.com(my_ph.jpg
エンコードされたターゲット・アドレス２：http..((www.my_server.com(my_ph.txt
を抽出することができる。
【００３９】
次に、エンコード処理に使用された辞書編集テーブルを用いて、エンコードされたターゲット・アドレスを、
ターゲット・アドレス１：http://www.my_server.com/my_ph.jpg
ターゲット・アドレス２：http://www.my_server.com/my_ph.txt
としてデコードすることができ、その結果、関連ターゲット・ファイルは、アクセスすること、すなわち閲覧するか又はローカルに保存することができる。この場合には、ターゲット・アドレスの拡張子が、容易に認識することができる標準的な拡張子（「ｊｐｇ」及び「ｔｘｔ」）であるため、ターゲット・ファイルが検索されたときに、画像ビューア及びテキスト・エディタを自動的に起動させることができる。
【００４０】
本明細書で前述したように、アドレスのエンコード手順は、圧縮されてエンコードされたハイパーリンク・ファイル名を生成するように、最適化することができる。異なるデータ圧縮技術を（有効なエンコードされたファイル名を生成することに関する制限のみを用いて）効率的に適用することができる場合でも、最も簡単なもののみが以下に説明される（データ圧縮技術を扱うことは本発明の目的ではない）。
【００４１】
メイン・ファイルにハイパーリンクされたターゲット・ファイルは、一般に、同一の場所、例えば、同一のフォルダ、ディレクトリ、又はウェブ・ページに格納されるので、重複を避けるために、単一の共通パスをエンコードすることができる。したがって、エンコードされたハイパーリンク・ファイル名が、
「my_photo(http..((www.my_server.com(my_ph.jpg{http..((www.my_server.com(my_ph.txt).jpg」
である前述の例をここでも考えると、制御文字、例えば末尾の「｝」によって共通パスを識別し、共通パスのエンコードを繰り返す必要をなくすようにすることができる。このような場合には、新たなエンコードされたハイパーリンク・ファイル名は、
「my_photo(http..((www.my_server.com(}my_ph.jpg{my_ph.txt).jpg」
である。
【００４２】
デコード処理の際、共通パスが先行する共通パス制御文字「｝」として識別されると、この共通パスは、セパレータ制御文字、すなわちこの例では「｛」によって識別される、後続の個々のエンコードされたターゲット・ファイル・パスの各々の前に付加される。
【００４３】
ターゲット・ファイルの一部のみが共通パスを共有する場合には、該共通パスを共有しない１つ又は複数のパスを識別するために、別の制御文字を挿入することができる。
【００４４】
エンコードされたハイパーリンク・ファイル名は、ホスト名を、インターネット・プロトコル（ＩＰ）ドメイン・ネーム・サーバ（ＤＮＳ）アドレスと置き換えることによって最適化することもできる。ＤＮＳアドレスの決定は、標準的なＡＰＩ機能、又はオペレーティング・システム機能、例えばＭＳ−ＤＯＳ（Ｍｉｃｒｏｓｏｆｔ社の登録商標）オペレーティング・システムの「ｐｉｎｇ」機能を用いることによって、容易に行うことができる。このような場合には、９．１６４．１９４．２４１が、ホスト名として「my_server.com」を有するサーバのＩＰアドレスであると仮定すると、エンコードされたハイパーリンク・ファイル名の上記の例は、
「my_photo(http..((9.164.194.241(}my_ph.jpg{my_ph.txt).jpg」
となる。
【００４５】
最後に、上述のように、頻繁に用いられるいくつかの文字セット、例えば、「ｈｔｔｐ：／／」、「ｈｔｔｐ：／／ｗｗｗ．」、又は「ｆｔｐ：／／」は、より短縮したコード、例えば、それぞれ「Ｈ！」、「Ｗ！」、又は「Ｆ！」で置き換えることができる。このような予約済み文字列及び関連短縮コードは、上述の辞書編集テーブルに格納することができる。ここでも前述の例を考えると、最適化済みのエンコードされたハイパーリンク・ファイル名は、
「my_photo(H!9.164.194.241(}my_ph.jpg{my_ph.txt).jpg」
である。
【００４６】
しかしながら、一般に、インターネット・ブラウザはデフォルトでＨＴＴＰアクセス・プロトコルを自動的に取得するので、この特定の場合において、文字セット「ｈｔｔｐ：／／」（すなわち、ＨＴＴＰインターネット・アクセス・プロトコル・コード）は、無視することもできることに留意しなければならない。
【００４７】
図４は、図２を参照して説明したアルゴリズムと併せて、例えば枠２２０及び２２５に対応するステップの間に用いることができる、最適化されたエンコード・アルゴリズムの例を示す。第１のステップは、エンコードされたターゲット・アドレスが共通パスを共有するかどうかを判断するために、該エンコードされたターゲット・アドレスを分析することからなる（枠４００）。共通パスが存在する場合には、制御文字が第１の共通パスの末尾に挿入され、後続の共通パスが、エンコードされたハイパーリンク・ファイル名から削除される（枠４１０）。共通パスが存在しない場合には、前述のステップは無視される。次に、ホスト名は、ＤＮＳ  ＩＰアドレスで置き換えられる（枠４１５）。上述のように、ＤＮＳ  ＩＰアドレスは、例えばＡＰＩ機能を用いて、容易に決定することができる。最後に、文字セットと対応する短縮コードとの組を格納する辞書編集テーブル４２０に従って、文字セットを関連短縮コードで置き換える（枠４２５）ために、エンコードされたハイパーリンク・ファイル名が分析される。図において点線で示されるように、この最後のステップを除外して、ハイパーリンクをエンコードすることからなるステップ（図１ａの枠１１０）と組み合わせるようにすることができる。このような場合には、辞書編集テーブル１４５及び４２０は、統合されることが好ましい。
【００４８】
当然のことながら、共通パスを削除するステップ、ホスト名をＤＮＳ  ＩＰアドレスで置き換えるステップ、及び文字セットを制御文字で置き換えるステップは、最終的な結果を変更することなく、いかなる順序で実行することもできる。
【００４９】
エンコード処理が最適化されたときには、デコード処理は、図３を参照して説明したようにエンコードされたハイパーリンク・ファイル名をデコードする前に、まず圧縮コードを対応する文字セットで置き換え、欠落した共通パスを挿入することからなる。圧縮コードを文字セットで置き換えるのに用いられる辞書編集テーブルは、最適化処理に利用されたものと同一のものでなければならない。ＩＰアドレスをホスト名で置き換えることは必要ではないが、こうした置き換えは、ＡＰＩ機能又はオペレーティング・システム機能、例えばＤＮＳＵｔｉｌｉｔｙ  Ｃｏｄｅの「ＧｅｔＨｏｓｔＢｙＮａｍｅ」機能を用いて行うことができるであろう。
【００５０】
当然のことながら、部分的かつ特定の要件を満たすために、当業者であれば多くの修正及び変更を上述の解決策に加えることができるが、そのすべては、特許請求の範囲によって定められる本発明の保護の範囲内に含まれる。
【図面の簡単な説明】
【００５１】
【図１ａ】メイン・ファイルのソース・アドレスを、このメイン・ファイルのファイル名にエンコードするのに用いられるアルゴリズムの例を示す。
【図１ｂ】メイン・ファイルのソース・アドレスを、このメイン・ファイルのファイル名にエンコードするのに用いられるアルゴリズムの例を示す。
【図２】複数のターゲット・ファイル・アドレスを、メイン・ファイルのファイル名にエンコードするためのアルゴリズムの例を示す。
【図３】エンコードされたハイパーリンク・ファイル名をデコードするのに用いられるアルゴリズムの例を示す。
【図４】ファイル・アドレスのエンコードを最適化するのに用いられるアルゴリズムの例を示す。
【図１ａ】
2006508436.tif 000003
【図１ｂ】
2006508436.tif 000004
【図２】
2006508436.tif 000005
【図３】
2006508436.tif 000006
【図４】
2006508436.tif 000007
【国際調査報告】
2006508436.tif 000008
2006508436.tif 000009
2006508436.tif 000010