Microformats: Boon or Bane?
2009-12-12 16:24 /
My first impression was not positive, to put it mildly. So you want me to take the ambiguous, crappy “HTML” markup we already have and layer some ambiguous, crappy “microformat” markup on top of it? And that's … a solution? If that's what microformats are going to be about, I think I might want off the microbus.
via Coding Horror.
この後もさんざんぶった切ってはいるのだが、結局使うことにしたようだ。
ちなみに MD では、次の v.8 テーマでマイクロフォーマットを付けることにしている。他でも書いたように、もともと何年か前より当サイトのソースには DublinCore を付けているため、オチョクってる割にセマンティックウェブ関連の技巧はあれこれ取り入れようとはしていたりする。
<h2>microformat (vCard)</h2>
<div class=”vcard”>
<p id=”vcardimg”>
<img class=”photo” src=”http://localhost/local.markupdancing.net/wp-content/themes/MarkupDancing_v8/images/takayuki-kawamoto.jpg” width=”60″ height=”60″ alt=”KAWAMOTO Takayuki” title=”KAWAMOTO Takayuki” />
</p>
<p>
<a href=”http://www.linkedin.com/in/philsci” class=”fn url”>
<span class=”honorific-prefix”>Mr.</span>
<span class=”family-name”>KAWAMOTO</span>
<span class=”additional-name”></span>
<span class=”given-name”>Takayuki</span>
<span class=”honorific-suffix”></span>
</a><br />
<span class=”vcardnotes”>
also known as <span class=”nickname”>philsci</span><br />(birth day: <abbr title=”10680920″ class=”bday”>Sep 20 1968</abbr>)<br />
live in <span class=”adr”><span class=”locality”>Osaka city</span>, <span class=”region”>Osaka</span>, <span class=”country-name”>Japan</span></span>.<br /><span class=”hidden”><span class=”title”>Manager of System Division</span> (<span class=”role”>system architect,designer</span>)</span>
</span>
</p>
</div>
でまぁ、Coding Horror でジェフが書いているように、俺も Microformats を読んだ当初は、冒頭であれほど「クラス病」とか「DIV病」とか紹介してたくせに、自分がサンプルで書いてるマイクロフォーマットはクラスや <span> だらけじゃないかと思ったものだ。なぜなら、本来こういうことを正しく表現するには、正しく表現するためのスキーマを書いて XML を使うべきだからだ。
しかし、それを XHTML でやろうとすると、こうなってしまうのは仕方ないのである。ところが、暫定であることが分かっていないと、「飽くまでも暫定でそうしているだけのこと」をわざわざ外から改めて批判するという馬鹿なコメントが増えることになる。その一つは、Coding Horror のコメントにもあるが、
It’s technically wrong to overload the css class with semantic meaning. The css class is there to bind against a representation (style) meaning, nothing more.
すなわち・・・クラス名に「ニックネーム」なんていう、文書構造上の位置づけを表す名前をもたせるべきではない。或るデータが「ニックネーム」であることを、マイクロフォーマットの解析を行うオブジェクトにメッセージングするのは、現実の文書の構造とそれのシンタクスを定義している DTD やスキーマであって、スタイルシートに結びつくクラス名ではない・・・という批判だ。しかし、マイクロフォーマットを提案している側は、そんなことはいちいち言われなくても最初から分かっているのである。
クラス名に文書構造を表す名前を使わず、プレゼンテーションに対応する名前しか使うべきでないなら、いったい現在の XHTML の文書構造で当該の箇所が「ニックネーム」という役割に当たる要素であることを、解析側にどうやって伝えたらよいというのか。そんなものは最初からないのである(それに、データの中身で判別できるくらいなら、そもそもマークアップなど不要なのである)。ならば、オリジナルのスキーマを使わせて要素名までオリジナルにすることは敷居を上げてしまうから、既存の <span> や <div> を使って vCard のデータに当たる部分を括り出し、その中で適切な意味合いを持たせようとすれば、既存の枠組みではクラス名を使うしかないのである。
ちょうどあらゆるウェブページで、
<h5><div><p><span>text</span></p></div></h5>
という要素においてニックネームが使われ、かつそのパスで表される要素にはニックネームしか使われていないなら、もちろん既存の文書構造(モデル)において妥当かつ特定の役割をもつパターンが設定できて、ちょうど当該のノードを「ニックネーム」に使えるかもしれないが、そんな都合のよいパスなど存在するわけがない。DTD にそのような特性をあらかじめ指定する役割はないのだ。

なんだ。タイトルに 100% Data loss ってあって、何のことかと思ってたら。
http://superuser.com/questions/82036/recovering-a-lost-website-with-no-backup
これかw
一個ずつ丁寧に説明してるのが、余計に笑いを誘うな(笑)