Text Encoding Initiative

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

The Text Encoding Initiative (TEI) is a text-centric community of practice in the academic field of digital humanities, operating continuously since the 1980s. The community currently runs a mailing list, meetings and conference series, and maintains an eponymous technical standard, a journal, a wiki, a SourceForge repository and a toolchain.

The TEI Guidelines

The TEI Guidelines, which collectively define an XML format, are the defining output of the community of practice. The format differs from other well-known open formats for text (such as HTML and OpenDocument) in that it's primarily semantic rather than presentational; the semantics and interpretation of every tag and attribute are specified. Some 500 different textual components and concepts (word,[1] sentence,[2] character,[3] glyph,[4] person,[5] etc.); each is grounded in one or more academic discipline and examples are given.

Technical Details

The standard is split into two parts, a discursive textual description with extended examples and discussion and set of tag-by-tag definitions. Schemata in most of the modern formats (DTD, RELAX NG and W3C Schema) are generated automatically from the tag-by-tag definitions. A number of tools support the production of the guidelines and the application of the guidelines to specific projects.

A number of special tags are used to circumvent restrictions imposed by the underlying Unicode; glyph to allow representation of characters that don't qualify for Unicode inclusion[1] and choice to allow overcome the required strict linearity.[6]

Most users of the format do not use the complete range of tags but produce a customisation, using a project-specific subset of the tags and attributes defined by the Guidelines. The TEI defines a sophisticated customization mechanism known as ODD for this purpose. In addition to documenting and describing each TEI tag, an ODD specification specifies its content model and other usage constraints, which may be expressed using schematron.

TEI Lite is an example of such a customization. It defines an XML-based file format for exchanging texts. It is a manageable selection from the extensive set of elements available in the full TEI Guidelines.

Examples

The text of the TEI guidelines is rich in examples. There is also a samples page on the TEI wiki[7] which gives examples of real-world projects which expose their underlying TEI.

Prose tags

TEI allows texts to be marked up syntactically at any level of granularity, or mixture of granularities. For example this paragraph (p) has been marked up into sentences (s) and clauses (cl).[8]

 <s>
  <cl>It was about the beginning of September, 1664,
  <cl>that I, among the rest of my neighbours,
       heard in ordinary discourse
   <cl>that the plague was returned again to Holland; </cl>
   </cl>
  </cl>
  <cl>for it had been very violent there, and particularly at
     Amsterdam and Rotterdam, in the year 1663, </cl>
  <cl>whither, <cl>they say,</cl> it was brought,
  <cl>some said</cl> from Italy, others from the Levant, among some goods
  <cl>which were brought home by their Turkey fleet;</cl>
  </cl>
  <cl>others said it was brought from Candia;
     others from Cyprus. </cl>
 </s>
 <s>
  <cl>It mattered not <cl>from whence it came;</cl>
  </cl>
  <cl>but all agreed <cl>it was come into Holland again.</cl>
  </cl>
 </s>

Verse

TEI has tags for marking up verse. This example (taken from the French translation of the TEI Guidelines) shows a sonnet[9]

<div type="sonnet">
 <lg type="quatrain">
  <l>Les amoureux fervents et les savants austères</l>
  <l> Aiment également, dans leur mûre saison,</l>
  <l> Les chats puissants et doux, orgueil de la maison,</l>
  <l> Qui comme eux sont frileux et comme eux sédentaires.</l>
 </lg>
 <lg type="quatrain">
  <l>Amis de la science et de la volupté</l>
  <l> Ils cherchent le silence et l'horreur des ténèbres ;</l>
  <l> L'Érèbe les eût pris pour ses coursiers funèbres,</l>
  <l> S'ils pouvaient au servage incliner leur fierté.</l>
 </lg>
 <lg type="tercet">
  <l>Ils prennent en songeant les nobles attitudes</l>
  <l>Des grands sphinx allongés au fond des solitudes,</l>
  <l>Qui semblent s'endormir dans un rêve sans fin ;</l>
 </lg>
 <lg type="tercet">
  <l>Leurs reins féconds sont pleins d'étincelles magiques,</l>
  <l> Et des parcelles d'or, ainsi qu'un sable fin,</l>
  <l>Étoilent vaguement leurs prunelles mystiques.</l>
 </lg>
</div>

Choice tag

The choice tag is used to represent sections of text which might be encoded or tagged in more than one possible way. In the following example, based on one in the standard, choice is used twice, once to indicate an original and a corrected year and once to indicate an original and regularised spelling.[10]

<p xml:id="p23">Lastly, That, upon his solemn oath to observe all the above
articles, the said man-mountain shall have a daily allowance of
meat and drink sufficient for the support of <choice>
  <sic>1724</sic>
  <corr>1728</corr>
 </choice> of our subjects,
with free access to our royal person, and other marks of our
<choice>
  <orig>favour</orig>
  <reg>favor</reg>
 </choice>.

ODD

One Document Does it all ("ODD") is a literate programming language for XML schemas.[11][12][13][14]

In literate-programming style, ODD documents combine human-readable documentation and machine-readable models using the Documentation Elements module of the Text Encoding Initiative. Tools generate localised and internationalised HTML, ePub, or PDF human-readable output and DTDs, W3C XML Schema, Relax NG Compact Syntax, or Relax NG XML Syntax machine-readable output.

The Roma web application[15] is built around the ODD format and can use it to generate schemas in DTD, W3C XML Schema, Relax NG Compact Syntax, or Relax NG XML Syntax formats, as used by many XML validation tools and services.

ODD is the format used internally by the Text Encoding Initiative for their eponymous technical standard.[16] Although ODD files generally describe the difference between a customized XML format and the full TEI model, ODD also can be used to describe XML formats that are entirely separate from the TEI. One example of this is the W3C's Internationalization Tag Set which uses the ODD format to generate schemas and document its vocabulary.[17][18]

TEI customizations

TEI customizations are specializations of the TEI XML specification for use in particular fields or by specific communities.

Customization in the TEI is done through the ODD mechanism mentioned above. In truth since its P5 version, all so-called 'TEI Conformant' uses of the TEI Guidelines are based on a TEI customization documented in a TEI ODD file. Even when users choose one of the off-the-shelf pre-generated schemas to validate against, these have been created from freely available customization files.

Projects

The format is used by many projects worldwide. Practically all projects are associated with one or more universities. Some well-known projects that encode texts using TEI include:

Project URL Strengths
British National Corpus http://www.natcorp.ox.ac.uk 100 million word snapshot of current English
Oxford Text Archive http://ota.ox.ac.uk/ >1 GB of Linguistic data and electronic texts in 25 languages
Perseus Project http://www.perseus.tufts.edu/ Greek and Latin texts
EpiDoc http://epidoc.sourceforge.net/ Epigraphy and Papyrology
Women Writers Project http://www.wwp.northeastern.edu/ Early modern women writers (Margaret Cavendish, Eliza Haywood, etc.)
New Zealand Electronic Text Centre http://www.nzetc.org/ New Zealand and Pacific Islands texts
The SWORD Project http://www.crosswire.org/sword/ Bible software, dictionaries, Christian literature
FreeDict http://freedict.org Bilingual dictionaries
Text Creation Partnership http://www.lib.umich.edu/tcp/ Early English and American books

History

Prior to the creation of TEI, humanities scholars had no common standards for encoding electronic texts in a manner which would serve their academic goals (Hockey 1993, p. 41). In 1987, a group of scholars representing fields in humanities, linguistics, and computing convened at Vassar College to put forth a set of guidelines known as the “Poughkeepsie Principles”. These guidelines directed the development of the first TEI standard, "P1"[19][20]

  • 1999 TEI P3 updated.
  • 2002 TEI P4 released, moving from SGML to XML; adoption of Unicode, which XML parsers are required to support.[25]
  • 2007 TEI P5 released, including integration with the xml:lang and xml:id attributes from the W3C[26] (these had previously been attributes in the TEI namespace), regularization of local pointing attributes to use the hash (as used in HTML) and unification of the ptr and xptr tags. Together these changes with many more new additions make P5 more regular and bring it closer to current xml practice as promoted by the W3C and as used by other XML variants. Maintenance and feature update versions of TEI P5 have been released at least twice a year since 2007.
  • 2011 TEI P5 v2.0.1 released with support for Genetic editing.[27] (among many other additions the Genetic editing features allow encoding of texts without interpretation as to their specific semantics.)

References

  1. 1.0 1.1 Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found..
  12. Lua error in package.lua at line 80: module 'strict' not found..
  13. Lua error in package.lua at line 80: module 'strict' not found..
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Roma web application.
  16. Lua error in package.lua at line 80: module 'strict' not found..
  17. W3C ITS and TEI ODD file.
  18. Lua error in package.lua at line 80: module 'strict' not found..
  19. Lua error in package.lua at line 80: module 'strict' not found.
  20. Lua error in package.lua at line 80: module 'strict' not found.
  21. ach.org
  22. "Historical background", section iv.2 of TEI P5: Guidelines for Electronic Text Encoding and Interchange.
  23. Lua error in package.lua at line 80: module 'strict' not found.
  24. Lua error in package.lua at line 80: module 'strict' not found.
  25. Lua error in package.lua at line 80: module 'strict' not found.
  26. Lua error in package.lua at line 80: module 'strict' not found.
  27. Lua error in package.lua at line 80: module 'strict' not found.

External links