Есть ли какой-либо стандарт, де-факто или иначе, для документов XML? Например, какой способ написать тег «лучший»?
<MyTag />
<myTag />
<mytag />
<my-tag />
<my_tag />
Точно так же, если у меня есть перечислимое значение для атрибута, которое лучше
<myTag attribute="value one"/>
<myTag attribute="ValueOne"/>
<myTag attribute="value-one"/>
Ответы:
Я подозреваю, что наиболее распространенными значениями будут CamelCased, т.е.
В частности, пробелы вызывают несколько сбоев при смешивании с генераторами кода (то есть для [де] сериализации xml в объекты), поскольку не многие языки допускают перечисления с пробелами (требуя сопоставления между ними).
источник
Правила именования XML
Элементы XML должны соответствовать этим правилам именования:
Можно использовать любое имя, слова не зарезервированы (кроме xml).
Лучшие практики именования
Стили именования
Для элементов XML не определены стили именования. Но вот некоторые из наиболее часто используемых:
ссылка http://www.w3schools.com/xml/xml_elements.asp
источник
Для меня это похоже на обсуждение стиля кода для языка программирования: одни будут выступать за стиль, другие - за альтернативу. Единственный консенсус, который я увидел: «Выберите один стиль и будьте последовательны»!
Я просто замечу, что многие диалекты XML используют только строчные имена (SVG, Ant, XHTML ...).
У меня нет правила «без пробелов в значениях атрибутов». Каким-то образом он отправляет в дискуссию «что помещать в атрибуты, а что в текст?».
Возможно, это не лучшие примеры, но есть несколько хорошо известных XML-форматов, использующих пробелы в атрибутах:
Я не совсем понимаю аргументы против этой практики (кажется, применимы только к некоторым обычаям), но, по крайней мере, это законно и довольно широко используется. Видимо, с недостатками.
О, и вам не нужен пробел перед автоматически закрывающейся косой чертой. :-)
источник
Я предпочитаю TitleCase для имен элементов и camelCase для атрибутов. Нет мест ни для того, ни другого.
Кстати, я быстро поискал передовые методы в XML и наткнулся на довольно интересную ссылку: XML-схемы: лучшие практики .
источник
Я бы предпочел строчные или верблюжьи теги, и поскольку атрибуты обычно должны отражать значения данных, а не содержимое, я бы придерживался значения, которое можно было бы использовать в качестве имени переменной на любой платформе / языке, которые могут быть интересны, то есть избегать пробелов, но другие две формы могут быть в порядке
источник
Это субъективно, но если в теге элемента есть два слова, удобочитаемость можно улучшить, добавив подчеркивание между словами (например
<my_tag>
) вместо использования разделителя. Ссылка: http://www.w3schools.com/xml/xml_elements.asp . Итак, согласно w3schools, ответ будет таким:В значении нет необходимости использовать подчеркивание или разделитель, поскольку вам разрешены пробелы в значениях атрибутов, но не в именах тегов элементов.
источник
Во многих диалектах XML, ориентированных на документ, используются нижний регистр базовой латиницы и тире. Я склонен соглашаться с этим.
Генераторы кода, которые напрямую сопоставляют XML с идентификаторами языков программирования, являются хрупкими, и (за исключением простой сериализации объектов, такой как XAML) следует избегать в переносимых форматах документов; для лучшего повторного использования и долговечности информации XML должен стараться соответствовать домену, а не реализации.
источник
rss, вероятно, одна из самых популярных XML-схем в мире, и она основана на верблюжьем.
Спецификация здесь: http://cyber.law.harvard.edu/rss/rss.html
Конечно, у него нет атрибутов узла в схеме, но все имена элементов узла имеют верблюжий регистр. Например:
lastBuildDate manageEditor pubDate
источник
Обычно я согласовываю соглашение об именах XML с тем же соглашением об именах в других частях кода. Причина в том, что когда я загружаю XML в Object, его атрибуты и имена элементов могут называться тем же соглашением об именах, которое в настоящее время используется в проекте.
Например, если ваш javascript использует camelCase, тогда ваш XML также использует camelCase.
источник
Microsoft принимает два соглашения:
Для настройки Microsoft использует camelCase . Посмотрите файл конфигурации Visual Studio. Для VS2013 он хранится в:
C: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ devenv.exe.config
Пример:
Пример:
источник
Явной рекомендации нет. Основываясь на другой рекомендации W3C, той, что касается XHTML , я выбрал строчные буквы:
источник
Правила именования XML
Элементы XML должны соответствовать этим правилам именования:
Источник: W3 School
источник
Я много искал хороший подход, также читал эту ветку и некоторые другие, и я бы проголосовал за использование дефисов .
Они широко используются в ARIA ( https://developer.mozilla.org/de/docs/Web/Barrierefreiheit/ARIA ), которые можно увидеть во многих исходных кодах и поэтому являются обычными. Как уже указывалось здесь, они, безусловно, разрешены, что также объясняется здесь: Использование - в имени элемента XML
Также в качестве дополнительного преимущества: при написании HTML в сочетании с CSS у вас часто есть классы, имена которых по умолчанию также используют дефис в качестве разделителя. Теперь, если у вас есть настраиваемые теги, которые используют классы CSS или настраиваемые атрибуты для тегов, которые используют классы CSS, тогда что-то вроде:
<custom-tag class="some-css-class">
более последовательный и читается - по моему скромному мнению - намного лучше, чем:
<customTag class="some-css-class">
источник