|
From: Sean M. <sea...@pr...> - 2002-02-03 19:53:45
|
All, Version 6 released. Sourceforge playing up on me. Best to follow the link on xpipe.sourceforge.net. CVS not updated yet. Lots of changes, reorgs and new stuff. In particular sample XPipe and Executive. Feedback welcome. First part of the updated README below. I'm off to visit with my family. regards, Sean ===== $Id$ Welcome to XPipe Source Version 0.6 - 03 Feb 2002 Prerequisites: Java 1.2 or higher Jython 2.1 or higher (http://www.jython.org) A Relax NG validator such as (http://www.thaiopensource.com/relaxng/jing.html) or Sun's MultiSchema Validator (http://www.sun.com/software/xml/developers/multischema/) An implementation of JAXP 1.1 (http://java.sun.com/xml/jaxp/index.html) JDOM (http://www.jdom.org) (Only required if you are doing development) Installation Instructions: Install Jython etc as per the instructions that come with those packages Unpack the Xpipe0.6.tar/zip into some suitable directory (\xpipe in what follows) Set the environment variable XPIPE_HOME to the installtion directory Ensure that the xpipe directory is on the Jython module search path. To do this make an entry such as the following in the registry file that ships with Jython # Seans Python Path for XPipe work python.path = d:\\xpipe;d:\\xpipe\\jython\\Lib Ensure that the necessary jaxp1.1 modules are on your classpath e.g xerces.jar xalan.jar (Note that there is no longer a jaxp.jar). With this release you can: Install XComponents Execute XComponents Unit Test XComponents Install XPipes Execute XPipes Unit Test XPipes Details of how to test this release below. First, the main changes: Version 0.6 Changes ------------------- Major code re-org affecting every line of code in the system. Done to conform to Java best practices re naming conventions, packages etc. Ant based build Instigated XPipe schema XPipe Object Model XPipe Catalog Generator XPipe Datasheet Generator XPipe Installer XPipe Unit Tester EPipe Executor DTDs for XPipe and XComponent models. Note that RelaxNG version is normative. Made ExecuteXComponent.py useful as standalone program - will accept command line arguments for what component, input file, output file, and log file to use. Fixes to Installation Instructions Java XComponent Object Model by David Starr checked in. New component from David Starr: xc4.xco - generate XComponent HTML documentation using XSLT NetBeans based XComponent Editor from David Shalamberidze checked in. Testing this Release: (The tests for the Version 0.4 release still apply. Note there are some new XComponents to play with.) The focus of this release is the the XPipe model. It is now possible to: Install XPipes Execute XPipes Unit Test XPipes A sample XPipe is provided in the xpipes directory (xp0.xpi). It is a null transformation XPipe. Its purpose in life is to replicate an input XML file on its output. This might not sounds very useful but it is as it is the first step towards really useful transformations. xp0.xpi takes the scenic route to a null transformation - it routes files through three XComponents: a Jython based null transformtion (xc1.xco) an XSLT based null transformation (xc2.xco) and a Java based null transformation component (xc3.xco) Here's how to test it. Set XPIPE_HOME to whereevery you have installed XPipe Install the xp0.xpi pipe into some suitable directory (testdir here): jython InstallXPipe.py xp0.xpi testdir You will see lots of messages as the pipe is installed. <testdir> should have a top level structure like this: 03/02/2002 18:45 <DIR> . 03/02/2002 18:45 <DIR> .. 03/02/2002 18:45 <DIR> failed 03/02/2002 18:45 <DIR> incoming 03/02/2002 18:45 <DIR> outgoing 03/02/2002 18:45 <DIR> test0000 03/02/2002 18:45 <DIR> xcomponent0000 03/02/2002 18:45 <DIR> xcomponent0001 03/02/2002 18:45 <DIR> xcomponent0002 03/02/2002 18:45 47 XPipe.html Each of the three components that make up this pipe have been laid out in subdirectories - the one unit test for this xpipe - test000 is also installed. Create a little XML file - in.xml like this: <foo> Hello world </foo> Execute the pipe on this file like this: jython ExecuteXPipe.py testdir in.xml out.xml log.log When this completes you should have a file out.xml that looks like this: <?xml version="1.0" encoding="UTF-8"?> <foo> Hello world </foo> and a log file looking something like this: path = '/test' Input File = 'in.xml' Output File = 'out.xml' Log File = 'log.log' Executing XComponent 0: (\test\xcomponent0000\incoming\in.xml,\test\xcomponent0001\incoming\in.xml,/test\Log0000.log) Executing XComponent 1: (\test\xcomponent0001\incoming\in.xml,\test\xcomponent0002\incoming\in.xml,/test\Log0001.log) Executing XComponent 2: (\test\xcomponent0002\incoming\in.xml,out.xml,/test\Log0002.log) The file in.xml have been daisy chained through a Java component, an XSLT component and a Jython component. Now all we need are some useful XComponents:-) Notes: All the "commands" in XPipe will be available in Jar form as soon as I sort out a wee problem with the jython compiler and SAX. xc5.xco - shows sample syntax for Exec Xcomponents - This is for discussion only and is not implemented yet http://www.propylon.com |