何でも

何でも (内容)

ん?何でもするって言ったよね?

[20] 要素の内容として何でも良いとされていることが稀によくあります。 本当に文字通り何でもとは限りません。

文書素片

[2] DocumentFragment節点木の構造の制約 (要素テキストコメント処理指令子供とできる) 以上の制約が規定されておらず、どんな要素テキスト内容として含められると解釈されています。

[3] 素の DocumentFragment の他、 雛形内容影根もあります。

[4] 何でもとはいえ、影根では実用上フロー内容が認められるものとするべきでしょう。

[5] 雛形内容についてかつては制約がありましたが、緩和されました。 template 参照。

文字列要素

[10] SVGtitle 要素desc 要素内容モデルを 「Any elements or character data.」 としています。任意の XML要素を使えると規定されています。

[11] ここでの「何でも」は、XML名前空間を使った拡張のための方便として使われています。 実際には使えるものは限られています。

[12] HTML StandardHTML文書における title 要素限定ではありますが、語句内容に限定しています。 現実的には desc 要素XML文書においても同様に限定されるべきでしょう。

[13] SVG仕様書には独自の語彙desc 要素で使った例文が掲載されています。

メタデータ要素

[14] SVGmetadata 要素内容モデルを 「Any elements or character data.」 としています。任意の XML要素を使えると規定されています。

[15] SVG仕様書には RDF/XML を使った例文が掲載されています。

[21] MathMLannotation-xml 要素内容を任意の記述方式によるものとしていて、 明確な制限を設けていません。 XML Schema では xs:any とされています。

DTD ではなぜか MathML要素に限定されています。

foreignObject 要素

[16] SVGforeignObject 要素内容モデルを 「Any elements or character data.」 としています。任意の XML要素を使えると規定されています。

[17] ここでの「何でも」は XML名前空間を使った拡張のための方便として使われています。 svg 要素以外の SVG名前空間要素は無視されることになっており、 事実上使えません。それ以外の「何でも」ということになります。

[18] HTML StandardHTML要素に関してはフロー内容であると制限しています。 現実的には他の名前空間に関してもフロー内容に制限されるべきでしょう。

未知要素

[9] 「その他」に該当する要素は、どんな内容でも持てると定められていることがあります。 こうした規定は、実際には拡張機能のための余地だったり、 エラー処理の方法の規定のための方便だったりして、 文字通り「何でも良い」と解釈するべきではなかったりします。

[6] SVG では未知要素内容モデルが 「Any elements or character data.」 とされています。

[19] SVG では外来名前空間要素SVG名前空間要素中どこにでも入れられると定めています。 ただし HTML要素については例外的な規定が色々とあり、本当に「何でも」 というわけではないようです。

[8] Atom では外来マーク付けが事実上任意の子供を持てるように定めています。

[22] XSLT1 では XSLT名前空間null名前空間以外の任意の最上位要素が認められています。

[7] VALLANGS では未知要素が任意の子供を持てるとされています。

歴史

[1] SGMLXML要素宣言では、 ANY はどんな要素 (やテキスト) も子供として含められることを表していました。