« Linux: Fedora Core 3 Kernel 2.6.12-1.1372_FC3smp Doesn't Boot | Main | Privacy: Murderer Ratted Out by Customer Fidelity Card »

Thursday, July 28, 2005

Reading List: Persistence, Macros, XHTML, and Tools Download

I have just completed an overhaul of the tools used to produce the reading list document. Previously, while direct links to books were persistent ("permalinks" which did not change when books were added to the list), links to lists of books by author or topic were ephemeral--most of them changed every time a new author or topic was added. The new version creates the names for author and topic index files by transforming the actual author or topic name into a unique form suitable for use as a file name, which guarantees that links to the HTML index files won't break. For example, is is now possible to link directly to books by E. E. "Doc" Smith, or books on economics.

In addition, the text files from which the reading list Web tree is built now may contain macros which are expanded into frequently-used HTML links. A complete link to a book on Amazon.com, including associate program information and target window, may be written as just "<Amazon ISBN>", where ISBN is the book's International Standard Book Number. (Did you know, by the way, that the process of transitioning ISBNs from the current 10-digit standard to 13-digit ISBNs is now afoot, with January 1, 2007 set as the date when the publishing industry is supposed to use 13-digit ISBN-13 numbers exclusively? . . .always scribble, scribble, scribble.)

The HTML files generated for the reading list are now XHTML 1.0 compliant, and a validator button has been added to the navigation panel which validates whatever document is shown in the main document frame. Since the comments for a book may contain arbitrary HTML markup, care must be taken not to use something which violates the XHTML 1.0 standard. The entire book list may be validated by displaying "All Books" and then clicking the validate button. (This is a big file, takes a while to transfer, and may time out; if it does, the individual year documents can be validated successively.)

Finally, the tools used to build the reading list are now available for downloading, as a GZIP compressed TAR archive containing the Perl program which generates the HTML tree and all the support files (style sheets, static HTML documents, images, etc.) it references. Little or no effort has been expended to make these tools and documents portable--while they'll probably work on any system with a recent version of Perl, you'll have to make lots of little changes to customise the results for your own site. This will involve digging into the code, which is utterly undocumented and completely unsupported--you are entirely on your own.

Posted at July 28, 2005 16:28