Invalid attribute value for 'name' in element 'attribute': Value 'org:sample' is not a valid NCName.
attribute name="org:sample" ... とか定義していると、
Invalid attribute value for 'name' in element 'attribute': Value 'org:sample' is not a valid NCName.
となった。name属性には、「:(コロン)」を使えないようだ。
ここは使おうとして使ったのではなく、
<element name="elementB"> <complexType> <sequence> <element ref="org:someTag" minOccurs='1' maxOccurs='1'/> </sequence> <attribute name="someAttr" type="string" use="required"/> </complexType> </element>
の、ref属性からコピペで書いてしまったのでこんなエラーが出たわけだが・・・
このエラーはほとんどの人が見ることないだろうな。
自分のミスが原因で出会うことになってしまったようなエラーだから。。。
ともあれ、ここまで直してようやくエラーが出なくなった。
もっと積極的に情報のリソース(源)の確認をするようにしていこう。
いろいろとエラーを直し続けて、問題なくなったXML Schemaファイルはこんな感じだ。
<?xml version="1.0"?> <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:org="http://www.sample.com/myoriginal" targetNamespace="http://www.sample.com/myoriginal"> <element name="sample"> <complexType> <sequence> <element ref="org:elementA" minOccurs='0' maxOccurs='unbounded'/> <element ref="org:elementB" minOccurs='0' maxOccurs='unbounded'/> </sequence> </complexType> </element> <element name="elementA"> <complexType> <sequence> <element ref="org:name" minOccurs='1' maxOccurs='1'/> </sequence> </complexType> </element> <element name="elementB"> <complexType> <sequence> <element ref="org:someTag" minOccurs='1' maxOccurs='1'/> </sequence> <attribute name="someAttr" type="string" use="required"/> </complexType> </element> <element name="name" type="string"/> <element name="someTag"> <complexType> <attribute name="value" type="string" use="required"/> </complexType> </element> </schema>