[6] Atom 0.3 >>5 では、 Atom API >>4 で規定されていた prev
,
next
の2つの値を rel
属性で使うことができました。
next
prev
[12] RFC 5988 - Web Linking ( ( 版)) http://tools.ietf.org/html/rfc5988#page-14
[7] ページ フリップによる閲覧 (Windows) ( 版) https://msdn.microsoft.com/library/jj883726(v=vs.85).aspx#Identifyingflipaheadtargets
[8] プリレンダリングとプリフェッチのサポート (Windows) ( 版) https://msdn.microsoft.com/library/dn265039(v=vs.85).aspx
<link rel="prev" href="http://headlines.yahoo.co.jp/videonews/jnn?a=20151231-00000009-jnn-soci" />
<link rel="next" href="http://headlines.yahoo.co.jp/videonews/jnn?a=20151231-00000004-jnn-soci" />
<link rel="next" type="application/x.atom+xml" href="http://b.hatena.ne.jp/sample/atomfeed?of=20"/>
Atomフィードでは、link要素により前後ページのURLを取得することも可能です。
<link rel="prev" type="application/atom+xml" href="http://b.hatena.ne.jp/jkondo/atomfeed?of=0" />
<link rel="next" type="application/atom+xml" href="http://b.hatena.ne.jp/jkondo/atomfeed?of=40" />
Atomフィードでは、link要素により前後ページのURLを取得することも可能です。
<link rel="prev" type="application/atom+xml" href="http://b.hatena.ne.jp/jkondo/atomfeed?of=0" />
<link rel="next" type="application/atom+xml" href="http://b.hatena.ne.jp/jkondo/atomfeed?of=40" />
Link: http://qiita.com/api/v2/users?page=1; rel="first",
http://qiita.com/api/v2/users?page=1; rel="prev",
http://qiita.com/api/v2/users?page=3; rel="next",
http://qiita.com/api/v2/users?page=6; rel="last"
[18] Treat <link rel="next"> as a general resource hint ( (domenic著, )) https://github.com/whatwg/html/commit/7ff5b096d423bf5750463957aed69680368ed99e
IANAのLink Relation Typesに登録されているものを見ると、previousもprevの同義語として使えることに実装してこの記事を書くときに後から気付いた。previousをprevに略すという判断があると、ではなぜ他の文字列は同様の文脈において略す判断をしないのか (例えばfirstはなぜfirstより略さないのか) という曖昧性やコード上に記述されていない何らかの関係性が発生するので、previousが使えるならpreviousを使いたい。
[23] >>19 このような考え方は適切ではない。 リンク型やリンク関係型はプログラマーが自由に選べる変数ではなくプロトコル要素。 このような判断を下せるのはプロトコル開発者であって、プロトコル利用者であるプログラム開発者ではない。 プログラム開発者にとってはただの不透明な文字列なのである。
[28] さて参照されている IANA登録簿 >>26 を開いてみると、 HTML 4.01 が参照されている。この時点でこの登録簿が長年まともにメンテナンスされていないことが察せられるが (これが IETF / IANA の標準的な品質なのであるからこんなことでいちいち驚いてはいけない)、それはさておき HTML 4.01 を参照すると、
- Prev
- Refers to the previous document in an ordered series of documents. Some user agents also support the synonym "Previous".
とある >>27。 つまり正式には Prev
であり、 Previous
も実装しているものもある、と書いているに過ぎない。この重要情報を欠落させている
IANA登録簿にも非はあるが、 Prev
を避けてわざわざ Previous
を使うべき理由はない。
[30]
ところで HTML 4.01 は既に廃止されて久しい。 >>19 の執筆時点では「事実上廃止」
状態だったが、今や名実ともに廃止されている。このようなとき IANA登録簿の
previous
が現行 HTML Standard を指すと解釈するべきかどうか明確ではない。
(なぜか prev
は今は現行 HTML Standard を指している。)
ともかく
HTML Standard を参照すると、 prev
の項に
Synonyms: For historical reasons, user agents must also treat the keyword "
previous
" like theprev
keyword.
とある。 >>29 これと HTML Standard の他の関連規定によると、
実装は prev
も previous
も実装しなければならないが、
著者は prev
のみを使わなければならない。
[31]
「HTML 4.01 も HTML Standard も HTML の規定に過ぎず、
そこにしかない規定は HTML にだけ適用される。
IANA登録簿が定めるリンク関係型では previous
も普通に使って良い」という考え方もないではない。
IETF がリンク関係型なる概念を不適切に規定しているので、
このような仕様の解釈もあり得る (prev
を退けてわざわざ
previous
を選ぶべき理由はなく、
標準仕様を使うという意識のもとで使うべきではないだろう。
(標準仕様との整合性はどうでもいい、優先度は低い、という考え方なら勝手に使えば良いが、
それならこのような重箱の隅のような仕様書の不整合に依拠しなくてよい。)
[20] Official Google Webmaster Central Blog: Video about pagination with rel=“next” and rel=“prev” () https://webmasters.googleblog.com/2012/03/video-about-pagination-with-relnext-and.html
[21] Getting Started: 大量のデータを取得する (ページング) | SORACOM API 利用ガイド | ソラコムユーザーサイト - SORACOM Users, , https://users.soracom.io/ja-jp/tools/api/paging/
prev
ではありません。