FileInfoとは、特定のファイル、またはサーバー内でのURL(ファイルとURLの間には1対1の対応があるものと想定します)についての情報を提供するものです。
より厳密に言うと、FileInfoは、ファイル・パスを、ファイルの種類や再構築方法といった情報を含む指定情報にマッピングするものです。この指定情報には、そのファイルにアクセスするためのURLも含まれます。指定情報は、次のような型とフィールドを持つバリアント型のレコードです。
各FileInfoには、タグとしてarchive_typeフィールド(値は"Individual"、"Daily"、"Monthly"、"Weekly"、"Category"、"Index"のいずれか)がついており、それぞれのレコードがどの種類かを示すようになっています。
データベース内にFileInfoレコードを作成します。$file_pathに指定したファイルが$urlに相当し、$specに指定したパラメーターで再構築可能であることを示すレコードとなります。
引数$specは、{TemplateMap, Template}の少なくともいずれか1つのキーに対して、{Entry, StartDate, Category}の少なくとも1つの値が定義されたハッシュへのリファレンスです。
$archive_typeが"index"の場合にはTemplate、それ以外の場合にはTemplateMapを指定しなければなりません。