TEI Lite: Encoding for Interchange: an introduction to the TEI
Final revised edition for TEI P5
Lou Burnard
C. M. Sperberg-McQueen
August 2012

Prefatory note

TEI Lite was the name adopted for what the TEI editors originally conceived of as a simple demonstration of how the TEI (Text Encoding Initiative) encoding scheme might be adopted to meet 90% of the needs of 90% of the TEI user community. In retrospect, it was predictable that many people should imagine TEI Lite to be all there is to TEI, or find TEI Lite to be far too heavy for their needs.

The original TEI Lite (1996) was based largely on observations of existing and previous practice in the encoding of texts, particularly as manifest in the collections of the Oxford Text Archive and other collections of the period. It is therefore unsurprising that it seems to have become, if not a de facto standard, at least a common point of departure for electronic text centres and encoding projects world wide. Maybe the fact that we actually produced this shortish, readable, manual for it also helped.

Early adopters of TEI Lite included a number of ‘Electronic Text Centers’ and digital library initiatives. It was also adopted as the basis for some early TEI-conformant authoring systems, and as the basis for introductory tutorials, many of them in languages other than English (see further the list of legacy versions at http://www.tei-c.org/Vault/P4/Lite/).

In 2002, following the publication of TEI P4, the XML version of the TEI Guidelines, which uses the generation of TEI Lite as an example of the TEI modification mechanism, the opportunity was taken to produce a lightly revised XML-conformant version. In 2006, a more substantially revised version based on TEI P5 was produced; this reflected the many changes between TEI P4 and TEI P5, but was not otherwise significantly different. In 2012, the TEI Technical Council, decided that a final revision should be undertaken to ensure that the documentation remained consistent with the latest (2.1) release of TEI P5. This version uses a recently added mechanism in the TEI customization architecture, which permits a customization to define only the TEI elements to be included in a schema, rather than the elements to be excluded from it. As such it is probably more resilient to change than earlier versions.

Lou Burnard, August 2012

Table of contents

This document provides an introduction to the recommendations of the Text Encoding Initiative (TEI), by describing a specific subset of the full TEI encoding scheme. The scheme documented here can be used to encode a wide variety of commonly encountered textual features, in such a way as to maximize the usability of electronic transcriptions and to facilitate their interchange among scholars using different computer systems. It is fully compatible with the full TEI scheme, as defined by TEI document P5, Guidelines for Electronic Text Encoding and Interchange, as of February 2006, and available from the TEI Consortium website at http://www.tei-c.org/.

1 Introduction

The Text Encoding Initiative (TEI) Guidelines are addressed to anyone who wants to interchange information stored in an electronic form. They emphasize the interchange of textual information, but other forms of information such as images and sound are also addressed. The Guidelines are equally applicable in the creation of new resources and in the interchange of existing ones.

The Guidelines provide a means of making explicit certain features of a text in such a way as to aid the processing of that text by computer software running on different machines. This process of making explicit we call markup or encoding. Any textual representation on a computer uses some form of markup; the TEI came into being partly because of the enormous variety of mutually incomprehensible encoding schemes currently besetting scholarship, and partly because of the expanding range of scholarly uses now being identified for texts in electronic form.

The TEI Guidelines describe an encoding scheme which can be expressed using a number of different formal languages. The first editions of the Guidelines used the Standard Generalized Markup Language (SGML); since 2002, this has been replaced by the use of the Extensible Markup Language (XML). These markup languages have in common the definition of text in terms of elements and attributes, and rules governing their appearance within a text. The TEI's use of XML is ambitious in its complexity and generality, but it is fundamentally no different from that of any other XML markup scheme, and so any general-purpose XML-aware software is able to process TEI-conformant texts.

Since 2001, the TEI has been a community initiative supported by an international membership consortium. It was originally an international research project sponsored by the Association for Computers and the Humanities, the Association for Computational Linguistics, and the Association for Literary and Linguistic Computing, with substantial funding over its first five years from the U.S. National Endowment for the Humanities, Directorate General XIII of the Commission of the European Communities, the Andrew W. Mellon Foundation, the Social Science and Humanities Research Council of Canada and others. The Guidelines were first published in May 1994, after six years of development involving many hundreds of scholars from different academic disciplines worldwide. During the years that followed, the Guidelines became increasingly influential in the development of the digital library, in the language industries, and even in the development of the World Wide Web itself. The TEI Consortium was set up in January 2001, and a year later produced an edition of the Guidelines entirely revised for XML compatibility. In 2004, it set about a major revision of the Guidelines to take full advantage of new schema languages, the first release of which appeared in 2005. This revision of the TEI Lite document conforms to version 2.1 of this most recent edition of the Guidelines, TEI P5, released in June 2012.

At the outset of its work, the overall goals of the TEI were defined by the closing statement of a planning conference held at Vassar College, N.Y., in November, 1987; these ‘Poughkeepsie Principles’ were further elaborated in a series of design documents. The Guidelines, say these design documents, should:

The world of scholarship is large and diverse. For the Guidelines to have wide acceptability, it was important to ensure that:

  1. the common core of textual features be easily shared;
  2. additional specialist features be easy to add to (or remove from) a text;
  3. multiple parallel encodings of the same feature should be possible;
  4. the richness of markup should be user-defined, with a very small minimal requirement;
  5. adequate documentation of the text and its encoding should be provided.

The present document describes a manageable selection from the extensive set of elements and recommendations resulting from those design goals, which is called TEI Lite.

In selecting from the several hundred elements defined by the full TEI scheme, we have tried to identify a useful ‘starter set’, comprising the elements which almost every user should know about. Experience working with TEI Lite will be invaluable in understanding the full TEI scheme and in knowing how to integrate specialized parts of it into the general TEI framework.

Our goals in defining this subset may be summarized as follows:

The reader may judge our success in meeting these goals for him or herself.

Although we have tried to make this document self-contained, as suits a tutorial text, the reader should be aware that it does not cover every detail of the TEI encoding scheme. All of the elements described here are fully documented in the TEI Guidelines themselves, which should be consulted for authoritative reference information on these, and on the many others which are not described here. Some basic knowledge of XML is assumed.

2 A Short Example

We begin with a short example, intended to show what happens when a passage of prose is typed into a computer by someone with little sense of the purpose of mark-up, or the potential of electronic texts. In an ideal world, such output might be generated by a very accurate optical scanner. It attempts to be faithful to the appearance of the printed text, by retaining the original line breaks, by introducing blanks to represent the layout of the original headings and page breaks, and so forth. Where characters not available on the keyboard are needed (such as the accented letter a in faàl or the long dash), it attempts to mimic their appearance.

            CHAPTER 38
            
            READER, I married him. A quiet wedding we had: he and I, the par-
            son and clerk, were alone present. When we got back from church, I
            went into the kitchen of the manor-house, where Mary was cooking
            the dinner, and John cleaning the knives, and I said --
            'Mary, I have been married to Mr Rochester this morning.' The
            housekeeper and her husband were of that decent, phlegmatic
            order of people, to whom one may at any time safely communicate a
            remarkable piece of news without incurring the danger of having
            one's ears pierced by some shrill ejaculation and subsequently stunned
            by a torrent of wordy wonderment. Mary did look up, and she did
            stare at me; the ladle with which she was basting a pair of chickens
            roasting at the fire, did for some three minutes hang suspended in air,
            and for the same space of time John's knives also had rest from the
            polishing process; but Mary, bending again over the roast, said only --
            'Have you, miss? Well, for sure!'
            A short time after she pursued, 'I seed you go out with the master,
            but I didn't know you were gone to church to be wed'; and she
            basted away. John, when I turned to him, was grinning from ear to
            ear.
            'I telled Mary how it would be,' he said: 'I knew what Mr Ed-
            ward' (John was an old servant, and had known his master when he
            was the cadet of the house, therefore he often gave him his Christian
            name) -- 'I knew what Mr Edward would do; and I was certain he
            would not wait long either: and he's done right, for aught I know. I
            wish you joy, miss!' and he politely pulled his forelock.
            'Thank you, John. Mr Rochester told me to give you and Mary
            this.'
            I put into his hand a five-pound note.  Without waiting to hear
            more, I left the kitchen. In passing the door of that sanctum some time
            after, I caught the words --
            'She'll happen do better for him nor ony o' t' grand ladies.' And
            again, 'If she ben't one o' th' handsomest, she's noan faa\l, and varry
            good-natured; and i' his een she's fair beautiful, onybody may see
            that.'
            I wrote to Moor House and to Cambridge immediately, to say what
            I had done: fully explaining also why I had thus acted. Diana and
            
            474
            
            JANE EYRE                      475
            
            Mary approved the step unreservedly. Diana announced that she
            would just give me time to get over the honeymoon, and then she
            would come and see me.
            'She had better not wait till then, Jane,' said Mr Rochester, when I
            read her letter to him; 'if she does, she will be too late, for our honey-
            moon will shine our life long: its beams will only fade over your
            grave or mine.'
            How St John received the news I don't know: he never answered
            the letter in which I communicated it: yet six months after he wrote
            to me, without, however, mentioning Mr Rochester's name or allud-
            ing to my marriage. His letter was then calm, and though very serious,
            kind. He has maintained a regular, though not very frequent correspond-
            ence ever since: he hopes I am happy, and trusts I am not of those who
            live without God in the world, and only mind earthly things.
            
          

This transcription suffers from a number of shortcomings:

We now present the same passage, as it might be encoded using the TEI Guidelines. As we shall see, there are many ways in which this encoding could be extended, but as a minimum, the TEI approach allows us to represent the following distinctions:
  • Paragraph and chapter divisions are now marked explicitly.
  • Apostrophes are distinguished from quotation marks; direct speech is explicitly marked.
  • The accented letter and the long dash are correctly represented.
  • Page divisions have been marked with an empty pb element alone.
  • The lineation of the original has not been retained and words broken by typographic accident at the end of a line have been re-assembled without comment.
  • For convenience of proof reading, a new line has been introduced at the start of each paragraph, but the indentation is removed.
<pb n="474"/>
<div type="chaptern="38">
 <p>Reader, I married him. A quiet wedding we had: he and I, the parson and clerk, were alone
   present. When we got back from church, I went into the kitchen of the manor-house, where
   Mary was cooking the dinner, and John cleaning the knives, and I said —</p>
 <p>
  <q>Mary, I have been married to Mr Rochester this morning.</q> The housekeeper and her
   husband were of that decent, phlegmatic order of people, to whom one may at any time safely
   communicate a remarkable piece of news without incurring the danger of having one's ears
   pierced by some shrill ejaculation and subsequently stunned by a torrent of wordy
   wonderment. Mary did look up, and she did stare at me; the ladle with which she was basting
   a pair of chickens roasting at the fire, did for some three minutes hang suspended in air,
   and for the same space of time John's knives also had rest from the polishing process; but
   Mary, bending again over the roast, said only —</p>
 <p>
  <q>Have you, miss? Well, for sure!</q>
 </p>
 <p>A short time after she pursued, <q>I seed you go out with the master, but I didn't know
     you were gone to church to be wed</q>; and she basted away. John, when I turned to him, was
   grinning from ear to ear. <q>I telled Mary how it would be,</q> he said: <q>I knew what Mr
     Edward</q> (John was an old servant, and had known his master when he was the cadet of the
   house, therefore he often gave him his Christian name) — <q>I knew what Mr Edward would do;
     and I was certain he would not wait long either: and he's done right, for aught I know. I
     wish you joy, miss!</q> and he politely pulled his forelock.</p>
 <p>
  <q>Thank you, John. Mr Rochester told me to give you and Mary this.</q>
 </p>
 <p>I put into his hand a five-pound note. Without waiting to hear more, I left the kitchen.
   In passing the door of that sanctum some time after, I caught the words —</p>
 <p>
  <q>She'll happen do better for him nor ony o' t' grand ladies.</q> And again, <q>If she
     ben't one o' th' handsomest, she's noan faàl, and varry good-natured; and i' his een she's
     fair beautiful, onybody may see that.</q>
 </p>
 <p>I wrote to Moor House and to Cambridge immediately, to say what I had done: fully
   explaining also why I had thus acted. Diana and <pb n="475"/> Mary approved the step
   unreservedly. Diana announced that she would just give me time to get over the honeymoon,
   and then she would come and see me.</p>
 <p>
  <q>She had better not wait till then, Jane,</q> said Mr Rochester, when I read her letter
   to him; <q>if she does, she will be too late, for our honeymoon will shine our life long:
     its beams will only fade over your grave or mine.</q>
 </p>
 <p>How St John received the news I don't know: he never answered the letter in which I
   communicated it: yet six months after he wrote to me, without, however, mentioning Mr
   Rochester's name or alluding to my marriage. His letter was then calm, and though very
   serious, kind. He has maintained a regular, though not very frequent correspondence ever
   since: he hopes I am happy, and trusts I am not of those who live without God in the world,
   and only mind earthly things.</p>
</div>

This particular encoding represents a set of choices or priorities. As a trivial example, note that in the second example, end-of-line hyphenation has been silently removed. Conceivably Brontë (or her printer) intended the word ‘honeymoon’ to appear as ‘honey-moon’ on its second appearance, though this seems unlikely: our decision to focus on Brontë's text, rather than on the printing of it in this particular edition, makes it impossible to be certain. This is an instance of the fundamental selectivity of any encoding. An encoding makes explicit only those textual features of importance to the encoder. It is not difficult to think of ways in which the encoding of even this short passage might readily be extended. For example:

TEI-recommended ways of carrying out most of these are described in the remainder of this document. The TEI scheme as a whole also provides for an enormous range of other possibilities, of which we cite only a few:

For recommendations on these and many other possibilities, the full Guidelines should be consulted.

3 The Structure of a TEI Text

All TEI-conformant texts contain (a) a TEI header (marked up as a teiHeader element) and (b) the transcription of the text proper (marked up as a text element). These two elements are combined together to form a single TEI element, which must be declared within the TEI namespace1.

The TEI header provides information analogous to that provided by the title page of a printed text. It has up to four parts: a bibliographic description of the machine-readable text, a description of the way it has been encoded, a non-bibliographic description of the text (a text profile), and a revision history. The header is described in more detail in section 19 The Electronic Title Page.

A TEI text may be unitary (a single work) or composite (a collection of single works, such as an anthology). In either case, the text may have an optional front or back. In between is the body of the text, which, in the case of a composite text, may consist of groups, each containing more groups or texts.

A unitary text will be encoded using an overall structure like this:
<TEI xmlns="http://www.tei-c.org/ns/1.0">
 <teiHeader>
<!-- [ TEI Header information ] -->
 </teiHeader>
 <text>
  <front>
<!-- [ front matter ... ] -->
  </front>
  <body>
<!-- [ body of text ... ] -->
  </body>
  <back>
<!-- [ back matter ... ] -->
  </back>
 </text>
</TEI>
A composite text also has an optional front and back. In between occur one or more groups of texts, each with its own optional front and back matter. A composite text will thus be encoded using an overall structure like this:
<TEI xmlns="http://www.tei-c.org/ns/1.0">
 <teiHeader>
<!--[ header information for the composite ]-->
 </teiHeader>
 <text>
  <front>
<!--[ front matter for the composite ]-->
  </front>
  <group>
   <text>
    <front>
<!--[ front matter of first text ]-->
    </front>
    <body>
<!--[ body of first text ]-->
    </body>
    <back>
<!--[ back matter of first text ]-->
    </back>
   </text>
   <text>
    <front>
<!--[ front matter of second text]-->
    </front>
    <body>
<!--[ body of second text ]-->
    </body>
    <back>
<!--[ back matter of second text ]-->
    </back>
   </text>
<!--[ more texts or groups of texts here ]-->
  </group>
  <back>
<!--[ back matter for the composite ]-->
  </back>
 </text>
</TEI>
It is also possible to define a composite of complete TEI texts, each with its own header. Such a collection is known as a TEI corpus, and may itself have a header:
<teiCorpus xmlns="http://www.tei-c.org/ns/1.0">
 <teiHeader>
<!--[header information for the corpus]-->
 </teiHeader>
 <TEI>
  <teiHeader>
<!--[header information for first text]-->
  </teiHeader>
  <text>
<!--[first text in corpus]-->
  </text>
 </TEI>
 <TEI>
  <teiHeader>
<!--[header information for second text]-->
  </teiHeader>
  <text>
<!--[second text in corpus]-->
  </text>
 </TEI>
</teiCorpus>
It is also possible to create a composite of corpora -- that is, one teiCorpus element may contain many nested teiCorpus elements rather than many nested TEI elements, to any depth considered necessary.

In the remainder of this document, we discuss chiefly simple text structures. The discussion in each case consists of a short list of relevant TEI elements with a brief definition of each, followed by definitions for any attributes specific to that element, and a reference to any classes of which the element is a member. These references are linked to full specifications for each object, as given in the TEI Guidelines. In most cases, short examples are also given.

For example, here are the elements discussed so far:

4 Encoding the Body

As indicated above, a simple TEI document at the textual level consists of the following elements:

Elements specific to front and back matter are described below in section 18 Front and Back Matter. In this section we discuss the elements making up the body of a text.

4.1 Text Division Elements

The body of a prose text may be just a series of paragraphs, or these paragraphs may be grouped together into chapters, sections, subsections, etc. Each paragraph is tagged using the p tag. The div element is used to represent any such grouping of paragraphs.

  • p (paragraph) marks paragraphs in prose.
  • div (text division) contains a subdivision of the front, body, or back of a text.

The type attribute on the div element may be used to supply a conventional name for this category of text division, or otherwise distinguish them. Typical values might be ‘book’, ‘chapter’, ‘section’, ‘part’, ‘poem’, ‘song’, etc. For a given project, it will usually be advisable to define and adhere to a specific list of such values.

A div element may itself contain further, nested, divs, thus mimicking the traditional structure of a book, which can be decomposed hierarchically into units such as parts, containing chapters, containing sections, and so on. TEI texts in general conform to this simple hierarchic model.

The xml:id attribute may be used to supply a unique identifier for the division, which may be used for cross references or other links to it, such as a commentary, as further discussed in section 8 Cross References and Links. It is often useful to provide an xml:id attribute for every major structural unit in a text, and to derive its values in some systematic way, for example by appending a section number to a short code for the title of the work in question, as in the examples below. It is particularly useful to supply such identifiers if the resource concerned is to be made available over the web, since they make it much easier for other web-based applications to link directly to the corresponding parts of your text.

The n attribute may be used to supply (additionally or alternatively) a short mnemonic name or number for a division, or any other element. If a conventional form of reference or abbreviation for the parts of a work already exists (such as the book/chapter/verse pattern of Biblical citations), the n attribute is the place to record it; unlike the identifier supplied by xml:id, it does not need to be unique.

The xml:lang attribute may be used to specify the language of the division. Languages are identified by an internationally defined code, as further discussed in section 6.3 Foreign Words or Expressions below.

The rend attribute may be used to supply information about the rendition (appearance) of a division, or any other element, as further discussed in section 6 Marking Highlighted Phrases below. As with the type attribute, a project will often find it useful to predefine the possible values for this attribute, but TEI Lite does not constrain it in anyway.

These four attributes, xml:id, n, xml:lang, and rend are so widely useful that they are allowed on any element in any TEI schema: they are global attributes. Other global attributes defined in the TEI Lite scheme are discussed in section 8.3 Special kinds of Linking.

The value of every xml:id attribute should be unique within a document. One simple way of ensuring that this is so is to make it reflect the hierarchic structure of the document. For example, Smith's Wealth of Nations as first published consists of five books, each of which is divided into chapters, while some chapters are further subdivided into parts. We might define xml:id values for this structure as follows:
<body>
 <div xml:id="WN1n="Itype="book">
  <div xml:id="WN101n="I.1type="chapter">
<!-- ... -->
  </div>
  <div xml:id="WN102n="I.2type="chapter">
<!-- ... -->
  </div>
<!-- ... -->
  <div xml:id="WN110n="I.10"
   type="chapter">

   <div xml:id="WN1101n="I.10.1"
    type="part">

<!-- ... -->
   </div>
   <div xml:id="WN1102n="I.10.2"
    type="part">

<!-- ... -->
   </div>
  </div>
<!-- ... -->
 </div>
 <div xml:id="WN2n="IItype="book">
<!-- ... -->
 </div>
</body>
A different numbering scheme may be used for xml:id and n attributes: this is often useful where a canonical reference scheme is used which does not tally with the structure of the work. For example, in a novel divided into books each containing chapters, where the chapters are numbered sequentially through the whole work, rather than within each book, one might use a scheme such as the following:
<body>
 <div xml:id="TS01n="1type="volume">
  <div xml:id="TS011n="1type="chapter">
<!-- ... -->
  </div>
  <div xml:id="TS012n="2type="chapter">
<!-- ... -->
  </div>
 </div>
 <div xml:id="TS02n="2type="volume">
  <div xml:id="TS021n="3type="chapter">
<!-- ... -->
  </div>
  <div xml:id="TS022n="4type="chapter">
<!-- ... -->
  </div>
 </div>
</body>
Here the work has two volumes, each containing two chapters. The chapters are numbered conventionally 1 to 4, but the xml:id values specified allow them to be regarded additionally as if they were numbered 1.1, 1.2, 2.1, 2.2.

4.2 Headings and Closings

Every div may have a title or heading at its start, and (less commonly) a trailer such as ‘End of Chapter 1’ at its end. The following elements may be used to transcribe them:

  • head (heading) contains any type of heading, for example the title of a section, or the heading of a list, glossary, manuscript description, etc.
  • trailer contains a closing title or footer appearing at the end of a division of a text.

Some other elements which may be necessary at the beginning or ending of text divisions are discussed below in section 18.1.2 Prefatory Matter.

Whether or not headings and trailers are included in a transcription is a matter for the individual transcriber to decide. Where a heading is completely regular (for example ‘Chapter 1’) or may be automatically constructed from attribute values (e.g. <div type="chapter" n="1">), it may be omitted; where it contains otherwise unrecoverable text it should always be included. For example, the start of Hardy's Under the Greenwood Tree might be encoded as follows:
<div xml:id="UGT1n="Wintertype="Part">
 <div xml:id="UGT11n="1type="Chapter">
  <head>Mellstock-Lane</head>
  <p>To dwellers in a wood almost every species of tree ... </p>
 </div>
</div>

4.3 Prose, Verse and Drama

As in the Bronte example above, the paragraphs making up a textual division are tagged with the p tag. In poetic or dramatic texts different tags are needed, to represent verse lines and stanzas in the first case, or individual speeches and stage directions in the second. :

  • l (verse line) contains a single, possibly incomplete, line of verse.
  • lg (line group) contains one or more verse lines functioning as a formal unit, e.g. a stanza, refrain, verse paragraph, etc.
  • sp (speech) contains an individual speech in a performance text, or a passage presented as such in a prose or verse text.
  • speaker contains a specialized form of heading or label, giving the name of one or more speakers in a dramatic text or fragment.
  • stage (stage direction) contains any kind of stage direction within a dramatic text or fragment.
Here, for example, is the start of a poetic text in which verse lines and stanzas are tagged:
<lg n="I">
 <l>I Sing the progresse of a
   deathlesse soule,</l>
 <l>Whom Fate, with God made, but doth not controule,</l>
 <l>Plac'd in
   most shapes; all times before the law</l>
 <l>Yoak'd us, and when, and since, in this I
   sing.</l>
 <l>And the great world to his aged evening;</l>
 <l>From infant morne, through manly
   noone I draw.</l>
 <l>What the gold Chaldee, of silver Persian saw,</l>
 <l>Greeke brass, or
   Roman iron, is in this one;</l>
 <l>A worke t'out weare Seths pillars, bricke and
   stone,</l>
 <l>And (holy writs excepted) made to yeeld to none,</l>
</lg>

Note that the l element marks verse lines, not typographic lines: the original lineation of the first few lines above has not therefore been made explicit by this encoding, and may be lost. The lb element described in section 5 Page and Line Numbers might additionally be used to mark typographic lines if so desired.

Here is the end of a famous dramatic text, in which speeches and stage directions are marked:
<sp>
 <speaker>Vladimir</speaker>
 <p>Pull on your trousers.</p>
</sp>
<sp>
 <speaker>Estragon</speaker>
 <p>You want me to pull off my trousers?</p>
</sp>
<sp>
 <speaker>Vladimir</speaker>
 <p>Pull <emph>on</emph> your trousers.</p>
</sp>
<sp>
 <speaker>Vladimir</speaker>
 <p>
  <stage>(realizing his trousers are down)</stage>.
   True</p>
</sp>
<stage>He pulls up his trousers</stage>
<sp>
 <speaker>Vladimir</speaker>
 <p>Well? Shall we go?</p>
</sp>
<sp>
 <speaker>Estragon</speaker>
 <p>Yes, let's go.</p>
</sp>
<stage>They do not move.</stage>
Note that the stage (stage direction) element can appear either within a speech or between speeches. The sp ("speech") element contains, following an optional speaker element indicating who is speaking, either paragraphs (if the speech is in prose) or verse lines or stanzas as in the next example. In this case, it is quite common to find that verse lines are split between speakers. The easiest way of encoding this is to use the part attribute to indicate that the lines so fragmented are incomplete :
<div type="Actn="I">
 <head>ACT I</head>
 <div type="Scenen="1">
  <head>SCENE I</head>
  <stage rend="italic"> Enter Barnardo and Francisco, two Sentinels, at several doors</stage>
  <sp>
   <speaker>Barn</speaker>
   <l part="Y">Who's there?</l>
  </sp>
  <sp>
   <speaker>Fran</speaker>
   <l>Nay, answer me. Stand and unfold yourself.</l>
  </sp>
  <sp>
   <speaker>Barn</speaker>
   <l part="I">Long live the King!</l>
  </sp>
  <sp>
   <speaker>Fran</speaker>
   <l part="M">Barnardo?</l>
  </sp>
  <sp>
   <speaker>Barn</speaker>
   <l part="F">He.</l>
  </sp>
  <sp>
   <speaker>Fran</speaker>
   <l>You come most carefully upon your hour.</l>
  </sp>
<!-- ... -->
 </div>
</div>
The same mechanism may be applied to stanzas which are divided between two speakers:
<div>
 <sp>
  <speaker>First voice</speaker>
  <lg type="stanzapart="I">
   <l>But why drives on that ship so fast</l>
   <l>Withouten wave or wind?</l>
  </lg>
 </sp>
 <sp>
  <speaker>Second Voice</speaker>
  <lg part="F">
   <l>The air is cut away before.</l>
   <l>And closes from behind.</l>
  </lg>
 </sp>
<!-- ... -->
</div>
The sp element can also be used for dialogue presented in a prose work as if it were drama, as in the next example, which also demonstrates the use of the who attribute to bear a code identifying the speaker of the piece of dialogue concerned:
<div>
 <sp who="#OPI">
  <speaker>The reverend Doctor Opimian</speaker>
  <p>I do not think I have named a single unpresentable fish.</p>
 </sp>
 <sp who="#GRM">
  <speaker>Mr Gryll</speaker>
  <p>Bream, Doctor: there is not much to be said for bream.</p>
 </sp>
 <sp who="#OPI">
  <speaker>The Reverend Doctor Opimian</speaker>
  <p>On the contrary, sir, I think there is much to be said for him. In the first
     place....</p>
  <p>Fish, Miss Gryll -- I could discourse to you on fish by the hour: but for the present I
     will forbear.</p>
 </sp>
</div>
Here the who attribute values (#OPI etc.) are links, pointing to a list of the characters in the novel, each of which has an identifier:
<list>
 <head>Characters in the novel</head>
 <item xml:id="OPI">
  <name>Dr Opimian</name> : named for the famous Roman fine wine</item>
 <item xml:id="GRM">
  <name>Mr Gryll</name> : named for the mythical Gryllus, one of Ulysses'
   sailors transformed by Circe into a pig, who argues that he was happier in that state than
   as a man</item>
</list>

5 Page and Line Numbers

Page and line breaks etc. may be marked with the following elements.

These elements mark a single point in the text, not a span of text. The global n attribute should be used to supply the number of the page or line beginning at the tag.

When working from a paginated original, it is often useful to record its pagination, if only to simplify later proof-reading. It is also useful for synchronizing an encoded text with a set of page images. Recording the line breaks may be useful for similar reasons.

If features such as pagination or lineation are marked for more than one edition, specify the edition in question using the ed attribute, and supply as many tags are necessary. For example, in the following passage we indicate where the page breaks occur in two different editions (ED1 and ED2)
<p>I wrote to Moor House and to Cambridge immediately, to say what I had done: fully
explaining also why I had thus acted. Diana and <pb ed="ED1n="475"/> Mary approved the step
unreservedly. Diana announced that she would <pb ed="ED2n="485"/>just give me time to get
over the honeymoon, and then she would come and see me.</p>

A special attribute break may be used to indicate whether or not this empty element is considered as a word-breaking, irrespective of any adjacent whitespace. For example, in the following encoded sample:

The pb and lb elements are special cases of the general class of milestone elements which mark reference points within a text. The generic milestone element can mark any kind of reference point: for example, a column break, the start of a new kind of section not otherwise tagged, or in general any significant change in the text not marked by an XML element. The names used for types of unit and for editions referred to by the ed and unit attributes may be chosen freely, but should be documented in the header refsDecl element (see 19.2.3 Reference and Classification Declarations). The milestone element may be used to replace the others, or the others may be used as a set; they should not be mixed arbitrarily.

6 Marking Highlighted Phrases

6.1 Changes of Typeface, etc.

Highlighted words or phrases are those made visibly different from the rest of the text, typically by a change of type font, handwriting style, ink colour etc., which is intended to draw the reader's attention to some associated change.

The global rend attribute can be attached to any element, and used wherever necessary to specify details of the highlighting used for it in the source. For example, a heading rendered in bold might be tagged <head rend="bold">, and one in italic <head rend="italic">.

The values to be used for the rend attribute are not specified by the TEI Guidelines, since they will depend entirely on the needs of the particular project. Some typical values might include italic, bold etc. for font variations; center, right etc. for alignment; large, small etc. for size; smallcaps, allcaps etc. for type variants and so on. Several such words may be used in combination as necessary, but no formal syntax is proposed. The full TEI Guidelines provide more rigorous mechanisms, using other W3C standards such as CSS, as an alternative to the use of rend.

It is not always possible or desirable to interpret the reasons for such changes of rendering in a text. In such cases, the element hi may be used to mark a sequence of highlighted text without making any claim as to its status.

  • hi (highlighted) marks a word or phrase as graphically distinct from the surrounding text, for reasons concerning which no claim is made.
In the following example, the use of a distinct typeface for the subheading and for the included name are recorded but not interpreted:
<p>
 <hi rend="gothic">And this Indenture further
   witnesseth</hi> that the said <hi rend="italic">Walter Shandy</hi>, merchant, in
consideration of the said intended marriage ...
</p>

Alternatively, where the cause for the highlighting can be identified with confidence, a number of other, more specific, elements are available.

  • emph (emphasized) marks words or phrases which are stressed or emphasized for linguistic or rhetorical effect.
  • foreign (foreign) identifies a word or phrase as belonging to some language other than that of the surrounding text.
  • gloss (gloss) identifies a phrase or word used to provide a gloss or definition for some other word or phrase.
  • label (label) contains any label or heading used to identify part of a text, typically but not exclusively in a list or glossary.
  • mentioned marks words or phrases mentioned, not used.
  • term (term) contains a single-word, multi-word, or symbolic designation which is regarded as a technical term.
  • title (title) contains a title for any kind of work.

Some features (notably quotations and glosses) may be found in a text either marked by highlighting, or with quotation marks. In either case, the elements q and gloss (as discussed in the following section) should be used. If the highlighting is to be recorded, use the global rend attribute.

As an example of the elements defined here, consider the following sentence:
On the one hand the Nibelungenlied is associated with the new rise of romance of twelfth-century France, the romans d'antiquité, the romances of Chrétien de Troyes, and the German adaptations of these works by Heinrich van Veldeke, Hartmann von Aue, and Wolfram von Eschenbach.
Interpreting the role of the highlighting, the sentence might look like this:
<p>On the one hand the <title>Nibelungenlied</title>
is associated with the new rise of romance of twelfth-century France, the <foreign>romans
   d'antiquité</foreign>, the romances of Chrétien de Troyes, ...</p>
Describing only the appearance of the original, it might look like this:
<p>On the one hand the <hi rend="italic">Nibelungenlied</hi> is associated with the new rise of romance of twelfth-century France,
the <hi rend="italic">romans d'antiquité</hi>, the romances of Chrétien de Troyes,
...</p>

6.2 Quotations and Related Features

Like changes of typeface, quotation marks are conventionally used to denote several different features within a text, of which the most frequent is quotation. When possible, we recommend that the underlying feature be tagged, rather than the simple fact that quotation marks appear in the text, using the following elements:

  • q (quoted) contains material which is distinguished from the surrounding text using quotation marks or a similar method, for any one of a variety of reasons including, but not limited to: direct speech or thought, technical terms or jargon, authorial distance, quotations from elsewhere, and passages that are mentioned but not used.
  • mentioned marks words or phrases mentioned, not used.
  • soCalled (so called) contains a word or phrase for which the author or narrator indicates a disclaiming of responsibility, for example by the use of scare quotes or italics.
  • gloss (gloss) identifies a phrase or word used to provide a gloss or definition for some other word or phrase.
Here is a simple example of a quotation:
<p>Few dictionary makers are likely to forget Dr. Johnson's description of the
lexicographer as <q>a harmless drudge.</q>
</p>

To record how a quotation was printed (for example, in-line or set off as a display or block quotation), the rend attribute should be used. This may also be used to indicate the kind of quotation marks used.

Direct speech interrupted by a narrator can be represented simply by ending the quotation and beginning it again after the interruption, as in the following example:
<p>
 <q>Who-e debel you?</q> — he at last said —
<q>you no speak-e, damme, I kill-e.</q> And so saying, the lighted tomahawk began
flourishing about me in the dark.
</p>
If it is important to convey the idea that the two q elements together make up a single speech, the linking attributes next and prev may be used, as described in section 8.3 Special kinds of Linking.
Quotations may be accompanied by a reference to the source or speaker, using the who attribute, whether or not this is explicit in the text, as in the following example:
<q who="#Wilson">Spaulding, he came
down into the office just this day eight weeks with this very paper in his hand, and he
says:—<q who="#Spaulding">I wish to the Lord, Mr. Wilson, that I was a red-headed
   man.</q>
</q>
This example also demonstrates how quotations may be embedded within other quotations: one speaker (Wilson) quotes another speaker (Spaulding).

The creator of the electronic text must decide whether quotation marks are replaced by the tags or whether the tags are added and the quotation marks kept. If the quotation marks are removed from the text, the rend attribute may be used to record the way in which they were rendered in the copy text.

The full TEI Guidelines provide additional elements to distinguish direct speech, quotation, and other typical uses of quotation mark although it is not always possible and may not be considered desirable to interpret the function of quotation marks in a text. For simplicity, only q (which may be used for any such case) has been included in TEI Lite.

6.3 Foreign Words or Expressions

Words or phrases which are not in the main language of the texts may be tagged as such in one of two ways. If the word or phrase is already tagged for some reason, the element indicated should bear a value for the global xml:lang attribute indicating the language used. Where there is no applicable element, the element foreign may be used, again using the xml:lang attribute. For example:
<p>John has real <foreign xml:lang="fr">savoir-faire</foreign>.</p>
<p>Have you read <title xml:lang="de">Die
   Dreigroschenoper</title>?</p>
<p>
 <mentioned xml:lang="fr">Savoir-faire</mentioned> is French
for know-how.
</p>
<p>The court issued a writ of <term xml:lang="la">mandamus</term>.</p>

As these examples show, the foreign element should not be used to tag foreign words if some other more specific element such as title, mentioned, or term applies. The global xml:lang attribute may be attached to any element to show that it uses some other language than that of the surrounding text.

The codes used to identify languages, supplied on the xml:lang attribute, must be constructed in a particular way, and must conform to common Internet standards2, as further explained in the relevant section of the TEI Guidelines. Some simple example codes for a few languages are given here:

zhChinesegrcAncient Greek
enEnglishelGreek
enmMiddle EnglishjaJapanese
frFrenchlaLatin
deGermansaSanskrit

7 Notes

All notes, whether printed as footnotes, endnotes, marginalia, or elsewhere, should be marked using the same element:

Where possible, the body of a note should be inserted in the text at the point at which its identifier or mark first appears. This may not be possible for example with marginalia, which may not be anchored to an exact location. For simplicity, it may be adequate to position marginal notes before the relevant paragraph or other element. Notes may also be placed in a separate division of the text (as end-notes are, in printed books) and linked to the relevant portion of the text using their target attribute.

The n attribute may be used to supply the number or identifier of a note if this is required. The resp attribute should be used consistently to distinguish between authorial and editorial notes, if the work has both kinds.

Examples:
<p>Collections are ensembles of
distinct entities or objects of any sort. <note place="footn="1"> We explain below why we
   use the uncommon term <mentioned>collection</mentioned> instead of the expected
 <mentioned>set</mentioned>. Our usage corresponds to the <mentioned>aggregate</mentioned>
   of many mathematical writings and to the sense of <mentioned>class</mentioned> found in
   older logical writings. </note> The elements ...</p>
<lg xml:id="RAM609">
 <note place="margin">The
   curse is finally expiated</note>
 <l>And now this spell was snapt: once more</l>
 <l>I viewed
   the ocean green,</l>
 <l>And looked far forth, yet little saw</l>
 <l>Of what had else been seen
   —</l>
</lg>

8 Cross References and Links

Explicit cross references or links from one point in a text to another in the same or another document may be encoded using the elements described in this section. Implicit links (such as the association between two parallel texts, or that between a text and its interpretation) may be encoded using the linking attributes discussed in section 8.3 Special kinds of Linking.

8.1 Simple Cross References

A cross reference from one point within a single document to another can be encoded using either of the following elements:

  • ref (reference) defines a reference to another location, possibly modified by additional text or comment.
  • ptr (pointer) defines a pointer to another location.

The difference between these two elements is that ptr is an empty element, simply marking a point from which a link is to be made, whereas ref may contain some text as well, typically identifying the target of the cross reference. The ptr element would be used for a cross reference which is to be indicated by some non-verbal means such as a symbol or icon, or in an electronic text by a button. It is also useful in document production systems, where the formatter can generate the correct verbal form of the cross reference.

The following two forms, for example, are logically equivalent :
See especially <ref target="#SEC12">section 12 on
page 34</ref>.
See especially <ptr target="#SEC12"/>.
The value of the target attribute on either element may be the identifier of some other element within the current document. The passage or phrase being pointed at must bear an identifier, and must therefore be tagged as an element of some kind. In the following example, the cross reference is to a div element:
... see especially <ptr target="#SEC12"/>. ...
<div xml:id="SEC12">
 <head>Concerning Identifiers</head>
<!-- ... -->
</div>
Because the xml:id attribute is global, any element in a TEI document may be pointed to in this way. In the following example, a paragraph has been given an identifier so that it may be pointed at:
... this is
discussed in <ref target="#pspec">the paragraph on links</ref> ...
<p xml:id="pspec">Links
may be made to any kind of element ...</p>

Sometimes the target of a cross reference does not correspond with any particular feature of a text, and so may not be tagged as an element of some kind. If the desired target is simply a point in the current document, the easiest way to mark it is by introducing an anchor element at the appropriate spot. If the target is some sequence of words not otherwise tagged, the seg element may be introduced to mark them. These two elements are described as follows:

  • anchor (anchor point) attaches an identifier to a point within a text, whether or not it corresponds with a textual element.
  • seg (arbitrary segment) represents any segmentation of text below the ‘chunk’ level.
In the following (imaginary) example, ref elements have been used to represent points in this text which are to be linked in some way to other parts of it; in the first case to a point, and in the second, to a sequence of words:
Returning to <ref target="#ABCD">the point where I
dozed off</ref>, I noticed that <ref target="#EFGH">three words</ref> had been circled in
red by a previous reader
This encoding requires that elements with the specified identifiers (ABCD and EFGH in this example) are to be found somewhere else in the current document. Assuming that no element already exists to carry these identifiers, the anchor and seg elements may be used:
....
<anchor type="bookmarkxml:id="ABCD"/> .... ....<seg type="targetxml:id="EFGH"> ...
</seg> ...

The type attribute should be used (as above) to distinguish amongst different purposes for which these general purpose elements might be used in a text. Some other uses are discussed in section 8.3 Special kinds of Linking below.

8.2 Pointing to other documents

So far, we have shown how the elements ptr and ref may be used for cross-references or links whose targets occur within the same document as their source. However, the same elements may also be used to refer to elements in any other XML document or resource, such as a document on the web, or a database component. This is possible because the value of the target attribute may be any valid universal resource indicator (URI)Note: A full definition of this term, defined by the W3C (the consortium which manages the development and maintenance of the World Wide Web), is beyond the scope of this tutorial: however, the most frequently encountered version of a URI is the familiar ‘URL’ used to indicate a web page, such as http://www.tei-c.org/index.xml.

A URI may reference a web page or just a part of one, for example http://www.tei-c.org/index.xml#SEC2. The sharp sign indicates that what follows it is the identifier of an element to be located within the XML document identified by what precedes it: this example will therefore locate an element which has an xml:id attribute value of SEC2 within the document retrieved from http://www.tei-c.org/index.xml. In the examples we have discussed so far, the part to the left of the sharp sign has been omitted: this is understood to mean that the referenced element is to be located within the current document.

Parts of an XML document can be specified by means of other more sophisticated mechanisms using a special language called Xpath, also defined by the W3C. This is particularly useful where the elements to be linked to do not bear identifiers and must therefore be located by some other means.

8.3 Special kinds of Linking

The following special purpose linking attributes are defined for every element in the TEI Lite scheme:

ana
links an element with its interpretation.
corresp
links an element with one or more other corresponding elements.
next
links an element to the next element in an aggregate.
prev
links an element to the previous element in an aggregate.
The ana (analysis) attribute is intended for use where a set of abstract analyses or interpretations have been defined somewhere within a document, as further discussed in section 15 Interpretation and Analysis. For example, a linguistic analysis of the sentence ‘John loves Nancy’ might be encoded as follows:
<seg type="sentenceana="SVO">
 <seg type="lexana="#NP1">John</seg>
 <seg type="lexana="#VVI">loves</seg>
 <seg type="lexana="#NP1">Nancy</seg>
</seg>
This encoding implies the existence elsewhere in the document of elements with identifiers SVO, NP1, and VV1 where the significance of these particular codes is explained. Note the use of the seg element to mark particular components of the analysis, distinguished by the type attribute.
The corresp (corresponding) attribute provides a simple way of representing some form of correspondence between two elements in a text. For example, in a multilingual text, it may be used to link translation equivalents, as in the following example
<seg xml:lang="frxml:id="FR1"
 corresp="#EN1">
Jean
aime Nancy</seg>
<seg xml:lang="enxml:id="EN1"
 corresp="#FR1">
John loves
Nancy</seg>
The same mechanism may be used for a variety of purposes. In the following example, it has been used to represent the correspondences between ‘the show’ and ‘Shirley’, and between ‘NBC’ and ‘the network’:
<p>
 <title xml:id="shirley">Shirley</title>, which
made its Friday night debut only a month ago, was not listed on <name xml:id="nbc">NBC</name>'s new schedule, although <seg xml:id="networkcorresp="#nbc">the network</seg>
says <seg xml:id="showcorresp="#shirley">the show</seg> still is being
considered.
</p>
The next and prev attributes provide a simple way of linking together the components of a discontinuous element, as in the following example:
<q xml:id="Q1anext="#Q1b">Who-e debel you?</q>
he at last said — <q xml:id="Q1bprev="#Q1a">you no speak-e, damme, I kill-e.</q> And so
saying, the lighted tomahawk began flourishing about me in the dark.

9 Editorial Interventions

The process of encoding an electronic text has much in common with the process of editing a manuscript or other text for printed publication. In either case a conscientious editor may wish to record both the original state of the source and any editorial correction or other change made in it. The elements discussed in this and the next section provide some facilities for meeting these needs.

9.1 Correction and Normalization

The following elements may be used to mark correction, that is editorial changes introduced where the editor believes the original to be erroneous:

  • corr (correction) contains the correct form of a passage apparently erroneous in the copy text.
  • sic (Latin for thus or so) contains text reproduced although apparently incorrect or inaccurate.

The following elements may be used to mark normalization, that is editorial changes introduced for the sake of consistency or modernization of a text:

  • orig (original form) contains a reading which is marked as following the original, rather than being normalized or corrected.
  • reg (regularization) contains a reading which has been regularized or normalized in some sense.

As an example, consider this extract from the quarto printing of Shakespeare's Henry V.

... for his nose was as sharp as a pen and a table of green feelds
A modern editor might wish to make a number of interventions here, specifically to modernize (or normalise) the Elizabethan spellings of a' and feelds for he and fields respectively. He or she might also want to emend table to babbl'd, following an editorial tradition that goes back to the 18th century Shakespearian scholar Lewis Theobald. The following encoding would then be appropriate:
... for his nose was as sharp as
a pen and <reg>he</reg>
<corr resp="#Theobald">babbl'd</corr> of green
<reg>fields</reg>
A more conservative or source-oriented editor, however, might want to retain the original, but at the same time signal that some of the readings it contains are in some sense anomalous:
... for his nose was as sharp as a pen and
<orig>a</orig>
<sic>table</sic> of green
<orig>feelds</orig>
Finally, a modern digital editor may decide to combine both possibilities in a single composite text, using the choice element.
  • choice (choice) groups a number of alternative encodings for the same point in a text.
This allows an editor to mark where alternative readings are possible:
... for his nose was as sharp as a pen and
<choice>
 <orig>a</orig>
 <reg>he</reg>
</choice>
<choice>
 <corr resp="#Theobald">babbl'd</corr>
 <sic>table</sic>
</choice> of green

<choice>
 <orig>feelds</orig>
 <reg>fields</reg>
</choice>

9.2 Omissions, Deletions, and Additions

In addition to correcting or normalizing words and phrases, editors and transcribers may also supply missing material, omit material, or transcribe material deleted or crossed out in the source. In addition, some material may be particularly hard to transcribe because it is hard to make out on the page. The following elements may be used to record such phenomena:

  • add (addition) contains letters, words, or phrases inserted in the source text by an author, scribe, or a previous annotator or corrector.
  • gap (gap) indicates a point where material has been omitted in a transcription, whether for editorial reasons described in the TEI header, as part of sampling practice, or because the material is illegible, invisible, or inaudible.
  • del (deletion) contains a letter, word, or passage deleted, marked as deleted, or otherwise indicated as superfluous or spurious in the copy text by an author, scribe, or a previous annotator or corrector.
  • unclear (unclear) contains a word, phrase, or passage which cannot be transcribed with certainty because it is illegible or inaudible in the source.
These elements may be used to record changes made by an editor, by the transcriber, or (in manuscript material) by the author or scribe. For example, if the source for an electronic text read ‘The following elements are provided for for simple editorial interventions.’ then it might be felt desirable to correct the obvious error, but at the same time to record the deletion of the superfluous second for, thus:
The following elements are provided for <del resp="#LB">for</del> simple editorial interventions.
The attribute value #LB on the resp attribute is used to point to a fuller definition (typically in a respStmt element) for the agency responsible for correcting the duplication of for.
If the source read ‘The following elements provided for simple editorial interventions.’ (i.e. if the verb had been inadvertently dropped) then the corrected text might read:
The following elements <add resp="#LB">are</add> provided for simple editorial interventions.
These elements are also used to record authorial changes in manuscripts. A manuscript in which the author has first written ‘How it galls me, what a galling shadow’, then crossed out the word galls and inserted dogs might be encoded thus:
How it <del hand="#DHLtype="overstrike">galls</del>
<add hand="#DHLplace="supralinear">dogs</add> me, what a galling shadow
Again, the code #DHL points to another location where more information about the hand concerned is to be found3.
Similarly, the unclear and gap elements may be used together to indicate the omission of illegible material; the following example also shows the use of add for a conjectural emendation:
One hundred
&amp; twenty good regulars joined to me <unclear>
 <gap reason="indecipherable"/>
</unclear>
&amp; instantly, would aid me signally <add hand="#ed">in?</add> an enterprise against
Wilmington.
The del element marks material which has been transcribed as part of the electronic text despite being marked as deleted, while gap marks the location of material which is omitted from the electronic text, whether it is legible or not. A language corpus, for example, might omit long quotations in foreign languages:
<p> ... An example of a list appearing in a fief
ledger of <name type="place">Koldinghus</name>
 <date>1611/12</date> is given below. It shows cash income from a sale of
honey.</p>
<gap>
 <desc>quotation from ledger (in Danish)</desc>
</gap>
<p>A description of the
overall structure of the account is once again ... </p>
Other corpora (particular those constructed before the widespread use of scanners) systematically omit figures and mathematics:
<p>At the bottom of your screen below the mode line is the <term>minibuffer</term>. This is
the area where Emacs echoes the commands you enter and where you specify filenames for Emacs
to find, values for search and replace, and so on. <gap reason="graphic">
  <desc>diagram of
     Emacs screen</desc>
 </gap>
</p>

The full TEI scheme provides more precise ways of capturing different aspects of a transcription, distinguishing for example between text added or supplied by the encoder and text indicated as supplied or deleted in the source. TEI Lite does not provide different tags for these purposes.

9.3 Abbreviations and their Expansion

Like names, dates, and numbers, abbreviations may be transcribed as they stand or expanded; they may be left unmarked, or encoded using the following elements:

  • abbr (abbreviation) contains an abbreviation of any sort.
  • expan (expansion) contains the expansion of an abbreviation.
The abbr element is useful as a means of distinguishing semi-lexical items such as acronyms or jargon:
We can sum up the above
discussion as follows: the identity of a <abbr>CC</abbr> is defined by that calibration of
values which motivates the elements of its <abbr>GSP</abbr>;
Every manufacturer of <abbr>3GL</abbr> or
<abbr>4GL</abbr> languages is currently nailing on <abbr>OOP</abbr> extensions

The type attribute may be used to distinguish types of abbreviation by their function.

The expan element is used to mark an expansion supplied by an encoder. This element is particularly useful in the transcription of manuscript materials. For example, the character p with a bar through its descender as a conventional representation for the word per is commonly encountered in Medieval European manuscripts. An encoder may choose to expand this as follows:
<expan>per</expan>
The expansion corresponding with an abbreviated form may not always contain the same letters as the abbreviation. Where it does, however, common editorial practice is to italicize or otherwise signal which letters have been supplied. The expan element should not be used for this purpose since its function is to indicate an expanded form, not a part of one. For example, consider the common abbreviation wt (for with) found in medieval texts. In a modern edition, an editor might wish to represent this as ‘with’, italicising the letters not found in the source. One simple means of achieving that would be an encoding such as the follow
<expan>w<hi rend="it">i</hi>t<hi rend="it">h</hi>
</expan>
The full TEI also provides elements <ex> and <am> for use in this situation, but these are not included in the TEI Lite schema.
To record both an abbreviation and its expansion, the choice element mentioned above may be used to group the abbreviated form with its proposed expansion:
<choice>
 <abbr>wt</abbr>
 <expan>with</expan>
</choice>

10 Names, Dates, and Numbers

The TEI scheme defines elements for a large number of ‘data-like’ features which may appear almost anywhere within almost any kind of text. These features may be of particular interest in a range of disciplines; they all relate to objects external to the text itself, such as the names of persons and places, numbers and dates. They also pose particular problems for many natural language processing (NLP) applications because of the variety of ways in which they may be presented within a text. The elements described here, by making such features explicit, reduce the complexity of processing texts containing them.

10.1 Names and Referring Strings

A referring string is a phrase which refers to some person, place, object, etc. Two elements are provided to mark such strings:

  • rs (referencing string) contains a general purpose name or referring string.
  • name (name, proper noun) contains a proper noun or noun phrase.
The type attribute is used to distinguish amongst (for example) names of persons, places and organizations, where this is possible:
<q>My dear <rs type="person">Mr. Bennet</rs>, </q>
said his lady to him one day,
<q>have you heard that <rs type="place">Netherfield Park</rs>
is let at last?</q>
It being one of the principles of the <rs type="organization">Circumlocution Office</rs> never, on any account whatsoever, to give a
straightforward answer, <rs type="person">Mr Barnacle</rs> said,
<q>Possibly.</q>
As the following example shows, the rs element may be used for any reference to a person, place, etc, not necessarily one in the form of a proper noun or noun phrase.
<q>My dear <rs type="person">Mr. Bennet</rs>,</q>
said <rs type="person">his lady</rs> to him one day...

The name element by contrast is provided for the special case of referencing strings which consist only of proper nouns; it may be used synonymously with the rs element, or nested within it if a referring string contains a mixture of common and proper nouns.

Simply tagging something as a name is rarely enough to enable automatic processing of personal names into the canonical forms usually required for reference purposes. The name as it appears in the text may be inconsistently spelled, partial, or vague. Moreover, name prefixes such as van or de la, may or may not be included as part of the reference form of a name, depending on the language and country of origin of the bearer.

The key attribute provides an alternative normalized identifier for the object being named, like a database record key. It may thus be useful as a means of gathering together all references to the same individual or location scattered throughout a document:
<q>My dear <rs type="personkey="BENM1">Mr.
   Bennet</rs>, </q> said <rs type="personkey="BENM2">his lady</rs> to him one day,
<q>have
you heard that <rs type="placekey="NETP1">Netherfield Park</rs> is let at
last?</q>
This use should be distinguished from the case of the reg (regularization) element, which provides a means of marking the standard form of a referencing string as demonstrated below:
<name type="personkey="WADLM1">
 <choice>
  <sic>Walter de la Mare</sic>
  <reg>de la Mare, Walter</reg>
 </choice>
</name> was
born at <name key="Ch1type="place">Charlton</name>, in <name key="KT1type="county">Kent</name>, in 1873.
The index element discussed in indexing may be more appropriate if the function of the regularization is to provide a consistent index:
<p>
 <name type="place">Montaillou</name> is not a
large parish. At the time of the events which led to <name type="person">Fournier</name>'s
<index>
  <term>Benedict XII, Pope of Avignon (Jacques Fournier)</term>
 </index>
investigations, the local population consisted of between 200 and 250
inhabitants.
</p>
Although adequate for many simple applications, these methods have two inconveniences: if the name occurs many times, then its regularised form must be repeated many times; and the burden of additional XML markup in the body of the text may be inconvenient to maintain and complex to process. For applications such as onomastics, relating to persons or places named rather than the name itself, or wherever a detailed analysis of the component parts of a name is needed, the full TEI Guidelines provide a range of other solutions.

10.2 Dates and Times

Tags for the more detailed encoding of times and dates include the following:

  • date (date) contains a date in any format.
  • time (time) contains a phrase defining a time of day in any format.
These elements have a number of attributes which can be used to provide normalised versions of their values.
  • att.datable provides attributes for normalization of elements that contain dates, times, or datable events.
    periodsupplies pointers to one or more definitions of named periods of time (typically categorys, dates or <event>s) within which the datable item is understood to have occurred.
    when [att.datable.w3c]supplies the value of the date or time in a standard form, e.g. yyyy-mm-dd.
The when attribute specifies a normalized form for the date or time, using one of the standard formats defined by ISO 8601. Partial dates or times (e.g. ‘1990’, ‘September 1990’, ‘twelvish’) can be expressed by omitting a part of the value supplied, as in the following examples:
<date when="1980-02-21">21
Feb 1980</date>
<date when="1990">1990</date>
<date when="1990-09">September 1990</date>
<date when="--09">September</date>
<date when="2001-09-11T12:48:00">Sept 11th, 12 minutes before 9
am</date>
Note in the last example the use of a normalized representation for the date string which includes a time: this example could thus equally well be tagged using the time element.
Given on the <date when="1977-06-12">Twelfth
Day of June in the Year of Our Lord One Thousand Nine Hundred and Seventy-seven of the
Republic the Two Hundredth and first and of the University the Eighty-Sixth.</date>
<l>specially when it's nine below zero</l>
<l>and <time when="15:00:00">three o'clock in the afternoon</time>
</l>

10.3 Numbers

Numbers can be written with either letters or digits (twenty-one, xxi, and 21) and their presentation is language-dependent (e.g. English 5th becomes Greek 5.; English 123,456.78 equals French 123.456,78). In natural-language processing or machine-translation applications, it is often helpful to distinguish them from other, more ‘lexical’ parts of the text. In other applications, the ability to record a number's value in standard notation is important. The num element provides this possibility:

  • num (number) contains a number, written in any form.
For example:
<num value="33">xxxiii</num>
<num type="cardinalvalue="21">twenty-one</num>
<num type="percentagevalue="10">ten percent</num>
<num type="percentagevalue="10">10%</num>
<num type="ordinalvalue="5">5th</num>

11 Lists

The element list is used to mark any kind of list. A list is a sequence of text items, which may be numbered, bulleted, or arranged as a glossary list. Each item may be preceded by an item label (in a glossary list, this label is the term being defined):

Individual list items are tagged with item. The first item may optionally be preceded by a head, which gives a heading for the list. The numbering of a list may be omitted, indicated using the n attribute on each item, or (rarely) tagged as content using the label element. The following are all thus equivalent:
<list>
 <head>A short list</head>
 <item>First item in list.</item>
 <item>Second item in list.</item>
 <item>Third item in list.</item>
</list>
<list>
 <head>A short list</head>
 <item n="1">First item in list.</item>
 <item n="2">Second item in list.</item>
 <item n="3">Third item in list.</item>
</list>
<list>
 <head>A short list</head>
 <label>1</label>
 <item>First item in list.</item>
 <label>2</label>
 <item>Second item in list.</item>
 <label>3</label>
 <item>Third item in list.</item>
</list>
The styles should not be mixed in the same list.
A simple two-column table may be treated as a glossary list, tagged <list type="gloss">. Here, each item comprises a term and a gloss, marked with label and item respectively. These correspond to the elements term and gloss, which can occur anywhere in prose text.
<list type="gloss">
 <head>Vocabulary</head>
 <label xml:lang="enm">nu</label>
 <item>now</item>
 <label xml:lang="enm">lhude</label>
 <item>loudly</item>
 <label xml:lang="enm">bloweth</label>
 <item>blooms</item>
 <label xml:lang="enm">med</label>
 <item>meadow</item>
 <label xml:lang="enm">wude</label>
 <item>wood</item>
 <label xml:lang="enm">awe</label>
 <item>ewe</item>
 <label xml:lang="enm">lhouth</label>
 <item>lows</item>
 <label xml:lang="enm">sterteth</label>
 <item>bounds, frisks</item>
 <label xml:lang="enm">verteth</label>
 <item xml:lang="la">pedit</item>
 <label xml:lang="enm">murie</label>
 <item>merrily</item>
 <label xml:lang="enm">swik</label>
 <item>cease</item>
 <label xml:lang="enm">naver</label>
 <item>never</item>
</list>

Where the internal structure of a list item is more complex, it may be preferable to regard the list as a table, for which special-purpose tagging is defined below (13 Tables).

Lists of whatever kind can, of course, nest within list items to any depth required. Here, for example, a glossary list contains two items, each of which is itself a simple list:
<list type="gloss">
 <label>EVIL</label>
 <item>
  <list type="simple">
   <item>I am cast upon a horrible desolate island, void of all hope of recovery.</item>
   <item>I am singled out and separated as it were from all the world to be miserable.</item>
   <item>I am divided from mankind — a solitaire; one banished from human society.</item>
  </list>
 </item>
 <label>GOOD</label>
 <item>
  <list type="simple">
   <item>But I am alive; and not drowned, as all my ship's company were.</item>
   <item>But I am singled out, too, from all the ship's crew, to be spared from
       death...</item>
   <item>But I am not starved, and perishing on a barren place, affording no
       sustenances....</item>
  </list>
 </item>
</list>
A list need not necessarily be displayed in list format. For example,
<p>On those remote pages it is written that animals
are divided into <list rend="run-on">
  <item n="a">those that belong to the Emperor,</item>
  <item n="b"> embalmed ones, </item>
  <item n="c"> those that are trained, </item>
  <item n="d"> suckling pigs, </item>
  <item n="e"> mermaids, </item>
  <item n="f"> fabulous ones, </item>
  <item n="g"> stray dogs, </item>
  <item n="h"> those that are included in this classification, </item>
  <item n="i"> those that tremble as if they were mad, </item>
  <item n="j"> innumerable ones, </item>
  <item n="k"> those drawn with a very fine camel's-hair brush, </item>
  <item n="l"> others, </item>
  <item n="m"> those that have just broken a flower vase, </item>
  <item n="n"> those that resemble flies from a distance.</item>
 </list>
</p>

Lists of bibliographic items should be tagged using the listBibl element, described in the next section.

12 Bibliographic Citations

It is often useful to distinguish bibliographic citations where they occur within texts being transcribed for research, if only so that they will be properly formatted when the text is printed out. The element bibl is provided for this purpose. Where the components of a bibliographic reference are to be distinguished, the following elements may be used as appropriate. It is generally useful to mark at least those parts (such as the titles of articles, books, and journals) which will need special formatting. The other elements are provided for cases where particular interest attaches to such details.

For example, the following editorial note might be transcribed as shown:
He was a member of Parliament for Warwickshire in 1445, and died March 14, 1470 (according to Kittredge, Harvard Studies 5. 88ff).
He was a member of Parliament for Warwickshire
in 1445, and died March 14, 1470 (according to <bibl>
 <author>Kittredge</author>,
<title>Harvard Studies</title>
 <biblScope>5. 88ff</biblScope>
</bibl>).

For lists of bibliographic citations, the listBibl element should be used; it may contain a series of bibl elements.

13 Tables

Tables represent a challenge for any text processing system, but simple tables, at least, appear in so many texts that even in the simplified TEI tag set presented here, markup for tables is necessary. The following elements are provided for this purpose:

For example, Defoe uses mortality tables like the following in the Journal of the Plague Year to show the rise and ebb of the epidemic:
<p>It was indeed coming on amain, for the burials
that same week were in the next adjoining parishes thus:— <table rows="5cols="4">
  <row role="data">
   <cell role="label">St. Leonard's, Shoreditch</cell>
   <cell>64</cell>
   <cell>84</cell>
   <cell>119</cell>
  </row>
  <row role="data">
   <cell role="label">St. Botolph's, Bishopsgate</cell>
   <cell>65</cell>
   <cell>105</cell>
   <cell>116</cell>
  </row>
  <row role="data">
   <cell role="label">St. Giles's, Cripplegate</cell>
   <cell>213</cell>
   <cell>421</cell>
   <cell>554</cell>
  </row>
 </table>
</p>
<p>This shutting up of houses was at first counted a very cruel and unchristian
method, and the poor people so confined made bitter lamentations. ... </p>

14 Figures and Graphics

Not all the components of a document are necessarily textual. The most straightforward text will often contain diagrams or illustrations, to say nothing of documents in which image and text are inextricably intertwined, or electronic resources in which the two are complementary.

The encoder may simply record the presence of a graphic within the text, possibly with a brief description of its content, and may also provide a link to a digitized version of the graphic, using the following elements:

Any textual information accompanying the graphic, such as a heading and/or caption, may be included within the figure element itself, in a head and one or more p elements, as also may any text appearing within the graphic itself. It is strongly recommended that a prose description of the image be supplied, as the content of a figDesc element, for the use of applications which are not able to render the graphic, and to render the document accessible to vision-impaired readers. (Such text is not normally considered part of the document proper.)

The simplest use for these elements is to mark the position of a graphic and provide a link to it, as in this example;
<pb n="412"/>
<figure>
 <graphic url="p412fig.png"/>
</figure>
<pb n="413"/>
This indicates that the graphic contained by the file p412fig.png appears between pages 412 and 413.
The graphic element can appear anywhere that textual content is permitted, within but not between paragraphs or headings. In the following example, the encoder has decided to treat a specific printer's ornament as a heading:
<head>
 <graphic url="http://www.iath.virginia.edu/gants/Ornaments/Heads/hp-ral02.gif"/>
</head>
More usually, a graphic will have at the least an identifying title, which may be encoded using the head element, or a number of figures may be grouped together in a particular structure. It is also often convenient to include a brief description of the image. The figure element provides a means of wrapping one or more such elements together as a kind of graphic ‘block’:
<figure>
 <graphic url="fessipic.png"/>
 <head>Mr Fezziwig's Ball</head>
 <figDesc>A Cruikshank
   engraving showing Mr Fezziwig leading a group of revellers.</figDesc>
</figure>
These cases should be carefully distinguished from the case where an encoded text is complemented by a collection of digital images, maintained as a distinct resource. The facs attribute may be used to associate any element in an encoded text with a digital facsimile of it. In the simple case where only page images are available, the facs attribute on the pb element may be used to associate each image with an appropriate point in the text:
<text>
 <pb facs="page1.pngn="1"/>
<!-- text contained on page 1 is encoded here -->
 <pb facs="page2.pngn="2"/>
<!-- text contained on page 2 is encoded here -->
</text>
This method is only appropriate in the simple case where each digital image file page1.png etc. corresponds with a single transcribed and encoded page. If more detailed alignment of image and transcription is required, for example because the image files actually represent double page spreads, more sophisticated mechanisms are provided in the full TEI Guidelines.

15 Interpretation and Analysis

It is often said that all markup is a form of interpretation or analysis. While it is certainly difficult, and may be impossible, to distinguish firmly between ‘objective’ and ‘subjective’ information in any universal way, it remains true that judgments concerning the latter are typically regarded as more likely to provide controversy than those concerning the former. Many scholars therefore prefer to record such interpretations only if it is possible to alert the reader that they are considered more open to dispute, than the rest of the markup. This section describes some of the elements provided by the TEI scheme to meet this need.

15.1 Orthographic Sentences

Interpretation typically ranges across the whole of a text, with no particular respect to other structural units. A useful preliminary to intensive interpretation is therefore to segment the text into discrete and identifiable units, each of which can then bear a label for use as a sort of ‘canonical reference’. To facilitate such uses, these units may not cross each other, nor nest within each other. They may conveniently be represented using the following element:

  • s (s-unit) contains a sentence-like division of a text.
As the name suggests, the s element is most commonly used (in linguistic applications at least) for marking orthographic sentences, that is, units defined by orthographic features such as punctuation. For example, the passage from Jane Eyre discussed earlier might be divided into s-units as follows:
<pb n="474"/>
<div type="chaptern="38">
 <p>
  <s n="001">Reader, I married him.</s>
  <s n="002">A quiet wedding we had:</s>
  <s n="003">he
     and I, the parson and clerk, were alone present.</s>
  <s n="004">When we got back from
     church, I went into the kitchen of the manor-house, where Mary was cooking the dinner, and
     John cleaning the knives, and I said —</s>
 </p>
 <p>
  <q>
   <s n="005">Mary, I have been married to Mr Rochester this morning.</s>
  </q> ... </p>
</div>
Note that s elements cannot nest: the beginning of one s element implies that the previous one has finished. When s-units are tagged as shown above, it is advisable to tag the entire text end-to-end, so that every word in the text being analysed will be contained by exactly one s element, whose identifier can then be used to specify a unique reference for it. If the identifiers used are unique within the document, then the xml:id attribute might be used in preference to the n used in the above example.

15.2 Words and punctuation

Tokenization, that is, the identification of lexical or non-lexical tokens within a text, is a very common requirement for all kinds of textual analysis, and not an entirely trivial one. The decision as to whether, for example, ‘can't’ in English or ‘du’ in French should be treated as one word or two is not simple. Consequently it is often useful to make explicit the preferred tokenization in a marked up text. The following elements are available for this purpose:

  • w (word) represents a grammatical (not necessarily orthographic) word.
  • pc (punctuation character) contains a character or string of characters regarded as constituting a single punctuation mark.
For example, the output from a part of speech tagger might be recorded in TEI Lite as follows:
<s n="1">
 <w ana="#NP0">Marley</w>
 <w ana="#VBD">was</w>
 <w ana="#AJ0">dead</w>
 <pc>:</pc>
 <w ana="#TO0">to</w>
 <w ana="#VBB">begin</w>
 <w ana="#PRP">with</w>
 <pc>. </pc>
</s>
In this example, each word has been decorated with an automatically generated part of speech code, using the ana attribute discussed in section 8.3 Special kinds of Linking above. The w also provides for each word to be associated with a root form or lemma, either explicitly using the lemma attribute, or by reference, using the lemmaRef attribute, as in this example:
...<w ana="#VBDlemma="be"
 lemmaRef="http://www.myLexicon.com/be">
was</w> ...

15.3 General-Purpose Interpretation Elements

The w element is a specialisation of the seg element which has already been introduced for use in identifying otherwise unmarked targets of cross references and hypertext links (see section 8 Cross References and Links); it identifies some phrase-level portion of text to which the encoder may assign a user-specified type, as well as a unique identifier; it may thus be used to tag textual features for which there is no other provision in the published TEI Guidelines.

For example, the Guidelines provide no ‘apostrophe’ element to mark parts of a literary text in which the narrator addresses the reader (or hearer) directly. One approach might be to regard these as instances of the q element, distinguished from others by an appropriate value for the who attribute. A possibly simpler, and certainly more general, solution would however be to use the seg element as follows:
<div type="chaptern="38">
 <p>
  <seg type="apostrophe">Reader, I married him.</seg> A quiet wedding we had: ...</p>
</div>
The type attribute on the seg element can take any value, and so can be used to record phrase-level phenomena of any kind; it is good practice to record the values used and their significance in the header.

A seg element of one type (unlike the s element which it superficially resembles) can be nested within a seg element of the same or another type. This enables quite complex structures to be represented; some examples were given in section 8.3 Special kinds of Linking above. However, because it must respect the requirement that elements be properly nested and may not cut across each other, it cannot cope with the common requirement to associate an interpretation with arbitrary segments of a text which may completely ignore the document hierarchy. It also requires that the interpretation itself be represented by a single coded value in the type attribute.

Neither restriction applies to the interp element, which provides powerful features for the encoding of quite complex interpretive information in a relatively straightforward manner.

  • interp (interpretation) summarizes a specific interpretative annotation which can be linked to a span of text.
  • interpGrp (interpretation group) collects together a set of related interpretations which share responsibility or type.

These elements allow the encoder to specify both the class of an interpretation, and the particular instance of that class which the interpretation involves. Thus, whereas with seg one can say simply that something is an apostrophe, with interp one can say that it is an instance (apostrophe) of a larger class (rhetorical figures).

Moreover, interp is a ‘stand off’ element: it does not surround the segments of text which it describes, but instead is linked to the passage in question either by means of the ana attribute discussed in section 8.3 Special kinds of Linking above, or by means of its own inst attribute. This means that any kind of analysis can be represented, independently of the document hierarchy, as well as facilitating the grouping of analyses of a particular type together. A special purpose interpGrp element is provided for the latter purpose.

For example, suppose that you wish to mark such diverse aspects of a text as themes or subject matter, rhetorical figures, and the locations of individual scenes of the narrative. Different portions of our sample passage from Jane Eyre for example, might be associated with the rhetorical figures of apostrophe, hyperbole, and metaphor; with subject-matter references to churches, servants, cooking, postal service, and honeymoons; and with scenes located in the church, in the kitchen, and in an unspecified location (drawing room?).

These interpretations could be placed anywhere within the text element; it is however good practice to put them all in the same place (e.g. a separate section of the front or back matter), as in the following example:
<back>
 <div type="Interpretations">
  <p>
   <interp xml:id="fig-apos-1"
    resp="#LB-MSMtype="figureOfSpeech">
apostrophe</interp>
   <interp xml:id="fig-hyp-1"
    resp="#LB-MSMtype="figureOfSpeech">
hyperbole</interp>
   <interp xml:id="set-church-1"
    resp="#LB-MSMtype="setting">
church</interp>
   <interp xml:id="ref-church-1"
    resp="#LB-MSMtype="reference">
church</interp>
   <interp xml:id="ref-serv-1"
    resp="#LB-MSMtype="reference">
servants</interp>
  </p>
 </div>
</back>
The evident redundancy of this encoding can be considerably reduced by using the interpGrp element to group together all those interp elements which share common attribute values, as follows:
<back>
 <div type="Interpretations">
  <p>
   <interpGrp type="figureOfSpeech"
    resp="#LB-MSM">

    <interp xml:id="fig-apos">apostrophe</interp>
    <interp xml:id="fig-hyp">hyperbole</interp>
    <interp xml:id="fig-meta">metaphor</interp>
   </interpGrp>
   <interpGrp type="scene-setting"
    resp="#LB-MSM">

    <interp xml:id="set-church">church</interp>
    <interp xml:id="set-kitch">kitchen</interp>
    <interp xml:id="set-unspec">unspecified</interp>
   </interpGrp>
   <interpGrp type="reference"
    resp="#LB-MSM">

    <interp xml:id="ref-church">church</interp>
    <interp xml:id="ref-serv">servants</interp>
    <interp xml:id="ref-cook">cooking</interp>
   </interpGrp>
  </p>
 </div>
</back>
Once these interpretation elements have been defined, they can be linked with the parts of the text to which they apply in either or both of two ways. The ana attribute can be used on whichever element is appropriate:
<div type="chaptern="38">
 <p xml:id="P38.1"
  ana="#set-church #set-kitch">

  <s xml:id="P38.1.1ana="#fig-apos">Reader, I
     married him.</s>
 </p>
</div>
Note in this example that since the paragraph has two settings (in the church and in the kitchen), the identifiers of both have been supplied.
Alternatively, the interp elements can point to all the parts of the text to which they apply, using their inst attribute:
<interp xml:id="fig-apos-2"
 type="figureOfSpeechresp="#LB-MSMinst="#P38.1.1">
apostrophe</interp>
<interp xml:id="set-church-2"
 type="scene-settinginst="#P38.1resp="#LB-MSM">
church</interp>
<interp xml:id="set-kitchen-2"
 type="scene-settinginst="#P38.1resp="#LB-MSM">
kitchen</interp>
The interp element is not limited to any particular type of analysis. The literary analysis shown above is but one possibility; one could equally well use interp to capture a linguistic part-of-speech analysis. For example, the example sentence given in section 8.3 Special kinds of Linking assumes a linguistic analysis which might be represented as follows:
<interp xml:id="NP1type="pos">noun
phrase, singular</interp>
<interp xml:id="VV1type="pos">inflected verb, present-tense
singular</interp> ...

16 Technical Documentation

Although the focus of this document is on the use of the TEI scheme for the encoding of existing ‘pre-electronic’ documents, the same scheme may also be used for the encoding of new documents. In the preparation of new documents (such as this one), XML has much to recommend it: the document's structure can be clearly represented, and the same electronic text can be re-used for many purposes — to provide both online hypertext or browsable versions and well-formatted typeset versions from a common source for example.

To facilitate this, the TEI Lite schema includes some elements for marking features of technical documents in general, and of XML-related documents in particular.

16.1 Additional Elements for Technical Documents

The following elements may be used to mark particular features of technical documents:

  • eg (example) contains any kind of illustrative example.
  • code contains literal code from some formal language such as a programming language.
  • ident (identifier) contains an identifier or name for an object of some kind in a formal language. ident is used for tokens such as variable names, class names, type names, function names etc. in formal programming languages.
  • gi (element name) contains the name (generic identifier) of an element.
  • att (attribute) contains the name of an attribute appearing within running text.
  • formula (formula) contains a mathematical or other formula.
  • val (value) contains a single attribute value.
The following example shows how these elements might be used to encode a passage from a tutorial introducing the Fortran programming language:
<p>It is traditional to introduce a language with a
program like the following: <eg xml:space="preserve"> CHAR*12 GRTG           GRTG = 'HELLO WORLD'            PRINT *, GRTG            END         </eg>
</p>
<p>This simple example first declares a variable <ident>GRTG</ident>, in the line
<code>CHAR*12 GRTG</code>, which identifies <ident>GRTG</ident> as consisting of 12 bytes
of type <ident>CHAR</ident>. To this variable, the value <val>HELLO WORLD</val> is then
assigned.</p>

A formatting application, given a text like that above, can be instructed to format examples appropriately (e.g. to preserve line breaks, or to use a distinctive font). Similarly, the use of tags such as ident greatly facilitates the construction of a useful index.

The formula element should be used to enclose a mathematical or chemical formula presented within the text as a distinct item. Since formulae generally include a large variety of special typographic features not otherwise present in ordinary text, it will usually be necessary to present the body of the formula in a specialized notation. The notation used should be specified by the notation attribute, as in the following example:
<formula notation="tex"> \begin{math}E =
mc^{2}\end{math} </formula>

A particular problem arises when XML encoding is the subject of discussion within a technical document, itself encoded in XML. In such a document, it is clearly essential to distinguish clearly the markup occurring within examples from that marking up the document itself, and end-tags are highly likely to occur. One simple solution is to use the predefined entity reference &lt; to represent each < character which marks the start of an XML tag within the examples. A more general solution is to mark off the whole body of each example as containing data which is not to be scanned for XML mark-up by the parser. This is achieved by enclosing it within a special XML construct called a CDATA marked section, as in the following example:

<p>A list should be encoded as
          follows: <eg><![ CDATA [ <list> <item>First item in the
          list</item> <item>Second item</item> </list> ]]> </eg> The
          <gi>list</gi> element consists of a series of <gi>item</gi>
          elements.

The list element used within the example above will not be regarded as forming part of the document proper, because it is embedded within a marked section (beginning with the special markup declaration <![CDATA[ , and ending with ]]>).

Note also the use of the gi element to tag references to element names (or generic identifiers) within the body of the text.

16.2 Generated Divisions

Most modern document production systems have the ability to generate automatically whole sections such as a table of contents or an index. The TEI Lite scheme provides an element to mark the location at which such a generated section should be placed.

  • divGen (automatically generated text division) indicates the location at which a textual division generated automatically by a text-processing application is to appear.
The divGen element can be placed anywhere that a division element would be legal, as in the following example:
<front>
 <titlePage>
<!-- ... -->
 </titlePage>
 <divGen type="toc"/>
 <div>
  <head>Preface</head>
<!-- ... -->
 </div>
</front>
<body>
<!-- ... -->
</body>
<back>
 <div>
  <head>Appendix</head>
<!-- ... -->
 </div>
 <divGen type="indexn="Index"/>
</back>

This example also demonstrates the use of the type attribute to distinguish the different kinds of division to be generated: in the first case a table of contents (a toc) and in the second an index.

When an existing index or table of contents is to be encoded (rather than one being generated) for some reason, the list element discussed in section 11 Lists should be used.

16.3 Index Generation

While production of a table of contents from a properly tagged document is generally unproblematic for an automatic processor, the production of a good quality index will often require more careful tagging. It may not be enough simply to produce a list of all parts tagged in some particular way, although extracting (for example) all occurrences of elements such as term or name will often be a good departure point for an index.

The TEI schema provides a special purpose index tag which may be used to mark both the parts of the document which should be indexed, and how the indexing should be done.

  • index (index entry) marks a location to be indexed for whatever purpose.
For example, the second paragraph of this section might include the following:
... TEI lite also provides a special purpose
<gi>index</gi> tag
<index>
 <term>indexing</term>
</index>
<index>
 <term>index (tag)</term>
 <index>
  <term>use in index generation</term>
 </index>
</index>
which may be used ...
The index element can also be used to provide a form of interpretive or analytic information. For example, in a study of Ovid, it might be desired to record all the poet's references to different figures, for comparative stylistic study. In the following lines of the Metamorphoses, such a study would record the poet's references to Jupiter (as deus, se, and as the subject of confiteor [in inflectional form number 227]), to Jupiter-in-the-guise-of-a-bull (as imago tauri fallacis and the subject of teneo), and so on.4
<l n="3.001">iamque deus posita fallacis
imagine tauri</l>
<l n="3.002">se confessus erat Dictaeaque rura tenebat</l>
This need might be met using the note element discussed in section in 7 Notes, or with the interp element discussed in section 15 Interpretation and Analysis. Here we demonstrate how it might also be satisfied by using the index element.
We assume that the object is to generate more than one index: one for names of deities (called dn), another for onomastic references (called on), a third for pronominal references (called pr) and so forth. One way of achieving this might be as follows:
<l n="3.001">iamque deus posita
fallacis imagine tauri <index indexName="dn">
  <term>Iuppiter</term>
  <index>
   <term>deus</term>
  </index>
 </index>
 <index indexName="on">
  <term>Iuppiter (taurus)</term>
  <index>
   <term>imago tauri
       fallacis</term>
  </index>
 </index>
</l>
<l n="3.002">se confessus erat Dictaeaque rura tenebat
<index indexName="pr">
  <term>Iuppiter</term>
  <index>
   <term>se</term>
  </index>
 </index>
 <index indexName="v">
  <term>Iuppiter</term>
  <index>
   <term>confiteor
       (v227)</term>
  </index>
 </index>
</l>
For each index element above, an entry will be generated in the appropriate index, using as headword the content of the term element it contains; the term elements nested within the secondary index element in each case provide a secondary keyword. The actual reference will be taken from the context in which the index element appears, i.e. in this case the identifier of the l element containing it.

16.4 Addresses

The address element is used to mark a postal address of any kind. It contains one or more addrLine elements, one for each line of the address.

  • address (address) contains a postal address, for example of a publisher, an organization, or an individual.
  • addrLine (address line) contains one line of a postal address.
Here is a simple example:
<address>
 <addrLine>Computer Center (M/C 135)</addrLine>
 <addrLine>1940 W. Taylor, Room 124</addrLine>
 <addrLine>Chicago, IL 60612-7352</addrLine>
 <addrLine>U.S.A.</addrLine>
</address>
The individual parts of an address may be further distinguished by using the name element discussed above (section 10.1 Names and Referring Strings).
<address>
 <addrLine>Computer Center (M/C 135)</addrLine>
 <addrLine>1940 W. Taylor, Room 124</addrLine>
 <addrLine>
  <name type="city">Chicago</name>, IL 60612-7352</addrLine>
 <addrLine>
  <name type="country">USA</name>
 </addrLine>
</address>

17 Character Sets, Diacritics, etc.

With the advent of XML and its adoption of Unicode as the required character set for all documents, most problems previously associated with the representation of the divers languages and writing systems of the world are greatly reduced. For those working with standard forms of the European languages in particular, almost no special action is needed: any XML editor should enable you to input accented letters or other ‘non-ASCII’ characters directly, and they should be stored in the resulting file in a way which is transferable directly between different systems.

There are two important exceptions: the characters & and < may not be entered directly in an XML document, since they have a special significance as initiating markup. They must always be represented as entity references, like this: &amp; or &lt;. Other characters may also be represented by means of entity reference where necessary, for example to retain compatibility with a pre-Unicode processing system.

18 Front and Back Matter

18.1 Front Matter

For many purposes, particularly in older texts, the preliminary material such as title pages, prefatory epistles, etc., may provide very useful additional linguistic or social information. P5 provides a set of recommendations for distinguishing the textual elements most commonly encountered in front matter, which are summarized here.

18.1.1 Title Page

The start of a title page should be marked with the element titlePage. All text contained on the page should be transcribed and tagged with the appropriate element from the following list:

  • titlePage (title page) contains the title page of a text, appearing within the front or back matter.
  • docTitle (document title) contains the title of a document, including all its constituents, as given on a title page.
  • titlePart (title part) contains a subsection or division of the title of a work, as indicated on a title page.
  • byline (byline) contains the primary statement of responsibility given for a work on its title page or at the head or end of the work.
  • docAuthor (document author) contains the name of the author of the document, as given on the title page (often but not always contained in a byline).
  • docDate (document date) contains the date of a document, as given on a title page or in a dateline.
  • docEdition (document edition) contains an edition statement as presented on a title page of a document.
  • docImprint (document imprint) contains the imprint statement (place and date of publication, publisher name), as given (usually) at the foot of a title page.
  • epigraph (epigraph) contains a quotation, anonymous or attributed, appearing at the start or end of a section or on a title page.

Typeface distinctions should be marked with the rend attribute when necessary, as described above. Very detailed description of the letter spacing and sizing used in ornamental titles is not as yet provided for by the Guidelines. Changes of language should be marked by appropriate use of the xml:lang attribute or the foreign element, as necessary. Names of people, places, or organizations, may be tagged using the name element wherever they appear if no other more specific element is available.

Two example title pages follow:
<titlePage rend="Roman">
 <docTitle>
  <titlePart type="main"> PARADISE REGAIN'D. A POEM In IV <hi>BOOKS</hi>. </titlePart>
  <titlePart> To which is added <title>SAMSON AGONISTES</title>. </titlePart>
 </docTitle>
 <byline>The Author <docAuthor>JOHN MILTON</docAuthor>
 </byline>
 <docImprint>
  <name>LONDON</name>, Printed by <name>J.M.</name> for <name>John Starkey</name>
   at the <name>Mitre</name> in <name>Fleetstreet</name>, near
 <name>Temple-Bar.</name>
 </docImprint>
 <docDate>MDCLXXI</docDate>
</titlePage>
<titlePage>
 <docTitle>
  <titlePart type="main"> Lives of the Queens of England, from the Norman
     Conquest;</titlePart>
  <titlePart type="sub">with anecdotes of their courts. </titlePart>
 </docTitle>
 <titlePart>Now first published from Official Records and other authentic documents private
   as well as public.</titlePart>
 <docEdition>New edition, with corrections and additions</docEdition>
 <byline>By <docAuthor>Agnes Strickland</docAuthor>
 </byline>
 <epigraph>
  <q>The treasures of antiquity laid up in old historic rolls, I opened.</q>
  <bibl>BEAUMONT</bibl>
 </epigraph>
 <docImprint>Philadelphia: Blanchard and Lea</docImprint>
 <docDate>1860.</docDate>
</titlePage>
As elsewhere, the ref attribute may be used to link a name with a canonical definition of the entity being named. For example:
<byline>By <docAuthor>
  <name ref="http://en.wikipedia.org/wiki/Agnes_Strickland">Agnes
     Strickland</name>
 </docAuthor>
</byline>

18.1.2 Prefatory Matter

Major blocks of text within the front matter should be marked using div elements; the following suggested values for the type attribute may be used to distinguish various common types of prefatory matter:

preface
A foreword or preface addressed to the reader in which the author or publisher explains the content, purpose, or origin of the text
dedication
A formal offering or dedication of a text to one or more persons or institutions by the author.
abstract
A summary of the content of a text as continuous prose
ack
A formal declaration of acknowledgment by the author in which persons and institutions are thanked for their part in the creation of a text
contents
A table of contents, specifying the structure of a work and listing its constituents. The list element should be used to mark its structure.
frontispiece
A pictorial frontispiece, possibly including some text.

Where other kinds of prefatory matter are encountered, the encoder is at liberty to invent other values for the type attribute.

Like any text division, those in front matter may contain low level structural or non-structural elements as described elsewhere. They will generally begin with a heading or title of some kind which should be tagged using the head element. Epistles will contain the following additional elements:

  • salute (salutation) contains a salutation or greeting prefixed to a foreword, dedicatory epistle, or other division of a text, or the salutation in the closing of a letter, preface, etc.
  • signed (signature) contains the closing salutation, etc., appended to a foreword, dedicatory epistle, or other division of a text.
  • byline (byline) contains the primary statement of responsibility given for a work on its title page or at the head or end of the work.
  • dateline (dateline) contains a brief description of the place, date, time, etc. of production of a letter, newspaper story, or other work, prefixed or suffixed to it as a kind of heading or trailer.
  • argument (argument) contains a formal list or prose description of the topics addressed by a subdivision of a text.
  • cit (cited quotation) contains a quotation from some other document, together with a bibliographic reference to its source. In a dictionary it may contain an example text with at least one occurrence of the word form, used in the sense being described, or a translation of the headword, or an example.
  • imprimatur (imprimatur) contains a formal statement authorizing the publication of a work, sometimes required to appear on a title page or its verso.
  • opener (opener) groups together dateline, byline, salutation, and similar phrases appearing as a preliminary group at the start of a division, especially of a letter.
  • closer (closer) groups together salutations, datelines, and similar phrases appearing as a final group at the end of a division, especially of a letter.

Epistles which appear elsewhere in a text will, of course, contain these same elements.

As an example, the dedication at the start of Milton's Comus should be marked up as follows:
<div type="dedication">
 <head>To the Right Honourable <name>JOHN Lord Viscount BRACLY</name>, Son and Heir apparent
   to the Earl of Bridgewater, &amp;c.</head>
 <salute>MY LORD,</salute>
 <p>THis <hi>Poem</hi>, which receiv'd its first occasion of Birth from your Self, and
   others of your Noble Family .... and as in this representation your attendant
 <name>Thyrsis</name>, so now in all reall expression</p>
 <closer>
  <salute>Your faithfull, and most humble servant</salute>
  <signed>
   <name>H. LAWES.</name>
  </signed>
 </closer>
</div>

18.2 Back Matter

18.2.1 Structural Divisions of Back Matter

Because of variations in publishing practice, back matter can contain virtually any of the elements listed above for front matter, and the same elements should be used where this is so. Additionally, back matter may contain the following types of matter within the back element. Like the structural divisions of the body, these should be marked as div elements, and distinguished by the following suggested values of the type attribute:

appendix
An ancillary self-contained section of a work, often providing additional but in some sense extra-canonical text.
glossary
A list of terms associated with definition texts (‘glosses’): this should be encoded as a <<list type="gloss">> element
notes
A section in which textual or other kinds of notes are gathered together.
bibliogr
A list of bibliographic citations: this should be encoded as a listBibl
index
Any form of pre-existing index to the work (An index may also be generated for a document by using the index element described above).
colophon
A statement appearing at the end of a book describing the conditions of its physical production.

19 The Electronic Title Page

Every TEI text has a header which provides information analogous to that provided by the title page of printed text. The header is introduced by the element teiHeader and has four major parts:

A corpus or collection of texts with many shared characteristics may have one header for the corpus and individual headers for each component of the corpus. In this case the type attribute indicates the type of header. <teiHeader type="corpus"> introduces the header for corpus-level information.

Some of the header elements contain running prose which consists of one or more ps. Others are grouped:

19.1 The File Description

The fileDesc element is mandatory. It contains a full bibliographic description of the file with the following elements:

  • titleStmt (title statement) groups information about the title of a work and those responsible for its content.
  • editionStmt (edition statement) groups information relating to one edition of a text.
  • extent (extent) describes the approximate size of a text stored on some carrier medium or of some other object, digital or non-digital, specified in any convenient units.
  • publicationStmt (publication statement) groups information concerning the publication or distribution of an electronic or other text.
  • seriesStmt (series statement) groups information about the series, if any, to which a publication belongs.
  • notesStmt (notes statement) collects together any notes providing information about a text additional to that recorded in other parts of the bibliographic description.
  • sourceDesc (source description) describes the source(s) from which an electronic text was derived or generated, typically a bibliographic description in the case of a digitized text, or a phrase such as ‘born digital’ for a text which has no previous existence.
A minimal header has the following structure:
<teiHeader>
 <fileDesc>
  <titleStmt>
<!-- bibliographic description of the digital resource -->
  </titleStmt>
  <publicationStmt>
<!-- information about how the resource is distributed -->
  </publicationStmt>
  <sourceDesc>
<!-- information about the sources from which the digital resource is derived -->
  </sourceDesc>
 </fileDesc>
</teiHeader>

19.1.1 The Title Statement

The following elements can be used in the titleStmt:

  • title (title) contains a title for any kind of work.
  • author (author) in a bibliographic reference, contains the name(s) of an author, personal or corporate, of a work; for example in the same form as that provided by a recognized bibliographic name authority.
  • sponsor (sponsor) specifies the name of a sponsoring organization or institution.
  • funder (funding body) specifies the name of an individual, institution, or organization responsible for the funding of a project or text.
  • principal (principal researcher) supplies the name of the principal researcher responsible for the creation of an electronic text.
  • respStmt (statement of responsibility) supplies a statement of responsibility for the intellectual content of a text, edition, recording, or series, where the specialized elements for authors, editors, etc. do not suffice or do not apply. May also be used to encode information about individuals or organizations which have played a role in the production or distribution of a bibliographic work.
The title of a digital resource derived from a non-digital one will obviously be similar. However, it is important to distinguish the title of the computer file from that of the source text, for example:
[title of source]: a machine readable transcription [title of source]: electronic edition A machine readable version of: [title of source]
The respStmt element contains the following subcomponents:
  • resp (responsibility) contains a phrase describing the nature of a person's intellectual responsibility, or an organization's role in the production or distribution of a work.
  • name (name, proper noun) contains a proper noun or noun phrase.
Example:
<titleStmt>
 <title>Two stories by Edgar Allen Poe: a machine readable transcription</title>
 <author>Poe, Edgar Allen (1809-1849)</author>
 <respStmt>
  <resp>compiled by</resp>
  <name>James D. Benson</name>
 </respStmt>
</titleStmt>

19.1.2 The Edition Statement

The editionStmt groups information relating to one edition of the digital resource (where edition is used as elsewhere in bibliography), and may include the following elements:

  • edition (edition) describes the particularities of one edition of a text.
  • respStmt (statement of responsibility) supplies a statement of responsibility for the intellectual content of a text, edition, recording, or series, where the specialized elements for authors, editors, etc. do not suffice or do not apply. May also be used to encode information about individuals or organizations which have played a role in the production or distribution of a bibliographic work.
Example:
<editionStmt>
 <edition n="U2">Third
   draft, substantially revised <date>1987</date>
 </edition>
</editionStmt>

Determining exactly what constitutes a new edition of an electronic text is left to the encoder.

19.1.3 The Extent Statement

The extent statement describes the approximate size of the digital resource.

Example:
<extent>4532
bytes</extent>

19.1.4 The Publication Statement

The publicationStmt is mandatory. It may contain a simple prose description or groups of the elements described below:

  • publisher (publisher) provides the name of the organization responsible for the publication or distribution of a bibliographic item.
  • distributor (distributor) supplies the name of a person or other agency responsible for the distribution of a text.
  • authority (release authority) supplies the name of a person or other agency responsible for making a work available, other than a publisher or distributor.

At least one of these three elements must be present, unless the entire publication statement is in prose. The following elements may occur within them:

  • pubPlace (publication place) contains the name of the place where a bibliographic item was published.
  • address (address) contains a postal address, for example of a publisher, an organization, or an individual.
  • idno (identifier) supplies any form of identifier used to identify some object, such as a bibliographic item, a person, a title, an organization, etc. in a standardized way.
  • availability (availability) supplies information about the availability of a text, for example any restrictions on its use or distribution, its copyright status, any licence applying to it, etc.
  • licence contains information about a licence or other legal agreement applicable to the text.
  • date (date) contains a date in any format.
Example:
<publicationStmt>
 <publisher>University of Victoria Humanities Computing and Media Centre</publisher>
 <pubPlace>Victoria, BC</pubPlace>
 <date>2011</date>
 <availability status="restricted">
  <licence target="http://creativecommons.org/licenses/by-sa/3.0/"> Distributed under a
     Creative Commons Attribution-ShareAlike 3.0 Unported License </licence>
 </availability>
</publicationStmt>

19.1.5 Series and Notes Statements

The seriesStmt element groups information about the series, if any, to which a publication belongs. It may contain title, idno, or respStmt elements.

The notesStmt, if used, contains one or more note elements which contain a note or annotation. Some information found in the notes area in conventional bibliography has been assigned specific elements in the TEI scheme.

19.1.6 The Source Description

The sourceDesc is a mandatory element which records details of the source or sources from which the computer file is derived. It may contain simple prose or a bibliographic citation, using one or more of the following elements:

  • bibl (bibliographic citation) contains a loosely-structured bibliographic citation of which the sub-components may or may not be explicitly tagged.
  • listBibl (citation list) contains a list of bibliographic citations of any kind.
Examples:
<sourceDesc>
 <bibl>The first folio of Shakespeare, prepared by Charlton Hinman (The Norton Facsimile,
   1968)</bibl>
</sourceDesc>
<sourceDesc>
 <bibl>
  <author>CNN Network News</author>
  <title>News headlines</title>
  <date>12 Jun
     1989</date>
 </bibl>
</sourceDesc>

19.2 The Encoding Description

The encodingDesc element specifies the methods and editorial principles which governed the transcription of the text. Its use is highly recommended. It may be prose description or may contain elements from the following list:

  • projectDesc (project description) describes in detail the aim or purpose for which an electronic file was encoded, together with any other relevant information concerning the process by which it was assembled or collected.
  • samplingDecl (sampling declaration) contains a prose description of the rationale and methods used in selecting texts, or parts of a text, for inclusion in the resource.
  • editorialDecl (editorial practice declaration) provides details of editorial principles and practices applied during the encoding of a text.
  • refsDecl (references declaration) specifies how canonical references are constructed for this text.
  • classDecl (classification declarations) contains one or more taxonomies defining any classificatory codes used elsewhere in the text.

19.2.1 Project and Sampling Descriptions

Examples of projectDesc and <samplingDesc>:
<encodingDesc>
 <projectDesc>
  <p>Texts collected for
     use in the Claremont Shakespeare Clinic, June 1990.
  </p>
 </projectDesc>
</encodingDesc>
<encodingDesc>
 <samplingDecl>
  <p>Samples of
     2000 words taken from the beginning of the text</p>
 </samplingDecl>
</encodingDesc>

19.2.2 Editorial Declarations

The editorialDecl contains a prose description of the practices used when encoding the text. Typically this description should cover such topics as the following, each of which may conveniently be given as a separate paragraph.

correction
how and under what circumstances corrections have been made in the text.
normalization
the extent to which the original source has been regularized or normalized.
quotation
what has been done with quotation marks in the original -- have they been retained or replaced by entity references, are opening and closing quotes distinguished, etc.
hyphenation
what has been done with hyphens (especially end-of-line hyphens) in the original -- have they been retained, replaced by entity references, etc.
segmentation
how has the text has been segmented, for example into sentences, tone-units, graphemic strata, etc.
interpretation
what analytic or interpretive information has been added to the text.
Example:
<editorialDecl>
 <p>The part of
   speech analysis applied throughout section 4 was added by hand and has not been
   checked.</p>
 <p>Errors in transcription controlled by using the WordPerfect spelling
   checker.</p>
 <p>All words converted to Modern American spelling using Webster's 9th
   Collegiate dictionary.</p>
</editorialDecl>

19.2.3 Reference and Classification Declarations

The refsDecl element is used to document the way in which any standard referencing scheme built into the encoding works. In its simplest form, it consists of prose description.

Example:
<refsDecl>
 <p>The <att>n</att>
   attribute on each <gi>div</gi> contains the canonical reference for each division in the
   form XX.yyy where XX is the book number in roman numeral and yyy is the section number in
   arabic.</p>
 <p>Milestone tags refer to the edition of 1830 as E30 and that of 1850 as E50.
 </p>
</refsDecl>

The classDecl element groups together definitions or sources for any descriptive classification schemes used by other parts of the header. At least one such scheme must be provided, encoded using the following elements:

  • taxonomy (taxonomy) defines a typology either implicitly, by means of a bibliographic citation, or explicitly by a structured taxonomy.
  • bibl (bibliographic citation) contains a loosely-structured bibliographic citation of which the sub-components may or may not be explicitly tagged.
  • category (category) contains an individual descriptive category, possibly nested within a superordinate category, within a user-defined taxonomy.
  • catDesc (category description) describes some category within a taxonomy or text typology, either in the form of a brief prose description or in terms of the situational parameters used by the TEI formal <textDesc>.
In the simplest case, the taxonomy may be defined by a bibliographic reference, as in the following example:
<classDecl>
 <taxonomy xml:id="LC-SH">
  <bibl>Library of Congress Subject Headings
  </bibl>
 </taxonomy>
</classDecl>
Alternatively, or in addition, the encoder may define a special purpose classification scheme, as in the following example:
<taxonomy xml:id="B">
 <bibl>Brown Corpus</bibl>
 <category xml:id="B.A">
  <catDesc>Press
     Reportage</catDesc>
  <category xml:id="B.A1">
   <catDesc>Daily</catDesc>
  </category>
  <category xml:id="B.A2">
   <catDesc>Sunday</catDesc>
  </category>
  <category xml:id="B.A3">
   <catDesc>National</catDesc>
  </category>
  <category xml:id="B.A4">
   <catDesc>Provincial</catDesc>
  </category>
  <category xml:id="B.A5">
   <catDesc>Political</catDesc>
  </category>
  <category xml:id="B.A6">
   <catDesc>Sports</catDesc>
  </category>
 </category>
 <category xml:id="B.D">
  <catDesc>Religion</catDesc>
  <category xml:id="B.D1">
   <catDesc>Books</catDesc>
  </category>
  <category xml:id="B.D2">
   <catDesc>Periodicals and
       tracts</catDesc>
  </category>
 </category>
</taxonomy>

Linkage between a particular text and a category within such a taxonomy is made by means of the catRef element within the textClass element, as described in the next section below.

19.3 The Profile Description

The profileDesc element enables information characterizing various descriptive aspects of a text to be recorded within a single framework. It has three optional components:

  • creation (creation) contains information about the creation of a text.
  • langUsage (language usage) describes the languages, sublanguages, registers, dialects, etc. represented within a text.
  • textClass (text classification) groups information which describes the nature or topic of a text in terms of a standard classification scheme, thesaurus, etc.

The creation element is useful for documenting where a work was created, even though it may not have been published or recorded there.

Example:
<creation>
 <date when="1992-08">August 1992</date>
 <name type="place">Taos, New Mexico</name>
</creation>
The langUsage element is useful where a text contains many different languages. It may contain language elements to document each particular language used:
  • language (language) characterizes a single language or sublanguage used within a text.
For example, a text containing predominantly text in French as spoken in Quebec, but also smaller amounts of British and Canadian English might be documented as follows:
<langUsage>
 <language ident="fr-CAusage="60">Québecois</language>
 <language ident="en-CAusage="20">Canadian business English</language>
 <language ident="en-GBusage="20">British English</language>
</langUsage>

The textClass element classifies a text. This may be done with reference to a classification system locally defined by means of the classDecl element, or by reference to some externally defined established scheme such as the Universal Decimal Classification. Texts may also be classified using lists of keywords, which may themselves be drawn from locally or externally defined control lists. The following elements are used to supply such classifications:

  • classCode (classification code) contains the classification code used for this text in some standard classification system.
  • catRef (category reference) specifies one or more defined categories within some taxonomy or text typology.
  • keywords (keywords) contains a list of keywords or phrases identifying the topic or nature of a text.
The simplest way of classifying a text is by means of the classCode element. For example, a text with classification 410 in the Universal Decimal Classification might be documented as follows:
<classCode scheme="http://www.udc.org">410</classCode>
When a classification scheme has been locally defined using the taxonomy element discussed in the preceding subsection, the catRef element should be used to reference it. To continue the earlier example, a work classified in the Brown Corpus as Press reportage - Sunday and also as Religion might be documented as follows:
<catRef target="#B.A3 #B.D"/>
The element keywords contains a list of keywords or phrases identifying the topic or nature of a text. As usual, the attribute scheme identifies the source from which these terms are taken. For example, if the LC Subject Headings are used, following declaration of that classification system in a taxonomy element as above :
<textClass>
 <keywords scheme="#LCSH">
  <list>
   <item>English literature -- History and criticism -- Data processing.</item>
   <item>English literature -- History and criticism -- Theory etc.</item>
   <item>English language -- Style -- Data processing.</item>
  </list>
 </keywords>
</textClass>

Multiple classifications may be supplied using any of the mechanisms described in this section.

19.4 The Revision Description

The revisionDesc element provides a change log in which each change made to a text may be recorded. The log may be recorded as a sequence of change elements each of which contains a brief description of the change. The attributes when and who may be used to identify when the change was carried out and the agency responsible for it.

Example:
<revisionDesc>
 <change when="1991-03-06who="#EMB">File format updated</change>
 <change when="1990-05-25who="#EMB">Stuart's corrections entered</change>
</revisionDesc>

In a production environment it will usually be found preferable to use some kind of automated system to track and record changes. Many such version control systems, as they are known, can also be configured to update the TEI Header of a file automatically.

Appendix A List of Elements Described

The TEI Lite schema is a pure subset of TEI P5. In the following list of elements and classes used, some information, notably the examples, derives from the canonical definition for the element in TEI P5 and may therefore refer to elements or attributes not provided by TEI Lite. Note however that only the elements listed here are available within the TEI Lite schema. These specifications also refer to many attributes which although available in TEI Lite are not discussed in this tutorial for lack of space.

Schema tei_lite: Elements

<abbr>

<abbr> (abbreviation) contains an abbreviation of any sort. [3.6.5. Abbreviations and Their Expansions]
Modulecore
Attributes
type(type) allows the encoder to classify the abbreviation according to some convenient typology.
Derived fromatt.typed
Status Optional
Datatype teidata.enumerated
Sample values include:
suspension
(suspension) the abbreviation provides the first letter(s) of the word or phrase, omitting the remainder.
contraction
(contraction) the abbreviation omits some letter(s) in the middle.
brevigraph
the abbreviation comprises a special symbol or mark.
superscription
(superscription) the abbreviation includes writing above the line.
acronym
(acronym) the abbreviation comprises the initial letters of the words of a phrase.
title
(title) the abbreviation is for a title of address (Dr, Ms, Mr, …)
organization
(organization) the abbreviation is for the name of an organization.
geographic
(geographic) the abbreviation is for a geographic name.
Note

The type attribute is provided for the sake of those who wish to classify abbreviations at their point of occurrence; this may be useful in some circumstances, though usually the same abbreviation will have the same type in all occurrences. As the sample values make clear, abbreviations may be classified by the method used to construct them, the method of writing them, or the referent of the term abbreviated; the typology used is up to the encoder and should be carefully planned to meet the needs of the expected use. For a typology of Middle English abbreviations, see 6.2.

Member of
Contained by
May contain
Note

If abbreviations are expanded silently, this practice should be documented in the editorialDecl, either with a <normalization> element or a p.

Example
<choice>
 <expan>North Atlantic Treaty Organization</expan>
 <abbr cert="low">NorATO</abbr>
 <abbr cert="high">NATO</abbr>
 <abbr cert="highxml:lang="fr">OTAN</abbr>
</choice>
Example
<choice>
 <abbr>SPQR</abbr>
 <expan>senatus populusque romanorum</expan>
</choice>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element abbr
{
   att.global.attributes,
   att.typed.attribute.subtype,
   att.cmc.attributes,
   attribute type { teidata.enumerated }?,
   macro.phraseSeq
}

<add>

<add> (addition) contains letters, words, or phrases inserted in the source text by an author, scribe, or a previous annotator or corrector. [3.5.3. Additions, Deletions, and Omissions]
Modulecore
Attributes
Member of
Contained by
May contain
Note

In a diplomatic edition attempting to represent an original source, the add element should not be used for additions to the current TEI electronic edition made by editors or encoders. In these cases, either the corr or <supplied> element are recommended.

In a TEI edition of a historical text with previous editorial emendations in which such additions or reconstructions are considered part of the source text, the use of add may be appropriate, dependent on the editorial philosophy of the project.

Example
The story I am
going to relate is true as to its main facts, and as to the
consequences <add place="above">of these facts</add> from which
this tale takes its title.
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element add
{
   att.global.attributes,
   att.transcriptional.attributes,
   att.placement.attributes,
   att.typed.attributes,
   att.dimensions.attributes,
   att.cmc.attributes,
   macro.paraContent
}

<address>

<address> (address) contains a postal address, for example of a publisher, an organization, or an individual. [3.6.2. Addresses 2.2.4. Publication, Distribution, Licensing, etc. 3.12.2.4. Imprint, Size of a Document, and Reprint Information]
Modulecore
Attributes
Member of
Contained by
May contain
analysis: interp interpGrp
figures: figure
header: idno
linking: anchor
Note

This element should be used for postal addresses only. Within it, the generic element addrLine may be used as an alternative to any of the more specialized elements available from the model.addrPart class, such as <street>, <postCode> etc.

Example

Using just the elements defined by the core module, an address could be represented as follows:

<address>
 <street>via Marsala 24</street>
 <postCode>40126</postCode>
 <name>Bologna</name>
 <name>Italy</name>
</address>
Example

When a schema includes the names and dates module more specific elements such as country or settlement would be preferable over generic name:

<address>
 <street>via Marsala 24</street>
 <postCode>40126</postCode>
 <settlement>Bologna</settlement>
 <country>Italy</country>
</address>
Example
<address>
 <addrLine>Computing Center, MC 135</addrLine>
 <addrLine>P.O. Box 6998</addrLine>
 <addrLine>Chicago, IL 60680</addrLine>
 <addrLine>USA</addrLine>
</address>
Example
<address>
 <country key="FR"/>
 <settlement type="city">Lyon</settlement>
 <postCode>69002</postCode>
 <district type="arrondissement">IIème</district>
 <district type="quartier">Perrache</district>
 <street>
  <num>30</num>, Cours de Verdun</street>
</address>
Content model
<content>
 <sequence>
  <classRef key="model.global"
   minOccurs="0maxOccurs="unbounded"/>

  <sequence minOccurs="1"
   maxOccurs="unbounded">

   <classRef key="model.addrPart"/>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
 </sequence>
</content>
Schema Declaration
element address
{
   att.global.attributes,
   att.cmc.attributes,
   ( model.global*, ( ( model.addrPart, model.global* )+ ) )
}

<addrLine>

<addrLine> (address line) contains one line of a postal address. [3.6.2. Addresses 2.2.4. Publication, Distribution, Licensing, etc. 3.12.2.4. Imprint, Size of a Document, and Reprint Information]
Modulecore
Attributes
Member of
Contained by
core: address
May contain
Note

Addresses may be encoded either as a sequence of lines, or using any sequence of component elements from the model.addrPart class. Other non-postal forms of address, such as telephone numbers or email, should not be included within an address element directly but may be wrapped within an addrLine if they form part of the printed address in some source text.

Example
<address>
 <addrLine>Computing Center, MC 135</addrLine>
 <addrLine>P.O. Box 6998</addrLine>
 <addrLine>Chicago, IL</addrLine>
 <addrLine>60680 USA</addrLine>
</address>
Example
<addrLine>
 <ref target="tel:+1-201-555-0123">(201) 555 0123</ref>
</addrLine>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element addrLine { att.global.attributes, macro.phraseSeq }

<anchor>

<anchor> (anchor point) attaches an identifier to a point within a text, whether or not it corresponds with a textual element. [8.4.2. Synchronization and Overlap 17.5. Correspondence and Alignment]
Modulelinking
Attributes
Member of
Contained by
May containEmpty element
Note

On this element, the global xml:id attribute must be supplied to specify an identifier for the point at which this element occurs within a document. The value used may be chosen freely provided that it is unique within the document and is a syntactically valid name. There is no requirement for values containing numbers to be in sequence.

Example
<s>The anchor is he<anchor xml:id="A234"/>re somewhere.</s>
<s>Help me find it.<ptr target="#A234"/>
</s>
Content model
<content>
 <empty/>
</content>
Schema Declaration
element anchor
{
   att.global.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   empty
}

<argument>

<argument> (argument) contains a formal list or prose description of the topics addressed by a subdivision of a text. [4.2. Elements Common to All Divisions 4.6. Title Pages]
Moduletextstructure
Attributes
Member of
Contained by
core: lg list
figures: figure table
May contain
Example
<argument>
 <p>Monte Video — Maldonado — Excursion
   to R Polanco — Lazo and Bolas — Partridges —
   Absence of Trees — Deer — Capybara, or River Hog —
   Tucutuco — Molothrus, cuckoo-like habits — Tyrant
   Flycatcher — Mocking-bird — Carrion Hawks —
   Tubes formed by Lightning — House struck</p>
</argument>
Content model
<content>
 <sequence>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.global"/>
   <classRef key="model.headLike"/>
  </alternate>
  <sequence minOccurs="1"
   maxOccurs="unbounded">

   <classRef key="model.common"/>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
 </sequence>
</content>
Schema Declaration
element argument
{
   att.global.attributes,
   att.cmc.attributes,
   ( ( model.global | model.headLike )*, ( ( model.common, model.global* )+ ) )
}

<att>

<att> (attribute) contains the name of an attribute appearing within running text. [23. Documentation Elements]
Moduletagdocs
Attributes
scheme(scheme) supplies an identifier for the scheme in which this name is defined.
Status Optional
Datatype teidata.enumerated
Sample values include:
TEI
(Text Encoding Initiative) this attribute is part of the TEI scheme. [Default]
DBK
(Docbook) this attribute is part of the Docbook scheme.
XX
(unknown) this attribute is part of an unknown scheme.
imaginary
(imaginary) the attribute is from a non-existent scheme, for illustrative purposes only
XHTML
(XHTML) the attribute is part of the XHTML language
XML
(XML) the attribute is part of the XML language
XI
(XI) the attribute is defined in the xInclude schema
Member of
Contained by
May contain
XSD Name
Note

As an alternative to using the scheme attribute a namespace prefix may be used. Where both scheme and a prefix are used, the prefix takes precedence.

Example
<p>The TEI defines several <soCalled>global</soCalled> attributes; their names include
<att>xml:id</att>, <att>rend</att>, <att>xml:lang</att>, <att>n</att>, <att>xml:space</att>,
and <att>xml:base</att>; <att scheme="XX">type</att> is not amongst them.</p>
Content model
<content>
 <dataRef key="teidata.name"/>
</content>
Schema Declaration
element att
{
   att.global.attributes,
   attribute scheme { teidata.enumerated }?,
   teidata.name
}

<author>

<author> (author) in a bibliographic reference, contains the name(s) of an author, personal or corporate, of a work; for example in the same form as that provided by a recognized bibliographic name authority. [3.12.2.2. Titles, Authors, and Editors 2.2.1. The Title Statement]
Modulecore
Attributes
Member of
Contained by
May contain
Note

Particularly where cataloguing is likely to be based on the content of the header, it is advisable to use a generally recognized name authority file to supply the content for this element. The attributes key or ref may also be used to reference canonical information about the author(s) intended from any appropriate authority, such as a library catalogue or online resource.

In the case of a broadcast, use this element for the name of the company or network responsible for making the broadcast.

Where an author is unknown or unspecified, this element may contain text such as Unknown or Anonymous. When the appropriate TEI modules are in use, it may also contain detailed tagging of the names used for people, organizations or places, in particular where multiple names are given.

Example
<author>British Broadcasting Corporation</author>
<author>La Fayette, Marie Madeleine Pioche de la Vergne, comtesse de (1634–1693)</author>
<author>Anonymous</author>
<author>Bill and Melinda Gates Foundation</author>
<author>
 <persName>Beaumont, Francis</persName> and
<persName>John Fletcher</persName>
</author>
<author>
 <orgName key="BBC">British Broadcasting
   Corporation</orgName>: Radio 3 Network
</author>
Schematron

<sch:rule context="tei:*[@calendar]">
<sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more
systems or calendars to which the date represented by the content of this element belongs,
but this <sch:name/> element has no textual content.</sch:assert>
</sch:rule>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element author
{
   att.global.attributes,
   att.naming.attributes,
   att.datable.attributes,
   macro.phraseSeq
}

<authority>

<authority> (release authority) supplies the name of a person or other agency responsible for making a work available, other than a publisher or distributor. [2.2.4. Publication, Distribution, Licensing, etc.]
Moduleheader
Attributes
Member of
Contained by
May contain
Example
<authority>John Smith</authority>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
Schema Declaration
element authority
{
   att.global.attributes,
   att.canonical.attributes,
   macro.phraseSeq.limited
}

<availability>

<availability> (availability) supplies information about the availability of a text, for example any restrictions on its use or distribution, its copyright status, any licence applying to it, etc. [2.2.4. Publication, Distribution, Licensing, etc.]
Moduleheader
Attributes
status(status) supplies a code identifying the current availability of the text.
Status Optional
Datatype teidata.enumerated
Legal values are:
free
(free) the text is freely available.
unknown
(unknown) the status of the text is unknown.
restricted
(restricted) the text is not freely available.
Member of
Contained by
core: bibl
May contain
core: p
header: licence
Note

A consistent format should be adopted

Example
<availability status="restricted">
 <p>Available for academic research purposes only.</p>
</availability>
<availability status="free">
 <p>In the public domain</p>
</availability>
<availability status="restricted">
 <p>Available under licence from the publishers.</p>
</availability>
Example
<availability>
 <licence target="http://opensource.org/licenses/MIT">
  <p>The MIT License
     applies to this document.</p>
  <p>Copyright (C) 2011 by The University of Victoria</p>
  <p>Permission is hereby granted, free of charge, to any person obtaining a copy
     of this software and associated documentation files (the "Software"), to deal
     in the Software without restriction, including without limitation the rights
     to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
     copies of the Software, and to permit persons to whom the Software is
     furnished to do so, subject to the following conditions:</p>
  <p>The above copyright notice and this permission notice shall be included in
     all copies or substantial portions of the Software.</p>
  <p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
     AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
     THE SOFTWARE.</p>
 </licence>
</availability>
Content model
<content>
 <alternate minOccurs="1"
  maxOccurs="unbounded">

  <classRef key="model.availabilityPart"/>
  <classRef key="model.pLike"/>
 </alternate>
</content>
Schema Declaration
element availability
{
   att.global.attributes,
   att.declarable.attributes,
   attribute status { "free" | "unknown" | "restricted" }?,
   ( model.availabilityPart | model.pLike )+
}

<back>

<back> (back matter) contains any appendixes, etc. following the main part of a text. [4.7. Back Matter 4. Default Text Structure]
Moduletextstructure
Attributes
Contained by
textstructure: text
May contain
Note

Because cultural conventions differ as to which elements are grouped as back matter and which as front matter, the content models for the back and front elements are identical.

Example
<back>
 <div type="appendix">
  <head>The Golden Dream or, the Ingenuous Confession</head>
  <p>TO shew the Depravity of human Nature, and how apt the Mind is to be misled by Trinkets
     and false Appearances, Mrs. Two-Shoes does acknowledge, that after she became rich, she
     had like to have been, too fond of Money
<!-- .... -->
  </p>
 </div>
<!-- ... -->
 <div type="epistle">
  <head>A letter from the Printer, which he desires may be inserted</head>
  <salute>Sir.</salute>
  <p>I have done with your Copy, so you may return it to the Vatican, if you please;
  
<!-- ... -->
  </p>
 </div>
 <div type="advert">
  <head>The Books usually read by the Scholars of Mrs Two-Shoes are these and are sold at Mr
     Newbery's at the Bible and Sun in St Paul's Church-yard.</head>
  <list>
   <item n="1">The Christmas Box, Price 1d.</item>
   <item n="2">The History of Giles Gingerbread, 1d.</item>
<!-- ... -->
   <item n="42">A Curious Collection of Travels, selected from the Writers of all Nations,
       10 Vol, Pr. bound 1l.</item>
  </list>
 </div>
 <div type="advert">
  <head>By the KING's Royal Patent, Are sold by J. NEWBERY, at the Bible and Sun in St.
     Paul's Church-Yard.</head>
  <list>
   <item n="1">Dr. James's Powders for Fevers, the Small-Pox, Measles, Colds, &amp;c. 2s.
       6d</item>
   <item n="2">Dr. Hooper's Female Pills, 1s.</item>
<!-- ... -->
  </list>
 </div>
</back>
Content model
<content>
 <sequence>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.frontPart"/>
   <classRef key="model.pLike.front"/>
   <classRef key="model.pLike"/>
   <classRef key="model.listLike"/>
   <classRef key="model.global"/>
  </alternate>
  <alternate minOccurs="0">
   <sequence>
    <classRef key="model.div1Like"/>
    <alternate minOccurs="0"
     maxOccurs="unbounded">

     <classRef key="model.frontPart"/>
     <classRef key="model.div1Like"/>
     <classRef key="model.global"/>
    </alternate>
   </sequence>
   <sequence>
    <classRef key="model.divLike"/>
    <alternate minOccurs="0"
     maxOccurs="unbounded">

     <classRef key="model.frontPart"/>
     <classRef key="model.divLike"/>
     <classRef key="model.global"/>
    </alternate>
   </sequence>
  </alternate>
  <sequence minOccurs="0">
   <classRef key="model.divBottomPart"/>
   <alternate minOccurs="0"
    maxOccurs="unbounded">

    <classRef key="model.divBottomPart"/>
    <classRef key="model.global"/>
   </alternate>
  </sequence>
 </sequence>
</content>
Schema Declaration
element back
{
   att.global.attributes,
   att.declaring.attributes,
   (
      (
         model.frontPartmodel.pLike.frontmodel.pLikemodel.listLikemodel.global
      )*,
      (
         (
            model.div1Like,
            ( model.frontPart | model.div1Like | model.global )*
         )
       | ( model.divLike, ( model.frontPart | model.divLike | model.global )* )
      )?,
      ( ( model.divBottomPart, ( model.divBottomPart | model.global )* )? )
   )
}

<bibl>

<bibl> (bibliographic citation) contains a loosely-structured bibliographic citation of which the sub-components may or may not be explicitly tagged. [3.12.1. Methods of Encoding Bibliographic References and Lists of References 2.2.7. The Source Description 16.3.2. Declarable Elements]
Modulecore
Attributes
Member of
Contained by
May contain
Note

Contains phrase-level elements, together with any combination of elements from the model.biblPart class

Example
<bibl>Blain, Clements and Grundy: Feminist Companion to Literature in English (Yale,
1990)</bibl>
Example
<bibl>
 <title level="a">The Interesting story of the Children in the Wood</title>. In
<author>Victor E Neuberg</author>, <title>The Penny Histories</title>.
<publisher>OUP</publisher>
 <date>1968</date>.
</bibl>
Example
<bibl type="articlesubtype="book_chapter"
 xml:id="carlin_2003">

 <author>
  <name>
   <surname>Carlin</surname>
     (<forename>Claire</forename>)</name>
 </author>,
<title level="a">The Staging of Impotence : France’s last
   congrès</title> dans
<bibl type="monogr">
  <title level="m">Theatrum mundi : studies in honor of Ronald W.
     Tobin</title>, éd.
 <editor>
   <name>
    <forename>Claire</forename>
    <surname>Carlin</surname>
   </name>
  </editor> et
 <editor>
   <name>
    <forename>Kathleen</forename>
    <surname>Wine</surname>
   </name>
  </editor>,
 <pubPlace>Charlottesville, Va.</pubPlace>,
 <publisher>Rookwood Press</publisher>,
 <date when="2003">2003</date>.
 </bibl>
</bibl>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.highlighted"/>
  <classRef key="model.pPart.data"/>
  <classRef key="model.pPart.edit"/>
  <classRef key="model.segLike"/>
  <classRef key="model.ptrLike"/>
  <classRef key="model.biblPart"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Schema Declaration
element bibl
{
   att.global.attributes,
   att.declarable.attributes,
   att.typed.attributes,
   att.sortable.attributes,
   att.docStatus.attributes,
   att.cmc.attributes,
   (
      text
    | model.gLikemodel.highlightedmodel.pPart.datamodel.pPart.editmodel.segLikemodel.ptrLikemodel.biblPartmodel.global
   )*
}

<biblScope>

<biblScope> (scope of bibliographic reference) defines the scope of a bibliographic reference, for example as a list of page numbers, or a named subdivision of a larger work. [3.12.2.5. Scopes and Ranges in Bibliographic Citations]
Modulecore
Attributes
Member of
Contained by
core: bibl
header: seriesStmt
May contain
Note

When a single page is being cited, use the from and to attributes with an identical value. When no clear endpoint is provided, the from attribute may be used without to; for example a citation such as ‘p. 3ff’ might be encoded <biblScope from="3">p. 3ff</biblScope>.

It is now considered good practice to supply this element as a sibling (rather than a child) of <imprint>, since it supplies information which does not constitute part of the imprint.

Example
<biblScope>pp 12–34</biblScope>
<biblScope unit="pagefrom="12to="34"/>
<biblScope unit="volume">II</biblScope>
<biblScope unit="page">12</biblScope>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element biblScope
{
   att.global.attributes,
   att.citing.attributes,
   macro.phraseSeq
}

<body>

<body> (text body) contains the whole body of a single unitary text, excluding any front or back matter. [4. Default Text Structure]
Moduletextstructure
Attributes
Contained by
textstructure: text
May contain
Example
<body>
 <l>Nu scylun hergan hefaenricaes uard</l>
 <l>metudæs maecti end his modgidanc</l>
 <l>uerc uuldurfadur sue he uundra gihuaes</l>
 <l>eci dryctin or astelidæ</l>
 <l>he aerist scop aelda barnum</l>
 <l>heben til hrofe haleg scepen.</l>
 <l>tha middungeard moncynnæs uard</l>
 <l>eci dryctin æfter tiadæ</l>
 <l>firum foldu frea allmectig</l>
 <trailer>primo cantauit Cædmon istud carmen.</trailer>
</body>
Content model
<content>
 <sequence>
  <classRef key="model.global"
   minOccurs="0maxOccurs="unbounded"/>

  <sequence minOccurs="0">
   <classRef key="model.divTop"/>
   <alternate minOccurs="0"
    maxOccurs="unbounded">

    <classRef key="model.global"/>
    <classRef key="model.divTop"/>
   </alternate>
  </sequence>
  <sequence minOccurs="0">
   <classRef key="model.divGenLike"/>
   <alternate minOccurs="0"
    maxOccurs="unbounded">

    <classRef key="model.global"/>
    <classRef key="model.divGenLike"/>
   </alternate>
  </sequence>
  <alternate>
   <sequence minOccurs="1"
    maxOccurs="unbounded">

    <classRef key="model.divLike"/>
    <alternate minOccurs="0"
     maxOccurs="unbounded">

     <classRef key="model.global"/>
     <classRef key="model.divGenLike"/>
    </alternate>
   </sequence>
   <sequence minOccurs="1"
    maxOccurs="unbounded">

    <classRef key="model.div1Like"/>
    <alternate minOccurs="0"
     maxOccurs="unbounded">

     <classRef key="model.global"/>
     <classRef key="model.divGenLike"/>
    </alternate>
   </sequence>
   <sequence>
    <sequence minOccurs="1"
     maxOccurs="unbounded">

     <alternate minOccurs="1maxOccurs="1">
      <elementRef key="schemaSpec"/>
      <classRef key="model.common"/>
     </alternate>
     <classRef key="model.global"
      minOccurs="0maxOccurs="unbounded"/>

    </sequence>
    <alternate minOccurs="0">
     <sequence minOccurs="1"
      maxOccurs="unbounded">

      <classRef key="model.divLike"/>
      <alternate minOccurs="0"
       maxOccurs="unbounded">

       <classRef key="model.global"/>
       <classRef key="model.divGenLike"/>
      </alternate>
     </sequence>
     <sequence minOccurs="1"
      maxOccurs="unbounded">

      <classRef key="model.div1Like"/>
      <alternate minOccurs="0"
       maxOccurs="unbounded">

       <classRef key="model.global"/>
       <classRef key="model.divGenLike"/>
      </alternate>
     </sequence>
    </alternate>
   </sequence>
  </alternate>
  <sequence minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.divBottom"/>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
 </sequence>
</content>
Schema Declaration
element body
{
   att.global.attributes,
   att.declaring.attributes,
   (
      model.global*,
      ( ( model.divTop, ( model.global | model.divTop )* )? ),
      ( ( model.divGenLike, ( model.global | model.divGenLike )* )? ),
      (
         ( ( model.divLike, ( model.global | model.divGenLike )* )+ )
       | ( ( model.div1Like, ( model.global | model.divGenLike )* )+ )
       | (
            ( ( ( schemaSpec | model.common ), model.global* )+ ),
            (
               ( ( model.divLike, ( model.global | model.divGenLike )* )+ )
             | ( ( model.div1Like, ( model.global | model.divGenLike )* )+ )
            )?
         )
      ),
      ( ( model.divBottom, model.global* )* )
   )
}

<byline>

<byline> (byline) contains the primary statement of responsibility given for a work on its title page or at the head or end of the work. [4.2.2. Openers and Closers 4.5. Front Matter]
Moduletextstructure
Attributes
Member of
Contained by
core: lg list
figures: figure table
May contain
Note

The byline on a title page may include either the name or a description for the document's author. Where the name is included, it may optionally be tagged using the docAuthor element.

Example
<byline>Written by a CITIZEN who continued all the
while in London. Never made publick before.</byline>
Example
<byline>Written from her own MEMORANDUMS</byline>
Example
<byline>By George Jones, Political Editor, in Washington</byline>
Example
<byline>BY
<docAuthor>THOMAS PHILIPOTT,</docAuthor>
Master of Arts,
(Somtimes)
Of Clare-Hall in Cambridge.</byline>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.phrase"/>
  <elementRef key="docAuthor"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Schema Declaration
element byline
{
   att.global.attributes,
   att.cmc.attributes,
   ( text | model.gLike | model.phrase | docAuthor | model.global )*
}

<catDesc>

<catDesc> (category description) describes some category within a taxonomy or text typology, either in the form of a brief prose description or in terms of the situational parameters used by the TEI formal <textDesc>. [2.3.7. The Classification Declaration]
Moduleheader
Attributes
Contained by
header: category
May contain
Example
<catDesc>Prose reportage</catDesc>
Example
<catDesc>
 <textDesc n="novel">
  <channel mode="w">print; part issues</channel>
  <constitution type="single"/>
  <derivation type="original"/>
  <domain type="art"/>
  <factuality type="fiction"/>
  <interaction type="none"/>
  <preparedness type="prepared"/>
  <purpose type="entertaindegree="high"/>
  <purpose type="informdegree="medium"/>
 </textDesc>
</catDesc>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.limitedPhrase"/>
  <classRef key="model.catDescPart"/>
 </alternate>
</content>
Schema Declaration
element catDesc
{
   att.global.attributes,
   att.canonical.attributes,
   ( text | model.limitedPhrase | model.catDescPart )*
}

<category>

<category> (category) contains an individual descriptive category, possibly nested within a superordinate category, within a user-defined taxonomy. [2.3.7. The Classification Declaration]
Moduleheader
Attributes
Contained by
May contain
core: desc gloss
Example
<category xml:id="b1">
 <catDesc>Prose reportage</catDesc>
</category>
Example
<category xml:id="b2">
 <catDesc>Prose </catDesc>
 <category xml:id="b11">
  <catDesc>journalism</catDesc>
 </category>
 <category xml:id="b12">
  <catDesc>fiction</catDesc>
 </category>
</category>
Example
<category xml:id="LIT">
 <catDesc xml:lang="pl">literatura piękna</catDesc>
 <catDesc xml:lang="en">fiction</catDesc>
 <category xml:id="LPROSE">
  <catDesc xml:lang="pl">proza</catDesc>
  <catDesc xml:lang="en">prose</catDesc>
 </category>
 <category xml:id="LPOETRY">
  <catDesc xml:lang="pl">poezja</catDesc>
  <catDesc xml:lang="en">poetry</catDesc>
 </category>
 <category xml:id="LDRAMA">
  <catDesc xml:lang="pl">dramat</catDesc>
  <catDesc xml:lang="en">drama</catDesc>
 </category>
</category>
Content model
<content>
 <sequence>
  <alternate>
   <elementRef key="catDescminOccurs="1"
    maxOccurs="unbounded"/>

   <alternate minOccurs="0"
    maxOccurs="unbounded">

    <classRef key="model.descLike"/>
    <elementRef key="equiv"/>
    <elementRef key="gloss"/>
   </alternate>
  </alternate>
  <elementRef key="categoryminOccurs="0"
   maxOccurs="unbounded"/>

 </sequence>
</content>
Schema Declaration
element category
{
   att.global.attributes,
   att.datcat.attributes,
   ( ( catDesc+ | ( model.descLike | equiv | gloss )* ), category* )
}

<catRef>

<catRef> (category reference) specifies one or more defined categories within some taxonomy or text typology. [2.4.3. The Text Classification]
Moduleheader
Attributes
schemeidentifies the classification scheme within which the set of categories concerned is defined, for example by a taxonomy element, or by some other resource.
Status Optional
Datatype teidata.pointer
Contained by
header: textClass
May containEmpty element
Note

The scheme attribute needs to be supplied only if more than one taxonomy has been declared.

Example
<catRef scheme="#myTopics"
 target="#news #prov #sales2"/>

<!-- elsewhere -->
<taxonomy xml:id="myTopics">
 <category xml:id="news">
  <catDesc>Newspapers</catDesc>
 </category>
 <category xml:id="prov">
  <catDesc>Provincial</catDesc>
 </category>
 <category xml:id="sales2">
  <catDesc>Low to average annual sales</catDesc>
 </category>
</taxonomy>
Content model
<content>
 <empty/>
</content>
Schema Declaration
element catRef
{
   att.global.attributes,
   att.pointing.attributes,
   attribute scheme { teidata.pointer }?,
   empty
}

<cell>

<cell> (cell) contains one cell of a table. [15.1.1. TEI Tables]
Modulefigures
Attributes
Contained by
figures: row
May contain
Example
<row>
 <cell role="label">General conduct</cell>
 <cell role="data">Not satisfactory, on account of his great unpunctuality
   and inattention to duties</cell>
</row>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
Schema Declaration
element cell
{
   att.global.attributes,
   att.tableDecoration.attributes,
   macro.specialPara
}

<change>

<change> (change) documents a change or set of changes made during the production of a source document, or during the revision of an electronic file. [2.6. The Revision Description 2.4.1. Creation 12.7. Identifying Changes and Revisions]
Moduleheader
Attributes
target(target) points to one or more elements that belong to this change.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
Contained by
header: revisionDesc
May contain
Note

The who attribute may be used to point to any other element, but will typically specify a respStmt or <person> element elsewhere in the header, identifying the person responsible for the change and their role in making it.

It is recommended that changes be recorded with the most recent first. The status attribute may be used to indicate the status of a document following the change documented.

Example
<titleStmt>
 <title> ... </title>
 <editor xml:id="LDB">Lou Burnard</editor>
 <respStmt xml:id="BZ">
  <resp>copy editing</resp>
  <name>Brett Zamir</name>
 </respStmt>
</titleStmt>
<!-- ... -->
<revisionDesc status="published">
 <change who="#BZwhen="2008-02-02"
  status="public">
Finished chapter 23</change>
 <change who="#BZwhen="2008-01-02"
  status="draft">
Finished chapter 2</change>
 <change n="P2.2when="1991-12-21"
  who="#LDB">
Added examples to section 3</change>
 <change when="1991-11-11who="#MSM">Deleted chapter 10</change>
</revisionDesc>
Example
<profileDesc>
 <creation>
  <listChange>
   <change xml:id="DRAFT1">First draft in pencil</change>
   <change xml:id="DRAFT2"
    notBefore="1880-12-09">
First revision, mostly
       using green ink</change>
   <change xml:id="DRAFT3"
    notBefore="1881-02-13">
Final corrections as
       supplied to printer.</change>
  </listChange>
 </creation>
</profileDesc>
Schematron

<sch:rule context="tei:*[@calendar]">
<sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more
systems or calendars to which the date represented by the content of this element belongs,
but this <sch:name/> element has no textual content.</sch:assert>
</sch:rule>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
Schema Declaration
element change
{
   att.ascribed.attributes,
   att.datable.attributes,
   att.docStatus.attributes,
   att.global.attributes,
   att.typed.attributes,
   attribute target { list { teidata.pointer+ } }?,
   macro.specialPara
}

<choice>

<choice> (choice) groups a number of alternative encodings for the same point in a text. [3.5. Simple Editorial Changes]
Modulecore
Attributes
Member of
Contained by
May contain
Note

Because the children of a choice element all represent alternative ways of encoding the same sequence, it is natural to think of them as mutually exclusive. However, there may be cases where a full representation of a text requires the alternative encodings to be considered as parallel.

Note also that choice elements may self-nest.

Where the purpose of an encoding is to record multiple witnesses of a single work, rather than to identify multiple possible encoding decisions at a given point, the <app> element and associated elements discussed in section 13.1. The Apparatus Entry, Readings, and Witnesses should be preferred.

Example

An American encoding of Gulliver's Travels which retains the British spelling but also provides a version regularized to American spelling might be encoded as follows.

<p>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>.</p>
Content model
<content>
 <alternate minOccurs="2"
  maxOccurs="unbounded">

  <classRef key="model.choicePart"/>
  <elementRef key="choice"/>
 </alternate>
</content>
Schema Declaration
element choice
{
   att.global.attributes,
   att.cmc.attributes,
   ( model.choicePart | choice ),
   ( model.choicePart | choice ),
   ( model.choicePart | choice )*
}

<cit>

<cit> (cited quotation) contains a quotation from some other document, together with a bibliographic reference to its source. In a dictionary it may contain an example text with at least one occurrence of the word form, used in the sense being described, or a translation of the headword, or an example. [3.3.3. Quotation 4.3.1. Grouped Texts 10.3.5.1. Examples]
Modulecore
Attributes
Member of
Contained by
May contain
Example
<cit>
 <q>and the breath of the whale is frequently attended with such an insupportable smell,
   as to bring on disorder of the brain.</q>
 <bibl>Ulloa's South America</bibl>
</cit>
Content model
<content>
 <alternate minOccurs="1"
  maxOccurs="unbounded">

  <classRef key="model.biblLike"/>
  <classRef key="model.egLike"/>
  <classRef key="model.entryPart"/>
  <classRef key="model.global"/>
  <classRef key="model.graphicLike"/>
  <classRef key="model.ptrLike"/>
  <classRef key="model.attributable"/>
  <elementRef key="pc"/>
  <elementRef key="q"/>
 </alternate>
</content>
Schema Declaration
element cit
{
   att.global.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   (
      model.biblLikemodel.egLikemodel.entryPartmodel.globalmodel.graphicLikemodel.ptrLikemodel.attributablepcq
   )+
}

<classCode>

<classCode> (classification code) contains the classification code used for this text in some standard classification system. [2.4.3. The Text Classification]
Moduleheader
Attributes
schemeidentifies the classification system in use, as defined by, e.g. a taxonomy element, or some other resource.
Status Required
Datatype teidata.pointer
Contained by
header: textClass
May contain
Example
<classCode scheme="http://www.udc.org">410</classCode>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
Schema Declaration
element classCode
{
   att.global.attributes,
   attribute scheme { teidata.pointer },
   macro.phraseSeq.limited
}

<classDecl>

<classDecl> (classification declarations) contains one or more taxonomies defining any classificatory codes used elsewhere in the text. [2.3.7. The Classification Declaration 2.3. The Encoding Description]
Moduleheader
Attributes
Member of
Contained by
header: encodingDesc
May contain
header: taxonomy
Example
<classDecl>
 <taxonomy xml:id="LCSH">
  <bibl>Library of Congress Subject Headings</bibl>
 </taxonomy>
</classDecl>
<!-- ... -->
<textClass>
 <keywords scheme="#LCSH">
  <term>Political science</term>
  <term>United States -- Politics and government —
     Revolution, 1775-1783</term>
 </keywords>
</textClass>
Content model
<content>
 <elementRef key="taxonomyminOccurs="1"
  maxOccurs="unbounded"/>

</content>
Schema Declaration
element classDecl { att.global.attributes, taxonomy+ }

<closer>

<closer> (closer) groups together salutations, datelines, and similar phrases appearing as a final group at the end of a division, especially of a letter. [4.2.2. Openers and Closers 4.2. Elements Common to All Divisions]
Moduletextstructure
Attributes
Member of
Contained by
core: lg list
figures: figure table
May contain
Example
<div type="letter">
 <p> perhaps you will favour me with a sight of it when convenient.</p>
 <closer>
  <salute>I remain, &amp;c. &amp;c.</salute>
  <signed>H. Colburn</signed>
 </closer>
</div>
Example
<div type="chapter">
 <p>
<!-- ... --> and his heart was going like mad and yes I said yes I will Yes.</p>
 <closer>
  <dateline>
   <name type="place">Trieste-Zürich-Paris,</name>
   <date>1914–1921</date>
  </dateline>
 </closer>
</div>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <elementRef key="signed"/>
  <elementRef key="dateline"/>
  <elementRef key="salute"/>
  <classRef key="model.phrase"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Schema Declaration
element closer
{
   att.global.attributes,
   att.written.attributes,
   att.cmc.attributes,
   (
      text
    | model.gLikesigneddatelinesalutemodel.phrasemodel.global
   )*
}

<code>

<code> contains literal code from some formal language such as a programming language. [23.1.1. Phrase Level Terms]
Moduletagdocs
Attributes
lang(formal language) a name identifying the formal language in which the code is expressed
Status Optional
Datatype teidata.word
Member of
Contained by
May containCharacter data only
Example
<code lang="JAVA"> Size fCheckbox1Size = new Size();
fCheckbox1Size.Height = 500;
fCheckbox1Size.Width = 500;
xCheckbox1.setSize(fCheckbox1Size);
</code>
Content model
<content>
 <textNode/>
</content>
Schema Declaration
element code { att.global.attributes, attribute lang { teidata.word }?, text }

<corr>

<corr> (correction) contains the correct form of a passage apparently erroneous in the copy text. [3.5.1. Apparent Errors]
Modulecore
Attributes
Member of
Contained by
May contain
Example

If all that is desired is to call attention to the fact that the copy text has been corrected, corr may be used alone:

I don't know,
Juan. It's so far in the past now — how <corr>can we</corr> prove
or disprove anyone's theories?
Example

It is also possible, using the choice and sic elements, to provide an uncorrected reading:

I don't know, Juan. It's so far in the past now —
how <choice>
 <sic>we can</sic>
 <corr>can we</corr>
</choice> prove or
disprove anyone's theories?
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element corr
{
   att.global.attributes,
   att.editLike.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   macro.paraContent
}

<creation>

<creation> (creation) contains information about the creation of a text. [2.4.1. Creation 2.4. The Profile Description]
Moduleheader
Attributes
Member of
Contained by
header: profileDesc
May contain
Note

The creation element may be used to record details of a text's creation, e.g. the date and place it was composed, if these are of interest.

It may also contain a more structured account of the various stages or revisions associated with the evolution of a text; this should be encoded using the <listChange> element. It should not be confused with the publicationStmt element, which records date and place of publication.

Example
<creation>
 <date>Before 1987</date>
</creation>
Example
<creation>
 <date when="1988-07-10">10 July 1988</date>
</creation>
Schematron

<sch:rule context="tei:*[@calendar]">
<sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more
systems or calendars to which the date represented by the content of this element belongs,
but this <sch:name/> element has no textual content.</sch:assert>
</sch:rule>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.limitedPhrase"/>
  <elementRef key="listChange"/>
 </alternate>
</content>
Schema Declaration
element creation
{
   att.global.attributes,
   att.datable.attributes,
   ( text | model.limitedPhrase | listChange )*
}

<date>

<date> (date) contains a date in any format. [3.6.4. Dates and Times 2.2.4. Publication, Distribution, Licensing, etc. 2.6. The Revision Description 3.12.2.4. Imprint, Size of a Document, and Reprint Information 16.2.3. The Setting Description 14.4. Dates]
Modulecore
Attributes
Member of
Contained by
May contain
Example
<date when="1980-02">early February 1980</date>
Example
Given on the <date when="1977-06-12">Twelfth Day
of June in the Year of Our Lord One Thousand Nine Hundred and Seventy-seven of the Republic
the Two Hundredth and first and of the University the Eighty-Sixth.</date>
Example
<date when="1990-09">September 1990</date>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.phrase"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Schema Declaration
element date
{
   att.global.attributes,
   att.canonical.attributes,
   att.datable.attributes,
   att.editLike.attributes,
   att.dimensions.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   ( text | model.gLike | model.phrase | model.global )*
}

<dateline>

<dateline> (dateline) contains a brief description of the place, date, time, etc. of production of a letter, newspaper story, or other work, prefixed or suffixed to it as a kind of heading or trailer. [4.2.2. Openers and Closers]
Moduletextstructure
Attributes
Member of
Contained by
core: lg list
figures: figure table
May contain
Example
<dateline>Walden, this 29. of August 1592</dateline>
Example
<div type="chapter">
 <p>
<!-- ... --> and his heart was going like mad and yes I said yes I will Yes.</p>
 <closer>
  <dateline>
   <name type="place">Trieste-Zürich-Paris,</name>
   <date>1914–1921</date>
  </dateline>
 </closer>
</div>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.phrase"/>
  <classRef key="model.global"/>
  <elementRef key="docDate"/>
 </alternate>
</content>
Schema Declaration
element dateline
{
   att.global.attributes,
   att.cmc.attributes,
   ( text | model.gLike | model.phrase | model.global | docDate )*
}

<del>

<del> (deletion) contains a letter, word, or passage deleted, marked as deleted, or otherwise indicated as superfluous or spurious in the copy text by an author, scribe, or a previous annotator or corrector. [3.5.3. Additions, Deletions, and Omissions]
Modulecore
Attributes
Member of
Contained by
May contain
Note

This element should be used for deletion of shorter sequences of text, typically single words or phrases. The <delSpan> element should be used for longer sequences of text, for those containing structural subdivisions, and for those containing overlapping additions and deletions.

The text deleted must be at least partially legible in order for the encoder to be able to transcribe it (unless it is restored in a <supplied> tag). Illegible or lost text within a deletion may be marked using the gap tag to signal that text is present but has not been transcribed, or is no longer visible. Attributes on the gap element may be used to indicate how much text is omitted, the reason for omitting it, etc. If text is not fully legible, the unclear element (available when using the additional tagset for transcription of primary sources) should be used to signal the areas of text which cannot be read with confidence in a similar way.

Degrees of uncertainty over what can still be read, or whether a deletion was intended may be indicated by use of the <certainty> element (see 22. Certainty, Precision, and Responsibility).

There is a clear distinction in the TEI between del and <surplus> on the one hand and gap or unclear on the other. del indicates a deletion present in the source being transcribed, which states the author's or a later scribe's intent to cancel or remove text. <surplus> indicates material present in the source being transcribed which should have been so deleted, but which is not in fact. gap or unclear, by contrast, signal an editor's or encoder's decision to omit something or their inability to read the source text. See sections 12.3.1.7. Text Omitted from or Supplied in the Transcription and 12.3.3.2. Use of the gap, del, damage, unclear, and supplied Elements in Combination for the relationship between these and other related elements used in detailed transcription.

Example
<l>
 <del rend="overtyped">Mein</del> Frisch <del rend="overstriketype="primary">schwebt</del>
weht der Wind
</l>
Example
<del rend="overstrike">
 <gap reason="illegiblequantity="5"
  unit="character"/>

</del>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element del
{
   att.global.attributes,
   att.transcriptional.attributes,
   att.typed.attributes,
   att.dimensions.attributes,
   att.cmc.attributes,
   macro.paraContent
}

<desc>

<desc> (description) contains a short description of the purpose, function, or use of its parent element, or when the parent is a documentation element, describes or defines the object being documented. [23.4.1. Description of Components]
Modulecore
Attributes
typecharacterizes the element in some sense, using any convenient classification scheme or typology.
Derived fromatt.typed
Status Optional
Datatype teidata.enumerated
Suggested values include:
deprecationInfo
(deprecation information) This element describes why or how its parent element is being deprecated, typically including recommendations for alternate encoding.
<dataSpec module="tei"
 ident="teidata.pointvalidUntil="2050-02-25">

 <desc type="deprecationInfo"
  versionDate="2018-09-14xml:lang="en">
Several standards bodies, including NIST in the USA,
   strongly recommend against ending the representation of a number
   with a decimal point. So instead of <q>3.</q> use either <q>3</q>
   or <q>3.0</q>.</desc>
<!-- ... -->
</dataSpec>
Member of
Contained by
May contain
Note

When used in a specification element such as <elementSpec>, TEI convention requires that this be expressed as a finite clause, begining with an active verb.

Example

Example of a desc element inside a documentation element.

<dataSpec module="tei"
 ident="teidata.point">

 <desc versionDate="2010-10-17"
  xml:lang="en">
defines the data type used to express a point in cartesian space.</desc>
 <content>
  <dataRef name="token"
   restriction="(-?[0-9]+(\.[0-9]+)?,-?[0-9]+(\.[0-9]+)?)"/>

 </content>
<!-- ... -->
</dataSpec>
Example

Example of a desc element in a non-documentation element.

<place xml:id="KERG2">
 <placeName>Kerguelen Islands</placeName>
<!-- ... -->
 <terrain>
  <desc>antarctic tundra</desc>
 </terrain>
<!-- ... -->
</place>
SchematronA desc with a type of deprecationInfo should only occur when its parent element is being deprecated. Furthermore, it should always occur in an element that is being deprecated when desc is a valid child of that element.

<sch:rule context="tei:desc[ @type eq 'deprecationInfo']">
<sch:assert test="../@validUntil">Information about a
deprecation should only be present in a specification element
that is being deprecated: that is, only an element that has a
@validUntil attribute should have a child <desc
type="deprecationInfo">.</sch:assert>
</sch:rule>
Content model
<content>
 <macroRef key="macro.limitedContent"/>
</content>
Schema Declaration
element desc
{
   att.global.attributes,
   att.translatable.attributes,
   att.typed.attribute.subtype,
   att.cmc.attributes,
   attribute type { "deprecationInfo" | teidata.enumerated }?,
   macro.limitedContent
}

<distributor>

<distributor> (distributor) supplies the name of a person or other agency responsible for the distribution of a text. [2.2.4. Publication, Distribution, Licensing, etc.]
Moduleheader
Attributes
Member of
Contained by
core: bibl
May contain
Example
<distributor>Oxford Text Archive</distributor>
<distributor>Redwood and Burn Ltd</distributor>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element distributor
{
   att.global.attributes,
   att.canonical.attributes,
   macro.phraseSeq
}

<div>

<div> (text division) contains a subdivision of the front, body, or back of a text. [4.1. Divisions of the Body]
Moduletextstructure
Attributes
Member of
Contained by
textstructure: back body div front
May contain
Example
<body>
 <div type="part">
  <head>Fallacies of Authority</head>
  <p>The subject of which is Authority in various shapes, and the object, to repress all
     exercise of the reasoning faculty.</p>
  <div n="1type="chapter">
   <head>The Nature of Authority</head>
   <p>With reference to any proposed measures having for their object the greatest
       happiness of the greatest number [...]</p>
   <div n="1.1type="section">
    <head>Analysis of Authority</head>
    <p>What on any given occasion is the legitimate weight or influence to be attached to
         authority [...] </p>
   </div>
   <div n="1.2type="section">
    <head>Appeal to Authority, in What Cases Fallacious.</head>
    <p>Reference to authority is open to the charge of fallacy when [...] </p>
   </div>
  </div>
 </div>
</body>
Schematron

<sch:rule context="tei:div">
<sch:report test="(ancestor::tei:l or ancestor::tei:lg) and not(ancestor::tei:floatingText)"> Abstract model violation: Lines may not contain higher-level structural elements such as div, unless div is a descendant of floatingText.
</sch:report>
</sch:rule>
Schematron

<sch:rule context="tei:div">
<sch:report test="(ancestor::tei:p or ancestor::tei:ab) and not(ancestor::tei:floatingText)"> Abstract model violation: p and ab may not contain higher-level structural elements such as div, unless div is a descendant of floatingText.
</sch:report>
</sch:rule>
Content model
<content>
 <sequence>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.divTop"/>
   <classRef key="model.global"/>
  </alternate>
  <sequence minOccurs="0">
   <alternate>
    <sequence minOccurs="1"
     maxOccurs="unbounded">

     <alternate>
      <classRef key="model.divLike"/>
      <classRef key="model.divGenLike"/>
     </alternate>
     <classRef key="model.global"
      minOccurs="0maxOccurs="unbounded"/>

    </sequence>
    <sequence>
     <sequence minOccurs="1"
      maxOccurs="unbounded">

      <alternate minOccurs="1"
       maxOccurs="1">

       <elementRef key="schemaSpec"/>
       <classRef key="model.common"/>
      </alternate>
      <classRef key="model.global"
       minOccurs="0maxOccurs="unbounded"/>

     </sequence>
     <sequence minOccurs="0"
      maxOccurs="unbounded">

      <alternate>
       <classRef key="model.divLike"/>
       <classRef key="model.divGenLike"/>
      </alternate>
      <classRef key="model.global"
       minOccurs="0maxOccurs="unbounded"/>

     </sequence>
    </sequence>
   </alternate>
   <sequence minOccurs="0"
    maxOccurs="unbounded">

    <classRef key="model.divBottom"/>
    <classRef key="model.global"
     minOccurs="0maxOccurs="unbounded"/>

   </sequence>
  </sequence>
 </sequence>
</content>
Schema Declaration
element div
{
   att.global.attributes,
   att.divLike.attributes,
   att.typed.attributes,
   att.declaring.attributes,
   att.written.attributes,
   (
      ( model.divTop | model.global )*,
      (
         (
            (
               ( ( ( model.divLike | model.divGenLike ), model.global* )+ )
             | (
                  ( ( ( schemaSpec | model.common ), model.global* )+ ),
                  ( ( ( model.divLike | model.divGenLike ), model.global* )* )
               )
            ),
            ( ( model.divBottom, model.global* )* )
         )?
      )
   )
}

<divGen>

<divGen> (automatically generated text division) indicates the location at which a textual division generated automatically by a text-processing application is to appear. [3.9.2. Index Entries]
Modulecore
Attributes
typespecifies what type of generated text division (e.g. index, table of contents, etc.) is to appear.
Derived fromatt.typed
Status Optional
Datatype teidata.enumerated
Sample values include:
index
an index is to be generated and inserted at this point.
toc
a table of contents
figlist
a list of figures
tablist
a list of tables
Note

Valid values are application-dependent; those shown are of obvious utility in document production, but are by no means exhaustive.

Member of
Contained by
textstructure: back body div front
May contain
core: head
Note

This element is intended primarily for use in document production or manipulation, rather than in the transcription of pre-existing materials; it makes it easier to specify the location of indices, tables of contents, etc., to be generated by text preparation or word processing software.

Example

One use for this element is to allow document preparation software to generate an index and insert it in the appropriate place in the output. The example below assumes that the indexName attribute on index elements in the text has been used to specify index entries for the two generated indexes, named NAMES and THINGS:

<back>
 <div1 type="backmat">
  <head>Bibliography</head>
<!-- ... -->
 </div1>
 <div1 type="backmat">
  <head>Indices</head>
  <divGen n="Index Nominumtype="NAMES"/>
  <divGen n="Index Rerumtype="THINGS"/>
 </div1>
</back>
Example

Another use for divGen is to specify the location of an automatically produced table of contents:

<front>
<!--<titlePage>...</titlePage>-->
 <divGen type="toc"/>
 <div>
  <head>Preface</head>
  <p> ... </p>
 </div>
</front>
Content model
<content>
 <classRef key="model.headLike"
  minOccurs="0maxOccurs="unbounded"/>

</content>
Schema Declaration
element divGen
{
   att.global.attributes,
   att.typed.attribute.subtype,
   attribute type { teidata.enumerated }?,
   model.headLike*
}

<docAuthor>

<docAuthor> (document author) contains the name of the author of the document, as given on the title page (often but not always contained in a byline). [4.6. Title Pages]
Moduletextstructure
Attributes
Member of
Contained by
core: lg list
figures: figure table
May contain
Note

The document author's name often occurs within a byline, but the docAuthor element may be used whether the byline element is used or not. It should be used only for the author(s) of the entire document, not for author(s) of any subset or part of it. (Attributions of authorship of a subset or part of the document, for example of a chapter in a textbook or an article in a newspaper, may be encoded with byline without docAuthor.)

Example
<titlePage>
 <docTitle>
  <titlePart>Travels into Several Remote Nations of the World, in Four
     Parts.</titlePart>
 </docTitle>
 <byline> By <docAuthor>Lemuel Gulliver</docAuthor>, First a Surgeon,
   and then a Captain of several Ships</byline>
</titlePage>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element docAuthor
{
   att.global.attributes,
   att.canonical.attributes,
   att.cmc.attributes,
   macro.phraseSeq
}

<docDate>

<docDate> (document date) contains the date of a document, as given on a title page or in a dateline. [4.6. Title Pages]
Moduletextstructure
Attributes
Member of
Contained by
May contain
Note

Cf. the general date element in the core tag set. This specialized element is provided for convenience in marking and processing the date of the documents, since it is likely to require specialized handling for many applications. It should be used only for the date of the entire document, not for any subset or part of it.

Example
<docImprint>Oxford, Clarendon Press, <docDate>1987</docDate>
</docImprint>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element docDate
{
   att.global.attributes,
   att.cmc.attributes,
   att.datable.attributes,
   macro.phraseSeq
}

<docEdition>

<docEdition> (document edition) contains an edition statement as presented on a title page of a document. [4.6. Title Pages]
Moduletextstructure
Attributes
Member of
Contained by
textstructure: back front titlePage
May contain
Note

Cf. the edition element of bibliographic citation. As usual, the shorter name has been given to the more frequent element.

Example
<docEdition>The Third edition Corrected</docEdition>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element docEdition { att.global.attributes, macro.paraContent }

<docImprint>

<docImprint> (document imprint) contains the imprint statement (place and date of publication, publisher name), as given (usually) at the foot of a title page. [4.6. Title Pages]
Moduletextstructure
Attributes
Member of
Contained by
textstructure: back front titlePage
May contain
Note

Cf. the <imprint> element of bibliographic citations. As with title, author, and editions, the shorter name is reserved for the element likely to be used more often.

Example
<docImprint>Oxford, Clarendon Press, 1987</docImprint>
Imprints may be somewhat more complex:
<docImprint>
 <pubPlace>London</pubPlace>
Printed for <name>E. Nutt</name>,
at
<pubPlace>Royal Exchange</pubPlace>;
<name>J. Roberts</name> in
<pubPlace>wick-Lane</pubPlace>;
<name>A. Dodd</name> without
<pubPlace>Temple-Bar</pubPlace>;
and <name>J. Graves</name> in
<pubPlace>St. James's-street.</pubPlace>
 <date>1722.</date>
</docImprint>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.phrase"/>
  <elementRef key="pubPlace"/>
  <elementRef key="docDate"/>
  <elementRef key="publisher"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Schema Declaration
element docImprint
{
   att.global.attributes,
   (
      text
    | model.gLikemodel.phrasepubPlacedocDatepublishermodel.global
   )*
}

<docTitle>

<docTitle> (document title) contains the title of a document, including all its constituents, as given on a title page. [4.6. Title Pages]
Moduletextstructure
Attributes
Member of
Contained by
textstructure: back front titlePage
May contain
analysis: interp interpGrp
figures: figure
linking: anchor
textstructure: titlePart
Example
<docTitle>
 <titlePart type="main">The DUNCIAD, VARIOURVM.</titlePart>
 <titlePart type="sub">WITH THE PROLEGOMENA of SCRIBLERUS.</titlePart>
</docTitle>
Content model
<content>
 <sequence>
  <classRef key="model.global"
   minOccurs="0maxOccurs="unbounded"/>

  <sequence minOccurs="1"
   maxOccurs="unbounded">

   <elementRef key="titlePart"/>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
 </sequence>
</content>
Schema Declaration
element docTitle
{
   att.global.attributes,
   att.canonical.attributes,
   ( model.global*, ( ( titlePart, model.global* )+ ) )
}

<edition>

<edition> (edition) describes the particularities of one edition of a text. [2.2.2. The Edition Statement]
Moduleheader
Attributes
Member of
Contained by
core: bibl
header: editionStmt
May contain
Example
<edition>First edition <date>Oct 1990</date>
</edition>
<edition n="S2">Students' edition</edition>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element edition { att.global.attributes, macro.phraseSeq }

<editionStmt>

<editionStmt> (edition statement) groups information relating to one edition of a text. [2.2.2. The Edition Statement 2.2. The File Description]
Moduleheader
Attributes
Contained by
header: fileDesc
May contain
Example
<editionStmt>
 <edition n="S2">Students' edition</edition>
 <respStmt>
  <resp>Adapted by </resp>
  <name>Elizabeth Kirk</name>
 </respStmt>
</editionStmt>
Example
<editionStmt>
 <p>First edition, <date>Michaelmas Term, 1991.</date>
 </p>
</editionStmt>
Content model
<content>
 <alternate>
  <classRef key="model.pLikeminOccurs="1"
   maxOccurs="unbounded"/>

  <sequence>
   <elementRef key="edition"/>
   <classRef key="model.respLike"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
 </alternate>
</content>
Schema Declaration
element editionStmt
{
   att.global.attributes,
   ( model.pLike+ | ( edition, model.respLike* ) )
}

<editor>

<editor> contains a secondary statement of responsibility for a bibliographic item, for example the name of an individual, institution or organization, (or of several such) acting as editor, compiler, translator, etc. [3.12.2.2. Titles, Authors, and Editors]
Modulecore
Attributes
Member of
Contained by
May contain
Note

A consistent format should be adopted.

Particularly where cataloguing is likely to be based on the content of the header, it is advisable to use generally recognized authority lists for the exact form of personal names.

Example
<editor role="Technical_Editor">Ron Van den Branden</editor>
<editor role="Editor-in-Chief">John Walsh</editor>
<editor role="Managing_Editor">Anne Baillot</editor>
Schematron

<sch:rule context="tei:*[@calendar]">
<sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more
systems or calendars to which the date represented by the content of this element belongs,
but this <sch:name/> element has no textual content.</sch:assert>
</sch:rule>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element editor
{
   att.global.attributes,
   att.naming.attributes,
   att.datable.attributes,
   macro.phraseSeq
}

<editorialDecl>

<editorialDecl> (editorial practice declaration) provides details of editorial principles and practices applied during the encoding of a text. [2.3.3. The Editorial Practices Declaration 2.3. The Encoding Description 16.3.2. Declarable Elements]
Moduleheader
Attributes
Member of
Contained by
header: encodingDesc
May contain
core: p
Example
<editorialDecl>
 <p>All words converted to Modern American spelling using
   Websters 9th Collegiate dictionary</p>
 <p>All opening quotation marks converted to “ all closing
   quotation marks converted to &amp;cdq;.</p>
</editorialDecl>
Content model
<content>
 <classRef key="model.pLikeminOccurs="1"
  maxOccurs="unbounded"/>

</content>
Schema Declaration
element editorialDecl
{
   att.global.attributes,
   att.declarable.attributes,
   model.pLike+
}

<eg>

<eg> (example) contains any kind of illustrative example. [23.5. Element Specifications 23.5.3. Attribute List Specification]
Moduletagdocs
Attributes
Member of
Contained by
May contain
Note

If the example contains material in XML markup, either it must be enclosed within a CDATA marked section, or character entity references must be used to represent the markup delimiters. If the example contains well-formed XML, it should be marked using the more specific <egXML> element.

Example
<p>The
<gi>term</gi> element is declared using the following syntax:
<eg><![CDATA[<!ELEMENT term (%phrase.content;)>]]</eg>
</p>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element eg { att.global.attributes, macro.phraseSeq }

<emph>

<emph> (emphasized) marks words or phrases which are stressed or emphasized for linguistic or rhetorical effect. [3.3.2.2. Emphatic Words and Phrases 3.3.2. Emphasis, Foreign Words, and Unusual Language]
Modulecore
Attributes
Member of
Contained by
May contain
Example
You took the car and did <emph>what</emph>?!!
Example
<q>What it all comes to is this,</q> he said.
<q>
 <emph>What
   does Christopher Robin do in the morning nowadays?</emph>
</q>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element emph { att.global.attributes, att.cmc.attributes, macro.paraContent }

<encodingDesc>

<encodingDesc> (encoding description) documents the relationship between an electronic text and the source or sources from which it was derived. [2.3. The Encoding Description 2.1.1. The TEI Header and Its Components]
Moduleheader
Attributes
Member of
Contained by
header: teiHeader
May contain
Example
<encodingDesc>
 <p>Basic encoding, capturing lexical information only. All
   hyphenation, punctuation, and variant spellings normalized. No
   formatting or layout information preserved.</p>
</encodingDesc>
Content model
<content>
 <alternate minOccurs="1"
  maxOccurs="unbounded">

  <classRef key="model.encodingDescPart"/>
  <classRef key="model.pLike"/>
 </alternate>
</content>
Schema Declaration
element encodingDesc
{
   att.global.attributes,
   ( model.encodingDescPart | model.pLike )+
}

<epigraph>

<epigraph> (epigraph) contains a quotation, anonymous or attributed, appearing at the start or end of a section or on a title page. [4.2.3. Arguments, Epigraphs, and Postscripts 4.2. Elements Common to All Divisions 4.6. Title Pages]
Moduletextstructure
Attributes
Member of
Contained by
core: lg list
figures: figure table
May contain
Example
<epigraph xml:lang="la">
 <cit>
  <bibl>Lucret.</bibl>
  <quote>
   <l part="F">petere inde coronam,</l>
   <l>Vnde prius nulli velarint tempora Musae.</l>
  </quote>
 </cit>
</epigraph>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <classRef key="model.common"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Schema Declaration
element epigraph
{
   att.global.attributes,
   att.cmc.attributes,
   ( model.common | model.global )*
}

<expan>

<expan> (expansion) contains the expansion of an abbreviation. [3.6.5. Abbreviations and Their Expansions]
Modulecore
Attributes
Member of
Contained by
May contain
Note

The content of this element should be the expanded abbreviation, usually (but not always) a complete word or phrase. The <ex> element provided by the transcr module may be used to mark up sequences of letters supplied within such an expansion.

If abbreviations are expanded silently, this practice should be documented in the editorialDecl, either with a <normalization> element or a p.

Example
The address is Southmoor
<choice>
 <expan>Road</expan>
 <abbr>Rd</abbr>
</choice>
Example
<choice xml:lang="la">
 <abbr>Imp</abbr>
 <expan>Imp<ex>erator</ex>
 </expan>
</choice>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element expan
{
   att.global.attributes,
   att.editLike.attributes,
   att.cmc.attributes,
   macro.phraseSeq
}

<extent>

<extent> (extent) describes the approximate size of a text stored on some carrier medium or of some other object, digital or non-digital, specified in any convenient units. [2.2.3. Type and Extent of File 2.2. The File Description 3.12.2.4. Imprint, Size of a Document, and Reprint Information 11.7.1. Object Description]
Moduleheader
Attributes
Member of
Contained by
core: bibl
header: fileDesc
May contain
Example
<extent>3200 sentences</extent>
<extent>between 10 and 20 Mb</extent>
<extent>ten 3.5 inch high density diskettes</extent>
Example

The <measure> element may be used to supply normalized or machine tractable versions of the size or sizes concerned.

<extent>
 <measure unit="MiBquantity="4.2">About four megabytes</measure>
 <measure unit="pagesquantity="245">245 pages of source
   material</measure>
</extent>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element extent { att.global.attributes, macro.phraseSeq }

<figDesc>

<figDesc> (description of figure) contains a brief prose description of the appearance or content of a graphic figure, for use when documenting an image without displaying it. [15.4. Specific Elements for Graphic Images]
Modulefigures
Attributes
Contained by
figures: figure
May contain
Note

This element is intended for use as an alternative to the content of its parent figure element ; for example, to display when the image is required but the equipment in use cannot display graphic images. It may also be used for indexing or documentary purposes.

Example
<figure>
 <graphic url="emblem1.png"/>
 <head>Emblemi d'Amore</head>
 <figDesc>A pair of naked winged cupids, each holding a
   flaming torch, in a rural setting.</figDesc>
</figure>
Content model
<content>
 <macroRef key="macro.limitedContent"/>
</content>
Schema Declaration
element figDesc { att.global.attributes, macro.limitedContent }

<figure>

<figure> (figure) groups elements representing or containing graphic information such as an illustration, formula, or figure. [15.4. Specific Elements for Graphic Images]
Modulefigures
Attributes
Member of
Contained by
May contain
Example
<figure>
 <head>The View from the Bridge</head>
 <figDesc>A Whistleresque view showing four or five sailing boats in the foreground, and a
   series of buoys strung out between them.</figDesc>
 <graphic url="http://www.example.org/fig1.png"
  scale="0.5"/>

</figure>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <classRef key="model.headLike"/>
  <classRef key="model.common"/>
  <elementRef key="figDesc"/>
  <classRef key="model.graphicLike"/>
  <classRef key="model.global"/>
  <classRef key="model.divBottom"/>
 </alternate>
</content>
Schema Declaration
element figure
{
   att.global.attributes,
   att.placement.attributes,
   att.typed.attributes,
   att.written.attributes,
   att.cmc.attributes,
   (
      model.headLikemodel.commonfigDescmodel.graphicLikemodel.globalmodel.divBottom
   )*
}

<fileDesc>

<fileDesc> (file description) contains a full bibliographic description of an electronic file. [2.2. The File Description 2.1.1. The TEI Header and Its Components]
Moduleheader
Attributes
Contained by
header: teiHeader
May contain
Note

The major source of information for those seeking to create a catalogue entry or bibliographic citation for an electronic file. As such, it provides a title and statements of responsibility together with details of the publication or distribution of the file, of any series to which it belongs, and detailed bibliographic notes for matters not addressed elsewhere in the header. It also contains a full bibliographic description for the source or sources from which the electronic text was derived.

Example
<fileDesc>
 <titleStmt>
  <title>The shortest possible TEI document</title>
 </titleStmt>
 <publicationStmt>
  <p>Distributed as part of TEI P5</p>
 </publicationStmt>
 <sourceDesc>
  <p>No print source exists: this is an original digital text</p>
 </sourceDesc>
</fileDesc>
Content model
<content>
 <sequence>
  <sequence>
   <elementRef key="titleStmt"/>
   <elementRef key="editionStmt"
    minOccurs="0"/>

   <elementRef key="extentminOccurs="0"/>
   <elementRef key="publicationStmt"/>
   <elementRef key="seriesStmt"
    minOccurs="0maxOccurs="unbounded"/>

   <elementRef key="notesStmt"
    minOccurs="0"/>

  </sequence>
  <elementRef key="sourceDesc"
   minOccurs="1maxOccurs="unbounded"/>

 </sequence>
</content>
Schema Declaration
element fileDesc
{
   att.global.attributes,
   (
      (
         titleStmt,
         editionStmt?,
         extent?,
         publicationStmt,
         seriesStmt*,
         notesStmt?
      ),
      sourceDesc+
   )
}

<foreign>

<foreign> (foreign) identifies a word or phrase as belonging to some language other than that of the surrounding text. [3.3.2.1. Foreign Words or Expressions]
Modulecore
Attributes
Member of
Contained by
May contain
Note

The global xml:lang attribute should be supplied for this element to identify the language of the word or phrase marked. As elsewhere, its value should be a language tag as defined in 6.1. Language Identification.

This element is intended for use only where no other element is available to mark the phrase or words concerned. The global xml:lang attribute should be used in preference to this element where it is intended to mark the language of the whole of some text element.

The <distinct> element may be used to identify phrases belonging to sublanguages or registers not generally regarded as true languages.

Example
This is
heathen Greek to you still? Your <foreign xml:lang="la">lapis
philosophicus</foreign>?
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element foreign { att.global.attributes, att.cmc.attributes, macro.phraseSeq }

<formula>

<formula> (formula) contains a mathematical or other formula. [15.2. Formulæ and Mathematical Expressions]
Modulefigures
Attributes
Member of
Contained by
May contain
core: graphic hi q
figures: formula
character data
Example
<formula notation="tex">$E=mc^2$</formula>
Example
<formula notation="none">E=mc<hi rend="sup">2</hi>
</formula>
Example
<formula notation="mathml">
 <m:math>
  <m:mi>E</m:mi>
  <m:mo>=</m:mo>
  <m:mi>m</m:mi>
  <m:msup>
   <m:mrow>
    <m:mi>c</m:mi>
   </m:mrow>
   <m:mrow>
    <m:mn>2</m:mn>
   </m:mrow>
  </m:msup>
 </m:math>
</formula>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.graphicLike"/>
  <classRef key="model.hiLike"/>
 </alternate>
</content>
Schema Declaration
element formula
{
   att.global.attributes,
   att.notated.attributes,
   att.cmc.attributes,
   ( text | model.graphicLike | model.hiLike )*
}

<front>

<front> (front matter) contains any prefatory matter (headers, abstracts, title page, prefaces, dedications, etc.) found at the start of a document, before the main body. [4.6. Title Pages 4. Default Text Structure]
Moduletextstructure
Attributes
Contained by
textstructure: text
May contain
Note

Because cultural conventions differ as to which elements are grouped as front matter and which as back matter, the content models for the front and back elements are identical.

Example
<front>
 <epigraph>
  <quote>Nam Sibyllam quidem Cumis ego ipse oculis meis vidi in ampulla
     pendere, et cum illi pueri dicerent: <q xml:lang="grc">Σίβυλλα τί
       θέλεις</q>; respondebat illa: <q xml:lang="grc">ὰποθανεῖν θέλω.</q>
  </quote>
 </epigraph>
 <div type="dedication">
  <p>For Ezra Pound <q xml:lang="it">il miglior fabbro.</q>
  </p>
 </div>
</front>
Example
<front>
 <div type="dedication">
  <p>To our three selves</p>
 </div>
 <div type="preface">
  <head>Author's Note</head>
  <p>All the characters in this book are purely imaginary, and if the
     author has used names that may suggest a reference to living persons
     she has done so inadvertently. ...</p>
 </div>
</front>
Example
<front>
 <div type="abstract">
  <div>
   <head> BACKGROUND:</head>
   <p>Food insecurity can put children at greater risk of obesity because
       of altered food choices and nonuniform consumption patterns.</p>
  </div>
  <div>
   <head> OBJECTIVE:</head>
   <p>We examined the association between obesity and both child-level
       food insecurity and personal food insecurity in US children.</p>
  </div>
  <div>
   <head> DESIGN:</head>
   <p>Data from 9,701 participants in the National Health and Nutrition
       Examination Survey, 2001-2010, aged 2 to 11 years were analyzed.
       Child-level food insecurity was assessed with the US Department of
       Agriculture's Food Security Survey Module based on eight
       child-specific questions. Personal food insecurity was assessed with
       five additional questions. Obesity was defined, using physical
       measurements, as body mass index (calculated as kg/m2) greater than
       or equal to the age- and sex-specific 95th percentile of the Centers
       for Disease Control and Prevention growth charts. Logistic
       regressions adjusted for sex, race/ethnic group, poverty level, and
       survey year were conducted to describe associations between obesity
       and food insecurity.</p>
  </div>
  <div>
   <head> RESULTS:</head>
   <p>Obesity was significantly associated with personal food insecurity
       for children aged 6 to 11 years (odds ratio=1.81; 95% CI 1.33 to
       2.48), but not in children aged 2 to 5 years (odds ratio=0.88; 95%
       CI 0.51 to 1.51). Child-level food insecurity was not associated
       with obesity among 2- to 5-year-olds or 6- to 11-year-olds.</p>
  </div>
  <div>
   <head> CONCLUSIONS:</head>
   <p>Personal food insecurity is associated with an increased risk of
       obesity only in children aged 6 to 11 years. Personal
       food-insecurity measures may give different results than aggregate
       food-insecurity measures in children.</p>
  </div>
 </div>
</front>
Content model
<content>
 <sequence>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.frontPart"/>
   <classRef key="model.pLike"/>
   <classRef key="model.pLike.front"/>
   <classRef key="model.global"/>
  </alternate>
  <sequence minOccurs="0">
   <alternate>
    <sequence>
     <classRef key="model.div1Like"/>
     <alternate minOccurs="0"
      maxOccurs="unbounded">

      <classRef key="model.div1Like"/>
      <classRef key="model.frontPart"/>
      <classRef key="model.global"/>
     </alternate>
    </sequence>
    <sequence>
     <classRef key="model.divLike"/>
     <alternate minOccurs="0"
      maxOccurs="unbounded">

      <classRef key="model.divLike"/>
      <classRef key="model.frontPart"/>
      <classRef key="model.global"/>
     </alternate>
    </sequence>
   </alternate>
   <sequence minOccurs="0">
    <classRef key="model.divBottom"/>
    <alternate minOccurs="0"
     maxOccurs="unbounded">

     <classRef key="model.divBottom"/>
     <classRef key="model.global"/>
    </alternate>
   </sequence>
  </sequence>
 </sequence>
</content>
Schema Declaration
element front
{
   att.global.attributes,
   att.declaring.attributes,
   (
      ( model.frontPart | model.pLike | model.pLike.front | model.global )*,
      (
         (
            (
               (
                  model.div1Like,
                  ( model.div1Like | model.frontPart | model.global )*
               )
             | (
                  model.divLike,
                  ( model.divLike | model.frontPart | model.global )*
               )
            ),
            ( ( model.divBottom, ( model.divBottom | model.global )* )? )
         )?
      )
   )
}

<funder>

<funder> (funding body) specifies the name of an individual, institution, or organization responsible for the funding of a project or text. [2.2.1. The Title Statement]
Moduleheader
Attributes
Member of
Contained by
May contain
Note

Funders provide financial support for a project; they are distinct from sponsors (see element sponsor), who provide intellectual support and authority.

Example
<funder>The National Endowment for the Humanities, an independent federal agency</funder>
<funder>Directorate General XIII of the Commission of the European Communities</funder>
<funder>The Andrew W. Mellon Foundation</funder>
<funder>The Social Sciences and Humanities Research Council of Canada</funder>
Schematron

<sch:rule context="tei:*[@calendar]">
<sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more
systems or calendars to which the date represented by the content of this element belongs,
but this <sch:name/> element has no textual content.</sch:assert>
</sch:rule>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
Schema Declaration
element funder
{
   att.global.attributes,
   att.canonical.attributes,
   att.datable.attributes,
   macro.phraseSeq.limited
}

<gap>

<gap> (gap) indicates a point where material has been omitted in a transcription, whether for editorial reasons described in the TEI header, as part of sampling practice, or because the material is illegible, invisible, or inaudible. [3.5.3. Additions, Deletions, and Omissions]
Modulecore
Attributes
reason(reason) gives the reason for omission
Status Optional
Datatype 1–∞ occurrences of teidata.enumerated separated by whitespace
Suggested values include:
cancelled
(cancelled)
deleted
(deleted)
editorial
(editorial) for features omitted from transcription due to editorial policy
illegible
(illegible)
inaudible
(inaudible)
irrelevant
(irrelevant)
sampling
(sampling)
agent(agent) in the case of text omitted because of damage, categorizes the cause of the damage, if it can be identified.
Status Optional
Datatype teidata.enumerated
Sample values include:
rubbing
(rubbing) damage results from rubbing of the leaf edges
mildew
(mildew) damage results from mildew on the leaf surface
smoke
(smoke) damage results from smoke
Member of
Contained by
May contain
core: desc
Note

The gap, unclear, and del core tag elements may be closely allied in use with the <damage> and <supplied> elements, available when using the additional tagset for transcription of primary sources. See section 12.3.3.2. Use of the gap, del, damage, unclear, and supplied Elements in Combination for discussion of which element is appropriate for which circumstance.

The gap tag simply signals the editors decision to omit or inability to transcribe a span of text. Other information, such as the interpretation that text was deliberately erased or covered, should be indicated using the relevant tags, such as del in the case of deliberate deletion.

Example
<gap quantity="4unit="chars"
 reason="illegible"/>
Example
<gap quantity="1unit="essay"
 reason="sampling"/>
Example
<del>
 <gap atLeast="4atMost="8unit="chars"
  reason="illegible"/>

</del>
Example
<gap extent="several linesreason="lost"/>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <classRef key="model.descLike"/>
  <classRef key="model.certLike"/>
 </alternate>
</content>
Schema Declaration
element gap
{
   att.global.attributes,
   att.timed.attributes,
   att.editLike.attributes,
   att.dimensions.attributes,
   att.cmc.attributes,
   attribute reason
   {
      list
      {
         (
            "cancelled"
          | "deleted"
          | "editorial"
          | "illegible"
          | "inaudible"
          | "irrelevant"
          | "sampling"
          | teidata.enumerated
         )+
      }
   }?,
   attribute agent { teidata.enumerated }?,
   ( model.descLike | model.certLike )*
}

<gi>

<gi> (element name) contains the name (generic identifier) of an element. [23. Documentation Elements 23.5. Element Specifications]
Moduletagdocs
Attributes
schemesupplies the name of the scheme in which this name is defined.
Status Optional
Datatype teidata.enumerated
Sample values include:
TEI
this element is part of the TEI scheme. [Default]
DBK
(docbook) this element is part of the Docbook scheme.
XX
(unknown) this element is part of an unknown scheme.
Schematron
this element is from Schematron.
HTML
this element is from the HTML scheme.
Member of
Contained by
May contain
XSD Name
Example
<p>The <gi>xhtml:li</gi> element is roughly analogous to the <gi>item</gi> element, as is the
<gi scheme="DBK">listItem</gi> element.</p>

This example shows the use of both a namespace prefix and the scheme attribute as alternative ways of indicating that the gi in question is not a TEI element name: in practice only one method should be adopted.

Content model
<content>
 <dataRef key="teidata.name"/>
</content>
Schema Declaration
element gi
{
   att.global.attributes,
   attribute scheme { teidata.enumerated }?,
   teidata.name
}

<gloss>

<gloss> (gloss) identifies a phrase or word used to provide a gloss or definition for some other word or phrase. [3.4.1. Terms and Glosses 23.4.1. Description of Components]
Modulecore
Attributes
Member of
Contained by
May contain
Note

The target and cRef attributes are mutually exclusive.

Example
We may define <term xml:id="tdpvrend="sc">discoursal point of view</term> as
<gloss target="#tdpv">the relationship, expressed
through discourse structure, between the implied author or some other addresser, and the
fiction.</gloss>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element gloss
{
   att.global.attributes,
   att.declaring.attributes,
   att.translatable.attributes,
   att.typed.attributes,
   att.pointing.attributes,
   att.cReferencing.attributes,
   att.cmc.attributes,
   macro.phraseSeq
}

<graphic>

<graphic> (graphic) indicates the location of a graphic or illustration, either forming part of a text, or providing an image of it. [3.10. Graphics and Other Non-textual Components 12.1. Digital Facsimiles]
Modulecore
Attributes
Member of
Contained by
May contain
core: desc
Note

The mimeType attribute should be used to supply the MIME media type of the image specified by the url attribute.

Within the body of a text, a graphic element indicates the presence of a graphic component in the source itself. Within the context of a <facsimile> or <sourceDoc> element, however, a graphic element provides an additional digital representation of some part of the source being encoded.

Example
<figure>
 <graphic url="fig1.png"/>
 <head>Figure One: The View from the Bridge</head>
 <figDesc>A Whistleresque view showing four or five sailing boats in the foreground, and a
   series of buoys strung out between them.</figDesc>
</figure>
Example
<facsimile>
 <surfaceGrp n="leaf1">
  <surface>
   <graphic url="page1.png"/>
  </surface>
  <surface>
   <graphic url="page2-highRes.png"/>
   <graphic url="page2-lowRes.png"/>
  </surface>
 </surfaceGrp>
</facsimile>
Example
<facsimile>
 <surfaceGrp n="leaf1xml:id="spi001">
  <surface xml:id="spi001r">
   <graphic type="normal"
    subtype="thumbnailurl="spi/thumb/001r.jpg"/>

   <graphic type="normalsubtype="low-res"
    url="spi/normal/lowRes/001r.jpg"/>

   <graphic type="normal"
    subtype="high-resurl="spi/normal/highRes/001r.jpg"/>

   <graphic type="high-contrast"
    subtype="low-resurl="spi/contrast/lowRes/001r.jpg"/>

   <graphic type="high-contrast"
    subtype="high-resurl="spi/contrast/highRes/001r.jpg"/>

  </surface>
  <surface xml:id="spi001v">
   <graphic type="normal"
    subtype="thumbnailurl="spi/thumb/001v.jpg"/>

   <graphic type="normalsubtype="low-res"
    url="spi/normal/lowRes/001v.jpg"/>

   <graphic type="normal"
    subtype="high-resurl="spi/normal/highRes/001v.jpg"/>

   <graphic type="high-contrast"
    subtype="low-resurl="spi/contrast/lowRes/001v.jpg"/>

   <graphic type="high-contrast"
    subtype="high-resurl="spi/contrast/highRes/001v.jpg"/>

   <zone xml:id="spi001v_detail01">
    <graphic type="normal"
     subtype="thumbnailurl="spi/thumb/001v-detail01.jpg"/>

    <graphic type="normal"
     subtype="low-res"
     url="spi/normal/lowRes/001v-detail01.jpg"/>

    <graphic type="normal"
     subtype="high-res"
     url="spi/normal/highRes/001v-detail01.jpg"/>

    <graphic type="high-contrast"
     subtype="low-res"
     url="spi/contrast/lowRes/001v-detail01.jpg"/>

    <graphic type="high-contrast"
     subtype="high-res"
     url="spi/contrast/highRes/001v-detail01.jpg"/>

   </zone>
  </surface>
 </surfaceGrp>
</facsimile>
Content model
<content>
 <classRef key="model.descLike"
  minOccurs="0maxOccurs="unbounded"/>

</content>
Schema Declaration
element graphic
{
   att.global.attributes,
   att.media.attributes,
   att.resourced.attributes,
   att.declaring.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   model.descLike*
}

<group>

<group> (group) contains the body of a composite text, grouping together a sequence of distinct texts (or groups of such texts) which are regarded as a unit for some purpose, for example the collected works of an author, a sequence of prose essays, etc. [4. Default Text Structure 4.3.1. Grouped Texts 16.1. Varieties of Composite Text]
Moduletextstructure
Attributes
Contained by
textstructure: group text
May contain
Example
<text>
<!-- Section on Alexander Pope starts -->
 <front>
<!-- biographical notice by editor -->
 </front>
 <group>
  <text>
<!-- first poem -->
  </text>
  <text>
<!-- second poem -->
  </text>
 </group>
</text>
<!-- end of Pope section-->
Content model
<content>
 <sequence>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.divTop"/>
   <classRef key="model.global"/>
  </alternate>
  <sequence>
   <alternate>
    <elementRef key="text"/>
    <elementRef key="group"/>
   </alternate>
   <alternate minOccurs="0"
    maxOccurs="unbounded">

    <elementRef key="text"/>
    <elementRef key="group"/>
    <classRef key="model.global"/>
   </alternate>
  </sequence>
  <classRef key="model.divBottom"
   minOccurs="0maxOccurs="unbounded"/>

 </sequence>
</content>
Schema Declaration
element group
{
   att.global.attributes,
   att.declaring.attributes,
   att.typed.attributes,
   (
      ( model.divTop | model.global )*,
      ( ( text | group ), ( text | group | model.global )* ),
      model.divBottom*
   )
}
<head> (heading) contains any type of heading, for example the title of a section, or the heading of a list, glossary, manuscript description, etc. [4.2.1. Headings and Trailers]
Modulecore
Attributes
Member of
Contained by
May contain
Note

The head element is used for headings at all levels; software which treats (e.g.) chapter headings, section headings, and list titles differently must determine the proper processing of a head element based on its structural position. A head occurring as the first element of a list is the title of that list; one occurring as the first element of a <div1> is the title of that chapter or section.

Example

The most common use for the head element is to mark the headings of sections. In older writings, the headings or incipits may be rather longer than usual in modern works. If a section has an explicit ending as well as a heading, it should be marked as a trailer, as in this example:

<div1 n="Itype="book">
 <head>In the name of Christ here begins the first book of the ecclesiastical history of
   Georgius Florentinus, known as Gregory, Bishop of Tours.</head>
 <div2 type="section">
  <head>In the name of Christ here begins Book I of the history.</head>
  <p>Proposing as I do ...</p>
  <p>From the Passion of our Lord until the death of Saint Martin four hundred and twelve
     years passed.</p>
  <trailer>Here ends the first Book, which covers five thousand, five hundred and ninety-six
     years from the beginning of the world down to the death of Saint Martin.</trailer>
 </div2>
</div1>
Example

When headings are not inline with the running text (see e.g. the heading "Secunda conclusio") they might however be encoded as if. The actual placement in the source document can be captured with the place attribute.

<div type="subsection">
 <head place="margin">Secunda conclusio</head>
 <p>
  <lb n="1251"/>
  <hi rend="large">Potencia: habitus: et actus: recipiunt speciem ab obiectis<supplied>.</supplied>
  </hi>
  <lb n="1252"/>Probatur sic. Omne importans necessariam habitudinem ad proprium
   [...]
 </p>
</div>
Example

The head element is also used to mark headings of other units, such as lists:

With a few exceptions, connectives are equally
useful in all kinds of discourse: description, narration, exposition, argument. <list rend="bulleted">
 <head>Connectives</head>
 <item>above</item>
 <item>accordingly</item>
 <item>across from</item>
 <item>adjacent to</item>
 <item>again</item>
 <item>
<!-- ... -->
 </item>
</list>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <elementRef key="lg"/>
  <classRef key="model.gLike"/>
  <classRef key="model.phrase"/>
  <classRef key="model.inter"/>
  <classRef key="model.lLike"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Schema Declaration
element head
{
   att.global.attributes,
   att.typed.attributes,
   att.placement.attributes,
   att.written.attributes,
   att.cmc.attributes,
   (
      text
    | lgmodel.gLikemodel.phrasemodel.intermodel.lLikemodel.global
   )*
}

<hi>

<hi> (highlighted) marks a word or phrase as graphically distinct from the surrounding text, for reasons concerning which no claim is made. [3.3.2.2. Emphatic Words and Phrases 3.3.2. Emphasis, Foreign Words, and Unusual Language]
Modulecore
Attributes
Member of
Contained by
May contain
Example
<hi rend="gothic">And this Indenture further witnesseth</hi>
that the said <hi rend="italic">Walter Shandy</hi>, merchant,
in consideration of the said intended marriage ...
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element hi
{
   att.global.attributes,
   att.written.attributes,
   att.cmc.attributes,
   macro.paraContent
}

<ident>

<ident> (identifier) contains an identifier or name for an object of some kind in a formal language. ident is used for tokens such as variable names, class names, type names, function names etc. in formal programming languages. [23.1.1. Phrase Level Terms]
Moduletagdocs
Attributes
Member of
Contained by
May containCharacter data only
Note

In running prose, this element may be used for any kind of identifier in any formal language. It should not be used for element and attribute names in XML, for which the special elements gi and att are provided.

Example
<ident type="ns">http://www.tei-c.org/ns/Examples</ident>
Content model
<content>
 <textNode/>
</content>
Schema Declaration
element ident { att.global.attributes, att.typed.attributes, text }

<idno>

<idno> (identifier) supplies any form of identifier used to identify some object, such as a bibliographic item, a person, a title, an organization, etc. in a standardized way. [14.3.1. Basic Principles 2.2.4. Publication, Distribution, Licensing, etc. 2.2.5. The Series Statement 3.12.2.4. Imprint, Size of a Document, and Reprint Information]
Moduleheader
Attributes
typecategorizes the identifier, for example as an ISBN, Social Security number, etc.
Derived fromatt.typed
Status Optional
Datatype teidata.enumerated
Suggested values include:
ISBN
International Standard Book Number: a 13- or (if assigned prior to 2007) 10-digit identifying number assigned by the publishing industry to a published book or similar item, registered with the International ISBN Agency.
ISSN
International Standard Serial Number: an eight-digit number to uniquely identify a serial publication.
DOI
Digital Object Identifier: a unique string of letters and numbers assigned to an electronic document.
URI
Uniform Resource Identifier: a string of characters to uniquely identify a resource, following the syntax of RFC 3986.
VIAF
A data number in the Virtual Internet Authority File assigned to link different names in catalogs around the world for the same entity.
ESTC
English Short-Title Catalogue number: an identifying number assigned to a document in English printed in the British Isles or North America before 1801.
OCLC
OCLC control number (record number) for the union catalog record in WorldCat, a union catalog for member libraries in the Online Computer Library Center global cooperative.
Member of
Contained by
May contain
header: idno
character data
Note

idno should be used for labels which identify an object or concept in a formal cataloguing system such as a database or an RDF store, or in a distributed system such as the World Wide Web. Some suggested values for type on idno are ISBN, ISSN, DOI, and URI.

Example
<idno type="ISBN">978-1-906964-22-1</idno>
<idno type="ISSN">0143-3385</idno>
<idno type="DOI">10.1000/123</idno>
<idno type="URI">http://www.worldcat.org/oclc/185922478</idno>
<idno type="URI">http://authority.nzetc.org/463/</idno>
<idno type="LT">Thomason Tract E.537(17)</idno>
<idno type="Wing">C695</idno>
<idno type="oldCat">
 <g ref="#sym"/>345
</idno>

In the last case, the identifier includes a non-Unicode character which is defined elsewhere by means of a <glyph> or <char> element referenced here as #sym.

Schematron

<sch:rule context="tei:*[@calendar]">
<sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more
systems or calendars to which the date represented by the content of this element belongs,
but this <sch:name/> element has no textual content.</sch:assert>
</sch:rule>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <elementRef key="idno"/>
 </alternate>
</content>
Schema Declaration
element idno
{
   att.global.attributes,
   att.sortable.attributes,
   att.datable.attributes,
   att.typed.attribute.subtype,
   att.cmc.attributes,
   attribute type
   {
      "ISBN"
    | "ISSN"
    | "DOI"
    | "URI"
    | "VIAF"
    | "ESTC"
    | "OCLC"
    | teidata.enumerated
   }?,
   ( text | model.gLike | idno )*
}

<imprimatur>

<imprimatur> (imprimatur) contains a formal statement authorizing the publication of a work, sometimes required to appear on a title page or its verso. [4.6. Title Pages]
Moduletextstructure
Attributes
Member of
Contained by
textstructure: titlePage
May contain
Example
<imprimatur>Licensed and entred acording to Order.</imprimatur>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element imprimatur { att.global.attributes, macro.paraContent }

<index>

<index> (index entry) marks a location to be indexed for whatever purpose. [3.9.2. Index Entries]
Modulecore
Attributes
indexNamea single word which follows the rules defining a legal XML name (see https://www.w3.org/TR/REC-xml/#dt-name), supplying a name to specify which index (of several) the index entry belongs to.
Status Optional
Datatype teidata.name
Note

This attribute makes it possible to create multiple indexes for a text.

Member of
Contained by
May contain
core: index term
Example
David's other principal backer, Josiah ha-Kohen
<index indexName="NAMES">
 <term>Josiah ha-Kohen b. Azarya</term>
</index> b. Azarya, son of one of the last gaons of Sura <index indexName="PLACES">
 <term>Sura</term>
</index> was David's own first cousin.
Content model
<content>
 <sequence minOccurs="0"
  maxOccurs="unbounded">

  <elementRef key="term"/>
  <elementRef key="indexminOccurs="0"/>
 </sequence>
</content>
Schema Declaration
element index
{
   att.global.attributes,
   att.spanning.attributes,
   att.cmc.attributes,
   attribute indexName { teidata.name }?,
   ( ( term, index? )* )
}

<interp>

<interp> (interpretation) summarizes a specific interpretative annotation which can be linked to a span of text. [18.3. Spans and Interpretations]
Moduleanalysis
Attributes
Member of
Contained by
May contain
core: desc
character data
Note

Generally, each interp element carries an xml:id attribute. This permits the encoder to explicitly associate the interpretation represented by the content of an interp with any textual element through its ana attribute.

Alternatively (or, in addition) an interp may carry an inst attribute that points to one or more textual elements to which the analysis represented by the content of the interp applies.

Example
<interp type="structuralunit"
 xml:id="ana_am">
aftermath</interp>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.descLike"/>
  <classRef key="model.certLike"/>
 </alternate>
</content>
Schema Declaration
element interp
{
   att.global.attributes,
   att.interpLike.attributes,
   att.cmc.attributes,
   ( text | model.gLike | model.descLike | model.certLike )*
}

<interpGrp>

<interpGrp> (interpretation group) collects together a set of related interpretations which share responsibility or type. [18.3. Spans and Interpretations]
Moduleanalysis
Attributes
Member of
Contained by
May contain
analysis: interp
core: desc
Note

Any number of interp elements.

Example
<interpGrp resp="#TMA"
 type="structuralunit">

 <desc>basic structural organization</desc>
 <interp xml:id="I1">introduction</interp>
 <interp xml:id="I2">conflict</interp>
 <interp xml:id="I3">climax</interp>
 <interp xml:id="I4">revenge</interp>
 <interp xml:id="I5">reconciliation</interp>
 <interp xml:id="I6">aftermath</interp>
</interpGrp>
<bibl xml:id="TMA">
<!-- bibliographic citation for source of this interpretive framework -->
</bibl>
Content model
<content>
 <sequence>
  <classRef key="model.descLike"
   minOccurs="0maxOccurs="unbounded"/>

  <elementRef key="interpminOccurs="1"
   maxOccurs="unbounded"/>

 </sequence>
</content>
Schema Declaration
element interpGrp
{
   att.global.attributes,
   att.interpLike.attributes,
   att.cmc.attributes,
   ( model.descLike*, interp+ )
}

<item>

<item> (item) contains one component of a list. [3.8. Lists 2.6. The Revision Description]
Modulecore
Attributes
Contained by
core: list
May contain
Note

May contain simple prose or a sequence of chunks.

Whatever string of characters is used to label a list item in the copy text may be used as the value of the global n attribute, but it is not required that numbering be recorded explicitly. In ordered lists, the n attribute on the item element is by definition synonymous with the use of the label element to record the enumerator of the list item. In glossary lists, however, the term being defined should be given with the label element, not n.

Example
<list rend="numbered">
 <head>Here begin the chapter headings of Book IV</head>
 <item n="4.1">The death of Queen Clotild.</item>
 <item n="4.2">How King Lothar wanted to appropriate one third of the Church revenues.</item>
 <item n="4.3">The wives and children of Lothar.</item>
 <item n="4.4">The Counts of the Bretons.</item>
 <item n="4.5">Saint Gall the Bishop.</item>
 <item n="4.6">The priest Cato.</item>
 <item> ...</item>
</list>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
Schema Declaration
element item
{
   att.global.attributes,
   att.sortable.attributes,
   macro.specialPara
}

<keywords>

<keywords> (keywords) contains a list of keywords or phrases identifying the topic or nature of a text. [2.4.3. The Text Classification]
Moduleheader
Attributes
schemeidentifies the controlled vocabulary within which the set of keywords concerned is defined, for example by a taxonomy element, or by some other resource.
Status Optional
Datatype teidata.pointer
Contained by
header: textClass
May contain
core: list term
Note

Each individual keyword (including compound subject headings) should be supplied as a term element directly within the keywords element. An alternative usage, in which each term appears within an item inside a list is permitted for backwards compatibility, but is deprecated.

If no control list exists for the keywords used, then no value should be supplied for the scheme attribute.

Example
<keywords scheme="http://classificationweb.net">
 <term>Babbage, Charles</term>
 <term>Mathematicians - Great Britain - Biography</term>
</keywords>
Example
<keywords>
 <term>Fermented beverages</term>
 <term>Central Andes</term>
 <term>Schinus molle</term>
 <term>Molle beer</term>
 <term>Indigenous peoples</term>
 <term>Ethnography</term>
 <term>Archaeology</term>
</keywords>
Content model
<content>
 <alternate>
  <elementRef key="termminOccurs="1"
   maxOccurs="unbounded"/>

  <elementRef key="list"/>
 </alternate>
</content>
Schema Declaration
element keywords
{
   att.global.attributes,
   attribute scheme { teidata.pointer }?,
   ( term+ | list )
}

<l>

<l> (verse line) contains a single, possibly incomplete, line of verse. [3.13.1. Core Tags for Verse 3.13. Passages of Verse or Drama 7.2.5. Speech Contents]
Modulecore
Attributes
Member of
Contained by
May contain
Example
<l met="x/x/x/x/x/real="/xx/x/x/x/">Shall I compare thee to a summer's day?</l>
Schematron

<sch:rule context="tei:l">
<sch:report test="ancestor::tei:l[not(.//tei:note//tei:l[. = current()])]">Abstract model violation: Lines may not contain lines or lg elements.</sch:report>
</sch:rule>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.phrase"/>
  <classRef key="model.inter"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Schema Declaration
element l
{
   att.global.attributes,
   att.fragmentable.attributes,
   att.cmc.attributes,
   ( text | model.gLike | model.phrase | model.inter | model.global )*
}

<label>

<label> (label) contains any label or heading used to identify part of a text, typically but not exclusively in a list or glossary. [3.8. Lists]
Modulecore
Attributes
Member of
Contained by
May contain
Example

Labels are commonly used for the headwords in glossary lists; note the use of the global xml:lang attribute to set the default language of the glossary list to Middle English, and identify the glosses and headings as modern English or Latin:

<list type="glossxml:lang="enm">
 <head xml:lang="en">Vocabulary</head>
 <headLabel xml:lang="en">Middle English</headLabel>
 <headItem xml:lang="en">New English</headItem>
 <label>nu</label>
 <item xml:lang="en">now</item>
 <label>lhude</label>
 <item xml:lang="en">loudly</item>
 <label>bloweth</label>
 <item xml:lang="en">blooms</item>
 <label>med</label>
 <item xml:lang="en">meadow</item>
 <label>wude</label>
 <item xml:lang="en">wood</item>
 <label>awe</label>
 <item xml:lang="en">ewe</item>
 <label>lhouth</label>
 <item xml:lang="en">lows</item>
 <label>sterteth</label>
 <item xml:lang="en">bounds, frisks (cf. <cit>
   <ref>Chaucer, K.T.644</ref>
   <quote>a courser, <term>sterting</term>as the fyr</quote>
  </cit>
 </item>
 <label>verteth</label>
 <item xml:lang="la">pedit</item>
 <label>murie</label>
 <item xml:lang="en">merrily</item>
 <label>swik</label>
 <item xml:lang="en">cease</item>
 <label>naver</label>
 <item xml:lang="en">never</item>
</list>
Example

Labels may also be used to record explicitly the numbers or letters which mark list items in ordered lists, as in this extract from Gibbon's Autobiography. In this usage the label element is synonymous with the n attribute on the item element:

I will add two facts, which have seldom occurred
in the composition of six, or at least of five quartos. <list rend="runontype="ordered">
 <label>(1)</label>
 <item>My first rough manuscript, without any intermediate copy, has been sent to the press.</item>
 <label>(2) </label>
 <item>Not a sheet has been seen by any human eyes, excepting those of the author and the
   printer: the faults and the merits are exclusively my own.</item>
</list>
Example

Labels may also be used for other structured list items, as in this extract from the journal of Edward Gibbon:

<list type="gloss">
 <label>March 1757.</label>
 <item>I wrote some critical observations upon Plautus.</item>
 <label>March 8th.</label>
 <item>I wrote a long dissertation upon some lines of Virgil.</item>
 <label>June.</label>
 <item>I saw Mademoiselle Curchod — <quote xml:lang="la">Omnia vincit amor, et nos cedamus
     amori.</quote>
 </item>
 <label>August.</label>
 <item>I went to Crassy, and staid two days.</item>
</list>

Note that the label might also appear within the item rather than as its sibling. Though syntactically valid, this usage is not recommended TEI practice.

Example

Labels may also be used to represent a label or heading attached to a paragraph or sequence of paragraphs not treated as a structural division, or to a group of verse lines. Note that, in this case, the label element appears within the p or lg element, rather than as a preceding sibling of it.

<p>[...]
<lb/>&amp; n’entrer en mauuais &amp; mal-heu-
<lb/>ré meſnage. Or des que le conſente-
<lb/>ment des parties y eſt le mariage eſt
<lb/> arreſté, quoy que de faict il ne ſoit
<label place="margin">Puiſſance maritale
   entre les Romains.</label>
 <lb/> conſommé. Depuis la conſomma-
<lb/>tion du mariage la femme eſt ſoubs
<lb/> la puiſſance du mary, s’il n’eſt eſcla-
<lb/>ue ou enfant de famille : car en ce
<lb/> cas, la femme, qui a eſpouſé vn en-
<lb/>fant de famille, eſt ſous la puiſſance
[...]</p>

In this example the text of the label appears in the right hand margin of the original source, next to the paragraph it describes, but approximately in the middle of it.

If so desired the type attribute may be used to distinguish different categories of label.

Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element label
{
   att.global.attributes,
   att.typed.attributes,
   att.placement.attributes,
   att.written.attributes,
   att.cmc.attributes,
   macro.phraseSeq
}

<language>

<language> (language) characterizes a single language or sublanguage used within a text. [2.4.2. Language Usage]
Moduleheader
Attributes
ident(identifier) Supplies a language code constructed as defined in BCP 47 which is used to identify the language documented by this element, and which may be referenced by the global xml:lang attribute.
Status Required
Datatype teidata.language
usagespecifies the approximate percentage of the text which uses this language.
Status Optional
Datatype nonNegativeInteger
Contained by
header: langUsage
May contain
Note

Particularly for sublanguages, an informal prose characterization should be supplied as content for the element.

Example
<langUsage>
 <language ident="en-USusage="75">modern American English</language>
 <language ident="az-Arabusage="20">Azerbaijani in Arabic script</language>
 <language ident="x-lapusage="05">Pig Latin</language>
</langUsage>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
Schema Declaration
element language
{
   att.global.attributes,
   attribute ident { teidata.language },
   attribute usage { xsd:nonNegativeInteger }?,
   macro.phraseSeq.limited
}

<langUsage>

<langUsage> (language usage) describes the languages, sublanguages, registers, dialects, etc. represented within a text. [2.4.2. Language Usage 2.4. The Profile Description 16.3.2. Declarable Elements]
Moduleheader
Attributes
Member of
Contained by
header: profileDesc
May contain
core: p
header: language
Example
<langUsage>
 <language ident="fr-CAusage="60">Québecois</language>
 <language ident="en-CAusage="20">Canadian business English</language>
 <language ident="en-GBusage="20">British English</language>
</langUsage>
Content model
<content>
 <alternate>
  <classRef key="model.pLikeminOccurs="1"
   maxOccurs="unbounded"/>

  <elementRef key="languageminOccurs="1"
   maxOccurs="unbounded"/>

 </alternate>
</content>
Schema Declaration
element langUsage
{
   att.global.attributes,
   att.declarable.attributes,
   ( model.pLike+ | language+ )
}

<lb>

<lb> (line beginning) marks the beginning of a new (typographic) line in some edition or version of a text. [3.11.3. Milestone Elements 7.2.5. Speech Contents]
Modulecore
Attributes
Member of
Contained by
May containEmpty element
Note

By convention, lb elements should appear at the point in the text where a new line starts. The n attribute, if used, indicates the number or other value associated with the text between this point and the next lb element, typically the sequence number of the line within the page, or other appropriate unit. This element is intended to be used for marking actual line breaks on a manuscript or printed page, at the point where they occur; it should not be used to tag structural units such as lines of verse (for which the l element is available) except in circumstances where structural units cannot otherwise be marked.

The type attribute may be used to characterize the line break in any respect. The more specialized attributes break, ed, or edRef should be preferred when the intent is to indicate whether or not the line break is word-breaking, or to note the source from which it derives.

Example

This example shows typographical line breaks within metrical lines, where they occur at different places in different editions:

<l>Of Mans First Disobedience,<lb ed="1674"/> and<lb ed="1667"/> the Fruit</l>
<l>Of that Forbidden Tree, whose<lb ed="1667 1674"/> mortal tast</l>
<l>Brought Death into the World,<lb ed="1667"/> and all<lb ed="1674"/> our woe,</l>
Example

This example encodes typographical line breaks as a means of preserving the visual appearance of a title page. The break attribute is used to show that the line break does not (as elsewhere) mark the start of a new word.

<titlePart>
 <lb/>With Additions, ne-<lb break="no"/>ver before Printed.
</titlePart>
Content model
<content>
 <empty/>
</content>
Schema Declaration
element lb
{
   att.global.attributes,
   att.typed.attributes,
   att.edition.attributes,
   att.spanning.attributes,
   att.breaking.attributes,
   att.cmc.attributes,
   empty
}

<lg>

<lg> (line group) contains one or more verse lines functioning as a formal unit, e.g. a stanza, refrain, verse paragraph, etc. [3.13.1. Core Tags for Verse 3.13. Passages of Verse or Drama 7.2.5. Speech Contents]
Modulecore
Attributes
Member of
Contained by
May contain
Note

contains verse lines or nested line groups only, possibly prefixed by a heading.

Example
<lg type="free">
 <l>Let me be my own fool</l>
 <l>of my own making, the sum of it</l>
</lg>
<lg type="free">
 <l>is equivocal.</l>
 <l>One says of the drunken farmer:</l>
</lg>
<lg type="free">
 <l>leave him lay off it. And this is</l>
 <l>the explanation.</l>
</lg>
Schematron

<sch:rule context="tei:lg">
<sch:assert test="count(descendant::tei:lg|descendant::tei:l|descendant::tei:gap) > 0">An lg element must contain at least one child l, lg, or gap element.</sch:assert>
</sch:rule>
Schematron

<sch:rule context="tei:lg">
<sch:report test="ancestor::tei:l[not(.//tei:note//tei:lg[. = current()])]">Abstract model violation: Lines may not contain line groups.</sch:report>
</sch:rule>
Content model
<content>
 <sequence>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.divTop"/>
   <classRef key="model.global"/>
  </alternate>
  <alternate>
   <classRef key="model.lLike"/>
   <classRef key="model.stageLike"/>
   <classRef key="model.labelLike"/>
   <classRef key="model.pPart.transcriptional"/>
   <elementRef key="lg"/>
  </alternate>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.lLike"/>
   <classRef key="model.stageLike"/>
   <classRef key="model.labelLike"/>
   <classRef key="model.pPart.transcriptional"/>
   <classRef key="model.global"/>
   <elementRef key="lg"/>
  </alternate>
  <sequence minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.divBottom"/>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
 </sequence>
</content>
Schema Declaration
element lg
{
   att.global.attributes,
   att.divLike.attributes,
   att.typed.attributes,
   att.declaring.attributes,
   att.cmc.attributes,
   (
      ( model.divTop | model.global )*,
      (
         model.lLikemodel.stageLikemodel.labelLikemodel.pPart.transcriptionallg
      ),
      (
         model.lLikemodel.stageLikemodel.labelLikemodel.pPart.transcriptionalmodel.globallg
      )*,
      ( ( model.divBottom, model.global* )* )
   )
}

<licence>

<licence> contains information about a licence or other legal agreement applicable to the text. [2.2.4. Publication, Distribution, Licensing, etc.]
Moduleheader
Attributes
Member of
Contained by
header: availability
May contain
Note

A licence element should be supplied for each licence agreement applicable to the text in question. The target attribute may be used to reference a full version of the licence. The when, notBefore, notAfter, from or to attributes may be used in combination to indicate the date or dates of applicability of the licence.

Example
<licence target="http://www.nzetc.org/tm/scholarly/tei-NZETC-Help.html#licensing"> Licence: Creative Commons Attribution-Share Alike 3.0 New Zealand Licence
</licence>
Example
<availability>
 <licence target="http://creativecommons.org/licenses/by/3.0/"
  notBefore="2013-01-01">

  <p>The Creative Commons Attribution 3.0 Unported (CC BY 3.0) Licence
     applies to this document.</p>
  <p>The licence was added on January 1, 2013.</p>
 </licence>
</availability>
Schematron

<sch:rule context="tei:*[@calendar]">
<sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more
systems or calendars to which the date represented by the content of this element belongs,
but this <sch:name/> element has no textual content.</sch:assert>
</sch:rule>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
Schema Declaration
element licence
{
   att.global.attributes,
   att.pointing.attributes,
   att.datable.attributes,
   macro.specialPara
}

<list>

<list> (list) contains any sequence of items organized as a list. [3.8. Lists]
Modulecore
Attributes
type(type) describes the nature of the items in the list.
Derived fromatt.typed
Status Optional
Datatype teidata.enumerated
Suggested values include:
gloss
(gloss) each list item glosses some term or concept, which is given by a label element preceding the list item.
index
(index) each list item is an entry in an index such as the alphabetical topical index at the back of a print volume.
instructions
(instructions) each list item is a step in a sequence of instructions, as in a recipe.
litany
(litany) each list item is one of a sequence of petitions, supplications or invocations, typically in a religious ritual.
syllogism
(syllogism) each list item is part of an argument consisting of two or more propositions and a final conclusion derived from them.
Note

Previous versions of these Guidelines recommended the use of type on list to encode the rendering or appearance of a list (whether it was bulleted, numbered, etc.). The current recommendation is to use the rend or style attributes for these aspects of a list, while using type for the more appropriate task of characterizing the nature of the content of a list.

The formal syntax of the element declarations allows label tags to be omitted from lists tagged <list type="gloss">; this is however a semantic error.

Member of
Contained by
May contain
Note

May contain an optional heading followed by a series of items, or a series of label and item pairs, the latter being optionally preceded by one or two specialized headings.

Example
<list rend="numbered">
 <item>a butcher</item>
 <item>a baker</item>
 <item>a candlestick maker, with
 <list rend="bulleted">
   <item>rings on his fingers</item>
   <item>bells on his toes</item>
  </list>
 </item>
</list>
Example
<list type="syllogismrend="bulleted">
 <item>All Cretans are liars.</item>
 <item>Epimenides is a Cretan.</item>
 <item>ERGO Epimenides is a liar.</item>
</list>
Example
<list type="litanyrend="simple">
 <item>God save us from drought.</item>
 <item>God save us from pestilence.</item>
 <item>God save us from wickedness in high places.</item>
 <item>Praise be to God.</item>
</list>
Example

The following example treats the short numbered clauses of Anglo-Saxon legal codes as lists of items. The text is from an ordinance of King Athelstan (924–939):

<div1 type="section">
 <head>Athelstan's Ordinance</head>
 <list rend="numbered">
  <item n="1">Concerning thieves. First, that no thief is to be spared who is caught with
     the stolen goods, [if he is] over twelve years and [if the value of the goods is] over
     eightpence.
  <list rend="numbered">
    <item n="1.1">And if anyone does spare one, he is to pay for the thief with his
         wergild — and the thief is to be no nearer a settlement on that account — or to
         clear himself by an oath of that amount.</item>
    <item n="1.2">If, however, he [the thief] wishes to defend himself or to escape, he is
         not to be spared [whether younger or older than twelve].</item>
    <item n="1.3">If a thief is put into prison, he is to be in prison 40 days, and he may
         then be redeemed with 120 shillings; and the kindred are to stand surety for him
         that he will desist for ever.</item>
    <item n="1.4">And if he steals after that, they are to pay for him with his wergild,
         or to bring him back there.</item>
    <item n="1.5">And if he steals after that, they are to pay for him with his wergild,
         whether to the king or to him to whom it rightly belongs; and everyone of those who
         supported him is to pay 120 shillings to the king as a fine.</item>
   </list>
  </item>
  <item n="2">Concerning lordless men. And we pronounced about these lordless men, from whom
     no justice can be obtained, that one should order their kindred to fetch back such a
     person to justice and to find him a lord in public meeting.
  <list rend="numbered">
    <item n="2.1">And if they then will not, or cannot, produce him on that appointed day,
         he is then to be a fugitive afterwards, and he who encounters him is to strike him
         down as a thief.</item>
    <item n="2.2">And he who harbours him after that, is to pay for him with his wergild
         or to clear himself by an oath of that amount.</item>
   </list>
  </item>
  <item n="3">Concerning the refusal of justice. The lord who refuses justice and upholds
     his guilty man, so that the king is appealed to, is to repay the value of the goods and
     120 shillings to the king; and he who appeals to the king before he demands justice as
     often as he ought, is to pay the same fine as the other would have done, if he had
     refused him justice.
  <list rend="numbered">
    <item n="3.1">And the lord who is an accessory to a theft by his slave, and it becomes
         known about him, is to forfeit the slave and be liable to his wergild on the first
         occasionp if he does it more often, he is to be liable to pay all that he owns.</item>
    <item n="3.2">And likewise any of the king's treasurers or of our reeves, who has been
         an accessory of thieves who have committed theft, is to liable to the same.</item>
   </list>
  </item>
  <item n="4">Concerning treachery to a lord. And we have pronounced concerning treachery to
     a lord, that he [who is accused] is to forfeit his life if he cannot deny it or is
     afterwards convicted at the three-fold ordeal.</item>
 </list>
</div1>

Note that nested lists have been used so the tagging mirrors the structure indicated by the two-level numbering of the clauses. The clauses could have been treated as a one-level list with irregular numbering, if desired.

Example
<p>These decrees, most blessed Pope Hadrian, we propounded in the public council ... and they
confirmed them in our hand in your stead with the sign of the Holy Cross, and afterwards
inscribed with a careful pen on the paper of this page, affixing thus the sign of the Holy
Cross.
<list rend="simple">
  <item>I, Eanbald, by the grace of God archbishop of the holy church of York, have
     subscribed to the pious and catholic validity of this document with the sign of the Holy
     Cross.</item>
  <item>I, Ælfwold, king of the people across the Humber, consenting have subscribed with
     the sign of the Holy Cross.</item>
  <item>I, Tilberht, prelate of the church of Hexham, rejoicing have subscribed with the
     sign of the Holy Cross.</item>
  <item>I, Higbald, bishop of the church of Lindisfarne, obeying have subscribed with the
     sign of the Holy Cross.</item>
  <item>I, Ethelbert, bishop of Candida Casa, suppliant, have subscribed with thef sign of
     the Holy Cross.</item>
  <item>I, Ealdwulf, bishop of the church of Mayo, have subscribed with devout will.</item>
  <item>I, Æthelwine, bishop, have subscribed through delegates.</item>
  <item>I, Sicga, patrician, have subscribed with serene mind with the sign of the Holy
     Cross.</item>
 </list>
</p>
Schematron

<sch:rule context="tei:list[@type='gloss']">
<sch:assert test="tei:label">The content of a "gloss" list should include a sequence of one or more pairs of a label element followed by an item element</sch:assert>
</sch:rule>
Content model
<content>
 <sequence>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.divTop"/>
   <classRef key="model.global"/>
   <elementRef key="descminOccurs="0"
    maxOccurs="unbounded"/>

  </alternate>
  <alternate>
   <sequence minOccurs="1"
    maxOccurs="unbounded">

    <elementRef key="item"/>
    <classRef key="model.global"
     minOccurs="0maxOccurs="unbounded"/>

   </sequence>
   <sequence>
    <elementRef key="headLabel"
     minOccurs="0"/>

    <elementRef key="headItem"
     minOccurs="0"/>

    <sequence minOccurs="1"
     maxOccurs="unbounded">

     <elementRef key="label"/>
     <classRef key="model.global"
      minOccurs="0maxOccurs="unbounded"/>

     <elementRef key="item"/>
     <classRef key="model.global"
      minOccurs="0maxOccurs="unbounded"/>

    </sequence>
   </sequence>
  </alternate>
  <sequence minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.divBottom"/>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
 </sequence>
</content>
Schema Declaration
element list
{
   att.global.attributes,
   att.sortable.attributes,
   att.typed.attribute.subtype,
   att.cmc.attributes,
   attribute type
   {
      "gloss"
    | "index"
    | "instructions"
    | "litany"
    | "syllogism"
    | teidata.enumerated
   }?,
   (
      ( model.divTop | model.global | desc* )*,
      (
         ( ( item, model.global* )+ )
       | (
            headLabel?,
            headItem?,
            ( ( label, model.global*, item, model.global* )+ )
         )
      ),
      ( ( model.divBottom, model.global* )* )
   )
}

<listBibl>

<listBibl> (citation list) contains a list of bibliographic citations of any kind. [3.12.1. Methods of Encoding Bibliographic References and Lists of References 2.2.7. The Source Description 16.3.2. Declarable Elements]
Modulecore
Attributes
Member of
Contained by
May contain
Example
<listBibl>
 <head>Works consulted</head>
 <bibl>Blain, Clements and Grundy: Feminist Companion to
   Literature in English (Yale, 1990)
 </bibl>
 <biblStruct>
  <analytic>
   <title>The Interesting story of the Children in the Wood</title>
  </analytic>
  <monogr>
   <title>The Penny Histories</title>
   <author>Victor E Neuberg</author>
   <imprint>
    <publisher>OUP</publisher>
    <date>1968</date>
   </imprint>
  </monogr>
 </biblStruct>
</listBibl>
Content model
<content>
 <sequence>
  <classRef key="model.headLike"
   minOccurs="0maxOccurs="unbounded"/>

  <elementRef key="descminOccurs="0"
   maxOccurs="unbounded"/>

  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.milestoneLike"
    minOccurs="1maxOccurs="1"/>

   <elementRef key="relationminOccurs="1"
    maxOccurs="1"/>

   <elementRef key="listRelation"
    minOccurs="1maxOccurs="1"/>

  </alternate>
  <sequence minOccurs="1"
   maxOccurs="unbounded">

   <classRef key="model.biblLike"
    minOccurs="1maxOccurs="unbounded"/>

   <alternate minOccurs="0"
    maxOccurs="unbounded">

    <classRef key="model.milestoneLike"
     minOccurs="1maxOccurs="1"/>

    <elementRef key="relation"
     minOccurs="1maxOccurs="1"/>

    <elementRef key="listRelation"
     minOccurs="1maxOccurs="1"/>

   </alternate>
  </sequence>
 </sequence>
</content>
Schema Declaration
element listBibl
{
   att.global.attributes,
   att.sortable.attributes,
   att.declarable.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   (
      model.headLike*,
      desc*,
      ( model.milestoneLike | relation | listRelation )*,
      (
         (
            model.biblLike+,
            ( model.milestoneLike | relation | listRelation )*
         )+
      )
   )
}

<mentioned>

<mentioned> marks words or phrases mentioned, not used. [3.3.3. Quotation]
Modulecore
Attributes
Member of
Contained by
May contain
Example
There is thus a
striking accentual difference between a verbal form like <mentioned xml:id="X234xml:lang="el">eluthemen</mentioned>
<gloss target="#X234">we were released,</gloss> accented on the second syllable of the
word, and its participial derivative
<mentioned xml:id="X235xml:lang="el">lutheis</mentioned>
<gloss target="#X235">released,</gloss> accented on the last.
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element mentioned
{
   att.global.attributes,
   att.cmc.attributes,
   macro.phraseSeq
}

<milestone>

<milestone> (milestone) marks a boundary point separating any kind of section of a text, typically but not necessarily indicating a point at which some part of a standard reference system changes, where the change is not represented by a structural element. [3.11.3. Milestone Elements]
Modulecore
Attributes
Member of
Contained by
May containEmpty element
Note

For this element, the global n attribute indicates the new number or other value for the unit which changes at this milestone. The special value unnumbered should be used in passages which fall outside the normal numbering scheme, such as chapter or other headings, poem numbers or titles, etc.

The order in which milestone elements are given at a given point is not normally significant.

Example
<milestone n="23ed="Launit="Dreissiger"/>
... <milestone n="24ed="AVunit="verse"/> ...
Content model
<content>
 <empty/>
</content>
Schema Declaration
element milestone
{
   att.global.attributes,
   att.milestoneUnit.attributes,
   att.typed.attributes,
   att.edition.attributes,
   att.spanning.attributes,
   att.breaking.attributes,
   att.cmc.attributes,
   empty
}

<name>

<name> (name, proper noun) contains a proper noun or noun phrase. [3.6.1. Referring Strings]
Modulecore
Attributes
Member of
Contained by
May contain
Note

Proper nouns referring to people, places, and organizations may be tagged instead with <persName>, <placeName>, or <orgName>, when the TEI module for names and dates is included.

Example
<name type="person">Thomas Hoccleve</name>
<name type="place">Villingaholt</name>
<name type="org">Vetus Latina Institut</name>
<name type="personref="#HOC001">Occleve</name>
Schematron

<sch:rule context="tei:*[@calendar]">
<sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more
systems or calendars to which the date represented by the content of this element belongs,
but this <sch:name/> element has no textual content.</sch:assert>
</sch:rule>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element name
{
   att.global.attributes,
   att.personal.attributes,
   att.datable.attributes,
   att.editLike.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   macro.phraseSeq
}

<note>

<note> (note) contains a note or annotation. [3.9.1. Notes and Simple Annotation 2.2.6. The Notes Statement 3.12.2.8. Notes and Statement of Language 10.3.5.4. Notes within Entries]
Modulecore
Attributes
Member of
Contained by
May contain
Example

In the following example, the translator has supplied a footnote containing an explanation of the term translated as "painterly":

And yet it is not only
in the great line of Italian renaissance art, but even in the
painterly <note place="bottomtype="gloss"
 resp="#MDMH">

 <term xml:lang="de">Malerisch</term>. This word has, in the German, two
distinct meanings, one objective, a quality residing in the object,
the other subjective, a mode of apprehension and creation. To avoid
confusion, they have been distinguished in English as
<mentioned>picturesque</mentioned> and
<mentioned>painterly</mentioned> respectively.
</note> style of the
Dutch genre painters of the seventeenth century that drapery has this
psychological significance.

<!-- elsewhere in the document -->
<respStmt xml:id="MDMH">
 <resp>translation from German to English</resp>
 <name>Hottinger, Marie Donald Mackie</name>
</respStmt>

For this example to be valid, the code MDMH must be defined elsewhere, for example by means of a responsibility statement in the associated TEI header.

Example

The global n attribute may be used to supply the symbol or number used to mark the note's point of attachment in the source text, as in the following example:

Mevorakh b. Saadya's mother, the matriarch of the
family during the second half of the eleventh century, <note n="126anchored="true"> The
alleged mention of Judah Nagid's mother in a letter from 1071 is, in fact, a reference to
Judah's children; cf. above, nn. 111 and 54. </note> is well known from Geniza documents
published by Jacob Mann.

However, if notes are numbered in sequence and their numbering can be reconstructed automatically by processing software, it may well be considered unnecessary to record the note numbers.

Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
Schema Declaration
element note
{
   att.global.attributes,
   att.placement.attributes,
   att.pointing.attributes,
   att.typed.attributes,
   att.written.attributes,
   att.anchoring.attributes,
   att.cmc.attributes,
   macro.specialPara
}

<notesStmt>

<notesStmt> (notes statement) collects together any notes providing information about a text additional to that recorded in other parts of the bibliographic description. [2.2.6. The Notes Statement 2.2. The File Description]
Moduleheader
Attributes
Contained by
header: fileDesc
May contain
Note

Information of different kinds should not be grouped together into the same note.

Example
<notesStmt>
 <note>Historical commentary provided by Mark Cohen</note>
 <note>OCR scanning done at University of Toronto</note>
</notesStmt>
Content model
<content>
 <alternate minOccurs="1"
  maxOccurs="unbounded">

  <classRef key="model.noteLike"/>
  <elementRef key="relatedItem"/>
 </alternate>
</content>
Schema Declaration
element notesStmt { att.global.attributes, ( model.noteLike | relatedItem )+ }

<num>

<num> (number) contains a number, written in any form. [3.6.3. Numbers and Measures]
Modulecore
Attributes
typeindicates the type of numeric value.
Derived fromatt.typed
Status Optional
Datatype teidata.enumerated
Suggested values include:
cardinal
absolute number, e.g. 21, 21.5
ordinal
ordinal number, e.g. 21st
fraction
fraction, e.g. one half or three-quarters
percentage
a percentage
Note

If a different typology is desired, other values can be used for this attribute.

valuesupplies the value of the number in standard form.
Status Optional
Datatype teidata.numeric
Values a numeric value.
Note

The standard form used is defined by the TEI datatype teidata.numeric.

Member of
Contained by
May contain
Note

Detailed analyses of quantities and units of measure in historical documents may also use the feature structure mechanism described in chapter 19. Feature Structures. The num element is intended for use in simple applications.

Example
<p>I reached <num type="cardinalvalue="21">twenty-one</num> on
my <num type="ordinalvalue="21">twenty-first</num> birthday</p>
<p>Light travels at <num value="3E10">3×10<hi rend="sup">10</hi>
 </num> cm per second.</p>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element num
{
   att.global.attributes,
   att.typed.attribute.subtype,
   att.ranging.attributes,
   att.cmc.attributes,
   attribute type
   {
      "cardinal" | "ordinal" | "fraction" | "percentage" | teidata.enumerated
   }?,
   attribute value { teidata.numeric }?,
   macro.phraseSeq
}

<opener>

<opener> (opener) groups together dateline, byline, salutation, and similar phrases appearing as a preliminary group at the start of a division, especially of a letter. [4.2. Elements Common to All Divisions]
Moduletextstructure
Attributes
Member of
Contained by
core: lg list
textstructure: body div group postscript
May contain
Example
<opener>
 <dateline>Walden, this 29. of August 1592</dateline>
</opener>
Example
<opener>
 <dateline>
  <name type="place">Great Marlborough Street</name>
  <date>November 11, 1848</date>
 </dateline>
 <salute>My dear Sir,</salute>
</opener>
<p>I am sorry to say that absence from town and other circumstances have prevented me from
earlier enquiring...</p>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.phrase"/>
  <elementRef key="argument"/>
  <elementRef key="byline"/>
  <elementRef key="dateline"/>
  <elementRef key="epigraph"/>
  <elementRef key="salute"/>
  <elementRef key="signed"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Schema Declaration
element opener
{
   att.global.attributes,
   att.written.attributes,
   att.cmc.attributes,
   (
      text
    | model.gLikemodel.phraseargumentbylinedatelineepigraphsalutesignedmodel.global
   )*
}

<orig>

<orig> (original form) contains a reading which is marked as following the original, rather than being normalized or corrected. [3.5.2. Regularization and Normalization 13. Critical Apparatus]
Modulecore
Attributes
Member of
Contained by
May contain
Example

If all that is desired is to call attention to the original version in the copy text, orig may be used alone:

<l>But this will be a <orig>meere</orig> confusion</l>
<l>And hardly shall we all be <orig>vnderstoode</orig>
</l>
Example

More usually, an orig will be combined with a regularized form within a choice element:

<l>But this will be a <choice>
  <orig>meere</orig>
  <reg>mere</reg>
 </choice> confusion</l>
<l>And hardly shall we all be <choice>
  <orig>vnderstoode</orig>
  <reg>understood</reg>
 </choice>
</l>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element orig { att.global.attributes, att.cmc.attributes, macro.paraContent }

<p>

<p> (paragraph) marks paragraphs in prose. [3.1. Paragraphs 7.2.5. Speech Contents]
Modulecore
Attributes
Member of
Contained by
May contain
Example
<p>Hallgerd was outside. <q>There is blood on your axe,</q> she said. <q>What have you
   done?</q>
</p>
<p>
 <q>I have now arranged that you can be married a second time,</q> replied Thjostolf.
</p>
<p>
 <q>Then you must mean that Thorvald is dead,</q> she said.
</p>
<p>
 <q>Yes,</q> said Thjostolf. <q>And now you must think up some plan for me.</q>
</p>
Schematron

<sch:rule context="tei:p">
<sch:report test="(ancestor::tei:ab or ancestor::tei:p) and not( ancestor::tei:floatingText | parent::tei:exemplum | parent::tei:item | parent::tei:note | parent::tei:q | parent::tei:quote | parent::tei:remarks | parent::tei:said | parent::tei:sp | parent::tei:stage | parent::tei:cell | parent::tei:figure )"> Abstract model violation: Paragraphs may not occur inside other paragraphs or ab elements.
</sch:report>
</sch:rule>
Schematron

<sch:rule context="tei:p">
<sch:report test="( ancestor::tei:l or ancestor::tei:lg ) and not( ancestor::tei:floatingText | parent::tei:figure | parent::tei:note )"> Abstract model violation: Lines may not contain higher-level structural elements such as div, p, or ab, unless p is a child of figure or note, or is a descendant of floatingText.
</sch:report>
</sch:rule>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element p
{
   att.global.attributes,
   att.declaring.attributes,
   att.fragmentable.attributes,
   att.written.attributes,
   att.cmc.attributes,
   macro.paraContent
}

<pb>

<pb> (page beginning) marks the beginning of a new page in a paginated document. [3.11.3. Milestone Elements]
Modulecore
Attributes
Member of
Contained by
May containEmpty element
Note

A pb element should appear at the start of the page which it identifies. The global n attribute indicates the number or other value associated with this page. This will normally be the page number or signature printed on it, since the physical sequence number is implicit in the presence of the pb element itself.

The type attribute may be used to characterize the page break in any respect. The more specialized attributes break, ed, or edRef should be preferred when the intent is to indicate whether or not the page break is word-breaking, or to note the source from which it derives.

Example

Page numbers may vary in different editions of a text.

<p> ... <pb n="145ed="ed2"/>
<!-- Page 145 in edition "ed2" starts here --> ... <pb n="283ed="ed1"/>
<!-- Page 283 in edition "ed1" starts here--> ... </p>
Example

A page break may be associated with a facsimile image of the page it introduces by means of the facs attribute

<body>
 <pb n="1facs="page1.png"/>
<!-- page1.png contains an image of the page; the text it contains is encoded here -->
 <p>
<!-- ... -->
 </p>
 <pb n="2facs="page2.png"/>
<!-- similarly, for page 2 -->
 <p>
<!-- ... -->
 </p>
</body>
Content model
<content>
 <empty/>
</content>
Schema Declaration
element pb
{
   att.global.attributes,
   att.typed.attributes,
   att.edition.attributes,
   att.spanning.attributes,
   att.breaking.attributes,
   att.cmc.attributes,
   empty
}

<pc>

<pc> (punctuation character) contains a character or string of characters regarded as constituting a single punctuation mark. [18.1.2. Below the Word Level 18.4.2. Lightweight Linguistic Annotation]
Moduleanalysis
Attributes
forceindicates the extent to which this punctuation mark conventionally separates words or phrases
Status Optional
Datatype teidata.enumerated
Legal values are:
strong
the punctuation mark is a word separator
weak
the punctuation mark is not a word separator
inter
the punctuation mark may or may not be a word separator
unitprovides a name for the kind of unit delimited by this punctuation mark.
Status Optional
Datatype teidata.enumerated
preindicates whether this punctuation mark precedes or follows the unit it delimits.
Status Optional
Datatype teidata.truthValue
Member of
Contained by
May contain
character data
Example
<phr>
 <w>do</w>
 <w>you</w>
 <w>understand</w>
 <pc type="interrogative">?</pc>
</phr>
Example

Example encoding of the German sentence Wir fahren in den Urlaub., encoded with attributes from att.linguistic discussed in section [ID AILALW in TEI Guidelines].

<s>
 <w pos="PPERmsd="1.Pl.*.Nom">Wir</w>
 <w pos="VVFINmsd="1.Pl.Pres.Ind">fahren</w>
 <w pos="APPRmsd="--">in</w>
 <w pos="ARTmsd="Def.Masc.Akk.Sg.">den</w>
 <w pos="NNmsd="Masc.Akk.Sg.">Urlaub</w>
 <pc pos="$.msd="--join="left">.</pc>
</s>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <elementRef key="c"/>
  <classRef key="model.pPart.edit"/>
 </alternate>
</content>
Schema Declaration
element pc
{
   att.global.attributes,
   att.segLike.attributes,
   att.typed.attributes,
   att.linguistic.attributes,
   att.cmc.attributes,
   attribute force { "strong" | "weak" | "inter" }?,
   attribute unit { teidata.enumerated }?,
   attribute pre { teidata.truthValue }?,
   ( text | model.gLike | c | model.pPart.edit )*
}

<postscript>

<postscript> contains a postscript, e.g. to a letter. [4.2. Elements Common to All Divisions]
Moduletextstructure
Attributes
Member of
Contained by
core: lg list
figures: figure table
May contain
Example
<div type="letter">
 <opener>
  <dateline>
   <placeName>Rimaone</placeName>
   <date when="2006-11-21">21 Nov 06</date>
  </dateline>
  <salute>Dear Susan,</salute>
 </opener>
 <p>Thank you very much for the assistance splitting those
   logs. I'm sorry about the misunderstanding as to the size of
   the task. I really was not asking for help, only to borrow the
   axe. Hope you had fun in any case.</p>
 <closer>
  <salute>Sincerely yours,</salute>
  <signed>Seymour</signed>
 </closer>
 <postscript>
  <label>P.S.</label>
  <p>The collision occured on <date when="2001-07-06">06 Jul 01</date>.</p>
 </postscript>
</div>
Content model
<content>
 <sequence>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.global"/>
   <classRef key="model.divTopPart"/>
  </alternate>
  <classRef key="model.common"/>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.global"/>
   <classRef key="model.common"/>
  </alternate>
  <sequence minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.divBottomPart"/>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
 </sequence>
</content>
Schema Declaration
element postscript
{
   att.global.attributes,
   att.written.attributes,
   att.cmc.attributes,
   (
      ( model.global | model.divTopPart )*,
      model.common,
      ( model.global | model.common )*,
      ( ( model.divBottomPart, model.global* )* )
   )
}

<principal>

<principal> (principal researcher) supplies the name of the principal researcher responsible for the creation of an electronic text. [2.2.1. The Title Statement]
Moduleheader
Attributes
Member of
Contained by
May contain
Example
<principal ref="http://viaf.org/viaf/105517912">Gary Taylor</principal>
Schematron

<sch:rule context="tei:*[@calendar]">
<sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more
systems or calendars to which the date represented by the content of this element belongs,
but this <sch:name/> element has no textual content.</sch:assert>
</sch:rule>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
Schema Declaration
element principal
{
   att.global.attributes,
   att.canonical.attributes,
   att.datable.attributes,
   macro.phraseSeq.limited
}

<profileDesc>

<profileDesc> (text-profile description) provides a detailed description of non-bibliographic aspects of a text, specifically the languages and sublanguages used, the situation in which it was produced, the participants and their setting. [2.4. The Profile Description 2.1.1. The TEI Header and Its Components]
Moduleheader
Attributes
Member of
Contained by
header: teiHeader
May contain
Note

Although the content model permits it, it is rarely meaningful to supply multiple occurrences for any of the child elements of profileDesc unless these are documenting multiple texts.

Example
<profileDesc>
 <langUsage>
  <language ident="fr">French</language>
 </langUsage>
 <textDesc n="novel">
  <channel mode="w">print; part issues</channel>
  <constitution type="single"/>
  <derivation type="original"/>
  <domain type="art"/>
  <factuality type="fiction"/>
  <interaction type="none"/>
  <preparedness type="prepared"/>
  <purpose type="entertaindegree="high"/>
  <purpose type="informdegree="medium"/>
 </textDesc>
 <settingDesc>
  <setting>
   <name>Paris, France</name>
   <time>Late 19th century</time>
  </setting>
 </settingDesc>
</profileDesc>
Content model
<content>
 <classRef key="model.profileDescPart"
  minOccurs="0maxOccurs="unbounded"/>

</content>
Schema Declaration
element profileDesc { att.global.attributes, model.profileDescPart* }

<projectDesc>

<projectDesc> (project description) describes in detail the aim or purpose for which an electronic file was encoded, together with any other relevant information concerning the process by which it was assembled or collected. [2.3.1. The Project Description 2.3. The Encoding Description 16.3.2. Declarable Elements]
Moduleheader
Attributes
Member of
Contained by
header: encodingDesc
May contain
core: p
Example
<projectDesc>
 <p>Texts collected for use in the Claremont Shakespeare Clinic, June 1990</p>
</projectDesc>
Content model
<content>
 <classRef key="model.pLikeminOccurs="1"
  maxOccurs="unbounded"/>

</content>
Schema Declaration
element projectDesc
{
   att.global.attributes,
   att.declarable.attributes,
   model.pLike+
}

<ptr>

<ptr> (pointer) defines a pointer to another location. [3.7. Simple Links and Cross-References 17.1. Links]
Modulecore
Attributes
Member of
Contained by
May containEmpty element
Example
<ptr target="#p143 #p144"/>
<ptr target="http://www.tei-c.org"/>
<ptr cRef="1.3.4"/>
Schematron

<sch:rule context="tei:ptr">
<sch:report test="@target and @cRef">Only one of the attributes @target and @cRef may be supplied on <sch:name/>.</sch:report>
</sch:rule>
Content model
<content>
 <empty/>
</content>
Schema Declaration
element ptr
{
   att.cReferencing.attributes,
   att.declaring.attributes,
   att.global.attributes,
   att.pointing.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   empty
}

<publicationStmt>

<publicationStmt> (publication statement) groups information concerning the publication or distribution of an electronic or other text. [2.2.4. Publication, Distribution, Licensing, etc. 2.2. The File Description]
Moduleheader
Attributes
Contained by
header: fileDesc
May contain
Note

Where a publication statement contains several members of the model.publicationStmtPart.agency or model.publicationStmtPart.detail classes rather than one or more paragraphs or anonymous blocks, care should be taken to ensure that the repeated elements are presented in a meaningful order. It is a conformance requirement that elements supplying information about publication place, address, identifier, availability, and date be given following the name of the publisher, distributor, or authority concerned, and preferably in that order.

Example
<publicationStmt>
 <publisher>C. Muquardt </publisher>
 <pubPlace>Bruxelles &amp; Leipzig</pubPlace>
 <date when="1846"/>
</publicationStmt>
Example
<publicationStmt>
 <publisher>Chadwyck Healey</publisher>
 <pubPlace>Cambridge</pubPlace>
 <availability>
  <p>Available under licence only</p>
 </availability>
 <date when="1992">1992</date>
</publicationStmt>
Example
<publicationStmt>
 <publisher>Zea Books</publisher>
 <pubPlace>Lincoln, NE</pubPlace>
 <date>2017</date>
 <availability>
  <p>This is an open access work licensed under a Creative Commons Attribution 4.0 International license.</p>
 </availability>
 <ptr target="http://digitalcommons.unl.edu/zeabook/55"/>
</publicationStmt>
Content model
<content>
 <alternate>
  <sequence minOccurs="1"
   maxOccurs="unbounded">

   <classRef key="model.publicationStmtPart.agency"/>
   <classRef key="model.publicationStmtPart.detail"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
  <classRef key="model.pLikeminOccurs="1"
   maxOccurs="unbounded"/>

 </alternate>
</content>
Schema Declaration
element publicationStmt
{
   att.global.attributes,
   (
      (
         (
            model.publicationStmtPart.agency,
            model.publicationStmtPart.detail*
         )+
      )
    | model.pLike+
   )
}

<publisher>

<publisher> (publisher) provides the name of the organization responsible for the publication or distribution of a bibliographic item. [3.12.2.4. Imprint, Size of a Document, and Reprint Information 2.2.4. Publication, Distribution, Licensing, etc.]
Modulecore
Attributes
Member of
Contained by
core: bibl
textstructure: docImprint
May contain
Note

Use the full form of the name by which a company is usually referred to, rather than any abbreviation of it which may appear on a title page

Example
<imprint>
 <pubPlace>Oxford</pubPlace>
 <publisher>Clarendon Press</publisher>
 <date>1987</date>
</imprint>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element publisher
{
   att.global.attributes,
   att.canonical.attributes,
   macro.phraseSeq
}

<pubPlace>

<pubPlace> (publication place) contains the name of the place where a bibliographic item was published. [3.12.2.4. Imprint, Size of a Document, and Reprint Information]
Modulecore
Attributes
Member of
Contained by
core: bibl
textstructure: docImprint
May contain
Example
<publicationStmt>
 <publisher>Oxford University Press</publisher>
 <pubPlace>Oxford</pubPlace>
 <date>1989</date>
</publicationStmt>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element pubPlace
{
   att.global.attributes,
   att.naming.attributes,
   macro.phraseSeq
}

<q>

<q> (quoted) contains material which is distinguished from the surrounding text using quotation marks or a similar method, for any one of a variety of reasons including, but not limited to: direct speech or thought, technical terms or jargon, authorial distance, quotations from elsewhere, and passages that are mentioned but not used. [3.3.3. Quotation]
Modulecore
Attributes
type(type) may be used to indicate whether the offset passage is spoken or thought, or to characterize it more finely.
Status Optional
Datatype teidata.enumerated
Suggested values include:
spoken
(spoken) representation of speech
thought
(thought) representation of thought, e.g. internal monologue
written
(written) quotation from a written source
soCalled
(so called) authorial distance
foreign
(foreign) foreign words
distinct
(distinct) linguistically distinct
term
technical term
emph
(emph) rhetorically emphasized
mentioned
(mentioned) refering to itself, not its normal referent
Member of
Contained by
May contain
Note

May be used to indicate that a passage is distinguished from the surrounding text for reasons concerning which no claim is made. When used in this manner, q may be thought of as syntactic sugar for hi with a value of rend that indicates the use of such mechanisms as quotation marks.

Example
It is spelled <q>Tübingen</q> — to enter the
letter <q>u</q> with an umlaut hold down the <q>option</q> key and press
<q>0 0 f c</q>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
Schema Declaration
element q
{
   att.global.attributes,
   att.ascribed.directed.attributes,
   att.cmc.attributes,
   attribute type
   {
      "spoken"
    | "thought"
    | "written"
    | "soCalled"
    | "foreign"
    | "distinct"
    | "term"
    | "emph"
    | "mentioned"
    | teidata.enumerated
   }?,
   macro.specialPara
}

<ref>

<ref> (reference) defines a reference to another location, possibly modified by additional text or comment. [3.7. Simple Links and Cross-References 17.1. Links]
Modulecore
Attributes
Member of
Contained by
May contain
Note

The target and cRef attributes are mutually exclusive.

Example
See especially <ref target="http://www.natcorp.ox.ac.uk/Texts/A02.xml#s2">the second
sentence</ref>
Example
See also <ref target="#locution">s.v. <term>locution</term>
</ref>.
Schematron

<sch:rule context="tei:ref">
<sch:report test="@target and @cRef">Only one of the attributes @target' and @cRef' may be supplied on <sch:name/>
</sch:report>
</sch:rule>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element ref
{
   att.cReferencing.attributes,
   att.declaring.attributes,
   att.global.attributes,
   att.pointing.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   macro.paraContent
}

<refsDecl>

<refsDecl> (references declaration) specifies how canonical references are constructed for this text. [2.3.6.3. Milestone Method 2.3. The Encoding Description 2.3.6. The Reference System Declaration]
Moduleheader
Attributes
Member of
Contained by
header: encodingDesc
May contain
core: p
Example
<refsDecl>
 <cRefPattern matchPattern="([A-Za-z0-9]+) ([0-9]+):([0-9]+)"
  replacementPattern="#xpath(//body/div[@n='$1']/div[$2]/div3[$3])"/>

</refsDecl>

This example is a formal representation for the referencing scheme described informally in the following example.

Example
<refsDecl>
 <p>References are made up by concatenating the value for the
 <att>n</att> attribute on the highest level <gi>div</gi>
   element, followed by a space, followed by the sequential
   number of the next level <gi>div</gi> followed by a colon
   followed by the sequential number of the next (and lowest)
   level <gi>div</gi>.</p>
</refsDecl>
Content model
<content>
 <alternate>
  <classRef key="model.pLikeminOccurs="1"
   maxOccurs="unbounded"/>

  <elementRef key="citeStructure"
   minOccurs="1maxOccurs="unbounded"/>

  <elementRef key="cRefPattern"
   minOccurs="1maxOccurs="unbounded"/>

  <elementRef key="refStateminOccurs="1"
   maxOccurs="unbounded"/>

 </alternate>
</content>
Schema Declaration
element refsDecl
{
   att.global.attributes,
   att.declarable.attributes,
   ( model.pLike+ | citeStructure+ | cRefPattern+ | refState+ )
}

<reg>

<reg> (regularization) contains a reading which has been regularized or normalized in some sense. [3.5.2. Regularization and Normalization 13. Critical Apparatus]
Modulecore
Attributes
Member of
Contained by
May contain
Example

If all that is desired is to call attention to the fact that the copy text has been regularized, reg may be used alone:

<q>Please <reg>knock</reg> if an <reg>answer</reg> is <reg>required</reg>
</q>
Example

It is also possible to identify the individual responsible for the regularization, and, using the choice and orig elements, to provide both the original and regularized readings:

<q>Please <choice>
  <reg resp="#LB">knock</reg>
  <orig>cnk</orig>
 </choice> if an <choice>
  <reg>answer</reg>
  <orig>nsr</orig>
 </choice> is <choice>
  <reg>required</reg>
  <orig>reqd</orig>
 </choice>
</q>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element reg
{
   att.global.attributes,
   att.editLike.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   macro.paraContent
}

<relatedItem>

<relatedItem> contains or references some other bibliographic item which is related to the present one in some specified manner, for example as a constituent or alternative version of it. [3.12.2.7. Related Items]
Modulecore
Attributes
targetpoints to the related bibliographic element by means of an absolute or relative URI reference
Status Optional
Datatype teidata.pointer
Member of
Contained by
core: bibl
header: notesStmt
May contain
Note

If the target attribute is used to reference the related bibliographic item, the element must be empty.

Example
<biblStruct>
 <monogr>
  <author>Shirley, James</author>
  <title type="main">The gentlemen of Venice</title>
  <imprint>
   <pubPlace>New York</pubPlace>
   <publisher>Readex Microprint</publisher>
   <date>1953</date>
  </imprint>
  <extent>1 microprint card, 23 x 15 cm.</extent>
 </monogr>
 <series>
  <title>Three centuries of drama: English, 1642–1700</title>
 </series>
 <relatedItem type="otherForm">
  <biblStruct>
   <monogr>
    <author>Shirley, James</author>
    <title type="main">The gentlemen of Venice</title>
    <title type="sub">a tragi-comedie presented at the private house in Salisbury
         Court by Her Majesties servants</title>
    <imprint>
     <pubPlace>London</pubPlace>
     <publisher>H. Moseley</publisher>
     <date>1655</date>
    </imprint>
    <extent>78 p.</extent>
   </monogr>
  </biblStruct>
 </relatedItem>
</biblStruct>
Schematron

<sch:rule context="tei:relatedItem">
<sch:report test="@target and count( child::* ) > 0">If the @target attribute on <sch:name/> is used, the relatedItem element must be empty</sch:report>
<sch:assert test="@target or child::*">A relatedItem element should have either a @target attribute or a child element to indicate the related bibliographic item</sch:assert>
</sch:rule>
Content model
<content>
 <alternate minOccurs="0">
  <classRef key="model.biblLike"/>
  <classRef key="model.ptrLike"/>
 </alternate>
</content>
Schema Declaration
element relatedItem
{
   att.global.attributes,
   att.typed.attributes,
   attribute target { teidata.pointer }?,
   ( model.biblLike | model.ptrLike )?
}

<resp>

<resp> (responsibility) contains a phrase describing the nature of a person's intellectual responsibility, or an organization's role in the production or distribution of a work. [3.12.2.2. Titles, Authors, and Editors 2.2.1. The Title Statement 2.2.2. The Edition Statement 2.2.5. The Series Statement]
Modulecore
Attributes
Contained by
core: respStmt
May contain
Note

The attribute ref, inherited from the class att.canonical may be used to indicate the kind of responsibility in a normalized form by referring directly to a standardized list of responsibility types, such as that maintained by a naming authority, for example the list maintained at http://www.loc.gov/marc/relators/relacode.html for bibliographic usage.

Example
<respStmt>
 <resp ref="http://id.loc.gov/vocabulary/relators/com.html">compiler</resp>
 <name>Edward Child</name>
</respStmt>
Schematron

<sch:rule context="tei:*[@calendar]">
<sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more
systems or calendars to which the date represented by the content of this element belongs,
but this <sch:name/> element has no textual content.</sch:assert>
</sch:rule>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
Schema Declaration
element resp
{
   att.global.attributes,
   att.canonical.attributes,
   att.datable.attributes,
   macro.phraseSeq.limited
}

<respStmt>

<respStmt> (statement of responsibility) supplies a statement of responsibility for the intellectual content of a text, edition, recording, or series, where the specialized elements for authors, editors, etc. do not suffice or do not apply. May also be used to encode information about individuals or organizations which have played a role in the production or distribution of a bibliographic work. [3.12.2.2. Titles, Authors, and Editors 2.2.1. The Title Statement 2.2.2. The Edition Statement 2.2.5. The Series Statement]
Modulecore
Attributes
Member of
Contained by
May contain
core: name note resp
Example
<respStmt>
 <resp>transcribed from original ms</resp>
 <persName>Claus Huitfeldt</persName>
</respStmt>
Example
<respStmt>
 <resp>converted to XML encoding</resp>
 <name>Alan Morrison</name>
</respStmt>
Content model
<content>
 <sequence>
  <alternate>
   <sequence>
    <elementRef key="respminOccurs="1"
     maxOccurs="unbounded"/>

    <classRef key="model.nameLike.agent"
     minOccurs="1maxOccurs="unbounded"/>

   </sequence>
   <sequence>
    <classRef key="model.nameLike.agent"
     minOccurs="1maxOccurs="unbounded"/>

    <elementRef key="respminOccurs="1"
     maxOccurs="unbounded"/>

   </sequence>
  </alternate>
  <elementRef key="noteminOccurs="0"
   maxOccurs="unbounded"/>

 </sequence>
</content>
Schema Declaration
element respStmt
{
   att.global.attributes,
   att.canonical.attributes,
   (
      ( ( resp+, model.nameLike.agent+ ) | ( model.nameLike.agent+, resp+ ) ),
      note*
   )
}

<revisionDesc>

<revisionDesc> (revision description) summarizes the revision history for a file. [2.6. The Revision Description 2.1.1. The TEI Header and Its Components]
Moduleheader
Attributes
Contained by
header: teiHeader
May contain
core: list
header: change
Note

If present on this element, the status attribute should indicate the current status of the document. The same attribute may appear on any change to record the status at the time of that change. Conventionally change elements should be given in reverse date order, with the most recent change at the start of the list.

Example
<revisionDesc status="embargoed">
 <change when="1991-11-11who="#LB"> deleted chapter 10 </change>
</revisionDesc>
Content model
<content>
 <alternate>
  <elementRef key="listminOccurs="1"
   maxOccurs="unbounded"/>

  <elementRef key="listChange"
   minOccurs="1maxOccurs="unbounded"/>

  <elementRef key="changeminOccurs="1"
   maxOccurs="unbounded"/>

 </alternate>
</content>
Schema Declaration
element revisionDesc
{
   att.global.attributes,
   att.docStatus.attributes,
   ( list+ | listChange+ | change+ )
}

<row>

<row> (row) contains one row of a table. [15.1.1. TEI Tables]
Modulefigures
Attributes
Contained by
figures: table
May contain
figures: cell
Example
<row role="data">
 <cell role="label">Classics</cell>
 <cell>Idle listless and unimproving</cell>
</row>
Content model
<content>
 <elementRef key="cellminOccurs="1"
  maxOccurs="unbounded"/>

</content>
Schema Declaration
element row { att.global.attributes, att.tableDecoration.attributes, cell+ }

<rs>

<rs> (referencing string) contains a general purpose name or referring string. [14.2.1. Personal Names 3.6.1. Referring Strings]
Modulecore
Attributes
Member of
Contained by
May contain
Example
<q>My dear <rs type="person">Mr. Bennet</rs>, </q> said <rs type="person">his lady</rs>
to him one day,
<q>have you heard that <rs type="place">Netherfield Park</rs> is let at
last?</q>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element rs
{
   att.global.attributes,
   att.naming.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   macro.phraseSeq
}

<s>

<s> (s-unit) contains a sentence-like division of a text. [18.1. Linguistic Segment Categories 8.4.1. Segmentation]
Moduleanalysis
Attributes
Member of
Contained by
May contain
Note

The s element may be used to mark orthographic sentences, or any other segmentation of a text, provided that the segmentation is end-to-end, complete, and non-nesting. For segmentation which is partial or recursive, the seg should be used instead.

The type attribute may be used to indicate the type of segmentation intended, according to any convenient typology.

Example
<head>
 <s>A short affair</s>
</head>
<s>When are you leaving?</s>
<s>Tomorrow.</s>
Schematron

<sch:rule context="tei:s">
<sch:report test="tei:s">You may not nest one s element within another: use seg instead</sch:report>
</sch:rule>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element s
{
   att.global.attributes,
   att.segLike.attributes,
   att.typed.attributes,
   att.notated.attributes,
   att.cmc.attributes,
   macro.phraseSeq
}

<salute>

<salute> (salutation) contains a salutation or greeting prefixed to a foreword, dedicatory epistle, or other division of a text, or the salutation in the closing of a letter, preface, etc. [4.2.2. Openers and Closers]
Moduletextstructure
Attributes
Member of
Contained by
core: lg list
figures: figure table
textstructure: body closer div front group opener
May contain
Example
<salute>To all courteous mindes, that will voutchsafe the readinge.</salute>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element salute
{
   att.global.attributes,
   att.written.attributes,
   att.cmc.attributes,
   macro.paraContent
}

<samplingDecl>

<samplingDecl> (sampling declaration) contains a prose description of the rationale and methods used in selecting texts, or parts of a text, for inclusion in the resource. [2.3.2. The Sampling Declaration 2.3. The Encoding Description 16.3.2. Declarable Elements]
Moduleheader
Attributes
Member of
Contained by
header: encodingDesc
May contain
core: p
Note

This element records all information about systematic inclusion or omission of portions of the text, whether a reflection of sampling procedures in the pure sense or of systematic omission of material deemed either too difficult to transcribe or not of sufficient interest.

Example
<samplingDecl>
 <p>Samples of up to 2000 words taken at random from the beginning, middle, or end of each
   text identified as relevant by respondents.</p>
</samplingDecl>
Content model
<content>
 <classRef key="model.pLikeminOccurs="1"
  maxOccurs="unbounded"/>

</content>
Schema Declaration
element samplingDecl
{
   att.global.attributes,
   att.declarable.attributes,
   model.pLike+
}

<seg>

<seg> (arbitrary segment) represents any segmentation of text below the ‘chunk’ level. [17.3. Blocks, Segments, and Anchors 6.2. Components of the Verse Line 7.2.5. Speech Contents]
Modulelinking
Attributes
Member of
Contained by
May contain
Note

The seg element may be used at the encoder's discretion to mark any segments of the text of interest for processing. One use of the element is to mark text features for which no appropriate markup is otherwise defined. Another use is to provide an identifier for some segment which is to be pointed at by some other element—i.e. to provide a target, or a part of a target, for a ptr or other similar element.

Example
<seg>When are you leaving?</seg>
<seg>Tomorrow.</seg>
Example
<s>
 <seg rend="capstype="initial-cap">So father's only</seg> glory was the ballfield.
</s>
Example
<seg type="preamble">
 <seg>Sigmund, <seg type="patronym">the son of Volsung</seg>, was a king in Frankish country.</seg>
 <seg>Sinfiotli was the eldest of his sons ...</seg>
 <seg>Borghild, Sigmund's wife, had a brother ... </seg>
</seg>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element seg
{
   att.global.attributes,
   att.segLike.attributes,
   att.typed.attributes,
   att.written.attributes,
   att.notated.attributes,
   att.cmc.attributes,
   macro.paraContent
}

<seriesStmt>

<seriesStmt> (series statement) groups information about the series, if any, to which a publication belongs. [2.2.5. The Series Statement 2.2. The File Description]
Moduleheader
Attributes
Contained by
header: fileDesc
May contain
Example
<seriesStmt>
 <title>Machine-Readable Texts for the Study of Indian Literature</title>
 <respStmt>
  <resp>ed. by</resp>
  <name>Jan Gonda</name>
 </respStmt>
 <biblScope unit="volume">1.2</biblScope>
 <idno type="ISSN">0 345 6789</idno>
</seriesStmt>
Content model
<content>
 <alternate>
  <classRef key="model.pLikeminOccurs="1"
   maxOccurs="unbounded"/>

  <sequence>
   <elementRef key="titleminOccurs="1"
    maxOccurs="unbounded"/>

   <alternate minOccurs="0"
    maxOccurs="unbounded">

    <elementRef key="editor"/>
    <elementRef key="respStmt"/>
   </alternate>
   <alternate minOccurs="0"
    maxOccurs="unbounded">

    <elementRef key="idno"/>
    <elementRef key="biblScope"/>
   </alternate>
  </sequence>
 </alternate>
</content>
Schema Declaration
element seriesStmt
{
   att.global.attributes,
   att.declarable.attributes,
   ( model.pLike+ | ( title+, ( editor | respStmt )*, ( idno | biblScope )* ) )
}

<sic>

<sic> (Latin for thus or so) contains text reproduced although apparently incorrect or inaccurate. [3.5.1. Apparent Errors]
Modulecore
Attributes
Member of
Contained by
May contain
Example
for his nose was as sharp as
a pen, and <sic>a Table</sic> of green fields.
Example

If all that is desired is to call attention to the apparent problem in the copy text, sic may be used alone:

I don't know, Juan. It's so far in the past now
— how <sic>we can</sic> prove or disprove anyone's theories?
Example

It is also possible, using the choice and corr elements, to provide a corrected reading:

I don't know, Juan. It's so far in the past now
— how <choice>
 <sic>we can</sic>
 <corr>can we</corr>
</choice> prove or disprove anyone's theories?
Example
for his nose was as sharp as
a pen, and <choice>
 <sic>a Table</sic>
 <corr>a' babbld</corr>
</choice> of green fields.
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element sic { att.global.attributes, att.cmc.attributes, macro.paraContent }

<signed>

<signed> (signature) contains the closing salutation, etc., appended to a foreword, dedicatory epistle, or other division of a text. [4.2.2. Openers and Closers]
Moduletextstructure
Attributes
Member of
Contained by
May contain
Example
<signed>Thine to command <name>Humph. Moseley</name>
</signed>
Example
<closer>
 <signed>Sign'd and Seal'd,
 <list>
   <item>John Bull,</item>
   <item>Nic. Frog.</item>
  </list>
 </signed>
</closer>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element signed
{
   att.global.attributes,
   att.written.attributes,
   att.cmc.attributes,
   macro.paraContent
}

<soCalled>

<soCalled> (so called) contains a word or phrase for which the author or narrator indicates a disclaiming of responsibility, for example by the use of scare quotes or italics. [3.3.3. Quotation]
Modulecore
Attributes
Member of
Contained by
May contain
Example
To edge his way along
the crowded paths of life, warning all human sympathy to keep its distance, was what the
knowing ones call <soCalled>nuts</soCalled> to Scrooge.
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element soCalled { att.global.attributes, att.cmc.attributes, macro.phraseSeq }

<sourceDesc>

<sourceDesc> (source description) describes the source(s) from which an electronic text was derived or generated, typically a bibliographic description in the case of a digitized text, or a phrase such as ‘born digital’ for a text which has no previous existence. [2.2.7. The Source Description]
Moduleheader
Attributes
Contained by
header: fileDesc
May contain
figures: table
Example
<sourceDesc>
 <bibl>
  <title level="a">The Interesting story of the Children in the Wood</title>. In
 <author>Victor E Neuberg</author>, <title>The Penny Histories</title>.
 <publisher>OUP</publisher>
  <date>1968</date>. </bibl>
</sourceDesc>
Example
<sourceDesc>
 <p>Born digital: no previous source exists.</p>
</sourceDesc>
Content model
<content>
 <alternate>
  <classRef key="model.pLikeminOccurs="1"
   maxOccurs="unbounded"/>

  <alternate minOccurs="1"
   maxOccurs="unbounded">

   <classRef key="model.biblLike"/>
   <classRef key="model.sourceDescPart"/>
   <classRef key="model.listLike"/>
  </alternate>
 </alternate>
</content>
Schema Declaration
element sourceDesc
{
   att.global.attributes,
   att.declarable.attributes,
   (
      model.pLike+
    | ( model.biblLike | model.sourceDescPart | model.listLike )+
   )
}

<sp>

<sp> (speech) contains an individual speech in a performance text, or a passage presented as such in a prose or verse text. [3.13.2. Core Tags for Drama 3.13. Passages of Verse or Drama 7.2.2. Speeches and Speakers]
Modulecore
Attributes
Member of
Contained by
figures: cell figure
header: change licence
May contain
Note

The who attribute on this element may be used either in addition to the speaker element or as an alternative.

Example
<sp>
 <speaker>The reverend Doctor Opimian</speaker>
 <p>I do not think I have named a single unpresentable fish.</p>
</sp>
<sp>
 <speaker>Mr Gryll</speaker>
 <p>Bream, Doctor: there is not much to be said for bream.</p>
</sp>
<sp>
 <speaker>The Reverend Doctor Opimian</speaker>
 <p>On the contrary, sir, I think there is much to be said for him. In the first place [...]</p>
 <p>Fish, Miss Gryll — I could discourse to you on fish by the hour: but for the present I
   will forbear [...]</p>
</sp>
Content model
<content>
 <sequence>
  <classRef key="model.global"
   minOccurs="0maxOccurs="unbounded"/>

  <sequence minOccurs="0">
   <elementRef key="speaker"/>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
  <sequence minOccurs="1"
   maxOccurs="unbounded">

   <alternate>
    <elementRef key="lg"/>
    <classRef key="model.lLike"/>
    <classRef key="model.pLike"/>
    <classRef key="model.listLike"/>
    <classRef key="model.stageLike"/>
    <classRef key="model.attributable"/>
   </alternate>
   <alternate>
    <classRef key="model.global"
     minOccurs="0maxOccurs="unbounded"/>

    <elementRef key="q"/>
   </alternate>
  </sequence>
 </sequence>
</content>
Schema Declaration
element sp
{
   att.global.attributes,
   att.ascribed.directed.attributes,
   (
      model.global*,
      ( ( speaker, model.global* )? ),
      (
         (
            (
               lgmodel.lLikemodel.pLikemodel.listLikemodel.stageLikemodel.attributable
            ),
            ( model.global* | q )
         )+
      )
   )
}

<speaker>

<speaker> contains a specialized form of heading or label, giving the name of one or more speakers in a dramatic text or fragment. [3.13.2. Core Tags for Drama]
Modulecore
Attributes
Contained by
core: sp
May contain
Note

This element may be used to transcribe which character is speaking in a dramatic text as indicated by the source text; the who attribute of an sp element may be used to point to another element (typically a <role>) which provides information about the character speaking. Either or both may be used.

Example
<sp who="#ni #rsa">
 <speaker>Nancy and Robert</speaker>
 <stage type="delivery">(speaking simultaneously)</stage>
 <p>The future? ...</p>
</sp>
<list type="speakers">
 <item xml:id="ni"/>
 <item xml:id="rsa"/>
</list>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element speaker { att.global.attributes, macro.phraseSeq }
<sponsor> (sponsor) specifies the name of a sponsoring organization or institution. [2.2.1. The Title Statement]
Moduleheader
Attributes
Member of
Contained by
May contain
Note

Sponsors give their intellectual authority to a project; they are to be distinguished from funders (see element funder), who provide the funding but do not necessarily take intellectual responsibility.

Example
<sponsor>Association for Computers and the Humanities</sponsor>
<sponsor>Association for Computational Linguistics</sponsor>
<sponsor ref="http://www.allc.org/">Association for Literary and Linguistic Computing</sponsor>
Schematron

<sch:rule context="tei:*[@calendar]">
<sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more
systems or calendars to which the date represented by the content of this element belongs,
but this <sch:name/> element has no textual content.</sch:assert>
</sch:rule>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
Schema Declaration
element sponsor
{
   att.global.attributes,
   att.canonical.attributes,
   att.datable.attributes,
   macro.phraseSeq.limited
}

<stage>

<stage> (stage direction) contains any kind of stage direction within a dramatic text or fragment. [3.13.2. Core Tags for Drama 3.13. Passages of Verse or Drama 7.2.4. Stage Directions]
Modulecore
Attributes
typeindicates the kind of stage direction.
Status Recommended
Datatype 0–∞ occurrences of teidata.enumerated separated by whitespace
Suggested values include:
setting
describes a setting.
entrance
describes an entrance.
exit
describes an exit.
business
describes stage business.
novelistic
is a narrative, motivating stage direction.
delivery
describes how a character speaks.
modifier
gives some detail about a character.
location
describes a location.
mixed
more than one of the above
Note

If the value mixed is used, it must be the only value. Multiple values may however be supplied if a single stage direction performs multiple functions, for example is both an entrance and a modifier.

Member of
Contained by
May contain
Note

The who attribute may be used to indicate more precisely the person or persons participating in the action described by the stage direction.

Example
<stage type="setting">A curtain being drawn.</stage>
<stage type="setting">Music</stage>
<stage type="entrance">Enter Husband as being thrown off his horse and falls.</stage>
<!-- Middleton : Yorkshire Tragedy -->
<stage type="exit">Exit pursued by a bear.</stage>
<stage type="business">He quickly takes the stone out.</stage>
<stage type="delivery">To Lussurioso.</stage>
<stage type="novelistic">Having had enough, and embarrassed for the family.</stage>
<!-- Lorraine Hansbury : a raisin in in the sun -->
<stage type="modifier">Disguised as Ansaldo.</stage>
<stage type="entrance modifier">Enter Latrocinio disguised as an empiric</stage>
<!-- Middleton: The Widow -->
<stage type="location">At a window.</stage>
<stage rend="inlinetype="delivery">Aside.</stage>
Example
<l>Behold. <stage n="*place="margin">Here the vp<lb/>per part of the <hi>Scene</hi> open'd; when
   straight appear'd a Heauen, and all the <hi>Pure Artes</hi> sitting on
   two semi<lb/>circular ben<lb/>ches, one a<lb/>boue another: who sate thus till the rest of the
 <hi>Prologue</hi> was spoken, which being ended, they descended in
   order within the <hi>Scene,</hi> whiles the Musicke plaid</stage> Our
Poet knowing our free hearts</l>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
Schema Declaration
element stage
{
   att.ascribed.directed.attributes,
   att.global.attributes,
   att.placement.attributes,
   att.written.attributes,
   att.cmc.attributes,
   attribute type
   {
      list
      {
         (
            "setting"
          | "entrance"
          | "exit"
          | "business"
          | "novelistic"
          | "delivery"
          | "modifier"
          | "location"
          | "mixed"
          | teidata.enumerated
         )*
      }
   }?,
   macro.specialPara
}

<table>

<table> (table) contains text displayed in tabular form, in rows and columns. [15.1.1. TEI Tables]
Modulefigures
Attributes
rows(rows) indicates the number of rows in the table.
Status Optional
Datatype teidata.count
Note

If no number is supplied, an application must calculate the number of rows.

Rows should be presented from top to bottom.

cols(columns) indicates the number of columns in each row of the table.
Status Optional
Datatype teidata.count
Note

If no number is supplied, an application must calculate the number of columns.

Within each row, columns should be presented left to right.

Member of
Contained by
May contain
Note

Contains an optional heading and a series of rows.

Any rendition information should be supplied using the global rend attribute, at the table, row, or cell level as appropriate.

Example
<table rows="4cols="4">
 <head>Poor Men's Lodgings in Norfolk (Mayhew, 1843)</head>
 <row role="label">
  <cell role="data"/>
  <cell role="data">Dossing Cribs or Lodging Houses</cell>
  <cell role="data">Beds</cell>
  <cell role="data">Needys or Nightly Lodgers</cell>
 </row>
 <row role="data">
  <cell role="label">Bury St Edmund's</cell>
  <cell role="data">5</cell>
  <cell role="data">8</cell>
  <cell role="data">128</cell>
 </row>
 <row role="data">
  <cell role="label">Thetford</cell>
  <cell role="data">3</cell>
  <cell role="data">6</cell>
  <cell role="data">36</cell>
 </row>
 <row role="data">
  <cell role="label">Attleboro'</cell>
  <cell role="data">3</cell>
  <cell role="data">5</cell>
  <cell role="data">20</cell>
 </row>
 <row role="data">
  <cell role="label">Wymondham</cell>
  <cell role="data">1</cell>
  <cell role="data">11</cell>
  <cell role="data">22</cell>
 </row>
</table>
Content model
<content>
 <sequence>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.headLike"/>
   <classRef key="model.global"/>
  </alternate>
  <alternate>
   <sequence minOccurs="1"
    maxOccurs="unbounded">

    <elementRef key="row"/>
    <classRef key="model.global"
     minOccurs="0maxOccurs="unbounded"/>

   </sequence>
   <sequence minOccurs="1"
    maxOccurs="unbounded">

    <classRef key="model.graphicLike"/>
    <classRef key="model.global"
     minOccurs="0maxOccurs="unbounded"/>

   </sequence>
  </alternate>
  <sequence minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.divBottom"/>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
 </sequence>
</content>
Schema Declaration
element table
{
   att.global.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   attribute rows { teidata.count }?,
   attribute cols { teidata.count }?,
   (
      ( model.headLike | model.global )*,
      (
         ( ( row, model.global* )+ )
       | ( ( model.graphicLike, model.global* )+ )
      ),
      ( ( model.divBottom, model.global* )* )
   )
}

<taxonomy>

<taxonomy> (taxonomy) defines a typology either implicitly, by means of a bibliographic citation, or explicitly by a structured taxonomy. [2.3.7. The Classification Declaration]
Moduleheader
Attributes
Contained by
May contain
Note

Nested taxonomies are common in many fields, so the taxonomy element can be nested.

Example
<taxonomy xml:id="tax.b">
 <bibl>Brown Corpus</bibl>
 <category xml:id="tax.b.a">
  <catDesc>Press Reportage</catDesc>
  <category xml:id="tax.b.a1">
   <catDesc>Daily</catDesc>
  </category>
  <category xml:id="tax.b.a2">
   <catDesc>Sunday</catDesc>
  </category>
  <category xml:id="tax.b.a3">
   <catDesc>National</catDesc>
  </category>
  <category xml:id="tax.b.a4">
   <catDesc>Provincial</catDesc>
  </category>
  <category xml:id="tax.b.a5">
   <catDesc>Political</catDesc>
  </category>
  <category xml:id="tax.b.a6">
   <catDesc>Sports</catDesc>
  </category>
 </category>
 <category xml:id="tax.b.d">
  <catDesc>Religion</catDesc>
  <category xml:id="tax.b.d1">
   <catDesc>Books</catDesc>
  </category>
  <category xml:id="tax.b.d2">
   <catDesc>Periodicals and tracts</catDesc>
  </category>
 </category>
</taxonomy>
Example
<taxonomy>
 <category xml:id="literature">
  <catDesc>Literature</catDesc>
  <category xml:id="poetry">
   <catDesc>Poetry</catDesc>
   <category xml:id="sonnet">
    <catDesc>Sonnet</catDesc>
    <category xml:id="shakesSonnet">
     <catDesc>Shakespearean Sonnet</catDesc>
    </category>
    <category xml:id="petraSonnet">
     <catDesc>Petrarchan Sonnet</catDesc>
    </category>
   </category>
   <category xml:id="haiku">
    <catDesc>Haiku</catDesc>
   </category>
  </category>
  <category xml:id="drama">
   <catDesc>Drama</catDesc>
  </category>
 </category>
 <category xml:id="meter">
  <catDesc>Metrical Categories</catDesc>
  <category xml:id="feet">
   <catDesc>Metrical Feet</catDesc>
   <category xml:id="iambic">
    <catDesc>Iambic</catDesc>
   </category>
   <category xml:id="trochaic">
    <catDesc>trochaic</catDesc>
   </category>
  </category>
  <category xml:id="feetNumber">
   <catDesc>Number of feet</catDesc>
   <category xml:id="pentameter">
    <catDesc>>Pentameter</catDesc>
   </category>
   <category xml:id="tetrameter">
    <catDesc>>Tetrameter</catDesc>
   </category>
  </category>
 </category>
</taxonomy>
<!-- elsewhere in document -->
<lg ana="#shakesSonnet #iambic #pentameter">
 <l>Shall I compare thee to a summer's day</l>
<!-- ... -->
</lg>
Content model
<content>
 <alternate>
  <alternate>
   <alternate minOccurs="1"
    maxOccurs="unbounded">

    <elementRef key="category"/>
    <elementRef key="taxonomy"/>
   </alternate>
   <sequence>
    <alternate minOccurs="1"
     maxOccurs="unbounded">

     <classRef key="model.descLike"
      minOccurs="1maxOccurs="1"/>

     <elementRef key="equivminOccurs="1"
      maxOccurs="1"/>

     <elementRef key="glossminOccurs="1"
      maxOccurs="1"/>

    </alternate>
    <alternate minOccurs="0"
     maxOccurs="unbounded">

     <elementRef key="category"/>
     <elementRef key="taxonomy"/>
    </alternate>
   </sequence>
  </alternate>
  <sequence>
   <classRef key="model.biblLike"/>
   <alternate minOccurs="0"
    maxOccurs="unbounded">

    <elementRef key="category"/>
    <elementRef key="taxonomy"/>
   </alternate>
  </sequence>
 </alternate>
</content>
Schema Declaration
element taxonomy
{
   att.global.attributes,
   att.datcat.attributes,
   (
      (
         ( category | taxonomy )+
       | ( ( model.descLike | equiv | gloss )+, ( category | taxonomy )* )
      )
    | ( model.biblLike, ( category | taxonomy )* )
   )
}

<TEI>

<TEI> (TEI document) contains a single TEI-conformant document, combining a single TEI header with one or more members of the model.resource class. Multiple TEI elements may be combined within a TEI (or teiCorpus) element. [4. Default Text Structure 16.1. Varieties of Composite Text]
Moduletextstructure
Attributes
Member of
Contained by
core: teiCorpus
textstructure: TEI
May contain
header: teiHeader
textstructure: TEI text
Note

This element is required. It is customary to specify the TEI namespace http://www.tei-c.org/ns/1.0 on it, for example: <TEI version="4.4.0" xml:lang="it" xmlns="http://www.tei-c.org/ns/1.0">.

Example
<TEI version="3.3.0" xmlns="http://www.tei-c.org/ns/1.0">
 <teiHeader>
  <fileDesc>
   <titleStmt>
    <title>The shortest TEI Document Imaginable</title>
   </titleStmt>
   <publicationStmt>
    <p>First published as part of TEI P2, this is the P5
         version using a namespace.</p>
   </publicationStmt>
   <sourceDesc>
    <p>No source: this is an original work.</p>
   </sourceDesc>
  </fileDesc>
 </teiHeader>
 <text>
  <body>
   <p>This is about the shortest TEI document imaginable.</p>
  </body>
 </text>
</TEI>
Example
<TEI version="2.9.1" xmlns="http://www.tei-c.org/ns/1.0">
 <teiHeader>
  <fileDesc>
   <titleStmt>
    <title>A TEI Document containing four page images </title>
   </titleStmt>
   <publicationStmt>
    <p>Unpublished demonstration file.</p>
   </publicationStmt>
   <sourceDesc>
    <p>No source: this is an original work.</p>
   </sourceDesc>
  </fileDesc>
 </teiHeader>
 <facsimile>
  <graphic url="page1.png"/>
  <graphic url="page2.png"/>
  <graphic url="page3.png"/>
  <graphic url="page4.png"/>
 </facsimile>
</TEI>
Schematron

<sch:ns prefix="tei"
 uri="http://www.tei-c.org/ns/1.0"/>

<sch:ns prefix="xs"
 uri="http://www.w3.org/2001/XMLSchema"/>
Schematron

<sch:ns prefix="rng"
 uri="http://relaxng.org/ns/structure/1.0"/>

<sch:ns prefix="rna"
 uri="http://relaxng.org/ns/compatibility/annotations/1.0"/>
Schematron

<sch:ns prefix="sch"
 uri="http://purl.oclc.org/dsdl/schematron"/>

<sch:ns prefix="sch1x"
 uri="http://www.ascc.net/xml/schematron"/>
Content model
<content>
 <sequence minOccurs="1maxOccurs="1">
  <elementRef key="teiHeader"/>
  <alternate minOccurs="1maxOccurs="1">
   <sequence minOccurs="1maxOccurs="1">
    <classRef key="model.resource"
     minOccurs="1maxOccurs="unbounded"/>

    <elementRef key="TEIminOccurs="0"
     maxOccurs="unbounded"/>

   </sequence>
   <elementRef key="TEIminOccurs="1"
    maxOccurs="unbounded"/>

  </alternate>
 </sequence>
</content>
Schema Declaration
element TEI
{
   att.global.attributes,
   att.typed.attributes,
   ( teiHeader, ( ( model.resource+, TEI* ) | TEI+ ) )
}

<teiCorpus>

<teiCorpus> (TEI corpus) contains the whole of a TEI encoded corpus, comprising a single corpus header and one or more TEI elements, each containing a single text header and a text. [4. Default Text Structure 16.1. Varieties of Composite Text]
Modulecore
Attributes
version(version) specifies the version number of the TEI Guidelines against which this document is valid.
Status Optional
Datatype teidata.version
Note

Major editions of the Guidelines have long been informally referred to by a name made up of the letter P (for Proposal) followed by a digit. The current release is one of the many releases of the fifth major edition of the Guidelines, known as P5. This attribute may be used to associate a TEI document with a specific release of the P5 Guidelines, in the absence of a more precise association provided by the source attribute on the associated <schemaSpec>.

Member of
Contained by
core: teiCorpus
May contain
core: teiCorpus
header: teiHeader
textstructure: TEI text
Note

Should contain one TEI header for the corpus, and a series of TEI elements, one for each text.

Example
<teiCorpus version="3.3.0" xmlns="http://www.tei-c.org/ns/1.0">
 <teiHeader>
<!-- header for corpus -->
 </teiHeader>
 <TEI>
  <teiHeader>
<!-- header for first text -->
  </teiHeader>
  <text>
<!-- content of first text -->
  </text>
 </TEI>
 <TEI>
  <teiHeader>
<!-- header for second text -->
  </teiHeader>
  <text>
<!-- content of second text -->
  </text>
 </TEI>
<!-- more TEI elements here -->
</teiCorpus>
Content model
<content>
 <sequence>
  <elementRef key="teiHeader"/>
  <classRef key="model.resource"
   minOccurs="0maxOccurs="unbounded"/>

  <classRef key="model.describedResource"
   minOccurs="1maxOccurs="unbounded"/>

 </sequence>
</content>
Schema Declaration
element teiCorpus
{
   att.global.attributes,
   att.typed.attributes,
   attribute version { teidata.version }?,
   ( teiHeader, model.resource*, model.describedResource+ )
}

<teiHeader>

<teiHeader> (TEI header) supplies descriptive and declarative metadata associated with a digital resource or set of resources. [2.1.1. The TEI Header and Its Components 16.1. Varieties of Composite Text]
Moduleheader
Attributes
Contained by
core: teiCorpus
textstructure: TEI
May contain
Note

One of the few elements unconditionally required in any TEI document.

Example
<teiHeader>
 <fileDesc>
  <titleStmt>
   <title>Shakespeare: the first folio (1623) in electronic form</title>
   <author>Shakespeare, William (1564–1616)</author>
   <respStmt>
    <resp>Originally prepared by</resp>
    <name>Trevor Howard-Hill</name>
   </respStmt>
   <respStmt>
    <resp>Revised and edited by</resp>
    <name>Christine Avern-Carr</name>
   </respStmt>
  </titleStmt>
  <publicationStmt>
   <distributor>Oxford Text Archive</distributor>
   <address>
    <addrLine>13 Banbury Road, Oxford OX2 6NN, UK</addrLine>
   </address>
   <idno type="OTA">119</idno>
   <availability>
    <p>Freely available on a non-commercial basis.</p>
   </availability>
   <date when="1968">1968</date>
  </publicationStmt>
  <sourceDesc>
   <bibl>The first folio of Shakespeare, prepared by Charlton Hinman (The Norton Facsimile,
       1968)</bibl>
  </sourceDesc>
 </fileDesc>
 <encodingDesc>
  <projectDesc>
   <p>Originally prepared for use in the production of a series of old-spelling
       concordances in 1968, this text was extensively checked and revised for use during the
       editing of the new Oxford Shakespeare (Wells and Taylor, 1989).</p>
  </projectDesc>
  <editorialDecl>
   <correction>
    <p>Turned letters are silently corrected.</p>
   </correction>
   <normalization>
    <p>Original spelling and typography is retained, except that long s and ligatured
         forms are not encoded.</p>
   </normalization>
  </editorialDecl>
  <refsDecl xml:id="ASLREF">
   <cRefPattern matchPattern="(\S+) ([^.]+)\.(.*)"
    replacementPattern="#xpath(//div1[@n='$1']/div2/[@n='$2']//lb[@n='$3'])">

    <p>A reference is created by assembling the following, in the reverse order as that
         listed here: <list>
      <item>the <att>n</att> value of the preceding <gi>lb</gi>
      </item>
      <item>a period</item>
      <item>the <att>n</att> value of the ancestor <gi>div2</gi>
      </item>
      <item>a space</item>
      <item>the <att>n</att> value of the parent <gi>div1</gi>
      </item>
     </list>
    </p>
   </cRefPattern>
  </refsDecl>
 </encodingDesc>
 <revisionDesc>
  <list>
   <item>
    <date when="1989-04-12">12 Apr 89</date> Last checked by CAC</item>
   <item>
    <date when="1989-03-01">1 Mar 89</date> LB made new file</item>
  </list>
 </revisionDesc>
</teiHeader>
Content model
<content>
 <sequence>
  <elementRef key="fileDesc"/>
  <classRef key="model.teiHeaderPart"
   minOccurs="0maxOccurs="unbounded"/>

  <elementRef key="revisionDesc"
   minOccurs="0"/>

 </sequence>
</content>
Schema Declaration
element teiHeader
{
   att.global.attributes,
   ( fileDesc, model.teiHeaderPart*, revisionDesc? )
}

<term>

<term> (term) contains a single-word, multi-word, or symbolic designation which is regarded as a technical term. [3.4.1. Terms and Glosses]
Modulecore
Attributes
Member of
Contained by
May contain
Note

When this element appears within an index element, it is understood to supply the form under which an index entry is to be made for that location. Elsewhere, it is understood simply to indicate that its content is to be regarded as a technical or specialised term. It may be associated with a gloss element by means of its ref attribute; alternatively a gloss element may point to a term element by means of its target attribute.

In formal terminological work, there is frequently discussion over whether terms must be atomic or may include multi-word lexical items, symbolic designations, or phraseological units. The term element may be used to mark any of these. No position is taken on the philosophical issue of what a term can be; the looser definition simply allows the term element to be used by practitioners of any persuasion.

As with other members of the att.canonical class, instances of this element occuring in a text may be associated with a canonical definition, either by means of a URI (using the ref attribute), or by means of some system-specific code value (using the key attribute). Because the mutually exclusive target and cRef attributes overlap with the function of the ref attribute, they are deprecated and may be removed at a subsequent release.

Example
A computational device that infers structure
from grammatical strings of words is known as a <term>parser</term>, and much of the history
of NLP over the last 20 years has been occupied with the design of parsers.
Example
We may define <term xml:id="TDPV1rend="sc">discoursal point of view</term> as
<gloss target="#TDPV1">the relationship, expressed
through discourse structure, between the implied author or some other addresser, and the
fiction.</gloss>
Example
We may define <term ref="#TDPV2rend="sc">discoursal point of view</term> as
<gloss xml:id="TDPV2">the relationship, expressed
through discourse structure, between the implied author or some other addresser, and the
fiction.</gloss>
Example
We discuss Leech's concept of <term ref="myGlossary.xml#TDPV2rend="sc">discoursal point of view</term> below.
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element term
{
   att.global.attributes,
   att.declaring.attributes,
   att.pointing.attributes,
   att.typed.attributes,
   att.canonical.attributes,
   att.sortable.attributes,
   att.cReferencing.attributes,
   att.cmc.attributes,
   macro.phraseSeq
}

<text>

<text> (text) contains a single text of any kind, whether unitary or composite, for example a poem or drama, a collection of essays, a novel, a dictionary, or a corpus sample. [4. Default Text Structure 16.1. Varieties of Composite Text]
Moduletextstructure
Attributes
Member of
Contained by
core: teiCorpus
textstructure: TEI group
May contain
analysis: interp interpGrp
figures: figure
linking: anchor
textstructure: back body front group
Note

This element should not be used to represent a text which is inserted at an arbitrary point within the structure of another, for example as in an embedded or quoted narrative; the <floatingText> is provided for this purpose.

Example
<text>
 <front>
  <docTitle>
   <titlePart>Autumn Haze</titlePart>
  </docTitle>
 </front>
 <body>
  <l>Is it a dragonfly or a maple leaf</l>
  <l>That settles softly down upon the water?</l>
 </body>
</text>
Example

The body of a text may be replaced by a group of nested texts, as in the following schematic:

<text>
 <front>
<!-- front matter for the whole group -->
 </front>
 <group>
  <text>
<!-- first text -->
  </text>
  <text>
<!-- second text -->
  </text>
 </group>
</text>
Content model
<content>
 <sequence>
  <classRef key="model.global"
   minOccurs="0maxOccurs="unbounded"/>

  <sequence minOccurs="0">
   <elementRef key="front"/>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
  <alternate>
   <elementRef key="body"/>
   <elementRef key="group"/>
  </alternate>
  <classRef key="model.global"
   minOccurs="0maxOccurs="unbounded"/>

  <sequence minOccurs="0">
   <elementRef key="back"/>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
 </sequence>
</content>
Schema Declaration
element text
{
   att.global.attributes,
   att.declaring.attributes,
   att.typed.attributes,
   att.written.attributes,
   (
      model.global*,
      ( ( front, model.global* )? ),
      ( body | group ),
      model.global*,
      ( ( back, model.global* )? )
   )
}

<textClass>

<textClass> (text classification) groups information which describes the nature or topic of a text in terms of a standard classification scheme, thesaurus, etc. [2.4.3. The Text Classification]
Moduleheader
Attributes
Member of
Contained by
header: profileDesc
May contain
Example
<taxonomy>
 <category xml:id="acprose">
  <catDesc>Academic prose</catDesc>
 </category>
<!-- other categories here -->
</taxonomy>
<!-- ... -->
<textClass>
 <catRef target="#acprose"/>
 <classCode scheme="http://www.udcc.org">001.9</classCode>
 <keywords scheme="http://authorities.loc.gov">
  <list>
   <item>End of the world</item>
   <item>History - philosophy</item>
  </list>
 </keywords>
</textClass>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <elementRef key="classCode"/>
  <elementRef key="catRef"/>
  <elementRef key="keywords"/>
 </alternate>
</content>
Schema Declaration
element textClass
{
   att.global.attributes,
   att.declarable.attributes,
   ( classCode | catRef | keywords )*
}

<time>

<time> (time) contains a phrase defining a time of day in any format. [3.6.4. Dates and Times]
Modulecore
Attributes
Member of
Contained by
May contain
Example
As he sat smiling, the
quarter struck — <time when="11:45:00">the quarter to twelve</time>.
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.phrase"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Schema Declaration
element time
{
   att.global.attributes,
   att.datable.attributes,
   att.canonical.attributes,
   att.editLike.attributes,
   att.dimensions.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   ( text | model.gLike | model.phrase | model.global )*
}

<title>

<title> (title) contains a title for any kind of work. [3.12.2.2. Titles, Authors, and Editors 2.2.1. The Title Statement 2.2.5. The Series Statement]
Modulecore
Attributes
typeclassifies the title according to some convenient typology.
Derived fromatt.typed
Status Optional
Datatype teidata.enumerated
Sample values include:
main
main title
sub
(subordinate) subtitle, title of part
alt
(alternate) alternate title, often in another language, by which the work is also known
short
abbreviated form of title
desc
(descriptive) descriptive paraphrase of the work functioning as a title
Note

This attribute is provided for convenience in analysing titles and processing them according to their type; where such specialized processing is not necessary, there is no need for such analysis, and the entire title, including subtitles and any parallel titles, may be enclosed within a single title element.

levelindicates the bibliographic level for a title, that is, whether it identifies an article, book, journal, series, or unpublished material.
Status Optional
Datatype teidata.enumerated
Legal values are:
a
(analytic) the title applies to an analytic item, such as an article, poem, or other work published as part of a larger item.
m
(monographic) the title applies to a monograph such as a book or other item considered to be a distinct publication, including single volumes of multi-volume works
j
(journal) the title applies to any serial or periodical publication such as a journal, magazine, or newspaper
s
(series) the title applies to a series of otherwise distinct publications such as a collection
u
(unpublished) the title applies to any unpublished material (including theses and dissertations unless published by a commercial press)
Note

The level of a title is sometimes implied by its context: for example, a title appearing directly within an <analytic> element is ipso facto of level ‘a’, and one appearing within a <series> element of level ‘s’. For this reason, the level attribute is not required in contexts where its value can be unambiguously inferred. Where it is supplied in such contexts, its value should not contradict the value implied by its parent element.

Member of
Contained by
May contain
Note

The attributes key and ref, inherited from the class att.canonical may be used to indicate the canonical form for the title; the former, by supplying (for example) the identifier of a record in some external library system; the latter by pointing to an XML element somewhere containing the canonical form of the title.

Example
<title>Information Technology and the Research Process: Proceedings of
a conference held at Cranfield Institute of Technology, UK,
18–21 July 1989</title>
Example
<title>Hardy's Tess of the D'Urbervilles: a machine readable
edition</title>
Example
<title type="full">
 <title type="main">Synthèse</title>
 <title type="sub">an international journal for
   epistemology, methodology and history of
   science</title>
</title>
Schematron

<sch:rule context="tei:*[@calendar]">
<sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more
systems or calendars to which the date represented by the content of this element belongs,
but this <sch:name/> element has no textual content.</sch:assert>
</sch:rule>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element title
{
   att.global.attributes,
   att.typed.attribute.subtype,
   att.canonical.attributes,
   att.datable.attributes,
   att.cmc.attributes,
   attribute type { teidata.enumerated }?,
   attribute level { "a" | "m" | "j" | "s" | "u" }?,
   macro.paraContent
}

<titlePage>

<titlePage> (title page) contains the title page of a text, appearing within the front or back matter. [4.6. Title Pages]
Moduletextstructure
Attributes
typeclassifies the title page according to any convenient typology.
Derived fromatt.typed
Status Optional
Datatype teidata.enumerated
Note

This attribute allows the same element to be used for volume title pages, series title pages, etc., as well as for the ‘main’ title page of a work.

Member of
Contained by
textstructure: back front
May contain
Example
<titlePage>
 <docTitle>
  <titlePart type="main">THOMAS OF Reading.</titlePart>
  <titlePart type="alt">OR, The sixe worthy yeomen of the West.</titlePart>
 </docTitle>
 <docEdition>Now the fourth time corrected and enlarged</docEdition>
 <byline>By T.D.</byline>
 <figure>
  <head>TP</head>
  <p>Thou shalt labor till thou returne to duste</p>
  <figDesc>Printers Ornament used by TP</figDesc>
 </figure>
 <docImprint>Printed at <name type="place">London</name> for <name>T.P.</name>
  <date>1612.</date>
 </docImprint>
</titlePage>
Content model
<content>
 <sequence>
  <classRef key="model.global"
   minOccurs="0maxOccurs="unbounded"/>

  <classRef key="model.titlepagePart"/>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.titlepagePart"/>
   <classRef key="model.global"/>
  </alternate>
 </sequence>
</content>
Schema Declaration
element titlePage
{
   att.global.attributes,
   att.typed.attribute.subtype,
   attribute type { teidata.enumerated }?,
   (
      model.global*,
      model.titlepagePart,
      ( model.titlepagePart | model.global )*
   )
}

<titlePart>

<titlePart> (title part) contains a subsection or division of the title of a work, as indicated on a title page. [4.6. Title Pages]
Moduletextstructure
Attributes
type(type) specifies the role of this subdivision of the title.
Derived fromatt.typed
Status Optional
Datatype teidata.enumerated
Suggested values include:
main
(main) main title of the work [Default]
sub
(subordinate) subtitle of the work
alt
(alternate) alternative title of the work
short
(short) abbreviated form of title
desc
(descriptive) descriptive paraphrase of the work
Member of
Contained by
textstructure: back docTitle front titlePage
May contain
Example
<docTitle>
 <titlePart type="main">THE FORTUNES
   AND MISFORTUNES Of the FAMOUS
   Moll Flanders, &amp;c.
 </titlePart>
 <titlePart type="desc">Who was BORN in NEWGATE,
   And during a Life of continu'd Variety for
   Threescore Years, besides her Childhood, was
   Twelve Year a <hi>Whore</hi>, five times a <hi>Wife</hi> (wherof
   once to her own Brother) Twelve Year a <hi>Thief,</hi>
   Eight Year a Transported <hi>Felon</hi> in <hi>Virginia</hi>,
   at last grew <hi>Rich</hi>, liv'd <hi>Honest</hi>, and died a
 <hi>Penitent</hi>.</titlePart>
</docTitle>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element titlePart
{
   att.global.attributes,
   att.typed.attribute.subtype,
   attribute type
   {
      "main" | "sub" | "alt" | "short" | "desc" | teidata.enumerated
   }?,
   macro.paraContent
}

<titleStmt>

<titleStmt> (title statement) groups information about the title of a work and those responsible for its content. [2.2.1. The Title Statement 2.2. The File Description]
Moduleheader
Attributes
Contained by
header: fileDesc
May contain
Example
<titleStmt>
 <title>Capgrave's Life of St. John Norbert: a machine-readable transcription</title>
 <respStmt>
  <resp>compiled by</resp>
  <name>P.J. Lucas</name>
 </respStmt>
</titleStmt>
Content model
<content>
 <sequence>
  <elementRef key="titleminOccurs="1"
   maxOccurs="unbounded"/>

  <classRef key="model.respLike"
   minOccurs="0maxOccurs="unbounded"/>

 </sequence>
</content>
Schema Declaration
element titleStmt { att.global.attributes, ( title+, model.respLike* ) }

<trailer>

<trailer> contains a closing title or footer appearing at the end of a division of a text. [4.2.4. Content of Textual Divisions 4.2. Elements Common to All Divisions]
Moduletextstructure
Attributes
Member of
Contained by
core: lg list
figures: figure table
May contain
Example
<trailer>Explicit pars tertia</trailer>
Example
<trailer>
 <l>In stead of FINIS this advice <hi>I</hi> send,</l>
 <l>Let Rogues and Thieves beware of <lb/>
  <hi>Hamans</hi> END.</l>
</trailer>

From EEBO A87070

Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <elementRef key="lg"/>
  <classRef key="model.gLike"/>
  <classRef key="model.phrase"/>
  <classRef key="model.inter"/>
  <classRef key="model.lLike"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Schema Declaration
element trailer
{
   att.global.attributes,
   att.typed.attributes,
   att.placement.attributes,
   att.written.attributes,
   att.cmc.attributes,
   (
      text
    | lgmodel.gLikemodel.phrasemodel.intermodel.lLikemodel.global
   )*
}

<unclear>

<unclear> (unclear) contains a word, phrase, or passage which cannot be transcribed with certainty because it is illegible or inaudible in the source. [12.3.3.1. Damage, Illegibility, and Supplied Text 3.5.3. Additions, Deletions, and Omissions]
Modulecore
Attributes
reasonindicates why the material is hard to transcribe.
Status Optional
Datatype 1–∞ occurrences of teidata.enumerated separated by whitespace
Suggested values include:
illegible
(illegible)
inaudible
(inaudible)
faded
(faded)
background_noise
(background noise)
eccentric_ductus
(eccentric ductus) indicates illegibility due to an unusual, awkward, or incompetent execution of a glyph or glyphs
<div>
 <head>Rx</head>
 <p>500 mg <unclear reason="illegible">placebo</unclear>
 </p>
</div>
Note

One or more words may be used to describe the reason; usually each word will refer to a single cause.

agentWhere the difficulty in transcription arises from damage, categorizes the cause of the damage, if it can be identified.
Status Optional
Datatype teidata.enumerated
Sample values include:
rubbing
damage results from rubbing of the leaf edges
mildew
damage results from mildew on the leaf surface
smoke
damage results from smoke
Member of
Contained by
May contain
Note

The same element is used for all cases of uncertainty in the transcription of element content, whether for written or spoken material. For other aspects of certainty, uncertainty, and reliability of tagging and transcription, see chapter 22. Certainty, Precision, and Responsibility.

The <damage>, gap, del, unclear and <supplied> elements may be closely allied in use. See section 12.3.3.2. Use of the gap, del, damage, unclear, and supplied Elements in Combination for discussion of which element is appropriate for which circumstance.

The hand attribute points to a definition of the hand concerned, as further discussed in section 12.3.2.1. Document Hands.

Example
<u> ...and then <unclear reason="background-noise">Nathalie</unclear> said ... </u>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element unclear
{
   att.global.attributes,
   att.editLike.attributes,
   att.dimensions.attributes,
   att.cmc.attributes,
   attribute reason
   {
      list
      {
         (
            "illegible"
          | "inaudible"
          | "faded"
          | "background_noise"
          | "eccentric_ductus"
          | teidata.enumerated
         )+
      }
   }?,
   attribute agent { teidata.enumerated }?,
   macro.paraContent
}

<val>

<val> (value) contains a single attribute value. [23. Documentation Elements 23.5.3. Attribute List Specification]
Moduletagdocs
Attributes
Member of
Contained by
May containCharacter data only
Example
<val>unknown</val>
Content model
<content>
 <textNode/>
</content>
Schema Declaration
element val { att.global.attributes, text }

<w>

<w> (word) represents a grammatical (not necessarily orthographic) word. [18.1. Linguistic Segment Categories 18.4.2. Lightweight Linguistic Annotation]
Moduleanalysis
Attributes
Member of
Contained by
May contain
analysis: interp interpGrp pc w
figures: figure
linking: anchor seg
character data
Example

This example is adapted from the Folger Library’s Early Modern English Drama version of The Wits: a Comedy by William Davenant.

<l>
 <w lemma="itpos="pn"
  xml:id="A19883-003-a-0100">
IT</w>
 <w lemma="havepos="vvz"
  xml:id="A19883-003-a-0110">
hath</w>
 <w lemma="bepos="vvn"
  xml:id="A19883-003-a-0120">
been</w>
 <w lemma="saypos="vvn"
  xml:id="A19883-003-a-0130">
said</w>
 <w lemma="ofpos="acp-p"
  xml:id="A19883-003-a-0140">
of</w>
 <w lemma="oldpos="j"
  xml:id="A19883-003-a-0150">
old</w>
 <pc xml:id="A19883-003-a-0160">,</pc>
 <w lemma="thatpos="cs"
  xml:id="A19883-003-a-0170">
that</w>
 <w lemma="playpos="vvz"
  xml:id="A19883-003-a-0180">

  <choice>
   <orig>Playes</orig>
   <reg>Plays</reg>
  </choice>
 </w>
 <w lemma="bepos="vvb"
  xml:id="A19883-003-a-0190">
are</w>
 <w lemma="feastpos="n2"
  xml:id="A19883-003-a-0200">
Feasts</w>
 <pc xml:id="A19883-003-a-0210">,</pc>
</l>
<l xml:id="A19883-e100220">
 <w lemma="poetpos="n2"
  xml:id="A19883-003-a-0220">
Poets</w>
 <w lemma="thepos="d"
  xml:id="A19883-003-a-0230">
the</w>
 <w lemma="cookpos="n2"
  xml:id="A19883-003-a-0240">

  <choice>
   <orig>Cookes</orig>
   <reg>Cooks</reg>
  </choice>
 </w>
 <pc xml:id="A19883-003-a-0250">,</pc>
 <w lemma="andpos="cc"
  xml:id="A19883-003-a-0260">
and</w>
 <w lemma="thepos="d"
  xml:id="A19883-003-a-0270">
the</w>
 <w lemma="spectatorpos="n2"
  xml:id="A19883-003-a-0280">
Spectators</w>
 <w lemma="guestpos="n2"
  xml:id="A19883-003-a-0290">
Guests</w>
 <pc xml:id="A19883-003-a-0300">,</pc>
</l>
<l xml:id="A19883-e100230">
 <w lemma="thepos="d"
  xml:id="A19883-003-a-0310">
The</w>
 <w lemma="actorpos="n2"
  xml:id="A19883-003-a-0320">
Actors</w>
 <w lemma="waiterpos="n2"
  xml:id="A19883-003-a-0330">
Waiters</w>
 <pc xml:id="A19883-003-a-0340">:</pc>
<!-- ... -->
</l>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <elementRef key="seg"/>
  <elementRef key="w"/>
  <elementRef key="m"/>
  <elementRef key="c"/>
  <elementRef key="pc"/>
  <classRef key="model.global"/>
  <classRef key="model.lPart"/>
  <classRef key="model.hiLike"/>
  <classRef key="model.pPart.edit"/>
 </alternate>
</content>
Schema Declaration
element w
{
   att.global.attributes,
   att.segLike.attributes,
   att.typed.attributes,
   att.linguistic.attributes,
   att.notated.attributes,
   att.cmc.attributes,
   (
      text
    | model.gLikesegw
    | m
    | c
    | pcmodel.globalmodel.lPartmodel.hiLikemodel.pPart.edit
   )*
}

Schema tei_lite: Model classes

model.addressLike

model.addressLike groups elements used to represent a postal or email address. [1. The TEI Infrastructure]
Moduletei
Used by
Membersaddress

model.addrPart

model.addrPart groups elements such as names or postal codes which may appear as part of a postal address. [3.6.2. Addresses]
Moduletei
Used by
Membersmodel.nameLike [model.nameLike.agent [name] model.offsetLike model.placeStateLike [model.placeNamePart] idno rs] addrLine

model.attributable

model.attributable groups elements that contain a word or phrase that can be attributed to a source. [3.3.3. Quotation 4.3.2. Floating Texts]
Moduletei
Used by
Membersmodel.quoteLike [cit]

model.availabilityPart

model.availabilityPart groups elements such as licences and paragraphs of text which may appear as part of an availability statement [2.2.4. Publication, Distribution, Licensing, etc.]
Moduletei
Used by
Memberslicence

model.biblLike

model.biblLike groups elements containing a bibliographic description. [3.12. Bibliographic Citations and References]
Moduletei
Used by
Membersbibl listBibl

model.biblPart

model.biblPart groups elements which represent components of a bibliographic description. [3.12. Bibliographic Citations and References]
Moduletei
Used by
Membersmodel.imprintPart [biblScope distributor pubPlace publisher] model.respLike [author editor funder principal respStmt sponsor] availability bibl edition extent relatedItem

model.choicePart

model.choicePart groups elements (other than choice itself) which can be used within a choice alternation. [3.5. Simple Editorial Changes]
Moduletei
Used by
Membersabbr corr expan orig reg seg sic unclear

model.common

model.common groups common chunk- and inter-level elements. [1.3. The TEI Class System]
Moduletei
Used by
Membersmodel.cmc model.divPart [model.lLike [l] model.pLike [p] lg sp] model.inter [model.attributable [model.quoteLike [cit] ] model.biblLike [bibl listBibl] model.egLike [eg] model.labelLike [desc label] model.listLike [list table] model.oddDecl model.stageLike [stage] ] q
Note

This class defines the set of chunk- and inter-level elements; it is used in many content models, including those for textual divisions.

model.dateLike

model.dateLike groups elements containing temporal expressions. [3.6.4. Dates and Times 14.4. Dates]
Moduletei
Used by
Membersdate time

model.descLike

model.descLike groups elements which contain a description of their function.
Moduletei
Used by
Membersdesc

model.describedResource

model.describedResource groups elements which contain the content of a digital resource and its metadata; these elements may serve as the outermost or ‘root’ element of a TEI-conformant document [1.3. The TEI Class System]
Moduletei
Used by
MembersTEI teiCorpus

model.divBottom

model.divBottom groups elements appearing at the end of a text division. [4.2. Elements Common to All Divisions]
Moduletei
Used by
Membersmodel.divBottomPart [closer postscript signed trailer] model.divWrapper [argument byline dateline docAuthor docDate epigraph salute]

model.divBottomPart

model.divBottomPart groups elements which can occur only at the end of a text division. [4.6. Title Pages]
Moduletei
Used by
Memberscloser postscript signed trailer

model.divGenLike

model.divGenLike groups elements used to represent a structural division which is generated rather than explicitly present in the source.
Moduletei
Used by
MembersdivGen

model.divLike

model.divLike groups elements used to represent un-numbered generic structural divisions.
Moduletei
Used by
Membersdiv

model.divPart

model.divPart groups paragraph-level elements appearing directly within divisions. [1.3. The TEI Class System]
Moduletei
Used by
Membersmodel.lLike [l] model.pLike [p] lg sp
Note

Note that this element class does not include members of the model.inter class, which can appear either within or between paragraph-level items.

model.divTop

model.divTop groups elements appearing at the beginning of a text division. [4.2. Elements Common to All Divisions]
Moduletei
Used by
Membersmodel.divTopPart [model.headLike [head] opener signed] model.divWrapper [argument byline dateline docAuthor docDate epigraph salute]

model.divTopPart

model.divTopPart groups elements which can occur only at the beginning of a text division. [4.6. Title Pages]
Moduletei
Used by
Membersmodel.headLike [head] opener signed

model.divWrapper

model.divWrapper groups elements which can appear at either top or bottom of a textual division. [4.2. Elements Common to All Divisions]
Moduletei
Used by
Membersargument byline dateline docAuthor docDate epigraph salute

model.egLike

model.egLike groups elements containing examples or illustrations. [23.1.1. Phrase Level Terms]
Moduletei
Used by
Memberseg

model.emphLike

model.emphLike groups phrase-level elements which are typographically distinct and to which a specific function can be attributed. [3.3. Highlighting and Quotation]
Moduletei
Used by
Memberscode emph foreign gloss ident mentioned soCalled term title

model.encodingDescPart

model.encodingDescPart groups elements which may be used inside encodingDesc and appear multiple times.
Moduletei
Used by
MembersclassDecl editorialDecl projectDesc refsDecl samplingDecl

model.frontPart

model.frontPart groups elements which appear at the level of divisions within front or back matter. [7.1. Front and Back Matter ]
Moduletei
Used by
Membersmodel.frontPart.drama divGen listBibl titlePage

model.global

model.global groups elements which may appear at any point within a TEI text. [1.3. The TEI Class System]
Moduletei
Used by
Membersmodel.global.edit [gap] model.global.meta [index interp interpGrp] model.milestoneLike [anchor lb milestone pb] model.noteLike [note] figure

model.global.edit

model.global.edit groups globally available elements which perform a specifically editorial function. [1.3. The TEI Class System]
Moduletei
Used by
Membersgap

model.global.meta

model.global.meta groups globally available elements which describe the status of other elements. [1.3. The TEI Class System]
Moduletei
Used by
Membersindex interp interpGrp
Note

Elements in this class are typically used to hold groups of links or of abstract interpretations, or by provide indications of certainty etc. It may find be convenient to localize all metadata elements, for example to contain them within the same divison as the elements that they relate to; or to locate them all to a division of their own. They may however appear at any point in a TEI text.

model.graphicLike

model.graphicLike groups elements containing images, formulae, and similar objects. [3.10. Graphics and Other Non-textual Components]
Moduletei
Used by
Membersformula graphic

model.headLike

model.headLike groups elements used to provide a title or heading at the start of a text division.
Moduletei
Used by
Membershead

model.highlighted

model.highlighted groups phrase-level elements which are typographically distinct. [3.3. Highlighting and Quotation]
Moduletei
Used by
Membersmodel.emphLike [code emph foreign gloss ident mentioned soCalled term title] model.hiLike [hi q]

model.hiLike

model.hiLike groups phrase-level elements which are typographically distinct but to which no specific function can be attributed. [3.3. Highlighting and Quotation]
Moduletei
Used by
Membershi q

model.imprintPart

model.imprintPart groups the bibliographic elements which occur inside imprints. [3.12. Bibliographic Citations and References]
Moduletei
Used by
MembersbiblScope distributor pubPlace publisher

model.inter

model.inter groups elements which can appear either within or between paragraph-like elements. [1.3. The TEI Class System]
Moduletei
Used by
Membersmodel.attributable [model.quoteLike [cit] ] model.biblLike [bibl listBibl] model.egLike [eg] model.labelLike [desc label] model.listLike [list table] model.oddDecl model.stageLike [stage]

model.labelLike

model.labelLike groups elements used to gloss or explain other parts of a document.
Moduletei
Used by
Membersdesc label

model.limitedPhrase

model.limitedPhrase groups phrase-level elements excluding those elements primarily intended for transcription of existing sources. [1.3. The TEI Class System]
Moduletei
Used by
Membersmodel.emphLike [code emph foreign gloss ident mentioned soCalled term title] model.hiLike [hi q] model.pPart.data [model.addressLike [address] model.dateLike [date time] model.measureLike [num] model.nameLike [model.nameLike.agent [name] model.offsetLike model.placeStateLike [model.placeNamePart] idno rs] ] model.pPart.editorial [abbr choice expan] model.pPart.msdesc model.phrase.xml [att gi val] model.ptrLike [ptr ref]

model.listLike

model.listLike groups list-like elements. [3.8. Lists]
Moduletei
Used by
Memberslist table

model.lLike

model.lLike groups elements representing metrical components such as verse lines.
Moduletei
Used by
Membersl

model.measureLike

model.measureLike groups elements which denote a number, a quantity, a measurement, or similar piece of text that conveys some numerical meaning. [3.6.3. Numbers and Measures]
Moduletei
Used by
Membersnum

model.milestoneLike

model.milestoneLike groups milestone-style elements used to represent reference systems. [1.3. The TEI Class System 3.11.3. Milestone Elements]
Moduletei
Used by
Membersanchor lb milestone pb

model.nameLike

model.nameLike groups elements which name or refer to a person, place, or organization.
Moduletei
Used by
Membersmodel.nameLike.agent [name] model.offsetLike model.placeStateLike [model.placeNamePart] idno rs
Note

A superset of the naming elements that may appear in datelines, addresses, statements of responsibility, etc.

model.nameLike.agent

model.nameLike.agent groups elements which contain names of individuals or corporate bodies. [3.6. Names, Numbers, Dates, Abbreviations, and Addresses]
Moduletei
Used by
Membersname
Note

This class is used in the content model of elements which reference names of people or organizations.

model.noteLike

model.noteLike groups globally-available note-like elements. [3.9. Notes, Annotation, and Indexing]
Moduletei
Used by
Membersnote

model.paraPart

model.paraPart groups elements that may appear in paragraphs and similar elements [3.1. Paragraphs]
Moduletei
Used by
Membersmodel.gLike model.global [model.global.edit [gap] model.global.meta [index interp interpGrp] model.milestoneLike [anchor lb milestone pb] model.noteLike [note] figure] model.inter [model.attributable [model.quoteLike [cit] ] model.biblLike [bibl listBibl] model.egLike [eg] model.labelLike [desc label] model.listLike [list table] model.oddDecl model.stageLike [stage] ] model.lLike [l] model.phrase [model.graphicLike [formula graphic] model.highlighted [model.emphLike [code emph foreign gloss ident mentioned soCalled term title] model.hiLike [hi q] ] model.lPart model.pPart.data [model.addressLike [address] model.dateLike [date time] model.measureLike [num] model.nameLike [model.nameLike.agent [name] model.offsetLike model.placeStateLike [model.placeNamePart] idno rs] ] model.pPart.edit [model.pPart.editorial [abbr choice expan] model.pPart.transcriptional [add corr del orig reg sic unclear] ] model.pPart.msdesc model.phrase.xml [att gi val] model.ptrLike [ptr ref] model.segLike [pc s seg w] model.specDescLike] lg

model.phrase

model.phrase groups elements which can occur at the level of individual words or phrases. [1.3. The TEI Class System]
Moduletei
Used by
Membersmodel.graphicLike [formula graphic] model.highlighted [model.emphLike [code emph foreign gloss ident mentioned soCalled term title] model.hiLike [hi q] ] model.lPart model.pPart.data [model.addressLike [address] model.dateLike [date time] model.measureLike [num] model.nameLike [model.nameLike.agent [name] model.offsetLike model.placeStateLike [model.placeNamePart] idno rs] ] model.pPart.edit [model.pPart.editorial [abbr choice expan] model.pPart.transcriptional [add corr del orig reg sic unclear] ] model.pPart.msdesc model.phrase.xml [att gi val] model.ptrLike [ptr ref] model.segLike [pc s seg w] model.specDescLike
Note

This class of elements can occur within paragraphs, list items, lines of verse, etc.

model.phrase.xml

model.phrase.xml groups phrase-level elements used to encode XML constructs such as element names, attribute names, and attribute values [23. Documentation Elements]
Moduletei
Used by
Membersatt gi val

model.placeStateLike

model.placeStateLike groups elements which describe changing states of a place.
Moduletei
Used by
Membersmodel.placeNamePart

model.pLike

model.pLike groups paragraph-like elements.
Moduletei
Used by
Membersp

model.pLike.front

model.pLike.front groups paragraph-like elements which can occur as direct constituents of front matter. [4.6. Title Pages]
Moduletei
Used by
Membersargument byline dateline docAuthor docDate docEdition docImprint docTitle epigraph head titlePart

model.pPart.data

model.pPart.data groups phrase-level elements containing names, dates, numbers, measures, and similar data. [3.6. Names, Numbers, Dates, Abbreviations, and Addresses]
Moduletei
Used by
Membersmodel.addressLike [address] model.dateLike [date time] model.measureLike [num] model.nameLike [model.nameLike.agent [name] model.offsetLike model.placeStateLike [model.placeNamePart] idno rs]

model.pPart.edit

model.pPart.edit groups phrase-level elements for simple editorial correction and transcription. [3.5. Simple Editorial Changes]
Moduletei
Used by
Membersmodel.pPart.editorial [abbr choice expan] model.pPart.transcriptional [add corr del orig reg sic unclear]

model.pPart.editorial

model.pPart.editorial groups phrase-level elements for simple editorial interventions that may be useful both in transcribing and in authoring. [3.5. Simple Editorial Changes]
Moduletei
Used by
Membersabbr choice expan

model.pPart.transcriptional

model.pPart.transcriptional groups phrase-level elements used for editorial transcription of pre-existing source materials. [3.5. Simple Editorial Changes]
Moduletei
Used by
Membersadd corr del orig reg sic unclear

model.profileDescPart

model.profileDescPart groups elements which may be used inside profileDesc and appear multiple times.
Moduletei
Used by
Memberscreation langUsage textClass

model.ptrLike

model.ptrLike groups elements used for purposes of location and reference. [3.7. Simple Links and Cross-References]
Moduletei
Used by
Membersptr ref

model.publicationStmtPart.agency

model.publicationStmtPart.agency groups the child elements of a publicationStmt element of the TEI header that indicate an authorising agent. [2.2.4. Publication, Distribution, Licensing, etc.]
Moduletei
Used by
Membersauthority distributor publisher
Note

The ‘agency’ child elements, while not required, are required if one of the ‘detail’ child elements is to be used. It is not valid to have a ‘detail’ child element without a preceding ‘agency’ child element.

See also model.publicationStmtPart.detail.

model.publicationStmtPart.detail

model.publicationStmtPart.detail groups the agency-specific child elements of the publicationStmt element of the TEI header. [2.2.4. Publication, Distribution, Licensing, etc.]
Moduletei
Used by
Membersmodel.ptrLike [ptr ref] address availability date idno pubPlace
Note

A ‘detail’ child element may not occur unless an ‘agency’ child element precedes it.

See also model.publicationStmtPart.agency.

model.quoteLike

model.quoteLike groups elements used to directly contain quotations.
Moduletei
Used by
Memberscit

model.resource

model.resource groups separate elements which constitute the content of a digital resource, as opposed to its metadata. [1.3. The TEI Class System]
Moduletei
Used by
Memberstext

model.respLike

model.respLike groups elements which are used to indicate intellectual or other significant responsibility, for example within a bibliographic element.
Moduletei
Used by
Membersauthor editor funder principal respStmt sponsor

model.segLike

model.segLike groups elements used for arbitrary segmentation. [17.3. Blocks, Segments, and Anchors 18.1. Linguistic Segment Categories]
Moduletei
Used by
Memberspc s seg w
Note

The principles on which segmentation is carried out, and any special codes or attribute values used, should be defined explicitly in the <segmentation> element of the encodingDesc within the associated TEI header.

model.stageLike

model.stageLike groups elements containing stage directions or similar things defined by the module for performance texts. [7.3. Other Types of Performance Text]
Moduletei
Used by
Membersstage
Note

Stage directions are members of class inter: that is, they can appear between or within component-level elements.

model.teiHeaderPart

model.teiHeaderPart groups high level elements which may appear more than once in a TEI header.
Moduletei
Used by
MembersencodingDesc profileDesc

model.titlepagePart

model.titlepagePart groups elements which can occur as direct constituents of a title page, such as docTitle, docAuthor, docImprint, or epigraph. [4.6. Title Pages]
Moduletei
Used by
Membersargument byline docAuthor docDate docEdition docImprint docTitle epigraph graphic imprimatur titlePart

Schema tei_lite: Attribute classes

att.anchoring

att.anchoring (anchoring) provides attributes for use on annotations, e.g. notes and groups of notes describing the existence and position of an anchor for annotations.
Moduletei
Membersnote
Attributes
anchored(anchored) indicates whether the copy text shows the exact place of reference for the note.
Status Optional
Datatype teidata.truthValue
Default true
Note

In modern texts, notes are usually anchored by means of explicit footnote or endnote symbols. An explicit indication of the phrase or line annotated may however be used instead (e.g. ‘page 218, lines 3–4’). The anchored attribute indicates whether any explicit location is given, whether by symbol or by prose cross-reference. The value true indicates that such an explicit location is indicated in the copy text; the value false indicates that the copy text does not indicate a specific place of attachment for the note. If the specific symbols used in the copy text at the location the note is anchored are to be recorded, use the n attribute.

targetEnd(target end) points to the end of the span to which the note is attached, if the note is not embedded in the text at that point.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
Note

This attribute is retained for backwards compatibility; it may be removed at a subsequent release of the Guidelines. The recommended way of pointing to a span of elements is by means of the range function of XPointer, as further described in 17.2.4.6. range().

Example
<p>(...) tamen reuerendos dominos archiepiscopum et canonicos Leopolienses
necnon episcopum in duplicibus Quatuortemporibus<anchor xml:id="A55234"/> totaliter expediui...</p>
<!-- elsewhere in the document -->
<noteGrp targetEnd="#A55234">
 <note xml:lang="en"> Quatuor Tempora, so called dry fast days.
 </note>
 <note xml:lang="pl"> Quatuor Tempora, tzw. Suche dni postne.
 </note>
</noteGrp>

att.ascribed

att.ascribed provides attributes for elements representing speech or action that can be ascribed to a specific individual. [3.3.3. Quotation 8.3. Elements Unique to Spoken Texts]
Moduletei
Membersatt.ascribed.directed [q sp stage] change
Attributes
whoindicates the person, or group of people, to whom the element content is ascribed.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace

In the following example from Hamlet, speeches (sp) in the body of the play are linked to <role> elements in the <castList> using the who attribute.

<castItem type="role">
 <role xml:id="Barnardo">Bernardo</role>
</castItem>
<castItem type="role">
 <role xml:id="Francisco">Francisco</role>
 <roleDesc>a soldier</roleDesc>
</castItem>
<!-- ... -->
<sp who="#Barnardo">
 <speaker>Bernardo</speaker>
 <l n="1">Who's there?</l>
</sp>
<sp who="#Francisco">
 <speaker>Francisco</speaker>
 <l n="2">Nay, answer me: stand, and unfold yourself.</l>
</sp>
Note

For transcribed speech, this will typically identify a participant or participant group; in other contexts, it will point to any identified <person> element.

att.ascribed.directed

att.ascribed.directed provides attributes for elements representing speech or action that can be directed at a group or individual. [3.3.3. Quotation 8.3. Elements Unique to Spoken Texts]
Moduletei
Membersq sp stage
Attributes
toWhomindicates the person, or group of people, to whom a speech act or action is directed.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace

In the following example from Mary Pix's The False Friend, speeches (sp) in the body of the play are linked to <castItem> elements in the <castList> using the toWhom attribute, which is used to specify who the speech is directed to. Additionally, the stage includes toWhom to indicate the directionality of the action.

<castItem type="role">
 <role xml:id="emil">Emilius.</role>
</castItem>
<castItem type="role">
 <role xml:id="lov">Lovisa</role>
</castItem>
<castItem type="role">
 <role xml:id="serv">A servant</role>
</castItem>
<!-- ... -->
<sp who="#emiltoWhom="#lov">
 <speaker>Emil.</speaker>
 <l n="1">My love!</l>
</sp>
<sp who="#lovtoWhom="#emil">
 <speaker>Lov.</speaker>
 <l n="2">I have no Witness of my Noble Birth</l>
 <stage who="emiltoWhom="#serv">Pointing to her Woman.</stage>
 <l>But that poor helpless wretch——</l>
</sp>
Note

To indicate the recipient of written correspondence, use the elements used in section 2.4.6. Correspondence Description, rather than a toWhom attribute.

att.breaking

att.breaking provides attributes to indicate whether or not the element concerned is considered to mark the end of an orthographic token in the same way as whitespace. [3.11.3. Milestone Elements]
Moduletei
Memberslb milestone pb
Attributes
breakindicates whether or not the element bearing this attribute should be considered to mark the end of an orthographic token in the same way as whitespace.
Status Recommended
Datatype teidata.enumerated
Sample values include
yes
the element bearing this attribute is considered to mark the end of any adjacent orthographic token irrespective of the presence of any adjacent whitespace
no
the element bearing this attribute is considered not to mark the end of any adjacent orthographic token irrespective of the presence of any adjacent whitespace
maybe
the encoding does not take any position on this issue.

In the following lines from the Dream of the Rood, linebreaks occur in the middle of the words lāðost and reord-berendum.

<ab> ...eƿesa tome iu icƿæs ȝeƿorden ƿita heardoſt .
leodum la<lb break="no"/> ðost ærþan ichim lifes
ƿeȝ rihtne ȝerymde reord be<lb break="no"/>
rendum hƿæt me þaȝeƿeorðode ƿuldres ealdor ofer...
</ab>

att.canonical

att.canonical provides attributes that can be used to associate a representation such as a name or title with canonical information about the object being named or referenced. [14.1.1. Linking Names and Their Referents]
Moduletei
Membersatt.naming [att.personal [name] author editor pubPlace rs] authority catDesc date distributor docAuthor docTitle funder principal publisher resp respStmt sponsor term time title
Attributes
keyprovides an externally-defined means of identifying the entity (or entities) being named, using a coded value of some kind.
Status Optional
Datatype teidata.text
<author>
 <name key="Hugo, Victor (1802-1885)"
  ref="http://www.idref.fr/026927608">
Victor Hugo</name>
</author>
Note

The value may be a unique identifier from a database, or any other externally-defined string identifying the referent. No particular syntax is proposed for the values of the key attribute, since its form will depend entirely on practice within a given project.

ref(reference) provides an explicit means of locating a full definition or identity for the entity being named by means of one or more URIs.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
<name ref="http://viaf.org/viaf/109557338"
 type="person">
Seamus Heaney</name>
Note

The value must point directly to one or more XML elements or other resources by means of one or more URIs, separated by whitespace. If more than one is supplied the implication is that the name identifies several distinct entities.

Example

In this contrived example, a canonical reference to the same organisation is provided in four different ways.

<author n="1">
 <name ref="http://nzetc.victoria.ac.nz/tm/scholarly/name-427308.html"
  type="organisation">
New Zealand Parliament, Legislative Council</name>
</author>
 
<author n="2">
 <name ref="nzvn:427308"
  type="organisation">
New Zealand Parliament, Legislative Council</name>
</author>
 
<author n="3">
 <name ref="./named_entities.xml#o427308"
  type="organisation">
New Zealand Parliament, Legislative Council</name>
</author>
 

<author n="4">
 <name key="name-427308"
  type="organisation">
New Zealand Parliament, Legislative Council</name>
</author>

The first presumes the availability of an internet connection and a processor that can resolve a URI (most can). The second requires, in addition, a <prefixDef> that declares how the nzvm prefix should be interpreted. The third does not require an internet connection, but does require that a file named named_entities.xml be in the same directory as the TEI document. The fourth requires that an entire external system for key resolution be available.

Note

The key attribute is more flexible and general-purpose, but its use in interchange requires that documentation about how the key is to be resolved be sent to the recipient of the TEI document. In contrast values of the ref attribute are resolved using the widely accepted protocols for a URI, and thus less documentation, if any, is likely required by the recipient in data interchange.

These guidelines provide no semantic basis or suggested precedence when both key and ref are provided. For this reason simultaneous use of both is not recommended unless documentation explaining the use is provided, probably in an ODD customizaiton, for interchange.

att.citing

att.citing provides attributes for specifying the specific part of a bibliographic item being cited. [1.3.1. Attribute Classes]
Moduletei
MembersbiblScope
Attributes
unitidentifies the unit of information conveyed by the element, e.g. columns, pages, volume, entry.
Status Optional
Datatype teidata.enumerated
Suggested values include:
volume
(volume) the element contains a volume number.
issue
the element contains an issue number, or volume and issue numbers.
page
(page) the element contains a page number or page range.
line
the element contains a line number or line range.
chapter
(chapter) the element contains a chapter indication (number and/or title)
part
the element identifies a part of a book or collection.
column
the element identifies a column.
entry
the element identifies an entry number or label in a list of entries.
fromspecifies the starting point of the range of units indicated by the unit attribute.
Status Optional
Datatype teidata.word
tospecifies the end-point of the range of units indicated by the unit attribute.
Status Optional
Datatype teidata.word

att.cmc

att.cmc (computer-mediated communication) provides attributes categorizing how the element content was created in a CMC environment.
Moduletei
Membersabbr add address anchor argument bibl byline choice cit closer corr date dateline del desc docAuthor docDate emph epigraph expan figure foreign formula gap gloss graphic head hi idno index interp interpGrp l label lb lg list listBibl mentioned milestone name note num opener orig p pb pc postscript ptr q ref reg rs s salute seg sic signed soCalled stage table term time title trailer unclear w
Attributes
generatedBy(generated by) categorizes how the content of an element was generated in a CMC environment.
Status Optional
Datatype teidata.enumerated
Schematron

<sch:rule context="tei:*[@generatedBy]">
<sch:assert test="ancestor-or-self::tei:post">The @generatedBy attribute is for use within a <post> element.</sch:assert>
</sch:rule>
Suggested values include:
human
the content was ‘naturally’ typed or spoken by a human user
template
the content was generated after a human user activated a template for its insertion
system
the content was generated by the system, i.e. the CMC environment
bot
the content was generated by a bot, i.e. a non-human agent, typically one that is not part of the CMC environment itself
unspecified
the content was generated by an unknown or unspecified process

automatic system message in chat: user moves on to another chatroom

<post type="eventgeneratedBy="system"
 who="#systemrend="color:blue">

 <p>
  <name type="nicknamecorresp="#A02">McMike</name> geht
   in einen anderen Raum: <name type="roomname">Kreuzfahrt</name>
 </p>
</post>

automatic system message in chat: user enters a chatroom

<post type="eventgeneratedBy="system">
 <p>
  <name type="nicknamecorresp="#A08">c_bo</name> betritt
   den Raum. </p>
</post>

automatic system message in chat: user changes his font color

<post type="eventgeneratedBy="system"
 rend="color:red">

 <p>
  <name type="nicknamecorresp="#A08">c_bo</name> hat die
   Farbe gewechselt.
 </p>
</post>

An automatic signature of user including an automatic timestamp (Wikipedia discussion, anonymized). The specification of generatedBy at the inner element signed is meant to override the specification at the outer element <post>. This is generally possible when the outer generatedBy value is "human".

<post type="standardgeneratedBy="human"
 indentLevel="2synch="#t00394407who="#WU00005582">

 <p> Kurze Nachfrage: Die Hieros für den Goldnamen stammen
   auch von Beckerath gem. Literatur ? Grüße --</p>
 <signed generatedBy="template"
  rend="inline">

  <gap reason="signatureContent"/>
  <time generatedBy="template">18:50, 22. Okt. 2008 (CEST)</time>
 </signed>
</post>

Wikipedia talk page: user signature

<post type="writtengeneratedBy="human">
<!-- ... main content of posting ... -->
 <signed generatedBy="template">
  <gap reason="signatureContent"/>
  <time generatedBy="template">12:01, 12. Jun. 2009 (CEST)</time>
 </signed>
</post>

att.cReferencing

att.cReferencing provides attributes that may be used to supply a canonical reference as a means of identifying the target of a pointer.
Moduletei
Membersgloss ptr ref term
Attributes
cRef(canonical reference) specifies the destination of the pointer by supplying a canonical reference expressed using the scheme defined in a refsDecl element in the TEI header
Status Optional
Datatype teidata.text
Note

The value of cRef should be constructed so that when the algorithm for the resolution of canonical references (described in section 17.2.5. Canonical References) is applied to it the result is a valid URI reference to the intended target.

The refsDecl to use may be indicated with the decls attribute.

Currently these Guidelines only provide for a single canonical reference to be encoded on any given ptr element.

att.datable

att.datable provides attributes for normalization of elements that contain dates, times, or datable events. [3.6.4. Dates and Times 14.4. Dates]
Moduletei
Membersauthor change creation date docDate editor funder idno licence name principal resp sponsor time title
Attributes
periodsupplies pointers to one or more definitions of named periods of time (typically categorys, dates or <event>s) within which the datable item is understood to have occurred.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
Note

This ‘superclass’ provides attributes that can be used to provide normalized values of temporal information. By default, the attributes from the att.datable.w3c class are provided. If the module for names & dates is loaded, this class also provides attributes from the att.datable.iso and att.datable.custom classes. In general, the possible values of attributes restricted to the W3C datatypes form a subset of those values available via the ISO 8601 standard. However, the greater expressiveness of the ISO datatypes may not be needed, and there exists much greater software support for the W3C datatypes.

att.datable.w3c

att.datable.w3c provides attributes for normalization of elements that contain datable events conforming to the W3C XML Schema Part 2: Datatypes Second Edition. [3.6.4. Dates and Times 14.4. Dates]
Moduletei
Membersatt.datable [author change creation date docDate editor funder idno licence name principal resp sponsor time title]
Attributes
whensupplies the value of the date or time in a standard form, e.g. yyyy-mm-dd.
Status Optional
Datatype teidata.temporal.w3c

Examples of W3C date, time, and date & time formats.

<p>
 <date when="1945-10-24">24 Oct 45</date>
 <date when="1996-09-24T07:25:00Z">September 24th, 1996 at 3:25 in the morning</date>
 <time when="1999-01-04T20:42:00-05:00">Jan 4 1999 at 8 pm</time>
 <time when="14:12:38">fourteen twelve and 38 seconds</time>
 <date when="1962-10">October of 1962</date>
 <date when="--06-12">June 12th</date>
 <date when="---01">the first of the month</date>
 <date when="--08">August</date>
 <date when="2006">MMVI</date>
 <date when="0056">AD 56</date>
 <date when="-0056">56 BC</date>
</p>
This list begins in
the year 1632, more precisely on Trinity Sunday, i.e. the Sunday after
Pentecost, in that year the
<date calendar="#julianwhen="1632-06-06">27th of May (old style)</date>.
<opener>
 <dateline>
  <placeName>Dorchester, Village,</placeName>
  <date when="1828-03-02">March 2d. 1828.</date>
 </dateline>
 <salute>To
   Mrs. Cornell,</salute> Sunday <time when="12:00:00">noon.</time>
</opener>
Schematron

<sch:rule context="tei:*[@when]">
<sch:report test="@notBefore|@notAfter|@from|@to"
 role="nonfatal">
The @when attribute cannot be used with any other att.datable.w3c attributes.</sch:report>
</sch:rule>
Schematron

<sch:rule context="tei:*[@from]">
<sch:report test="@notBefore"
 role="nonfatal">
The @from and @notBefore attributes cannot be used together.</sch:report>
</sch:rule>
Schematron

<sch:rule context="tei:*[@to]">
<sch:report test="@notAfter"
 role="nonfatal">
The @to and @notAfter attributes cannot be used together.</sch:report>
</sch:rule>
Example
<date from="1863-05-28to="1863-06-01">28 May through 1 June 1863</date>
Note

The value of these attributes should be a normalized representation of the date, time, or combined date & time intended, in any of the standard formats specified by XML Schema Part 2: Datatypes Second Edition, using the Gregorian calendar.

The most commonly-encountered format for the date portion of a temporal attribute is yyyy-mm-dd, but yyyy, --mm, ---dd, yyyy-mm, or --mm-dd may also be used. For the time part, the form hh:mm:ss is used.

Note that this format does not currently permit use of the value 0000 to represent the year 1 BCE; instead the value -0001 should be used.

att.datcat

att.datcat provides attributes that are used to align XML elements or attributes with the appropriate Data Categories (DCs) defined by an external taxonomy, in this way establishing the identity of information containers and values, and providing means of interpreting them. [10.5.2. Lexical View 19.3. Other Atomic Feature Values]
Moduletei
Membersatt.segLike [pc s seg w] category taxonomy
Attributes
datcatprovides a pointer to a definition of, and/or general information about, (a) an information container (element or attribute) or (b) a value of an information container (element content or attribute value), by referencing an external taxonomy or ontology. If valueDatcat is present in the immediate context, this attribute takes on role (a), while valueDatcat performs role (b).
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
valueDatcatprovides a definition of, and/or general information about a value of an information container (element content or attribute value), by reference to an external taxonomy or ontology. Used especially where a contrast with datcat is needed.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
targetDatcatprovides a definition of, and/or general information about, information structure of an object referenced or modeled by the containing element, by reference to an external taxonomy or ontology. This attribute has the characteristics of the datcat attribute, except that it addresses not its containing element, but an object that is being referenced or modeled by its containing element.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
Example

The example below presents the TEI encoding of the name-value pair <part of speech, common noun>, where the name (key) ‘part of speech’ is abbreviated as ‘POS’, and the value, ‘common noun’ is symbolized by ‘NN’. The entire name-value pair is encoded by means of the element <f>. In TEI XML, that element acts as the container, labeled with the name attribute. Its contents may be complex or simple. In the case at hand, the content is the symbol ‘NN’.

The datcat attribute relates the feature name (i.e., the key) to the data category ‘part of speech’, while the attribute valueDatcat relates the feature value to the data category common noun. Both these data categories should be defined in an external and preferably open reference taxonomy or ontology.

<fs>
 <f name="POS"
  datcat="http://hdl.handle.net/11459/CCR_C-396_5a972b93-2294-ab5c-a541-7c344c5f26c3">

  <symbol valueDatcat="http://hdl.handle.net/11459/CCR_C-1256_7ec6083c-23d4-224d-6f94-eecbe6861545"
   value="NN"/>

 </f>
<!-- ... -->
</fs>

‘NN’ is the symbol for common noun used e.g. in the CLAWS-7 tagset defined by the University Centre for Computer Corpus Research on Language at the University of Lancaster. The very same data category used for tagging an early version of the British National Corpus, and coming from the BNC Basic (C5) tagset, uses the symbol ‘NN0’ (rather than ‘NN’). Making these values semantically interoperable would be extremely difficult without a human expert if they were not anchored in a single point of an established reference taxonomy of morphosyntactic data categories. In the case at hand, the string http://hdl.handle.net/11459/CCR_C-1256_7ec6083c-23d4-224d-6f94-eecbe6861545 is both a persistent identifier of the data category in question, as well as a pointer to a shared definition of common noun.

While the symbols ‘NN’, ‘NN0’, and many others (often coming from languages other than English) are implicitly members of the container category ‘part of speech’, it is sometimes useful not to rely on such an implicit relationship but rather use an explicit identifier for that data category, to distinguish it from other morphosyntactic data categories, such as gender, tense, etc. For that purpose, the above example uses the datcat attribute to reference a definition of part of speech. The reference taxonomy in this example is the CLARIN Concept Registry.

If the feature structure markup exemplified above is to be repeated many times in a single document, it is much more efficient to gather the persistent identifiers in a single place and to only reference them, implicitly or directly, from feature structure markup. The following example is much more concise than the one above and relies on the concepts of feature structure declaration and feature value library, discussed in chapter [ID FS in TEI Guidelines].
<fs>
 <f name="POSfVal="#commonNoun"/>
<!-- ... -->
</fs>

The assumption here is that the relevant feature values are collected in a place that the annotation document in question has access to — preferably, a single document per linguistic resource, for example an <fsdDecl> that is XIncluded as a sibling of text or a child of encodingDesc; a taxonomy available resource-wide (e.g., in a shared header) is also an option.

The example below presents an <fvLib> element that collects the relevant feature values (most of them omitted). At the same time, this example shows one way of encoding a tagset, i.e., an established inventory of values of (in the case at hand) morphosyntactic categories.
<fvLib n="POS values">
 <symbol xml:id="commonNounvalue="NN"
  datcat="http://hdl.handle.net/11459/CCR_C-396_5a972b93-2294-ab5c-a541-7c344c5f26c3"/>

 <symbol xml:id="properNounvalue="NP"
  datcat="http://hdl.handle.net/11459/CCR_C-1371_fbebd9ec-a7f4-9a36-d6e9-88ee16b944ae"/>

<!-- ... -->
</fvLib>

Note that these Guidelines do not prescribe a specific choice between datcat and valueDatcat in such cases. The former is the generic way of referencing a data category, whereas the latter is more specific, in that it references a data category that represents a value. The choice between them comes into play where a single element — or a tight element complex, such as the <f>/<symbol> complex illustrated above — make it necessary or useful to distinguish between the container data category and its value.

Example

In the context of dictionaries designed with semantic interoperability in mind, the following example ensures that the <pos> element is interpreted as the same information container as in the case of the example of <f name="POS"> above.

<gramGrp>
 <pos datcat="http://hdl.handle.net/11459/CCR_C-396_5a972b93-2294-ab5c-a541-7c344c5f26c3"
  valueDatcat="http://hdl.handle.net/11459/CCR_C-1256_7ec6083c-23d4-224d-6f94-eecbe6861545">
NN</pos>
</gramGrp>
Efficiency of this type of interoperable markup demands that the references to the particular data categories should best be provided in a single place within the dictionary (or a single place within the project), rather than being repeated inside every entry. For the container elements, this can be achieved at the level of <tagUsage>, although here, the valueDatcat attribute should be used, because it is not the <tagUsage> element that is associated with the relevant data category, but rather the element <pos> (or <case>, etc.) that is described by <tagUsage>:
<tagsDecl partial="true">
<!-- ... -->
 <namespace name="http://www.tei-c.org/ns/1.0">
  <tagUsage gi="pos"
   targetDatcat="http://hdl.handle.net/11459/CCR_C-396_5a972b93-2294-ab5c-a541-7c344c5f26c3">
Contains the part of speech.</tagUsage>
  <tagUsage gi="case"
   targetDatcat="http://hdl.handle.net/11459/CCR_C-1840_9f4e319c-f233-6c90-9117-7270e215f039">
Contains information about the grammatical case that the described form is inflected for.</tagUsage>
<!-- ... -->
 </namespace>
</tagsDecl>
Another possibility is to shorten the URIs by means of the <prefixDef> mechanism, as illustrated below:
<listPrefixDef>
 <prefixDef ident="ccrmatchPattern="pos"
  replacementPattern="http://hdl.handle.net/11459/CCR_C-396_5a972b93-2294-ab5c-a541-7c344c5f26c3"/>

 <prefixDef ident="ccrmatchPattern="adj"
  replacementPattern="http://hdl.handle.net/11459/CCR_C-1230_23653c21-fca1-edf8-fd7c-3df2d6499157"/>

</listPrefixDef>
<!-- ... -->
<entry>
<!--...-->
 <form>
  <orth>isotope</orth>
 </form>
 <gramGrp>
  <pos datcat="ccr:pos"
   valueDatcat="ccr:adj">
adj</pos>
 </gramGrp>
<!--...-->
</entry>

This mechanism creates implications that are not always wanted, among others, in the case at hand, suggesting that the identifiers ‘pos’ and ‘adj’ belong to a namespace associated with the CLARIN Concept Repository (CCR), whereas that is solely a shorthand mechanism whose scope is the current resource. Documenting this clearly in the header of the dictionary is therefore advised.

Yet another possibility is to associate the information about the relationship between a TEI markup element and the data category that it is intended to model already at the level of modeling the dictionary resource, that is, at the level of the ODD, in the <equiv> element that is a child of <elementSpec> or <attDef>.

Example

The taxonomy element is a handy tool for encoding taxonomies that are later referenced by att.datcat attributes, but it can also act as an intermediary device, for example holding a fragment of an external taxonomy (or ‘flattening’ an external ontology) that is relevant to the project or document at hand. (It is also imaginable that, for the purpose of the project at hand, the local taxonomy element combines vocabularies that originate from more than one external taxonomy or ontology.) In such cases, the taxonomy creates a local layer of indirection: the att.datcat attributes internal to the resource may reference the category elements stored in the header (as well as the taxonomy element itself), whereas these same category and taxonomy elements use att.datcat attributes to reference the original taxonomy or ontology.

<encodingDesc>
<!-- ... -->
 <classDecl>
<!-- ... -->
  <taxonomy xml:id="UD-SYN"
   datcat="https://universaldependencies.org/u/dep/index.html">

   <desc>
    <term>UD syntactic relations</term>
   </desc>
   <category xml:id="acl"
    valueDatcat="https://universaldependencies.org/u/dep/acl.html">

    <catDesc>
     <term>acl</term>: Clausal modifier of noun (adjectival clause)</catDesc>
   </category>
   <category xml:id="acl_relcl"
    valueDatcat="https://universaldependencies.org/u/dep/acl-relcl.html">

    <catDesc>
     <term>acl:relcl</term>: relative clause modifier</catDesc>
   </category>
   <category xml:id="advcl"
    valueDatcat="https://universaldependencies.org/u/dep/advcl.html">

    <catDesc>
     <term>advcl</term>: Adverbial clause modifier</catDesc>
   </category>
<!-- ... -->
  </taxonomy>
 </classDecl>
</encodingDesc>

The above fragment was excerpted from the GB subset of the ParlaMint project in April 2023, and enriched with att.datcat attributes for the purpose of illustrating the mechanism described here.

Note that, in the ideal case, the values of att.datcat attributes should be persistent identifiers, and that the addressing scheme of Universal Dependencies is treated here as persistent for the sake of illustration. Note also that the contrast between datcat used on taxonomy on the one hand, and the valueDatcat used on category on the other, is not mandatory: both kinds of relations could be encoded by means of the generic datcat attribute, but using the former for the container and the latter for the content is more user-friendly.

Example

The targetDatcat attribute is designed to be used in, e.g., feature structure declarations, and is analogous to the targetLang attribute of the att.pointing class, in that it describes the object that is being referenced, rather than the referencing object.

<fDecl name="POS"
 targetDatcat="http://hdl.handle.net/11459/CCR_C-396_5a972b93-2294-ab5c-a541-7c344c5f26c3">

 <fDescr>part of speech (morphosyntactic category)</fDescr>
 <vRange>
  <vAlt>
   <symbol value="NN"
    datcat="http://hdl.handle.net/11459/CCR_C-1256_7ec6083c-23d4-224d-6f94-eecbe6861545"/>

   <symbol value="NP"
    datcat="http://hdl.handle.net/11459/CCR_C-1371_fbebd9ec-a7f4-9a36-d6e9-88ee16b944ae"/>

<!-- ... -->
  </vAlt>
 </vRange>
</fDecl>

Above, the <fDecl> uses targetDatcat, because if it were to use datcat, it would be asserting that it is an instance of the container data category part of speech, whereas it is not — it models a container (<f>) that encodes a part of speech. Note also that it is the <f> that is modeled above, not its values, which are used as direct references to data categories; hence the use of datcat in the <symbol> element.

Example

The att.datcat attributes can be used for any sort of taxonomies. The example below illustrates their usefulness for describing usage domain labels in dictionaries on the example of the Diccionario da Lingua Portugueza by António de Morais Silva, retro-digitised in the MORDigital project.


<!-- in the dictionary header --><encodingDesc>
 <classDecl>
  <taxonomy xml:id="domains">
<!--...-->
   <category xml:id="domain.medical_and_health_sciences">
    <catDesc xml:lang="en">Medical and Health Sciences</catDesc>
    <catDesc xml:lang="pt">Ciências Médicas e da Saúde</catDesc>
    <category xml:id="domain.medical_and_health_sciences.medicine"
     valueDatcat="https://vocabs.rossio.fcsh.unl.pt/pub/morais_domains/pt/page/0025">

     <catDesc xml:lang="en">
      <term>Medicine</term>
      <gloss>
<!--...-->
      </gloss>
     </catDesc>
     <catDesc xml:lang="pt">
      <term>Medicina</term>
      <gloss>
<!--...-->
      </gloss>
     </catDesc>
    </category>
   </category>
<!--...-->
  </taxonomy>
 </classDecl>
</encodingDesc>
<!-- inside an <entry> element: -->
<usg type="domain"
 valueDatcat="#domain.medical_and_health_sciences.medicine">
Med.</usg>

In the Morais dictionary, the relevant domain labels are in the header, getting referenced inside the dictionary, from <usg> elements. The vocabulary used for dictionary-internal labelling is in turn anchored in the MorDigital controlled vocabulary service of the NOVA University of Lisbon – School of Social Sciences and Humanities (NOVA FCSH).

Note

The TEI Abstract Model can be expressed as a hierarchy of attribute-value matrices (AVMs) of various types and of various levels of complexity, nested or grouped in various ways. At the most abstract level, an AVM consists of an information container and the value (contents) of that container.

A simple example of an XML serialization of such structures is, on the one hand, the opening and closing tags that delimit and name the container, and, on the other, the content enclosed by the two tags that constitues the value. An analogous example is an attribute name and the value of that attribute.

In a TEI XML example of two equivalent serializations expressing the name-value pair <part-of-speech,common-noun>, namely <pos>commonNoun</pos> and pos="common-noun", one would classify the element <pos> and the attribute pos as containers (mapping onto the first member of the relevant name-value pair), while the character data content of <pos> or the value of pos would be seen as mapping onto the second member of the pair.

The att.datcat class provides means of addressing the containers and their values, while at the same time providing a way to interpret them in the context of external taxonomies or ontologies. Aligning e.g. both the <pos> element and the pos attribute with the same value of an external reference point (i.e., an entry in an agreed taxonomy) affirms the identity of the concept serialised by both the element container and the attribute container, and optionally provides a definition of that concept (in the case at hand, the concept part of speech).

The value of the att.datcat attributes should be a PID (persistent identifier) that points to a specific — and, ideally, shared — taxonomy or ontology. Among the resources that can, to a lesser or greater extent, be used as inventories of (more or less) standardized linguistic categories are the GOLD ontology, CLARIN CCR, OLiA, or TermWeb's DatCatInfo, and also the Universal Dependencies inventory, on the assumption that its URIs are going to persist. It is imaginable that a project may choose to address a local taxonomy store instead, but this risks losing the advantage of interchangeability with other projects.

Historically, datcat and valueDatcat originate from the (now obsolete) ISO 12620:2009 standard, describing the data model and procedures for a Data Category Registry (DCR). The current version of that standard, ISO 12620-1, does not standardize the serialization of pointers, merely mentioning the TEI att.datcat as an example.

Note that no constraint prevents the occurrence of a combination of att.datcat attributes: the <fDecl> element, which is a natural bearer of the targetDatcat attribute, is an instance of a specific modeling element, and, in principle, could be semantically fixed by an appropriate reference taxonomy of modeling devices.

att.declarable

att.declarable provides attributes for those elements in the TEI header which may be independently selected by means of the special purpose decls attribute. [16.3. Associating Contextual Information with a Text]
Moduletei
Membersavailability bibl editorialDecl langUsage listBibl projectDesc refsDecl samplingDecl seriesStmt sourceDesc textClass
Attributes
defaultindicates whether or not this element is selected by default when its parent is selected.
Status Optional
Datatype teidata.truthValue
Legal values are:
true
This element is selected if its parent is selected
false
This element can only be selected explicitly, unless it is the only one of its kind, in which case it is selected if its parent is selected. [Default]
Note

The rules governing the association of declarable elements with individual parts of a TEI text are fully defined in chapter 16.3. Associating Contextual Information with a Text. Only one element of a particular type may have a default attribute with a value of true.

att.declaring

att.declaring provides attributes for elements which may be independently associated with a particular declarable element within the header, thus overriding the inherited default for that element. [16.3. Associating Contextual Information with a Text]
Moduletei
Membersback body div front gloss graphic group lg p ptr ref term text
Attributes
decls(declarations) identifies one or more declarable elements within the header, which are understood to apply to the element bearing this attribute and its content.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
Note

The rules governing the association of declarable elements with individual parts of a TEI text are fully defined in chapter 16.3. Associating Contextual Information with a Text.

att.dimensions

att.dimensions provides attributes for describing the size of physical objects.
Moduletei
Membersadd date del gap time unclear
Attributes
unitnames the unit used for the measurement
Status Optional
Datatype teidata.enumerated
Suggested values include:
cm
(centimetres)
mm
(millimetres)
in
(inches)
line
lines of text
char
(characters) characters of text
quantityspecifies the length in the units specified
Status Optional
Datatype teidata.numeric
extentindicates the size of the object concerned using a project-specific vocabulary combining quantity and units in a single string of words.
Status Optional
Datatype teidata.text
<gap extent="5 words"/>
<height extent="half the page"/>
precisioncharacterizes the precision of the values specified by the other attributes.
Status Optional
Datatype teidata.certainty
scopewhere the measurement summarizes more than one observation, specifies the applicability of this measurement.
Status Optional
Datatype teidata.enumerated
Sample values include:
all
measurement applies to all instances.
most
measurement applies to most of the instances inspected.
range
measurement applies to only the specified range of instances.

att.divLike

att.divLike provides attributes common to all elements which behave in the same way as divisions. [4. Default Text Structure]
Moduletei
Membersdiv lg
Attributes
org(organization) specifies how the content of the division is organized.
Status Optional
Datatype teidata.enumerated
Legal values are:
composite
no claim is made about the sequence in which the immediate contents of this division are to be processed, or their inter-relationships.
uniform
the immediate contents of this element are regarded as forming a logical unit, to be processed in sequence. [Default]
sampleindicates whether this division is a sample of the original source and if so, from which part.
Status Optional
Datatype teidata.enumerated
Legal values are:
initial
division lacks material present at end in source.
medial
division lacks material at start and end.
final
division lacks material at start.
unknown
position of sampled material within original unknown.
complete
division is not a sample. [Default]

att.docStatus

att.docStatus provides attributes for use on metadata elements describing the status of a document.
Moduletei
Membersbibl change revisionDesc
Attributes
statusdescribes the status of a document either currently or, when associated with a dated element, at the time indicated.
Status Optional
Datatype teidata.enumerated
Sample values include:
approved
candidate
cleared
deprecated
draft
[Default]
embargoed
expired
frozen
galley
proposed
published
recommendation
submitted
unfinished
withdrawn
Example
<revisionDesc status="published">
 <change when="2010-10-21"
  status="published"/>

 <change when="2010-10-02status="cleared"/>
 <change when="2010-08-02"
  status="embargoed"/>

 <change when="2010-05-01status="frozen"
  who="#MSM"/>

 <change when="2010-03-01status="draft"
  who="#LB"/>

</revisionDesc>

att.edition

att.edition provides attributes identifying the source edition from which some encoded feature derives.
Moduletei
Memberslb milestone pb
Attributes
ed(edition) supplies a sigil or other arbitrary identifier for the source edition in which the associated feature (for example, a page, column, or line break) occurs at this point in the text.
Status Optional
Datatype 1–∞ occurrences of teidata.word separated by whitespace
edRef(edition reference) provides a pointer to the source edition in which the associated feature (for example, a page, column, or line break) occurs at this point in the text.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
Example
<l>Of Mans First Disobedience,<lb ed="1674"/> and<lb ed="1667"/> the Fruit</l>
<l>Of that Forbidden Tree, whose<lb ed="1667 1674"/> mortal tast</l>
<l>Brought Death into the World,<lb ed="1667"/> and all<lb ed="1674"/> our woe,</l>
Example
<listBibl>
 <bibl xml:id="stapledon1937">
  <author>Olaf Stapledon</author>,
 <title>Starmaker</title>, <publisher>Methuen</publisher>, <date>1937</date>
 </bibl>
 <bibl xml:id="stapledon1968">
  <author>Olaf Stapledon</author>,
 <title>Starmaker</title>, <publisher>Dover</publisher>, <date>1968</date>
 </bibl>
</listBibl>
<!-- ... -->
<p>Looking into the future aeons from the supreme moment of
the cosmos, I saw the populations still with all their
strength maintaining the<pb n="411edRef="#stapledon1968"/>essentials of their ancient culture,
still living their personal lives in zest and endless
novelty of action, … I saw myself still
preserving, though with increasing difficulty, my lucid
con-<pb n="291edRef="#stapledon1937"/>sciousness;</p>

att.editLike

att.editLike provides attributes describing the nature of an encoded scholarly intervention or interpretation of any kind. [3.5. Simple Editorial Changes 11.3.1. Origination 14.3.2. The Person Element 12.3.1.1. Core Elements for Transcriptional Work]
Moduletei
Membersatt.transcriptional [add del] corr date expan gap name reg time unclear
Attributes
evidenceindicates the nature of the evidence supporting the reliability or accuracy of the intervention or interpretation.
Status Optional
Datatype 1–∞ occurrences of teidata.enumerated separated by whitespace
Suggested values include:
internal
there is internal evidence to support the intervention.
external
there is external evidence to support the intervention.
conjecture
the intervention or interpretation has been made by the editor, cataloguer, or scholar on the basis of their expertise.
instantindicates whether this is an instant revision or not.
Status Optional
Datatype teidata.xTruthValue
Default false
Note

The members of this attribute class are typically used to represent any kind of editorial intervention in a text, for example a correction or interpretation, or to date or localize manuscripts etc.

Each pointer on the source (if present) corresponding to a witness or witness group should reference a bibliographic citation such as a <witness>, <msDesc>, or bibl element, or another external bibliographic citation, documenting the source concerned.

att.fragmentable

att.fragmentable provides attributes for representing fragmentation of a structural element, typically as a consequence of some overlapping hierarchy.
Moduletei
Membersatt.divLike [div lg] att.segLike [pc s seg w] l p
Attributes
partspecifies whether or not its parent element is fragmented in some way, typically by some other overlapping structure: for example a speech which is divided between two or more verse stanzas, a paragraph which is split across a page division, a verse line which is divided between two speakers.
Status Optional
Datatype teidata.enumerated
Legal values are:
Y
(yes) the element is fragmented in some (unspecified) respect
N
(no) the element is not fragmented, or no claim is made as to its completeness [Default]
I
(initial) this is the initial part of a fragmented element
M
(medial) this is a medial part of a fragmented element
F
(final) this is the final part of a fragmented element
Note

The values I, M, or F should be used only where it is clear how the element may be reconstituted.

att.global

att.global provides attributes common to all elements in the TEI encoding scheme. [1.3.1.1. Global Attributes]
Moduletei
MembersTEI abbr add addrLine address anchor argument att author authority availability back bibl biblScope body byline catDesc catRef category cell change choice cit classCode classDecl closer code corr creation date dateline del desc distributor div divGen docAuthor docDate docEdition docImprint docTitle edition editionStmt editor editorialDecl eg emph encodingDesc epigraph expan extent figDesc figure fileDesc foreign formula front funder gap gi gloss graphic group head hi ident idno imprimatur index interp interpGrp item keywords l label langUsage language lb lg licence list listBibl mentioned milestone name note notesStmt num opener orig p pb pc postscript principal profileDesc projectDesc ptr pubPlace publicationStmt publisher q ref refsDecl reg relatedItem resp respStmt revisionDesc row rs s salute samplingDecl seg seriesStmt sic signed soCalled sourceDesc sp speaker sponsor stage table taxonomy teiCorpus teiHeader term text textClass time title titlePage titlePart titleStmt trailer unclear val w
Attributes
xml:id(identifier) provides a unique identifier for the element bearing the attribute.
Status Optional
Datatype ID
Note

The xml:id attribute may be used to specify a canonical reference for an element; see section 3.11. Reference Systems.

n(number) gives a number (or other label) for an element, which is not necessarily unique within the document.
Status Optional
Datatype teidata.text
Note

The value of this attribute is always understood to be a single token, even if it contains space or other punctuation characters, and need not be composed of numbers only. It is typically used to specify the numbering of chapters, sections, list items, etc.; it may also be used in the specification of a standard reference system for the text.

xml:lang(language) indicates the language of the element content using a ‘tag’ generated according to BCP 47.
Status Optional
Datatype teidata.language
<p> … The consequences of
this rapid depopulation were the loss of the last
<foreign xml:lang="rap">ariki</foreign> or chief
(Routledge 1920:205,210) and their connections to
ancestral territorial organization.</p>
Note

The xml:lang value will be inherited from the immediately enclosing element, or from its parent, and so on up the document hierarchy. It is generally good practice to specify xml:lang at the highest appropriate level, noticing that a different default may be needed for the teiHeader from that needed for the associated resource element or elements, and that a single TEI document may contain texts in many languages.

Only attributes with free text values (rare in these guidelines) will be in the scope of xml:lang.

The authoritative list of registered language subtags is maintained by IANA and is available at https://www.iana.org/assignments/language-subtag-registry. For a good general overview of the construction of language tags, see https://www.w3.org/International/articles/language-tags/, and for a practical step-by-step guide, see https://www.w3.org/International/questions/qa-choosing-language-tags.en.php.

The value used must conform with BCP 47. If the value is a private use code (i.e., starts with x- or contains -x-), a language element with a matching value for its ident attribute should be supplied in the TEI header to document this value. Such documentation may also optionally be supplied for non-private-use codes, though these must remain consistent with their (IETF)Internet Engineering Task Force definitions.

xml:spacesignals an intention about how white space should be managed by applications.
Status Optional
Datatype teidata.enumerated
Legal values are:
default
signals that the application's default white-space processing modes are acceptable
preserve
indicates the intent that applications preserve all white space
Note

The XML specification provides further guidance on the use of this attribute. Note that many parsers may not handle xml:space correctly.

att.global.analytic

att.global.analytic provides additional global attributes for associating specific analyses or interpretations with appropriate portions of a text. [18.2. Global Attributes for Simple Analyses 18.3. Spans and Interpretations]
Moduleanalysis
Membersatt.global [TEI abbr add addrLine address anchor argument att author authority availability back bibl biblScope body byline catDesc catRef category cell change choice cit classCode classDecl closer code corr creation date dateline del desc distributor div divGen docAuthor docDate docEdition docImprint docTitle edition editionStmt editor editorialDecl eg emph encodingDesc epigraph expan extent figDesc figure fileDesc foreign formula front funder gap gi gloss graphic group head hi ident idno imprimatur index interp interpGrp item keywords l label langUsage language lb lg licence list listBibl mentioned milestone name note notesStmt num opener orig p pb pc postscript principal profileDesc projectDesc ptr pubPlace publicationStmt publisher q ref refsDecl reg relatedItem resp respStmt revisionDesc row rs s salute samplingDecl seg seriesStmt sic signed soCalled sourceDesc sp speaker sponsor stage table taxonomy teiCorpus teiHeader term text textClass time title titlePage titlePart titleStmt trailer unclear val w]
Attributes
ana(analysis) indicates one or more elements containing interpretations of the element on which the ana attribute appears.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
Note

When multiple values are given, they may reflect either multiple divergent interpretations of an ambiguous text, or multiple mutually consistent interpretations of the same passage in different contexts.

att.global.facs

att.global.facs provides attributes used to express correspondence between an element and all or part of a facsimile image or surface. [12.1. Digital Facsimiles]
Moduletranscr
Membersatt.global [TEI abbr add addrLine address anchor argument att author authority availability back bibl biblScope body byline catDesc catRef category cell change choice cit classCode classDecl closer code corr creation date dateline del desc distributor div divGen docAuthor docDate docEdition docImprint docTitle edition editionStmt editor editorialDecl eg emph encodingDesc epigraph expan extent figDesc figure fileDesc foreign formula front funder gap gi gloss graphic group head hi ident idno imprimatur index interp interpGrp item keywords l label langUsage language lb lg licence list listBibl mentioned milestone name note notesStmt num opener orig p pb pc postscript principal profileDesc projectDesc ptr pubPlace publicationStmt publisher q ref refsDecl reg relatedItem resp respStmt revisionDesc row rs s salute samplingDecl seg seriesStmt sic signed soCalled sourceDesc sp speaker sponsor stage table taxonomy teiCorpus teiHeader term text textClass time title titlePage titlePart titleStmt trailer unclear val w]
Attributes
facs(facsimile) points to one or more images, portions of an image, or surfaces which correspond to the current element.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace

att.global.linking

att.global.linking provides a set of attributes for hypertextual linking. [17. Linking, Segmentation, and Alignment]
Modulelinking
Membersatt.global [TEI abbr add addrLine address anchor argument att author authority availability back bibl biblScope body byline catDesc catRef category cell change choice cit classCode classDecl closer code corr creation date dateline del desc distributor div divGen docAuthor docDate docEdition docImprint docTitle edition editionStmt editor editorialDecl eg emph encodingDesc epigraph expan extent figDesc figure fileDesc foreign formula front funder gap gi gloss graphic group head hi ident idno imprimatur index interp interpGrp item keywords l label langUsage language lb lg licence list listBibl mentioned milestone name note notesStmt num opener orig p pb pc postscript principal profileDesc projectDesc ptr pubPlace publicationStmt publisher q ref refsDecl reg relatedItem resp respStmt revisionDesc row rs s salute samplingDecl seg seriesStmt sic signed soCalled sourceDesc sp speaker sponsor stage table taxonomy teiCorpus teiHeader term text textClass time title titlePage titlePart titleStmt trailer unclear val w]
Attributes
corresp(corresponds) points to elements that correspond to the current element in some way.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
<group>
 <text xml:id="t1-g1-t1xml:lang="mi">
  <body xml:id="t1-g1-t1-body1">
   <div type="chapter">
    <head>He Whakamaramatanga mo te Ture Hoko, Riihi hoki, i nga Whenua Maori, 1876.</head>
    <p></p>
   </div>
  </body>
 </text>
 <text xml:id="t1-g1-t2xml:lang="en">
  <body xml:id="t1-g1-t2-body1"
   corresp="#t1-g1-t1-body1">

   <div type="chapter">
    <head>An Act to regulate the Sale, Letting, and Disposal of Native Lands, 1876.</head>
    <p></p>
   </div>
  </body>
 </text>
</group>

In this example a group contains two texts, each containing the same document in a different language. The correspondence is indicated using corresp. The language is indicated using xml:lang, whose value is inherited; both the tag with the corresp and the tag pointed to by the corresp inherit the value from their immediate parent.


<!-- In a placeography called "places.xml" --><place xml:id="LOND1"
 corresp="people.xml#LOND2 people.xml#GENI1">

 <placeName>London</placeName>
 <desc>The city of London...</desc>
</place>
<!-- In a literary personography called "people.xml" -->
<person xml:id="LOND2"
 corresp="places.xml#LOND1 #GENI1">

 <persName type="lit">London</persName>
 <note>
  <p>Allegorical character representing the city of <placeName ref="places.xml#LOND1">London</placeName>.</p>
 </note>
</person>
<person xml:id="GENI1"
 corresp="places.xml#LOND1 #LOND2">

 <persName type="lit">London’s Genius</persName>
 <note>
  <p>Personification of London’s genius. Appears as an
     allegorical character in mayoral shows.
  </p>
 </note>
</person>

In this example, a <place> element containing information about the city of London is linked with two <person> elements in a literary personography. This correspondence represents a slightly looser relationship than the one in the preceding example; there is no sense in which an allegorical character could be substituted for the physical city, or vice versa, but there is obviously a correspondence between them.

nextpoints to the next element of a virtual aggregate of which the current element is part.
Status Optional
Datatype teidata.pointer
Note

It is recommended that the element indicated be of the same type as the element bearing this attribute.

prev(previous) points to the previous element of a virtual aggregate of which the current element is part.
Status Optional
Datatype teidata.pointer
Note

It is recommended that the element indicated be of the same type as the element bearing this attribute.

att.global.rendition

att.global.rendition provides rendering attributes common to all elements in the TEI encoding scheme. [1.3.1.1.3. Rendition Indicators]
Moduletei
Membersatt.global [TEI abbr add addrLine address anchor argument att author authority availability back bibl biblScope body byline catDesc catRef category cell change choice cit classCode classDecl closer code corr creation date dateline del desc distributor div divGen docAuthor docDate docEdition docImprint docTitle edition editionStmt editor editorialDecl eg emph encodingDesc epigraph expan extent figDesc figure fileDesc foreign formula front funder gap gi gloss graphic group head hi ident idno imprimatur index interp interpGrp item keywords l label langUsage language lb lg licence list listBibl mentioned milestone name note notesStmt num opener orig p pb pc postscript principal profileDesc projectDesc ptr pubPlace publicationStmt publisher q ref refsDecl reg relatedItem resp respStmt revisionDesc row rs s salute samplingDecl seg seriesStmt sic signed soCalled sourceDesc sp speaker sponsor stage table taxonomy teiCorpus teiHeader term text textClass time title titlePage titlePart titleStmt trailer unclear val w]
Attributes
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Status Optional
Datatype 1–∞ occurrences of teidata.word separated by whitespace
<head rend="align(center) case(allcaps)">
 <lb/>To The <lb/>Duchesse <lb/>of <lb/>Newcastle,
<lb/>On Her <lb/>
 <hi rend="case(mixed)">New Blazing-World</hi>.
</head>
Note

These Guidelines make no binding recommendations for the values of the rend attribute; the characteristics of visual presentation vary too much from text to text and the decision to record or ignore individual characteristics varies too much from project to project. Some potentially useful conventions are noted from time to time at appropriate points in the Guidelines. The values of the rend attribute are a set of sequence-indeterminate individual tokens separated by whitespace.

att.global.responsibility

att.global.responsibility provides attributes indicating the agent responsible for some aspect of the text, the markup or something asserted by the markup, and the degree of certainty associated with it. [1.3.1.1.4. Sources, certainty, and responsibility 3.5. Simple Editorial Changes 12.3.2.2. Hand, Responsibility, and Certainty Attributes 18.3. Spans and Interpretations 14.1.1. Linking Names and Their Referents]
Moduletei
Membersatt.global [TEI abbr add addrLine address anchor argument att author authority availability back bibl biblScope body byline catDesc catRef category cell change choice cit classCode classDecl closer code corr creation date dateline del desc distributor div divGen docAuthor docDate docEdition docImprint docTitle edition editionStmt editor editorialDecl eg emph encodingDesc epigraph expan extent figDesc figure fileDesc foreign formula front funder gap gi gloss graphic group head hi ident idno imprimatur index interp interpGrp item keywords l label langUsage language lb lg licence list listBibl mentioned milestone name note notesStmt num opener orig p pb pc postscript principal profileDesc projectDesc ptr pubPlace publicationStmt publisher q ref refsDecl reg relatedItem resp respStmt revisionDesc row rs s salute samplingDecl seg seriesStmt sic signed soCalled sourceDesc sp speaker sponsor stage table taxonomy teiCorpus teiHeader term text textClass time title titlePage titlePart titleStmt trailer unclear val w]
Attributes
cert(certainty) signifies the degree of certainty associated with the intervention or interpretation.
Status Optional
Datatype teidata.probCert
resp(responsible party) indicates the agency responsible for the intervention or interpretation, for example an editor or transcriber.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
Note

To reduce the ambiguity of a resp pointing directly to a person or organization, we recommend that resp be used to point not to an agent (<person> or <org>) but to a respStmt, author, editor or similar element which clarifies the exact role played by the agent. Pointing to multiple respStmts allows the encoder to specify clearly each of the roles played in part of a TEI file (creating, transcribing, encoding, editing, proofing etc.).

Example
Blessed are the
<choice>
 <sic>cheesemakers</sic>
 <corr resp="#editorcert="high">peacemakers</corr>
</choice>: for they shall be called the children of God.
Example

<!-- in the <text> ... --><lg>
<!-- ... -->
 <l>Punkes, Panders, baſe extortionizing
   sla<choice>
   <sic>n</sic>
   <corr resp="#JENS1_transcriber">u</corr>
  </choice>es,</l>
<!-- ... -->
</lg>
<!-- in the <teiHeader> ... -->
<!-- ... -->
<respStmt xml:id="JENS1_transcriber">
 <resp when="2014">Transcriber</resp>
 <name>Janelle Jenstad</name>
</respStmt>

att.global.source

att.global.source provides attributes used by elements to point to an external source. [1.3.1.1.4. Sources, certainty, and responsibility 3.3.3. Quotation 8.3.4. Writing]
Moduletei
Membersatt.global [TEI abbr add addrLine address anchor argument att author authority availability back bibl biblScope body byline catDesc catRef category cell change choice cit classCode classDecl closer code corr creation date dateline del desc distributor div divGen docAuthor docDate docEdition docImprint docTitle edition editionStmt editor editorialDecl eg emph encodingDesc epigraph expan extent figDesc figure fileDesc foreign formula front funder gap gi gloss graphic group head hi ident idno imprimatur index interp interpGrp item keywords l label langUsage language lb lg licence list listBibl mentioned milestone name note notesStmt num opener orig p pb pc postscript principal profileDesc projectDesc ptr pubPlace publicationStmt publisher q ref refsDecl reg relatedItem resp respStmt revisionDesc row rs s salute samplingDecl seg seriesStmt sic signed soCalled sourceDesc sp speaker sponsor stage table taxonomy teiCorpus teiHeader term text textClass time title titlePage titlePart titleStmt trailer unclear val w]
Attributes
sourcespecifies the source from which some aspect of this element is drawn.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
Schematron

<sch:rule context="tei:*[@source]">
<sch:let name="srcs"
 value="tokenize( normalize-space(@source),' ')"/>

<sch:report test="( self::tei:classRef | self::tei:dataRef | self::tei:elementRef | self::tei:macroRef | self::tei:moduleRef | self::tei:schemaSpec ) and $srcs[2]"> When used on a schema description element (like
<sch:value-of select="name(.)"/>), the @source attribute
should have only 1 value. (This one has <sch:value-of select="count($srcs)"/>.)
</sch:report>
</sch:rule>
Note

The source attribute points to an external source. When used on an element describing a schema component (<classRef>, <dataRef>, <elementRef>, <macroRef>, <moduleRef>, or <schemaSpec>), it identifies the source from which declarations for the components should be obtained.

On other elements it provides a pointer to the bibliographical source from which a quotation or citation is drawn.

In either case, the location may be provided using any form of URI, for example an absolute URI, a relative URI, a private scheme URI of the form tei:x.y.z, where x.y.z indicates the version number, e.g. tei:4.3.2 for TEI P5 release 4.3.2 or (as a special case) tei:current for whatever is the latest release, or a private scheme URI that is expanded to an absolute URI as documented in a <prefixDef>.

When used on elements describing schema components, source should have only one value; when used on other elements multiple values are permitted.

Example
<p>
<!-- ... --> As Willard McCarty (<bibl xml:id="mcc_2012">2012, p.2</bibl>) tells us, <quote source="#mcc_2012">‘Collaboration’ is a problematic and should be a contested
   term.</quote>
<!-- ... -->
</p>
Example
<p>
<!-- ... -->
 <quote source="#chicago_15_ed">Grammatical theories are in flux, and the more we learn, the
   less we seem to know.</quote>
<!-- ... -->
</p>
<!-- ... -->
<bibl xml:id="chicago_15_ed">
 <title level="m">The Chicago Manual of Style</title>,
<edition>15th edition</edition>. <pubPlace>Chicago</pubPlace>: <publisher>University of
   Chicago Press</publisher> (<date>2003</date>), <biblScope unit="page">p.147</biblScope>.

</bibl>
Example
<elementRef key="psource="tei:2.0.1"/>

Include in the schema an element named p available from the TEI P5 2.0.1 release.

Example
<schemaSpec ident="myODD"
 source="mycompiledODD.xml">

<!-- further declarations specifying the components required -->
</schemaSpec>

Create a schema using components taken from the file mycompiledODD.xml.

att.interpLike

att.interpLike provides attributes for elements which represent a formal analysis or interpretation. [18.2. Global Attributes for Simple Analyses]
Moduletei
Membersinterp interpGrp
Attributes
typeindicates what kind of phenomenon is being noted in the passage.
Status Recommended
Datatype teidata.enumerated
Sample values include:
image
identifies an image in the passage.
character
identifies a character associated with the passage.
theme
identifies a theme in the passage.
allusion
identifies an allusion to another text.
subtype(subtype) provides a sub-categorization of the phenomenon is being noted in the passage, if needed
Status Optional
Datatype teidata.enumerated
Note

The subtype attribute may be used to provide any sub-classification for the element additional to that provided by its type attribute.

inst(instances) points to instances of the analysis or interpretation represented by the current element.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
Note

The current element should be an analytic one. The element pointed at should be a textual one.

att.lexicographic.normalized

att.lexicographic.normalized provides attributes for usage within word-level elements in the analysis module and within lexicographic microstructure in the dictionaries module.
Moduleanalysis
Membersatt.linguistic [pc w]
Attributes
norm(normalized) provides the normalized/standardized form of information present in the source text in a non-normalized form
Status Optional
Datatype teidata.text

Normalization of part-of-speech information within a dictionary entry.

<gramGrp>
 <pos norm="noun">n</pos>
</gramGrp>

Normalization of a source form in a tokenized historical corpus.

<s>
 <w>for</w>
 <w norm="virtue's">vertues</w>
 <w>sake</w>
</s>
<s>
 <w norm="persuasion">perswasion</w>
 <w>of</w>
 <w norm="Unity">Vnitie</w>
</s>

Example of normalization from Aviso. Relation oder Zeitung. Wolfenbüttel, 1609. In: Deutsches Textarchiv.

<s>
 <w norm="freiwillig">freywillig</w>
 <pc norm=",join="left">/</pc>
 <w norm="unbedrängt">vnbedraͤngt</w>
 <w norm="und">vnd</w>
 <w norm="unverhindert">vnuerhindert</w>
</s>
<w norm="Teil">Theyll</w>
<w norm="Freude">Frewde</w>
orig(original) gives the original string or is the empty string when the element does not appear in the source text.
Status Optional
Datatype teidata.text

Example from a language documentation project of the Mixtepec-Mixtec language (ISO 639-3: 'mix'). This is a use case where speakers spell something incorrectly but we would like to preserve it for any number of reasons, the use of orig is essential and could have uses for both the speaker to see past mistakes, researchers to get insight into how untrained speakers write their language instinctually (in contrast to prescribed convention), etc.:

<w orig="ntsa sia'i">ntsasia'i</w>

Example from the EarlyPrint project. Fragment of text where obvious errors have been corrected but the original forms remain recorded:

<w lemma="hepos="pns"
 xml:id="b1afj-003-a-0950">
he</w>
<w lemma="havepos="vvz"
 xml:id="b1afj-003-a-0960">
hath</w>
<w lemma="bringpos="vvn"
 xml:id="b1afj-003-a-0970">
brought</w>
<w lemma="forthpos="av"
 xml:id="b1afj-003-a-0980orig="sorth">
forth</w>

An example from the EarlyPrint project showing the use of both norm and orig. The orig attribute preserves the original version (sometimes with spelling errors, often with printer abbreviations), the element content resolves printer abbreviations but retains the original orthography, and the norm attribute holds normalized values:

<w lemma="commandmentpos="n1"
 norm="commandmentxml:id="b9avr-018-a-7720"
 orig="commandemēt">
commandement</w>
Note

It needs to be stressed that the two attributes in this class are meant for strictly lexicographic and linguistic uses, and not for editorial interventions. For the latter, the mechanism based on choice, orig, and reg needs to be employed.

att.linguistic

att.linguistic provides a set of attributes concerning linguistic features of tokens, for usage within token-level elements, specifically w and pc in the analysis module. [18.4.2. Lightweight Linguistic Annotation]
Moduleanalysis
Memberspc w
Attributes
lemmaprovides a lemma (base form) for the word, typically uninflected and serving both as an identifier (e.g. in dictionary contexts, as a headword), and as a basis for potential inflections.
Status Optional
Datatype teidata.text
<w lemma="wife">wives</w>
<w lemma="Arznei">Artzeneyen</w>
lemmaRefprovides a pointer to a definition of the lemma for the word, for example in an online lexicon.
Status Optional
Datatype teidata.pointer
<w type="verblemma="hit"
 lemmaRef="http://www.example.com/lexicon/hitvb.xml">
hitt<m type="suffix">ing</m>
</w>
pos(part of speech) indicates the part of speech assigned to a token (i.e. information on whether it is a noun, adjective, or verb), usually according to some official reference vocabulary (e.g. for German: STTS, for English: CLAWS, for Polish: NKJP, etc.).
Status Optional
Datatype teidata.text

The German sentence ‘Wir fahren in den Urlaub.’ tagged with the Stuttgart-Tuebingen-Tagset (STTS).

<s>
 <w pos="PPER">Wir</w>
 <w pos="VVFIN">fahren</w>
 <w pos="APPR">in</w>
 <w pos="ART">den</w>
 <w pos="NN">Urlaub</w>
 <w pos="$.">.</w>
</s>

The English sentence ‘We're going to Brazil.’ tagged with the CLAWS-5 tagset, arranged inline (with significant whitespace).

<p><w pos="PNP">We</w><w pos="VBB">'re</w> <w pos="VVG">going</w> <w pos="PRP">to</w> <w pos="NP0">Brazil</w><pc pos="PUN">.</pc></p>         

The English sentence ‘We're going on vacation to Brazil for a month!’ tagged with the CLAWS-7 tagset and arranged sequentially.

<p>
 <w pos="PPIS2">We</w>
 <w pos="VBR">'re</w>
 <w pos="VVG">going</w>
 <w pos="II">on</w>
 <w pos="NN1">vacation</w>
 <w pos="II">to</w>
 <w pos="NP1">Brazil</w>
 <w pos="IF">for</w>
 <w pos="AT1">a</w>
 <w pos="NNT1">month</w>
 <pc pos="!">!</pc>
</p>
msd(morphosyntactic description) supplies morphosyntactic information for a token, usually according to some official reference vocabulary (e.g. for German: STTS-large tagset; for a feature description system designed as (pragmatically) universal, see Universal Features).
Status Optional
Datatype teidata.text
<ab>
 <w pos="PPERmsd="1.Pl.*.Nom">Wir</w>
 <w pos="VVFINmsd="1.Pl.Pres.Ind">fahren</w>
 <w pos="APPRmsd="--">in</w>
 <w pos="ARTmsd="Def.Masc.Akk.Sg">den</w>
 <w pos="NNmsd="Masc.Akk.Sg">Urlaub</w>
 <pc pos="$.msd="--">.</pc>
</ab>
joinwhen present, provides information on whether the token in question is adjacent to another, and if so, on which side.
Status Optional
Datatype teidata.text
Legal values are:
no
the token is not adjacent to another
left
there is no whitespace on the left side of the token
right
there is no whitespace on the right side of the token
both
there is no whitespace on either side of the token
overlap
the token overlaps with another; other devices (specifying the extent and the area of overlap) are needed to more precisely locate this token in the character stream

The example below assumes that the lack of whitespace is marked redundantly, by using the appropriate values of join.

<s>
 <pc join="right">"</pc>
 <w join="left">Friends</w>
 <w>will</w>
 <w>be</w>
 <w join="right">friends</w>
 <pc join="both">.</pc>
 <pc join="left">"</pc>
</s>

Note that a project may make a decision to only indicate lack of whitespace in one direction, or do that non-redundantly. The existing proposal is the broadest possible, on the assumption that we adopt the "streamable view", where all the information on the current element needs to be represented locally.

The English sentence ‘We're going on vacation.’ tagged with the CLAWS-5 tagset, arranged sequentially, tagged on the assumption that only the lack of the preceding whitespace is indicated.

<p>
 <w pos="PNP">We</w>
 <w pos="VBBjoin="left">'re</w>
 <w pos="VVG">going</w>
 <w pos="PRP">on</w>
 <w pos="NN1">vacation</w>
 <pc pos="PUNjoin="left">.</pc>
</p>
Note

The definition of this attribute is adapted from ISO MAF (Morpho-syntactic Annotation Framework), ISO 24611:2012.

Note

These attributes make it possible to encode simple language corpora and to add a layer of linguistic information to any tokenized resource. See section 18.4.2. Lightweight Linguistic Annotation for discussion.

att.media

att.media provides attributes for specifying display and related properties of external media.
Moduletei
Membersgraphic
Attributes
widthWhere the media are displayed, indicates the display width
Status Optional
Datatype teidata.outputMeasurement
heightWhere the media are displayed, indicates the display height
Status Optional
Datatype teidata.outputMeasurement
scaleWhere the media are displayed, indicates a scale factor to be applied when generating the desired display size
Status Optional
Datatype teidata.numeric

att.milestoneUnit

att.milestoneUnit provides attributes to indicate the type of section which is changing at a specific milestone. [3.11.3. Milestone Elements 2.3.6.3. Milestone Method 2.3.6. The Reference System Declaration]
Modulecore
Membersmilestone
Attributes
unitprovides a conventional name for the kind of section changing at this milestone.
Status Required
Datatype teidata.enumerated
Suggested values include:
page
physical page breaks (synonymous with the pb element).
column
column breaks.
line
line breaks (synonymous with the lb element).
book
any units termed book, liber, etc.
poem
individual poems in a collection.
canto
cantos or other major sections of a poem.
speaker
changes of speaker or narrator.
stanza
stanzas within a poem, book, or canto.
act
acts within a play.
scene
scenes within a play or act.
section
sections of any kind.
absent
passages not present in the reference edition.
unnumbered
passages present in the text, but not to be included as part of the reference.
<milestone n="23ed="Launit="Dreissiger"/>
... <milestone n="24ed="AVunit="verse"/> ...
Note

If the milestone marks the beginning of a piece of text not present in the reference edition, the special value absent may be used as the value of unit. The normal interpretation is that the reference edition does not contain the text which follows, until the next milestone tag for the edition in question is encountered.

In addition to the values suggested, other terms may be appropriate (e.g. Stephanus for the Stephanus numbers in Plato).

The type attribute may be used to characterize the unit boundary in any respect other than simply identifying the type of unit, for example as word-breaking or not.

att.naming

att.naming provides attributes common to elements which refer to named persons, places, organizations etc. [3.6.1. Referring Strings 14.3.7. Names and Nyms]
Moduletei
Membersatt.personal [name] author editor pubPlace rs
Attributes
rolemay be used to specify further information about the entity referenced by this name in the form of a set of whitespace-separated values, for example the occupation of a person, or the status of a place.
Status Optional
Datatype 1–∞ occurrences of teidata.enumerated separated by whitespace
nymRef(reference to the canonical name) provides a means of locating the canonical form (nym) of the names associated with the object named by the element bearing it.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
Note

The value must point directly to one or more XML elements by means of one or more URIs, separated by whitespace. If more than one is supplied, the implication is that the name is associated with several distinct canonical names.

att.notated

att.notated provides attributes to indicate any specialised notation used for element content.
Moduletei
Membersformula s seg w
Attributes
notationnames the notation used for the content of the element.
Status Optional
Datatype teidata.enumerated

att.personal

att.personal (attributes for components of names usually, but not necessarily, personal names) common attributes for those elements which form part of a name usually, but not necessarily, a personal name. [14.2.1. Personal Names]
Moduletei
Membersname
Attributes
fullindicates whether the name component is given in full, as an abbreviation or simply as an initial.
Status Optional
Datatype teidata.enumerated
Legal values are:
yes
(yes) the name component is spelled out in full. [Default]
abb
(abbreviated) the name component is given in an abbreviated form.
init
(initial letter) the name component is indicated only by one initial.
sort(sort) specifies the sort order of the name component in relation to others within the name.
Status Optional
Datatype teidata.count

att.placement

att.placement provides attributes for describing where on the source page or object a textual element appears. [3.5.3. Additions, Deletions, and Omissions 12.3.1.4. Additions and Deletions]
Moduletei
Membersadd figure head label note stage trailer
Attributes
placespecifies where this item is placed.
Status Recommended
Datatype 1–∞ occurrences of teidata.enumerated separated by whitespace
Suggested values include:
top
at the top of the page
bottom
at the foot of the page
margin
in the margin (left, right, or both)
opposite
on the opposite, i.e. facing, page
overleaf
on the other side of the leaf
above
above the line
right
to the right, e.g. to the right of a vertical line of text, or to the right of a figure
below
below the line
left
to the left, e.g. to the left of a vertical line of text, or to the left of a figure
end
at the end of e.g. chapter or volume.
inline
within the body of the text.
inspace
in a predefined space, for example left by an earlier scribe.
<add place="margin">[An addition written in the margin]</add>
<add place="bottom opposite">[An addition written at the
foot of the current page and also on the facing page]</add>
<note place="bottom">Ibid, p.7</note>

att.pointing

att.pointing provides a set of attributes used by all elements which point to other elements by means of one or more URI references. [1.3.1.1.2. Language Indicators 3.7. Simple Links and Cross-References]
Moduletei
MemberscatRef gloss licence note ptr ref term
Attributes
targetLangspecifies the language of the content to be found at the destination referenced by target, using a ‘language tag’ generated according to BCP 47.
Status Optional
Datatype teidata.language
Schematron

<sch:rule context="tei:*[not(self::tei:schemaSpec)][@targetLang]">
<sch:assert test="@target">@targetLang should only be used on <sch:name/> if @target is specified.</sch:assert>
</sch:rule>
<linkGrp xml:id="pol-swh_aln_2.1-linkGrp">
 <ptr xml:id="pol-swh_aln_2.1.1-ptr"
  target="pol/UDHR/text.xml#pol_txt_1-headtype="tuvtargetLang="pl"/>

 <ptr xml:id="pol-swh_aln_2.1.2-ptr"
  target="swh/UDHR/text.xml#swh_txt_1-headtype="tuvtargetLang="sw"/>

</linkGrp>

In the example above, the <linkGrp> combines pointers at parallel fragments of the Universal Declaration of Human Rights: one of them is in Polish, the other in Swahili.

Note

The value must conform to BCP 47. If the value is a private use code (i.e., starts with x- or contains -x-), a language element with a matching value for its ident attribute should be supplied in the TEI header to document this value. Such documentation may also optionally be supplied for non-private-use codes, though these must remain consistent with their (IETF)Internet Engineering Task Force definitions.

targetspecifies the destination of the reference by supplying one or more URI References
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
Note

One or more syntactically valid URI references, separated by whitespace. Because whitespace is used to separate URIs, no whitespace is permitted inside a single URI. If a whitespace character is required in a URI, it should be escaped with the normal mechanism, e.g. TEI%20Consortium.

evaluate(evaluate) specifies the intended meaning when the target of a pointer is itself a pointer.
Status Optional
Datatype teidata.enumerated
Legal values are:
all
if the element pointed to is itself a pointer, then the target of that pointer will be taken, and so on, until an element is found which is not a pointer.
one
if the element pointed to is itself a pointer, then its target (whether a pointer or not) is taken as the target of this pointer.
none
no further evaluation of targets is carried out beyond that needed to find the element specified in the pointer's target.
Note

If no value is given, the application program is responsible for deciding (possibly on the basis of user input) how far to trace a chain of pointers.

att.ranging

att.ranging provides attributes for describing numerical ranges.
Moduletei
Membersatt.dimensions [add date del gap time unclear] num
Attributes
atLeastgives a minimum estimated value for the approximate measurement.
Status Optional
Datatype teidata.numeric
atMostgives a maximum estimated value for the approximate measurement.
Status Optional
Datatype teidata.numeric
minwhere the measurement summarizes more than one observation or a range, supplies the minimum value observed.
Status Optional
Datatype teidata.numeric
maxwhere the measurement summarizes more than one observation or a range, supplies the maximum value observed.
Status Optional
Datatype teidata.numeric
confidencespecifies the degree of statistical confidence (between zero and one) that a value falls within the range specified by min and max, or the proportion of observed values that fall within that range.
Status Optional
Datatype teidata.probability
Example
The MS. was lost in transmission by mail from <del rend="overstrike">
 <gap reason="illegible"
  extent="one or two lettersatLeast="1atMost="2unit="chars"/>

</del> Philadelphia to the Graphic office, New York.
Example
Americares has been supporting the health sector in Eastern
Europe since 1986, and since 1992 has provided <measure atLeast="120000000unit="USD"
 commodity="currency">
more than
$120m</measure> in aid to Ukrainians.

att.resourced

att.resourced provides attributes by which a resource (such as an externally held media file) may be located.
Moduletei
Membersgraphic
Attributes
url(uniform resource locator) specifies the URL from which the media concerned may be obtained.
Status Required
Datatype teidata.pointer

att.segLike

att.segLike provides attributes for elements used for arbitrary segmentation. [17.3. Blocks, Segments, and Anchors 18.1. Linguistic Segment Categories]
Moduletei
Memberspc s seg w
Attributes
function(function) characterizes the function of the segment.
Status Optional
Datatype teidata.enumerated
Note

Attribute values will often vary depending on the type of element to which they are attached. For example, a <cl>, may take values such as coordinate, subject, adverbial etc. For a <phr>, such values as subject, predicate etc. may be more appropriate. Such constraints will typically be implemented by a project-defined customization.

att.sortable

att.sortable provides attributes for elements in lists or groups that are sortable, but whose sorting key cannot be derived mechanically from the element content. [10.1. Dictionary Body and Overall Structure]
Moduletei
Membersbibl idno item list listBibl term
Attributes
sortKeysupplies the sort key for this element in an index, list or group which contains it.
Status Optional
Datatype teidata.word
David's other principal backer, Josiah
ha-Kohen <index indexName="NAMES">
 <term sortKey="Azarya_Josiah_Kohen">Josiah ha-Kohen b. Azarya</term>
</index> b. Azarya, son of one of the last gaons of Sura was David's own first
cousin.
Note

The sort key is used to determine the sequence and grouping of entries in an index. It provides a sequence of characters which, when sorted with the other values, will produced the desired order; specifics of sort key construction are application-dependent

Dictionary order often differs from the collation sequence of machine-readable character sets; in English-language dictionaries, an entry for 4-H will often appear alphabetized under ‘fourh’, and McCoy may be alphabetized under ‘maccoy’, while A1, A4, and A5 may all appear in numeric order ‘alphabetized’ between ‘a-’ and ‘AA’. The sort key is required if the orthography of the dictionary entry does not suffice to determine its location.

att.spanning

att.spanning provides attributes for elements which delimit a span of text by pointing mechanisms rather than by enclosing it. [12.3.1.4. Additions and Deletions 1.3.1. Attribute Classes]
Moduletei
Membersindex lb milestone pb
Attributes
spanToindicates the end of a span initiated by the element bearing this attribute.
Status Optional
Datatype teidata.pointer
SchematronThe @spanTo attribute must point to an element following the current element

<sch:rule context="tei:*[@spanTo]">
<sch:assert test="id(substring(@spanTo,2)) and following::*[@xml:id=substring(current()/@spanTo,2)]">The element indicated by @spanTo (<sch:value-of select="@spanTo"/>) must follow the current element <sch:name/>
</sch:assert>
</sch:rule>
Note

The span is defined as running in document order from the start of the content of the pointing element to the end of the content of the element pointed to by the spanTo attribute (if any). If no value is supplied for the attribute, the assumption is that the span is coextensive with the pointing element. If no content is present, the assumption is that the starting point of the span is immediately following the element itself.

att.tableDecoration

att.tableDecoration provides attributes used to decorate rows or cells of a table. [15. Tables, Formulæ, Graphics, and Notated Music]
Modulefigures
Memberscell row
Attributes
role(role) indicates the kind of information held in this cell or in each cell of this row.
Status Optional
Datatype teidata.enumerated
Suggested values include:
label
labelling or descriptive information only.
data
data values. [Default]
Note

When this attribute is specified on a row, its value is the default for all cells in this row. When specified on a cell, its value overrides any default specified by the role attribute of the parent row element.

rows(rows) indicates the number of rows occupied by this cell or row.
Status Optional
Datatype teidata.count
Default 1
Note

A value greater than one indicates that this cell spans several rows. Where several cells span multiple rows, it may be more convenient to use nested tables.

cols(columns) indicates the number of columns occupied by this cell or row.
Status Optional
Datatype teidata.count
Default 1
Note

A value greater than one indicates that this cell or row spans several columns. Where an initial cell spans an entire row, it may be better treated as a heading.

att.timed

att.timed provides attributes common to those elements which have a duration in time, expressed either absolutely or by reference to an alignment map. [8.3.5. Temporal Information]
Moduletei
Membersgap
Attributes
startindicates the location within a temporal alignment at which this element begins.
Status Optional
Datatype teidata.pointer
Note

If no value is supplied, the element is assumed to follow the immediately preceding element at the same hierarchic level.

endindicates the location within a temporal alignment at which this element ends.
Status Optional
Datatype teidata.pointer
Note

If no value is supplied, the element is assumed to precede the immediately following element at the same hierarchic level.

att.transcriptional

att.transcriptional provides attributes specific to elements encoding authorial or scribal intervention in a text when transcribing manuscript or similar sources. [12.3.1.4. Additions and Deletions]
Moduletei
Membersadd del
Attributes
statusindicates the effect of the intervention, for example in the case of a deletion, strikeouts which include too much or too little text, or in the case of an addition, an insertion which duplicates some of the text already present.
Status Optional
Datatype teidata.enumerated
Sample values include:
duplicate
all of the text indicated as an addition duplicates some text that is in the original, whether the duplication is word-for-word or less exact.
duplicate-partial
part of the text indicated as an addition duplicates some text that is in the original
excessStart
some text at the beginning of the deletion is marked as deleted even though it clearly should not be deleted.
excessEnd
some text at the end of the deletion is marked as deleted even though it clearly should not be deleted.
shortStart
some text at the beginning of the deletion is not marked as deleted even though it clearly should be.
shortEnd
some text at the end of the deletion is not marked as deleted even though it clearly should be.
partial
some text in the deletion is not marked as deleted even though it clearly should be.
unremarkable
the deletion is not faulty. [Default]
Note

Status information on each deletion is needed rather rarely except in critical editions from authorial manuscripts; status information on additions is even less common.

Marking a deletion or addition as faulty is inescapably an interpretive act; the usual test applied in practice is the linguistic acceptability of the text with and without the letters or words in question.

causedocuments the presumed cause for the intervention.
Status Optional
Datatype teidata.enumerated
seq(sequence) assigns a sequence number related to the order in which the encoded features carrying this attribute are believed to have occurred.
Status Optional
Datatype teidata.count

att.translatable

att.translatable provides attributes used to indicate the status of a translatable portion of an ODD document.
Moduletagdocs
Membersdesc gloss
Attributes
versionDatespecifies the date on which the source text was extracted and sent to the translator
Status Optional
Datatype teidata.temporal.working
Note

The versionDate attribute can be used to determine whether a translation might need to be revisited, by comparing the modification date on the containing file with the versionDate value on the translation. If the file has changed, changelogs can be checked to see whether the source text has been modified since the translation was made.

att.typed

att.typed provides attributes that can be used to classify or subclassify elements in any way. [1.3.1. Attribute Classes 18.1.1. Words and Above 3.6.1. Referring Strings 3.7. Simple Links and Cross-References 3.6.5. Abbreviations and Their Expansions 3.13.1. Core Tags for Verse 7.2.5. Speech Contents 4.1.1. Un-numbered Divisions 4.1.2. Numbered Divisions 4.2.1. Headings and Trailers 4.4. Virtual Divisions 14.3.2.3. Personal Relationships 12.3.1.1. Core Elements for Transcriptional Work 17.1.1. Pointers and Links 17.3. Blocks, Segments, and Anchors 13.2. Linking the Apparatus to the Text 23.5.1.2. Defining Content Models: RELAX NG 8.3. Elements Unique to Spoken Texts 24.3.1.3. Modification of Attribute and Attribute Value Lists]
Moduletei
MembersTEI abbr add anchor bibl change cit corr date del desc div divGen figure gloss graphic group head ident idno label lb lg list listBibl milestone name note num pb pc ptr ref reg relatedItem rs s seg table teiCorpus term text time title titlePage titlePart trailer w
Attributes
typecharacterizes the element in some sense, using any convenient classification scheme or typology.
Status Optional
Datatype teidata.enumerated
<div type="verse">
 <head>Night in Tarras</head>
 <lg type="stanza">
  <l>At evening tramping on the hot white road</l>
  <l></l>
 </lg>
 <lg type="stanza">
  <l>A wind sprang up from nowhere as the sky</l>
  <l></l>
 </lg>
</div>
Note

The type attribute is present on a number of elements, not all of which are members of att.typed, usually because these elements restrict the possible values for the attribute in a specific way.

subtype(subtype) provides a sub-categorization of the element, if needed
Status Optional
Datatype teidata.enumerated
Note

The subtype attribute may be used to provide any sub-classification for the element additional to that provided by its type attribute.

Schematron

<sch:rule context="tei:*[@subtype]">
<sch:assert test="@type">The <sch:name/> element should not be categorized in detail with @subtype unless also categorized in general with @type</sch:assert>
</sch:rule>
Note

When appropriate, values from an established typology should be used. Alternatively a typology may be defined in the associated TEI header. If values are to be taken from a project-specific list, this should be defined using the <valList> element in the project-specific schema description, as described in 24.3.1.3. Modification of Attribute and Attribute Value Lists .

att.written

att.written provides attributes to indicate the hand in which the content of an element was written in the source being transcribed. [1.3.1. Attribute Classes]
Moduletei
Membersatt.transcriptional [add del] closer div figure head hi label note opener p postscript salute seg signed stage text trailer
Attributes
handpoints to a <handNote> element describing the hand considered responsible for the content of the element concerned.
Status Optional
Datatype teidata.pointer

Schema tei_lite: Datatypes

teidata.certainty

teidata.certainty defines the range of attribute values expressing a degree of certainty.
Moduletei
Used by
Content model
<content>
 <valList type="closed">
  <valItem ident="high"/>
  <valItem ident="medium"/>
  <valItem ident="low"/>
  <valItem ident="unknown"/>
 </valList>
</content>
Declaration
teidata.certainty = "high" | "medium" | "low" | "unknown"
Note

Certainty may be expressed by one of the predefined symbolic values high, medium, or low. The value unknown should be used in cases where the encoder does not wish to assert an opinion about the matter.

teidata.count

teidata.count defines the range of attribute values used for a non-negative integer value used as a count.
Moduletei
Used by
Element:
Content model
<content>
 <dataRef name="nonNegativeInteger"/>
</content>
Declaration
teidata.count = xsd:nonNegativeInteger
Note

Any positive integer value or zero is permitted

teidata.duration.iso

teidata.duration.iso defines the range of attribute values available for representation of a duration in time using ISO 8601 standard formats
Moduletei
Used by
Content model
<content>
 <dataRef name="token"
  restriction="[0-9.,DHMPRSTWYZ/:+\-]+"/>

</content>
Declaration
teidata.duration.iso = token { pattern = "[0-9.,DHMPRSTWYZ/:+\-]+" }
Example
<time dur-iso="PT0,75H">three-quarters of an hour</time>
Example
<date dur-iso="P1,5D">a day and a half</date>
Example
<date dur-iso="P14D">a fortnight</date>
Example
<time dur-iso="PT0.02S">20 ms</time>
Note

A duration is expressed as a sequence of number-letter pairs, preceded by the letter P; the letter gives the unit and may be Y (year), M (month), D (day), H (hour), M (minute), or S (second), in that order. The numbers are all unsigned integers, except for the last, which may have a decimal component (using either . or , as the decimal point; the latter is preferred). If any number is 0, then that number-letter pair may be omitted. If any of the H (hour), M (minute), or S (second) number-letter pairs are present, then the separator T must precede the first ‘time’ number-letter pair.

For complete details, see ISO 8601 Data elements and interchange formats — Information interchange — Representation of dates and times.

teidata.duration.w3c

teidata.duration.w3c defines the range of attribute values available for representation of a duration in time using W3C datatypes.
Moduletei
Used by
Content model
<content>
 <dataRef name="duration"/>
</content>
Declaration
teidata.duration.w3c = xsd:duration
Example
<time dur="PT45M">forty-five minutes</time>
Example
<date dur="P1DT12H">a day and a half</date>
Example
<date dur="P7D">a week</date>
Example
<time dur="PT0.02S">20 ms</time>
Note

A duration is expressed as a sequence of number-letter pairs, preceded by the letter P; the letter gives the unit and may be Y (year), M (month), D (day), H (hour), M (minute), or S (second), in that order. The numbers are all unsigned integers, except for the S number, which may have a decimal component (using . as the decimal point). If any number is 0, then that number-letter pair may be omitted. If any of the H (hour), M (minute), or S (second) number-letter pairs are present, then the separator T must precede the first ‘time’ number-letter pair.

For complete details, see the W3C specification.

teidata.enumerated

teidata.enumerated defines the range of attribute values expressed as a single XML name taken from a list of documented possibilities.
Moduletei
Used by
Element:
Content model
<content>
 <dataRef key="teidata.word"/>
</content>
Declaration
teidata.enumerated = teidata.word
Note

Attributes using this datatype must contain a single ‘word’ which contains only letters, digits, punctuation characters, or symbols: thus it cannot include whitespace.

Typically, the list of documented possibilities will be provided (or exemplified) by a value list in the associated attribute specification, expressed with a <valList> element.

teidata.language

teidata.language defines the range of attribute values used to identify a particular combination of human language and writing system. [6.1. Language Identification]
Moduletei
Used by
Element:
Content model
<content>
 <alternate>
  <dataRef name="language"/>
  <valList>
   <valItem ident=""/>
  </valList>
 </alternate>
</content>
Declaration
teidata.language = xsd:language | ( "" )
Note

The values for this attribute are language ‘tags’ as defined in BCP 47. Currently BCP 47 comprises RFC 5646 and RFC 4647; over time, other IETF documents may succeed these as the best current practice.

A ‘language tag’, per BCP 47, is assembled from a sequence of components or subtags separated by the hyphen character (-, U+002D). The tag is made of the following subtags, in the following order. Every subtag except the first is optional. If present, each occurs only once, except the fourth and fifth components (variant and extension), which are repeatable.

language
The IANA-registered code for the language. This is almost always the same as the ISO 639 2-letter language code if there is one. The list of available registered language subtags can be found at https://www.iana.org/assignments/language-subtag-registry. It is recommended that this code be written in lower case.
script
The ISO 15924 code for the script. These codes consist of 4 letters, and it is recommended they be written with an initial capital, the other three letters in lower case. The canonical list of codes is maintained by the Unicode Consortium, and is available at https://unicode.org/iso15924/iso15924-codes.html. The IETF recommends this code be omitted unless it is necessary to make a distinction you need.
region
Either an ISO 3166 country code or a UN M.49 region code that is registered with IANA (not all such codes are registered, e.g. UN codes for economic groupings or codes for countries for which there is already an ISO 3166 2-letter code are not registered). The former consist of 2 letters, and it is recommended they be written in upper case; the list of codes can be searched or browsed at https://www.iso.org/obp/ui/#search/code/. The latter consist of 3 digits; the list of codes can be found at http://unstats.un.org/unsd/methods/m49/m49.htm.
variant
An IANA-registered variation. These codes ‘are used to indicate additional, well-recognized variations that define a language or its dialects that are not covered by other available subtags’.
extension
An extension has the format of a single letter followed by a hyphen followed by additional subtags. These exist to allow for future extension to BCP 47, but as of this writing no such extensions are in use.
private use
An extension that uses the initial subtag of the single letter x (i.e., starts with x-) has no meaning except as negotiated among the parties involved. These should be used with great care, since they interfere with the interoperability that use of RFC 4646 is intended to promote. In order for a document that makes use of these subtags to be TEI-conformant, a corresponding language element must be present in the TEI header.

There are two exceptions to the above format. First, there are language tags in the IANA registry that do not match the above syntax, but are present because they have been ‘grandfathered’ from previous specifications.

Second, an entire language tag can consist of only a private use subtag. These tags start with x-, and do not need to follow any further rules established by the IETF and endorsed by these Guidelines. Like all language tags that make use of private use subtags, the language in question must be documented in a corresponding language element in the TEI header.

Examples include

sn
Shona
zh-TW
Taiwanese
zh-Hant-HK
Chinese written in traditional script as used in Hong Kong
en-SL
English as spoken in Sierra Leone
pl
Polish
es-MX
Spanish as spoken in Mexico
es-419
Spanish as spoken in Latin America

The W3C Internationalization Activity has published a useful introduction to BCP 47, Language tags in HTML and XML.

teidata.name

teidata.name defines the range of attribute values expressed as an XML Name.
Moduletei
Used by
att giElement:
Content model
<content>
 <dataRef name="Name"/>
</content>
Declaration
teidata.name = xsd:Name
Note

Attributes using this datatype must contain a single word which follows the rules defining a legal XML name (see https://www.w3.org/TR/REC-xml/#dt-name): for example they cannot include whitespace or begin with digits.

teidata.namespace

teidata.namespace defines the range of attribute values used to indicate XML namespaces as defined by the W3C Namespaces in XML Technical Recommendation.
Moduletei
Used by
Content model
<content>
 <dataRef restriction="\S+name="anyURI"/>
</content>
Declaration
teidata.namespace = xsd:anyURI { pattern = "\S+" }
Note

The range of syntactically valid values is defined by RFC 3986 Uniform Resource Identifier (URI): Generic Syntax

teidata.numeric

teidata.numeric defines the range of attribute values used for numeric values.
Moduletei
Used by
Element:
Content model
<content>
 <alternate>
  <dataRef name="double"/>
  <dataRef name="token"
   restriction="(\-?[\d]+/\-?[\d]+)"/>

  <dataRef name="decimal"/>
 </alternate>
</content>
Declaration
teidata.numeric =
   xsd:double | token { pattern = "(\-?[\d]+/\-?[\d]+)" } | xsd:decimal
Note

Any numeric value, represented as a decimal number, in floating point format, or as a ratio.

To represent a floating point number, expressed in scientific notation, ‘E notation’, a variant of ‘exponential notation’, may be used. In this format, the value is expressed as two numbers separated by the letter E. The first number, the significand (sometimes called the mantissa) is given in decimal format, while the second is an integer. The value is obtained by multiplying the mantissa by 10 the number of times indicated by the integer. Thus the value represented in decimal notation as 1000.0 might be represented in scientific notation as 10E3.

A value expressed as a ratio is represented by two integer values separated by a solidus (/) character. Thus, the value represented in decimal notation as 0.5 might be represented as a ratio by the string 1/2.

teidata.outputMeasurement

teidata.outputMeasurement defines a range of values for use in specifying the size of an object that is intended for display.
Moduletei
Used by
Content model
<content>
 <dataRef name="token"
  restriction="[\-+]?\d+(\.\d+)?(%|cm|mm|in|pt|pc|px|em|ex|ch|rem|vw|vh|vmin|vmax)"/>

</content>
Declaration
teidata.outputMeasurement =
   token
   {
      pattern = "[\-+]?\d+(\.\d+)?(%|cm|mm|in|pt|pc|px|em|ex|ch|rem|vw|vh|vmin|vmax)"
   }
Example
<figure>
 <head>The TEI Logo</head>
 <figDesc>Stylized yellow angle brackets with the letters <mentioned>TEI</mentioned> in
   between and <mentioned>text encoding initiative</mentioned> underneath, all on a white
   background.</figDesc>
 <graphic height="600pxwidth="600px"
  url="http://www.tei-c.org/logos/TEI-600.jpg"/>

</figure>
Note

These values map directly onto the values used by XSL-FO and CSS. For definitions of the units see those specifications; at the time of this writing the most complete list is in the CSS3 working draft.

teidata.pattern

teidata.pattern defines attribute values which are expressed as a regular expression.
Moduletei
Used by
Content model
<content>
 <dataRef name="token"/>
</content>
Declaration
teidata.pattern = token
Note
A regular expression, often called a pattern, is an expression that describes a set of strings. They are usually used to give a concise description of a set, without having to list all elements. For example, the set containing the three strings Handel, Händel, and Haendel can be described by the pattern H(ä|ae?)ndel (or alternatively, it is said that the pattern H(ä|ae?)ndel matches each of the three strings)
Wikipedia

This TEI datatype is mapped to the XSD token datatype, and may therefore contain any string of characters. However, it is recommended that the value used conform to the particular flavour of regular expression syntax supported by XSD Schema.

teidata.pointer

teidata.pointer defines the range of attribute values used to provide a single URI, absolute or relative, pointing to some other resource, either within the current document or elsewhere.
Moduletei
Used by
Element:
Content model
<content>
 <dataRef restriction="\S+name="anyURI"/>
</content>
Declaration
teidata.pointer = xsd:anyURI { pattern = "\S+" }
Note

The range of syntactically valid values is defined by RFC 3986 Uniform Resource Identifier (URI): Generic Syntax. Note that the values themselves are encoded using RFC 3987 Internationalized Resource Identifiers (IRIs) mapping to URIs. For example, https://secure.wikimedia.org/wikipedia/en/wiki/% is encoded as https://secure.wikimedia.org/wikipedia/en/wiki/%25 while http://موقع.وزارة-الاتصالات.مصر/ is encoded as http://xn--4gbrim.xn----rmckbbajlc6dj7bxne2c.xn--wgbh1c/

teidata.probability

teidata.probability defines the range of attribute values expressing a probability.
Moduletei
Used by
Content model
<content>
 <dataRef name="double">
  <dataFacet name="minInclusivevalue="0"/>
  <dataFacet name="maxInclusivevalue="1"/>
 </dataRef>
</content>
Declaration
teidata.probability = xsd:double
Note

Probability is expressed as a real number between 0 and 1; 0 representing certainly false and 1 representing certainly true.

teidata.probCert

teidata.probCert defines a range of attribute values which can be expressed either as a numeric probability or as a coded certainty value.
Moduletei
Used by
Content model
<content>
 <alternate>
  <dataRef key="teidata.probability"/>
  <dataRef key="teidata.certainty"/>
 </alternate>
</content>
Declaration
teidata.probCert = teidata.probability | teidata.certainty

teidata.replacement

teidata.replacement defines attribute values which contain a replacement template.
Moduletei
Used by
Content model
<content>
 <textNode/>
</content>
Declaration
teidata.replacement = text

teidata.temporal.w3c

teidata.temporal.w3c defines the range of attribute values expressing a temporal expression such as a date, a time, or a combination of them, that conform to the W3C XML Schema Part 2: Datatypes Second Edition specification.
Moduletei
Used by
Content model
<content>
 <alternate>
  <dataRef name="date"/>
  <dataRef name="gYear"/>
  <dataRef name="gMonth"/>
  <dataRef name="gDay"/>
  <dataRef name="gYearMonth"/>
  <dataRef name="gMonthDay"/>
  <dataRef name="time"/>
  <dataRef name="dateTime"/>
 </alternate>
</content>
Declaration
teidata.temporal.w3c =
   xsd:date
 | xsd:gYear
 | xsd:gMonth
 | xsd:gDay
 | xsd:gYearMonth
 | xsd:gMonthDay
 | xsd:time
 | xsd:dateTime
Note

If it is likely that the value used is to be compared with another, then a time zone indicator should always be included, and only the dateTime representation should be used.

teidata.temporal.working

teidata.temporal.working defines the range of values, conforming to the W3C XML Schema Part 2: Datatypes Second Edition specification, expressing a date or a date and a time within the working life of the document.
Moduletei
Used by
Content model
<content>
 <alternate>
  <dataRef name="date"
   restriction="(19[789][0-9]|[2-9][0-9]{3}).*"/>

  <dataRef name="dateTime"
   restriction="(19[789][0-9]|[2-9][0-9]{3}).*"/>

 </alternate>
</content>
Declaration
teidata.temporal.working =
   xsd:date { pattern = "(19[789][0-9]|[2-9][0-9]{3}).*" }
 | xsd:dateTime { pattern = "(19[789][0-9]|[2-9][0-9]{3}).*" }
Note

If it is likely that the value used is to be compared with another, then a time zone indicator should always be included, and only the dateTime representation should be used.

The earliest time expressable with this datatype is 01 January 1970 (the Unix Epoch), which could be written as either 1970-01-01 or 1970-01-01T00:00:00Z.

teidata.text

teidata.text defines the range of attribute values used to express some kind of identifying string as a single sequence of Unicode characters possibly including whitespace.
Moduletei
Used by
Content model
<content>
 <dataRef name="string"/>
</content>
Declaration
teidata.text = string
Note

Attributes using this datatype must contain a single ‘token’ in which whitespace and other punctuation characters are permitted.

teidata.truthValue

teidata.truthValue defines the range of attribute values used to express a truth value.
Moduletei
Used by
Element:
Content model
<content>
 <dataRef name="boolean"/>
</content>
Declaration
teidata.truthValue = xsd:boolean
Note

The possible values of this datatype are 1 or true, or 0 or false.

This datatype applies only for cases where uncertainty is inappropriate; if the attribute concerned may have a value other than true or false, e.g. unknown, or inapplicable, it should have the extended version of this datatype: teidata.xTruthValue.

teidata.unboundedCount

teidata.unboundedCount defines the range of values used for a counting number or the string unbounded for infinity.
Moduletei
Used by
Content model
<content>
 <alternate>
  <dataRef name="nonNegativeInteger"/>
  <valList type="closed">
   <valItem ident="unbounded"/>
  </valList>
 </alternate>
</content>
Declaration
teidata.unboundedCount = xsd:nonNegativeInteger | ( "unbounded" )

teidata.version

teidata.version defines the range of attribute values which may be used to specify a TEI or Unicode version number.
Moduletei
Used by
Element:
Content model
<content>
 <dataRef name="token"
  restriction="[\d]+(\.[\d]+){0,2}"/>

</content>
Declaration
teidata.version = token { pattern = "[\d]+(\.[\d]+){0,2}" }
Note

The value of this attribute follows the pattern specified by the Unicode consortium for its version number (https://unicode.org/versions/). A version number contains digits and fullstop characters only. The first number supplied identifies the major version number. A second and third number, for minor and sub-minor version numbers, may also be supplied.

teidata.versionNumber

teidata.versionNumber defines the range of attribute values used for version numbers.
Moduletei
Used by
Content model
<content>
 <dataRef name="token"
  restriction="[\d]+[a-z]*[\d]*(\.[\d]+[a-z]*[\d]*){0,3}"/>

</content>
Declaration
teidata.versionNumber =
   token { pattern = "[\d]+[a-z]*[\d]*(\.[\d]+[a-z]*[\d]*){0,3}" }

teidata.word

teidata.word defines the range of attribute values expressed as a single word or token.
Moduletei
Used by
teidata.enumeratedElement:
Content model
<content>
 <dataRef name="token"
  restriction="[^\p{C}\p{Z}]+"/>

</content>
Declaration
teidata.word = token { pattern = "[^\p{C}\p{Z}]+" }
Note

Attributes using this datatype must contain a single ‘word’ which contains only letters, digits, punctuation characters, or symbols: thus it cannot include whitespace.

teidata.xmlName

teidata.xmlName defines attribute values which contain an XML name.
Moduletei
Used by
Content model
<content>
 <dataRef name="NCName"/>
</content>
Declaration
teidata.xmlName = xsd:NCName
Note

The rules defining an XML name form a part of the XML Specification.

teidata.xpath

teidata.xpath defines attribute values which contain an XPath expression.
Moduletei
Used by
Content model
<content>
 <textNode/>
</content>
Declaration
teidata.xpath = text
Note

Any XPath expression using the syntax defined in 6.2. .

When writing programs that evaluate XPath expressions, programmers should be mindful of the possibility of malicious code injection attacks. For further information about XPath injection attacks, see the article at OWASP.

teidata.xTruthValue

teidata.xTruthValue (extended truth value) defines the range of attribute values used to express a truth value which may be unknown.
Moduletei
Used by
Content model
<content>
 <alternate>
  <dataRef name="boolean"/>
  <valList>
   <valItem ident="unknown"/>
   <valItem ident="inapplicable"/>
  </valList>
 </alternate>
</content>
Declaration
teidata.xTruthValue = xsd:boolean | ( "unknown" | "inapplicable" )
Note

In cases where where uncertainty is inappropriate, use the datatype teidata.TruthValue.

Schema tei_lite: Macros

macro.limitedContent

macro.limitedContent (paragraph content) defines the content of prose elements that are not used for transcription of extant materials. [1.3. The TEI Class System]
Moduletei
Used by
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.limitedPhrase"/>
  <classRef key="model.inter"/>
 </alternate>
</content>
Declaration
macro.limitedContent = ( text | model.limitedPhrase | model.inter )*

macro.paraContent

macro.paraContent (paragraph content) defines the content of paragraphs and similar elements. [1.3. The TEI Class System]
Moduletei
Used by
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.paraPart"/>
 </alternate>
</content>
Declaration
macro.paraContent = ( text | model.paraPart )*

macro.phraseSeq

macro.phraseSeq (phrase sequence) defines a sequence of character data and phrase-level elements. [1.4.1. Standard Content Models]
Moduletei
Used by
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.attributable"/>
  <classRef key="model.phrase"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Declaration
macro.phraseSeq =
   ( text | model.gLike | model.attributable | model.phrase | model.global )*

macro.phraseSeq.limited

macro.phraseSeq.limited (limited phrase sequence) defines a sequence of character data and those phrase-level elements that are not typically used for transcribing extant documents. [1.4.1. Standard Content Models]
Moduletei
Used by
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.limitedPhrase"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Declaration
macro.phraseSeq.limited = ( text | model.limitedPhrase | model.global )*

macro.specialPara

macro.specialPara ('special' paragraph content) defines the content model of elements such as notes or list items, which either contain a series of component-level elements or else have the same structure as a paragraph, containing a series of phrase-level and inter-level elements. [1.3. The TEI Class System]
Moduletei
Used by
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.phrase"/>
  <classRef key="model.inter"/>
  <classRef key="model.divPart"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Declaration
macro.specialPara =
   (
      text
    | model.gLikemodel.phrasemodel.intermodel.divPartmodel.global
   )*
Notes
1
A namespace is an XML concept. Its function is to identify the vocabulary from which a group of element names are drawn, using a standard identifier resembling a web address. The namespace for all TEI elements is http://www.tei-c.org/ns/1.0
2
The relevant standard is Best Current Practice 47 (http://tools.ietf.org/html/bcp47). The authoritative list of registered subtags is maintained by IANA and is available at http://www.iana.org/assignments/language-subtag-registry. For a general overview of the construction of language tags, see http://www.w3.org/International/articles/language-tags/, and for a practical step-by-step guide, see http://www.w3.org/International/questions/qa-choosing-language-tags.
3
The full TEI provides a range of elements for encoding metadata about manuscript production and description, which are not however included in TEI Lite
4
The analysis is taken, with permission, from Willard McCarty and Burton Wright, An Analytical Onomasticon to the Metamorphoses of Ovid (Princeton: Princeton University Press, forthcoming). Some simplifications have been undertaken.
Lou Burnard and C. M. Sperberg-McQueen. Date: August 2012