XITE: The XML Intelligent Transform Engine

Home

What is XITE?

Requirements

Installation

Download

Examples

License

Documentation

Contact

 

What is XITE?

XITE provides a Java API for transforming XML content using rules-based programming using Java Expert System Shell (JESS) language - a CLIPs-like expert rule system.

XITE(tm) transforms XML input (parameterized as a javax.xml.transform.Source) into XML output (parameterized as a javax.xml.transform.Result). By transform, we mean that XML tags, attributes, and text content can be changed, added, or deleted. While XSLT is useful for simple XML transformations, complex transformations can be achieved with XITE(tm) using simple, high-level, transform rules. These rules express conditions and actions over a "tuple space" of XML content. XITE(tm) dynamically generates XSLT internally, but its use of XSLT is as an "assembly language" for XML transformations.

XITE(tm) is an industrial-strength, TrAX-compliant TransformFactory. XITE(tm) features include:

* SAXSource input, SAXResult output

* DOMSource input, DOMResult output

* Multiple input sources, multiple output results

* Synchronous and asychronous transform modes

* High-performance transforms using SAX pipelines

XITELite(tm) is a fully functional, non-expiring evaluation version of XITE(tm) with limited functionality. The full version of XITE(tm) implements additional features such as:

* A high performance, SAX-based XML serializer/deserializer

* A fully TrAX-compliant transform interface.

* The ability to delete or change XML elements

* Support for JESS modules and all JESS 6.0 functions

* XITE(tm) API methods for output-only transforms (Xite.write() methods)

* Dynamic generation of XSLT

More information about purchasing and licensing the XITE(tm) toolkit is available at http://www.sphere.com/

 

 

========================================================================

 

More information is available about XITE(tm) at http://www.sphere.com/

================================================== Requirements ==================================================

* JDK1.3 (J2SE) or higher (visit http://java.sun.com/ to download the latest Java Developer's Kit (JDK))

================================================== Installation ==================================================

* Install JDK1.3 or higher (visit http://java.sun.com/ to download the latest Java Developer's Kit (JDK))

* Install XITELite(tm) by unzipping the XITELite zip file into a directory. Please preserve the zip'd directory structure.

* Make sure that the JDK tools are on your PATH. This usually means that the jdk1.X/bin directory is on your PATH.

================================================= Examples ==================================================

To run ANY of the examples:

* Change to the subdirectory for any example. For example: For MS Windows OS: cd .\examples\hello_world For UNIX, Linux, etc.: cd ./examples/hello_world

* Run the "setpath" script found in that subdirectory: For MS Windows OS: setpath For UNIX, Linux, etc.: source setpath.sh Each example subdirectory contains a README.txt file that describes that particular example. The primary tool used in the examples is the com.sphere.xite.Transform program. The com.sphere.xite.Transform program is a command-line tool for using XITELite(tm) rules to transform XML content. Source code for the Transform command-line tool is provided in XITE(tm) and XITELite(tm) in the file ./src/com/sphere/xite/Transform.java. The included examples are:

* examples/helloworld A simple message filtering example. This example demonstrates adding nodes and attributes via rules.

* examples/stocks Transform XML stock info to include BUY/SELL/HOLD orders. This example demonstrates adding nodes and attributes via rules and using Java calls from XITE(tm). * examples/HIPAA Transform XML-encoded healthcare records via HIPAA compliance rules based on user roles and data semantics.

* examples/DataSecurity Filtering XML data via a simple role-based access model using JavaBeans, default rules, and exception rules. There are additional examples using XITE(tm) within servlets (XiteServlet), filters (XiteFilter), and a XITE(tm) JSP custom tag library (XiteTags) available at http://www.sphere.com/ (Sphere's home web site).

================================================== Documentation ==================================================

The XITE(tm) rule language manual (XITE.pdf) is included in this distribution. More information about JESS is available at http://herzberg.ca.sandia.gov/jess/ (the JESS home web site). Javadoc style documentation is also available for the XITELite(tm) Java API in the "doc" subdirectory of this distribution.

================================================== Apache License==================================================

This product includes software developed by the Apache Software Foundation (http://www.apache.org/).

================================================== Notes ==================================================

XITELite(tm) is a fully functional, non-expiring evaluation version of XITE(tm) with limited functionality. The full version of XITE(tm) implements additional features such as:

* A high performance, SAX-based XML serializer/deserializer

* A fully TrAX-compliant transform interface.

* The ability to delete or change XML elements

* Support for JESS modules and all JESS 6.0 functions

* XITE(tm) API methods for output-only transforms (Xite.write() methods)

* Dynamic generation of XSLT

More information about purchasing and licensing the XITE(tm) toolkit is available at http://www.sphere.com/