JP3593303B2 - クライアント・マシンにおいてドキュメントをアクセスするための方法 - Google Patents

クライアント・マシンにおいてドキュメントをアクセスするための方法 Download PDF

Info

Publication number
JP3593303B2
JP3593303B2 JP2000180511A JP2000180511A JP3593303B2 JP 3593303 B2 JP3593303 B2 JP 3593303B2 JP 2000180511 A JP2000180511 A JP 2000180511A JP 2000180511 A JP2000180511 A JP 2000180511A JP 3593303 B2 JP3593303 B2 JP 3593303B2
Authority
JP
Japan
Prior art keywords
document
source
master
server
preferred
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
JP2000180511A
Other languages
English (en)
Other versions
JP2001034526A (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2001034526A publication Critical patent/JP2001034526A/ja
Application granted granted Critical
Publication of JP3593303B2 publication Critical patent/JP3593303B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • 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/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99954Version management

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、概してコンピュータ・ソフトウェアに関し、より詳しくは分散型コンピューティング環境におけるドキュメントのコピー管理に関する。
【0002】
【従来の技術】
インターネットは、情報ならびに娯楽の両面においてともにそのソースとして文化的に定着した。多くのビジネスは、市場努力の一環としてインターネット・サイトを開設し、消費者に当該ビジネスが提供する製品ないしはサービスを知らせ、あるいはその他の情報を提供しブランドを浸透させようとしている。連邦、州、および地方自治体の部局もまた、その多くが情報提供目的でインターネット・サイトを採り入れており、特に実質的に社会のあらゆる部分と対話しなければならない国税局等の部局および国務長官においてはそれが顕著である。公開記録については、情報提供のためのガイドやサーチ可能なデータベースをオンラインで提供する方が運用コストが削減できることがある。
【0003】
【発明が解決しようとする課題】
現在、コンテンツのプロバイダや制作者(著作者)によって、ウェブ上での資源(ドキュメント、ロゴ、データ、グラフィック等)の配付のために試みられている方法は、それが個人であるか会社であるかによらず、一般に次の2つの方法のいずれかである:すなわち、サーバを準備し、資源はすべてそこからロードしなければならないとする方法、または資源のコピーを許し、リモート・サイトにおいてそれを繰り返し再現できるとする方法である。その一例がウェブ上のバナー広告である。問題はいずれの方法にもある。前者の方法を採用した場合、制作者のサーバは、発生が予想される膨大なヒットに追随し得るべく非常に広い帯域幅を有していなければならない。この帯域幅が充分であることはまれであり、そのため広告のロードが遅くなり、延いてはそれが、広告がなければ「速い」はずのページのロードさえも遅くすることになる。この方法はまた、サーバの故障が地球規模の影響を招くというリスクも抱えている。
【0004】
2番目の方法においては、広告主がコントロールをほぼ完全に放棄した形となる。実際上、インターネット全体にわたるドキュメント/画像/ロゴの同期は不可能である。広告主が持ち得る唯一の手段は、アップデートを提供し、時機を失することなくそれがリモート・サイトにおいて更新されることを祈るだけである。さらに、それぞれのサイトは、(まったく同一の)コピーを個別に持たなければならず、おそらくはそれが異なる名前で識別され、かつ間違いなくそれが互いに異なる固有のサイト/パス/ファイル名によって識別されることから、いたるところに見受けられるコカコーラ(Coca−Cola)のロゴのように、すでに他のサイトからロードした多くのコピーをユーザが所持している場合であっても、そのドキュメント/画像をユーザの元に再送信しなければならない。このように、名前が異なるとき、または名前が同じでもサイトが異なるとき、ブラウザは異なるドキュメント/画像/ロゴと見なしてしまう。
【0005】
そこで、ドキュメント配付のための改善された方法および装置があると都合がよい。
【0006】
【課題を解決するための手段】
本発明は、分散型コンピューティング環境において第1のドキュメントのコピーを同期させる方法を提供する。この第1のドキュメント用の優先リポジトリに対するパスおよび、第1のドキュメント用のマスタ・リポジトリに対するパスが、第2のドキュメントに埋め込まれる。まず第1のドキュメントのコピーを優先リポジトリから取り出す。続いてマスタ・リポジトリを調べ、取り出したこのコピーが、第1のドキュメントのもっとも新しいバージョンのコピーであるか否かを判断する。取り出したコピーが第1のドキュメントのもっとも新しいバージョンであると判断されると、取り出したそのコピーを使用して第2のコピーをフォーマットする。
【0007】
新規性があると考えられる本発明の特徴は、特許請求の範囲に述べたとおりである。しかしながら、本発明そのもの、その好ましい実施態様を始めそのさらなる目的ならびに利点に対するより良い理解に資するため、以下、添付図面を参照して実施例を詳細に説明する。
【0008】
【発明の実施の形態】
ここで図面、特に本発明を実施し得る分散型データ処理システムの概要を示した図1を参照する。
【0009】
分散型データ処理システム100は、本発明を実施し得るコンピュータのネットワークである。この分散型データ処理システム100は、分散型データ処理システム100内で接続される各種デバイスおよびコンピュータ間の通信リンクを提供するために使用されるメディアであるネットワーク102を備える。ネットワーク102は、有線もしくは光ファイバ・ケーブル等を用いる恒久的な接続、または電話接続を通じた一時的な接続を含むものとすることができる。
【0010】
この例に示したネットワーク102には、サーバ104が記憶ユニット106とともに接続されている。それに加えてこのネットワーク102には、クライアント108、110および112が接続されている。クライアント108、110および112は、たとえばパーソナル・コンピュータもしくはネットワーク・コンピュータとすることができる。ただし本明細書においては、ネットワークに接続された別のコンピュータからプログラム、データまたはその他のアプリケーションを受信する、ネットワークに接続された任意のコンピュータをネットワーク・コンピュータとする。図示の例におけるサーバ104は、ブート・ファイル、オペレーティング・システム・イメージおよびアプリケーション等のデータをクライアント108〜112に供給する。サーバ104は、複数のクライアントまたは他のサーバに配付予定のファイル(グラフィック・ファイル、ドキュメント、バナー、広告等)のためのリポジトリとしても機能し得る。クライアント108、110および112は、サーバ104に対するクライアントである。分散型データ処理システム100は、図示を省略したが、このほかにもサーバ、クライアントおよびその他のデバイスを含むこともある。分散型データ処理システム100は、プリンタ114、116および118も備えている。あるクライアント、たとえばクライアント110は、プリンタ114に直接プリントすることができる。クライアント108およびクライアント112等のクライアントには、プリンタが直接アタッチされていない。これらのクライアントは、サーバ104にアタッチされるプリンタ116またはドキュメントをプリントするためのコンピュータを接続しておく必要のないネットワーク・プリンタ118にプリントすることができる。クライアント110も、プリンタのタイプおよびドキュメントの要件に応じてプリンタ116またはプリンタ118にプリントすることができる。
【0011】
図示の例においては、分散型データ処理システム100がインターネットであり、ネットワーク102は互いの通信を可能にするTCP/IPプロトコル・スイートを使用するネットワークおよびゲートウェイの地球規模の集合を表す。しかしながら本発明がインターネットに限定されることはなく、その他のネットワーク、たとえばこれに限定する意図はまったくないが、ローカル・エリア・ネットワーク(「LAN」)およびワイド・エリア・ネットワーク(「WAN」)を含めたネットワークにおいて使用されることもある。インターネットの心臓部には、主要ノードすなわち、データならびにメッセージのルーティングを行う無数の商業関連、政府関連、教育関連その他のコンピュータ・システムからなるホスト・コンピュータの間をつなぐ高速データ通信ラインのバックボーンが横たわる。当然のことながら、たとえばイントラネットまたはローカル・エリア・ネットワーク等の種々のタイプのネットワークとして、分散型データ処理システム100を具体化してもよい。
【0012】
図1は、例示を意図したものであり本発明のプロセスに関する構造的な限定を意図したものではない。
【0013】
図2を参照すると、本発明に従って図1におけるサーバ104等のサーバとして具体化され得るデータ処理システムのブロック図が図示されている。データ処理システム200は、システム・バス206に接続された複数のプロセッサ202および204を備える対称マルチプロセッサ(SMP)システムである。これに代えてシングル・プロセッサ・システムを使用してもよい。また、このシステム・バス206に接続されているメモリ・コントローラ/キャッシュ208は、ローカル・メモリ209に対するインターフェースを提供する。さらにI/Oバス・ブリッジ210がシステム・バス206に接続され、それによりI/Oバス212に対するインターフェースが提供される。メモリ・コントローラ/キャッシュ208およびI/Oバス・ブリッジ210は、ここに図示したように統合されていることもある。
【0014】
I/Oバス212に接続されたPCIバス・ブリッジ214は、PCIローカル・バス216に対するインターフェースを提供する。このPCIバス216には複数のモデム218〜220が接続されることがある。一般的なPCIバス実装は、4つのPCI拡張スロットまたはアドイン・コネクタをサポートする。図1に示したネットワーク・コンピュータ108〜112に対する通信リンクは、アドイン・ボードを通じてPCIローカル・バス216に接続されたモデム218およびネットワーク・アダプタ220を介して提供される。
【0015】
上記のほかにも追加のPCIバス226および228用のインターフェースを提供するPCIバス・ブリッジ222および224が備わり、これを介して追加のモデムまたはネットワーク・アダプタをサポートすることができる。このようにしてサーバ200においては、複数のネットワーク・コンピュータに対する接続が可能になる。また図示のように、I/Oバス212には、メモリ・マップド・グラフィック・アダプタ230およびハードディスク232が直接もしくは間接的に接続されることもある。
【0016】
当業者にとっては明らかであろうが、図2に示したハードウェアには多くの変形が考えられる。たとえば、図示のハードウェアに加えて、またはそれに代えて光ディスク・ドライブ等の他の周辺デバイスを使用してもよい。すなわち、ここに示した例が本発明に関する構造的な制限を暗示することはない。
【0017】
図2に示したデータ処理システムは、たとえばAIXオペレーティング・システムを実行するIBM RISC/System 6000とすることができる。
【0018】
ここで、本発明を実施することができるデータ処理システムのブロック図を示した図3を参照する。データ処理システム300は、クライアント・コンピュータの一例である。データ処理システム300は、ネットスケープ・ナビゲータまたはマイクロソフト・インターネット・エクスプローラといったウェブ・ブラウザ・ソフトウェアを実行することもできる。このデータ処理システム300は、PCIローカル・バス・アーキテクチャを採用している。ここに図示した例においてはPCIバスが使用されているが、マイクロチャネルあるいはISA等のこれとは異なるバス・アーキテクチャを使用してもよい。PCIローカル・バス306には、PCIブリッジ308を介してプロセッサ302およびメイン・メモリ304が接続されている。このPCIブリッジ308には、プロセッサ302用のメモリ・コントローラおよびキャッシュ・メモリが統合されていてもよい。PCIローカル・バス306に対する追加の接続は、直接コンポーネント接続により、あるいはアドイン・ボードを介して得られる。図示した例においては、直接コンポーネント接続によりローカル・エリア・ネットワーク(LAN)アダプタ310、SCSIホスト・バス・アダプタ312、および拡張バス・インターフェース314がPCIローカル・バス306に接続されている。これに対して、オーディオ・アダプタ316、グラフィック・アダプタ318、およびオーディオ/ビデオ・アダプタ(A/V)319は、拡張スロットに挿入されたアドイン・ボードによってPCIローカル・バス306に接続されている。拡張バス・インターフェース314は、キーボードおよびマウス・アダプタ320、モデム322、および増設メモリ324のための接続を提供する。図示の例において、SCSIホスト・バス・アダプタ312はハードディスク・ドライブ326、テープ・ドライブ328、CD−ROMドライブ330およびディジタル・ビデオ・ディスク読み出し専用メモリ・ドライブ(DVD−ROM)332のための接続を提供する。一般的なPCIローカル・バス実装は、3ないしは4のPCI拡張スロットまたはアドイン・コネクタをサポートする。
【0019】
プロセッサ302上で実行されるオペレーティング・システムは、図3に示したデータ処理システム300内の各種コンポーネントを調整し、制御するために使用される。このオペレーティング・システムは、本出願人から提供されているOS/2等の市販オペレーティング・システムとすることができる。Java等のオブジェクト指向プログラミング・システムをこのオペレーティング・システムと関連させて実行し、データ処理システム300上で実行するJavaプログラムからオペレーティング・システムへの呼び出しを提供するようにしてもよい。オペレーティング・システム、オブジェクト指向オペレーティング・システム、およびアプリケーションまたはプログラム用の命令は、一般に、ハード・ディスク・ドライブ326等の記憶デバイスに格納されており、プロセッサ302による実行時にメイン・メモリ304にロードされる。
【0020】
当業者にとっては明らかであろうが、図3に示したハードウェアは、実装に応じて多様な形をとり得る。たとえば、図3に示したハードウェアに加えて、またはそれに代えて光ディスク・ドライブ等の他の周辺デバイスを使用してもよい。すなわち、ここに示した例が本発明に関する構造的な制限を暗示することはない。たとえば、本発明のプロセスをマルチプロセッサ・データ処理システムに適用することもできる。
【0021】
本発明の好ましい実施例を図4に示す。ローカル・サーバ410上にあるウェブ・サイトは、ターゲット・ドキュメント仕様(HTMLリンク等)を擁しており、そこには複数の名前およびターゲット・ドキュメントを見つけ出すことができる可能性のある場所が含まれている。ターゲット・ドキュメントとしては、たとえばグラフィック・ファイル、ドキュメント、バナー、広告等が考えられる。パス名の1つは「優先」ロケーション410を参照し、1つないしは複数のパス名は「フォールバック(代替)」ロケーション420を参照し、名前の1つは「マスタ」ロケーション430を参照する。ネットスケープ・ナビゲータまたはマイクロソフト・インターネット・エクスプローラ等のウェブ・ブラウザは、ネットワーク102を経由して優先ロケーション410からターゲット・ドキュメントをユーザ450にロードする。この「優先」ロケーション410は、通常ローカル・サイトであり、一般に当該ブラウザにとってもっとも高速にロードできるターゲット・ドキュメントのコピーとなる。ブラウザは、アイドル期間中にロード済みのバージョンと「マスタ」サイト430上のバージョンを照合し、必要に応じてドキュメントを更新する。ターゲット・ドキュメントを「優先」ロケーション410から入手できない場合に、ウェブ・ブラウザは「フォールバック」ロケーション420をチェックし、この「フォールバック」ロケーション420からターゲット・ドキュメントのロードを試みる。「優先」ロケーション410ならびに「フォールバック」ロケーション420のいずれにもアクセスできなければ、ウェブ・ブラウザは「マスタ」ロケーション430からターゲット・ドキュメントをロードする。
【0022】
現在のシステムにおいては、HTMLが、たとえば次に示すような形になる。
<IMG SRC =”images/cokelogo.gif” WIDTH=129 HEIGHT=128>
【0023】
しかしながら、本発明を使用するとHTMLが次に示すような形になる。
<IMG SRC =”images/cokelogo.gif” WIDTH=128 HEIGHT=128 ALTSRC=” http://www.logoserver.com/coke/logos/coke.gif” ALSTSRC=HTTP://www.fallback.com/images/gif/coke/logo.gif MASTERSRC=http://www.cocacola.com/logos/coke.gif>
【0024】
このように、「優先」ロケーションは、相対リンク「images/cokelogo.gif」を経由してこのHTMLがダウンロードされるサイト上にある。このリンクに障害が生じている場合(または、可能性としてはローカル・サーバのパフォーマンスが低いことから)、示された名前を使用して「logoserver.com」および「fallback.com」が試みられる。これらのリンクもまた成功しなければ、「cocacola.com」からの「マスタ」コピーの取り出しが試みられることになる。ここで、これらのHTML行が、一般にブラウザが探索する第1のドキュメントに埋め込まれたタグであることを理解する必要がある。
【0025】
オリジナルのHTMLドキュメントが完全にロードされた後、マスタ・サーバに対して、表示中のドキュメント/画像/ロゴが最新のものであるかを確認する問い合わせがなされる。しかしながら、マスタ・サーバおよびフォールバック・サーバが使用できない場合は、比較は行われない。変形例においては、マスタ・サーバおよびフォールバック・サーバが使用できない場合に、ウェブ・ブラウザが現在のドキュメントとマスタ・ドキュメントの比較のため、定期的にこれらへのアクセスを試みる。
【0026】
1つの選択肢としては、優先リポジトリのコピーが作成から所定時間経過している場合、たとえばそのコピーが作成後少なくとも1日を経過している場合に限り、フォールバック・リポジトリおよびマスタ・リポジトリをチェックする。これにより、マスタ・サーバおよびフォールバック・サーバの不必要なアクセスが回避される。
【0027】
本発明の変形実施例を図5に示す。この実施例においては、各ローカル・サーバ570、572、574、576、578、および580が、図4に示した実施例における場合と同じ「フォールバック」サーバ(1ないしは複数)420のシステムを経由して「マスタ」サーバに戻るのではなく、マスタ・ドキュメントのコピーが作成されて「発行」サーバ560、562、および564にストアされ、これらの「発行」サーバ560、562、および564が、ローカル・サーバ570、572、574、576、578、および580ならびにフォールバック・サーバ(図示せず)の離散的なグループのための「マスタ」サーバ430として機能する。これらの「発行」サーバ560、562、および564は、ネットワーク102を介して「マスタ」サーバ430に接続される。各ローカル・サーバ570、572、574、576、578は、ネットワーク102を介して対応する「発行」サーバ560、562、および564に接続される。同様にユーザ540、542、および544は、ネットワーク102を経由して対応するローカル・サーバ570、572、574、576、578に接続される。当業者であれば明らかになろうが、本発明の範囲ならびに真意から逸脱することなく、発行サーバおよびローカル・サーバの数をこれより多く、あるいはこれより少なくし、またユーザ数をこれより多く、あるいはこれより少なくすることは可能である。つまり、図5に示したシステムは、単に例示を意図したものであり、本発明を限定する意図はまったくない。
【0028】
ユーザ540用のウェブ・ブラウザは、ウェブ・ページが見つかったローカル・サーバ572からターゲット・ドキュメントの獲得を試みる。このウェブ・ブラウザがローカル・サーバ572に対して、もしくはそのいずれのフォールバック・サーバ(図示せず)に対してもアクセスし得ないとき、ユーザ540用のウェブ・ブラウザは「発行」サーバ560からターゲット・ドキュメントをロードする。ユーザ542用のウェブ・ブラウザは、ローカル・サーバ574経由でターゲット・ドキュメントのロードを試みるが、この試み、およびすべての「フォールバック」サーバに対する試みに失敗すると、発行サーバ562を介してそれをロードする。同様に、ユーザ544用のウェブ・ブラウザは、ローカル・サーバ578経由でターゲット・ドキュメントのロードを試みるが、この試み、およびすべての「フォールバック」サーバに対する試みに失敗すると、「発行」サーバ564を介してそれをロードする。
【0029】
マスタ・サーバ430は、マスタ・ターゲット・ドキュメントの修正が行われると、ネットワーク102を通じて発行サーバ560、562、および564に向けて更新をプッシュする。続いて「発行」サーバ560、562、および564は、この更新を「フォールバック」サーバにプッシュし、さらにそこからローカル・サーバ570、572、574、576、578に向けてこの更新がプッシュされる。このようにしてターゲット・ドキュメントの制作者または所有者は、ターゲット・ドキュメントに対する参照を含むウェブ・ページのロード時間を遅らせることなく、使用されるターゲット・ドキュメントが正しい最新のコピーであることを保証できる。
【0030】
本発明の好ましい実施例のフローチャートを図6に示す。ネットスケープ・ナビゲータ等のウェブ・ブラウザ・プログラムを実行しているユーザは、ウェブ・ページの表示に含められるターゲット・ドキュメントに対する複数のパスが収められたウェブ・ページにアクセスする(ステップ610)。ウェブ・ブラウザは、ターゲット・ドキュメントに対するすべてのパス名と、以前にキャッシュしたドキュメントのパス名を照合する(ステップ615)。パス名の1つが以前にキャッシュしたドキュメントのそれと一致した場合は、以前にキャッシュしたバージョンがウェブ・ページのロードに使用される(ステップ617)。以前にこのターゲット・ドキュメントがキャッシュされていない場合は、ウェブ・ブラウザから優先ロケーションに対して問い合わせが行なわれ、当該ロケーションからのターゲット・ドキュメントのロードが可能であるか否かが判断される(ステップ620)。優先ロケーションからターゲット・ドキュメントを獲得できるときは、優先ロケーションからのターゲット・ドキュメントを使用してウェブ・ページが生成される(ステップ625)。
【0031】
優先ロケーションからターゲット・ドキュメントが獲得できない場合は、ウェブ・ブラウザから最初のフォールバック・ロケーションに対して問い合わせが行なわれ、そこからのターゲット・ドキュメントの入手可能性が判断される(ステップ630)。入手可能であれば、そのフォールバック・ロケーションからロードしたターゲット・ドキュメントを使用してウェブ・ページが生成される(ステップ635)。フォールバック・ロケーションから入手できないとき、ウェブ・ブラウザは別のフォールバック・ロケーションがリストされていないか判断する(ステップ637)。
【0032】
別のフォールバック・ロケーションが存在する場合は(ステップ637)、ウェブ・ブラウザから次のフォールバック・ロケーションに対して問い合わせが行なわれてターゲット・ドキュメントの入手可能性が判断され(ステップ630)、前述と同じプロセスが繰り返される。別のフォールバック・ロケーションが存在しなければ(ステップ637)、マスタ・ロケーションからロードしたターゲット・ドキュメントを使用してウェブ・ページが生成される(ステップ640)。
【0033】
キャッシュ・バージョン(ステップ617)、優先ロケーション(ステップ625)およびフォールバック・ロケーション(ステップ635)のいずれかからロードしたターゲット・ドキュメントを使用してウェブ・ページを生成した場合、ウェブ・ブラウザは、ロードしたターゲット・ドキュメントのコピーと、マスタ・ロケーションに存在するターゲット・ドキュメントのバージョンを照合する。これらが一致しないとき、マスタ・ロケーションにあるターゲット・ドキュメントとまったく同一となるようにロードしたドキュメントを必要に応じて更新する(ステップ670)。特定ロケーションからターゲット・ドキュメントが入手できない条件の一例として、そのロケーション用のサーバがオフラインとなっている場合が挙げられる。
【0034】
次に、図7に示したフローチャートを参照して画像またはドキュメントがすでにキャッシュ済みであるか否かを判断する方法について詳細に説明する。ウェブ・ページがロードされると、そのウェブ・ページとともにロードされたすべてのドキュメントに対するすべての参照名がキャッシュされる(ステップ710)。これらの名前は、優先ソース名、代替ソース名(1ないしは複数)、およびマスタ・ソース名を含む。新しいウェブ・ページがロードされると(ステップ720)ブラウザは、新しいウェブ・ページに含められた各ドキュメントに関する優先ソース名、代替ソース名(1ないしは複数)、およびマスタ・ソース名を決定する(ステップ730)。続いてブラウザは、キャッシュ内でそのドキュメントに関連するすべての参照名を探し(ステップ740)、参照名の1つがキャッシュ内に存在するか否かを判断する(ステップ750)。ドキュメントに関係付けられた参照名の1つが、以前にキャッシュしたドキュメントに関係付けられた有効な名前に一致すると、そのキャッシュ・ドキュメントがロードされる(ステップ760)。そのドキュメントに関係付けられたいずれの参照名もキャッシュ済みの参照名と一致しないと、ブラウザは、そのウェブ・ページによって提供されるロケーションの1つからドキュメントをロードすることを試みる(ステップ770)。ドキュメントをロードした後は、そのウェブ・ページによって提供される各参照名とともにキャッシュ内にそれをストアする(ステップ780)。このドキュメントがキャッシュ内に残存している限り、その後そのドキュメントを参照するときは必ずキャッシュからそれがロードされる。加えて、同じドキュメントのコピーが複数キャッシュされることはない。つまり、1つのドキュメントについて1つのコピーだけがキャッシュされる。しかしながらこのコピーには、そのドキュメントに関連するすべての参照名がアタッチされることになる。
【0035】
複数のロケーションの1つから画像をロードする場合に適したローディング・アルゴリズム800を図8に示す。セクション810は、ブラウザに対して優先ロケーション「SRC」から画像のロードを試みるように指示する。ブラウザが優先ロケーションから画像をロードすることができないとき、セクション820において最初のフォールバック・サイト「ALTSRC」からその画像のロードを試みるように指示される。さらにセクション820においては、画像のロードが成功しなければそれが成功するまで、あるいは最後のフォールバック・サイトに到達するまで、順次、次のフォールバック・サイト「ALTSRC」からその画像のロードを試みるように指示される。ブラウザがすべてのフォールバック・サイトについて画像のロードを試みても画像がロードされなかった場合、セクション830においてブラウザはマスタ・ロケーション「MASTERSRC」からその画像のロードを試みるように指示される。それでもなおブラウザが画像をロードできないときは、セクション840において、その画像が配置される予定だった表示エリア内に「切断されたリンク」の画像を表示するようにブラウザに指示が与えられる。
【0036】
図9にチェック・アルゴリズム900を示す。画像がロードされた後、アイドル期間を使用してブラウザは、ロードした画像がその画像のもっとも新しいバージョンであることを確認するためのチェックを行う。セクション910においては、ロードした画像に関するデータ、すなわち参照ドキュメントのURL、画像のローカル「SRC」名、画像の「MASTERSRC」名、日付/時刻スタンプ、画像ファイルのサイズ、およびチェックサムを含めたデータを集める。セクション920においては、ブラウザに対して、マスタ・ソースがあるサーバ「MASTERSRC」に問い合わせを行なって、ロードした画像が期限切れであるか、あるいはそれがもっとも新しいバージョンの画像であるかを判断することを指示する。その画像が期限切れである場合は、セクション930においてブラウザに、その画像のマスター・コピーを保持しているサーバ「MASTERSRC」から画像をロードさせる。さらにセクション930においては、ブラウザに、キャッシュ内の古い画像と新しい画像の置換を指示し、その画像を表示している場所をすべて無効にすべく指示する。
【0037】
本発明の応用を理解する上で図10および図11を参照すると役に立つ。まず図10においては、ウェブ・ブラウザ1020を使用しているユーザが、ウェブからウェブ・ページ1030をロードする。ウェブ・ページ1030には、ウェブ・ページ1030上に表示するロゴ1010にアクセスするために使用される優先名、代替名、マスタ名が含まれている。ウェブ・ブラウザ1020は、優先ローカル・サーバからロゴ1010をロードし(通常この方法がもっとも高速になる)、そのロゴ1010をウェブ・ページ1030上に表示する。アイドル期間中にブラウザ1020は、ロゴ1010のマスタ・ソース・ロケーションに対して問い合わせを行い、最新のコピーがロードされたか否かを判断する。この例においては、最新バージョンがロードされなかったとする。ロードしたロゴ1010が期限切れであることをマスタ・ソースから知らされると、ウェブ・ブラウザ1020は更新後のロゴ1110をマスタ・ソースからロードし、図11に示すようにそれをユーザに向けて表示する。これに対し、ロードしたロゴ1010がロゴ1010の最新のコピーであった場合は、ユーザに向けて表示される画像は変更されない。このように本発明によれば、分散されたドキュメントのオーナは、これらのドキュメントを含むウェブ・ページのロード時間を遅らせることなく、ドキュメントのコンテンツに関するコントロールを保持することができる。
【0038】
つまり本発明の1つの利点は、ウェブ・サイトがサード・パーティのファイル(ロゴ、ドキュメント、バナー、広告等)の高速なローカル・コピーを持ち得る一方、ほぼリアルタイムで制作者がそのファイルをコントロールできることである。さらに本発明によれば、ブラウザが共通のドキュメント/画像のアイデンティティをそれらの共通の「マスタ」名および「代替」名によって識別することが可能になり、ページのロード時間を短縮し、それによりページ上に広告を掲示することを好ましくないとする意見も抑えることができる。
【0039】
図8および図9に示した疑似コードには、本発明の理解を明確にするため線形アルゴリズムを使用している。しかしながらここでは、実用上の理由から、実際に使用されるアルゴリズムが、おそらくはイベント駆動型のアルゴリズムになると考えられる点に注意する必要がある。また、図8および図9においては「画像(image)」が使用されているが、任意のドキュメント・タイプの使用が可能であり、関連するハイパーテキスト・マークアップ言語(「HTML」)タグについても「SRC」またはSRCに類似したコンポーネントと関係を有する任意のタグとすることができる点にも注意が必要である。さらにまた、ここでは本発明を唯一のマスタ・ロケーションに対する参照によって説明したが、制作者がそれぞれのマスタ・ロケーションにあるドキュメントのコンテンツに関して直接のコントロールを有する限り、複数のマスタ・ロケーションを伴う状況にも等しく適用可能である点に注意されたい。以上に加えて、マスタ・ソース・ロケーションは、ウェブ・サーバとすることもできる。
【0040】
ここでは、HTMLとの関連から本発明を説明してきたが、それ以外のマークアップ言語、たとえば拡張マークアップ言語が使用できることも重要なポイントであり、当業者であればそれが明らかであろう。また、本発明が、ワールド・ワイド・ウェブ(単に「ウェブ」とも呼ばれる)、インターネット、イントラネット、ローカル・エリア・ネットワーク、およびワイド・エリア・ネットワーク上にあるドキュメントに対して適用され、また優先ソース、フォールバック・ソース、およびマスタ・ソースが、ロケーション・タイプの各種組み合わせを含めてこれらのネットワーク上に置かれることがある点を理解する必要がある。さらに、ドキュメントがウェブ・ページとなることもあるが、それが必須でないことに注意が必要である。さらにまた、クライアントがマスタ・ソースにアクセスできない場合、画像がフォールバック・ソースの1つから更新できることに注意を要する。さらにまた、画像の更新に関して主に説明してきたが、これは単なる例として与えられたものにすぎず、画像は任意のタイプのドキュメントに置き換えることが可能であり、それにおいてドキュメントは、たとえば、画像、テキスト、サウンド、あるいはこれらの組み合わせを含むものとしてよい。
【0041】
ここでは、本発明を完全に機能するデータ処理システムに関連づけて説明してきたが、当業者であれば明らかであろうが、本発明のプロセスが、命令を収めたコンピュータ可読メディアの形式および各種の形式で配付できること、また本発明が、配付を行うために実際に使用される信号担持メディアのタイプと無関係に等しく適用されることへの注意も重要である。コンピュータ可読メディアの例としては、フロッピーディスク、ハードディスク・ドライブ、RAM、およびCD−ROM等の記録可能なタイプのメディア、およびディジタルおよびアナログ通信リンク等の伝達タイプのメディアが挙げられる。
【0042】
以上行ってきた本発明の説明は、例示および説明を目的としたものであり、網羅的であることを意図したものでもなければ、開示した形でそれを限定することを意図したものでもない。当業者にとっては、多くの修正ならびに変形が明らかであろう。実施例は、本発明の原理、実際的な応用をもっともよく説明するため、また当業者が本発明を理解し予定された特定の使用に適した各種の修正を伴う各種の具体化を行うことができるように選択され、述べられたものである。
【図面の簡単な説明】
【図1】本発明を実施し得る分散型データ処理システムの概要図を示す。
【図2】本発明に従ったデータ処理システム(サーバ)のブロック図を示す。
【図3】データ処理システム(クライアント)のブロック図を示す。
【図4】本発明の好ましい実施例を示す。
【図5】本発明の変形実施例を示す。
【図6】本発明の好ましい実施例のフローチャートを示す。
【図7】本発明のキャッシング・メカニズムのフローチャートを示す。
【図8】本発明のドキュメント・ロード機能を実行する疑似コードを一例で示す。
【図9】本発明のドキュメント・チェック機能を実行する疑似コードを一例で示す。
【図10】ウェブ・ブラウザのスクリーン画像を示す。
【図11】ウェブ・ブラウザのスクリーン画像を示す。

Claims (6)

  1. クライアント・マシンにおいてドキュメントをアクセスするための方法であって、
    検索すべきドキュメントの優先ソースおよびマスタ・ソースの識別を含むターゲット・ドキュメント仕様を受け取るステップと、
    前記優先ソースから前記ドキュメントを取り出すステップと、
    前記マスタ・ソースに問い合わせて、取り出したドキュメントが最新のドキュメントであるか否かを判断するステップと、
    前記取り出したドキュメントが最新のドキュメントであるとの判断が得られない場合、前記マスタ・ソースにある最新のドキュメントを使用して当該クライアント・マシン上の前記取り出したドキュメントを更新するステップと、
    を含む方法。
  2. 前記ターゲット・ドキュメント仕様は、前記優先ソースおよび前記マスタ・ソースの識別の他に、1以上の代替ソースの識別を含む、請求項1に記載の方法。
  3. 前記クライアント・マシンはキャッシュを含み、前記取り出したドキュメントが前記優先ソース、前記マスタ・ソース及び前記代替ソースの識別とともに前記キャッシュに記憶される、請求項2に記載の方法。
  4. 前記優先ソースから前記ドキュメントを取り出す前に、前記キャッシュに記憶されているソース識別のいずれかが前記ターゲット・ドキュメント仕様に含まれる優先ソース、代替ソースおよびマスタ・ソースの識別のいずれかに一致するか否かを判断するステップと、
    一致が見つかると、前記優先ソースの代わりに前記キャッシュから前記ドキュメントを取り出すステップと、
    をさらに含む、請求項3に記載の方法。
  5. 一致が得られない場合、前記優先ソースから前記ドキュメントを取り出すことが可能であればそれを行うステップと、
    前記優先ソースから前記ドキュメントを取り出すことができないとき、前記1以上の代替ソースの1つから前記ドキュメントを取り出すことが可能であればそれを行うステップと、
    前記優先ソースおよび前記代替ソースから前記ドキュメントを取り出すことができないとき、前記マスタ・ソースから前記ドキュメントを取り出すステップと、
    をさらに含む、請求項4に記載の方法。
  6. 請求項1乃至請求項5のいずれかに記載の方法を実行するためのプログラムを記憶したプログラム記憶媒体。
JP2000180511A 1999-06-17 2000-06-15 クライアント・マシンにおいてドキュメントをアクセスするための方法 Expired - Fee Related JP3593303B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/335,286 US6381618B1 (en) 1999-06-17 1999-06-17 Method and apparatus for autosynchronizing distributed versions of documents
US09/335286 1999-06-17

Publications (2)

Publication Number Publication Date
JP2001034526A JP2001034526A (ja) 2001-02-09
JP3593303B2 true JP3593303B2 (ja) 2004-11-24

Family

ID=23311111

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000180511A Expired - Fee Related JP3593303B2 (ja) 1999-06-17 2000-06-15 クライアント・マシンにおいてドキュメントをアクセスするための方法

Country Status (5)

Country Link
US (1) US6381618B1 (ja)
JP (1) JP3593303B2 (ja)
CN (1) CN1273916C (ja)
GB (1) GB2356269B (ja)
TW (1) TW473660B (ja)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7362775B1 (en) * 1996-07-02 2008-04-22 Wistaria Trading, Inc. Exchange mechanisms for digital information packages with bandwidth securitization, multichannel digital watermarks, and key management
US5613004A (en) 1995-06-07 1997-03-18 The Dice Company Steganographic method and device
US6205249B1 (en) 1998-04-02 2001-03-20 Scott A. Moskowitz Multiple transform utilization and applications for secure digital watermarking
US7664263B2 (en) * 1998-03-24 2010-02-16 Moskowitz Scott A Method for combining transfer functions with predetermined key creation
US5889868A (en) * 1996-07-02 1999-03-30 The Dice Company Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data
US7177429B2 (en) 2000-12-07 2007-02-13 Blue Spike, Inc. System and methods for permitting open access to data objects and for securing data within the data objects
US7159116B2 (en) 1999-12-07 2007-01-02 Blue Spike, Inc. Systems, methods and devices for trusted transactions
US7095874B2 (en) * 1996-07-02 2006-08-22 Wistaria Trading, Inc. Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data
US7457962B2 (en) 1996-07-02 2008-11-25 Wistaria Trading, Inc Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data
US7346472B1 (en) 2000-09-07 2008-03-18 Blue Spike, Inc. Method and device for monitoring and analyzing signals
US7730317B2 (en) 1996-12-20 2010-06-01 Wistaria Trading, Inc. Linear predictive coding implementation of digital watermarks
US7664264B2 (en) 1999-03-24 2010-02-16 Blue Spike, Inc. Utilizing data reduction in steganographic and cryptographic systems
US7475246B1 (en) 1999-08-04 2009-01-06 Blue Spike, Inc. Secure personal content server
US7174513B1 (en) * 1999-08-19 2007-02-06 Gateway Inc. System and method for advanced network viewing
GB2361332A (en) * 2000-04-13 2001-10-17 Int Computers Ltd Electronic content store
US7120914B1 (en) * 2000-05-05 2006-10-10 Microsoft Corporation Method and system for navigating between program modules
AU2001281402A1 (en) * 2000-08-08 2002-02-18 Fineground Networks Method and system for parameterized web documents
US7047281B1 (en) 2000-08-08 2006-05-16 Fineground Networks Method and system for accelerating the delivery of content in a networked environment
US20040243540A1 (en) * 2000-09-07 2004-12-02 Moskowitz Scott A. Method and device for monitoring and analyzing signals
US7127615B2 (en) 2000-09-20 2006-10-24 Blue Spike, Inc. Security based on subliminal and supraliminal channels for data objects
US7062486B2 (en) * 2000-12-05 2006-06-13 International Business Machines Corporation Method, system and program product for enabling authorized access and request-initiated translation of data files
US6721846B2 (en) * 2000-12-28 2004-04-13 Gateway, Inc. System and method of providing data images over a network with a local image cache
US7310687B2 (en) 2001-03-23 2007-12-18 Cisco Technology, Inc. Methods and systems for managing class-based condensation
US7159014B2 (en) 2001-06-04 2007-01-02 Fineground Networks Method and system for efficient and automated version management of embedded objects in web documents
US20030014745A1 (en) * 2001-06-22 2003-01-16 Mah John M. Document update method
US9134989B2 (en) 2002-01-31 2015-09-15 Qualcomm Incorporated System and method for updating dataset versions resident on a wireless device
US7287275B2 (en) * 2002-04-17 2007-10-23 Moskowitz Scott A Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth
US9092286B2 (en) 2002-12-20 2015-07-28 Qualcomm Incorporated System to automatically process components on a device
US7703000B2 (en) * 2003-02-13 2010-04-20 Iparadigms Llc Systems and methods for contextual mark-up of formatted documents
US7389309B2 (en) * 2003-02-28 2008-06-17 Microsoft Corporation Method for managing file replication in applications
CN100337236C (zh) * 2003-08-26 2007-09-12 华为技术有限公司 一种使前后台数据库中数据相一致的方法
US8626146B2 (en) 2003-10-29 2014-01-07 Qualcomm Incorporated Method, software and apparatus for performing actions on a wireless device using action lists and versioning
WO2005045619A2 (en) * 2003-10-31 2005-05-19 Landmark Technology Partners, Inc. Intelligent client architecture computer system and method
KR100677116B1 (ko) * 2004-04-02 2007-02-02 삼성전자주식회사 사이클릭 레퍼런싱 방법/장치, 파싱 방법/장치 및 그방법을 수행하는 프로그램이 기록된 컴퓨터 판독가능한기록매체
US7689601B2 (en) * 2004-05-06 2010-03-30 Oracle International Corporation Achieving web documents using unique document locators
US20060190557A1 (en) * 2005-02-24 2006-08-24 Ibm Corporation Method and apparatus for forwarding user information among multiple information handling systems
US20060190547A1 (en) * 2005-02-24 2006-08-24 Ibm Corporation Method and apparatus for restricting instant messaging during a scheduled event
US7587596B2 (en) * 2005-02-24 2009-09-08 International Business Machines Corporation Method and apparatus for updating information stored in multiple information handling systems
US20060259521A1 (en) * 2005-05-16 2006-11-16 Anthony Armenta Interface for synchronization of documents between a host computer and a portable device
US7783993B2 (en) * 2005-09-23 2010-08-24 Palm, Inc. Content-based navigation and launching on mobile devices
JP4536034B2 (ja) * 2006-06-05 2010-09-01 Necシステムテクノロジー株式会社 文書管理システム、計算機、文書管理方法、及びプログラム
WO2008157735A2 (en) 2007-06-19 2008-12-24 Qualcomm Incorporated Methods and apparatus for dataset synchronization in a wireless environment
CN100501744C (zh) * 2007-09-29 2009-06-17 腾讯科技(深圳)有限公司 一种文档同步方法及***
GB0801119D0 (en) 2008-01-22 2008-02-27 Barry Callebaut Ag Composition
CN101587480B (zh) * 2008-05-21 2013-08-28 鸿富锦精密工业(深圳)有限公司 Notes文件分布式存储***及方法
US8935633B2 (en) * 2008-12-10 2015-01-13 International Business Machines Corporation Providing controlled access to the use of electronic devices
US20100146499A1 (en) * 2008-12-10 2010-06-10 International Business Machines Corporation Controlling Access to Electronic Devices by Meeting Invitees
JP5193912B2 (ja) * 2009-03-12 2013-05-08 株式会社日立製作所 Web画面表示方法、画像配信方法、サーバ、クライアント及びサーバ・クライアントシステム
US8335989B2 (en) * 2009-10-26 2012-12-18 Nokia Corporation Method and apparatus for presenting polymorphic notes in a graphical user interface
US20110196887A1 (en) * 2010-02-08 2011-08-11 Google Inc. Light-Weight Network Traffic Cache
US8423886B2 (en) 2010-09-03 2013-04-16 Iparadigms, Llc. Systems and methods for document analysis
US8688649B2 (en) * 2010-10-12 2014-04-01 Clinicomp International, Inc. Scalable computer arrangement and method
US9626379B1 (en) * 2011-09-22 2017-04-18 Amazon Technologies, Inc. Optimistic commit processing for an offline document repository
CA2769773C (en) * 2011-11-04 2018-01-09 Gemcom Software International Inc. System and method for data communication over a network
JP6175981B2 (ja) * 2013-08-23 2017-08-09 富士ゼロックス株式会社 情報処理装置及びプログラム
CN106570045B (zh) * 2015-10-13 2020-12-08 腾讯科技(深圳)有限公司 一种数据操作控制方法及其***、用户终端
CN109240848A (zh) * 2018-07-27 2019-01-18 阿里巴巴集团控股有限公司 一种数据对象标识生成方法及装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5701462A (en) * 1993-12-29 1997-12-23 Microsoft Corporation Distributed file system providing a unified name space with efficient name resolution
US5694597A (en) * 1994-04-26 1997-12-02 International Business Machines Corporation Method and system for optimizing access to a datastore
US5684984A (en) 1994-09-29 1997-11-04 Apple Computer, Inc. Synchronization and replication of object databases
US5625818A (en) 1994-09-30 1997-04-29 Apple Computer, Inc. System for managing local database updates published to different online information services in different formats from a central platform
US5835908A (en) * 1996-11-19 1998-11-10 Microsoft Corporation Processing multiple database transactions in the same process to reduce process overhead and redundant retrieval from database servers
US6014698A (en) * 1997-05-19 2000-01-11 Matchlogic, Inc. System using first banner request that can not be blocked from reaching a server for accurately counting displays of banners on network terminals
US5937392A (en) * 1997-07-28 1999-08-10 Switchboard Incorporated Banner advertising display system and method with frequency of advertisement control
US6751777B2 (en) * 1998-10-19 2004-06-15 International Business Machines Corporation Multi-target links for navigating between hypertext documents and the like

Also Published As

Publication number Publication date
GB2356269B (en) 2004-02-11
GB2356269A (en) 2001-05-16
CN1273916C (zh) 2006-09-06
JP2001034526A (ja) 2001-02-09
GB0014624D0 (en) 2000-08-09
TW473660B (en) 2002-01-21
CN1278627A (zh) 2001-01-03
US6381618B1 (en) 2002-04-30

Similar Documents

Publication Publication Date Title
JP3593303B2 (ja) クライアント・マシンにおいてドキュメントをアクセスするための方法
US6574715B2 (en) Method and apparatus for managing internal caches and external caches in a data processing system
US6615235B1 (en) Method and apparatus for cache coordination for multiple address spaces
US6584548B1 (en) Method and apparatus for invalidating data in a cache
US6347316B1 (en) National language proxy file save and incremental cache translation option for world wide web documents
US6557076B1 (en) Method and apparatus for aggressively rendering data in a data processing system
US6453342B1 (en) Method and apparatus for selective caching and cleaning of history pages for web browsers
US6192398B1 (en) Remote/shared browser cache
US6308210B1 (en) Method and apparatus for traffic control and balancing for an internet site
US6772208B1 (en) Method and apparatus to restrict free hyperlinking by internet content distributors to web sites of original content producers
US6988135B2 (en) Method and system for specifying a cache policy for caching web pages which include dynamic content
CN1146818C (zh) Web服务器和处理Web页面请求以及显示HTML页面的方法
US8429201B2 (en) Updating a database from a browser
US6366933B1 (en) Method and apparatus for tracking and viewing changes on the web
US7426544B2 (en) Method and apparatus for local IP address translation
US7028089B2 (en) Method and apparatus for caching subscribed and non-subscribed content in a network data processing system
US6442558B1 (en) Mechanisms for division, storage, reconstruction, generation, and delivery of java class files
KR20060129414A (ko) 웹 페이지의 적시 업데이트
US6339829B1 (en) Method and apparatus to store extended security information in a data structure which shadows a java class object
US7594001B1 (en) Partial page output caching
US20030002070A1 (en) Data processing system for converting content relative to a space used as an advertising medium into a printable object
US7085801B1 (en) Method and apparatus for printing web pages
US7392313B2 (en) Method and apparatus for partitioned environment for web application servers
US20050050093A1 (en) Customized selection of a voice file for a web page
JP4243038B2 (ja) JSPをPvC形式に変換するシステム、装置及び方法

Legal Events

Date Code Title Description
A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20031125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040226

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: 20040817

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040827

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080903

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees