[tei-council] customization in P5

Lou's Laptop lou.burnard at computing-services.oxford.ac.uk
Sun Dec 18 13:49:53 EST 2005


At present, there are two ways in which I can make a TEI schema.  I can 
either write an ODD and crunch it through the appropriate stylesheet, or 
I can hack together an invocation of the relevant modules using 
constructs specific to my chosen schema language (e.g. a DTD subset for 
DTD language or a RelaxNG schema with rferences to the right patterns) 
.  The constructs I use are quite different for different target 
languages, especially if I want to delete or emend elements or add new 
ones.  In P4, much of chapter ST is given over to explaining how  the 
customization mechanism is implemented in DTD world, but there is no 
discussion at all about how I might combine RelaxNG modules. And I don't 
have the faintest idea how I'd do it in W3C schema, before you ask.

 As I go about revising this chapter, I keep wondering whether or not 
any of this is still needed. If our recommendation is (as I think we 
agreed in Paris that it should be) to express each TEI customization 
declaratively as an ODD, why should we bother people with x.entities and 
things  like <!ENTITY  % TEI.wibble "INCLUDE"> ? If you run your ODD 
through the appropriate stylesheet, what you get out is a flat schema in 
the target language, not one that  invokes a set of modules at all. It 
uses lots of parameter entities, but they are not the ones defined in 
chapter ST.

Some time ago, the Meta group noted that if  we continued to  support 
modifiable DTD fragments, we would have to find some way of 
round-tripping between a TEI DTD modification subset and the 
corresponding ODD. This was not something we wanted to contemplate at 
the time, nor does it fill me with enthusiasm at the moment. Neither 
does the thought of maintaining  multiple ways of doing the same TEI 
customization independent of each other.

I don't have an answer to this and it raises difficult problems. If we 
say that the only means of TEI customization supported is via an ODD 
spec we need to put more thought into specifying exactly what an ODD 
conformant processor does. If we say that there are many means of 
customization, we need to explain all of them in quite some detail. Hmmm.







More information about the tei-council mailing list