* a 要素・link 要素 rel 属性 (HTML, XHTML 1) [2] [[HTML]] の [CODE(HTMLe)[[[a]]]] 要素・[CODE(HTMLe)[[[link]]]] 要素の [DFN[[CODE(HTMLa)[rel]] 属性]]は、 現在の文書から [CODE(HTMLa)[[[href]]]] 属性で指定された[[アンカー]]への関係を指定します。 :状態:[[WHATWG]] [[勧告案]]、[[IETF]] [[提案標準]] :[[要素]]:[CODE(HTMLe)@en[[[a]]]]、[CODE(HTMLe)@en[[[area]]]]、 [CODE(XMLe)@en[[[atom:link]]]] :[[属性名]]:[CODE(HTMLa)@en[[[rel]]]] (「[RUBYB[[[関係]]]@en[relation]]」より) :[[データ型]]:[[リンク型]] :[[既定値]]:([[要素]]に依存) ** 仕様書 -[9] [[HTML 4]] -- [CODE(HTMLa)[rel]] 属性 -- 12.1.2 ther link relationships -- 12.3.1 Forward and reverse links -[26] [[RFC 4287]] -- '''''' ** 意味 [3] [CODE(HTMLe)[a]] 要素の [CODE(HTMLa)[rel]] 属性であっても、 [[始点アンカー]]からではなく現在の文書からの関係と定義されているのですね。 [CODE(HTML)[[CODE(HTMLa)[rel]]=next]] のような関係を考えれば妥当な定義だと思います。 [27] [CODE(XMLe)@en[[[atom:link]]]] [[要素]]の [CODE(XMLa)@en[[[rel]]]] [[属性]]は[[リンク関係型]]を表します [SRC[[[RFC 4287]] 4.2.7.2.]]。 [32] [CODE(XMLe)@en[[[atom:link]]]] [[要素]]の [CODE(XMLa)@en[[[rel]]]] [[属性]]は[[リンク]]の[[意味]]を説明するものであって、 [[Atom処理器]]に特定の動作を求めるものではありません [SRC[[[RFC 4287]] 4.2.7.2.]]。 ** 属性値 *** データ型 **** HTML4 の定義 [4] この属性の値は [CODE(HTML)[%[[LinkTypes]]]] ([[間隔]]で分離した[[連結型]]の並び) です。 [[SGML]] 的には [CODE(SGML)[[[CDATA]]]] です。 この属性の値は大文字・小文字を区別しません。 (が、小文字で使われることが多いようです。) **** [CODE(XMLe)@en[[[atom:link]]]] 要素の場合 [30] [CODE(XMLe)@en[[[atom:link]]]] [[要素]]の [CODE(XMLa)@en[[[rel]]]] [[属性値]]は、 [[RFC 3987]] の [CODE(ABNF)@en[[[isegment-nz-nc]]]] または [CODE(ABNF)@en[[[IRI]]]] いずれかの[[生成規則]]に[[一致]]する[[文字列]]でなければ[['''なりません''']] [SRC[[[RFC 4287]] 4.2.7.2.]]。 [31] 値の[[意味]]については[[リンク関係型]]の項をご覧ください。 *** 既定値 **** HTML4 の場合 [5] この属性は省略可能です。 [CODE(HTMLa)[rel]] も [CODE(HTMLa)[[[rev]]]] もない[[連結]]は、 単純に関係する資源を指している程度の意味合いになります。 (詳しくは [[HTML//連結]]を参照してください。) **** [CODE(XMLe)@en[atom:link]] 要素の場合 [28] この[[属性]]は[[必須]]ではありません。 [29] この[[属性]]が省略された場合、[[リンク関係型]]が [CODE(XML)@en[[[alternate]]]] であるかのように扱わなければ[['''なりません''']] [SRC[[[RFC 4287]] 4.2.7.2.]]。 ** 応用 [8] ([CODE(HTMLe)[[[link]]]] 要素だけでなく [CODE(HTMLe)[a]] 要素であっても) [CODE(HTMLa)[rel]] 属性のついた [CODE(HTMLe)[[[a]]]] 要素によるリンクの情報も誘導棒などの誘導情報として UA により特別に扱われることがあります。 [[#comment]] ** 歴史 [1] ''WWW-Talk 1992: OO WWW: Re: indexes as links rather than documents'' : [[HTML]] における [Q[[CODE(HTMLa)[rel]]]] という属性名の誕生の瞬間。 [9] >>1 以前から (遅くても1992年1月には) [CODE(HTMLe)[a]] 要素には [CODE(HTMLa)[[[type]]]] 属性が定義されていました。 この属性は[[連結型]]を指定するもので、 1993年1月ごろまで残っていましたが、1992年末〜1993年の議論の結果 Tim は [CODE(HTMLa)[rel]] という名前を選んだようです。 もっとも、1992年の [CODE(HTMLa)[type]] も 1993年の [CODE(HTMLa)[rel]] も、連結型 (関係) を指定するのだという意味と、 登録制にするのが良かろうということが決まっていただけで、 実際に指定できる値はまったく決まっていませんでした。 (経験が少なすぎて決め兼ねるということだったようです。) [13] [CITE[Re: rel/rev for
?]] ([[Ian Hickson ]] 著, [CODE[2007-11-01 01:12:49 +09:00]] 版) ([[名無しさん]]) [14] [CITE[Re: hrefclass attribute ? -- semantics token reuse]] ([[Ian Hickson ]] 著, [TIME[2007-11-01 01:34:07 +09:00]] 版) *** XHTML2 [24] [[XHTML2]] の最初の[[作業原案]]で [CODE(HTMLa)@en[[[href]]]] [[属性]]は[[大域属性]]に昇格しましたが、 [CODE(HTMLa)@en[[[rel]]]] や [CODE(HTMLa)@en[[[rev]]]] は放置されていました。 しかし、2つ目の[[作業原案]]で両者も[[大域属性]]となりました。 ;; [CITE@en[- XHTML Attribute Collections]] ([TIME[2002-12-12 23:58:38 +09:00]] 版) [25] [[XHTML2]] の第6次案で [[RDFa]] の一部とされ、[[属性値]]も1つの [[QName]] に変更されました。 ;; [CITE@en[- XHTML Metainformation Attributes Module]] ([TIME[2004-07-22 23:25:19 +09:00]] 版) ** 他との関係 [6] 逆の (相補的な) 意味を持った [CODE(HTMLa)[[[rev]]]] 属性があります。 例えば - 文書 A [SAMP(HTML)[<[CODE(HTMLe)[link]] [CODE(HTMLa)[href]]="docB" [CODE(HTMLa)[rel]]="[VAR[foo]]" />]] と - 文書 B [SAMP(HTML)[<[CODE(HTMLe)[link]] [CODE(HTMLa)[href]]="docA" [CODE(HTMLa)[rev]]="[VAR[foo]]">]] は同義です。 [7] 値である[[連結型]]の意味は [CODE(HTMLa)[[[profile]]]] の支配下にあると一般に考えられています。 [[#comment]] ** メモ [11] [CITE@ja[気象庁 Japan Meteorological Agency]] ([[気象庁 Japan Meteorological Agency]] 著, [CODE[2007-07-16 21:39:02 +09:00]] 版) > [PRE(HTML bad example code)[ ]PRE] [CODE(HTMLa)@en[[[title]]]] の誤り? ([[名無しさん]]) [12] [CITE@ja[Adobe: アドビの教育ソリューション:CS3 Web Premium]] ([CODE[2007-08-02 21:53:04 +09:00]] 版) > [PRE(HTML bad example code)[
Adobe Creative Suite 3 Web Premiumは、Webサイトやアプリケーション、モバイルコンテンツの開発・管理のためのトータルソリューションを教職員や学生に提供します。
]PRE] なぜ [CODE(HTMLa)@en[[[rel]]]] を使っているのかわからない。 ([[名無しさん]]) [[#comment]] * メモ [10] [CITE[rel-faq - Microformats]] [20] [CITE@en[MAMA: Hyperlinks - Opera Developer Community]] ([TIME[2008-11-25 20:43:54 +09:00]] 版) [21] [CITE@en[MAMA: HEAD structure - Opera Developer Community]] ([TIME[2008-11-25 20:44:45 +09:00]] 版) [22] [[livedoor Reader]] > * [CODE(XMLa)@en[rel]] 属性 (Atom 1.0) ** 例 [23] [PRE(XML example code)[ ]PRE] ;; [CITE[日本の祝日]] ([TIME[2008-12-08 14:27:28 +09:00]] 版) * [CODE(XMLa)@en[rel]] 属性 (Atom 0.3) [15] [[Atom 0.3]] の [[Link construct]] の [DFN[[CODE(XMLa)@en[[[rel]]]] [[属性]]]]は、 [[リンク]]が表現する[[関係]]の[[型]]を表します [SRC@en[[[Atom 0.3]]]]。 :状態:[[廃止]] → [[Atom 1.0]] [CODE(XMLe)@en[atom:[[link]]]] [CODE(XMLa)@en[[[rel]]]] :[[要素]]:[[Link construct]] な[[要素]] :[[局所名]]:[CODE(XMLa)@en[[[rel]]]] :[[データ型]]: :[[既定値]]:(必須) 仕様書: [CITE[The Atom Syndication Format 0.3 (PRE-DRAFT)]] ([TIME[2006-12-22 17:03:44 +09:00]] 版) ** 属性値 [16] この[[属性]]の値は [[Atom API]] 仕様案 に列挙された値の1つでなければ[['''なりません''']]。 [19] [[Atom API]] 案によると: :[DFN[[CODE(XML)@en[[[alternate]]]]]]: これを含んでいる[[資源]]の[[代替表現]]を指します。 :[DFN[[CODE(XML)@en[[[start]]]]]]: [[エントリー]]群の[[線形]]な列における最初の [[Atom]] [[フィード]]を指します。 :[DFN[[CODE(XML)@en[[[next]]]]]]: [[エントリー]]群の[[線形]]な列における次の [VAR[N]] 個の[[エントリー]]が含まれる [[Atom]] [[フィード]]を指します。 :[DFN[[CODE(XML)@en[[[prev]]]]]]: [[エントリー]]群の[[線形]]な列における前の [VAR[N]] 個の[[エントリー]]が含まれる [[Atom]] [[フィード]]を指します。 :[DFN[[CODE(XML)@en[[[service.edit]]]]]]: 参照されている[[資源]]の[[表現]]を編集するために使う [[URI]] であることを示します。 :[DFN[[CODE(XML)@en[[[service.post]]]]]]: 新しい[[資源]]を使うために使う [[URI]] であることを示します。 :[DFN[[CODE(XML)@en[[[service.feed]]]]]]: [[内容]]と[[サービス]]を[[ナビゲート]]するための開始店の [[URI]] であることを示します。 ** 既定値 [17] この[[属性]]は必須です [SRC@en[[[Atom 0.3]]]]。 ** 関連 [18] [CODE(XMLa)@en[[[rel]]]] が [CODE(XMLe)@en[[[alternate]]]] な [CODE(XMLe)@en[[[link]]]] [[要素]]は特別で、 [CODE(XMLe)@en[atom:[[feed]]]] や [CODE(XMLe)@en[atom:[[entry]]]] の[[子要素]]として使わなければならない回数が決まっています。 [33] [CITE[CSS Extensions for Multimodal Interaction]] ( ([TIME[2004-12-15 04:05:11 +09:00]] 版))