Революция в ИТ
Х-фаза Интернет
Все больше людей общаются друг с другом с помощью Интернет. Ежегодный прирост пользователей Интернет составляет 60 процентов. Еще более высокими темпами развивается электронный бизнес в Интернет.
Вместе с тем, существенный рост Интернет выявил все недостатки технологий, основанных на языке HTML. HTML (HyperText Markuo Language) был разработан для решения задачи отображения содержимого (некоторые эксперты превратили его применение в искусство) и для ручного поиска информации. Однако, HTML не подходит для автоматической обработки информации. Например, наш браузер "знает", что конструкция <h1>Sun</h1> появится на экране как заголовок. Но какой смысл несет содержимое? Одна из звезд нашей галактики? Имя джазового музыканта? Название компьютерной компании? Мы можем только догадаться по контексту, а компьютер - нет.
В 1996 году группа экспертов, возглавленная Йоном Босаком (Jon Bosac) из компании Sun Microsystems и поддержанная консорциумом World Wide Web (W3C) начала разработку нового стандарта. Этот новый стандарт должен был бы быть простым, расширяемым и читаемым (понятным) как людьми, так и компьютерами. В феврале 1998 года этот стандарт обрел имя: XML - eXtensible Markup Language (расширяемый язык разметки). В этот же год он начал применяться в электронной торговле. По данным агентства Zona Research уже в третьем квартале по сравнению со вторым процент компаний, использующих XML, вырос с 1-го до 16. Новый стандарт был быстро одобрен и принят такими лидерами индустрии как Sun, Microsoft, DataChannel, NetScape, IBM, SAP Adobe и Software AG. За это же время с помощью XML разработаны десятки "вертикальных" стандартов, таких как: CDF (Channel Definition Format), OSD (Open Software Description), и т.п., что делает XML для Интернет действительно lingua galactica.
Появление XML означает начало нового этапа развития Интернет, преобразования всемирной паутины в глобальную базу знаний и глобальную вычислительную среду.
Какие же свойства XML делают его столь привлекательным?
Простота
Язык XML чрезвычайно прост для восприятия человеком. В то же время он легко может быть обработан компьютером. Существенно проще создать XML-документ, чем HTML, где автору необходимо учитывать поведение разных браузеров.
Открытость
Язык XML является стандартом W3C. По сути, когда говорим об XML, мы понимаем совокупность трех тесно связанных стандартов: собственно XML - как средство описания структуры документов, XSL - как средство преобразования XML-документа в HTML-документ или в другую среду отображения; и XLL - расширяемый (или открытый) язык связывания документов, аналогичный применяемому в HTML, но имеющему возможность, например, устанавливать многонаправленные ссылки, ссылаться не на весь документ, а на конкретный его элемент, и т.д. Кроме того, для разработчиков приложений предоставляется возможность использовать программный интерфейс XML OM, реализованный, в частности Microsoft в виде DOM (Document Object Model).
Расширяемость
Язык XML не имеет фиксированного набора элементов разметки (тэгов). Более того, новые тэги могут создаваться в процессе создания документа. При этом нет необходимости внедрять новые версии программного обеспечения.
Само-определенность
Традиционные СУБД требуют, чтобы структура записей всегда соответствовала схеме данных, заранее заданной администратором базы данных. Документы, представленные в структуре XML, могут храниться без таких описаний, поскольку эти метаданные уже включены в сам текст документа в виде элементов XML и/или их свойств.
Идентификация автора и версий документа на уровне элемента XML.
Любой элемент XML может иметь неограниченное число свойств, таких как автор или номер версии.
Машинно-читаемый контекст
Тэги, свойства и структурные элементы XML обеспечивают информацию о контексте, позволяя, тем самым, интерпретировать значение элемента XML, что открывает новые возможности для построения интеллектуальных поисковых машин, средств многомерного анализа данных, агентов и т.п. В этом видится главное преимущество над HTML, где трудно или невозможно проанализировать информацию о контексте.
Разделение содержания документа от формы его представления
Тэги XML описывают значение, а не представление выделяемой ими части документа. Девиз HTML: "Я знаю, как это выглядит". Девиз XML: "Я знаю, что это значит, а ты можешь мне сказать, как это должно выглядеть ". Собственно форма представления документа в формате XML может управляться с помощью расширяемых стилей (XSL - eXtensible Stylesheets Language), позволяющих менять внешний вид документа, не затрагивая его содержание. Одно и то же содержание может быть легко представлено в нескольких видах.
Поддержка многоязыковых документов и Unicode
Данное обстоятельство является важным при построении глобальных приложений.
Сравнение и агрегация данных
Иерархическая древовидная структура XML-документа позволяет эффективно выполнять поэлементные операции сравнения и агрегации. Использование XML упрощает процессы поиска и слияния данных, хранящихся в разнородных базах данных и приложениях, вследствие включения в состав передаваемого сообщения описания контекста передаваемых данных.
Разные типы данных
XML-документ может состоять из любых типов данных - от мультимедиа (графика, звук, видео) до активных компонентов (аплеты Java, ActiveX). Данные, полученные клиентом, могут быть дополнительно обработаны на клиенте, без необходимости выхода в сеть, что, соответственно, позволит увеличить пропускную способность существующих сетей Интернет.
Работа с существующими данными
Грамматика языка XML позволяет просто решать вопрос отображения существующих данных, будь то файловая система или РСУБД. Важно отметить, что XML позволяет реализовать не только чтение данных, хранящихся в разных источниках, и их слияние в единый документ, но и строить системы обновления XML-документов, позволяя обновлять (и передавать по сети) только изменяемые в конкретной транзакции данные. Данное обстоятельство может оказаться существенным резервом повышения пропускной способности существующих сетей.
Взгляд на распределенные данные с одного сервера
XML-документ может состоять из вложенных элементов, значение которых хранится на разных удаленных серверах. В этом смысле XML на сегодня является самым изощренным форматом описания распределенных данных, с помощью которого можно представить весь WWW как одну громадную базы данных.
Быстрое одобрение индустрией программного обеспечения
Такие компании как Software AG, IBM, Sun, Microsoft, SAP, NetScape, DataChannel и многие другие уже объявили о поддержке XML. Microsoft будет применять XML в качестве формата обмена в Microsoft Office, а также в IE5. SAP объявила о поддержке XML в составе SAP Business Connector with R/3, Software AG поддерживает XML в линии продуктов Bolero и Natural и выпускает Tamino как информационный XML-сервер.