Purifying and Simplifying

Advanced TEI Customization

Dr James Cummings
@jamescummings

With thanks to @louburnard, @rahtz, the TEI Technical Council, and many others in the TEI Community

http://slides.com/jamescummings/purifying

Down in your <schemaSpec> you add:

@include = no new elements on update, only changes to those included

@except = new elements on update

Element Specifications

New! From TEI Simple

Changing Attributes

Add New Element <specialName>

Pure ODD!
No Relax NG!

You can have as many sets of <alternate> and <sequence>, and sequences of alternates by nesting, as you wish!

 

Combination of @minOccurs and @maxOccurs on:

  • the <alternate> and <sequence> containers
  • the <elementRef> and <classRef> elements

enables the production of highly complex content models.

(Some of which may not be able to be expressed in current schema languages.)

 

Summary

  • Use your ODD for documentation
  • Embed specifications in your prose
  • <elementSpec>: gloss, desc, classes, constraintSpec, model, exemplum, remarks
  • Record your intended processing model(s)
  • You should be modifying attribute <valList> elements
  • Delete classes, use the class system
  • Add new elements (in diff namespace)
  • ODD is now purified of Relax NG:
    • <textNode>, <elementRef>, <classRef>, <macroRef>
    • <alternate>, <sequence>
    • @minOccurs, @maxOccurs, @context

Contact: @jamescummings or tei@it.ox.ac.uk