WebClub - Всероссийский Клуб Веб-разработчиков
WebClub.RU » Архив » Что XML грядущий нам готовит

Что XML грядущий нам готовит


Дата публикации: 16-03-2013

Сегодня не редко можно услышать упоминания о расширяемом языке разметки XML. Однако, не смотря утверждение консорциумом W3C языка разметки XHTML 1.0, отвечающего правилам упомянутой спецификации, столкнуться с документами кодированными в этом языке в Интернет не так уж и просто. В этом XHTML пока повторяет своего прародителя HTML 4.0. Сколько бы ни было шума вокруг спецификаций 4-ой версии, на практике в подавляющем большинстве Интернет-документов, если и используются особенности спецификации, то в незначительном минимуме. Скажем, задание стилей в теле самих тегов. Но заглядывая в будущее, нельзя не признать концептуального преимущества XML над всеми имеющими сегодня место языковыми технологиями Интернет. Чем же так хорош этот самый XML?! Рассматривать его можно и как глобальный язык описания взаимодействия объектов в распределенных системах, и как преемник семейства языков разметки HTML. Второе звучит как то попроще, ближе к традиционному веб-мастерингу, вот с него и начнем.

C появлением первых версий HTML стало ясно, что относительно глобальных концепций разработанных в SGML был сделан большой шаг назад. В то же время, эта жертва принесла столь высокую популярность HTML. Только представьте себе как постепенно угасает энтузиазм пионеров веб-мастеринга с каждой новой главой в 500-страничном руководстве по SGML. Теперь, когда простой и доступный HTML давно утвердился как стандарт де-факто, главная регулирующая "сила" в Интернет W3C начала путь обратный к SGML, хотя и не по прямой - в арсенале организации десятки лет мирового опыта. Что же в результате веб-мастера имеют на сегодня в своем распоряжении? Похоже, что они имеют язык разметки, лишенный врожденных недостатков HTML.

Чем больше число проектов в которых участвует веб-мастер, чем больше страниц создаваемых им, тем острее становиться проблемы унификации и структуризации контента в HTML. Вот давайте посмотрим на пример:

<h1>Что XML грядущий нам готовит</h1> 
<h2>Дмитрий Шейко</h2> 
<p>Страна: Беларусь</p> 
<p>Организация: Design Studio DS</p> 
<p>WWW: http://sheiko.virtualave.net/ds/</p> 
<p>E-Mail: bcf@mail.ru</p> 
<p>UIN: 35325827</p> 

Это до боли знакомая разметка HTML. Никакой информации о структуре, только теги визуального отображения, минимум логической разметки. При использовании CSS можно несколько улучшить картину. Теги заголовков предварительно описываются, можно описать и форматирование абзацев. Но что еще лучше, различным записям можно задать уникальные стилевые идентификаторы, которыми в дальнейшем можно манипулировать. Например изменение атрибутов вывода конкретного стиля приведет соответствующим изменениям во всех документах сайта. Посмотрите насколько дальше пошел XML:

<?xml version = "1.0" ?> 
<editor_contacts> 
  <author> 
    <first_name>Дмитрий</first_name> 
    <last_name>Шейко</last_name> 
    <article_title>Что XML грядущий нам готовит</article_title> 
    <adress> 
      <coutry>Беларусь</country> 
      <work>Design Studio DS</work> 
      <url>http://sheiko.virtualave.net/ds/</url> 
      <email>bcf@mail.ru</email> 
      <uin>35325827</uin> 
    </address> 
  </author> 
</editor_contacts> 

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

<?xml-stylesheet type="text/xsl" href="table_name.xsl" ?>

Причем, в XML можно определять не только собственные теги, но их свойства.

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

Еще одна примечательная особенность XML заключается в возможности задания ссылок на фрагменты кода текущего или внешнего документа. Это позволяет создавать поистине модульную структуру документа. Вот посмотрите:

<articles> 
&banner; 
&title; 
&form1; 
&content; 
</articles> 

Таким небольшим фрагментом можно описать целую страницу.

Подводя итог в этом сравнении можно сказать, что в отличии от HTML который принуждает веб-мастеров каждый раз переделывать свои документы при внесении изменений, XML (сегодня в лице XHTML) позволяет динамически менять данные в Интернет-документах. Кстати, это разгрузит трафик и может послужить толчком в развитии различных переносных устройств. Как и в случае SQL в XML технологии основная часть вычислений, связанная с динамическими изменениями контента производиться на стороне хост-сервера, а браузер пользователя лишь получает результаты. Возможности XHTML по манипулированию данными дают преимущества и сайтам электронной коммерции, делая их более интерактивными.

Теперь о XML более глобально. Что я там говорил о связующем звене распределенных систем? Основная головная боль при интеграции распределенных систем заключается в том, что нет единой спецификации , описывавшей бы общую концепцию и частные рекомендации по стыковке различных систем. Может быть, вы помните, пару лет назад активно популизовалась идея корпоративного управления на базе WEB. Тогда еще лидерами компьютерной индустрии была создана рабочая группа по распределенному управлению DMTF. Сегодня эта идея представлена тремя основными компонентами: общая информационная модель CIM (Common Information Model), универсальный транспортный протокол для передачи информации HTTP; расширяемый язык разметки XML. Разработчик, взявший на вооружение CIM, может не беспокоиться о том, что его приложение не найдет общий язык с любым другим CIM-совместимым приложением, независимо от географического расположения его хост-сервера и его платформы. В чем здесь заслуга XML? Да в том, что распределенные приложения связываются друг с другом посредством протокола HTTP и передают потоки данных, структурированных согласно правилам именно XML. По сути, и здесь, XML только представляет структуру, отображения тегов, идентифицирующих объекты или атрибуты на некоторую внешнюю семантическую структуру.

Как все-таки безгранично число применений языка описания "всего и вся". Чем-то, напоминает мечту Энштейна создать теорию единого поля. Видите ли, с помощью XML можно описывать структуры программ, написанных на высокоуровневых объектно-ориентированных языках программирования. И в этом есть смысл. XML позволяет отделить данные от их представления, упорядочить данные в деревья и списки, структурировать их и порождать из них объектные модели и описывать метаданные на метаязыке таким образом, чтобы программные модули стали абсолютно универсальными, поскольку они будут иметь дело только с XML-файлами и больше ни с чем другим. Таким образом, с помощью XML можно попытаться реализовать принцип: "Данные должны управлять программами, а не наоборот. Тут надо отметить, что это задает примечательные тенденции на будущее. Приложения в как в Интернет, так и вне его, станут более переносимыми и настраиваемыми. Каркасы программ будут проектироваться с максимальной тщательностью, теперь они не будут затронуты при внесении изменений в структуре программ. Программы смогут иметь дело не с самими данными, а с их описаниями. И повышение роли мета-данных позволит подключить к разработке приложений большее число профессионалов в самых разных предметных областях.

У вас, быть может, возник вопрос: "Есть ли уже в Интернете узлы построенные на базе XML и что не обходимо, для того что бы их просмотреть?". Пожалуй самый известный на сегодня сайт, использующий XML, это BizTalk (http://www.biztalk.org). Это детище Microsoft представляет собой программный инструмент, который облегчает на предприятиях обмен информацией между приложениями, интегрирует бизнес-процессы и дает возможность вести дела с торговыми партнерами и заказчиками через Интернет.

Сегодня XML воспринимается браузерами MS-Explorer версии 4.0 и выше. На самом деле браузер с помощью подгружаемого ActiveX модуля конвертирует XML код в HTML, и уже после этого отображает. Далее, в не так давно вышедшей Windows 2000 реализована высокоэффективная поддержка. В Windows 2000 встроен интерпретатор XML, есть поддержка потоковой передачи данных XML и средства сохранения объектов. Microsoft до того увлеклась перспективным языком описаний, что теперь даже в приложениях Microsoft Office в качестве альтернативного стандарта хранения данных будет XML. Вы же не думаете Microsoft ограничилась только своим Windows?! В MS-SQL Server 7.0 также интегрирован XML. Было даже обещано открыть прямой URL-доступ разработчикам к SQL Server 7.0 на Web-узле MSDN XML Developer Center (http://msdn.microsoft.com/xml). Кроме того, в Microsoft работают над XML Transaction Integrator (XML-TI). Это новый компонент проекта сервера интеграции Babylon, который позволит разработчикам легко интегрировать свои приложения масштаба предприятия, включая @-коммерцию.

Как видите, XML уделяется особое внимание со стороны крупнейших софтверных компаний. Это обещает большое число XML-совместимых приложений и ресурсов, но придет ли к XML тот невероятный успех, что пророчат последние годы в прессе, покажет только время. Парадоксально то, что язык описаний созданный для интеграции приложений, технологий и устройств может со временем разделиться на великое множество различных "диалектов и наречий". Взирая на то как много сегодня продвигается различных базовых концепций и информационных моделей различными комитетами возникают сомнения по поводу того сохранится при всем этом язык первозданном виде, разработанным W3C.

Домен продается

Популярное

Не так давно в сети появился новый сервис, под названием Dead Man Zero. Этот сервис сделал...
Рынок социальных площадок уже давно стал стабильным. Несмотря на то, что время от времени...
Artisteer 4 – единственный в своем роде продукт, позволяющий автоматизировать работу над созданием...
Октябрь 2018 (14)
Февраль 2017 (3)
Январь 2017 (1)
Август 2016 (1)
Май 2016 (2)
Ноябрь 2015 (1)

Карта сайта: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41

Друзья сайта



Случайная цитата

Eric S. Raymond:

"Обучение программированию не может научить быть экспертом, также как и изучение кистей и красок не может превратить кого-либо в художника."

Опрос

Какими социальными сетями Вы пользуетесь?

Vkontakte.ru
Одноклассники
Мой Мир - mail.ru
Google Plus
Facebook
ЖЖ
Другие
Не пользуюсь