Можно ли помещать комментарии перед объявлением XML в файле XML?
<!--
Is this bad to do?
-->
<?xml version="1.0" encoding="utf-8"?>
<someElement />
Можно ли помещать комментарии перед объявлением XML в файле XML?
<!--
Is this bad to do?
-->
<?xml version="1.0" encoding="utf-8"?>
<someElement />
Нет, это не нормально.
Приложение F спецификации XML говорит:
Поскольку каждый объект XML, не сопровождаемый внешней информацией о кодировке и не в кодировке UTF-8 или UTF-16, должен начинаться с объявления кодировки XML, в котором первые символы должны быть '‹? Xml', любой соответствующий процессор может обнаружить, после двух до четырех октетов ввода, что применимо из следующих случаев.
А, но, скажете вы, раздел F не является нормативным.
Итак, в разделе 2.1 приведена продукция для правильно сформированный XML-документ, таким образом:
[1] document ::= prolog element Misc*
... и в разделе 2.8 мы получить продукцию для «пролога»:
[22] prolog ::= XMLDecl? Misc* (doctypedecl Misc*)?
[23] XMLDecl ::= '<?xml' VersionInfo EncodingDecl? SDDecl? S? '?>'
Итак, вы можете опустить объявление ‹? Xml, но вы не можете использовать его в качестве префикса.
(Кстати, «Разное» - это категория, в которую попадают комментарии).
согласно этой странице, это незаконно:
Добавляя ссылочные комментарии к вашему XML-коду, помните, что они не могут находиться в самом верху вашего документа. В XML сначала может идти только объявление XML:
<?xml version="1.0"?>
Объявление XML определяет кодировку документа, которая так же важна для комментариев, как и для структурного XML. Следовательно, декларация должна идти первой. Я не удивлюсь, если многие читатели XML смогут справиться с этим, но это плохая идея.
Нет, это не соответствует стандартам XML, но комментарии хороши.