Use Your Blog for Something Else

Assignment 6 — XML Foundations Fall 2008

Assigned: Tuesday, October 28th, 2008
Due: Tuesday, November 11th, 2008


Write an XSLT 2.0 that transforms your blog into something else, for example tables with statistics. Produce multiple HTML pages from your XML, possibly interlinked.


The main purpose of this assignment is to generate a different representation of the contents of your XML (different from the blog-like HTML produced in Assignment 5). Here are the requirements that your HTML must satisfy:

  • It has to be notably different from the blog-like structure of Assignment 5, which means not centered around the idea of chronologically ordered textual entries.
  • Use the strongly structured and typed data that you have, for example for creating statistics such as rankings or counts. In most cases, having more than the absolute minimum number of 3 entries (which had to be created for Assignment 2) will make that much more reasonable and interesting to work with.
  • You must use the ID/IDREF structures (which had to be created for Assignment 3) for generating the HTML (for example by creating summaries) or even providing navigation within the HTML (by generating anchors and fragment identifiers for creating hyperlinks within the same page).
  • Create a little initial section in the XSLT that checks for errors that are not discovered by DTD validation. If you discover an error by using an XPath, use <xsl:message> to print a warning that something is not as it should be. There must be at least one check in that section.
  • You might want to group items if there is some reasonable grouping that you can use for your data. In a way, as soon as you have dates, though, there always is reasonable grouping that can be done, which is by month and/or by year.

If for some reason you cannot satisfy these requirements with your current XML, please update the XML and the DTD so that they contain all the information that you need to satisfy the above requirements.

Submit the XSLT, the DTD, and the XML instance document. Explain the major steps your XSLT performs.

Creative Commons License Please send comments to
Last modification: Monday, 02-Feb-2009 01:00:13 EST
valid CSS! valid XHTML 1.0!