- 20 февраля 2002 г.
ebXML - XML-инициатива для электронного бизнеса
Наши читатели неоднократно встречали в статьях и новостях популярный
стандарт для электронной коммерции под интригующим названием ebXML. Однако, что
именно он собой представляет и чем отличается от общей массы финансовых и
бизнес-стандартов, обычно нигде не сообщается. Сегодня, в рамках рассмотрения
темы XML-спецификаций мы расскажем об этом явлении поподробнее.
ebXML, спонсируемый центром UN/CEFACT (Центр Организации Объединенных Наций по поддержке процедур и практики управления, коммерции и транспорта) и консорциумом OASIS (Организация развития структурированных информационных стандартов), в отличие от большинства уже рассмотренных нами стандартов, по сути, представляет собой модульный пакет спецификаций. Эти спецификации предназначены для ведения бизнеса через Интернет предприятиями любого размера и любого географического расположения. С появлением ebXML компании получили стандартный метод обмена данными и бизнес-сообщениями, а также единые условия поддержки торговых отношений, определения и регистрации бизнес-процессов. На базе среды ebXML UN/CEFAST надеется создать настоящий международный стандарт - один из юридически международных стандартов в мире. И для этого есть все основания, поскольку еще до того, как ebXML получил формальный статус стандарта, у него уже были все шансы стать стандартом де-факто ввиду его широкого принятия бизнес-группами, торговыми партнерами и поставщиками электронного бизнеса. Выбившись из целого ряда безликих бизнес-сред, ebXML успешно соединяет двадцатилетний опыт использования EDI (электронный обмен данными, electronic data interchange) с возможностями XML-технологий, устраняя тем самым недостатки EDI, препятствовавшие развитию электронного обмена данными в бизнесе. Архитектура ebXML объединяет спецификации формата сообщений, модели бизнес-процессов, пакет синтаксически нейтральных основных компонент и распределенные репозитории.
История ebXML началась в 1999 году, когда 15 сентября OASIS и UN/CEFAST объявили о рождении новой инициативы - Electronic Business XML Initiative и начале совместных работ по созданию международного проекта стандартизации XML-бизнес-спецификаций. На тот момент бизнес не имел общей XML-среды. Компании использовали в работе множество несовместимых и часто конкурирующих между собой XML-решений. Новая инициатива должна была положить конец неразберихе и внести единообразие и уникальность во взаимодействие бизнес-структур. К тому моменту за плечами UN/CEFAST уже стояла разработка и продвижение множества средств поддержки глобальных бизнес-процессов, включая UN/EDIFACT - международный EDI-стандарт и продолжавшуюся работу над SIMPL-edi и Object Oriented EDI (Объект-ориентированный электронный обмен данными, OO-edi). К концу года к инициативе присоединились более 50 заинтересованных организаций, а о поддержке ее завили более 150 различных компаний. На своем первом заседании Группа разработки ebXML утвердила весьма агрессивную стратегию и поставила задачу сформировать первое предложение стандарта уже через шесть месяцев. Такой график позволял группе реализовать исходный план по завершению программы создания среды ebXML за 15-18 месяцев.
Активность рабочей группы и созданной позднее проектной группы вызвала очередное оживление в рядах потенциальных пользователей и в сентябре 2000 о планах по поддержке ebXML заявили члены Глобальной Коммерческой Инициативы (GCI), охватывающей более чем 850 000 производств и предприятий розничной торговли в мире. К концу осени 2000 года специалисты заговорили о соперничестве трех стандартов - пакета ebXML, разработанной чуть позже него инициативой сетевых торговых площадок и Интернет-бизнеса UDDI (Universal Description, Discovery and Integration) от компаний IBM, Ariba и Microsoft и инициативы XML/edi, появившейся за три года до этого и также направленной на активизацию применения XML в электронном бизнесе. Предсказывалось, что исход борьбы будет зависеть от их актуальности в условиях глобализации экономики.
28 марта 2001 года разработка спецификаций ebXML завершается и для них начинается этап оценки качества. После этого 4 апреля в Нью-Йорке проходит первая полная демонстрация спецификаций ebXML. И вот на итоговой встрече участников инициативы в Вене 7-11 мая подводится финальная черта 18-месячному проекту. С этого момента и по сей день ebXML регулярно обогащается новыми расширениями и реализациями. Подробнее об этом можно прочитать здесь.
Основной идеей сегодняшних спецификаций ebXML является поддержка бизнес-процессов как моделей процессов и их описание с помощью XML. Все разработанные сообщения ebXML также записаны с помощью XML. Однако при этом ebXML способен перемещать любые типы данных - например, бинарный контент или EDI-транзакции. В XML выражены и соглашения торговых партнеров, и интерфейс бизнес-сервисов для реализации этих соглашений. Транспортный уровень (он же уровень доставки) переносит XML- или иные типы информации от одного партнера к другому, а формальный реестр и репозиторий играют роль контейнера для определений этих процессов, словарей и профайлов партнеров. Общие бизнес-процессы смоделированы на базе установленных стандартов моделирования - например, UML (Unified Modeling Language), и хранятся в глобальном реестре. Бизнес-партнеры также регистрируют свои профайлы. Такая согласованность и детализация обеспечивает цельность взаимодействия.
Принятый сегодня стандарт ebXML состоит из трех инфраструктурных компонент и ряда других элементов, например, предназначенных для создания документов, определения бизнес-процессов и т.д. Компоненты инфраструктуры ортогональны по дизайну. В реализации инфраструктуры они могут использоваться как вместе, так и раздельно.
Инфраструктурные компоненты ebXML включают:
- Общий профайл протоколов (Collaborative Protocol Profile, CPP) - определяет структуры XML-данных, описывающие, что именно поддерживает каждый из бизнес-партнеров, и какие компоненты необходимы для ведения электронной коммерции (способы передачи данных, безопасность, процессы, типы документов, телефонные контакты и т.д.
- Реестр и репозиторий (Registry and Repository) - определяет интерфейсы доступа, формат хранения информации и параметры безопасности для любой информации, подлежащей широкому, но безопасному распространению среди действительных или потенциальных торговых партнеров.
- Сообщения (Messaging) - определяет безопасные и надежные способы перемещения данных между торговыми партнерами.
Ниже приведен образец структуры ebXML DTD без учета определений атрибутов. Такое DTD происходит от UML-модели.
ProcessSpecification (Documentation*, SubstitutionSet*, (Include* | BusinessDocument* |
ProcessSpecification* | Package | BinaryCollaboration |
BusinessTransaction | MultiPartyCollaboration)*)
Documentation()
Include( Documentation* )
BusinessDocument (ConditionExpression | Documentation)*
ConditionExpression ( Documentation*)
SubstitutionSet (DocumentSubstitution | AttributeSubstitution | Documentation)*
DocumentSubstitution (ConditionExpression | Documentation)*
AttributeSubstitution (Documentation*)
Package( Documentation*, (Package | BinaryCollaboration |
BusinessTransaction | MultiPartyCollaboration)* )
BinaryCollaboration( Documentation*, InitiatingRole, RespondingRole,
(Documentation* | Start | Transition | Success | Failure |
BusinessTransactionActivity | CollaborationActivity | Fork | Join)*)
InitiatingRole (Documentation* )
RespondingRole( Documentation* )
Start( Documentation* )
Transition(ConditionExpression | Documentation)*
Success(ConditionExpression | Documentation)*
Failure(ConditionExpression | Documentation)*
Fork( Documentation* )
Join( Documentation* )
BusinessTransactionActivity( Documentation* )
CollaborationActivity( Documentation* )
BusinessTransaction( Documentation*, RequestingBusinessActivity,
RespondingBusinessActivity)
RequestingBusinessActivity(Documentation*, DocumentEnvelope )
RespondingBusinessActivity(Documentation*, DocumentEnvelope* )
MultiPartyCollaboration( Documentation*, BusinessPartnerRole* )
BusinessPartnerRole(Documentation*, Performs*, Transition*)
Performs( Documentation* )
Transition( Documentation* )
Пример определения одного из элементов структуры:
Business Transaction (Бизнес-транзакция)Название элемента: BusinessTransaction
Контентная модель:
<!ELEMENT BusinessTransaction (Documentation*, RequestingBusinessActivity,
RespondingBusinessActivity)>
<!ATTLIST BusinessTransaction
name CDATA #REQUIRED
nameID ID #IMPLIED
pattern CDATA #IMPLIED
beginsWhen CDATA #IMPLIED
endsWhen CDATA #IMPLIED
isGuaranteedDeliveryRequired (true | false) false
precondition CDATA #IMPLIED
postCondition CDATA #IMPLIED>
Определение:
Бизнес-транзакция представляет собой обмены бизнес-информацией и бизнес-сигналами между двумя коммерческими партнерами . Такие обмены должны происходить в согласованном формате, последовательности и временных рамках. Если какое-то из соглашений нарушается, транзакция прерывается и весь обмен бизнес-информацией и бизнес-сигналами должны отвергаться.. Бизнес-транзакции могут быть формальными, как при формировании онлайнового предложения/принятия коммерческих контрактов и неформальными, как в случае распространения объявлений о выходе продукта. |
Родительские элементы (Parents):
- Package

Атрибуты:
Имя атрибута | Определение | Значение по умолчанию |
Name | Определяет имя Бизнес-транзакции. | Ввод обязателен. |
NameID | Версия имени XML ID | Необязательный |
Pattern | Необязательная ссылка на модель, служащую основой данной транзакции.В версии XML Schema тип данных будет xsd:anyURI | Необязательный |
BeginsWhen | Описание внешнего для транзакции события, обычно запускающем эту транзакцию. | Ввод необязателен. |
EndsWhen | Описание события, внешнего для данной транзакции, обычно заставляющего транзакцию завершиться. | Ввод необязателен. |
IsGuaranteedDeliveryRequired | Оба родительских элемента должны прийти к соглашению об использовании транспорта, гарантирующего доставку | Ложь (False) Допустимые значения: {правда, ложь} {true, false} |
PreCondition | Описание состояния, внешнего для данной транзакции и необходимого до начала транзакции. | Ввод необязателен. |
PostCondition | Описание состояния, не существующего до выполнения данной транзакции, но появляющейся как результат выполнения этой транзакции. | Необязательный. |
Подробнее спецификацию можно посмотреть здесь.
На данный момент среди сторонников ebXML встречаются самые различные фирмы, так или иначе связанные с электронным бизнесом. Среди них можно назвать такие организации и группы, как eBES, e centreUK, Korea Institute for Electronic Commerce, Open Applications Group, Open Travel Alliance, RosettaNet, Tradegate ECA. В число пользователей спецификаций ebXML входят и такие крупные поставщики и потребители, как Bind Systems, Care Data Systems, Commerce One, Data Access Technologies, Documentum, Edifecs, Fujitsu, Future Three/Synapz, IPNet Solutions, Korea Trade Network, PeopleSoft, Pointgain, SAA Consultants, Schemantix, Sterling Commerce, TIE Holding NV, Viquity. Реализации ebXML также носят самые разнообразные формы. Он применяется и в области автомобильных розничных продаж (Automotive ebXML Messaging Interoperability Pilot), в платформе сбора XML-Java-компонент для Web Services (Component-X), в реализации центрального реестра и репозитория (KIEC) и во многих других прикладных разработках.