Shammer's Philosophy

My private adversaria

Schema error: Anonymous complexType: Invalid child 'element' in the complex type.

先日のXMLエラー解析の続き。complexType直下にがあると、

Schema error: Anonymous complexType: Invalid child 'element' in the complex type.

というエラーが出ることを確認。


complexType直下には、element要素をおけないらしい。
直接置かずに、などが来るようだ。
具体的に何をおけるかは、http://www.w3schools.com/schema/schema_elements_ref.aspから該当要素を探すのが良さそう。
ちなみに、本家はXML Schema Part 2: Datatypes Second Editionの様子。
28 October 2004の更新が最新のようだ。


要素を一つだけ持たせる要素、という定義はなさそう。
子要素が一つだけの要素であれば、complexTypeとElementの組み合わせでなく、
Attributeで定義することが想定されているように見える。
まあ確かに、子要素が一つしかない要素であれば、要素を持たせずに属性定義すれば済みそうだな・・・
でも、今回は勉強用途なので気にせず流そう。
別に子要素が一つだけの場合にsequenceを使って子要素を定義することも文法的には間違いじゃない。