XML Applications

Date processing

This ISO 8601 library transformation sheet provides a number of named templates for processing dates and times. It is relatively well-commented, though a literate stylesheet system is in development.

Web site development

Most of this Web site was developed as an XML document and generated using an XSLT transformation sheet. There's no DTD for the document at this point; all that's available is the transformation sheet, which is currently largely undocumented. A more complete description of the application is planned as it develops.

This relies on the ISO 8601 library sheet above, and it uses features from the XSLT 1.1 Working Draft to split output into multiple files.

Invoicing system

I keep track of my time for hourly billing using XML documents complying with this invoice document type. Invoices are generated using this invoice transformation sheet (which also relies on the ISO 8601 library sheet and this invoice style sheet).

There is a simple sample and the output from the simple sample available, as well as a more rigorous sample invoice and the output from the more complex example.

The system currently only handles billable hours. It does not handle expenses and billing rates other than hourly; both of these are planned. A GUI is also planned at some point; if anyone else wants to write one, they should feel free (especially if they share).