
rel属性はHTML 1.0(インターネットドラフトのみ)から存在していた
rel、rev、href、content、srcを(拡張して)利用property、resource、about、typeof、datatypeを導入接頭辞:参照」の形で記述するxmlns属性を借用して接頭辞を宣言する
xmlns属性を借用できる(代替方法も検討中)| μF | GRDDL | RDFa | |
|---|---|---|---|
| 名前付け | ルートクラス内で判別 | プロファイル経由 | URI(CURIE) |
| モデル | 語彙ごとに専用 | プロファイル経由でRDF | 汎用RDF |
| 構文 | 語彙ごとに定義 | プロファイルごとに定義 | 汎用構文 |
| 語彙の混在 | 限定的 | 可能 | 自在 |
| スケーラビリティ | 低 | 中 | 高 |
| 作者にとって | 簡単 | プロファイル次第 | やや難しい |
head要素で記述するのは、文書を暗黙の主語としたメタデータ| 要素型 | 関係 | 目的語 | メタデータの種類 |
|---|---|---|---|
| link要素 | rel属性 | href属性 | URI(関係型メタデータ) |
| meta要素 | name属性 | content属性 | リテラル(属性型メタデータ) |
link、meta要素のメタデータ記述をそのまま利用。ただしname属性は他の要素型では異なる意味を持つので、property属性を導入rel属性値は接頭辞無し(従来と同じ)で使える<linkrel="copyright" href="rights.html" /> <meta name="author"property="ex:creator" content="神崎正英" />
copyrightはXHTML定義済みリンク型なので、そのまま記述できるrel属性、property属性はどんな要素にも記述可能<p> <spanproperty="ex:author">神崎正英</span>著、 <spanproperty="ex:date"content="2009-07-04">2009年7月4日</span>作成 (<arel="ex:history"href="history.html">更新履歴</a>)。 </p>
property属性だけを用いれば、要素内容が目的語。content属性を併用すると、content属性値が目的語になる
rel属性で示したプロパティの目的語がハイパーリンク可能ならhref属性で、そうでなければresource属性でxmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:dct="http://purl.org/dc/terms/"
<pabout="urn:isbn:9784839931957">この書籍 『<citeproperty="ex:title">セマンティックHTML/XHTML</cite>』 (<spanproperty="ex:author">神崎正英</span>著)は…</p>
<ptypeof="foaf:Person"> <spanproperty="foaf:name">神崎正英</span>です。…</p>
typeof属性があるとき、主語がaboutで明示されていなければ、空白ノードが生成される
目的語Oを示す要素内に別のプロパティがあれば、Oを主語と読み替えてさらにグラフを作る<p>仕様の詳細は <arel="dct:relation" href="http://www.w3.org/TR/rdfa-syntax/"> <spanproperty="dct:title">RDFa in XHTML</span> </a> を参照してください。</p>

<addressrel="dct:creator"> <aproperty="foaf:name"rel="foaf:homepage" href="http://www.kanzaki.com/">神崎正英</a> </address>
dct:creatorの目的語として空白ノードが生成され、ここから更にグラフが連結されるhttp://ja.wikipedia.org/wiki/東京タワー」は文書のURI、<東京タワー>はその文書の主トピックhttp://www.kanzaki.com/」は文書のURI、<神崎正英>はその文書をホームページとする人物<prel="foaf:topic">今日は <arel="foaf:isPrimaryTopicOf"href="http://ja.wikipedia.org/wiki/東京タワー">東京タワー</a> に登った。… </p>
a要素が複数あるときは違うモデルを生成する恐れがあるので、span要素などで囲んでrel="foaf:topic"としておく方が安全div要素をrss:item型のリソースにrss:titleプロパティにdc:dateプロパティにrss:descriptionプロパティにxmlns:rss="http://purl.org/rss/1.0/" xmlns:dc="http://purl.org/dc/elements/1.1/"
property属性を設定した要素内に文字列以外のマーク付け(子要素)がある場合、datatype=""を併記しないとマーク付けも含む目的語(XMLリテラル)となってしまうxml:langが設定されている場合、日付についてはxml:lang=""などとしないと、言語タグつきの日付になってしまうrss:descriptionとする代わりに、関連文書へのリンクにdc:relationプロパティを与えて、データをリンクさせてみる<div id="item109" class="item">
<h3>
<img alt="" width="17" height="11" src="/Icons/right" />
First Drafts of Widgets 1.0: Access Requests Policy; URI Scheme
</h3>
<p>
<span class="date">2009-06-18:</span>
The <a href="/2008/webapps/">Web Applications Working Group</a>
has published ...
<a href="/TR/2009/WD-widgets-access-20090618/">
Widgets 1.0: Access Requests Policy</a> and
<a href="/TR/2009/WD-widgets-uri-20090618/">
Widgets 1.0: URI Scheme</a>....
<span class="archive">
(<a title="First Drafts of Widgets 1.0..."
href="/News/2009#item109" rel="details">Permalink</a>)
</span>
</p>
</div>
<div id="item109" class="item"typeof="rss:item" about="/News/2009#item109"> <h3property="rss:title"datatype=""> <img alt="" width="17" height="11" src="/Icons/right" /> First Drafts of Widgets 1.0: Access Requests Policy; URI Scheme </h3> <p> <span class="date"property="dc:date">2009-06-18</span>: The <a href="/2008/webapps/">Web Applications Working Group</a> has published ... <a href="/TR/2009/WD-widgets-access-20090618/"rel="dc:relation"><citeWidgets 1.0: Access Requests Policyproperty="dc:title"></cite></a> and <a href="/TR/2009/WD-widgets-uri-20090618/"rel="dc:relation"><citeWidgets 1.0: URI Schemeproperty="dc:title"></cite></a>.... <span class="archive"> (<a title="First Drafts of Widgets 1.0..." href="/News/2009#item109" rel="details">Permalink</a>) </span> </p> </div>
dc:relation)のタイトルをa要素に記述すると、RSSアイテムがそのタイトルを持つことになってしまうので、子要素citeを追加してproperty属性を記述foaf:topicで表現することもできるfoaf:interest、foaf:schoolHomepage、foaf:workplaceHomepageなどは、その「ウェブページ」を目的語にする特殊なプロパティ(HTMLで用いやすい)foaf:based_nearを用いる。ただし目的語はリテラル(地名)ではなく「場所を表すリソース」なので、場所リソースのラベル(rdfs:label、dc:titleなど)として地名をマーク付けするbio:olbプロパティを用いる。名前空間を増やしたくないときは、dc:descriptionで代用xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:bio="http://purl.org/vocab/bio/0.1/" xmlns:dc="http://purl.org/dc/elements/1.1/"
<ul class="about vcard entry-author">
<li>
<span class="label">名前</span>
<span class="fn">KANZAKI, Masahide</span>
</li>
<li>
<span class="label">現在地</span>
<span class="adr">Tokyo, Japan</span>
</li>
<li>
<span class="label">Web</span>
<a href="http://www.kanzaki.com/" class="url"
rel="me nofollow" target="_blank">http://www.kanzak...</a>
</li>
<li id="bio">
<span class="label">自己紹介</span>
<span class="bio">A pure tone enthusiast, and ....</span>
</li>
</ul>
<ul class="about vcard entry-author"typeof="foaf:Person"> <li> <span class="label">名前</span> <span class="fn"property="foaf:name">KANZAKI, Masahide</span> </li> <lirel="foaf:based_near"> <span class="label">現在地</span> <span class="adr"property="dc:title">Tokyo, Japan</span> </li> <li> <span class="label">Web</span> <a href="http://www.kanzaki.com/" class="url"rel="target="_blank">http://www.kanzak...</a> </li> <li id="bio"> <span class="label">自己紹介</span> <span class="bio"foaf:homepageme nofollow"property="bio:olb">A pure tone enthusiast, and ....</span> </li> </ul>
li要素にrel="foaf:based_near"を記述して場所リソースを表し、その子要素で場所のラベルとしてproperty="dc:title"を与えたa要素にはもともとrel属性が記述されているが、me、nofollowはCURIEでも定義済みXHTMLリンク型でもないので、無視される<ul class="about vcard entry-author"typeof="vc:VCard"> <li> <span class="label">名前</span> <span class="fn"property="fn">KANZAKI, Masahide</span> </li> <li> <span class="label">現在地</span> <span class="adr"rel="vc:adr"><span</span> </li> <li> <span class="label">Web</span> <a href="http://www.kanzaki.com/" class="url"property="vc:region">Tokyo</span>, <spanproperty="vc:country">Japan</span>rel="target="_blank">http://www.kanzak...</a> </li> <li id="bio"> <span class="label">自己紹介</span> <span class="bio"vc:urlme nofollow"property="vc:note">A pure tone enthusiast, and ....</span> </li> </ul>
vc:adr)の目的語はリテラルではなく、構造化された住所リソースなので、入れ子のspan要素を用いてvc:region、vc:countryを記述http://www.w3.org/2006/vcard/ns#xmlns:v="http://rdf.data-vocabulary.org/#"
v:Product型にabout属性値としているが、問題があるので用いないimg要素が直接使われているときは親要素にrel属性でv:photoプロパティを加えればよいが、親要素として拡大画像ページなどへのリンクがある場合、そのリンク先URIがプロパティの主語になったりするので要注意about属性で空白ノードIDを与え、これを利用して関連付けるhref属性ではなくresource属性を用い、[]で囲んだ安全なCURIEとして空白ノードIDを記述する<div class="ctsArea">
<div id="mainItem">
<div id="itemPict">
<a href="/product/guitars-basses/tuners/td-35ml/viewer/">
<img src="..._12001.jpg" alt="..." />
</a>
...
</div><!--eoi(itemPict)-->
<div id="itemDetail">
<dl>
<dt>TD-35ML</dt>
<dd>
<p>
カラー:ブラック+シルバー<br />2009年03月25日発売<br />
<strong>メーカー希望小売価格<br />3,675円(税込)</strong>
</p>
...
</dd>
</dl>
</div><!--eoi(itemDetail)-->
</div><!--eoi(mainItem)-->
<p id="lead">
<strong>いつでも、どこでも、あなた向き。くっつきまチュー</strong>
管楽器や弦楽器に直接取り付けて使用出来る超小型軽量タイプのチューナーです。
上下左右360°回転させることができ、どんな位置でも見やすい角度に調整出来ます。
</p>
</div>
<div class="ctsArea"typeof="v:Product"about="[_:prod]"> <div id="mainItem"> <div id="itemPict"> <a href="/product/guitars-basses/tuners/td-35ml/viewer/"> <img src="..._12001.jpg"rev="v:photo"resource="[_:prod]"alt="..." /> </a> ... </div><!--eoi(itemPict)--> <div id="itemDetail"> <dl> <dtproperty="v:name">TD-35ML</dt> <dd> <p> カラー:ブラック+シルバー<br />2009年03月25日発売<br /> <strong>メーカー希望小売価格<br /><span(税込)</strong> </p> ... </dd> </dl> </div><!--eoi(itemDetail)--> </div><!--eoi(mainItem)--> <p id="lead"property="v:price">3,675円</span>property="v:description"datatype=""> <strong>いつでも、どこでも、あなた向き。くっつきまチュー</strong> 管楽器や弦楽器に直接取り付けて使用出来る超小型軽量タイプのチューナーです。 上下左右360°回転させることができ、どんな位置でも見やすい角度に調整出来ます。 </p> </div>
a要素)にv:photoを設定すると、「表示用ページ」が写真ということになってしまうので、img要素にプロパティを記述する
src属性値は順方向では主語を表すので、目的語とするために反対方向の関係としてrev属性にプロパティを記述a要素のhref属性値(表示ページ)になってしまうので、商品自体にabout属性で主語を与え、これを写真の主語にする(反対方向で記述するので、img要素のresource属性値)copyright、meta、licensemeta要素:description(dct:description)、author(dct:creator→link要素と連動)dct:creatorをlink要素に記述し、目的語を空白ノードとする→meta要素にabout属性を加えて同じ空白ノードを主語にする<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN"
"http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">
<html version="XHTML+RDFa 1.0"
xmlns="http://www.w3.org/1999/xhtml"
xmlns:dct="http://purl.org/dc/terms/"
xmlns:foaf="http://xmlns.com/foaf/0.1">
<head>
<title property="dct:title">タイトル</title>
<link rel="license" href="http://creativecommons.org/licenses/by-nc/3.0/" />
<link rel="dct:creator" resource="[_:me]" />
<meta name="author" content="神崎正英"
about="[_:me]" property="foaf:name" />
<meta name="description" property="dct:description" content="この文書は…" />
....
</head>
footer要素、あるいはdiv要素にrole属性(もしくはclass属性)でcontentinfo<div class="contentinfo">
<address about="[_:me]">
<a rel="foaf:homepage" href="http://www.kanzaki.com/">Web KANZAKI</a>
</address>
<span property="dct:created">2009-XX-XX</span>作成;
<span property="dct:modified">2009-XX-XX</span>更新.
</div>
</body>
</html>
v:Person、v:name、v:affiliation、v:role、v:addressなど。v:Organization、v:name、v:url、v:addressなどv:Product、v:name、v:brand、v:category、v:price、v:description、v:photo、v:urlv:Review、v:itemreviewed、v:reviewer、v:rating、v:dtreviewed、v:summaryitem属性を設定して示す。item属性に値があるときはアイテムの型を表すitemprop属性を与えてプロパティ名を示すhref/src属性のURI、それ以外は要素内容テキスト(meta、time要素のように属性値が使えることもある)<pitem> <citeitemprop="title">セマンティックHTML/XHTML</cite>は… </p>
item属性はtypeof属性に近い働きitempropのみで、関係型、属性型を区別しない<pitem="http://xmlns.com/foaf/0.1/Person"> <spanitemprop="http://xmlns.com/foaf/0.1/name">神崎正英</span>です。… </p>
about(≠about属性)を持つ要素のhref属性値が主語URIとなる<pitem> <aitemprop="about"href="http://www.kanzaki.com/ns/isbn/9784839931957">この書籍</a> 『<citeitemprop="title">セマンティックHTML/XHTML</cite>』 (<spanitemprop="author">神崎正英</span>著)は… </p>
<pitem> 『<cite itemprop="http://purl.org/dc/terms/title"> セマンティックHTML/XHTML</cite>』 (<spanitemprop="http://purl.org/dc/terms/creator"item> <spanitemprop="http://xmlns.com/foaf/0.1/name">神崎正英</span> </span>著)は… </p>

item="vcard"のアイテム内では、itemprop="fn"のようにして直接使える。これらを用いたマイクロデータから、vCard、iCalendar、BibTexに変換するアルゴリズムが定義される