名前のウェブとXHTML文書のプロファイル
- 情報は伝わるか?
- 情報の伝達と名前
- 名前のウェブと3つの名前
- ウェブ文書の名前の表現法
- ウェブ上の名前によって可能になること
- XHTMLの名前と働き
- プロパティとしてのXHTMLの名前
- 簡素な名前システム(X)HTML
- XHTML文書のプロファイル
- XHTML文書の名前拡張法比較
- GRDDLによる名前の変換
- 共有プロファイルを使おう
- まず最初に整形式XHTMLで
- 実践:metaprof
- head要素からメタデータを抽出する
- 本文のXHTML要素型からのメタデータ
- metaprofが定義する@class属性
- @rel属性の扱い方
- IFPとしてのリンク
- 接頭辞を使った拡張
- プロパティの主語は何か
- ブロックレベル要素の@classと文書の関係
- ブロックレベル要素とmetaprof
- 特殊なブロックとしてのmicroformats
- microformatsからのRDF抽出例
- リンクするデータ
- XHTML文書の主題とリンク
- リンク可能なデータとしてのキーワード
- まとめ
- 参照先
情報は伝わるか?
- そもそも情報は伝わらない…
- 生命情報:生物が世界と関係することで出現する、意味のある(識別できる)パターン
- 観察者(主体)が世界をどのように捉えるか(関係)を表すパターン。人によってその関係=パターンは異なるので、完全には伝えられない。
- 社会情報:生命情報を人間が(ことばとして)記述する
- 共同体(国家、コミュニティ…)での共通了解=意味のとりあえずの固定(規範化作用)
- 機械情報:言葉の記号作用の「記号表現」だけを取り出したもの
- コンピュータ、ネットワーク上のデータとして蓄積、交換される
- (西垣通 『ウェブ社会をどう生きるか』)
- 生命情報:生物が世界と関係することで出現する、意味のある(識別できる)パターン
- そこを何とかうまく伝えるためには
- 明晰な論理と文章
- 分かりやすい情報のかたち
- 互いに理解できる名前
情報の伝達と名前
- 機械情報を介した情報のコード化と再構築
- 情報が伝わるためには、まず社会情報が適切に再現される必要がある
- 同じ社会情報でも人によって理解の仕方が異なるので、完全に伝わる保証はないが、
- 少なくとも社会情報が適切に伝わらなければ、「生命情報」は伝わらない
- 媒介となる社会情報の共有のために、名前が重要な役割を果たす
- 情報が伝わるためには、まず社会情報が適切に再現される必要がある
名前のウェブと3つの名前
- 名前のウェブ
- 社会情報の空間はさまざまな名前によって意味の織物が構成される「名前のウェブ」
- 「ウェブ標準」とは、名前のウェブのWWW層における、社会情報を適切に伝えるための規範
- 名前のウェブを構築する素材として、主語、述語、目的語の3点セット(トリプル)を考えることができる
- ウェブで用いられる名前3点セット
主語 述語 目的語 CSS セレクタ プロパティ 値 XHTML 文書URI 要素型 要素内容 ハイパーリンク アンカー要素 xhtml:href リンク先URI RDF リソースURI プロパティ 目的語URI/リテラル
ウェブ文書の名前の表現法
- グローバル名
- 名前空間URI+要素型名
- 文書URI+フラグメント識別子(
@id
属性 or XPointer) - 仕様で定義された
@rel
属性値
- 文書ツリーの要素の名前
- DOM
- XPath
- CSS Selectors(子孫セレクタ)
- 任意の名前
@class
属性値、未定義の@rel
属性値- meta要素の
@name
属性値 - そのほか文中に出現するいろいろな名前(人物名、地名、イベント名etc)
※XHTMLのクラス属性と、RDF/OWLのクラスを区別するため、本稿では前者を「@class
」、後者を「(RDF)クラス」として記述します。同様に他のXHTML属性も@rel
などと記述します。
ウェブ上の名前によって可能になること
- 識別と同定
- 文書URI、ユーザ名、Openidなどによるリソース主体の識別
- @id属性や階層によるサブリソースの識別
- 見出し、段落、フォーム、リンクなどの意味と役割の認識
- データアクセス
- URI参照をたどってウェブ文書やリソースを取得する
- DOMを使って文書のノードを取り出す
- RDFのグラフをたどって特定のプロパティを持つデータを集める
- 情報コンテンツの表現と操作
- リンクやフォームを機能に合わせて表現し、操作可能にする
- CSSのセレクタ経由で文書パーツをレンダリングする
- XPathとXSLTで文書を変換する
XHTMLの名前と働き
- 名前とアクセスと機能
名前 アクセス・取得 表現・操作 h1-6 見出しを取り出す(目次) 見出し階層を示すレンダリング form (フォーム入力支援) フォームデータの入力・送信 a リンク先一覧/ロボット巡回 ハイパーリンク /html/body/p[1] 最初のパラグラフ取得 要約文として @rel="alternate" 代替、関連リソース取得 別言語バージョンなどへのリンク @name="author" 作者名取得 作者名の表示? @class="modified" 文書更新日取得 更新日の表示? @role="menubar" (ナビゲーション補助) メニューバーとしての表示(あるいは非表示) - これらの名前は文書中のサブリソースのRDFクラス、もしくは役割クラスの意味を取り込んだプロパティと捉えることができる
- パス(/html/body/p[1])によるアクセスは、「最初の段落は文章の要約になることが多い」という社会規範に基づくが、プロパティそのものではない
- @role属性についてはWAI-ARIA Rolesなどを参照
プロパティとしてのXHTMLの名前
- 仕様などの共通了解のある名前
- 要素型名は多くの場合プロパティに対応する
- 属性はおおむね属性値(のひとつ)がプロパティ
- (実際は属性名を加えるなどもう少し丁寧な名前をつけたり別の語彙にマッピングして用いるが、関係をグローバルに表現する例として)
- 要素型名は多くの場合プロパティに対応する
- コミュニティや個人レベルの名前
- 常識や汎用アプリケーションの名前を借用
<span
class="fn"
>神崎正英</span>は…- ここで
fn
が「Full Name」であることは、あらかじめ合意があれば通じるかもしれない fn
が「Factor Number」や「First Name」ではなくフルの姓名であることを確実に示すには、名前のグローバルな共通了解が必要
簡素な名前システム(X)HTML
- なぜ(X)HTMLに
fn
要素がないのか- あらゆる役割を(X)HTML要素型として定義するのは不可能
- 最小限の共通部分をグローバルな要素型として定義し、
@class
などで個別の役割の細分化
- The simpler, the better
- 表現したい文書構造も人によって異なる
- シンプルな基本+拡張機能の方が柔軟で互換性が高い
- 簡単に記述できることが普及の要因
- では名前
fn
を共有する方法は?@class
の名前のスコープは文書限り- XHTML文書の任意の名前をグローバルに共有するには?
XHTML文書のプロファイル
- 文書の特徴やセマンティクスを示すプロファイル
- 文書の意味解釈の定義として:
The document profile specifies the syntax and semantics of documents. (Reformulating HTML in XML section 1.3)
- 文書の処理のための特徴記述:
Document profiles offer a means to characterize the features appropriate to given categories of user agents. (XHTML Document Profile Requirements)
- XHTMLの@profile属性
- HTML4仕様書では(主としてhead要素に記述する)メタデータのプロパティと適正な値を定義するもの
HTML lets authors specify meta data ... in a variety of ways... The meaning of a property and the set of legal values for that property should be defined in a reference lexicon called a profile. (Meta data, in HTML 4.01 Specification)
- 文書本文の要素/属性をプロパティ(メタデータ)と解釈するときも、この延長で
@profile
を利用できるだろう- 実際、
@rel
属性値の意味は本文のa要素でも通用する
- 実際、
- 名前の意味解釈を定義するプロファイル(URI)を用意すれば、ローカル名が共有可能になる
XHTML文書の名前拡張法比較
- XHTML文書で用いる名前を拡張する方法としては
方法 長所 短所 新しい要素型の定義 明快でグローバル 拡張にはきりがなく、考え方も異なるので、全てを満たすタグセットの定義は無理。逆に(X)HTMLの簡素さが失われる(いつか来た道) XHTMLモジュールの追加定義 XHTMLの機能を活用。文書型宣言で必要に応じて選択できる 追加定義は素人には困難 名前空間を利用した語彙併用 既存の多くのXML言語を自由に組み合わせられる 名前空間宣言がやや面倒。妥当性検証は困難。特殊な名前の理解はブラウザに依存する XHTMLプロファイル 簡単で現在の(X)HTMLですぐ利用可。自分たちでも定義可能 基本的にはメタデータ用の名前で、機能拡張向けではない。共有プロファイルの場合、意味定義の恒久性はプロファイル管理者に依存 @class、@relのみ もっとも簡単(今までどおり)。合意があればコミュニティでの共有も グローバルには通用しない
GRDDLによる名前の変換
- XML文書に用いられる名前を変換し、RDFとして抽出
- XSLTを用いてローカル語彙からRDFを取り出すGRDDLが勧告候補に
- 例えばローカル名
fn
をグローバル名vcard:fn
に変換し、次のグラフを得る: - このXSLTも、ローカル名を解釈するための規約と考えることができる
- GRDDLの適用方法
- XHTML文書にGRDDLを適用するにはいくつかの方法がある
手段 特徴 手間 共有度 自分で変換XSLTを用意 自分の用いるあらゆる名前を自由に変換 面倒 低い 公開XSLTを利用 対象語彙の変換XSLTがあれば利用できる link要素が必要 高い 変換XSLTを登録したプロファイルを利用する 名前の定義を示した上で変換できるが、GRDDL対応プロファイルがあることが前提 @profile属性を書くだけ 高い - GRDDL DemoでRDF抽出を試すことができる
共有プロファイルを使おう
- 現在の技術で名前共有を実現
- 未来の規格ではなく、XHTML1の範囲で完全対応。使い方も簡単
- コミュニティ内で名前を独自にコントロールでき、かつ外に副作用を及ぼさない
- CSS、DOMなど現在の技術がそのまま応用できる
- プロファイルによる名前共有の手順
- コミュニティの名前を変換する共通XSLTを用意する
- 共有プロファイル経由でXSLTを呼び出す(GRDDL)
- コミュニティの名前がグローバルなRDF URI参照に変換される
- metaprofを使って自分のXHTMLのデータをグローバル化しよう
- Web KANZAKI謹製公開プロファイルhttp://purl.org/net/ns/metaprof
- Dublin Coreやmicroformatsなどのポピュラーな名前を
@class
、@rel
属性値に用いて、RDF変換できる - XHTML文書のlink要素で名前空間と接頭辞を宣言して拡張可能
head
要素の@profile
属性にmetaprofのURIを書くだけ!<
head
profile
="http://purl.org/net/ns/metaprof">
まず最初に整形式XHTMLで
- でもその前に、XHTMLをきちんと書こう
- 整形式XMLになっていなければGRDDLで処理できない
- XHTMLで記述する理由とメリット、標準準拠の意味を考えよう
- 代表的なXMLパースエラー
&
は常に&
と実体参照にする。@href
属性の中でも!- 裸の属性値(→ 数字だけでも属性値は必ず引用符で囲む)
- 空要素は
/>
を忘れずに(ウェブログテンプレートに手を加えるとき注意!)
- HTML Validatorではチェックできないミスもある
- W3C ValidatorでValid XHTMLとなっても、XMLパースエラーになるものがあるので注意
- 例えば複数の属性をスペースで区切らず列挙したとき、
<span class="fn"id="myself">神崎正英</span>は…
- 2007-07-10現在でW3C Validatorは通ってしまうが、もちろんXSLTプロセッサではパースエラー(2007-07-25に公開されたValidatorバージョン0.80では修正された模様)
- 開始タグの構文は
STag ::= '<' Name (S Attribute)* S? '>'
なので、属性を区切る空白は必須
- 開始タグの構文は
- 拡張子を.xmlとしてブラウザで読み込むと比較的簡単にチェックできる
実践:metaprof
- metaprofの役割
- GRDDLのプロファイルとしてhttp://www.kanzaki.com/parts/xh2rdf.xslを呼び出し、定義に従ってRDFメタデータを抽出
- 'meta', 'nofollow', 'openid.server'など、HTML仕様で定義されていないrel属性値を定義
- metaprof+GRDDLのメタデータ抽出機能
- XHTMLのhead要素から文書メタデータを
- Dublin Coreやmicroformatsなどのローカル名を用いた@class、@rel属性値からRDFグラフを
- link要素経由の名前空間と接頭辞指定による自由な拡張
- 文書メタデータだけでなく、文書のトピックのメタデータも抽出
- キーワードをURIに結びつける
- 使用上の注意
- プロファイル定義と変換XSLTは作者によって改定される可能性があります
- 汎用性の高いものを目指していますが、作者の好みによる偏りもあります
- 以下のmetaprof紹介を参考に、自分でプロファイルを定義(公開)するのもいいと思います
head要素からメタデータを抽出する
- meta要素からのメタデータ
- 次の
@name
を持つとき、@content
の値を目的語にして文書のプロパティを生成 @name RDFプロパティ description dc:description keywords kw:keyword、ただしカンマで区切られた語句はそれぞれ別のトリプルとして処理 author 文書の作者エンティティを作成してそのfoaf:nameとして
- 次の
- link要素からのメタデータ
- 次の
@rel
を持つとき、@href
の値を目的語リソースにして文書のプロパティを生成 @rel RDFプロパティ copyright, rights いずれもdc:rights(a要素でも利用可) alternate @hreflangがあればdcterms:hasVersion、@typeが'+xml'を含むならrdfs:seeAlso section , subsection, workそれぞれ dcterms:isPartOf, dcterms:hasPartsitemap:section, sitemap:work(a要素でも利用可)meta rdfs:seeAlso、ただしFOAFの場合は文書作者のリソースを主語にする @rev='made' 文書作者のfoaf:mbox
- 次の
〔追記〕sitemap:はサイトマップ構造を表す実験語彙に対応します。
本文のXHTML要素型からのメタデータ
- メタデータとしてすぐに扱える要素型
h2
要素内容を集めてdcterms:tableOfContents
(書誌カタログスタイルの目次)としてdfn
要素をそれぞれkw:keyword
としてa
要素を、@href
を目的語に持つプロパティとして(内容がさまざまなので、他の要素や属性と組み合わせて限定的に処理)
- XHTMLの要素型は文書のプロパティだとは言うものの…
- 本文の要素型はメタデータとして直接は扱いにくい
address
要素をそのままメタデータとするよりは、その中に記述されているメールアドレスや日付を抽出したいp
要素などは、コンテンツそのもので、メタデータにはなりにくい@class
、@rel
などの属性との組み合わせにより、メタデータとしての役割が明確に
metaprofが定義する@class属性
- @class属性値として使える定義済みの名前
@class RDFプロパティ author, coverage, date, description, format, identifier, rights, title 要素内容をリテラル目的語としたdc:プロパティ(authorはdc:creatorに。coverage, description, rightsは@relでも利用可) creator, contributor, publisher dc:creatorなどとして、目的語にエンティティを生成(@relでも利用可) subject kw:keyword(@relではdc:subject) created, modified, abstract dcterms:のプロパティ me foaf:makerの目的語として作者自身のノードを生成 refs, pubs リスト要素(ul, ol, dl)に与えて参照文献、発表文献リストを生成。リスト項目内にcite要素があればdc:titleにする ifp @relを持つa要素で用いて、URIをIFPとして扱う(後述)
- 定義済み@classからの抽出例
- 次のような@class属性を記述するだけで
<p>最終更新日:<em
class="modified"
>2007-07-15</em>.</p>- 文書の更新日をRDFグラフとして抽出できる
@rel属性の扱い方
- a要素とメタデータ
- a要素は、とりあえず
@rel
属性でリンクの意味が明示されたものだけをメタデータとみなす @rel
属性値としてすぐに使える名前をあらかじめ定義(tag
以外はlink要素の@rel
にも対応)@rel RDFプロパティ URIの意味 license cc:license Creative CommonsのライセンスURI topic foaf:topic 文書のトピック tag kw:keyword dc:relation+キーワードURI(後述) source, relation, subject, creator, contributor, publisher, coverage, description dc:* source, relation以外は@classでも利用可 references, hasPart, isPartOf dcterms:* 他も接頭辞付で記述可(後述)
- a要素は、とりあえず
- @rel属性を利用したメタデータ抽出の例
<p>先日公開された最新の<a
rel="topic"
href="http://www.w3.org/TR/WCAG20/"
>WCAG 2.0草案</a>は…</p>
IFPとしてのリンク
- リンク先URIをそのまま目的語にすると具合が悪い場合
- 次のXHTMLからRDFグラフを抽出すると、トピックは「ロジャー・ノリントンという音楽家」ではなく、「ロジャー・ノリントンのホームページ」になってしまう
<p>今日<a rel="topic" href="http://www.kanzaki.com/norrington/"> ロジャー・ノリントン</a>の演奏を聴いた。…</p>
- URIをIFPとして扱う
- 人物のホームページのようなURIは、IFPとして扱うと都合がよい
- metaprofでは、@rel属性に加え、
class="ifp"
とすることでIFPになるURIを区別 <p>今日<a
class="ifp"
rel="topic" href="http://www.kanzaki.com/norrington/">…
接頭辞を使った拡張
- 定義済み接頭辞
- ピリオドでつないで
@class
、@rel
値として用いる 定義済み接頭辞 対応する語彙 dc Dublin Core基本15要素(dc:type以外は接頭辞なしでも使える) dcterms Dublin Core拡張プロパティ foaf FOAF - 例えば
class="foaf.nick"
ならプロパティとしてfoaf:nick
を生成する
- ピリオドでつないで
- link要素を使った接頭辞定義
link
要素で任意の接頭辞を名前空間URIにマッピングできる(RFC 2731の応用)。ex.
という接頭辞を使いたければ<link
rel
="schema.
ex" href="http://example.org/terms#" />@rel
、@class
属性にex.foo
という値を用いると、名前空間宣言を加えた上でex:foo
というプロパティを生成
プロパティの主語は何か
- 抽出したプロパティの主語は?
- 単純な場合は、文書自身が主語と考えられる。例えば、
<em class="modified"> 2007-07-15</em>
ならば、 - では、
( ? )--ical.location-->"東京芸術劇場"
の主語は?
- 単純な場合は、文書自身が主語と考えられる。例えば、
- 文書とトピック
- 文書はトピックを持つ
- トピックはプロパティを持つ(人物なら名前、イベントなら会場、日時など)
- 文書のブロックはしばしば一つのトピックを表す
<p>…会場は<em
class="ical.location"
>東京芸術劇場</em>です。…
ブロックレベル要素の@classと文書の関係
- 文書のプロパティとして:
- 要約、作者など、文書のプロパティを表す
@class
<p
class="abstract"
>このレポートは…</p>
- 要約、作者など、文書のプロパティを表す
- 文書のトピックのカテゴリーとして:
- 記事、イベントなど、文書に含まれるトピックのカテゴリー(RDFクラス)として
<p
class="m.Concert"
>…会場は<em class="ical.location">東京芸術劇場</em>です。…- ※metaprofでは
@class
のないブロックは素通り(子孫要素は文書のプロパティに)
ブロックレベル要素とmetaprof
- 文書のプロパティとなるブロックレベル要素の@class
- プロパティのために予約した@class値(
abstract
、description
、me
など) - 接頭辞を持ち、本体が小文字で始まる@class値
- プロパティのために予約した@class値(
- 文書のトピックのRDFクラスを表す@class
- 接頭辞を持ち、本体が大文字で始まる@class値(たとえば
m.Concert
)は対応するRDFクラスとして - 接頭辞なしで大文字で始まる@class値はWordNetのクラスとして処理
- ウェブログ他の記事をあらわす@class値(今のところ
article
,entry
,blogentry
)が複数あれば、個々の記事を文書のトピックとして独立させる <p
class="Book"
>今日読んだ<span class="author">神崎正英</span>の 『<em class="title">RDF/WOL入門</em>』は…</p>
- 接頭辞を持ち、本体が大文字で始まる@class値(たとえば
〔追記〕型付ノードとするブロックレベル要素がid属性を持つときは、属性値の前に_topic_
を加えた名前としてrdf:IDを生成するようにしました。また子孫のa要素もしくはimg要素がclass属性を持つときは、そのURIをノードの主語とすることにしました。メモ「metaprofと文書トピックの主語URI」を参照してください。
特殊なブロックとしてのmicroformats
- metaprofでのmicroformatsの扱い
- ブロックレベル要素に
vcard
,vevent
,hreview
のいずれかの@classがあれば、その内部をそれぞれのmicroformatで定める名前によって処理 - 通常のmetaprofのルールは適用せず、名前は全てそのmicroformatに従うものとし、孫要素もプロパティとして処理する
- ブロックレベル要素に
- microformatsとRDF語彙の対応
@class microformats RDFメタデータ vcard hCard FOAF hreview hReview Review Vocabulary vevent hCalendar RDFCalendar
microformatsからのRDF抽出例
- hReviewからRDFを抽出してみると
- hReview仕様ページの映画評の例(モデルとして不整合なところを一部修正)
<div class="
hreview
"> <span class="reviewer
vcard"> <span class="fn
">anonymous</span>, </span> <span class="dtreviewed
" title="20050418">April 18th, 2005</span> <div class="item
"> <a lang="zh" class="url fn
" href="http://www.imdb.com/...."> Ying Xiong (<span lang="en">HERO</span>)</a> </div> <div>Rating: <span class="rating
">4</span> out of 5</div> <div class="description
"><p>This movie has ...</p></div> </div>- ここからは次のようなグラフが抽出できる
リンクするデータ
- 目的語としての名前
@href
属性からはURIとしての目的語を抽出できる- 説明的なフレーズならリテラル目的語
- 人物名、地名などは?
- リンク可能なデータとしての目的語
- ハイパーリンク=ウェブの成功の鍵。リンクされたデータが「データのウェブ」をつくる。
The Semantic Web isn't just about putting data on the web. It is about making links, so that a person or machine can explore the web of data. (Tim Berners-Lee, Linked Data)
- リンク可能な名前は、できるだけ
a
要素の内容として記述し、@rel
属性でプロパティを与えよう - 文字列はそのままではリンクできないが、文字列にURIを対応させたらどうだろう
- 例えば日時表記にリンクを与えたら? → WorldTime、イベントカレンダー
- 地名にリンクを与えたら → GeoCoding → 地図連動
XHTML文書の主題とリンク
- 文書の主題を記述するXHTML要素とmetaprof
meta
要素のキーワード、dfn
要素、@class="subject"
、@rel="tag"
を文書の主題(キーワード)として抽出- キーワードは多義語や同義語の場合があるので、単純には「文書の主題」にはマップできない
- 文書の主題として示すのは、単語ではなく「概念」の方(タグオントロジー参照)
- 文書キーワードをURIで表す
- キーワードが複数の概念に対応することを表すためにURIを与え、概念とのリンク関係を記述する(例:
http://purl.org/net/ns/keyword/opera
)
- キーワードが複数の概念に対応することを表すためにURIを与え、概念とのリンク関係を記述する(例:
- キーワードの集合から曖昧さ解決
- 音楽関連キーワードと共起する
opera
はOpera_music
である可能性が高い
- 音楽関連キーワードと共起する
リンク可能なデータとしてのキーワード
- Wikipediaを概念のURIとして使えないか?
- 面倒なことをいわずに、キーワードをWikipedia(あるいは、はてなキーワード)に
dc:subject
で関連付ければ便利では? - しかし、これらは「概念(あるいはキーワード)を説明するページ」であって、概念そのもののURIとは言えない(文書の「主題」にはならない)
- 面倒なことをいわずに、キーワードをWikipedia(あるいは、はてなキーワード)に
- キーワードと概念とWikipediaをつなぐ
- 概念はWikipediaのページで説明されている(isDescribedBy)と捉えることができる
kw:
名前空間についてはWord to Thing Mapping Vocabularyを参照(プロパティ名がhasKeyword→keyword、hasSense→senseなどと一部変更されているので注意してください)
- 多義語とWikipedia
- キーワードの意味(対応する概念)が分からないときは、Wikipediaに用意されている曖昧さ解決(disambiguation)の仕組みを利用できるかもしれない
まとめ
- 情報を伝える媒介として名前が重要
- 本質的な情報である生命情報は、社会情報、機械情報として交換、蓄積される
- 社会情報や機械情報を適切に解釈するためには規範(標準)の共有が必要
- 社会情報の空間は、名前を適切に用いることで共有、伝達が可能になる「名前のウェブ」
- ローカルな名前はプロファイルでグローバル化してRDFグラフに
- XHTMLには要素型名のようなグローバル名と、
@class
(及び未定義の@rel
)属性値のようなローカルな名前がある @profile
属性で文書プロファイルURIを指定することで、ローカルな名前も共有可能になる- プロファイルに変換XSLTを組み合わせ、GRDDLの仕組みを利用すれば、ローカルな名前からRDFグラフを抽出できる
- RDFグラフを抽出するには、主語(文書のトピック)を適切に扱う必要がある
- XHTMLには要素型名のようなグローバル名と、
- データをできるだけリンク可能にする
- 目的語としての名前はリンクできる(URIを持つ)ほうがウェブの力が発揮できる
- 可能ならa要素でURIを与え、
@rel
でその働きを示すようにする - キーワード文字列はURIを与えて間接的に概念(URI)に結びつけ、さらにWikipediaなどの情報ページにリンクできるようにする
- リンクする名前で「名前のウェブ」を豊かに
参照先
- 参照したリソース
- ウェブ社会をどう生きるか, by 西垣通, , 岩波書店
<urn:isbn:4004310741> - RDF -- リソース表現のフレームワーク
</docs/sw/rdf-model.html> - RDFとメタデータの相互運用 - クラスを利用した役割の定義,
</works/2007/pub/0309dlw.html#s5> - Roles for Accessible Rich Internet Applications (WAI-ARIA Roles), by Lisa Seeman and Michael Cooper(ed.), , W3C Working Draft
<http://www.w3.org/TR/aria-role> - Reformulating HTML in XML, by Dave Raggett et al. (ed.), , W3C Working Draft
<http://www.w3.org/TR/1998/WD-html-in-xml-19981205/> - XHTML Document Profile Requirements, by Dave Raggett et al. (ed.), , W3C Working Draft
<http://www.w3.org/TR/xhtml-prof-req/> - Meta data, in HTML 4.01 Specification, by Dave Raggett et al. (ed.), , W3C Recommendation
<http://www.w3.org/TR/html4/struct/global.html#meta-data> - Gleaning Resource Descriptions from Dialects of Languages (GRDDL), by Dan Connolly (ed.), , W3C Recommendation
<http://www.w3.org/TR/grddl/> - Demonstration of RDF in XHTML processor, by Dominique Hazaël-Massieux, , v 1.8
<http://www.w3.org/2003/11/rdf-in-xhtml-demo> - XHTML metainformation profile
<http://purl.org/net/ns/metaprof> - Dublin Core - メタデータを記述するボキャブラリ
</docs/sw/dublin-core.html> - Metadata Extractor Stylesheet
<http://www.kanzaki.com/parts/xh2rdf.xsl> - FOAF - メタデータによる知人ネットワークの表現
</docs/sw/foaf.html> - Encoding Dublin Core Metadata in HTML, by J. Kunze, , RFC 2731
<http://www.ietf.org/rfc/rfc2731.txt> - hcard - Microformats, by Tantek Çelik and Brian Suda
<http://microformats.org/wiki/hcard> - hreview 0.3, by Tantek Çelik et al.,
<http://microformats.org/wiki/hreview> - 評価・評判のためのオントロジー
</works/2007/pub/0125intap.html#s4> - hcalendar - Microformats, by Tantek Çelik and Brian Suda
<http://microformats.org/wiki/hcalendar> - RDFカレンダー - イベント情報の公開と活用
</docs/sw/rdf-calendar.html> - Linked Data, by Tim Berners-Lee,
<http://www.w3.org/DesignIssues/LinkedData.html> - タグとオントロジー,
</works/2007/pub/0117ritsumei.html> - Word to Thing Mapping Vocabulary
<http://purl.org/net/ns/wordmap>
- ウェブ社会をどう生きるか, by 西垣通, , 岩波書店