Когда только начинали появляться первые браузеры, а спецификации Сети только отрабатывались, крайне нужен был согласованный и стандартизированный язык разметки страниц. В ходе разработки такой появился, и назывался он SGML. В него входило все, что могло понадобиться для представления информации в браузерах сейчас и в будущем.

Естественно, такая спецификация была настолько всеобъемлюща и сложна, что никто не брался реализовывать ее в полной мере – слишком дорого бы это обошлось. И тогда SGML «обрезали», взяв из него лишь малое подмножество и назвав его HTML. Вот с этим HTML и произошло становление Интернет, и теперь становится очевидным, что и это уже не выход: SGML слишком сложен, HTML слишком примитивен, а середины нет. И такой серединой решили сделать XML.

XML – обычный язык текстовой разметки, похожий по структуре на HTML, но допускающий неограниченные расширения тегов. Документ XML не допускает никаких ошибок (к примеру, незакрытых тегов), в этом случае документ считается неверным, невалидным. Самое интересное в этом формате в том, что имена тегов разработчик придумывает сам, создавая тем самым словарь документа. Правило здесь лишь одно: вся структура иерархического дерева должна начинаться из одного узла, а теги рекомендуют создавать в виде пар «ключ – значение». К примеру:


<Магазин>
	<Компьютеры>
		<Системные блоки>

			<Модель> "Группа", "Спецификация", "Цена", "Фото" </Модель>
			<Модель> "Группа", "Спецификация", "Цена", "Фото" </Модель>
			<Модель> "Группа", "Спецификация", "Цена", "Фото" </Модель>

		</Системные блоки>
	</Компьютеры>
	<Принтеры>
		...
	</Принтеры>
</Магазин>

Разумеется, названия тегов должны быть описаны латинскими символами. Как видно, этот документ XML представляет собой иерархическую базу данных, которой после долгих лет разработок придумали новый вид. Но, к сожалению, на этом дело и закончилось: текстовый формат явно избыточен для быстрой обработки, а стандартных инструментов поиска и индексации еще не найдено, в отличие от реляционных баз данных.

Такой формат документа часто применяется в современных играх, при передаче информации. Браузеры не могут отражать такой документ, зато понимают его древовидную структуру, которую и пытаются показать на экране. Программы по «разборке/сборке/редактированию» должны предоставлять сами авторы документа, используя в их составе стандартные парсеры документа и их используемые словари. Некоторые словари XML уже являются стандартом «де-факто»: к примеру, в известном формате передачи книг FB2.

captcha