$Date: 2002/01/29 15:10:46 $
huginnDB (2.x) 仕様
本文書では、huginn2.x系のデータ保持形式である、huginnDB形式について説明する。
用語
- 行
- データファイルのうち、LF、ないしはCRLFで区切られた各部分のこと
- 時刻
- 呼んで字の如く。huginnDB形式では、全ての時刻はUNIX時刻(UTC 1970/01/01 00:00:00 GMTからの経過秒数)で表示する。
標準形式
huginnDB形式では、1つの行が1つのデータレコードを示す。
各フィールドはタブ文字で区切られる。
フィールドは以下の順番で並ぶ。
- LM
- Last Modified : 最終更新時刻。ただし、推定最終更新時刻が入る場合もある。
- LMD
- Last Modified Detected : 最終更新確認時刻。huginnがLMを取得した時刻。
- LNMD
- Last Not Modified Detected : 最終未更新確認時刻。LMが取得されてから、変化がなかったことを最後に確認した時刻
- method
- 取得方法。LMを取得するのに用いた手段。HEAD、GET、ないしはremote
- size
- 文書のサイズ。サイズによる更新推測に利用する。不明のときは空フィールドとすること。
- URL
- LMを取得した実際のURL。
- url
- .huginnrcで記述されるマクロ展開前のurl指定。
すなわち、huginnDB形式の1データレコードは以下のような形式を取る。
LM LMD LMND method size URL url
一つのデータ行の具体例を示す。
1012288854 1012311902 1012311902 HEAD http://white.niu.ne.jp/Freetalk/0201.html http://white.niu.ne.jp/Freetalk/%2y%0m
拡張フィールド
以上がhuginnDB形式の標準形式であるが、標準形式の後ろにタブ文字で区切られた拡張フィールドを付加してもよい。
拡張フィールドは以下の形式を持つ。
FieldName:Content
- FieldName
- フィールド名。その拡張フィールドの名前。できる限り意味のわかる名称をつけること。
- Content
- 内容。その拡張フィールドの値。タブ文字と改行文字を含むことはできな
い。それらが必要なときは、なんらかの形式でエスケープすること。
情報の鮮度
huginn(2.x)では、情報の鮮度は一切考慮されない。従って、情報の破棄等も一切行われない。