[3] [DFN[[RUBYB[[[アーカイブされたフィード]]]@en[archived feed]]]]は、 [[論理フィード]]の[[エントリー]]群を正確に再構築できる[[フィード文書]]の集合です。 [SRC[>>1]] * 仕様書 [REFS[ - [1] [CITE@en[RFC 5005 - Feed Paging and Archiving]] ( ([TIME[2014-03-09 00:10:19 +09:00]] 版)) ]REFS] * 性質 [2] [[アーカイブされたフィード]]は、[[エントリー]]群を複数の永続的な[[文書]]に分割したもので、 [[エントリー]]群が長生きするもので、クライアントがすべてを見ることが重要な時に有用です。 [SRC[>>1]] [4] [[ページ付けされたフィード]]と違って[[アーカイブされたフィード]]では[[クライアント]]が[[エントリー]]を失わずに[[論理フィード]]を再構築できます。 これは[[購読文書]]を1つと[[アーカイブ文書]]をいくつか組み合わせて実現します。 [SRC[>>1]] ;; [6] [[購読文書]]と[[アーカイブ文書]]の項も参照してください。 * リンク関係型 [5] [[アーカイブされたフィード]]の[[購読文書]]と[[アーカイブ文書]]では次の[[リンク関係型]]が使われます [SRC[>>1]]。 [FIG[ - [CODE@en[[[prev-archive]]]] - [CODE@en[[[next-archive]]]] - [CODE@en[[[current]]]] ]FIG] * 処理モデル [7] [[アーカイブされたフィード]]は次のように処理されることを想定しています [SRC[>>1]]。 = [8] クライアントは[[購読文書]]を「[[購読]]」します。定期的にアクセスします ([[polling]])。 = [9] [CODE@en[[[prev-archive]]]] [[リンク]]があれば、次の[[アーカイブ文書]]にアクセスします。 既読の[[アーカイブ文書]]に到達するまで、これを繰り返します。 = [10] こうして得られた[[購読文書]]と[[アーカイブ文書]]の[[エントリー]]を処理します。 = [11] この時、[[エントリー]]の重複は次のように処理する[['''べきです''']]。 -- [14] [[Atom]] の[[アーカイブされたフィード]]では、 [CODE(XMLe)@en[[[atom:id]]]] が同じなら重複とします。 -- [15] [[Atom]] の[[アーカイブされたフィード]]では、 [CODE(XMLe)@en[[[atom:updated]]]] を[[フィード]]や[[エントリー]]の更新時刻とします。 -- [12] 最も最近更新された[[エントリー]]のみを[[論理フィード]]に含まれるものとします。 -- [13] 同時刻だったり[[タイムスタンプ]]がなかったりするときは、より新しい[[フィード]]に含まれる方を採用します。 -- [18] なお、[[フィード文書]]はこれによって曖昧無く重複を除去できるようになっている[['''べきです''']]。 [16] [[クライアント]]は、[[論理フィード]]全体を再構築できない時、これを[[利用者]]に警告する[['''べきです''']] [SRC[>>1]]。 ;; [17] [[アーカイブされたフィード]]が [[Atom]] と [[RSS]] など異なる形式で混在して構成されることも禁止されていないようですが、 そのような場合にどう処理するべきかや、 [[RSS]] で重複や時刻をどう解釈するべきかは明確に規定されていません。