RomXML
Toolkit Overview
The use of XML is a powerful approach to the
exchange of information between embedded devices and desktop or
server machines, but general purpose XML parser support is generally
prohibitive in the constrained resources of an embedded device.
Allegro’s RomXML toolkit addresses the primary need for
embedded XML support - to efficiently translate between XML syntax
and internal device data structures. This solution provides an
efficient translation between pre-defined C-language structures
and XML-based representations to move data to and from and embedded
device. The included TagBuilder tool is a special purpose offline
XML translator tool that uses dedicated schema definitions to
produce an object definition file in C-language source to be compiled
with the RomXML Parser-Framer code and that drastically reduces
the run-time code and data storage requirements for any specific
application.
RomXML Product Details
The Allegro RomXML embedded XML Parsing-Framing tool provides
a lightweight translation between pre-defined C-language structures
and XML-based representations. By defining the rules for data
translation external to the embedded device, it is possible to
build a small special-purpose XML translator that uses dedicated
vocabulary definitions to reduce code size and data storage size.
This allows the embedded device to move data to other machines
in an XML-based standard format without carrying the overhead
of general-purpose XML tools.
The RomXML embedded XML package uses a special
set of XML tags to define an XML object. The XML object is defined
both with the C-language internal storage structure(s) and the
XML tag set that will be used for the XML-based data interchange.
The RomXML TagBuilder utility program analyzes the RomXML object
definitions and produces an object definition file in C-language
source that is compiled with the RomXML Parser-Framer code. The
object definition file contains the transformation tables that
the runtime RomXML code uses to perform specific translations
for each XML object between the defined C structures and XML tag
set.
The RomXML TagBuilder program uses C standard
library calls for reading and writing the XML object definition
files. It is delivered in executable form as a Windows program,
or in source format for developers who wish to host it in a particular
Unix environment.
The RomXML runtime code has a series of calls
that the developer uses to handle the XML objects. A developer
can pass an incoming XML datastream and the XML object definition
to the RomXML toolkit and it will parse the XML datastream into
a C structure. A developer can pass a C structure and the XML
object definition to the RomXML toolkit and it will prepare an
XML datastream by framing the data from the C-language structure
with the appropriate XML tags.
XML documents may be transmitted to and from
other systems in a number of ways. The RomXML embedded XML toolkit
is integrated with the other Allegro products so that XML documents
may be transmitted as HTTP objects using the RomPager embedded
Web server, or the RomWebClient embedded HTTP client toolkit.
This means that support for Web services such as SOAP or XML-RPC
is also available when using RomXML with RomPager or RomWebClient.
XML documents may also be sent and received as email attachments
using the RomMailer or RomPOP embedded email packages.
RomXML is also available as a stand-alone
package to handle XML datastreams that are transmitted using other
techniques. RomXML works with any RTOS and TCP environment
^TOP OF PAGE |