Babel Blaster

 

Babel Blaster performs a variety of EAI and eCommerce file conversion tasks.  It is designed to be used with business applications or eCommerce data exchanges in which at least one legacy system does not natively support XML.  Babel Blaster supports the following types of conversions:

Comma separated values (CSV) <->XML
Flat File <-> XML
Electronic Data Interchange (EDI) <->XML
XML <->XML (using XSLT stylesheets and an XSLT utility)

Babel Blaster uses XML as the general (or sometimes referred to as canonical) representation of all other file formats. All transformations between XML formats use XSLT. This means that transformations can be shared and are completely platform independent.

Babel Blaster was designed with a high degree of modularity and with a goal of very easy and simple extensibility. Easy extensibility will aid in enhancements to support other file formats (such as fixed record length block format or native EBCDIC), and data type conversions (such as a variety of date formats to and from the W3C XML Schema language's ISO 8601 date format).

The core of Babel Blaster was developed in "Using XML with Legacy Business Applications" (Addison-Wesley 2003) and graciously made available by the publisher under the GNU General Public License.

Current Version:  0

The current Babel Blaster is composed of the utilities developed in the book.  It is implemented as a set of eight stand alone utilities that can run by themselves or used together in a script in a pipe and filter style:

CSVToXMLBasic - CSV to XML using a uniform row format, a single output document, and a fixed set of element names
XMLToCSVBasic - XML to CSV  using a uniform row format, a single input document, and a fixed set of element names
CSVToXML - CSV to XML using a uniform row format, multiple output documents, and user-defined element names
XMLToCSV - XML to CSV using a uniform row format, multiple input documents, and user-defined element names
FlatToXML - Converts a single flat file with fixed or variable length records to one or more XML documents
XMLToFlat - Converts one or more XML documents to a single flat file with fixed or variable length records
X12ToXML - Converts the transaction sets in an EDI interchange in the X12 syntax (version 004010 or earlier) to one or more XML documents
XMLToX12 - Converts one or more XML documents to a single EDI interchange in the X12 syntax (version 004010 or earlier)

The flat file and X12 utilities both support user-defined element names.

Any stand alone XSLT transformation utility can be used for XML to XML transformations in a chain of conversions.

Two implementations are available:

Java using the Apache Software Foundation's Xerces2 Java Parser
C++ for Win32 using the Microsoft XML Core Services (MSXML)

Version 0 is in maintenance mode.  Check the project page at SourceForge.net for the latest bug fix releases.

Next Version:  1

Version 1.0 is planned as the first major release of Babel Blaster.   It is currently in the requirements planning stage.  Requirements under consideration include:

Supporting the UN/EDIFACT EDI syntax (ISO 9735)
Supporting versions of the X12 syntax later than 004010
A single main program that supports a chain of conversions rather than requiring complex conversions be performed in scripts
Replacing the MSXML with Apache Software Foundation's Xerces-C++

Contact the project leader for information about the next version, to provide comment on requirements, or to participate in the development.

Links

Project page at SourceForge.net   - Please use this page to download the latest releases, report bugs, submit enhancement requests, etc.
Using XML with Legacy Business Applications - The book site at Addison-Wesley.  This is the primary source of user documentation for Babel Blaster.
Installation Information - Supported APIs and environments, installation instructions.
Supplemental Information and Materials - For the book at the author's site.
Babel Blaster User Group - at Yahoo groups.  Provides an e-mail discussion list and a forum for users to share files, XSLT stylesheets, etc.  Join via the link below:


Click to join the Babel Blaster User Group
 

Project Leader

Mike Rawlins

mike@rawlinsecconsulting.com

Sponsored and hosted by:

LogoRawlins EC Consulting

Project support services provided by:

SourceForge.net Logo

Last updated:  August 05, 2003