Technology

For the Technically Inclined...

Jan 2008: Finally found the time to update the site. Changed the navigation from query strings to actual meaningful names - it's about time.

Sept 2006: Site is currently undergoing a redesign and partial re-architecture. Until these changes are finalized, you may encounter some bugs and cross-browser issues that haven't been addressed yet. Do not be alarmed.

2003: Site has been cleaned up. Tables are out, standards-based lean, clean and valid markup is in.

Background:This site was originally conceived in 2001 as an excuse to experiment with XML and XSLT.

The choice of content displayed on this site was somewhat incidental. Although it is a convenient way for me to display my previous work (the discography pages) and my current experiments (the photo pages), I originally chose the discography because the content could be easily structured with XML. The photo section came next as an extension of this idea, since the data model and transformation are very similar.

Technical Overview: This site uses a combination of XML/XSLT, ASP, XHTML and CSS, and is based on an MVC architecture.

A single ASP controller calls various components to assemble a complete "view" (web page).

The actual content of the pages is stored in XML files, XSLT being used to transform the XML into HTML on the server side. The XML is defined with DTD schemas.

Logic is handled by ASP, with the header, footer and left navigation components stored as ASP server-side includes.

TECHNOLOGY: XML+XSLT+ASP+CSS=HTML

Two previous versions of this site are still accessible, for no other reason than that I have enough storage space to keep them.

Version 1 of this site (2001), with pretty much the same content but with old-fashioned, table-based HTML, can be seen in all its glory at this location: www.danielabraham.net/V1. Version 1 already used the same Model View Controller architecture, and the same XML/XSLT/ASP/HTML combination.

Version 2 of this site (late 2003), using the same ASP/XML/XSLT framework but with the old HTML converted to cleaner, leaner, semantic XHTML markup, can be seen here: www.danielabraham.net/V2. Tables, spacers and other unnecessary tags were removed, reducing the average page weight by 50%. Improvements were made to the XSLT; in particular the recursive templates used for the photo gallery and the discography pages were greatly simplified, yielding some performance improvements. Additionally, large portions of the XSLT were rewritten as common generic includes.

Because Version 1 of this site already separated content from display with its use of XML and XSLT, removing all the non-semantic tags was both painless and fast, with changes mostly affecting the XSL files.