XMLの基本標準 : XLink - 拡張リンク -

2001年10月14日(日)更新


XLinkの拡張リンク

たけち: 今回はXLinkの拡張リンクについて少し詳しく勉強してみよう。

さらら: 難しくないのかしら・・・・

たけち: んっと。。。。あんまり難しく考えないで、あっ、こんなものなんだっていう感じで勉強すればいいからね。

さらら: そっ、そうね。・・・・

たけち: 図にXLinkの拡張リンクのだいたいのイメージを書いてみたからね。
例として、リソースAからリソースBにリンクしているとするね。ちっょと図を見て。

さらら

XLink: 拡張リンクの概要


XLinkの拡張リンク: ロケータ(locator)とアーク(arc)

さらら: えっ、図を見るとXLinkドキュメントからリソース(ドキュメント)AとBをリンクしているように見えるけど・・・・・あれっ??

たけち: うん。。。拡張リンク情報は、リンクで関係づけられるリソース(XMLドキュメントなど)とは別のXMLドキュメントに書くんだよ。

さらら: えっ? .....あっ、そっかぁ。。。。前に言っていた、「リンク先のドキュメントに情報を追加しなくていい」っていうのは、この方法だからなのね。

たけち: そうそう。もう一度よく図を見てみて。

さらら: そっか。例えばXMLドキュメントAからXMLドキュメントBにリンクしていることを表わすのに、XLinkだと図のように表わすのね。でも、なんだか、知らない言葉がいっぱいで、よくわからないわ。

さらら

たけち

たけち: えっとね。。。。この場合、リソースAリソースAを示すことが必要だね。

さらら: えぇ。

たけち: そのリソースAリソースAを示すものが、ロケータ(locator)なんだ。

さらら: そうなんだ。。。。。

たけち: 具体的には、そのURLをhrefで表わすんだよ。

さらら: あっ、それはHTMLのhrefと同じね。で、roleってなぁに?

たけち: ロール(role)は、このリンクで表現しようとしているリソースAリソースAの役割を表わしているんだ。たとえば、学級と生徒とか、著者と本とか・・・・

さらら: ふ〜ん。。。。

たけち: で、リソースAリソースAがどんな風にリンクしているのかを表わすのがアーク(arc)なんだ。

さらら: あっ、そうなんだ。。。。

さらら


XLink: 拡張リンクの簡単な例

たけち: じゃあ、もうすこしXLinkがどういうものか分かるように、簡単な拡張リンクの例を書いてみようね。

さらら: えぇ、そのほうがわかるわね、きっと。。。。

たけち: じゃあ、いつものように万葉集の例を考えてみようね。額田王(ぬかたのおおきみ)から作品にリンクするっていうのを考えてみよう。

さらら: は〜い。万葉集は久しぶりのようでうれしいわ。

たけち: まずは、額田王(ぬかたのおおきみ)から作品へのリンクが、XLinkではどのように表わすのかを図に描いてみようね。

たけち

XLink: 簡単な拡張リンクの例

さらら: やっぱり具体的なイメージのほうが分かりやすいわね。xlink:arcrole="歌人と作品"っていうのは?

たけち: さっき説明はしなかったけど、アーク(arc)、つまりリンクの意味を表現しているんだね。

さらら: そうね。そのほうが、単にリンクしています、っていうより分かるわね。

たけち: 具体的なXLinkのテキストを次に載せておくね。

たけち

XLink: 拡張リンクの簡単な例(上図のサンプル)

<?xml version="1.0" encoding="Shift-JIS" ?>

<sample-link        xmlns:xlink="http://www.w3.org/1999/xlink"
        xlink:type="extended"
        xlink:title="額田王とその作品" >

<poetlink-arc
        xlink:type="arc"
        xlink:arcrole="歌人と作品"
        xlink:from="歌人"
        xlink:to="万葉歌"   />

<poet-locator
        xlink:type="locator"
        xlink:href="nukata.xml"
        xlink:role="http://www6.airnet.ne.jp/manyo/role/poet"
        xlink:label="歌人"   />

<poem-locator
        xlink:type="locator"
        xlink:href="poem.xml"
        xlink:role="http://www6.airnet.ne.jp/manyo/role/poem"
        xlink:label="万葉歌"   />

</sample-link>

さらら: あっ、失際には、arcxlink:fromxlink:toのところには、locatorlabelを使うのね。

たけち: そうそう。これで、だいたい分かるよね。

さらら: なるほど〜。XLinkっておもしろいわぁ〜。。。これなら、額田と天武天皇(てんむてんのう)と天智天皇(てんじてんのう)の関係もXLinkで表現できるわね。

たけち: さっ、さらら・・・・(ーー;

さらら: だって〜 (← この意味の解説は省略しますね)

たけち: もっと複雑なリンクについては万葉集を題材に順次勉強しようね。

さらら: えぇ。

次回もお楽しみに.... (^ ^*

たけち