Release 4.0.0 is codenamed ‘Galileo’ in honor of Galileo's arrival to Rome on 13 February 1633 to face the Inquisition. We associate Galileo with decentering the earth in official western dogma of the universe. Similarly, the stand-off model in this release of the TEI Guidelines may serve to decenter our models of digital texts and expand our frames of reference. With the addition of standOff, a significant change in how characters outside of Unicode are described, and the ability of TEI to self-nest, this version is significantly different than previous versions, and thus deserves an increase in the “major” release number.
In addition to the stand-off model, this release introduces new features and resolves a number of issues raised by the TEI community. As always, the majority of these changes and corrections are a consequence of feature requests or bugs reported by the TEI community using the GitHub tracking system. A full list of the issues resolved in the course of this release cycle may be found under the 4.0.0 milestone.
The following changes are particularly worth highlighting in this release:
- The standOff element functions as a container element for linked data, contextual information, and stand-off annotations embedded in a TEI document (#374, thanks to Laurent Romary and Piotr Bański).
- With the introduction of the standOff element a new structural class model.describedResource has been introduced, and model.resourceLike has been revised and renamed model.resource.
- As the TEI element is a member of the new model.describedResource class, it can now be a child of another TEI element.
- The new standOff element:
- is a child of TEI (or teiCorpus);
- may contain stand-off annotations, for example morphosyntactic annotations encoded with spanGrp or annotationBlock;
- may contain stand-off markup, for example a series of certainty, linkGrp, or alt elements;
- may contain contextual information, for example listPerson and listPlace;
- may contain information that must be pointed to from elsewhere, but is not found in the source document, for example a castList that represents characters who speak in a drama, but whose roles are not listed in the source document's printed cast list.
- New elements, attributes, and an attribute class have been introduced for using Unihan properties in TEI (#1805, thanks to Duncan Paterson):
- The attribute class att.gaijiProp provides attributes for defining the properties of non-standard characters or glyphs.
- The name attribute provides the name of the character or glyph property being defined.
- The value attribute provides the value of the character or glyph property being defined.
- The version attribute specifies the version number of the Unicode Standard in which this property name is defined. A list of suggested values is provided.
- The localProp element provides a locally defined character (or glyph) property.
- The unicodeProp element provides a Unicode property for a character (or glyph).
- The unihanProp element holds the name and value of a normative or informative Unihan character (or glyph) property as part of its attributes. A list of legal values from the Unicode Han Database is provided for the name attribute on unihanProp.
- The use of the elements charProp, charName, localName, unicodeName, and value has been deprecated.
- Changes were made to improve the precision of language in the Guidelines referring to conformance (#1588)
- Multiple Schematron rules, assertions, or reports in a single constraintSpec are now correctly output as a single sch:pattern in the RELAX NG schemas (#1625).
- The discussion of validation has been updated in A Gentle Introduction to XML (#1708).
- The attributes mode and ident have been added to the remarks element (#1713).
- The elements decoNote, explicit, and incipit are now members of the model.biblPart class (#1784).
- The description of the points attribute in att.coordinated has been clarified (#1789).
- The xr element is now a member of the attribute class att.typed (#1810).
- Our use of the Travis continuous integration server has been migrated from travis.org to travis.com (#1826).
- An example to specify the source of a translation has been added (#1830).
- The description of manuscript descriptions clarifies that msDesc can be used for all text-bearing objects (#1835).
- The content model of repository, institution, and collection has been changed from macro.xtext to macro.phraseSeq.limited (#1836).
- The g element is now available within the zone element (#1838).
- The placeName element has been added to the class model.settingPart and the example in the setting element has been changed accordingly (#1842).
- The dateline element is now a member of the class model.pLike.front (#1843).
- The catDesc element is now a member of the attribute class att.canonical (#1864).
- A Schematron rule has been added to only allow one remarks element per language in specification files (#1872).
- The datatype of the name attribute of the attRef element has been changed from teidata.text to teidata.name (#1878).
- The schema has been tightened to prevent a combination of valList in sequence with other members of model.contentPart (#1862).
- With the addition of the subtype attribute to the attribute class att.textCritical, subtype is now available on lem, rdg, and rdgGrp (#1867).
- The content model of teiCorpus has been changed (#1922).
- The constraints for teidata.word have been loosened to allow any character except Unicode separators or control characters (#1930).
- The explanation of Relax NG and XPath, together with its associated graphic in the chapter A Gentle Introduction to XML have been revised (#1949).
- Corrections of typographic errors and broken links, improvements on explanations, and corrections of examples have been conducted in various sections of the Guidelines (including #1760, #1847, #1887, #1907, #1909, #1927, #1936, #1948, #1952, #1954, #1964, #1965, #1968, #1969).
- Furthermore, a number of translations have been added or updated.
In addition, many improvements have been made to the XSLT stylesheets (which provide processing of TEI ODD files for Roma and OxGarage as well as other TEI conversions). The Stylesheets are maintained separately from the Guidelines at https://github.com/TEIC/Stylesheets. A full list of the issues resolved in the course of this release cycle may be found under the 7.49.0 milestone.
Highlights of this release include:
- The type attribute on biblScope has been replaced by the unit attribute in the tests (#213).
- Orphaned files in the test directory have been removed (#216).
- Relative paths to CSS files in the EPUB transformation have been replaced with absolute paths (#312).
- The jquery library has been updated (#359).
- Special characters encoded as <w:sym> in DOCX are now converted to hi elements (#389).
- Correct handling of Schematron rules in attDef elements (#403 and #1950).
Finally, we have made some significant updates to our documentation and the website:
- Documentation of Council practices in TCW 20 is improved for working with branches in the TEIC GitHub repository #1825.
- The documentation for updating the TEI Framework in oXygen to the latest release of the TEI Guidelines has been improved #1673 and added to the oxygen-tei repository, see How to automatically update your TEI framework in oXygen.
- Corrections have been conducted in various sections of the TEI website (including #1944), and #1938.