An Introduction to TEI simplePrint
Lou Burnard
Martin Mueller
Sebastian Rahtz
James Cummings
Magdalena Turska
January 2017

Preface

This document is the formal specification for TEI simplePrint, an entry-level customization of the Text Encoding Initiative (TEI) Guidelines, intended to be generally useful to a large variety of encoders attempting to cope with the standardized representation of a variety of documents in digital form.

Like every other TEI customization, TEI simplePrint was designed for use with a particular type of material. If the material you are planning to encode matches the following criteria, then TEI simplePrint is for you. If it does not, it may not be.

If your needs go beyond those summarized here, simplePrint may still be a good point of departure, and may be very useful as a basis for the creation of your own TEI customisation. We don't however discuss the creation of a TEI customization in this document: the TEI website provides a number of links to tutorial material and tools which may assist in this process.

The present document is intended to be generally comprehensible and accessible, but does assume some knowledge of XML (the encoding language used by the TEI), and of the way it is used by the TEI. Further information on both these topics are available from many places, not least the TEI's own web site at http://www.tei-c.org.

The TEI simplePrint schema was first elaborated as a part of the TEI Simple project funded by the Andrew W. Mellon Foundation (2012-2014). The project sought to define a new ‘highly-constrained and prescriptive subset’ of the Text Encoding Initiative (TEI) Guidelines suited to the representation of early modern print materials, a formally-defined set of processing rules which permit modern web applications to easily present and analyze the encoded texts, mapping to other ontologies, and processes to describe the encoding status and richness of a TEI digital text. Its choice of elements reflected the practices followed in the encoding of large-scale literary archives, notably those produced by the Text Creation Partnership. Practice of other comparable archives such as the German Text Archive was also taken into account.

The most distinctive feature of TEI simplePrint is its use of the TEI Processing Model, which provides explicit and recommended options for the display or processing of every textual element. Programmers developing systems to handle texts encoded with TEI simplePrint do not have to look beyond this when building stylesheets or other components. This greatly reduces the complexity of developing applications that will work reliably and consistently for many users and across large corpora of documents.

The TEI simplePrint schema and the TEI Processing Model were first defined by a working group led by Martin Mueller (Northwestern University) and Sebastian Rahtz (Oxford University). Major contributions to the project were made by Magdalena Turska (Oxford University), James Cummings (Oxford University), and Brian Pytlik Zillig. The changes to the TEI scheme needed to support the TEI Processing Model were reviewed and approved by the TEI Technical Council for inclusion in release 3.0.0 of TEI P5 in February 2016. The present document was extensively revised and extended by Lou Burnard in July 2016 for submission to the TEI Technical Council.

Table of contents

1 A Short Example

We begin with a short example. How should we go about transferring into a computer a passage of prose, such as the start of the last chapter of Charlotte Brontë's novel Jane Eyre? We might start by simply copying what we see on the printed page, typing it in such a way that what appears on the screen looks as similar as possible, for example, by retaining the original line breaks, by introducing blanks to represent the layout of the original headings, page breaks, and paragraphs, and so forth. Of course, the possibilities are limited by the nature of the computer program we use to capture the text: it may not be possible for example to reflect accurately the typographic characteristics of our source with all such software. Some characters in the printed text (such as the accented letter a in faàl or the long dash) may not be available on the keyboard; some typographic distinctions (such as that between small capitals and full capitals) may not be readily accessible. Our first attempt tries to mimic the appearance of the former, and simply ignores the latter.

                                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 in TEI simplePrint. 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 in a standardized way:
  • Paragraph and chapter divisions are now marked explicitly by means of tags rather than implicitly by white space.
  • Apostrophes are retained, but the quotation marks indicating direct speech have been removed, and direct speech is now marked explicitly by means of a tag.
  • The accented letter and the long dash are accurately represented, using the appropriate Unicode character.
  • Page divisions have been marked with an empty pb tag; the page heading and running text have been suppressed.
  • The lineation of the original has also been suppressed 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 encoding is expressed in TEI XML, a very widely used and standardized method of representing information about a document within the document itself. The transcribed words are complemented by special flags within angle brackets, called tags, which both characterise and mark the beginning and end of a string of characters. For example, each paragraph is marked by a tag <p> at its start, and a corresponding </p> at its end. We don't elaborate further on the syntax of TEI XML here. 1

Aside from its syntax, it is important to note that this particular encoding represents a set of choices or priorities. We have chosen to prioritize and simplify the representation of the words of the text over the representation of the typographic layout associated with them in this source document. This makes it easier for a computer to answer questions about the words in the document than about its typesetting, reflecting our research priorities. This priority also leads us to suppress end-of-line hyphenation. 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. Similarly, our decision makes it impossible to use this transcription as a means of statistically analysing hyphenation practice. An encoding makes explicit all and 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 to address other research priorities. For example:

In the remainder of this document, we present a number of TEI-recommended ways of supporting these and other encoding requirements. These ways generally involve the application of specific TEI XML elements, selected from the full range of possibilities documented in the TEI Guidelines. Like every other TEI project, TEI Simple proposes a view of the TEI Guidelines. This document defines and documents that view.

2 The Structure of a TEI simplePrint Document

A TEI-conformant text contains (a) a TEI header (marked up as a teiHeader element) and (b) one or more representations of a text. These representations may be of three kinds: a transcribed text, marked up as a text element; a collection of digital images representing the text, marked up using a facsimile element; or a literal transcription of one or more documents instantiating the text, marked up using the <sourceDoc> element.

These elements are combined together to form a single TEI element, which must be declared within the TEI namespace, and therefore usually takes the form <TEI xmlns="http://www.tei-c.org/ns/1.0"> 2.

Some aspects of the TEI header are described in more detail in section 15 The Electronic Title Page. In what follows, we will focus chiefly on the use of the text element, though we describe one way of using the facsimile element in combination with it or alone in section 14 Encoding a Digital Facsimile. We do not consider the <sourceDoc> element further, since it is mainly used in very specialised applications for which TEI simplePrint would not be appropriate.

A 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 optional front or back matter such as title pages, prefaces, appendixes etc. We use the term body for whatever comes between these in the source document. We discuss various kinds of composite text in section 12 Composite and Floating Texts below.

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>

In each of the following sections we include a short list of the TEI elements under discussion, along with a brief description, and in most cases an example of how they are used. Throughout the text, element names are linked to their detailed reference documentation, as given in the TEI Guidelines. Note that most of the examples provided by the reference documentation, and all of the links, are not specific to TEI simplePrint.

For example, here are the elements discussed so far:

3 Encoding the Body

As indicated above, a unitary text is encoded by means of a text element, which may contain the following elements:

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

3.1 Text Division Elements and Global Attributes

The body of a prose text may be just a series of paragraphs or similar blocks of text, or these may be grouped together into chapters, sections, subsections, etc. The div element is used to represent any such grouping of blocks.

  • div (text division) contains a subdivision of the front, body, or back of a text.
    type [att.typed]characterizes the element in some sense, using any convenient classification scheme or typology.

The type attribute on the div element may be used to supply a conventional name for this category of text division in order to distinguish them. Typical values might be book, chapter, section, part, poem, song, etc. TEI simplePrint does not constrain the range of values that may be used here.

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.

Here as elsewhere 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 3.7 Cross References and Links. It is good practice 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.

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 the xml:id attribute, 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 3.5.3 Foreign Words or Expressions below.

The rendition attribute may be used to supply information about the rendition (appearance) of a division, or any other element, as further discussed in section 3.5 Marking Highlighted Phrases below. Note that this attribute is used to describe the appearance of the source text, rather than the appearance of any intended output when the encoded text is displayed. The two may of course be similar, or identical, but the TEI does not assume or require this.

These four attributes, xml:id, n, xml:lang, and rendition are so widely useful that they are allowed on any element in any TEI schema: they are called global attributes. Other attributes defined in the TEI simplePrint schema are discussed in section 3.7.3 Special Kinds of Linking.

As noted above, the value of every xml:id attribute must be unique within a document. One simple way of ensuring this 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.

3.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 found at the beginning or ending of text divisions are discussed below in section 13.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="UGT101n="1type="chapter">
  <head>Mellstock-Lane</head>
  <p>To dwellers in a wood almost every species of tree ... </p>
 </div>
</div>

3.3 Textual Components

In prose texts such as the Brontë example above, the divisions are generally composed of paragraphs, represented as p elements, though in some circumstances it may be preferred to use the ‘anonymous block’ element ab. In poetic or dramatic texts different elements are used, representing stanzas and verse lines in the first case, and individual speeches or stage directions in the second:

  • p (paragraph) marks paragraphs in prose.
  • ab (anonymous block) contains any component-level unit of text, acting as a container for phrase or inter level elements analogous to, but without the same constraints as, a paragraph.
  • 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.

We discuss each of these kinds of component separately below.

3.3.1 Verse

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>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: as elsewhere the original lineation of the source text is not therefore preserved by this encoding. The lb element described in section 3.4 Page and Line Numbers might additionally be used to mark typographic lines if so desired.

In a poetic text it may also be considered useful to identify the rhymes, for which the following element may be used:
  • rhyme marks the rhyming part of a metrical line.
    labelprovides a label (usually a single letter) to identify which part of a rhyme scheme this rhyming string instantiates.
The following example shows how this element might be used both to identify rhyming words or word parts and to assign each rhyme to a part of a rhyming pattern by means of its label attribute. The rhyming pattern here is specified by the rhyme attribute supplied on the lg representing the stanza within which the pattern operates:
<lg rhyme="AABCCBBA">
 <l>The sunlight on the <rhyme label="A">garden</rhyme>
 </l>
 <l>
  <rhyme label="A">Harden</rhyme>s and grows <rhyme label="B">cold</rhyme>,</l>
 <l>We cannot cage the <rhyme label="C">minute</rhyme>
 </l>
 <l>Wi<rhyme label="C">thin it</rhyme>s nets of <rhyme label="B">gold</rhyme>
 </l>
 <l>When all is <rhyme label="B">told</rhyme>
 </l>
 <l>We cannot beg for <rhyme label="A">pardon</rhyme>.</l>
</lg>
The rhyme attribute may be used independently of the rhyme element, or in combination with it, as above.

3.3.2 Drama

A dramatic text contains speeches, which may be in prose or verse, and will also contain stage directions. The sp element is used to represent each identified speech. It contains an optional speaker indication, marked with the speaker element, which can be followed by one or more l or p elements, depending on whether the speech is considered to be in prose or in verse. Stage directions, whether within or between speeches, are marked using the stage element.

For example:
<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 <hi>on</hi> 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>
In a verse drama, 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 rendition="#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 value of the part attribute may indicate just that the element bearing is fragmented in some (unspecified) respect rather than a complete verse line (part="Y"); alternatively it may indicate whether this is an initial (I), medial (M) or F (final) fragment.
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 type="stanzapart="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 items in a list of the characters in the novel. In the case of a play, this list of characters might appear in the original source as a cast list or dramatic personae, which might be marked up using the castList element described in section 13.2.2 Specialized Front and Back Matter below. Such a list would not, of course, be appropriate to provide descriptive information about each character, much of which does not appear in the original source. Instead a particDesc (participant description) element should be provided in the TEI header, as further discussed in section 15.3 The Profile Description below.

3.3.3 Other Kinds of Text Block

As mentioned above, the ab element may also be used in preference to the p element. It should be used for blocks of text which are not clearly paragraphs, verse lines, or dramatic speeches. Typical examples include the canonical verses of the Bible, and the textual blocks of other ancient documents which predate the invention of the paragraph, such as Greek inscriptions or Egyptian hieroglyphs. The element is also useful as a means of encoding more specialized kinds of textual block, such as the question and answer structure of a catechism, or the highly formalized substructure of a legal document (if div is not considered appropriate for these). In more modern documents, it can be used to encode semi-organized or fragmentary materials such as an artist's notebook or work in progress; or to faithfully capture the substructure of a file produced by an OCR system.

3.4 Page and Line Numbers

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

  • pb (page beginning) marks the beginning of a new page in a paginated document.
  • lb (line beginning) marks the beginning of a new (typographic) line in some edition or version of a text.
  • cb (column beginning) marks the beginning of a new column of a text on a multi-column page.
  • 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.
  • fw (forme work) contains a running head (e.g. a header, footer), catchword, or similar material appearing on the current page.

The pb, lb, and cb elements are special cases of a general class of elements known as milestones because they 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, a change of author or style, or in general any significant change in the text not enclosed by an XML element. Unlike other elements, milestone elements do not enclose a piece of text and make an assertion about it; instead they indicate a point in the text where something changes, as indicated by a change in the values of the milestone's attributes unit, which indicates the ‘something’ concerned, and n which indicates the new value.

The pb, lb, and cb elements are shortcuts or syntactic sugar for <milestone unit="page"/> <milestone unit="line"/> and <milestone unit="column"/> respectively.

When working from a paginated original, it is often useful to record its pagination, whether to simplify later proof-reading, or to align the transcribed text with a set of page images, as further discussed below.

Because pb and other milestone elements are empty, they may be placed freely within or between other elements. However, it is recommended practice always to put them at the beginning of whatever unit it is that their presence implies, and not to nest them within elements contained by that unit. For example, in the following example a page break occurs between two lines of a poem:
<l>Mary had a little lamb</l>
<pb n="13"/>
<l>Its fleece was white as snow</l>
The pb element should be placed ahead of all the text encoded on the 13th page. Contrast this with the following less accurate encoding:
<l>Mary had a little lamb</l>
<l>
 <pb n="13"/>Its fleece was white as snow
</l>
This is less accurate because it implies that the second verse line actually begins before the page break.

Similar considerations apply to line breaks (lb), though these are less frequently considered useful when encoding modern printed textual sources. When transcribing manuscripts or early printed books, however, it is often helpful to retain them in an encoding, if only to facilitate alignment of transcription and original. Like pb, the lb element should appear before the text of the line whose start it signals.

If features such as pagination or lineation are marked for more than one edition, the edition in question may be specified by the ed attribute. 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>
When transcribing from a paginated source, the encoder must decide whether to suppress such features as running titles, page signatures, catch words etc., to replace them by a simplified representation using the pb element, perhaps using the n attribute to preserve some of the information, or to preserve them entirely using the fw element. The latter strategy is appropriate in encodings which aim to retain as much information as possible about the original typography; it will however make more complex the processing of the source for other purposes, as in the following example:
<l>He also fix'd the wandering
QUEEN OF NIGHT,</l>
<fw type="sig">Ii 2</fw>
<fw type="catch">Whether</fw>
<pb n="244"/>
<l>Whether she wanes into a scanty orb</l>...
<!-- Thomson, Seasons, 1730-->
The pb element is also used to align parts of a transcription with a digital image of the page concerned. This may be done in a very simple but inflexible way by using the facs attribute to point to each page image concerned:
<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="475facs="ed1p475.png"/> Mary approved the step
unreservedly... </p>
The facs attribute can supply (as here) a filename, or any other form of URI, if for example the page image is stored remotely. One drawback of this simplistic approach is that there must be exactly one image file per page of text. It is not therefore suitable in the case where the available page images represent double page spreads, or where there are multiple images of the same page (for example at different resolutions).

A more powerful approach, discussed in section 14 Encoding a Digital Facsimile below, is to use the facsimile element to define the organisation of the set of images representing the text, and then use the facs attribute to point to individual components of that representation.

3.5 Marking Highlighted Phrases

3.5.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 rendition 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 rendition="simple:bold">, and one in italic <head rendition="simple:italic">.

The values used for the rendition attribute point to definitions provided for the formatting concerned. These definitions are typically provided by a rendition element in the document's header, as further discussed in section 15.2.3 Tagging Declaration.

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 rendition="simple:blackletter">And
   this Indenture further witnesseth</hi> that the said <hi rendition="simple: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.

  • foreign (foreign) identifies a word or phrase as belonging to some language other than that of the surrounding text.
  • label (label) contains any label or heading used to identify part of a text, typically but not exclusively in a list or glossary.
  • title (title) contains a title for any kind of work.

Some features (notably quotations, titles, and foreign words) may be found in a text either marked by highlighting, or with quotation marks. In either case, the element q (as discussed in the following section) should be used. Again, the global rendition attribute can be used to record details of the highlighting used in the source if this is thought useful.

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 be encoded as follows:
<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 be encoded like this:
<p>On the one hand the <hi rendition="simple:italic">Nibelungenlied</hi> is associated with the new rise of
romance of twelfth-century France, the <hi rendition="simple:italic">romans
   d'antiquité</hi>, the romances of Chrétien de Troyes, ...</p>

3.5.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, though many other features are possible. The full TEI Guidelines provide additional elements such as <mentioned> or <said> to distinguish some of these features, but these more specialised elements are not included in TEI simplePrint. In TEI Simple however, we use the quote element for quotation only, and the q element for all other material found within quotation marks in the text.

  • 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.
  • quote (quotation) contains a phrase or passage attributed by the narrator or author to some agency external to the text.
Here is a simple example of a quotation:
<p>Few dictionary makers are likely to
forget Dr. Johnson's description of the lexicographer as <quote>a harmless
   drudge.</quote>
</p>

As elsewhere, the way that a citation or quotation was printed (for example, in-line or set off as a display or block quotation), may be represented using the rendition attribute. 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 q element 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 3.7.3 Special Kinds of Linking.
Direct speech 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 rendition attribute may be used to record the way in which they were rendered in the copy text.

3.5.3 Foreign Words or Expressions

Words, phrases, or longer stretches of text that are not in the main language of the texts may be tagged as such in one of two ways. 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. 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>

As these examples show, the foreign element should not be used to tag foreign words if some other more specific element such as title, or div applies.

The value of the xml:lang attribute on an element applies hierarchically to everything contained by that element, unless overridden:

<div xml:lang="la">
 <p>Pars haec Latine composita est.</p>
 <p xml:lang="en">Except that this sentence is in English.</p>
 <p>Vita brevis, ars longa.</p>
</div>

Here we specify that the whole div element uses the language with the coded identifier la i.e., Latin. Since it is contained by that div there is no need to supply this information again for the first s element. The second s element however overrides this value, and indicates that its content is in English (the language with identifier en). The third s element is again in Latin.

The codes used to identify languages, supplied on the xml:lang attribute, are defined by an international standard3, 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

3.6 Notes

A note is any additional comment found in a text, marked in some way as being out of the main textual stream. A note is always attached to some part of the text, implicitly or explicitly: we call this its target, or its point of attachment. The element note should be used to mark any kind of note whether it appears as a separate block of text in the main text area, at the foot of the page, at the end of the chapter or volume, in the margin, or in some other place.

  • note (note) contains a note or annotation.

Notes may be in a different hand or typeface, may be authorial or editorial, and may have been added later. The attributes type and resp can be used to distinguish between different kinds of notes or identify their authors.

In a printed or written text, the point of attachment for a note is typically represented by a siglum such as an alphanumerical or other character, often in superscripted form. When encoding such a text, it is conventional to replace this siglum by a note element containing the annotation itself, as in the following example:
<p>...some text <note xml:id="n6">a note about some text</note> .... </p>
An alternative approach is to encode the point of attachment wherever it appears in the text, using for example the ref element discussed in the next section, and to place the note element anywhere convenient. The two can then be associated by using the target attribute on the ref element to point to the note element, as in the following example, in which the superscripted ‘7’ indicating the point of attachment has been retained as part of the encoding:
<p>...some text <ref target="#n7"
  rendition="simple:superscript">
7</ref> .... <note xml:id="n7">a note about some text</note>
</p>

It may however be problematic to determine the precise position of the point of attachment, particularly in the case of marginal notes. A marginal note may also be hard to distinguish from a label or subheading which introduces the text with which it is associated. Where the purpose of the note is clearly to label the associated text, rather than to comment on it, the element label may be preferable. Where it is clearly a subheading attached to a distinct subdivision, it may be preferable to start a new element div and encode the subheading as a head. Note however that a head cannot be inserted anywhere except at the beginning of a div. And where (as in some Early Modern English plays) marginal annotation is systematically used to identify speakers, it may be better to represent these using the speaker element introduced above. In cases of doubt, the encoder should decide on a clear policy and preferably document it for the use of others.

3.7 Cross References and Links

Any kind of cross reference or link found at one point in a text which points to another part of the same or another document may be encoded using the ref element discussed 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 3.7.3 Special Kinds of Linking.

3.7.1 Simple Cross References

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

Usually, the presence of a cross-reference or link will be indicated by some text or symbol in the source being encoded, which will then become the content of the ref element. Occasionally, however, and frequently in the case of a born digital document, the exact form and appearance of the cross reference text will be determined dynamically by the software processing the document. In such cases, the ref element will have no content, and serve simply to mark a point from which a link is to be made, along with the target of the link.

The following two forms, for example, are logically equivalent:
See especially <ref target="#SEC12">section
12 on page 34</ref>.
See especially <ref target="#SEC12"/>.
In both cases, there is a cross reference from the position in the source document immediately following the word especially to whatever element in the encoded document has the identifier SEC12. In the first case, the encoder has supplied the original form of the cross reference ‘section 12 on page 34’; in the second, the task of generating an appropriate form of cross reference has been left to the formatting software. Perhaps the pagination and section numbers of the document in question are not yet determined; perhaps the cross reference should be replaced by a big red button. In either case, however, the value of the target attribute must be the identifier of some other element within the current document. Since the passage or phrase being pointed at must bear an identifier, it must be an element of some kind. In the following example, the cross reference is to a div element:
... see especially <ref 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 used 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 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 3.7.3 Special Kinds of Linking below.

3.7.2 Pointing to other documents

So far, we have shown how the ref element may be used for cross-references or links whose targets occur within the same document as their source. The element 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 Uniform Resource Identifier (URI)4.

A URI may reference a web page or just a part of one, for example http://www.tei-c.org/index.xml#SEC2. The hash 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.

It is also possible to define an abbreviated form of the URI, using a predefined prefix separated from the rest of the code by a colon, as for example cesr:SEC2. This is known as a private URI, since the prefix is not standardized (except that the prefix xml: is reserved for use by XML itself). A prefixDef element should be supplied within the TEI header specifying how the prefix (here cesr) should be translated to give a full URL for the link. This is particularly useful if a document contains many references to an external document such as an authority file.

Parts of an XML document can be specified by means of other more sophisticated mechanisms using a language called Xpointer, also defined by the W3C. This is useful when, for example, the elements to be linked to do not bear identifiers. Further information about this and other forms of link addressing is provided in chapter 16 of the TEI Guidelines but is beyond the scope of the present document.

3.7.3 Special Kinds of Linking

The following special purpose linking attributes are defined for every element in the TEI simplePrint schema:

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 10 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.

4 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.

4.1 Correction and Normalization

The following elements may be used to mark corrections, 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.

Consider, for example, the following famous passage as it appears in the first quarto printing of Shakespeare's Henry V:

Detail from , first quarto (1600)
Figure 1. Detail from Henry V, first quarto (1600)

in particular the phrase we might transcribe directly as

... for his Nose was as sharpe as a Pen, and a Table of greene fields
A modern editor might wish to make a number of interventions here, specifically to modernize (or normalize) the Elizabethan spellings of a' and sharpe for he and sharp respectively. They 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 <reg>sharp</reg> as a
Pen and
<reg>he</reg>
<corr resp="#Theobald">babbl'd</corr> of green fields
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
<orig>sharpe</orig> as a Pen, and
<orig>a</orig>
<sic>Table</sic> of green fields
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 indicate where alternative encodings are possible:
... for his Nose was as <choice>
 <orig>sharpe</orig>
 <reg>sharp</reg>
</choice> 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 fields

4.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.
  • supplied (supplied) signifies text supplied by the transcriber or editor for any reason; for example because the original cannot be read due to physical damage, or because of an obvious omission by the author or scribe.
  • subst (substitution) groups one or more deletions (or surplus text) with one or more additions when the combination is to be regarded as a single intervention in the text.
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) of the person or other agency responsible for correcting the duplication of for.
If the source read ‘The following elements provided for simple editorial interventions.’ (i.e. if the word are had been inadvertently dropped) then the scholar identified as LB might choose to encode the corrected text as follows:
The following
elements <add resp="#LB">are</add> provided for simple editorial
interventions.

These elements may also be used to record the actual writing process, for example to record passages which have been deleted, added, corrected etc., whether by the author of a literary text or by a scribe copying out a manuscript. An analysis of such documentary modifications may be essential before a reading text can be presented, and is clearly of importance in the editorial process.

The example is taken from the surviving authorial manuscript of a poem by the English writer Wilfred Owen, a part of which is shown here:

Detail from  autograph manuscript
              in the English Faculty Library, Oxford University.
Figure 2. Detail from Dulce et decorum est autograph manuscript in the English Faculty Library, Oxford University.

Owen first wrote ‘Helping the worst amongst us’, but then deleted it, adding ‘Dragging the worst amongt us’ over the top. In the same way, he revised the phrase ‘half–blind’ by deleting the ‘half–’ and adding ‘all’ above it. In the last line, he started a word beginning ‘fif’ before deleting it and writing the word ‘five–nines’. We can encode all of this as follows:

<l>And towards our distant rest began to trudge,</l>
<l>
 <subst>
  <del>Helping the worst amongst us</del>
  <add>Dragging the worst amongt us</add>
 </subst>, who’d no boots
</l>
<l>But limped on, blood–shod. All went lame; <subst>
  <del status="shortEnd">half–</del>
  <add>all</add>
 </subst> blind;</l>
<l>Drunk with fatigue ; deaf even to the hoots</l>
<l>Of tired, outstripped <del>fif</del> five–nines that dropped behind.</l>

The tags add and del elements are used to enclose passages added or deleted respectively. Additional attributes are available such as resp to indicate responsibility for the modification, or place to indicate where in the text (for example, above or below the line) the modification has been made. Where the encoder wishes to assert that the addition and deletion make up a single editorial act of substitution, these elements can be combined within a subst element as shown above.

A very careful examination of Owen’s second modification shows that he really did write ‘amongt’ rather than ‘amongst’, presumably in error. An equally careful editor wishing to restore the missing ‘s’ might use the supplied element to indicate that they have done so:

<add>Dragging the worst among<supplied resp="#ED">s</supplied>t us</add>

Here the resp attribute has been used to indicate that the ‘s’ was not supplied by Owen but by someone else, specifically the person documented elsewhere by an element with the identifier ED.

The unclear element is useful where material in the source is so hard to read that the transcriber is uncertain as to whether they have done so correctly. The gap element by contrast should be used where the material is so illegible that the transcriber does not wish even to attempt it. The two may however be used together as in the following example:
One hundred &amp; twenty good regulars joined <unclear>to me <gap extent="2 words"
  reason="indecipherable"/>
and </unclear> instantly, would aid me signally in an
enterprise against Wilmington.
The del element marks material which is deleted in a source, but has been transcribed as part of the electronic text all the same, while gap marks the location of source 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. An extent attribute is available on the gap element to indicate how much material has been omitted. The desc element can be used inside the gap element to provide a brief characterisation of the omitted material, as in the following examples:
<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 extent="50 lines">
 <desc>quotation from ledger (in Danish)</desc>
</gap>
<p>A description of the overall structure of the account is once again ...
</p>
(The name and date elements used in this example are discussed further below)
Language corpora (particular those constructed before the widespread use of scanners) often systematically omit figures and mathematics:
<p>At the bottom of your screen below the
mode line is the <hi>minibuffer</hi>. 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>

4.3 Abbreviation 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:
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>
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>

The elements expan and abbr should contain a full word, or the abbreviated form of a full word respectively. For a fuller discussion of abbreviations and the intricacies of representing them consult the section on Abbreviation and Expansion in the TEI Guidelines.

5 Names, Codes, 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, strings of code, formulae, or numbers and dates. These items may also pose particular problems for natural language processing (NLP) applications. The elements described here, by making such features explicit, reduce the complexity of processing texts containing them.

5.1 Names and Referring Strings

A referring string is any phrase which refers to some person, place, object, etc. A name is a referring string which contains proper nouns and honorifics only. 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 <name type="person">Mr.
   Bennet</name>, </q>said his lady to him one day,
<q>have you heard that <name type="place">Netherfield Park</name> is let at last?</q>
It being one of the principles of the
<name type="org">Circumlocution Office</name> never, on any account whatsoever, to
give a straightforward answer, <name type="person">Mr Barnacle</name> said,

<q>Possibly.</q>
As the following example shows, the rs element may be used for a reference to a person, place, etc., which does not contain a proper noun or noun phrase:
<q>My dear <name type="person">Mr.
   Bennet</name>,</q> said <rs type="person">his lady</rs> to him one day...

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 ref attribute provides a way of linking a name with a description of the object being named, and may thus act as a normalized identifier for it. It is also very useful as a means of gathering together all references to the same individual or location scattered throughout a document:
<q>My dear <name type="personref="#BENM1">Mr. Bennet</name>, </q> said <rs type="personref="#BENM2">his lady</rs> to him
one day,
<q>have you heard that <name type="placeref="#NETP1">Netherfield
   Park</name> is let at last?</q>

The values used for the ref attribute here (#BENM1 etc.) are pointers; in this case indicating an element with the identifier BENM1 etc. somewhere in the current document, though any form of URI could be used. The element indicated will typically (for a person) be a person element, listed within a particDesc element, or (for a place) a place element, listed within a settingDesc element in the TEI header, as further discussed in 15.3 The Profile Description below.

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="personref="#WADLM1">
 <choice>
  <orig>Walter de la Mare</orig>
  <reg>de la Mare, Walter</reg>
 </choice>
</name> was born at <name ref="https://en.wikipedia.org/wiki/Charlton,_London"
 type="place">
Charlton</name>,
in <name type="place">Kent</name>, in 1873.

5.2 Formulae, Codes, and Special Characters

The following elements may be useful when marking up sequences of text that represent mathematical expressions, chemical formulae, and the like:

  • formula (formula) contains a mathematical or other formula.
  • g (character or glyph) represents a glyph, or a non-standard character.
In many cases, a simple Unicode character suffices to represent the superscript or subscript digits and other symbols which may appear inside a mathematical formula:
<formula>E=mc²</formula>
In other more complex cases, the encoder may choose to use a different XML scheme (such as MathML) to encode the content of a formula, or a non-XML notation. These possibilities are not discussed further here.
The g element is useful in the case that no Unicode character exists to represent the character or glyph required. Its ref attribute can be used to point to a definition of the symbol intended, while its content (if any) represents a Unicode approximation to it:
...Thereto
<g ref="#air">[air]</g> and ...
The TEI header provides a number of additional elements for the definition of such non-Unicode characters, as further discussed in section 15.2.5 The character declaration below.

The following elements are useful for stretches of code or similar formal language appearing within a text:

  • code contains literal code from some formal language such as a programming language.
  • email (electronic mail address) contains an email address identifying a location to which email messages can be delivered.
This can be expressed in XML as follows:
<code>&amp;lt;date notBefore="2016-06-23"/></code> Contact the author at

<email>lou.burnard@gmail.com</email>

Note in this example that characters which have a syntactic function in XML (such as the ampersand or the angle bracket) must be represented within a TEI simplePrint document by means of an entity reference such as &lt; or &amp;.

The element ref discussed in section 3.7 Cross References and Links should be used to represent a coded reference such as a link given as a URL within a text, either as content or as an attribute value:
<p>Further discussion of <ref target="http://www.tei-c.org/">the Text Encoding
   Initiative website</ref> may be found at <ref>http://www.tei-c.org/</ref>
</p>

5.3 Dates and Times

The following elements are provided for the detailed encoding of times and dates:

  • 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 normalized versions of their values in various ways.
  • 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.
    notBefore [att.datable.w3c]specifies the earliest possible date for the event in standard form, e.g. yyyy-mm-dd.
    notAfter [att.datable.w3c]specifies the latest possible date for the event in 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>
These attributes are typically used to make a date or time more easily processable, as in the following examples:
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>
They are also useful in cases where the date concerned is uncertain or only vaguely specified:
<p>... <date period="secondEmpire">during the second empire</date>
</p>
<date notAfter="1946-12-09"
 notBefore="1946-11-01">
in the weeks shortly before my
birth</date>

5.4 Numbers and Measurements

Like dates, both numbers and quantities can be written with either letters or digits and may therefore need to be normalized for ease of processing. Their presentation is also highly language-dependent (e.g. English 5th becomes Greek 5.; English 123,456.78 equals French 123.456,78).

The following elements are provided for the detailed encoding of numbers and quantities:

  • num (number) contains a number, written in any form.
    typeindicates the type of numeric value. Suggested values include: 1] cardinal; 2] ordinal; 3] fraction; 4] percentage
    valuesupplies the value of the number in standard form.
  • measure (measure) contains a word or phrase referring to some quantity of an object or commodity, usually comprising a number, a unit, and a commodity name.
    quantity [att.measurement](quantity) specifies the number of the specified units that comprise the measurement
    unit [att.measurement](unit) indicates the units used for the measurement, usually using the standard symbol for the desired units. Suggested values include: 1] m (metre); 2] kg (kilogram); 3] s (second); 4] Hz (hertz); 5] Pa (pascal); 6] Ω (ohm); 7] L (litre); 8] t (tonne); 9] ha (hectare); 10] Å (ångström); 11] mL (millilitre); 12] cm (centimetre); 13] dB (decibel); 14] kbit (kilobit); 15] Kibit (kibibit); 16] kB (kilobyte); 17] KiB (kibibyte); 18] MB (megabyte); 19] MiB (mebibyte)
    commodity [att.measurement](commodity) indicates the substance that is being measured
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>
<measure quantity="40unit="hogshead"
 commodity="rum">
2 score hh rum</measure>
<measure quantity="1unit="dozen"
 commodity="blooms">
1 doz. roses</measure>
<measure quantity="1unit="count"
 commodity="blooms">
a yellow tulip</measure>

6 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 items within the 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.
<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 in section 8 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>

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

7 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 distinguish 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:

Consider, for example the following editorial note:
He was a member of Parliament for Warwickshire in 1445, and died March 14, 1470 (according to Kittredge, Harvard Studies 5. 88ff).
This might be encoded as follows:
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> 5. 88ff
</bibl>).
The bibliographic elements listed above are particularly useful in a born digital document which contains a bibliography encoded using the listBibl element. Entries in the bibliography should be given an identifier, which can then be used as the target of cross references from elsewhere in the document:
<p>Perec citing, amongst others <ref target="#MK_73">Sturm und Drang, 1973</ref>,
concludes ... </p>
A bibl element may contain simply text, with possibly a few of its components distinguished by tagging, and much use of conventionalized punctuation, as in this example:
<bibl xml:id="MK_73">Sturm, U. &amp; Drang, F. : <title>Musikalische
   Katastrophe</title>. (Berlin, W. de Gruyter, 1973)</bibl>
Alternatively, each of the components of the bibliographic reference may be clearly distinguished by tagging; in this case there is no requirement for conventionalized punctuation, since the processor will be able to generate this appropriately:
<bibl xml:id="MK73">
 <author>Sturm, U.</author>
 <author>Drang, F.</author>
 <title xml:lang="delevel="m">Musikalische Katastrophe</title>
 <pubPlace>Berlin</pubPlace>
 <publisher>W. de Gruyter</publisher>
 <date>1973</date>
</bibl>

The element biblFull is also provided for convience in cases where bibliographic citations following a more sophisticated model have been used; it is permitted only in the TEI header.

The listBibl element is used to group lists of bibliographic citations. It may contain a series of bibl or biblFull elements.

8 Tables

The following elements are provided for the description of tabular matter, commonly found in many kinds of narrative text. Note that TEI simplePrint provides no sophisticated ways of describing the detailed layout of a table beyond its organization into rows and columns.

The role attribute may be used on either cell or rowto indicate the function of a cell, or of a row of cells. Its values should be taken from the following list:

data
data cell
label
label cell
sum
row or column sum data
total
table total data

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>

9 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 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="images/p412fig.png"
  width="40%"/>

</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, as in the following example:
: illustration by George Cruikshank from Dickens'
                 (1843)
Figure 3. Mr Fezziwig's Ball: illustration by George Cruikshank from Dickens' A Christmas Carol (1843)
The figure element provides a means of wrapping one or more such elements together as a kind of graphic ‘block’. It may also include a brief description of the image:
<figure>
 <graphic url="images/fezzipic.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 simplest case, the facs attribute on the pb element may be used to supply a location for an image file corresponding with that point in the text:
<div>
 <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 -->
</div>
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 multiple images are provided for each page, or more detailed alignment of image and transcription is required, for example because the image files actually represent double page spreads, more sophisticated mechanisms are needed, as further discussed in 14 Encoding a Digital Facsimile below.

10 Analysis

10.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:
<div type="chaptern="38">
 <pb n="474"/>
 <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 analyzed 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 attribute used in the above example.

10.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.
  • c (character) represents a character.
  • 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 simplePrint 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 ana="#SENT">.</pc>
</s>

In this example, each token in the input has been decorated with an automatically generated part of speech code, using the ana attribute discussed in section 3.7.3 Special Kinds of Linking above. The system has also distinguished between tokens to be treated as words (tagged w) and tokens considered to be punctuation (tagged pc). It may also sometimes be useful to distinguish tokens which consist of a single letter or character: the c element is provided for this purpose.

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> ...

10.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 3.7 Cross References and Links); it can be used to distinguish any portion of text to which the encoder wishes to assign a user-specified type or 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 TEI 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 distinguish phrase-level phenomena of any kind; it is good practice to record the values used and their significance in the TEI header or in the documentation of the encoding system.

11 Common Attributes

Some attributes are available on many elements, though not on all. These attributes are defined using a TEI attribute class, a concept which is discussed further in the TEI Guidelines. We list here some attribute classes which have been adapted or customized for use in TEI simplePrint.

The elements add, figure, fw, label, note and stage all take the attribute place to indicate whereabouts on the page they appear. In TEI simplePrint the possible values for this attribute are limited as indicated below:

above
above the line
below
below the line
top
at the top of the page
top-right
at the top right of the page
top-left
at the top left of the page
top-centre
at the top center of the page
bottom-right
at the bottom right of the page
bottom-left
at the bottom left of the page
bottom-centre
at the bottom centre of the page
bottom
at the foot of the page
tablebottom
underneath a table
margin-right
in the right-hand margin
margin
in the outer margin
margin-inner
in the inner margin
margin-left
in the left-hand margin
opposite
on the opposite, i.e. facing, page
overleaf
on the other side of the leaf
overstrike
superimposed on top of the current context
end
at the end of the volume
divend
at the end of the current division
parend
at the end of the current paragraph
inline
within the body of the text
inspace
in a predefined space, for example left by an earlier scribe
block
formatted as an indented paragraph

The elements add, <am>, corr, date, del, <ex>, expan, gap, name, reg, <space>, subst, supplied, time and unclear all use the attribute unit to indicate the units in which the size of the feature concerned is expressed. In TEI simplePrint the possible values for this attribute are limited as indicated below:

chars
characters
lines
lines
pages
pages
words
words
cm
centimetres
mm
millimetres
in
inches

Very many TEI elements take the value type (see the specification for att.typed for a full list). In most cases, no constraint is placed on the possible values for this attribute. In the case of the element name however, the possible values for this attribute are limited as indicated below:

person
person
forename
forename
surname
surname
personGenName
generational name component
personRoleName
role or position in society
personAddName
additional name component (e.g. nickname)
nameLink
connecting link within a name (e.g. van der)
org
organization
country
country
placeGeog
geographical name
place
place

12 Composite and Floating Texts

A composite text, like a simple text, has an optional front and back matter. In between however, instead of a single body, it contains one or more discrete texts, each with its own optional front and back matter. The following elements are provided to handle composite texts of various kinds.

A typical example might be an anthology containing several distinct works, or any other kind of collection, 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>
A different kind of composite text occurs when one text is embedded within another, as for example in the Arabian Nights or similar collections of stories, or in other cases where one narrative is interrupted by another. The element floatingText may be preferred to encode such materials as the following:
<p>The Gentleman having finish'd his Story, Galecia waited on him to the Stairs-head;
and at her return, casting her Eyes on the Table, she saw lying there an old dirty
rumpled Book, and found in it the following story:</p>
<floatingText>
 <body>
  <p>IN the time of the Holy War when Christians from all parts went into the Holy
     Land to oppose the Turks; Amongst these there was a certain English Knight...</p>
<!-- rest of story here -->
  <p>The King graciously pardoned the Knight; Richard was kindly receiv'd into his
     Convent, and all things went on in good order: But from hence came the Proverb, We
     must not strike <hi>Robert</hi> for <hi>Richard.</hi>
  </p>
 </body>
</floatingText>
<pb n="43"/>
<p>By this time Galecia's Maid brought up her Supper; after which she cast her Eyes
again on the foresaid little Book, where she found the following Story ....</p>
Note that there is only a single TEI header for composite texts of either kind, since the assumption is that the composite is at some level describable as a single work. However, it is also possible to define a composite of complete TEI texts, each with its own TEI header. Such a collection is known as a TEI corpus, and must itself have a TEI 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.

13 Front and Back Matter

13.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.The TEI Guidelines provide a set of recommendations for distinguishing the textual elements most commonly encountered in front matter, which are summarized here.

13.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 rendition attribute when necessary, as described above though a very detailed description of the letter spacing and sizing used in ornamental titles is not easily done. 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>
 <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>

13.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.

13.1.3 Liminal Elements

All text divisions, whether in front matter or elsewhere, may begin and end with one or more components which we term liminal elements, because they begin or end the division. A typical example is a heading or title of some kind which should be tagged using the head element; but there are many other possibilities:

  • 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.
  • postscript contains a postscript, e.g. to a letter.
As an example, the beginning and end of the dedication to Milton's Comus might 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>

13.2 Back Matter

13.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
colophon
A statement appearing at the end of a book describing the conditions of its physical production.

13.2.2 Specialized Front and Back Matter

TEI simplePrint also provides elements for some additional components of front or back matter which are characteristic of particular kinds of text, in particular old play texts. These often include lists of dramatis personae and notes about the setting of a play, for which the following elements are provided:

  • castList (cast list) contains a single cast list or dramatis personae.
  • castItem (cast list item) contains a single entry within a cast list, describing either a single role or a list of non-speaking roles.
  • castGroup (cast list grouping) groups one or more individual castItem elements within a cast list.
  • role (role) contains the name of a dramatic role, as given in a cast list.
  • roleDesc (role description) describes a character's role in a drama.
  • actor contains the name of an actor appearing within a cast list.
  • set (setting) contains a description of the setting, time, locale, appearance, etc., of the action of a play, typically found in the front matter of a printed performance text (not a stage direction).

Note that these elements are intended for use in marking up cast lists and setting notes as they appear in a source document. They are not intended for use when marking up definitive lists of the different roles identified in a play, except in so far as that may have been their original purpose.

The following example shows one way of encoding the last part of Shakespeare's Tempest, as printed in the first folio:

<back>
 <div type="epilogue">
  <head>Epilogue, spoken by Prospero.</head>
  <sp>
   <l>Now my Charmes are all ore-throwne,</l>
   <l>And what strength I have's mine owne</l>
   <l>As you from crimes would pardon'd be,</l>
   <l>Let your Indulgence set me free.</l>
  </sp>
  <stage>Exit</stage>
 </div>
 <set>
  <p>The Scene, an un-inhabited Island.</p>
 </set>
 <castList>
  <head>Names of the Actors.</head>
  <castItem>Alonso, K. of Naples</castItem>
  <castItem>Sebastian, his Brother.</castItem>
  <castItem>Prospero, the right Duke of Millaine.</castItem>
<!-- etc -->
 </castList>
 <trailer>FINIS</trailer>
</back>

14 Encoding a Digital Facsimile

The following elements may be used to encode a text represented by a collection of digital images, either alone or in conjunction with a textual transcription.

As mentioned in section 9 Figures and Graphics above, a TEI simplePrint document may reference a set of page images, alone, or in combination with a transcription. For ease of management, it is strongly recommended that the graphic elements representing those page images be grouped together within a facsimile element, as in the following example:
<facsimile>
 <graphic url="page1.pngxml:id="pg1"/>
 <graphic url="page2.pngxml:id="pg2"/>
</facsimile>
If a transcription is supplied in addition, the xml:id values can be used to align the page breaks within it with the relevant image, rather than using the URL given on the graphic element.
<text>
<!-- ...-->
 <pb facs="#page1"/>
<!-- text contained on page 1 -->
 <pb facs="#page2"/>
<!-- text contained on page 2 -->
<!-- ...-->
</text>

The surface element is useful in two situations: when it is desired to group different images of the same page, for example of different resolutions; and when it is desired to align parts of a page image with parts of a transcription. The zone element is used to define (and hence provide an identifier for) the location of a part of an image with reference to the surface on which it appears.

In this example, a thumbnail and a high resolution image are associated with the same surface:
<facsimile>
 <surface>
  <graphic xml:id="page1T"
   url="thumbs/page1.png"/>

  <graphic xml:id="page1url="page1.png"/>
 </surface>
</facsimile>
In this example, the head element in the transcription is aligned with the top half of a square image:
<facsimile>
 <surface ulx="1uly="1lrx="4lry="4">
  <graphic url="page1.pngxml:id="page1"/>
  <zone xml:id="topHalfP1ulx="1uly="1"
   lrx="2lry="4"/>

 </surface>
</facsimile>
<text>
 <body>
<!-- ... -->
  <pb facs="#page1"/>
  <head facs="#topHalfP1">Text of Heading</head>
<!-- ...-->
 </body>
</text>

A more detailed explanation of the use of these attributes and other associated elements is given in the full TEI Guidelines.

15 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:

15.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 TEI 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>

15.1.1 The Title Statement

The following elements can be used in the titleStmt to provide information about the title of a work and those responsible for its content:

  • 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.
  • 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 original may be similar to that of its source but should be distinct from it, for example: [title of source]: TEI XML edition or A machine readable version of: [title of source]

The generic respStmt element may be used to indicate any kind of responsibility, ranging from a funder or sponsor to an illustrator or editor. It 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 </title>
 <author>Poe, Edgar Allen (1809-1849)</author>
 <respStmt>
  <resp>TEI encoding</resp>
  <name>James D. Benson</name>
 </respStmt>
 <respStmt>
  <resp>Funding </resp>
  <name>Getty Foundation</name>
 </respStmt>
</titleStmt>

15.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.

15.1.3 The Extent Statement

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

Example:
<extent>15 Mb
</extent>

15.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.

At least one of these 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.
  • addrLine (address line) contains one line of a postal address.
  • 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>

15.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.

15.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>

15.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 more specialized elements chosen 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.
  • tagsDecl (tagging declaration) provides detailed information about the tagging applied to a document.
  • refsDecl (references declaration) specifies how canonical references are constructed for this text.
  • listPrefixDef (list of prefix definitions) contains a list of definitions of prefixing schemes used in teidata.pointer values, showing how abbreviated URIs using each scheme may be expanded into full URIs.
  • prefixDef (prefix definition) defines a prefixing scheme used in teidata.pointer values, showing how abbreviated URIs using the scheme may be expanded into full URIs.
  • classDecl (classification declarations) contains one or more taxonomies defining any classificatory codes used elsewhere in the text.
  • charDecl (character declarations) provides information about nonstandard characters and glyphs.

15.2.1 Project Description and Sampling Declaration

Examples of projectDesc and samplingDecl:
<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>

15.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>

The full TEI Guidelines provide specialized elements for each of the topics above; these are not however included in TEI simplePrint.

15.2.3 Tagging Declaration

When it does not consist simply of a prose description, the tagsDecl element may contain a number of more specialized elements providing additional information about how the document concerned has been marked up. The following elements may be used:

  • rendition (rendition) supplies information about the rendition or appearance of one or more elements in the source text.
  • namespace (namespace) supplies the formal name of the namespace to which the elements documented by its children belong.
  • tagUsage (element usage) documents the usage of a specific element within a specified document.
Here is a simple example, showing how these elements may be used. It indicates the number of times the elements hi and title from the TEI namespace have been used in the document. It also documents how the way that the source document was originally printed has been represented using TEI tagging:
<tagsDecl partial="true">
 <rendition xml:id="rend-bo">font-weight:bold</rendition>
 <rendition xml:id="rend-it"
  selector="hi, title">
font-style:italic</rendition>
 <namespace name="http://www.tei-c.org/ns/1.0">
  <tagUsage gi="hioccurs="467"/>
  <tagUsage gi="titleoccurs="45"/>
 </namespace>
</tagsDecl>

The rendition elements here contain fragments expressed in the W3C standard Cascading Stylesheets language (CSS). Their function here is to associate the particular styles concerned with an identifier (for example rend-bo) which can then be pointed to from elsewhere within the document by means of the rendition attribute mentioned in section 3.5.1 Changes of Typeface, etc. above. To indicate, for example, that a particular name in the document was rendered in a bold font it might be tagged <name rendition="#rend-bo">. The selector attribute used in the preceding example is used to indicate once for all a default rendition value to be associated with several elements: in this example, unless otherwise indicated, it is assumed that the content of each hi and each title element was originally rendered using an italic font.

For TEI simplePrint, a large set of such rendition definitions has been predefined. The encoder is not therefore required to supply any detailed declarations, but can refer to the predefined list using the following list:

simple:allcaps
all capitals
simple:blackletter
black letter or gothic typeface
simple:bold
bold typeface
simple:bottombraced
marked with a brace under the bottom of the text
simple:boxed
border around the text
simple:centre
centred text
simple:cursive
cursive typeface
simple:display
block display
simple:doublestrikethrough
strikethrough with double line
simple:doubleunderline
underlined with double line
simple:dropcap
initial letter larger or decorated
simple:float
floated out of main flow
simple:hyphen
with a hyphen here (e.g. in line break)
simple:inline
inline rendering
simple:justify
justified text
simple:italic
italic typeface
simple:larger
larger type
simple:left
aligned to the left or left-justified
simple:leftbraced
marked with a brace on the left side of the text
simple:letterspace
larger-than-normal spacing between letters, usually for emphasis
simple:literal
fixed-width typeface, spacing preserved
simple:normalstyle
upright shape and default weight of typeface
simple:normalweight
normal typeface weight
simple:right
aligned to the right or right-justified
simple:rightbraced
marked with a brace to the right of the text
simple:rotateleft
rotated to the left
simple:rotateright
rotated to the right
simple:smallcaps
small caps
simple:smaller
smaller type
simple:strikethrough
strikethrough
simple:subscript
subscript
simple:superscript
superscript
simple:topbraced
marked with a brace above the text
simple:typewriter
fixed-width typeface, like typewriter
simple:underline
underlined with single line
simple:wavyunderline
underlined with wavy line

The simple: prefix used here must be mapped to a location at which the full rendition declaration can be found, by default the XML source of the present document.

Full details of the way these elements may be used are provided in the relevant section of the TEI Guidelines (http://www.tei-c.org/release/doc/tei-p5-doc/en/html/HD.html#HD57).

15.2.4 Reference, Prefix, 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 @n attribute on each <div> element 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 listPrefixDef element contains one or more prefixDef elements, each defining a prefix which has been used to abbreviate references to other documents, for example as the value of a target or other pointing attribute. The definition provides information about how the prefix can be translated automatically into a full URL, as in the following example:
<listPrefixDef>
 <prefixDef ident="psn"
  matchPattern="([A-Z]+)"
  replacementPattern="http://www.example.com/personography.xml#$1"/>

</listPrefixDef>

In this case, a pointer value in the form psn:MDH would be translated to http://www.example.com/personography.xml#MDH.

The classDecl element groups together definitions or sources for any descriptive classification schemes or taxonomies used by other parts of the header. These schemes may be defined in a number of different ways, using one or more of 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.

15.2.5 The character declaration

As mentioned in section 5.2 Formulae, Codes, and Special Characters above, the element g is used to indicate the presence of a nonstandard character or glyph in a transcription, and to reference a definition or description of it in the Header. These definitions are provided by means of the following specialised elements given within the charDecl component of the encodingDesc:
  • char (character) provides descriptive information about a character.
  • glyph (character glyph) provides descriptive information about a character glyph.
  • 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.
  • mapping (character mapping) contains one or more characters which are related to the parent character or glyph in some respect, as specified by the type attribute.
For example, the alchemical symbol for air might be encoded where it appears in a text using a g element, whose ref attribute might have a value #air to link to the following simple definition for the symbol concerned:
<char xml:id="air">
 <unicodeProp name="Name"
  value="ALCHEMICAL SYMBOL FOR AIR"/>

 <mapping type="standard">🜁</mapping>
</char>
Further details of these and related elements are provided in section http://www.tei-c.org/release/doc/tei-p5-doc/en/html/WD.html#D25-20 of the TEI Guidelines.

15.3 The Profile Description

The profileDesc element gathers together information about various descriptive aspects of a text. It has the following optional components:

  • creation (creation) contains information about the creation of a text.
  • abstract contains a summary or formal abstract prefixed to an existing source document by the encoder.
  • particDesc (participation description) describes the identifiable speakers, voices, or other participants in any kind of text or other persons named or otherwise referred to in a text, edition, or metadata.
  • settingDesc (setting description) describes the setting or settings within which a language interaction takes place, or other places otherwise referred to in a text, edition, or metadata.
  • 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 documents 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 abstract element may be used to provide a brief summary or abstract of the document concerned. It is most usually applied to texts born digital:
<profileDesc>
 <abstract>
  <p>This paper is a draft studying various aspects of using the TEI as a reference
     serialization framework for LMF. Comments are welcome to bring this to a useful
     document for the community.</p>
 </abstract>
</profileDesc>
The particDesc element is used to list descriptive information about the real or fictional participants in a text, for example the characters in a novel or a play. It contains at least one listPerson element, which contains individual person elements.
  • listPerson (list of persons) contains a list of descriptions, each of which provides information about an identifiable person or a group of people, for example the participants in a language interaction, or the people referred to in a historical source.
  • person (person) provides information about an identifiable individual, for example a participant in a language interaction, or a person referred to in a historical source.
For example:
<profileDesc>
 <particDesc>
  <listPerson>
   <person xml:id="OPI">
    <p>
     <name>Dr Opimian</name>: named for the famous Roman fine wine.</p>
   </person>
   <person xml:id="GRM">
    <p>
     <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.</p>
   </person>
  </listPerson>
 </particDesc>
</profileDesc>
In the same way, the settingDesc element can be used to list descriptive information about the real or fictional places mentioned in a text. It contains at least one listPlace element, which contains individual place elements.
  • listPlace (list of places) contains a list of places, optionally followed by a list of relationships (other than containment) defined amongst them.
  • place (place) contains data about a geographic location
For example:
<profileDesc>
 <settingDesc>
  <listPlace>
   <head>Houses mentioned in <title>Pride and Prejudice</title>
   </head>
   <place xml:id="NETF1">
    <p>
     <name>Netherfield Park</name>: home of the Bingleys</p>
   </place>
   <place xml:id="PEMB1">
    <p>
     <name>Pemberley</name>: home of Mr Darcy</p>
   </place>
  </listPlace>
 </settingDesc>
</profileDesc>

The full TEI Guidelines provide a rich range of additional elements to define more structured information about persons and places; these are not however available in TEI Simple.

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 one or more keywords or phrases identifying the topic or nature of a text, each tagged as a term. 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">
  <term>English literature</term>
  <term>History and criticism</term>
  <term>Data processing.</term>
 </keywords>
</textClass>

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

15.4 Other forms of metadata

The TEI header was one of the first attempts to provide a full range of metadata elements, but it is by no means the only standard now used for this purpose. To facilitate the management of large digital collections and to simplify interoperability of TEI and non-TEI resources, the following element may be found useful:

  • xenoData (non-TEI metadata) provides a container element into which metadata in non-TEI formats may be placed.

A typical use for this element might be to store a set of descriptors conforming to the Dublin Core standard in the TEI header rather than to generate them automatically from the corresponding TEI elements. For examples and discussion, see the TEI Guidelines at http://www.tei-c.org/release/doc/tei-p5-doc/en/html/HD.html#HD9

15.5 The Revision Description

The revisionDesc element provides a change log in which each significant change made to a text may be recorded. It is always the last element in a teiHeader and contains the following elements:

  • 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.
  • listChange groups a number of change descriptions associated with either the creation of a source text or the revision of an encoded text.

Each change element contains a brief description of a significant change. The attributes when and who may be used to identify when the change was carried out and the person responsible for it.

It is good practice (but not required) to group changes together within a listChange element.

Example:
<revisionDesc>
 <listChange>
  <change when="1991-11-11who="#LB">deleted chapter 10</change>
  <change when="1991-11-02who="#MSM">completed first draft</change>
 </listChange>
</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.

16 The Simple Processing Model

Unlike most other TEI customizations, TEI simplePrint includes documentation of the intended processing associated with the majority of elements. As noted above, the TEI provides components such as the rendition attribute to indicate the appearance of particular parts of a document in the non-digital source from which it is derived. With TEI simplePrint, it is also possible to indicate how in general an element should be processed, in particular its intended appearance when processed for display on a screen or on paper. This ability derives from a number of capabilities recently added to the TEI architecture for the specification of processing, which were developed as part of the project that defined the TEI simplePrint schema.

The key feature of this ‘Processing Model’ is a notation that allows the encoder to associate each element with one or more categories, which we call its behaviours. In addition, the Processing Model indicates how the element should be rendered, possibly differently in differing circumstances, using the W3C Cascading Style Sheets (CSS) mentioned above. It is consequently much easier to develop processors for documents conforming to TEI simplePrint, since the complexity of the task is much reduced.

Twenty-five different behaviours are currently defined by the TEI Processing Model. Their names indicate informally the categorization concerned, and should be readily comprehensible for most programmers. The following table indicates the TEI simplePrint elements associated with each:

BehaviourUsed byEffect
alternatechoice datesupport display of alternative visualizations, for example by displaying the preferred content, by displaying both in parallel, or by toggling between the two.
anchoranchor create an identifiable anchor point in the output.
blockaddress addrLine argument back body byline closer dateline div docTitle epigraph figure floatingText formula front fw group head imprimatur l lg listBibl note opener postscript q quote role roleDesc salute signed sp speaker spGrp stage titlePage titlePart trailer create a block structure
bodytext create the body of a document
breakcb lb pbcreate a line, column, or page break according to the value of type
cellcell create a table cell
citcit show the content, with an indication of the source
documentTEI start a new output document
glyphg show a character by looking up reference to a chardesc at the given URI
graphicgraphic if URL is present, use it to display graphic, else display a placeholder image
headinghead creates a heading
indexbody generate list according to type
inlineabbr actor add am author bibl biblScope c choice code corr date del desc docAuthor docDate docEdition docImprint editor email ex expan figDesc figure foreign formula fw g gap hi label measure milestone name note num orig pc q quote ref reg relatedItem rhyme rs s salute seg sic signed subst supplied time title unclear w creates inline element out of content if there's something in <outputRendition>, use that formatting; otherwise just show text of selected content
linkref create hyperlink
listcastGroup castList list listBibl create a list
listItembibl castItem item create a list item
metadatateiHeader create metadata section
notenote create a note, often out of line, depending on the value of place; could be margin, footnote, endnote, inline
omitauthor editor publisher pubPlace profileDesc revisionDesc encodingDesc do nothing, do not process children
paragraphab pcreate a paragraph out of content
rowrow create a table row
sectiondiv create a new section of the output document
tabletable create a table
texttitlecreate literal text
titlefileDesc create document title

Full documentation of the Processing Model is provided in section http://www.tei-c.org/release/doc/tei-p5-doc/en/html/TD.html#TDPM of the TEI Guidelines, and we do not describe it further here.

17 The TEI simplePrint schema

Like other TEI customizations, TEI simplePrint is defined by reference to the TEI Guidelines. The following reference documentation provides formal specifications for each element, model class, attribute class, macro and datatype it uses. These concepts are further explained in the TEI Guidelines.

Specifications are provided here for each component which has been modified for inclusion in TEI simplePrint. Almost every textual element has been modified, if only to include a processing model component. Note that the cross references included in these specifications are to the section of the full TEI Guidelines where the subject is treated, and not to sections of the present document.

Schema tei_simplePrint: Elements

<ab>

<ab> (anonymous block) contains any component-level unit of text, acting as a container for phrase or inter level elements analogous to, but without the same constraints as, a paragraph. [17.3. Blocks, Segments, and Anchors]
Modulelinking
Attributes
Member of
Contained by
May contain
Note

The ab element may be used at the encoder's discretion to mark any component-level elements in a text for which no other more specific appropriate markup is defined. Unlike paragraphs, ab may nest and may use the type and subtype attributes.

Example
<div type="bookn="Genesis">
 <div type="chaptern="1">
  <ab>In the beginning God created the heaven and the earth.</ab>
  <ab>And the earth was without form, and void; and
     darkness was upon the face of the deep. And the
     spirit of God moved upon the face of the waters.</ab>
  <ab>And God said, Let there be light: and there was light.</ab>
<!-- ...-->
 </div>
</div>
Schematron

<sch:rule context="tei:ab">
<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 divisions such as p or ab, unless ab is a child of figure or note, or is a descendant of floatingText.
</sch:report>
</sch:rule>
Content model
<content>
 <macroRef key="macro.abContent"/>
</content>
Schema Declaration
element ab
{
   att.global.attributes,
   att.typed.attributes,
   att.fragmentable.attributes,
   att.written.attributes,
   att.cmc.attributes,
   macro.abContent
}
Processing Model
<model behaviour="paragraph"/>

<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.
Member of
Contained by
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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
}
Processing Model
<model behaviour="inline"/>

<abstract>

<abstract> contains a summary or formal abstract prefixed to an existing source document by the encoder. [2.4.4. Abstracts]
Moduleheader
Attributes
Member of
Contained by
header: profileDesc
May contain
figures: table
linking: ab
namesdates: listPerson listPlace
Note

This element is intended only for cases where no abstract is available in the original source. Any abstract already present in the source document should be encoded as a div within the front, as it should for a born-digital document.

Example
<profileDesc>
 <abstract resp="#LB">
  <p>Good database design involves the acquisition and deployment of
     skills which have a wider relevance to the educational process. From
     a set of more or less instinctive rules of thumb a formal discipline
     or "methodology" of database design has evolved. Applying that
     methodology can be of great benefit to a very wide range of academic
     subjects: it requires fundamental skills of abstraction and
     generalisation and it provides a simple mechanism whereby complex
     ideas and information structures can be represented and manipulated,
     even without the use of a computer. </p>
 </abstract>
</profileDesc>
Content model
<content>
 <alternate minOccurs="1"
  maxOccurs="unbounded">

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

<actor>

<actor> contains the name of an actor appearing within a cast list. [7.1.4. Cast Lists]
Moduledrama
Attributes
sexspecifies the sex of the actor.
Status Optional
Datatype 1–∞ occurrences of teidata.sex separated by whitespace
Note

Values for this attribute may be locally defined by a project, or may refer to an external standard.

genderspecifies the gender of the actor.
Status Optional
Datatype 1–∞ occurrences of teidata.gender separated by whitespace
Note

Values for this attribute may be locally defined by a project, or they may refer to an external standard.

Member of
Contained by
drama: castItem
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
Note

This element should be used only to mark the name of the actor as given in the source. Chapter 14. Names, Dates, People, and Places discusses ways of marking the components of names, and also of associating names with biographical information about a person.

Example
<castItem>
 <role>Mathias</role>
 <roleDesc>the Burgomaster</roleDesc>
 <actor ref="https://en.wikipedia.org/wiki/Henry_Irving">Mr. Henry Irving</actor>
</castItem>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element actor
{
   att.global.attributes,
   att.canonical.attributes,
   attribute sex { list { teidata.sex+ } }?,
   attribute gender { list { teidata.gender+ } }?,
   macro.phraseSeq
}
Processing Model
<model behaviour="inline"/>

<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
}
Processing Model
<model behaviour="inline">
<outputRendition>color: green; text-decoration: underline;</outputRendition>
</model>

<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
figures: figure
header: idno
linking: anchor
transcr: fw
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 minOccurs="1maxOccurs="1">
  <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* )+ ) )
}
Processing Model
<model behaviour="block">
<outputRendition>margin-top: 2em; margin-left: 2em; margin-right: 2em;
margin-bottom: 2em;</outputRendition>
</model>

<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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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 }
Processing Model
<model behaviour="block">
<outputRendition>white-space: nowrap;</outputRendition>
</model>

<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
}
Processing Model
<model behaviour="anchor">
<param name="idvalue="@xml:id"/>
</model>

<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
drama: castList
figures: figure table
May contain
drama: castList
figures: figure table
header: biblFull
linking: ab anchor
namesdates: listPerson listPlace
textstructure: floatingText
transcr: fw
Example
<argument>
 <l>With ſighs and tears her love he doth deſire,</l>
 <l>Since Cupid hath his ſenſes ſet on fire;</l>
 <l>His torment and his pain to her he ſhews,</l>
 <l>With all his proteſtations and his vows:</l>
 <l>At laſt ſhe yields to grant him ſome relief,</l>
 <l>And make him joyful after all his grief.</l>
</argument>
Content model
<content>
 <sequence minOccurs="1maxOccurs="1">
  <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* )+ ) )
}
Processing Model
<model behaviour="block">
<outputRendition>margin-bottom: 0.5em;</outputRendition>
</model>

<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
calendarindicates one or more systems or calendars to which the date represented by the content of this element belongs.
Deprecatedwill be removed on 2024-11-11
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
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>
Member of
Contained by
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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,
   attribute calendar { list { teidata.pointer+ } }?,
   macro.phraseSeq
}
Processing Model
<model predicate="ancestor::teiHeader"
 behaviour="omit"/>

<model behaviour="inline"/>

<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
linking: ab
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,
   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: floatingText text
transcr: facsimile
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 minOccurs="1maxOccurs="1">
  <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="0maxOccurs="1">
   <sequence minOccurs="1maxOccurs="1">
    <classRef key="model.div1Like"/>
    <alternate minOccurs="0"
     maxOccurs="unbounded">

     <classRef key="model.frontPart"/>
     <classRef key="model.div1Like"/>
     <classRef key="model.global"/>
    </alternate>
   </sequence>
   <sequence minOccurs="1maxOccurs="1">
    <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="0maxOccurs="1">
   <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,
   (
      (
         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 )* )? )
   )
}
Processing Model
<model behaviour="block"/>

<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
<epigraph>
 <bibl>Deut. Chap. 5.</bibl>
 <q>11 Thou ſhalt not take the name of the Lord thy God in vaine, for the Lord
   will not hold him guiltleſſe which ſhall take his name in vaine.</q>
</epigraph>
Schematron

<sch:rule context="tei:bibl">
<sch:assert test="child::* or child::text()[normalize-space()]"
 role="ERROR">
Element "<sch:name/>" may not be empty.
</sch:assert>
</sch:rule>
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.typed.attributes,
   att.sortable.attributes,
   att.docStatus.attributes,
   att.cmc.attributes,
   (
      text
    | model.gLikemodel.highlightedmodel.pPart.datamodel.pPart.editmodel.segLikemodel.ptrLikemodel.biblPartmodel.global
   )*
}
Processing Model
<model predicate="parent::listBibl"
 behaviour="listItem"/>

<model behaviour="inline"/>

<biblFull>

<biblFull> (fully-structured bibliographic citation) contains a fully-structured bibliographic citation, in which all components of the TEI file description are present. [3.12.1. Methods of Encoding Bibliographic References and Lists of References 2.2. The File Description 2.2.7. The Source Description 16.3.2. Declarable Elements]
Moduleheader
Attributes
Member of
Contained by
May contain
Example
<sourceDesc>
 <biblFull>
  <titleStmt>
   <title>Buxom Joan of Lymas's love to a jolly sailer: or, The maiden's
       choice: being love for love again. To an excellent new play-house
       tune.</title>
   <author>Congreve, William, 1670-1729.</author>
  </titleStmt>
  <extent>1 sheet ([1] p.) : music. </extent>
  <publicationStmt>
   <publisher>printed for P[hilip]. Brooksby, at the Golden-ball, in
       Pye-corner.,</publisher>
   <pubPlace>London: :</pubPlace>
   <date>[between 1693-1695]</date>
  </publicationStmt>
  <notesStmt>
   <note>Attributed to William Congreve by Wing.</note>
   <note>Date of publication and publisher's name from Wing.</note>
   <note>Verse: "A soldier and a sailer ..."</note>
   <note>Printed in two columns.</note>
   <note>Reproduction of original in the British Library.</note>
  </notesStmt>
 </biblFull>
</sourceDesc>
Content model
<content>
 <alternate minOccurs="1maxOccurs="1">
  <sequence minOccurs="1maxOccurs="1">
   <sequence minOccurs="1maxOccurs="1">
    <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="0maxOccurs="unbounded"/>

  </sequence>
  <sequence minOccurs="1maxOccurs="1">
   <elementRef key="fileDesc"/>
   <elementRef key="profileDesc"/>
  </sequence>
 </alternate>
</content>
Schema Declaration
element biblFull
{
   att.global.attributes,
   att.sortable.attributes,
   att.docStatus.attributes,
   att.cmc.attributes,
   (
      (
         (
            titleStmt,
            editionStmt?,
            extent?,
            publicationStmt,
            seriesStmt*,
            notesStmt?
         ),
         sourceDesc*
      )
    | ( fileDesc, profileDesc )
   )
}

<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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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
}
Processing Model
<model behaviour="inline"/>

<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: floatingText 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 minOccurs="1maxOccurs="1">
  <classRef key="model.global"
   minOccurs="0maxOccurs="unbounded"/>

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

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

    <classRef key="model.global"/>
    <classRef key="model.divGenLike"/>
   </alternate>
  </sequence>
  <alternate minOccurs="1maxOccurs="1">
   <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 minOccurs="1maxOccurs="1">
    <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="0maxOccurs="1">
     <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,
   (
      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* )* )
   )
}
Processing Model
<modelSequence>
<model behaviour="index">
 <param name="typevalue="'toc'"/>
</model>
<model behaviour="block"/>
</modelSequence>

<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
drama: castList
figures: figure table
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: docAuthor
transcr: fw subst supplied
verse: rhyme
character data
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 )*
}
Processing Model
<model behaviour="block"/>

<c>

<c> (character) represents a character. [18.1. Linguistic Segment Categories]
Moduleanalysis
Attributes
Member of
Contained by
May contain
gaiji: g
character data
Note

Contains a single character, a g element, or a sequence of graphemes to be treated as a single character. The type attribute is used to indicate the function of this segmentation, taking values such as letter, punctuation, or digit etc.

Example
<phr>
 <c>M</c>
 <c>O</c>
 <c>A</c>
 <c>I</c>
 <w>doth</w>
 <w>sway</w>
 <w>my</w>
 <w>life</w>
</phr>
Content model
<content>
 <macroRef key="macro.xtext"/>
</content>
Schema Declaration
element c
{
   att.global.attributes,
   att.segLike.attributes,
   att.typed.attributes,
   att.notated.attributes,
   att.cmc.attributes,
   macro.xtext
}
Processing Model
<model behaviour="inline"/>

<castGroup>

<castGroup> (cast list grouping) groups one or more individual castItem elements within a cast list. [7.1.4. Cast Lists]
Moduledrama
Attributes
Contained by
May contain
figures: figure
linking: anchor
textstructure: trailer
transcr: fw
Note

The rend attribute may be used, as here, to indicate whether the grouping is indicated by a brace, whitespace, font change, etc.

Note that in this example the role description ‘friends of Mathias’ is understood to apply to both roles equally.

Example
<castGroup rend="braced">
 <castItem>
  <role>Walter</role>
  <actor>Mr Frank Hall</actor>
 </castItem>
 <castItem>
  <role>Hans</role>
  <actor>Mr F.W. Irish</actor>
 </castItem>
 <roleDesc>friends of Mathias</roleDesc>
</castGroup>
Content model
<content>
 <sequence minOccurs="1maxOccurs="1">
  <alternate minOccurs="0"
   maxOccurs="unbounded">

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

   <alternate minOccurs="1maxOccurs="1">
    <elementRef key="castItem"/>
    <elementRef key="castGroup"/>
    <elementRef key="roleDesc"/>
   </alternate>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

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

  </sequence>
 </sequence>
</content>
Schema Declaration
element castGroup
{
   att.global.attributes,
   (
      ( model.global | model.headLike )*,
      ( ( ( castItem | castGroup | roleDesc ), model.global* )+ ),
      ( ( trailer, model.global* )? )
   )
}
Processing Model
<model predicate="child::*behaviour="list">
<desc>Insert list. </desc>
</model>

<castItem>

<castItem> (cast list item) contains a single entry within a cast list, describing either a single role or a list of non-speaking roles. [7.1.4. Cast Lists]
Moduledrama
Attributes
typecharacterizes the cast item.
Derived fromatt.typed
Status Optional
Datatype teidata.enumerated
Legal values are:
role
the item describes a single role. [Default]
list
the item describes a list of non-speaking roles.
Contained by
May contain
Example
<castItem>
 <role>Player</role>
 <actor>Mr Milward</actor>
</castItem>
Example
<castItem type="list">Constables, Drawer, Turnkey, etc.</castItem>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.castItemPart"/>
  <classRef key="model.phrase"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Schema Declaration
element castItem
{
   att.global.attributes,
   att.typed.attribute.subtype,
   attribute type { "role" | "list" }?,
   ( text | model.gLike | model.castItemPart | model.phrase | model.global )*
}
Processing Model
<model behaviour="listItem">
<desc>Insert item, rendered as described in parent list rendition. </desc>
</model>

<castList>

<castList> (cast list) contains a single cast list or dramatis personae. [7.1.4. Cast Lists 7.1. Front and Back Matter ]
Moduledrama
Attributes
Member of
Contained by
May contain
Example
<castList>
 <castGroup>
  <head rend="braced">Mendicants</head>
  <castItem>
   <role>Aafaa</role>
   <actor>Femi Johnson</actor>
  </castItem>
  <castItem>
   <role>Blindman</role>
   <actor>Femi Osofisan</actor>
  </castItem>
  <castItem>
   <role>Goyi</role>
   <actor>Wale Ogunyemi</actor>
  </castItem>
  <castItem>
   <role>Cripple</role>
   <actor>Tunji Oyelana</actor>
  </castItem>
 </castGroup>
 <castItem>
  <role>Si Bero</role>
  <roleDesc>Sister to Dr Bero</roleDesc>
  <actor>Deolo Adedoyin</actor>
 </castItem>
 <castGroup>
  <head rend="braced">Two old women</head>
  <castItem>
   <role>Iya Agba</role>
   <actor>Nguba Agolia</actor>
  </castItem>
  <castItem>
   <role>Iya Mate</role>
   <actor>Bopo George</actor>
  </castItem>
 </castGroup>
 <castItem>
  <role>Dr Bero</role>
  <roleDesc>Specialist</roleDesc>
  <actor>Nat Okoro</actor>
 </castItem>
 <castItem>
  <role>Priest</role>
  <actor>Gbenga Sonuga</actor>
 </castItem>
 <castItem>
  <role>The old man</role>
  <roleDesc>Bero's father</roleDesc>
  <actor>Dapo Adelugba</actor>
 </castItem>
</castList>
<stage type="mix">The action takes place in and around the home surgery of
Dr Bero, lately returned from the wars.</stage>
Content model
<content>
 <sequence minOccurs="1maxOccurs="1">
  <alternate minOccurs="0"
   maxOccurs="unbounded">

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

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

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

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

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

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

  </sequence>
 </sequence>
</content>
Schema Declaration
element castList
{
   att.global.attributes,
   (
      ( model.divTop | model.global )*,
      ( ( model.common, model.global* )* ),
      ( ( ( castItem | castGroup ), model.global* )+ ),
      ( ( model.common, model.global* )* )
   )
}
Processing Model
<model predicate="child::*behaviour="list"
 useSourceRendition="true">

<outputRendition>list-style: ordered;</outputRendition>
</model>

<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
header: idno
tagdocs: code
transcr: subst
character data
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
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,
   ( ( 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
}

<cb>

<cb> (column beginning) marks the beginning of a new column of a text on a multi-column page. [3.11.3. Milestone Elements]
Modulecore
Attributes
Member of
Contained by
May containEmpty element
Note

On this element, the global n attribute indicates the number or other value associated with the column which follows the point of insertion of this cb element. Encoders should adopt a clear and consistent policy as to whether the numbers associated with column breaks relate to the physical sequence number of the column in the whole text, or whether columns are numbered within the page. The cb element is placed at the head of the column to which it refers.

Example

Markup of an early English dictionary printed in two columns:

<pb/>
<cb n="1"/>
<entryFree>
 <form>Well</form>, <sense>a Pit to hold Spring-Water</sense>:
<sense>In the Art of <hi rend="italic">War</hi>, a Depth the Miner
   sinks into the Ground, to find out and disappoint the Enemies Mines,
   or to prepare one</sense>.
</entryFree>
<entryFree>To <form>Welter</form>, <sense>to wallow</sense>, or
<sense>lie groveling</sense>.</entryFree>
<!-- remainder of column -->
<cb n="2"/>
<entryFree>
 <form>Wey</form>, <sense>the greatest Measure for dry Things,
   containing five Chaldron</sense>.
</entryFree>
<entryFree>
 <form>Whale</form>, <sense>the greatest of
   Sea-Fishes</sense>.
</entryFree>
Content model
<content>
 <empty/>
</content>
Schema Declaration
element cb
{
   att.global.attributes,
   att.typed.attributes,
   att.edition.attributes,
   att.spanning.attributes,
   att.breaking.attributes,
   att.cmc.attributes,
   empty
}
Processing Model
<model behaviour="break">
<param name="typevalue="'column'"/>
<param name="labelvalue="@n"/>
</model>

<cell>

<cell> (cell) contains one cell of a table. [15.1.1. TEI Tables]
Modulefigures
Attributes
role(role) indicates the kind of information held in this cell or in each cell of this row.
Derived fromatt.tableDecoration
Status Optional
Datatype teidata.enumerated
Legal values are:
data
data cell [Default]
label
label cell
sum
row or column sum data
total
table total data
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.attribute.rows,
   att.tableDecoration.attribute.cols,
   attribute role { "data" | "label" | "sum" | "total" }?,
   macro.specialPara
}
Processing Model
<model behaviour="cell">
<desc>Insert table cell. </desc>
</model>

<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
calendarindicates one or more systems or calendars to which the date represented by the content of this element belongs.
Deprecatedwill be removed on 2024-11-11
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
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>
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
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>
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 calendar { list { teidata.pointer+ } }?,
   attribute target { list { teidata.pointer+ } }?,
   macro.specialPara
}

<char>

<char> (character) provides descriptive information about a character. [5.2. Markup Constructs for Representation of Characters and Glyphs]
Modulegaiji
Attributes
Contained by
gaiji: charDecl
May contain
Example
<char xml:id="circledU4EBA">
 <localProp name="Name"
  value="CIRCLED IDEOGRAPH 4EBA"/>

 <localProp name="daikanwavalue="36"/>
 <unicodeProp name="Decomposition_Mapping"
  value="circle"/>

 <mapping type="standard"></mapping>
</char>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <elementRef key="unicodeProp"/>
  <elementRef key="unihanProp"/>
  <elementRef key="localProp"/>
  <elementRef key="mapping"/>
  <elementRef key="figure"/>
  <classRef key="model.graphicLike"/>
  <classRef key="model.noteLike"/>
  <classRef key="model.descLike"/>
 </alternate>
</content>
Schema Declaration
element char
{
   att.global.attributes,
   (
      unicodePropunihanProplocalPropmappingfiguremodel.graphicLikemodel.noteLikemodel.descLike
   )*
}

<charDecl>

<charDecl> (character declarations) provides information about nonstandard characters and glyphs. [5.2. Markup Constructs for Representation of Characters and Glyphs]
Modulegaiji
Attributes
Member of
Contained by
header: encodingDesc
May contain
core: desc
gaiji: char glyph
Example
<charDecl>
 <char xml:id="aENL">
  <unicodeProp name="Name"
   value="LATIN LETTER ENLARGED SMALL A"/>

  <mapping type="standard">a</mapping>
 </char>
</charDecl>
Content model
<content>
 <sequence>
  <elementRef key="descminOccurs="0"/>
  <alternate minOccurs="1"
   maxOccurs="unbounded">

   <elementRef key="char"/>
   <elementRef key="glyph"/>
  </alternate>
 </sequence>
</content>
Schema Declaration
element charDecl { att.global.attributes, ( desc?, ( char | glyph )+ ) }

<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>
Schematron

<sch:rule context="tei:choice">
<sch:assert test="( tei:corr and tei:sic ) or ( tei:expan and tei:abbr ) or ( tei:reg and tei:orig )"
 role="ERROR">
Element "<sch:name/>" must have corresponding corr/sic, expand/abbr, reg/orig
</sch:assert>
</sch:rule>
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 )*
}
Processing Model
<model output="plain"
 predicate="sic and corrbehaviour="inline">

<param name="contentvalue="corr[1]"/>
</model>
<model output="plain"
 predicate="abbr and expanbehaviour="inline">

<param name="contentvalue="expan[1]"/>
</model>
<model output="plain"
 predicate="orig and regbehaviour="inline">

<param name="contentvalue="reg[1]"/>
</model>
<model predicate="sic and corr"
 behaviour="alternate">

<param name="defaultvalue="corr[1]"/>
<param name="alternatevalue="sic[1]"/>
</model>
<model predicate="abbr and expan"
 behaviour="alternate">

<param name="defaultvalue="expan[1]"/>
<param name="alternatevalue="abbr[1]"/>
</model>
<model predicate="orig and reg"
 behaviour="alternate">

<param name="defaultvalue="reg[1]"/>
<param name="alternatevalue="orig[1]"/>
</model>

<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
analysis: pc
figures: figure formula
header: biblFull
linking: anchor
textstructure: floatingText
transcr: fw
Example
<cit>
 <quote>and the breath of the whale is frequently attended with such an insupportable smell,
   as to bring on disorder of the brain.</quote>
 <bibl>Ulloa's South America</bibl>
</cit>
Example
<entry>
 <form>
  <orth>horrifier</orth>
 </form>
 <cit type="translationxml:lang="en">
  <quote>to horrify</quote>
 </cit>
 <cit type="example">
  <quote>elle était horrifiée par la dépense</quote>
  <cit type="translationxml:lang="en">
   <quote>she was horrified at the expense.</quote>
  </cit>
 </cit>
</entry>
Example
<cit type="example">
 <quote xml:lang="mix">Ka'an yu tsa'a Pedro.</quote>
 <media url="soundfiles-gen:S_speak_1s_on_behalf_of_Pedro_01_02_03_TS.wav"
  mimeType="audio/wav"/>

 <cit type="translation">
  <quote xml:lang="en">I'm speaking on behalf of Pedro.</quote>
 </cit>
 <cit type="translation">
  <quote xml:lang="es">Estoy hablando de parte de Pedro.</quote>
 </cit>
</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.biblLike
    | model.egLike
    | model.entryPart
    | model.globalmodel.graphicLikemodel.ptrLikemodel.attributablepcq
   )+
}
Processing Model
<model predicate="child::quote and child::bibl"
 behaviour="cit">

<desc>Insert citation </desc>
</model>

<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
figures: figure
header: idno
linking: anchor
tagdocs: code
transcr: fw subst
character data
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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: dateline salute signed
transcr: fw subst supplied
verse: rhyme
character data
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
   )*
}
Processing Model
<model behaviour="block">
<outputRendition>margin-top: 1em; margin-left: 1em; margin-left:
1em;</outputRendition>
</model>

<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 }
Processing Model
<model behaviour="inline">
<outputRendition>font-family:monospace</outputRendition>
</model>

<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
}
Processing Model
<model predicate="parent::choice and count(parent::*/*) gt 1"
 behaviour="inline">

<desc>simple inline, if in parent choice. </desc>
</model>
<model behaviour="inline">
<outputRendition scope="before">content: '[';</outputRendition>
<outputRendition scope="after">content: ']';</outputRendition>
</model>

<creation>

<creation> (creation) contains information about the creation of a text. [2.4.1. Creation 2.4. The Profile Description]
Moduleheader
Attributes
calendarindicates one or more systems or calendars to which the date represented by the content of this element belongs.
Deprecatedwill be removed on 2024-11-11
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
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>
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>
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,
   attribute calendar { list { teidata.pointer+ } }?,
   ( 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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
transcr: fw subst supplied
verse: rhyme
character data
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.calendarSystem.attributes,
   att.editLike.attributes,
   att.dimensions.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   ( text | model.gLike | model.phrase | model.global )*
}
Processing Model
<model output="printpredicate="text()"
 behaviour="inline"/>

<model output="print"
 predicate="@when and not(text())behaviour="inline">

<param name="contentvalue="@when"/>
</model>
<model output="webpredicate="@when"
 behaviour="alternate">

<param name="defaultvalue="."/>
<param name="alternatevalue="@when"/>
</model>
<model predicate="text()behaviour="inline"/>

<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
drama: castList
figures: figure table
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: docDate
transcr: fw subst supplied
verse: rhyme
character data
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 )*
}
Processing Model
<model behaviour="block"/>

<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
}
Processing Model
<model behaviour="inline">
<outputRendition> text-decoration: line-through;</outputRendition>
</model>

<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.typed.attribute.subtype,
   att.cmc.attributes,
   attribute type { "deprecationInfo" | teidata.enumerated }?,
   macro.limitedContent
}
Processing Model
<model behaviour="inline"/>

<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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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 minOccurs="1maxOccurs="1">
  <alternate minOccurs="0"
   maxOccurs="unbounded">

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

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

    </sequence>
    <sequence minOccurs="1maxOccurs="1">
     <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 minOccurs="1"
       maxOccurs="1">

       <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.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* )* )
         )?
      )
   )
}
Processing Model
<model predicate="@type='title_page'"
 behaviour="block">

<outputRendition>border: 1px solid black; padding: 5px;</outputRendition>
</model>
<model behaviour="section"
 predicate="parent::body or parent::front or parent::back"/>

<model behaviour="block"/>

<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
drama: castList
figures: figure table
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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
}
Processing Model
<model behaviour="inline"/>

<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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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,
   att.calendarSystem.attributes,
   macro.phraseSeq
}
Processing Model
<model behaviour="inline"/>

<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 }
Processing Model
<model behaviour="inline"/>

<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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: docDate
transcr: fw subst supplied
verse: rhyme
character data
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
   )*
}
Processing Model
<model behaviour="inline"/>

<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
figures: figure
linking: anchor
textstructure: titlePart
transcr: fw
Example
<docTitle>
 <titlePart type="main">The DUNCIAD, VARIOURVM.</titlePart>
 <titlePart type="sub">WITH THE PROLEGOMENA of SCRIBLERUS.</titlePart>
</docTitle>
Content model
<content>
 <sequence minOccurs="1maxOccurs="1">
  <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* )+ ) )
}
Processing Model
<model behaviour="block"
 useSourceRendition="true">

<outputRendition>font-size: larger;</outputRendition>
</model>

<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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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
May contain
header: edition
linking: ab
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
calendarindicates one or more systems or calendars to which the date represented by the content of this element belongs.
Deprecatedwill be removed on 2024-11-11
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
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>
Member of
Contained by
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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,
   attribute calendar { list { teidata.pointer+ } }?,
   macro.phraseSeq
}
Processing Model
<model predicate="ancestor::teiHeader"
 behaviour="omit"/>

<model behaviour="inline"/>

<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
linking: ab
Example
<encodingDesc>
 <editorialDecl>
  <p>EEBO-TCP is a partnership between the Universities of Michigan and Oxford
     and the publisher ProQuest to create accurately transcribed and encoded
     texts based on the image sets published by ProQuest via their Early English
     Books Online (EEBO) database (http://eebo.chadwyck.com). The general aim of
     EEBO-TCP is to encode one copy (usually the first edition) of every
     monographic English-language title published between 1473 and 1700 available
     in EEBO.</p>
  <p>EEBO-TCP aimed to produce large quantities of textual data within the usual
     project restraints of time and funding, and therefore chose to create
     diplomatic transcriptions (as opposed to critical editions) with
     light-touch, mainly structural encoding based on the Text Encoding
     Initiative (http://www.tei-c.org).</p>
  <p>The EEBO-TCP project was divided into two phases. The 25,363 texts created
     during Phase 1 of the project have been released into the public domain as
     of 1 January 2015. Anyone can now take and use these texts for their own
     purposes, but we respectfully request that due credit and attribution is
     given to their original source.</p>
  <p>Users should be aware of the process of creating the TCP texts, and
     therefore of any assumptions that can be made about the data.</p>
  <p>Text selection was based on the New Cambridge Bibliography of English
     Literature (NCBEL). If an author (or for an anonymous work, the title)
     appears in NCBEL, then their works are eligible for inclusion. Selection was
     intended to range over a wide variety of subject areas, to reflect the true
     nature of the print record of the period. In general, first editions of a
     works in English were prioritized, although there are a number of works in
     other languages, notably Latin and Welsh, included and sometimes a second or
     later edition of a work was chosen if there was a compelling reason to do
     so.</p>
  <p>Image sets were sent to external keying companies for transcription and
     basic encoding. Quality assurance was then carried out by editorial teams in
     Oxford and Michigan. 5% (or 5 pages, whichever is the greater) of each text
     was proofread for accuracy and those which did not meet QA standards were
     returned to the keyers to be redone. After proofreading, the encoding was
     enhanced and/or corrected and characters marked as illegible were corrected
     where possible up to a limit of 100 instances per text. Any remaining
     illegibles were encoded as <gap>s. Understanding these processes
     should make clear that, while the overall quality of TCP data is very good,
     some errors will remain and some readable characters will be marked as
     illegible. Users should bear in mind that in all likelihood such instances
     will never have been looked at by a TCP editor.</p>
  <p>The texts were encoded and linked to page images in accordance with level 4
     of the TEI in Libraries guidelines.</p>
  <p>Copies of the texts have been issued variously as SGML (TCP schema; ASCII
     text with mnemonic sdata character entities); displayable XML (TCP schema;
     characters represented either as UTF-8 Unicode or text strings within
     braces); or lossless XML (TEI P5, characters represented either as UTF-8
     Unicode or TEI g elements).</p>
  <p>Keying and markup guidelines are available at the <ref target="http://www.textcreationpartnership.org/docs/.">Text Creation
       Partnership web site</ref>.</p>
 </editorialDecl>
</encodingDesc>
Content model
<content>
 <alternate minOccurs="1"
  maxOccurs="unbounded">

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

<email>

<email> (electronic mail address) contains an email address identifying a location to which email messages can be delivered. [3.6.2. Addresses]
Modulecore
Attributes
Member of
Contained by
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
Note

The format of a modern Internet email address is defined in RFC 2822

Example
<email>membership@tei-c.org</email>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element email { att.global.attributes, att.cmc.attributes, macro.phraseSeq }
Processing Model
<model behaviour="inline">
<outputRendition>font-family:monospace</outputRendition>
</model>

<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 )+
}
Processing Model
<model behaviour="omit"/>

<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
drama: castList
figures: figure table
May contain
drama: castList
figures: figure table
header: biblFull
linking: ab anchor
namesdates: listPerson listPlace
textstructure: floatingText
transcr: fw
Example
<epigraph>
 <bibl>Deut. Chap. 5.</bibl>
 <q>11 Thou ſhalt not take the name of the Lord thy God in vaine, for the Lord
   will not hold him guiltleſſe which ſhall take his name in vaine.</q>
</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 )*
}
Processing Model
<model behaviour="block"/>

<expan>

<expan> (expansion) contains the expansion of an abbreviation. [3.6.5. Abbreviations and Their Expansions]
Modulecore
Attributes
Member of
Contained by
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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
}
Processing Model
<model behaviour="inline"/>

<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
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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 }

<facsimile>

<facsimile> contains a representation of some written source in the form of a set of images rather than as transcribed or encoded text. [12.1. Digital Facsimiles]
Moduletranscr
Attributes
Member of
Contained by
core: teiCorpus
textstructure: TEI
May contain
core: graphic
figures: formula
textstructure: back front
transcr: surface
Example
<facsimile>
 <graphic url="page1.png"/>
 <surface>
  <graphic url="page2-highRes.png"/>
  <graphic url="page2-lowRes.png"/>
 </surface>
 <graphic url="page3.png"/>
 <graphic url="page4.png"/>
</facsimile>
Example
<facsimile>
 <surface ulx="0uly="0lrx="200lry="300">
  <graphic url="Bovelles-49r.png"/>
 </surface>
</facsimile>
Schematron

<sch:rule context="tei:facsimile//tei:line | tei:facsimile//tei:zone">
<sch:report test="child::text()[ normalize-space(.) ne '']"> A facsimile element represents a text with images, thus
transcribed text should not be present within it.
</sch:report>
</sch:rule>
Content model
<content>
 <sequence>
  <elementRef key="frontminOccurs="0"/>
  <alternate minOccurs="1"
   maxOccurs="unbounded">

   <classRef key="model.graphicLike"/>
   <elementRef key="surface"/>
   <elementRef key="surfaceGrp"/>
  </alternate>
  <elementRef key="backminOccurs="0"/>
 </sequence>
</content>
Schema Declaration
element facsimile
{
   att.global.attributes,
   ( front?, ( model.graphicLike | surface | surfaceGrp )+, back? )
}

<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 }
Processing Model
<model behaviour="inline">
<outputRendition scope="before">content: '[..';</outputRendition>
<outputRendition scope="after">content: '..]';</outputRendition>
<outputRendition>color: grey;font-style:italic;</outputRendition>
</model>

<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
   )*
}
Processing Model
<model predicate="head or @rendition='simple:display'"
 behaviour="block"/>

<model behaviour="inline">
<outputRendition> display: block; border-top: solid 1pt blue; border-bottom: solid
1pt blue; </outputRendition>
</model>

<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
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 minOccurs="1maxOccurs="1">
  <sequence minOccurs="1maxOccurs="1">
   <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+
   )
}
Processing Model
<model behaviour="title">
<param name="contentvalue="titleStmt"/>
</model>

<floatingText>

<floatingText> (floating text) contains a single text of any kind, whether unitary or composite, which interrupts the text containing it at any point and after which the surrounding text resumes. [4.3.2. Floating Texts]
Moduletextstructure
Attributes
Member of
Contained by
May contain
figures: figure
linking: anchor
textstructure: back body front group
transcr: fw
Note

A floating text has the same content as any other text and may thus be interrupted by another floating text, or contain a group of tesselated texts.

Example
<body>
 <div type="scene">
  <sp>
   <p>Hush, the players begin...</p>
  </sp>
  <floatingText type="pwp">
   <body>
    <div type="act">
     <sp>
      <l>In Athens our tale takes place [...]</l>
     </sp>
<!-- ... rest of nested act here -->
    </div>
   </body>
  </floatingText>
  <sp>
   <p>Now that the play is finished ...</p>
  </sp>
 </div>
</body>
Content model
<content>
 <sequence minOccurs="1maxOccurs="1">
  <classRef key="model.global"
   minOccurs="0maxOccurs="unbounded"/>

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

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

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

  </sequence>
 </sequence>
</content>
Schema Declaration
element floatingText
{
   att.global.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   (
      model.global*,
      ( ( front, model.global* )? ),
      ( body | group ),
      model.global*,
      ( ( back, model.global* )? )
   )
}
Processing Model
<model behaviour="block">
<outputRendition> margin: 6pt; border: solid black 1pt; </outputRendition>
</model>

<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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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 }
Processing Model
<model behaviour="inline">
<outputRendition>font-style:italic;</outputRendition>
</model>

<formula>

<formula> (formula) contains a mathematical or other formula. [15.2. Formulæ and Mathematical Expressions]
Modulefigures
Attributes
notationnames the notation used for the content of the element.
Derived fromatt.notated
Status Optional
Datatype teidata.enumerated
Suggested values include:
TeX
Using TeX or LaTeX notation
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.cmc.attributes,
   attribute notation { "TeX" | teidata.enumerated }?,
   ( text | model.graphicLike | model.hiLike )*
}
Processing Model
<model predicate="@rendition='simple:display'"
 behaviour="block"/>

<model behaviour="inline"/>

<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: floatingText text
transcr: facsimile
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 minOccurs="1maxOccurs="1">
  <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="0maxOccurs="1">
   <alternate minOccurs="1maxOccurs="1">
    <sequence minOccurs="1maxOccurs="1">
     <classRef key="model.div1Like"/>
     <alternate minOccurs="0"
      maxOccurs="unbounded">

      <classRef key="model.div1Like"/>
      <classRef key="model.frontPart"/>
      <classRef key="model.global"/>
     </alternate>
    </sequence>
    <sequence minOccurs="1maxOccurs="1">
     <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="0maxOccurs="1">
    <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,
   (
      ( 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 )* )? )
         )?
      )
   )
}
Processing Model
<model behaviour="block"/>

<fw>

<fw> (forme work) contains a running head (e.g. a header, footer), catchword, or similar material appearing on the current page. [12.6. Headers, Footers, and Similar Matter]
Moduletranscr
Attributes
typeclassifies the material encoded according to some useful typology.
Derived fromatt.typed
Status Recommended
Datatype teidata.enumerated
Sample values include:
header
a running title at the top of the page
footer
a running title at the bottom of the page
pageNum
(page number) a page number or foliation symbol
lineNum
(line number) a line number, either of prose or poetry
sig
(signature) a signature or gathering symbol
catch
(catchword) a catch-word
Member of
Contained by
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
Note

Where running heads are consistent throughout a chapter or section, it is usually more convenient to relate them to the chapter or section, e.g. by use of the rend attribute. The fw element is intended for cases where the running head changes from page to page, or where details of page layout and the internal structure of the running heads are of paramount importance.

Example
<fw type="sigplace="bottom">C3</fw>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element fw
{
   att.global.attributes,
   att.typed.attribute.subtype,
   att.placement.attributes,
   att.written.attributes,
   attribute type { teidata.enumerated }?,
   macro.phraseSeq
}
Processing Model
<model predicate="ancestor::p or ancestor::ab"
 behaviour="inline"/>

<model behaviour="block"/>

<g>

<g> (character or glyph) represents a glyph, or a non-standard character. [5. Characters, Glyphs, and Writing Modes]
Modulegaiji
Attributes
refpoints to a description of the character or glyph intended.
Status Optional
Datatype teidata.pointer
Member of
Contained by
May containCharacter data only
Note

The name g is short for gaiji, which is the Japanese term for a non-standardized character or glyph.

Example
<g ref="#ctlig">ct</g>
This example points to a glyph element with the identifier ctlig like the following:
<glyph xml:id="ctlig">
<!-- here we describe the particular ct-ligature intended -->
</glyph>
Example
<g ref="#per-glyph">per</g>
The medieval brevigraph per could similarly be considered as an individual glyph, defined in a glyph element with the identifier per-glyph as follows:
<glyph xml:id="per-glyph">
<!-- ... -->
</glyph>
Content model
<content>
 <textNode/>
</content>
Schema Declaration
element g
{
   att.global.attributes,
   att.typed.attributes,
   attribute ref { teidata.pointer }?,
   text
}
Processing Model
<model predicate="not(text())"
 behaviour="glyph">

<param name="urivalue="@ref"/>
</model>
<model behaviour="inline"/>

<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>
 <elementRef key="descminOccurs="0"
  maxOccurs="1"/>

</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 }?,
   desc?
}
Processing Model
<model predicate="descbehaviour="inline">
<outputRendition>color: grey;</outputRendition>
</model>
<model predicate="@extent"
 behaviour="inline">

<param name="contentvalue="@extent"/>
<outputRendition scope="before">content: '[..';</outputRendition>
<outputRendition scope="after">content: '..]';</outputRendition>
<outputRendition>color: grey;</outputRendition>
</model>
<model behaviour="inline">
<outputRendition scope="before">content: '[...]';</outputRendition>
</model>

<glyph>

<glyph> (character glyph) provides descriptive information about a character glyph. [5.2. Markup Constructs for Representation of Characters and Glyphs]
Modulegaiji
Attributes
Contained by
gaiji: charDecl
May contain
Example
<glyph xml:id="rstroke">
 <localProp name="Name"
  value="LATIN SMALL LETTER R WITH A FUNNY STROKE"/>

 <localProp name="entityvalue="rstroke"/>
 <figure>
  <graphic url="glyph-rstroke.png"/>
 </figure>
</glyph>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <elementRef key="unicodeProp"/>
  <elementRef key="unihanProp"/>
  <elementRef key="localProp"/>
  <elementRef key="mapping"/>
  <elementRef key="figure"/>
  <classRef key="model.graphicLike"/>
  <classRef key="model.noteLike"/>
  <classRef key="model.descLike"/>
 </alternate>
</content>
Schema Declaration
element glyph
{
   att.global.attributes,
   (
      unicodePropunihanProplocalPropmappingfiguremodel.graphicLikemodel.noteLikemodel.descLike
   )*
}

<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.typed.attributes,
   att.cmc.attributes,
   model.descLike*
}
Processing Model
<model behaviour="graphic">
<param name="urlvalue="@url"/>
<param name="widthvalue="@width"/>
<param name="heightvalue="@height"/>
<param name="scalevalue="@scale"/>
<param name="titlevalue="desc"/>
</model>

<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: floatingText 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 minOccurs="1maxOccurs="1">
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.divTop"/>
   <classRef key="model.global"/>
  </alternate>
  <sequence minOccurs="1maxOccurs="1">
   <alternate minOccurs="1maxOccurs="1">
    <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.typed.attributes,
   (
      ( model.divTop | model.global )*,
      ( ( text | group ), ( text | group | model.global )* ),
      model.divBottom*
   )
}
Processing Model
<model behaviour="block"/>
<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
   )*
}
Processing Model
<model predicate="parent::figure"
 behaviour="block">

<outputRendition>font-style: italic;</outputRendition>
</model>
<model predicate="parent::table"
 behaviour="block">

<outputRendition>font-style: italic;</outputRendition>
</model>
<model predicate="parent::lg"
 behaviour="block">

<outputRendition>font-style: italic;</outputRendition>
</model>
<model predicate="parent::list"
 behaviour="block">

<outputRendition>font-weight: bold;</outputRendition>
</model>
<model predicate="parent::div"
 behaviour="heading">

<param name="level"
 value="count(ancestor::div)"/>

</model>
<model behaviour="block"/>

<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
}
Processing Model
<model predicate="@rendition"
 behaviour="inlineuseSourceRendition="true">

<outputRendition>font-style: italic;</outputRendition>
</model>
<model predicate="not(@rendition)"
 behaviour="inline">

<outputRendition>font-style: italic;</outputRendition>
</model>

<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.
calendarindicates one or more systems or calendars to which the date represented by the content of this element belongs.
Deprecatedwill be removed on 2024-11-11
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
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>
Member of
Contained by
May contain
gaiji: g
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.

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
   }?,
   attribute calendar { list { teidata.pointer+ } }?,
   ( 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 }
Processing Model
<model behaviour="block"/>

<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
}
Processing Model
<model behaviour="listItem"/>

<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
<argument>
 <l>With ſighs and tears her love he doth deſire,</l>
 <l>Since Cupid hath his ſenſes ſet on fire;</l>
 <l>His torment and his pain to her he ſhews,</l>
 <l>With all his proteſtations and his vows:</l>
 <l>At laſt ſhe yields to grant him ſome relief,</l>
 <l>And make him joyful after all his grief.</l>
</argument>
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.metrical.attributes,
   att.fragmentable.attributes,
   att.cmc.attributes,
   ( text | model.gLike | model.phrase | model.inter | model.global )*
}
Processing Model
<model behaviour="block"
 useSourceRendition="true">

<outputRendition> margin-left: 1em; </outputRendition>
</model>

<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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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
}
Processing Model
<model behaviour="inline"/>

<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
figures: figure
header: idno
linking: anchor
tagdocs: code
transcr: fw subst
character data
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
linking: ab
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, ( 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
}
Processing Model
<model behaviour="break"
 useSourceRendition="true">

<param name="typevalue="'line'"/>
<param name="labelvalue="@n"/>
</model>

<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 minOccurs="1maxOccurs="1">
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.divTop"/>
   <classRef key="model.global"/>
  </alternate>
  <alternate minOccurs="1maxOccurs="1">
   <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.cmc.attributes,
   (
      ( model.divTop | model.global )*,
      (
         model.lLikemodel.stageLikemodel.labelLikemodel.pPart.transcriptionallg
      ),
      (
         model.lLikemodel.stageLikemodel.labelLikemodel.pPart.transcriptionalmodel.globallg
      )*,
      ( ( model.divBottom, model.global* )* )
   )
}
Processing Model
<model behaviour="block"/>

<licence>

<licence> contains information about a licence or other legal agreement applicable to the text. [2.2.4. Publication, Distribution, Licensing, etc.]
Moduleheader
Attributes
calendarindicates one or more systems or calendars to which the date represented by the content of this element belongs.
Deprecatedwill be removed on 2024-11-11
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
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>
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>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
Schema Declaration
element licence
{
   att.global.attributes,
   att.pointing.attributes,
   att.datable.attributes,
   attribute calendar { list { teidata.pointer+ } }?,
   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 minOccurs="1maxOccurs="1">
  <alternate minOccurs="0"
   maxOccurs="unbounded">

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

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

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

   </sequence>
   <sequence minOccurs="1maxOccurs="1">
    <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* )* )
   )
}
Processing Model
<model predicate="@rendition"
 behaviour="listuseSourceRendition="true"/>

<model predicate="not(@rendition)"
 behaviour="list"/>

<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
header: biblFull
linking: anchor
transcr: fw
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 minOccurs="1maxOccurs="1">
  <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.typed.attributes,
   att.cmc.attributes,
   (
      model.headLike*,
      desc*,
      ( model.milestoneLike | relation | listRelation )*,
      (
         (
            model.biblLike+,
            ( model.milestoneLike | relation | listRelation )*
         )+
      )
   )
}
Processing Model
<model predicate="biblbehaviour="list"/>
<model behaviour="block"/>

<listChange>

<listChange> groups a number of change descriptions associated with either the creation of a source text or the revision of an encoded text. [2.6. The Revision Description 12.7. Identifying Changes and Revisions]
Moduleheader
Attributes
orderedindicates whether the ordering of its child change elements is to be considered significant or not
Status Optional
Datatype teidata.truthValue
Default true
Contained by
May contain
core: desc
Note

When this element appears within the creation element it documents the set of revision campaigns or stages identified during the evolution of the original text. When it appears within the revisionDesc element, it documents only changes made during the evolution of the encoded representation of that text.

Example
<revisionDesc>
 <listChange>
  <change when="1991-11-11who="#LB"> deleted chapter 10 </change>
  <change when="1991-11-02who="#MSM"> completed first draft </change>
 </listChange>
</revisionDesc>
Example
<profileDesc>
 <creation>
  <listChange ordered="true">
   <change xml:id="CHG-1">First stage, written in ink by a writer</change>
   <change xml:id="CHG-2">Second stage, written in Goethe's hand using pencil</change>
   <change xml:id="CHG-3">Fixation of the revised passages and further revisions by
       Goethe using ink</change>
   <change xml:id="CHG-4">Addition of another stanza in a different hand,
       probably at a later stage</change>
  </listChange>
 </creation>
</profileDesc>
Content model
<content>
 <sequence>
  <elementRef key="descminOccurs="0"
   maxOccurs="unbounded"/>

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

   <elementRef key="listChange"/>
   <elementRef key="change"/>
  </alternate>
 </sequence>
</content>
Schema Declaration
element listChange
{
   att.global.attributes,
   att.sortable.attributes,
   att.typed.attributes,
   attribute ordered { teidata.truthValue }?,
   ( desc*, ( listChange | change )+ )
}

<listPerson>

<listPerson> (list of persons) contains a list of descriptions, each of which provides information about an identifiable person or a group of people, for example the participants in a language interaction, or the people referred to in a historical source. [14.3.2. The Person Element 16.2. Contextual Information 2.4. The Profile Description 16.3.2. Declarable Elements]
Modulenamesdates
Attributes
Member of
Contained by
May contain
core: desc head
namesdates: listPerson person
Note

The type attribute may be used to distinguish lists of people of a particular type if convenient.

Example
<listPerson type="respondents">
 <personGrp xml:id="PXXX"/>
 <person xml:id="P1234sex="2age="mid"/>
 <person xml:id="P4332sex="1age="mid"/>
 <listRelation>
  <relation type="personalname="spouse"
   mutual="#P1234 #P4332"/>

 </listRelation>
</listPerson>
Content model
<content>
 <sequence>
  <classRef key="model.headLike"
   minOccurs="0maxOccurs="unbounded"/>

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

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

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

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

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

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

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

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

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

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

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

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

<listPlace>

<listPlace> (list of places) contains a list of places, optionally followed by a list of relationships (other than containment) defined amongst them. [2.2.7. The Source Description 14.3.4. Places]
Modulenamesdates
Attributes
Member of
Contained by
May contain
core: desc head
namesdates: listPlace place
Example
<listPlace type="offshoreIslands">
 <place>
  <placeName>La roche qui pleure</placeName>
 </place>
 <place>
  <placeName>Ile aux cerfs</placeName>
 </place>
</listPlace>
Content model
<content>
 <sequence>
  <classRef key="model.headLike"
   minOccurs="0maxOccurs="unbounded"/>

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

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

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

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

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

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

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

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

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

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

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

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

<listPrefixDef>

<listPrefixDef> (list of prefix definitions) contains a list of definitions of prefixing schemes used in teidata.pointer values, showing how abbreviated URIs using each scheme may be expanded into full URIs. [17.2.3. Using Abbreviated Pointers]
Moduleheader
Attributes
Member of
Contained by
May contain
Example

In this example, two private URI scheme prefixes are defined and patterns are provided for dereferencing them. Each prefix is also supplied with a human-readable explanation in a p element.

<listPrefixDef>
 <prefixDef ident="psn"
  matchPattern="([A-Z]+)"
  replacementPattern="personography.xml#$1">

  <p> Private URIs using the <code>psn</code>
     prefix are pointers to <gi>person</gi>
     elements in the personography.xml file.
     For example, <code>psn:MDH</code>
     dereferences to <code>personography.xml#MDH</code>.
  </p>
 </prefixDef>
 <prefixDef ident="bibl"
  matchPattern="([a-z]+[a-z0-9]*)"
  replacementPattern="http://www.example.com/getBibl.xql?id=$1">

  <p> Private URIs using the <code>bibl</code> prefix can be
     expanded to form URIs which retrieve the relevant
     bibliographical reference from www.example.com.
  </p>
 </prefixDef>
</listPrefixDef>
Content model
<content>
 <sequence>
  <elementRef key="descminOccurs="0"
   maxOccurs="unbounded"/>

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

   <elementRef key="prefixDef"/>
   <elementRef key="listPrefixDef"/>
  </alternate>
 </sequence>
</content>
Schema Declaration
element listPrefixDef
{
   att.global.attributes,
   ( desc*, ( prefixDef | listPrefixDef )+ )
}

<localProp>

<localProp> (locally defined property) provides a locally defined character (or glyph) property. [5.2.1. Character Properties]
Modulegaiji
Attributes
Contained by
gaiji: char glyph
May containEmpty element
Note

No definitive list of local names is proposed. However, the name entity is recommended as a means of naming the property identifying the recommended character entity name for this character or glyph.

Example
<char xml:id="daikanwaU4EBA">
 <localProp name="name"
  value="CIRCLED IDEOGRAPH 4EBA"/>

 <localProp name="entityvalue="daikanwa"/>
 <unicodeProp name="Decomposition_Mapping"
  value="circle"/>

 <mapping type="standard"></mapping>
</char>
Content model
<content>
 <empty/>
</content>
Schema Declaration
element localProp { att.global.attributes, att.gaijiProp.attributes, empty }

<mapping>

<mapping> (character mapping) contains one or more characters which are related to the parent character or glyph in some respect, as specified by the type attribute. [5.2. Markup Constructs for Representation of Characters and Glyphs]
Modulegaiji
Attributes
Contained by
gaiji: char glyph
May contain
gaiji: g
character data
Note

Suggested values for the type attribute include exact for exact equivalences, uppercase for uppercase equivalences, lowercase for lowercase equivalences, and simplified for simplified characters. The g elements contained by this element can point to either another char or glyph element or contain a character that is intended to be the target of this mapping.

Example
<mapping type="modern">r</mapping>
<mapping type="standard"></mapping>
Content model
<content>
 <macroRef key="macro.xtext"/>
</content>
Schema Declaration
element mapping
{
   att.global.attributes,
   att.typed.attributes,
   att.datable.attributes,
   macro.xtext
}

<measure>

<measure> (measure) contains a word or phrase referring to some quantity of an object or commodity, usually comprising a number, a unit, and a commodity name. [3.6.3. Numbers and Measures]
Modulecore
Attributes
typespecifies the type of measurement in any convenient typology.
Derived fromatt.typed
Status Optional
Datatype teidata.enumerated
Member of
Contained by
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
Example

This example references a definition of a measurement unit declared in the TEI header:

<measure type="weight">
 <num>2</num> pounds of flesh
</measure>
<measure type="currency">£10-11-6d</measure>
<measure type="areaunitRef="#merk">2 <unit>merks</unit> of old extent</measure>
<!-- In the TEI Header: -->
<encodingDesc>
 <unitDecl>
  <unitDef xml:id="merktype="area">
   <label>merk</label>
   <placeName ref="#Scotland"/>
   <desc>A merk was an area of land determined variably by its agricultural
       productivity.</desc>
  </unitDef>
 </unitDecl>
</encodingDesc>
Example
<measure quantity="40unit="hogshead"
 commodity="rum">
2 score hh rum</measure>
<measure quantity="12unit="count"
 commodity="roses">
1 doz. roses</measure>
<measure quantity="1unit="count"
 commodity="tulips">
a yellow tulip</measure>
Example
<head>Long papers.</head>
<p>Speakers will be given 30 minutes each: 20 minutes for
presentation, 10 minutes for discussion. Proposals should not
exceed <measure max="500unit="count"
  commodity="words">
500
   words</measure>. This presentation type is suitable for
substantial research, theoretical or critical discussions.</p>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element measure
{
   att.global.attributes,
   att.typed.attribute.subtype,
   att.measurement.attributes,
   att.cmc.attributes,
   attribute type { teidata.enumerated }?,
   macro.phraseSeq
}
Processing Model
<model behaviour="inline"/>

<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
}
Processing Model
<model behaviour="inline"/>

<name>

<name> (name, proper noun) contains a proper noun or noun phrase. [3.6.1. Referring Strings]
Modulecore
Attributes
typecharacterizes the element in some sense, using any convenient classification scheme or typology.
Derived fromatt.typed
Status Optional
Datatype teidata.enumerated
Legal values are:
person
forename
surname
personGenName
personRoleName
personAddName
nameLink
org
country
placeGeog
place
calendarindicates one or more systems or calendars to which the date represented by the content of this element belongs.
Deprecatedwill be removed on 2024-11-11
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
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>
Member of
Contained by
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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.attribute.subtype,
   att.cmc.attributes,
   attribute type
   {
      "person"
    | "forename"
    | "surname"
    | "personGenName"
    | "personRoleName"
    | "personAddName"
    | "nameLink"
    | "org"
    | "country"
    | "placeGeog"
    | "place"
   }?,
   attribute calendar { list { teidata.pointer+ } }?,
   macro.phraseSeq
}
Processing Model
<model behaviour="inline"/>

<namespace>

<namespace> (namespace) supplies the formal name of the namespace to which the elements documented by its children belong. [2.3.4. The Tagging Declaration]
Moduleheader
Attributes
namespecifies the full formal name of the namespace concerned.
Status Required
Datatype 0–1 occurrences of teidata.namespace separated by whitespace
Contained by
header: tagsDecl
May contain
header: tagUsage
Example
<namespace name="http://www.tei-c.org/ns/1.0">
 <tagUsage gi="hioccurs="28withId="2"> Used only to mark English words
   italicized in the copy text </tagUsage>
</namespace>
Content model
<content>
 <elementRef key="tagUsageminOccurs="1"
  maxOccurs="unbounded"/>

</content>
Schema Declaration
element namespace
{
   att.global.attributes,
   attribute name { teidata.namespace? },
   tagUsage+
}

<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
}
Processing Model
<model predicate="@placebehaviour="note">
<param name="placevalue="@place"/>
<param name="labelvalue="@n"/>
</model>
<model predicate="parent::div and not(@place)"
 behaviour="block">

<outputRendition>margin-left: 10px;margin-right: 10px;
font-size:smaller;</outputRendition>
</model>
<model predicate="not(@place)"
 behaviour="inline">

<outputRendition scope="before">content:" [";</outputRendition>
<outputRendition scope="after">content:"] ";</outputRendition>
<outputRendition>font-size:small;</outputRendition>
</model>

<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
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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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.cmc.attributes,
   attribute type
   {
      "cardinal" | "ordinal" | "fraction" | "percentage" | teidata.enumerated
   }?,
   attribute value { teidata.numeric }?,
   macro.phraseSeq
}
Processing Model
<model behaviour="inline"/>

<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
drama: castList
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
   )*
}
Processing Model
<model behaviour="block"/>

<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 }
Processing Model
<model behaviour="inline"/>

<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.fragmentable.attributes,
   att.written.attributes,
   att.cmc.attributes,
   macro.paraContent
}
Processing Model
<model behaviour="paragraph"
 useSourceRendition="true">

<outputRendition>text-align: justify;</outputRendition>
</model>

<particDesc>

<particDesc> (participation description) describes the identifiable speakers, voices, or other participants in any kind of text or other persons named or otherwise referred to in a text, edition, or metadata. [16.2. Contextual Information]
Modulecorpus
Attributes
Member of
Contained by
header: profileDesc
May contain
core: p
linking: ab
namesdates: listPerson person
Example
<particDesc>
 <listPerson>
  <person xml:id="Trindersex="m">
   <p>
    <name type="surname">Trinder</name>
    <name type="forename">William</name>
    <name type="forename">Martin</name>
   </p>
  </person>
  <person xml:id="Lelandsex="m">
   <p>
    <name type="surname">Leland</name>
    <name type="forename">Thomas</name>
   </p>
  </person>
 </listPerson>
</particDesc>
Content model
<content>
 <alternate minOccurs="1maxOccurs="1">
  <classRef key="model.pLikeminOccurs="1"
   maxOccurs="unbounded"/>

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

   <classRef key="model.personLike"/>
   <elementRef key="listPerson"/>
   <elementRef key="listOrg"/>
  </alternate>
 </alternate>
</content>
Schema Declaration
element particDesc
{
   att.global.attributes,
   ( model.pLike+ | ( model.personLike | listPerson | listOrg )+ )
}

<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
}
Processing Model
<model behaviour="break"
 useSourceRendition="true">

<param name="typevalue="'page'"/>
<param name="label"
 value="(concat(if(@n) then concat(@n,' ') else '',if(@facs) then concat('@',@facs) else ''))"/>

<outputRendition> display: block; margin-left: 4pt; color: grey; float: right; </outputRendition>
<outputRendition scope="before">content: '[Page ';</outputRendition>
<outputRendition scope="after">content: ']';</outputRendition>
</model>

<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
analysis: c
gaiji: g
transcr: subst supplied
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 )*
}
Processing Model
<model behaviour="inline"/>

<person>

<person> (person) provides information about an identifiable individual, for example a participant in a language interaction, or a person referred to in a historical source. [14.3.2. The Person Element 16.2.2. The Participant Description]
Modulenamesdates
Attributes
rolespecifies a primary role or classification for the person.
Status Optional
Datatype 1–∞ occurrences of teidata.enumerated separated by whitespace
Note

Values for this attribute may be locally defined by a project, using arbitrary keywords such as artist, employer, author, relative, or servant, each of which should be associated with a definition. Such local definitions will typically be provided by a <valList> element in the project schema specification.

sexspecifies the sex of the person.
Status Optional
Datatype 1–∞ occurrences of teidata.sex separated by whitespace
Note

Values for this attribute may be defined locally by a project, or they may refer to an external standard.

genderspecifies the gender of the person.
Status Optional
Datatype 1–∞ occurrences of teidata.gender separated by whitespace
Note

Values for this attribute may be defined locally by a project, or they may refer to an external standard.

agespecifies an age group for the person.
Status Optional
Datatype teidata.enumerated
Note

Values for this attribute may be locally defined by a project, using arbitrary keywords such as infant, child, teen, adult, or senior, each of which should be associated with a definition. Such local definitions will typically be provided by a <valList> element in the project schema specification.

Member of
Contained by
corpus: particDesc
namesdates: listPerson
May contain
figures: figure
header: biblFull idno
linking: ab anchor
transcr: fw
Example
<person sex="1">
 <p>William Shakespeare, born in Stratford-upon-Avon, 26 April 1564, died in
   Stratford-upon-Avon, 23 April 1616, English playwright and poet</p>
</person>
Example
<person xml:id="Stevensonsex="m"
 role="writer">

 <p>
  <name type="surname">Stevenson</name>
  <name type="forename">Robert</name>
  <name type="forename">Louis</name>
 </p>
</person>
Content model
<content>
 <alternate minOccurs="1maxOccurs="1">
  <classRef key="model.pLikeminOccurs="1"
   maxOccurs="unbounded"/>

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

   <classRef key="model.personPart"/>
   <classRef key="model.global"/>
   <elementRef key="ptr"/>
  </alternate>
 </alternate>
</content>
Schema Declaration
element person
{
   att.global.attributes,
   att.editLike.attributes,
   att.sortable.attributes,
   attribute role { list { teidata.enumerated+ } }?,
   attribute sex { list { teidata.sex+ } }?,
   attribute gender { list { teidata.gender+ } }?,
   attribute age { teidata.enumerated }?,
   ( model.pLike+ | ( model.personPart | model.global | ptr )* )
}

<place>

<place> (place) contains data about a geographic location [14.3.4. Places]
Modulenamesdates
Attributes
Member of
Contained by
corpus: settingDesc
namesdates: listPlace place
May contain
header: biblFull idno
linking: ab
namesdates: listPlace place
Example
<place xml:id="Hereford">
 <p>
  <name type="place">Hereford</name>
  <name type="country">England</name>
 </p>
</place>
Example
<place xml:id="Lithuania">
 <p>
  <name type="country">Lithuania</name>
  <name type="countryxml:lang="lt">Lietuva</name>
 </p>
 <place xml:id="Vilnius">
  <p>
   <name>Vilnius</name>
  </p>
 </place>
 <place xml:id="Kaunas">
  <p>
   <name>Kaunas</name>
  </p>
 </place>
</place>
Content model
<content>
 <sequence minOccurs="1maxOccurs="1">
  <classRef key="model.headLike"
   minOccurs="0maxOccurs="unbounded"/>

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

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

    <classRef key="model.labelLike"/>
    <classRef key="model.placeStateLike"/>
    <classRef key="model.eventLike"/>
    <elementRef key="name"/>
   </alternate>
  </alternate>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.noteLike"/>
   <classRef key="model.biblLike"/>
   <elementRef key="idno"/>
   <elementRef key="ptr"/>
   <elementRef key="linkGrp"/>
   <elementRef key="link"/>
  </alternate>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.placeLike"/>
   <elementRef key="listPlace"/>
  </alternate>
 </sequence>
</content>
Schema Declaration
element place
{
   att.global.attributes,
   att.typed.attributes,
   att.editLike.attributes,
   att.sortable.attributes,
   (
      model.headLike*,
      (
         model.pLike*
       | ( model.labelLike | model.placeStateLike | model.eventLike | name )*
      ),
      ( model.noteLike | model.biblLike | idno | ptr | linkGrp | link )*,
      ( model.placeLike | listPlace )*
   )
}

<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 minOccurs="1maxOccurs="1">
  <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* )* )
   )
}
Processing Model
<model behaviour="block"/>

<prefixDef>

<prefixDef> (prefix definition) defines a prefixing scheme used in teidata.pointer values, showing how abbreviated URIs using the scheme may be expanded into full URIs. [17.2.3. Using Abbreviated Pointers]
Moduleheader
Attributes
identsupplies a name which functions as the prefix for an abbreviated pointing scheme such as a private URI scheme. The prefix constitutes the text preceding the first colon.
Status Required
Datatype teidata.prefix
Note

The value is limited to teidata.prefix so that it may be mapped directly to a URI prefix.

Contained by
May contain
core: p
linking: ab
Note

The abbreviated pointer may be dereferenced to produce either an absolute or a relative URI reference. In the latter case it is combined with the value of xml:base in force at the place where the pointing attribute occurs to form an absolute URI in the usual manner as prescribed by XML Base.

Example
<prefixDef ident="ref"
 matchPattern="([a-z]+)"
 replacementPattern="../../references/references.xml#$1">

 <p> In the context of this project, private URIs with
   the prefix "ref" point to <gi>div</gi> elements in
   the project's global references.xml file.
 </p>
</prefixDef>
Content model
<content>
 <classRef key="model.pLikeminOccurs="0"
  maxOccurs="unbounded"/>

</content>
Schema Declaration
element prefixDef
{
   att.global.attributes,
   att.patternReplacement.attributes,
   attribute ident { teidata.prefix },
   model.pLike*
}

<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
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>
 <creation>
  <date notAfter="1623"/>
 </creation>
 <langUsage>
  <language ident="eng">English</language>
 </langUsage>
 <textClass>
  <keywords scheme="#LCSH">
   <term type="genre">Plays -- England -- 16th century</term>
   <term type="genre">Plays -- England -- 17th century</term>
   <term type="genre">Comedies -- England -- 16th century</term>
   <term type="genre">Comedies -- England -- 17th century</term>
   <term type="genre">Tragedies -- England -- 16th century</term>
   <term type="genre">Tragedies -- England -- 17th century</term>
  </keywords>
 </textClass>
</profileDesc>
Content model
<content>
 <classRef key="model.profileDescPart"
  minOccurs="0maxOccurs="unbounded"/>

</content>
Schema Declaration
element profileDesc { att.global.attributes, model.profileDescPart* }
Processing Model
<model behaviour="omit"/>

<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
linking: ab
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, model.pLike+ }

<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
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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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
}
Processing Model
<model predicate="ancestor::teiHeader"
 behaviour="omit">

<desc>Omit if located in teiHeader. </desc>
</model>

<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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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
}
Processing Model
<model predicate="ancestor::teiHeader"
 behaviour="omit">

<desc>Omit if located in teiHeader. </desc>
</model>

<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
}
Processing Model
<model predicate="lbehaviour="block"
 useSourceRendition="true">

<outputRendition>margin-left: 10px; margin-right: 10px; </outputRendition>
</model>
<model predicate="ancestor::p or ancestor::cell"
 behaviour="inlineuseSourceRendition="true">

<outputRendition scope="before">content: '‘';</outputRendition>
<outputRendition scope="after">content: '’';</outputRendition>
</model>
<model behaviour="block"
 useSourceRendition="true">

<outputRendition>margin-left: 10px; margin-right: 10px; </outputRendition>
</model>

<quote>

<quote> (quotation) contains a phrase or passage attributed by the narrator or author to some agency external to the text. [3.3.3. Quotation 4.3.1. Grouped Texts]
Modulecore
Attributes
Member of
Contained by
May contain
Note

If a bibliographic citation is supplied for the source of a quotation, the two may be grouped using the cit element.

Example
Lexicography has shown little sign of being affected by the
work of followers of J.R. Firth, probably best summarized in his
slogan, <quote>You shall know a word by the company it
keeps</quote>
<ref>(Firth, 1957)</ref>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
Schema Declaration
element quote
{
   att.global.attributes,
   att.typed.attributes,
   att.notated.attributes,
   att.cmc.attributes,
   macro.specialPara
}
Processing Model
<model predicate="ancestor::p"
 behaviour="inlineuseSourceRendition="true">

<desc>If it is inside a paragraph then it is inline, otherwise it is block
level</desc>
<outputRendition scope="before">content: '‘';</outputRendition>
<outputRendition scope="after">content: '’';</outputRendition>
</model>
<model behaviour="block"
 useSourceRendition="true">

<desc>If it is inside a paragraph then it is inline, otherwise it is block
level</desc>
<outputRendition>margin-left: 10px; margin-right: 10px; </outputRendition>
</model>

<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.global.attributes,
   att.internetMedia.attributes,
   att.pointing.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   macro.paraContent
}
Processing Model
<model behaviour="inline"
 predicate="not(@target)"/>

<model predicate="not(text())"
 behaviour="link">

<param name="contentvalue="@target"/>
<param name="urivalue="@target"/>
</model>
<model behaviour="link">
<param name="urivalue="@target"/>
</model>

<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
linking: ab
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,
   ( 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
}
Processing Model
<model behaviour="inline"/>

<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
header: biblFull
Note

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

Example
<bibl xml:id="Shirley1953">
 <author>Shirley, James</author>
 <title type="main">The gentlemen of Venice</title>
 <pubPlace>New York</pubPlace>
 <publisher>Readex Microprint</publisher>
 <date>1953</date>
 <extent>1 microprint card, 23 x 15 cm.</extent>
 <relatedItem type="otherForm">
  <bibl>
   <author>Shirley, James</author>
   <title type="main">The gentlemen of Venicd</title>
   <title type="sub">a tragi-comedie presented at the private house in
       Salisbury Court by Her Majesties servants</title>
   <pubPlace>London</pubPlace>
   <publisher>H. Moseley</publisher>
   <date>1655</date>
   <extent>78 p.</extent>
  </bibl>
 </relatedItem>
</bibl>
Example
<relatedItem type="otherForm"
 target="http://www.example.com/bibliography.xml#Shirley1655"/>
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="0maxOccurs="1">
  <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 )?
}
Processing Model
<model behaviour="inline"/>

<rendition>

<rendition> (rendition) supplies information about the rendition or appearance of one or more elements in the source text. [2.3.4. The Tagging Declaration]
Moduleheader
Attributes
scopewhere CSS is used, provides a way of defining ‘pseudo-elements’, that is, styling rules applicable to specific sub-portions of an element.
Status Optional
Datatype teidata.enumerated
Sample values include:
first-line
styling applies to the first line of the target element
first-letter
styling applies to the first letter of the target element
before
styling should be applied immediately before the content of the target element
after
styling should be applied immediately after the content of the target element
selectorcontains a selector or series of selectors specifying the elements to which the contained style description applies, expressed in the language specified in the scheme attribute.
Status Optional
Datatype teidata.text
<rendition scheme="css"
 selector="text, front, back, body, div, p, ab">

display: block;
</rendition>
<rendition scheme="css"
 selector="*[rend*=italic]">
font-style: italic;
</rendition>
Note

Since the default value of the scheme attribute is assumed to be CSS, the default expectation for this attribute, in the absence of scheme, is that CSS selector syntax will be used.

While rendition is used to point from an element in the transcribed source to a rendition element in the header which describes how it appears, the selector attribute allows the encoder to point in the other direction: from a rendition in the header to a collection of elements which all share the same renditional features. In both cases, the intention is to record the appearance of the source text, not to prescribe any particular output rendering.

Contained by
header: tagsDecl
May contain
Example
<tagsDecl>
 <rendition xml:id="r-centerscheme="css">text-align: center;</rendition>
 <rendition xml:id="r-smallscheme="css">font-size: small;</rendition>
 <rendition xml:id="r-largescheme="css">font-size: large;</rendition>
 <rendition xml:id="initcaps"
  scope="first-letterscheme="css">
font-size: xx-large</rendition>
</tagsDecl>
Content model
<content>
 <macroRef key="macro.limitedContent"/>
</content>
Schema Declaration
element rendition
{
   att.global.attributes,
   att.styleDef.attributes,
   attribute scope { teidata.enumerated }?,
   attribute selector { teidata.text }?,
   macro.limitedContent
}

<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
calendarindicates one or more systems or calendars to which the date represented by the content of this element belongs.
Deprecatedwill be removed on 2024-11-11
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
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>
Contained by
core: respStmt
May contain
figures: figure
header: idno
linking: anchor
tagdocs: code
transcr: fw subst
character data
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>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
Schema Declaration
element resp
{
   att.global.attributes,
   att.canonical.attributes,
   att.datable.attributes,
   attribute calendar { list { teidata.pointer+ } }?,
   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
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 minOccurs="1maxOccurs="1">
  <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+ )
}
Processing Model
<model behaviour="omit"/>

<rhyme>

<rhyme> marks the rhyming part of a metrical line. [6.5. Rhyme]
Moduleverse
Attributes
labelprovides a label (usually a single letter) to identify which part of a rhyme scheme this rhyming string instantiates.
Status Recommended
Datatype teidata.word
Note

Within a particular scope, all rhyme elements with the same value for their label attribute are assumed to rhyme with each other. The scope is defined by the nearest ancestor element for which the rhyme attribute has been supplied.

Member of
Contained by
May contain
Example
<lg rhyme="abababcc">
 <l>'Tis pity learned virgins ever <rhyme label="a">wed</rhyme>
 </l>
 <l>With persons of no sort of edu<rhyme label="b">cation</rhyme>,</l>
 <l>Or gentlemen, who, though well born and <rhyme label="a">bred</rhyme>,</l>
 <l>Grow tired of scientific conver<rhyme label="b">sation</rhyme>:</l>
 <l>I don't choose to say much on this <rhyme label="a">head</rhyme>,</l>
 <l>I'm a plain man, and in a single <rhyme label="b">station</rhyme>,</l>
 <l>But — Oh! ye lords of ladies inte<rhyme label="c">llectual</rhyme>,</l>
 <l>Inform us truly, have they not hen-<rhyme label="c">peck'd you all</rhyme>?</l>
</lg>
Example
<lg>
 <l>Tyger! Tyger! burning <rhyme label="a">bright</rhyme>
 </l>
 <l>In the forests of the <rhyme label="a">night</rhyme>,</l>
 <l>What immortal hand or <rhyme label="b">eye</rhyme>
 </l>
 <l>Could frame thy fearful <rhyme label="btype="eye-rhyme">symmetry</rhyme>?</l>
</lg>
Example
<lg>
 <l>"Hark! Lakshman! Hark, again that <rhyme label="a">cry</rhyme>!</l>
 <l>It is, — it is my husband's <rhyme label="b">voice</rhyme>!</l>
 <l>hasten, to his succour <rhyme label="a">fly</rhyme>,</l>
 <l>No more hast thou, dear friend, a <rhyme label="b">choice</rhyme>.</l>
 <l>He calls on thee, perhaps his <rhyme label="c">foes</rhyme>
 </l>
 <l>Environ him on all sides <rhyme label="d">round</rhyme>,</l>
 <l>That wail, — it means death's final <rhyme label="c">throes</rhyme>!</l>
 <l>Why standest thou, as magic-<rhyme label="d">bound</rhyme>?</l>
</lg>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element rhyme
{
   att.global.attributes,
   att.typed.attributes,
   attribute label { teidata.word }?,
   macro.paraContent
}
Processing Model
<model behaviour="inline"/>

<role>

<role> (role) contains the name of a dramatic role, as given in a cast list. [7.1.4. Cast Lists]
Moduledrama
Attributes
genderspecifies the gender of the role.
Status Optional
Datatype 1–∞ occurrences of teidata.gender separated by whitespace
Note

Values for this attribute may be locally defined by a project, or they may refer to an external standard.

Member of
Contained by
drama: castItem
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
Note

It is important to assign a meaningful ID attribute to the role element, since this ID is referred to by who attributes on many other elements.

Example
<role xml:id="jt">Joan Trash</role>
<roleDesc>A Ginger-bread-woman</roleDesc>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element role
{
   att.global.attributes,
   attribute gender { list { teidata.gender+ } }?,
   macro.phraseSeq
}
Processing Model
<model behaviour="block"/>

<roleDesc>

<roleDesc> (role description) describes a character's role in a drama. [7.1.4. Cast Lists]
Moduledrama
Attributes
Member of
Contained by
May contain
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
Example
<roleDesc>gentlemen of leisure</roleDesc>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element roleDesc { att.global.attributes, macro.phraseSeq }
Processing Model
<model behaviour="block"/>

<row>

<row> (row) contains one row of a table. [15.1.1. TEI Tables]
Modulefigures
Attributes
role(role) indicates the kind of information held in this cell or in each cell of this row.
Derived fromatt.tableDecoration
Status Optional
Datatype teidata.enumerated
Legal values are:
data
data cell [Default]
label
label cell
sum
row or column sum data
total
table total data
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.attribute.rows,
   att.tableDecoration.attribute.cols,
   attribute role { "data" | "label" | "sum" | "total" }?,
   cell+
}
Processing Model
<model predicate="@role='label'"
 behaviour="row">

<outputRendition>font-weight: bold;</outputRendition>
</model>
<model behaviour="row">
<desc>Insert table row. </desc>
</model>

<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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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
}
Processing Model
<model behaviour="inline"/>

<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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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
}
Processing Model
<model behaviour="inline"/>

<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
drama: castList
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
}
Processing Model
<model predicate="parent::closer"
 behaviour="inline"/>

<model behaviour="block"/>

<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
linking: ab
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, 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
}
Processing Model
<model behaviour="inline"
 useSourceRendition="true"/>

<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
May contain
header: idno
linking: ab
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,
   ( model.pLike+ | ( title+, ( editor | respStmt )*, ( idno | biblScope )* ) )
}

<set>

<set> (setting) contains a description of the setting, time, locale, appearance, etc., of the action of a play, typically found in the front matter of a printed performance text (not a stage direction). [7.1. Front and Back Matter ]
Moduledrama
Attributes
Member of
Contained by
textstructure: back front
May contain
drama: castList
figures: figure table
header: biblFull
linking: ab anchor
namesdates: listPerson listPlace
textstructure: floatingText
transcr: fw
Note

Contains paragraphs or phrase level tags.

This element should not be used outside the front or back matter; for similar contextual descriptions within the body of the text, use the stage element.

Example
<set>
 <p>The action takes place on February 7th between the hours of noon and six in the
   afternoon, close to the Trenartha Tin Plate Works, on the borders of England and Wales,
   where a strike has been in progress throughout the winter.</p>
</set>
Example
<set>
 <head>SCENE</head>
 <p>A Sub-Post Office on a late autumn evening</p>
</set>
Example
<front>
<!-- <titlePage>, <div type="Dedication">, etc. -->
 <set>
  <list type="gloss">
   <label>TIME</label>
   <item>1907</item>
   <label>PLACE</label>
   <item>East Coast village in England</item>
  </list>
 </set>
</front>
Content model
<content>
 <sequence minOccurs="1maxOccurs="1">
  <alternate minOccurs="0"
   maxOccurs="unbounded">

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

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

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

<settingDesc>

<settingDesc> (setting description) describes the setting or settings within which a language interaction takes place, or other places otherwise referred to in a text, edition, or metadata. [16.2. Contextual Information 2.4. The Profile Description]
Modulecorpus
Attributes
Member of
Contained by
header: profileDesc
May contain
core: p
linking: ab
namesdates: listPlace place
Note

May contain a prose description organized as paragraphs, or a series of <setting> elements. If used to record not settings of language interactions, but other places mentioned in the text, then place optionally grouped by listPlace inside <standOff> should be preferred.

Example
<settingDesc>
 <p>Texts recorded in the
   Canadian Parliament building in Ottawa, between April and November 1988 </p>
</settingDesc>
Content model
<content>
 <alternate>
  <classRef key="model.pLikeminOccurs="1"
   maxOccurs="unbounded"/>

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

   <elementRef key="setting"/>
   <classRef key="model.placeLike"/>
   <elementRef key="listPlace"/>
  </alternate>
 </alternate>
</content>
Schema Declaration
element settingDesc
{
   att.global.attributes,
   ( model.pLike+ | ( setting | model.placeLike | listPlace )+ )
}

<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 }
Processing Model
<model predicate="parent::choice and count(parent::*/*) gt 1"
 behaviour="inline"/>

<model behaviour="inline">
<outputRendition scope="before">content: '{';</outputRendition>
<outputRendition scope="after">content: '}';</outputRendition>
</model>

<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
core: lg list
drama: castList
figures: figure table
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
}
Processing Model
<model behaviour="block"
 predicate="parent::closer">

<outputRendition> text-align: right; </outputRendition>
</model>
<model behaviour="inline">
<outputRendition> font-style: italic; </outputRendition>
</model>

<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
May contain
figures: table
header: biblFull
linking: ab
namesdates: listPerson listPlace
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,
   (
      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
May contain
figures: figure table
linking: ab anchor
namesdates: listPerson listPlace
textstructure: floatingText
transcr: fw
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 minOccurs="1maxOccurs="1">
  <classRef key="model.global"
   minOccurs="0maxOccurs="unbounded"/>

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

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

   <alternate minOccurs="1maxOccurs="1">
    <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 minOccurs="1maxOccurs="1">
    <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 )
         )+
      )
   )
}
Processing Model
<model behaviour="block"/>

<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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
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
<div type="Actn="I">
 <head>ACT I</head>
 <div type="Scenen="1">
  <head>SCENE I</head>
  <stage rendition="#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>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element speaker { att.global.attributes, macro.phraseSeq }
Processing Model
<model behaviour="block">
<outputRendition> font-style:italic; </outputRendition>
</model>

<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
}
Processing Model
<model behaviour="block">
<outputRendition>font-style: italic;</outputRendition>
</model>

<subst>

<subst> (substitution) groups one or more deletions (or surplus text) with one or more additions when the combination is to be regarded as a single intervention in the text. [12.3.1.5. Substitutions]
Moduletranscr
Attributes
Member of
Contained by
May contain
linking: anchor
transcr: fw
Example
... are all included. <del hand="#RG">It is</del>
<subst>
 <add>T</add>
 <del>t</del>
</subst>he expressed
Example
that he and his Sister Miſs D — <lb/>who always lived with him, wd. be <subst>
 <del>very</del>
 <lb/>
 <add>principally</add>
</subst> remembered in her Will.
Example
<ab>τ<subst>
  <add place="above">ῶν</add>
  <del>α</del>
 </subst>
συνκυρόντ<subst>
  <add place="above">ων</add>
  <del>α</del>
 </subst>
ἐργαστηρί<subst>
  <add place="above">ων</add>
  <del>α</del>
 </subst>
</ab>
Example
<subst>
 <del>
  <gap reason="illegiblequantity="5"
   unit="character"/>

 </del>
 <add>apple</add>
</subst>
Schematron

<sch:rule context="tei:subst">
<sch:assert test="child::tei:add and (child::tei:del or child::tei:surplus)">
 <sch:name/> must have at least one child add and at least one child del or surplus</sch:assert>
</sch:rule>
Content model
<content>
 <alternate minOccurs="1"
  maxOccurs="unbounded">

  <elementRef key="add"/>
  <elementRef key="surplus"/>
  <elementRef key="del"/>
  <classRef key="model.milestoneLike"/>
 </alternate>
</content>
Schema Declaration
element subst
{
   att.global.attributes,
   att.transcriptional.attributes,
   att.dimensions.attributes,
   ( add | surplus | del | model.milestoneLike )+
}
Processing Model
<model behaviour="inline"/>

<supplied>

<supplied> (supplied) signifies text supplied by the transcriber or editor for any reason; for example because the original cannot be read due to physical damage, or because of an obvious omission by the author or scribe. [12.3.3.1. Damage, Illegibility, and Supplied Text]
Moduletranscr
Attributes
reasonone or more words indicating why the text has had to be supplied, e.g. overbinding, faded-ink, lost-folio, omitted-in-original.
Status Optional
Datatype 1–∞ occurrences of teidata.word separated by whitespace
Member of
Contained by
May contain
Note

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.

Example
I am dr Sr yr
<supplied reason="illegible"
 source="#amanuensis_copy">
very humble Servt</supplied>
Sydney Smith
Example
<supplied reason="omitted-in-original">Dedication</supplied> to the duke of Bejar
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
Schema Declaration
element supplied
{
   att.global.attributes,
   att.editLike.attributes,
   att.dimensions.attributes,
   attribute reason { list { teidata.word+ } }?,
   macro.paraContent
}
Processing Model
<model predicate="parent::choice"
 behaviour="inline"/>

<model predicate="@reason='damage'"
 behaviour="inline">

<outputRendition scope="before">content:"<";</outputRendition>
<outputRendition scope="after">content:">";</outputRendition>
</model>
<model predicate="@reason='illegible' or not(@reason)"
 behaviour="inline">

<outputRendition scope="before">content:"[";</outputRendition>
<outputRendition scope="after">content:"]";</outputRendition>
</model>
<model predicate="@reason='omitted'"
 behaviour="inline">

<outputRendition scope="before">content:"(";</outputRendition>
<outputRendition scope="after">content:")";</outputRendition>
</model>
<model behaviour="inline">
<outputRendition scope="before">content:"{";</outputRendition>
<outputRendition scope="after">content:"}";</outputRendition>
</model>

<surface>

<surface> defines a written surface as a two-dimensional coordinate space, optionally grouping one or more graphic representations of that space, zones of interest within that space, and, when using an embedded transcription approach, transcriptions of the writing within them. [12.1. Digital Facsimiles 12.2.2. Embedded Transcription]
Moduletranscr
Attributes
attachmentdescribes the method by which this surface is or was connected to the main surface
Status Optional
Datatype teidata.enumerated
Sample values include:
glued
glued in place
pinned
pinned or stapled in place
sewn
sewn in place
flippingindicates whether the surface is attached and folded in such a way as to provide two writing surfaces
Status Optional
Datatype teidata.truthValue
Contained by
May contain
Note

The surface element represents any two-dimensional space on some physical surface forming part of the source material, such as a piece of paper, a face of a monument, a billboard, a scroll, a leaf etc.

The coordinate space defined by this element may be thought of as a grid lrx - ulx units wide and uly - lry units high.

The surface element may contain graphic representations or transcriptions of written zones, or both. The coordinate values used by every zone element contained by this element are to be understood with reference to the same grid.

Where it is useful or meaningful to do so, any grouping of multiple surface elements may be indicated using the <surfaceGrp> element.

Example
<facsimile>
 <surface ulx="0uly="0lrx="200lry="300">
  <graphic url="Bovelles-49r.png"/>
 </surface>
</facsimile>
Content model
<content>
 <sequence>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

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

   <alternate>
    <elementRef key="zone"/>
    <elementRef key="line"/>
    <elementRef key="path"/>
    <elementRef key="surface"/>
    <elementRef key="surfaceGrp"/>
   </alternate>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
 </sequence>
</content>
Schema Declaration
element surface
{
   att.global.attributes,
   att.coordinated.attributes,
   att.typed.attributes,
   attribute attachment { teidata.enumerated }?,
   attribute flipping { teidata.truthValue }?,
   (
      ( model.global | model.labelLike | model.graphicLike )*,
      ( ( ( zone | line | path | surface | surfaceGrp ), model.global* )* )
   )
}

<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 minOccurs="1maxOccurs="1">
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.headLike"/>
   <classRef key="model.global"/>
  </alternate>
  <alternate minOccurs="1maxOccurs="1">
   <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* )* )
   )
}
Processing Model
<model behaviour="table">
<outputRendition> font-size: smaller; background-color: #F0F0F0; </outputRendition>
</model>

<tagsDecl>

<tagsDecl> (tagging declaration) provides detailed information about the tagging applied to a document. [2.3.4. The Tagging Declaration 2.3. The Encoding Description]
Moduleheader
Attributes
partialindicates whether the element types listed exhaustively include all those found within text, or represent only a subset.
Status Recommended
Datatype teidata.truthValue
Note

TEI recommended practice is to specify this attribute. When the tagUsage elements inside tagsDecl are used to list each of the element types in the associated text, the value should be given as false. When the tagUsage elements inside tagsDecl are used to provide usage information or default renditions for only a subset of the elements types within the associated text, the value should be true.

Member of
Contained by
header: encodingDesc
May contain
Example
<tagsDecl partial="true">
 <rendition xml:id="rend-itscheme="css"
  selector="emph, hi, name, title">
font-style: italic;</rendition>
 <namespace name="http://www.tei-c.org/ns/1.0">
  <tagUsage gi="hioccurs="467"/>
  <tagUsage gi="titleoccurs="45"/>
 </namespace>
 <namespace name="http://docbook.org/ns/docbook">
  <tagUsage gi="paraoccurs="10"/>
 </namespace>
</tagsDecl>

If the partial attribute were not specified here, the implication would be that the document in question contains only hi, title, and <para> elements.

Content model
<content>
 <sequence>
  <elementRef key="renditionminOccurs="0"
   maxOccurs="unbounded"/>

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

 </sequence>
</content>
Schema Declaration
element tagsDecl
{
   att.global.attributes,
   attribute partial { teidata.truthValue }?,
   ( rendition*, namespace* )
}

<tagUsage>

<tagUsage> (element usage) documents the usage of a specific element within a specified document. [2.3.4. The Tagging Declaration]
Moduleheader
Attributes
gi(generic identifier) specifies the name (generic identifier) of the element indicated by the tag, within the namespace indicated by the parent namespace element.
Status Required
Datatype teidata.name
occursspecifies the number of occurrences of this element within the text.
Status Recommended
Datatype teidata.count
withId(with unique identifier) specifies the number of occurrences of this element within the text which bear a distinct value for the global xml:id attribute.
Status Recommended
Datatype teidata.count
Contained by
header: namespace
May contain
Example
<tagsDecl partial="true">
 <rendition xml:id="itscheme="css"
  selector="foreign, hi">
font-style: italic; </rendition>
<!-- ... -->
 <namespace name="http://www.tei-c.org/ns/1.0">
  <tagUsage gi="hioccurs="28withId="2"> Used to mark English words italicized in the copy text.</tagUsage>
  <tagUsage gi="foreign">Used to mark non-English words in the copy text.</tagUsage>
<!-- ... -->
 </namespace>
</tagsDecl>
Content model
<content>
 <macroRef key="macro.limitedContent"/>
</content>
Schema Declaration
element tagUsage
{
   att.global.attributes,
   attribute gi { teidata.name },
   attribute occurs { teidata.count }?,
   attribute withId { teidata.count }?,
   macro.limitedContent
}

<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
<classDecl>
 <taxonomy xml:id="OTASH">
  <bibl>University of Oxford Text Archive Subject Headings</bibl>
 </taxonomy>
</classDecl>
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 minOccurs="1maxOccurs="1">
  <alternate minOccurs="1maxOccurs="1">
   <alternate minOccurs="1"
    maxOccurs="unbounded">

    <elementRef key="category"/>
    <elementRef key="taxonomy"/>
   </alternate>
   <sequence minOccurs="1maxOccurs="1">
    <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 minOccurs="1maxOccurs="1">
   <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,
   (
      (
         ( 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
transcr: facsimile
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+ ) )
}
Processing Model
<model behaviour="document"/>

<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
transcr: facsimile
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>THE TEMPEST.</title>
   <author>Shakespeare, William, 1564-1616</author>
  </titleStmt>
  <publicationStmt>
   <distributor>
    <name>University of Oxford Text Archive</name>
    <address>
     <addrLine>Oxford University Computing Services</addrLine>
     <addrLine>13 Banbury Road</addrLine>
     <addrLine>Oxford</addrLine>
     <addrLine>OX2 6NN</addrLine>
    </address>
    <email>ota@oucs.ox.ac.uk</email>
   </distributor>
   <idno type="ota">http://ota.ox.ac.uk/id/5725</idno>
   <idno type="isbn10">1106027248</idno>
   <idno type="isbn13">9781106027245</idno>
   <availability status="free">
    <licence target="http://creativecommons.org/licenses/by-sa/3.0/"> Distributed by the University of Oxford under a Creative Commons
         Attribution-ShareAlike 3.0 Unported License </licence>
   </availability>
  </publicationStmt>
  <sourceDesc>
   <bibl>Revised version of <relatedItem type="older"
     target="http://ota.ox.ac.uk/id/0119"/>

   </bibl>
   <bibl>The texts were originally prepared by Trevor Howard-Hill for use in
       his single volume concordances to Shakespeare (OUP, 1969f). They have
       since been reformatted to modern standards and carefully proofread by
       staff of Oxford University Press' Shakespeare Department for use in the
       new "Old Spelling" Oxford Shakespeare, under the general editorship of Dr
       Stanley Wells: <title>The complete works / William Shakespeare</title>;
       general editors, Stanley Wells and Gary Taylor ; editors Stanley Wells ...
       [et al.] ; with introductions by Stanley Wells. -- Oxford : Clarendon
       Press, 1986. -- (Oxford Shakespeare). -- ISBN 0-19-812926-2</bibl>
   <biblFull>
    <titleStmt>
     <title>THE TEMPEST.</title>
     <author>Shakespeare, William, 1564-1616</author>
     <editor role="editor">Lee, Sidney, Sir, 1859-1926</editor>
    </titleStmt>
    <extent>xxxv, 908 p. : facsims. ; 39 cm.</extent>
    <publicationStmt>
     <publisher>Clarendon Press</publisher>
     <pubPlace>Oxford</pubPlace>
     <date>1902</date>
    </publicationStmt>
   </biblFull>
  </sourceDesc>
 </fileDesc>
 <encodingDesc>
  <classDecl>
   <taxonomy xml:id="OTASH">
    <bibl>University of Oxford Text Archive Subject Headings</bibl>
   </taxonomy>
   <taxonomy xml:id="LCSH">
    <bibl>Library of Congress Subject Headings</bibl>
   </taxonomy>
  </classDecl>
 </encodingDesc>
 <profileDesc>
  <creation>
   <date notAfter="1623"/>
  </creation>
  <langUsage>
   <language ident="eng">English</language>
  </langUsage>
  <textClass>
   <keywords scheme="#LCSH">
    <term type="genre">Plays -- England -- 16th century</term>
    <term type="genre">Plays -- England -- 17th century</term>
    <term type="genre">Comedies -- England -- 16th century</term>
    <term type="genre">Comedies -- England -- 17th century</term>
    <term type="genre">Tragedies -- England -- 16th century</term>
    <term type="genre">Tragedies -- England -- 17th century</term>
   </keywords>
  </textClass>
 </profileDesc>
 <revisionDesc>
  <change when="2010-08-31">Header normalised</change>
 </revisionDesc>
</teiHeader>
Content model
<content>
 <sequence minOccurs="1maxOccurs="1">
  <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? )
}
Processing Model
<model behaviour="metadata"/>

<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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
textstructure: floatingText
transcr: fw subst supplied
verse: rhyme
character data
Note

This element should only be used in the TEI Header

Example
<keywords>
 <term>huntin</term>
 <term>shootin</term>
 <term>fishin</term>
</keywords>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
Schema Declaration
element term
{
   att.global.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
figures: figure
linking: anchor
textstructure: back body front group
transcr: fw
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>
Schematron

<sch:rule context="tei:term | tei:biblFull">
<sch:report test="ancestor::tei:text">Error: The element <sch:name/> is not permitted outside the header</sch:report>
</sch:rule>
Content model
<content>
 <sequence minOccurs="1maxOccurs="1">
  <classRef key="model.global"
   minOccurs="0maxOccurs="unbounded"/>

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

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

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

  </sequence>
 </sequence>
</content>
Schema Declaration
element text
{
   att.global.attributes,
   att.typed.attributes,
   att.written.attributes,
   (
      model.global*,
      ( ( front, model.global* )? ),
      ( body | group ),
      model.global*,
      ( ( back, model.global* )? )
   )
}
Processing Model
<model behaviour="body">
<outputRendition> max-width: 80%; margin: auto; font-family: Verdana, Tahoma,
Geneva, Arial, Helvetica, sans-serif; </outputRendition>
</model>

<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, ( 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
analysis: c pc s w
figures: figure formula
gaiji: g
header: idno
linking: anchor seg
tagdocs: code
transcr: fw subst supplied
verse: rhyme
character data
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.calendarSystem.attributes,
   att.canonical.attributes,
   att.editLike.attributes,
   att.dimensions.attributes,
   att.typed.attributes,
   att.cmc.attributes,
   ( text | model.gLike | model.phrase | model.global )*
}
Processing Model
<model behaviour="inline"/>

<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.

calendarindicates one or more systems or calendars to which the date represented by the content of this element belongs.
Deprecatedwill be removed on 2024-11-11
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
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>
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 calendar { list { teidata.pointer+ } }?,
   attribute level { "a" | "m" | "j" | "s" | "u" }?,
   macro.paraContent
}
Processing Model
<modelSequence predicate="parent::titleStmt/parent::fileDesc">
<model predicate="preceding-sibling::title"
 behaviour="text">

 <param name="contentvalue="' — '"/>
</model>
<model behaviour="inline">
 <outputRendition>color: red; font-size: 2em;</outputRendition>
</model>
</modelSequence>
<model predicate="not(@level) and parent::bibl"
 behaviour="inline"/>

<modelSequence predicate="@level='m' or not(@level)">
<model behaviour="inline">
 <outputRendition>font-style: italic;</outputRendition>
</model>
<model predicate="ancestor::biblFull"
 behaviour="text">

 <param name="contentvalue="', '"/>
</model>
</modelSequence>
<modelSequence predicate="@level='s' or @level='j'">
<model behaviour="inline">
 <outputRendition>font-style: italic;</outputRendition>
</model>
<model predicate="following-sibling::* and ( ancestor::biblFull)"
 behaviour="text">

 <param name="contentvalue="', '"/>
</model>
</modelSequence>
<modelSequence predicate="@level='u' or @level='a'">
<model behaviour="inline">
 <outputRendition>font-style: italic;</outputRendition>
</model>
<model predicate="following-sibling::* and ( ancestor::biblFull)"
 behaviour="text">

 <param name="contentvalue="'. '"/>
</model>
</modelSequence>
<model behaviour="inline">
<outputRendition>font-style: italic;</outputRendition>
</model>

<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 minOccurs="1maxOccurs="1">
  <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 )*
   )
}
Processing Model
<model behaviour="block"
 useSourceRendition="true">

<outputRendition> text-align: center;</outputRendition>
</model>

<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
}
Processing Model
<model behaviour="block"
 useSourceRendition="true"/>

<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
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
drama: castGroup
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
   )*
}
Processing Model
<model behaviour="block">
<outputRendition>color: green;</outputRendition>
</model>

<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
}
Processing Model
<model behaviour="inline">
<outputRendition scope="after">content: ' [?] ';</outputRendition>
</model>

<unicodeProp>

<unicodeProp> (unicode property) provides a Unicode property for a character (or glyph). [5.2.1. Character Properties]
Modulegaiji
Attributes
namespecifies the normalized name of a Unicode property.
Status Required
Datatype teidata.xmlName
Legal values are:
Age
AHex
Alpha
Alphabetic
ASCII_Hex_Digit
bc
Bidi_C
Bidi_Class
Bidi_Control
Bidi_M
Bidi_Mirrored
Bidi_Mirroring_Glyph
Bidi_Paired_Bracket
Bidi_Paired_Bracket_Type
blk
Block
bmg
bpb
bpt
Canonical_Combining_Class
Case_Folding
Case_Ignorable
Cased
ccc
CE
cf
Changes_When_Casefolded
Changes_When_Casemapped
Changes_When_Lowercased
Changes_When_NFKC_Casefolded
Changes_When_Titlecased
Changes_When_Uppercased
CI
Comp_Ex
Composition_Exclusion
CWCF
CWCM
CWKCF
CWL
CWT
CWU
Dash
Decomposition_Mapping
Decomposition_Type
Default_Ignorable_Code_Point
Dep
Deprecated
DI
Dia
Diacritic
dm
dt
ea
East_Asian_Width
EqUIdeo
Equivalent_Unified_Ideograph
Expands_On_NFC
Expands_On_NFD
Expands_On_NFKC
Expands_On_NFKD
Ext
Extender
FC_NFKC
FC_NFKC_Closure
Full_Composition_Exclusion
gc
GCB
General_Category
Gr_Base
Gr_Ext
Gr_Link
Grapheme_Base
Grapheme_Cluster_Break
Grapheme_Extend
Grapheme_Link
Hangul_Syllable_Type
Hex
Hex_Digit
hst
Hyphen
ID_Continue
ID_Start
IDC
Ideo
Ideographic
IDS
IDS_Binary_Operator
IDS_Trinary_Operator
IDSB
IDST
Indic_Positional_Category
Indic_Syllabic_Category
InPC
InSC
isc
ISO_Comment
Jamo_Short_Name
jg
Join_C
Join_Control
Joining_Group
Joining_Type
JSN
jt
kAccountingNumeric
kCompatibilityVariant
kIICore
kIRG_GSource
kIRG_HSource
kIRG_JSource
kIRG_KPSource
kIRG_KSource
kIRG_MSource
kIRG_TSource
kIRG_USource
kIRG_VSource
kOtherNumeric
kPrimaryNumeric
kRSUnicode
lb
lc
Line_Break
LOE
Logical_Order_Exception
Lower
Lowercase
Lowercase_Mapping
Math
na
na1
Name
Name_Alias
NChar
NFC_QC
NFC_Quick_Check
NFD_QC
NFD_Quick_Check
NFKC_Casefold
NFKC_CF
NFKC_QC
NFKC_Quick_Check
NFKD_QC
NFKD_Quick_Check
Noncharacter_Code_Point
nt
Numeric_Type
Numeric_Value
nv
OAlpha
ODI
OGr_Ext
OIDC
OIDS
OLower
OMath
Other_Alphabetic
Other_Default_Ignorable_Code_Point
Other_Grapheme_Extend
Other_ID_Continue
Other_ID_Start
Other_Lowercase
Other_Math
Other_Uppercase
OUpper
Pat_Syn
Pat_WS
Pattern_Syntax
Pattern_White_Space
PCM
Prepended_Concatenation_Mark
QMark
Quotation_Mark
Radical
Regional_Indicator
RI
SB
sc
scf
Script
Script_Extensions
scx
SD
Sentence_Break
Sentence_Terminal
Simple_Case_Folding
Simple_Lowercase_Mapping
Simple_Titlecase_Mapping
Simple_Uppercase_Mapping
slc
Soft_Dotted
stc
STerm
suc
tc
Term
Terminal_Punctuation
Titlecase_Mapping
uc
UIdeo
Unicode_1_Name
Unified_Ideograph
Upper
Uppercase
Uppercase_Mapping
Variation_Selector
Vertical_Orientation
vo
VS
WB
White_Space
Word_Break
WSpace
XID_Continue
XID_Start
XIDC
XIDS
XO_NFC
XO_NFD
XO_NFKC
XO_NFKD
valuespecifies the value of a named Unicode property.
Status Required
Datatype teidata.text
Contained by
gaiji: char glyph
May containEmpty element
Note

A definitive list of current Unicode property names is provided in The Unicode Standard.

Example
<char xml:id="U4EBA_circled">
 <unicodeProp name="Decomposition_Mapping"
  value="circleversion="12.1"/>

 <localProp name="Name"
  value="CIRCLED IDEOGRAPH 4EBA"/>

 <localProp name="daikanwavalue="36"/>
 <mapping type="standard"></mapping>
</char>
Content model
<content>
 <empty/>
</content>
Schema Declaration
element unicodeProp
{
   att.global.attributes,
   att.gaijiProp.attribute.version,
   att.gaijiProp.attribute.scheme,
   att.datable.attribute.period,
   att.datable.w3c.attribute.when,
   att.datable.w3c.attribute.notBefore,
   att.datable.w3c.attribute.notAfter,
   att.datable.w3c.attribute.from,
   att.datable.w3c.attribute.to,
   attribute name
   {
      "Age"
    | "AHex"
    | "Alpha"
    | "Alphabetic"
    | "ASCII_Hex_Digit"
    | "bc"
    | "Bidi_C"
    | "Bidi_Class"
    | "Bidi_Control"
    | "Bidi_M"
    | "Bidi_Mirrored"
    | "Bidi_Mirroring_Glyph"
    | "Bidi_Paired_Bracket"
    | "Bidi_Paired_Bracket_Type"
    | "blk"
    | "Block"
    | "bmg"
    | "bpb"
    | "bpt"
    | "Canonical_Combining_Class"
    | "Case_Folding"
    | "Case_Ignorable"
    | "Cased"
    | "ccc"
    | "CE"
    | "cf"
    | "Changes_When_Casefolded"
    | "Changes_When_Casemapped"
    | "Changes_When_Lowercased"
    | "Changes_When_NFKC_Casefolded"
    | "Changes_When_Titlecased"
    | "Changes_When_Uppercased"
    | "CI"
    | "Comp_Ex"
    | "Composition_Exclusion"
    | "CWCF"
    | "CWCM"
    | "CWKCF"
    | "CWL"
    | "CWT"
    | "CWU"
    | "Dash"
    | "Decomposition_Mapping"
    | "Decomposition_Type"
    | "Default_Ignorable_Code_Point"
    | "Dep"
    | "Deprecated"
    | "DI"
    | "Dia"
    | "Diacritic"
    | "dm"
    | "dt"
    | "ea"
    | "East_Asian_Width"
    | "EqUIdeo"
    | "Equivalent_Unified_Ideograph"
    | "Expands_On_NFC"
    | "Expands_On_NFD"
    | "Expands_On_NFKC"
    | "Expands_On_NFKD"
    | "Ext"
    | "Extender"
    | "FC_NFKC"
    | "FC_NFKC_Closure"
    | "Full_Composition_Exclusion"
    | "gc"
    | "GCB"
    | "General_Category"
    | "Gr_Base"
    | "Gr_Ext"
    | "Gr_Link"
    | "Grapheme_Base"
    | "Grapheme_Cluster_Break"
    | "Grapheme_Extend"
    | "Grapheme_Link"
    | "Hangul_Syllable_Type"
    | "Hex"
    | "Hex_Digit"
    | "hst"
    | "Hyphen"
    | "ID_Continue"
    | "ID_Start"
    | "IDC"
    | "Ideo"
    | "Ideographic"
    | "IDS"
    | "IDS_Binary_Operator"
    | "IDS_Trinary_Operator"
    | "IDSB"
    | "IDST"
    | "Indic_Positional_Category"
    | "Indic_Syllabic_Category"
    | "InPC"
    | "InSC"
    | "isc"
    | "ISO_Comment"
    | "Jamo_Short_Name"
    | "jg"
    | "Join_C"
    | "Join_Control"
    | "Joining_Group"
    | "Joining_Type"
    | "JSN"
    | "jt"
    | "kAccountingNumeric"
    | "kCompatibilityVariant"
    | "kIICore"
    | "kIRG_GSource"
    | "kIRG_HSource"
    | "kIRG_JSource"
    | "kIRG_KPSource"
    | "kIRG_KSource"
    | "kIRG_MSource"
    | "kIRG_TSource"
    | "kIRG_USource"
    | "kIRG_VSource"
    | "kOtherNumeric"
    | "kPrimaryNumeric"
    | "kRSUnicode"
    | "lb"
    | "lc"
    | "Line_Break"
    | "LOE"
    | "Logical_Order_Exception"
    | "Lower"
    | "Lowercase"
    | "Lowercase_Mapping"
    | "Math"
    | "na"
    | "na1"
    | "Name"
    | "Name_Alias"
    | "NChar"
    | "NFC_QC"
    | "NFC_Quick_Check"
    | "NFD_QC"
    | "NFD_Quick_Check"
    | "NFKC_Casefold"
    | "NFKC_CF"
    | "NFKC_QC"
    | "NFKC_Quick_Check"
    | "NFKD_QC"
    | "NFKD_Quick_Check"
    | "Noncharacter_Code_Point"
    | "nt"
    | "Numeric_Type"
    | "Numeric_Value"
    | "nv"
    | "OAlpha"
    | "ODI"
    | "OGr_Ext"
    | "OIDC"
    | "OIDS"
    | "OLower"
    | "OMath"
    | "Other_Alphabetic"
    | "Other_Default_Ignorable_Code_Point"
    | "Other_Grapheme_Extend"
    | "Other_ID_Continue"
    | "Other_ID_Start"
    | "Other_Lowercase"
    | "Other_Math"
    | "Other_Uppercase"
    | "OUpper"
    | "Pat_Syn"
    | "Pat_WS"
    | "Pattern_Syntax"
    | "Pattern_White_Space"
    | "PCM"
    | "Prepended_Concatenation_Mark"
    | "QMark"
    | "Quotation_Mark"
    | "Radical"
    | "Regional_Indicator"
    | "RI"
    | "SB"
    | "sc"
    | "scf"
    | "Script"
    | "Script_Extensions"
    | "scx"
    | "SD"
    | "Sentence_Break"
    | "Sentence_Terminal"
    | "Simple_Case_Folding"
    | "Simple_Lowercase_Mapping"
    | "Simple_Titlecase_Mapping"
    | "Simple_Uppercase_Mapping"
    | "slc"
    | "Soft_Dotted"
    | "stc"
    | "STerm"
    | "suc"
    | "tc"
    | "Term"
    | "Terminal_Punctuation"
    | "Titlecase_Mapping"
    | "uc"
    | "UIdeo"
    | "Unicode_1_Name"
    | "Unified_Ideograph"
    | "Upper"
    | "Uppercase"
    | "Uppercase_Mapping"
    | "Variation_Selector"
    | "Vertical_Orientation"
    | "vo"
    | "VS"
    | "WB"
    | "White_Space"
    | "Word_Break"
    | "WSpace"
    | "XID_Continue"
    | "XID_Start"
    | "XIDC"
    | "XIDS"
    | "XO_NFC"
    | "XO_NFD"
    | "XO_NFKC"
    | "XO_NFKD"
   },
   attribute value { teidata.text },
   empty
}

<unihanProp>

<unihanProp> (unihan property) holds the name and value of a normative or informative Unihan character (or glyph) property as part of its attributes. [5.2.1. Character Properties]
Modulegaiji
Attributes
namespecifies the normalized name of a unicode han database (Unihan) property
Status Required
Datatype teidata.xmlName
Legal values are:
kZVariant
kAccountingNumeric
kBigFive
kCCCII
kCNS1986
kCNS1992
kCangjie
kCantonese
kCheungBauer
kCheungBauerIndex
kCihaiT
kCompatibilityVariant
kCowles
kDaeJaweon
kDefinition
kEACC
kFenn
kFennIndex
kFourCornerCode
kFrequency
kGB0
kGB1
kGB3
kGB5
kGB7
kGB8
kGSR
kGradeLevel
kHDZRadBreak
kHKGlyph
kHKSCS
kHanYu
kHangul
kHanyuPinlu
kHanyuPinyin
kIBMJapan
kIICore
kIRGDaeJaweon
kIRGDaiKanwaZiten
kIRGHanyuDaZidian
kIRGKangXi
kIRG_GSource
kIRG_HSource
kIRG_JSource
kIRG_KPSource
kIRG_KSource
kIRG_MSource
kIRG_TSource
kIRG_USource
kIRG_VSource
kJIS0213
kJa
kJapaneseKun
kJapaneseOn
kJinmeiyoKanji
kJis0
kJis1
kJoyoKanji
kKPS0
kKPS1
kKSC0
kKSC1
kKangXi
kKarlgren
kKorean
kKoreanEducationHanja
kKoreanName
kLau
kMainlandTelegraph
kMandarin
kMatthews
kMeyerWempe
kMorohashi
kNelson
kOtherNumeric
kPhonetic
kPrimaryNumeric
kPseudoGB1
kRSAdobe_Japan1_6
kRSJapanese
kRSKanWa
kRSKangXi
kRSKorean
kRSUnicode
kSBGY
kSemanticVariant
kSimplifiedVariant
kSpecializedSemanticVariant
kTGH
kTaiwanTelegraph
kTang
kTotalStrokes
kTraditionalVariant
kVietnamese
kXHC1983
kXerox
valuespecifies the value of a named Unihan property
Status Required
Datatype teidata.word
Contained by
gaiji: char glyph
May containEmpty element
Note

A definitive list of current Unihan property names is provided in the Unicode Han Database.

Example
<unihanProp name="kRSKangXivalue="120.5"
 version="12.1"/>
Content model
<content>
 <empty/>
</content>
Schema Declaration
element unihanProp
{
   att.global.attributes,
   att.gaijiProp.attribute.version,
   att.gaijiProp.attribute.scheme,
   att.datable.attribute.period,
   att.datable.w3c.attribute.when,
   att.datable.w3c.attribute.notBefore,
   att.datable.w3c.attribute.notAfter,
   att.datable.w3c.attribute.from,
   att.datable.w3c.attribute.to,
   attribute name
   {
      "kZVariant"
    | "kAccountingNumeric"
    | "kBigFive"
    | "kCCCII"
    | "kCNS1986"
    | "kCNS1992"
    | "kCangjie"
    | "kCantonese"
    | "kCheungBauer"
    | "kCheungBauerIndex"
    | "kCihaiT"
    | "kCompatibilityVariant"
    | "kCowles"
    | "kDaeJaweon"
    | "kDefinition"
    | "kEACC"
    | "kFenn"
    | "kFennIndex"
    | "kFourCornerCode"
    | "kFrequency"
    | "kGB0"
    | "kGB1"
    | "kGB3"
    | "kGB5"
    | "kGB7"
    | "kGB8"
    | "kGSR"
    | "kGradeLevel"
    | "kHDZRadBreak"
    | "kHKGlyph"
    | "kHKSCS"
    | "kHanYu"
    | "kHangul"
    | "kHanyuPinlu"
    | "kHanyuPinyin"
    | "kIBMJapan"
    | "kIICore"
    | "kIRGDaeJaweon"
    | "kIRGDaiKanwaZiten"
    | "kIRGHanyuDaZidian"
    | "kIRGKangXi"
    | "kIRG_GSource"
    | "kIRG_HSource"
    | "kIRG_JSource"
    | "kIRG_KPSource"
    | "kIRG_KSource"
    | "kIRG_MSource"
    | "kIRG_TSource"
    | "kIRG_USource"
    | "kIRG_VSource"
    | "kJIS0213"
    | "kJa"
    | "kJapaneseKun"
    | "kJapaneseOn"
    | "kJinmeiyoKanji"
    | "kJis0"
    | "kJis1"
    | "kJoyoKanji"
    | "kKPS0"
    | "kKPS1"
    | "kKSC0"
    | "kKSC1"
    | "kKangXi"
    | "kKarlgren"
    | "kKorean"
    | "kKoreanEducationHanja"
    | "kKoreanName"
    | "kLau"
    | "kMainlandTelegraph"
    | "kMandarin"
    | "kMatthews"
    | "kMeyerWempe"
    | "kMorohashi"
    | "kNelson"
    | "kOtherNumeric"
    | "kPhonetic"
    | "kPrimaryNumeric"
    | "kPseudoGB1"
    | "kRSAdobe_Japan1_6"
    | "kRSJapanese"
    | "kRSKanWa"
    | "kRSKangXi"
    | "kRSKorean"
    | "kRSUnicode"
    | "kSBGY"
    | "kSemanticVariant"
    | "kSimplifiedVariant"
    | "kSpecializedSemanticVariant"
    | "kTGH"
    | "kTaiwanTelegraph"
    | "kTang"
    | "kTotalStrokes"
    | "kTraditionalVariant"
    | "kVietnamese"
    | "kXHC1983"
    | "kXerox"
   },
   attribute value { teidata.word },
   empty
}

<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: c pc w
figures: figure
gaiji: g
linking: anchor seg
transcr: fw subst supplied
verse: rhyme
character data
Example
<s n="1">
 <w ana="#NP0type="openlemma="Marley">Marley</w>
 <w ana="#VBDtype="verblemma="be">was</w>
 <w ana="#AJ0type="complementlemma="die">dead</w>
</s>
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
    | cpcmodel.globalmodel.lPartmodel.hiLikemodel.pPart.edit
   )*
}
Processing Model
<model behaviour="inline"/>

<xenoData>

<xenoData> (non-TEI metadata) provides a container element into which metadata in non-TEI formats may be placed. [2.5. Non-TEI Metadata]
Moduleheader
Attributes
Member of
Contained by
header: teiHeader
May containANY
Example

This example presumes that the prefix dc has been bound to the namespace http://purl.org/dc/elements/1.1/ and the prefix rdf is bound to the namespace http://www.w3.org/1999/02/22-rdf-syntax-ns#. Note: The about attribute on the <rdf:Description> in this example gives a URI indicating the resource to which the metadata contained therein refer. The <rdf:Description> in the second xenoData block has a blank about, meaning it is pointing at the current document, so the RDF is about the document within which it is contained, i.e. the TEI document containing the xenoData block. Similarly, any kind of relative URI may be used, including fragment identifiers (see [ID SG-id in TEI Guidelines]). Do note, however, that if the contents of the xenoData block are to be extracted and used elsewhere, any relative URIs will have to be resolved accordingly.

<xenoData>
 <rdf:RDF>
  <rdf:Description rdf:about="http://www.worldcat.org/oclc/606621663">
   <dc:title>The description of a new world, called the blazing-world</dc:title>
   <dc:creator>The Duchess of Newcastle</dc:creator>
   <dc:date>1667</dc:date>
   <dc:identifier>British Library, 8407.h.10</dc:identifier>
   <dc:subject>utopian fiction</dc:subject>
  </rdf:Description>
 </rdf:RDF>
</xenoData>
<xenoData>
 <rdf:RDF>
  <rdf:Description rdf:about="">
   <dc:title>The Description of a New World, Called the Blazing-World, 1668</dc:title>
   <dc:creator>Cavendish, Margaret (Lucas), Duchess of Newcastle</dc:creator>
   <dc:publisher>Women Writers Project</dc:publisher>
   <dc:date>2002-02-12</dc:date>
   <dc:subject>utopian fiction</dc:subject>
  </rdf:Description>
 </rdf:RDF>
</xenoData>
Example

In this example, the prefix rdf is bound to the namespace http://www.w3.org/1999/02/22-rdf-syntax-ns#, the prefix dc is bound to the namespace http://purl.org/dc/elements/1.1/, and the prefix cc is bound to the namespace http://web.resource.org/cc/.

<xenoData>
 <rdf:RDF>
  <cc:Work rdf:about="">
   <dc:title>Applied Software Project Management - review</dc:title>
   <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text"/>
   <dc:license rdf:resource="http://creativecommons.org/licenses/by-sa/2.0/uk/"/>
  </cc:Work>
  <cc:License rdf:about="http://creativecommons.org/licenses/by-sa/2.0/uk/">
   <cc:permits rdf:resource="http://web.resource.org/cc/Reproduction"/>
   <cc:permits rdf:resource="http://web.resource.org/cc/Distribution"/>
   <cc:requires rdf:resource="http://web.resource.org/cc/Notice"/>
   <cc:requires rdf:resource="http://web.resource.org/cc/Attribution"/>
   <cc:permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/>
   <cc:requires rdf:resource="http://web.resource.org/cc/ShareAlike"/>
  </cc:License>
 </rdf:RDF>
</xenoData>
Example

In this example, the prefix dc is again bound to the namespace http://www.openarchives.org/OAI/2.0/oai_dc/, and the prefix oai_dc is bound to the namespace http://www.openarchives.org/OAI/2.0/oai_dc/.

<xenoData>
 <oai_dc:dc>
  <dc:title>The colonial despatches of Vancouver Island and British
     Columbia 1846-1871: 11566, CO 60/2, p. 291; received 13 November.
     Trevelyan to Merivale (Permanent Under-Secretary)</dc:title>
  <dc:date>1858-11-12</dc:date>
  <dc:creator>Trevelyan</dc:creator>
  <dc:publisher>University of Victoria Humanities Computing and Media
     Centre, and UVic Libraries</dc:publisher>
  <dc:type>InteractiveResource</dc:type>
  <dc:format>application/xhtml+xml</dc:format>
  <dc:type>text</dc:type>
  <dc:identifier>http://bcgenesis.uvic.ca/getDoc.htm?id=B585TE13.scx</dc:identifier>
  <dc:rights>This document is licensed under a Creative Commons …</dc:rights>
  <dc:language>(SCHEME=ISO639) en</dc:language>
  <dc:source>Transcribed from microfilm and/or original documents, and
     marked up in TEI P5 XML. The interactive XHTML resource is generated
     from the XHTML using XQuery and XSLT.</dc:source>
  <dc:source>repository: CO</dc:source>
  <dc:source>coNumber: 60</dc:source>
  <dc:source>coVol: 2</dc:source>
  <dc:source>page: 291</dc:source>
  <dc:source>coRegistration: 11566</dc:source>
  <dc:source>received: received 13 November</dc:source>
  <dc:subject>Trevelyan, Sir Charles Edward</dc:subject>
  <dc:subject>Merivale, Herman</dc:subject>
  <dc:subject>Elliot, T. Frederick</dc:subject>
  <dc:subject>Moody, Colonel Richard Clement</dc:subject>
  <dc:subject>Lytton, Sir Edward George Earle Bulwer</dc:subject>
  <dc:subject>Jadis, Vane</dc:subject>
  <dc:subject>Carnarvon, Earl</dc:subject>
  <dc:subject>British Columbia</dc:subject>
  <dc:description>British Columbia correspondence: Public Offices
     document (normally correspondence between government
     departments)</dc:description>
 </oai_dc:dc>
</xenoData>
Example

In this example, the prefix mods is bound to the namespace http://www.loc.gov/mods/v3.

<xenoData>
 <mods:mods>
  <mods:titleInfo>
   <mods:title>Academic adaptation and cross-cultural
       learning experiences of Chinese students at American
       universities</mods:title>
   <mods:subTitle>a narrative inquiry</mods:subTitle>
  </mods:titleInfo>
  <mods:name type="personal"
   authority="local">

   <mods:namePart/>
   <mods:role>
    <mods:roleTerm authority="marcrelator"
     type="text">
Author</mods:roleTerm>
   </mods:role>
   <mods:affiliation>Northeastern University</mods:affiliation>
   <mods:namePart type="given">Hong</mods:namePart>
   <mods:namePart type="family">Zhang</mods:namePart>
  </mods:name>
  <mods:name type="personal"
   authority="local">

   <mods:namePart/>
   <mods:role>
    <mods:roleTerm authority="local"
     type="text">
Advisor</mods:roleTerm>
   </mods:role>
   <mods:namePart type="given">Liliana</mods:namePart>
   <mods:namePart type="family">Meneses</mods:namePart>
  </mods:name>
  
<!-- ... -->
  <mods:typeOfResource>text</mods:typeOfResource>
  <mods:genre>doctoral theses</mods:genre>
  <mods:originInfo>
   <mods:place>
    <mods:placeTerm type="text">Boston (Mass.)</mods:placeTerm>
   </mods:place>
   <mods:publisher>Northeastern University</mods:publisher>
   <mods:copyrightDate encoding="w3cdtf"
    keyDate="yes">
2013</mods:copyrightDate>
  </mods:originInfo>
  <mods:language>
   <mods:languageTerm authority="iso639-2b"
    type="code">
eng</mods:languageTerm>
  </mods:language>
  <mods:physicalDescription>
   <mods:form authority="marcform">electronic</mods:form>
   <mods:digitalOrigin>born digital</mods:digitalOrigin>
  </mods:physicalDescription>
<!-- ... -->
 </mods:mods>
</xenoData>
Example

This example shows GeoJSON embedded in <xenoData>. Note that JSON does not permit newlines inside string values. These must be escaped as \n. To avoid the accidental insertion of newlines by software, the use of xml:space is recommended. Blocks of JSON should be wrapped in CDATA sections, as they may contain characters illegal in XML.

<xenoData xml:space="preserve"> <![CDATA[ {     "features": [         {             "geometry": {                 "type": "Point",                 "coordinates": [                     68.388483,                     33.498616                 ]             },             "type": "Feature",             "id": "darmc-location-19727",             "properties": {                 "snippet": "Unknown; 330 BC - AD 300",                 "link": "https://pleiades.stoa.org/places/59694/darmc-location-19727",                 "description": "5M scale point location",                 "location_precision": "precise",                 "title": "DARMC location 19727"             }         }     ],     "id": "59694",     "subject": [         "dare:ancient=1",         "dare:feature=settlement",         "dare:major=0"     ],     "title": "Arachosiorum Oppidum/Alexandria",     "provenance": "Barrington Atlas: BAtlas 6 B3 Arachosiorum Oppidum/Alexandria",     "placeTypeURIs": [         "https://pleiades.stoa.org/vocabularies/place-types/settlement"     ],     "details": "<p>The Barrington Atlas Directory notes: Kalat-e-Ghilzai? AFG</p>",     "@context": {         "snippet": "dcterms:abstract",         "rights": "dcterms:rights",         "description": "dcterms:description",         "title": "dcterms:title",         "dcterms": "http://purl.org/dc/terms/",         "subject": "dcterms:subject",         "uri": "@id",         "created": "dcterms:created"     },     "review_state": "published",     "type": "FeatureCollection",     "description": "An ancient place, cited: BAtlas 6 B3 Arachosiorum Oppidum/Alexandria",     "reprPoint": [         68.388483,         33.498616     ],     "placeTypes": [         "settlement"     ],     "bbox": [         68.388483,         33.498616,         68.388483,         33.498616     ],     "rights": "Copyright © The Contributors. Sharing and remixing permitted under CC-BY.",     "created": "2010-09-23T04:31:55Z",     "uri": "https://pleiades.stoa.org/places/59694",     "creators": [         {             "username": null,             "name": "M.U. Erdosy"         }     ],     "@type": "Place" } ]]> </xenoData>

Note: the example above has been trimmed for legibility. The original may be found linked from Arachosiorum Oppidum/Alexandria. The contributors, listed per the license terms, are R. Talbert, Jeffrey Becker, W. Röllig, Tom Elliott, H. Kopp, DARMC, Sean Gillies, B. Siewert-Mayer, Francis Deblauwe, and Eric Kansa.

Content model
<content>
 <alternate>
  <textNode/>
  <anyElement/>
 </alternate>
</content>
Schema Declaration
element xenoData
{
   att.global.attributes,
   att.typed.attributes,
   ( text | anyElement_xenoData_1 )
}

<zone>

<zone> defines any two-dimensional area within a surface element. [12.1. Digital Facsimiles 12.2.2. Embedded Transcription]
Moduletranscr
Attributes
rotateindicates the amount by which this zone has been rotated clockwise, with respect to the normal orientation of the parent surface element as implied by the dimensions given in the <msDesc> element or by the coordinates of the surface itself. The orientation is expressed in arc degrees.
Status Optional
Datatype teidata.count
Default 0
Member of
Contained by
transcr: surface zone
May contain
analysis: c pc w
figures: figure formula
gaiji: g
linking: anchor seg
transcr: fw surface zone
character data
Note

The position of every zone for a given surface is always defined by reference to the coordinate system defined for that surface.

A graphic element contained by a zone represents the whole of the zone.

A zone may be of any shape. The attribute points may be used to define a polygonal zone, using the coordinate system defined by its parent surface.

A zone is always a closed polygon. Repeating the initial coordinate at the end of the sequence is optional. To encode an unclosed path, use the <path> element.

Example
<surface ulx="14.54uly="16.14lrx="0"
 lry="0">

 <graphic url="stone.jpg"/>
 <zone points="4.6,6.3 5.25,5.85 6.2,6.6 8.19222,7.4125 9.89222,6.5875 10.9422,6.1375 11.4422,6.7125 8.21722,8.3125 6.2,7.65"/>
</surface>

This example defines a non-rectangular zone: see the illustration in section [ID PH-surfzone in TEI Guidelines].

Example
<facsimile>
 <surface ulx="50uly="20lrx="400"
  lry="280">

  <zone ulx="0uly="0lrx="500lry="321">
   <graphic url="graphic.png"/>
  </zone>
 </surface>
</facsimile>

This example defines a zone which has been defined as larger than its parent surface in order to match the dimensions of the graphic it contains.

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

  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.graphicLike"/>
  <classRef key="model.global"/>
  <elementRef key="surface"/>
  <classRef key="model.linePart"/>
 </alternate>
</content>
Schema Declaration
element zone
{
   att.global.attributes,
   att.coordinated.attributes,
   att.typed.attributes,
   att.written.attributes,
   attribute rotate { teidata.count }?,
   (
      text
    | model.gLikemodel.graphicLikemodel.globalsurfacemodel.linePart
   )*
}

Schema tei_simplePrint: Model classes

model.addressLike

model.addressLike groups elements used to represent a postal or email address. [1. The TEI Infrastructure]
Moduletei
Used by
Membersaddress email

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] 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 quote] floatingText

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 biblFull 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 respStmt] availability bibl edition extent quote relatedItem

model.castItemPart

model.castItemPart groups component elements of an entry in a cast list, such as dramatic role or actor's name.
Moduletei
Used by
Membersactor role roleDesc

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 supplied 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 [ab p] lg sp] model.inter [model.attributable [model.quoteLike [cit quote] floatingText] model.biblLike [bibl biblFull listBibl] model.labelLike [desc label] model.listLike [list listPerson listPlace table] model.stageLike [stage] castList] 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.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 [ab 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.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 foreign term title

model.encodingDescPart

model.encodingDescPart groups elements which may be used inside encodingDesc and appear multiple times.
Moduletei
Used by
MemberscharDecl classDecl editorialDecl listPrefixDef projectDesc refsDecl samplingDecl tagsDecl

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 [castList set] listBibl titlePage

model.frontPart.drama

model.frontPart.drama groups elements which appear at the level of divisions within front or back matter of performance texts only. [7.1. Front and Back Matter ]
Moduletei
Used by
MemberscastList set

model.gLike

model.gLike groups elements used to represent individual non-Unicode characters or glyphs.
Moduletei
Used by
Membersg

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 model.milestoneLike [anchor cb fw 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.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 foreign 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 quote] floatingText] model.biblLike [bibl biblFull listBibl] model.labelLike [desc label] model.listLike [list listPerson listPlace table] model.stageLike [stage] castList

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 foreign term title] model.hiLike [hi q] model.pPart.data [model.addressLike [address email] model.dateLike [date time] model.measureLike [measure num] model.nameLike [model.nameLike.agent [name] idno rs] ] model.pPart.editorial [abbr choice expan subst] model.phrase.xml model.ptrLike [ref]

model.linePart

model.linePart groups transcriptional elements which appear within lines or zones of a source-oriented transcription within a <sourceDoc> element.
Moduletei
Used by
Membersmodel.hiLike [hi q] add c choice del pc seg unclear w zone

model.listLike

model.listLike groups list-like elements. [3.8. Lists]
Moduletei
Used by
Memberslist listPerson listPlace table

model.lLike

model.lLike groups elements representing metrical components such as verse lines.
Moduletei
Used by
Membersl

model.lPart

model.lPart groups phrase-level elements which may appear within verse only. [6.2. Components of the Verse Line]
Moduletei
Used by
Membersrhyme

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
Membersmeasure num

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 cb fw 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] 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 [g] model.global [model.global.edit [gap] model.global.meta model.milestoneLike [anchor cb fw lb milestone pb] model.noteLike [note] figure] model.inter [model.attributable [model.quoteLike [cit quote] floatingText] model.biblLike [bibl biblFull listBibl] model.labelLike [desc label] model.listLike [list listPerson listPlace table] model.stageLike [stage] castList] model.lLike [l] model.phrase [model.graphicLike [formula graphic] model.highlighted [model.emphLike [code foreign term title] model.hiLike [hi q] ] model.lPart [rhyme] model.pPart.data [model.addressLike [address email] model.dateLike [date time] model.measureLike [measure num] model.nameLike [model.nameLike.agent [name] idno rs] ] model.pPart.edit [model.pPart.editorial [abbr choice expan subst] model.pPart.transcriptional [add corr del orig reg sic supplied unclear] ] model.phrase.xml model.ptrLike [ref] model.segLike [c pc s seg w] ] lg

model.personLike

model.personLike groups elements which provide information about people and their relationships.
Moduletei
Used by
Membersperson

model.personPart

model.personPart groups elements which form part of the description of a person. [16.2.2. The Participant Description]
Moduletei
Used by
Membersmodel.biblLike [bibl biblFull listBibl] model.eventLike model.persStateLike idno name

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 foreign term title] model.hiLike [hi q] ] model.lPart [rhyme] model.pPart.data [model.addressLike [address email] model.dateLike [date time] model.measureLike [measure num] model.nameLike [model.nameLike.agent [name] idno rs] ] model.pPart.edit [model.pPart.editorial [abbr choice expan subst] model.pPart.transcriptional [add corr del orig reg sic supplied unclear] ] model.phrase.xml model.ptrLike [ref] model.segLike [c pc s seg w]
Note

This class of elements can occur within paragraphs, list items, lines of verse, etc.

model.placeLike

model.placeLike groups elements used to provide information about places and their relationships.
Moduletei
Used by
Membersplace

model.pLike

model.pLike groups paragraph-like elements.
Moduletei
Used by
Membersab p

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 email] model.dateLike [date time] model.measureLike [measure num] model.nameLike [model.nameLike.agent [name] 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 subst] model.pPart.transcriptional [add corr del orig reg sic supplied 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 subst

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 supplied unclear

model.profileDescPart

model.profileDescPart groups elements which may be used inside profileDesc and appear multiple times.
Moduletei
Used by
Membersabstract creation langUsage particDesc settingDesc textClass

model.ptrLike

model.ptrLike groups elements used for purposes of location and reference. [3.7. Simple Links and Cross-References]
Moduletei
Used by
Membersref

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
Membersdistributor 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 [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 quote

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
Membersfacsimile text

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 respStmt

model.segLike

model.segLike groups elements used for arbitrary segmentation. [17.3. Blocks, Segments, and Anchors 18.1. Linguistic Segment Categories]
Moduletei
Used by
Membersc pc 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 xenoData

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_simplePrint: 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
Memberscb lb 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.calendarSystem

att.calendarSystem provides attributes for indicating calendar systems to which a date belongs. [3.6.4. Dates and Times 14.4. Dates]
Moduletei
Membersdate docDate time
Attributes
calendarindicates one or more systems or calendars to which the date represented by the content of this element belongs.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
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>
He was born on <date calendar="#gregorian">Feb. 22, 1732</date> (<date calendar="#julianwhen="1732-02-22">Feb. 11, 1731/32,
O.S.</date>).
He was born on <date calendar="#gregorian #julian"
 when="1732-02-22">
Feb. 22, 1732
(Feb. 11, 1731/32, O.S.)</date>.
Note

Note that the calendar attribute declares the calendar system used to interpret the textual content of an element, as it appears on an original source. It does not modify the interpretation of the normalization attributes provided by att.datable.w3c, att.datable.iso, or att.datable.custom. Attributes from those first two classes are always interpreted as Gregorian or proleptic Gregorian dates, as per the respective standards on which they are based. The calender system used to interpret the last (att.datable.custom) may be specified with datingMethod.

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] actor catDesc date distributor docAuthor docTitle publisher resp respStmt term time title
Attributes
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
Membersab abbr add address anchor argument bibl biblFull byline c cb choice cit closer corr date dateline del desc docAuthor docDate email epigraph expan figure floatingText foreign formula gap graphic head hi idno l label lb lg list listBibl listPerson listPlace measure milestone name note num opener orig p pb pc postscript q quote ref reg rs s salute seg sic signed 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.coordinated

att.coordinated provides attributes that can be used to position their parent element within a two dimensional coordinate system.
Moduletranscr
Memberssurface zone
Attributes
startindicates the element within a transcription of the text containing at least the start of the writing represented by this zone or surface.
Status Optional
Datatype teidata.pointer
ulxgives the x coordinate value for the upper left corner of a rectangular space.
Status Optional
Datatype teidata.numeric
ulygives the y coordinate value for the upper left corner of a rectangular space.
Status Optional
Datatype teidata.numeric
lrxgives the x coordinate value for the lower right corner of a rectangular space.
Status Optional
Datatype teidata.numeric
lrygives the y coordinate value for the lower right corner of a rectangular space.
Status Optional
Datatype teidata.numeric
pointsidentifies a two dimensional area by means of a series of pairs of numbers, each of which gives the x,y coordinates of a point on a line enclosing the area.
Status Optional
Datatype 3–∞ occurrences of teidata.point separated by whitespace

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
Membersref 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
Membersatt.gaijiProp [localProp unicodeProp unihanProp] author change creation date docDate editor idno licence mapping name resp 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 [att.gaijiProp [localProp unicodeProp unihanProp] author change creation date docDate editor idno licence mapping name resp 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>
notBeforespecifies the earliest possible date for the event in standard form, e.g. yyyy-mm-dd.
Status Optional
Datatype teidata.temporal.w3c
notAfterspecifies the latest possible date for the event in standard form, e.g. yyyy-mm-dd.
Status Optional
Datatype teidata.temporal.w3c
fromindicates the starting point of the period in standard form, e.g. yyyy-mm-dd.
Status Optional
Datatype teidata.temporal.w3c
toindicates the ending point of the period in standard form, e.g. yyyy-mm-dd.
Status Optional
Datatype teidata.temporal.w3c
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.dimensions

att.dimensions provides attributes for describing the size of physical objects.
Moduletei
Membersadd date del gap subst supplied time unclear
Attributes
unitnames the unit used for the measurement
Status Optional
Datatype teidata.enumerated
Legal values are:
chars
characters
lines
lines
pages
pages
words
words
cm
centimetres
mm
millimetre
in
inches
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"/>
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 biblFull 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
Memberscb lb 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 subst] corr date expan gap name person place reg supplied time unclear
Attributes
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 [c pc s seg w] ab 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.gaijiProp

att.gaijiProp provides attributes for defining the properties of non-standard characters or glyphs. [5. Characters, Glyphs, and Writing Modes]
Modulegaiji
MemberslocalProp unicodeProp unihanProp
Attributes
nameprovides the name of the character or glyph property being defined.
Status Required
Datatype teidata.xmlName
valueprovides the value of the character or glyph property being defined.
Status Required
Datatype teidata.text
versionspecifies the version number of the Unicode Standard in which this property name is defined.
Status Optional
Datatype teidata.enumerated
Suggested values include:
1.0.1
1.1
2.0
2.1
3.0
3.1
3.2
4.0
4.1
5.0
5.1
5.2
6.0
6.1
6.2
6.3
7.0
8.0
9.0
10.0
11.0
12.0
12.1
13.0
14.0
15.0
unassigned
schemesupplies the name of the character set system from which this property is drawn.
Status Optional
Datatype teidata.enumerated
Sample values include:
Unicode
(Unicode) ISO 10646 [Default]
Bridwell
(E. Nelson Bridwell) Original character set developed by E. Nelson Bridwell as described by Al Turniansky, in use from the 1950s to 1985.
Brewer
(Georg Brewer) Developed by Georg Brewer, with a look similar to the Byrne glyphs. Like the Byrne set, this is not a true character set, but rather a set of alternate glyphs.
Doyle
(Darren Doyle) Glyph set (in some cases associated with multiple characters) developed by Darren Doyle as part of a comprehensive version of the language created in part for an invented language classs at UT Austin in 2006.
Schreyer
(Christine Schreyer) Character set (without actual codepoints) of 153 characters developed, along with pronunciation rules, roughly 300 words, and a grammar, developed by Christine Schreyer developed in 2012 for Warner Brothers.
Example

In this example a definition for the Unicode property Decomposition Mapping is provided.

<unicodeProp name="Decomposition_Mapping"
 value="circle"/>
Note

All name-only attributes need an xs:boolean attribute value inside value.

att.global

att.global provides attributes common to all elements in the TEI encoding scheme. [1.3.1.1. Global Attributes]
Moduletei
MembersTEI ab abbr abstract actor add addrLine address anchor argument author availability back bibl biblFull biblScope body byline c castGroup castItem castList catDesc catRef category cb cell change char charDecl choice cit classCode classDecl closer code corr creation date dateline del desc distributor div docAuthor docDate docEdition docImprint docTitle edition editionStmt editor editorialDecl email encodingDesc epigraph expan extent facsimile figDesc figure fileDesc floatingText foreign formula front fw g gap glyph graphic group head hi idno imprimatur item keywords l label langUsage language lb lg licence list listBibl listChange listPerson listPlace listPrefixDef localProp mapping measure milestone name namespace note notesStmt num opener orig p particDesc pb pc person place postscript prefixDef profileDesc projectDesc pubPlace publicationStmt publisher q quote ref refsDecl reg relatedItem rendition resp respStmt revisionDesc rhyme role roleDesc row rs s salute samplingDecl seg seriesStmt set settingDesc sic signed sourceDesc sp speaker stage subst supplied surface table tagUsage tagsDecl taxonomy teiCorpus teiHeader term text textClass time title titlePage titlePart titleStmt trailer unclear unicodeProp unihanProp w xenoData zone
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:baseprovides a base URI reference with which applications can resolve relative URI references into absolute URI references.
Status Optional
Datatype teidata.pointer
<div type="bibl">
 <head>Selections from <title level="m">The Collected Letters of Robert Southey. Part 1: 1791-1797</title>
 </head>
 <listBibl xml:base="https://romantic-circles.org/sites/default/files/imported/editions/southey_letters/XML/">
  <bibl>
   <ref target="letterEEd.26.3.xml">
    <title>Robert Southey to Grosvenor Charles Bedford</title>, <date when="1792-04-03">3 April 1792</date>.
   </ref>
  </bibl>
  <bibl>
   <ref target="letterEEd.26.57.xml">
    <title>Robert Southey to Anna Seward</title>, <date when="1793-09-18">18 September 1793</date>.
   </ref>
  </bibl>
  <bibl>
   <ref target="letterEEd.26.85.xml">
    <title>Robert Southey to Robert Lovell</title>, <date from="1794-04-05to="1794-04-06">5-6 April, 1794</date>.
   </ref>
  </bibl>
 </listBibl>
</div>
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 ab abbr abstract actor add addrLine address anchor argument author availability back bibl biblFull biblScope body byline c castGroup castItem castList catDesc catRef category cb cell change char charDecl choice cit classCode classDecl closer code corr creation date dateline del desc distributor div docAuthor docDate docEdition docImprint docTitle edition editionStmt editor editorialDecl email encodingDesc epigraph expan extent facsimile figDesc figure fileDesc floatingText foreign formula front fw g gap glyph graphic group head hi idno imprimatur item keywords l label langUsage language lb lg licence list listBibl listChange listPerson listPlace listPrefixDef localProp mapping measure milestone name namespace note notesStmt num opener orig p particDesc pb pc person place postscript prefixDef profileDesc projectDesc pubPlace publicationStmt publisher q quote ref refsDecl reg relatedItem rendition resp respStmt revisionDesc rhyme role roleDesc row rs s salute samplingDecl seg seriesStmt set settingDesc sic signed sourceDesc sp speaker stage subst supplied surface table tagUsage tagsDecl taxonomy teiCorpus teiHeader term text textClass time title titlePage titlePart titleStmt trailer unclear unicodeProp unihanProp w xenoData zone]
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 ab abbr abstract actor add addrLine address anchor argument author availability back bibl biblFull biblScope body byline c castGroup castItem castList catDesc catRef category cb cell change char charDecl choice cit classCode classDecl closer code corr creation date dateline del desc distributor div docAuthor docDate docEdition docImprint docTitle edition editionStmt editor editorialDecl email encodingDesc epigraph expan extent facsimile figDesc figure fileDesc floatingText foreign formula front fw g gap glyph graphic group head hi idno imprimatur item keywords l label langUsage language lb lg licence list listBibl listChange listPerson listPlace listPrefixDef localProp mapping measure milestone name namespace note notesStmt num opener orig p particDesc pb pc person place postscript prefixDef profileDesc projectDesc pubPlace publicationStmt publisher q quote ref refsDecl reg relatedItem rendition resp respStmt revisionDesc rhyme role roleDesc row rs s salute samplingDecl seg seriesStmt set settingDesc sic signed sourceDesc sp speaker stage subst supplied surface table tagUsage tagsDecl taxonomy teiCorpus teiHeader term text textClass time title titlePage titlePart titleStmt trailer unclear unicodeProp unihanProp w xenoData zone]
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 ab abbr abstract actor add addrLine address anchor argument author availability back bibl biblFull biblScope body byline c castGroup castItem castList catDesc catRef category cb cell change char charDecl choice cit classCode classDecl closer code corr creation date dateline del desc distributor div docAuthor docDate docEdition docImprint docTitle edition editionStmt editor editorialDecl email encodingDesc epigraph expan extent facsimile figDesc figure fileDesc floatingText foreign formula front fw g gap glyph graphic group head hi idno imprimatur item keywords l label langUsage language lb lg licence list listBibl listChange listPerson listPlace listPrefixDef localProp mapping measure milestone name namespace note notesStmt num opener orig p particDesc pb pc person place postscript prefixDef profileDesc projectDesc pubPlace publicationStmt publisher q quote ref refsDecl reg relatedItem rendition resp respStmt revisionDesc rhyme role roleDesc row rs s salute samplingDecl seg seriesStmt set settingDesc sic signed sourceDesc sp speaker stage subst supplied surface table tagUsage tagsDecl taxonomy teiCorpus teiHeader term text textClass time title titlePage titlePart titleStmt trailer unclear unicodeProp unihanProp w xenoData zone]
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 ab abbr abstract actor add addrLine address anchor argument author availability back bibl biblFull biblScope body byline c castGroup castItem castList catDesc catRef category cb cell change char charDecl choice cit classCode classDecl closer code corr creation date dateline del desc distributor div docAuthor docDate docEdition docImprint docTitle edition editionStmt editor editorialDecl email encodingDesc epigraph expan extent facsimile figDesc figure fileDesc floatingText foreign formula front fw g gap glyph graphic group head hi idno imprimatur item keywords l label langUsage language lb lg licence list listBibl listChange listPerson listPlace listPrefixDef localProp mapping measure milestone name namespace note notesStmt num opener orig p particDesc pb pc person place postscript prefixDef profileDesc projectDesc pubPlace publicationStmt publisher q quote ref refsDecl reg relatedItem rendition resp respStmt revisionDesc rhyme role roleDesc row rs s salute samplingDecl seg seriesStmt set settingDesc sic signed sourceDesc sp speaker stage subst supplied surface table tagUsage tagsDecl taxonomy teiCorpus teiHeader term text textClass time title titlePage titlePart titleStmt trailer unclear unicodeProp unihanProp w xenoData zone]
Attributes
renditionpoints to a description of the rendering or presentation used for this element in the source text.
Status Optional
Datatype 1–∞ occurrences of teidata.pointer separated by whitespace
Suggested values include:
simple:allcaps
all capitals
simple:blackletter
black letter or gothic typeface
simple:bold
bold typeface
simple:bottombraced
marked with a brace under the bottom of the text
simple:boxed
border around the text
simple:centre
centred
simple:cursive
cursive typeface
simple:display
block display
simple:doublestrikethrough
strikethrough with double line
simple:doubleunderline
underlined with double line
simple:dropcap
initial letter larger or decorated
simple:float
floated out of main flow
simple:hyphen
with a hyphen here (eg in line break)
simple:inline
inline rendering
simple:justify
justified text
simple:italic
italic typeface
simple:larger
larger type
simple:left
aligned to the left or left-justified
simple:leftbraced
marked with a brace on the left side of the text
simple:letterspace
larger-than-normal spacing between letters, usually for emphasis
simple:literal
fixed-width typeface, spacing preserved
simple:normalstyle
upright shape and default weight of typeface
simple:normalweight
normal typeface weight
simple:right
aligned to the right or right-justified
simple:rightbraced
marked with a brace to the right of the text
simple:rotateleft
rotated to the left
simple:rotateright
rotated to the right
simple:smallcaps
small caps
simple:smaller
smaller type
simple:strikethrough
strike through
simple:subscript
subscript
simple:superscript
superscript
simple:topbraced
marked with a brace above the text
simple:typewriter
fixed-width typeface, like typewriter
simple:underline
underlined with single line
simple:wavyunderline
underlined with wavy line
<head rendition="#ac #sc">
 <lb/>To The <lb/>Duchesse <lb/>of <lb/>Newcastle, <lb/>On Her
<lb/>
 <hi rendition="#normal">New Blazing-World</hi>.
</head>
<!-- elsewhere... -->
<rendition xml:id="scscheme="css">font-variant: small-caps</rendition>
<rendition xml:id="normalscheme="css">font-variant: normal</rendition>
<rendition xml:id="acscheme="css">text-align: center</rendition>
Note

The rendition attribute is used in a very similar way to the class attribute defined for XHTML but with the important distinction that its function is to describe the appearance of the source text, not necessarily to determine how that text should be presented on screen or paper.

If rendition is used to refer to a style definition in a formal language like CSS, it is recommended that it not be used in conjunction with rend. Where both rendition and rend are supplied, the latter is understood to override or complement the former.

Each URI provided should indicate a rendition element defining the intended rendition in terms of some appropriate style language, as indicated by the scheme attribute.

Schematron

<sch:rule context="tei:*[@rendition]">
<sch:let name="results"
 value="for $val in tokenize(normalize-space(@rendition),'\s+') return starts-with($val,'simple:') or (starts-with($val,'#') and //tei:rendition[@xml:id=substring($val,2)])"/>

<sch:assert test="every $x in $results satisfies $x"> Error: Each of the rendition
values in "<sch:value-of select="@rendition"/>" must point to a local ID or to a
token in the Simple scheme (<sch:value-of select="$results"/>)</sch:assert>
</sch:rule>
Schematron

<sch:rule context="tei:*[@corresp]">
<sch:let name="results"
 value="for $t in tokenize(normalize-space(@corresp),'\s+') return starts-with($t,'#') and not(id(substring($t,2)))"/>

<sch:report test="some $x in $results satisfies $x"> Error: Every local pointer in
"<sch:value-of select="@corresp"/>" must point to an ID in this document
(<sch:value-of select="$results"/>)</sch:report>
</sch:rule>

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 ab abbr abstract actor add addrLine address anchor argument author availability back bibl biblFull biblScope body byline c castGroup castItem castList catDesc catRef category cb cell change char charDecl choice cit classCode classDecl closer code corr creation date dateline del desc distributor div docAuthor docDate docEdition docImprint docTitle edition editionStmt editor editorialDecl email encodingDesc epigraph expan extent facsimile figDesc figure fileDesc floatingText foreign formula front fw g gap glyph graphic group head hi idno imprimatur item keywords l label langUsage language lb lg licence list listBibl listChange listPerson listPlace listPrefixDef localProp mapping measure milestone name namespace note notesStmt num opener orig p particDesc pb pc person place postscript prefixDef profileDesc projectDesc pubPlace publicationStmt publisher q quote ref refsDecl reg relatedItem rendition resp respStmt revisionDesc rhyme role roleDesc row rs s salute samplingDecl seg seriesStmt set settingDesc sic signed sourceDesc sp speaker stage subst supplied surface table tagUsage tagsDecl taxonomy teiCorpus teiHeader term text textClass time title titlePage titlePart titleStmt trailer unclear unicodeProp unihanProp w xenoData zone]
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 ab abbr abstract actor add addrLine address anchor argument author availability back bibl biblFull biblScope body byline c castGroup castItem castList catDesc catRef category cb cell change char charDecl choice cit classCode classDecl closer code corr creation date dateline del desc distributor div docAuthor docDate docEdition docImprint docTitle edition editionStmt editor editorialDecl email encodingDesc epigraph expan extent facsimile figDesc figure fileDesc floatingText foreign formula front fw g gap glyph graphic group head hi idno imprimatur item keywords l label langUsage language lb lg licence list listBibl listChange listPerson listPlace listPrefixDef localProp mapping measure milestone name namespace note notesStmt num opener orig p particDesc pb pc person place postscript prefixDef profileDesc projectDesc pubPlace publicationStmt publisher q quote ref refsDecl reg relatedItem rendition resp respStmt revisionDesc rhyme role roleDesc row rs s salute samplingDecl seg seriesStmt set settingDesc sic signed sourceDesc sp speaker stage subst supplied surface table tagUsage tagsDecl taxonomy teiCorpus teiHeader term text textClass time title titlePage titlePart titleStmt trailer unclear unicodeProp unihanProp w xenoData zone]
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.internetMedia

att.internetMedia provides attributes for specifying the type of a computer resource using a standard taxonomy.
Moduletei
Membersatt.media [graphic] ref
Attributes
mimeType(MIME media type) specifies the applicable multimedia internet mail extension (MIME) media type
Status Optional
Datatype 1–∞ occurrences of teidata.word separated by whitespace
Example

In this example mimeType is used to indicate that the URL points to a TEI XML file encoded in UTF-8.

<ref mimeType="application/tei+xml; charset=UTF-8"
 target="https://raw.githubusercontent.com/TEIC/TEI/dev/P5/Source/guidelines-en.xml"/>
Note

This attribute class provides an attribute for describing a computer resource, typically available over the internet, using a value taken from a standard taxonomy. At present only a single taxonomy is supported, the Multipurpose Internet Mail Extensions (MIME) Media Type system. This typology of media types is defined by the Internet Engineering Task Force in RFC 2046. The list of types is maintained by the Internet Assigned Numbers Authority (IANA). The mimeType attribute must have a value taken from this list.

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>
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.measurement

att.measurement provides attributes to represent a regularized or normalized measurement.
Moduletei
Membersmeasure
Attributes
unit(unit) indicates the units used for the measurement, usually using the standard symbol for the desired units.
Status Optional
Datatype teidata.enumerated
Suggested values include:
m
(metre) SI base unit of length
kg
(kilogram) SI base unit of mass
s
(second) SI base unit of time
Hz
(hertz) SI unit of frequency
Pa
(pascal) SI unit of pressure or stress
Ω
(ohm) SI unit of electric resistance
L
(litre) 1 dm³
t
(tonne) 10³ kg
ha
(hectare) 1 hm²
Å
(ångström) 10⁻¹⁰ m
mL
(millilitre)
cm
(centimetre)
dB
(decibel) see remarks, below
kbit
(kilobit) 10³ or 1000 bits
Kibit
(kibibit) 2¹⁰ or 1024 bits
kB
(kilobyte) 10³ or 1000 bytes
KiB
(kibibyte) 2¹⁰ or 1024 bytes
MB
(megabyte) 10⁶ or 1 000 000 bytes
MiB
(mebibyte) 2²⁰ or 1 048 576 bytes
Note

If the measurement being represented is not expressed in a particular unit, but rather is a number of discrete items, the unit count should be used, or the unit attribute may be left unspecified.

Wherever appropriate, a recognized SI unit name should be used (see further http://www.bipm.org/en/publications/si-brochure/; http://physics.nist.gov/cuu/Units/). The list above is indicative rather than exhaustive.

unitRefpoints to a unique identifier stored in the xml:id of a <unitDef> element that defines a unit of measure.
Status Optional
Datatype teidata.pointer
quantity(quantity) specifies the number of the specified units that comprise the measurement
Status Optional
Datatype teidata.numeric
commodity(commodity) indicates the substance that is being measured
Status Optional
Datatype 1–∞ occurrences of teidata.word separated by whitespace
Note

In general, when the commodity is made of discrete entities, the plural form should be used, even when the measurement is of only one of them.

Schematron

<sch:rule context="tei:*[@unitRef]">
<sch:report test="@unitrole="info">The @unit attribute may be unnecessary when @unitRef is present.</sch:report>
</sch:rule>
Note
This attribute class provides a triplet of attributes that may be used either to regularize the values of the measurement being encoded, or to normalize them with respect to a standard measurement system.
<l>So weren't you gonna buy <measure quantity="0.5unit="gal"
  commodity="ice cream">
half
   a gallon</measure>, baby</l>
<l>So won't you go and buy <measure quantity="1.893unit="L"
  commodity="ice cream">
half
   a gallon</measure>, baby?</l>

The unit should normally be named using the standard symbol for an SI unit (see further http://www.bipm.org/en/publications/si-brochure/; http://physics.nist.gov/cuu/Units/). However, encoders may also specify measurements using informally defined units such as lines or characters.

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.metrical

att.metrical defines a set of attributes that certain elements may use to represent metrical information. [6.4. Rhyme and Metrical Analysis]
Moduleverse
Membersatt.divLike [div lg] att.segLike [c pc s seg w] l
Attributes
rhyme(rhyme scheme) specifies the rhyme scheme applicable to a group of verse lines.
Status Recommended
Datatype token
Note

By default, the rhyme scheme is expressed as a string of alphabetic characters each corresponding with a rhyming line. Any non-rhyming lines should be represented by a hyphen or an X. Alternative notations may be defined as for met by use of the <metDecl> element in the TEI header.

When the default notation is used, it does not make sense to specify this attribute on any unit smaller than a line. Nor does the default notation provide any way to record internal rhyme, or to specify non-conventional rhyming practice. These extensions would require user-defined alternative notations.

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
Membersc formula quote s seg w
Attributes
notationnames the notation used for the content of the element.
Status Optional
Datatype teidata.enumerated

att.patternReplacement

att.patternReplacement provides attributes for regular-expression matching and replacement. [17.2.3. Using Abbreviated Pointers 2.3.6.3. Milestone Method 2.3.6. The Reference System Declaration 2.3.6.2. Search-and-Replace Method]
Moduleheader
MembersprefixDef
Attributes
matchPatternspecifies a regular expression against which the values of other attributes can be matched.
Status Required
Datatype teidata.pattern
Note

The syntax used should follow that defined by W3C XPath syntax. Note that parenthesized groups are used not only for establishing order of precedence and atoms for quantification, but also for creating subpatterns to be referenced by the replacementPattern attribute.

replacementPatternspecifies a ‘replacement pattern’, that is, the skeleton of a relative or absolute URI containing references to groups in the matchPattern which, once subpattern substitution has been performed, complete the URI.
Status Required
Datatype teidata.replacement
Note

The strings $1, $2 etc. are references to the corresponding group in the regular expression specified by matchPattern (counting open parenthesis, left to right). Processors are expected to replace them with whatever matched the corresponding group in the regular expression.

If a digit preceded by a dollar sign is needed in the actual replacement pattern (as opposed to being used as a back reference), the dollar sign must be written as %24.

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 fw head label note stage trailer
Attributes
placespecifies where this item is placed.
Status Recommended
Datatype 1–∞ occurrences of teidata.enumerated separated by whitespace
Legal values are:
above
above the line
below
below the line
top
at the top of the page
top-right
at the top right of the page
top-left
at the top left of the page
top-centre
at the top center of the page
bottom-right
at the bottom right of the page
bottom-left
at the bottom left of the page
bottom-centre
at the bottom centre of the page
bottom
at the foot of the page
tablebottom
underneath a table
margin-right
in the right-hand margin
margin
in the outer margin
margin-inner
in the inner margin
margin-left
in the left-hand margin
opposite
on the opposite, i.e. facing, page.
overleaf
on the other side of the leaf.
overstrike
superimposed on top of the current context
end
at the end of the volume.
divend
at the end the current division.
parend
at the end the current paragraph.
inline
within the body of the text.
inspace
in a predefined space, for example left by an earlier scribe.
block
formatted as an indented paragraph
<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 licence note 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
Schematron

<sch:rule context="tei:*[@target]">
<sch:let name="results"
 value="for $t in tokenize(normalize-space(@target),'\s+') return starts-with($t,'#') and not(id(substring($t,2)))"/>

<sch:report test="some $x in $results satisfies $x"> Error: Every local pointer
in "<sch:value-of select="@target"/>" must point to an ID in this document
(<sch:value-of select="$results"/>)</sch:report>
</sch:rule>
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.

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>

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
Membersc pc 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 biblFull idno item list listBibl listChange listPerson listPlace person place 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
Memberscb 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.styleDef

att.styleDef provides attributes to specify the name of a formal definition language used to provide formatting or rendition information.
Moduletei
Membersrendition
Attributes
schemeidentifies the language used to describe the rendition.
Status Optional
Datatype teidata.enumerated
Legal values are:
css
Cascading Stylesheet Language
xslfo
Extensible Stylesheet Language Formatting Objects
free
Informal free text description
other
A user-defined rendition description language
Note

If no value for the @scheme attribute is provided, then the default assumption should be that CSS is in use.

schemeVersionsupplies a version number for the style language provided in scheme.
Status Optional
Datatype teidata.versionNumber
Schematron

<sch:rule context="tei:*[@schemeVersion]">
<sch:assert test="@scheme and not(@scheme = 'free')"> @schemeVersion can only be used if @scheme is specified.
</sch:assert>
</sch:rule>
Note

If schemeVersion is used, then scheme should also appear, with a value other than free.

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 subst
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.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 ab abbr add anchor bibl c castItem cb change cit corr date del desc div figure floatingText fw g graphic group head idno label lb lg list listBibl listChange listPerson listPlace mapping measure milestone name note num pb pc place quote ref reg relatedItem rhyme rs s seg surface table teiCorpus term text time title titlePage titlePart trailer w xenoData zone
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 subst] ab closer div figure fw head hi label note opener p postscript salute seg signed stage text trailer zone
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_simplePrint: 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
teidata.gender teidata.sexElement:
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.gender

teidata.gender defines the range of attribute values used to represent the gender of a person, persona, or character.
Moduletei
Used by
Element:
Content model
<content>
 <dataRef key="teidata.enumerated"/>
</content>
Declaration
teidata.gender = teidata.enumerated
Note

Values for attributes using this datatype may be defined locally by a project, or they may refer to an external standard.

Values for this datatype should not be used to encode morphological gender (cf. <gen>, msd as defined in att.linguistic, and 10.3.1. Information on Written and Spoken Forms).

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
Element:
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
Element:
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.point

teidata.point defines the data type used to express a point in cartesian space.
Moduletei
Used by
Content model
<content>
 <dataRef name="token"
  restriction="(-?[0-9]+(\.[0-9]+)?,-?[0-9]+(\.[0-9]+)?)"/>

</content>
Declaration
teidata.point = token { pattern = "(-?[0-9]+(\.[0-9]+)?,-?[0-9]+(\.[0-9]+)?)" }
Example
<facsimile>
 <surface ulx="0uly="0lrx="400lry="280">
  <zone points="220,100 300,210 170,250 123,234">
   <graphic url="handwriting.png"/>
  </zone>
 </surface>
</facsimile>
Note

A point is defined by two numeric values, which should be expressed as decimal numbers. Neither number can end in a decimal point. E.g., both 0.0,84.2 and 0,84 are allowed, but 0.,84. is not.

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.prefix

teidata.prefix defines a range of values that may function as a URI scheme name.
Moduletei
Used by
Element:
Content model
<content>
 <dataRef name="token"
  restriction="[a-z][a-z0-9\+\.\-]*"/>

</content>
Declaration
teidata.prefix = token { pattern = "[a-z][a-z0-9\+\.\-]*" }
Note

This datatype is used to constrain a string of characters to one that can be used as a URI scheme name according to RFC 3986, section 3.1. Thus only the 26 lowercase letters a–z, the 10 digits 0–9, the plus sign, the period, and the hyphen are permitted, and the value must start with a letter.

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.sex

teidata.sex defines the range of attribute values used to identify the sex of an organism.
Moduletei
Used by
Element:
Content model
<content>
 <dataRef key="teidata.enumerated"/>
</content>
Declaration
teidata.sex = teidata.enumerated
Note

Values for attributes using this datatype may be defined locally by a project, or they may refer to an external standard.

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.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
Element:
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.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
Element:
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.

Schema tei_simplePrint: Macros

macro.abContent

macro.abContent (anonymous block content) defines the content of anonymous block elements. [1.3. The TEI Class System]
Moduletei
Used by
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.paraPart"/>
  <elementRef key="ab"/>
 </alternate>
</content>
Declaration
macro.abContent = ( text | model.paraPart | ab )*

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
   )*

macro.xtext

macro.xtext (extended text) defines a sequence of character data and gaiji elements.
Moduletei
Used by
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
 </alternate>
</content>
Declaration
macro.xtext = ( text | model.gLike )*

17.1 Summary of changes

The TEI simplePrint schema uses the TEI infrastructure and gaiji modules unchanged.

Module tei
Module gaiji

A subset of 45 elements is selected from the TEI header module. In addition, elements particDesc and settingDesc are provided from the corpus module. The class membership of particDesc is changed to ensure that it can only appear inside profileDesc. Secondly, a Schematron rule is added to the text element to ensure that elements term and biblFull can appear only in the header element, even though the schema permits them additionally in text.

Module header
Module corpus

Some attributes and attribute classes are removed. The range of values available for several attributes is constrained.

Class att.datcatdelete
Class att.declarabledelete
Class att.declaringdelete
Class att.rangingdelete
Class att.global.linkingchange
Class att.canonicalchange
Class att.editLikechange
Class att.pointingchange
Class att.global.renditionchange
Class att.placementchange
Class att.dimensionschange

The following unused model classes are removed.

Class model.certLikedelete
Class model.egLikedelete
Class model.entryPartdelete
Class model.glossLikedelete
Class model.oddDecldelete
Class model.offsetLikedelete
Class model.pPart.msdescdelete
Class model.placeNamePartdelete
Class model.placeStateLikedelete
Class model.specDescLikedelete

The following elements are modified by the TEI simplePrint specification, mostly by the addition of a processing model, but in other cases by additional constraints on the attributes they may have, or the values those attributes may take. Additional examples are also provided for some of them.

Element abchange
Element abbrchange
Element actorchange
Element addchange
Element addresschange
Element addrLinechange
Element <am>change
Element anchorchange
Element argumentchange
Element authorchange
Element backchange
Element biblchange
Element biblFullchange
Element biblScopechange
Element bodychange
Element bylinechange
Element cchange
Element castGroupchange
Element castItemchange
Element castListchange
Element cbchange
Element cellchange
Element choicechange
Element citchange
Element closerchange
Element codechange
Element corrchange
Element datechange
Element datelinechange
Element delchange
Element descchange
Element divchange
Element docAuthorchange
Element docDatechange
Element docEditionchange
Element docImprintchange
Element docTitlechange
Element editorchange
Element editorialDeclchange
Element emailchange
Element epigraphchange
Element <ex>change
Element expanchange
Element figDescchange
Element figurechange
Element floatingTextchange
Element foreignchange
Element formulachange
Element frontchange
Element fwchange
Element gchange
Element gapchange
Element graphicchange
Element groupchange
Element headchange
Element hichange
Element imprimaturchange
Element itemchange
Element lchange
Element labelchange
Element lbchange
Element lgchange
Element listchange
Element listBiblchange
Element measurechange
Element milestonechange
Element namechange
Element notechange
Element numchange
Element openerchange
Element origchange
Element pchange
Element particDescchange
Element pbchange
Element pcchange
Element personchange
Element placechange
Element postscriptchange
Element profileDescchange
Element publisherchange
Element pubPlacechange
Element qchange
Element quotechange
Element refchange
Element regchange
Element relatedItemchange
Element rhymechange
Element rolechange
Element roleDescchange
Element rowchange
Element rschange
Element schange
Element salutechange
Element segchange
Element setchange
Element sicchange
Element signedchange
Element spchange
Element speakerchange
Element <spGrp>change
Element stagechange
Element substchange
Element suppliedchange
Element tablechange
Element taxonomychange
Element fileDescchange
Element revisionDescchange
Element encodingDescchange
Element teiHeaderchange
Element TEIchange
Element termchange
Element textchange
Element timechange
Element titlechange
Element titlePagechange
Element titlePartchange
Element trailerchange
Element unclearchange
Element wchange
Notes
1
Many introductory tutorials on XML are available on the web, for example at http://www.w3schools.com/xml/. The way the TEI uses XML is fully documented in section v of the TEI Guidelines; a very basic introduction to TEI XML is also available at http://www.ultraslavonic.info/intro-to-xml. The formal specification of the XML language is at http://www.w3.org/TR/xml.
2
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 TEI elements is http://www.tei-c.org/ns/1.0
3
The relevant Internet 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.
4
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
Lou Burnard, Martin Mueller, Sebastian Rahtz, James Cummings, and Magdalena Turska. Date: January 2017