Skip to content

TEIC/Stylesheets

Repository files navigation

Stylesheets

GitHub release Stylesheets Tests

TEI XSL Stylesheets

This is a family of XSLT 3.0 stylesheets to transform TEI XML documents to various formats, including XHTML, LaTeX, XSL Formatting Objects, ePub, plain text, RDF, JSON; and to/from Word OOXML (docx) and OpenOffice (odt). They concentrate on the core TEI modules which are used for simple transcription and "born digital" writing. It is important to understand that they do not:

  • cover all TEI elements and possible attribute values
  • attempt to define a standard TEI processing or rendering model

and should not be treated as the definitive view of the TEI Consortium.

For more information, see https://tei-c.org/tools/stylesheets/

Prerequisites

The package assumes that you have several additional tools installed. Their availability on your system can be verified by issuing the command make check.

In particular, Stylesheets assume that you use ant version 1.9.x+. If for some reason, you need to use ant 1.8.x, you should remove all occurences of the attribute @zip64Mode from the file common/teianttasks.xml.

It is helpful to have the TEI environment installed locally. Please refer to http://www.tei-c.org/Guidelines/P5/get.xml for hints on how to do that.

It is also possible to avoid manual installation of additional tools, by resorting to the pre-built test environment in Docker described in https://teic.github.io/Documentation/TCW/testing_and_building.html .

Usage

The bin/ directory contains several executable files, which can be run on Linux, OS X, or other Unix operating systems. These perform a variety of transformations and are very useful for, e.g., generating a schema from a TEI ODD. Some examples:

bin/teitorelaxng --odd ../TEI/P5/Exemplars/tei_all.odd tei_all.rng

Assuming you have a copy of the TEI Guidelines repository alongside your copy of the Stylesheets, this will take the tei_all ODD and generate a RelaxNG XML schema for you. Similarly,

bin/teitornc --odd ../TEI/P5/Exemplars/tei_lite.odd tei_lite.rnc

will produce a RelaxNG Compact Syntax schema for TEI Lite.

Documentation

To build the documentation, run:

make doc

It will then be available at release/xslcommon/doc/tei-xsl/index.html.

About the Text Encoding Initiative (TEI)

The Text Encoding Initiative (TEI) is a community of practice in the area now known as textual digital humanities. Since 1994 the primary output of the TEI has been the TEI/XML guidelines, a standard for the interchange of textual data. A main focii of the TEI is the TEI-L mailing list; the TEI is also on GitHub and docker, a repository called TAPAS and an academic journal, the jTEI.

TEI/XML can be thought of as a sibling of HTML (they're approximately the same age, depending on how you measure it) which evolved with a focus on defined textual semantics rather than defined display semantics. TEI by example is a good introduction to TEI/XML. The Text Encoding Initiative Wikipedia article contains some short examples. The TEI/XML standard is used by content-based projects such as the British National Corpus, the Perseus Project, the Women Writers Project, the Oxford Text Archive, the Digital Tripitaka and SARIT, and tool-based projects such as CorrespSearch,
EpiDoc, Anthologize, Versioning Machine, and many more diverse projects.