XHTML1.0 Transitionalを宣言しているにも拘らず、XHTMLの名前空間に属する要素が一つも無い。Production(生成規則)だけを抽出するスタイルシートを書いて、いざ変換しようとして気づいた。
http://www.w3.org/TR/REC-xml のValidation ResultsによるとValidらしい。名前空間が違ってもValidなのか。一体どんなスキーマを使うとそうなるのだろう。
考えられるのはコンテントネゴシエーションか。AHLは<html> には xmlns 属性が必要です
と、きっちり検証してくれるのだけれど。
と思ったら:
<!ATTLIST html %i18n; id ID #IMPLIED xmlns %URI; #FIXED 'http://www.w3.org/1999/xhtml’ >
知らなかった。DTDではvalidらしい。ではMSXMLのPSVIが間違っているのだろうか。 違った。名前空間宣言に固定値を当てようとする時点でエラーを吐いている。果たしてこれはどこに照らし合わせてどう間違っているのか。ややこし過ぎて死ねる。
でも「xmlns」はInfoset的に属性ではないのだから、#FIXEDとか言われても困ってしまうMSXMLに激しく同情する。