fxt - The Functional XML Transformation Tool

fxt - generator of XML documents transformers

-----------------

1. What is fxt

fxt (the functional xml transformer) is a transformation tool for XML documents. fxt generates code to perform transformations of XML documents according to a given specification. The specification indicates how the generated transformation code will process an XML input document. Depending on the specification, the output of the transformation can be another XML document or an integer, string, etc.

fxt is written in the functional language of SML of NJ . SML of NJ must be installed on the host system in order to run fxt. SML programming knowledge is not required. However, it may prove useful for taking advantage of the full computational power of the SML language in the XML document processing.

The idea of fxt is to combine the computational power of SML, a functional programming language well suited for tree processing (which is to what XML document processing mainly reduces),and the expressivity of pattern matching over XML documents, provided by fxgrep, a powerful pattern matcher for XML documents.

------------

2. Version

New: fxt can now use binary match patterns for node selection.

The current release is the release 4.1. Changes from the previous versions are described here.

------------

3. Downloading

The source code for fxt can be downloaded by http. The Copyright note is here.

------------

4. Installation guide

In order to install fxt, you need an SML compiler. The current version of fxt has been tested with version 110.0.7 of SML of New Jersey, but it might also run with other versions. The compiler must have the compilation manager (CM) built in, which is the default when installing SML-NJ.

These are the steps for installing fxt under Unix:

          1. Download and install the latest version of fxp (the XML parser). 
             It suffices to install the fxlib library.
               (http://www.informatik.uni-trier.de/~aberlea/Fxp/); 
          2. Download and install the latest version of fxgrep (the XML
             query tool). It suffices to install the fxgreplib library.
               (http://www.informatik.uni-trier.de/~aberlea/Fxgrep/); 
          3. Download the latest version of fxt (the transformation
             language itself);
          4. Unpack the sources, and change to the fxt directory, e.g.: 

             gunzip -c fxt-4.1.tar.gz | tar xf -
             cd fxt-4.1

          5. Read the COPYRIGHT; 
          6. Edit the Makefile according to your needs. Probably you will only have 
             to change the following: 

             FXP_LIBDIR     is where the fxp library was installed. This should
                            be set to the same path as for the installation of
                            fxp; it must contain the file fxlib.cm. Make sure
                            that fxp was compiled with the same version of SML-NJ.
             FXGREP_LIBDIR  is where the fxgrep library was installed. This should
                            be set to the same path as for the installation of
                            fxgrep; it must contain the file fxgrep.cm. Make sure
                            that fxgrep was compiled with the same version of SML-NJ.             
             FXT_BINDIR     is where the executable will be installed; 
             FXT_LIBDIR     is where the heap image of fxt will be installed; 
             SML_BINDIR     is the directory where the SML executables are found. 
                            It must contain the .arch-n-opsys script from the 
                            SML-NJ distribution, so make sure that this is where 
                            SML-NJ is physically installed; 
             SML_EXEC       is the name of the SML executable. This is the program 
                            that is called for generating the heap image and at 
                            execution of fxt. If sml will be in your PATH at 
                            installation time, you don't need the full path here. 

          7. Compile fxt by typing make; 
          8. Install fxt by typing make install. 

          If you experience problems installing fxt, send me a mail.

------------

5. User guide

The user guide is here.

------------

6. Credits

Authors of fxt are A. Berlea, A. Neumann and H. Seidl. fxt is developed within the DocML project financed by the DFG Research Foundation.

------------

-----------------

A. Berlea (aberlea@psi.uni-trier.de)