XMLでサイトマップを記述するための語彙集です。「S3」と連携する為に制作されました。
サイト内のページをツリー状に表現するため入れ子状の構造で記述していきます。
各ページはsm:page
で表現され、要素内にメタ情報を持つことが出来ます。
このようなサイト構成の場合、次のように記述できます。
<?xml version="1.0" encoding="UTF-8"?>
<sm:sitemap xmlns:sm="http://www.arielworks.net/works/codeyard/sitemap" ...>
<sm:id>/</sm:id>
<dc:title>第3開発室</dc:title>
<dcterms:created>2004-07-04T15:10:22Z</dcterms:created>
<dcterms:modified>2004-07-13T07:50:10Z</dcterms:modified>
<sm:description>Arielworksの石川が個人的に運営するサイトです。</sm:description>
<sm:page>
<sm:id>/about</sm:id>
<dc:title>サイト案内</dc:title>
<dcterms:created>2004-07-08T14:38:36Z</dcterms:created>
<dcterms:modified>2004-07-09T12:33:24Z</dcterms:modified>
<sm:description>役に立ちそうな制作者の個人情報。</sm:description>
</sm:page>
<sm:page>
<sm:id>/memo</sm:id>
<dc:title>Memo</dc:title>
<dcterms:created>2004-07-04T15:10:22Z</dcterms:created>
<dcterms:modified>2004-07-10T12:21:05Z</dcterms:modified>
<sm:description>石川の個人的なメモ。</sm:description>
<sm:page>
<sm:id>/memo/2004</sm:id>
<dc:title>2004年のMemo</dc:title>
<dcterms:created>2004-07-04T15:10:22Z</dcterms:created>
<dcterms:modified>2004-07-04T15:10:22Z</dcterms:modified>
<sm:description>2004年のメモ</sm:description>
</sm:page>
</sm:page>
</sm:sitemap>
含まれるメタ情報は自由に決めることが出来ます。
SDFが使用する名前空間URIは「http://www.arielworks.net/works/codeyard/sitemap」とする。
この仕様書内で使用する接頭辞smは上記の名前空間にバインドされているものとする。実際の使用に当たっては任意の接頭辞を使用することが出来る。
SiteMapの要素、属性などの名前は全て小文字とする。
要素や属性など、この仕様書以外に書かれていない部分を新たに拡張する場合は別の名前空間で定義すること。SiteMapの名前空間を拡張することは出来ない。
sm:sitemap
<sm:sitemap>
<!-- Content: (sm:page, sm:id, sm:description, dc:title, etc...) -->
</sm:sitemap>
SiteMapのルート要素はsm:sitemap
である。トップページのメタ情報および下位のページ(sm:page
)を内容に持つことが出来る。
メタ情報はSiteMapで定義するsm:id
およびsm:description
意外にも任意の語彙を使用することが出来る。
sm:id
を必ず内容に持たなければならない。
sm:page
<sn:page>
<!-- Content: (sm:page, sm:id, sm:description, dc:title, etc...) -->
</sm:page>
ページを表現する要素がsm:page
である。ルート要素であるsm:sitemap
と同様の内容を持つことが出来る。
sm:id
を必ず内容に持たなければならない。
sm:id
<sm:id>
<!-- Content: #PCDATA -->
</sm:id>
そのページのトップページからの位置を示すIDを表す。
sm:description
<sm:description>
<!-- Content: インライン要素 -->
</sm:description>
そのページの簡単な説明。