![]() |
В чем отличия двух XML записей
Не понимаю, в чем концептуально и чисто практически отличаются эти две XML записи:
<person> <name>John Doe</name> <email>jdoe@example.com</email> </person> <person name="John Doe" email="jdoe@example.com" /> По-попугайски, если не ошибаюсь, в первом случае узел person содержит два дочерних (сыновних:)) узла, а во втором содержит два атрибута, но ни одного дочернего узла. И что с того? |
Цитата:
Вы хотите услышать, как правильно? Правильно так, как вам необходимо для решения поставленной задачи. Вы с таким же успехом можете рядом поставить то же самое в JSON-виде и задать тот же вопрос. PS: Подарили под вечер весёлое настроение. ^_^ Спасибо. |
С того что узел и атрибут это разные структурные единицы XML.
Хм, сами ответили - сами спросили. |
Есть вот здание. В здании есть шкаф. В шкафу лежит телефон. Как Вы это покажите вторым типом записи?
Логично ли будет записывая мой пример первой записью добавлять дочерний элемент "объем", "цвет" рядышком со вложенным или логично было бы сделать его параметром? |
Цитата:
Цитата:
Цитата:
Выходит, что узел без дочерних - просто элементарный неделимый атомный кирпич со свойствами (атрибутами), а узел с дочерними узлами - как бы составной, и может содержать или нет дочерние узлы. Спасибо! Вот что значит хорошая метафора ) P.S. Логично ли будет записывая мой пример первой записью добавлять дочерний элемент "объем", "цвет" рядышком со вложенным или логично было бы сделать его параметром? Кмк в вашем примере логично так: <здание объем="2000м3" цвет="0xfefefe"> <шкаф> <телефон/> </шкаф> </здание> |
Цитата:
Я рад, что Вы поняли суть ) |
Хороший, кстати, пример аналогии.
|
Когда у меня возникает вопрос пользоваться ли узлом или атрибутом я всегда беру пример из классического HTML, что по сути частный случай XML. Там каждому отображаемому обьекту соответствует отдлеьный нод. Такой же логикой я руководствуюсь и в ХМЛ: новый обьект - новый нод, свойства - атрибуты.
Например я никогда не запишу свойство COLOR отдельным поднодом, только как атрибут, если оно просто задает цвет обьекта. А вот если это цвет один из цветов в палитре - то его, безусловно отдельным нодом. Замечу, что в моем принципе намго чаще встречаются атрибуты, по сравнению с тем что я вижу у других программистов. Добавлено через 2 минуты в аналогии с кодом: простой тип данных - строки, числа, булен - атрибуты сложный тип данных - ноды |
| Часовой пояс GMT +4, время: 04:49. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.