2012-04-24 2 views
1

Я хотел бы знать, есть ли порядок, в котором атрибуты и определения пространства имен могут встречаться в элементе тега xml. Давайте предположим, что следующий элемент:Заказ атрибутов/пространство имен

<tag attr1="a1" attr2="a2" xmlns="ThisIsTheNameSpace">value</tag> 

Так что вопрос: Должен быть XMLNS после атрибутов или перед ними, или это не имеет значения.

<tag xmlns="ThisIsTheNameSpace" attr1="a1" attr2="a2">value</tag> 

или это может быть в любом месте, как это:

<tag attr1="a1" xmlns="ThisIsTheNameSpace" attr2="a2">value</tag> 

Есть ли какие-то определения?

ответ

2

Согласно разделу 3.1 Расширяемого языка разметки (XML) 1.0 (пятое издание), нет, порядок не имеет значения.

Note that the order of attribute specifications in a start-tag or empty-element 
tag is not significant. 

http://www.w3.org/TR/REC-xml/#sec-starttags

+0

Hm. Может быть, я неправильно понял, но в этом http://www.w3.org/TR/REC-xml-names/#ns-using упоминается, что xmlns должен быть первым? – khmarbaise

+0

Я не вижу ссылки на порядок атрибутов в этой статье. Это делает refernece для префикса пространства имен, который должен быть в начальном теге или теге предка, но это все, что я вижу, что может быть связано с этим. Однако это не ссылка на порядок атрибутов. –

+1

Outch вы правы. Я контролирую, что грамматик определяет логическое или между NSAttName и QName и т. Д. Таким образом, никакого определения заказа нет. Ты прав. Благодарю. – khmarbaise

Смежные вопросы