4

私が以前に尋ねた質問に関連する質問...

何かをチェックするだけです: XML ファイル内の xmlns、xmlns:xsi、および xsi:schemaLocation 属性の順序は重要ですか?

少なくとも、XML Notepad 2007 を使用して XML ファイルを表示している場合は、そうであることがわかりました。たとえば (XML ファイルが私のスキーマに従って正当であると仮定すると)、エラーは発生しません (例 1):

<myroot 
    xmlns="http://www.someurl.com/ns/myroot" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.someurl.com/ns/myroot http://www.someurl.com/xml/schemas/myschema.xsd">

   <sometag>somecontent</sometag>

</myroot>

しかし、これはそうです(例2):

<myroot 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.someurl.com/ns/myroot http://www.someurl.com/xml/schemas/myschema.xsd"
    xmlns="http://www.someurl.com/ns/myroot"> 

   <sometag>somecontent</sometag>

</myroot>

(エラーは、「sometag」がスキーマによると不正なエントリであるということです)。

私の問題は、他の質問のコードを使用して名前空間とスキーマ属性を生成すると、例 2 の順序で XML 属性出力が得られることです...

xmlns 属性は常に属性リストの最初にある必要がありますか?

4

1 に答える 1

1

ああ、私は自分の問題を見つけました....

私が実際に取り組んでいる XML は非常に複雑で、すべての子ノードに xmlns="" を挿入していたことに気づきませんでした。問題がなくなり、名前空間属性の順序に違いがないことを削除すると、これは私が期待したことです...

于 2008-12-03T16:17:23.900 に答える