[tei-council] TEI model classes future directions

Sebastian Rahtz sebastian.rahtz at oucs.ox.ac.uk
Wed May 24 04:37:31 EDT 2006

James Cummings wrote:
> Sebastian Rahtz wrote:
>> So what do the rest of you feel? do you
>>   A.  not understand the technical argument
>>   B.  not care, it's nerdy detail the editors should sort out
>>   C.  feel violently that this is bad technological change for change's sake
>>   D.  just _love_ the idea
>>   E.  think that the immediate problems it may solve can
>>         be better dealt with another way, so we don't need
>>         to decide.
> F. I care, and believe it to be a good idea, but would like to see more
> explanation of how it works.
thats A, then :-}


model.foo, with members a, b and c,
has a <classSpec> which says
"generate='alternate sequence sequenceOptional'".
On processing that generates three patterns/entities:

  model.foo  = a | b | c
  model.foo.sequence = a, b, c
  model.foo.sequenceOptional = a?, b?, c?

in the content model for any given element you can choose which of these
patterns to refer to.

There are two downsides:

 a) in RELAXNG, it is idiomatic to say
         model.foo |= bar
    to extend model.foo with the bar element as an alternate.
    Obviously if you say model.foo.sequence | = bar you end up
        a, b, c | bar
   which is not what you meant :-}

   Answer: our class models are not RELAXNG patterns which are extensible

 b) the order of a, b, and c is determined by the order
   in which they are declared in the source ODD
   (ie the source of P5)

Sebastian Rahtz      

Information Manager, Oxford University Computing Services
13 Banbury Road, Oxford OX2 6NN. Phone +44 1865 283431

OSS Watch: JISC Open Source Advisory Service

More information about the tei-council mailing list