В приведенном вами примере разница незначительна, однако два примера фактически представляют совершенно разные вещи :
- Второй пример относится к документу с заголовкоми много страниц
- Первый пример, однако, имеет документ с заголовком и коллекцию страниц
Как я уже сказал,в вашем примере разница избыточна и поэтому ее легко пропустить, поэтому вместо этого рассмотрим следующую небольшую вариацию:
<document>
<title>...</title>
<contents>
<page>...</page>
<page>...</page>
</contents>
<chapter name="chapterName">
<page>...</page>
<page>...</page>
</chapter>
<index>
<page>...</page>
<page>...</page>
</index>
</document>
В этом случае документ имеет множество наборов страниц.(Конечно, некоторые могут утверждать, что вы могли бы одинаково представить это по-разному):
<document>
<title>...</title>
<page section="contents">...</page>
<page section="chapter1">...</page>
<page section="index">...</page>
</document>
Однако вам бы пришлось изменить page
элемент, в приведенном выше примере я быаргументировать в худшую сторону (зачем page
знать, в чем оно содержится?)
Еще одно тонкое соображение заключается в том, что часто упорядочение элементов что-то означает:
<document>
<page>...</page>
<title>...</title>
<page>...</page>
<page>...</page>
</document>
ВВ этом примере (по любой причине) у нас есть страница до заголовка - очевидно, это невозможно при использовании коллекций.Другое соображение заключается в том, что каждая коллекция может (например) также иметь title
.
Я хочу сказать, что они представляют разные вещи - это на самом деле не такбольшая часть случая выбора формата, который наиболее соответствует вашей модели данных.