Jintrick.netagenda2007年12月アーカイブ → 2007年12月01日

W3Cの妥当性検証ウェブサービス(API)

Documentation of the Programmatic Interface (API) to The W3C Markup Validation Serviceを読んだ。FTPでputする行程をPythonに任せて、途中にこのサービスをかませようと考えたからだ。

<![CDATA[ &#60;foo<strong title="Position where error was detected.">&#62;</strong>This phrase is enclosed in a bogus FOO element.&#60;/foo&#62; ]]>

ところが送られてくるエラーメッセージは、HTMLソースっぽいCDATAセクションになっている。何故XHTML名前空間を使わないんだよこの野郎。SOAPレスポンスを人が読むためのデータにXSLTで変換しようと思っても、HTMLのタグ(つまり人間にとってはごみ情報だな)が残ってしまうぞ。XMLパーサーで「解析」したデータを、さらにHTMLパーサーで「解析」しろってのか。何のためのXML Namespaceなんだ? というか何のためのXMLなんだ?

この仕様は、エラーメッセージをブラウザのようなHTMLパーサーに食わせることしか考えていないんだろう。だが今後、XHTMLの要素がデフォルト名前空間に現れるとは限らない。そのときXHTMLの名前空間に関連付けられた接頭辞を付けなければstrong要素は「強調」として理解されまい。混合型のXHTMLを排除している。

以上は例の全文提供型のRSSフィードにも同様に言えることだな。XHTML名前空間を持った要素をHTMLとして吐き出すなんて、それがXHTML2.0の新要素とかでない限りとてつもなく簡単なことだぞ。たった数十バイトのxsl:template要素でできるのに。XSLTを使わないとしても、RSSだのSOAPだのをパースできるのならXMLのシリアライザくらい使えよ。馬鹿じゃねーの?

しかも良くみるとSOAPサービスではないし。URIのクエリでリクエストするのかよ。


webmaster@jintrick.net
公開: 2007年12月01日
カテゴリ: 他のXML周り ,意見交換, 批判等