« 定義リストの違和感 | トップページ | 論理構造を文脈に読み換えながら class 名を考える »

2007-05-28

定義リストの違和感(続)

前回の続きです。

念のため DTD を見直してたら(チェックしたのは HTML 4.01 Strict の DTD)、なんか激しく不安をかき立てられるような記述が..。

...あれ?

<!ELEMENT DL - - (DT|DD)+ -- definition list -->

この (DT|DD)+ って、「dt要素かdd要素が 1回以上出現すること」ですよね(もちろん、両方出てくるのはOK)?ってことは、極端な話、以下のようなコードも valid なんですよね?(実際に The W3C Markup Validation Service はパスします。)

<dl>
<dt>foo<dt>
</dl>

<dl>
<dd>bar<dd>
</dl>

現行モデルじゃ、術語(dt)と定義文(dd)を関連づけできない?

がーん。実は定義文(dd)なしの術語(dt)とか、術語(dt)なしの定義文(dd)が許容されていたんですね。(もちろん、推奨・非推奨は別。少なくとも禁止はされてないという意味で。)

ということは、これって、術語(dt)と定義文(dd)の対応関係を関連づける根拠が根本的にないんじゃ..。ひょっとして、この定義リストの記述モデルって、構造化モデルとしてかなり問題があったりします?(^o^;)

関連づけできた方が、応用範囲も広がる

webmugi さんが、di { list-style: decimal; } という応用法を紹介されてますけど(li要素にdl要素を入れてみる | d-spica)、di { display: table-row; } なんて使い方だってできるようになりますし、ますます、XHTML 2.0 の di 要素に相当するグループ化のための中間要素が必要な気がしてきます。

|

« 定義リストの違和感 | トップページ | 論理構造を文脈に読み換えながら class 名を考える »

[Web]XHTML」カテゴリの記事

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: 定義リストの違和感(続):

« 定義リストの違和感 | トップページ | 論理構造を文脈に読み換えながら class 名を考える »