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


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

adding word-level markup

Rehdon and snail and others occasionally have asked me recently about marking up words inside another element where there may be markup (sometimes containing more than one word) inside this so I thought I’d write it up. So for example … Continue reading

Posted in XML, XSLT | 4 Comments

XSLT2 collection() with dynamic collections from directory listings

Something I didn’t know about XSLT2’s collection() function. I had previously used it in the form: where docs.xml has a structure of: You can then address, via the variable, the structure of those files blort1 and blort2 and iterate over … Continue reading

Posted in XML, XSLT | 1 Comment

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