Template Data Interface (TDI)

TDI (/ʹtedɪ/ [1]) is a markup templating system written in python with optional speedup code written in C. Unlike most templating systems the TDI does not invent its own language to provide functionality. Instead you simply mark the nodes you want to manipulate within the template document. The template is parsed and the marked nodes are presented to your python code, where they can be modified in any way you want.

TDI is currently available for python2 versions only (starting with python 2.3). Python 3 is not supported yet.

Table of Contents

There’s also a dedicated Search Page (you need javascript for it to work). A generated API documentation is available as well.

Development Status

TDI has proven its performance and stability in high load production environments, which means, it works and it’s stable. However there are still some kinks, missing features and API mistakes which are subject to change until TDI reaches version 1.0. So, development wise it’s effectively an alpha release right now.

The next thing to do is to fill in the major documentation blanks, so people interested in trying out TDI are not left in the dark.

Update: The documentation is still in the works (as you can see), but a lot of stuff has been fixed and improved, so it’s time for a new release.

License

TDI is available under the terms and conditions of the “Apache License, Version 2.0.” You’ll find the detailed licensing terms in the root directory of the source distribution package or online at http://www.apache.org/licenses/LICENSE-2.0.

Download

Source Packages

Integrity Check

There are hashes (MD5, SHA1 and SHA256) of the download packages stored in the digests file. In order to check the integrity of the downloaded file, use a tool like md5sum (or sha1sum, sha256sum accordingly), e.g.:

$ md5sum -c tdi-0.9.8.9-dev-r3194.digests
tdi-0.9.8.9-dev-r3194.tar.bz2: OK
tdi-0.9.8.9-dev-r3194.tar.gz: OK
tdi-0.9.8.9-dev-r3194.tar.lzma: OK
tdi-0.9.8.9-dev-r3194.zip: OK

In order to check the integrity of the digest file itself, you can check the PGP signature of that file. The file is signed by André Malo, Key-ID 0x8103A37E:

$ gpg --verify tdi-0.9.8.9-dev-r3194.digests
gpg: Signature made Wed Sep  1 01:13:50 2010 CEST using DSA key ID 8103A37E
gpg: Good signature from "Andre Malo <nd@apache.org>"
gpg:                 aka "Andr\xe9\x20Malo <nd@perlig.de>"
gpg:                 aka "Andre Malo <ndparker@gmx.net>"

Vendor Packages

There are no vendor packages available right now.

Author Information

TDI was written and is maintained by André Malo.

Acknowledgements

First of all I’d like to thank the author of HTMLTemplate. At the time I started experimenting with document tree based template systems, HTMLTemplate was short-listed. However, it had a different license back then, which was unacceptable for my purposes and also missing some features, so TDI was grown in the first place.

Various people helped developing and improving TDI itself. They are listed in alphabetical order:

  • Sebastian Dauß
  • Jens Michlo
  • Javier Rodriguez-Stegmaier
  • Roland Sommer
  • Astrid Stolper

[1]The pronunciation came up while discussing TDI at the breakfast table. Once our little daughter picked it up and asked for her “teddy...?”. [2]
[2]Well, the joke is easier to understand, if you’re speaking German at your breakfast table.