XML - статьи


Почему появление XML 1.1 прошло незамеченным


Так почему о XML 1.1 так мало пишут? Если кратко - чтобы избежать хаоса. Успех XML во многом объясняется стабильностью и универсальностью этого языка. Можно быть уверенным, что любой процессор XML 1.0 сможет обработать данные в корректно-оформленном XML-документе. Появление новой версии XML по существу подобно введению нового формата - оно чревато одновременным существованием двух групп процессоров: 1.0 и 1.1. Даже если процессоры XML 1.1 поддержат 1.0 (и, следовательно, будут понимать и документы XML 1.0, и XML 1.1), огромное число существующих инструментов 1.0 "сломаются" на документах XML 1.1. Именно по этой причине необходимо, чтобы XML 1.1 вводился с осторожностью. Поэтому консорциум W3C рекомендует приложениям, которые применяются для создания XML-документов, продолжить максимально возможно использовать XML 1.0, и XML 1.1 - только в случае необходимости. На практике это означает, что если нет причин что-то менять, то ничего менять не следует. Этим объясняет почему большинство людей еще не видело XML 1.1. И хотя инструменты, подобные Xerces поддерживают XML 1.1 уже несколько месяцев, очень не многие это заметили. Благодаря такому подходу при внедрении процессоров XML 1.1 исключается возможность возникновения путаницы, что губительно для всей компьютерной отрасли.

На практике, однако, этой рекомендации W3C, возможно, будет трудно следовать. Если подобная информация не предоставляется вместе с данными, ее будет непросто найти. Очевидно, было бы гораздо проще просто генерировать документы XML 1.1. В идеале такое время должно скоро наступить.

Однако, даже в этом случае необходимо быть готовым к одной особой ситуации. Выше уже говорилось об обратной совместимости и совместимости снизу вверх - однако, к сожалению, XML 1.1 не полностью совместим с XML 1.0 снизу вверх. Дело в том, что несколько символов XML 1.0 недопустимы в XML 1.1 - это символы управления в диапазоне от #x7F до #x9F, которые, чтобы улучшить надежность определения кодировки символов, теперь должны появляться как ссылки на символы. Это требование может показаться странным в версии, которая призвана обеспечить возможность присутствия большего числа символов непосредственно в XML-документе, однако преимущества с точки зрения определения кодировки перевесили эту несогласованность и оказались достаточно значимыми, чтобы оправдать эту небольшую несовместимость. На практике это по-прежнему означает, что при генерации XML-документов 1.1 необходимо отыскать эти символы в данных.



Содержание раздела