Objective Systems, Inc.  
Домой
Об ASN.1
Продукты
  ASN1C
  ASN.1 в C/C++
  ASN.1 в Java
  ASN1VE
  XBinder™
  ASN.1 API
  FAQ
  Скачать
Web Tools
Open Source
Документы
Услуги
Ресурсы
Продавцы
Клиенты
Карьера
О нас
Пишите нам
Objective Systems, Inc.
Objective Systems, Inc.
Реальный мир ASN.1 и XML решений

XBinder

Обзор XBinder
Зачем использовать привязку данных с XML?
Генерация C/C++ кода по XML Schema
Скачать пробную версию XBinder
Дополнительная документация


Буклет по XBinder

Обзор XBinder

XBinder это инструмент привязки данных C/C++  по определению на XML Schema. Привязка данных XML это процесс, при котором информационные элементы схемы XML преобразуются в типы и функции на языке программирования.

Исходный код, произволимый XBinder компилятором, это  C или C++ текст, который состоит из определений типов и функций кодирования/раскодирования. Это дает полный программный интерфейс (API) для работы со всеми определениями сообщений, описанными в XML Schema.

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

Зачем использовать привязку данных с XML?

Зачем нужен такой продукт как XBinder? Привязка XML данных дает следующие преимущества по сравнению с традиционными XML API, такими как SAX и DOM:

Производительность : Операции, такие как проверка данных, сериализация и десериализация, обычно быстрее для для кода, сгенерированного из схемы XML, чем при работе парсера. Причина этого заключается в том, что анализ схемы выполнен во время компиляции и в код вставленаы только необходимые проверки. В отличие от этого, проверяющий парсер загружает и использует структуру схемы во время выполнения.

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

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

Заметим, что привязка XML данных не всегда лучший выбор для приложений. Если ожидается частое изменение схемы, то потребуется и частая регенерация кода, используемого схемой. Это может быть потенциальным неудобством. Но в случае относительно стабильной схемы, привязка данных XML может быть хорошим выбором.

XML Schema to C or C++

XBinder diagram

Текущая версия XBinder способна создавать C или C++ исходный код по заданной спецификации на XML Schema. Генерируемый код использует библиотеку, состоящую из набора низкоуровневых C функций для кодирования и раскодирования базовых типов.  Собщения на XML генерируются за счет заполнения структуры и последующего вызова общей функции кодирования. В других подобных продуктах этот процесс называется маршаллингом или сериализацией. XML сообщения могут быть разобраны в эквивалентные C структуры. В других продуктах это называется анмаршаллингом или десериализацией.

В дополнение к C или C++ коду для кодирования или раскодирования XML сообщений, может быть сгенерен код для отображения содержимого структур в текстовом виде и для заполнения структур тестовыми данными. Функции печати помогают при отладке, т.к. позволяют легко просматривать содержимое структур. Тестовые функции дают не только возможность тестировать сгенерированный код, но и являются шаблоном, который помогает пользователям заполнять структуры для кодирования в XML.

Также возможно генерировать makefile, который совместим с GNU make или Microsoft Visual C++ nmake утилитами, для конкретного проекта.

Скачать >> Купить >>

Домой  |  Об ASN.1  |  Продукты  |  Услуги  |  Ресурсы
Продавцы  |  Клиенты  |  Карьера  |  О нас  |  Пишите нам

Copyright © 2001-2006 Objective Systems, Inc.
All Rights Reserved.