TEI META Task Force: Report to Council, 20 Sep 2004 [MEW12]


Contents

This report should be read in conjunction with the other reports at http://www.tei-c.org/Activities/workgroups/META/ . It follows on from the report prepared for the Council meeting in May 2004 (MEW 11), and uses the same section headings.

Papers were presented in August at the Extreme Markup conference in Montreal, by LB and SB/JF, continuing to tease out details of the TEI literate programming approach in a public forum.

The ODD language should now be regarded as in a state of ‘code freeze’, to allow the editors and others an extended period of stable experimentation and testing.

A complete copy of the current state of P5, with all associated tools (Roma, stylesheets, DTDs, Schemas etc) will be available on CD-ROM at the Members meeting in October.

Revision of ODDs

The ODD language has changed again since the last report (to Council on the phone meeting of July 2nd 2004), as a result of experiments with writing extensions in ODD by Laurent Romary, and the ongoing work by the editors to implement the proposed new <choice> element. The latter exercise threw up a variation of Durand Conundrum, in that SB initially wanted an attribute which was to be dependent on existence of child elements. The ODD language cannot model this constraint, which might have argued for either a complex revision, or adoption of pure Relax NG à la Durand; in the event subsequent discussion about <choice> seems to have made the need for the constraint much less likely, so no changes have been made to the ODD specification.

The major changes since July are:
  1. The interpretation of the ODD language was changed to permit the changing of class attributes, now known as the ‘Romary Request’. The effect of this is to allow, for example, an element to provide a new set of values of an attribute (eg type) which it inherits from its class membership.
  2. The <schema> element is replaced by <schemaSpec> for consistency, with appropriate documentation children
  3. A <schemaSpec> can effectively only contain <moduleRef> and changed/new/delete elements or classes. The earlier notion of child <moduleSpec> elements in a change mode was deemed confusing and unnecessary.
  4. All elements and classes (whether new or existing), children of a <schemaSpec> , declare which module they belong to
  5. The triad of <gloss> , <equiv> and <desc> has been formalized as a pattern, applied to all <*Spec> and also used for some other elements in the new MS chapter.

The TEI P5 Guidelines source is 100% valid against the schema modules it documents.

New module for tag documentation

The revision of the TEI Guidelines chapter which documents the ODD language is complete. The draft chapter is available for comment.

Processors to generate schemas, etc

The XSLT transforms to produce schema and DTD outputs from the TEI sources are stable. Relax NG XML and DTD are generatable from the P5 source; W3C Schema and Relax NG compact syntax are generated by post-processing using Roma.

HTML and PDF versions of the P5 Guidelines can be generated, with a few problems.

Datatypes, and attributes

The Editors still have an action to go over all the attributes again and see which of them could benefit from more datatyping. They also have an action to see which should be transmogrified to child elements in order to contain full text.

Roma, and TEI extensions

The Roma replacement for the Pizza Chef, which encapsulates the process of generating schemas and DTDs in a web service, was completely rewritten by Arno Mittelbach in May 2004, and has been revised several times to keep track of changes to the ODD language. It is hosted only at Oxford on a special server, until the other TEI web servers can be brought up to speed.

Roma allows the user to create Relax and W3C schemas, DTDs, and documentation. Elements and classes can be renamed, edited, deleted or added, and automated internationalization is supported for Spanish and German. Customizations can be saved, and uploaded for continued work in a future session.

Roma is maintained in the Sourceforge CVS repository. It is written in PHP (version 5, which has good XML/XSLT handling), and makes extension use of an eXist XML database containing the TEI Guidelines source. It is delivered ready to go on the customization of Knoppix maintained for OSS Watch, along with many other TEI-useful tools.

Internationalization

The internationalization file, which translates TEI element names, attribute names, attribute values, and summary descriptions, has been updated several times. Alejandro Bia substantially enhanced the Spanish versions during August in Oxford, and the relevant parts of Roma and other stylesheets have been tested with the current release. The file is maintained in the Sourceforge CVS repository.


Last recorded change to this page: 2007-09-16  •  For corrections or updates, contact webmaster AT tei-c DOT org