P5 Guidelines
Get the P5 Guidelines
The TEI Guidelines, including the TEI schemas, the TEI source code, and the prose documentation, are published as open source software. They can be accessed and downloaded in a variety of forms, depending on how you want to use them.
Read online documentation
The text of the Guidelines may be read online.
Download a PDF or ebook version
Get and install a local copy
The source code and other TEI materials (including beta and experimental releases) can be downloaded from GitHub. The files comprising the most stable recent release of the TEI materials are also available as Debian packages at https://packages.tei-c.org/deb/.
Build a schema from the source
You can also build TEI schemas and documentation (including customized versions) using Roma. Detailed instructions for using Roma and for using the command-line version are available.
Other points of access
- The TEI schemas are now distributed with the
XML editor, together with a set of basic TEI templates. - The TEI Guidelines (for P1 to current P5) can be found at Zenodo. The Concept DOI (which always forwards to the latest version of P5) is 10.5281/zenodo.3413524.
Previous Releases of P5
The TEI Guidelines are stored in the TEI git repository on GitHub, allowing people to trace when and where any specific changes were made. However, since the TEI provides maintenance and feature improvement releases every few months, for convenience these are archived as a whole in the TEI Vault. One of the benefits of this is it allows you to consult the reference documentation or schema for the version of the TEI that your project has adopted. For example:
- All available P5 releases: http://www.tei-c.org/Vault/P5/
- Always the current release hierarchy: http://www.tei-c.org/Vault/P5/current/
- The 2.3.0 release hierarchy: http://www.tei-c.org/Vault/P5/2.3.0/
- The 1.3.0 Guidelines (in English): http://www.tei-c.org/Vault/P5/1.3.0/doc/tei-p5-doc/en/html/
- The 2.2.0 reference for the w element (in English): http://www.tei-c.org/Vault/P5/2.2.0/doc/tei-p5-doc/en/html/ref-w.html
- The 1.7.0 tei_all.rng schema: http://www.tei-c.org/Vault/P5/1.7.0/xml/tei/custom/schema/relaxng/tei_all.rng
This means, for example, that you can compare the current version of a TEI element to an earlier version, or use a TEI schema from a particular release rather than the most recent. One could do most of this with the TEI GitHub repository, but this organises it nicely on a release-by-release basis and includes the rendered versions of the Guidelines.
TEI P5 Releases
Source and data support files for TEI Guidelines
In addition to the schema modules and example customizations generated for each release of the Guidelines, the following files are provided in the xml/tei/odd/ directory for use by those writing TEI tools such as editors or visualizations.
p5attlist.txt
This is a text file with a comma-separated catalogue of all the attributes available on TEI elements, listing the element or class name, the attribute name, the
datatype, and an indication ("multiple" or "single") as to whether it can contain multiple values, e.g., att.ascribed,who,data.pointer,multiple
.
p5subset.json
This is a representation of all TEI modules, classes, elements and attributes (with their descriptions) in JSON format for consumption by Javascript tools in web applications. For example, this fragment provides summary information about the ab element:
{"ident":"ab", "module":"linking",
"desc":"(anonymous block) contains any arbitrary component-level unit of text,
acting as an anonymous container for phrase or inter level elements analogous
to, but without the semantic baggage of, a paragraph. []",
"classes":[{"att.global":"atts"},{"model.pLike":"model"},{"att.typed":"atts"},{"att.declaring":"atts"}],
"model":"MIXED"}
p5subset.xml
This is a copy of the reference component of the TEI source, extracting all the elementSpec, classSpec, macroSpec and moduleSpec elements, with descriptions. It does not include the text of the chapters of the Guidelines, and is intended for use by ODD processors which need to access all of the TEI components in a convenient single file.
stripspace.xsl.model
This is a fragment of XSL which can be added to any transformation which is being applied to a TEI document. It consists of a xsl:strip-space element which lists all the elements which can not contain character data. This tells the processor it can ignore white space around child components of these elements.