作成日時:1999/10/13 18:00
更新日時:2000/10/13 15:20
ver.2.1
LIRSは、ヘッダ部「LIRS,」と、「,」で区切られるデータ部、そしてレコード区切り(フッタ部)「,(\015)\012」をひとつのデータレコードとして構成される。
データの書式は下記のようになっている。
LIRS,938779260,938781002,32400,49383,http://aniki.hauN.org/i/,ただよう記憶,ひや,http://amano.hauN.org/,(etc.etc...),(\015)\012
左より、
LIRSレコードヘッダ,更新時刻(Last-Modified:GMT),更新時刻を取得した時刻(Last-Detected:GMT),対象サイトのGMTとの誤差(秒),対象サイトの容量(Content-Length:バイト),対象サイトのURL,対象サイトのタイトル,対象サイトの管理者名,情報取得元サイトのURL,(拡張部...),(\015)\012
そのサイトが更新された時刻。LIRSでは内部情報を全てGMTの1970年1月1日0時0分0秒からの秒数(UTC)で表すため、ここの秒数もGMTである。
この項は、0-9以外の文字は使用できない。
そのサイトの更新時刻を最後に直接(自力で)得た時刻。更新されたことを最初に検知した時刻ではない。これはHEAD/GETリクエスト、もしくはファイルのタイムスタンプからの取得、などの自力取得の場合にのみ書き換えることができるが、リモート取得の時はリモート情報から受けたLast-Detectedを継承する。
Last-Detectedはその情報の鮮度を表すために必要である。LIRSにおいては、自力取得してからどれぐらい時間が経過したかを、その情報の新しさ(古さ)として考えているからである。
内部処理としては、現在時刻からLast-Detectedを差し引いた値(経過した時間)が大きければ大きいほど、この情報の優先度が下がっていき、それが情報を破棄する指標「expiresCount」(下記参照)に指定されている時刻(秒)を越えると、この情報は無視されるようになる。
この項は、0-9以外の文字は使用できない。
前述の通り、LIRSでは内部情報を全てGMTの1970年1月1日0時0分0秒からの秒数(UTC)で表すため、対象サイトの更新時刻をローカルタイムで表すための、GMTからの時差の情報を必要とする。
日本国内で使う場合は常に(+)32400固定と思って良い。
この項は、0-9と、+と-以外の文字は使用できない。
対象サイトの容量を表す。これはエージェントにより異なるが、対象サイトの容量から更新時刻を取得するエージェントのために用意されている。
内部処理としては、キャッシュに保存されたLIRSの容量情報と比較し、このサイズと異なった場合に「更新された」と認識する。
この情報が取得できなかった場合は0に設定する。
なお、この方法による更新時刻取得は、現段階ではLast-Detectedの対象外とする。
この項は、0-9以外の文字は使用できない。
対象サイトのURLは、LIRS形式においてユニークなキーとして扱われる。
URLは、大小文字の判定はしないこととする。
また、末尾のindex.htmlは原則として内部では消去して扱われる。
この項は、URLとして使用できる文字以外は使用できない。
対象サイトのタイトルは、タイトルや管理者名を記さなくても更新できるエージェントに提供される情報として用意されている。
対象サイトの管理者名は、タイトルや管理者名を記さなくても更新できるエージェントに提供される情報として用意されている。
このレコードの情報を取得した元のサイトのURLを記しておく。原則として、自力取得したサイトを指す。
これの利用法は各エージェントに委ねられる。
上記情報以外の、エージェント独自の情報は、これらの情報を書き出した後に追記することができる。
ただし、一行につき一サイトの原則は守らなければならず、行末に区切り文字を含めなければならない。
LIRS形式のデータを扱うエージェントは、下記の設定項目を追加すること。
LIRS形式のデータを扱うエージェントは、下記の要項に従うこと。
LIRS形式のデータを送受信する際は、下記の要項に従うこと。
LIRSにおいて、情報の鮮度の計測方法は、そのサイトに対して直に情報を取得して(Last-Detected)からどれだけの時間が経過しているか、を基準としている。
時間が経過するごとに、その情報の価値がどんどん下がっていき、ある一定の値(expiresCount)を越えたところで、その情報は破棄される。
また、LIRSにおいては、情報がリモートで渡ってきたときに、そこに記載されている更新時刻取得時刻の情報を元にして、Last-Detectedを指定し出力する。エージェントによるが、必ずしも継承される必要はない。
LIRSにおける「時差(誤差)」の概念は、一般的に「プログラムが動作するサーバーのGMTを基準」として、それぞれのサーバー(あるいはAuthor)所在地との時差(誤差)を指す。
この「時差(誤差)」は、それがタイムゾーンを越えた時差であるのか、サーバーごとの時間設定の誤差であるのか、どちらでも構わないが、LIRS内の全ての情報をどちらか一方に揃える必要がある。