[Zope-Annce] [ANNOUNCE] Ariel Partners releases XMLTransform 0.8.0

Craeg K Strong cstrong@arielpartners.com
Wed, 28 Aug 2002 00:56:18 -0400


XMLTransform enables Zope users to associate an XSLT transformer with an XML 
document that automatically renders the result of the transformation when 
called. It can behave like either a Page Template or a DTML Method. There are no 
constraints on the type of Zope objects used for the XML or XSLT. In fact, the 
content may cobbled together from multiple sources, as long as the final content 
may be obtained as well-formed XML from a single object for each.

An XMLTransform is a Zope object that links an XML document to a desired XSLT 
script. The XMLTransform automatically runs the XSLT transformation and renders 
the results when accessed through DTML or page templates.

An XMLTransform object contains neither the XML source document nor the XSLT 
transformer. Instead, it obtains each of them from two separate Zope objects, 
whose IDs are recorded as properties. In this way, an XMLTransform object 
represents an association between an XML document and a transformer.

This feature differentiates XMLTransform from other XML/XSLT-based Zope 
products, in that it recognizes the fact that there is often a many to many 
relationship between XML documents and XSLT transformers.

The XML source pointed to by an XMLTransform can come from anywhere, for example:

     * Content retrieved from an SQL database and converted to XML format
     * A DTMLDocument that is an XML file, with portions grabbed from other 
objects via DTML tags.
     * An XMLFile instance (XMLFile is part of the XMLKit Zope product)
     * A CVSFile object that points to an external XML document in a CVS 
repository (CVSFile is part of the CVSFile Zope product)

The only requirement is that the XML be well-formed. In this way, XMLTransform 
can be used to form "pipelines," where the output of one object becomes the 
input of the next.

This product offers a pluggable architecture that makes it easy to plug in 
different processors. It currently works with any of the following combinations:

     * PyXML 0.66 and 4Suite 0.11.1
     * PyXML 0.7.1 and 4Suite 0.12.a2 (8/27/2002 CVS snapshot and later)
     * libxml2 2.4.24 and libxslt 1.0.20 (Python bindings)

Grab it here: http://www.zope.org/Members/arielpartners/XMLTransform

Regards,

--Craeg Strong