TEI Schema

Editorial schema and documentation for the Unlocking the Mary Hamilton Papers project

Editorial schema and documentation for the Unlocking the Mary Hamilton Papers project


Table of contents


Unlocking the Mary Hamilton Papers


Transcription manual and coding schema

David Denison, Tino Oudesluijs and Nuria Yáñez-Bouza


1. Document history

This XHTML document (last modified 10-09-2024) is derived from an ODD file created by David Denison. (The alphabet soup is briefly explained below.) That file started life in 2018 as an XML file produced by the Roma TEI customisation tool, together with an RNC schema derived from it. It was used by the editing team in the final couple of years of the project ‘Image to Text’, namely David Denison, Nuria Yáñez-Bouza and a number of research assistants (for names see Acknowledgements).

From 5 April 2020 it was turned into an ODD file which generated an RNG schema for the successor project, ‘Unlocking the Mary Hamilton Papers’. The ODD file and resulting schema have been continuously updated since then for new situations encountered by the editing team and as our knowledge of TEI broadens. The schema constrains the format of transcriptions and provides additional prompts and warnings in the oXygen XML editor.

Note on file formats: ODD stands for One Document Does it All, file extension .odd or .xml RNG stands for RelaxNG, more fully REgular LAnguage for XML Next Generation, file extension .rng RNC stands for RelaxNG compact syntax, more fully REgular LAnguage for XML Next Generation, file extension .rnc XHTML stands for eXtensible HyperText Markup Language and is a constrained version of HTML, file extension .html or .htm XML stands for eXtensible Mark-up Language, file extension .xml All of these file formats apart from RNC conform to the XML specification.

In parallel, a discursive transcription manual for internal use was created and maintained in Microsoft Word by Tino Oudesluijs, with input from Nuria Yáñez-Bouza. In September-October 2021, the contents of the manual were transferred to the present file by DD and partly reworked with input from NYB and TO, still mainly for use by the editing team.


2. Project and edition

'Unlocking the Mary Hamilton Papers' is an AHRC-funded project which ran from December 2019 to November 2023, to produce a scholarly edition in online form of the papers of Mary Hamilton (1756-1816), and conduct literary and linguistic research on the edited materials. The project members are Hannah Barker, Sophie Coulombeau, David Denison, Nuria Yáñez-Bouza, Tino Oudesluijs, Cassie Ulph and Christine Wallis. The editing team is David Denison, Nuria Yáñez-Bouza, Tino Oudesluijs, Cassie Ulph and Christine Wallis. For more detail on the project, please see the project website. For a brief formal description of the edition, see the edition DOI.

The bulk of Hamilton's papers are held in the John Rylands Research Institute and Library, and further materials have been sought from nearly a dozen libraries and archives in the UK and USA. The edition will include as much of the available material as can be reliably transcribed during the life of the project. It will be available initially as both diplomatic and normalised transcriptions, together with notes and metadata, plus images of each page transcribed. Text files of diplomatic and normalised transcriptions are available on request. The source XML files will be released after the end of the project. From spring 2022 the online edition appears in Manchester Digital Collections (MDC), and from September 2022 transcriptions are no longer available on the project website. What will probably be the last large-scale addition to the edition was made on 25 August 2023, further revised on 21 November 2023 and 29 July 2024, with 3201 items now available (see here), 1598 transcribed and 1603 untranscribed. Checking of transcriptions and mark-up continues, and more transcriptions may be added if and when resources permit. Note that for technical reasons, MDC counts the untranscribed manuscript volumes HAM/3/1 and HAM/3/2 as ‘transcribed’, in order to display detailed inventories of their contents.

The diplomatic transcription represents the original manuscript as closely as practicable, reproducing spellings, capitalisation, morphology, abbreviations and punctuation. It reproduces lineation and approximate position on the page, allowing easy comparison with the original. The exception is when a block of text is moved by the editors to prioritise logical sequence over physical position, such as when an author has squeezed a postscript into a blank space at the side or top of a(nother) page and we put it in the expected position to enhance continuity. The original position of moved text is indicated by ▼ in the transcription, and the new position by a footnote. Authorial errors, deletions and substitutions are shown. Annotations made after the original writing are shown and are distinguished from authorial text. Other features, such as place-names, non-literary speakers/writers directly quoted, foreign words, etc., are tagged in the TEI/XML file but not indicated in the display.

The normalised transcription attempts to represent the final intention of the author at the time of writing, and it also modernises many forms to standard present-day British spelling and morphology, corrects certain authorial slips, expands abbreviations, omits author-deleted text and ignores annotations. However, capitalisation, use of apostrophes in plurals or possessives, separated forms like him self, and punctuation are not adjusted. The normalised text is unformatted.

For a concise tabular summary of how various features are treated in diplomatic and normalised transcriptions, and also in the text files made available separately, please see the page Editorial policies.


3. Guidelines for transcription and mark-up

Examples from project XML files cited in these Guidelines are sometimes adjusted as follows:

  • Content or mark-up may be simplified if not pertinent.
  • The personography attribute @ref is mostly omitted from <persName> and <rs> tags.
  • One or more linebreaks may be introduced in long lines.

3.1. The TEI header


3.1.1. Title of item in the edition: <titleStmt>

The content of element <title type="item">, prominent in the XML file, is the title of that item in our edition and is the one displayed on the project website. It should normally follow one of the following formats: ‘Letter/Note/etc. from […] to […]’ or ‘Diary of […] (startdateenddate)’. Other titles begin with ‘Journal-letter’, ‘Copy/Copies’, or, less frequently, ‘Transcripts’, ‘Catalogue’, ‘Notes’, ‘Anthology’, ‘Commentary’, ‘Account book’, etc.

NB. Dates are always written out as ‘day [as cardinal number] month [as word in full] year’, e.g. 4 November 1783; see origDate below.

For the participants, namely author and (for letters) recipient, use the name by which they were known at the time of the document (with the exception of Mary Hamilton, who is referred to as such throughout the corpus). If they were previously or later known under a different name or title, please use the following formats:

Different personal title:

<title type="item">Letter from William Napier (later 7th Lord Napier) to Mary Hamilton</title> <title type="item">Letter from Lady Cremorne (formerly Dartrey) to Mary Hamilton</title>

Different name:

<title type="item">Letter from Anne Astley (later Agnew) to Mary Hamilton</title> <title type="item">Letter from Elizabeth Hamilton (née Onslow) to Mary Hamilton</title>

NB. When confronted with multiple forenames, e.g. Charlotte Margaret Gunning or Martha Carolina Goldsworthy, go with the form most often used by that person when signing as author. So if Charlotte Gunning signs most of her letters ‘Charlotte Margaret Gunning’ (or the equivalent in initials), use that for <title type="item">, rather than ‘Charlotte Gunning’.

If part of a document is missing, the catalogue (mostly ELGAR) will usually open its summary with something like ‘Incomplete note/letter from […] to […]’. Use this formula in <title type="item"> as well (see for example HAM/1/13/10, HAM/1/15/2/7).

The title in <titleStmt> is to be repeated in <msItem> but NOT necessarily in a third title element, namely <collection type="title"> in <msIdentifier>, where it is commented out in the XML. The latter differs in some cases, as it consists of the first line of the summary as provided on the website of the catalogue in question. In probably the majority of items, however, all three titles agree.


3.1.1.1. Documents written on behalf of another

Items that are possibly written on behalf of another person (called here, for want of a better word, a ‘beneficiary’) raise questions about who is author, who is sender, and whether the item's title should include an ‘on behalf of’ statement. The main factors to consider are whether the writer wrote from dictation, how the text refers to the beneficiary, and who signed the document if there is a signature. Other factors may come into play, but for now our guidelines are as follows:

1. Text refers to beneficiary in first person singular, but writer is not the same person

  • The beneficiary is considered to be the author, since the writer is in effect writing to dictation.
  • The writer
    • appears in <handDesc> as the main hand,
      <handNote xml:id="major_hand"    scope="major"    medium="ink"    scribe="secretary"    scribeRef="psn:AnA">Hand of writer of the main text, probably Anne Astley.</handNote>
    • is one of the persons in <correspAction type="sent">,
    • but does not appear in the title.
  • The beneficiary
    • appears as <author> in <msItem>,
    • is one of the persons in <correspAction type="sent">,
    • is listed in the title (format ‘Note/Letter on behalf of [beneficiary] to [recipient]’), as in LWL Mss Vol. 75 (item 47):
      <title type="item">Note on behalf of Mary Delany to Mary Hamilton</title> <author ref="psn:MD">Delany, Mary</author> <correspAction type="sent">    <persName ref="psn:AnA">Astley, Anne</persName>    <persName ref="psn:MD">Delany, Mary</persName>    […] </correspAction>
    • If in addition the beneficiary has signed the letter, they are also listed as writer of the signature in <handDesc> (minor hand), as in LWL Mss Vol. 75 (item 41):
      <handNote xml:id="minor_hand_1"    scope="minor"    medium="ink"    scribe="author"    scribeRef="psn:MD">Hand of writer of the signature, Mary Delany.</handNote>

2. Text refers to beneficiary in third person, and writer is not the same person

  • It is normally the writer who is then considered to be the author, and no mention is made of the item being ‘on behalf of’ someone (format ‘Note/Letter from [ author ] to [recipient]’), whether the item
    • is signed by the writer/author, as in GEO/ADD/3/84/1, LWL Mss Vol. 75 (items 57, 65),
    • or is not signed at all, as in LWL Mss Vol. 75 (item 35):
    <title type="item">Letter from Georgina Mary Anne Port to Mary Hamilton</title>
  • In other words, the document is treated just like any other item containing information about a third party.

3. Intermediate between 1 and 2

A special case is an item clearly conveying a third-person message on behalf of someone who could not, for whatever reason, write it themself.

  • Then the title may include the names of both writer/author and beneficiary (format ‘Note/Letter from [ author ] on behalf of [beneficiary] to [recipient]’), as in LWL Mss Vol. 75 (item 49):
    <title type="item">Note from Anne Astley on behalf of Mary Delany to Mary Hamilton</title>
  • The beneficiary does not otherwise appear in any header element, apart from the summary.

A decision to include ‘on behalf of’ in the title in such intermediate cases may involve delicate judgements of content and style, always subject to the need for consistency among similar items.

  • Examples of inclusion are LWL Mss Vol. 75 (items 38, 39), both of which start along the lines of ‘[Beneficiary] sends their best compliments’, indicating that the item was written by the author because the beneficiary could not.
  • Two other examples are LWL Mss Vol. 75 (items 55, 56), where Georgiana Mary Anne Port writes on behalf of Mary Delany, despite Port referring to Delany only in the third person and signing the items herself.

3.1.2. Contributions by project team and others: <editor> and <respStmt> in <editionStmt>

The element <respStmt> is retained for research assistants and volunteer or student transcribers, coders, etc. who worked on the file, and for general contributors to archiving, cataloguing and imaging from outside the Unlocking project team. It is no longer needed for members of our team, all of whom are declared differently in <editionStmt> as <principal> or <editor>. Please see <revisionDesc> for entering and dating file actions by members of the team and others.

<respStmt xml:id="EDu">  <resp>transliterator</resp>  <name>   <persName>Ducat, Emily</persName>   <affiliation>undergraduate student, University of Manchester</affiliation>  </name> </respStmt> <respStmt xml:id="GT">  <resp>TXT and XML encoder</resp>  <name>   <persName>Tutt, Georgia</persName>   <affiliation>MA student, University of Manchester</affiliation>  </name> </respStmt> <respStmt xml:id="CWh">  <resp>archivist/paleographer</resp>  <name>   <persName>Whittick, Christopher</persName>   <affiliation>County Archivist, East Sussex County Council</affiliation>  </name> </respStmt>

3.1.3. Acknowledging funders: <funder> in <editionstmt>

The following is to be added to newly transcribed texts [i.e. in the Unlocking project]:

<funder>Transcription and XML version created as part of project 'Unlocking the Mary Hamilton Papers', funded by the Arts &amp; Humanities Research Council under grant AH/S007121/1.</funder>

Files dating from the Image to Text project will have one of these entries:

<funder>XML version: Research Assistant funding in 2013/14 provided by G.L. Brook bequest, University of Manchester.</funder> <funder>XML version: Research Assistant funding in 2014/15 [or 2015/16 or 2017/18] provided by the Department of Linguistics and English Language, University of Manchester.</funder> <funder>XML version: Research Assistant funding in 2016/17 provided by The John Rylands Research Institute.</funder> <funder>Transcription and Research Assistant funding in 2018/19 provided by the Student Experience Internship programme of the University of Manchester.</funder>

3.1.4. Responsibility for sets of files: <authority> in <publicationStmt>

The following formula is used for newly transcribed texts:

<authority>First edited in the project 'Unlocking the Mary Hamilton Papers' (Hannah Barker, Sophie Coulombeau, David Denison, Tino Oudesluijs, Cassandra Ulph, Christine Wallis &amp; Nuria Yáñez-Bouza, 2019-2022).</authority>

When checking older files that were previously transcribed in the Image to Text project, please make sure that the text is as follows:

<authority>First edited in the project 'Image to Text' (David Denison &amp; Nuria Yáñez-Bouza, 2013-2019), now incorporated in the project 'Unlocking the Mary Hamilton Papers' (Hannah Barker, Sophie Coulombeau, David Denison, Tino Oudesluijs, Cassandra Ulph, Christine Wallis &amp; Nuria Yáñez-Bouza, 2019-2022).</authority>

3.1.5. Number of words: <measure> in <extent>

The number of words in each item is computed by a script run on the normalised text files, where split words have been reassembled at a line-end. Punctuation is ignored. The word count for each item is then imported back into the XML file. The figures produced by CQPweb may be higher if tokens (e.g. can't as 2 tokens) and/or punctuation are counted.


3.1.6. Title in repository catalogue: <msIdentifier>

In the element <msIdentifier> there are various items beginning ‘<collection type=...’ enclosed in XML comments <!-- ... --> because not used in MDC. As with the <title type="item"> (see Title of item in edition above), copy over the information given in the repository's catalogue.

NB. <!-- <collection type="title"> --> is to be left as it is in the repository's catalogue, without any corrections not yet incorporated there.

An example from HAM/1/12/48:

<msIdentifier>  <country>United Kingdom</country>  <settlement>Manchester</settlement>  <institution>University of Manchester</institution>  <repository>The John Rylands Library</repository>  <!-- <collection type="website">Manchester Digital Collections</collection> -->  <collection type="archive">Mary Hamilton Papers</collection>  <!-- <collection type="subarchive">GB 133 HAM/1 Correspondence</collection> -->  <!-- <collection type="series">GB 133 HAM/1/12 Correspondence from Lady Charlotte Finch and Harriet Finch</collection> -->  <!-- <collection type="number">48</collection> -->  <!-- <collection type="title">Letter from Charlotte Finch to Mary Hamilton</collection> -->  <idno type="shelfmark">HAM/1/12/48</idno> </msIdentifier>

Make sure to copy the information from ELGAR (or, where relevant, another repository's catalogue) for the correct description of the series name as well as the title.


3.1.7. Title and language in MDC: <msItem>

<msItem> is the element from which MDC takes the title of the item. Make sure that <title> matches <title type="item"> (the element used by the project website). Leave the <textLang> element as shown when the document is in that language.

<msItem>  <title>Letter from George, Prince of Wales, to Mary Hamilton</title>  <textLang mainLang="eng">English</textLang> </msItem>

3.1.8. Number of sheets: <measure> in <supportDesc>

In this <measure> element we count sheets [of paper], like the JRRIL (John Rylands Research Institute and Library), and not pages [of text], like the Royal Archives. According to JRRIL staff, ‘sheets’ is standard practice. For the GEO files, we will have to base ourselves on the images in order to determine how many sheets were used. If the number of sheets is still unclear, the archivist should be consulted if possible.

Make sure there is no period after the number of sheets. Also make sure to have ‘sheet’ rather than ‘sheets’ when there's only one:

<measure unit="sheets" quantity="1">1 sheet</measure>

For <condition> in the HAM papers, please copy what is provided in the catalogue. If no condition is provided, please word as follows:

<condition>Not stated</condition>.

Where for the HAM papers we copy <condition> from the catalogue, the GEO catalogue only specifies the physical description, i.e. ‘loose manuscript paper(s)’. After correspondence with the Head of Digital Services, William & Mary Libraries (24/03/2020), this has been put in the element <collation>, and we omit the element <condition>. Future catalogue information from other libraries can go into <condition> and/or <collation> as appropriate.


3.1.9. Hands: <handDesc>

This element in the header is to be written out as follows. This example has 3 hands: Lady Dartrey as the author of the document, the addressee Mary Hamilton as a minor hand (probably), and a third, unknown writer:

<handDesc hands="3">  <handNote xml:id="major_hand"   scope="majormedium="inkscribe="author"   scribeRef="psn:PHD">Hand of author of the main text, Lady Dartrey.</handNote>  <handNote xml:id="minor_hand_1"   scope="minormedium="inkscribe="addressee"   scribeRef="psn:MH">Hand of writer of the [date/annotation/reference/etc.]    at the [top/bottom/etc.] of p.[1/2/3/etc.], probably Mary Hamilton.</handNote>  <handNote xml:id="minor_hand_2"   scope="minormedium="pencilscribe="unknown"   scribeRef="psn:unknown">Hand of unknown writer of the [date/annotation/reference/etc.]    at the [top/bottom/etc.] of p.[1].</handNote> </handDesc>

The following conventions have been adopted:

  • Do not specify whether a document is a letter or note in @scribeRef. Only mention ‘main text’.
  • End the content of each <handNote> with a period.
  • In the description of the hand, use either ‘author’ (for main hands), ‘writer’ (for someone writing on behalf of the author, see also Documents written on behalf of another above) or ‘writer’ (for minor hands). Do not use ‘scribe’, ‘annotator’, etc.
  • Be sure to add the name of the ‘author’ as well as any names of ‘writer’ when known.
  • For the name of a hand in @scribeRef, please use the name as given in the first line of the catalogue where the document is from (in this case ‘Lady Dartrey’), not the canonical name we have decided on for the personography, in this case ‘Dawson (née Freame), Philadelphia Hannah, Baroness Cremorne’.
  • The optional attribute @cert may be used for major hands that are not entirely certain, with possible values "high | medium | low". Do not use @cert with minor hands.
  • When fairly sure of the identity of a minor hand, please enter "addressee | relative | secretary | etc." in @scribe (rather than "unknown"), as well as "psn:xml:id" rather than "psn:unknown" in @scribeRef.
  • Please use ‘probably’ (see example), and not ‘possibly/likely/etc.’
  • When specifying the location of an annotation by a minor hand on a page, use the preposition ‘at’ instead of ‘in’ for consistency.
  • When there is only one minor/major hand, the suffix _1 is unnecessary.

We permit the author to be entered a second time as a minor-hand writer of annotations that are made by them after the original writing (occasionally, as in HAM/2/4, long before) and not considered to be part of the text. See especially Addition vs. annotation below.

NB. When a hand is cross-referenced in the body of the text, remember to add # , e.g.

<note hand="#minor_hand_2" place="top-right">48<note>

3.1.10. Date of writing: <origDate> in <fileDesc>

This element contains the date of writing. It should always have the attribute @calendar="Gregorian" and normally also @when, and the date in text, as shown:

<history>  <origin> <origDate calendar="Gregorian" when="1785-09-30">30 September 1785</origDate>  </origin> </history>

If the date is unknown, please include only @calendar and not @when or @when-custom, and put ‘n.d.’ as text:

<history>  <origin> <origDate calendar="Gregorian">n.d.</origDate>  </origin> </history>

This is similar to how we treat undated documents in <correspDesc> (see further Overview of dating of letters). As there, it is permissible instead of @when to use @notBefore and/or @notAfter with a <precision> element (see <correspDesc> below). For an item composed over a period, e.g. a diary or a journal-letter, use @from and @to instead. In the latter case, dates of writing in <origDate> will necessarily differ from the single <date> of sending in <correspDesc>:

<history>  <origin> <origDate calendar="Gregorian" from="1789-06-18" to="1789-06-23">from 18 to 23 June 1789</origDate>  </origin> </history>

Note that we treat date of writing of a journal entry as if written on the day concerned, even when a bunch of entries were apparently composed together at a later date.

Note too that the value of @when, @notBefore, @notAfter, @from or @to is normally yyyy-mm-dd. Incomplete dates have the formulas yyyy-mm or yyyy, though –mm-dd (without year) is now disallowed. The attribute @when cannot combine with any of the other attributes discussed here.

When a date is given in text as content of an element like <origDate>, we always use the format ‘day [as cardinal number] month [as word in full] year’, and in that order. There is no -st, -nd, -rd, -th on the date, no comma, nor do we add a leading zero for dates 1-9:

<origDate calendar="Gregorian" when="1774-07-01">1 July 1774</origDate>

3.1.11. Responsibility for editing: <projectDesc>

For newly transcribed texts [i.e. in the Unlocking project, not Image to Text] in the GEO papers, word as follows:

<p>This set of letters transliterated and encoded as TEI/XML files by post-doctoral researchers in the 'Unlocking the Mary Hamilton Papers' project. Work supervised by David Denison and Nuria Yáñez-Bouza. Files additionally offered for adaptation at William &amp; Mary for the Georgian Papers Programme.</p>

For newly transcribed texts, word as follows:

<p>Editing supervised by David Denison and Nuria Yáñez-Bouza.</p>

3.1.12. Sending and receipt of letters: <correspDesc>

When the date of receipt is noted in the manuscript (characteristic of MH as recipient), a <date> element should be added to <correspAction type="received">. And if the only explicit date in the letter is the date of receipt (as with many of the GEO letters sent by GPW), the <date> in <correspAction type="sent"> should have the attributes @when OR @notBefore and/or @notAfter, as well as a <precision> element (within <date>!). For example:

<correspAction type="sent">  <persName ref="psn:GPW">George, Prince of Wales</persName>  <placeName>[…]</placeName>  <date notBefore="1779-08-28"   notAfter="1779-08-29">c.29 August 1779  <precision match="@notBefore"    precision="medium"/>   <precision match="@notAfter"    precision="high"/>  </date> </correspAction> <correspAction type="received">  <persName ref="psn:MH">Hamilton, Mary</persName>  <placeName>[…]</placeName>  <date when="1779-08-29">29 August 1779</date> </correspAction>

On the different formats for a date as attribute value and as element content, please see <origDate> above. On the different dates that may be recorded for a letter, see further Overview of dating of letters below.

For the <placeName> elements, fill in the place-name mentioned in the address or dateline of the letter. If only a house or other similar habitation is mentioned (e.g. St. James, The Queen’s Lodge), use the location of the habitation as it was at the time of writing, e.g. London for St. James, Windsor for the Queen’s Lodge. Historic hamlets, e.g. Cowslip Green, are to be considered as places in their own right and so are also tagged <placeName>. Be mindful of places such as Kew that are now part of London but weren’t in the late 18th and early 19th centuries.

If no place-name is mentioned anywhere in the letter/note or address, please use <placeName>unknown</placeName> in both the sent and received entries for <correspDesc>, unless one can be safely inferred, in which case the attribute @cert is added:

<correspAction type="received">  <persName ref="psn:MH">Hamilton, Mary</persName>  <placeName cert="medium">Taxal, Chapel-en-le-Frith</placeName> </correspAction>

For personal names in <correspDesc>, we go with that used by the person in question in their earliest piece of correspondence to Mary Hamilton. For example:

<persName ref="psn:PHD">Dartrey, Philadelphia Hannah (née Freame), Lady</persName>

and not ‘Dawson/Freame, Philadelphia, Lady’, since Lady Dartrey did not sign her earlier letters to Mary Hamilton as such.

Please consult the personography. Enter the name as follows:

<persName ref="psn:xml:id">surname [(née birth name)], forename[s], title(s))]</persName>

Obviously the optional née parenthesis applies only to a married woman, but a version with masculine can be used for a man who changes his surname, usually on adoption or on acquiring an inheritance. Only the title(s) used in the canonical form need be included.

Very occasionally, the optional attribute @cert may be added for a personography identification that is uncertain, with possible values "high | medium | low".


3.1.13. File history: <revisionDesc>

Please enter actions in <revisionDesc> as in the following example, in descending order of date:

<change when="yyyy-mm-dd" who="#T0">Transliteration and TEI mark-up revised.</change>

NB. Remember to include # before an editor's or contributor's xml:id. Keep the default text, for consistency.

For newly transcribed files, the default text is

<change when="yyyy-mm-ddwho="#CU">Transliteration and TEI mark-up completed.</change>.

We specify year, month and day. If the transcription is done over a period of days (or longer!), we only enter the date of completion.

We use <respStmt> in <editionStmt> to record transcribing or other activities provided by others (see <respStmt> above). Date of completion of their contribution should be recorded in a <change> statement here in <revisionDesc>, though not usually for regular archivists, etc., whose contribution to a specific file is not easily dated.


3.2. Structural elements of the text


3.2.1. Page begins: <pb>

All transcriptions with any text at all have a <pb n="1">. The element <pb> is always preceded by a blank line (as a visual aid in the XML file itself — there is no effect on the displayed transcriptions). It is immediately preceded by <lb/>, except in the case of <pb n="1"/>. It can be followed by <cb> on the same line but nothing else other than a footnote, <note resp=…> (so please put any <note hand=…> on the following line with its own <lb/>). The form is always <pb n="nn"/>, where nn = 1, 2, 3, etc. Sequential page numbering is not handled automatically but is the editor's responsibilty. After the first <pb>, an element such as <opener> or <p> must be opened to contain text. See also Divisions below.


3.2.2. Column begins: <cb>

If a single image displays two pages, as is frequently the case for HAM letters from the JRRIL, do not code as separate pages:

[NOT LIKE THIS] <lb/><pb n="page number"/> […] […] [NOT LIKE THIS] <lb/><pb n="next page number"/>

Instead code as two columns:

<lb/><pb n="page number"/><cb n="1"/> […] […] <lb/><cb n="2"/>

Don't repeat <pb> before the second <cb>. When <cb> is the first element in a line, necessarily therefore at least n="2", it must be preceded by <lb/>, and again before that, a blank line. Such blank lines have no effect in XML but they help an editor to quickly relate the transcription to the image.

Although use of ‘column’ is a bit misleading, because for the author they were separate pages folded back to back, we will continue using <cb> for the JRRIL letters (advice in correspondence with the JRRIL Imaging Manager and TEI Project Co-ordinator). It does mean, however, that each <pb> corresponds to one image.


3.2.3. Line begins: <lb>

The element <lb> can have an optional @rend that applies to the following line rather than a whole element (see also Overview of attribute @rend below), with possible values "indent", "center" or "align-right" (but not "inline", which would be redundant at line beginning). With the present XSLT display script, <lb rend="center|align-right"/> does not create an extra blank line after itself, which can be useful, as other elements with such a @rend attribute create a blank line afterwards and also force any items on the same XML line but outside the @rend element onto a separate line in the display.

Represent wide blank vertical spaces in the original with an extra empty <lb/>, e.g. in HAM/1/8/2/22:

[…] </dateline> <lb/> <lb/> <lb/><salute n="opening">My dear Friend,</salute></opener>

3.2.4. Paragraphs: <p>

After the opening paragraph, the element <p> is used for new paragraphs as visually indicated by the author of the text, e.g. by an indented new line, a blank line inbetween two other lines, a previous line that ends well short of the right margin, or an inline mark (e.g. GEO/ADD/3/82/4, end of p.1). Occasionally there is a longer than usual space before a semantic paragraph that starts in midline (e.g. HAM/1/2/31, HAM/1/15/2/3). Such ‘new paragraphs’ that continue on the same line need <p rend="inline"> to prevent the display script from moving to a new line:

<lb/>disappointed -- let them dine <choice n="hyp"><orig>comfort- <lb/>ably</orig><reg>comfortably<lb/></reg></choice> together &amp; pay their rents when <lb/>I come home -- </p> <space unit="chars" quantity="5"/><p rend="inline">I am certainly <lb/>better, but I have written to <persName ref="psn:tbc">Hall</persName> -- 

The author's desire for a new para has clearly been trumped by the need to save paper. Our website retains the author's layout. We don’t mark a new paragraph inferred only from content and without any visual sign.

When a line starts with a dash, i.e. -- , don’t mark it as the start of a new <p rend="indent">, just start the line with -- (i.e. space hyphen hyphen space) within the current <p>.

In the header, <p> never has an attribute. In the body it may have the attribute @rend (see Overview of attribute @rend), with values "align-right" or "center" (which shift the whole paragraph), or "indent" (which indents the first line only). As noted for the example just above, the value "inline" is needed in some cases; see also the second example in Postscripts below and the fuller explanation in Overview of attribute @rend.

As for the end of a paragraph, we routinely have to end <p> in midline before <closer>, because the current TEI guidelines do not allow <closer> within <p> (cf. Forney et al.’s paper 2020). To avoid a line-break in website displays after the closing </p> tag, rend="inline" must be added to the opening <closer> tag that follows:

<lb/>Adieu -- </p> <closer rend="inline"><salute n="closing">I am and for ever will be <seg type="closeFormula">your</seg></salute> <lb/><signed rend="align-right"><persName>John Dickenson</persName></signed></closer>

3.2.5. Divisions: <div>

The element <div> is a subdivision of <body> (at least in our project, since we do not use <front> or <back>). It is needed in one or more of three different situations, discussed in separate subsections below.

Note that if an item contains a <div>, the whole of the <body> must be distributed between one or more <div>s, with no residue (such as a footnote or annotation) orphaned outside any <div>.

Note also that if any whole <div> is written by a different hand from any other, then all the <div>s in the item must have the attribute @hand. Furthermore, as div/@hand does not show on-screen, a footnote after an opening <div> tag should explain the change of hand.

Possible values for the obligatory attribute @type are:

  • "letter" (for the first <div> of an item that the catalogue describes as a letter, or of an embedded letter)
  • "note" (for an item that the catalogue describes as a note)
  • "continuation" (when an author indicates resumption of letter-writing)
  • "entry" (for a diary/journal entry)
  • "address" (for the ‘direction’, which may be just a name, or the postal address in a letter or note)
  • "cutting" (for a newspaper cutting)
  • "part" (generic type for a <div> that doesn't fit any of the others)

Don't leave a blank line between a closing </div> and the next opening <div>: the 8-space indent is enough to make the div change conspicuous in the XML.

<lb/>[...] <seg type="bodySalute">my <persName>Mary</persName>/seg> <emph rend="underlined">is the first upon her List</emph> -- </p>         </div>         <div type="continuation"> <p>I <choice><orig>staid</orig><reg>stayed</reg></choice> at home all
<lb/>will write for herself -- to you</p>         </div>         <div type="continuation"> <lb/><dateline>23 -- </dateline> <p rend="inline">this morning I went to [...]

NB. The first of the two examples above is likely to be problematic in MDC without some recoding, as it involves a midline div and para break without rend="inline" on the second para.

If a div break coincides with a page break, please make sure that that the div break comes first, so that <pb> and its customary preceding blank line occur at the start of the new <div>:

[…] I mean <persName ref="psn:LCM">Lady Stormont</persName>.</p></postscript> <lb/>         </div>         <div type="address"> <lb/><pb n="3"/> <lb/><p><address><addrLine>To […]

3.2.5.1. Diaries and journal-letters

In a diary-like structure with explicit, usually sequential indication of days, use one <div> for each day, even if it’s clear that several entries were written together at a later point in time. However, in the routine case of an ordinary letter that mentions recent events without systematic and explicit marking of the different days, there is no need for <div>s on that account.

If a journal-letter was written over several days (e.g. some of John Dickenson’s letters), although the catalogue records the date when the letter was started, we record in <origDate> the period over which it was written, and in <correspAction type="sent"> the date it was sent. See further Overview of dating of letters.

A <div> can include any of the elements discussed in Opening and closing elements of a letter, e.g. openers, paragraphs, closers, etc. However, when a letter has been put aside by an author and later resumed, <div type="continuation"> doesn't need a new <opener>; and likewise with <div type="entry"> in a diary or journal-letter. If for example a day of the week is mentioned, just use <dateline> (containing a <date> tag if the date can be worked out), followed by <p>:

        <div type="continuation"> <lb/><dateline><date when="1791-08-29">Monday</date> -- </dateline> <p rend="inline">I had just filled my scanty paper when [...]

3.2.5.2. Multiple letters or notes in a single item

For multiple letters, whether embedded or sequential, each begins with <div type="letter">; see for example HAM/1/2/21 and HAM/1/11/29, respectively. Likewise for multiple notes, except that they begin with <div type="note">.

NB. If the letters or notes are written by different hands, use the attribute @hand in every <div> (and not <handShift>).


3.2.5.3. Addresses

If a document has a destination address at (or moved to) the end, the preceding content of the letter (including annotations and postscripts) and the address should each be put in their own <div>.

Two <div>s cannot intersect. If, say, the last page has the address sandwiched between postscripts or paragraphs, move the address and its <div> to the end, using <anchor> and <ref> to show the actual physical order on the page; see Moved text below.

An annotation on the same page as the address should be included in the address <div> if it concerns a date, name, address line, place-name, etc. Otherwise include it at the end of the preceding <div>.

The address is coded as follows. First the obligatory element <p>, containing <address> (although annotations, free marks, single sheet remarks, etc. go outside <address> and inside <p>). There will almost always be a <persName> and/or a <placeName>. If there is any other text in the address that does not belong in either of these elements, such as the preposition To (which frequently occurs in the line above the name of the addressee), wrap lines inside <addrLine>. Lines containing only a place- or personal name don't need <addrLine>. After all elements in the address have been coded, close with </address> and </p> before closing the division with </div>. A number of points are illustrated in this elaborate example (albeit simplified a little here):

        <div type="address"> <lb/><p><note resp="#CW">Gummed wafer with imprint 'J'.</note> <lb/><note resp="#CW">Postage mark in black ink dated 23 November 1798.</note> <lb/> <lb/><address><addrLine rend="align-right">single</addrLine> <lb/><addrLine><emph rend="underlined">To</emph></addrLine> <lb rend="indent"/><persName>M<hi rend="superscript">rs</hi> Dickenson</persName> <lb rend="center"/><addrLine>Leighton House</addrLine> <lb rend="center"/><placeName>Leighton Buzzard</placeName> <lb rend="center"/><placeName>Bedfordshire</placeName></address> <note resp="#CW">The address is written vertically.</note></p> <lb/> <lb/><note resp="#CW">Remains of gummed wafer.</note>         </div>

If both a preposition and a <persName> or <placeName> occur on the same line, wrap them both inside <addrLine>:

<lb/><addrLine>near <placeName>Chapel le Frith</placeName></addrLine>

If a <placeName> crosses a line, extend <addrLine> around it as well:

<lb/><addrLine>near <placeName>Chapel le <lb/>Frith</placeName></addrLine>

Occasionally, a single address line written over a fold gets broken up by unfolding into fragments scattered higgledy-piggledy around the page, usually angled in different directions, e.g. in HAM/1/6/3/1. Please don't try to recreate the layout of the unfolded image with <anchor>s and <ref>s. Instead, just give the line as if it had not been fragmented and add a footnote with the following format:

<note resp="#…">This line appears on the back of the letter at the [placement] of the page. The [addressee's name|etc.] is split in [number], with [number] different orientations, by unfolding.</note>

3.2.5.3.1. Frank signatories

Someone, usually an MP, may provide the author with a free frank. They write out the destination address, add their own name and usually give the location and date of doing so. Because this must be done before the letter is sent, what they write is not classed as an annotation. Make sure to

  • Add the signatory to <handDesc> as a minor hand with "frank-signatory" as the value of @scribe, and put that hand in the attribute @hand in <div type="address">. (As always, this means that every other <div> in the document must have @hand too.)
  • Add a footnote after the <div> tag to note and explain the change of hand from the previous <div>.
  • Wrap the signatory's <placeName> and <date> (if given) in a <dateline> element placed before and therefore outside <address>, as the dateline is not part of the actual address, though it does belong inside the <div>:
    <handNote xml:id="minor_hand_2" scope="minor" medium="ink" scribe="frank-signatory" scribeRef="psn:WDev">Hand of writer of signature on p.2, William Devaynes MP.</handNote> […] […]         <div type="address" hand="#minor_hand_2"><note resp="#DD">The address is in the hand of the provider of the frank, William Devaynes, MP for Barnstaple 1784-1796.</note> <lb/><pb n="2"/> <lb/><p rend="center"><placeName>London</placeName> <date when="1786-06-10">Tenth June 1786</date> <lb/><address><persName><choice><abbr>J.</abbr><expan>John</expan></choice> Dickenson Esq</persName><note resp="#CW">FREE frank in red ink.</note> <lb rend="indent"/><addrLine><persName>Sir <choice><abbr>W</abbr><expan>William</expan></choice> Wake</persName>s</addrLine> <lb rend="indent"/><addrLine>Courteen Hall</addrLine> <lb rend="indent"/><placeName>Northamptonshire</placeName> <lb/><addrLine><persName>Wfreedevaynes</persName></addrLine> <note resp="#CU">This seems to be ‘W free devaynes’ written all as one word.</note></address></p>         </div>

3.2.5.4. Self-embedded <div>

It is sometimes appropriate to embed one <div> within another, for example if an item is split into <div>s for one of the usual reasons, and there is, say, a quoted letter inside one of those (as in HAM/1/6/8/1). Note, though, that the whole of the outer <div> must then be distributed between one or more embedded <div>s, with no residue (such as a footnote or annotation) orphaned outside any <div>. In other words, <div> behaves just like <body> when it contains a <div>. This means that the embedded <div> forces us to close the outer <div> before it and start a new one (typically with @type="continuation") after it, even if logically we might have preferred simply to embed the inner <div> without closing the outer one.


3.3. Opening and closing elements of a letter

The normal structure of a letter contains the following elements:

  • opener
  • paragraph(s)
  • closer

The relative order is fixed, and these three elements cannot overlap or be embedded in one another. A paragraph core is obligatory, the others not. About three quarters of our letters have openers, and over 90% have closers.

Postscript(s) are another optional element at this level (some 35% of our letters). The element <dateline> can function either at the same level or embedded in one of the high-level elements. All the elements mentioned here that are specific to letters are discussed in the following sections, plus the lower-level elements <salutation> and <date>.


3.3.1. Openers: <opener>

The opener ‘groups together dateline, byline, salutation, and similar phrases appearing as a preliminary group at the start of a division, especially of a letter’ (TEI Guidelines). In this edition, <opener> can include the following elements: <dateline>, <date> (inside <dateline>), <placeName> (also inside <dateline>), and <salute n="opening">.

NB. <opener> refers to the time of production (TEI Guidelines). Therefore metadata to do with the date received rather than date sent, as is typical of Hamilton’s annotations, should appear outside <opener>. (On <date> in this context, with or without a <dateline> wrapping, see Dateline.)

A salutation such as ‘My dear X’ at the very start of the letter is tagged with <salute> inside <opener>.

NB. If a letter doesn't begin with a salutation, the first sentence belongs to <p> rather than <opener>. Since <salute> is disallowed in <p>, a salutation later in that sentence, as in e.g. ‘I have so missed you my dear X, […]’, is instead marked with the project-specific tag <seg type="openSalute"> (see Salutations and Overview of person references).

Each <div> of a multi-div document can in principle have its own opener, but when a <div type="continuation"> is used, <opener> is not repeated (as already noted under Diaries and journal-letters above). If a weekday is mentioned to indicate when the letter was continued, use only <dateline> (containing <date> if a date is given or can be inferred). That <dateline> element leads straight into <p>.

<opener> has an optional attribute @rend for rightwards shifting of the content, see also Overview of @rend.


3.3.2. Closers: <closer>

A <p> element needs to be closed before a <closer> is opened; see also Paragraphs.

The closer ‘groups together salutations, datelines, and similar phrases appearing as a final group at the end of a division, especially of a letter’ (TEI Guidelines). In this project, all text in <closer> should be inside one of the elements <salute n="closing">, <seg type="closeSalute">, <seg type="closeFormula">, <dateline>, <note> or <signed>, leaving no untagged text.

If the text leading up to the closer includes words and phrases such as ‘adieu’, ‘God bless you’, ‘Give my love to X’, ‘remember me to X’, etc., they should all be tagged as part of the preceding <p> (but see also <salute n="closing">).

Since <closer> (like <opener>) refers to the time of production, an annotation to do with the time of receiving the letter should sit outside.

It is possible to have more than one <closer> in a document, e.g. one in the main body and a second one

  • inside a <postscript> (see Moved text for an example)
  • after a <postscript> (e.g. needed to wrap a dateline there)

<closer> has an optional attribute @rend for rightwards shifting of the content, see also Overview of @rend.


3.3.2.1. Signatures: <signed>

When the author signs, the name, wrapped in <persName>, goes in <signed>. The element <signed> goes inside <closer> but after and outside <salute> (if present).

Often a signature is written more quickly than most of the text, and as such does not always clearly contain all of the initials one is looking for. The guideline here is to transcribe the initials as close as possible to the original, and when a doubtful letter is at least possible, to transcribe it. For example, when Harriet Finch signs a letter with a clear capital H plus a mark to the right that could be (part of) an F, then transcribe HF (and code each initial with the appropriate <choice>, <abbr> and <expan> elements). Only when there is clearly nothing more should we transcribe just H.

When initials are written in one movement of the pen and are thus attached, keep the <choice> elements for each initial together, without a space between them, to capture this in the diplomatic transcription, but add a space after the forename(s) inside <expan> for the normalised transcription, for example:

<choice><abbr>M</abbr><expan>Martha </expan></choice><choice><abbr>C</abbr><expan>Carolina </expan></choice>Goldsworthy

3.3.3. Salutations in opener and closer: <salute>

Salutations concern references to the addressee. Those in <opener> or <closer> are enclosed in <salute> with the attribute @n, value "opening" or "closing" as appropriate.

NB. For salutations inside <p>, where <salute> is disallowed, see the use of project-specific tags in Segments and Overview of person references.

The attribute @rend does not need to be specified in <salute> (this can be done in <opener>, <closer>, or indeed <lb>; cf. Overview of @rend).


3.3.3.1. <salute n="opening">

<salute n=”opening”> sits inside <opener>, as do the various possible elements pertaining to the creation of the document such as <dateline>, <date>, <placeName>, etc. when situated at the top of the letter:

<lb rend="align-right"/><opener><dateline><placeName>Taxal</placeName> <date when="1772-02-10">February 10<hi rend="superscript">th</hi>: 1772</date></dateline> <lb rend="indent"/><salute n="opening">My Dear <persName>Miſs Hamilton</persName></salute></opener> <p rend="inline">may justly <lb/>accuse me of neglect. I dont know how it was, but at
<lb/><opener><salute n="opening">Dear Sir,</salute></opener>

3.3.3.2. <salute n="closing">

  • The closing <salute> wraps text at the start of <closer> that does not go inside other elements such as <seg type="closeSalute"> or <seg type="closeFormula">. It also contains all subsequent elements in <closer> apart from <dateline>, <note> and <signed> (incl. <seg type="closeFormula">).
  • ‘Adieu’, which normally stays near the end of <p>, only goes inside <salute> if it comes between or after other elements that go inside <closer>:
    <lb/>[…] you there, or not.</p> <closer rend="inline"><salute n="closing">Believe me I ever shall be <lb/><seg type="closeFormula"><choice><abbr>yr.</abbr><expan>your</expan></choice> sincere admirer and affectionate Friend.</seg> <lb/>Adieu.</salute></closer>
  • The following phrases (and variations thereof), often the first words of <closer>, should be included in <salute>: ‘I have the honour to be …’, ‘I sign myself …’, ‘I remain …’, ‘I believe / Believe me (to be) …’.
  • Frequently, these phrases are followed by a call to the reader (usually with the pronoun you, sometimes through the use of an imperative), followed by a verb. Both are to be included in the <salute> element. Verbs include: beg, believe, assure, convince, know, continue, oblige. In the following example, <closer> and <salute> start with ‘Believe’:
    <closer><salute n="closing">Believe me <seg type="closeSalute">my dear <persName>Miss Hamilton</persName>,</seg> <seg type="closeFormula">your most humble servant</seg></salute> <signed><persName>John Dickenson</persName></signed></closer>
  • When other verbs are used to call upon the reader before a document is concluded, these are to go inside <salute> (and therefore in <closer>), not in <p>. In the following example, <closer> and <salute n="closing"> start with ‘you’:
    <lb/>[…] as long as life remains <lb/>in my fragile frame,</p> <closer rend="inline"><salute n="closing">you never shall want <seg type="author">a <lb/>sincere Friend &amp; a tender Brother,</seg> in <lb/><seg type="closeFormula">Your ever sincerely affectionate</seg></salute> <signed><persName>Palemon</persName></signed>
  • Modifiers of verbs and noun phrases should always be included in the salutation, e.g. ‘truly’ in ‘truly believe me that …’ or ‘with the …’ in ‘with the assurance of my esteem & affection, believe me …’.
  • When the verb conclude is used in the sense that the author is about/going to conclude the letter, this should not be taken as the start of the salutation and should remain inside <p>, hence outside <closer>.
  • Prepositions, relativisers, etc., with the exception of the coordinating conjunction and, should not be included in <salute> or indeed <closer>.

3.3.4. Datelines: <dateline>

Only use this element for dates and/or place names written by the author at the start or end of a letter or of a <div>. Include it as part of either <opener> (except in a continuation <div>, see Openers above) or <closer>:

<lb/><opener><dateline><date when="1782-11-12">12<hi rend="superscript">th</hi>. <choice><abbr> Nov<hi rend="superscript">br</hi>.</abbr><expan>November</expan></choice> 1782</date></dateline> <lb/> <lb/><salute n="opening">My dear […] etc. </salute></opener>

NB <dateline> is also to be used in the absence of <date> and <placeName> elements if information regarding the creation of the letter is still present, e.g. when only the day of the week is mentioned.

If a <dateline> is present for authorial text, any annotation by a later (minor) hand that adds to or corrects the date or place of sending goes inside it. See e.g. HAM/1/5/2/2:

<lb/><opener><dateline rend="align-right">Wandsworth hill <date when="1781-08-27"><choice><abbr>Aug<hi rend="superscript">st</hi>.</abbr><expan>August</expan></choice> 27<hi rend="superscript">th</hi>- <lb rend="align-right"/><note hand="#minor_hand" place="top-right">1781</note></date></dateline></opener>

But if all the metadata concerning a date or place-name of sending is written by a minor hand, there will be no <dateline>. The annotation(s) will contain a <date> and/or <placeName> and will not be part of <opener> or <closer>. See e.g. GEO/ADD/3/82/10:

<lb rend="align-right"/><note hand="#minor_hand_2" place="top-right"><date when="1779-07-03">3<hi rend="superscript">d</hi>. July 1779</date> Saturday</note> <lb/> <lb/<opener><salute n="opening"><rs>My dearest dearest dearest Friend</rs>,</salute></opener>

If <dateline> appears at the end of a letter, it should be included in the <closer>, normally after <salute> and <signed>. If there is a <postscript> intervening between <signed> and <dateline>, wrap <dateline> in a second <closer> element:

<lb/><closer>[…] <salute n="closing"> […] </salute> <lb/><signed><persName> […] </persName></signed></closer> <lb/> <lb/><postscript> […] </postscript> <lb/> <lb/><closer><dateline>(<date> […] </date>) […] </dateline></closer>

3.3.5. Dates: <date>

This element is to be used for the date only, and not for other parts of the dateline or annotation such as time of day (e.g. ‘8 o’clock’) or the name of the day (e.g. ‘Tuesday’). If the date is split by ‘received’ or a time, use separate <date> tags for the fragments. The name of the day can be left inside <date> if adjacent to the numbers but doesn’t require a <date> element if not.

An exception has been made in diaries for <div>s that would otherwise contain no date, if the day can be dated. And in other cases, a date without textual content has been inserted — such dates should have an @resp to indicate the editor responsible for the inferred date. Both uses of <date> are to ensure that persons mentioned in diaries are only counted once per day for the purposes of social network analysis.

Typically, the month and day fragment will receive a full @when value ("yyyy-mm-dd"), while the year fragment just gets the year ("yyyy"). If the year was clearly added after the creation of the letter (from evidence of continuity, size, position or ink), then it should be placed in a separate <note[@hand]> inside <date>.

NB. When a date is given as ‘The […] of […] etc.’, please include ‘The’ inside <date>.

NB. In our project, <date> has paired opening and closing tags around textual content, so the following attribute-only structure is not used: <date when="[…]"/>.


3.3.6. Postscripts: <postscript>

TEI requires text inside <postscript> to be embedded in <p>, e.g.:

<lb/><postscript><p>My Love to <persName>Moumou</persName> &amp;c &amp;c -- </p></postscript>

Either <postscript> or the preceding <lb> can have an optional @rend. If there is a <label> for explicit use by author of ‘P.S.’ or ‘Postscriptum’, etc. and the text of the postscript continues on the same line, <p> requires rend="inline", whether or not there is an earlier @rend in <lb> or <postscript>, e.g. GEO/ADD/3/82/69:

<lb/><postscript rend="indent"><label>P.S.</label> <p rend="inline">I hope you found what I sent you good <lb/>&amp; I hope you will find it soften <choice><abbr>ye.</abbr><expan>the</expan></choice> pain […] </p></postscript>

NB. Remember to leave a space between the closing tag </label> and the opening tag <p rend="inline">.

If the writer adds an afterthought to a letter without an explicit ‘P.S.’, use <postscript> regardless, but without <label>.

A postscript normally contains only <p>, but when a writer uses words and phrases that need wrapping in elements normally reserved for <closer> (e.g. <signed>, <salute n="closing">, <seg type="closeFormula">), please add a <closer> element to contain them:

<lb/><postscript><p><ref type="moved" target="#ps2">I thank you much for your Letters, I like them much, I can not say more to you at present but that</ref></p> <lb/><closer><salute n="closing"><ref type="moved" target="#ps2">you are dearer to me now than <lb/>ever.</ref></salute> <ref type="moved" target="#ps2">Adieu Adieu Adieu <seg type="closeSalute">dearest, dearest sister <persName>Miranda</persName>.</seg></ref> <signed><ref type="moved" target="#ps2"><persName>Palemon</persName></ref></signed></closer></postscript>

For information on using the elements <anchor> and <ref> with postscripts that need to be moved, see Moved text. If a moved postscript contains elements other than <p>, e.g. <label>, <closer>, <signed>, then <ref> must be repeated inside each such element, as in the example above.

NB. The TEI Guidelines disallow <postscript> as first element in <body> or <div>. If a fragmentary letter consists solely of a postscript, we precede it with a blank line containing an empty <p/>.


3.4. Other content-based mark-up


3.4.1. Names

The elements <persName>, <placeName> and <rs> are used to tag names.

Personal names are stored in a personography and indexed by means of an xml:id unique to each individual. Place-names, though tagged, are not similarly indexed in this project. Spellings of personal names are not normalised to a standard form, nor most place-names (but see Spelling in names below), so the differences between diplomatic and normalised transcriptions will concern abbreviated and suppressed names.

An abbreviated name should be tagged with <abbr>. If the full form is known, it is marked up in a <choice> element, as detailed in Expansion of abbreviations below:

<persName><choice><abbr>L<hi rend="superscript">y</hi></abbr><expan>Lady</expan></choice> <choice><abbr>F.</abbr><expan>Frances</expan></choice> Harpur</persName>

If a name is partially suppressed by means of a horizontal line, use two em-dashes for the line and surround the whole form with <abbr>:

<persName ref="psn:tbc">Miſs <abbr>C——</abbr></persName>

The suppressed name, like an abbreviated one, should be expanded if known:

<placeName><choice><abbr>W——r</abbr><expan>Windsor</expan></choice></placeName>

If a name is represented solely as a horizontal line, use two em-dashes wrapped in <abbr>, even though complete suppression of a name is not, strictly speaking, abbreviation. However, if we know or discover what name has been suppressed, the <abbr> can be wrapped in <choice> and the full form given in an <expan> element. Thus ‘a Mr– —— who's name I dont at this moment recollect’ would be coded:

a <persName M<hi rend="superscript">r</hi>- <abbr>——</abbr> </persName> who's name I dont at this moment recollect

NB. Do not include final punctuation in a name element. Characters under a superscript in an abbreviation are obviously not excluded.


3.4.1.1. Names of people

Use the element <persName> for ‘a proper noun or proper-noun phrase referring to a person, possibly including one or more of the person's forenames, surnames, honorifics, added names, etc.’ (TEI guidelines).

Use <rs> (referencing string) for a phrase that is not a proper name but nevertheless refers to an individual or group of individuals.

A very few items with unique reference that lack a personal name, such as ‘the King’, ‘the Queen’, nevertheless take <persName> (with the article included).

Where the reference is far more contextually determined, such as ‘his wife’, ‘my cousin’, use <rs> to wrap the whole noun phrase, including any determiners (the, my, etc.) and even other <persName> or <rs> elements. Therefore ‘Lady Hamilton's Brother’ and ‘the Sister of my Dearest Husband’ would be coded as follows (apart from ref="psn:XYZ" attributes on both <rs> and <persName>, omitted for brevity in this and other examples):

<rs><persName>Lady Hamilton</persName>'s Brother</rs>
<rs>the Sister of <rs>my Dearest Husband</rs></rs>

Where a group of individuals is mentioned, tag each one separately wherever possible.

<persName>Mr.</persName>, <persName>Mrs.</persName> and <persName>Miſs Smith</persName>

Family groups like ‘the Glovers’, ‘the Miss Mores’ are to be tagged as <persName>. A preceding the (which is nearly always present) is part of the proper name and so is included in <persName>, as is the plural marker -s.

If, say, several forenames or forenames + surname are given as initials, expand each one separately.

Close a <persName> or <rs> element before these items:

  • possessive s (+ apostrophe if present):
    <persName>Lady Hamilton</persName>s letters
    <rs>the young Lady</rs>'s Spirit was hurt at this Refusal
  • final punctuation:
    Pray give my love to <persName>Miſs Burney</persName>, &amp; tell her […]

Open a <persName> element after these text items — they remain outside the tag:

  • ‘dear’
  • noun phrases in apposition to the name (including familial relations such as ‘my cousin’, ‘his Uncle’):
    The Housekeeper <persName>Betty</persName> has a notion of old English hospitality
    […] my Cousin <persName>Robert Greville</persName> came […]
    • but unequivocal use of ‘Aunt’, ‘Uncle’ or ‘Cousin’ as a quasi-title, usually with initial capital, does go inside <persName>, just like ‘General’, ‘Bishop’, etc.:
      [My best Compliments to …] <persName>Uncle Frederick</persName>
      <lb/>[…] to send some <lb/>little token of remembrance to my sweet <persName>Louisa</persName>, <lb/>to keep for the sake of <persName>Aunt Ippa</persName>
      <persName>Bishop More</persName>s Library of Books

A reference to the addressee in the main body of the text (neither opener nor closer) is tagged with <seg type="bodySalute">.

  • If it contains a name, e.g. ‘my dear Mary’, then that name is tagged with <persName>:
    […] and so, <seg type="bodySalute">my dear <persName>Mary</persName>,</seg> I continue to […]
  • If not, e.g. ‘dear Sister’, ‘my dear friend’, the whole string (less any final punctuation) is tagged with <rs> inside the <seg>:
    […] and so, <seg type="bodySalute"><rs>my dear friend</rs>,</seg> I continue to […]

NB. Do not tag a name with <persName> if it is

  • part of a building name, e.g. ‘The Queen’s Lodge/House’ or ‘St James Palace’
  • (part of) the title of a piece of literature, e.g. ‘Sidney Biddulph’ or ‘Julia’
    • but mark up that section with <seg type="rp">.

3.4.1.2. Names of places

Tag all place-names (but not street or house names) with <placeName>, including ‘Town’ with capital T. If in doubt whether a name refers to a house or estate or village, use <placeName>.


3.4.1.3. Spelling variation in names

Because all persons in the corpus are in principle given a unique xml:id and entered in a personography, where spelling and other variants are listed for indexing purposes, there is no need to harmonise spellings in the normalised transcription, thus no <orig> or <sic> tags. (We only use <choice> for <abbr> + <expan>.) If a name is spelled differently from previous attestations, please add this variant spelling to the personography:
<surname>Massey<name type="variant">Massie</name></surname>

Spelling variation in place-names is likewise neither modernised nor made homogeneous. If a modern place is unrecognisable in its old form, an explanatory footnote may be offered. We are not currently planning a place-ography. If future research requires systematic mapping, an id or coordinates could be added to <placeName> in the same way that @ref in <persName> and <rs> (and also @scribeRef in <handNote>) correlate different forms of personal reference via the person's xml:id.

Nor, incidentally, do we have an eventography. Therefore we don't code events with a tag. If a particular event is relevant for the content of the document or for the research strand on Reading Practices, add a footnote about it. If the date of the event is relevant and is known, code <date> in the footnote but not in the text.


3.4.2. Passages marked for research analysis: <seg>

The element <seg> in TEI is an arbitrary segment, a general-purpose tag for stretches of text. In this project, its attribute @type can carry one of seven values: "para" | "rp" | "openSalute" | "bodySalute" | "closeSalute" | "closeFormula" | "author". All but the first are used to mark up text for analysis in the research strands of the project.

  • type="para" inside <summary> in the TEI header represents a paragraph.
    • This simply allows paragraph breaks in the library catalogue to be taken over into our metadata (following TEI Project Co-ordinator 16/1/20).
  • type="rp" marks passages relevant to reading practices.
    • See also Quotations below.
    • The reading practices research strand investigates the reading, writing and circulation of texts among participants in the Papers, including printed and manuscript material, private letters and other textual media. For the purposes of this research strand, ‘prints’ (i.e. printed images accompanied by textual content, such as engravings) are considered texts.
    • NB. <seg> cannot cross a paragraph <p> boundary, so a long passage relevant to reading practices must be broken into separate <seg>s if it extends beyond the end of a paragraph.
  • type="openSalute | bodySalute | closeSalute" marks various kinds of reference to the addressee.
    • They belong in <opener>, <p> and <closer>, respectively.
    • These and the remaining values of @type are part of the mark-up used in the research strand on sociolinguistics and letter-writing to capture non-structural features that lack a standard tag in default TEI mark-up.
    • See Salutations and Overview of person references.
  • type="closeFormula" marks formulaic references to the author in <closer>, such as ‘yours (most) affectionately’, ‘ever your most humble servant/friend’, etc.
  • type="author" marks the occasional self-reference to the author of a text, e.g. when John Dickenson refers to himself as ‘your dear Husband’.
    • This kind of self-reference is generally found in <p>, though there are a handful of examples in <closer>.

All references to persons — and there is always one at least — inside the <seg> types "openSalute | bodySalute | closeSalute" (as well as <salute n="opening">) require a <persName> or <rs> tag, the @ref attribute pointing to an addressee's xml:id. Likewise type "author", in this case with @ref pointing to an author's xml:id. Final punctuation goes inside the <seg> or <salute> element, but outside <persName> | <rs>.

NB. If <foreign> and/or <emph> are needed inside <seg>, the preferred relative order from outside to inside would be <seg><rs><foreign><emph>.


3.4.3. Direct speech: <q>

Use <q> to represent direct speech by a real person, as when a letter-writer quotes someone they met and spoke to. If there are quotation marks in the original, reproduce them inside the <q> element. Indirect speech may also be signalled by <q> if the writer uses quotation marks.

The value of the obligatory attribute @who can be of the form "psn:XYZ", referring to an xml:id in the personography. Otherwise use a transparent label beginning with a lower case letter to distinguish speech events by anonymous speakers:
<lb/>I asked him if he was fond of reading? <q who="bookshopBoy">O yes Sir I read a <lb/>great deal.</q> <q who="psn:JD">Plays &amp; novels I suppose?</q> <q who="bookshopBoy">O no, I never read <lb/>such books as those</q>
There are difficult borderline cases between the tags <q> and <quote> (on which see Quotations below). Here are some words put in someone else's mouth — imagined direct speech — but still tagged with <q>:
<lb/>I think I hear you say <q who="psn:MH">&amp; pray Sir what is <lb/>the meaning of all these pretty terms?</q>
Whereas speech-like words cited from a written source, even if introduced by such a verb as say, are tagged with <quote>:
<lb/>[…] You cannot conceive what I feel when <lb/>you say, <quote>“pray come to <placeName>Bath</placeName>, contrive it, do not let any <lb/>trivial Obstacle prevent your coming”</quote>

3.4.4. Quotations: <quote>

Use <quote> where a writer quotes from another letter or diary, and reproduce their (non)use of quotation marks inside the <quote> element (see Quotation marks below). The passage containing the quotation should be tagged with <seg type="rp">.

NB. We use <quote> (with final -e) to wrap and thereby identify a passage of quotation. We do not use the entity &quot; to represent the quotation mark character.

For direct literary or biblical quotations, the closing tag of the <quote> element is followed directly (without a space) by a <bibl> (bibliographic citation) element, with <quote> + <bibl> together wrapped in a <cit> (cited quotation) element:
<lb/>[…] <seg type="rp">that beautiful line of <persName ref="psn:tbc">Pope</persName>, where he describes <lb/>the Indian who <cit><quote>“sees God in Clouds and hears him <lb/>in the wind”</quote><bibl>Alexander Pope, <hi rend="italic">An Essay on Man, Epistle I</hi>.</bibl></cit></seg>

The passage containing such a quotation should obviously be tagged with <seg type="rp"> as well. By default, <seg> and <cit> are co-extensive (<seg> wrapping <cit>), but <seg> can be extended to left (as in the example above) and/or right of the citation if there is adjacent text that belongs inside it.

The bibliographic citation is not part of the author's text and only appears as a tooltip when the quotation is moused over. For bibliographic citations that do appear in the text display, almost always in editorial footnotes, see Bibliographic citations below.


3.4.5. Verse line: <l>

It is important to wrap each line of verse in <l>:
<lb/><seg type="rp"><cit><quote><l>There let the pealing Organ blow</l> <lb/><l>To the full voiced choir below</l> <lb/><l>In service high &amp; in anthems clear,</l> <lb/><l>As may with sweetneſs thro' mine ear</l> <lb/><l>Diſsolve me into extacies</l> <lb/><l>And bring all Heav'n before my eyes.</l></quote><bibl>John Milton, <hi rend="italic">Il Penseroso</hi>.</bibl></cit></seg>

The tag serves to distinguish verse from prose, and it exempts the part-of-speech tagger from operating where register, style, spelling and often date can be quite different from the surrounding context. There is no need to normalise in verse lines.


3.4.6. Foreign words and text: <foreign>

Languages other than English are tagged <foreign>, with the attribute @xml:lang set to the appropriate language, most notably French. Common values are "fr" | "it" | "la". We have needed "pt" [Portuguese] and "nl" a handful of times. To determine what counts as French and what English at the time of writing, please first consult the list of French words and phrases in the GH repository and follow that. If the word/phrase is not mentioned in that list, check the OED and consider the context of the letter, as well as the frequency with which this particular word/phrase occurs in all transcriptions up until this point. After this, a suggested classification (i.e. either English or French) should be put to the team before being entered in the list of French words and phrases in GH, so that future instances can be tagged — or not — consistently.

When a word or phrase originally borrowed from French is considered to be part of English at the time of writing (e.g. Adieu), leave it unmarked for <foreign>. However, when used in a French context, include in <foreign> with the rest of the line/text in French:

<foreign xml:lang="fr">Adieu encore pour la troisième fois tout ce qui m'est chère au monde</foreign>

3.4.6.1. Accents and spelling in French

We present French as written, without correction or modernisation.


3.4.7. Indications by author for recipient: <fw>

The element <fw> is normally used in TEI for representing running headers, catchwords, etc. in printed books. We use it for authorial annotations for the benefit of a contemporary reader, especially the recipient of a letter, such as catchwords, headers explaining what follows, pagination, stanza numbers, and ‘PTO’ instructions. They should not form part of the linguistic corpus in the normalised text. Some examples follow:

  • True catchword inserted below the line at bottom right (HAM/1/4/4/1):
    <lb rend="align-right"/><fw type="catch" place="bot-right">Country</fw>
  • Probable catchword at end of last line on page (HAM/1/4/4/9):
    <lb/>[…] for this <fw type="catch" place="inline">picture</fw>

    NB. Such inline cases require a decision: was it an intentional catchword, or was the repetition overleaf a mistake? — in which case tag the second occurrence as <surplus> instead of the first as <fw>.

  • Where the author has numbered the pages or otherwise indicated order of reading, or given some other explanatory heading (GEO/ADD/3/82/14, 24 and 69):
    <lb rend="center"/><fw type="pageNum" place="top-center">2<hi rend="superscript">d.</hi>.</fw> <lb rend="center"/><fw type="head" place="top-center">Continue on P.S.</fw> <lb/><opener><dateline><fw type="head" place="top-left">Tuesday Night in answer to Monday Night.</fw></dateline>
  • Where the author has numbered the stanzas of a poem (GEO/ADD/3/82/37):
    <lb rend="center"/><fw type="stanzaNum" place="center">2<hi rend="superscript">d.</hi>.</fw>
  • Where the author has given an equivalent of modern P.T.O. (HAM/1/4/7/5):
    <lb rend="align-right"/><fw type="turnPrompt" place="bot-right">Turn</fw>

NB. The attribute @place in <fw> is purely for information in our mark-up and has no effect on display. Therefore any left-right positioning other than left-aligned or inline requires a @rend attribute in <lb>.


3.5. Manuscript features


3.5.1. Underlining: <emph>

By default, underlining is tagged as <emph rend="underlined">.

When part of a word is underlined in manuscript, the whole word is to be tagged. There are occasional exceptions when a writer clearly means to emphasise only part of a word, such as when John Dickenson notes a deliberate mispronunciation (HAM/1/2/50):
<lb/> […] Mr. Badcock &amp; Mr. Lucas dined there […] <lb/><persName>M<hi rend="superscript">r</hi>. Bere</persName> always addreſsed <persName> M<hi rend="superscript">r</hi>. B<emph rend="underlined">e</emph>dcock</persName> to soften as <lb/>much poſsible the asperity of the Name

When several words are underlined individually, each should be tagged separately, whereas only one tag is necessary if the same continuous line underlines several words. Compare the examples from GEO/83/82/11 and GEO/3/82/13 below:

<lb/>[…] <choice><abbr>yr.</abbr><expan>your</expan></choice> <emph rend="underlined">sincere</emph> <emph rend="underlined">admirer</emph> &amp; <emph rend="underlined">affectionate</emph> <lb rend="align-right"/><emph rend="underlined">Friend</emph>
<lb/><l>Spead <choice><abbr>ye</abbr><expan>the</expan></choice> soft intercourse from <emph rend="underlined">Soul to Soul</emph>.</l>

If underlining extends over two lines, use separate tags for each line. For example, in GEO/3/82/43:

<lb/>for you, &amp; that you <emph rend="underlined">have no more</emph> <lb/><emph rend="underlined">doubts</emph> upon […]

Leave any final punctuation outside the tag, but a continuously underlined passage may include non-final punctuation.

NB. Use more specific values for @rend where appropriate ("double-underlined" | "dotted-underlined " | etc.) Although the first part of the value is ignored at present, the last part will still trigger single underlining in our display script, and the more precise mark-up may be helpful to a future researcher.

We have (almost) stopped using <hi rend="underlined">, retaining it in principle only for underlining that couldn't possibly be emphatic. Even if a writer such as CMG consistently underlines foreign words, we can't rule out some degree of emphasis, so @rend goes in <emph> rather than being an attribute of <foreign> (as formerly in the project) or <hi>. Our default in such cases is <foreign> wrapping <emph>, but we do have examples the other way round (46 to 322).

NB. Underlining occasionally gives a clue as to whether a <foreign> tag is needed, as in this extract from HAM/1/15/1/17, where lecture in the fourth line is clearly not the English word but rather the French lecture ‘reading’, while in the second line, underlining indirectly supports the transcription Drame rather than Drama:

[…] I was appointed <foreign xml:lang="fr"><emph rend="underlined">Lectrice</emph></foreign> to the society <lb/>and every morning read a French <foreign xml:lang="fr"><emph rend="underlined">Drame</emph></foreign> or story of some <lb/>kind, loud to a very attentive audience, from which I <lb/>generally drew tears, for the choice of the <foreign xml:lang="fr"><emph rend="underlined">lecture</emph></foreign> being <lb/>left to me, you may imagine it was of a serious or <lb/>affecting nature

3.5.2. Superscript, subscript, italics, etc.: <hi>

The element <hi> (highlighted) ‘marks a word or phrase as graphically distinct from the surrounding text, for reasons concerning which no claim is made’ (TEI Guidelines). The attribute @rend is obligatory. Use the value "superscript" for characters at the end of an abbreviation that are raised above the baseline. The display script presents them in a smaller and slightly raised font. Much less frequently needed is "subscript".

NB. Superscript is to be distinguished from insertions above the line, which are tagged as <add place="above"> and displayed wholly above x-height; similarly subscript vs. <add place="below">. See Additions.

Use <hi rend="italic"> for linguistic forms, book titles, etc. in footnotes. NB. It is a minor, though not uncommon, tag abuse to use @rend in editorial footnotes rather than to indicate ‘how the element in question was rendered or presented in the source text’ (TEI Guidelines).

Some other available values for @rend such as "larger" | "retraced" are there for completeness of transcription, but if used are not visible in the display.


3.5.3. Hyphens, dashes and lines for suppression

For hyphen (a word-internal feature), use a single hyphen in these contexts:

  • Normal hyphen (well-known), whether intra-word on one line or at the end of a line where the word has been split by the author across two lines.

    NB. Only use hyphen at end of line (no following space) if the author does so; sometimes they use a double hyphen (=) or nothing at all.

    NB. The hyphen may also be repeated before the word fragment at the start of the next line, but contemporary practice is rather variable.

  • Horizontal mark under superscript abbreviation (Mrs)

NB. A single hyphen never has a space to its left.

For dash (a piece of word-external sentence punctuation), use two hyphens with a space on either side of the pair, even at the beginning or end of a line:

<lb/>some of Evergreens -- decorated with a vast quantity <lb/>of Flowers, Glaſs, ribbands <choice><orig>colour'd</orig><reg>coloured</reg></choice> &amp; white Eggshells <lb/> -- <choice><orig>embroider'd</orig><reg>embroidered</reg></choice> Flags -- with inscriptions in Latin <lb/>&amp; German -- others of Paintings with Lamps

A horizontal line used to suppress all or part of a name or an oath is represented by two em-dashes not surrounded by spaces. This is not sentence punctuation, merely suppression (‘blanking’), and our transcription is a visual representation of the manuscript form.

  • Wrap the suppressed word in <abbr>:
    Whilst I was at <persName>M<hi rend="superscript">r</hi> <abbr>——</abbr></persName> […]
  • In turn, if the unsuppressed form is known, wrap <abbr> in <choice> with <expan>:
    <seg type="bodySalute"><rs> you little <choice><abbr>D——l</abbr><expan>Devil</expan></choice></rs></seg>
    the <persName><choice><abbr>K——g</abbr><expan>King</expan></choice></persName> &amp; <rs>my <choice><abbr>B——r</abbr><expan>Brother</expan></choice></rs>
    <seg type="author">her <persName><choice><abbr>D——</abbr><expan>Dickenson</expan></choice></persName></seg>

    Whether complete suppression of a word can fairly be called abbreviation is open to question, but the use of <abbr> even here allows for expansion if the unsuppressed form is known, as well as serving to distinguish further a line of suppression (which if not tagged would often have been ‘ —— ’) from a dash (‘ -- ’): it's important to keep them apart.


3.5.4. Authorial lines and flourishes: <milestone>

We use the <milestone> element to represent some kind of line or flourish added by author or annotator to mark the conclusion of one section, e.g. underneath the dateline or a postscript (to the extent that this can be distinguished from word underlining or dashes). If a simple forward slash ‘/’ or other character is a better representation of such a mark, and when it is inline, use that instead (it’s about the visual representation, not the function of the element <milestone>).

<milestone style="20% align-right" type="line" unit="dateline"/>

The attributes and their possible values are as follows:

  • value of @style: "20% align-left | 20% center | 20% align-right | 50% center | 100%".
    • A crude indication of width and position.
  • value of @type: "line".
    • Only "line" at present, even when the actual mark is diagonal, or distinctly bowed, or with curlicues.
  • value of @unit: "address" | annotation | date | dateline | entry | letter_body | pageNum | paragraph | postscript | salutation | section | signature | time".
    • The part of the document that is closed off by the line or flourish.

When a <milestone> is used to mark off a full element (e.g. opener, salute, dateline, note, etc.), place it inside that element, before the closing tag:

<note hand="minor_hand"> […] <milestone style="20% align-right" type="line" unit="annotation"/></note>

The annotation in this example has been rounded off with a flourish. By ensuring that the milestone is marked up as part of the annotation, the line will — as it should — disappear from the normalised display.


3.5.5. Quotation marks

Curly quotation marks are available in oXygen from the Symbols menu (Ω button on toolbar and search for quotation in the character map). Recently used symbols remain in the menu for quick re-use.


3.5.5.1. Double

Represent quotation marks in the original by curly double quotation marks (“…”). Quotation marks don't always come in pairs: it was good practice at the time to repeat opening quotes at the start of each line, with closing quotes used just once at the end of the quotation:

<lb/><l>“Your Pen You may resign,</l> <lb/><l>“Our aid to Thee we'll e'er deny</l> <lb/><l>“The Sword is only thine.”</l>

NB. For coding attribute values in TEI mark-up, only straight double quotation marks ("…") are permitted.

NB. A very few of our authors do sometimes use single quotation marks, e.g. Mrs Sarah Hamilton in HAM/1/3/1/1. In such cases use curly single quotes.


3.5.5.2. Single

NB. Single curly quotation marks (‘…’) should be used in footnotes for glosses (meanings) and when quoting a passage:

<note resp="#DD"><hi rend="italic">Phiz</hi> ‘face or facial expression’ […]
<note resp="#DD">[…] Dickenson reports that Mr Sackville ‘expreʃsed his anxiety about Sir Robert's taking his wife &amp; Child into a country where civil contests are looked upon as inevitable […]’

3.5.6. Apostrophes

We distinguish apostrophes from single quotation marks. Always use the straight apostrophe ('), both in contexts where apostrophe is still used (possessives, shortened auxiliary verbs, etc.) and in contexts no longer standard:

a foolish mother's fondneſs | I went to my Uncle's to enquire | she's very plain | you'll be ruined | 'Tis | the Lady's have been mortified | I was really distreſs'd | she wou'd divide them with you

NB. The last two examples here would of course be normalised to <reg>distressed</reg> and <reg>would</reg>, respectively.


3.5.7. Parentheses

When a pair of characters is used to surround a parenthesis, always use (…) even if both opening and closing brackets look more like straight /…/.

When a bracket-like character seems to be used singly as some sort of punctuation mark (and not merely careless omission of the closing bracket of a parenthesis), code it with whatever character comes closest to it visually, whether /, ( or [.


3.5.8. Ampersands, etc.

A variety of single-character squiggles are used by writers to abbreviate the conjunction and. We represent any of them by an ampersand. However, the character ‘&’ has a special value in XML and must be entered as the XML entity ‘&amp;’ in the text stream.

Other internal entities include angle brackets (aka the less-than and greater-than symbols), used all the time in mark-up but rarely needed in text. If needed, they are to be coded as ‘&lt;’ and ‘&gt;’, respectively. As for straight apostrophe, we use the normal keyboard character ' rather than the entity ‘&apos;’ — apparently without ill effects.


3.5.9. Word spacing

Spacing can be idiosyncratic, and we often give writers the benefit of the doubt or even silently modernise an apparent missing space, e.g. alittle Friend > a little Friend. However, wrong intra-word spacing, e.g. a lone for ‘alone’, is corrected with <sic> + <corr> to produce alone in the normalised edition, except for instances that would have been considered appropriate at the time (e.g. to day, my self, etc.), in which case we don't intervene.

For the special case of a word broken across a line boundary (i.e. hyphenation, with or without an explicit hyphen), see Word separation at line-end below. For initials and acronyms written without spaces, see Expansion of abbreviations.


3.5.9.1. Horizontal spacing between items: <space>

The element <space> ‘indicates the location of a significant space in the text’ (TEI Guidelines). We use it as a convenient way of capturing the layout of a manuscript by displaying extra space between items on the same line. There are two attributes, @unit, with the fixed value "chars", and @quantity, value any number from, say, 3 to 60. Leave one ordinary space to the left of <space>:

<lb/>God bless you <space unit="chars" quantity="10"/>Adieu</p></postscript> <lb/>[...] up the vale to -- <space unit="chars" quantity="15"/> <note resp="#DD">Generous space left blank for place-name.</note> two miles [...]

3.5.10. Additions: <add>

The element <add> (addition) ‘contains letters, words, or phrases inserted in the source text by an author’ (adapted from TEI Guidelines). The obligatory attribute @place indicates where the text to be added comes from in the original document:

  • place="above" or "below" [the line]
  • place="margin-left" or "margin-right"

    when the addition is roughly level with the line

  • place="inline"

    when spacing, other edits or ink make clear that something was squeezed in on the line as an afterthought, or as part of a substitution

  • place="center | top-left | top-center | top-right | bot-left | bot-center | bot-right"

    when the addition comes from a location distant from the line where it is to be inserted

The values "above" and "below" of @place affect the display visibly, while all other values suggest that the added text can be inserted at the default level of the line.

We no longer use the optional attribute @hand.


3.5.10.1. Addition vs. annotation

Sometimes an author adds text not just above/below/on the line or level with the line in the margin, but somewhere else on the page instead. If paired symbols (asterisks, crosses, etc.) are used by the author to indicate where the added text is to be inserted, we can use <add> at the indicated destination, with <ref type="moved"> inside the <add> and @anchor at the actual site (see Moved text), plus a short footnote reading ‘Moved added text here from [e.g. bottom of page], the insertion point indicated by paired [crosses/asterisks, etc.]'. Omit the second clause if symbols aren't used, and no need to transcribe the symbols if they are.

<lb/>[…] May the flattery of Knaves never <lb/>betray you  <lb/><seg type="rp"><cit><quote><ref type="moved" target="#sec"><l>For well I know how rare the human race</l> [2 lines of verse omitted from example here] <lb/><l>And speech scarce useful but to veil the heart.</l></ref></quote> <bibl>Unidentified verse.</bibl></cit></seg><note resp="#DD">Moved verse insertion here from the foot of p.3. The intended insertion point is indicated by matching asterisks.</note>
<lb/>for You had been so sparing of Your <emph rend="underlined">ink</emph> <add place="margin-left">I dare not say <emph rend="underlined">time</emph> <note resp="#CW">This addition is written vertically in the left-hand margin and is linked to the main text via paired crosses.</note></add> that […]

However, an alternative coding sees such material not as an addition to be inserted in the text but as an explanatory, supplementary annotation made some time after the original time of writing. Making the addition~annotation distinction by means of chronology is notoriously uncertain and impractical. The crucial distinction is whether inserting the material in the text would disrupt it, especially to the point of making it ungrammatical. That would be an argument in favour of annotation. Another pointer in the same direction would be material placed at the foot of the page when there would have been room to insert it above the line. In any event, this is a judgement call to be made on a case-by-case basis.

If the annotator, typically MH, is returning to a diary or (copy of/draft for) one of her own letters, then the choice of annotation would require MH to be entered twice in <handDesc>, once as major hand = author and again as minor hand = writer of annotation. See also Annotations below.

[...] <persName ref="psn:MPalm">Miſs Palmer</persName><note hand="#minor_hand_3" place="margin-right">Niece to Sir Joshua Reynolds who lived with <lb/>him -- now Marchioneſs of Thomond.<note resp="#CW">This annotation is written vertically in the right-hand margin and linked to the main text via paired crosses.</note></note>

Another situation calling for the author to be entered as a minor hand is where the annotation is actually earlier than the main text, because the sheet has been re-used, as in the unused, upside-down datelines for 6-8 December 1781 on HAM/2/4 p.62, a sheet now part of a sequence of entries for September 1783.

If the writer of the extra material is not the author, then there is normally no choice: it is an annotation by a minor hand. There is one possible exception where <add> may in fact be used: see Annotations on manuscript and Supplied text below.


3.5.10.2. Addition vs. continuation

The definition given above in Addition makes clear that <add> is intended to mark afterthoughts inserted in a stretch of text already written. Such additions are to be distinguished from the situation where an author is running out of space at the foot of the page and just continues writing in some available bit of white space; a common expedient is to continue the last few words up the right margin. Such continuations should not be wrapped in <add>. Instead begin a new line in the transcription, with a footnote at the end of the continuation to explain, say, that the last eight words are written vertically in the right margin (or as appropriate). If the location of the continuation is distant from the end of the conventionally written material, we again continue on a new line, this time with the continuation wrapped in a <ref> whose @target points to an <anchor> tag at the original location of the material; for details see Moved text below.


3.5.11. Deletions: <del>

This element is used for text (anything from one character to a long passage) deleted by the author of the document, or otherwise indicated by them as being superfluous or spurious. The deletion is visible in the original.

NB. Not to be used for deletions made by annotators, editors or encoders; see further below.

The obligatory @rend attribute most often has the value "cancelled" (i.e. crossed out), "erased" or "overwritten". You can use up to two values together, including the fourth possible value, "censored". This last can only be used in the relatively infrequent event that the author has self-censored themself. It is much more common for an annotator to censor text (dealt with in Censorship below). Because censorship by another is not coded as <del>, <del> does not need an attribute @hand.


3.5.11.1. Substitutions: <subst>

The element <subst> (substitution) groups ‘one or more deletions […] with one or more additions when the combination is to be regarded as a single intervention’ by the writer of the original text (adapted from definition in TEI Guidelines). The <subst> element contains one or more <del> elements and one or more <add>s, in any order, but without any other text intervening, apart from spaces if needed. The most common case is one deletion paired with one addition. The order is <del><add> if the new text is on top of or after the deleted matter:

<subst><del rend="overwritten">are</del><add place="inline">have</add> <add place="above">been</add></subst>

If the new text appears to the left of the deletion, the order is reversed accordingly:

<subst><add place="above">have been</add><del rend="cancelled">are</del></subst>

More complex cases with interwoven <del>s and <add>s are permitted by the schema, may be fully intelligible as XML code and should produce the correct transcriptions, though the tooltip(s) offered on our website are unlikely to be wholly adequate.


3.5.11.2. <del> + <add> ≠ <subst>

As noted above, <subst> cannot contain any text that is not wrapped in either <del> or <add>. It cannot therefore be used for a deletion + related addition which leaves intervening text intact, as in an author's decision to delete the word only from the beginning of a clause and insert it at the end, or to turn to into at while retaining the t. Without using linking or grouping mechanisms, such revisions must be coded as two unrelated changes:

<del rend="erased">only</del> be absent from this place four days <add place="above">only</add>

3.5.12. Censorship: @reason="censored"

‘Censorship’ as used here is the deliberate obscuration of information, most often personal names, especially by MH herself in the papers she archived, whether in her own diaries, in copies of letters sent, or in letters she received. Sometimes it involves place-names, notably in her obsessive scrubbing-out of ‘(N)orthampton(shire)’ in letters received from William Napier, where the place is hardly a secret. Sometimes it involves whole passages.

When the censor is the original author, even if carrying out the deletions possibly long after the original composition, we usually ignore the passage of time and use <del rend="… censored">.

Where the censor is an annotator, deletions are not coded by <del>, which is an authorial action. Instead they must be coded as either <gap> or <unclear> (both covered below under No transcription and Cautious transcription, respectively), with "censored" included in the values of @reason:

<persName ref="psn:tbc">M<hi rend="superscript">r</hi> <gap extent="4 or 5 characters" reason="cancelled erased censored illegible"/></persName> <lb/>there is a young lady at <placeName><unclear reason="cancelled censored indistinct">NorthamptonShire</unclear></placeName> <lb/>called <persName>Miſs Hamilton</persName>

Censorship by an author of their own earlier writing raises the same questions as authorial insertions, discussed in Addition vs annotation above. In those few documents where a set of insertions and deletions by the author can be safely distinguished from the original writing, and where we choose to treat such insertions as annotations by a minor hand (using a separate <handNote> entry in <handDesc>), then the author-censor's later ‘deletions’ are likewise those of an annotator, so <del> is not used.


3.5.13. Change of hand: <handShift>

The element <handShift> is used sparingly. It has the obligatory attribute @new, whose value indicates the hand and only indirectly the writer. It is only used when multiple hands have contributed to the same (section of) text, e.g. when a signatory does not write the rest of the letter, or when several people contribute short passages to the same letter.

<lb rend="align-right"/><closer><handShift new="#major_hand_2"/><signed><persName ref="psn:EGl"> <choice><abbr>E</abbr><expan>Eleanor</expan></choice> Glover</persName></signed> <lb rend="align-right"/><space unit="chars" quantity="10"/><handShift new="#major_hand_1"/> <signed><persName ref="psn:MGl"><emph rend="underlined">Mary Glover</emph></persName></signed></closer>

However, if the contributions of different hands can be neatly divided among separate letters within the same document, or at least into cleanly demarcated sections such as letter content vs. address page, use <div> with the attribute @hand rather than <handShift>, e.g.

<div type="letter" hand="#major_hand_1"> […] </div> <div type="address" hand="#minor_hand_3"> […]

The display scripts do not show a change of hand, whether coded by either <handShift> or <div>, so it is helpful to the reader to insert a footnote after the <pb> tag if the change of hand coincides with a page break, or after the <handShift> or <div> tag if mid-page:

<div type="address" hand="#minor_hand_2"> <lb/><pb n="3"/><note resp="#DD">The address is in the hand of Matthew Montagu, MP, provider of the frank.</note>
<div type="note" hand="#major_hand_2"><note resp="#DD">The following note is written by Maria Rundell, daughter of Mrs Rundell.</note>

If a hand adds anything after the letter was sent, that is an annotation and clearly distinguished on-screen (see just below), so neither a <handShift> tag nor a footnote is needed.


3.5.14. Annotations on manuscript: <note>[@hand]

We use the term annotation for anything written on a letter after its sending, including notes by the recipient, by members of the Hamilton/Anson family curating the collection, and by archivists employed in a library or archive. Anything written after sending by a different hand from the author(s) of the letter must be an annotation.

NB. Although franked addresses are written by another hand at a different time from the letter itself, they must at least be written before sending and so are not classed as annotations. See Frank signatories above.

With drafts or copies of out-letters, the position is less clear, and with diaries there is no ‘sending’ (though in fact MH often reports sending portions of her diary to friends). Text in hands other than the (current) main hand must be an annotation, but text in the main (author's) hand may be an addition or an annotation. For considerations we can bring to bear on the choice, see Addition vs. annotation above.

An annotation is coded as <note> with the attribute @hand, preferably given as the first attribute for visual checking purposes, to distinguish an annotation from a footnote, which is <note> with attribute @resp. (Order of attributes is actually immaterial in TEI/XML.) The attribute @place indicates a rough placement on the page but has no effect on the display. An optional attribute @rend can be used to adjust L-R placement on the line, though increasingly such a @rend attribute is placed in <lb> instead (see Overview of @rend below).

<lb/><note hand="#minor_hand" place="top-right" rend="align-right">25</note> <lb rend="indent"/><note hand="#minor_hand_2" place="bot-left">My Uncle <persName>Frederick</persName> <lb/><date when="1783-05-29" rend="indent">May 29<hi rend="superscript">th</hi>. 1783</date></note>

The display scripts display annotations in the diplomatic transcription in a different font and colour from those of the main text, with a mouseover tooltip attributing the hand, if known. Annotations in letters that concern the letter as a whole, e.g. archivists' numbers or shelfmarks, are often moved outside the main content if not already at the very top. Annotations are not considered part of the textual corpus and are omitted completely from normalised transcriptions.

If an annotation appears above the line and is to be displayed accordingly, the only mechanism we have for raising text above the line is <add place="above">, and so we have occasionally used <add> on the whole contents of <note[@hand]>; strictly speaking, that is not an addition:

<note hand="#minor_hand_2" place="center"><add place="above">X</add></note>

3.5.14.1. Which shelfmarks to transcribe

We have never transcribed the shelfmarks of the John Rylands archivist, Lisa Crawley. We transcribe as annotations all other archival writing, including shelfmarks or references added by other libraries:

<lb/><note hand="#minor_hand_3" place="top-right" rend="align-right">ADD/3/82/24a</note>

3.6. Editorial intervention

Processing by XSLT and other scripts allows a single text stream in our TEI/XML files to generate both a diplomatic and a normalised transcription, whether for on-screen display (.html files) or for plain text (.txt files). In broad outline, this is done in two ways:

  • different templates in a script, for example
    • to retain long-s ‘ſ’ in diplomatic text files but display it as ‘ʃ’ on-screen, and to normalise it to ‘s’ both in text files and on-screen
    • to display author-deleted text in a certain way in the diplomatic outputs but to suppress it completely in the normalised ones
  • <choice> elements in the text stream, e.g. for original spelling vs. modern

The diplomatic forms aim to represent as faithfully as practicable the usage of the original manuscript, while the normalised forms may be easier for non-specialists to read but also, and crucially, a more efficient input for automatic part-of-speech (POS) tagging.


3.6.1. Diplomatic vs. normalised: <choice>

A <choice> element always wraps a pair of elements together, with no residue. We use three different pairs, discussed below. The first member is always the one selected for diplomatic outputs, the second for normalised.

NB. There are circumstances where (usually) the second element itself contains an embedded <choice> (see Self-embedded <choice> below).

NB. We don't normalise quoted text, poetry or foreign-language text.


3.6.1.1. Correction: <sic> + <corr>

We tag forms which are clearly errors, or else idiosyncratic spellings not attested at the time, with <sic>, tagging the corrected form with <corr> and wrapping the pair in <choice>. To establish contemporary currency, first check the Excel sheet ‘orig-sic_2021july_checks.xslx’ in GH. If the word is not there, add your decision after consulting the list of Forms in OED, or if necessary doing an OED Advanced search of Quotations for Quotation Text, which allows sorting of hits by date. If the form seems to be current at the time, use <orig> instead.

at the first <choice><sic>glymse</sic><corr>glimpse</corr></choice> Our <choice><sic>ow</sic><corr>own</corr></choice> Conscience

The vast majority of forms with <sic> will get an adjacent <corr> element, the pair in turn wrapped in <choice>. In the following example, one of a tiny number containing <sic> without <choice>, it is unclear whether uncommonly is a slip for uncommon or whether another word has been left out, and so there is no safe correction:

<lb/>they have <sic>uncommonly</sic> brilliancy &amp; look beautiful

3.6.1.2. Regularisation: <orig> + <reg>

Obsolete morphological forms and spellings which were not anomalous at the time of writing are regularised to standard British English with the pair <orig> + <reg>, including original forms that happen to match present-day American rather than British spelling, e.g. -or rather than -our. However, we do not adjust (non-)use of apostrophes concerning plurals or possessives, nor archaic capitalisation.

NB. We no longer retain long ſ inside <reg>, <corr> or <expan>.

Past tense/past participles of regular verbs spelled with -d and now also -'d for PDE -ed are regularised:

he <choice><orig>desird</orig><reg>desired</reg></choice> permission I have <choice><orig>desir'd</orig><reg>desired</reg></choice> an immediate answer

Both stem and ending in forms like carry'd, desyr'd, folowd are regularised at the same time:

I <choice><orig>carry'd</orig><reg>carried</reg></choice> Miſs H home at 9 <choice><orig>desyr'd</orig><reg>desired</reg></choice> <choice><sic>folowd</sic><corr>followed</corr></choice>

No-longer-standard forms of irregular [strong] verbs (e.g. past tense sunk, past participle wrote) are to be regularised:

he <choice><orig>sunk</orig><reg>sank</reg></choice> my spirits within me which he has <choice><orig>wrote</orig><reg>written</reg></choice> to me

Forms of lay for lie are not currently tagged:

her intention of Laying in in <choice><abbr>y<hi rend="superscript">e</hi></abbr><expan>the</expan></choice> Country

Regularise wou'd, cou'd, shou'd, woud, coud, shoud, and (NB. change of practice) also regularise missing apostrophes in negative forms like dont or wont, and in pronoun + verb combinations like shes.

The forms 'til, until are still current, so they are not tagged, but 'till is. The frequent variants of o'clock without apostrophe and/or spaced as two words should be regularised, though capitalisation is left as is:

they don't come to stay, <choice><orig>'till</orig><reg>till</reg></choice> December
I am writing past 11 <choice><orig>o Clock</orig><reg>o'Clock</reg></choice> &amp; consequently half <lb/>asleep

3.6.1.2.1. Word separation at line-end

Our diplomatic transcription respects line boundaries in the original, but where a word crosses a line break, our normalised transcription reconstitutes the word at the end of the first line. Code with <choice> as follows, adding the attribute @n to <choice> with the value "hyp":

<lb/>[…] <choice n="hyp"><orig>happi= <lb/>=neſs</orig><reg>happineſs<lb/></reg></choice> […]

Reproduce exactly the type of hyphen (or non-use) on each fragment. The illustration above shows a double hyphen (for which we use the equals sign) on both first and second fragments — not uncommon in the corpus — but either fragment may have a single, double or no hyphen.

In order to ensure that the usual presentation is maintained, with diplomatic and normalised transcriptions having the same line-spacing and page or column boundary marking, the diplomatic transcription (generated from <orig>) and the normalised transcription (from <reg>) each need a <lb> element; we no longer include the attribute ‘break="no"’. If the broken word additionally crosses a column and/or page break, then <cb> and/or <pb> and their preceding <lb> will need to be repeated in <reg> as well:

<lb/>[…] <choice n="hyp"><orig>com= <lb/><pb n="2"/> <lb/>=penſation</orig><reg>compenſation<lb/><pb n="2"/><lb/></reg></choice>

NB. A punctuation mark that follows a word separated at line-end goes outside the <choice> element. This has the unfortunate effect in the normalised transcription that the punctuation mark is no longer attached to the reconstituted word but appears at the start of the following line. However, the script pipeline that produces normalised text files restores the orphan punctuation to its rightful position at the end of the first line.


3.6.1.2.2. Self-embedded <choice>
The situation may arise where a word broken at line-end is reconstituted with <orig> + <reg> as above, but then the reconstituted word needs in turn to be adjusted with <sic> or <orig>. In such cases, code the <choice n="hyp"> over the line-end first, then insert a second <choice> in its <reg> element. In the following example, com- + -pleated has been reassembled as compleated, then regularised to completed:
<lb/>[…] I cannot get a piece of work <choice n="hyp"><orig>com- <lb/>-pleated</orig><reg><choice><orig>compleated</orig><reg>completed</reg></choice><lb/></reg></choice>, which has been […]
Although choice-within-choice is not a desirable piece of code, there are occasional cases not involving hyphenation where it may be appropriate. In this example, the form om̅itted is expanded to ommitted (normal use of macron), which in turn is treated as an error and corrected:
<choice><sic><choice><abbr>om̅itted</abbr><expan>ommitted</expan></choice></sic><corr>omitted</corr></choice>

3.6.1.3. Expansion of abbreviations: <abbr> + <expan>

With some exceptions, we tag an abbreviated form with <abbr>, its expansion with <expan>, and wrap the pair in <choice>. The most common way for abbreviations to be written in the Papers is

  • one or more letters representing the start of the full word
  • one or more letters, superscripted, ending with the last letter of the full word
  • usually but not always, a mark under the superscript, which for consistency we choose to represent as punctuation (most often point, hyphen or colon), never as underline

NB. In transcription, any such punctuation is placed after all the letters, outside the superscript and before the closing </abbr> tag, regardless of relative left-right orientation in the original. (The same is true of abbreviations like Mrs-, Dr. that we don't tag.) That way a string such as Compts (as in the first example below) or the less frequent Comps may be followed by punctuation but will never be interrupted by it, which is useful for searching purposes.

Words from letter-writing formulae such as compliments, affectionate(ly) and servant are obvious candidates for abbreviation in correspondence:

Please to present my <choice><abbr>Comp<hi rend="superscript">ts</hi>:</abbr><expan>Compliments</expan></choice> to […]
Your faithful &amp; <choice><abbr>Affect<hi rend="superscript">e</hi>.</abbr><expan>Affectionate</expan></choice> Humble <choice><abbr>Serv<hi rend="superscript">t</hi></abbr><expan>Servant</expan></choice>

Particularly common as abbreviations are function words such as the or your or with, personal titles like Lord or Lady, and personal names like William; we can include here initials as well.

<choice><abbr>y<hi rend="superscript">e</hi></abbr><expan>the</expan></choice> palpitation of <choice><abbr>y<hi rend="superscript">r</hi></abbr><expan>your</expan></choice> heart
<persName><choice><abbr>S<hi rend="superscript">r</hi></abbr><expan>Sir</expan></choice> <choice><abbr>W<hi rend="superscript">m</hi>.</abbr><expan>William</expan></choice></persName>

We expand Col./Coll/Coll./etc. ‘Colonel’ and Gen:/Genl./etc. ‘General’, but many familiar abbreviations are not tagged at all: Mr, Mrs, Dr (as title, ‘Doctor’), Messrs, Esq, PS, St (‘Saint’), No (‘Number’), all still in use (and listed here in modern style without superscript or a final point). Even though generally superseded now by etc, we don't tag the very frequent &c (‘et cetera’) either.

Two of the same forms are tagged as abbreviations in the normal way, however, when used differently, namely Dr (as the referential noun ‘Doctor’, as ‘Dowager’ or as adjective ‘Dear’) and St (as ‘Street’):

The <choice><abbr>D<hi rend="superscript">rs</hi>.</abbr><expan>Doctors</expan></choice> affect to think it impoſsible My <choice><abbr>D<hi rend="superscript">r</hi></abbr><expan>Dear</expan></choice> Madam went up to Eagle <choice><abbr>St<hi rend="superscript">t</hi></abbr><expan>Street</expan></choice>

Use separate tags for adjacent abbreviations, such as the Prince of Wales's repeated A. A. A. ‘Adieu Adieu Adieu’, or the signature MCG ‘Martha Carolina Goldsworthy’:

<persName><choice><abbr>H</abbr><expan>Her</expan></choice> <choice><abbr>R</abbr><expan>Royal</expan></choice> <choice><abbr>H</abbr><expan>Highness</expan></choice></persName> <persName><choice><abbr>P.</abbr><expan>Prince</expan></choice> <choice><abbr>E.</abbr><expan>Edward</expan></choice></persName> <choice><abbr>A.</abbr><expan>Adieu</expan></choice> <choice><abbr>A.</abbr><expan>Adieu</expan></choice> <choice><abbr>A.</abbr><expan>Adieu</expan></choice> <seg type="bodySalute" n="closing">my ever dearest <persName>Miranda</persName></seg> <signed><persName><choice><abbr>M</abbr><expan>Martha </expan></choice><choice><abbr>C</abbr><expan>Carolina </expan> </choice><choice><abbr>G</abbr><expan>Goldsworthy</expan></choice></persName></signed>

NB. Notice the small cheat in the last example which leaves the closed-up initials to appear as such in the diplomatic transcription, while the full names are correctly spaced out in the normalised transcription, thanks to an extra space inserted in the first two <expan> elements (also noted in Signatures). The same trick may be needed for HRH ‘His/Her Royal Highness’, etc.

NB. The abbreviations PW ‘Prince of Wales’ and M: P: ‘Member of Parliament’ are best expanded as single units.

Unlike <sic> and <orig>, <abbr> is used reasonably often without its sister element or the enclosing <choice>, particularly for a person's initial when it cannot safely be expanded into a full name:

I have seen scarcely anything of <persName>M<hi rend="superscript">rs</hi>: <abbr>J</abbr> Potter</persName>

3.6.1.3.1. Macron

Some writers abbreviate a double consonant by placing a macron over a single consonant: com̄and ‘command’, ac̄ept ‘accept’, etc. The macron is also sometimes found in thrō ‘through’ and wc̄h ‘which’.

To enter such forms, find the appropriate Unicode character in oXygen via Edit | Insert from Character Map and search for ‘macron’. For ō choose Latin Small Letter O with Macron, which is a straightforward accented letter. Other values needed, such as m̄ n̄ c̄ r̄, must be constructed by typing the bare letter and then Combining Macron from the menu. This character may play havoc with cursor position in the oXygen editor, and lines containing it are more easily edited in Notepad++, which displays the combining macron uncombined and otherwise behaves normally. (A letter + combining macron currently displays less well in Firefox than in Chrome, Opera or Edge.)

this last <choice><abbr>can̄ot</abbr><expan>cannot</expan></choice> happen

3.6.1.3.2. Tho and tho' (‘though’), thro and thro' (‘through’)

The forms tho' and thro' with apostrophe are treated as abbreviations and tagged with <abbr>:

<choice><abbr>tho’</abbr><expan>though</expan></choice>

Likewise Dorothy Blosset's idiosyncratic form th'o.

However, the forms tho and thro without apostrophe are tagged with <orig>:

<choice><orig>tho</orig><reg>though</reg></choice>

3.6.2. No transcription: <gap>

The element <gap> ‘indicates a point where material has been omitted in a transcription […] because the material is illegible [or] invisible’ (adapted from definition in TEI Guidelines). It signals an editorial decision to omit, or an inability to transcribe, a span of text that follows that point. It does not itself extend over a span, so the closing slash / goes at the end of the tag (as with <lb/>) and there is no separate closing tag:

<gap reason="ink-blot" extent="2 characters"/>
<gap reason="unclear" extent="4 words"/>
<gap reason="deleted" extent="1 line"/>

As indicated by these examples, <gap> must contain the attributes @reason and @extent:

  • value of @reason: up to 3 from "cancelled | censored | covered | crease | damage | end-of-line | erased | faded | fold | folded-corner | illegible | ink-blot | overinked-pen | page-cut | seal | smudge | tear | unclear".
  • value of @extent: "nn character(s) | word(s) | line(s)", where nn = 1 | 2 | 3 | etc.

    The value "½ line" is also permissible.

    NB. A hedge like "5-6 characters", "2-3 words" is permissible, and the display script reacts to the first number only.

If an untranscribed passage crosses line boundaries, it should be tagged as a single <gap>:

<gap reason="unclear" extent="3 lines"/>

When an author has written something and subsequently deleted it, rendering it irrecoverable, <del> and <gap> should be used together as follows:

<del rend="cancelled"><gap reason="illegible" extent="1 word"/></del>

The method of deletion is stated in @rend for <del>, e.g. "cancelled" or "erased", so it need not be repeated in @reason for <gap>: a sufficient reason for a gap in deleted text is that it is "unclear" or wholly "illegible".

NB. If a part of the text has been censored by the recipient and is no longer legible, do not use <del> with <gap> but <gap> alone.

The <gap> element should only be used where text has not been transcribed. If partially legible text has been transcribed, <unclear> should be used instead.


3.6.3. Cautious transcription: <unclear>

If text is legible with a reasonable degree of certainty, use <unclear>:

the <unclear reason="indistinct">infirmities</unclear> of Old Age <lb/>usual course of Life -- he is in poſseſsion of a good fortu<unclear reason="end-of-line">ne</unclear>

Permitted values for the obligatory attribute @reason in <unclear> are "cancelled | censored | corrected | covered | crease | damage | end-of-line | erased | faded | fold | folded-corner | indistinct | ink-blot | overinked-pen | overwritten | page-cut | seal | smudge | tear". The default value if there is no specific cause for the unclearness is "indistinct". There is no limit to how many values can be used together:

the amiable &amp; agreeable <persName><choice><abbr>Cap<hi rend="superscript">t</hi>.</abbr><expan>Captain</expan></choice> P<unclear reason="cancelled erased censored">rice</unclear></persName>

3.6.4. Supplied text: <supplied>

The tag <supplied> is used as sparingly as possible. Words omitted by an author in error are not <supplied> in the transcriptions; a footnote may be offered instead. Where damage leaves no visible trace of a word, <gap> is used. If a word or character is almost readable, but with some uncertainty, it is marked <unclear>.

The tag <supplied> appears in this edition when there is not enough text remaining to justify <unclear>, but where there are sufficient traces of text to corroborate contextual and physical evidence of loss. This evidence may include third-party writings, such as a recipient who adds the words that were once there but now gone due to damage (see HAM/1/2/20). An example:

M<hi rend="superscript">rs</hi>. Dickens<supplied resp="#CU" reason="damage" cert="high">on</supplied>

As indicated in the example, there are three obligatory attributes, @resp, @reason and @cert:

  • @resp as usual indicates who is responsible for the editorial action.

    NB. Remember to include # in the value.

  • value of @reason: up to 3 from "covered | crease | damage | end-of-line | faded | fold | folded-corner | illegible | ink-blot | missing | page-cut | seal | smudge | tear".
  • value of @cert: "low | medium | high", with default "high", since <supplied> is not to be used lightly.

    A lost possessive s or 's may be <supplied>, but normally with cert="low", since the use of apostrophes at that period is rather variable. Likewise a lost past tense or past participle (e)d may be <supplied>, but normally with cert="low" or cert="mid", depending on the consistency of that author's selection from among such forms as wished, wish'd, wishd, wisht (all of which occur in the corpus).

Very rarely indeed we have wrapped <supplied> inside <add> in order to have the supplied text placed above the line (HAM/1/2/47):

<lb/>[…] &amp; set out to ride on the new <lb/>road that is making <add place="above"><supplied reason="illegible" cert="medium" resp="#DD">to</supplied></add> <placeName>Dulverton</placeName>

3.6.5. Redundant words: <surplus>

When a word is mistakenly repeated by an author, e.g. ‘There is a walk near the the Castle called […]’, tag the second occurrence as <surplus> with the attribute @reason and value "repeated". Other possible values for @reason in <surplus> are "anacoluthon" | "inappropriate" | "inserted-material", the last-named for the situation where a change of mind by the author in another part of the sentence makes the tagged word unnecessary in the revised version.

If a word is repeated over a page break, there is the possibility of tagging the first one as a catchword instead, if that would seem consonant with the writer's habits.


3.6.6. Moved text: <anchor> and <ref>

An <anchor> ‘attaches an identifier to a point within a text, whether or not it corresponds with a textual element’ (TEI guidelines). A <ref> (reference) ‘defines a reference to another location […]’. When we move a segment of text to a more logical reading position in order to avoid a discontinuity, we link source and destination positions with an <anchor> and a <ref> element, respectively. The chunks of text liable to be moved are addresses, annotations, dates, postscripts and ‘sections’ (a generic term for anything from a few words to several paragraphs).

Suppose a postscript has been written at the very top of the letter (see HAM/1/10/1/25, GEO/ADD/3/82/11 for examples). In the transcription, an <anchor> is placed at the top, marking the original position of the postscript and displaying as ▼. The element is a point, not a span, so the closing / is contained within the tag. The postscript is moved to where it would normally have been located had there been space enough, namely the foot of the letter. The moved text is wrapped in a <ref> whose attribute @target, "#ps", corresponds to the @xml:id of the <anchor>, "ps". However, the attribute @type on <ref> with value "moved" instructs the display script not to create a hyperlink tempting the reader to jump to the anchor position, which would be the more normal use of <ref>[@target] (on which see Links and cross-references below).

Top of the letter (place of the postscript in the ms):

<pb n="1"/> <lb/><anchor xml:id="ps" type="postscript" resp="#CSD"/>

Bottom of the letter (place of the postscript in the transcription):

<lb/><postscript><p><ref type="moved" target="#ps">Remember me particularly <lb/>to <persName>Sir William</persName> &amp; dear <del rend="cancelled">f</del> naughty <lb/><persName">Louisa</persName> &amp; by all means write <lb/>on your return<note resp="#CSD">Moved postscript here from top left of p.1, written upside down.</note>

For the placement of <ref> inside the postscript, see Postscripts above. Recall that if there is a <label> before the <p> of the postscript, <ref> must be duplicated inside <label>:

<lb/><postscript rend="indent"><label><ref target="#ps">P.S.</ref></label> <lb/><p rend="indent"><ref target="#ps">[…]</ref></p><closer rend="inline"> <ref target="#ps">Adieu.</ref></closer></postscript><note resp="#XYZ"> Moved postscript here from top of p.1.</note>

Anchor requires three attributes: @xml:id, @type and @resp:

  • value of @xml:id: "ps | ann | sec | add | dt".

    The one actually used in a particular <anchor> must correspond to the full form given as the value of @type.

  • value of @type: "postscript | annotation | section | address | date".

    The schema prompts with possible values and ensures that @xml:id and @type belong together.

    If there is more than one of any <anchor> type in the document, the values of their @xml:id's are numbered, e.g. "ps1 | ps2 | …", "sec1 | sec2 | …".

  • @resp as usual indicates who is responsible for the editorial action.

An <anchor> should not be free-floating but should have a <lb> to its left. Remember to include @resp in <anchor>, with # before your initials.

Although the original location is displayed as ▼, the moved text with its <ref> wrapping has no special marking on-screen. We generally add a footnote at the end of the moved text to alert the reader, often with this formulaic wording:

<note resp="#[editor]">Moved [annotation/postscript/etc.] here from [bottom left corner/right side of address/top left/etc.] of p.[1/2/3/etc.] when [unfolded/etc.], written [vertically/upside down].</note>

The parts about unfolding and direction of writing are each optional, used only as necessary.

NB. For the special case of an address line broken up by unfolding, see Addresses above.

It is quite common that the last page of a letter is divided in three, with two strips of content separated by the address panel in the centre. In such cases our preferred practice is to move the address down rather than the bottom strip up, since the address is the last to be written, and ▼ in the middle of the page is easier for relating image and transcription at a glance.

Although not an objective of this project, the code linking <anchor> and <ref> would permit a hyper-diplomatic version of transcription in which everything was left in situ.


3.6.7. Footnotes: <note>[@resp]

An editorial footnote is inserted where something is to be explained to the reader. The display script moves it to the foot of the text and numbers it sequentially, leaving a lemma number in situ, raised above the line. On the project website, hyperlinks allow the reader to jump from lemma to footnote [actually an endnote] and back; in MDC, the footnotes appear just below the text corresponding to one image, and the numbering restarts with each new page. Footnotes are coded as <note> with the sole attribute @resp, to distinguish them from Annotations for the XSLT script. The value of @resp is "#XYZ", where XYZ is the note-writer's standard identifier, aka the editor's initials; the # means that the xml:id has been declared within the document.

There is hardly any TEI/XML restriction on the position of <note>. The lemma for a footnote usually follows the last character of the span of text referred to. A footnote referring to the whole document, e.g. explaining an editorial change of sequence, will normally go straight after <pb n="1"/>.

A footnote referring to a particular element usually goes just before that element's closing tag. This avoids the footnote lemma jumping to the next line if the element is part of a centred or right-aligned span. If a footnote concerns an annotation, however, that would cause the raised footnote lemma number to be displayed in green italics, like the rest of the annotation, so the footnote's opening <note> is best placed after the annotation's closing </note> — so long as there is no problem keeping the lemma on the same line; if there is, too bad, and italicising the number is the lesser of two evils.

  • A footnote lemma follows a span of text including any closing punctuation, i.e. according to British rather than American publishing practice.
  • There is no space before a footnote lemma, except to separate lemmas where there is more than one footnote at a particular point in the transcription.
  • A footnote ends with a period.
  • References to book titles in a footnote go in italics, not quotation marks.
  • Quoted material goes in single curly quotation marks, but when discussing the meaning of a word, distinguish the word itself (in italics) from the meaning(s) or sense(s) attached to it (in single curly quotation marks).
  • References to the OED should be laid out in one of the ways illustrated below:
    […] Tredrille<note resp="#TO">‘A card-game played by three persons, usually with thirty cards’ (<hi rend="italic">OED</hi> s.v. <hi rend="italic">tredrille</hi> n. Accessed 02-07-2020).</note> […] pugh<note resp="#TO">This reading is uncertain, but <hi rend="italic">pugh</hi> is a rare 18th-century spelling of the interjection <hi rend="italic">pooh</hi> ‘[e]xpressing impatience, contempt, disdain, etc.’ (<hi rend="italic">OED</hi> s.v., B.1. Accessed 19-06-2020).</note>

Please include a footnote when the image of a document only contains covers, in order to clarify the absence of a transcription.

NB. What this document calls ‘footnotes’ are presented as such in MDC transcriptions, but they are displayed as endnotes on the project website.


3.6.7.1. Links and cross-references: <ref>

Hyperlinks to other items are needed most often inside editorial notes, as well as for navigation through a series of items using the ‘Previous Item’ and ‘Next Item’ buttons. In limited circumstances, links may appear in the transcription itself. A hyperlink is stored inside <ref>, with the attributes @type and @target. We prefer to have @type first, as a convenience for visual checking of XML files. Except in an item's summary, where an absolute path is needed, the target of a link within the edition is simply a filename that ends in ‘.xml’. All but the last of the following types are displayed as hyperlinks that the user can click on.

  • The previous and next items in a subseries are stored in correspContext/ref in the header, with @type taking the values "prev" or "next":
    <correspContext>    <ref type="prev" target="AR-HAM-00001-00002-00017.xml"/>    <ref type="next" target="AR-HAM-00001-00002-00019.xml"/> </correspContext>

    For the first or last items in a subseries, simply omit the prev or next link, as appropriate.

  • For a hyperlinked mention in text or footnotes of another item in the edition, the value of @type is "HAMedition". Manchester Digital Collections uses the plain filename format here for @target, which can point either to [the top of] an entire document:
    See <ref type="HAMedition" target="AR-HAM-00001-00017-00070.xml">HAM/1/17/70</ref> for […]

    or to a specific page:

    […] cf. <ref type="HAMedition" target="AR-HAM-00001-00002-00017/2.xml">HAM/1/2/17 p.2 col.2</ref> and others in this sequence. […] the poem Hamilton refers to a couple of months later in a diary (<ref type="HAMedition" target="AR-HAM-00002-00005/15.xml">HAM/2/5 p.15, entry for 13 November 1783</ref>): ‘I corrected M<hi rend="superscript">rs Vesey</hi>s copy of Miſs H Mores Poem […]’
  • For a hyperlinked mention in the <summary> element of the header, the value of @type is again "HAMedition", but Manchester Digital Collections uses absolute references for @target here:
    <summary><seg type="para">[…] This was originally catalogued, along with <ref type="HAMedition" target="https://www.digitalcollections.manchester.ac.uk/view/AR-HAM-00001-00001-00002-00007-B">HAM/1/1/2/7b</ref>, as a single item HAM/1/1/2/7.</seg> […]

    Notice the different format, with a full URL and no ‘.xml’ at the end.

  • For a link to the project website, @type takes the value "HAMproject":
    See <ref type="HAMproject" target="https://www.maryhamiltonpapers.alc.manchester.ac.uk/a-new-species-of-robbery/">‘A New Species of Robbery’</ref> (blogpost by Cassandra Ulph).
  • For all other external sites, whether in header or body, @type="external":
    ‘“Ferruginea” has dark-green leaves with rust-brown undersides’ (<ref type="external" target="https://en.wikipedia.org/wiki/Magnolia_grandiflora">Wikipedia</ref>).
  • Finally, as discussed in Moved text above, a <ref> with @type="moved" links a stretch of moved text to the <anchor> that marks its original position, for completeness of information in the XML file:
    <ref type="moved" target="#dt">1813</ref>

    Links with <anchor> as target are neither displayed in transcriptions nor processed as hyperlinks.


3.6.7.2. Bibliographic citations: <bibl>

A bibliographic citation in an editorial footnote should be tagged with <bibl>. This mark-up does not modify the visual appearance of the citation, but it may prove useful for indexing purposes.

The text of the first column of the cutting […] is reprinted in <bibl><hi rend="italic">Thoughts in Prose and Verse, started in his Walks, By John Hope</hi> (Stockton, 1780), pp.24-26</bibl>.

Contrast the use of <bibl> wrapped inside <cit> (see Quotations above), where the bibliographic reference for an authorial quotation is only visible on-screen in a mouseover tooltip.


3.6.8. XML comments (internal editorial notes)

XML comments are for internal project use and will often be provisional or temporary; they should be deleted when no longer needed. They take the following form:

<!-- resp="#XYZ" [...]. -->
  • The pseudo-attribute @resp assigns the comment to the team member concerned. As usual, # is needed before your initials.
  • A colon is not needed before the comment part.
  • A double hyphen is not allowed inside an XML comment, only at the boundaries.

XML comments are ignored by the display script and are not visible in transcriptions or metadata on-screen.


3.7. Overview of dating of letters

For most letters, the date we enter in both <origDate> and <correspAction type="sent">/date is the date recorded in ELGAR or the catalogue of another library, reproduced from <date> in <dateline> (if present) or otherwise inferred from the manuscript. However, if a journal-letter was written over several days, there can be one date in the catalogue and two different dates in the XML:

  • the catalogue typically records the date the letter was started
  • <origDate> records the period over which it was written
  • <correspAction type="sent">/date records when it was sent

Furthermore, if it is known when a journal- or other letter was received, the metadata will have yet another <date> element — potentially different again — in <correspAction type="received">.

The appropriate attribute for entering a date is as follows:

  • precise single date: @when
  • approximate single date: @notBefore and/or @notAfter
  • range of specific dates (for <origDate> only): @from + @to

Dates in an attribute are entered in the "1779-09-26" style (see Dates above).

Dates transcribed from an original document are reproduced exactly as written, but dates in plain text form in metadata (always) and footnotes (usually) are given in the style ‘26 September 1779’, etc.


3.8. Overview of attribute @rend

The attribute @rend (rendition) ‘indicates how the element in question was rendered or presented in the source text’ (TEI Guidelines). We use @rend in three quite distinct ways that cannot be combined:

  • @rend adjusts the style of a span of text wrapped by one of the elements <hi>, <emph>, <l>.
  • @rend shifts rightwards either what follows <lb> or the contents of an existing element such as <opener>, <closer>, <dateline>, <date>, <salute>, <signed>, <postscript>, <note>[@hand] and others.
  • @rend="inline" cancels a midline line-break at start or end of a <p> element, when added to an opening <p> or <closer> tag.

We take them in turn. NB. We no longer permit mixing of the style and rightwards-movement uses in the same element (<signed rend="align-right underlined">, etc.).


3.8.1. Style

<hi> requires @rend with usually 1 but can be up to 3 values from the list "underlined | superscript | subscript | italic | strikethrough | double-underlined | triple-underlined | dotted-underlined | wavy-underlined | larger | all-caps | over-inked-pen | retraced". The last four are ignored in display, and all the variants of "underlined" are displayed as single underline.

NB. Superscript and subscript are reasonably grouped here among style attributes, since they display text in a smaller font as well as slightly raising or lowering it.

<emph> requires @rend with between 1 and 3 values from "underlined | italic | double-underlined | triple-underlined | dotted-underlined | wavy-underlined | retraced | larger | all-caps", with similar display limitations.

Wherever appropriate, underlining should be done with <emph> rather than <hi>. This needs thorough revision, since certain values of @rend, and indeed the element <emph> itself, had not been available in the Image to Text project.

<l> (verse line) optionally allows @rend with 1 of the following values: "underlined | italic".


3.8.2. Rightwards movement

On many content elements, @rend is concerned with left-right positioning, with possible values "indent | center | align-right". On our project website, these labels are somewhat misleading. Value "indent" inserts some hard spaces to indent the first line of the element only. Values "center" and "align-right" shift the left margin inwards for the duration of the element, rather than adjusting each line of text to be genuinely centered or aligned to the right margin, as in a word processor. Good practice generally is to use @rend in this way only on an element that starts at the left margin. If used on an element with text to its left, it will invoke an undesired line-break before the element. The values "center" and "align-right" for @rend always introduce a blank line in the display after the element, which is also often undesirable. For these reasons, unless it is particularly convenient to have @rend in another element, we are moving increasingly towards using @rend in <lb>, where it applies to that line only and does not introduce blank lines before or after it.

The default layout without @rend is left alignment.

NB. It is inadvisable to insert rightwards-moving @rend in more than one element on the same line. For cases where there needs to be more than the usual inter-word spacing between items on the same line, use the <space> element instead (on which see Extra spacing between items above). Leave one normal space to the left of <space>.


3.8.3. Cancellation of midline linebreak

The last use of @rend is to handle a peculiarity of the interaction between TEI and HTML. In normal use, a paragraph <p> element in XML or HTML is treated as such in on-screen HTML, starting on a line of its own and finishing on a line of its own. However, there are situations where TEI demands an opening <p> or a closing </p> at a point which must be midline if we are to preserve the lineation of the ms. The principal cases are these:

  • A postscript begins with ‘P.S.’ or similar and may then continue on the same line with the content of the postscript. TEI requires that the line start with <postscript>, followed by ‘P.S.’ wrapped in <label>, followed by the content of the postscript wrapped in <p>. The tag <p> is thus inevitably midline. We place rend="inline" in <p> to instruct the display script not to jump to a new line:
    <lb/><postscript><label>P.S.</label> <p rend="inline">I am in daily <lb/>expectation of a letter from […];
  • A div break requires a paragraph break as well, and the new paragraph may not be the very first item after the new <div>. In this example, <dateline> is not allowed in <p>:
    <lb/>we have had a good deal of rain this afternoon -- </p>         </div>         <div type="continuation"> <dateline><date when="1789-07-15">15<hi rend="superscript">th</hi></hi></date>/</dateline> <p rend="inline">This morning I <lb/>got up at 5 O'Clock on purpose to write to you [...]
  • To eke out the paper, a writer starts a new paragraph not on a new line but after an extra space on the same line:
    <lb/>[…] I continue to amuse myself very much, with Music. <lb/>I have been once at the Opera, and was very <lb/>well entertained.</p> <space unit="chars" quantity="5"/><p rend="inline"><persName>Lady Stormont</persName> is come <lb/>to <placeName>Town</placeName>. <rs>Her Daughter</rs> is much improved […]
  • A closer always requires the preceding paragraph to end just before it, and the changeover point may well be midline:
    <lb rend="indent"/>God bleſs and preserve You -- </p> <closer rend="inline"><seg type="closeSalute">my dear <lb/>dear <persName>Mary</persName> [...]

NB. @rend is not permitted in <fw>, nor anywhere in the header, specifically in <p>.


3.9. Overview of person references

This section summarises the different ways of tagging person references, some of which have already been discussed elsewhere under Salutations, Openers, Closers and Segments for research analysis. For brevity, the examples leave out the attribute @ref that links an element to the personography. In actual XML files, of course, this attribute, used with value "psn:XYZ", must never be omitted from <persName> or <rs>.


3.9.1. <salute> vs. <seg>

References to the addressee and the author are tagged with <salute> or <seg> (and <persName> as well, if a proper name is used), depending on the role of the string in the letter:

  • <salute> is a structural element containing the greeting at start or end of the letter.
  • <seg> is used to tag mentions of the addressee in <p>, as well as of the author.

Final punctuation goes inside the <salute> or <seg> element. NB. This does not apply to <persName> and <rs>, neither of which includes final punctuation, only internal punctuation that is part of the reference, e.g. in an abbreviation.

If an explicit name for the addressee is given, both <salute> and <seg> take <persName>:

<salute n="opening">my dear <persName>Mary</persName>,</salute>
<seg type="openSalute">my dear <persName>Mary</persName>,</seg>

Pronouns such as you are not tagged either as <rs> or <seg>.


3.9.2. Referring to persons in <opener>

This will always be a reference to the addressee. If the name is given, use <persName> inside <salute>, if not, <rs> in <salute>:

<salute n="opening">My dear(est) etc. <persName>Miſs Hamilton</persName>,</salute> <salute n="opening"><rs>My dear(est) etc. Madam/Sister/Cousin</rs>,</salute>

3.9.3. Referring to persons in <p>


3.9.3.1. The addressee

The element <seg> should be used to tag a reference to the addressee in <p>, with one of two possible values for @type: "openSalute | bodySalute":

  • Use <seg type="openSalute"> if there is no <salute> element in <opener> but a salutation in the first sentence of <p> instead (e.g. ‘To be sure there seems, my Dear Miſs Hamilton, to be a spell upon […]’). Remember to include <persName> or <rs> as appropriate.
  • Use <seg type="bodySalute"> beyond the opening sentence, as follows:
    • Only the explicit name of the addressee:
      <seg type="bodySalute"><persName>Miss Hamilton</persName></seg>
    • More than the explicit name of the addressee:
      <seg type="bodySalute">my dear <persName>Miss Hamilton</persName></seg>
    • No explicit name of the addressee:
      <seg type="bodySalute"><rs>my dear friend/sister/etc.</rs></seg>
  • If <seg type="bodySalute"> is used towards the end of <p> and near <closer> (cf. Referring to persons in closer), indicate its proximity to <closer> with the attribute @n and the value "closing":
    <seg type="bodySalute" n="closing"><rs>my dear</rs></seg> God bless you.

    NB. Pronouns such as you are not to be tagged here, in line with our general practice for <rs>. As with <salute>, keep final punctuation inside <seg>, including dash ( -- ):

    <lb/>Adieu -- <seg type="bodySalute" n="closing"><rs>My very dear friend</rs> -- </seg> With best Love to [...]
  • If the <closer> element is only used for the author's signature and/or a dateline (i.e. there are no <salute="closing"> or <seg type="closeFormula"> elements present), a closing reference to the addressee which occurs before the signature and/or dateline is to be tagged with <seg type="bodySalute" n="closing"> inside <p>.
    <lb/>is my Night in waiting -- God Bleſs You, Good Night <lb/><seg type="bodySalute" n="closing"><rs>My Dear Dear friend</rs>.</seg></p> <lb/><closer><signed><persname>Miranda</persName></signed></closer>
    <lb/>Adieu <seg type="bodySalute" n="closing"><rs>my Dear Dear Friend</rs></seg></p> <lb/><closer><signed><persname>Miranda</persName></signed></closer>

It can happen that an author refers to the addressee in a quoted piece of text, as William Napier does in HAM/1/19/26. In that case, use <seg type="bodySalute"> rather than, for example, <rs>. It is not a direct salutation towards the addressee, but we will still want to investigate how the author refers to them in the context of a letter/note/etc. directed to them, hence the use of <seg type="bodySalute">.

In principle we do not tag generic references (‘the French’, ‘people who can make a tolerable use of them’), only references to specific individuals, but sometimes the distinction is tricky. For example, Mrs Sarah Dickenson writes ‘but how is it poʃsible you shou'd wish for a Letter from me, who in this little retirement can find nothing, which deserves to be the subject of one, to a young Lady? […] but that which is pleasing to a fond Mother, is too insignificant to be committed to paper’ (HAM/1/3/1/2). The highlighted phrases are technically generic, but clearly Mrs Dickenson is also characterising addressee and author as being, respectively, those kinds of person. It's a matter of judgement which such generic characterisations are usefully tagged with <seg> for research purposes (and perforce also with <rs>).


3.9.3.2. The author

When an author refers to themself in <p> in the third person, generally without using their name (John Fisher is a notable exception), we tag this with <seg type="author"> containing <persName> or <rs>:

  • No explicit name of the author:
    surely no man can love a Woman more than <seg type="author"><rs>your Husband</rs></seg> loves you
  • With explicit name of the author:
    <seg type="author"><persName>Lord Orford</persName></seg> is extremely obliged to […] <seg type="author">your affectionate <persName>Dickenson</persName></seg> is very unhappy to be at so great a distance from you

3.9.3.3. Other people

For other people mentioned in <p>, use <persName> where a name is present, <rs> otherwise. Some <rs> strings must in turn contain an embedded <persName> or <rs>:

<rs><persName>George</persName>s sisters</rs>) <rs><rs>the General</rs>'s wife</rs>

3.9.4. Referring to persons in <closer>


3.9.4.1. The addressee

We use <seg type="closeSalute"> inside <closer> for a vocative reference to the addressee.

  • Use <persName> inside <seg type="closeSalute"> where a name is present, <rs> if not (just as with <seg type="openSalute"> and <seg type="bodySalute">).
    • For example, ‘Believe me, my dear brother, your most humble servant John Dickenson’ becomes:
      <closer><salute n="closing">Believe me <seg type="closeSalute"><rs>my dear  brother,</rs>/seg> <seg type="closeFormula">your most humble servant</seg></salute> <signed><persName>John Dickenson</persName></signed></closer>
    • And ‘Believe me, my dear Miss Hamilton, your most humble servant John Dickenson’ becomes:
      <closer><salute n="closing">Believe me <seg type="closeSalute">my dear <persName>Miss Hamilton</persName>, </seg> <seg type="closeFormula">your most humble servant</seg></salute> <signed><persName>John Dickenson</persName></signed></closer>
  • A parenthetic salutation intervening between a Believe me-type phrase and the closing formula is tagged with <seg type="closeSalute">, e.g. ‘believe me, my dear friend, your most humble servant HF’, and likewise one that occurs at the end of the closer, as ‘toujours chére’ [sic] in the second example below:
    <closer><salute n="closing">believe me, <seg type="closeSalute"><rs>my dear friend</rs>,</seg> <seg type="closeFormula">your most humble servant</seg></salute> <signed>HF</signed></closer>
    <closer><salute n="closing"><seg type="closeFormula"><foreign xml:lang="fr">Votre</foreign></seg></salute> <signed><persName>Palemon</persName></signed> <seg type="closeSalute"><foreign xml:lang="fr">toujours chére</foreign>.</seg></closer>
  • If <seg type="closeSalute"> is the first element in <closer>, however, e.g. ‘my dear friend, I am your most humble servant HF’, it precedes <salute> rather than going inside:
    <closer><seg type="closeSalute"><rs>my dear friend</rs>,</seg> <salute n="closing">I am <seg type="closeFormula">your most humble servant</seg></salute><signed>HF</signed></closer>
  • If the <closer> element is only used for the author's signature and/or a dateline (i.e. there are no <salute="closing"> or <seg type="closeFormula"> elements present), a closing reference to the addressee which occurs before the signature and/or dateline is considered part of <p> and thus should be tagged with <seg type="bodySalute" n="closing"> inside <p>, not with <seg type="closeSalute"> inside <closer>.
    <lb/>is my Night in waiting -- God Bleſs You, Good Night <lb/><seg type="bodySalute" n="closing"><rs>My Dear Dear friend</rs>.</seg></p> <lb/><closer><signed><persname>Miranda</persName></signed></closer>
    <lb/>Adieu <seg type="bodySalute" n="closing"><rs>my Dear Dear Friend</rs></seg></p> <lb/><closer><signed><persname>Miranda</persName></signed></closer>

3.9.4.2. The author

When the author signs, the name, wrapped in <persName>, goes in <signed> (see Signatures). The element <signed> goes inside <closer> but after and outside <salute> (if present).

Such formulae to do with the author as ‘Yours affectionately’, ‘Your most humble servant’ are always wrapped in <seg type="closeFormula"> inside <salute n="closing">, and indeed <salute n="closing"> nearly always contains one, sometimes as its only contents:

<closer><salute n="closing"><seg type="closeFormula">Yours ever most affectionately,<seg></salute> <signed><persName>Charlotte Finch</persName></signed></closer>
  • Include adjacent adverbials such as ‘ever’, ‘always’, ‘with great sincerity’:
    <closer><salute n="closing">I remain <seg type="closeFormula">ever your most affectionate</seg></salute> <signed><persName>Palemon</persName></signed></closer>
  • Sometimes modifiers of the formula can be found after the (pro)noun referring to the author, in which case <eg type="closeFormula"> should be extended to include them:
    <lb/><closer><salute n="closing"><seg type="closeFormula">Yours with all my heart Errors excepted</seg></salute> <signed><persName ref="psn:HH">Henry Hamilton</persName></signed></closer>
    • However, if another element such as <seg type="closeSalute"> intervenes between adverbial and basic formula, the adverbial goes inside <salute> but is not part of <seg type="closeFormula">:
      <closer><salute n="closing">I remain ever, <seg type="closeSalute"><rs>my dear friend</rs>,</seg> <seg type="closeFormula">your most affectionate</seg></salute> <signed><persName>Palemon</persName></signed></closer>
  • Phrases occurring after the <signed> element such as ‘toujours de même’ are to be tagged with a separate <seg type="closeFormula"> element and wrapped inside a new <salute n="closing"> element. Additionally, if such a phrase is underlined, the preferred sequence is as follows:
    <closer> […] <signed>[…]</signed> <lb/><salute n="closing"><seg type="closeFormulae"> <foreign xml:lang="fr"><emph rend="underlined">toujours de même</emph></foreign>.</seg></salute></closer>
    • NB. Final punctuation goes outside <foreign> and <emph> but remains inside <seg>.
  • Instances such as ‘Your/Vôtre Palemon’ take <seg type="closeFormula"> for Your/Vôtre and <signed> for Palemon:
    <seg  type="closeFormulae"><choice><abbr>Yr.</abbr><expan>Your</expan></choice></seg> <signed><persName>Palemon</persName></signed>

 

 


Appendix A Elements


Appendix A.1 <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
versionspecifies the version number of the TEI Guidelines against which this document is valid.
StatusOptional
Datatypeteidata.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>.

Contained by
textstructure: TEI
May contain
header: teiHeader
linking: standOff
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>
  <elementRef key="teiHeader"/>
  <alternate>
   <sequence>
    <classRef key="model.resource"
     minOccurs="1" maxOccurs="unbounded"/>
    <elementRef key="TEI" minOccurs="0"
     maxOccurs="unbounded"/>
   </sequence>
   <elementRef key="TEI" minOccurs="1"
    maxOccurs="unbounded"/>
  </alternate>
 </sequence>
</content>
    
Schema Declaration
element TEI
{
   hatt.global.attributes,
   hatt.typed.attributes,
   attribute version { text }?,
   ( hteiHeader, ( ( hmodel.resource+, hTEI* ) | hTEI+ ) )
}

Appendix A.2 <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
StatusOptional
Datatypeteidata.enumerated
Note

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

Member of
Contained by
May contain
Note

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

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

Appendix A.3 <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
placespecifies where this item is placed.
Derived fromatt.placement
StatusRequired
Datatype
Legal values are:
above
inline
below
margin-left
margin-right
center
top-left
top-center
top-right
bot-left
bot-center
bot-right
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
{
   hatt.global.rendition.attribute.rend,
   hatt.dimensions.attribute.unit,
   hatt.cmc.attributes,
   attribute place
   {
      "above"
    | "inline"
    | "below"
    | "margin-left"
    | "margin-right"
    | "center"
    | "top-left"
    | "top-center"
    | "top-right"
    | "bot-left"
    | "bot-center"
    | "bot-right"
   },
   hmacro.paraContent
}

Appendix A.4 <addName>

<addName> (additional name) contains an additional name component, such as a nickname, epithet, or alias, or any other descriptive phrase used within a personal name. [14.2.1. Personal Names]
Modulenamesdates
Attributes
Member of
Contained by
May contain
Example
<persName>  <forename>Frederick</forename>  <addName type="epithet">the Great</addName>  <roleName>Emperor of Prussia</roleName> </persName>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element addName
{
   hatt.global.attributes,
   hatt.personal.attributes,
   hatt.typed.attributes,
   hatt.cmc.attributes,
   hmacro.phraseSeq
}

Appendix A.5 <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
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype
Legal values are:
indent
center
align-right
Member of
Contained by
core: address
May contain
Note

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

Example
<address>  <addrLine>Computing Center, MC 135</addrLine>  <addrLine>P.O. Box 6998</addrLine>  <addrLine>Chicago, IL</addrLine>  <addrLine>60680 USA</addrLine> </address>
Example
<addrLine>  <ref target="tel:+1-201-555-0123">(201) 555 0123</ref> </addrLine>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element addrLine
{
   hatt.global.responsibility.attribute.cert,
   attribute rend { "indent" | "center" | "align-right" }?,
   hmacro.phraseSeq
}

Appendix A.6 <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
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype
Legal values are:
indent
center
align-right
Member of
Contained by
May contain
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.

ExampleUsing 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>
ExampleWhen 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="1" maxOccurs="1">
  <classRef key="model.global"
   minOccurs="0" maxOccurs="unbounded"/>
  <sequence minOccurs="1"
   maxOccurs="unbounded">
   <classRef key="model.addrPart"/>
   <classRef key="model.global"
    minOccurs="0" maxOccurs="unbounded"/>
  </sequence>
 </sequence>
</content>
    
Schema Declaration
element address
{
   hatt.global.responsibility.attribute.cert,
   hatt.cmc.attributes,
   attribute rend { "indent" | "center" | "align-right" }?,
   ( hmodel.global*, ( ( hmodel.addrPart, hmodel.global* )+ ) )
}

Appendix A.7 <affiliation>

<affiliation> (affiliation) contains an informal description of a person's present or past affiliation with some organization, for example an employer or sponsor. [16.2.2. The Participant Description]
Modulenamesdates
Attributes
typecharacterizes the element in some sense, using any convenient classification scheme or typology.
Derived fromatt.typed
StatusOptional
Datatypeteidata.enumerated
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
StatusOptional
Datatype1–∞ 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
Note

If included, the name of an organization may be tagged using either the <name> element as above, or the more specific <orgName> element.

Example
<affiliation>Junior project officer for the US <name type="org">National Endowment for    the Humanities</name> </affiliation>
ExampleThis example indicates that the person was affiliated with the Australian Journalists Association at some point between the dates listed.
<affiliation notAfter="1960-01-01"  notBefore="1957-02-28">Paid up member of the <orgName>Australian Journalists Association</orgName> </affiliation>
ExampleThis example indicates that the person was affiliated with Mount Holyoke College throughout the entire span of the date range listed.
<affiliation from="1902-01-01"  to="1906-01-01">Was an assistant professor at Mount Holyoke College.</affiliation>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element affiliation
{
   hatt.global.attributes,
   hatt.editLike.attributes,
   hatt.datable.attributes,
   hatt.naming.attributes,
   hatt.typed.attribute.subtype,
   hatt.cmc.attributes,
   attribute type { text }?,
   attribute calendar { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.8 <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
xml:id(identifier) provides a unique identifier for the element bearing the attribute.
Derived fromatt.global
StatusRequired
DatatypeID
resp(responsible party) indicates the agency responsible for the intervention or interpretation, for example an editor or transcriber.
Derived fromatt.global.responsibility
StatusOptional
Schematron
<sch:rule context="tei:anchor"> <sch:let name="noteMakers"  value="//tei:principal/@xml:id | //tei:editor/@xml:id | //tei:respStmt/@xml:id"/> <sch:let name="plusHash"  value="for $maker in $noteMakers return concat('#', $maker)"/> <sch:assert test=". = //tei:editor/concat('#', @xml:id) or . = //tei:respStmt/concat('#', @xml:id)"  role="error">Permissible values are "<sch:value-of select="$plusHash"/>". </sch:assert> </sch:rule>
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
typecharacterizes the element in some sense, using any convenient classification scheme or typology.
Derived fromatt.typed
StatusRequired
Datatypeteidata.enumerated
Legal values are:
address
annotation
date
postscript
section
Member of
Contained by
May containEmpty element
Note

The @xml:id and @type of <anchor> must be paired as follows: "add"~"address", "ann"~"annotation", "dt"~"date", "ps"~"postscript", "sec"~"section". If there is more than one <anchor> with a particular @type, number the @xml:id's, e.g. "ann1", "ann2", … .

Example
     <lb/><anchor xml:id="sec" type="section" resp="#GT"/>    (HAM/1/2/21)      <lb/><anchor xml:id="add1" type="address" resp="#CU"/>   (HAM/1/2/19)             
Schematron
<sch:rule context="tei:anchor"> <sch:assert test="(./@type='address' and matches(./@xml:id, '^add')) or (./@type='annotation' and matches(./@xml:id, '^ann')) or (./@type='date' and matches(./@xml:id, '^dt')) or (./@type='postscript' and matches(./@xml:id, '^ps')) or (./@type='section' and matches(./@xml:id, '^sec'))"  role="error">The values of @xml:id and @type of <anchor> must be coordinated: "add" ~ "address", "ann" ~ "annotation", "dt" ~ "date", "ps" ~ "postscript", "sec" ~ "section". Where necessary, add a single digit to the @xml:id ("ann1", etc.) if there is more than one of that type. </sch:assert> <sch:let name="local-targets"  value="//tei:text//tei:ref[@type='moved']/@target"/> <sch:let name="local-target"  value="for $targ in $local-targets return substring-after($targ,'#')"/> <sch:assert test="./@xml:id = $local-target"  role="error">There must be a matching <ref> whose @target points to the @xml:id of an <anchor>. </sch:assert> </sch:rule>
Content model
<content>
 <empty/>
</content>
    
Schema Declaration
element anchor
{
   hatt.cmc.attributes,
   attribute xml:id { text },
   attribute resp { list { + } }?,
   attribute type
   {
      "address" | "annotation" | "date" | "postscript" | "section"
   },
   empty
}

Appendix A.9 <annotation>

<annotation> represents an annotation following the Web Annotation Data Model. [17.10. The standOff Container]
Modulelinking
Attributes
xml:id(identifier) provides a unique identifier for the element bearing the attribute.
Derived fromatt.global
StatusRequired
DatatypeID
targetspecifies the destination of the reference by supplying one or more URI References
Derived fromatt.pointing
StatusRequired
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
motivation
StatusOptional
Datatype1–∞ occurrences of teidata.enumerated separated by whitespace
Legal values are:
assessing
intent is to assess the target resource in some way, rather than simply make a comment about it
bookmarking
intent is to create a bookmark to the target or part thereof
classifying
intent is to classify the target in some way
commenting
intent is to comment about the target
describing
intent is to describe the target, rather than (for example) comment on it
editing
intent is to request an edit or a change to the target resource
highlighting
intent is to highlight the target resource or a segment thereof
identifying
intent is to assign an identity to the target
linking
intent is to link to a resource related to the target
moderating
intent is to assign some value or quality to the target
questioning
intent is to ask a question about the target
replying
intent is to reply to a previous statement, either an annotation or another resource
tagging
intent is to associate a tag with the target
Note

For further detailed explanation of the suggested values, see the Web Annotation Vocabulary (WAV). The motivations described here map to URIs defined by the WAV and when exported to RDF or JSON-LD must have the URI http://www.w3.org/ns/oa# prepended.

As an RDF vocabulary, WADM permits the definition of new motivations (see Appendix C of the WAV). In TEI, new motivations may be defined in a custom ODD (see section 23.3.1.3). New motivations must also map to URIs defined by an RDF ontology extending the WAV.

Member of
Contained by
May contain
Example
<annotation xml:id="ann1"  motivation="linkingtarget="#Gallia"> <!– See https://www.w3.org/TR/annotation-model/#lifecycle-information and https://www.w3.org/TR/annotation-model/#agents –>  <respStmt xml:id="fred">   <resp>creator</resp>   <persName>Fred Editor</persName>  </respStmt>  <revisionDesc>   <change status="created"    when="2020-05-21T13:59:00Zwho="#fred"/>   <change status="modified"    when="2020-05-21T19:48:00Zwho="#fred"/>  </revisionDesc> <!– See https://www.w3.org/TR/annotation-model/#rights-information –>  <licence target="http://creativecommons.org/licenses/by/3.0/"/> <!– Multiple bodies –> <!– Pointers to sections of text in the same document –>  <ptr target="#string-range(c1p1s1,0,6)"/>  <ptr target="#string-range(c1p1s6,19,7)"/> </annotation>
Example
<annotation xml:id="TheCorrectTitle"  motivation="commentingtarget="#line1">  <note>The correct title of this specification, and the correct full name of XML, is    "Extensible Markup Language". "eXtensible Markup Language" is just a spelling error.    However, the abbreviation "XML" is not only correct but, appearing as it does in the title    of the specification, an official name of the Extensible Markup Language. </note> </annotation>
Content model
<content>
 <sequence>
  <elementRef key="respStmt" minOccurs="0"
   maxOccurs="unbounded"/>
  <elementRef key="revisionDesc"
   minOccurs="0" maxOccurs="unbounded"/>
  <elementRef key="licence" minOccurs="0"
   maxOccurs="unbounded"/>
  <classRef key="model.annotationPart.body"
   minOccurs="0" maxOccurs="unbounded"/>
 </sequence>
</content>
    
Schema Declaration
element annotation
{
   hatt.global.attribute.n,
   hatt.global.attribute.xmllang,
   hatt.global.attribute.xmlbase,
   hatt.global.attribute.xmlspace,
   hatt.global.rendition.attribute.rend,
   hatt.global.rendition.attribute.style,
   hatt.global.rendition.attribute.rendition,
   hatt.global.linking.attribute.corresp,
   hatt.global.linking.attribute.synch,
   hatt.global.linking.attribute.sameAs,
   hatt.global.linking.attribute.copyOf,
   hatt.global.linking.attribute.next,
   hatt.global.linking.attribute.prev,
   hatt.global.linking.attribute.exclude,
   hatt.global.linking.attribute.select,
   hatt.global.facs.attribute.facs,
   hatt.global.change.attribute.change,
   hatt.global.responsibility.attribute.cert,
   hatt.global.responsibility.attribute.resp,
   hatt.global.source.attribute.source,
   hatt.pointing.attribute.targetLang,
   hatt.pointing.attribute.evaluate,
   attribute xml:id { text },
   attribute target { list { + } },
   attribute motivation
   {
      list
      {
         (
            "assessing"
          | "bookmarking"
          | "classifying"
          | "commenting"
          | "describing"
          | "editing"
          | "highlighting"
          | "identifying"
          | "linking"
          | "moderating"
          | "questioning"
          | "replying"
          | "tagging"
         )+
      }
   }?,
   ( hrespStmt*, hrevisionDesc*, hlicence*, hmodel.annotationPart.body* )
}

Appendix A.10 <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
StatusOptional
Datatype1–∞ 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
core: bibl
msdescription: msItem
May contain
Note

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

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

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

Example
<author>British Broadcasting Corporation</author> <author>La Fayette, Marie Madeleine Pioche de la Vergne, comtesse de (1634–1693)</author> <author>Anonymous</author> <author>Bill and Melinda Gates Foundation</author> <author>  <persName>Beaumont, Francis</persName> and <persName>John Fletcher</persName> </author> <author>  <orgName key="BBC">British Broadcasting    Corporation</orgName>: Radio 3 Network </author>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element author
{
   hatt.global.attributes,
   hatt.naming.attributes,
   hatt.datable.attributes,
   attribute calendar { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.11 <authority>

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

Appendix A.12 <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
xml:id(identifier) provides a unique identifier for the element bearing the attribute.
Derived fromatt.global
StatusOptional
DatatypeID
Sample values include:
displayImageRights
downloadImageRights
metadataRights
teiEncodedTranscriptionRights
unencodedTranscriptionRights
status(status) supplies a code identifying the current availability of the text.
StatusRequired
Datatypeteidata.enumerated
Legal values are:
free
unknown
restricted
Member of
Contained by
May contain
core: p
header: licence
Note

A consistent format should be adopted

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

Appendix A.13 <bibl>

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

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

Example
<bibl>Blain, Clements and Grundy: Feminist Companion to Literature in English (Yale, 1990)</bibl>
Example
<bibl>  <title level="a">The Interesting story of the Children in the Wood</title>. In <author>Victor E Neuberg</author>, <title>The Penny Histories</title>. <publisher>OUP</publisher>  <date>1968</date>. </bibl>
Example
<bibl type="articlesubtype="book_chapter"  xml:id="carlin_2003">  <author>   <name>    <surname>Carlin</surname>      (<forename>Claire</forename>)</name>  </author>, <title level="a">The Staging of Impotence : France’s last    congrès</title> dans <bibl type="monogr">   <title level="m">Theatrum mundi : studies in honor of Ronald W.      Tobin</title>, éd.  <editor>    <name>     <forename>Claire</forename>     <surname>Carlin</surname>    </name>   </editor> et  <editor>    <name>     <forename>Kathleen</forename>     <surname>Wine</surname>    </name>   </editor>,  <pubPlace>Charlottesville, Va.</pubPlace>,  <publisher>Rookwood Press</publisher>,  <date when="2003">2003</date>.  </bibl> </bibl>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">
  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.highlighted"/>
  <classRef key="model.pPart.data"/>
  <classRef key="model.pPart.edit"/>
  <classRef key="model.segLike"/>
  <classRef key="model.ptrLike"/>
  <classRef key="model.biblPart"/>
  <classRef key="model.global"/>
 </alternate>
</content>
    
Schema Declaration
element bibl
{
   hatt.declarable.attributes,
   hatt.docStatus.attributes,
   hatt.edition.attributes,
   hatt.global.attributes,
   hatt.sortable.attributes,
   hatt.typed.attributes,
   (
      text
    | hmodel.gLike
    | hmodel.highlighted
    | hmodel.pPart.data
    | hmodel.pPart.edit
    | hmodel.segLike
    | hmodel.ptrLike
    | hmodel.biblPart
    | hmodel.global
   )*
}

Appendix A.14 <body>

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

Appendix A.15 <catDesc>

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

Appendix A.16 <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
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="catDesc" minOccurs="1"
    maxOccurs="unbounded"/>
   <alternate minOccurs="0"
    maxOccurs="unbounded">
    <classRef key="model.descLike"/>
    <elementRef key="equiv"/>
    <elementRef key="gloss"/>
   </alternate>
  </alternate>
  <elementRef key="category" minOccurs="0"
   maxOccurs="unbounded"/>
 </sequence>
</content>
    
Schema Declaration
element category
{
   hatt.global.attributes,
   hatt.datcat.attributes,
   ( ( hcatDesc+ | ( hmodel.descLike | equiv | gloss )* ), hcategory* )
}

Appendix A.17 <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
n(number) gives a number (or other label) for an element, which is not necessarily unique within the document.
Derived fromatt.global
StatusRequired
Datatype
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.

ExampleMarkup 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
{
   hatt.global.attribute.xmlid,
   hatt.global.attribute.xmllang,
   hatt.global.attribute.xmlbase,
   hatt.global.attribute.xmlspace,
   hatt.global.rendition.attribute.rend,
   hatt.global.rendition.attribute.style,
   hatt.global.rendition.attribute.rendition,
   hatt.global.linking.attribute.corresp,
   hatt.global.linking.attribute.synch,
   hatt.global.linking.attribute.sameAs,
   hatt.global.linking.attribute.copyOf,
   hatt.global.linking.attribute.next,
   hatt.global.linking.attribute.prev,
   hatt.global.linking.attribute.exclude,
   hatt.global.linking.attribute.select,
   hatt.global.facs.attribute.facs,
   hatt.global.change.attribute.change,
   hatt.global.responsibility.attribute.cert,
   hatt.global.responsibility.attribute.resp,
   hatt.global.source.attribute.source,
   hatt.typed.attributes,
   hatt.edition.attributes,
   hatt.spanning.attributes,
   hatt.breaking.attributes,
   hatt.cmc.attributes,
   attribute n { data.numeric },
   empty
}

Appendix A.18 <certainty>

<certainty> indicates the degree of certainty associated with some aspect of the text markup. [22.1.2. Structured Indications of Uncertainty]
Modulecertainty
Attributes
cert(certainty) signifies the degree of certainty associated with the object pointed to by the <certainty> element.
Derived fromatt.global.responsibility
StatusOptional
Datatypeteidata.certainty
typecharacterizes the element in some sense, using any convenient classification scheme or typology; sample categorization of annotations of uncertainty might use following values:
Derived fromatt.typed
StatusOptional
Datatypeteidata.enumerated
locusindicates more exactly the aspect concerning which certainty is being expressed: specifically, whether the markup is correctly located, whether the correct element or attribute name has been used, or whether the content of the element or attribute is correct, etc.
StatusRequired
Datatypeteidata.enumerated
Legal values are:
name
uncertainty concerns whether the name of the element or attribute used is correctly applied.
start
uncertainty concerns whether the start of the element is correctly identified.
end
uncertainty concerns whether the end of the element is correctly identified.
location
uncertainty concerns both the start and the end of the element.
value
uncertainty concerns the content (for an element) or the value (for an attribute)
assertedValueprovides an alternative value for the aspect of the markup in question—an alternative generic identifier, transcription, or attribute value, or the identifier of an <anchor> element (to indicate an alternative starting or ending location). If an assertedValue is given, the confidence level specified by degree applies to the alternative markup specified by assertedValue; if none is given, it applies to the markup in the text.
StatusRecommended
Datatypeteidata.word
<certainty target="#ESX"  locus="name"  assertedValue="placeName"  cert="low">  <desc>It is unlikely, but possible, that this refers to the place    rather than the person.</desc> </certainty>
Note

This attribute makes it possible to indicate the degree of confidence in a specific alternative to some aspect of the markup. In the first example above the encoder is expressing the likelihood (.2) that the generic identifier should be <placeName> rather than <persName>, which is the coded element.

givenindicates one or more element(s) characterizing the conditions which are assumed in the assignment of a degree of confidence.
StatusRecommended
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
Note

The envisioned typical value of this attribute would be the identifier of another <certainty> element or a list of such identifiers. It may thus be possible to construct probability networks by chaining <certainty> elements together. Such networks would ultimately be grounded in unconditional <certainty> elements (with no value for given). The semantics of this chaining would be understood in this way: if a <certainty> element is specified, via a reference, as the assumption, then it is not the attribution of uncertainty that is the assumption, but rather the assertion itself. For instance, in the example above, the first <certainty> element indicates that the confidence in the identification of the new scribe as msm. The second indicates the degree of confidence that Essex is a personal name, given that the new scribe is msm. Note that the given in the second <certainty> element is not the assertion that the likelihood that msm is the new scribe is 0.6, but simply the assertion that msm is the new scribe; this is a recommended convention to facilitate building networks.

The ambitious encoder may wish to attempt complex networks or probability assertions, experimenting with references to other elements or prose assertions, and deploying feature structure connectives such as <alt>, <join>, and <note>. However, we do not believe that the <certainty> element gives, at this time, a comprehensive ambiguity-free system for indicating certainty.

degreeindicates the degree of confidence assigned to the aspect of the markup named by the locus attribute.
StatusOptional
Datatypeteidata.probability
Member of
Contained by
May contain
Example(For discussion of this example, see section [[undefined CEconcon]])
Ernest went to <anchor xml:id="A1"/> old <persName xml:id="SYB">Saybrook</persName>. <certainty xml:id="c1target="#SYB"  locus="namedegree="0.6"/> <certainty target="#SYBlocus="start"  given="#c1degree="0.9"/> <certainty xml:id="C-c2target="#SYB"  locus="nameassertedValue="persNamedegree="0.4"/> <certainty target="#SYBlocus="start"  given="#C-c2degree="0.5"/> <certainty target="#SYBlocus="start"  assertedValue="#a1given="#c1degree="0.5"/>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">
  <classRef key="model.descLike"/>
  <classRef key="model.certLike"/>
 </alternate>
</content>
    
Schema Declaration
element certainty
{
   hatt.global.attribute.xmlid,
   hatt.global.attribute.n,
   hatt.global.attribute.xmllang,
   hatt.global.attribute.xmlbase,
   hatt.global.attribute.xmlspace,
   hatt.global.rendition.attribute.rend,
   hatt.global.rendition.attribute.style,
   hatt.global.rendition.attribute.rendition,
   hatt.global.linking.attribute.corresp,
   hatt.global.linking.attribute.synch,
   hatt.global.linking.attribute.sameAs,
   hatt.global.linking.attribute.copyOf,
   hatt.global.linking.attribute.next,
   hatt.global.linking.attribute.prev,
   hatt.global.linking.attribute.exclude,
   hatt.global.linking.attribute.select,
   hatt.global.facs.attribute.facs,
   hatt.global.change.attribute.change,
   hatt.global.responsibility.attribute.resp,
   hatt.global.source.attribute.source,
   hatt.scoping.attributes,
   hatt.typed.attribute.subtype,
   attribute cert { text }?,
   attribute type { text }?,
   attribute locus { "name" | "start" | "end" | "location" | "value" },
   attribute assertedValue { text }?,
   attribute given { list { + } }?,
   attribute degree { text }?,
   ( hmodel.descLike | hmodel.certLike )*
}

Appendix A.19 <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
whoindicates the person, or group of people, to whom the element content is ascribed.
Derived fromatt.ascribed
StatusOptional
Schematron
<sch:rule context="tei:change"> <sch:let name="noteMakers"  value="//tei:principal/@xml:id | //tei:editor/@xml:id | //tei:respStmt/@xml:id"/> <sch:let name="plusHash"  value="for $maker in $noteMakers return concat('#', $maker)"/> <sch:assert test=". = //tei:editor/concat('#', @xml:id) or . = //tei:respStmt/concat('#', @xml:id)"  role="error">Permissible values are "<sch:value-of select="$plusHash"/>". </sch:assert> </sch:rule>
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
whensupplies the value of the date or time in a standard form, e.g. yyyy-mm-dd.
Derived fromatt.datable.w3c
StatusRequired
Datatypeteidata.temporal.w3c
Contained by
header: revisionDesc
May contain
Note

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

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

Example
<titleStmt>  <title></title>  <editor xml:id="LDB">Lou Burnard</editor>  <respStmt xml:id="BZ">   <resp>copy editing</resp>   <name>Brett Zamir</name>  </respStmt> </titleStmt> <!– … –> <revisionDesc status="published">  <change who="#BZwhen="2008-02-02"   status="public">Finished chapter 23</change>  <change who="#BZwhen="2008-01-02"   status="draft">Finished chapter 2</change>  <change n="P2.2when="1991-12-21"   who="#LDB">Added examples to section 3</change>  <change when="1991-11-11who="#MSM">Deleted chapter 10</change> </revisionDesc>
Example
<profileDesc>  <creation>   <listChange>    <change xml:id="DRAFT1">First draft in pencil</change>    <change xml:id="DRAFT2"     notBefore="1880-12-09">First revision, mostly        using green ink</change>    <change xml:id="DRAFT3"     notBefore="1881-02-13">Final corrections as        supplied to printer.</change>   </listChange>  </creation> </profileDesc>
Schematron
<sch:rule context="tei:*[@calendar]"> <sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more systems or calendars to which the date represented by the content of this element belongs, but this <sch:name/> element has no textual content.</sch:assert> </sch:rule>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
    
Schema Declaration
element change
{
   hatt.docStatus.attributes,
   attribute who { list { + } }?,
   attribute when { text },
   hmacro.specialPara
}

Appendix A.20 <choice>

<choice> (choice) groups a number of alternative encodings for the same point in a text. [3.5. Simple Editorial Changes]
Modulecore
Attributes
n(number) gives a number (or other label) for an element, which is not necessarily unique within the document.
Derived fromatt.global
StatusOptional
Datatypeteidata.text
Legal values are:
hyp
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.

ExampleAn 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="count(*) = 2 and ((./*[1] = tei:abbr and ./*[2] = tei:expan) or (./*[1] = tei:sic and ./*[2] = tei:corr) or (./*[1] = tei:orig and ./*[2] = tei:reg))"  role="error">The element <choice> must have two daughter elements with no space between elements: <choice><abbr>…</abbr><expan>…</expan></choice> or <choice><sic>…</sic><corr>…</corr></choice> or <choice><orig>…</orig><reg>…</reg></choice>. </sch:assert> <sch:report test=".//tei:lb and not(.[@n='hyp'])"  role="error">Unless element <choice> has attribute n="hyp", it may not cross a line boundary. </sch:report> </sch:rule> <sch:rule context="(tei:corr|tei:reg|tei:expan)"> <sch:assert test=".[parent::tei:choice]"  role="error">None of the elements <corr>, <reg> and <expan> can appear alone: each must follow <sic>, <reg> or <abbr> (as appropriate) inside <choice>.</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
{
   hatt.cmc.attributes,
   attribute n { "hyp" }?,
   ( hmodel.choicePart | hchoice ),
   ( hmodel.choicePart | hchoice ),
   ( hmodel.choicePart | hchoice )*
}

Appendix A.21 <cit>

<cit> (cited quotation) contains a quotation from some other document, together with a bibliographic reference to its source. In a dictionary it may contain an example text with at least one occurrence of the word form, used in the sense being described, or a translation of the headword, or an example. [3.3.3. Quotation 4.3.1. Grouped Texts 10.3.5.1. Examples]
Modulecore
Attributes
Member of
Contained by
May contain
Example
<cit>  <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>
Schematron
<sch:rule context="tei:cit"> <sch:assert test="./tei:quote and tei:bibl"  role="error">The element <cit> must contain both (and only) <quote> and <bibl>. </sch:assert> </sch:rule>
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
{
   hatt.cmc.attributes,
   (
      hmodel.biblLike
    | hmodel.egLike
    | hmodel.entryPart
    | hmodel.global
    | hmodel.graphicLike
    | hmodel.ptrLike
    | hmodel.attributable
    | pc
    | hq
   )+
}

Appendix A.22 <citeData>

<citeData> (citation data) specifies how information may be extracted from citation structures. [3.11.4. Declaring Reference Systems 17.2.5.4. Citation Structures]
Moduleheader
Attributes
property(property) A URI indicating a property definition.
StatusRequired
Datatypeteidata.pointer
Contained by
May containEmpty element
Example
<citeStructure unit="book"  match="//body/divuse="@n">  <citeData property="http://purl.org/dc/terms/title"   use="head"/> </citeStructure>
Content model
<content>
 <empty/>
</content>
    
Schema Declaration
element citeData
{
   hatt.global.attributes,
   hatt.citeStructurePart.attributes,
   attribute property { text },
   empty
}

Appendix A.23 <citeStructure>

<citeStructure> (citation structure) declares a structure and method for citing the current document. [3.11.4. Declaring Reference Systems 17.2.5.4. Citation Structures]
Moduleheader
Attributes
delim(delimiter) supplies a delimiting string preceding the structural component.
StatusOptional
Datatypestring
Note

delim must contain at least one character.

match(match) supplies an XPath selection pattern using the syntax defined in [[undefined XSLT3]] which identifies a set of nodes which are citable structural components. The expression may be absolute (beginning with /) or relative. match on a <citeStructure> without a <citeStructure> parent must be an absolute XPath. If it is relative, its context is set by the match of the parent <citeStructure>.
StatusRequired
Datatypeteidata.xpath
Schematron
<sch:rule context="tei:citeStructure[not(parent::tei:citeStructure)]"> <sch:assert test="starts-with(@match,'/')">An XPath in @match on the outer <sch:name/> must start with '/'.</sch:assert> </sch:rule>
Schematron
<sch:rule context="tei:citeStructure[parent::tei:citeStructure]"> <sch:assert test="not(starts-with(@match,'/'))">An XPath in @match must not start with '/' except on the outer <sch:name/>.</sch:assert> </sch:rule>
unit(unit) describes the structural unit indicated by the <citeStructure>.
StatusOptional
Datatypeteidata.enumerated
Sample values include:
book
chapter
entry
poem
letter
line
section
verse
volume
Contained by
May contain
Example
<citeStructure unit="book"  match="//body/divuse="@n">  <citeStructure unit="chaptermatch="div"   use="position()delim=" ">   <citeStructure unit="versematch="div"    use="position()delim=":"/>  </citeStructure> </citeStructure>
Content model
<content>
 <sequence>
  <elementRef key="citeData" minOccurs="0"
   maxOccurs="unbounded"/>
  <elementRef key="citeStructure"
   minOccurs="0" maxOccurs="unbounded"/>
  <classRef key="model.descLike"
   minOccurs="0" maxOccurs="unbounded"/>
 </sequence>
</content>
    
Schema Declaration
element citeStructure
{
   hatt.global.attributes,
   hatt.citeStructurePart.attributes,
   attribute delim { text }?,
   attribute match { text },
   attribute unit { text }?,
   ( hciteData*, hciteStructure*, hmodel.descLike* )
}

Appendix A.24 <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="taxonomy" minOccurs="1"
  maxOccurs="unbounded"/>
</content>
    
Schema Declaration
element classDecl { hatt.global.attributes, htaxonomy+ }

Appendix A.25 <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
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype
Legal values are:
indent
center
align-right
inline
Member of
Contained by
textstructure: body div postscript
May contain
Example
<div type="letter">  <p> perhaps you will favour me with a sight of it when convenient.</p>  <closer>   <salute>I remain, &amp;c. &amp;c.</salute>   <signed>H. Colburn</signed>  </closer> </div>
Example
<div type="chapter">  <p> <!– … –> and his heart was going like mad and yes I said yes I will Yes.</p>  <closer>   <dateline>    <name type="place">Trieste-Zürich-Paris,</name>    <date>1914–1921</date>   </dateline>  </closer> </div>
Schematron
<sch:rule context="tei:body"> <sch:report test="./preceding-sibling::*[1][self::tei:p] and not(./@rend='inline')"  role="warning">When there is text to the left of a <closer> tag on the same line, e.g. something ending in </p>, <closer> should have @rend with value "inline". Remember to leave a space before <closer rend="inline">. </sch:report> <sch:report test="./preceding-sibling::*[1][self::tei:lb] and ./@rend='inline'"  role="error">A <closer> tag cannot have @rend with value "inline" unless there is text to the left on the same line. </sch:report> </sch:rule>
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
{
   hatt.cmc.attributes,
   attribute rend { "indent" | "center" | "align-right" | "inline" }?,
   (
      text
    | hmodel.gLike
    | hsigned
    | hdateline
    | hsalute
    | hmodel.phrase
    | hmodel.global
   )*
}

Appendix A.26 <collation>

<collation> (collation) contains a description of how the leaves, bifolia, or similar objects are physically arranged. [11.7.1. Object Description]
Modulemsdescription
Attributes
Contained by
msdescription: supportDesc
May contain
Example
<collation>The written leaves preceded by an original flyleaf, conjoint with the pastedown.</collation>
Example
<collation>  <p>   <formula>1-5.8 6.6 (catchword, f. 46, does not match following text)      7-8.8 9.10, 11.2 (through f. 82) 12-14.8 15.8(-7)</formula>   <catchwords>Catchwords are written horizontally in center      or towards the right lower margin in various manners:      in red ink for quires 1-6 (which are also signed in red      ink with letters of the alphabet and arabic numerals);      quires 7-9 in ink of text within yellow decorated frames;      quire 10 in red decorated frame; quire 12 in ink of text;      quire 13 with red decorative slashes; quire 14 added in      cursive hand.</catchwords>  </p> </collation>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
    
Schema Declaration
element collation { hatt.global.attributes, hmacro.specialPara }

Appendix A.27 <collection>

<collection> (collection) contains the name of a collection of manuscripts or other objects, not necessarily located within a single repository. [11.4. The Manuscript Identifier]
Modulemsdescription
Attributes
Contained by
msdescription: msIdentifier
namesdates: objectIdentifier
May contain
Example
<msIdentifier>  <country>USA</country>  <region>California</region>  <settlement>San Marino</settlement>  <repository>Huntington Library</repository>  <collection>Ellesmere</collection>  <idno>El 26 C 9</idno>  <msName>The Ellesmere Chaucer</msName> </msIdentifier>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
    
Schema Declaration
element collection
{
   hatt.global.attributes,
   hatt.naming.attributes,
   hatt.typed.attributes,
   hmacro.phraseSeq.limited
}

Appendix A.28 <condition>

<condition> (condition) contains a description of the physical condition of the manuscript or object. [11.7.1.5. Condition]
Modulemsdescription
Attributes
Contained by
msdescription: sealDesc supportDesc
May contain
Example
<condition>  <p>There are lacunae in three places in this    manuscript. After 14v two    leaves has been cut out and narrow strips leaves remains in the spine. After    68v one gathering is missing and after 101v at least one gathering of 8 leaves    has been lost. </p>  <p>Several leaves are damaged with tears or holes or have a    irregular shape. Some of the damages do not allow the lines to be of full    length and they are apparently older than the script. There are tears on fol.    2r-v, 9r-v, 10r-v, 15r-18v, 19r-v, 20r-22v, 23r-v, 24r-28v, 30r-v, 32r-35v,    37r-v, 38r-v, 40r-43v, 45r-47v, 49r-v, 51r-v, 53r-60v, 67r-v, 68r-v, 70r-v,    74r-80v, 82r-v, 86r-v, 88r-v, 89r-v, 95r-v, 97r-98v 99r-v, 100r-v. On fol. 98    the corner has been torn off. Several leaves are in a bad condition due to    moist and wear, and have become dark, bleached or    wrinkled. </p>  <p>The script has been    touched up in the 17th century with black ink. The touching up on the following    fols. was done by  <name>Bishop Brynjólf Sveinsson</name>: 1v, 3r, 4r, 5r,    6v, 8v,9r, 10r, 14r, 14v, 22r,30v, 36r-52v, 72v, 77r,78r,103r, 104r,. An    AM-note says according to the lawman  <name>Sigurður Björnsson</name> that the rest of the    touching up was done by himself and another lawman  <name>Sigurður Jónsson</name>.  <name>Sigurður Björnsson</name> did the touching up    on the following fols.: 46v, 47r, 48r, 49r-v, 50r, 52r-v.  <name>Sigurður Jónsson</name> did the rest of the    touching up in the section 36r-59r containing  <title>Bretasögur</title>  </p> </condition>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
    
Schema Declaration
element condition { hatt.global.attributes, hmacro.specialPara }

Appendix A.29 <conversion>

<conversion> defines how to calculate one unit of measure in terms of another. [2.3.9. The Unit Declaration]
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
StatusOptional
Datatype1–∞ 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>
fromUnitindicates a source unit of measure that is to be converted into another unit indicated in toUnit.
StatusRequired
Datatypeteidata.pointer
toUnitthe target unit of measurement for a conversion from a source unit referenced in fromUnit.
StatusRequired
Datatypeteidata.pointer
Contained by
header: unitDef
May containEmpty element
Note

The conversion element is designed to store information about converting from one unit of measurement to another. The formula attribute holds an XPath expression that indicates how the measurement system in fromUnit is converted to the system in toUnit. Do not confuse the usage of the dating attributes (from and to) in the examples with the attributes (fromUnit and toUnit) designed to reference units of measure.

Example
<conversion fromUnit="#shilling"  toUnit="#penceformula="$fromUnit * 12from="1707"  to="1971"/>
Example
<conversion fromUnit="#pound"  toUnit="#shillingformula="$fromUnit * 20from="1701"  to="1971"/>
Content model
<content>
 <empty/>
</content>
    
Schema Declaration
element conversion
{
   hatt.global.attributes,
   hatt.datable.attributes,
   hatt.formula.attributes,
   hatt.locatable.attributes,
   attribute calendar { list { + } }?,
   attribute fromUnit { text },
   attribute toUnit { text },
   empty
}

Appendix A.30 <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
ExampleIf 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?
ExampleIt 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
{
   hatt.global.attributes,
   hatt.editLike.attributes,
   hatt.typed.attributes,
   hatt.cmc.attributes,
   hmacro.paraContent
}

Appendix A.31 <correction>

<correction> (correction principles) states how and under what circumstances corrections have been made in the text. [2.3.3. The Editorial Practices Declaration 16.3.2. Declarable Elements]
Moduleheader
Attributes
statusindicates the degree of correction applied to the text.
StatusOptional
Datatypeteidata.enumerated
Legal values are:
high
the text has been thoroughly checked and proofread.
medium
the text has been checked at least once.
low
the text has not been checked.
unknown
the correction status of the text is unknown.
methodindicates the method adopted to indicate corrections within the text.
StatusOptional
Datatypeteidata.enumerated
Legal values are:
silent
corrections have been made silently[Default]
markup
corrections have been represented using markup
Member of
Contained by
May contain
core: p
Note

May be used to note the results of proof reading the text against its original, indicating (for example) whether discrepancies have been silently rectified, or recorded using the editorial tags described in section 3.5. Simple Editorial Changes.

Example
<correction>  <p>Errors in transcription controlled by using the WordPerfect spelling checker, with a user    defined dictionary of 500 extra words taken from Chambers Twentieth Century    Dictionary.</p> </correction>
Content model
<content>
 <classRef key="model.pLike" minOccurs="1"
  maxOccurs="unbounded"/>
</content>
    
Schema Declaration
element correction
{
   hatt.global.attributes,
   hatt.declarable.attributes,
   attribute status { "high" | "medium" | "low" | "unknown" }?,
   attribute method { "silent" | "markup" }?,
   hmodel.pLike+
}

Appendix A.32 <correspAction>

<correspAction> (correspondence action) contains a structured description of the place, the name of a person/organization and the date related to the sending/receiving of a message or any other action related to the correspondence. [2.4.6. Correspondence Description]
Moduleheader
Attributes
typedescribes the nature of the action.
Derived fromatt.typed
StatusRequired
Datatypeteidata.enumerated
subtype(subtype) provides a sub-categorization of the element, if needed
Derived fromatt.typed
StatusOptional
Datatypeteidata.enumerated
Sample values include:
redirecting
Member of
Contained by
header: correspDesc
May contain
Example
<correspAction type="sent">  <persName>Adelbert von Chamisso</persName>  <settlement>Vertus</settlement>  <date when="1807-01-29"/> </correspAction>
Content model
<content>
 <alternate minOccurs="1" maxOccurs="1">
  <classRef key="model.correspActionPart"
   minOccurs="1" maxOccurs="unbounded"/>
  <classRef key="model.pLike" minOccurs="1"
   maxOccurs="unbounded"/>
 </alternate>
</content>
    
Schema Declaration
element correspAction
{
   hatt.sortable.attributes,
   attribute type { text },
   attribute subtype { text }?,
   ( hmodel.correspActionPart+ | hmodel.pLike+ )
}

Appendix A.33 <correspContext>

<correspContext> (correspondence context) provides references to preceding or following correspondence related to this piece of correspondence. [2.4.6. Correspondence Description]
Moduleheader
Member of
Contained by
header: correspDesc
May contain
Example
<correspContext>  <ptr type="nextsubtype="toAuthor"   target="http://tei.ibi.hu-berlin.de/berliner-intellektuelle/manuscript?Brief101VarnhagenanBoeckh"/>  <ptr type="prevsubtype="fromAuthor"   target="http://tei.ibi.hu-berlin.de/berliner-intellektuelle/manuscript?Brief103BoeckhanVarnhagen"/> </correspContext>
Example
<correspContext>  <ref type="prev"   target="http://weber-gesamtausgabe.de/A040962"> Previous letter of  <persName>Carl Maria von Weber</persName> to  <persName>Caroline Brandt</persName>:  <date when="1816-12-30">December 30, 1816</date>  </ref>  <ref type="next"   target="http://weber-gesamtausgabe.de/A041003"> Next letter of  <persName>Carl Maria von Weber</persName> to  <persName>Caroline Brandt</persName>:  <date when="1817-01-05">January 5, 1817</date>  </ref> </correspContext>
Schematron
<sch:rule context="tei:correspContext"> <sch:report test="tei:ref[@type='prev'][2] or tei:ref[@type='next'][2]"  role="error">Maximum of 1 prev or next. </sch:report> </sch:rule>
Content model
<content>
 <classRef key="model.correspContextPart"
  minOccurs="1" maxOccurs="unbounded"/>
</content>
    
Schema Declaration
element correspContext { hmodel.correspContextPart+ }

Appendix A.34 <correspDesc>

<correspDesc> (correspondence description) contains a description of the actions related to one act of correspondence. [2.4.6. Correspondence Description]
Moduleheader
Attributes
Member of
Contained by
header: profileDesc
May contain
Example
<correspDesc>  <correspAction type="sent">   <persName>Carl Maria von Weber</persName>   <settlement>Dresden</settlement>   <date when="1817-06-23">23 June 1817</date>  </correspAction>  <correspAction type="received">   <persName>Caroline Brandt</persName>   <settlement>Prag</settlement>  </correspAction>  <correspContext>   <ref type="prev"    target="http://www.weber-gesamtausgabe.de/A041209">Previous letter of   <persName>Carl Maria von Weber</persName>      to <persName>Caroline Brandt</persName>:   <date from="1817-06-19to="1817-06-20">June 19/20, 1817</date>   </ref>   <ref type="next"    target="http://www.weber-gesamtausgabe.de/A041217">Next letter of   <persName>Carl Maria von Weber</persName> to   <persName>Caroline Brandt</persName>:   <date when="1817-06-27">June 27, 1817</date>   </ref>  </correspContext> </correspDesc>
Content model
<content>
 <alternate>
  <classRef key="model.correspDescPart"
   minOccurs="1" maxOccurs="unbounded"/>
  <classRef key="model.pLike" minOccurs="1"
   maxOccurs="unbounded"/>
 </alternate>
</content>
    
Schema Declaration
element correspDesc
{
   hatt.declarable.attributes,
   hatt.canonical.attributes,
   hatt.global.attributes,
   hatt.typed.attributes,
   ( hmodel.correspDescPart+ | hmodel.pLike+ )
}

Appendix A.35 <country>

<country> (country) contains the name of a geo-political unit, such as a nation, country, colony, or commonwealth, larger than or administratively superior to a region and smaller than a bloc. [14.2.3. Place Names]
Modulenamesdates
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
StatusOptional
Datatype1–∞ 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
Note

The recommended source for codes to represent coded country names is ISO 3166.

Example
<country key="DK">Denmark</country>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element country
{
   hatt.global.attributes,
   hatt.naming.attributes,
   hatt.typed.attributes,
   hatt.datable.attributes,
   hatt.cmc.attributes,
   attribute calendar { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.36 <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
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype
Legal values are:
indent
center
align-right
Member of
Contained by
May contain
Example
<date when="1980-02">early February 1980</date>
Example
Given on the <date when="1977-06-12">Twelfth Day of June in the Year of Our Lord One Thousand Nine Hundred and Seventy-seven of the Republic the Two Hundredth and first and of the University the Eighty-Sixth.</date>
Example
<date when="1990-09">September 1990</date>
Schematron
<sch:rule context="tei:correspAction/tei:date"> <sch:report test="@notAfter and not(./tei:precision[@match='@notAfter'])"  role="warning">Usage is <date …>dd month yyyy<precision match="@notAfter" precision="low|medium|high"/> </date>. </sch:report> <sch:report test="@notBefore and not(./tei:precision[@match='@notBefore'])"  role="warning">Usage is <date …>dd month yyyy<precision match="@notBefore" precision="low|medium|high"/> </date>. </sch:report> <sch:report test="(.[@to] and not(.[@from])) or (.[@from] and not(.[@to]))"  role="error">Either both or neither of the attributes @from and @to must be used with <date>. </sch:report> </sch:rule> <sch:rule context="tei:body//tei:date"> <sch:assert test="@when or @notBefore or @notAfter or (@from and @to)"  role="error">The element <date> must have one of the following attributes or attribute pairs: @when [the commonest option]; one or both of @notBefore and @notAfter; BOTH @from AND @to. </sch:assert> <sch:report test="not(node()) and not(.[@resp])">A <date> element without textual context must have @resp for the editor who inferred the date. </sch:report> </sch:rule>
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
{
   hatt.global.responsibility.attribute.resp,
   hatt.datable.w3c.attribute.when,
   hatt.datable.w3c.attribute.notBefore,
   hatt.datable.w3c.attribute.notAfter,
   hatt.datable.w3c.attribute.from,
   hatt.datable.w3c.attribute.to,
   hatt.cmc.attributes,
   attribute rend { "indent" | "center" | "align-right" }?,
   ( text | hmodel.gLike | hmodel.phrase | hmodel.global )*
}

Appendix A.37 <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
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype
Legal values are:
indent
center
align-right
Member of
Contained by
textstructure: body closer div opener
May contain
Example
<dateline>Walden, this 29. of August 1592</dateline>
Example
<div type="chapter">  <p> <!– … –> and his heart was going like mad and yes I said yes I will Yes.</p>  <closer>   <dateline>    <name type="place">Trieste-Zürich-Paris,</name>    <date>1914–1921</date>   </dateline>  </closer> </div>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">
  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.phrase"/>
  <classRef key="model.global"/>
  <elementRef key="docDate"/>
 </alternate>
</content>
    
Schema Declaration
element dateline
{
   hatt.cmc.attributes,
   attribute rend { "indent" | "center" | "align-right" }?,
   ( text | hmodel.gLike | hmodel.phrase | hmodel.global | docDate )*
}

Appendix A.38 <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
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusRequired
Datatype1–2 occurrences of  separated by whitespace
Legal values are:
cancelled
erased
overwritten
censored
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
{
   hatt.global.responsibility.attribute.cert,
   hatt.cmc.attributes,
   attribute rend
   {
      list
      {
         ( "cancelled" | "erased" | "overwritten" | "censored" ),
         ( "cancelled" | "erased" | "overwritten" | "censored" )?
      }
   },
   hmacro.paraContent
}

Appendix A.39 <dimensions>

<dimensions> (dimensions) contains a dimensional specification. [11.3.4. Dimensions]
Modulemsdescription
Attributes
typeindicates which aspect of the object is being measured.
Derived fromatt.typed
StatusOptional
Datatypeteidata.enumerated
Member of
Contained by
May contain
msdescription: height width
Note

Contains no more than one of each of the specialized elements used to express a three-dimensional object's height, width, and depth, combined with any number of other kinds of dimensional specification.

Example
<dimensions type="leaves">  <height scope="range">157-160</height>  <width>105</width> </dimensions> <dimensions type="ruled">  <height scope="most">90</height>  <width scope="most">48</width> </dimensions> <dimensions unit="in">  <height>12</height>  <width>10</width> </dimensions>
ExampleThis element may be used to record the dimensions of any text-bearing object, not necessarily a codex. For example:
<dimensions type="panels">  <height scope="all">7004</height>  <width scope="all">1803</width>  <dim type="reliefunit="mm">345</dim> </dimensions>
This might be used to show that the inscribed panels on some (imaginary) monument are all the same size (7004 by 1803 cm) and stand out from the rest of the monument by 345 mm.
ExampleWhen simple numeric quantities are involved, they may be expressed on the quantity attribute of any or all of the child elements, as in the following example:
<dimensions type="leaves">  <height scope="range">157-160</height>  <width quantity="105"/> </dimensions> <dimensions type="ruled">  <height unit="cmscope="most"   quantity="90"/>  <width unit="cmscope="mostquantity="48"/> </dimensions> <dimensions unit="in">  <height quantity="12"/>  <width quantity="10"/> </dimensions>
Schematron
<sch:rule context="tei:dimensions"> <sch:report test="count(tei:width) gt 1"> The element <sch:name/> may appear once only </sch:report> <sch:report test="count(tei:height) gt 1"> The element <sch:name/> may appear once only </sch:report> <sch:report test="count(tei:depth) gt 1"> The element <sch:name/> may appear once only </sch:report> </sch:rule>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">
  <elementRef key="dim"/>
  <classRef key="model.dimLike"/>
 </alternate>
</content>
    
Schema Declaration
element dimensions
{
   hatt.global.attributes,
   hatt.dimensions.attributes,
   hatt.typed.attribute.subtype,
   attribute type { text }?,
   ( dim | hmodel.dimLike )*
}

Appendix A.40 <div>

<div> (text division) contains a subdivision of the front, body, or back of a text. [4.1. Divisions of the Body]
Moduletextstructure
Attributes
typecharacterizes the element in some sense, using any convenient classification scheme or typology.
Derived fromatt.typed
StatusRequired
Datatypeteidata.enumerated
Legal values are:
address
letter
continuation
entry
note
part
cutting
handpoints to a <handNote> element describing the hand considered responsible for the content of the element concerned.
Derived fromatt.written
StatusOptional
Schematron
<sch:rule context="tei:div"> <sch:let name="hands"  value="//tei:handNote/@xml:id"/> <sch:let name="plusHash"  value="for $hand in $hands return concat('#', $hand)"/> <sch:report test="not(. = //tei:handDesc/tei:handNote/concat('#', @xml:id))"  role="error">Permissible values are "<sch:value-of select="$plusHash"/>". </sch:report> </sch:rule>
Datatypeteidata.pointer
Member of
Contained by
textstructure: body div
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="not(.[@hand]) and //tei:div[@hand]"  role="error">If any other <div> element has @hand, all must do so. </sch:report> </sch:rule>
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="1" maxOccurs="1">
  <alternate minOccurs="0"
   maxOccurs="unbounded">
   <classRef key="model.divTop"/>
   <classRef key="model.global"/>
  </alternate>
  <sequence minOccurs="0" maxOccurs="1">
   <alternate minOccurs="1" maxOccurs="1">
    <sequence minOccurs="1"
     maxOccurs="unbounded">
     <alternate minOccurs="1" maxOccurs="1">
      <classRef key="model.divLike"/>
      <classRef key="model.divGenLike"/>
     </alternate>
     <classRef key="model.global"
      minOccurs="0" maxOccurs="unbounded"/>
    </sequence>
    <sequence minOccurs="1" maxOccurs="1">
     <sequence minOccurs="1"
      maxOccurs="unbounded">
      <alternate minOccurs="1"
       maxOccurs="1">
       <elementRef key="schemaSpec"/>
       <classRef key="model.common"/>
      </alternate>
      <classRef key="model.global"
       minOccurs="0" maxOccurs="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="0" maxOccurs="unbounded"/>
     </sequence>
    </sequence>
   </alternate>
   <sequence minOccurs="0"
    maxOccurs="unbounded">
    <classRef key="model.divBottom"/>
    <classRef key="model.global"
     minOccurs="0" maxOccurs="unbounded"/>
   </sequence>
  </sequence>
 </sequence>
</content>
    
Schema Declaration
element div
{
   hatt.global.linking.attribute.copyOf,
   hatt.fragmentable.attribute.part,
   hatt.typed.attribute.subtype,
   attribute type
   {
      "address"
    | "letter"
    | "continuation"
    | "entry"
    | "note"
    | "part"
    | "cutting"
   },
   attribute hand { text }?,
   (
      ( hmodel.divTop | hmodel.global )*,
      (
         (
            (
               ( ( ( hmodel.divLike | hmodel.divGenLike ), hmodel.global* )+ )
             | (
                  ( ( ( schemaSpec | hmodel.common ), hmodel.global* )+ ),
                  (
                     ( ( hmodel.divLike | hmodel.divGenLike ), hmodel.global* )*
                  )
               )
            ),
            ( ( hmodel.divBottom, hmodel.global* )* )
         )?
      )
   )
}

Appendix A.41 <edition>

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

Appendix A.42 <editionStmt>

<editionStmt> (edition statement) groups information relating to one edition of a text. [2.2.2. The Edition Statement 2.2. The File Description]
Moduleheader
Attributes
Contained by
header: fileDesc
May contain
Example
<editionStmt>  <edition n="S2">Students' edition</edition>  <respStmt>   <resp>Adapted by </resp>   <name>Elizabeth Kirk</name>  </respStmt> </editionStmt>
Example
<editionStmt>  <p>First edition, <date>Michaelmas Term, 1991.</date>  </p> </editionStmt>
Content model
<content>
 <alternate>
  <classRef key="model.pLike" minOccurs="1"
   maxOccurs="unbounded"/>
  <sequence>
   <elementRef key="edition"/>
   <classRef key="model.respLike"
    minOccurs="0" maxOccurs="unbounded"/>
  </sequence>
 </alternate>
</content>
    
Schema Declaration
element editionStmt
{
   hatt.global.attributes,
   ( hmodel.pLike+ | ( hedition, hmodel.respLike* ) )
}

Appendix A.43 <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
StatusOptional
Datatype1–∞ 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
core: bibl series
msdescription: msItem
May contain
Note

A consistent format should be adopted.

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

Example
<editor role="Technical_Editor">Ron Van den Branden</editor> <editor role="Editor-in-Chief">John Walsh</editor> <editor role="Managing_Editor">Anne Baillot</editor>
Schematron
<sch:rule context="tei:*[@calendar]"> <sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more systems or calendars to which the date represented by the content of this element belongs, but this <sch:name/> element has no textual content.</sch:assert> </sch:rule>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element editor
{
   hatt.global.attribute.xmlid,
   hatt.datable.attributes,
   attribute calendar { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.44 <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
Example
<editorialDecl>  <normalization>   <p>All words converted to Modern American spelling using      Websters 9th Collegiate dictionary   </p>  </normalization>  <quotation marks="all">   <p>All opening quotation marks converted to “ all closing      quotation marks converted to &amp;cdq;.</p>  </quotation> </editorialDecl>
Content model
<content>
 <alternate minOccurs="1"
  maxOccurs="unbounded">
  <classRef key="model.pLike"/>
  <classRef key="model.editorialDeclPart"/>
 </alternate>
</content>
    
Schema Declaration
element editorialDecl
{
   hatt.global.attributes,
   hatt.declarable.attributes,
   ( hmodel.pLike | hmodel.editorialDeclPart )+
}

Appendix A.45 <ellipsis>

<ellipsis> (deliberately marked omission) indicates a purposeful marking in the source document signalling that content has been omitted, and may also supply or describe the omitted content. [3.5.3. Additions, Deletions, and Omissions]
Modulecore
Attributes
Member of
Contained by
May contain
Note

Unlike <gap>, which indicates content that the encoder cannot or chooses not to represent, <ellipsis> indicates a passage explicitly signalled in the source document as absent. The <ellipsis> element is not appropriate for every use of ellipsis points, such as when they indicate that a speaker is pausing.

Example
<lg>  <l>What projects men make—what queer turns they take,</l>  <l>Since <emph>steam</emph> has improved our condition;</l>  <l>They never are still, but must cure or must kill</l>  <l>With steam physic or steam ammunition.</l>  <l>But a short time ago, to a quack you would go,</l>  <l>To steam a fat man to a thinner;</l>  <l>Now changed from all that, if you wish to get <emph>fat</emph>,</l>  <l>Come to Barton’s and eat a <emph>steam dinner!</emph>  </l>  <l>Oh dear! think of a scheme, odd though it seem—</l>  <l>I’m sure ’twill succeed if you make it by steam.</l> </lg> <lg>  <l>You may sleep, you may dream, you may travel by steam,</l>  <l>For the outcry is still to go faster;</l>  <l>And what does it reck, should you e’en break your neck,</l>  <l>If ’tis <emph>steam</emph> that brings on the disaster?</l>  <ellipsis resp="#ChambersEdnbrghJrnl1880">   <metamark function="multilineEllipsis"> * * * * </metamark>   <desc resp="#teiProjectEditor2021">The printer omits four lines here,      skipping the second half of the second octave, before the refrain.</desc>  </ellipsis>  <l>Oh dear! think of a scheme, odd though it seem—</l>  <l>I’m sure ’twill succeed if you make it by steam.</l> </lg>
Example
<lg>  <l>You think you’ve lost your love </l>  <l>Well, I saw her yesterday </l>  <l>It’s you she's thinking of </l>  <l>And she told me what to say</l> </lg> <lg xml:id="chorus">  <label>[Refrain]</label>  <l>She says she loves you </l>  <l>And you know that can’t be bad </l>  <l>Yes, she loves you </l>  <l>And you know you should be glad</l> </lg> <lg>  <l>She said you hurt her so </l>  <l>She almost lost her mind </l>  <l>But now she said she knows </l>  <l>You’re not the hurting kind</l> </lg> <ellipsis>  <metamark>******</metamark>  <supplied copyOf="#chorus"/> </ellipsis>
Content model
<content>
 <sequence>
  <elementRef key="metamark"/>
  <classRef key="model.descLike"
   minOccurs="0" maxOccurs="1"/>
  <elementRef key="supplied" minOccurs="0"
   maxOccurs="1"/>
 </sequence>
</content>
    
Schema Declaration
element ellipsis
{
   hatt.global.attributes,
   hatt.dimensions.attributes,
   hatt.timed.attributes,
   ( hmetamark, hmodel.descLike?, hsupplied? )
}

Appendix A.46 <emph>

<emph> (emphasized) marks words or phrases which are stressed or emphasized for linguistic or rhetorical effect. [3.3.2.2. Emphatic Words and Phrases 3.3.2. Emphasis, Foreign Words, and Unusual Language]
Modulecore
Attributes
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusRequired
Datatype1–3 occurrences of  separated by whitespace
Legal values are:
underlined
italic
retraced
double-underlined
triple-underlined
dotted-underlined
wavy-underlined
larger
all-caps
Member of
Contained by
May contain
Example
You took the car and did <emph>what</emph>?!!
Example
<q>What it all comes to is this,</q> he said. <q>  <emph>What    does Christopher Robin do in the morning nowadays?</emph> </q>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
    
Schema Declaration
element emph
{
   hatt.cmc.attributes,
   attribute rend
   {
      list
      {
         (
            "underlined"
          | "italic"
          | "retraced"
          | "double-underlined"
          | "triple-underlined"
          | "dotted-underlined"
          | "wavy-underlined"
          | "larger"
          | "all-caps"
         ),
         (
            "underlined"
          | "italic"
          | "retraced"
          | "double-underlined"
          | "triple-underlined"
          | "dotted-underlined"
          | "wavy-underlined"
          | "larger"
          | "all-caps"
         )?,
         (
            "underlined"
          | "italic"
          | "retraced"
          | "double-underlined"
          | "triple-underlined"
          | "dotted-underlined"
          | "wavy-underlined"
          | "larger"
          | "all-caps"
         )?
      }
   },
   hmacro.paraContent
}

Appendix A.47 <empty>

<empty> indicates the presence of an empty node within a content model [23. Documentation Elements]
Moduletagdocs
Attributes
Contained by
May containEmpty element
Example
<content>  <alternate minOccurs="0"   maxOccurs="unbounded">   <empty/>   <elementRef key="hi"/>  </alternate> </content>
Content model
<content>
 <empty/>
</content>
    
Schema Declaration
element empty { hatt.global.attributes, empty }

Appendix A.48 <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
{
   hatt.global.attributes,
   ( hmodel.encodingDescPart | hmodel.pLike )+
}

Appendix A.49 <eventName>

<eventName> (name of an event) contains a proper noun or noun phrase used to refer to an event. [14.2.4. Event Names]
Modulenamesdates
Attributes
Member of
Contained by
May contain
Example
<listEvent>  <event from="1939-09-01to="1945-09-02">   <eventName xml:lang="de">Zweiter Weltkrieg</eventName>   <eventName xml:lang="en">World War II</eventName>   <idno type="GND">https://d-nb.info/gnd/4079167-1</idno>   <idno type="Wikidata">https://www.wikidata.org/wiki/Q362</idno>   <event from="1939-09-01to="1939-10-06"    xml:id="UeberfallAufPolen">    <eventName xml:lang="de">Überfall auf Polen</eventName>    <eventName xml:lang="en">Invasion of Poland</eventName>    <idno type="GND">https://d-nb.info/gnd/4175002-0</idno>    <idno type="LOC">https://id.loc.gov/authorities/sh85148341</idno>    <listPlace type="affected">     <place>      <placeName xml:lang="pl">Gdańsk</placeName>      <location>       <geo>54.350556 18.652778</geo>      </location>     </place>    </listPlace>   </event>   <event from="1941-06-22to="1945-05-09">    <eventName xml:lang="de">Deutsch-Sowjetischer Krieg</eventName>    <eventName xml:lang="ru">Великая Отечественная война</eventName>    <idno type="GND">https://d-nb.info/gnd/4076906-9</idno>    <idno type="Wikidata">https://www.wikidata.org/wiki/Q189266</idno>   </event>  </event> </listEvent>
Example
<p>On <date when="1719-03-19">Monday</date>, <rs type="person">she</rs> was writing about the <eventName ref="#SecondDefPrague">1618 Defenestration of Prague</eventName> which initiated the <rs type="eventref="#ThirtyYearsWar">long war</rs>.</p>
Example
<event from="2019-09-16to="2019-09-20"  xml:id="tei2019graz">  <eventName type="full">TEI 2019: What is text, really? TEI and beyond</eventName>  <eventName type="short">TEI 2019</eventName>  <note> The abstract leading to the <gi>eventName</gi> element is available at <ref target="https://gams.uni-graz.at/o:tei2019.141">https://gams.uni-graz.at/o:tei2019.141</ref>.    Other related documents are available through <ref target="https://gams.uni-graz.at/tei2019">https://gams.uni-graz.at/tei2019</ref>, as well as in the  <ref target="https://zenodo.org/communities/tei2019">TEI 2019 Zenodo community</ref>.  </note>  <listPerson type="LocalOrganizers">   <person>    <persName>     <surname>Raunig</surname>     <forename>Elisabeth</forename>    </persName>   </person>   <person>    <persName>     <surname>Scholger</surname>     <forename>Martina</forename>    </persName>   </person>   <person>    <persName>     <surname>Scholger</surname>     <forename>Walter</forename>    </persName>   </person>   <person>    <persName>     <surname>Steiner</surname>     <forename>Elisabeth</forename>    </persName>   </person>   <person>    <persName>     <surname>Vogeler</surname>     <forename>Georg</forename>    </persName>   </person>  </listPerson>  <place xml:lang="de">   <placeName>Universität Graz</placeName>   <location>    <address>     <addrLine>ReSoWi Gebäude</addrLine>     <addrLine>Universitätsstraße 15</addrLine>     <postCode>8010</postCode>     <settlement>Graz</settlement>     <country>Österreich</country>    </address>    <geo>15.451651587656 47.078215112534</geo>   </location>  </place>  <listRelation>   <relation active="#tei2019graz"    passive="#AnnualTEIConferencetype="CRMname="P31_is_instance_of"    ref="https://www.wikidata.org/wiki/Property:P31"/>  </listRelation> </event>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element eventName
{
   hatt.global.attributes,
   hatt.datable.attributes,
   hatt.editLike.attributes,
   hatt.personal.attributes,
   hatt.typed.attributes,
   hmacro.phraseSeq
}

Appendix A.50 <expan>

<expan> (expansion) contains the expansion of an abbreviation. [3.6.5. Abbreviations and Their Expansions]
Modulecore
Attributes
cert(certainty) signifies the degree of certainty associated with the intervention or interpretation.
Derived fromatt.global.responsibility
StatusOptional
Datatypeteidata.probCert
Legal values are:
medium
Member of
Contained by
May contain
Note

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

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

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

Appendix A.51 <extent>

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

Appendix A.52 <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
Member of
Contained by
textstructure: TEI
May contain
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 minOccurs="1" maxOccurs="1">
  <elementRef key="front" minOccurs="0"/>
  <alternate minOccurs="1"
   maxOccurs="unbounded">
   <classRef key="model.graphicLike"/>
   <elementRef key="surface"/>
   <elementRef key="surfaceGrp"/>
  </alternate>
  <elementRef key="back" minOccurs="0"/>
 </sequence>
</content>
    
Schema Declaration
element facsimile
{
   front?, ( hmodel.graphicLike | hsurface | surfaceGrp )+, back?
}

Appendix A.53 <fileDesc>

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

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

Example
<fileDesc>  <titleStmt>   <title>The shortest possible TEI document</title>  </titleStmt>  <publicationStmt>   <p>Distributed as part of TEI P5</p>  </publicationStmt>  <sourceDesc>   <p>No print source exists: this is an original digital text</p>  </sourceDesc> </fileDesc>
Content model
<content>
 <sequence>
  <sequence>
   <elementRef key="titleStmt"/>
   <elementRef key="editionStmt"
    minOccurs="0"/>
   <elementRef key="extent" minOccurs="0"/>
   <elementRef key="publicationStmt"/>
   <elementRef key="seriesStmt"
    minOccurs="0" maxOccurs="unbounded"/>
   <elementRef key="notesStmt"
    minOccurs="0"/>
  </sequence>
  <elementRef key="sourceDesc"
   minOccurs="1" maxOccurs="unbounded"/>
 </sequence>
</content>
    
Schema Declaration
element fileDesc
{
   hatt.global.attributes,
   (
      (
         htitleStmt,
         heditionStmt?,
         hextent?,
         hpublicationStmt,
         seriesStmt*,
         hnotesStmt?
      ),
      hsourceDesc+
   )
}

Appendix A.54 <floruit>

<floruit> (floruit) contains information about a person's period of activity. [14.3.2.1. Personal Characteristics]
Modulenamesdates
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
StatusOptional
Datatype1–∞ 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
namesdates: person
May contain
Example
<floruit notBefore="1066notAfter="1100"/>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element floruit
{
   hatt.global.attributes,
   hatt.datable.attributes,
   hatt.dimensions.attributes,
   hatt.editLike.attributes,
   attribute calendar { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.55 <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
xml:lang(language) indicates the language of the element content using a ‘tag’ generated according to BCP 47.
Derived fromatt.global
StatusRequired
Datatypeteidata.language
Legal values are:
fr
it
la
nl
pt
unknown
Member of
Contained by
May contain
Note

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

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

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

Example
This is heathen Greek to you still? Your <foreign xml:lang="la">lapis philosophicus</foreign>?
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element foreign
{
   hatt.cmc.attributes,
   attribute xml:lang { "fr" | "it" | "la" | "nl" | "pt" | "unknown" },
   hmacro.phraseSeq
}

Appendix A.56 <forename>

<forename> (forename) contains a forename, given or baptismal name. [14.2.1. Personal Names]
Modulenamesdates
Attributes
Member of
Contained by
May contain
Example
<persName>  <roleName>Ex-President</roleName>  <forename>George</forename>  <surname>Bush</surname> </persName>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element forename
{
   hatt.global.attributes,
   hatt.personal.attributes,
   hatt.typed.attributes,
   hatt.cmc.attributes,
   hmacro.phraseSeq
}

Appendix A.57 <funder>

<funder> (funding body) specifies the name of an individual, institution, or organization responsible for the funding of a project or text. [2.2.1. The Title Statement]
Moduleheader
Attributes
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
StatusOptional
Datatype1–∞ 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
core: bibl
msdescription: msItem
May contain
Note

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

Example
<funder>The National Endowment for the Humanities, an independent federal agency</funder> <funder>Directorate General XIII of the Commission of the European Communities</funder> <funder>The Andrew W. Mellon Foundation</funder> <funder>The Social Sciences and Humanities Research Council of Canada</funder>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
    
Schema Declaration
element funder
{
   hatt.global.attributes,
   hatt.canonical.attributes,
   hatt.datable.attributes,
   attribute calendar { list { + } }?,
   hmacro.phraseSeq.limited
}

Appendix A.58 <fw>

<fw> (forme work) is used in this project for indications by author for recipient. [12.6. Headers, Footers, and Similar Matter]
Moduletranscr
Attributes
typetakes one of the values "catch", "head", "pageNum", "stanzaNum" or "turnPrompt". The type value "catch" is used for a catchword, either below the last line of the page (place="bot-right") or at the end of the last line (place="inline"). The type value "head" is used for a heading by the author at the top of a sheet, such as ‘In answer to’ in GEO/3/82/67, 3/82/69. The type values "pageNum", "sectionNum" and "stanzaNum" are used for numbering by the author. The type value "turnPrompt" is used for a word or phrase equivalent to the modern ‘PTO’ at the foot of a sheet.
Derived fromatt.typed
StatusRequired
Datatypeteidata.enumerated
placespecifies where this item is placed.
Derived fromatt.placement
StatusRequired
Datatype
Legal values are:
top-left
top-center
center
top-right
bot-left
bot-center
bot-right
inline
Member of
Contained by
May contain
Note

<fw> is generally used in TEI for running heads and suchlike in printed texts. Our slightly unconventional use is for ad hoc layout aids and indications provided by an author that should not be part of the linguistic corpus in the normalised text.

Example
<fw type="catch" place="bot-right">Country</fw> (HAM/1/4/4/1) <fw type="catch" place="inline">be</fw>             
Example
<fw type="turnPrompt" place="bot-right">Turn</fw> (HAM/1/4/7/5)             
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element fw
{
   hatt.typed.attribute.subtype,
   attribute type { text },
   attribute place
   {
      "top-left"
    | "top-center"
    | "center"
    | "top-right"
    | "bot-left"
    | "bot-center"
    | "bot-right"
    | "inline"
   },
   hmacro.phraseSeq
}

Appendix A.59 <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
extentindicates the size of the object concerned using a project-specific vocabulary combining quantity and units in a single string of words.
Derived fromatt.dimensions
StatusRequired
Datatypeteidata.text
reason(reason) gives the reason for omission
StatusRequired
Datatype1–4 occurrences of  separated by whitespace
Legal values are:
cancelled
censored
corrected
covered
crease
damage
erased
end-of-line
faded
fold
folded-corner
illegible
ink-blot
overinked-pen
page-cut
seal
smudge
tear
unclear
agent(agent) in the case of text omitted because of damage, categorizes the cause of the damage, if it can be identified.
StatusOptional
Datatypeteidata.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
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"/>
Schematron
<sch:rule context="tei:gap"> <sch:report test="(contains(@reason, 'cancelled') or contains(@reason, 'erased') or contains(@reason, 'censored') ) and ./parent::tei:del"  role="error">When a <gap> is inside <del>, "<sch:value-of select="@reason"/>" should go under @rend in <del>. Use "illegible" or "unclear" for @reason in <gap> to avoid duplication. </sch:report> </sch:rule>
Schematron
<sch:rule context="tei:gap"> <sch:assert test="matches(@extent, '[\d½]')"  role="error">The attribute @extent must begin with a numeral (or ½ for "½ line") </sch:assert> </sch:rule>
Schematron
<sch:rule context="tei:gap"> <sch:assert test="contains(@extent, 'character') or contains(@extent, 'word') or contains(@extent, 'line')"  role="error">The attribute @extent must contain 'character(s)', 'word(s)' or 'line(s)'.) </sch:assert> </sch:rule>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">
  <classRef key="model.descLike"/>
  <classRef key="model.certLike"/>
 </alternate>
</content>
    
Schema Declaration
element gap
{
   hatt.ranging.attribute.atLeast,
   hatt.ranging.attribute.atMost,
   hatt.cmc.attributes,
   attribute extent { text },
   attribute reason
   {
      list
      {
         (
            "cancelled"
          | "censored"
          | "corrected"
          | "covered"
          | "crease"
          | "damage"
          | "erased"
          | "end-of-line"
          | "faded"
          | "fold"
          | "folded-corner"
          | "illegible"
          | "ink-blot"
          | "overinked-pen"
          | "page-cut"
          | "seal"
          | "smudge"
          | "tear"
          | "unclear"
         ),
         (
            "cancelled"
          | "censored"
          | "corrected"
          | "covered"
          | "crease"
          | "damage"
          | "erased"
          | "end-of-line"
          | "faded"
          | "fold"
          | "folded-corner"
          | "illegible"
          | "ink-blot"
          | "overinked-pen"
          | "page-cut"
          | "seal"
          | "smudge"
          | "tear"
          | "unclear"
         )?,
         (
            "cancelled"
          | "censored"
          | "corrected"
          | "covered"
          | "crease"
          | "damage"
          | "erased"
          | "end-of-line"
          | "faded"
          | "fold"
          | "folded-corner"
          | "illegible"
          | "ink-blot"
          | "overinked-pen"
          | "page-cut"
          | "seal"
          | "smudge"
          | "tear"
          | "unclear"
         )?,
         (
            "cancelled"
          | "censored"
          | "corrected"
          | "covered"
          | "crease"
          | "damage"
          | "erased"
          | "end-of-line"
          | "faded"
          | "fold"
          | "folded-corner"
          | "illegible"
          | "ink-blot"
          | "overinked-pen"
          | "page-cut"
          | "seal"
          | "smudge"
          | "tear"
          | "unclear"
         )?
      }
   },
   attribute agent { text }?,
   ( hmodel.descLike | hmodel.certLike )*
}

Appendix A.60 <genName>

<genName> (generational name component) contains a name component used to distinguish otherwise similar names on the basis of the relative ages or generations of the persons named. [14.2.1. Personal Names]
Modulenamesdates
Attributes
Member of
Contained by
May contain
Example
<persName>  <forename>Charles</forename>  <genName>II</genName> </persName>
Example
<persName>  <surname>Pitt</surname>  <genName>the Younger</genName> </persName>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element genName
{
   hatt.global.attributes,
   hatt.personal.attributes,
   hatt.typed.attributes,
   hatt.cmc.attributes,
   hmacro.phraseSeq
}

Appendix A.61 <gender>

<gender> (gender) specifies the gender identity of a person, persona, or character. [14.3.2.1. Personal Characteristics]
Modulenamesdates
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
StatusOptional
Datatype1–∞ 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>
valuesupplies a coded value for gender identity
StatusOptional
Datatype1–∞ 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
namesdates: person
May contain
Note

As with other culturally-constructed traits such as age and sex, the way in which this concept is described in different cultural contexts varies. The normalizing attributes are provided only as an optional means of simplifying that variety for purposes of interoperability or project-internal taxonomies for consistency, and should not be used where that is inappropriate or unhelpful. The content of the element may be used to describe the intended concept in more detail.

Example
<gender value="W">woman</gender>
Example
<gender value="NB">non-binary</gender>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element gender
{
   hatt.global.attributes,
   hatt.editLike.attributes,
   hatt.datable.attributes,
   hatt.typed.attributes,
   attribute calendar { list { + } }?,
   attribute value { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.62 <geoDecl>

<geoDecl> (geographic coordinates declaration) documents the notation and the datum used for geographic coordinates expressed as content of the <geo> element elsewhere within the document. [2.3.8. The Geographic Coordinates Declaration]
Moduleheader
Attributes
datumsupplies a commonly used code name for the datum employed.
StatusOptional
Datatypeteidata.enumerated
Suggested values include:
WGS84
(World Geodetic System) a pair of numbers to be interpreted as latitude followed by longitude according to the World Geodetic System.[Default]
MGRS
(Military Grid Reference System) the values supplied are geospatial entity object codes, based on
OSGB36
(ordnance survey great britain) the value supplied is to be interpreted as a British National Grid Reference.
ED50
(European Datum coordinate system) the value supplied is to be interpreted as latitude followed by longitude according to the European Datum coordinate system.
Member of
Contained by
header: encodingDesc
May contain
Example
<geoDecl datum="OSGB36"/>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element geoDecl
{
   hatt.global.attributes,
   hatt.declarable.attributes,
   attribute datum { "WGS84" | "MGRS" | "OSGB36" | "ED50" }?,
   hmacro.phraseSeq
}

Appendix A.63 <handDesc>

<handDesc> (description of hands) contains a description of all the different hands used in a manuscript or other object. [11.7.2. Writing, Decoration, and Other Notations]
Modulemsdescription
Attributes
hands(hands) specifies the number of distinct hands identified within the manuscript
StatusOptional
Datatypeteidata.count
Member of
Contained by
msdescription: physDesc
May contain
core: p
header: handNote
msdescription: summary
Example
<handDesc>  <handNote scope="major">Written throughout in <term>angelicana formata</term>.</handNote> </handDesc>
Example
<handDesc hands="2">  <p>The manuscript is written in two contemporary hands, otherwise    unknown, but clearly those of practised scribes. Hand I writes    ff. 1r-22v and hand II ff. 23 and 24. Some scholars, notably    Verner Dahlerup and Hreinn Benediktsson, have argued for a third hand    on f. 24, but the evidence for this is insubstantial.</p> </handDesc>
Schematron
<sch:rule context="tei:handDesc"> <sch:report test="not(./[@hands]=count(./tei:handNote))"  role="error">The value of @hands in <handDesc>, currently <sch:value-of select="./[@hands]"/>, must be equal to the number of <handNotes>s, which is <sch:value-of select="count(./tei:handNote)"/>. </sch:report> </sch:rule>
Content model
<content>
 <alternate minOccurs="1" maxOccurs="1">
  <classRef key="model.pLike" minOccurs="1"
   maxOccurs="unbounded"/>
  <sequence minOccurs="1" maxOccurs="1">
   <elementRef key="summary" minOccurs="0"/>
   <elementRef key="handNote" minOccurs="1"
    maxOccurs="unbounded"/>
  </sequence>
 </alternate>
</content>
    
Schema Declaration
element handDesc
{
   attribute hands { text }?,
   ( hmodel.pLike+ | ( hsummary?, hhandNote+ ) )
}

Appendix A.64 <handNote>

<handNote> (note on hand) describes a particular style or hand distinguished within a manuscript. [11.7.2. Writing, Decoration, and Other Notations]
Moduleheader
Attributes
scribegives a name or other identifier for the scribe believed to be responsible for this hand.
Derived fromatt.handFeatures
StatusRequired
Datatypeteidata.name
Legal values are:
author
addressee
archivist
copyist
frank-signatory
friend
relative
secretary
unknown
scribeRefpoints to a full description of the scribe concerned, typically supplied by a <person> element elsewhere in the description.
Derived fromatt.handFeatures
StatusRequired
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
mediumdescribes the tint or type of ink, e.g. brown, or other writing medium, e.g. pencil
Derived fromatt.handFeatures
StatusRequired
Datatype1–2 occurrences of  separated by whitespace
Legal values are:
pencil
ink
ink-over-pencil
crayon
red-crayon
tbc
scopespecifies how widely this hand is used in the manuscript.
Derived fromatt.handFeatures
StatusRequired
Datatypeteidata.enumerated
Legal values are:
sole
major
minor
Contained by
msdescription: handDesc
May contain
Example
<handNote scope="sole">  <p>Written in insular    phase II half-uncial with interlinear Old English gloss in an Anglo-Saxon pointed    minuscule.</p> </handNote>
Schematron
<sch:rule context="tei:handNote"> <sch:let name="personIds"  value="document(substring-before(/tei:TEI/tei:teiHeader/tei:encodingDesc/tei:listPrefixDef/tei:prefixDef[@ident='psn']/@replacementPattern, '#'))//tei:TEI//tei:person/@xml:id"/> <sch:let name="scribeRefIds"  value="for $id in tokenize(@scribeRef, ' ') return substring-after($id, ':')"/> <sch:let name="missingIds"  value="for $id in $scribeRefIds return (if($id = $personIds) then " else $id)"/> <sch:let name="incompleteIds"  value="for $id in tokenize(@scribeRef, ' ') return (if (matches($id, 'psn:[A-Za-z0-9]+')) then " else $id)"/> <sch:report test="$incompleteIds != ""  role="error">Incorrect form of value(s) "<sch:value-of select="$incompleteIds"/>": correct form is psn:XYZ. </sch:report> <sch:report test="@scribeRef and $missingIds != ""  role="warning">The following id(s) "<sch:value-of select="$missingIds"/>" is/are not defined in the personography. </sch:report> <sch:report test="@cert and @scope = 'minor'"  role="warning">Attribute @cert is not used for minor hands. </sch:report> <sch:report test="(contains(@xml:id,'major') and @scope = 'minor') or (contains(@xml:id,'minor') and @scope = 'major')"  role="error">A major hand cannot have the value "minor" in the attribute @scope, or vice-versa. </sch:report> </sch:rule>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
    
Schema Declaration
element handNote
{
   hatt.global.attribute.xmlid,
   hatt.global.responsibility.attribute.cert,
   attribute scribe
   {
      "author"
    | "addressee"
    | "archivist"
    | "copyist"
    | "frank-signatory"
    | "friend"
    | "relative"
    | "secretary"
    | "unknown"
   },
   attribute scribeRef { list { + } },
   attribute medium
   {
      list
      {
         (
            "pencil"
          | "ink"
          | "ink-over-pencil"
          | "crayon"
          | "red-crayon"
          | "tbc"
         ),
         (
            "pencil"
          | "ink"
          | "ink-over-pencil"
          | "crayon"
          | "red-crayon"
          | "tbc"
         )?
      }
   },
   attribute scope { "sole" | "major" | "minor" },
   hmacro.specialPara
}

Appendix A.65 <handShift>

<handShift> (handwriting shift) marks the beginning of a sequence of text written in a new hand, or the beginning of a scribal stint. [12.3.2.1. Document Hands]
Moduletranscr
Attributes
newindicates a <handNote> element describing the hand concerned.
StatusRequired
Datatypeteidata.pointer
Schematron
<sch:rule context="tei:handShift"> <sch:let name="hands"  value="//tei:handNote/@xml:id"/> <sch:let name="plusHash"  value="for $hand in $hands return concat('#', $hand)"/> <sch:report test="not(. = //tei:handDesc/tei:handNote/concat('#', @xml:id))"  role="error">Permissible values are "<sch:value-of select="$plusHash"/>". </sch:report> </sch:rule>
Schematron
<sch:rule context="tei:handShift"> <sch:let name="noDivWithHand"  value="not(ancestor::tei:div[@hand])"/> <sch:let name="handShiftNew" value="@new"/> <sch:let name="firstHS"  value="not(preceding::tei:handShift)"/> <sch:let name="mainHand"  value="$noDivWithHand and $firstHS and $handShiftNew = concat('#',//tei:handNote[1][@scope='major']/@xml:id)"/> <sch:let name="prevSameHand"  value="$noDivWithHand and not($firstHS) and $handShiftNew = preceding::tei:handShift[1]/@new"/> <sch:let name="ancestorDivId"  value="generate-id(ancestor::tei:div[1])"/> <sch:let name="firstHSinDiv"  value="not($noDivWithHand) and not(generate-id(preceding::tei:handShift[1]/ancestor::tei:div[1]) = $ancestorDivId)"/> <sch:let name="divHand"  value="ancestor::tei:div[1][@hand = $handShiftNew] and $firstHSinDiv"/> <sch:let name="prevSameHandInDiv"  value="not($noDivWithHand) and $ancestorDivId = generate-id(preceding::tei:handShift[1]/ancestor::tei:div[1]) and $handShiftNew = preceding::tei:handShift[1]/@new"/> <sch:report test="$mainHand" role="error">Hand "<sch:value-of select="substring-after(@new,'#')"/>" unchanged from start. </sch:report> <sch:report test="$prevSameHand"  role="error">Hand "<sch:value-of select="substring-after(@new,'#')"/>" already specified by preceding <handShift>. </sch:report> <sch:report test="$divHand" role="error">Hand "<sch:value-of select="substring-after(@new,'#')"/>" unchanged from start of <div>. </sch:report> <sch:report test="$prevSameHandInDiv"  role="error">Hand "<sch:value-of select="substring-after(@new,'#')"/>" already specified by preceding <handShift> in this <div>. </sch:report> </sch:rule>
Note

This attribute serves the same function as the hand attribute provided for those elements which are members of the att.transcriptional class. It may be renamed at a subsequent major release.

Member of
Contained by
May containEmpty element
Note

The <handShift> element may be used either to denote a shift in the document hand (as from one scribe to another, on one writing style to another). Or, it may indicate a shift within a document hand, as a change of writing style, character or ink. Like other milestone elements, it should appear at the point of transition from some other state to the state which it describes.

Example
<l>When wolde the cat dwelle in his ynne</l> <handShift medium="greenish-ink"/> <l>And if the cattes skynne be slyk <handShift medium="black-ink"/> and gaye</l>
Content model
<content>
 <empty/>
</content>
    
Schema Declaration
element handShift { attribute new { text }, empty }

Appendix A.66 <head>

<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
core: listBibl
msdescription: msDesc
textstructure: body div postscript
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.

ExampleThe 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>
ExampleWhen 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>
ExampleThe <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
{
   hatt.global.attributes,
   hatt.typed.attributes,
   hatt.placement.attributes,
   hatt.written.attributes,
   hatt.cmc.attributes,
   (
      text
    | lg
    | hmodel.gLike
    | hmodel.phrase
    | hmodel.inter
    | hmodel.lLike
    | hmodel.global
   )*
}

Appendix A.67 <height>

<height> (height) contains a measurement measured along the axis at a right angle to the bottom of the object. [11.3.4. Dimensions]
Modulemsdescription
Attributes
Member of
Contained by
May containCharacter data only
Example
<height unit="inquantity="7"/>
Content model
<content>
 <macroRef key="macro.xtext"/>
</content>
    
Schema Declaration
element height
{
   hatt.global.attributes,
   hatt.dimensions.attributes,
   hmacro.xtext
}

Appendix A.68 <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
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusRequired
Datatype1–3 occurrences of  separated by whitespace
Legal values are:
underlined
superscript
subscript
italic
over-inked-pen
retraced
strikethrough
double-underlined
triple-underlined
dotted-underlined
wavy-underlined
larger
all-caps
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
{
   hatt.cmc.attributes,
   attribute rend
   {
      list
      {
         (
            "underlined"
          | "superscript"
          | "subscript"
          | "italic"
          | "over-inked-pen"
          | "retraced"
          | "strikethrough"
          | "double-underlined"
          | "triple-underlined"
          | "dotted-underlined"
          | "wavy-underlined"
          | "larger"
          | "all-caps"
         ),
         (
            "underlined"
          | "superscript"
          | "subscript"
          | "italic"
          | "over-inked-pen"
          | "retraced"
          | "strikethrough"
          | "double-underlined"
          | "triple-underlined"
          | "dotted-underlined"
          | "wavy-underlined"
          | "larger"
          | "all-caps"
         )?,
         (
            "underlined"
          | "superscript"
          | "subscript"
          | "italic"
          | "over-inked-pen"
          | "retraced"
          | "strikethrough"
          | "double-underlined"
          | "triple-underlined"
          | "dotted-underlined"
          | "wavy-underlined"
          | "larger"
          | "all-caps"
         )?
      }
   },
   hmacro.paraContent
}

Appendix A.69 <history>

<history> (history) groups elements describing the full history of a manuscript, manuscript part, or other object. [11.8. History]
Modulemsdescription
Attributes
Contained by
msdescription: msDesc
namesdates: object
May contain
core: p
msdescription: origin summary
Example
<history>  <origin>   <p>Written in Durham during the mid twelfth      century.</p>  </origin>  <provenance>   <p>Recorded in two medieval      catalogues of the books belonging to Durham Priory, made in 1391 and      1405.</p>  </provenance>  <provenance>   <p>Given to W. Olleyf by William Ebchester, Prior (1446-56)      and later belonged to Henry Dalton, Prior of Holy Island (Lindisfarne)      according to inscriptions on ff. 4v and 5.</p>  </provenance>  <acquisition>   <p>Presented to Trinity College in 1738 by      Thomas Gale and his son Roger.</p>  </acquisition> </history>
Content model
<content>
 <alternate>
  <classRef key="model.pLike" minOccurs="1"
   maxOccurs="unbounded"/>
  <sequence>
   <elementRef key="summary" minOccurs="0"/>
   <elementRef key="origin" minOccurs="0"/>
   <elementRef key="provenance"
    minOccurs="0" maxOccurs="unbounded"/>
   <elementRef key="acquisition"
    minOccurs="0"/>
  </sequence>
 </alternate>
</content>
    
Schema Declaration
element history
{
   hatt.global.attributes,
   ( hmodel.pLike+ | ( hsummary?, horigin?, provenance*, acquisition? ) )
}

Appendix A.70 <hyphenation>

<hyphenation> (hyphenation) summarizes the way in which hyphenation in a source text has been treated in an encoded version of it. [2.3.3. The Editorial Practices Declaration 16.3.2. Declarable Elements]
Moduleheader
Attributes
eol(end-of-line) indicates whether or not end-of-line hyphenation has been retained in a text.
StatusOptional
Datatypeteidata.enumerated
Legal values are:
all
all end-of-line hyphenation has been retained, even though the lineation of the original may not have been.
some
end-of-line hyphenation has been retained in some cases.[Default]
hard
all soft end-of-line hyphenation has been removed: any remaining end-of-line hyphenation should be retained.
none
all end-of-line hyphenation has been removed: any remaining hyphenation occurred within the line.
Member of
Contained by
May contain
core: p
Example
<hyphenation eol="some">  <p>End-of-line hyphenation silently removed where appropriate</p> </hyphenation>
Content model
<content>
 <classRef key="model.pLike" minOccurs="1"
  maxOccurs="unbounded"/>
</content>
    
Schema Declaration
element hyphenation
{
   hatt.global.attributes,
   hatt.declarable.attributes,
   attribute eol { "all" | "some" | "hard" | "none" }?,
   hmodel.pLike+
}

Appendix A.71 <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
StatusOptional
Datatypeteidata.enumerated
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
StatusOptional
Datatype1–∞ 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
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
{
   hatt.global.attributes,
   hatt.sortable.attributes,
   hatt.datable.attributes,
   hatt.typed.attribute.subtype,
   hatt.cmc.attributes,
   attribute type { text }?,
   attribute calendar { list { + } }?,
   ( text | hmodel.gLike | hidno )*
}

Appendix A.72 <institution>

<institution> (institution) contains the name of an organization such as a university or library, with which a manuscript or other object is identified, generally its holding institution. [11.4. The Manuscript Identifier]
Modulemsdescription
Attributes
Contained by
msdescription: msIdentifier
namesdates: objectIdentifier
May contain
Example
<msIdentifier>  <settlement>Oxford</settlement>  <institution>University of Oxford</institution>  <repository>Bodleian Library</repository>  <idno>MS. Bodley 406</idno> </msIdentifier>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
    
Schema Declaration
element institution
{
   hatt.global.attributes,
   hatt.naming.attributes,
   hmacro.phraseSeq.limited
}

Appendix A.73 <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.
StatusOptional
Datatypeteidata.pointer
Contained by
header: textClass
May contain
core: 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="term" minOccurs="1"
   maxOccurs="unbounded"/>
  <elementRef key="list"/>
 </alternate>
</content>
    
Schema Declaration
element keywords
{
   hatt.global.attributes,
   attribute scheme { text }?,
   ( hterm+ | list )
}

Appendix A.74 <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
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype
Legal values are:
underlined
italic
Member of
Contained by
May contain
Example
<l met="x/x/x/x/x/real="/xx/x/x/x/">Shall I compare thee to a summer's day?</l>
Schematron
<sch:rule context="tei:l"> <sch:report test="ancestor::tei:l[not(.//tei:note//tei:l[. = current()])]">Abstract model violation: Lines may not contain lines or lg elements.</sch:report> </sch:rule>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">
  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.phrase"/>
  <classRef key="model.inter"/>
  <classRef key="model.global"/>
 </alternate>
</content>
    
Schema Declaration
element l
{
   hatt.cmc.attributes,
   attribute rend { "underlined" | "italic" }?,
   ( text | hmodel.gLike | hmodel.phrase | hmodel.inter | hmodel.global )*
}

Appendix A.75 <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
ExampleLabels 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>
ExampleLabels 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>
ExampleLabels 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.
ExampleLabels 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
{
   hatt.global.attributes,
   hatt.typed.attributes,
   hatt.placement.attributes,
   hatt.written.attributes,
   hatt.cmc.attributes,
   hmacro.phraseSeq
}

Appendix A.76 <langUsage>

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

Appendix A.77 <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.
StatusRequired
Datatypeteidata.language
usagespecifies the approximate percentage of the text which uses this language.
StatusOptional
DatatypenonNegativeInteger
Contained by
header: langUsage
May contain
Note

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

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

Appendix A.78 <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
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype
Legal values are:
indent
center
align-right
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.
Derived fromatt.breaking
StatusRecommended
Datatypeteidata.enumerated
Legal values are:
no
yes
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.

ExampleThis 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>
ExampleThis 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
{
   hatt.cmc.attributes,
   attribute rend { "indent" | "center" | "align-right" }?,
   attribute break { "no" | "yes" }?,
   empty
}

Appendix A.79 <licence>

<licence> contains information about a licence or other legal agreement applicable to the text. [2.2.4. Publication, Distribution, Licensing, etc.]
Moduleheader
Attributes
targetspecifies the destination of the reference by supplying one or more URI References
Derived fromatt.pointing
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
Sample values include:
http://creativecommons.org/licenses/by-nc-nd/4.0/
Member of
Contained by
header: availability
linking: annotation
May contain
Note

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

Example
<licence target="http://www.nzetc.org/tm/scholarly/tei-NZETC-Help.html#licensing"> Licence: Creative Commons Attribution-Share Alike 3.0 New Zealand Licence </licence>
Example
<availability>  <licence target="http://creativecommons.org/licenses/by/3.0/"   notBefore="2013-01-01">   <p>The Creative Commons Attribution 3.0 Unported (CC BY 3.0) Licence      applies to this document.</p>   <p>The licence was added on January 1, 2013.</p>  </licence> </availability>
Schematron
<sch:rule context="tei:*[@calendar]"> <sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more systems or calendars to which the date represented by the content of this element belongs, but this <sch:name/> element has no textual content.</sch:assert> </sch:rule>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
    
Schema Declaration
element licence { attribute target { list { + } }?, hmacro.specialPara }

Appendix A.80 <listAnnotation>

<listAnnotation> contains a list of annotations, typically encoded as <annotation>, <annotationBlock>, or <note>, possibly organized with nested <listAnnotation> elements. [17.10. The standOff Container]
Modulelinking
Attributes
Member of
Contained by
May contain
Note

The enclosed annotations may use the general-purpose <note> element; or, for annotations pertaining to transcriptions of speech, the special-purpose <annotationBlock> element; or the <annotation> element, which is intended to map cleanly onto the Web Annotation Data Model.

Example
<standOff>  <listAnnotation>   <note target="#RotAM.4.15place="margin"    resp="#STCtype="gloss"> The spell begins to      break </note>   <note target="#RotAM.4.15place="bottom"    resp="#JLL"> The turning point of the poem…   </note>  </listAnnotation> </standOff> <!– … –> <lg xml:id="RotAM.4.15rhyme="ABCB">  <l>The self-same moment I could pray;</l>  <l>And from my neck so free</l>  <l>The albatross fell off, and sank</l>  <l>Like lead into the sea.</l> </lg>
Example
<listAnnotation>  <annotationBlock corresp="#u1">   <spanGrp type="pos">    <span from="#e14.w1to="#e14.w1">CONJ</span>    <span from="#e14.w2to="#e14.w2">RELPRO</span>    <span from="#e14.w3to="#e14.w3">V</span>   </spanGrp>   <spanGrp type="prosody">    <span from="#T0to="#T1">faster</span>   </spanGrp>  </annotationBlock> <!– … annotationBlocks for #u2 through #u27 here –> </listAnnotation>
Example
<listAnnotation>  <annotation xml:id="bgann1"   motivation="commenting"   target="#match(bg-c1p1s1,'Gallia.*omnis')">   <respStmt>    <resp>creator</resp>    <persName>Francis Kelsey</persName>   </respStmt>   <note>‘Gaul as a whole,’ contrasted with Gaul in the narrower sense, or Celtic Gaul; Celtic Gaul also is often called Gallia.</note>  </annotation>  <annotation xml:id="bgann2"   motivation="commenting"   target="#match(bg-c1p1s1,'Gallia.*divisa')">   <respStmt>    <resp>creator</resp>    <persName>Rice Holmes</persName>   </respStmt>   <note>Gallia…divisa: Notice the order of the words. ‘Gaul, taken as a whole, is divided’.</note>  </annotation>  <annotation xml:id="bgann3"   motivation="commentingtarget="#match(bg-c1p1s1,'Belgae')">   <respStmt>    <resp>creator</resp>    <persName>Arthur Tappan Walker</persName>   </respStmt>   <note>Belgae -arum m., the Belgae or Belgians</note>  </annotation>  <annotation xml:id="bgann4"   motivation="commentingtarget="#match(bg-c1p1s1,'Aquitani')">   <respStmt>    <resp>creator</resp>    <persName>Arthur Tappan Walker</persName>   </respStmt>   <note>Aquitani, -orum m.: the Aquitani, inhabiting southwestern Gaul</note>  </annotation>  <annotation xml:id="bgann5"   motivation="commentingtarget="#match(bg-c1p1s1,'Celtae')">   <respStmt>    <resp>creator</resp>    <persName>Arthur Tappan Walker</persName>   </respStmt>   <note>Celtae, -arum m: the Celtae or Celts</note>  </annotation>  <annotation xml:id="bgann6"   motivation="commenting"   target="#match(bg-c1p1s2,'Gallos(.|\n)*dividit')">   <respStmt>    <resp>creator</resp>    <persName>William Francis Allen</persName>    <persName>Joseph Henry Allen</persName>    <persName>Harry Pratt Judson</persName>   </respStmt>   <note>the verb is singular, because the two rivers make one boundary; as we should say,      ‘is divided by the line of the Seine and Marne.’</note>  </annotation> </listAnnotation> <!– Elsewhere in the document –> <text>  <body>   <div type="edition">    <div type="textpartsubtype="chapter"     n="1xml:id="bg-c1">     <p n="1xml:id="bg-c1p1">      <seg n="1xml:id="bg-c1p1s1">Gallia est omnis divisa in partes tres, quarum unam incolunt Belgae, aliam            Aquitani, tertiam qui ipsorum lingua Celtae, nostra Galli appellantur.</seg>      <seg n="2xml:id="bg-c1p1s2">Hi omnes lingua, institutis, legibus inter se differunt. Gallos ab Aquitanis            Garumna flumen, a Belgis Matrona et Sequana dividit.</seg> <!– … –>     </p>    </div>   </div>  </body> </text>
Content model
<content>
 <sequence>
  <classRef key="model.headLike"
   minOccurs="0" maxOccurs="unbounded"/>
  <classRef key="model.labelLike"
   minOccurs="0" maxOccurs="unbounded"/>
  <alternate minOccurs="1"
   maxOccurs="unbounded">
   <classRef key="model.annotationLike"/>
   <elementRef key="listAnnotation"/>
  </alternate>
 </sequence>
</content>
    
Schema Declaration
element listAnnotation
{
   hatt.global.attributes,
   hatt.typed.attributes,
   hatt.notated.attributes,
   hatt.declaring.attributes,
   (
      hmodel.headLike*,
      hmodel.labelLike*,
      ( hmodel.annotationLike | hlistAnnotation )+
   )
}

Appendix A.81 <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
linking: anchor
msdescription: msDesc
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>
  <classRef key="model.headLike"
   minOccurs="0" maxOccurs="unbounded"/>
  <elementRef key="desc" minOccurs="0"
   maxOccurs="unbounded"/>
  <alternate minOccurs="0"
   maxOccurs="unbounded">
   <classRef key="model.milestoneLike"
    minOccurs="1" maxOccurs="1"/>
   <elementRef key="relation" minOccurs="1"
    maxOccurs="1"/>
   <elementRef key="listRelation"
    minOccurs="1" maxOccurs="1"/>
  </alternate>
  <sequence minOccurs="1"
   maxOccurs="unbounded">
   <classRef key="model.biblLike"
    minOccurs="1" maxOccurs="unbounded"/>
   <alternate minOccurs="0"
    maxOccurs="unbounded">
    <classRef key="model.milestoneLike"
     minOccurs="1" maxOccurs="1"/>
    <elementRef key="relation"
     minOccurs="1" maxOccurs="1"/>
    <elementRef key="listRelation"
     minOccurs="1" maxOccurs="1"/>
   </alternate>
  </sequence>
 </sequence>
</content>
    
Schema Declaration
element listBibl
{
   hatt.global.attributes,
   hatt.sortable.attributes,
   hatt.declarable.attributes,
   hatt.typed.attributes,
   hatt.cmc.attributes,
   (
      hmodel.headLike*,
      desc*,
      ( hmodel.milestoneLike | relation | listRelation )*,
      (
         (
            hmodel.biblLike+,
            ( hmodel.milestoneLike | relation | listRelation )*
         )+
      )
   )
}

Appendix A.82 <listObject>

<listObject> (list of objects) contains a list of descriptions, each of which provides information about an identifiable physical object. [14.3.6. Objects]
Modulenamesdates
Attributes
Member of
Contained by
May contain
core: head
namesdates: listObject object
Note

The type attribute may be used to distinguish different types of objects.

Example
<listObject>  <object xml:id="AlfredJewel">   <objectIdentifier>    <country>United Kingdom</country>    <region>Oxfordshire</region>    <settlement>Oxford</settlement>    <institution>University of Oxford</institution>    <repository>Ashmolean Museum</repository>    <collection>English Treasures</collection>    <idno type="ashmolean">AN1836p.135.371</idno>    <idno type="wikipedia">https://en.wikipedia.org/wiki/Alfred_Jewel</idno>    <objectName>Alfred Jewel</objectName>   </objectIdentifier>   <physDesc>    <p> The Alfred Jewel is about 6.4 cm in length and is made of combination of filigreed <material>gold</material>        surrounding a polished teardrop shaped piece of transparent <material>quartz</material>. Underneath the rock crystal        is a cloisonné enamel image of a man with ecclesiastical symbols. The sides of the jewel holding the crystal in        place contain an openwork inscription saying "AELFRED MEC HEHT GEWYRCAN", meaning 'Alfred ordered me made'. </p>   </physDesc>   <history>    <origin>It is generally accepted that the Alfred Jewel dates from the <origDate>late 9th Century</origDate> and was        most likely made in <origPlace>England</origPlace>. </origin>    <provenance when="1693">The jewel was discovered in 1693 at Petherton Park, North Petherton in the English county of        Somerset, on land owned by Sir Thomas Wroth. North Petherton is about 8 miles away from Athelney, where King Alfred        founded a monastery. </provenance>    <provenance when="1698">A description of the Alfred Jewel was first published in 1698, in the Philosophical        Transactions of the Royal Society.</provenance>    <acquisition> It was bequeathed to Oxford University by Colonel Nathaniel Palmer (c. 1661-1718) and today is in the        Ashmolean Museum in Oxford. </acquisition>   </history>  </object> </listObject>
Content model
<content>
 <sequence>
  <classRef key="model.headLike"
   minOccurs="0" maxOccurs="unbounded"/>
  <elementRef key="desc" minOccurs="0"
   maxOccurs="unbounded"/>
  <alternate minOccurs="0"
   maxOccurs="unbounded">
   <elementRef key="relation" minOccurs="1"
    maxOccurs="1"/>
   <elementRef key="listRelation"
    minOccurs="1" maxOccurs="1"/>
  </alternate>
  <sequence minOccurs="1"
   maxOccurs="unbounded">
   <classRef key="model.objectLike"
    minOccurs="1" maxOccurs="unbounded"/>
   <alternate minOccurs="0"
    maxOccurs="unbounded">
    <elementRef key="relation"
     minOccurs="1" maxOccurs="1"/>
    <elementRef key="listRelation"
     minOccurs="1" maxOccurs="1"/>
   </alternate>
  </sequence>
 </sequence>
</content>
    
Schema Declaration
element listObject
{
   hatt.global.attributes,
   hatt.typed.attributes,
   hatt.declarable.attributes,
   hatt.sortable.attributes,
   hatt.cmc.attributes,
   (
      hmodel.headLike*,
      desc*,
      ( relation | listRelation )*,
      ( ( hmodel.objectLike+, ( relation | listRelation )* )+ )
   )
}

Appendix A.83 <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: 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="0" maxOccurs="unbounded"/>
  <elementRef key="desc" minOccurs="0"
   maxOccurs="unbounded"/>
  <alternate minOccurs="0"
   maxOccurs="unbounded">
   <elementRef key="relation" minOccurs="1"
    maxOccurs="1"/>
   <elementRef key="listRelation"
    minOccurs="1" maxOccurs="1"/>
  </alternate>
  <sequence minOccurs="1"
   maxOccurs="unbounded">
   <alternate minOccurs="1"
    maxOccurs="unbounded">
    <classRef key="model.personLike"
     minOccurs="1" maxOccurs="1"/>
    <elementRef key="listPerson"
     minOccurs="1" maxOccurs="1"/>
   </alternate>
   <alternate minOccurs="0"
    maxOccurs="unbounded">
    <elementRef key="relation"
     minOccurs="1" maxOccurs="1"/>
    <elementRef key="listRelation"
     minOccurs="1" maxOccurs="1"/>
   </alternate>
  </sequence>
 </sequence>
</content>
    
Schema Declaration
element listPerson
{
   hatt.global.attributes,
   hatt.typed.attributes,
   hatt.declarable.attributes,
   hatt.sortable.attributes,
   hatt.cmc.attributes,
   (
      hmodel.headLike*,
      desc*,
      ( relation | listRelation )*,
      (
         ( ( hmodel.personLike | hlistPerson )+, ( relation | listRelation )* )+
      )
   )
}

Appendix A.84 <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
ExampleIn 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="desc" minOccurs="0"
   maxOccurs="unbounded"/>
  <alternate minOccurs="1"
   maxOccurs="unbounded">
   <elementRef key="prefixDef"/>
   <elementRef key="listPrefixDef"/>
  </alternate>
 </sequence>
</content>
    
Schema Declaration
element listPrefixDef
{
   hatt.global.attributes,
   ( desc*, ( hprefixDef | hlistPrefixDef )+ )
}

Appendix A.85 <listTranspose>

<listTranspose> supplies a list of transpositions, each of which is indicated at some point in a document typically by means of metamarks. [12.3.4.5. Transpositions]
Moduletranscr
Member of
Contained by
May contain
transcr: transpose
Example
<listTranspose>  <transpose>   <ptr target="#ib02"/>   <ptr target="#ib01"/>  </transpose> </listTranspose>
This example might be used for a source document which indicates in some way that the elements identified by ib02 and code ib01 should be read in that order (ib02 followed by ib01), rather than in the reading order in which they are presented in the source.
Content model
<content>
 <sequence minOccurs="1" maxOccurs="1">
  <elementRef key="desc" minOccurs="0"
   maxOccurs="unbounded"/>
  <elementRef key="transpose" minOccurs="1"
   maxOccurs="unbounded"/>
 </sequence>
</content>
    
Schema Declaration
element listTranspose { desc*, htranspose+ }

Appendix A.86 <locale>

<locale> contains a brief informal description of the kind of place concerned, for example: a room, a restaurant, a park bench, etc. [16.2.3. The Setting Description]
Modulecorpus
Attributes
Member of
Contained by
corpus: setting
May contain
Example
<locale>a fashionable restaurant</locale>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
    
Schema Declaration
element locale { hatt.global.attributes, hmacro.phraseSeq.limited }

Appendix A.87 <material>

<material> (material) contains a word or phrase describing the material of which the object being described is composed. [11.3.2. Material and Object Type]
Modulemsdescription
Attributes
functiondescribes the function or use of the material in relation to the object as a whole.
StatusOptional
Datatypeteidata.enumerated
Sample values include:
binding
covering material of a codex
endband
sewing at the head or tail of the codex spine to strengthen the binding, often decorative
slipcase
removable protective cover for a set of one or more codices
support
the surface for writing
tie
a ribbon or string used to bind or close a codex or rolled scroll
Note

The sample values here are for descriptive bibliography. Other sets of sample values might include armrests, legs, tabletop, pan, and back for furniture; or wall, floor, window, column, ceiling, roof, stairs, chimney for architecture.

targetidentifies one or more elements to which the metamark applies.
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
Member of
Contained by
May contain
Note

The ref attribute may be used to point to one or more items within a taxonomy of types of material, defined either internally or externally.

Example
<physDesc>  <p>   <material>Parchment</material> leaves with a  <material>sharkskin</material> binding.</p> </physDesc>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element material
{
   hatt.global.attributes,
   hatt.canonical.attributes,
   hatt.typed.attributes,
   attribute function { text }?,
   attribute target { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.88 <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
StatusOptional
Datatypeteidata.enumerated
Member of
Contained by
May contain
ExampleThis 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>
Schematron
<sch:rule context="tei:measure[@unit='words']"> <sch:report test="not(./[@quantity]=substring-before(., ' words'))"  role="error">The value of @quantity, currently <sch:value-of select="./[@quantity]"/>, does not correspond to the text in <measure>, which is '<sch:value-of select="."/>'. </sch:report> </sch:rule> <sch:rule context="tei:measure[@unit='sheets']"> <sch:report test="not(./[@quantity]=substring-before(., ' sheet'))"  role="error">The value of @quantity, currently <sch:value-of select="./[@quantity]"/>, does not correspond to the text in <measure>, which is '<sch:value-of select="."/>'. </sch:report> <sch:report test="(./[@quantity]=1 and contains(., 'sheets')) or not(./[@quantity]=1 or contains(., 'sheets'))"  role="error">Switch between singular 'sheet' and plural 'sheets'. </sch:report> </sch:rule>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element measure
{
   hatt.global.attributes,
   hatt.typed.attribute.subtype,
   hatt.measurement.attributes,
   hatt.cmc.attributes,
   hatt.ranging.attributes,
   attribute type { text }?,
   hmacro.phraseSeq
}

Appendix A.89 <metamark>

<metamark> contains or describes any kind of graphic or written signal within a document the function of which is to determine how it should be read rather than forming part of the actual content of the document. [12.3.4.2. Metamarks]
Moduletranscr
Attributes
placespecifies where this item is placed.
Derived fromatt.placement
StatusRequired
Datatype1–∞ occurrences of teidata.enumerated separated by whitespace
Legal values are:
above
below
inline
margin-left
margin-right
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype1–∞ occurrences of teidata.word separated by whitespace
Legal values are:
superscript
subscript
underlined
functiondescribes the function (for example status, insertion, deletion, transposition) of the metamark.
StatusRequired
Datatypeteidata.word
Legal values are:
status
insertion
deletion
transposition
targetidentifies one or more elements to which the metamark applies.
StatusRequired
Datatype
Member of
Contained by
May contain
Example
<surface>  <metamark function="usedrend="line"   target="#X2"/>  <zone xml:id="zone-X2">   <line>I am that halfgrown <add>angry</add> boy, fallen asleep</line>   <line>The tears of foolish passion yet undried</line>   <line>upon my cheeks.</line> <!– … –>   <line>I pass through <add>the</add> travels and <del>fortunes</del> of   <retrace>thirty</retrace>   </line>   <line>years and become old,</line>   <line>Each in its due order comes and goes,</line>   <line>And thus a message for me comes.</line>   <line>The</line>  </zone>  <metamark function="used"   target="#zone-X2">Entered – Yes</metamark> </surface>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
    
Schema Declaration
element metamark
{
   attribute place
   {
      list
      {
         ( "above" | "below" | "inline" | "margin-left" | "margin-right" )+
      }
   },
   attribute rend { list { ( "superscript" | "subscript" | "underlined" )+ } }?,
   attribute function { "status" | "insertion" | "deletion" | "transposition" },
   attribute target { text },
   hmacro.specialPara
}

Appendix A.90 <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
stylecontains an expression in some formal style definition language which defines the rendering or presentation used for this element in the source text
Derived fromatt.global.rendition
StatusRequired
Datatypeteidata.text
Legal values are:
20% align-right
20% align-left
20% center
50% center
100%
unitprovides a conventional name for the kind of section changing [HAM: or ending] at this milestone.
Derived fromatt.milestoneUnit
StatusRequired
Datatypeteidata.enumerated
Legal values are:
address
annotation
date
dateline
entry
frank
letter_body
pageNum
paragraph
postscript
salutation
section
signature
stanza
time
typecharacterizes the element in some sense, using any convenient classification scheme or typology.
Derived fromatt.typed
StatusRequired
Datatypeteidata.enumerated
Legal values are:
line
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
{
   hatt.cmc.attributes,
   attribute style
   {
      "20% align-right"
    | "20% align-left"
    | "20% center"
    | "50% center"
    | "100%"
   },
   attribute unit
   {
      "address"
    | "annotation"
    | "date"
    | "dateline"
    | "entry"
    | "frank"
    | "letter_body"
    | "pageNum"
    | "paragraph"
    | "postscript"
    | "salutation"
    | "section"
    | "signature"
    | "stanza"
    | "time"
   },
   attribute type { "line" },
   empty
}

Appendix A.91 <msContents>

<msContents> (manuscript contents) describes the intellectual content of a manuscript, manuscript part, or other object either as a series of paragraphs or as a series of structured manuscript items. [11.6. Intellectual Content]
Modulemsdescription
Attributes
Contained by
msdescription: msDesc
namesdates: object
May contain
core: p textLang
msdescription: msItem summary
Note

Unless it contains a simple prose description, this element should contain at least one of the elements <summary>, <msItem>, or <msItemStruct>. This constraint is not currently enforced by the schema.

Example
<msContents class="#sermons">  <p>A collection of Lollard sermons</p> </msContents>
Example
<msContents>  <msItem n="1">   <locus>fols. 5r-7v</locus>   <title>An ABC</title>   <bibl>    <title>IMEV</title>    <biblScope>239</biblScope>   </bibl>  </msItem>  <msItem n="2">   <locus>fols. 7v-8v</locus>   <title xml:lang="frm">Lenvoy de Chaucer a Scogan</title>   <bibl>    <title>IMEV</title>    <biblScope>3747</biblScope>   </bibl>  </msItem>  <msItem n="3">   <locus>fol. 8v</locus>   <title>Truth</title>   <bibl>    <title>IMEV</title>    <biblScope>809</biblScope>   </bibl>  </msItem>  <msItem n="4">   <locus>fols. 8v-10v</locus>   <title>Birds Praise of Love</title>   <bibl>    <title>IMEV</title>    <biblScope>1506</biblScope>   </bibl>  </msItem>  <msItem n="5">   <locus>fols. 10v-11v</locus>   <title xml:lang="la">De amico ad amicam</title>   <title xml:lang="la">Responcio</title>   <bibl>    <title>IMEV</title>    <biblScope>16 &amp; 19</biblScope>   </bibl>  </msItem>  <msItem n="6">   <locus>fols. 14r-126v</locus>   <title>Troilus and Criseyde</title>   <note>Bk. 1:71-Bk. 5:1701, with additional losses due to mutilation throughout</note>  </msItem> </msContents>
Content model
<content>
 <alternate>
  <classRef key="model.pLike" minOccurs="1"
   maxOccurs="unbounded"/>
  <sequence>
   <elementRef key="summary" minOccurs="0"/>
   <elementRef key="textLang" minOccurs="0"/>
   <elementRef key="titlePage"
    minOccurs="0"/>
   <alternate minOccurs="0"
    maxOccurs="unbounded">
    <elementRef key="msItem"/>
    <elementRef key="msItemStruct"/>
   </alternate>
  </sequence>
 </alternate>
</content>
    
Schema Declaration
element msContents
{
   hatt.global.attributes,
   hatt.msExcerpt.attributes,
   hatt.msClass.attributes,
   (
      hmodel.pLike+
    | ( hsummary?, htextLang?, titlePage?, ( hmsItem | msItemStruct )* )
   )
}

Appendix A.92 <msDesc>

<msDesc> (manuscript description) contains a description of a single identifiable manuscript or other text-bearing object such as an early printed book. [11.1. Overview]
Modulemsdescription
Attributes
Member of
Contained by
May contain
Note

Although the <msDesc> has primarily been designed with a view to encoding manuscript descriptions, it may also be used for other objects such as early printed books, fascicles, epigraphs, or any text-bearing objects that require substantial description. If an object is not text-bearing or the reasons for describing the object is not primarily the textual content, the more general <object> may be more suitable.

Example
<msDesc>  <msIdentifier>   <settlement>Oxford</settlement>   <repository>Bodleian Library</repository>   <idno type="Bod">MS Poet. Rawl. D. 169.</idno>  </msIdentifier>  <msContents>   <msItem>    <author>Geoffrey Chaucer</author>    <title>The Canterbury Tales</title>   </msItem>  </msContents>  <physDesc>   <objectDesc>    <p>A parchment codex of 136 folios, measuring approx        28 by 19 inches, and containing 24 quires.</p>    <p>The pages are margined and ruled throughout.</p>    <p>Four hands have been identified in the manuscript: the first 44        folios being written in two cursive anglicana scripts, while the        remainder is for the most part in a mixed secretary hand.</p>   </objectDesc>  </physDesc> </msDesc>
Schematron
<sch:rule context="tei:msContents|tei:physDesc|tei:history|tei:additional"> <sch:let name="gi" value="name(.)"/> <sch:report test="preceding-sibling::*[ name(.) eq $gi ] and not( following-sibling::*[ name(.) eq $gi ] )"> Only one <sch:name/> is allowed as a child of <sch:value-of select="name(..)"/>. </sch:report> </sch:rule>
Content model
<content>
 <sequence>
  <elementRef key="msIdentifier"/>
  <classRef key="model.headLike"
   minOccurs="0" maxOccurs="unbounded"/>
  <alternate>
   <classRef key="model.pLike"
    minOccurs="1" maxOccurs="unbounded"/>
   <alternate minOccurs="0"
    maxOccurs="unbounded">
    <elementRef key="msContents"/>
    <elementRef key="physDesc"/>
    <elementRef key="history"/>
    <elementRef key="additional"/>
    <elementRef key="msPart"/>
    <elementRef key="msFrag"/>
   </alternate>
  </alternate>
 </sequence>
</content>
    
Schema Declaration
element msDesc
{
   hatt.global.attributes,
   hatt.sortable.attributes,
   hatt.typed.attributes,
   hatt.declaring.attributes,
   hatt.docStatus.attributes,
   (
      hmsIdentifier,
      hmodel.headLike*,
      (
         hmodel.pLike+
       | ( hmsContents | hphysDesc | hhistory | additional | msPart | msFrag )*
      )
   )
}

Appendix A.93 <msIdentifier>

<msIdentifier> (manuscript identifier) contains the information required to identify the manuscript or similar object being described. [11.4. The Manuscript Identifier]
Modulemsdescription
Attributes
Member of
Contained by
core: bibl
msdescription: msDesc
May contain
Example
<msIdentifier>  <settlement>San Marino</settlement>  <repository>Huntington Library</repository>  <idno>MS.El.26.C.9</idno> </msIdentifier>
Schematron
<sch:rule context="tei:msIdentifier"> <sch:report test="not( parent::tei:msPart ) and ( child::*[1]/self::idno or child::*[1]/self::altIdentifier or normalize-space(.) eq ")">An msIdentifier must contain either a repository or location.</sch:report> </sch:rule>
Content model
<content>
 <sequence>
  <sequence>
   <classRef key="model.placeNamePart"
    expand="sequenceOptional"/>
   <elementRef key="institution"
    minOccurs="0"/>
   <elementRef key="repository"
    minOccurs="0"/>
   <elementRef key="collection"
    minOccurs="0" maxOccurs="unbounded"/>
   <elementRef key="idno" minOccurs="0"
    maxOccurs="unbounded"/>
  </sequence>
  <alternate minOccurs="0"
   maxOccurs="unbounded">
   <elementRef key="msName"/>
   <elementRef key="objectName"/>
   <elementRef key="altIdentifier"/>
  </alternate>
 </sequence>
</content>
    
Schema Declaration
element msIdentifier
{
   hatt.global.attributes,
   (
      (
         hplaceName?,
         hcountry?,
         hsettlement?,
         hinstitution?,
         hrepository?,
         hcollection*,
         hidno*
      ),
      ( msName | hobjectName | altIdentifier )*
   )
}

Appendix A.94 <msItem>

<msItem> (manuscript item) describes an individual work or item within the intellectual content of a manuscript, manuscript part, or other object. [11.6.1. The msItem and msItemStruct Elements]
Modulemsdescription
Attributes
Member of
Contained by
msdescription: msContents msItem
May contain
Example
<msItem class="#saga">  <locus>ff. 1r-24v</locus>  <title>Agrip af Noregs konunga sögum</title>  <incipit>regi oc h<ex>ann</ex> setiho  <gap reason="illegibleextent="7"/>sc    heim se<ex>m</ex> þio</incipit>  <explicit>h<ex>on</ex> hev<ex>er</ex>   <ex>oc</ex>þa buit hesta .ij. aNan viþ    fé enh<ex>on</ex>o<ex>m</ex> aNan til    reiþ<ex>ar</ex>  </explicit>  <textLang mainLang="non">Old Norse/Icelandic</textLang> </msItem>
Content model
<content>
 <sequence>
  <alternate minOccurs="0"
   maxOccurs="unbounded">
   <elementRef key="locus"/>
   <elementRef key="locusGrp"/>
  </alternate>
  <alternate>
   <classRef key="model.pLike"
    minOccurs="1" maxOccurs="unbounded"/>
   <alternate minOccurs="1"
    maxOccurs="unbounded">
    <classRef key="model.titlepagePart"/>
    <classRef key="model.msItemPart"/>
    <classRef key="model.global"/>
   </alternate>
  </alternate>
 </sequence>
</content>
    
Schema Declaration
element msItem
{
   hatt.global.attributes,
   hatt.msExcerpt.attributes,
   hatt.msClass.attributes,
   (
      ( locus | locusGrp )*,
      (
         hmodel.pLike+
       | ( hmodel.titlepagePart | hmodel.msItemPart | hmodel.global )+
      )
   )
}

Appendix A.95 <name>

<name> (name, proper noun) contains a proper noun or noun phrase. [3.6.1. Referring Strings]
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
StatusOptional
Datatype1–∞ 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
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>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element name
{
   hatt.global.attributes,
   hatt.personal.attributes,
   hatt.datable.attributes,
   hatt.editLike.attributes,
   hatt.typed.attributes,
   hatt.cmc.attributes,
   attribute calendar { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.96 <normalization>

<normalization> (normalization) indicates the extent of normalization or regularization of the original source carried out in converting it to electronic form. [2.3.3. The Editorial Practices Declaration 16.3.2. Declarable Elements]
Moduleheader
Attributes
methodindicates the method adopted to indicate normalizations within the text.
StatusOptional
Datatypeteidata.enumerated
Legal values are:
silent
normalization made silently[Default]
markup
normalization represented using markup
Member of
Contained by
May contain
core: p
Example
<editorialDecl>  <normalization method="markup">   <p>Where both upper- and lower-case i, j, u, v, and vv have been normalized, to modern      20th century typographical practice, the <gi>choice</gi> element has been used to      enclose <gi>orig</gi> and <gi>reg</gi> elements giving the original and new values      respectively. … </p>  </normalization>  <normalization method="silent">   <p>Spacing between words and following punctuation has been regularized to zero spaces;      spacing between words has been regularized to one space.</p>  </normalization>  <normalization source="http://www.dict.sztaki.hu/webster">   <p>Spelling converted throughout to Modern American usage, based on Websters 9th      Collegiate dictionary.</p>  </normalization> </editorialDecl>
Content model
<content>
 <classRef key="model.pLike" minOccurs="1"
  maxOccurs="unbounded"/>
</content>
    
Schema Declaration
element normalization
{
   hatt.global.attributes,
   hatt.declarable.attributes,
   attribute method { "silent" | "markup" }?,
   hmodel.pLike+
}

Appendix A.97 <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
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype
Legal values are:
indent
center
align-right
resp(responsible party) indicates the agency responsible for the intervention or interpretation, for example an editor or transcriber.
Derived fromatt.global.responsibility
StatusOptional
Schematron
<sch:rule context="tei:note"> <sch:let name="noteMakers"  value="//tei:principal/@xml:id | //tei:editor/@xml:id | //tei:respStmt/@xml:id"/> <sch:let name="plusHash"  value="for $maker in $noteMakers return concat('#', $maker)"/> <sch:assert test=". = //tei:editor/concat('#', @xml:id) or . = //tei:respStmt/concat('#', @xml:id)"  role="error">Permissible values are "<sch:value-of select="$plusHash"/>". </sch:assert> </sch:rule>
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
Sample values include:
#CU
#CW
#DD
#TO
#NYB
placespecifies where this item is placed.
Derived fromatt.placement
StatusOptional
Datatype
Legal values are:
above
inline
below
margin-left
margin-right
center
top-left
top-center
top-right
bot-left
bot-center
bot-right
handpoints to a <handNote> element describing the hand considered responsible for the content of the element concerned.
Derived fromatt.written
StatusOptional
Schematron
<sch:rule context="tei:note"> <sch:let name="hands"  value="//tei:handNote/@xml:id"/> <sch:let name="plusHash"  value="for $hand in $hands return concat('#', $hand)"/> <sch:report test="not(. = //tei:handDesc/tei:handNote/concat('#', @xml:id))"  role="error">Permissible values are "<sch:value-of select="$plusHash"/>". </sch:report> </sch:rule>
Datatypeteidata.pointer
Member of
Contained by
May contain
ExampleIn 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.
ExampleThe 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.
Schematron
<sch:rule context="tei:note"> <sch:report test="@resp and (@hand|@place|@rend)"  role="error">The attribute @resp on <note> cannot be mixed with any other attribute. Use @resp for a footnote. Use @hand for an annotation that is not part of a letter as sent or of a document as left by the author; @place is recommended for annotations, and @rend is optional. </sch:report> </sch:rule>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
    
Schema Declaration
element note
{
   hatt.cmc.attributes,
   attribute rend { "indent" | "center" | "align-right" }?,
   attribute resp { list { + } }?,
   attribute place
   {
      "above"
    | "inline"
    | "below"
    | "margin-left"
    | "margin-right"
    | "center"
    | "top-left"
    | "top-center"
    | "top-right"
    | "bot-left"
    | "bot-center"
    | "bot-right"
   }?,
   attribute hand { text }?,
   hmacro.specialPara
}

Appendix A.98 <noteGrp>

<noteGrp> (note group) contains a group of notes [3.9.1.1. Encoding Grouped Notes]
Modulecore
Attributes
Member of
Contained by
May contain
ExampleIn the following example, there are two notes in different languages, each specifying the content of the annotation relating to the same fragment of text:
<p>(…) tamen reuerendos dominos archiepiscopum et canonicos Leopolienses necnon episcopum in duplicibus Quatuortemporibus <noteGrp>   <note xml:lang="en">Quatuor Tempora, so called dry fast days (Wednesday, Friday, and Saturday)      falling on each of the quarters of the year. In the first quarter they were called Cinerum      (following Ash Wednesday), second Spiritus (following Pentecost), third Crucis      (after the Exaltation of the Holy Cross, September 14th), and Luciae      in the fourth (after the feast of St. Lucia, December 13th).   </note>   <note xml:lang="pl">Quatuor Tempora, tzw. Suche dni postne (środa, piątek i sobota)      przypadające cztery razy w roku. W pierwszym kwartale zwały się Cinerum      (po Popielcu), w drugim Spiritus (po Zielonych Świętach), w trzecim Crucis      (po święcie Podwyższenia Krzyża 14 września), w czwartym Luciae      (po dniu św. Łucji 13 grudnia).   </note>  </noteGrp> totaliter expediui. </p>
Content model
<content>
 <sequence>
  <elementRef key="desc" minOccurs="0"
   maxOccurs="unbounded"/>
  <alternate minOccurs="1"
   maxOccurs="unbounded">
   <elementRef key="note"/>
   <elementRef key="noteGrp"/>
  </alternate>
 </sequence>
</content>
    
Schema Declaration
element noteGrp
{
   hatt.global.attributes,
   hatt.placement.attributes,
   hatt.pointing.attributes,
   hatt.typed.attributes,
   hatt.written.attributes,
   hatt.anchoring.attributes,
   hatt.cmc.attributes,
   ( desc*, ( hnote | hnoteGrp )+ )
}

Appendix A.99 <notesStmt>

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

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

Example
<notesStmt>  <note>Historical commentary provided by Mark Cohen</note>  <note>OCR scanning done at University of Toronto</note> </notesStmt>
Content model
<content>
 <alternate minOccurs="1"
  maxOccurs="unbounded">
  <classRef key="model.noteLike"/>
  <elementRef key="relatedItem"/>
 </alternate>
</content>
    
Schema Declaration
element notesStmt
{
   hatt.global.attribute.n,
   ( hmodel.noteLike | hrelatedItem )+
}

Appendix A.100 <object>

<object> contains a description of a single identifiable physical object. [14.3.6. Objects]
Modulenamesdates
Attributes
Member of
Contained by
namesdates: listObject object
May contain
Note

The <object> element is a recent addition to the TEI P5 Guidelines as of version 3.5.0 and as such may be more prone to further revision in the next few releases as its use develops. This may be particularly evident where its contents have been borrowed from <msDesc> and have yet to be generalized from their use in the context of manuscript descriptions.

The <object> element may be used for describing any object, text-bearing or not, though where the textuality of the object is the primary concern or a collection is mostly composed of manuscripts, encoders may prefer the <msDesc> element (a more specific form of <object>) which may be used not only to describe manuscripts but any form of text-bearing objects such as early printed books.

Example
<listObject>  <object xml:id="Alfred_Jewel">   <objectIdentifier>    <country>United Kingdom</country>    <region>Oxfordshire</region>    <settlement>Oxford</settlement>    <institution>University of Oxford</institution>    <repository>Ashmolean Museum</repository>    <collection>English Treasures</collection>    <idno type="ashmolean">AN1836p.135.371</idno>    <idno type="wikipedia">https://en.wikipedia.org/wiki/Alfred_Jewel</idno>    <objectName>Alfred Jewel</objectName>   </objectIdentifier>   <physDesc>    <p> The Alfred Jewel is about 6.4 cm in length and is made of combination of filigreed <material>gold</material>        surrounding a polished teardrop shaped piece of transparent <material>quartz</material>. Underneath the rock        crystal is a cloisonné enamel image of a man with ecclesiastical symbols. The sides of the jewel holding the        crystal in place contain an openwork inscription saying "AELFRED MEC HEHT GEWYRCAN", meaning 'Alfred ordered        me made'. </p>   </physDesc>   <history>    <origin>It is generally accepted that the Alfred Jewel dates from the <origDate>late 9th Century</origDate> and        was most likely made in <origPlace>England</origPlace>. </origin>    <provenance when="1693">The jewel was discovered in 1693 at Petherton Park, North Petherton in the English        county of Somerset, on land owned by Sir Thomas Wroth. North Petherton is about 8 miles away from Athelney,        where King Alfred founded a monastery. </provenance>    <provenance when="1698">A description of the Alfred Jewel was first published in 1698, in the Philosophical        Transactions of the Royal Society.</provenance>    <acquisition> It was bequeathed to Oxford University by Colonel Nathaniel Palmer (c. 1661-1718) and today is in        the Ashmolean Museum in Oxford. </acquisition>   </history>  </object> </listObject> <!– Elsewhere in document –> <p> The <objectName ref="#MinsterLovellJewel">Minster Lovell Jewel</objectName> is probably the most similar to the <objectName ref="#Alfred_Jewel">Alfred Jewel</objectName> and was found in <placeName ref="#MinsterLovell">Minster    Lovell</placeName> in <placeName ref="#Oxfordshire">Oxfordshire</placeName> and is kept at the <orgName ref="#AshmoleanMuseum">Ashmolean Museum</orgName>. </p>
Example
<listObject>  <object xml:id="MaskOfTutankhamun">   <objectIdentifier>    <objectName xml:lang="en">Mask of Tutankhamun</objectName>    <idno type="carter">256a</idno>    <idno type="JournalD'Entrée">60672</idno>    <idno type="exhibition">220</idno>    <institution>Museum of Egyptian Antiquities</institution>    <address>     <street>15 Meret Basha</street>     <district>Ismailia</district>     <settlement>Cairo</settlement>     <country>Egypt</country>     <location>      <geo>30.047778 31.233333</geo>     </location>    </address>   </objectIdentifier>   <msContents>    <p>The back and shoulders of the mask is inscribed with a protective spell in Egyptian hieroglyphs formed of ten        vertical and horizontal lines. This spell first appeared on masks in the Middle Kingdom at least 500 years        before Tutankhamun, and comes from chapter 151 of the <title>Book of the Dead</title>.</p>   </msContents>   <physDesc>    <p> The mask of Tutankhamun is 54cm x 39.3cm x 49cm. It is constructed from two layers of high-karat gold that        varies in thickness from 1.5-3mm. It weighs approximately 10.23kg and x-ray crystallography shows that it is        composed of two alloys of gold with a lighter 18.4 karat shade being used for the face and neck while a heavier        22.5 karat gold was used for the rest of the mask.</p>    <p>In the mask Tutankhamun wears a nemes headcloth which has the royal insignia of a cobra (Wadjet) and vulture        (Nekhbet) on it. These are thought respectively to symbolize Tutankhamun's rule of both Lower Egypt and Upper        Egypt. His ears are pierced for earrings. The mask has rich inlays of coloured glass and gemstones, including        lapis lazuli surrounding the eye and eyebrows, quartz for the eyes, obsidian for the pupils. The broad collar is        made up of carnelian, feldspar, turquoise, amazonite, faience and other stones.</p>   </physDesc>   <history>    <origin>     <p>The mask of Tutankhamun was created in <origPlace>Egypt</origPlace> around <origDate when="-1323type="circa">1323 BC</origDate>. It is a death mask of the 18th-dynasty ancient Egyptian Pharaoh Tutankhamun          who reigned 1332–1323 BC. </p>    </origin>    <provenance>     <p>The mask of Tutankhamun was found in his burial chamber at Theban Necropolis in the Valley of the Kings in          1922. On 28 October 1925 the excavation team led by English archaeologist Howard Carter opened the heavy          sarcophagus and three coffins and were the first people in around 3,250 years to see the mask of Tutankhamun.          Carter wrote in his diary: <quote> The pins removed, the lid was raised. The penultimate scene was disclosed –            a very neatly wrapped mummy of the young king, with golden mask of sad but tranquil expression, symbolizing            Osiris … the mask bears that god's attributes, but the likeness is that of Tut.Ankh.Amen – placid and            beautiful, with the same features as we find upon his statues and coffins. The mask has fallen slightly            back, thus its gaze is straight up to the heavens. </quote>     </p>    </provenance>    <acquisition> In December 1925, the mask was removed from the tomb, placed in a crate and transported 635        kilometres (395 mi) to the Egyptian Museum in Cairo, where it remains on public display. </acquisition>   </history>   <additional>    <adminInfo>     <custodialHist>      <custEvent when="1944">When it was discovered in 1925, the 2.5kg narrow gold beard was no longer attached to            the mask and was reattached to the chin by use of a wooden dowel in 1944.</custEvent>      <custEvent when="2014-08"> In August 2014 when the mask was removed from its display case for cleaning, the            beard fell off again. Those working in the museum unadvisedly used a quick-drying epoxy to attempt to fix            it, but left the beard off-centre. </custEvent>      <custEvent when="2015-01">The damage was noticed and repaired in January 2015 by a German-Egyptian team who            used beeswax, a material known to be used as adhesives by the ancient Egyptians.</custEvent>     </custodialHist>    </adminInfo>   </additional>  </object> </listObject>
Content model
<content>
 <sequence>
  <elementRef key="objectIdentifier"
   minOccurs="1" maxOccurs="unbounded"/>
  <classRef key="model.headLike"
   minOccurs="0" maxOccurs="unbounded"/>
  <alternate>
   <classRef key="model.pLike"
    minOccurs="1" maxOccurs="unbounded"/>
   <alternate minOccurs="0"
    maxOccurs="unbounded">
    <elementRef key="msContents"/>
    <elementRef key="physDesc"/>
    <elementRef key="history"/>
    <elementRef key="additional"/>
   </alternate>
  </alternate>
  <alternate minOccurs="0"
   maxOccurs="unbounded">
   <classRef key="model.noteLike"/>
   <classRef key="model.biblLike"/>
   <elementRef key="linkGrp"/>
   <elementRef key="link"/>
  </alternate>
  <elementRef key="object" minOccurs="0"
   maxOccurs="unbounded"/>
 </sequence>
</content>
    
Schema Declaration
element object
{
   hatt.global.attributes,
   hatt.sortable.attributes,
   hatt.typed.attributes,
   hatt.declaring.attributes,
   hatt.docStatus.attributes,
   hatt.canonical.attributes,
   (
      hobjectIdentifier+,
      hmodel.headLike*,
      ( hmodel.pLike+ | ( hmsContents | hphysDesc | hhistory | additional )* ),
      ( hmodel.noteLike | hmodel.biblLike | linkGrp | link )*,
      hobject*
   )
}

Appendix A.101 <objectDesc>

<objectDesc> (object description) contains a description of the physical components making up the object which is being described. [11.7.1. Object Description]
Modulemsdescription
Attributes
form(form) a short project-specific name identifying the physical form of the carrier, for example as a codex, roll, fragment, partial leaf, cutting etc.
StatusOptional
Datatypeteidata.enumerated
Note

Definitions for the terms used may typically be provided by a <valList> element in the project schema specification.

Member of
Contained by
msdescription: physDesc
May contain
core: p
msdescription: supportDesc
Example
<objectDesc form="codex">  <supportDesc material="mixed">   <p>Early modern   <material>parchment</material> and   <material>paper</material>.</p>  </supportDesc>  <layoutDesc>   <layout ruledLines="25 32"/>  </layoutDesc> </objectDesc>
Content model
<content>
 <alternate>
  <classRef key="model.pLike" minOccurs="1"
   maxOccurs="unbounded"/>
  <sequence>
   <elementRef key="supportDesc"
    minOccurs="0"/>
   <elementRef key="layoutDesc"
    minOccurs="0"/>
  </sequence>
 </alternate>
</content>
    
Schema Declaration
element objectDesc
{
   hatt.global.attributes,
   attribute form { text }?,
   ( hmodel.pLike+ | ( hsupportDesc?, layoutDesc? ) )
}

Appendix A.102 <objectIdentifier>

<objectIdentifier> (object identifier) groups one or more identifiers or pieces of locating information concerning a single object. [14.3.6. Objects]
Modulenamesdates
Attributes
Member of
Contained by
core: bibl
namesdates: object
May contain
Example
<objectIdentifier>  <country>United Kingdom</country>  <region>Oxfordshire</region>  <settlement>Oxford</settlement>  <institution>University of Oxford</institution>  <repository>Ashmolean Museum</repository>  <collection>English Treasures</collection>  <idno type="ashmolean">AN1836p.135.371</idno>  <idno type="wikipedia">https://en.wikipedia.org/wiki/Alfred_Jewel</idno>  <objectName>Alfred Jewel</objectName> </objectIdentifier>
Example
<object xml:id="Excalibur-MultipleNames">  <objectIdentifier>   <objectName type="main">Excalibur</objectName>   <objectName type="alt">Caliburn</objectName>   <objectName xml:lang="cy">Caledfwlch</objectName>   <objectName xml:lang="cnx">Calesvol</objectName>   <objectName xml:lang="br">Kaledvoulc'h</objectName>   <objectName xml:lang="la">Caliburnus</objectName>   <country>Wales</country>  </objectIdentifier>  <p>Excalibur is the name for the legendary sword of King Arthur, in Welsh it is called Caledfwlch,    in Cornish it is called Calesvol, in Breton it is called Kaledvoulc'h, and in Latin it is called Caliburnus.    In some versions Excalibur's blade was engraved with phrases on opposite sides which in translation read:    "Take me up" and "Cast me away" (or similar).</p> </object>
Content model
<content>
 <alternate minOccurs="1"
  maxOccurs="unbounded">
  <classRef key="model.placeNamePart"/>
  <elementRef key="institution"/>
  <elementRef key="repository"/>
  <elementRef key="collection"/>
  <elementRef key="idno"/>
  <elementRef key="msName"/>
  <elementRef key="objectName"/>
  <elementRef key="altIdentifier"/>
  <elementRef key="address"/>
 </alternate>
</content>
    
Schema Declaration
element objectIdentifier
{
   hatt.global.attributes,
   (
      hmodel.placeNamePart
    | hinstitution
    | hrepository
    | hcollection
    | hidno
    | msName
    | hobjectName
    | altIdentifier
    | haddress
   )+
}

Appendix A.103 <objectName>

<objectName> (name of an object) contains a proper noun or noun phrase used to refer to an object. [14.2.5. Object Names]
Modulenamesdates
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
StatusOptional
Datatype1–∞ 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
Example
<p> The <objectName ref="#MinsterLovellJewel">Minster Lovell Jewel</objectName> is probably the most similar to the <objectName ref="#AlfredJewel">Alfred Jewel</objectName> and was found in <placeName ref="#MinsterLovell">Minster    Lovell</placeName> in <placeName ref="#Oxfordshire">Oxfordshire</placeName> and is kept at the <orgName ref="#AshmoleanMuseum">Ashmolean Museum</orgName>. </p>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element objectName
{
   hatt.datable.attributes,
   hatt.editLike.attributes,
   hatt.global.attributes,
   hatt.personal.attributes,
   hatt.typed.attributes,
   hatt.cmc.attributes,
   attribute calendar { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.104 <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
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype
Legal values are:
indent
center
align-right
Member of
Contained by
textstructure: body div 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
{
   hatt.cmc.attributes,
   attribute rend { "indent" | "center" | "align-right" }?,
   (
      text
    | hmodel.gLike
    | hmodel.phrase
    | argument
    | byline
    | hdateline
    | epigraph
    | hsalute
    | hsigned
    | hmodel.global
   )*
}

Appendix A.105 <orgName>

<orgName> (organization name) contains an organizational name. [14.2.2. Organizational Names]
Modulenamesdates
Attributes
Member of
Contained by
May contain
Example
About a year back, a question of considerable interest was agitated in the <orgName key="PAS1type="voluntary">  <placeName key="PEN">Pennsyla.</placeName> Abolition Society </orgName> […]
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 orgName
{
   hatt.global.attribute.xmlid,
   hatt.cmc.attributes,
   hmacro.phraseSeq
}

Appendix A.106 <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
ExampleIf 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>
ExampleMore 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
{
   hatt.global.attributes,
   hatt.cmc.attributes,
   hmacro.paraContent
}

Appendix A.107 <origDate>

<origDate> (origin date) contains any form of date, used to identify the date of origin for a manuscript, manuscript part, or other object. [11.3.1. Origination]
Modulemsdescription
Attributes
calendarindicates one or more systems or calendars to which the date represented by the content of this element belongs.
Derived fromatt.calendarSystem
StatusRequired
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>
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
Member of
Contained by
May contain
Example
<origDate notBefore="-0300"  notAfter="-0200">3rd century BCE</origDate>
Schematron
<sch:rule context="tei:origin/tei:origDate"> <sch:report test=".[@notAfter] and not(./tei:precision[@match='@notAfter'])"  role="warning">Usage is <origDate …>dd month yyyy<precision match="@notAfter" precision="low|medium|high"/> </origDate>. </sch:report> <sch:report test=".[@notBefore] and not(./tei:precision[@match='@notBefore'])"  role="warning">Usage is <origDate …>dd month yyyy<precision match="@notBefore" precision="low|medium|high"/> </origDate>. </sch:report> <sch:report test="(.[@to] and not(.[@from])) or (.[@from] and not(.[@to]))"  role="error">Either both or neither of the attributes @from and @to must be used with <origDate>. </sch:report> </sch:rule>
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 origDate
{
   hatt.datable.w3c.attribute.when,
   hatt.datable.w3c.attribute.notBefore,
   hatt.datable.w3c.attribute.notAfter,
   hatt.datable.w3c.attribute.from,
   hatt.datable.w3c.attribute.to,
   attribute calendar { list { + } },
   ( text | hmodel.gLike | hmodel.phrase | hmodel.global )*
}

Appendix A.108 <origin>

<origin> (origin) contains any descriptive or other information concerning the origin of a manuscript, manuscript part, or other object. [11.8. History]
Modulemsdescription
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
StatusOptional
Datatype1–∞ 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
msdescription: history
May contain
Example
<origin notBefore="1802notAfter="1845"  evidence="internalresp="#AMH">Copied in <name type="origPlace">Derby</name>, probably from an old Flemish original, between 1802 and 1845, according to <persName xml:id="AMH">Anne-Mette Hansen</persName>. </origin>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
    
Schema Declaration
element origin
{
   hatt.global.attributes,
   hatt.editLike.attributes,
   hatt.datable.attributes,
   attribute calendar { list { + } }?,
   hmacro.specialPara
}

Appendix A.109 <p>

<p> (paragraph) marks paragraphs in prose. [3.1. Paragraphs 7.2.5. Speech Contents]
Modulecore
Attributes
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype
Legal values are:
indent
center
align-right
inline
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:teiHeader"> <sch:report test=".[@*]/ancestor::tei:teiHeader"  role="error">A paragraph <p> tag in the header must not have any attributes. </sch:report> <sch:report test="./ancestor::tei:body and (./preceding-sibling::*[1][self::tei:opener] or ./preceding-sibling::*[1][self::tei:label] or ./preceding-sibling::*[1][self::tei:dateline] or ./preceding-sibling::*[1][self::tei:note] or ./preceding-sibling::*[1][self::tei:p] or ./parent::*[1][self::tei:postscript]/preceding-sibling::*[1][self::tei:postscript]) and not(./@rend='inline')"  role="error">Missing rend="inline" in <p> with text to its left. Remember to leave a space before <p rend="inline">. </sch:report> <sch:report test="not(./preceding-sibling::*[1][self::tei:label]) and ./@rend='inline' and (./preceding-sibling::*[1][self::tei:lb] or ./parent::*[1][self::tei:postscript]/preceding-sibling::*[1][self::tei:lb])"  role="error">A paragraph <p> tag cannot have @rend with value "inline" unless there is text to the left on the same line. </sch:report> </sch:rule>
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
{
   hatt.cmc.attributes,
   attribute rend { "indent" | "center" | "align-right" | "inline" }?,
   hmacro.paraContent
}

Appendix A.110 <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
namesdates: listPerson person
Note

May contain a prose description organized as paragraphs, or a structured list of persons and person groups, with an optional formal specification of any relationships amongst them.

Example
<particDesc>  <listPerson>   <person xml:id="P-1234sex="2age="mid">    <p>Female informant, well-educated, born in        Shropshire UK, 12 Jan 1950, of unknown occupation. Speaks French fluently.        Socio-Economic status B2.</p>   </person>   <person xml:id="P-4332sex="1">    <persName>     <surname>Hancock</surname>     <forename>Antony</forename>     <forename>Aloysius</forename>     <forename>St John</forename>    </persName>    <residence notAfter="1959">     <address>      <street>Railway Cuttings</street>      <settlement>East Cheam</settlement>     </address>    </residence>    <occupation>comedian</occupation>   </person>   <listRelation>    <relation type="personalname="spouse"     mutual="#P-1234 #P-4332"/>   </listRelation>  </listPerson> </particDesc>
This example shows both a very simple person description, and a very detailed one, using some of the more specialized elements from the module for Names and Dates.
Content model
<content>
 <alternate>
  <classRef key="model.pLike" minOccurs="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
{
   hatt.global.attributes,
   hatt.declarable.attributes,
   ( hmodel.pLike+ | ( hmodel.personLike | hlistPerson | listOrg )+ )
}

Appendix A.111 <path>

<path> (path) defines any line passing through two or more points within a <surface> element. [12.1. Digital Facsimiles 12.2.2. Embedded Transcription]
Moduletranscr
Attributes
pointsidentifies a line within the container or bounding box specified by the parent element by means of a series of two or more pairs of numbers, each of which gives the x,y coordinates of a point on the line.
Derived fromatt.coordinated
StatusOptional
Datatype2–∞ occurrences of teidata.point separated by whitespace
Contained by
transcr: surface
May containEmpty element
Note

Although the simplest form of a path is a straight line between two points, a line with more than two points may bend at any point. The order of coordinates in points is significant, because the line follows the coordinate sequence.

To specify a closed polygon, use the <zone> element rather than the <path> element.

Example
<surface ulx="0uly="0lrx="443lry="272">  <graphic url="facs-fig3.jpg"/>  <path points="74,73 171,244"/>  <path points="71,203 173,116"/> </surface>
SchematronSince a <path>> represents a line with distinct start and end points, the last coordinate should not be the same as the first coordinate.
<sch:rule context="tei:path[@points]"> <sch:let name="firstPair"  value="tokenize( normalize-space( @points ), ' ')[1]"/> <sch:let name="lastPair"  value="tokenize( normalize-space( @points ), ' ')[last()]"/> <sch:let name="firstX"  value="xs:float( substring-before( $firstPair, ',') )"/> <sch:let name="firstY"  value="xs:float( substring-after( $firstPair, ',') )"/> <sch:let name="lastX"  value="xs:float( substring-before( $lastPair, ',') )"/> <sch:let name="lastY"  value="xs:float( substring-after( $lastPair, ',') )"/> <sch:report test="$firstX eq $lastX and $firstY eq $lastY">The first and last elements of this path are the same. To specify a closed polygon, use the zone element rather than the path element. </sch:report> </sch:rule>
Content model
<content>
 <empty/>
</content>
    
Schema Declaration
element path
{
   hatt.global.attributes,
   hatt.coordinated.attribute.start,
   hatt.coordinated.attribute.ulx,
   hatt.coordinated.attribute.uly,
   hatt.coordinated.attribute.lrx,
   hatt.coordinated.attribute.lry,
   hatt.typed.attributes,
   hatt.written.attributes,
   attribute points { list { * } }?,
   empty
}

Appendix A.112 <pb>

<pb> (page beginning) marks the beginning of a new page in a paginated document. [3.11.3. Milestone Elements]
Modulecore
Attributes
n(number) gives a number (or other label) for an element, which is not necessarily unique within the document.
Derived fromatt.global
StatusRequired
Datatype
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.

ExamplePage 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>
ExampleA 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
{
   hatt.global.attribute.xmlid,
   hatt.global.attribute.xmllang,
   hatt.global.attribute.xmlbase,
   hatt.global.attribute.xmlspace,
   hatt.global.rendition.attribute.rend,
   hatt.global.rendition.attribute.style,
   hatt.global.rendition.attribute.rendition,
   hatt.global.linking.attribute.corresp,
   hatt.global.linking.attribute.synch,
   hatt.global.linking.attribute.sameAs,
   hatt.global.linking.attribute.copyOf,
   hatt.global.linking.attribute.next,
   hatt.global.linking.attribute.prev,
   hatt.global.linking.attribute.exclude,
   hatt.global.linking.attribute.select,
   hatt.global.facs.attribute.facs,
   hatt.global.change.attribute.change,
   hatt.global.responsibility.attribute.cert,
   hatt.global.responsibility.attribute.resp,
   hatt.global.source.attribute.source,
   hatt.typed.attributes,
   hatt.edition.attributes,
   hatt.spanning.attributes,
   hatt.breaking.attributes,
   hatt.cmc.attributes,
   attribute n { data.numeric },
   empty
}

Appendix A.113 <persName>

<persName> (personal name) contains a proper noun or proper-noun phrase referring to a person, possibly including one or more of the person's forenames, surnames, honorifics, added names, etc. [14.2.1. Personal Names]
Modulenamesdates
Attributes
ref(reference) requires a value beginning "psn:", for example psn:XYZ (a known xml:id), psn:tbc, psn:unknown.
Derived fromatt.canonical
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
Member of
Contained by
May contain
Example
<persName>  <forename>Edward</forename>  <forename>George</forename>  <surname type="linked">Bulwer-Lytton</surname>, <roleName>Baron Lytton of  <placeName>Knebworth</placeName>  </roleName> </persName>
Schematron
<sch:rule context="tei:persName"> <sch:report test="not(@ref) and (./ancestor::tei:body or ./ancestor::tei:correspAction)"  role="error">Element <persName> missing required attribute @ref. </sch:report> <sch:let name="personIds"  value="document(substring-before(/tei:TEI/tei:teiHeader/tei:encodingDesc/tei:listPrefixDef/tei:prefixDef[@ident='psn']/@replacementPattern, '#'))//tei:TEI//tei:person/@xml:id"/> <sch:let name="refIds"  value="for $id in tokenize(@ref, ' ') return substring-after($id, ':')"/> <sch:let name="missingIds"  value="for $id in $refIds return (if($id = $personIds) then " else $id)"/> <sch:let name="incompleteIds"  value="for $id in tokenize(@ref, ' ') return (if (matches($id, 'psn:[A-Za-z0-9]+')) then " else $id)"/> <sch:report test="$incompleteIds != ""  role="error">Incorrect form of value(s) "<sch:value-of select="$incompleteIds"/>": correct form is psn:XYZ. </sch:report> <sch:report test="@ref and $missingIds != ""  role="warning">The following id(s) "<sch:value-of select="$missingIds"/>" is/are not defined in the personography. NB. sender's @xml:id is <sch:value-of select="substring-after(//tei:correspAction[@type='sent'][1]/tei:persName/@ref, ':')"/>, recipient's is <sch:value-of select="substring-after(//tei:correspAction[@type='received'][last()]/tei:persName/@ref, ':')"/>. You can use <persName ref="psn:tbc"> as a holding value. </sch:report> <sch:report test="@cert and ./ancestor::tei:body"  role="warning">Element <persName> doesn't normally use attribute @cert in body of text. </sch:report> </sch:rule>
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 persName
{
   hatt.global.responsibility.attribute.cert,
   hatt.cmc.attributes,
   attribute ref { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.114 <persPronouns>

<persPronouns> (personal pronouns) indicates the personal pronouns used, or assumed to be used, by the individual being described. [14.3.2.1. Personal Characteristics]
Modulenamesdates
Attributes
evidence(evidence) indicates support for the listed personal pronouns.
StatusRecommended
Datatypeteidata.enumerated
Suggested values include:
conjecture
(conjecture) The given value was selected based on assumptions by someone besides the person to whom this pronoun applies. As a result, the value may be erroneous.
selfIdentification
(self identification) The given value has been explicitly stated or confirmed by the person to whom this pronoun applies.
trustedThirdParty
(trusted third party) The given value has been supplied by another individual trusted by the encoder to know the preferences of the person to whom this pronoun applies.
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
StatusOptional
Datatype1–∞ 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>
value(value) supplies a regularized value for personal pronouns.
StatusRecommended
Datatype1–∞ occurrences of teidata.enumerated separated by whitespace
Sample values include:
e
(e) e/eirs
he
(he) he/him/his
she
(she) she/her/hers
they
(they) they/them/theirs
Note

The sample values list shown here is intended to be reflective of English usage. There is nothing restricting users from defining lists reflective of other languages, e.g. elle, il, and ils.

Member of
Contained by
May contain
Example
<person>  <persName>   <forename>SUE</forename>   <addName>the T. rex</addName>  </persName>  <residence>The Field Museum. Chicago, Illinois, United States.</residence>  <sex value="0"/>  <persPronouns value="they">they/them</persPronouns>  <note>   <cit>    <quote>Specimen FMNH PR 2081. Legendary Fossil. Apex        Predator. National Treasure. <emph style="text-transform:uppercase; letter-spacing:0.25rem;">Murderbird.</emph>    </quote>    <bibl>SUEtheTrex, Twitter biography.    <ptr target="https://twitter.com/SUEtheTrex"/>.        Accessed <date when="2020-03-25">March 25th, 2020</date>.</bibl>   </cit>  </note> </person>
Example
<docAuthor>  <persName>Lal Zimman</persName>  <persPronouns value="he">(he/him/his)</persPronouns>  <ref target="#Name">(FAQ)</ref>  <persName type="IPA">[lɑɫ ˈzimn̩]</persName>  <email>zimman at ucsb dot edu</email>  <roleName>Assistant Professor of Linguistics</roleName>  <roleName>Affiliated Faculty in Feminist Studies</roleName>  <address>   <addrLine>South Hall 3518</addrLine>   <addrLine>University of California, Santa Barbara</addrLine>  </address> </docAuthor>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element persPronouns
{
   hatt.global.attributes,
   hatt.datable.attributes,
   hatt.typed.attributes,
   hatt.cmc.attributes,
   attribute evidence
   {
      "conjecture" | "selfIdentification" | "trustedThirdParty"
   }?,
   attribute calendar { list { + } }?,
   attribute value { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.115 <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.
StatusOptional
Datatype1–∞ 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.
StatusOptional
Datatype1–∞ 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.
StatusOptional
Datatype1–∞ 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.
StatusOptional
Datatypeteidata.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
Note

May contain either a prose description organized as paragraphs, or a sequence of more specific demographic elements drawn from the model.personPart class.

Example
<person sex="Fage="adult">  <p>Female respondent, well-educated, born in Shropshire UK, 12 Jan 1950, of unknown occupation. Speaks French fluently. Socio-Economic    status B2.</p> </person>
Example
<person sex="intersexrole="god"  age="immortal">  <persName>Hermaphroditos</persName>  <persName xml:lang="grc">Ἑρμαφρόδιτος</persName> </person>
Example
<person xml:id="Ovi01sex="Mrole="poet">  <persName xml:lang="en">Ovid</persName>  <persName xml:lang="la">Publius Ovidius Naso</persName>  <birth when="-0044-03-20"> 20 March 43 BC <placeName>    <settlement type="city">Sulmona</settlement>    <country key="IT">Italy</country>   </placeName>  </birth>  <death notBefore="0017notAfter="0018">17 or 18 AD <placeName>    <settlement type="city">Tomis (Constanta)</settlement>    <country key="RO">Romania</country>   </placeName>  </death> </person>
ExampleThe following exemplifies an adaptation of the vCard standard to indicate an unknown gender for a fictional character.
<person xml:id="arielgender="U">  <persName>Ariel</persName>  <note>Character in <title level="m">The Tempest</title>.</note> </person>
Content model
<content>
 <alternate>
  <classRef key="model.pLike" minOccurs="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
{
   hatt.global.attributes,
   hatt.editLike.attributes,
   hatt.sortable.attributes,
   attribute role { list { + } }?,
   attribute sex { list { + } }?,
   attribute gender { list { + } }?,
   attribute age { text }?,
   ( hmodel.pLike+ | ( hmodel.personPart | hmodel.global | hptr )* )
}

Appendix A.116 <physDesc>

<physDesc> (physical description) contains a full physical description of a manuscript, manuscript part, or other object optionally subdivided using more specialized elements from the model.physDescPart class. [11.7. Physical Description]
Modulemsdescription
Attributes
Contained by
msdescription: msDesc
namesdates: object
May contain
core: p
Example
<physDesc>  <objectDesc form="codex">   <supportDesc material="perg">    <support>Parchment.</support>    <extent>i + 55 leaves    <dimensions scope="alltype="leaf"      unit="inch">      <height></height>      <width>5⅜</width>     </dimensions>    </extent>   </supportDesc>   <layoutDesc>    <layout columns="2">In double columns.</layout>   </layoutDesc>  </objectDesc>  <handDesc>   <p>Written in more than one hand.</p>  </handDesc>  <decoDesc>   <p>With a few coloured capitals.</p>  </decoDesc> </physDesc>
Content model
<content>
 <sequence>
  <classRef key="model.pLike" minOccurs="0"
   maxOccurs="unbounded"/>
  <classRef key="model.physDescPart"
   expand="sequenceOptional"/>
 </sequence>
</content>
    
Schema Declaration
element physDesc
{
   hatt.global.attributes,
   ( hmodel.pLike*, hobjectDesc?, hhandDesc?, hsealDesc? )
}

Appendix A.117 <placeName>

<placeName> (place name) contains an absolute or relative place name. [14.2.3. Place Names]
Modulenamesdates
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
StatusOptional
Datatype1–∞ 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
Example
<placeName>  <settlement>Rochester</settlement>  <region>New York</region> </placeName>
Example
<placeName>  <geogName>Arrochar Alps</geogName>  <region>Argylshire</region> </placeName>
Example
<placeName>  <measure>10 miles</measure>  <offset>Northeast of</offset>  <settlement>Attica</settlement> </placeName>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element placeName
{
   hatt.datable.attributes,
   hatt.editLike.attributes,
   hatt.global.attributes,
   hatt.personal.attributes,
   hatt.typed.attributes,
   hatt.cmc.attributes,
   attribute calendar { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.118 <postCode>

<postCode> (postal code) contains a numerical or alphanumeric code used as part of a postal address to simplify sorting or delivery of mail. [3.6.2. Addresses]
Modulecore
Attributes
Member of
Contained by
core: address
May containCharacter data only
Note

The position and nature of postal codes is highly country-specific; the conventions appropriate to the country concerned should be used.

Example
<postCode>HR1 3LR</postCode>
Example
<postCode>60142-7</postCode>
Content model
<content>
 <textNode/>
</content>
    
Schema Declaration
element postCode { hatt.global.attributes, text }

Appendix A.119 <postscript>

<postscript> contains a postscript, e.g. to a letter. [4.2. Elements Common to All Divisions]
Moduletextstructure
Attributes
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype
Legal values are:
indent
center
align-right
Member of
Contained by
textstructure: body div postscript
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="1" maxOccurs="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="0" maxOccurs="unbounded"/>
  </sequence>
 </sequence>
</content>
    
Schema Declaration
element postscript
{
   hatt.cmc.attributes,
   attribute rend { "indent" | "center" | "align-right" }?,
   (
      ( hmodel.global | hmodel.divTopPart )*,
      hmodel.common,
      ( hmodel.global | hmodel.common )*,
      ( ( hmodel.divBottomPart, hmodel.global* )* )
   )
}

Appendix A.120 <precision>

<precision> indicates the numerical accuracy or precision associated with some aspect of the text markup. [22.2. Indications of Precision]
Modulecertainty
Attributes
matchsupplies an XPath selection pattern using the syntax defined in [[undefined XSLT3]] which identifies a set of nodes, selected within the context identified by the target attribute if this is supplied, or within the context of the parent element if it is not.
Derived fromatt.scoping
StatusRequired
Datatypeteidata.xpath
Legal values are:
@notBefore
@notAfter
@when
@from
@to
precisioncharacterizes the precision of the element or attribute pointed to by the <precision> element.
StatusRequired
Datatypeteidata.certainty
Legal values are:
low
medium
high
Member of
Contained by
May contain
Example
<date xml:id="date001notBefore="0014"  notAfter="0064">Within about 50 years of the death of Augustus</date> <precision target="#date001"  match="@notBeforeprecision="high"/> <precision target="#date001"  match="@notAfterprecision="low"/>
Example
<date notBefore="1632notAfter="1642">Not more than ten years before the start of the Civil War <precision match="@notBefore"   precision="low"/>  <precision match="@notAfter"   precision="high"/> </date>
Schematron
<sch:rule context="tei:*[@calendar]"> <sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more systems or calendars to which the date represented by the content of this element belongs, but this <sch:name/> element has no textual content.</sch:assert> </sch:rule>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">
  <classRef key="model.descLike"/>
  <classRef key="model.certLike"/>
 </alternate>
</content>
    
Schema Declaration
element precision
{
   attribute match { "@notBefore" | "@notAfter" | "@when" | "@from" | "@to" },
   attribute precision { "low" | "medium" | "high" },
   ( hmodel.descLike | hmodel.certLike )*
}

Appendix A.121 <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.
StatusRequired
Datatypeteidata.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
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.pLike" minOccurs="0"
  maxOccurs="unbounded"/>
</content>
    
Schema Declaration
element prefixDef
{
   hatt.global.attributes,
   hatt.patternReplacement.attributes,
   attribute ident { text },
   hmodel.pLike*
}

Appendix A.122 <principal>

<principal> (principal researcher) supplies the name of the principal researcher responsible for the creation of an electronic text. [2.2.1. The Title Statement]
Moduleheader
Attributes
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
StatusOptional
Datatype1–∞ 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
core: bibl
msdescription: msItem
May contain
Example
<principal ref="http://viaf.org/viaf/105517912">Gary Taylor</principal>
Schematron
<sch:rule context="tei:*[@calendar]"> <sch:assert test="string-length( normalize-space(.) ) gt 0"> @calendar indicates one or more systems or calendars to which the date represented by the content of this element belongs, but this <sch:name/> element has no textual content.</sch:assert> </sch:rule>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
    
Schema Declaration
element principal
{
   hatt.global.attribute.xmlid,
   hatt.datable.attributes,
   attribute calendar { list { + } }?,
   hmacro.phraseSeq.limited
}

Appendix A.123 <profileDesc>

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

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

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

Appendix A.124 <projectDesc>

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

Appendix A.125 <ptr>

<ptr> (pointer) defines a pointer to another location. [3.7. Simple Links and Cross-References 17.1. Links]
Modulecore
Attributes
Member of
Contained by
May containEmpty element
Example
<ptr target="#p143 #p144"/> <ptr target="http://www.tei-c.org"/> <ptr cRef="1.3.4"/>
Schematron
<sch:rule context="tei:ptr"> <sch:report test="@target and @cRef">Only one of the attributes @target and @cRef may be supplied on <sch:name/>.</sch:report> </sch:rule>
Content model
<content>
 <empty/>
</content>
    
Schema Declaration
element ptr { hatt.pointing.attribute.target, hatt.cmc.attributes, empty }

Appendix A.126 <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
May contain
Example
<publicationStmt>  <publisher>Oxford University Press</publisher>  <pubPlace>Oxford</pubPlace>  <date>1989</date> </publicationStmt>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element pubPlace
{
   hatt.global.attributes,
   hatt.naming.attributes,
   hmacro.phraseSeq
}

Appendix A.127 <publicationStmt>

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

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

Example
<publicationStmt>  <publisher>C. Muquardt </publisher>  <pubPlace>Bruxelles &amp; Leipzig</pubPlace>  <date when="1846"/> </publicationStmt>
Example
<publicationStmt>  <publisher>Chadwyck Healey</publisher>  <pubPlace>Cambridge</pubPlace>  <availability>   <p>Available under licence only</p>  </availability>  <date when="1992">1992</date> </publicationStmt>
Example
<publicationStmt>  <publisher>Zea Books</publisher>  <pubPlace>Lincoln, NE</pubPlace>  <date>2017</date>  <availability>   <p>This is an open access work licensed under a Creative Commons Attribution 4.0 International license.</p>  </availability>  <ptr target="http://digitalcommons.unl.edu/zeabook/55"/> </publicationStmt>
Content model
<content>
 <alternate>
  <sequence minOccurs="1"
   maxOccurs="unbounded">
   <classRef key="model.publicationStmtPart.agency"/>
   <classRef key="model.publicationStmtPart.detail"
    minOccurs="0" maxOccurs="unbounded"/>
  </sequence>
  <classRef key="model.pLike" minOccurs="1"
   maxOccurs="unbounded"/>
 </alternate>
</content>
    
Schema Declaration
element publicationStmt
{
   hatt.global.attributes,
   (
      (
         (
            hmodel.publicationStmtPart.agency,
            hmodel.publicationStmtPart.detail*
         )+
      )
    | hmodel.pLike+
   )
}

Appendix A.128 <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
May contain
Note

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

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

Appendix A.129 <punctuation>

<punctuation> specifies editorial practice adopted with respect to punctuation marks in the original. [2.3.3. The Editorial Practices Declaration 3.2. Treatment of Punctuation]
Moduleheader
Attributes
marksindicates whether or not punctation marks have been retained as content within the text.
StatusOptional
Datatypeteidata.enumerated
Legal values are:
none
no punctuation marks have been retained
some
some punctuation marks have been retained
all
all punctuation marks have been retained
placementindicates the positioning of punctuation marks that are associated with marked up text as being encoded within the element surrounding the text or immediately before or after it.
StatusOptional
Datatypeteidata.enumerated
Legal values are:
internal
punctuation marks found at the start or end of a marked up text component are included within its surrounding element;
external
punctuation marks found at the start or end of a marked up text component appear immediately before or after the surrounding element
Member of
Contained by
May contain
core: p
Example
<punctuation marks="all"  placement="internal">  <p>All punctuation marks in the source text have been retained and represented using the    appropriate Unicode code point. In cases where a punctuation mark and nearby markup convey    the same information (for example, a sentence ends with a question mark and is also tagged    as <gi>s</gi>) the punctuation mark is captured as content within the element.</p> </punctuation>
ExampleExternal placement of punctuation:
<p>I would agree with Saint Augustine that “<quote>An unjust law is no law at all</quote>.”</p>
ExampleInternal placement of punctuation:
<p>I would agree with Saint Augustine that <quote>“An unjust law is no law at all.”</quote> </p>
Content model
<content>
 <classRef key="model.pLike" minOccurs="0"
  maxOccurs="unbounded"/>
</content>
    
Schema Declaration
element punctuation
{
   hatt.declarable.attributes,
   hatt.global.attributes,
   attribute marks { "none" | "some" | "all" }?,
   attribute placement { "internal" | "external" }?,
   hmodel.pLike*
}

Appendix A.130 <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
whoindicates the person, or group of people, to whom the element content is ascribed.
Derived fromatt.ascribed
StatusRequired
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
Sample values include:
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>
Schematron
<sch:rule context="tei:q"> <sch:let name="personIds"  value="document(substring-before(/tei:TEI/tei:teiHeader/tei:encodingDesc/tei:listPrefixDef/tei:prefixDef[@ident='psn']/@replacementPattern, '#'))//tei:TEI//tei:person/@xml:id"/> <sch:let name="whoIds"  value="for $id in tokenize(@who, ' ') return substring-after($id, ':')"/> <sch:let name="missingIds"  value="for $id in $whoIds return (if($id = $personIds) then " else $id)"/> <sch:let name="incompleteIds"  value="for $id in tokenize(@who, ' ') return (if (matches($id, 'psn:[A-Za-z0-9]+')) then " else $id)"/> <sch:report test="@who and $incompleteIds != " and not(matches(substring(@who,1,1), '[a-z]'))"  role="warning">Incorrect form of value(s) "<sch:value-of select="$incompleteIds"/>": correct form is "psn:XYZ" if in personography, or a word beginning with a lower case letter for local ids such as "smallBoy" or "bystander_1". </sch:report> <sch:report test="@who and $missingIds != ""  role="warning">The following id "<sch:value-of select="$missingIds"/>" is not defined in the personography. </sch:report> </sch:rule>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
    
Schema Declaration
element q
{
   hatt.cmc.attributes,
   attribute who { list { + } },
   hmacro.specialPara
}

Appendix A.131 <quotation>

<quotation> (quotation) specifies editorial practice adopted with respect to quotation marks in the original. [2.3.3. The Editorial Practices Declaration 16.3.2. Declarable Elements]
Moduleheader
Attributes
marks(quotation marks) indicates whether or not quotation marks have been retained as content within the text.
StatusOptional
Datatypeteidata.enumerated
Legal values are:
none
no quotation marks have been retained
some
some quotation marks have been retained
all
all quotation marks have been retained
Member of
Contained by
May contain
core: p
Example
<quotation marks="none">  <p>No quotation marks have been retained. Instead, the <att>rend</att> attribute on the  <gi>q</gi> element is used to specify what kinds of quotation mark was used, according    to the following list: <list type="gloss">    <label>dq</label>    <item>double quotes, open and close</item>    <label>sq</label>    <item>single quotes, open and close</item>    <label>dash</label>    <item>long dash open, no close</item>    <label>dg</label>    <item>double guillemets, open and close</item>   </list>  </p> </quotation>
Example
<quotation marks="all">  <p>All quotation marks are retained in the text and are represented by appropriate Unicode    characters.</p> </quotation>
Schematron
<sch:rule context="tei:quotation"> <sch:report test="not( @marks ) and not( tei:p )"> On <sch:name/>, either the @marks attribute should be used, or a paragraph of description provided </sch:report> </sch:rule>
Content model
<content>
 <classRef key="model.pLike" minOccurs="0"
  maxOccurs="unbounded"/>
</content>
    
Schema Declaration
element quotation
{
   hatt.global.attributes,
   hatt.declarable.attributes,
   attribute marks { "none" | "some" | "all" }?,
   hmodel.pLike*
}

Appendix A.132 <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
{
   hatt.global.attributes,
   hatt.typed.attributes,
   hatt.msExcerpt.attributes,
   hatt.notated.attributes,
   hatt.cmc.attributes,
   hmacro.specialPara
}

Appendix A.133 <rb>

<rb> (ruby base) contains the base text annotated by a ruby gloss. [3.4.2. Ruby Annotations]
Modulecore
Attributes
Contained by
core: ruby
May contain
ExampleThe word 你 好 nǐ hǎo (hello) is glossed in pinyin to provide a pronunciation guide.
<p xml:lang="zh"> <!–…–>  <ruby>   <rb></rb>   <rt place="above"></rt>  </ruby>  <ruby>   <rb></rb>   <rt place="above">hǎo</rt>  </ruby> <!–…–> </p>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element rb { hatt.global.attributes, hatt.typed.attributes, hmacro.phraseSeq }

Appendix A.134 <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
typecharacterizes the element in some sense, using any convenient classification scheme or typology.
Derived fromatt.typed
StatusOptional
Datatypeteidata.enumerated
Legal values are:
next
prev
moved
external
HAMproject
HAMedition
Member of
Contained by
May contain
Note

It is preferable to put @type first. The @type and @target of <ref> are mutually connected. When the link is to another document in the edition, give @target as the filename of the relevant XML. A <ref> linked to an <anchor> must have type="moved" and will have target="#add|#ann|#dt|#ps|#sec" (possibly followed by a single digit).

Example
     <correspContext>         <ref type="prev" target="AR-HAM-00001-00002-00018.xml"/>         <ref type="next" target="AR-HAM-00001-00002-00020.xml"/>      </correspContext>                                             (HAM/1/2/19)             
Example
     <note hand="#minor_hand_1" place="top-right" rend="align-right"><ref type="moved" target="#ann">2.</ref></note>   (HAM/1/2/16)             
Example
     <note resp="#DD">On the shortened <hi rend="italic">N——</hi>       see <ref type="HAMedition" target="GEO-ADD-00003-00082-00018/6.xml">GEO/ADD/3/82/18 p.6 n.1</ref>.</note>   (GEO/ADD/3/82/36)             
Example
     <note resp="#CU"><hi rend="italic"><ref target="https://doi-org.manchester.idm.oclc.org/10.1093/gmo/9781561592630.article.O005377">      Nina, o sia La pazza per amore</ref></hi> ('Nina, or the Love-distressed Maid') was a one-act sentimental comic opera […]      (<hi rend="italic">Grove Music Online</hi> [accessed 11/08/2020])</note>   (HAM/1/2/34)             
Schematron
<sch:rule context="tei:ref"> <sch:report test="./parent::tei:relatedItem and .[@*]"  role="error">The <ref> identifying the image PDF has no attributes. </sch:report> <sch:report test="./parent::tei:correspContext and not(@type='prev' or @type='next')"  role="error">A <ref> in <correspContext> must have type="prev" or "next". </sch:report> <sch:report test="./ancestor::tei:text and not(@target or @target)"  role="error">A <ref> in the text must have both @type and @target. </sch:report> <sch:report test="ancestor::tei:text and (string-length(@target) < 6) and not(matches(@target, '^#add') or matches(@target, '^#ann') or matches(@target, '^#dt') or matches(@target, '^#ps') or matches(@target, '^#sec'))"  role="error">A <ref> for a moved passage must have @target of the form #add, #ann, #dt, #ps, #sec, optionally + single digit. </sch:report> <sch:report test="ancestor::tei:text and (string-length(@target) < 6) and not(@type='moved')"  role="error">A <ref> for a moved passage must have type="moved" before @target. </sch:report> <sch:report test="./ancestor::tei:text and @type='HAMedition' and (contains(@target, 'http') or contains(@target, '#') or matches(@target, '/[^1-9]') or not(ends-with(@target, '.xml')))"  role="error">The target of a x-ref in the body of a file to another document in the edition must not contain '#', nor '/' characters in the body of the filename (use hyphens), though '/' is needed between filename and page number if specified, and the target must end with the extension '.xml'. </sch:report> <sch:report test="./ancestor::tei:summary and @type='HAMedition' and (not(starts-with(@target, 'https://www.digitalcollections.manchester.ac.uk/view/')) or ends-with(@target, '.xml'))"  role="error">The target of a x-ref in the summary of a file to another document in the edition must start with 'https://www.digitalcollections.manchester.ac.uk/view/' and must not end with the extension '.xml'. </sch:report> <sch:report test="./ancestor::tei:text and not(contains(@target, 'http')) and (string-length(@target) > 5) and not(@type='HAMedition')"  role="error">A x-ref to another document in the edition must have type="HAMedition" before @target. </sch:report> <sch:report test="contains(@target, 'maryhamiltonpapers') and not(@type='HAMproject')"  role="error">A hyperlink to the project website of 'Unlocking the Mary Hamilton Papers' must have type="HAMproject" before @target. </sch:report> <sch:report test="contains(@target, 'http') and not(contains(@target, 'maryhamiltonpapers') or contains(@target, 'www.digitalcollections.manchester.ac.uk/view')) and not(@type='external') "  role="error">A hyperlink to an external site (apart from the project website) must have type="external" before @target. </sch:report> </sch:rule>
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
{
   hatt.pointing.attribute.target,
   hatt.cmc.attributes,
   attribute type
   {
      "next" | "prev" | "moved" | "external" | "HAMproject" | "HAMedition"
   }?,
   hmacro.paraContent
}

Appendix A.135 <refState>

<refState> (reference state) specifies one component of a canonical reference defined by the milestone method. [2.3.6.3. Milestone Method 2.3.6. The Reference System Declaration]
Moduleheader
Attributes
lengthspecifies the fixed length of the reference component.
StatusOptional
Datatypeteidata.count
Note

When constructing a reference, if the reference component found is of numeric type, the length is made up by inserting leading zeros; if it is not, by inserting trailing blanks. In either case, reference components are truncated if necessary at the right hand side.

When seeking a reference, the length indicates the number of characters which should be compared. Values longer than this will be regarded as matching, if they start correctly. If no value is provided, the length is unlimited and goes to the next delimiter or to the end of the value.

delim(delimiter) supplies a delimiting string following the reference component.
StatusOptional
Datatypeteidata.text
Contained by
header: refsDecl
May containEmpty element
Example
<refState unit="bookdelim=":"/> <refState unit="linelength="4"/>
Content model
<content>
 <empty/>
</content>
    
Schema Declaration
element refState
{
   hatt.global.attributes,
   hatt.milestoneUnit.attributes,
   hatt.edition.attributes,
   attribute length { text }?,
   attribute delim { text }?,
   empty
}

Appendix A.136 <refsDecl>

<refsDecl> (references declaration) specifies how canonical references are constructed for this text. [2.3.6.3. Milestone Method 2.3. The Encoding Description 2.3.6. The Reference System Declaration]
Moduleheader
Attributes
Member of
Contained by
header: encodingDesc
May contain
core: p
Example
<refsDecl>  <cRefPattern matchPattern="([A-Za-z0-9]+) ([0-9]+):([0-9]+)"   replacementPattern="#xpath(//body/div[@n='$1']/div[$2]/div3[$3])"/> </refsDecl>
This example is a formal representation for the referencing scheme described informally in the following example.
Example
<refsDecl>  <p>References are made up by concatenating the value for the  <att>n</att> attribute on the highest level <gi>div</gi>    element, followed by a space, followed by the sequential    number of the next level <gi>div</gi> followed by a colon    followed by the sequential number of the next (and lowest)    level <gi>div</gi>.</p> </refsDecl>
Content model
<content>
 <alternate>
  <classRef key="model.pLike" minOccurs="1"
   maxOccurs="unbounded"/>
  <elementRef key="citeStructure"
   minOccurs="1" maxOccurs="unbounded"/>
  <elementRef key="cRefPattern"
   minOccurs="1" maxOccurs="unbounded"/>
  <elementRef key="refState" minOccurs="1"
   maxOccurs="unbounded"/>
 </alternate>
</content>
    
Schema Declaration
element refsDecl
{
   hatt.global.attributes,
   hatt.declarable.attributes,
   ( hmodel.pLike+ | hciteStructure+ | cRefPattern+ | hrefState+ )
}

Appendix A.137 <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
ExampleIf 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>
ExampleIt 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
{
   hatt.global.attributes,
   hatt.editLike.attributes,
   hatt.typed.attributes,
   hatt.cmc.attributes,
   hmacro.paraContent
}

Appendix A.138 <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
Member of
Contained by
core: bibl
header: notesStmt
May contain
msdescription: msDesc
Note

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

Example
<biblStruct>  <monogr>   <author>Shirley, James</author>   <title type="main">The gentlemen of Venice</title>   <imprint>    <pubPlace>New York</pubPlace>    <publisher>Readex Microprint</publisher>    <date>1953</date>   </imprint>   <extent>1 microprint card, 23 x 15 cm.</extent>  </monogr>  <series>   <title>Three centuries of drama: English, 1642–1700</title>  </series>  <relatedItem type="otherForm">   <biblStruct>    <monogr>     <author>Shirley, James</author>     <title type="main">The gentlemen of Venice</title>     <title type="sub">a tragi-comedie presented at the private house in Salisbury          Court by Her Majesties servants</title>     <imprint>      <pubPlace>London</pubPlace>      <publisher>H. Moseley</publisher>      <date>1655</date>     </imprint>     <extent>78 p.</extent>    </monogr>   </biblStruct>  </relatedItem> </biblStruct>
Schematron
<sch:rule context="tei:relatedItem"> <sch:report test="@target and count( child::* ) > 0">If the @target attribute on <sch:name/> is used, the relatedItem element must be empty</sch:report> <sch:assert test="@target or child::*">A relatedItem element should have either a @target attribute or a child element to indicate the related bibliographic item</sch:assert> </sch:rule>
Content model
<content>
 <alternate minOccurs="0" maxOccurs="1">
  <classRef key="model.biblLike"/>
  <classRef key="model.ptrLike"/>
 </alternate>
</content>
    
Schema Declaration
element relatedItem
{
   hatt.typed.attributes,
   ( hmodel.biblLike | hmodel.ptrLike )?
}

Appendix A.139 <repository>

<repository> (repository) contains the name of a repository within which manuscripts or other objects are stored, possibly forming part of an institution. [11.4. The Manuscript Identifier]
Modulemsdescription
Attributes
Contained by
msdescription: msIdentifier
namesdates: objectIdentifier
May contain
Example
<msIdentifier>  <settlement>Oxford</settlement>  <institution>University of Oxford</institution>  <repository>Bodleian Library</repository>  <idno>MS. Bodley 406</idno> </msIdentifier>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
    
Schema Declaration
element repository
{
   hatt.global.attributes,
   hatt.naming.attributes,
   hmacro.phraseSeq.limited
}

Appendix A.140 <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
StatusOptional
Datatype1–∞ 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
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
{
   hatt.global.attributes,
   hatt.canonical.attributes,
   hatt.datable.attributes,
   attribute calendar { list { + } }?,
   hmacro.phraseSeq.limited
}

Appendix A.141 <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
core: bibl series
linking: annotation
msdescription: msItem
May contain
core: name note resp
namesdates: orgName persName
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="resp" minOccurs="1"
     maxOccurs="unbounded"/>
    <classRef key="model.nameLike.agent"
     minOccurs="1" maxOccurs="unbounded"/>
   </sequence>
   <sequence>
    <classRef key="model.nameLike.agent"
     minOccurs="1" maxOccurs="unbounded"/>
    <elementRef key="resp" minOccurs="1"
     maxOccurs="unbounded"/>
   </sequence>
  </alternate>
  <elementRef key="note" minOccurs="0"
   maxOccurs="unbounded"/>
 </sequence>
</content>
    
Schema Declaration
element respStmt
{
   hatt.global.attributes,
   hatt.canonical.attributes,
   (
      (
         ( hresp+, hmodel.nameLike.agent+ )
       | ( hmodel.nameLike.agent+, hresp+ )
      ),
      hnote*
   )
}

Appendix A.142 <respons>

<respons> (responsibility) identifies the individual(s) responsible for some aspect of the content or markup of particular element(s). [22.3. Attribution of Responsibility]
Modulecertainty
Attributes
locusindicates the specific aspect of the encoding (markup or content) for which responsibility is being assigned.
StatusRequired
Datatype1–∞ occurrences of teidata.enumerated separated by whitespace
Legal values are:
name
responsibility is being assigned concerning the name of the element or attribute used.
start
responsibility is being assigned concerning the start of the element concerned.
end
responsibility is being assigned concerning the end of the element concerned.
location
responsibility is being assigned concerning the location of the element concerned.
value
responsibility is being assigned concerning the content (for an element) or the value (for an attribute)
Member of
Contained by
May contain
Note

The <respons> element is designed for cases in which fine-grained information about specific aspects of the markup of a text is desirable for whatever reason. Global responsibility for certain aspects of markup is usually more simply indicated in the TEI header, using the <respStmt> element within the title statement, edition statement, or change log.

Example
<respons target="#p1locus="name location"  resp="#encoder1"/> <respons target="#p2match="@rend"  locus="valueresp="#encoder2"/> <list type="encoders">  <item xml:id="encoder1"/>  <item xml:id="encoder2"/> </list>
ExampleIn this (partially fictional) example the entire document was transcribed and encoded by a single encoder, except for one passage which was transcribed and encoded by the proofreader.
<!– in the <teiHeader>: –><respStmt xml:id="enc01">  <name>C. Colin Backslash</name>  <resp>transcription</resp>  <resp>encoding</resp> </respStmt> <respStmt xml:id="prf01">  <name>Erin Spelling</name>  <resp>proofreading</resp> </respStmt> <!– in the <text>: –> <p>Θερινὴ τροπή <lb/>  <foreign xml:lang="hboxml:id="mp0a8"> ת  <supplied reason="undefined">קו</supplied>   <unclear>פ</unclear>    ת תמוז  </foreign> </p> <!– elsewhere: –> <respons target="#mp0a8locus="name value"  resp="#prf01"/>
ExampleIn this (partially fictional) example an initial encoder (‘across.dta’) encoded most of the document; a later encoder (‘rcapolung.ewo’) encoded a particular passage; and a third encoder (‘sbauman.emt’) fixed some of that encoding.
<!– in the <teiHeader>: –><respStmt xml:id="enc03">  <persName ref="../contextual/persons.xml#across.dta"/>  <resp>encoding</resp> </respStmt> <!– in the <text>: –> <spGrp rend="braced(atonce1)"  xml:id="sgrp05">  <sp who="#mo">   <speaker rend="align(left)slant(italic)">    <persName>Mor</persName>.</speaker>   <p rend="break(no)">So, so, so!</p>  </sp>  <sp who="#hg">   <speaker rend="align(left)slant(italic)">    <persName>Mr. H</persName>.</speaker>   <p rend="break(no)">What, without my Leave!</p>  </sp>  <sp who="#la">   <speaker rend="align(left)slant(italic)">    <persName>Lady D</persName>.</speaker>   <p rend="break(no)">Amazing!</p>  </sp> </spGrp> <stage rend="align(right)slant(italic)"  type="deliveryxml:id="atonce1">All together.</stage> <!– anywhere: –> <respons target="sgrp05locus="name"  resp="../contextual/persons.xml#rcapolung.ewo">  <desc>Ashley did not know what to do with this; I have decided it    best fits as a braced <gi>spGrp</gi>  </desc> </respons> <respons target="sgrp05match=".//@rend"  locus="value"  resp="../contextual/persons.xml#sbauman.emt">  <desc>fixed <att>rend</att> attributes</desc> </respons>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">
  <classRef key="model.descLike"/>
  <classRef key="model.certLike"/>
 </alternate>
</content>
    
Schema Declaration
element respons
{
   hatt.global.attributes,
   hatt.scoping.attributes,
   attribute locus
   {
      list { ( "name" | "start" | "end" | "location" | "value" )+ }
   },
   ( hmodel.descLike | hmodel.certLike )*
}

Appendix A.143 <retrace>

<retrace> contains a sequence of writing which has been retraced, for example by over-inking, to clarify or fix it. [12.3.4.3. Fixation and Clarification]
Moduletranscr
Attributes
Member of
Contained by
May contain
Note

Multiple retraces are indicated by nesting one <retrace> within another. In principle, a retrace differs from a substitution in that second and subsequent rewrites do not materially alter the content of an element. Where minor changes have been made during the retracing action however these may be marked up using <del>, <add>, etc. with an appropriate value for the change attribute.

Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
    
Schema Declaration
element retrace
{
   hatt.global.attributes,
   hatt.spanning.attributes,
   hatt.transcriptional.attributes,
   hatt.dimensions.attributes,
   hmacro.paraContent
}

Appendix A.144 <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
linking: annotation
May contain
header: change
Note

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

Example
<revisionDesc status="embargoed">  <change when="1991-11-11who="#LB"> deleted chapter 10 </change> </revisionDesc>
Content model
<content>
 <alternate>
  <elementRef key="list" minOccurs="1"
   maxOccurs="unbounded"/>
  <elementRef key="listChange"
   minOccurs="1" maxOccurs="unbounded"/>
  <elementRef key="change" minOccurs="1"
   maxOccurs="unbounded"/>
 </alternate>
</content>
    
Schema Declaration
element revisionDesc
{
   hatt.global.attributes,
   hatt.docStatus.attributes,
   ( list+ | listChange+ | hchange+ )
}

Appendix A.145 <roleName>

<roleName> (role name) contains a name component which indicates that the referent has a particular role or position in society, such as an official title or rank. [14.2.1. Personal Names]
Modulenamesdates
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.
Derived fromatt.naming
StatusOptional
Datatype1–∞ occurrences of teidata.enumerated separated by whitespace
Defaultfrank-signatory
Member of
Contained by
May contain
Note

A <roleName> may be distinguished from an <addName> by virtue of the fact that, like a title, it typically exists independently of its holder.

Example
<persName>  <forename>William</forename>  <surname>Poulteny</surname>  <roleName>Earl of Bath</roleName> </persName>
Example
<p>The <roleName role="solicitor_general">S.G.</roleName> is the only national public official, including the Supreme Court justices, required by statute to be “learned in the law.”</p>
Example
<p>  <persName ref="#NJF">   <roleName role="solicitor_general">Solicitor General</roleName> Noel J. Francisco</persName>, representing the administration, asserted in rebuttal that there was nothing to disavow (…) <persName ref="#NJF">Francisco</persName> had violated the scrupulous standard of candor about the facts and the law that <roleName role="solicitor_general">S.G.s</roleName>, in Republican and Democratic administrations alike, have repeatedly said they must honor. </p>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element roleName
{
   hatt.global.attributes,
   hatt.personal.attribute.full,
   hatt.personal.attribute.sort,
   hatt.naming.attribute.nymRef,
   hatt.canonical.attribute.key,
   hatt.canonical.attribute.ref,
   hatt.typed.attributes,
   hatt.cmc.attributes,
   attribute role { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.146 <rs>

<rs> (referencing string) contains a general purpose name or referring string. [14.2.1. Personal Names 3.6.1. Referring Strings]
Modulecore
Attributes
ref(reference) requires a value beginning "psn:", for example psn:XYZ (a known xml:id), psn:tbc, psn:unknown.
Derived fromatt.canonical
StatusRequired
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
Member of
Contained by
May contain
Example
<q>My dear <rs type="person">Mr. Bennet</rs>, </q> said <rs type="person">his lady</rs> to him one day, <q>have you heard that <rs type="place">Netherfield Park</rs> is let at last?</q>
Schematron
<sch:rule context="tei:rs"> <sch:let name="personIds"  value="document(substring-before(/tei:TEI/tei:teiHeader/tei:encodingDesc/tei:listPrefixDef/tei:prefixDef[@ident='psn']/@replacementPattern, '#'))//tei:TEI//tei:person/@xml:id"/> <sch:let name="refIds"  value="for $id in tokenize(@ref, ' ') return substring-after($id, ':')"/> <sch:let name="missingIds"  value="for $id in $refIds return (if($id = $personIds) then " else $id)"/> <sch:let name="incompleteIds"  value="for $id in tokenize(@ref, ' ') return (if (matches($id, 'psn:[A-Za-z0-9]+')) then " else $id)"/> <sch:report test="@ref and $incompleteIds != ""  role="error">Incorrect form of value(s) "<sch:value-of select="$incompleteIds"/>": correct form is psn:XYZ. </sch:report> <sch:report test="@ref and $missingIds != ""  role="warning">The following id(s) "<sch:value-of select="$missingIds"/>" not defined in the personography. NB. sender's @xml:id is <sch:value-of select="substring-after(//tei:correspAction[@type='sent'][1]/tei:persName/@ref, ':')"/>, recipient's is <sch:value-of select="substring-after(//tei:correspAction[@type='received'][last()]/tei:persName/@ref, ':')"/>. You can use <rs ref="psn:tbc"> as a holding value. </sch:report> <sch:report test="@cert" role="warning">Element <rs> doesn't normally use attribute @cert. </sch:report> </sch:rule>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element rs
{
   hatt.global.responsibility.attribute.cert,
   hatt.cmc.attributes,
   attribute ref { list { + } },
   hmacro.phraseSeq
}

Appendix A.147 <rt>

<rt> (ruby text) contains a ruby text, an annotation closely associated with a passage of the main text. [3.4.2. Ruby Annotations]
Modulecore
Attributes
targetsupplies a pointer to the base being glossed by this ruby text.
StatusOptional
Datatypeteidata.pointer
SchematronEnforce that either target or both from and to (or none) are used, but not target in combination with either from or to.
<sch:rule context="tei:rt/@target"> <sch:report test="../@from | ../@to">When target= is present, neither from= nor to= should be.</sch:report> </sch:rule>
Note

Should point to a single <rb> or an element that is inside an <rb>. To refer to multiple elements or text nodes at once use from and to.

frompoints to the starting point of the span of text being glossed by this ruby text.
StatusOptional
Datatypeteidata.pointer
SchematronEnforce the presence of to iff there is a from.
<sch:rule context="tei:rt/@from"> <sch:assert test="../@to">When from= is present, the to= attribute of <sch:name/> is required.</sch:assert> </sch:rule>
topoints to the ending point of the span of text being glossed.
StatusOptional
Datatypeteidata.pointer
SchematronEnforce the presence of from iff there is a to.
<sch:rule context="tei:rt/@to"> <sch:assert test="../@from">When to= is present, the from= attribute of <sch:name/> is required.</sch:assert> </sch:rule>
Contained by
core: ruby
May contain
Note

Where the place attribute is not provided on the <rt> element, the default assumption is that the ruby gloss is above where the text is horizontal, and to the right of the text where it is vertical.

ExampleThe word 大統領 daitōryō (president) is glossed character by character in hiragana to provide a pronunciation guide.
<p style="writing-mode: vertical-rl"  xml:lang="ja"> <!–…–>  <ruby>   <rb></rb>   <rt place="right">だい</rt>  </ruby>  <ruby>   <rb></rb>   <rt place="right">とう</rt>  </ruby>  <ruby>   <rb></rb>   <rt place="right">りょう</rt>  </ruby> <!–…–> </p>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element rt
{
   hatt.global.attributes,
   hatt.typed.attributes,
   hatt.placement.attributes,
   hatt.transcriptional.attributes,
   attribute target { text }?,
   attribute from { text }?,
   attribute to { text }?,
   hmacro.phraseSeq
}

Appendix A.148 <ruby>

<ruby> (ruby container) contains a passage of base text along with its associated ruby gloss(es). [3.4.2. Ruby Annotations]
Modulecore
Attributes
Member of
Contained by
May contain
core: rb rt
ExampleThe word 入学試験 nyūgakushiken (university entrance exam) is glossed with a hiragana phonation guide.
<p xml:lang="ja"> <!–…–>  <ruby>   <rb>入学試験</rb>   <rt place="above">にゅうがくしけん</rt>  </ruby> <!–…–> </p>
ExampleThis fictional example shows the initialism TEI glossed letter-by-letter with an IPA transcription.
<ruby>  <rb>T</rb>  <rt>ti:</rt> </ruby> <ruby>  <rb>E</rb>  <rt>i:</rt> </ruby> <ruby>  <rb>I</rb>  <rt></rt> </ruby>
Content model
<content>
 <sequence>
  <elementRef key="rb" minOccurs="1"
   maxOccurs="1"/>
  <elementRef key="rt" minOccurs="1"
   maxOccurs="unbounded"/>
 </sequence>
</content>
    
Schema Declaration
element ruby
{
   hatt.global.attributes,
   hatt.typed.attributes,
   hatt.cmc.attributes,
   ( hrb, hrt+ )
}

Appendix A.149 <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
n(number) gives a number (or other label) for an element, which is not necessarily unique within the document.
Derived fromatt.global
StatusRequired
Datatypeteidata.text
Legal values are:
opening
closing
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype
Legal values are:
indent
center
align-right
Member of
Contained by
textstructure: body closer div opener
May contain
Example
<salute>To all courteous mindes, that will voutchsafe the readinge.</salute>
Schematron
<sch:rule context="body"> <sch:let name="recipients"  value="//tei:correspAction[@type='received']/tei:persName/@ref"/> <sch:let name="listRecipients"  value="for $recipient in $recipients return concat(' ',substring-after($recipient, ':'))"/> <sch:report test="@n='opening' and not(.//tei:persName or .//tei:rs)"  role="error"><salute n="opening"> must contain <persName> or <rs>. NB. recipient(s) =<sch:value-of select="$listRecipients"/>. </sch:report> </sch:rule>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
    
Schema Declaration
element salute
{
   hatt.cmc.attributes,
   attribute n { "opening" | "closing" },
   attribute rend { "indent" | "center" | "align-right" }?,
   hmacro.paraContent
}

Appendix A.150 <seal>

<seal> (seal) contains a description of one seal or similar applied to the object described [11.7.3.2. Seals]
Modulemsdescription
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
StatusOptional
Datatype1–∞ 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>
contemporary(contemporary) specifies whether or not the seal is contemporary with the item to which it is affixed
StatusOptional
Datatypeteidata.xTruthValue
Contained by
msdescription: sealDesc
May contain
core: p
Example
<seal n="2type="pendant"  subtype="cauda_duplex">  <p>The seal of <name>Jens Olufsen</name> in black wax.    (<ref>DAS 1061</ref>). Legend: <q>S IOHANNES OLAVI</q>.    Parchment tag on which is written: <q>Woldorp Iohanne G</q>.</p> </seal>
Content model
<content>
 <alternate minOccurs="1"
  maxOccurs="unbounded">
  <classRef key="model.pLike"/>
  <elementRef key="decoNote"/>
 </alternate>
</content>
    
Schema Declaration
element seal
{
   hatt.global.attributes,
   hatt.typed.attributes,
   hatt.datable.attributes,
   attribute calendar { list { + } }?,
   attribute contemporary { text }?,
   ( hmodel.pLike | decoNote )+
}

Appendix A.151 <sealDesc>

<sealDesc> (seal description) describes the seals or similar items related to the object described, either as a series of paragraphs or as a series of <seal> elements. [11.7.3.2. Seals]
Modulemsdescription
Attributes
Member of
Contained by
msdescription: physDesc
May contain
core: p
msdescription: condition seal summary
Example
<sealDesc>  <seal type="pendantcontemporary="true">   <p>Green wax vertical oval seal attached at base.</p>  </seal> </sealDesc>
Example
<sealDesc>  <p>Parchment strip for seal in place; seal missing.</p> </sealDesc>
Content model
<content>
 <alternate>
  <classRef key="model.pLike" minOccurs="1"
   maxOccurs="unbounded"/>
  <sequence>
   <elementRef key="summary" minOccurs="0"/>
   <alternate minOccurs="1"
    maxOccurs="unbounded">
    <elementRef key="decoNote"/>
    <elementRef key="seal"/>
    <elementRef key="condition"/>
   </alternate>
  </sequence>
 </alternate>
</content>
    
Schema Declaration
element sealDesc
{
   hatt.global.attributes,
   ( hmodel.pLike+ | ( hsummary?, ( decoNote | hseal | hcondition )+ ) )
}

Appendix A.152 <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
n(number) gives a number (or other label) for an element, which is not necessarily unique within the document.
Derived fromatt.global
StatusOptional
Datatypeteidata.text
Legal values are:
closing
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype
Legal values are:
indent
center
align-right
typecharacterizes the element in some sense, using any convenient classification scheme or typology.
Derived fromatt.typed
StatusRequired
Datatypeteidata.enumerated
Legal values are:
para
rp
openSalute
bodySalute
closeSalute
closeFormula
author
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>
Schematron
<sch:rule context="tei:seg"> <sch:report test="@type='bodySalute' and ./ancestor::tei:closer">Use <seg type="closeSalute"> inside <closer>. </sch:report> <sch:report test="@type='closeSalute' and ./ancestor::tei:p">Use <seg type="bodySalute"> inside <p>. </sch:report> </sch:rule>
Schematron
<sch:rule context="tei:seg"> <sch:report test="./@n and not(./@type='bodySalute')"  role="error">@n is optional in the presence of @type="bodySalute", otherwise not allowed. </sch:report> </sch:rule>
Schematron
<sch:rule context="tei:seg"> <sch:report test="./@rend and not(./@type='closeFormula' or ./@type='closeSalute')"  role="error">@rend is optional in the presence of @type="closeFormula" or @type="closeSalute", otherwise not allowed. </sch:report> </sch:rule>
Schematron
<sch:rule context="tei:body"> <sch:let name="recipients"  value="//tei:correspAction[@type='received']/tei:persName/@ref"/> <sch:let name="listRecipients"  value="for $recipient in $recipients return concat(' ',substring-after($recipient, ':'))"/> <sch:report test="(@type='openSalute' or @type='bodySalute' or @type='closeSalute') and not(.//tei:persName or .//tei:rs)"  role="error"><seg type="<sch:value-of select="@type"/>"> must contain <persName> or <rs>. NB. recipient(s) =<sch:value-of select="$listRecipients"/>. </sch:report> </sch:rule>
Schematron
<sch:rule context="tei:body"> <sch:let name="senders"  value="//tei:correspAction[@type='sent']/tei:persName/@ref"/> <sch:let name="listSenders"  value="for $sender in $senders return concat(' ',substring-after($sender, ':'))"/> <sch:report test="@type='author' and not(.//tei:persName or .//tei:rs)"  role="error"><seg type="author"> must contain <persName> or <rs>. NB. sender(s) =<sch:value-of select="$listSenders"/>. </sch:report> </sch:rule>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
    
Schema Declaration
element seg
{
   hatt.global.attribute.xmlid,
   hatt.datcat.attribute.targetDatcat,
   hatt.cmc.attributes,
   attribute n { "closing" }?,
   attribute rend { "indent" | "center" | "align-right" }?,
   attribute type
   {
      "para"
    | "rp"
    | "openSalute"
    | "bodySalute"
    | "closeSalute"
    | "closeFormula"
    | "author"
   },
   hmacro.paraContent
}

Appendix A.153 <series>

<series> (series information) contains information about the series in which a book or other bibliographic item has appeared. [3.12.2.1. Analytic, Monographic, and Series Levels]
Modulecore
Attributes
Member of
Contained by
core: bibl
May contain
Example
<series xml:lang="de">  <title level="s">Halbgraue Reihe zur Historischen Fachinformatik</title>  <respStmt>   <resp>Herausgegeben von</resp>   <name type="person">Manfred Thaller</name>   <name type="org">Max-Planck-Institut für Geschichte</name>  </respStmt>  <title level="s">Serie A: Historische Quellenkunden</title>  <biblScope>Band 11</biblScope> </series>
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">
  <textNode/>
  <classRef key="model.gLike"/>
  <elementRef key="title"/>
  <classRef key="model.ptrLike"/>
  <elementRef key="editor"/>
  <elementRef key="respStmt"/>
  <elementRef key="biblScope"/>
  <elementRef key="idno"/>
  <elementRef key="textLang"/>
  <classRef key="model.global"/>
  <elementRef key="availability"/>
 </alternate>
</content>
    
Schema Declaration
element series
{
   hatt.global.attributes,
   (
      text
    | hmodel.gLike
    | htitle
    | hmodel.ptrLike
    | heditor
    | hrespStmt
    | biblScope
    | hidno
    | htextLang
    | hmodel.global
    | havailability
   )*
}

Appendix A.154 <setting>

<setting> describes one particular setting in which a language interaction takes place. [16.2.3. The Setting Description]
Modulecorpus
Attributes
Contained by
corpus: settingDesc
May contain
core: date name p time
corpus: locale
Note

If the who attribute is not supplied, the setting is assumed to be that of all participants in the language interaction.

Example
<setting>  <placeName>New York City, US</placeName>  <date>1989</date>  <locale>on a park bench</locale>  <activity>feeding birds</activity> </setting>
Content model
<content>
 <alternate>
  <classRef key="model.pLike" minOccurs="1"
   maxOccurs="unbounded"/>
  <alternate minOccurs="0"
   maxOccurs="unbounded">
   <classRef key="model.nameLike.agent"/>
   <classRef key="model.dateLike"/>
   <classRef key="model.settingPart"/>
  </alternate>
 </alternate>
</content>
    
Schema Declaration
element setting
{
   hatt.global.attributes,
   hatt.ascribed.attributes,
   (
      hmodel.pLike+
    | ( hmodel.nameLike.agent | hmodel.dateLike | hmodel.settingPart )*
   )
}

Appendix A.155 <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
corpus: setting
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.pLike" minOccurs="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
{
   hatt.global.attributes,
   hatt.declarable.attributes,
   ( hmodel.pLike+ | ( hsetting | hmodel.placeLike | listPlace )+ )
}

Appendix A.156 <settlement>

<settlement> (settlement) contains the name of a settlement such as a city, town, or village identified as a single geo-political or administrative unit. [14.2.3. Place Names]
Modulenamesdates
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
StatusOptional
Datatype1–∞ 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
Example
<placeName>  <settlement type="town">Glasgow</settlement>  <region>Scotland</region> </placeName>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element settlement
{
   hatt.global.attributes,
   hatt.naming.attributes,
   hatt.typed.attributes,
   hatt.datable.attributes,
   hatt.cmc.attributes,
   attribute calendar { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.157 <sex>

<sex> (sex) specifies the sex of an organism. [14.3.2.1. Personal Characteristics]
Modulenamesdates
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
StatusOptional
Datatype1–∞ 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>
valuesupplies a coded value for sex
StatusOptional
Datatype1–∞ occurrences of teidata.sex 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
namesdates: person
May contain
Note

As with other culturally-constructed traits such as age and gender, the way in which this concept is described in different cultural contexts varies. The normalizing attributes are provided only as an optional means of simplifying that variety for purposes of interoperability or project-internal taxonomies for consistency, and should not be used where that is inappropriate or unhelpful. The content of the element may be used to describe the intended concept in more detail.

Example
<sex value="F">female</sex>
Example
<sex value="I">Intersex</sex>
Example
<sex value="TG F">Female (TransWoman)</sex>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element sex
{
   hatt.global.attributes,
   hatt.editLike.attributes,
   hatt.datable.attributes,
   hatt.typed.attributes,
   attribute calendar { list { + } }?,
   attribute value { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.158 <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.
ExampleIf 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?
ExampleIt 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 { hatt.global.attributes, hatt.cmc.attributes, hmacro.paraContent }

Appendix A.159 <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
rend(rendition) indicates how the element in question was rendered or presented in the source text.
Derived fromatt.global.rendition
StatusOptional
Datatype
Legal values are:
indent
center
align-right
Member of
Contained by
May contain
Example
<signed>Thine to command <name>Humph. Moseley</name> </signed>
Example
<closer>  <signed>Sign'd and Seal'd,  <list>    <item>John Bull,</item>    <item>Nic. Frog.</item>   </list>  </signed> </closer>
Schematron
<sch:rule context="tei:signed"> <sch:assert test=".//tei:persName"  role="error">The element <signed> must contain <persName>. </sch:assert> </sch:rule>
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
    
Schema Declaration
element signed
{
   hatt.cmc.attributes,
   attribute rend { "indent" | "center" | "align-right" }?,
   hmacro.paraContent
}

Appendix A.160 <sourceDesc>

<sourceDesc> (source description) describes the source(s) from which an electronic text was derived or generated, typically a bibliographic description in the case of a digitized text, or a phrase such as ‘born digital’ for a text which has no previous existence. [2.2.7. The Source Description]
Moduleheader
Attributes
Contained by
header: fileDesc
May contain
msdescription: msDesc
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.pLike" minOccurs="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
{
   hatt.global.attributes,
   hatt.declarable.attributes,
   (
      hmodel.pLike+
    | ( hmodel.biblLike | hmodel.sourceDescPart | hmodel.listLike )+
   )
}

Appendix A.161 <space>

<space> (space) indicates the location of a significant space in the text. [12.4.1. Space]
Moduletranscr
Attributes
unitnames the unit used for the measurement
Derived fromatt.dimensions
StatusRequired
Datatypeteidata.enumerated
Legal values are:
chars
quantityspecifies the length in the units specified
Derived fromatt.dimensions
StatusRequired
Datatype
Member of
Contained by
May contain
Note

This element should be used wherever it is desired to record an unusual space in the source text, e.g. space left for a word to be filled in later, for later rubrication, etc. It is not intended to be used to mark normal inter-word space or the like.

Example
By god if wommen had writen storyes As <space quantity="7unit="minims"/> han within her oratoryes
Example
στρατηλάτ<space quantity="1unit="chars"/>ου
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">
  <classRef key="model.descLike"/>
  <classRef key="model.certLike"/>
 </alternate>
</content>
    
Schema Declaration
element space
{
   attribute unit { "chars" },
   attribute quantity { data.numeric },
   ( hmodel.descLike | hmodel.certLike )*
}

Appendix A.162 <sponsor>

<sponsor> (sponsor) specifies the name of a sponsoring organization or institution. [2.2.1. The Title Statement]
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
StatusOptional
Datatype1–∞ 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
core: bibl
msdescription: msItem
May contain
Note

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

Example
<sponsor>Association for Computers and the Humanities</sponsor> <sponsor>Association for Computational Linguistics</sponsor> <sponsor ref="http://www.allc.org/">Association for Literary and Linguistic Computing</sponsor>
Content model
<content>
 <macroRef key="macro.phraseSeq.limited"/>
</content>
    
Schema Declaration
element sponsor
{
   hatt.global.attributes,
   hatt.canonical.attributes,
   hatt.datable.attributes,
   attribute calendar { list { + } }?,
   hmacro.phraseSeq.limited
}

Appendix A.163 <stamp>

<stamp> (stamp) contains a word or phrase describing a stamp or similar device. [11.3.3. Watermarks and Stamps]
Modulemsdescription
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
StatusOptional
Datatype1–∞ 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
Example
<rubric>Apologyticu TTVLLIANI AC IGNORATIA IN XPO IHV<lb/> SI NON LICET<lb/> NOBIS RO<lb/> manii imperii <stamp>Bodleian stamp</stamp>  <lb/> </rubric>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element stamp
{
   hatt.global.attributes,
   hatt.typed.attributes,
   hatt.datable.attributes,
   attribute calendar { list { + } }?,
   hmacro.phraseSeq
}

Appendix A.164 <standOff>

<standOff> Functions as a container element for linked data, contextual information, and stand-off annotations embedded in a TEI document. [17.10. The standOff Container]
Modulelinking
Attributes
Member of
Contained by
textstructure: TEI
May contain
ExampleThis example shows an encoding of morphosyntactic features similar to the encoding system used by ISO 24611 (MAF).
<TEI xmlns="http://www.tei-c.org/ns/1.0">  <teiHeader> <!– … –>  </teiHeader>  <text>   <body> <!– … –>    <p>     <w xml:id="w51">I</w>     <w xml:id="w52">wanna</w>     <w xml:id="w53">put</w>     <w xml:id="w54">up</w>     <w xml:id="w55">new</w>     <w xml:id="w56">wallpaper</w>     <pc>.</pc>    </p> <!– … –>   </body>  </text>  <standOff type="morphosyntax">   <spanGrp type="wordForm">    <span target="#w51ana="#fs01"/>    <span target="#w52ana="#fs02"/>    <span target="#w52ana="#fs03"/>    <span target="#w53 #w54ana="#fs04"/>    <span target="#w55ana="#fs05"/>    <span target="#w56ana="#fs06"/>   </spanGrp>   <fs xml:id="fs01">    <f name="lemma">     <string>I</string>    </f>    <f name="pos">     <symbol value="PP"/>    </f>   </fs>   <fs xml:id="fs02">    <f name="lemma">     <string>want</string>    </f>    <f name="pos">     <symbol value="VBP"/>    </f>   </fs>   <fs xml:id="fs03">    <f name="lemma">     <string>to</string>    </f>    <f name="pos">     <symbol value="TO"/>    </f>   </fs>   <fs xml:id="fs04">    <f name="lemma">     <string>put up</string>    </f>    <f name="pos">     <symbol value="VB"/>    </f>   </fs>   <fs xml:id="fs05">    <f name="lemma">     <string>new</string>    </f>    <f name="pos">     <symbol value="JJ"/>    </f>   </fs>   <fs xml:id="fs06">    <f name="lemma">     <string>wallpaper</string>    </f>    <f name="pos">     <symbol value="NN"/>    </f>   </fs>  </standOff> </TEI>
ExampleThis example shows an encoding of contextual information which is referred to from the main text.
<TEI xmlns="http://www.tei-c.org/ns/1.0">  <teiHeader> <!– … –>  </teiHeader>  <standOff>   <listPlace>    <place xml:id="LATL">     <placeName>Atlanta</placeName>     <location>      <region key="US-GA">Georgia</region>      <country key="USA">United States of America</country>      <geo>33.755 -84.39</geo>     </location>     <population when="1963"      type="interpolatedCensusquantity="489359"      source="https://www.biggestuscities.com/city/atlanta-georgia"/>    </place>    <place xml:id="LBHM">     <placeName>Birmingham</placeName>     <location>      <region key="US-AL">Alabama</region>      <country key="USA">United States of America</country>      <geo>33.653333 -86.808889</geo>     </location>     <population when="1963"      type="interpolatedCensusquantity="332891"      source="https://www.biggestuscities.com/city/birmingham-alabama"/>    </place>   </listPlace>  </standOff>  <text>   <body> <!– … –>    <p>Moreover, I am <choice>      <sic>congnizant</sic>      <corr>cognizant</corr>     </choice> of the interrelatedness of all communities and    <lb/>states. I cannot sit idly by in <placeName ref="#LATL">Atlanta</placeName> and not be concerned about what happens    <lb/>in <placeName ref="#LBHM">Birmingham</placeName>. <seg xml:id="FQ17">Injustice anywhere is a threat to justice everywhere.</seg> We    <lb/>are caught in an inescapable network of mutuality, tied in a single garment    <lb/>of destiny. Whatever affects one directly affects all indirectly. Never    <lb/>again can we afford to live with the narrow, provincial <soCalled rendition="#Rqms">outside agitator</soCalled>     <lb/>idea. Anyone who lives inside the United States can never be considered    <lb/>an outsider anywhere in this country.</p> <!– … –>   </body>  </text> </TEI>
Schematron
<sch:rule context="tei:standOff"> <sch:assert test="@type or not(ancestor::tei:standOff)">This <sch:name/> element must have a @type attribute, since it is nested inside a <sch:name/> </sch:assert> </sch:rule>
Content model
<content>
 <classRef key="model.standOffPart"
  minOccurs="1" maxOccurs="unbounded"/>
</content>
    
Schema Declaration
element standOff
{
   hatt.global.attributes,
   hatt.typed.attributes,
   hatt.declaring.attributes,
   hmodel.standOffPart+
}

Appendix A.165 <street>

<street> contains a full street address including any name or number identifying a building as well as the name of the street or route on which it is located. [3.6.2. Addresses]
Modulecore
Attributes
Member of
Contained by
core: address
May contain
Note

The order and presentation of house names and numbers and street names, etc., may vary considerably in different countries. The encoding should reflect the order which is appropriate in the country concerned.

Example
<street>via della Faggiola, 36</street>
Example
<street>  <name>Duntaggin</name>, 110 Southmoor Road </street>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element street { hatt.global.attributes, hmacro.phraseSeq }

Appendix A.166 <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 surplus
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
{
   hatt.global.attributes,
   hatt.transcriptional.attributes,
   hatt.dimensions.attributes,
   ( hadd | hsurplus | hdel | hmodel.milestoneLike )+
}

Appendix A.167 <summary>

<summary> contains an overview of the available information concerning some aspect of an item or object (for example, its intellectual content, history, layout, typography etc.) as a complement or alternative to the more detailed information carried by more specific elements. [11.6. Intellectual Content]
Modulemsdescription
Attributes
Contained by
May contain
Example
<summary>This item consists of three books with a prologue and an epilogue. </summary>
Example
<typeDesc>  <summary>Uses a mixture of Roman and Black Letter types.</summary>  <typeNote>Antiqua typeface, showing influence of Jenson's Venetian    fonts.</typeNote>  <typeNote>The black letter face is a variant of Schwabacher.</typeNote> </typeDesc>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
    
Schema Declaration
element summary { hatt.global.attributes, hmacro.specialPara }

Appendix A.168 <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
cert(certainty) signifies the degree of certainty associated with the intervention or interpretation.
Derived fromatt.global.responsibility
StatusRequired
Datatypeteidata.probCert
Legal values are:
high
medium
low
resp(responsible party) indicates the agency responsible for the intervention or interpretation, for example an editor or transcriber.
Derived fromatt.global.responsibility
StatusRequired
Schematron
<sch:rule context="tei:supplied"> <sch:let name="noteMakers"  value="//tei:principal/@xml:id | //tei:editor/@xml:id | //tei:respStmt/@xml:id"/> <sch:let name="plusHash"  value="for $maker in $noteMakers return concat('#', $maker)"/> <sch:assert test=". = //tei:editor/concat('#', @xml:id) or . = //tei:respStmt/concat('#', @xml:id)"  role="error">Permissible values are "<sch:value-of select="$plusHash"/>". </sch:assert> </sch:rule>
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
reasonone or more words indicating why the text has had to be supplied, e.g. overbinding, faded-ink, lost-folio, omitted-in-original.
StatusRequired
Datatype1–3 occurrences of  separated by whitespace
Legal values are:
covered
crease
damage
end-of-line
faded
fold
folded-corner
illegible
ink-blot
missing
page-cut
seal
smudge
tear
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
{
   hatt.editLike.attribute.evidence,
   hatt.dimensions.attribute.unit,
   attribute cert { "high" | "medium" | "low" },
   attribute resp { list { + } },
   attribute reason
   {
      list
      {
         (
            "covered"
          | "crease"
          | "damage"
          | "end-of-line"
          | "faded"
          | "fold"
          | "folded-corner"
          | "illegible"
          | "ink-blot"
          | "missing"
          | "page-cut"
          | "seal"
          | "smudge"
          | "tear"
         ),
         (
            "covered"
          | "crease"
          | "damage"
          | "end-of-line"
          | "faded"
          | "fold"
          | "folded-corner"
          | "illegible"
          | "ink-blot"
          | "missing"
          | "page-cut"
          | "seal"
          | "smudge"
          | "tear"
         )?,
         (
            "covered"
          | "crease"
          | "damage"
          | "end-of-line"
          | "faded"
          | "fold"
          | "folded-corner"
          | "illegible"
          | "ink-blot"
          | "missing"
          | "page-cut"
          | "seal"
          | "smudge"
          | "tear"
         )?
      }
   },
   hmacro.paraContent
}

Appendix A.169 <support>

<support> (support) contains a description of the materials etc. which make up the physical support for the written part of a manuscript or other object. [11.7.1. Object Description]
Modulemsdescription
Attributes
Contained by
msdescription: supportDesc
May contain
Example
<objectDesc form="roll">  <supportDesc>   <support> Parchment roll with <material>silk</material> ribbons.   </support>  </supportDesc> </objectDesc>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
    
Schema Declaration
element support { hatt.global.attributes, hmacro.specialPara }

Appendix A.170 <supportDesc>

<supportDesc> (support description) groups elements describing the physical support for the written part of a manuscript or other object. [11.7.1. Object Description]
Modulemsdescription
Attributes
material(material) a short project-defined name for the material composing the majority of the support
StatusOptional
Datatypeteidata.enumerated
Suggested values include:
paper
parch
(parchment)
mixed
Contained by
msdescription: objectDesc
May contain
core: p
header: extent
msdescription: collation condition support
Example
<supportDesc>  <support> Parchment roll with <material>silk</material> ribbons.  </support> </supportDesc>
Content model
<content>
 <alternate>
  <classRef key="model.pLike" minOccurs="1"
   maxOccurs="unbounded"/>
  <sequence>
   <elementRef key="support" minOccurs="0"/>
   <elementRef key="extent" minOccurs="0"/>
   <elementRef key="foliation"
    minOccurs="0" maxOccurs="unbounded"/>
   <elementRef key="collation"
    minOccurs="0"/>
   <elementRef key="condition"
    minOccurs="0"/>
  </sequence>
 </alternate>
</content>
    
Schema Declaration
element supportDesc
{
   hatt.global.attributes,
   attribute material { "paper" | "parch" | "mixed" }?,
   (
      hmodel.pLike+
    | ( hsupport?, hextent?, foliation*, hcollation?, hcondition? )
   )
}

Appendix A.171 <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
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 lrxulx units wide and ulylry 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 minOccurs="1" maxOccurs="1">
  <alternate minOccurs="0"
   maxOccurs="unbounded">
   <classRef key="model.global"/>
   <classRef key="model.labelLike"/>
   <classRef key="model.graphicLike"/>
  </alternate>
  <sequence minOccurs="0"
   maxOccurs="unbounded">
   <alternate minOccurs="1" maxOccurs="1">
    <elementRef key="zone"/>
    <elementRef key="line"/>
    <elementRef key="path"/>
    <elementRef key="surface"/>
    <elementRef key="surfaceGrp"/>
   </alternate>
   <classRef key="model.global"
    minOccurs="0" maxOccurs="unbounded"/>
  </sequence>
 </sequence>
</content>
    
Schema Declaration
element surface
{
   ( hmodel.global | hmodel.labelLike | hmodel.graphicLike )*,
   ( ( ( zone | line | hpath | hsurface | surfaceGrp ), hmodel.global* )* )
}

Appendix A.172 <surname>

<surname> (surname) contains a family (inherited) name, as opposed to a given, baptismal, or nick name. [14.2.1. Personal Names]
Modulenamesdates
Attributes
Member of
Contained by
May contain
Example
<surname type="combine">St John Stevas</surname>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element surname
{
   hatt.global.attributes,
   hatt.personal.attributes,
   hatt.typed.attributes,
   hatt.cmc.attributes,
   hmacro.phraseSeq
}

Appendix A.173 <surplus>

<surplus> (surplus) marks text present in the source which the editor believes to be superfluous or redundant. [12.3.3.1. Damage, Illegibility, and Supplied Text]
Moduletranscr
Attributes
reasonone or more words indicating why this text is believed to be superfluous, e.g. repeated, interpolated etc.
StatusRequired
Datatype1–2 occurrences of  separated by whitespace
Legal values are:
anacoluthon
inappropriate
inserted-material
repeated
Member of
Contained by
May contain
Example
I am dr Sr yrs <surplus reason="repeated">yrs</surplus> Sydney Smith
Content model
<content>
 <macroRef key="macro.paraContent"/>
</content>
    
Schema Declaration
element surplus
{
   hatt.global.responsibility.attribute.cert,
   attribute reason
   {
      list
      {
         ( "anacoluthon" | "inappropriate" | "inserted-material" | "repeated" ),
         ( "anacoluthon" | "inappropriate" | "inserted-material" | "repeated" )?
      }
   },
   hmacro.paraContent
}

Appendix A.174 <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
msdescription: msDesc
Note

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

Example
<taxonomy xml:id="tax.b">  <bibl>Brown Corpus</bibl>  <category xml:id="tax.b.a">   <catDesc>Press Reportage</catDesc>   <category xml:id="tax.b.a1">    <catDesc>Daily</catDesc>   </category>   <category xml:id="tax.b.a2">    <catDesc>Sunday</catDesc>   </category>   <category xml:id="tax.b.a3">    <catDesc>National</catDesc>   </category>   <category xml:id="tax.b.a4">    <catDesc>Provincial</catDesc>   </category>   <category xml:id="tax.b.a5">    <catDesc>Political</catDesc>   </category>   <category xml:id="tax.b.a6">    <catDesc>Sports</catDesc>   </category>  </category>  <category xml:id="tax.b.d">   <catDesc>Religion</catDesc>   <category xml:id="tax.b.d1">    <catDesc>Books</catDesc>   </category>   <category xml:id="tax.b.d2">    <catDesc>Periodicals and tracts</catDesc>   </category>  </category> </taxonomy>
Example
<taxonomy>  <category xml:id="literature">   <catDesc>Literature</catDesc>   <category xml:id="poetry">    <catDesc>Poetry</catDesc>    <category xml:id="sonnet">     <catDesc>Sonnet</catDesc>     <category xml:id="shakesSonnet">      <catDesc>Shakespearean Sonnet</catDesc>     </category>     <category xml:id="petraSonnet">      <catDesc>Petrarchan Sonnet</catDesc>     </category>    </category>    <category xml:id="haiku">     <catDesc>Haiku</catDesc>    </category>   </category>   <category xml:id="drama">    <catDesc>Drama</catDesc>   </category>  </category>  <category xml:id="meter">   <catDesc>Metrical Categories</catDesc>   <category xml:id="feet">    <catDesc>Metrical Feet</catDesc>    <category xml:id="iambic">     <catDesc>Iambic</catDesc>    </category>    <category xml:id="trochaic">     <catDesc>trochaic</catDesc>    </category>   </category>   <category xml:id="feetNumber">    <catDesc>Number of feet</catDesc>    <category xml:id="pentameter">     <catDesc>>Pentameter</catDesc>    </category>    <category xml:id="tetrameter">     <catDesc>>Tetrameter</catDesc>    </category>   </category>  </category> </taxonomy> <!– elsewhere in document –> <lg ana="#shakesSonnet #iambic #pentameter">  <l>Shall I compare thee to a summer's day</l> <!– … –> </lg>
Content model
<content>
 <alternate>
  <alternate>
   <alternate minOccurs="1"
    maxOccurs="unbounded">
    <elementRef key="category"/>
    <elementRef key="taxonomy"/>
   </alternate>
   <sequence>
    <alternate minOccurs="1"
     maxOccurs="unbounded">
     <classRef key="model.descLike"
      minOccurs="1" maxOccurs="1"/>
     <elementRef key="equiv" minOccurs="1"
      maxOccurs="1"/>
     <elementRef key="gloss" minOccurs="1"
      maxOccurs="1"/>
    </alternate>
    <alternate minOccurs="0"
     maxOccurs="unbounded">
     <elementRef key="category"/>
     <elementRef key="taxonomy"/>
    </alternate>
   </sequence>
  </alternate>
  <sequence>
   <classRef key="model.biblLike"/>
   <alternate minOccurs="0"
    maxOccurs="unbounded">
    <elementRef key="category"/>
    <elementRef key="taxonomy"/>
   </alternate>
  </sequence>
 </alternate>
</content>
    
Schema Declaration
element taxonomy
{
   hatt.global.attributes,
   hatt.datcat.attributes,
   (
      (
         ( hcategory | htaxonomy )+
       | ( ( hmodel.descLike | equiv | gloss )+, ( hcategory | htaxonomy )* )
      )
    | ( hmodel.biblLike, ( hcategory | htaxonomy )* )
   )
}

Appendix A.175 <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
textstructure: TEI
May contain
Note

One of the few elements unconditionally required in any TEI document.

Example
<teiHeader>  <fileDesc>   <titleStmt>    <title>Shakespeare: the first folio (1623) in electronic form</title>    <author>Shakespeare, William (1564–1616)</author>    <respStmt>     <resp>Originally prepared by</resp>     <name>Trevor Howard-Hill</name>    </respStmt>    <respStmt>     <resp>Revised and edited by</resp>     <name>Christine Avern-Carr</name>    </respStmt>   </titleStmt>   <publicationStmt>    <distributor>Oxford Text Archive</distributor>    <address>     <addrLine>13 Banbury Road, Oxford OX2 6NN, UK</addrLine>    </address>    <idno type="OTA">119</idno>    <availability>     <p>Freely available on a non-commercial basis.</p>    </availability>    <date when="1968">1968</date>   </publicationStmt>   <sourceDesc>    <bibl>The first folio of Shakespeare, prepared by Charlton Hinman (The Norton Facsimile,        1968)</bibl>   </sourceDesc>  </fileDesc>  <encodingDesc>   <projectDesc>    <p>Originally prepared for use in the production of a series of old-spelling        concordances in 1968, this text was extensively checked and revised for use during the        editing of the new Oxford Shakespeare (Wells and Taylor, 1989).</p>   </projectDesc>   <editorialDecl>    <correction>     <p>Turned letters are silently corrected.</p>    </correction>    <normalization>     <p>Original spelling and typography is retained, except that long s and ligatured          forms are not encoded.</p>    </normalization>   </editorialDecl>   <refsDecl xml:id="ASLREF">    <cRefPattern matchPattern="(\S+) ([^.]+)\.(.*)"     replacementPattern="#xpath(//div1[@n='$1']/div2/[@n='$2']//lb[@n='$3'])">     <p>A reference is created by assembling the following, in the reverse order as that          listed here: <list>       <item>the <att>n</att> value of the preceding <gi>lb</gi>       </item>       <item>a period</item>       <item>the <att>n</att> value of the ancestor <gi>div2</gi>       </item>       <item>a space</item>       <item>the <att>n</att> value of the parent <gi>div1</gi>       </item>      </list>     </p>    </cRefPattern>   </refsDecl>  </encodingDesc>  <revisionDesc>   <list>    <item>     <date when="1989-04-12">12 Apr 89</date> Last checked by CAC</item>    <item>     <date when="1989-03-01">1 Mar 89</date> LB made new file</item>   </list>  </revisionDesc> </teiHeader>
Schematron
<sch:rule context="tei:teiHeader"> <sch:report test=".//tei:msIdentifier/following::comment()[not(matches(., 'resp="#[A-Za-z]+?"'))]"  role="warning">Missing pseudo-attribute resp="#XYZ" to indicate responsibility for an editorial comment. </sch:report> </sch:rule>
Content model
<content>
 <sequence minOccurs="1" maxOccurs="1">
  <elementRef key="fileDesc"/>
  <classRef key="model.teiHeaderPart"
   minOccurs="0" maxOccurs="unbounded"/>
  <elementRef key="revisionDesc"
   minOccurs="0"/>
 </sequence>
</content>
    
Schema Declaration
element teiHeader
{
   hatt.global.attributes,
   ( hfileDesc, hmodel.teiHeaderPart*, hrevisionDesc? )
}

Appendix A.176 <term>

<term> (term) contains a single-word, multi-word, or symbolic designation which is regarded as a technical term. [3.4.1. Terms and Glosses]
Modulecore
Attributes
Member of
Contained by
May contain
Note

When this element appears within an <index> element, it is understood to supply the form under which an index entry is to be made for that location. Elsewhere, it is understood simply to indicate that its content is to be regarded as a technical or specialised term. It may be associated with a <gloss> element by means of its ref attribute; alternatively a <gloss> element may point to a <term> element by means of its target attribute.

In formal terminological work, there is frequently discussion over whether terms must be atomic or may include multi-word lexical items, symbolic designations, or phraseological units. The <term> element may be used to mark any of these. No position is taken on the philosophical issue of what a term can be; the looser definition simply allows the <term> element to be used by practitioners of any persuasion.

As with other members of the att.canonical class, instances of this element occuring in a text may be associated with a canonical definition, either by means of a URI (using the ref attribute), or by means of some system-specific code value (using the key attribute). Because the mutually exclusive target and cRef attributes overlap with the function of the ref attribute, they are deprecated and may be removed at a subsequent release.

Example
A computational device that infers structure from grammatical strings of words is known as a <term>parser</term>, and much of the history of NLP over the last 20 years has been occupied with the design of parsers.
Example
We may define <term xml:id="TDPV1rend="sc">discoursal point of view</term> as <gloss target="#TDPV1">the relationship, expressed through discourse structure, between the implied author or some other addresser, and the fiction.</gloss>
Example
We may define <term ref="#TDPV2rend="sc">discoursal point of view</term> as <gloss xml:id="TDPV2">the relationship, expressed through discourse structure, between the implied author or some other addresser, and the fiction.</gloss>
Example
We discuss Leech's concept of <term ref="myGlossary.xml#TDPV2rend="sc">discoursal point of view</term> below.
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element term
{
   hatt.global.attributes,
   hatt.declaring.attributes,
   hatt.pointing.attributes,
   hatt.typed.attributes,
   hatt.canonical.attributes,
   hatt.sortable.attributes,
   hatt.cReferencing.attributes,
   hatt.cmc.attributes,
   hmacro.phraseSeq
}

Appendix A.177 <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
xml:spacesignals an intention about how white space should be managed by applications.
Derived fromatt.global
StatusRequired
Datatypeteidata.enumerated
Legal values are:
preserve
Member of
Contained by
textstructure: TEI
May contain
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>
ExampleThe body of a text may be replaced by a group of nested texts, as in the following schematic:
<text>  <front> <!– front matter for the whole group –>  </front>  <group>   <text> <!– first text –>   </text>   <text> <!– second text –>   </text>  </group> </text>
Content model
<content>
 <sequence minOccurs="1" maxOccurs="1">
  <classRef key="model.global"
   minOccurs="0" maxOccurs="unbounded"/>
  <sequence minOccurs="0" maxOccurs="1">
   <elementRef key="front"/>
   <classRef key="model.global"
    minOccurs="0" maxOccurs="unbounded"/>
  </sequence>
  <alternate minOccurs="1" maxOccurs="1">
   <elementRef key="body"/>
   <elementRef key="group"/>
  </alternate>
  <classRef key="model.global"
   minOccurs="0" maxOccurs="unbounded"/>
  <sequence minOccurs="0" maxOccurs="1">
   <elementRef key="back"/>
   <classRef key="model.global"
    minOccurs="0" maxOccurs="unbounded"/>
  </sequence>
 </sequence>
</content>
    
Schema Declaration
element text
{
   hatt.global.attribute.xmlid,
   attribute xml:space { "preserve" },
   (
      hmodel.global*,
      ( ( front, hmodel.global* )? ),
      ( hbody | group ),
      hmodel.global*,
      ( ( back, hmodel.global* )? )
   )
}

Appendix A.178 <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
header: keywords
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
{
   hatt.global.attributes,
   hatt.declarable.attributes,
   ( classCode | catRef | hkeywords )*
}

Appendix A.179 <textLang>

<textLang> (text language) describes the languages and writing systems identified within the bibliographic work being described, rather than its description. [3.12.2.4. Imprint, Size of a Document, and Reprint Information 11.6.6. Languages and Writing Systems]
Modulecore
Attributes
mainLang(main language) supplies a code which identifies the chief language used in the bibliographic work.
StatusOptional
Datatypeteidata.language
otherLangs(other languages) one or more codes identifying any other languages used in the bibliographic work.
StatusOptional
Datatype0–∞ occurrences of teidata.language separated by whitespace
Member of
Contained by
core: bibl series
msdescription: msContents msItem
May contain
Note

This element should not be used to document the languages or writing systems used for the bibliographic or manuscript description itself: as for all other TEI elements, such information should be provided by means of the global xml:lang attribute attached to the element containing the description.

In all cases, languages should be identified by means of a standardized ‘language tag’ generated according to BCP 47. Additional documentation for the language may be provided by a <language> element in the TEI header.

Example
<textLang mainLang="enotherLangs="la"> Predominantly in English with Latin glosses</textLang>
Content model
<content>
 <macroRef key="macro.specialPara"/>
</content>
    
Schema Declaration
element textLang
{
   hatt.global.attributes,
   attribute mainLang { text }?,
   attribute otherLangs { list { * } }?,
   hmacro.specialPara
}

Appendix A.180 <time>

<time> (time) contains a phrase defining a time of day in any format. [3.6.4. Dates and Times]
Modulecore
Attributes
Member of
Contained by
May contain
Example
As he sat smiling, the quarter struck — <time when="11:45:00">the quarter to twelve</time>.
Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">
  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.phrase"/>
  <classRef key="model.global"/>
 </alternate>
</content>
    
Schema Declaration
element time
{
   hatt.global.attributes,
   hatt.datable.attributes,
   hatt.calendarSystem.attributes,
   hatt.canonical.attributes,
   hatt.editLike.attributes,
   hatt.dimensions.attributes,
   hatt.typed.attributes,
   hatt.cmc.attributes,
   ( text | hmodel.gLike | hmodel.phrase | hmodel.global )*
}

Appendix A.181 <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
StatusOptional
Datatypeteidata.enumerated
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.

linktype
StatusOptional
Legal values are:
simple
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
{
   hatt.cmc.attributes,
   attribute type { text }?,
   attribute linktype { "simple" }?,
   hmacro.paraContent
}

Appendix A.182 <titleStmt>

<titleStmt> (title statement) groups information about the title of a work and those responsible for its content. [2.2.1. The Title Statement 2.2. The File Description]
Moduleheader
Attributes
Contained by
header: fileDesc
May contain
Example
<titleStmt>  <title>Capgrave's Life of St. John Norbert: a machine-readable transcription</title>  <respStmt>   <resp>compiled by</resp>   <name>P.J. Lucas</name>  </respStmt> </titleStmt>
Content model
<content>
 <sequence>
  <elementRef key="title" minOccurs="1"
   maxOccurs="unbounded"/>
  <classRef key="model.respLike"
   minOccurs="0" maxOccurs="unbounded"/>
 </sequence>
</content>
    
Schema Declaration
element titleStmt { hatt.global.attributes, ( htitle+, hmodel.respLike* ) }

Appendix A.183 <transpose>

<transpose> describes a single textual transposition as an ordered list of at least two pointers specifying the order in which the elements indicated should be re-combined. [12.3.4.5. Transpositions]
Moduletranscr
Contained by
transcr: listTranspose
May contain
core: ptr
Note

Transposition is usually indicated in a document by a metamark such as a wavy line or numbering.

The order in which <ptr> elements appear within a <transpose> element should correspond with the desired order, as indicated by the metamark.

Example
<transpose>  <ptr target="#ib02"/>  <ptr target="#ib01"/> </transpose>
The transposition recorded here indicates that the content of the element with identifier ib02 should appear before the content of the element with identifier ib01.
Content model
<content>
 <elementRef key="ptr" minOccurs="2"
  maxOccurs="unbounded"/>
</content>
    
Schema Declaration
element transpose { hptr, hptr, hptr* }

Appendix A.184 <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.
StatusRequired
Datatype1–4 occurrences of  separated by whitespace
Legal values are:
cancelled
censored
corrected
covered
crease
damage
end-of-line
erased
faded
fold
folded-corner
ink-blot
overinked-pen
page-cut
seal
smudge
tear
indistinct
<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.

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
{
   hatt.cmc.attributes,
   attribute reason
   {
      list
      {
         (
            "cancelled"
          | "censored"
          | "corrected"
          | "covered"
          | "crease"
          | "damage"
          | "end-of-line"
          | "erased"
          | "faded"
          | "fold"
          | "folded-corner"
          | "ink-blot"
          | "overinked-pen"
          | "page-cut"
          | "seal"
          | "smudge"
          | "tear"
          | "indistinct"
         ),
         (
            "cancelled"
          | "censored"
          | "corrected"
          | "covered"
          | "crease"
          | "damage"
          | "end-of-line"
          | "erased"
          | "faded"
          | "fold"
          | "folded-corner"
          | "ink-blot"
          | "overinked-pen"
          | "page-cut"
          | "seal"
          | "smudge"
          | "tear"
          | "indistinct"
         )?,
         (
            "cancelled"
          | "censored"
          | "corrected"
          | "covered"
          | "crease"
          | "damage"
          | "end-of-line"
          | "erased"
          | "faded"
          | "fold"
          | "folded-corner"
          | "ink-blot"
          | "overinked-pen"
          | "page-cut"
          | "seal"
          | "smudge"
          | "tear"
          | "indistinct"
         )?,
         (
            "cancelled"
          | "censored"
          | "corrected"
          | "covered"
          | "crease"
          | "damage"
          | "end-of-line"
          | "erased"
          | "faded"
          | "fold"
          | "folded-corner"
          | "ink-blot"
          | "overinked-pen"
          | "page-cut"
          | "seal"
          | "smudge"
          | "tear"
          | "indistinct"
         )?
      }
   },
   hmacro.paraContent
}

Appendix A.185 <unit>

<unit> contains a symbol, a word or a phrase referring to a unit of measurement in any kind of formal or informal system. [3.6.3. Numbers and Measures]
Modulecore
Attributes
Member of
Contained by
May contain
ExampleHere is an example of a <unit> element holding a unitRef attribute that points to a definition of the unit in the TEI header.
<measure>  <num>3</num>  <unit unitRef="#ell">ells</unit> </measure> <!– In the TEI Header: –> <encodingDesc>  <unitDecl>   <unitDef xml:id="ell">    <label>ell</label>    <placeName ref="#iceland"/>    <desc>A unit of measure for cloth, roughly equivalent to 18 inches, or from an adult male’s elbow to the tip of the middle finger.</desc>   </unitDef>  </unitDecl> </encodingDesc>
Example
<measure>  <num>2</num>  <unit>kg</unit> </measure>
Example
<measure type="value">  <num>3</num>  <unit type="timeunit="min">minute</unit> </measure>
Example
<measure type="interval">  <num atLeast="1.2">1.2</num> to <num atMost="5.6">5.6</num>  <unit type="velocityunit="km/h">km/h</unit> </measure>
Example
<p>Light travels at <num value="3E10">3×10^10</num>  <unit type="rateunit="cm/s">   <unit type="space">cm</unit> per <unit type="time">second</unit>  </unit>.</p>
Content model
<content>
 <macroRef key="macro.phraseSeq"/>
</content>
    
Schema Declaration
element unit
{
   hatt.global.attributes,
   hatt.typed.attributes,
   hatt.measurement.attributes,
   hatt.cmc.attributes,
   hmacro.phraseSeq
}

Appendix A.186 <unitDecl>

<unitDecl> (unit declarations) provides information about units of measurement that are not members of the International System of Units. [2.3.9. The Unit Declaration]
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
StatusOptional
Datatype1–∞ 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: encodingDesc
May contain
header: unitDef
Example
<unitDecl>  <unitDef xml:id="type="weight">   <label xml:lang="ja"></label>   <label xml:lang="ja-Latn">kin</label>   <conversion fromUnit="#両toUnit="#斤"    formula="16"/>  </unitDef>  <unitDef xml:id="type="weight">   <label xml:lang="ja"></label>   <label xml:lang="ja-Latn">ryo</label>   <conversion fromUnit="#分toUnit="#両"    formula="4"/>  </unitDef>  <unitDef xml:id="type="weight">   <label xml:lang="ja"></label>   <label xml:lang="ja-Latn">Bu</label>   <conversion fromUnit="#銖toUnit="#分"    formula="6"/>  </unitDef>  <unitDef xml:id="type="weight">   <label xml:lang="ja"></label>   <label xml:lang="ja-Latn">Shu</label>  </unitDef> </unitDecl>
Content model
<content>
 <elementRef key="unitDef" minOccurs="1"
  maxOccurs="unbounded"/>
</content>
    
Schema Declaration
element unitDecl
{
   hatt.canonical.attributes,
   hatt.datable.attributes,
   hatt.global.attributes,
   attribute calendar { list { + } }?,
   hunitDef+
}

Appendix A.187 <unitDef>

<unitDef> (unit definition) contains descriptive information related to a specific unit of measurement. [2.3.9. The Unit Declaration]
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
StatusOptional
Datatype1–∞ 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
header: unitDecl
May contain
Example
<unitDecl>  <unitDef xml:id="pechystype="length">   <label>πῆχυς</label>   <placeName ref="#athens"/>   <conversion fromUnit="#daktylos"    toUnit="#pechysformula="$fromUnit div 24"/>   <desc>Equivalent to a cubit or 24 daktyloi.</desc>  </unitDef>  <unitDef xml:id="daktylostype="length">   <label>δάκτυλος</label>   <placeName ref="#athens"/>   <desc>A basic unit of length equivalent to one finger (or the size of a thumb) in ancient Greece.</desc>  </unitDef> </unitDecl>
Content model
<content>
 <alternate minOccurs="1"
  maxOccurs="unbounded">
  <classRef key="model.labelLike"
   minOccurs="1"/>
  <classRef key="model.placeNamePart"
   minOccurs="0"/>
  <elementRef key="conversion"
   minOccurs="0"/>
  <elementRef key="unit" minOccurs="0"/>
 </alternate>
</content>
    
Schema Declaration
element unitDef
{
   hatt.global.attributes,
   hatt.datable.attributes,
   hatt.canonical.attributes,
   hatt.typed.attributes,
   attribute calendar { list { + } }?,
   ( hmodel.labelLike | hmodel.placeNamePart? | hconversion? | hunit? )+
}

Appendix A.188 <width>

<width> (width) contains a measurement of an object along the axis parallel to its bottom, e.g. perpendicular to the spine of a book or codex. [11.3.4. Dimensions]
Modulemsdescription
Attributes
Member of
Contained by
May containCharacter data only
Note

If used to specify the depth of a non text-bearing portion of some object, for example a monument, this element conventionally refers to the axis facing the observer, and perpendicular to that indicated by the ‘depth’ axis.

Example
<width unit="in">4</width>
Content model
<content>
 <macroRef key="macro.xtext"/>
</content>
    
Schema Declaration
element width
{
   hatt.global.attributes,
   hatt.dimensions.attributes,
   hmacro.xtext
}

Appendix B Model classes


Appendix B.1 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 orgName persName] model.offsetLike model.persNamePart[addName forename genName persPronouns roleName surname] model.placeStateLike[model.placeNamePart[country placeName settlement]] eventName idno objectName rs] addrLine postCode street

Appendix B.2 model.addressLike

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

Appendix B.3 model.annotationLike

model.annotationLike groups elements used to represent annotations. [17.10. The standOff Container]
Moduletei
Used by
Membersannotation note

Appendix B.4 model.annotationPart.body

model.annotationPart.body groups elements which may be used as an <annotation> body.
Moduletei
Used by
Membersnote ptr ref

Appendix B.5 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]

Appendix B.6 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

Appendix B.7 model.biblLike


Appendix B.8 model.biblPart


Appendix B.9 model.certLike

model.certLike groups elements which are used to indicate uncertainty or precision of other elements.
Moduletei
Used by
Memberscertainty precision respons

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

Appendix B.11 model.common

model.common groups common chunk- and inter-level elements. [1.3. The TEI Class System]
Moduletei
Used by
Membersmodel.cmc model.divPart[model.lLike[l] model.pLike[p]] model.inter[model.attributable[model.quoteLike[cit quote]] model.biblLike[bibl listBibl msDesc] model.egLike model.labelLike[label] model.listLike[listObject listPerson] model.oddDecl model.stageLike] 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.


Appendix B.12 model.correspActionPart

model.correspActionPart groups elements which define the parts (usually names, dates and places) of one action related to the correspondence.
Moduletei
Used by
Membersmodel.addressLike[address affiliation] model.dateLike[date time] model.nameLike[model.nameLike.agent[name orgName persName] model.offsetLike model.persNamePart[addName forename genName persPronouns roleName surname] model.placeStateLike[model.placeNamePart[country placeName settlement]] eventName idno objectName rs] note noteGrp

Appendix B.13 model.correspContextPart

model.correspContextPart groups elements which may appear as part of the correspContext element
Moduletei
Used by
Membersmodel.pLike[p] model.ptrLike[ptr ref] note noteGrp

Appendix B.14 model.correspDescPart

model.correspDescPart groups together metadata elements for describing correspondence
Moduletei
Used by
MemberscorrespAction correspContext note noteGrp

Appendix B.15 model.dateLike

model.dateLike groups elements containing temporal expressions. [3.6.4. Dates and Times 14.4. Dates]
Moduletei
Used by
Membersdate time

Appendix B.16 model.dimLike

model.dimLike groups elements which describe a measurement forming part of the physical dimensions of some object.
Moduletei
Used by
Membersheight width

Appendix B.17 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] model.divWrapper[dateline salute]

Appendix B.18 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

Appendix B.19 model.divLike

model.divLike groups elements used to represent un-numbered generic structural divisions.
Moduletei
Used by
Membersdiv

Appendix B.20 model.divPart

model.divPart groups paragraph-level elements appearing directly within divisions. [1.3. The TEI Class System]
Moduletei
Used by
Membersmodel.lLike[l] model.pLike[p]
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.


Appendix B.21 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[dateline salute]

Appendix B.22 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

Appendix B.23 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
Membersdateline salute

Appendix B.24 model.editorialDeclPart

model.editorialDeclPart groups elements which may be used inside <editorialDecl> and appear multiple times.
Moduletei
Used by
Memberscorrection hyphenation normalization punctuation quotation

Appendix B.25 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
Membersemph foreign term title

Appendix B.26 model.encodingDescPart

model.encodingDescPart groups elements which may be used inside <encodingDesc> and appear multiple times.
Moduletei
Used by
MembersclassDecl editorialDecl geoDecl listPrefixDef projectDesc refsDecl unitDecl

Appendix B.28 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
Membersellipsis gap space

Appendix B.29 model.global.meta

model.global.meta groups globally available elements which describe the status of other elements. [1.3. The TEI Class System]
Moduletei
Used by
Memberscertainty listTranspose precision respons
Note

Elements in this class are typically used to hold groups of links or of abstract interpretations, or by provide indications of certainty etc. It may find be convenient to localize all metadata elements, for example to contain them within the same divison as the elements that they relate to; or to locate them all to a division of their own. They may however appear at any point in a TEI text.


Appendix B.30 model.headLike

model.headLike groups elements used to provide a title or heading at the start of a text division.
Moduletei
Used by
Membershead

Appendix B.31 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

Appendix B.32 model.highlighted

model.highlighted groups phrase-level elements which are typographically distinct. [3.3. Highlighting and Quotation]
Moduletei
Used by
Membersmodel.emphLike[emph foreign term title] model.hiLike[hi q]

Appendix B.33 model.imprintPart

model.imprintPart groups the bibliographic elements which occur inside imprints. [3.12. Bibliographic Citations and References]
Moduletei
Used by
MemberspubPlace publisher

Appendix B.34 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]] model.biblLike[bibl listBibl msDesc] model.egLike model.labelLike[label] model.listLike[listObject listPerson] model.oddDecl model.stageLike

Appendix B.35 model.lLike

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

Appendix B.36 model.labelLike

model.labelLike groups elements used to gloss or explain other parts of a document.
Moduletei
Used by
Memberslabel

Appendix B.38 model.listLike

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

Appendix B.39 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
Membersheight measure unit width

Appendix B.40 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

Appendix B.41 model.msItemPart

model.msItemPart groups elements which can appear within a manuscript item description.
Moduletei
Used by
Membersmodel.biblLike[bibl listBibl msDesc] model.msQuoteLike[title] model.quoteLike[cit quote] model.respLike[author editor funder principal respStmt sponsor] idno msItem textLang

Appendix B.42 model.msQuoteLike

model.msQuoteLike groups elements which represent passages such as titles quoted from a manuscript as a part of its description.
Moduletei
Used by
Memberstitle

Appendix B.43 model.nameLike

model.nameLike groups elements which name or refer to a person, place, or organization.
Moduletei
Used by
Membersmodel.nameLike.agent[name orgName persName] model.offsetLike model.persNamePart[addName forename genName persPronouns roleName surname] model.placeStateLike[model.placeNamePart[country placeName settlement]] eventName idno objectName rs
Note

A superset of the naming elements that may appear in datelines, addresses, statements of responsibility, etc.


Appendix B.44 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 orgName persName
Note

This class is used in the content model of elements which reference names of people or organizations.


Appendix B.45 model.noteLike

model.noteLike groups globally-available note-like elements. [3.9. Notes, Annotation, and Indexing]
Moduletei
Used by
Membersnote noteGrp

Appendix B.46 model.objectLike

model.objectLike groups elements which describe objects.
Moduletei
Used by
MemberslistObject object

Appendix B.49 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 handShift orig reg retrace sic supplied surplus unclear]

Appendix B.50 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

Appendix B.51 model.pPart.msdesc

model.pPart.msdesc groups phrase-level elements used in manuscript description. [11. Manuscript Description]
Moduletei
Used by
Membersdimensions material origDate stamp

Appendix B.52 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 handShift orig reg retrace sic supplied surplus unclear

Appendix B.54 model.persNamePart

model.persNamePart groups elements which form part of a personal name. [14.2.1. Personal Names]
Modulenamesdates
Used by
MembersaddName forename genName persPronouns roleName surname

Appendix B.55 model.persStateLike

model.persStateLike groups elements describing changeable characteristics of a person which have a definite duration, for example occupation, residence, or name.
Moduletei
Used by
Membersaffiliation floruit gender persName persPronouns sex
Note

These characteristics of an individual are typically a consequence of their own action or that of others.


Appendix B.56 model.personLike

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

Appendix B.57 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 listBibl msDesc] model.eventLike model.persStateLike[affiliation floruit gender persName persPronouns sex] idno name

Appendix B.59 model.physDescPart

model.physDescPart groups specialized elements forming part of the physical description of a manuscript or similar written source.
Modulemsdescription
Used by
MembershandDesc objectDesc sealDesc

Appendix B.60 model.placeNamePart

model.placeNamePart groups elements which form part of a place name. [14.2.3. Place Names]
Moduletei
Used by
Memberscountry placeName settlement

Appendix B.61 model.placeStateLike

model.placeStateLike groups elements which describe changing states of a place.
Moduletei
Used by
Membersmodel.placeNamePart[country placeName settlement]

Appendix B.62 model.profileDescPart

model.profileDescPart groups elements which may be used inside <profileDesc> and appear multiple times.
Moduletei
Used by
MemberscorrespDesc langUsage listTranspose particDesc settingDesc textClass

Appendix B.63 model.ptrLike

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

Appendix B.64 model.publicationStmtPart.agency

model.publicationStmtPart.agency groups the child elements of a <publicationStmt> element of the TEI header that indicate an authorising agent. [2.2.4. Publication, Distribution, Licensing, etc.]
Moduletei
Used by
Membersauthority 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.


Appendix B.65 model.publicationStmtPart.detail

model.publicationStmtPart.detail groups the agency-specific child elements of the <publicationStmt> element of the TEI header. [2.2.4. Publication, Distribution, Licensing, etc.]
Moduletei
Used by
Membersmodel.ptrLike[ptr ref] address availability date idno pubPlace
Note

A ‘detail’ child element may not occur unless an ‘agency’ child element precedes it.

See also model.publicationStmtPart.agency.


Appendix B.66 model.quoteLike

model.quoteLike groups elements used to directly contain quotations.
Moduletei
Used by
Memberscit quote

Appendix B.67 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 standOff text

Appendix B.68 model.respLike

model.respLike groups elements which are used to indicate intellectual or other significant responsibility, for example within a bibliographic element.
Moduletei
Used by
Membersauthor editor funder principal respStmt sponsor

Appendix B.69 model.segLike

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


Appendix B.70 model.settingPart

model.settingPart groups elements used to describe the setting of a linguistic interaction.
Moduletei
Used by
Memberslocale placeName

Appendix B.71 model.standOffPart


Appendix B.72 model.teiHeaderPart

model.teiHeaderPart groups high level elements which may appear more than once in a TEI header.
Moduletei
Used by
MembersencodingDesc profileDesc

Appendix C Attribute classes


Appendix C.1 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 noteGrp
Attributes
anchored(anchored) indicates whether the copy text shows the exact place of reference for the note.
StatusOptional
Datatypeteidata.truthValue
Defaulttrue
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.
StatusOptional
Datatype1–∞ 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>

Appendix C.2 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] change setting
Attributes
whoindicates the person, or group of people, to whom the element content is ascribed.
StatusOptional
Datatype1–∞ 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.


Appendix C.3 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.
StatusRecommended
Datatypeteidata.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>

Appendix C.4 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
Membersptr ref term
Attributes
cRef(canonical reference) specifies the destination of the pointer by supplying a canonical reference expressed using the scheme defined in a <refsDecl> element in the TEI header
StatusOptional
Datatypeteidata.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.


Appendix C.5 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 origDate time
Attributes
calendarindicates one or more systems or calendars to which the date represented by the content of this element belongs.
StatusOptional
Datatype1–∞ 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="#julian"  when="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.


Appendix C.6 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[addName eventName forename genName name objectName orgName persName placeName roleName surname] affiliation author collection country editor institution pubPlace repository rs settlement] authority catDesc correspDesc date funder material object principal publisher resp respStmt sponsor term time title unitDecl unitDef
Attributes
keyprovides an externally-defined means of identifying the entity (or entities) being named, using a coded value of some kind.
StatusOptional
Datatypeteidata.text
<author>  <name key="Hugo, Victor (1802-1885)"   ref="http://www.idref.fr/026927608">Victor Hugo</name> </author>
Note

The value may be a unique identifier from a database, or any other externally-defined string identifying the referent. No particular syntax is proposed for the values of the key attribute, since its form will depend entirely on practice within a given project.

ref(reference) provides an explicit means of locating a full definition or identity for the entity being named by means of one or more URIs.
StatusOptional
Datatype1–∞ 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.

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


Appendix C.7 att.citeStructurePart

att.citeStructurePart provides attributes for selecting particular elements within a document.
Moduleheader
MembersciteData citeStructure
Attributes
use(use) supplies an XPath selection pattern using the syntax defined in [[undefined XSLT3]]. The XPath pattern is relative to the context given in match, which will either be a sibling attribute in the case of <citeStructure> or on the parent <citeStructure> in the case of <citeData>.
StatusRequired
Datatypeteidata.xpath

Appendix C.8 att.cmc

att.cmc (computer-mediated communication) provides attributes categorizing how the element content was created in a CMC environment.
Moduletei
Membersabbr add addName address affiliation anchor cb choice cit closer corr country date dateline del emph expan foreign forename gap genName head hi idno l label lb listBibl listObject listPerson measure milestone name note noteGrp objectName opener orgName orig p pb persName persPronouns placeName postscript ptr q quote ref reg roleName rs ruby salute seg settlement sic signed surname term time title unclear unit
Attributes
generatedBy(generated by) categorizes how the content of an element was generated in a CMC environment.
StatusOptional
Datatypeteidata.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="event"  generatedBy="system"  who="#system"  rend="color:blue">  <p>   <name type="nickname"    corresp="#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="event"  generatedBy="system">  <p>   <name type="nickname"    corresp="#A08">c_bo</name> betritt    den Raum. </p> </post>
automatic system message in chat: user changes his font color
<post type="event"  generatedBy="system"  rend="color:red">  <p>   <name type="nickname"    corresp="#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="standard"  generatedBy="human"  indentLevel="2"  synch="#t00394407"  who="#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="written"  generatedBy="human"> <!– … main content of posting … –>  <signed generatedBy="template">   <gap reason="signatureContent"/>   <time generatedBy="template">12:01, 12. Jun. 2009 (CEST)</time>  </signed> </post>

Appendix C.9 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
Membersaffiliation author change conversion country date editor eventName floruit funder gender idno licence name objectName orgName origDate origin persName persPronouns placeName precision principal resp seal settlement sex sponsor stamp time title unitDecl unitDef
Attributes
periodsupplies pointers to one or more definitions of named periods of time (typically <category>s, <date>s or <event>s) within which the datable item is understood to have occurred.
StatusOptional
Datatype1–∞ 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.


Appendix C.10 att.datable.custom

att.datable.custom provides attributes for normalization of elements that contain datable events to a custom dating system (i.e. other than the Gregorian used by W3 and ISO). [14.4. Dates]
Modulenamesdates
Membersatt.datable[affiliation author change conversion country date editor eventName floruit funder gender idno licence name objectName orgName origDate origin persName persPronouns placeName precision principal resp seal settlement sex sponsor stamp time title unitDecl unitDef]
Attributes
when-customsupplies the value of a date or time in some custom standard form.
StatusOptional
Datatype1–∞ occurrences of teidata.word separated by whitespace
The following are examples of custom date or time formats that are not valid ISO or W3C format normalizations, normalized to a different dating system
<p>Alhazen died in Cairo on the <date when="1040-03-06"   when-custom="431-06-12"> 12th day of Jumada t-Tania, 430 AH  </date>.</p> <p>The current world will end at the <date when="2012-12-21"   when-custom="13.0.0.0.0">end of B'ak'tun 13</date>.</p> <p>The Battle of Meggidu (<date when-custom="Thutmose_III:23">23rd year of reign of Thutmose III</date>).</p> <p>Esidorus bixit in pace annos LXX plus minus sub <date when-custom="Ind:4-10-11">die XI mensis Octobris indictione IIII</date> </p>
Not all custom date formulations will have Gregorian equivalents.The when-custom attribute and other custom dating are not constrained to a datatype by the TEI, but individual projects are recommended to regularize and document their dating formats.
notBefore-customspecifies the earliest possible date for the event in some custom standard form.
StatusOptional
Datatype1–∞ occurrences of teidata.word separated by whitespace
notAfter-customspecifies the latest possible date for the event in some custom standard form.
StatusOptional
Datatype1–∞ occurrences of teidata.word separated by whitespace
from-customindicates the starting point of the period in some custom standard form.
StatusOptional
Datatype1–∞ occurrences of teidata.word separated by whitespace
<event xml:id="FIRE1"  datingMethod="#julian"  from-custom="1666-09-02"  to-custom="1666-09-05">  <head>The Great Fire of London</head>  <p>The Great Fire of London burned through a large part    of the city of London.</p> </event>
to-customindicates the ending point of the period in some custom standard form.
StatusOptional
Datatype1–∞ occurrences of teidata.word separated by whitespace
datingPointsupplies a pointer to some location defining a named point in time with reference to which the datable item is understood to have occurred
StatusOptional
Datatypeteidata.pointer
datingMethodsupplies a pointer to a <calendar> element or other means of interpreting the values of the custom dating attributes.
StatusOptional
Datatypeteidata.pointer
Contayning the Originall, Antiquity, Increaſe, Moderne eſtate, and deſcription of that Citie, written in the yeare <date when-custom="1598"  calendar="#julian"  datingMethod="#julian">1598</date>. by Iohn Stow Citizen of London.
In this example, the calendar attribute points to a <calendar> element for the Julian calendar, specifying that the text content of the <date> element is a Julian date, and the datingMethod attribute also points to the Julian calendar to indicate that the content of the when-custom attribute value is Julian too.
<date when="1382-06-28"  when-custom="6890-06-20"  datingMethod="#creationOfWorld"> μηνὶ Ἰουνίου εἰς <num>κ</num> ἔτους <num>ςωϞ</num> </date>
In this example, a date is given in a Mediaeval text measured ‘from the creation of the world’, which is normalized (in when) to the Gregorian date, but is also normalized (in when-custom) to a machine-actionable, numeric version of the date from the Creation.
Note

Note that the datingMethod attribute (unlike calendar defined in att.datable) defines the calendar or dating system to which the date described by the parent element is normalized (i.e. in the when-custom or other X-custom attributes), not the calendar of the original date in the element.


Appendix C.11 att.datable.iso

att.datable.iso provides attributes for normalization of elements that contain datable events using the ISO 8601:2004 standard. [3.6.4. Dates and Times 14.4. Dates]
Modulenamesdates
Membersatt.datable[affiliation author change conversion country date editor eventName floruit funder gender idno licence name objectName orgName origDate origin persName persPronouns placeName precision principal resp seal settlement sex sponsor stamp time title unitDecl unitDef]
Attributes
when-isosupplies the value of a date or time in a standard form.
StatusOptional
Datatypeteidata.temporal.iso
The following are examples of ISO date, time, and date & time formats that are not valid W3C format normalizations.
<date when-iso="1996-09-24T07:25+00">Sept. 24th, 1996 at 3:25 in the morning</date> <date when-iso="1996-09-24T03:25-04">Sept. 24th, 1996 at 3:25 in the morning</date> <time when-iso="1999-01-04T20:42-05">4 Jan 1999 at 8:42 pm</time> <time when-iso="1999-W01-1T20,70-05">4 Jan 1999 at 8:42 pm</time> <date when-iso="2006-05-18T10:03">a few minutes after ten in the morning on Thu 18 May</date> <time when-iso="03:00">3 A.M.</time> <time when-iso="14">around two</time> <time when-iso="15,5">half past three</time>
All of the examples of the when attribute in the att.datable.w3c class are also valid with respect to this attribute.
He likes to be punctual. I said <q>  <time when-iso="12">around noon</time> </q>, and he showed up at <time when-iso="12:00:00">12 O'clock</time> on the dot.
The second occurence of <time> could have been encoded with the when attribute, as 12:00:00 is a valid time with respect to the W3C XML Schema Part 2: Datatypes Second Edition specification. The first occurence could not.
notBefore-isospecifies the earliest possible date for the event in standard form, e.g. yyyy-mm-dd.
StatusOptional
Datatypeteidata.temporal.iso
notAfter-isospecifies the latest possible date for the event in standard form, e.g. yyyy-mm-dd.
StatusOptional
Datatypeteidata.temporal.iso
from-isoindicates the starting point of the period in standard form.
StatusOptional
Datatypeteidata.temporal.iso
to-isoindicates the ending point of the period in standard form.
StatusOptional
Datatypeteidata.temporal.iso
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 ISO 8601:2004, using the Gregorian calendar.

If both when-iso and dur-iso are specified, the values should be interpreted as indicating a span of time by its starting time (or date) and duration. That is,
<date when-iso="2007-06-01dur-iso="P8D"/>
indicates the same time period as
<date when-iso="2007-06-01/P8D"/>

In providing a ‘regularized’ form, no claim is made that the form in the source text is incorrect; the regularized form is simply that chosen as the main form for purposes of unifying variant forms under a single heading.


Appendix C.12 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[affiliation author change conversion country date editor eventName floruit funder gender idno licence name objectName orgName origDate origin persName persPronouns placeName precision principal resp seal settlement sex sponsor stamp time title unitDecl unitDef]
Attributes
whensupplies the value of the date or time in a standard form, e.g. yyyy-mm-dd.
StatusOptional
Datatypeteidata.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="#julian"  when="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.
StatusOptional
Datatypeteidata.temporal.w3c
notAfterspecifies the latest possible date for the event in standard form, e.g. yyyy-mm-dd.
StatusOptional
Datatypeteidata.temporal.w3c
fromindicates the starting point of the period in standard form, e.g. yyyy-mm-dd.
StatusOptional
Datatypeteidata.temporal.w3c
toindicates the ending point of the period in standard form, e.g. yyyy-mm-dd.
StatusOptional
Datatypeteidata.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.


Appendix C.13 att.datcat

att.datcat provides attributes that are used to align XML elements or attributes with the appropriate Data Categories (DCs) defined by an external taxonomy, in this way establishing the identity of information containers and values, and providing means of interpreting them. [10.5.2. Lexical View 19.3. Other Atomic Feature Values]
Moduletei
Membersatt.segLike[seg] category taxonomy
Attributes
datcatprovides a pointer to a definition of, and/or general information about, (a) an information container (element or attribute) or (b) a value of an information container (element content or attribute value), by referencing an external taxonomy or ontology. If valueDatcat is present in the immediate context, this attribute takes on role (a), while valueDatcat performs role (b).
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
valueDatcatprovides a definition of, and/or general information about a value of an information container (element content or attribute value), by reference to an external taxonomy or ontology. Used especially where a contrast with datcat is needed.
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
targetDatcatprovides a definition of, and/or general information about, information structure of an object referenced or modeled by the containing element, by reference to an external taxonomy or ontology. This attribute has the characteristics of the datcat attribute, except that it addresses not its containing element, but an object that is being referenced or modeled by its containing element.
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
ExampleThe example below presents the TEI encoding of the name-value pair <part of speech, common noun>, where the name (key) ‘part of speech’ is abbreviated as ‘POS’, and the value, ‘common noun’ is symbolized by ‘NN’. The entire name-value pair is encoded by means of the element <f>. In TEI XML, that element acts as the container, labeled with the name attribute. Its contents may be complex or simple. In the case at hand, the content is the symbol ‘NN’.The datcat attribute relates the feature name (i.e., the key) to the data category ‘part of speech’, while the attribute valueDatcat relates the feature value to the data category common noun. Both these data categories should be defined in an external and preferably open reference taxonomy or ontology.
<fs>  <f name="POS"   datcat="http://hdl.handle.net/11459/CCR_C-396_5a972b93-2294-ab5c-a541-7c344c5f26c3">   <symbol valueDatcat="http://hdl.handle.net/11459/CCR_C-1256_7ec6083c-23d4-224d-6f94-eecbe6861545"    value="NN"/>  </f> <!– … –> </fs>
‘NN’ is the symbol for common noun used e.g. in the CLAWS-7 tagset defined by the University Centre for Computer Corpus Research on Language at the University of Lancaster. The very same data category used for tagging an early version of the British National Corpus, and coming from the BNC Basic (C5) tagset, uses the symbol ‘NN0’ (rather than ‘NN’). Making these values semantically interoperable would be extremely difficult without a human expert if they were not anchored in a single point of an established reference taxonomy of morphosyntactic data categories. In the case at hand, the string http://hdl.handle.net/11459/CCR_C-1256_7ec6083c-23d4-224d-6f94-eecbe6861545 is both a persistent identifier of the data category in question, as well as a pointer to a shared definition of common noun.While the symbols ‘NN’, ‘NN0’, and many others (often coming from languages other than English) are implicitly members of the container category ‘part of speech’, it is sometimes useful not to rely on such an implicit relationship but rather use an explicit identifier for that data category, to distinguish it from other morphosyntactic data categories, such as gender, tense, etc. For that purpose, the above example uses the datcat attribute to reference a definition of part of speech. The reference taxonomy in this example is the CLARIN Concept Registry.If the feature structure markup exemplified above is to be repeated many times in a single document, it is much more efficient to gather the persistent identifiers in a single place and to only reference them, implicitly or directly, from feature structure markup. The following example is much more concise than the one above and relies on the concepts of feature structure declaration and feature value library, discussed in chapter [[undefined FS]].
<fs>  <f name="POSfVal="#commonNoun"/> <!– … –> </fs>
The assumption here is that the relevant feature values are collected in a place that the annotation document in question has access to — preferably, a single document per linguistic resource, for example an <fsdDecl> that is XIncluded as a sibling of <text> or a child of <encodingDesc>; a <taxonomy> available resource-wide (e.g., in a shared header) is also an option.The example below presents an <fvLib> element that collects the relevant feature values (most of them omitted). At the same time, this example shows one way of encoding a tagset, i.e., an established inventory of values of (in the case at hand) morphosyntactic categories.
<fvLib n="POS values">  <symbol xml:id="commonNounvalue="NN"   datcat="http://hdl.handle.net/11459/CCR_C-396_5a972b93-2294-ab5c-a541-7c344c5f26c3"/>  <symbol xml:id="properNounvalue="NP"   datcat="http://hdl.handle.net/11459/CCR_C-1371_fbebd9ec-a7f4-9a36-d6e9-88ee16b944ae"/> <!– … –> </fvLib>
Note that these Guidelines do not prescribe a specific choice between datcat and valueDatcat in such cases. The former is the generic way of referencing a data category, whereas the latter is more specific, in that it references a data category that represents a value. The choice between them comes into play where a single element — or a tight element complex, such as the <f>/<symbol> complex illustrated above — make it necessary or useful to distinguish between the container data category and its value.
ExampleIn the context of dictionaries designed with semantic interoperability in mind, the following example ensures that the <pos> element is interpreted as the same information container as in the case of the example of <f name="POS"> above.
<gramGrp>  <pos datcat="http://hdl.handle.net/11459/CCR_C-396_5a972b93-2294-ab5c-a541-7c344c5f26c3"   valueDatcat="http://hdl.handle.net/11459/CCR_C-1256_7ec6083c-23d4-224d-6f94-eecbe6861545">NN</pos> </gramGrp>
Efficiency of this type of interoperable markup demands that the references to the particular data categories should best be provided in a single place within the dictionary (or a single place within the project), rather than being repeated inside every entry. For the container elements, this can be achieved at the level of <tagUsage>, although here, the valueDatcat attribute should be used, because it is not the <tagUsage> element that is associated with the relevant data category, but rather the element <pos> (or <case>, etc.) that is described by <tagUsage>:
<tagsDecl partial="true"> <!– … –>  <namespace name="http://www.tei-c.org/ns/1.0">   <tagUsage gi="pos"    targetDatcat="http://hdl.handle.net/11459/CCR_C-396_5a972b93-2294-ab5c-a541-7c344c5f26c3">Contains the part of speech.</tagUsage>   <tagUsage gi="case"    targetDatcat="http://hdl.handle.net/11459/CCR_C-1840_9f4e319c-f233-6c90-9117-7270e215f039">Contains information about the grammatical case that the described form is inflected for.</tagUsage> <!– … –>  </namespace> </tagsDecl>
Another possibility is to shorten the URIs by means of the <prefixDef> mechanism, as illustrated below:
<listPrefixDef>  <prefixDef ident="ccrmatchPattern="pos"   replacementPattern="http://hdl.handle.net/11459/CCR_C-396_5a972b93-2294-ab5c-a541-7c344c5f26c3"/>  <prefixDef ident="ccrmatchPattern="adj"   replacementPattern="http://hdl.handle.net/11459/CCR_C-1230_23653c21-fca1-edf8-fd7c-3df2d6499157"/> </listPrefixDef> <!– … –> <entry> <!–…–>  <form>   <orth>isotope</orth>  </form>  <gramGrp>   <pos datcat="ccr:pos"    valueDatcat="ccr:adj">adj</pos>  </gramGrp> <!–…–> </entry>
This mechanism creates implications that are not always wanted, among others, in the case at hand, suggesting that the identifiers ‘pos’ and ‘adj’ belong to a namespace associated with the CLARIN Concept Repository (CCR), whereas that is solely a shorthand mechanism whose scope is the current resource. Documenting this clearly in the header of the dictionary is therefore advised.Yet another possibility is to associate the information about the relationship between a TEI markup element and the data category that it is intended to model already at the level of modeling the dictionary resource, that is, at the level of the ODD, in the <equiv> element that is a child of <elementSpec> or <attDef>.
ExampleThe <taxonomy> element is a handy tool for encoding taxonomies that are later referenced by att.datcat attributes, but it can also act as an intermediary device, for example holding a fragment of an external taxonomy (or ‘flattening’ an external ontology) that is relevant to the project or document at hand. (It is also imaginable that, for the purpose of the project at hand, the local <taxonomy> element combines vocabularies that originate from more than one external taxonomy or ontology.) In such cases, the <taxonomy> creates a local layer of indirection: the att.datcat attributes internal to the resource may reference the <category> elements stored in the header (as well as the <taxonomy> element itself), whereas these same <category> and <taxonomy> elements use att.datcat attributes to reference the original taxonomy or ontology.
<encodingDesc> <!– … –>  <classDecl> <!– … –>   <taxonomy xml:id="UD-SYN"    datcat="https://universaldependencies.org/u/dep/index.html">    <desc>     <term>UD syntactic relations</term>    </desc>    <category xml:id="acl"     valueDatcat="https://universaldependencies.org/u/dep/acl.html">     <catDesc>      <term>acl</term>: Clausal modifier of noun (adjectival clause)</catDesc>    </category>    <category xml:id="acl_relcl"     valueDatcat="https://universaldependencies.org/u/dep/acl-relcl.html">     <catDesc>      <term>acl:relcl</term>: relative clause modifier</catDesc>    </category>    <category xml:id="advcl"     valueDatcat="https://universaldependencies.org/u/dep/advcl.html">     <catDesc>      <term>advcl</term>: Adverbial clause modifier</catDesc>    </category> <!– … –>   </taxonomy>  </classDecl> </encodingDesc>
The above fragment was excerpted from the GB subset of the ParlaMint project in April 2023, and enriched with att.datcat attributes for the purpose of illustrating the mechanism described here.Note that, in the ideal case, the values of att.datcat attributes should be persistent identifiers, and that the addressing scheme of Universal Dependencies is treated here as persistent for the sake of illustration. Note also that the contrast between datcat used on <taxonomy> on the one hand, and the valueDatcat used on <category> on the other, is not mandatory: both kinds of relations could be encoded by means of the generic datcat attribute, but using the former for the container and the latter for the content is more user-friendly.
ExampleThe targetDatcat attribute is designed to be used in, e.g., feature structure declarations, and is analogous to the targetLang attribute of the att.pointing class, in that it describes the object that is being referenced, rather than the referencing object.
<fDecl name="POS"  targetDatcat="http://hdl.handle.net/11459/CCR_C-396_5a972b93-2294-ab5c-a541-7c344c5f26c3">  <fDescr>part of speech (morphosyntactic category)</fDescr>  <vRange>   <vAlt>    <symbol value="NN"     datcat="http://hdl.handle.net/11459/CCR_C-1256_7ec6083c-23d4-224d-6f94-eecbe6861545"/>    <symbol value="NP"     datcat="http://hdl.handle.net/11459/CCR_C-1371_fbebd9ec-a7f4-9a36-d6e9-88ee16b944ae"/> <!– … –>   </vAlt>  </vRange> </fDecl>
Above, the <fDecl> uses targetDatcat, because if it were to use datcat, it would be asserting that it is an instance of the container data category part of speech, whereas it is not — it models a container (<f>) that encodes a part of speech. Note also that it is the <f> that is modeled above, not its values, which are used as direct references to data categories; hence the use of datcat in the <symbol> element.
ExampleThe att.datcat attributes can be used for any sort of taxonomies. The example below illustrates their usefulness for describing usage domain labels in dictionaries on the example of the Diccionario da Lingua Portugueza by António de Morais Silva, retro-digitised in the MORDigital project.
<!– in the dictionary header –><encodingDesc>  <classDecl>   <taxonomy xml:id="domains"> <!–…–>    <category xml:id="domain.medical_and_health_sciences">     <catDesc xml:lang="en">Medical and Health Sciences</catDesc>     <catDesc xml:lang="pt">Ciências Médicas e da Saúde</catDesc>     <category xml:id="domain.medical_and_health_sciences.medicine"      valueDatcat="https://vocabs.rossio.fcsh.unl.pt/pub/morais_domains/pt/page/0025">      <catDesc xml:lang="en">       <term>Medicine</term>       <gloss> <!–…–>       </gloss>      </catDesc>      <catDesc xml:lang="pt">       <term>Medicina</term>       <gloss> <!–…–>       </gloss>      </catDesc>     </category>    </category> <!–…–>   </taxonomy>  </classDecl> </encodingDesc> <!– inside an <entry> element: –> <usg type="domain"  valueDatcat="#domain.medical_and_health_sciences.medicine">Med.</usg>
In the Morais dictionary, the relevant domain labels are in the header, getting referenced inside the dictionary, from <usg> elements. The vocabulary used for dictionary-internal labelling is in turn anchored in the MorDigital controlled vocabulary service of the NOVA University of Lisbon – School of Social Sciences and Humanities (NOVA FCSH).
Note

The TEI Abstract Model can be expressed as a hierarchy of attribute-value matrices (AVMs) of various types and of various levels of complexity, nested or grouped in various ways. At the most abstract level, an AVM consists of an information container and the value (contents) of that container.

A simple example of an XML serialization of such structures is, on the one hand, the opening and closing tags that delimit and name the container, and, on the other, the content enclosed by the two tags that constitues the value. An analogous example is an attribute name and the value of that attribute.

In a TEI XML example of two equivalent serializations expressing the name-value pair <part-of-speech,common-noun>, namely <pos>commonNoun</pos> and pos="common-noun", one would classify the element <pos> and the attribute pos as containers (mapping onto the first member of the relevant name-value pair), while the character data content of <pos> or the value of pos would be seen as mapping onto the second member of the pair.

The att.datcat class provides means of addressing the containers and their values, while at the same time providing a way to interpret them in the context of external taxonomies or ontologies. Aligning e.g. both the <pos> element and the pos attribute with the same value of an external reference point (i.e., an entry in an agreed taxonomy) affirms the identity of the concept serialised by both the element container and the attribute container, and optionally provides a definition of that concept (in the case at hand, the concept part of speech).

The value of the att.datcat attributes should be a PID (persistent identifier) that points to a specific — and, ideally, shared — taxonomy or ontology. Among the resources that can, to a lesser or greater extent, be used as inventories of (more or less) standardized linguistic categories are the GOLD ontology, CLARIN CCR, OLiA, or TermWeb's DatCatInfo, and also the Universal Dependencies inventory, on the assumption that its URIs are going to persist. It is imaginable that a project may choose to address a local taxonomy store instead, but this risks losing the advantage of interchangeability with other projects.

Historically, datcat and valueDatcat originate from the (now obsolete) ISO 12620:2009 standard, describing the data model and procedures for a Data Category Registry (DCR). The current version of that standard, ISO 12620-1, does not standardize the serialization of pointers, merely mentioning the TEI att.datcat as an example.

Note that no constraint prevents the occurrence of a combination of att.datcat attributes: the <fDecl> element, which is a natural bearer of the targetDatcat attribute, is an instance of a specific modeling element, and, in principle, could be semantically fixed by an appropriate reference taxonomy of modeling devices.


Appendix C.14 att.declarable

att.declarable provides attributes for those elements in the TEI header which may be independently selected by means of the special purpose decls attribute. [16.3. Associating Contextual Information with a Text]
Moduletei
Membersavailability bibl correction correspDesc editorialDecl geoDecl hyphenation langUsage listBibl listObject listPerson normalization particDesc projectDesc punctuation quotation refsDecl settingDesc sourceDesc textClass
Attributes
defaultindicates whether or not this element is selected by default when its parent is selected.
StatusOptional
Datatypeteidata.truthValue
Legal values are:
true
This element is selected if its parent is selected
false
This element can only be selected explicitly, unless it is the only one of its kind, in which case it is selected if its parent is selected.[Default]
Note

The rules governing the association of declarable elements with individual parts of a TEI text are fully defined in chapter 16.3. Associating Contextual Information with a Text. Only one element of a particular type may have a default attribute with a value of true.


Appendix C.15 att.declaring

att.declaring provides attributes for elements which may be independently associated with a particular declarable element within the header, thus overriding the inherited default for that element. [16.3. Associating Contextual Information with a Text]
Moduletei
Membersbody div facsimile listAnnotation msDesc object p ptr ref standOff surface term text
Attributes
decls(declarations) identifies one or more declarable elements within the header, which are understood to apply to the element bearing this attribute and its content.
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
Note

The rules governing the association of declarable elements with individual parts of a TEI text are fully defined in chapter 16.3. Associating Contextual Information with a Text.


Appendix C.16 att.dimensions

att.dimensions provides attributes for describing the size of physical objects.
Moduletei
Membersadd date del dimensions ellipsis floruit gap height origDate retrace space subst supplied surplus time unclear width
Attributes
unitnames the unit used for the measurement
StatusOptional
Datatypeteidata.enumerated
Suggested values include:
cm
(centimetres)
mm
(millimetres)
in
(inches)
line
lines of text
char
(characters) characters of text
quantityspecifies the length in the units specified
StatusOptional
Datatypeteidata.numeric
extentindicates the size of the object concerned using a project-specific vocabulary combining quantity and units in a single string of words.
StatusOptional
Datatypeteidata.text
<gap extent="5 words"/>
<height extent="half the page"/>
precisioncharacterizes the precision of the values specified by the other attributes.
StatusOptional
Datatypeteidata.certainty
scopewhere the measurement summarizes more than one observation, specifies the applicability of this measurement.
StatusOptional
Datatypeteidata.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.

Appendix C.17 att.docStatus

att.docStatus provides attributes for use on metadata elements describing the status of a document.
Moduletei
Membersbibl change msDesc object revisionDesc
Attributes
statusdescribes the status of a document either currently or, when associated with a dated element, at the time indicated.
StatusOptional
Datatypeteidata.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>

Appendix C.18 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 retrace rt subst] affiliation corr date eventName expan floruit gap gender name objectName orgName origDate origin persName persPronouns person placeName reg sex supplied surplus time unclear
Attributes
evidenceindicates the nature of the evidence supporting the reliability or accuracy of the intervention or interpretation.
StatusOptional
Datatype1–∞ occurrences of teidata.enumerated separated by whitespace
Suggested values include:
internal
there is internal evidence to support the intervention.
external
there is external evidence to support the intervention.
conjecture
the intervention or interpretation has been made by the editor, cataloguer, or scholar on the basis of their expertise.
instantindicates whether this is an instant revision or not.
StatusOptional
Datatypeteidata.xTruthValue
Defaultfalse
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.


Appendix C.19 att.edition

att.edition provides attributes identifying the source edition from which some encoded feature derives.
Moduletei
Membersbibl cb lb milestone pb refState
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.
StatusOptional
Datatype1–∞ 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.
StatusOptional
Datatype1–∞ 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>

Appendix C.20 att.formula

att.formula provides attributes for defining a mathematical formula. [2.3.9. The Unit Declaration]
Moduletei
Membersconversion
Attributes
formulaA formula is provided to describe a mathematical calculation such as a conversion between measurement systems.
StatusOptional
Datatypeteidata.xpath
Example
<encodingDesc>  <unitDecl>   <unitDef xml:id="stadiumtype="linear">    <label>stadium</label>    <placeName ref="#rome"/>    <conversion fromUnit="#pes"     toUnit="#stadiumformula="$fromUnit * 625"/>    <desc>The stadium was a Roman unit of linear measurement equivalent to 625 pedes, or Roman feet.</desc>   </unitDef>  </unitDecl> </encodingDesc>
Example
<encodingDesc>  <unitDecl>   <unitDef xml:id="wmwtype="power">    <label>whatmeworry</label>    <conversion fromUnit="#hpk"     toUnit="#wmwformula="$fromUnit * 1"/>    <desc>In the Potrzebie system of measures as introduced by Donald Knuth, the whatmeworry unit of power is equivalent to one hah per kovac.</desc>   </unitDef>   <unitDef xml:id="kwmwtype="power">    <label>kilowhatmeworry</label>    <conversion fromUnit="#wmw"     toUnit="#kwmwformula="$fromUnit div 1000"/>    <desc>The kilowhatmeworry is equivalent to 1000 whatmeworries.</desc>   </unitDef>   <unitDef xml:id="aptype="power">    <label>kilowhatmeworry</label>    <conversion fromUnit="#kwmw"     toUnit="#apformula="$fromUnit div 100"/>    <desc>One unit of aeolipower (A.P.) is equivalent to 100 kilowhatmeworries.</desc>   </unitDef>  </unitDecl> </encodingDesc>
Example
<conversion fromUnit="#furlongsPerFortnight"  toUnit="#milesPerHour"  formula="$fromUnit cast as xs:decimal * 0.000372"/>
Example
<conversion fromUnit="#deciday"  toUnit="hour"  formula="$fromUnit cast as xs:decimal * 144 div 60"/>
Note

This attribute class provides formula for use in defining a value used in mathematical calculation. It can be used to store a mathematical operation needed to convert from one system of measurement to another. We use the teidata.xpath datatype to express this value in order to communicate mathematical operations on an XML node or nodes. The $fromUnit variable notation simplifies referencing of the fromUnit attribute on the parent <conversion> element. Note that ‘div’ is required to express the division operator in XPath.


Appendix C.21 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] att.segLike[seg] 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.
StatusOptional
Datatypeteidata.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.


Appendix C.22 att.global

att.global provides attributes common to all elements in the TEI encoding scheme. [1.3.1.1. Global Attributes]
Moduletei
MembersTEI abbr add addName addrLine address affiliation anchor annotation author authority availability bibl body catDesc category cb certainty change choice cit citeData citeStructure classDecl closer collation collection condition conversion corr correction correspAction correspContext correspDesc country date dateline del dimensions div edition editionStmt editor editorialDecl ellipsis emph empty encodingDesc eventName expan extent facsimile fileDesc floruit foreign forename funder fw gap genName gender geoDecl handDesc handNote handShift head height hi history hyphenation idno institution keywords l label langUsage language lb licence listAnnotation listBibl listObject listPerson listPrefixDef listTranspose locale material measure metamark milestone msContents msDesc msIdentifier msItem name normalization note noteGrp notesStmt object objectDesc objectIdentifier objectName opener orgName orig origDate origin p particDesc path pb persName persPronouns person physDesc placeName postCode postscript precision prefixDef principal profileDesc projectDesc ptr pubPlace publicationStmt publisher punctuation q quotation quote rb ref refState refsDecl reg relatedItem repository resp respStmt respons retrace revisionDesc roleName rs rt ruby salute seal sealDesc seg series setting settingDesc settlement sex sic signed sourceDesc space sponsor stamp standOff street subst summary supplied support supportDesc surface surname surplus taxonomy teiHeader term text textClass textLang time title titleStmt transpose unclear unit unitDecl unitDef width
Attributes
xml:id(identifier) provides a unique identifier for the element bearing the attribute.
StatusOptional
DatatypeID
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.
StatusOptional
Datatypeteidata.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.
StatusOptional
Datatypeteidata.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.
StatusOptional
Datatypeteidata.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-05"      to="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.
StatusOptional
Datatypeteidata.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.


Appendix C.23 att.global.change

att.global.change provides attributes allowing its member elements to specify one or more states or revision campaigns with which they are associated.
Moduletranscr
Membersatt.global[TEI abbr add addName addrLine address affiliation anchor annotation author authority availability bibl body catDesc category cb certainty change choice cit citeData citeStructure classDecl closer collation collection condition conversion corr correction correspAction correspContext correspDesc country date dateline del dimensions div edition editionStmt editor editorialDecl ellipsis emph empty encodingDesc eventName expan extent facsimile fileDesc floruit foreign forename funder fw gap genName gender geoDecl handDesc handNote handShift head height hi history hyphenation idno institution keywords l label langUsage language lb licence listAnnotation listBibl listObject listPerson listPrefixDef listTranspose locale material measure metamark milestone msContents msDesc msIdentifier msItem name normalization note noteGrp notesStmt object objectDesc objectIdentifier objectName opener orgName orig origDate origin p particDesc path pb persName persPronouns person physDesc placeName postCode postscript precision prefixDef principal profileDesc projectDesc ptr pubPlace publicationStmt publisher punctuation q quotation quote rb ref refState refsDecl reg relatedItem repository resp respStmt respons retrace revisionDesc roleName rs rt ruby salute seal sealDesc seg series setting settingDesc settlement sex sic signed sourceDesc space sponsor stamp standOff street subst summary supplied support supportDesc surface surname surplus taxonomy teiHeader term text textClass textLang time title titleStmt transpose unclear unit unitDecl unitDef width]
Attributes
changepoints to one or more <change> elements documenting a state or revision campaign to which the element bearing this attribute and its children have been assigned by the encoder.
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace

Appendix C.24 att.global.facs

att.global.facs provides attributes used to express correspondence between an element and all or part of a facsimile image or surface. [12.1. Digital Facsimiles]
Moduletranscr
Membersatt.global[TEI abbr add addName addrLine address affiliation anchor annotation author authority availability bibl body catDesc category cb certainty change choice cit citeData citeStructure classDecl closer collation collection condition conversion corr correction correspAction correspContext correspDesc country date dateline del dimensions div edition editionStmt editor editorialDecl ellipsis emph empty encodingDesc eventName expan extent facsimile fileDesc floruit foreign forename funder fw gap genName gender geoDecl handDesc handNote handShift head height hi history hyphenation idno institution keywords l label langUsage language lb licence listAnnotation listBibl listObject listPerson listPrefixDef listTranspose locale material measure metamark milestone msContents msDesc msIdentifier msItem name normalization note noteGrp notesStmt object objectDesc objectIdentifier objectName opener orgName orig origDate origin p particDesc path pb persName persPronouns person physDesc placeName postCode postscript precision prefixDef principal profileDesc projectDesc ptr pubPlace publicationStmt publisher punctuation q quotation quote rb ref refState refsDecl reg relatedItem repository resp respStmt respons retrace revisionDesc roleName rs rt ruby salute seal sealDesc seg series setting settingDesc settlement sex sic signed sourceDesc space sponsor stamp standOff street subst summary supplied support supportDesc surface surname surplus taxonomy teiHeader term text textClass textLang time title titleStmt transpose unclear unit unitDecl unitDef width]
Attributes
facs(facsimile) points to one or more images, portions of an image, or surfaces which correspond to the current element.
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace

Appendix C.25 att.global.linking

att.global.linking provides a set of attributes for hypertextual linking. [17. Linking, Segmentation, and Alignment]
Modulelinking
Membersatt.global[TEI abbr add addName addrLine address affiliation anchor annotation author authority availability bibl body catDesc category cb certainty change choice cit citeData citeStructure classDecl closer collation collection condition conversion corr correction correspAction correspContext correspDesc country date dateline del dimensions div edition editionStmt editor editorialDecl ellipsis emph empty encodingDesc eventName expan extent facsimile fileDesc floruit foreign forename funder fw gap genName gender geoDecl handDesc handNote handShift head height hi history hyphenation idno institution keywords l label langUsage language lb licence listAnnotation listBibl listObject listPerson listPrefixDef listTranspose locale material measure metamark milestone msContents msDesc msIdentifier msItem name normalization note noteGrp notesStmt object objectDesc objectIdentifier objectName opener orgName orig origDate origin p particDesc path pb persName persPronouns person physDesc placeName postCode postscript precision prefixDef principal profileDesc projectDesc ptr pubPlace publicationStmt publisher punctuation q quotation quote rb ref refState refsDecl reg relatedItem repository resp respStmt respons retrace revisionDesc roleName rs rt ruby salute seal sealDesc seg series setting settingDesc settlement sex sic signed sourceDesc space sponsor stamp standOff street subst summary supplied support supportDesc surface surname surplus taxonomy teiHeader term text textClass textLang time title titleStmt transpose unclear unit unitDecl unitDef width]
Attributes
corresp(corresponds) points to elements that correspond to the current element in some way.
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
<group>  <text xml:id="t1-g1-t1"   xml: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-t2"   xml: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 <text>s, 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.
synch(synchronous) points to elements that are synchronous with the current element.
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
sameAspoints to an element that is the same as the current element.
StatusOptional
Datatypeteidata.pointer
copyOfpoints to an element of which the current element is a copy.
StatusOptional
Datatypeteidata.pointer
Note

Any content of the current element should be ignored. Its true content is that of the element being pointed at.

nextpoints to the next element of a virtual aggregate of which the current element is part.
StatusOptional
Datatypeteidata.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.
StatusOptional
Datatypeteidata.pointer
Note

It is recommended that the element indicated be of the same type as the element bearing this attribute.

excludepoints to elements that are in exclusive alternation with the current element.
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
selectselects one or more alternants; if one alternant is selected, the ambiguity or uncertainty is marked as resolved. If more than one alternant is selected, the degree of ambiguity or uncertainty is marked as reduced by the number of alternants not selected.
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
Note

This attribute should be placed on an element which is superordinate to all of the alternants from which the selection is being made.


Appendix C.26 att.global.rendition

att.global.rendition provides rendering attributes common to all elements in the TEI encoding scheme. [1.3.1.1.3. Rendition Indicators]
Moduletei
Membersatt.global[TEI abbr add addName addrLine address affiliation anchor annotation author authority availability bibl body catDesc category cb certainty change choice cit citeData citeStructure classDecl closer collation collection condition conversion corr correction correspAction correspContext correspDesc country date dateline del dimensions div edition editionStmt editor editorialDecl ellipsis emph empty encodingDesc eventName expan extent facsimile fileDesc floruit foreign forename funder fw gap genName gender geoDecl handDesc handNote handShift head height hi history hyphenation idno institution keywords l label langUsage language lb licence listAnnotation listBibl listObject listPerson listPrefixDef listTranspose locale material measure metamark milestone msContents msDesc msIdentifier msItem name normalization note noteGrp notesStmt object objectDesc objectIdentifier objectName opener orgName orig origDate origin p particDesc path pb persName persPronouns person physDesc placeName postCode postscript precision prefixDef principal profileDesc projectDesc ptr pubPlace publicationStmt publisher punctuation q quotation quote rb ref refState refsDecl reg relatedItem repository resp respStmt respons retrace revisionDesc roleName rs rt ruby salute seal sealDesc seg series setting settingDesc settlement sex sic signed sourceDesc space sponsor stamp standOff street subst summary supplied support supportDesc surface surname surplus taxonomy teiHeader term text textClass textLang time title titleStmt transpose unclear unit unitDecl unitDef width]
Attributes
rend(rendition) indicates how the element in question was rendered or presented in the source text.
StatusOptional
Datatype1–∞ occurrences of teidata.word separated by whitespace
<head rend="align(center) case(allcaps)">  <lb/>To The <lb/>Duchesse <lb/>of <lb/>Newcastle, <lb/>On Her <lb/>  <hi rend="case(mixed)">New Blazing-World</hi>. </head>
Note

These Guidelines make no binding recommendations for the values of the rend attribute; the characteristics of visual presentation vary too much from text to text and the decision to record or ignore individual characteristics varies too much from project to project. Some potentially useful conventions are noted from time to time at appropriate points in the Guidelines. The values of the rend attribute are a set of sequence-indeterminate individual tokens separated by whitespace.

stylecontains an expression in some formal style definition language which defines the rendering or presentation used for this element in the source text
StatusOptional
Datatypeteidata.text
<head style="text-align: center; font-variant: small-caps">  <lb/>To The <lb/>Duchesse <lb/>of <lb/>Newcastle, <lb/>On Her <lb/>  <hi style="font-variant: normal">New Blazing-World</hi>. </head>
Note

Unlike the attribute values of rend, which uses whitespace as a separator, the style attribute may contain whitespace. This attribute is intended for recording inline stylistic information concerning the source, not any particular output.

The formal language in which values for this attribute are expressed may be specified using the <styleDefDecl> element in the TEI header.

If style and rendition are both present on an element, then style overrides or complements rendition. style should not be used in conjunction with rend, because the latter does not employ a formal style definition language.

renditionpoints to a description of the rendering or presentation used for this element in the source text.
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
<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="sc"  scheme="css">font-variant: small-caps</rendition> <rendition xml:id="normal"  scheme="css">font-variant: normal</rendition> <rendition xml:id="ac"  scheme="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.


Appendix C.27 att.global.responsibility

att.global.responsibility provides attributes indicating the agent responsible for some aspect of the text, the markup or something asserted by the markup, and the degree of certainty associated with it. [1.3.1.1.4. Sources, certainty, and responsibility 3.5. Simple Editorial Changes 12.3.2.2. Hand, Responsibility, and Certainty Attributes 18.3. Spans and Interpretations 14.1.1. Linking Names and Their Referents]
Moduletei
Membersatt.global[TEI abbr add addName addrLine address affiliation anchor annotation author authority availability bibl body catDesc category cb certainty change choice cit citeData citeStructure classDecl closer collation collection condition conversion corr correction correspAction correspContext correspDesc country date dateline del dimensions div edition editionStmt editor editorialDecl ellipsis emph empty encodingDesc eventName expan extent facsimile fileDesc floruit foreign forename funder fw gap genName gender geoDecl handDesc handNote handShift head height hi history hyphenation idno institution keywords l label langUsage language lb licence listAnnotation listBibl listObject listPerson listPrefixDef listTranspose locale material measure metamark milestone msContents msDesc msIdentifier msItem name normalization note noteGrp notesStmt object objectDesc objectIdentifier objectName opener orgName orig origDate origin p particDesc path pb persName persPronouns person physDesc placeName postCode postscript precision prefixDef principal profileDesc projectDesc ptr pubPlace publicationStmt publisher punctuation q quotation quote rb ref refState refsDecl reg relatedItem repository resp respStmt respons retrace revisionDesc roleName rs rt ruby salute seal sealDesc seg series setting settingDesc settlement sex sic signed sourceDesc space sponsor stamp standOff street subst summary supplied support supportDesc surface surname surplus taxonomy teiHeader term text textClass textLang time title titleStmt transpose unclear unit unitDecl unitDef width]
Attributes
cert(certainty) signifies the degree of certainty associated with the intervention or interpretation.
StatusOptional
Datatypeteidata.probCert
resp(responsible party) indicates the agency responsible for the intervention or interpretation, for example an editor or transcriber.
StatusOptional
Datatype1–∞ 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 <respStmt>s 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>

Appendix C.28 att.global.source

att.global.source provides attributes used by elements to point to an external source. [1.3.1.1.4. Sources, certainty, and responsibility 3.3.3. Quotation 8.3.4. Writing]
Moduletei
Membersatt.global[TEI abbr add addName addrLine address affiliation anchor annotation author authority availability bibl body catDesc category cb certainty change choice cit citeData citeStructure classDecl closer collation collection condition conversion corr correction correspAction correspContext correspDesc country date dateline del dimensions div edition editionStmt editor editorialDecl ellipsis emph empty encodingDesc eventName expan extent facsimile fileDesc floruit foreign forename funder fw gap genName gender geoDecl handDesc handNote handShift head height hi history hyphenation idno institution keywords l label langUsage language lb licence listAnnotation listBibl listObject listPerson listPrefixDef listTranspose locale material measure metamark milestone msContents msDesc msIdentifier msItem name normalization note noteGrp notesStmt object objectDesc objectIdentifier objectName opener orgName orig origDate origin p particDesc path pb persName persPronouns person physDesc placeName postCode postscript precision prefixDef principal profileDesc projectDesc ptr pubPlace publicationStmt publisher punctuation q quotation quote rb ref refState refsDecl reg relatedItem repository resp respStmt respons retrace revisionDesc roleName rs rt ruby salute seal sealDesc seg series setting settingDesc settlement sex sic signed sourceDesc space sponsor stamp standOff street subst summary supplied support supportDesc surface surname surplus taxonomy teiHeader term text textClass textLang time title titleStmt transpose unclear unit unitDecl unitDef width]
Attributes
sourcespecifies the source from which some aspect of this element is drawn.
StatusOptional
Datatype1–∞ 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.

Appendix C.29 att.locatable

att.locatable provides attributes for referencing locations by pointing to entries in a canonical list of places. [2.3.9. The Unit Declaration 14.3.4.3. States, Traits, and Events]
Moduletei
Membersconversion
Attributes
whereindicates one or more locations by pointing to a <place> element or other canonical description.
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace

Appendix C.30 att.measurement

att.measurement provides attributes to represent a regularized or normalized measurement.
Moduletei
Membersmeasure unit
Attributes
unit(unit) indicates the units used for the measurement, usually using the standard symbol for the desired units.
StatusOptional
Datatypeteidata.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.
StatusOptional
Datatypeteidata.pointer
quantity(quantity) specifies the number of the specified units that comprise the measurement
StatusOptional
Datatypeteidata.numeric
commodity(commodity) indicates the substance that is being measured
StatusOptional
Datatype1–∞ 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="@unit" role="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.


Appendix C.31 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 refState
Attributes
unitprovides a conventional name for the kind of section changing at this milestone.
StatusRequired
Datatypeteidata.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="23"  ed="La"  unit="Dreissiger"/><milestone n="24"  ed="AV"  unit="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.


Appendix C.32 att.msClass

att.msClass provides attributes to indicate text type or classification. [11.6. Intellectual Content 11.6.1. The msItem and msItemStruct Elements]
Modulemsdescription
MembersmsContents msItem
Attributes
classidentifies the text types or classifications applicable to this item by pointing to other elements or resources defining the classification concerned.
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace

Appendix C.33 att.msExcerpt

att.msExcerpt (manuscript excerpt) provides attributes used to describe excerpts from a manuscript placed in a description thereof. [11.6. Intellectual Content]
Modulemsdescription
MembersmsContents msItem quote
Attributes
defectiveindicates whether the passage being quoted is defective, i.e. incomplete through loss or damage.
StatusOptional
Datatypeteidata.xTruthValue
Note

In the case of an incipit, indicates whether the incipit as given is defective, i.e. the first words of the text as preserved, as opposed to the first words of the work itself. In the case of an explicit, indicates whether the explicit as given is defective, i.e. the final words of the text as preserved, as opposed to what the closing words would have been had the text of the work been whole.


Appendix C.34 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[addName eventName forename genName name objectName orgName persName placeName roleName surname] affiliation author collection country editor institution pubPlace repository rs settlement
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.
StatusOptional
Datatype1–∞ 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.
StatusOptional
Datatype1–∞ 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.


Appendix C.35 att.notated

att.notated provides attributes to indicate any specialised notation used for element content.
Moduletei
MemberslistAnnotation quote seg
Attributes
notationnames the notation used for the content of the element.
StatusOptional
Datatypeteidata.enumerated

Appendix C.36 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.
StatusRequired
Datatypeteidata.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.
StatusRequired
Datatypeteidata.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.


Appendix C.37 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
MembersaddName eventName forename genName name objectName orgName persName placeName roleName surname
Attributes
fullindicates whether the name component is given in full, as an abbreviation or simply as an initial.
StatusOptional
Datatypeteidata.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.
StatusOptional
Datatypeteidata.count

Appendix C.38 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 fw head label metamark note noteGrp rt
Attributes
placespecifies where this item is placed.
StatusRecommended
Datatype1–∞ occurrences of teidata.enumerated separated by whitespace
Suggested values include:
top
at the top of the page
bottom
at the foot of the page
margin
in the margin (left, right, or both)
opposite
on the opposite, i.e. facing, page
overleaf
on the other side of the leaf
above
above the line
right
to the right, e.g. to the right of a vertical line of text, or to the right of a figure
below
below the line
left
to the left, e.g. to the left of a vertical line of text, or to the left of a figure
end
at the end of e.g. chapter or volume.
inline
within the body of the text.
inspace
in a predefined space, for example left by an earlier scribe.
<add place="margin">[An addition written in the margin]</add> <add place="bottom opposite">[An addition written at the foot of the current page and also on the facing page]</add>
<note place="bottom">Ibid, p.7</note>

Appendix C.39 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
Membersannotation licence note noteGrp ptr ref term
Attributes
targetLangspecifies the language of the content to be found at the destination referenced by target, using a ‘language tag’ generated according to BCP 47.
StatusOptional
Datatypeteidata.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-head"   type="tuv"   targetLang="pl"/>  <ptr xml:id="pol-swh_aln_2.1.2-ptr"   target="swh/UDHR/text.xml#swh_txt_1-head"   type="tuv"   targetLang="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
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
Note

One or more syntactically valid URI references, separated by whitespace. Because whitespace is used to separate URIs, no whitespace is permitted inside a single URI. If a whitespace character is required in a URI, it should be escaped with the normal mechanism, e.g. TEI%20Consortium.

evaluate(evaluate) specifies the intended meaning when the target of a pointer is itself a pointer.
StatusOptional
Datatypeteidata.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.


Appendix C.40 att.ranging

att.ranging provides attributes for describing numerical ranges.
Moduletei
Membersatt.dimensions[add date del dimensions ellipsis floruit gap height origDate retrace space subst supplied surplus time unclear width] measure precision
Attributes
atLeastgives a minimum estimated value for the approximate measurement.
StatusOptional
Datatypeteidata.numeric
atMostgives a maximum estimated value for the approximate measurement.
StatusOptional
Datatypeteidata.numeric
minwhere the measurement summarizes more than one observation or a range, supplies the minimum value observed.
StatusOptional
Datatypeteidata.numeric
maxwhere the measurement summarizes more than one observation or a range, supplies the maximum value observed.
StatusOptional
Datatypeteidata.numeric
confidencespecifies the degree of statistical confidence (between zero and one) that a value falls within the range specified by min and max, or the proportion of observed values that fall within that range.
StatusOptional
Datatypeteidata.probability
Example
The MS. was lost in transmission by mail from <del rend="overstrike">  <gap reason="illegible"   extent="one or two lettersatLeast="1atMost="2unit="chars"/> </del> Philadelphia to the Graphic office, New York.
Example
Americares has been supporting the health sector in Eastern Europe since 1986, and since 1992 has provided <measure atLeast="120000000unit="USD"  commodity="currency">more than $120m</measure> in aid to Ukrainians.

Appendix C.41 att.scoping

att.scoping provides attributes for selecting particular elements within a document.
Moduletei
Memberscertainty precision respons
Attributes
targetpoints at one or more sets of zero or more elements each.
StatusOptional
Datatype1–∞ occurrences of teidata.pointer separated by whitespace
Elizabeth went to <persName xml:id="ESSEX">Essex</persName> <certainty target="#ESSEX"  locus="name"  degree="0.6"/>
matchsupplies an XPath selection pattern using the syntax defined in [[undefined XSLT3]] which identifies a set of nodes, selected within the context identified by the target attribute if this is supplied, or within the context of the parent element if it is not.
StatusOptional
Datatypeteidata.xpath
<gap reason="cancelled">  <certainty match="@reason"   locus="value"   cert="low"/> </gap>
Note

The semantics of this element apply to the nodeset identified by the value of the target attribute, possibly modified by the value of the match attribute. If more than one identifier is given, the implication is that all elements (or nodesets) are intended. The match attribute may also be used as a means of identifying groups of elements.

If target and match are present, target selects an element and the XPath expression in match is evaluated in the context of that element. If neither attribute is present, the expression applies to its parent element. If only target is given, the expression refers to the selected element or nodeset. If only match is given, the XPath expression is evaluated in the context of the parent element of the bearing element.

Note that the value of the target attribute may include an XPointer expression including an XPath expression (see 17.2.4. TEI XPointer Schemes).


Appendix C.42 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 correspAction idno listBibl listObject listPerson msDesc object person term
Attributes
sortKeysupplies the sort key for this element in an index, list or group which contains it.
StatusOptional
Datatypeteidata.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.


Appendix C.43 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 metamark milestone pb retrace
Attributes
spanToindicates the end of a span initiated by the element bearing this attribute.
StatusOptional
Datatypeteidata.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.


Appendix C.44 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
Membersellipsis gap
Attributes
startindicates the location within a temporal alignment at which this element begins.
StatusOptional
Datatypeteidata.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.
StatusOptional
Datatypeteidata.pointer
Note

If no value is supplied, the element is assumed to precede the immediately following element at the same hierarchic level.


Appendix C.45 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 retrace rt 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.
StatusOptional
Datatypeteidata.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.
StatusOptional
Datatypeteidata.enumerated
seq(sequence) assigns a sequence number related to the order in which the encoded features carrying this attribute are believed to have occurred.
StatusOptional
Datatypeteidata.count

Appendix C.46 att.typed

att.typed provides attributes that can be used to classify or subclassify elements in any way. [1.3.1. Attribute Classes 18.1.1. Words and Above 3.6.1. Referring Strings 3.7. Simple Links and Cross-References 3.6.5. Abbreviations and Their Expansions 3.13.1. Core Tags for Verse 7.2.5. Speech Contents 4.1.1. Un-numbered Divisions 4.1.2. Numbered Divisions 4.2.1. Headings and Trailers 4.4. Virtual Divisions 14.3.2.3. Personal Relationships 12.3.1.1. Core Elements for Transcriptional Work 17.1.1. Pointers and Links 17.3. Blocks, Segments, and Anchors 13.2. Linking the Apparatus to the Text 23.5.1.2. Defining Content Models: RELAX NG 8.3. Elements Unique to Spoken Texts 24.3.1.3. Modification of Attribute and Attribute Value Lists]
Moduletei
MembersTEI abbr add addName affiliation anchor bibl cb certainty change cit collection corr correspAction correspDesc country date del dimensions div eventName forename fw genName gender head idno label lb listAnnotation listBibl listObject listPerson material measure milestone msDesc name note noteGrp object objectName orgName origDate path pb persName persPronouns placeName ptr quote rb ref reg relatedItem roleName rs rt ruby seal seg settlement sex space stamp standOff surface surname term text time title unit unitDef
Attributes
typecharacterizes the element in some sense, using any convenient classification scheme or typology.
StatusOptional
Datatypeteidata.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
StatusOptional
Datatypeteidata.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 .


Appendix C.47 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 retrace rt subst] closer div fw head hi label note noteGrp opener p path postscript salute seg signed text
Attributes
handpoints to a <handNote> element describing the hand considered responsible for the content of the element concerned.
StatusOptional
Datatypeteidata.pointer

Appendix D Macros


Appendix D.1 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
hmacro.paraContent = ( text | hmodel.paraPart )*

Appendix D.2 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
hmacro.phraseSeq =
   (
      text
    | hmodel.gLike
    | hmodel.attributable
    | hmodel.phrase
    | hmodel.global
   )*

Appendix D.3 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
hmacro.phraseSeq.limited = ( text | hmodel.limitedPhrase | hmodel.global )*

Appendix D.4 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
hmacro.specialPara =
   (
      text
    | hmodel.gLike
    | hmodel.phrase
    | hmodel.inter
    | hmodel.divPart
    | hmodel.global
   )*

Appendix D.5 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
hmacro.xtext = ( text | hmodel.gLike )*

Appendix E Datatypes


Appendix E.1 teidata.certainty

teidata.certainty defines the range of attribute values expressing a degree of certainty.
Moduletei
Used by
teidata.probCertElement:
Content model
<content>
 <valList type="closed">
  <valItem ident="high"/>
  <valItem ident="medium"/>
  <valItem ident="low"/>
  <valItem ident="unknown"/>
 </valList>
</content>
    
Declaration
hteidata.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.


Appendix E.2 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
hteidata.count = xsd:nonNegativeInteger
Note

Any positive integer value or zero is permitted


Appendix E.3 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
hteidata.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.


Appendix E.4 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
hteidata.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.


Appendix E.5 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
hteidata.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.


Appendix E.6 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
hteidata.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).


Appendix E.7 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
hteidata.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.


Appendix E.8 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
hteidata.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.


Appendix E.9 teidata.namespace

teidata.namespace defines the range of attribute values used to indicate XML namespaces as defined by the W3C Namespaces in XML Technical Recommendation.
Moduletei
Used by
Content model
<content>
 <dataRef restriction="\S+" name="anyURI"/>
</content>
    
Declaration
hteidata.namespace = xsd:anyURI { pattern = "\S+" }
Note

The range of syntactically valid values is defined by RFC 3986 Uniform Resource Identifier (URI): Generic Syntax


Appendix E.10 teidata.numeric

teidata.numeric defines the range of attribute values used for numeric values.
Moduletei
Used by
Content model
<content>
 <alternate>
  <dataRef name="double"/>
  <dataRef name="token"
   restriction="(\-?[\d]+/\-?[\d]+)"/>
  <dataRef name="decimal"/>
 </alternate>
</content>
    
Declaration
hteidata.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.


Appendix E.11 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
hteidata.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.


Appendix E.12 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
hteidata.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.


Appendix E.13 teidata.point

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


Appendix E.14 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
hteidata.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/


Appendix E.15 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
hteidata.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.


Appendix E.16 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
Element:
Content model
<content>
 <alternate>
  <dataRef key="teidata.probability"/>
  <dataRef key="teidata.certainty"/>
 </alternate>
</content>
    
Declaration
hteidata.probCert = teidata.probability | teidata.certainty

Appendix E.17 teidata.probability

teidata.probability defines the range of attribute values expressing a probability.
Moduletei
Used by
teidata.probCertElement:
Content model
<content>
 <dataRef name="double">
  <dataFacet name="minInclusive" value="0"/>
  <dataFacet name="maxInclusive" value="1"/>
 </dataRef>
</content>
    
Declaration
hteidata.probability = xsd:double
Note

Probability is expressed as a real number between 0 and 1; 0 representing certainly false and 1 representing certainly true.


Appendix E.18 teidata.replacement

teidata.replacement defines attribute values which contain a replacement template.
Moduletei
Used by
Content model
<content>
 <textNode/>
</content>
    
Declaration
hteidata.replacement = text

Appendix E.19 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
hteidata.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.


Appendix E.20 teidata.temporal.iso

teidata.temporal.iso 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 international standard Data elements and interchange formats – Information interchange – Representation of dates and times.
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"/>
  <dataRef name="token"
   restriction="[0-9.,DHMPRSTWYZ/:+\-]+"/>
 </alternate>
</content>
    
Declaration
hteidata.temporal.iso =
   xsd:date
 | xsd:gYear
 | xsd:gMonth
 | xsd:gDay
 | xsd:gYearMonth
 | xsd:gMonthDay
 | xsd:time
 | xsd:dateTime
 | token { pattern = "[0-9.,DHMPRSTWYZ/:+\-]+" }
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.

For all representations for which ISO 8601:2004 describes both a basic and an extended format, these Guidelines recommend use of the extended format.


Appendix E.21 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
Element:
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
hteidata.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.


Appendix E.22 teidata.temporal.working

teidata.temporal.working defines the range of values, conforming to the W3C XML Schema Part 2: Datatypes Second Edition specification, expressing a date or a date and a time within the working life of the document.
Moduletei
Used by
Content model
<content>
 <alternate>
  <dataRef name="date"
   restriction="(19[789][0-9]|[2-9][0-9]{3}).*"/>
  <dataRef name="dateTime"
   restriction="(19[789][0-9]|[2-9][0-9]{3}).*"/>
 </alternate>
</content>
    
Declaration
hteidata.temporal.working =
   xsd:date { pattern = "(19[789][0-9]|[2-9][0-9]{3}).*" }
 | xsd:dateTime { pattern = "(19[789][0-9]|[2-9][0-9]{3}).*" }
Note

If it is likely that the value used is to be compared with another, then a time zone indicator should always be included, and only the dateTime representation should be used.

The earliest time expressable with this datatype is 01 January 1970 (the Unix Epoch), which could be written as either 1970-01-01 or 1970-01-01T00:00:00Z.


Appendix E.23 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
hteidata.text = string
Note

Attributes using this datatype must contain a single ‘token’ in which whitespace and other punctuation characters are permitted.


Appendix E.24 teidata.truthValue

teidata.truthValue defines the range of attribute values used to express a truth value.
Moduletei
Used by
Content model
<content>
 <dataRef name="boolean"/>
</content>
    
Declaration
hteidata.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.


Appendix E.25 teidata.unboundedCount

teidata.unboundedCount defines the range of values used for a counting number or the string unbounded for infinity.
Moduletei
Used by
Content model
<content>
 <alternate>
  <dataRef name="nonNegativeInteger"/>
  <valList type="closed">
   <valItem ident="unbounded"/>
  </valList>
 </alternate>
</content>
    
Declaration
hteidata.unboundedCount = xsd:nonNegativeInteger | ( "unbounded" )

Appendix E.26 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
hteidata.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.


Appendix E.27 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
hteidata.versionNumber =
   token { pattern = "[\d]+[a-z]*[\d]*(\.[\d]+[a-z]*[\d]*){0,3}" }

Appendix E.28 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
hteidata.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.


Appendix E.29 teidata.xTruthValue

teidata.xTruthValue (extended truth value) defines the range of attribute values used to express a truth value which may be unknown.
Moduletei
Used by
Element:
Content model
<content>
 <alternate>
  <dataRef name="boolean"/>
  <valList>
   <valItem ident="unknown"/>
   <valItem ident="inapplicable"/>
  </valList>
 </alternate>
</content>
    
Declaration
hteidata.xTruthValue = xsd:boolean | ( "unknown" | "inapplicable" )
Note

In cases where where uncertainty is inappropriate, use the datatype teidata.TruthValue.


Appendix E.30 teidata.xmlName

teidata.xmlName defines attribute values which contain an XML name.
Moduletei
Used by
Content model
<content>
 <dataRef name="NCName"/>
</content>
    
Declaration
hteidata.xmlName = xsd:NCName
Note

The rules defining an XML name form a part of the XML Specification.


Appendix E.31 teidata.xpath

teidata.xpath defines attribute values which contain an XPath expression.
Moduletei
Used by
Element:
Content model
<content>
 <textNode/>
</content>
    
Declaration
hteidata.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.

David Denison. Date: 2024-09-10