Атрибуты — "лучшие друзья" элементов. Они точно указывают, как работают элементы, требуются ли им данные, а также какие сущности могут быть заключены в элементе. В основном, атрибуты являются лишь источниками дополнительной информации об элементе. Атрибуты и их значения можно описывать в DTD или же в начальном теге элемента. Решение о том, куда поместить атрибуты — за вами.
Вернемся к примеру о заказе обеда и элементу <MEAL> (meal — еда). Чтобы знать, готово блюдо или нет, можно создать дополнительный элемент и назвать его, например, <PREPARED> (prepared — приготовлено), однако значительно проще описать элемент <MEAL>. Таким образом, мы создадим атрибут элемента и определим состояние готовности блюда непосредственно в самом атрибуте, например:
<MEAL PREPARED ="no">Chicken Cordon Bleu</MEAL>
Производя поиск в базе данных заказов, можно быстро сделать запрос блюд, которые еще не готовы. Разумеется, что как элемент, так и атрибут необходимо объявить — либо в XML-документе, либо в DTD. Для этого можно написать следующий код:
<!ATTLIST ElementName
AttributeName Type Default
(AttributeName Type Default...)>
|