XML 2007. Обзор событий года

Элиот Гарольд

2007 год стал для XML еще одним годом медленного развития. Однако несколько важных спецификаций достигли редакции 1.0, а XML продолжал получать поддержку в публикациях, как Web, так и традиционных. Самая важная новость - небольшая течь в корабле Web-сервисов, вызванная их столкновением с айсбергом REST, превратилась в пробоину, и весь корабль начал тонуть. Верхушкой этого топящего Титаник айсберга являлись POX, plain old XML-документы, передаваемые по стандартному HTTP без каких-либо схем или спецификаций, вставляемых каким-либо способом (некоторые люди видели приближение айсберга на протяжении уже нескольких лет, но, как сказал Рой Филдинг (Roy Fielding), "индустрия все еще требовала доказательств").

Но не одна только технология REST скрывает 90% своей мощи под водой. Всю силу XML еще предстоит исследовать. Atom Publishing Protocol (APP) и XQuery в этом году достигли редакции 1.0, и влияние обоих только начало ощущаться.

Выйдя победителем из многих поединков с претендентами на трон в течение последних 10 лет (YAML, SML, S-выражения и другие аутсайдеры), в 2007 году XML столкнулся с наиболее серьезным вызовом - растущей популярностью JSON. Использование JSON пока еще не достигло своего пика и, вероятно, будет продолжать расти в следующем году, несмотря на его ограниченную применимость, проблемы с защитой и плохо спроектированные прикладные программные интерфейсы (API).

Январь

XQuery оставалась технологией "следующего года" половину десятилетия, но в январе обещания окончательно воплотила в жизнь официальная публикация спецификации XQuery 1.0. Несколько чистокровных XML-баз данных уже реализовали ее, в том числе Mark Logic, eXist, Sedna и Berkeley DB XML. Ее можно также обнаружить в гибридных базах данных, включая IBM DB2 9 и Oracle 10g. XQuery также доступна в некоторых автономных продуктах, включая Michael Kay's Saxon и DataDirect XQuery.

Но работа не завершена. XQuery - это только четвертая часть решения. В терминах CRUD XQuery - это Read без Create, Update и Delete. Столь необходимые функции должны быть добавлены при помощи проприетарных расширений. Это означает, что вы не можете легко перенести приложение или базу данных с одной реализации на другую. Еще важнее то, что вы не можете обучить разработчиков стандартному синтаксису и легко нанять опытного программиста Mark Logic для работы с приложением DB2 9 (программы редко переходят с платформы на платформу, но программисты это делают довольно часто). XQuery нуждается в функциональности update (а также create и delete). Консорциум World Wide Web Consortium (W3C) выпустил окончательный черновой вариант XQuery Update Facility 1.0 в августе, и производители начали реализовывать его. Если XML-сообществу повезет, оно в 2008 году наконец-то увидит этот критикуемый черновой вариант и его окончательную редакцию.

В этом году рабочая группа по XQuery также опубликовала первый пакет требований XQuery 1.1. Некоторыми из самых значительных новых функциональных возможностей являются обработка исключительных ситуаций, функции расширения, указатели функций и (или) лямбда-выражения. При удачном стечении обстоятельств для окончания этой работы потребуется еще каких-нибудь пять-шесть лет. Однако лучше начать сейчас, прежде чем начнется настоящий подъем XQuery и всяческие изменения в спецификации растянутся на десятилетия, как это было в случае с SQL, Fortran и C.

Хотя XQuery является вполне завершенным языком программирования (он может полностью заменить PHP, статический HTML и, по существу, любую другую интегрированную Web-среду), возможно в обозримом будущем вам придется интегрировать его с программами, написанными на традиционных языках программирования. Следовательно, хорошей новостью является то, что XQuery API for Java (XQJ) продвинулся в этом году до стадии окончательного проекта (final draft) в Java Community Process. Считайте его JDBC для XQuery. XQJ уже поддерживается Saxon 9 и Data Direct XQuery 3.0; по всей вероятности, после выхода окончательной спецификации в следующем году к этому процессу подключится больше производителей программного обеспечения.

Февраль

В этом самом коротком и холодном месяце года, когда все сидят по домам и происходит мало событий, были выпущены новые версии Saxon, TagSoup и WebCGM. (Вы спросите: неужели WebCGM? Совершенно верно.)

В этом месяце мы получили окончательный рабочий проект XForms 1.1, в который были добавлены некоторые важнейшие функциональные возможности, включая поддержку запросов PUT и DELETE. Но оставшихся 10 месяцев года не хватило для формирования окончательных рекомендаций XForms. Все что мы имели к ноябрю - вариант рекомендаций XForms 1.1. Возможно, это произойдет в следующем году.

На протяжении этого года самые значимые производители XForms в разное время выпустили обновленные версии своих продуктов, в том числе FormsPlayer, Chiba, Orbeon и Mozilla XForms extension. К сожалению, священный Грааль поддержки XForms, встроенной в основной браузер, по-прежнему неуловим.

Март

Консорциум W3C был сформирован более десятилетия тому назад как прямой ответ на неудачную деятельность Internet Engineering Task Force (IETF) HTML 2.0. В свете этой истории несколько шокирует осознание того, что к 2006 году консорциум W3C практически забросил HTML. С начала столетия и до сих пор они были так сконцентрированы на XML и Semantic Web, что совершенно забыли о технологии, ради поддержки которой были сформированы. Поэтому в 2004 году некоторые Web-дизайнеры и производители браузеров объединились в группу WhatWG (Web Hypertext Application Technology Working Group), подняв брошенный консорциумом мяч и начав свою игру.

Прошло несколько лет, и в марте в консорциуме W3C наконец заметили, что их обходят. Они реанимировали свою собственную рабочую группу по HTML и начали играть на перехват. Обе команды в основном согласились действовать совместно, но WhatWG по-прежнему является разыгрывающим и вводит мяч в игру.

Несмотря на шумиху, в 2007 году было создано не слишком много работающего HTML 5 кода. Разработка спецификации была сфокусирована на Web-видео, SQL API и таинстве синтаксического анализа. Будет ли когда-нибудь реализовано что-либо из всего этого в Web-браузерах, используемых обычными людьми? Вопрос остается открытым. Лично я спрашиваю, разумно ли тратить месяцы на встроенный в браузеры SQL API именно тогда, когда XML-базы данных разминаются перед выходом на поле (я обещаю, что это последняя футбольная метафора в данной статье, иначе можете забрать мой судейский свисток)?

Апрель

Несмотря на крикливую рекламу XML как языка, который принесет семантику в Web и даст браузерам возможность понять, что они отображают, XML на самом деле всегда имел дело с синтаксисом, а не с семантикой. Вся спецификация XML 1.0 имела только два более или менее семантических атрибута: xml:space и xml:lang (причем я не уверен насчет xml:space). Смысл, по большей части, исходит от приложения, обрабатывающего XML-документ, а не от собственно документа. Это в основном истинно для последующих спецификаций в семействе XML, включая пространства имен, XML Infoset, XSLT и XPath.

Но в апреле консорциум W3C значительно расширил атрибут xml:lang, выпустив Internationalization Tag Set (ITS) 1.0. Эта рекомендация определяет стандартные атрибуты для идентификации направленности, переводимости, ruby-текста и других общих аспектов локализации и интернационализации документов, которые можно совместно использовать во многих различных словарях. Например, в DocBook-статье, приведенной в листинге 1, атрибут its:translate указывает на то, что элемент author не должен переводиться, а атрибут its:dir указывает на то, что во всем документе используется текст с направлением слева направо.

Листинг 1. DocBook-статья с дополнительной ITS-разметкой

				<xforms:model><dbk:article
      xmlns:its="http://www.w3.org/2005/11/its" 
      xmlns:dbk="http://docbook.org/ns/docbook" 
      its:version="1.0" version="5.0" xml:lang="en"
      its:dir="ltr">
  <dbk:info>
    <dbk:title>Fun with XML</dbk:title>
    <dbk:author its:translate="no">
       <dbk:personname>
         <dbk:firstname>Elliotte</dbk:firstname>
         <dbk:surname>Harold</dbk:surname>
       </dbk:personname>
     </dbk:author>
   </dbk:info>
   <dbk:para>XML rocks!</dbk:para>
</dbk:article>

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

В апреле W3C Internationalization Activity также опубликовала окончательную версию Internationalization Best Practices: Specifying Language in XHTML & HTML Content (Передовые методики интернационализации: Указание языка в XHTML и HTML-содержимом). Эти советы подытожены в 16 "передовых методиках", которые я привожу ниже:

  • Передовая методика 1. Всегда объявляйте язык теста по умолчанию на странице, используя атрибуты тега html, если документ не содержит информацию, предназначенную для пользователей, говорящих на более чем одном языке.
  • Передовая методика 2. Если документ содержит информацию, предназначенную для пользователей, говорящих на более чем одном языке, решите, хотите объявить в теге html один язык или пока оставить язык неопределенным.
  • Передовая методика 3. Если документ содержит информацию, предназначенную для пользователей, говорящих на более чем одном языке, попробуйте разделить документ лингвистически на самом высоком (из возможных) уровне и объявите соответствующий язык для каждого из этих разделов.
  • Передовая методика 4. Используйте атрибуты lang и(или) xml:lang вокруг текста для указания каких-либо изменений языка.
  • Передовая методика 5. Для HTML используйте только атрибут lang, для XHTML 1.0, служащим text/html, используйте атрибуты lang и xml:lang, а для XHTML, служащим XML, используйте только атрибут xml:lang.
  • Передовая методика 6. Используйте атрибуты language вместо HTTP- или метаэлементов для объявления языка обработки текста по умолчанию.
  • Передовая методика 7. Не объявляйте по умолчанию язык документа в элементе body, а используйте элемент html.
  • Передовая методика 8. Если текст в значениях атрибутов и содержимом элементов написан на разных языках, подумайте об использовании подхода с вложениями.
  • Передовая методика 9. Подумайте об использовании объявления Content-Language в HTTP-заголовке или метатеге для объявления метаданных о языках целевой аудитории документа.
  • Передовая методика 10. Если документ содержит информацию, предназначенную для пользователей, говорящих на более чем одном языке, используйте Content-Language с разделенным запятыми списком тегов language.
  • Передовая методика 11. Следуйте рекомендациям IETF BCP 47 для значений атрибута language.
  • Передовая методика 12. Используйте самые короткие значения тега language.
  • Передовая методика 13. Везде, где это возможно, используйте коды zh-Hans и zh-Hant для ссылки на Simplified и Traditional Chinese соответственно.
  • Передовая методика 14. При указании ресурса на другом языке рассмотрите все за и против указания языка целевого документа.
  • Передовая методика 15. Если вы хотите указать, что целевой документ элемента написан на другом языке, рассмотрите все за и против использования hreflang с CSS.
  • Передовая методика 16. Не используйте пиктограммы флагов для указания языков.

Май

MathML был одним из первых XML-приложений, но, к сожалению, не нашел широкого практического применения. Тем не менее, группа W3C Math Working Group не сдалась и в конце апреля выпустила первый проект MathML 3 (да, я знаю, что это майский раздел, но в мае было не слишком много XML-новостей).

Самой важной функциональностью версии 3 является поддержка математической нотации для начальной школы. В конечном счете, ученики начальной школы превосходят по численности докторов математических наук примерно в 100000 раз. В MathML 3 также добавлена поддержка двунаправленной схемы и улучшено разбиение строк и позиционирование для облегчения набора текста. Наконец, спецификация была переписана с явной заботой об улучшении доходчивости. В конце концов, математика - это именно то, для чего и была придумана Web.

Июнь

В июне OpenOffice Project выпустил версию OpenOffice 2.2, кросс-платформенный офисный пакет приложений, сохраняющий все свои файлы как архивированные (zip) XML-файлы в формате OpenDoc, являющимся международным стандартом. В основном это версия с исправлениями ошибок, которая на самом деле не достойна упоминания в статье с обзором событий прошедшего года. Но настоящей новостью стало то, что впервые OpenOffice Project вместе с версиями для Linux и Microsoft Windows выпустил также версию, родную для Mac OS X .

В отличие от предыдущих промежуточных версий для Mac, версия 2.2 основана на родном пользовательском интерфейсе Aqua, а не X-Windows. Mac-версия имеет статус альфа-версии, но все равно она представляет собой огромный шаг вперед на пути формирования OpenOffice в качестве реального конкурента Microsoft Office. Если OpenOffice может привлечь внимание значительного числа программистов, владеющих MacBook, он, в конце концов, сможет избавиться от некоторых глюков в пользовательском интерфейсе, появившихся начиная с версии 1.0.

Июнь также ознаменовался самой важной новостью года на фронте браузеров, когда Apple опубликовала первую из нескольких бета-версий Safari 3.0 для Windows . Больше не удовлетворяясь своей долей в 6% (растущей) рынка, Apple, кажется, начинает полномасштабное наступление на Microsoft на своем бытовом фронте. Сначала iTunes, а теперь Safari? Может, не далеко iLife и iWork? Только 2008 год нам скажет, так ли это. Между тем Safari поддерживает XML, XSLT, Cascading Style Sheets (CSS), XHTML, Atom и RSS. CSS-поддержка в Safari реализована лучше, чем в любом другом браузере Windows. Отвлеченная Google-паранойей, Microsoft может не заметить подкрадывающейся с тыла Apple.

Июль

В июле W3C опубликовал первый общедоступный рабочий проект Efficient XML Interchange (EXI) Format 1.0. Спецификация утверждает, что:

"EXI - это очень компактное представление eXtensible Markup Language (XML) Information Set, которое предназначено для оптимизации производительности одновременно с повышением эффективности использования вычислительных ресурсов. EXI-формат использует гибридный подход, взятый из теории информации и формальных языков, плюс практические методики, проверенные измерениями, для энтропийного кодирования XML-информации. Используя относительно простой алгоритм, поддающийся быстрой и компактной реализации, а также небольшой набор типов данных, он надежно выполняет эффективное кодирование потоков XML-событий."

Я не знаю, что хуже: невероятная непрозрачность формата или тот факт, что EXI реально не является представлением XML infoset. Непрозрачность я ожидал, но последний факт меня удивил. EXI представил такие типы данных как Binary, Boolean, Decimal, Float, Integer, Unsigned Integer и Date-Time. XML не имеет типов данных и это является его особенностью, а не недостатком. XML не предполагает указания каждому читателю, как он должен интерпретировать какую-либо конкретную строку текста, обнаруженную ним в документе. EXI поступает именно так.

К счастью, к концу года EXI начала замечать некоторые серьезные возражения других подразделений W3C, включая влиятельную группу Technical Architecture Group. W3C-процесс затрудняет отзыв спецификации, независимо от того, желательна она или нет, поэтому EXI, вероятно, все равно выйдет в 2008 году. Это будет не первое индюшачье яйцо, которое снесла W3C (schemas, ау), и определенно не последнее; но, возможно, достаточно широкое распространение предупреждения о проблемах, присущих двоичным сериализациям, не даст ей причинить столько вреда, сколько она могла бы причинить. Будем надеяться, что мировое сообщество будет рассматривать ее в большей степени как XML 1.1, чем XML Schemas.

Август

В августе приверженцы XML смахнули пыль со своих разговорников по французскому языку и направились в Монреаль на ежегодную конференцию Extreme Markup Languages. Это, кстати, самое "чокнутое" из трех основных ежегодных XML-шоу. Здесь нет курсов по написанию таблиц стилей или схем. Вместо этого обсуждаются такие темы, как "A Web 2.0 ANSI SQL Transparent Native XML Nonlinear Hierarchical LCA Query Processor" (Процессор нелинейных иерархических LCA-запросов на встроенном XML, прозрачных для ANSI SQL в Web 2.0) и "Exploring intertextual semantics: A reflection on attributes and optionality" (Исследование интертекстуальных семантик: Отображение атрибутов и необязательность).

Эта конференция всегда имела шаткое финансирование, и обычно число докладчиков превышало число платных слушателей. Спонсоры часто так и не определялись до конца шоу, стоит ли опять поддерживать его, поэтому все, затаив дыхание, ожидали информацию о том, будут ли спонсоры участвовать в финансировании в следующем году. К сожалению, на сей раз этого не произошло. 2007 год, по-видимому, стал последней неудачной попыткой для Extreme (хотя это шоу пережило многих соперников).

Но на развалинах возникнет новая конференция. Mulberry Technologies, которая, как я заметил, продвигает Extreme во всем, кроме названия, анонсировала Balisage: The Markup Conference, которая пройдет в Монреале 12-15 августа 2008 года.

"Balisage предназначена для удовлетворения потребностей теоретиков и практиков языков разметки, которые раздвигают границы их применения. Она полностью посвящена разметке: как ее создать, что она означает, иерархии и наложению, моделированию, таксономии, преобразованию, запросам, поиску и извлечению, представлению и доступности, созданию систем, заставляющих разметку танцевать (или танцевать быстрее под другую мелодию в меньшем пространстве) - короче говоря, изменению мира и Web посредством мощи размеченной информации."

Если канадский луни продолжит свой рост по отношению к доллару США, 2008 год может стать не удачным (с точки зрения экономии) годом для путешествий американцев, но канадцы и европейцы должны хорошо провести время.

Сентябрь

О самой интересной истории года стало широко известно в сентябре, когда обнаружилось, что в поддержку формата Office Open XML Microsoft активизировала кампанию регистрации избирателей в различных национальных подразделениях International Standards Organization (ISO). Сначала это обнаружилось в Швеции, где 23 числа по большей части второстепенные афилированные с Microsoft компании в последнюю минуту вошли в Swedish Standards Institute, и 22 из них проголосовали в пользу одобрения OOXML. Другие национальные организации по стандартизации также обнаружили, что переполнены новыми заявками на членство (в основном от партнеров Microsoft), количество которых превысило таковое за несколько лет. Страны, которые ранее не принимали участия в JTC 1/SC 34 (специализированный подкомитет ISO, который выполняет основную часть работы по XML), неожиданно присоединились к нему.

Хотя Office Open XML получил явное большинство голосов (51-18-18), необходимо, по крайней мере, две трети голосов "P-членов" "за" и не более 25% голосов "против". Он потерпел неудачу по обоим показателям, поэтому спецификация была возвращена Ecma International для доработки. Возможно, Microsoft сможет улучшить спецификацию в достаточной степени для получения необходимых дополнительных голосов, когда ее будут пересматривать в феврале, но результаты непредсказуемы. Как я уже писал, Microsoft, кажется, не хочет позволить ISO контролировать будущее развитие OOXML, поэтому голосовавшие "за" могут проголосовать "против".

Попытки повлиять на итоги голосования по OOXML одновременно причинили вред нескольким другим несвязанным с ней спецификациям, включая Document Schema Definition Languages (DSDL). Многие из новых членов, которые голосовали в пользу OOXML, не проявили интерес к деятельности других рабочих групп. Сразу после первого голосования они исчезли, и это помешало достичь кворума для решения других менее спорных проблем.

Октябрь

В октябре был выпущен Atom Publishing Protocol. APP начал свою жизнь как простой формат для исходящей загрузки (uploading) записей в блог, заменяющий специализированные API, такие как MetaWeblog и WordPress API. Но по мере развития он превратился в нечто значительно большее.

APP есть ни что иное, как полностью основанная на протоколе REST, масштабируемая, расширяемая, защищенная система для публикации содержимого на HTTP-серверах. С одной стороны, это чистый протокол, совершенно независимый от какого-либо конкретного сервера или клиента. С другой стороны, поскольку он не более чем HTTP, его легко реализовать на существующих серверах и клиентах.

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

В некотором хорошем программном обеспечении серверов (например, XML-базы данных eXist) уже начато использование преимуществ APP, а также ведется работа по внедрению APP в несколько клиентских программ. Еще больше будет сделано в предстоящем году. Публикация в Web, в конце концов, станет такой же простой, как и его просмотр.

Ноябрь

В ноябре Mark Logic торжественно представила MarkMail, основанный на XQuery сайт для взаимодействия с архивами электронных сообщений. Согласно Джейсону Хантеру (Jason Hunter):

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

MarkMail в настоящее время индексирует около 500 списков рассылки Apache, среди которых jdom-interest и xml-dev.

Естественно, первое, что сделали пользователи со всей этой мощью, - список ego-surf. Оказалось, что в этой коллекции Майкл Кей (Michael Kay), создатель Saxon, является самым активным пользователем, передающим сообщения (его опережает пара Apache-роботов, передающих commit-сообщения); но на xml-dev слава самого активного участника (более 4000 сообщений ) принадлежит Лену Балларду (Len Bullard). Тот факт, что подавляющая часть сообщений Лена являются многостраничными статьями, еще больше поражает воображение.

Я достиг 10-го места на xml-dev с 1014 сообщениями. Мог бы быть девятым, но пару лет назад, когда поменял почтовые клиенты, мое имя изменилось с "Elliotte Rusty Harold" на "Elliotte Harold", и база данных думает, что это два разных человека. Все еще есть некоторые ошибки в системе. :-)

Декабрь

Декабрь начался с ежегодной конференции IDEAlliance XML 2007, самой большой XML-выставки года. В этом году она проходила в Бостоне. Посещаемость была низкой - всего лишь немногим более 300 участников и 15 участников, выставлявшихся на стендах.

Основная часть выставки была посвящена уже относительно хорошо известным технологиям, по крайней мере, узкой группе XML-разработчиков, которые все еще следят за данной темой. Как и в прошлом году звездой выставки был XQuery, хотя XForms сделал приличное представление. XProc, RDFa, OpenDoc, Office Open XML, Atom, APP и JSON также были предметами определенного интереса и кулуарных сплетен. Web-сервисы и все, что связано с SOAP, были заметны своим отсутствием. Я не припомню, что бы слышал упоминания этих терминов, за исключением тех случаев, когда они сопровождались фразой "а сейчас мы перешли на REST".

Единственное действительно новое событие на выставке исходило из неожиданного источника: Intel. Хотя компания более известна как производитель аппаратного обеспечения, она также разрабатывает программное обеспечение, максимально использующее преимущества своих процессоров. Intel пришла на выставку показать Intel XML Software Suite, набор встроенных X86-библиотек для Linux и Windows, обеспечивающих действительно быструю XSLT-обработку, вычисление XPath, проверку корректности XML Schema, синтаксический анализ Document Object Model (DOM) и Simple API for XML (SAX). Также в этот набор включена основанная на JNI (Java Native Interface) оболочка (wrapper) для платформы Java ™.

Intel утверждает, что библиотека в два раза быстрее XSLTC и Xalan для XPath и XSLT, а также в шесть раз быстрее, чем Xerces-C++ для грубого анализа больших (более 100 мегабайт) документов. Анализатор достигает этого путем использования структур данных символьных таблиц, занимающих меньше памяти, и распределения обработки на несколько потоков между двумя и более ядрами. Это работает для документов размером от 300 MB до 32 GB. Для меньших документов накладные расходы данной методики проигрывают в скорости традиционным анализаторам.

У меня не было возможности самостоятельно проверить данные утверждения, но если они правдивы, это очень интересно. Xerces не является самым быстрым синтаксическим анализатором, но шестикратное ускорение - это лучшее из того, чего кто-либо добивался до сих пор. Удивительно, что Intel сделала это со стандартными API, SAX и DOM. Лично я не сомневаюсь в том, что можно улучшить производительность XML-анализа, но я ожидал, что это потребует новых API, спроектированных на повышенную производительность. Оказывается Intel в них не нуждается.

Декабрь обычно заканчивается громкими заявлениями о том, что рабочие группы W3C завершат свою работу и выдадут спецификации до рождественских праздников. На W3C неделя до Рождества по традиции является единственным периодом максимальной занятости в году. Следите за http://www.w3.org/TR/. Возможно, вас ждут сюрпризы. :-)

Резюме

2007 был продуктивным годом для XML. Наибольший шум и кипение страстей окружали область стандартизации форматов офисных документов, борьба в которой выплеснулась даже на страницы популярной прессы. (Кто бы мог подумать, что мы будем читать о стандартах ISO для XML-форматов в Wall Street Journal ?)

Но если бы мне предстояло определить самое интересное событие года, я бы мучительно выбирал между продолжающимся медленным развитием XQuery, APP и XForms. Все они потенциально могут радикально изменить инфраструктуру программного обеспечения, лежащую в основе Web. XForms - это радикально новая платформа разработки клиентских приложений, XQuery - это радикально новая платформа разработки серверных приложений, а APP соединяет их вместе. Из них троих к серьезному промышленному использованию готов XQuery, а APP приближается к этому. Следите за предстоящими в 2008 году большими событиями, связанными с ними. XForms отстает и, возможно, немного опаздывает на вечеринку, но я надеюсь, что он успеет до закрытия дверей. В любом случае, будущее XML в Web выглядит более обнадеживающе, чем когда-либо.


Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=18555