Skip to content

Starlink/tdom

Repository files navigation


              tDOM - a XML/DOM/XPath/XSLT implementation for Tcl
                          (Version 0.8.3)

		    Jochen Loewer (loewerj@hotmail.com)
                       Rolf Ade (rolf@pointsman.de)

                       with some contributions by:

                 Zoran Vasiljevic (zv@archiware.com)
                

This directory contains a freely distributable (under the Mozilla Public 
License) thread-safe extension to Tcl/Tk called tDOM.


tDOM contains:

    *  the newest version of Expat, the XML parser from James Clark,
       including namespace and DTD support.

    *  a modified version of Steve Ball's Tclexpat, the Tcl interface to 
       expat, for event-like (SAX-like) XML parsing. The modifications
       are for performance improvements, to make the newest Expat
       features (XML namespace) available and for some additional features.

    *  a (partial) DOM I and II implementation in C for maximum
       performance and minimum memory need following the W3C DOM Core
       Level 1 recommendation using a OO-like syntax.

    *  a very complete, compliant and fast XPath implementation in C
       following the November 99 W3C recommendation.

    *  a fast XSLT implementation in C following the W3C Recommendation
       16 November 1999.
    
    *  a (partial) implementation in C of the XPointer (97) navigational 
       functions.

    *  UTF-8 to 8 bit encoding back conversion functionality to support
       Tcl version < 8.1x

    *  optional DTD validation   

    *  additional convenience methods
 
    *  documentation in TMML, HTML and nroff format


COMPILING/USING tDOM

    Depending on your platform, (unix or win) go to the corresponding
    directory and invoke the configure script:

        ../configure
        make 
        make test
        make install

    Alternatively, you can build the tDOM package in just about any
    directory elsewhere on the fileystem (since TEA-compatible).
    
    NOTE: Be sure to have the CC=gcc defined if you're using GCC.

    You might also want to do "../configure --help" to get list of all
    supported options of the configure script. In the "unix" directory
    there is a "CONFIG" file containing some examples on how to invoke
    the "configure" script for some common cases. You can peek
    there. This file also includes a short description of the tDOM
    specific configure options.

    Since tDOM is TEA-compatible you should be able to build it using
    the MinGW build environment for Windows. There is also the MSVC
    nmake file so you can compile the package with Microsoft tools.

    The compile process will build the tDOM shared library suitable for
    loading into the Tcl shell using standard "package require" mechanism.
    Optionally the make process can also generate the "tcldomsh" 
    executable shell with tDOM functionality built-in. You can use this
    shell as any other Tcl shell. To do this, you have to:

        make tcldomsh

    Note, however, that this step is optional.


    Note for Tcl 8.0.5 users:
    -------------------------

    Per default, this release of tDOM links against Tcl stubs
    library. To build it against Tcl8.0.5, use the configure-tcl8.0.5
    script to generate the Makefile.

    If you want to recreate the configure script for building against
    Tcl8.0.5 please edit the "configure.in" file in this directory,
    comment-out the AC_DEFINE(USE_TCL_STUBS) directive and run
    autoconf. Please be sure to use autoconf with version 2.59.


PLATFORMS
    HP-UX-10.20                  (both ansi cc and gcc)
    HP-UX-9.x
    Linux 2.2.5                  (egcs 2.91.66, SuSE 6.1)
    Solaris 2.5.1+               (both gcc and SunWorks compilers)
    W2K                          (VC++ 6.0)
    Mac OS X 10.2.6              (Apple's gcc)

    Other machines and OS's are not tested but should work too. 

Have fun! 

- EOF -