[16] [[HTML]] の [DFN[[CODE(HTMLa)@en[[[prefix]]]]]] [[属性]]は、 [[RDFa]] のための[[接頭辞]]と [[IRI]]
の対応を定義する[[属性]]として提案されていました。
* 代替
[17] この[[属性]]は [[HTML Standard]] に含まれていません。
[18] [[Microdata]] にはこの[[属性]]に相当するものはありません。
* 仕様書
[REFS[
- [1] [CITE@en[RDFa Core 1.1 - Second Edition]] ([TIME[2013-08-15 17:12:47 +09:00]] 版)
- [2] [CITE@en[RDFa Core 1.1 - Second Edition]] ([TIME[2013-08-15 17:12:47 +09:00]] 版)
]REFS]
* 名前空間 URL
[15] [[RDFa 1.1]] によれば [[null名前空間]]のほか[[HTML名前空間]]の[[属性]]としても使えます。
* 属性値
[9] [[属性値]]は次のような[[接頭辞]]と[[IRI]]の組の[[空白]]区切りのリストとされています [SRC[>>1]]。
[FIG[
[PRE(EBNF code)[
[[NCName]] ':' ' '+ [[xsd:anyURI]]
]PRE]
]FIG]
[10] [[NCName]] は [[XML名前空間1.0 2e]] を参照しています [SRC[>>1]]。これは [[XML 1.0 5e]] より前です。
[13] [[IRI]] の部分は [[xsd:anyURI]] とされており、明言されていませんが、引用規格より [[XML Schema 1.1]]
の定義を参照しているようです。 [[RDFa 1.1]] は [[RFC 3987]] [[IRI]] を参照していますが、 [[XML Schema 1.1]]
は任意の [[XML 1.0]] [[Char]] を認めており ([[LEIRI]])、少し差異があります。特に [[XML Schema 1.1]]
[[xsd:anyURI]] は[[空白]]の使用を認めています。
[6] [[相対IRI参照]]を使う[['''べきではありません''']]。 [SRC[>>2]]
;; [7] なぜ禁止しないのでしょうか・・・。
[11] [[空白]]は [[XML]] の [[S]] と同じ定義になっています。
[14] しかし[[接頭辞]]と[[IRI]]の間の空白は敢えて [CODE(charname)@en[[[SP]]]] になっていることから、
他の[[空白]]文字ではいけないようです。
[12] [[接頭辞]]の重複は禁止されていないようです。
* 処理モデル
[3] [[接頭辞]]は[[小文字]]に変換されます [SRC[>>2]]。 ただしどの方法で[[小文字]]化されるのかは明記されていません。
[5] 同じ[[接頭辞]]が複数回宣言された場合、後の定義が有効になります [SRC[>>2]]。
[8] [[相対IRI参照]]を[[解決]]してはなりません [SRC[>>2]]。
* 関連
[4] [[RDFa 1.1]] は [CODE(XML)@en[[[xmlns]]]] による[[接頭辞]]の宣言を[[非推奨]]としており、
[CODE(HTMLa)@en[[[prefix]]]] による宣言が優先されます。