Forum OpenACS Development: ANNOUNCE: tDOM 0.9.0

Posted by Rolf Ade on
Some demand (and, to be fair, also some civilized encouragement)
finally pushed me to cut a new tDOM release.

Besides the fruit of the careful gardening of the as mature recognized
core over the years there are also a couple of new features. The
probably most prominent ones are (in no special order):

- a new HTML5 parser (optional at build time, needs the gumbo library)

- a JSON to DOM parser and a way to create JSON data

- more capablilities of the *FromScript way of creating DOM trees

See the CHANGES files in the top-level directory of the source
distribution for a more detailed list and the timeline of the official
tDOM repository at for the complete list of changes.

For downloads and other information see the README below.

Special thanks to Ashok Nadkarni (aka apn), who modernized the windows
build system and provided the windows binaries.


The README follows:

    tDOM - a XML/DOM/XPath/XSLT/HTML/JSON implementation for Tcl
                          (Version 0.9.0)

This directory contains a freely distributable thread-safe extension
to Tcl/Tk called tDOM.

tDOM was started by Jochen Loewer ( and developed
by Jochen and Rolf Ade ( with contributions by Zoran
Vasiljevic ( Since more than a decade it is
maintained and developed by Rolf Ade.

tDOM contains:

    *  for convenience expat 2.2.0, the XML parser originated from
      James Clark, although you're able to link tDOM with other
      expat versions or the library provided by the system.

    *  building a DOM tree from XML in one go implemented in C for
      maximum performance and minimum memory usage, and DOM I and II
      methods to work on such a tree using either a OO-like or a
      handle syntax.

    *  a Tcl interface to expat for event-like (SAX-like) XML parsing.

    *  a complete, compliant and fast XPath implementation in C
      following the November 99 W3C recommendation for navigating and
      data extraction.

    *  a fast XSLT implementation in C following the W3C Recommendation
      16 November 1999.

    *  optional DTD validation.

    *  a JSON parser which parses any possible JSON input into a DOM
      tree without losing information.

    *  an efficient and Tcl'ish way to create XML and HTML documents
      and JSON string.

    *  as build option an interface to the gumbo HTML5 parser, which
      also digests almost any other HTML.

    *  an even faster simple XML parser for trusted XML input.

    *  additional convenience methods.

    *  and more.


    The documentation is included into the source distribution in HTML
    and man format. Alternatively, read it online starting at


    The development repository is hosted at and is
    mirrored at You are encouraged to use

    If you insist on using an older tDOM with lesser features and
    probably more bugs, you should use the latest release 0.9.0. Get
    the source code release from or

    Windows binaries (32 bit as well as 64 bit) of the 0.9.0 release
    are also available. Get it from and

    The provided windows binaries include (statically linked) the
    HTML5 parser.


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

        make test
        make install

    Alternatively, you can build the tDOM package in just about any
    directory elsewhere on the fileystem (since TEA-compatible).

    You might also want to do "../configure --help" to get a 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.
    Refer to the README in the win directory for more details about
    building on Windows.

    The compile process will build the tDOM shared library suitable for
    loading into the Tcl shell using standard "package require" mechanism.


    Please head to and click on "New
    Ticket". Log in as anonymous and report your findings. If you
    prefer to have an individual login write Rolf a mail.

2: Re: ANNOUNCE: tDOM 0.9.0 (response to 1)
Posted by Maurizio Martignano on
Dear Rolf,
thank you for having released tDOM version 0.9.0!!!!
I have integrated it in my Windows OpenACS distribution:
Once again thanks,