grouping by group-adjacent=”boolean(self::lb)”

A project I was doing some work for had some input that looked like: What they wanted as output was a table-layout (icky) that aligned two nested tables of the original and the transliteration like: If we ignore the icky … Continue reading

Posted in TEI, XML, XSLT | Leave a comment

Teaching in Helsinki

I was recently invited to Helsinki by Varieng to teach a workshop on TEI XML, and specifically on TEI XML concentrating on transcription. The workshop slides and materials are at Though these were largely based on the TEI Summer … Continue reading

Posted in TEI | Leave a comment

simple dynamic transformation of xml with htaccess, php, and xslt

I often transform from TEI XML to XHTML as part of projects, but in some instances it is more difficult to manage using things like the eXist XML Database or Apache Cocoon, or even AxKit. This is because the hosting … Continue reading

Posted in other, TEI, XSLT | Leave a comment


Until December 2009 I worked on the ENRICH project, and as it has now finished, I thought that I should reflect on some of what the project has done and the aspects we’ve been involved with here in Oxford. For … Continue reading

Posted in TEI, XML | 4 Comments


I have just finished my poster for DRHA 2009 which is about the TEI-Comparator that RTS worked on for the Holinshed Project. My poster is available online in PDF and PNG formats. (Though for the record it was created in … Continue reading

Posted in TEI | 6 Comments


Rehdon asked me about giving @xml:id attributes to things, so I whipped up this quick XSLT stylesheet. Some people prefer to use generate-id() to get a truly random and unique ID without semantic baggage. In many cases, where IDs are … Continue reading

Posted in TEI, XSLT | 2 Comments

Evaluate a string as an XPath

Looking at ways to process a suggested change in TEI P5, I wanted to test that there is a straightforward way to evaluate a string that exists in a document as if it was an XPath you had included in … Continue reading

Posted in TEI | 6 Comments

XIncluding portions of TEI Documents

‘Leoba’ another time asked me what to do when multiple files want to refer to the same textDesc, msDesc, listPerson or similar elements in their teiHeader. To me, this is the canonical example use-case for W3C XInclude. You can store … Continue reading

Posted in TEI, XML | Leave a comment


‘Leoba’ asks me recently about publicationStmt, wondering: I have always thought that the publicationStmt in the TEI header is to describe the publication of the electronic text, that is the TEI file itself (and the description of fileDesc seems to … Continue reading

Posted in TEI, XML | Leave a comment

Modules vs Model Classes vs Attribute Classes

‘Dr John Smith’ asked me recently to explain the difference between modules and classes in the TEI. Modules basically gather together element definitions into a single group. As the TEI P5 Guidelines say: A module is … simply a convenient … Continue reading

Posted in TEI, Uncategorized, XML | Leave a comment