Связанный вопрос с один я спросил ранее ...
Просто проверяю что-то: должен ли порядок атрибутов xmlns, xmlns: xsi и xsi: schemaLocation в XML-файле иметь значение?
Я обнаружил, что это так - по крайней мере, при использовании 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 является недопустимой записью в соответствии со схемой).
Моя проблема в том, что если я использую код из другого вопроса для создания атрибутов пространства имен и схемы, я получаю выходные данные атрибутов XML в порядке примера 2 ...
Всегда ли атрибут xmlns должен быть первым в списке атрибутов?





А, я заметил свою проблему ....
XML, над которым я работаю, чертовски сложен, и я не заметил, что вставил xmlns = "" во все свои дочерние узлы. Как только я удалю эту проблему, проблема исчезнет, и порядок атрибутов пространства имен не будет иметь значения - это то, что я ожидал ...