Состояние и перспективы процесса стандартизации XMLформатов Чаусов Валерий Иванович, компания «Intersoft Lab» e-mail: [email protected] XML (eXtensible Markup Language) – расширяемый язык разметки, в настоящее время устойчиво ассоциируется с понятием стандарта в форматах электронного обмена данными. XML - это метаязык, используемый для определения других, специфических для отдельной области или индустрии в целом, языков описания данных. Таким образом, создание различными разработчиками языков разметки в виде расширений языка XML, неизбежно приводит к появлению множества версий XML-документов, описывающих сходные данные. Стандартизация XML-форматов, как процесс, приводящий к разумной минимизации количества применяемых XML-расширений, является условием интеграции бизнес-приложений в технологиях B2B, B2C, B2P и так далее. В настоящее время вопросы применения XML относятся больше к области теоретических дискуссий и борьбы корпоративных форматов, а не практического его применения. Поэтому большинству разработчиков порой бывает трудно разобраться, какое из существующих расширений XML имеет смысл применять. Дело осложняется еще и тем, что до сих пор нет широко распространенных программных продуктов для работы с XML-документами. Чем сейчас, в основном, могут воспользоваться широкие массы разработчиков: постоянно растущим набором языков описания (например, XML Schema), рабочими версиями отраслевых форматов, парсерами XML-документов и разрозненными версиями XML-серверов. А для практического применения XML необходимо самостоятельно расширять словарь метаданных и дорабатывать программное обеспечение для обработки XML-документов. Поэтому перед многими разработчиками остро стоит вопрос – каким стандартам и программным средствам следует отдать предпочтение, прежде чем решиться идти на затраты, связанные с вхождением в технологию XML? Это сложный вопрос, и вряд ли кто-либо в настоящее время сможет дать на него достаточно обоснованный ответ. В данной ситуации более полезным является широкий обмен информацией о ходе процесса стандартизации XML-форматов и практического опыта их применения. В данном докладе делается попытка выполнения экспресс-анализа условий стандартизации XML-форматов, текущего его состояния и практического применения XML-технологий в современных условиях. Предмет стандартизации Не секрет, что локомотивами IT-технологий являются крупные корпорации, обладающие возможностями инвестировать значительные средства в перспективные направления. Поэтому неудивительно, что прослеживается прямая или косвенная связь между конкретным языком описания XML-документов и программной платформой, его поддерживающей. Например: XML Schema - BizTalk (Microsoft). UDDI, WSDL - WebSphere (IBM). XML Authority - Tamino XML Information Server (Software AG). JXML - Enterprise JavaBean (Sun Microsystems). Таким образом, существенное влияние на формирование отраслевых XML-стандартов оказывает борьба корпораций за рынки, которые пока еще не сформированы. С другой стороны, сама суть XML, создающая условия для интеграции бизнес-приложений от различных производителей, создает основу для организации коалиций и союзов поставщиков приложений для разработки единых стандартов. Вот некоторые примеры результатов работы коалиций, действующих в рамках консорциума W3C, занимающихся разработкой общекорпоративных стандартов (не только в области XML) для различных отраслей: SMIL (Synchronized Multimedia Integration Language), предназначенный для интеграции мультимедийных объектов в синхронизированную мультимедийную презентацию. Эта спецификация является результатом совместной работы представителей более чем дюжины компаний, включая Lucent/Bell Labs, DEC, Philips, Apple, Microsoft, Netscape и RealNetwork WSDL (Web Services Description Language), выступающий в качестве нового webстандарта, предложенного IBM и Microsoft. О его поддержке заявили 23 компании, а непосредственно к предложению присоединились 9, среди которых Allair, Oracle, Hewlett-Packard и другие. SOAP (Simple Object Access Protocol), инициированный Microsoft и поддержанный IBM, Sun Microsystems, Compaq Computer Corp., Intel Corp., Hewlett-Packard, ActiveState Tool Corp., Ariba Inc., Commerce One Inc. и др. Интересное наблюдение – участие IBM в работе над стандартом заставило Microsoft расстаться с привязкой SOAP к своему Biz Talk Server и ввести поддержку стандарта XML Schema. UDDI (Universal Description, Discovery and Integration) - стандарт, служащий своего рода справочником для поиска и отображения различных web-услуг, предложенный в сотрудничестве Microsoft, IBM и Ariba. К ним присоединились Oracle, HP и многие другие (в настоящее время – уже более 130 компаний) UDDI – стандарт, разработанный на базе SOAP и XML. Это своего рода стандарт ведения реестров бизнеса. Что же касается непосредственно языков XML, то в настоящее время существует множество языков описания разметки XML-документов – DTD, TREX, RELAX, XML Schemas, Schematron и другие, придерживающихся как регулярной грамматики, так и правил с использованием выражений для определения утверждений. Частое появление новых версий этих языков, новых языков, а также множество бурных дискуссий об их достоинствах и недостатках свидетельствует о том, что процесс их формирования еще не закончен и сейчас трудно сказать – какие из них будут доминирующими. Существует еще один фактор, оказывающий существенное влияние на формирование отраслевых стандартов – предметный, определяющий область применения XMLдокументов. По сути, именно он и определяет логику развития словарей метаданных, являющуюся основой для отраслевых стандартов. Это самая главная область интересов для разработчиков стандартов XML-документов. Вот некоторые примеры отраслей и разработанных для них форматов: Математический язык разметки MathML (Mathematical Markup Language Specification) – одно из первых расширений языка XML. Электронная коммерция (B2C). В России представлен инициативой по поддержке единого стандарта обмена коммерческой информацией в формате XML от компаний Microsoft, Intel, «1С», «Port.ru», «Price.Ru» и «Extra.RU». В мире подобных стандартов – уже великое множество. Сбор данных в многофилиальной структуре и дистрибуция НСИ (B2P). В России – «Dynamic XML» компании «Intersoft Lab». Интернет-трейдинг (B2C). Представители стандартов - FpML (financial messaging Protocol), XBRL (XML for General Financial Reporting) и другие. Потенциально отраслью может считаться область эксплуатации систем «клиентбанк» (B2B). В России форматы здесь пока никем не представлены. Условия стандартизации Для появления любого стандарта необходимы определенные условия. При этом наличие самого языка XML не является достаточным условием для разработки отраслевых XML- стандартов. Здесь главное - наличие реальных потребностей и возможностей в стандартизации форматов. XML в данном случае может рассматриваться лишь в качестве удобного средства фиксации стандарта. Рассмотрим на примерах, какие условия могут стать определяющими для появления отраслевого стандарта: Неудачный опыт. Несколько лет назад компания «Аладдин» предприняла попытку организации Сообщества по выработке единых форматов обмена данными между банками и предприятиями. В работе Сообщества принимали участие компании-разработчики АБС, бухгалтерских систем, систем «клиент-банк», банки, ФАПСИ. Тогда XML еще никто не предлагал и за основу разработки единых форматов для систем «клиент-банк» был выбран S.W.I.F.T. Но планируемый стандарт так и не был разработан, поскольку не удалось устранить противоречия интересов участников Сообщества. Все же, теоретически, этот стандарт мог быть разработан, если бы в Сообщество входили только банки и предприятия, а также компании-разработчики, не поставляющие на рынок систем «клиент-банк». Удачный опыт. В России к настоящему времени фактически уже сложился стандарт на формат передачи отчетных финансовых показателей кредитных организаций. Это формат программ Банка России. В настоящее время он не имеет отношения к XML, но фактически уже сейчас – это стандарт. Так можно утверждать, поскольку он применяется не только для передачи в Банк России финансовой отчетности кредитными организациями. Он также применяется в целях обмена информацией между коммерческими банками (пример - Клуб банковских аналитиков) и для сбора отчетных показателей в многофилиальных банках. Теперь Банку России достаточно перевести этот формат на XML и в России появится новый отраслевой XML-стандарт без всяких на то усилий. Таким образом, отраслевой стандарт может появиться в двух случаях: Какая-либо мощная структура (или группа) навяжет свой стандарт, который станет доминирующим в отрасли. Найдется основа, позволяющая учесть взаимные интересы участников процесса разработки отраслевого стандарта. Опыт практического применения Как было рассмотрено ранее, единого XML-стандарта, гармонично развивающегося по всем направлениям, быть не может. Этому препятствует: Конкурентная борьба поставщиков программного и аппаратного обеспечения. Наличие различных предметных отраслей, слабо пересекающихся друг с другом. Но, если принять во внимание, что отраслевой стандарт создается с применением конкретного языка описания XML-документов, а также метаданных, определяющих отраслевую направленность стандарта, то можно уже сейчас приступить к формированию стандарта (при наличии условий его создания), в той или иной степени застраховав себя от неудачного выбора языка и платформы. Примером такого подхода в разработке XML-форматов является технология «Dynamic XML». Ее суть заключается в том, что основные усилия сосредотачиваются на формировании словаря метаданных, проработке и расширении состава документов и тэгов. При этом обеспечивается максимально возможная абстракция от конкретной реализации языка. Это позволяет уже сейчас реально применять XML, при отсутствии или при дороговизне программных средств от инициатора языка. Но в то же время существует возможность трансформации XML-документов в развивающиеся языки (в ту же XML Schema). Отличительная особенность технологии «Dynamic XML» заключается в том, что в ней заложена возможность свободного расширения состава тэгов, возможность многократно и оперативно вносить поправки в структуру XML-документов в процессе их развития без остановки эксплуатации системы. Еще одно важное свойство технологии – это «обратное влияние» XML-документа на словарь метаданных, когда появление в документе, поступающем в систему, нового, но корректного с точки зрения концепции, тэга приводит к автоматическому преобразованию метаданных. Из опыта продвижения технологии «Dynamic XML»: Несмотря на то, что концепция, правила и библиотека уже разработанных XMLдокументов открыты для свободного использования, от разработчиков поступают запросы на создание для них форматов, а также просьбы предоставить им систему для развития своего словаря метаданных. Это свидетельствует о том, что действительно присутствует потребность в программном обеспечении для работы с XML и в изучении практического опыта работы. Поступило даже такое, несколько утопическое, предложение: взять законодательные и нормативные документы и перевести все объекты бизнесдеятельности в них определенные - в XML-форматы. Эта работа, конечно, велика по своим затратам, но вполне решаемая. И по силе она лишь крупным государственным НИИ. Но эта работа очень «на вырост». Но конечно, в будущем, в случае ее успешного завершения, это позволит сэкономить колоссальные средства. Каковы перспективы развития отраслевых стандартов в России? Несомненно, применение XML-стандартов в России следует ожидать с большой ориентацией на опыт разработки международных стандартов. В то же время, здесь требуется учет специфики российского бизнеса, который в первую очередь отражается на структуре метаданных, определяющих смысловую нагрузку XML-документов. Поэтому развитие словаря метаданных для планируемого отраслевого стандарта в любом случае не должно сдерживаться текущим состоянием развития языков и программных средств.