Консалтинг и автоматизация в области управления
эффективностью банковского бизнеса

Журнал ВРМ World

Спецификация SOAP 1.2 утверждена как Рекомендация

Пройдя долгий путь, спецификация SOAP 1.2 достигла статуса Рекомендации, что является свидетельством ее надежности, значимости как Web-стандарта, способствующего развитию "принципа согласованности языков, проколов, программных и аппаратных средств, взаимодействующих в среде Web". Так, согласно заявлению, сделанному представителями W3C, по завершении "кандидатского периода" Рабочая группа XML Protocol, получив информацию от организаций-членов консорциума и независимых разработчиков, рассмотрела семь случаев реализации спецификации SOAP 1.2.

В рамках данной Рекомендации опубликовано 4 следующих документа: SOAP Version 1.2 Part 0: Primer ("SOAP версия 1.2, Часть 0: Для начинающих"), SOAP Version 1.2 Part 1: Messaging Framework ("SOAP версия 1.2, Часть 1: Структура обмена сообщениями"), SOAP Version 1.2 Part 2: Adjuncts ("SOAP версия 1.2, Часть 2: Дополнения") и SOAP Version 1.2 Specification Assertions and Test Collection ("SOAP версия 1.2, Часть 3: Утверждения спецификации и Набор тестов").

В документе "From SOAP/1.1 to SOAP Version 1.2 in 9 Points" ("От SOAP 1.1 к SOAP 1.2: девять шагов") описано, какие изменения были внесены в новую редакцию стандарта и что было улучшено.

Модель обработки: версия 1.2 предусматривает четкую модель обработки. Большинство проблем согласования при использовании SOAP 1.1 были вызваны неоднозначностью модели обработки: область видимости атрибута mustUnderstand при обработке сообщения, обработка, выполненная посредниками, и т.д. При рассмотрении SOAP 1.1 Рабочая группа XML Protocol выявила и разрешила около 400 вопросов, обеспечив надежность и недвусмысленность спецификации SOAP 1.2 и ее модели обработки.

Структура присоединения: SOAP 1.2 предоставляет разработчикам независимость от протокола - через структуру присоединения. Построенная на XML Infoset, редакция 1.2 определяет структуру присоединения и объясняет, что является ответственностью механизма, передающего SOAP-сообщения от одного SOAP-узла к другому. Благодаря этому SOAP-процессоры становятся нейтральными по отношению к базовым протоколам и независящими от протокола SOAP 1.2: SOAP-сообщения версии 1.2 могут передаваться HTTP, SMTP и любым другим протоколом, для которого присоединение соответствует этой структуре присоединения. Для улучшения интеграции со всемирной сетью Internet SOAP 1.2 включает присоединения к HTTP. В этой редакции определена функциональность Web Method, а соединение SOAP с HTTP осуществляет поддержку операций HTTP GET и POST. Таким образом, в SOAP реализованы достоинства технологии Web - например, кэши HTTP.

Модель расширений: сила редакции 1.2 - в ее расширяемости. Модель версии 1.1 была переработана и формализована в том смысле, что функциональные возможности и свойства могут быть выражены либо в SOAP-конверте, либо посредством присоединения к базовому протоколу. В результате, версия 1.2 становится очень гибкой и может воспользоваться любой функциональностью, которую может обеспечить базовый протокол.

Основанность на XML Infoset: к существенному изменению следует отнести то, что спецификация SOAP 1.2 основана на XML Infoset. SOAP-сообщение версии 1.2 определяется как Infoset, который передается от одного SOAP-узла к другому. В отличие от SOAP 1.1, которая была основана на сериализации XML 1.0, эта версия не накладывает никаких ограничений на то, как передается Infoset. Она может использовать HTTP и сериализацию XML 1.0 или же совершенное иные средства. Для SOAP-процессоров это не имеет значения.

В документе "SOAP Version 1.2: Frequently Asked Questions" ("Часто задаваемые вопросы о SOAP 1.2") содержится полезная информация о том, что появилось нового в версии 1.2:

  • Было разрешено около 400 вопросов, касающихся версии 1.1 и ранней редакции SOAP 1.2.
  • SOAP 1.2 поддерживает такие Web-стандарты, как XML Schema и XML Infoset.
  • "Транспортный" слой обеспечивает легкое переключение между протоколами, таким как HTTP, BEEP и другими, чтобы отвечать потребностям приложения.
  • Были улучшены и сделаны более прозрачным расширения и обработка этих расширений для лучшей расширяемости и возможности взаимодействия.
  • Усовершенствована генерация сообщений об ошибках.

Локализация: SOAP 1.2 предусматривает локализацию, включая возможность предоставления сообщений об ошибках на разных языках, шифрования, наборы символов. Хотя сами приложения по-прежнему необходимо подвергать операции локализации, это уже отдельный вопрос. В версии 1.2 отсутствуют какие бы то ни было ограничения в отношении какого-либо отдельного языка.

Согласованность: SOAP 1.2 обеспечивает более широкие возможности к взаимодействию, поддержку Web-стандартов и более простой способ развертывать и обновлять приложения. Эта версия также позволяет определять приложения, которые могут лучше масштабироваться благодаря более эффективному использованию Web-инфраструктуры - а именно посредством применения соединений с HTTP.