■
- Re: dt:after{content: ':'}的な発想
-
dt:after{content:':'}
的な発想というのでいうと、こうですか?基本的にそうですが、私がなんとなく想像したのはもう少しフラットな感じです。
<dl> <dt>名前</dt> <dd>いわいまさはる</dd> <dt>敬称</dt> <dd>Mr</dd> <dt>nick</dt> <dd>iwaim</dd> </dl>
しかしこれではラベル(被説明対象を表す文字列を便宜上こう呼びます)が無いので:
<dl> <dt>いわいまさはる</dt> <dd> <dl> <dt>敬称</dt> <dd>Mr</dd> <dt>nick</dt> <dd>iwaim</dd> </dl> </dd> </dl>
このように、自明な「名前」の説明を省略してその値をラベルとして扱うのが自然かなと。
(このルートのdlを一つのアイテムと捉えてulでリスト化すると煩雑になるのでしょうが、dtと後続のddで対応関係を示して一つのアイテムを形成するのがHTMLのやり方だと諦めています。)
よくあることですが、私はRDF/XML文書をHTMLに変換する際には、主語の「名前」もしくは「タイトル」をラベルとして扱っています。
変換前のRDF/XML文書では主語はfoaf:Personなのですが、これ自身は「ある人物」という意味しか持っていません(rdf:aboutを持たないfoaf:Person)。ですから、馬鹿正直にデータ構造をそのままHTML流に変換すればこのようになってしまいます。
<dl> <dt>ある人物</dt> <dd> <dl> <dt>名前</dt> <dd>いわいまさはる</dd> <dt>敬称</dt> <dd>Mr</dd> <dt>nick</dt> <dd>iwaim</dd> </dl> </dd> </dl>
メタデータを扱うアプリケーションにとって名前は文字列に過ぎませんが、人が読むためのHTMLでは「ある人物」を特定するのに名前(foaf:name等)を使うのが普通です。ですから、名前等は一々説明させずにラベルとして扱おうというわけです。