diff --git a/build/workflow.sh b/build/workflow.sh index 197790a66..cf1813c5f 100755 --- a/build/workflow.sh +++ b/build/workflow.sh @@ -32,7 +32,7 @@ ant echo "Ran app build successfully" echo "Fetching the data repository to build a data xar" -git clone https://github.com/$GITHUB_ORG/$GITHUB_REPOSITORY --branch development --single-branch +git clone https://github.com/$GITHUB_ORG/$GITHUB_REPOSITORY --branch main --single-branch cd $GITHUB_REPOSITORY ### CREATE NECESSARY CONFIG FOR THE BUILD, AND POPULATE VERSION AND PACKAGE_NAME diff --git a/documentation/Schema/SPEAR.html b/documentation/Schema/SPEAR.html new file mode 100644 index 000000000..3848d2b81 --- /dev/null +++ b/documentation/Schema/SPEAR.html @@ -0,0 +1,3455 @@ +
This schema has been created to to constrain the TEI P5 for validating the born-digital project SPEAR: Syriac Persons, Events, and Relations. This customization will be used for the encoding of many different documents by many different researchers having differnet levels of training. As such, a schema is particularly important. The highly-structured data model of SPEAR also requires some modifications and additions to TEI P5.
<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 15.1. Varieties of Composite Text] | |||||||||
Module | textstructure | ||||||||
Attributes |
| ||||||||
Contained by | textstructure: TEI | ||||||||
May contain | |||||||||
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"/> | ||||||||
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 +{ + att.global.attributes, + att.typed.attributes, + attribute version { text }?, + ( teiHeader, ( ( model.resource+, TEI* ) | TEI+ ) ) +}⚓ |
<ab> | |||||||||||||||||||||||||||
Module | linking | ||||||||||||||||||||||||||
Attributes |
| ||||||||||||||||||||||||||
Contained by | textstructure: body | ||||||||||||||||||||||||||
May contain | |||||||||||||||||||||||||||
Note | This customization requires the basic pattern of SPEAR factoids to be encoded correctly. Each factoid is encoded in an <ab> element. Since each factoid contains data on a Person, Event, or Relation, the schema requires that <ab> must contain a <listPerson>, <listEvent>, or <listRelation> child element. Since every factoid requires a bibliographic reference, every <ab> must contain one or more child <bibl> elements. The encoder also has the option of adding a <note> element to the factoid as well. This customization also requires that every <ab> element receives @xml:id, @type, @subtype, and @resp attributes. The @xml:id must take the form "factoid-{\d}" where {\d} is a number unique within the document. The @type attribute must be "factoid". The @subtype attribute comes from a closed list of data types encoded in the SPEAR project. The @resp attribute must point to an editor listed in the <titleStmt>. This ensures that all contributions are attributed at the factoid level. | ||||||||||||||||||||||||||
Schematron |
+<sch:rule context="tei:ab[ancestor::tei:body]">
+<sch:assert test="@xml:id">An <ab> descendant of <body> requires an @xml:id attribute.</sch:assert>
+<sch:assert test="@resp">An <ab> descendant of <body> requires a @resp attribute.</sch:assert>
+<sch:assert test="@type='factoid'">An <ab> descendant of <body> requires a @type attribute with the value "factoid".</sch:assert>
+</sch:rule>
+<sch:rule context="tei:ab[ancestor::tei:body]/@resp">
+<sch:let name="contributorRefs"
+ value="//tei:name[ancestor::tei:respStmt]/@ref"/>
+<sch:let name="respPtrs"
+ value="for $i in $contributorRefs return substring-after($i, '.xml')"/>
+<sch:assert test=" every $i in (tokenize(., ' ')) satisfies $i = $respPtrs"> Acceptable values for this @resp attribute include:
+<sch:value-of select="string-join($respPtrs, '; ')"/>.
+</sch:assert>
+</sch:rule> | ||||||||||||||||||||||||||
Content model | +<content> + <alternate minOccurs="1" maxOccurs="1"> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="idno" minOccurs="1" + maxOccurs="1"/> + <elementRef key="listPerson" + minOccurs="1" maxOccurs="1"/> + <elementRef key="bibl" minOccurs="1" + maxOccurs="unbounded"/> + <elementRef key="note" minOccurs="0" + maxOccurs="unbounded"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="idno" minOccurs="1" + maxOccurs="1"/> + <elementRef key="listEvent" + minOccurs="1" maxOccurs="1"/> + <elementRef key="bibl" minOccurs="1" + maxOccurs="unbounded"/> + <elementRef key="listRelation" + minOccurs="0" maxOccurs="1"/> + <elementRef key="note" minOccurs="0" + maxOccurs="unbounded"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="idno" minOccurs="1" + maxOccurs="1"/> + <elementRef key="listRelation" + minOccurs="1" maxOccurs="1"/> + <elementRef key="bibl" minOccurs="1" + maxOccurs="unbounded"/> + <elementRef key="note" minOccurs="0" + maxOccurs="unbounded"/> + </sequence> + </alternate> +</content> + ⚓ | ||||||||||||||||||||||||||
Schema Declaration | +element ab +{ + attribute xml:id { text }, + attribute resp { list { + } }, + attribute type { text }, + attribute subtype + { + "birth" + | "citizenship" + | "death" + | "education" + | "ethnicLabel" + | "event" + | "gender" + | "langKnown" + | "mentalState" + | "nameVariant" + | "occupation" + | "physicalTrait" + | "relation" + | "residence" + | "sanctity" + | "socecStatus" + }, + ( + ( idno, listPerson, bibl+, note* ) + | ( idno, listEvent, bibl+, listRelation?, note* ) + | ( idno, listRelation, bibl+, note* ) + ) +}⚓ |
<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] | |
Module | core |
Attributes |
|
Contained by | core: bibl |
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 +{ + att.global.attributes, + att.naming.attributes, + att.datable.attributes, + macro.phraseSeq +}⚓ |
<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.] | |
Module | header |
Attributes |
|
Contained by | header: publicationStmt |
May contain | Character data only |
Note | Syriaca.org is identified as the responsible entity using <authority>. |
Example | <authority>John Smith</authority> |
Schematron |
+<sch:rule context="//tei:publicationStmt/tei:authority">
+<sch:assert test="normalize-space(.) = 'Syriaca.org: The Syriac Reference Portal'"> The <authority> element should contain the text: "Syriaca.org: The Syriac Reference Portal."
+</sch:assert>
+</sch:rule> |
Content model | +<content> + <textNode/> +</content> + ⚓ |
Schema Declaration | +element authority { att.global.attributes, att.canonical.attributes, text }⚓ |
<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.] | |||||||||
Module | header | ||||||||
Attributes |
| ||||||||
Contained by | header: publicationStmt | ||||||||
May contain | |||||||||
Note | A consistent format should be adopted | ||||||||
Example | <availability status="restricted">
+ <p>Available for academic research purposes only.</p>
+</availability>
+<availability status="free">
+ <p>In the public domain</p>
+</availability>
+<availability status="restricted">
+ <p>Available under licence from the publishers.</p>
+</availability> | ||||||||
Example | <availability>
+ <licence target="http://opensource.org/licenses/MIT">
+ <p>The MIT License
+ applies to this document.</p>
+ <p>Copyright (C) 2011 by The University of Victoria</p>
+ <p>Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:</p>
+ <p>The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.</p>
+ <p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.</p>
+ </licence>
+</availability> | ||||||||
Content model | +<content> + <alternate minOccurs="1" + maxOccurs="unbounded"> + <classRef key="model.availabilityPart"/> + <classRef key="model.pLike"/> + </alternate> +</content> + ⚓ | ||||||||
Schema Declaration | +element availability +{ + att.global.attributes, + att.declarable.attributes, + attribute status { "free" | "unknown" | "restricted" }?, + ( model.availabilityPart | model.pLike )+ +}⚓ |
<back> (back matter) contains any appendixes, etc. following the main part of a text. [4.7. Back Matter 4. Default Text Structure] | |
Module | textstructure |
Attributes |
|
Contained by | textstructure: text |
May contain | core: listBibl |
Note | The <back> element must contain only one <listBibl>. |
Example | <back>
+ <div type="appendix">
+ <head>The Golden Dream or, the Ingenuous Confession</head>
+ <p>TO shew the Depravity of human Nature, and how apt the Mind is to be misled by Trinkets
+ and false Appearances, Mrs. Two-Shoes does acknowledge, that after she became rich, she
+ had like to have been, too fond of Money
+<!-- .... -->
+ </p>
+ </div>
+<!-- ... -->
+ <div type="epistle">
+ <head>A letter from the Printer, which he desires may be inserted</head>
+ <salute>Sir.</salute>
+ <p>I have done with your Copy, so you may return it to the Vatican, if you please;
+
+<!-- ... -->
+ </p>
+ </div>
+ <div type="advert">
+ <head>The Books usually read by the Scholars of Mrs Two-Shoes are these and are sold at Mr
+ Newbery's at the Bible and Sun in St Paul's Church-yard.</head>
+ <list>
+ <item n="1">The Christmas Box, Price 1d.</item>
+ <item n="2">The History of Giles Gingerbread, 1d.</item>
+<!-- ... -->
+ <item n="42">A Curious Collection of Travels, selected from the Writers of all Nations,
+ 10 Vol, Pr. bound 1l.</item>
+ </list>
+ </div>
+ <div type="advert">
+ <head>By the KING's Royal Patent, Are sold by J. NEWBERY, at the Bible and Sun in St.
+ Paul's Church-Yard.</head>
+ <list>
+ <item n="1">Dr. James's Powders for Fevers, the Small-Pox, Measles, Colds, &c. 2s.
+ 6d</item>
+ <item n="2">Dr. Hooper's Female Pills, 1s.</item>
+<!-- ... -->
+ </list>
+ </div>
+</back> |
Content model | +<content> + <elementRef key="listBibl" minOccurs="1" + maxOccurs="1"/> +</content> + ⚓ |
Schema Declaration | +element back { att.global.attributes, att.declaring.attributes, listBibl }⚓ |
<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 15.3.2. Declarable Elements] | |||||||||
Module | core | ||||||||
Attributes |
| ||||||||
Member of | |||||||||
Contained by | |||||||||
May contain | |||||||||
Note | SPEAR only uses @xml:id and @type attributes on the <bibl> element. SPEAR uses <bibl> elements with an @xml:id only in the <back> of the TEI file. The @type attribute indicates whether the <bibl> is "primary", "secondary", or a "urn". Since SPEAR relies on the Linked Open Data infrastructure of Syriaca.org, a <bibl> element in the body only requires a <ptr> element indicating the Syriaca.org URI or CTS URN for the bibliographic reference. When indicating a CTS URNs no other additional information is required. When indicating a Syriaca.org URI, a <citedRange> is needed. | ||||||||
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="article" subtype="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> | ||||||||
Schematron |
+<sch:rule context="tei:back//tei:bibl">
+<sch:assert test="@xml:id">A <bibl> element in the back matter must contain an
+ @xml:id attribute.</sch:assert>
+</sch:rule>
+<sch:rule context="tei:back//tei:bibl/@xml:id">
+<sch:let name="docURIno"
+ value="//tei:publicationStmt/tei:idno[@type='URI']/substring-after(substring-before(.,
+ '/tei'), 'spear-prosop.org/')"/>
+<sch:assert test="contains(., concat('bibl', $docURIno, '-'))">The @xml:id on
+ <bibl> in the back matter must take the following form: 'bibl' +
+ '<sch:value-of select="$docURIno"/>' + '-' + a unique number.</sch:assert>
+<sch:assert test="count(distinct-values(//tei:back//tei:bibl/@xml:id)) eq count(//tei:back//tei:bibl/@xml:id)">Each @xml:id attribute on <bibl> must have a unique value.</sch:assert>
+<sch:report test="matches(substring-after(., '-'), '\D')">A properly formatted
+ @xml:id ends with a number.</sch:report>
+<sch:assert test="matches(substring-after(., '-'), '\d')">A properly formatted
+ @xml:id ends with a number.</sch:assert>
+</sch:rule> | ||||||||
Content model | +<content> + <sequence minOccurs="0" maxOccurs="1" + preserveOrder="true"> + <elementRef key="title" minOccurs="0" + maxOccurs="2"/> + <elementRef key="author" minOccurs="0" + maxOccurs="unbounded"/> + <elementRef key="editor" minOccurs="0" + maxOccurs="unbounded"/> + <elementRef key="pubPlace" minOccurs="0" + maxOccurs="1"/> + <elementRef key="publisher" minOccurs="0" + maxOccurs="1"/> + <elementRef key="date" minOccurs="0" + maxOccurs="1"/> + <elementRef key="biblScope" minOccurs="0" + maxOccurs="2"/> + <elementRef key="ptr" minOccurs="1" + maxOccurs="1"/> + <elementRef key="citedRange" + minOccurs="0" maxOccurs="3"/> + </sequence> +</content> + ⚓ | ||||||||
Schema Declaration | +element bibl +{ + att.global.attributes, + att.declarable.attributes, + att.typed.attribute.subtype, + att.sortable.attributes, + att.docStatus.attributes, + attribute type { text }, + ( + ( title?, ( title, title? )? ), + author*, + editor*, + pubPlace?, + publisher?, + date?, + ( biblScope?, ( biblScope, biblScope? )? ), + ptr, + ( citedRange?, ( citedRange, ( citedRange, citedRange? )? )? ) + )? +}⚓ |
<biblScope> (scope of bibliographic reference) defines the scope of a bibliographic reference, for example as a list of page numbers, or a named subdivision of a larger work. [3.12.2.5. Scopes and Ranges in Bibliographic Citations] | |||||||||||
Module | core | ||||||||||
Attributes |
| ||||||||||
Contained by | core: bibl header: seriesStmt | ||||||||||
May contain | |||||||||||
Note | When a single page is being cited, use the from and to attributes with an identical value. When no clear endpoint is provided, the from attribute may be used without to; for example a citation such as ‘p. 3ff’ might be encoded It is now considered good practice to supply this element as a sibling (rather than a child) of <imprint>, since it supplies information which does not constitute part of the imprint. | ||||||||||
Example | <biblScope>pp 12–34</biblScope>
+<biblScope unit="page" from="12" to="34"/>
+<biblScope unit="volume">II</biblScope>
+<biblScope unit="page">12</biblScope> | ||||||||||
Content model | +<content> + <sequence minOccurs="0" maxOccurs="1"> + <textNode/> + <elementRef key="title" minOccurs="0" + maxOccurs="1"/> + <elementRef key="idno" minOccurs="0" + maxOccurs="1"/> + </sequence> +</content> + ⚓ | ||||||||||
Schema Declaration | +element biblScope +{ + att.global.attributes, + att.citing.attribute.from, + att.citing.attribute.to, + attribute unit + { + "volume" + | "issue" + | "page" + | "line" + | "chapter" + | "part" + | "column" + | "entry" + }, + ( text, title?, idno? )? +}⚓ |
<birth> (birth) contains information about a person's birth, such as its date and place. [15.2.2. The Participant Description] | |
Module | namesdates |
Attributes |
|
Contained by | namesdates: person |
May contain | |
Note | This customization restricts the attribute classes of the <birth> element to att.datable.w3c but excludes the @to and @from attributes. If more precise dating is required for a SPEAR factoid, encoder should use the <date> element. It also restricts the child elements to those dealing with dates (<date> or <choice>), <placeName>, and <note>. |
Example | <birth>Before 1920, Midlands region.</birth> |
Example | <birth when="1960-12-10">In a small cottage near <name type="place">Aix-la-Chapelle</name>,
+ early in the morning of <date>10 Dec 1960</date>
+</birth> |
Content model | +<content> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <alternate minOccurs="0" maxOccurs="1"> + <elementRef key="date" minOccurs="1" + maxOccurs="1"/> + <elementRef key="choice" minOccurs="1" + maxOccurs="1"/> + </alternate> + <elementRef key="placeName" minOccurs="0" + maxOccurs="1"/> + <elementRef key="note" minOccurs="1" + maxOccurs="1"/> + </sequence> +</content> + ⚓ |
Schema Declaration | +element birth +{ + att.datable.w3c.attribute.when, + att.datable.w3c.attribute.notBefore, + att.datable.w3c.attribute.notAfter, + ( ( date | choice )?, placeName?, note ) +}⚓ |
<body> (text body) contains the whole body of a single unitary text, excluding any front or back matter. [4. Default Text Structure] | |
Module | textstructure |
Attributes |
|
Contained by | textstructure: text |
May contain | linking: ab |
Note | The body of a SPEAR file contains factoids, each of which appears in a separate <ab> element. As such, <ab> is the only acceptable child element of <body>. |
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> + <elementRef key="ab" minOccurs="1" + maxOccurs="unbounded"/> +</content> + ⚓ |
Schema Declaration | +element body { att.global.attributes, att.declaring.attributes, ab+ }⚓ |
<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] | |
Module | header |
Attributes |
|
Contained by | header: category |
May contain | Character data only |
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="entertain" degree="high"/>
+ <purpose type="inform" degree="medium"/>
+ </textDesc>
+</catDesc> |
Content model | +<content> + <textNode/> +</content> + ⚓ |
Schema Declaration | +element catDesc { att.global.attributes, att.canonical.attributes, text }⚓ |
<category> (category) contains an individual descriptive category, possibly nested within a superordinate category, within a user-defined taxonomy. [2.3.7. The Classification Declaration] | |||||||||
Module | header | ||||||||
Attributes |
| ||||||||
Contained by | header: taxonomy | ||||||||
May contain | header: catDesc | ||||||||
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> + <elementRef key="catDesc" minOccurs="1" + maxOccurs="1"/> +</content> + ⚓ | ||||||||
Schema Declaration | +element category +{ + att.global.attribute.n, + att.global.attribute.xmllang, + att.global.attribute.xmlbase, + att.global.attribute.xmlspace, + att.global.rendition.attribute.rend, + att.global.rendition.attribute.style, + att.global.rendition.attribute.rendition, + att.global.linking.attribute.corresp, + att.global.linking.attribute.synch, + att.global.linking.attribute.sameAs, + att.global.linking.attribute.copyOf, + att.global.linking.attribute.next, + att.global.linking.attribute.prev, + att.global.linking.attribute.exclude, + att.global.linking.attribute.select, + att.global.analytic.attribute.ana, + att.global.responsibility.attribute.cert, + att.global.responsibility.attribute.resp, + att.global.source.attribute.source, + attribute xml:id { text }?, + catDesc +}⚓ |
<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 11.7. Identifying Changes and Revisions] | |||||||
Module | header | ||||||
Attributes |
| ||||||
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="#BZ" when="2008-02-02"
+ status="public">Finished chapter 23</change>
+ <change who="#BZ" when="2008-01-02"
+ status="draft">Finished chapter 2</change>
+ <change n="P2.2" when="1991-12-21"
+ who="#LDB">Added examples to section 3</change>
+ <change when="1991-11-11" who="#MSM">Deleted chapter 10</change>
+</revisionDesc> | ||||||
Example | <profileDesc>
+ <creation>
+ <listChange>
+ <change xml:id="DRAFT1">First draft in pencil</change>
+ <change xml:id="DRAFT2"
+ notBefore="1880-12-09">First revision, mostly
+ using green ink</change>
+ <change xml:id="DRAFT3"
+ notBefore="1881-02-13">Final corrections as
+ supplied to printer.</change>
+ </listChange>
+ </creation>
+</profileDesc> | ||||||
Content model | +<content> + <macroRef key="macro.specialPara"/> +</content> + ⚓ | ||||||
Schema Declaration | +element change +{ + att.ascribed.attributes, + att.datable.attributes, + att.docStatus.attributes, + att.global.attributes, + att.typed.attributes, + attribute target { list { + } }?, + macro.specialPara +}⚓ |
<choice> (choice) groups a number of alternative encodings for the same point in a text. [3.5. Simple Editorial Changes] | |
Module | core |
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 12.1. The Apparatus Entry, Readings, and Witnesses should be preferred. |
Example | An American encoding of Gulliver's Travels which retains the British spelling but also provides a version regularized to American spelling might be encoded as follows. <p>Lastly, That, upon his solemn oath to observe all the above
+ articles, the said man-mountain shall have a daily allowance of
+ meat and drink sufficient for the support of <choice>
+ <sic>1724</sic>
+ <corr>1728</corr>
+ </choice> of our subjects,
+ with free access to our royal person, and other marks of our
+<choice>
+ <orig>favour</orig>
+ <reg>favor</reg>
+ </choice>.</p> |
Content model | +<content> + <alternate minOccurs="2" + maxOccurs="unbounded"> + <classRef key="model.choicePart"/> + <elementRef key="choice"/> + </alternate> +</content> + ⚓ |
Schema Declaration | +element choice { ( model.choicePart | choice )+ }⚓ |
<citedRange> | |||||||||
Module | core | ||||||||
Attributes |
| ||||||||
Contained by | core: bibl | ||||||||
May contain | Character data only | ||||||||
Note | SPEAR only allows text in a <citedRange> element and requires the use of a @unit attribute with a closed list. SPEAR prefers that encoders use the part value and cite ancient texts according to section numbers. | ||||||||
Content model | +<content> + <textNode/> +</content> + ⚓ | ||||||||
Schema Declaration | +element citedRange +{ + attribute unit { "p" | "line" | "part" | "column" }, + text +}⚓ |
<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] | |
Module | header |
Attributes |
|
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="1"/> +</content> + ⚓ |
Schema Declaration | +element classDecl { att.global.attributes, taxonomy }⚓ |
<corr> (correction) contains the correct form of a passage apparently erroneous in the copy text. [3.5.1. Apparent Errors] | |
Module | core |
Member of | |
Contained by | |
May contain | |
Example | If all that is desired is to call attention to the fact that the copy text has been corrected, <corr> may be used alone: I don't know,
+ Juan. It's so far in the past now — how <corr>can we</corr> prove
+ or disprove anyone's theories? |
Example | It is also possible, using the <choice> and <sic> elements, to provide an uncorrected reading: I don't know, Juan. It's so far in the past now —
+ how <choice>
+ <sic>we can</sic>
+ <corr>can we</corr>
+</choice> prove or
+ disprove anyone's theories? |
Content model | +<content> + <macroRef key="macro.paraContent"/> +</content> + ⚓ |
Schema Declaration | +element corr { macro.paraContent }⚓ |
<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 15.2.3. The Setting Description 13.4. Dates] | |||||||||||||||||||
Module | core | ||||||||||||||||||
Attributes |
| ||||||||||||||||||
Member of | |||||||||||||||||||
Contained by | |||||||||||||||||||
May contain | |||||||||||||||||||
Example | <date when="1980-02">early February 1980</date> | ||||||||||||||||||
Example | Given on the <date when="1977-06-12">Twelfth Day
+ of June in the Year of Our Lord One Thousand Nine Hundred and Seventy-seven of the Republic
+ the Two Hundredth and first and of the University the Eighty-Sixth.</date> | ||||||||||||||||||
Example | <date when="1990-09">September 1990</date> | ||||||||||||||||||
Content model | +<content> + <alternate minOccurs="0" + maxOccurs="unbounded"> + <textNode/> + <classRef key="model.gLike"/> + <classRef key="model.phrase"/> + <classRef key="model.global"/> + </alternate> +</content> + ⚓ | ||||||||||||||||||
Schema Declaration | +element date +{ + att.datable.custom.attribute.when-custom, + att.datable.custom.attribute.notBefore-custom, + att.datable.custom.attribute.notAfter-custom, + att.datable.custom.attribute.from-custom, + att.datable.custom.attribute.to-custom, + att.datable.custom.attribute.datingPoint, + att.datable.w3c.attributes, + attribute datingMethod { text }?, + attribute calendar { "Gregorian" | "Seleucid" }?, + ( text | model.gLike | model.phrase | model.global )* +}⚓ |
<death> (death) contains information about a person's death, such as its date and place. [15.2.2. The Participant Description] | |
Module | namesdates |
Attributes |
|
Contained by | namesdates: person |
May contain | |
Note | This customization restricts the attribute classes of the <death> element to att.datable.w3c but excludes the @to and @from attributes. If more precise dating is required for a SPEAR factoid, encoder should use the <date> element. It also restricts the child elements to those dealing with dates (<date> or <choice>), <placeName>, and <note>. |
Example | <death when="1902-10-01"/> |
Example | <death when="1960-12-10">Passed away near <name type="place">Aix-la-Chapelle</name>, after suffering from cerebral palsy. </death> |
Content model | +<content> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <alternate minOccurs="0" maxOccurs="1"> + <elementRef key="date" minOccurs="1" + maxOccurs="1"/> + <elementRef key="choice" minOccurs="1" + maxOccurs="1"/> + </alternate> + <elementRef key="placeName" minOccurs="0" + maxOccurs="1"/> + <elementRef key="note" minOccurs="1" + maxOccurs="1"/> + </sequence> +</content> + ⚓ |
Schema Declaration | +element death +{ + att.datable.w3c.attribute.when, + att.datable.w3c.attribute.notBefore, + att.datable.w3c.attribute.notAfter, + ( ( date | choice )?, placeName?, note ) +}⚓ |
<desc> | |
Module | core |
Contained by | |
May contain | |
Note | This customization does not allow attributes on the <desc> element. It also restricts child elements to <choice>, <date>, <persName>, and <placeName>. |
Schematron |
+<sch:rule context="//tei:ab//tei:desc">
+<sch:report test="not(*) and string-length(normalize-space(.)) eq 0">Element of type
+ <desc> cannot be empty.</sch:report>
+</sch:rule>
+<sch:rule context="tei:ab/tei:listEvent/tei:event/tei:desc"
+ role="warning">
+<sch:assert test="./tei:persName or tei:placeName">The <desc> element should
+ generally contain either <persName> or <placeName>. SPEAR
+ encourages a liberal use of <persName>, <placeName>, and <date>
+ elements in the <desc> element of event factoids.</sch:assert>
+</sch:rule> |
Schematron |
+<sch:rule context="//tei:body/tei:ab/tei:listRelation/tei:relation">
+<sch:assert test="tei:desc"> This <relation> requires a <desc>.
+</sch:assert>
+</sch:rule>
+<sch:rule context="//tei:sourceDesc//tei:relation">
+<sch:report test="tei:desc"> The <desc> element may not appear here.
+</sch:report>
+</sch:rule>
+<sch:rule context="//tei:ab/tei:listEvent/tei:listRelation/tei:relation/tei:desc">
+<sch:let name="SameEventURIs"
+ value="tokenize(parent::tei:relation/@mutual, ' ')"/>
+<sch:assert test="count(child::tei:rs) = count($SameEventURIs)"> This <desc> must contain <sch:value-of select="count($SameEventURIs)"/> <rs> elements, one for each values in the @mutual attribute on <relation>.
+</sch:assert>
+<sch:assert test="count(distinct-values(tei:rs/@ref)) = count(tei:rs)"> This <desc> requires <rs> elements with unique @ref attribute values.
+</sch:assert>
+</sch:rule>
+<sch:rule context="//tei:ab/tei:listEvent/tei:listRelation/tei:relation[@ref='syriaca:SameEvent']/tei:desc">
+<sch:let name="SameEventURIs"
+ value="tokenize(parent::tei:relation/@mutual, ' ')"/>
+<sch:assert test="starts-with(normalize-space(.), 'The following factoids deal with
+ the same event: ')"> This <desc> must begin with "The following factoids deal with the same event: "
+</sch:assert>
+</sch:rule>
+<sch:rule context="//tei:ab/tei:listEvent/tei:listRelation/tei:relation[@ref='syriaca:ProxmiateEvent']/tei:desc">
+<sch:let name="SameEventURIs"
+ value="tokenize(parent::tei:relation/@mutual, ' ')"/>
+<sch:assert test="starts-with(normalize-space(.), 'The following factoids deal with
+ closely related events: ')"> This <desc> must begin with "The following factoids deal with related events: "
+</sch:assert>
+</sch:rule> |
Content model | +<content> + <sequence minOccurs="0" + maxOccurs="unbounded" preserveOrder="false"> + <textNode/> + <elementRef key="choice" minOccurs="0" + maxOccurs="unbounded"/> + <elementRef key="date" minOccurs="0" + maxOccurs="unbounded"/> + <elementRef key="persName" minOccurs="0" + maxOccurs="unbounded"/> + <elementRef key="placeName" minOccurs="0" + maxOccurs="unbounded"/> + <elementRef key="orgName" minOccurs="0" + maxOccurs="unbounded"/> + <elementRef key="rs" minOccurs="0" + maxOccurs="unbounded"/> + <elementRef key="bibl" minOccurs="0" + maxOccurs="unbounded"/> + <elementRef key="listRelation" + minOccurs="0" maxOccurs="1"/> + <elementRef key="title" minOccurs="0" + maxOccurs="unbounded"/> + </sequence> +</content> + ⚓ |
Schema Declaration | +element desc +{ + ( + text, + choice*, + date*, + persName*, + placeName*, + orgName*, + rs*, + bibl*, + listRelation?, + title* + )* +}⚓ |
<edition> (edition) describes the particularities of one edition of a text. [2.2.2. The Edition Statement] | |
Module | header |
Attributes |
|
Contained by | header: editionStmt |
May contain | |
Example | <edition>First edition <date>Oct 1990</date>
+</edition>
+<edition n="S2">Students' edition</edition> |
Content model | +<content> + <macroRef key="macro.phraseSeq"/> +</content> + ⚓ |
Schema Declaration | +element edition { att.global.attributes, macro.phraseSeq }⚓ |
<editionStmt> (edition statement) groups information relating to one edition of a text. [2.2.2. The Edition Statement 2.2. The File Description] | |
Module | header |
Attributes |
|
Contained by | header: fileDesc |
May contain | header: edition |
Note | The <editionStmt> allows the specification of an edition or version number. When a TEI file is first published online, that edition should be "1.0". Subsequent revisions may bump the revision number, either by a whole new version (i.e. to "2.0") or by a minor version (i.e. to "1.1"). |
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> + <elementRef key="edition" minOccurs="1" + maxOccurs="1"/> +</content> + ⚓ |
Schema Declaration | +element editionStmt { att.global.attributes, edition }⚓ |
<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] | |||||||||||||||
Module | core | ||||||||||||||
Attributes |
| ||||||||||||||
Contained by | core: bibl header: seriesStmt titleStmt | ||||||||||||||
May contain | |||||||||||||||
Note | This customization limits the attributes available on <desc> to @role and @ref and suggests values for @role. | ||||||||||||||
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:titleStmt/tei:editor">
+<sch:assert test="@role"> This <editor> must have a @role attribute.
+</sch:assert>
+<sch:assert test="@ref"> This <editor> must have a @ref attribute.
+</sch:assert>
+</sch:rule>
+<sch:rule context="//tei:titleStmt//tei:editor/@ref">
+<sch:let name="edsDoc"
+ value="doc('https://raw.githubusercontent.com/srophe/srophe-eXist-app/master/documentation/editors.xml')"/>
+<sch:let name="eds"
+ value="$edsDoc//tei:text/tei:body/tei:listPerson/tei:person/@xml:id"/>
+<sch:let name="refValues"
+ value="for $i in $eds return concat('http://syriaca.org/documentation/editors.xml#',
+ $i)"/>
+<sch:assert test=" every $i in . satisfies $i = $refValues"> Acceptable values for this @ref attribute include:
+<sch:value-of select="string-join($refValues, ' | ')"/>.
+</sch:assert>
+</sch:rule> | ||||||||||||||
Content model | +<content> + <macroRef key="macro.phraseSeq"/> +</content> + ⚓ | ||||||||||||||
Schema Declaration | +element editor +{ + attribute role { "creator" | "general" | "translator" }?, + attribute ref { text }?, + macro.phraseSeq +}⚓ |
<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 15.3.2. Declarable Elements] | |
Module | header |
Attributes |
|
Contained by | header: encodingDesc |
May contain | core: p |
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 &cdq;.</p>
+ </quotation>
+</editorialDecl> |
Content model | +<content> + <elementRef key="p" minOccurs="1" + maxOccurs="1"/> +</content> + ⚓ |
Schema Declaration | +element editorialDecl { att.global.attributes, att.declarable.attributes, p }⚓ |
<education> (education) contains a description of the educational experience of a person. [15.2.2. The Participant Description] | |||||||||
Module | namesdates | ||||||||
Attributes |
| ||||||||
Contained by | |||||||||
May contain | core: note | ||||||||
Note | This customization restricts the attribute classes of <education> to att.datable.w3c and the @ana attribute. If more precise dating is required for a SPEAR factoid, the encoder should use the <date> element. It also restricts the required @ana attribute to keyword URIs in the Syriac Taxonomy that pertain to fields of education. | ||||||||
Example | <education>Left school at age 16</education> | ||||||||
Example | <education from="1986-01-01"
+ to="1990-06-30">Attended <name>Cherwell School</name>
+</education> | ||||||||
Example | <education notBefore="1685-07"
+ notAfter="1690-06">Anthony Hammond
+ smuggled her into the University of Cambridge, where she was
+ disguised as his male cousin, Jack. She remained there for some
+ months learning grammar, logic, rhetoric, and ethics</education> | ||||||||
Content model | +<content> + <elementRef key="note" minOccurs="1" + maxOccurs="1"/> +</content> + ⚓ | ||||||||
Schema Declaration | +element education +{ + att.datable.w3c.attributes, + attribute ana { list { + } }, + note +}⚓ |
<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] | |
Module | header |
Attributes |
|
Contained by | header: teiHeader |
May contain | header: classDecl editorialDecl |
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> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="editorialDecl" + minOccurs="1" maxOccurs="1"/> + <elementRef key="classDecl" minOccurs="1" + maxOccurs="1"/> + </sequence> +</content> + ⚓ |
Schema Declaration | +element encodingDesc { att.global.attributes, ( editorialDecl, classDecl ) }⚓ |
<event> (event) contains data relating to any kind of significant event associated with a person, place, or organization. [13.3.1. Basic Principles] | |
Module | namesdates |
Attributes |
|
Contained by | namesdates: listEvent |
May contain | core: desc |
Note | This customization makes <desc> the only acceptable child of <event>. It also requires an @ana attribute and constrains the values of that attribute to the full list of Syriaca.org keyword URIs. In the case of dates associated with an event, the customization also requires that date attributes (@when, @notBefore, @notAfter, @from, and @to) match on the <event> element and within the child <desc> element. |
Example | <person>
+ <event type="mat" when="1972-10-12">
+ <label>matriculation</label>
+ </event>
+ <event type="grad" when="1975-06-23">
+ <label>graduation</label>
+ </event>
+</person> |
Schematron |
+<sch:rule context="tei:event/@ana">
+<sch:let name="anaTokens"
+ value="tokenize(., ' ')"/>
+<sch:let name="ti"
+ value="doc('https://raw.githubusercontent.com/srophe/syriaca/master/documentation/indexes/taxonomyIndex-old.xml')"/>
+<sch:let name="taxonomyAllURIs"
+ value="$ti//listURI[@type = 'taxonomyAllURIs']/uri"/>
+<sch:let name="errors"
+ value="for $i in $anaTokens return $i[not(. = $taxonomyAllURIs)]"/>
+<sch:assert test="every $i in $anaTokens satisfies $i = $taxonomyAllURIs"
+ role="warning">
+ <sch:value-of select="string-join($errors, ', ')"/>: URI(s) not in the Taxonomy. Please ensure that an appropriate URI does
+ not appear in the Taxonomy before proceeding. If you find no appropriate concept in the Taxonomy, please choose a keyword of your own for the editors to consider.
+</sch:assert>
+</sch:rule> |
Schematron |
+<sch:rule context="tei:event[tei:desc/tei:date/@when] | tei:event[tei:desc/tei:choice/tei:corr/tei:date/@when]
+ | tei:event[tei:desc/tei:choice/tei:reg/tei:date/@when]">
+<sch:assert test="./@when = ./tei:desc/tei:date/@when | ./tei:desc/tei:choice/tei:corr/tei:date/@when
+ | ./tei:desc/tei:choice/tei:reg/tei:date/@when"> This <event> must have a @when attribute with the value <sch:value-of select="./tei:desc/tei:date/@when | ./tei:desc/tei:choice/tei:corr/tei:date/@when
+ | ./tei:desc/tei:choice/tei:reg/tei:date/@when"/>.
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:event[tei:desc/tei:date/@notBefore] | tei:event[tei:desc/tei:choice/tei:corr/tei:date/@notBefore]
+ | tei:event[tei:desc/tei:choice/tei:reg/tei:date/@notBefore]">
+<sch:assert test="./@notBefore = ./tei:desc/tei:date/@notBefore | ./tei:desc/tei:choice/tei:corr/tei:date/@notBefore
+ | ./tei:desc/tei:choice/tei:reg/tei:date/@notBefore"> This <event> must have a @notBefore attribute with the value <sch:value-of select="./tei:desc/tei:date/@notBefore | ./tei:desc/tei:choice/tei:corr/tei:date/@notBefore
+ | ./tei:desc/tei:choice/tei:reg/tei:date/@notBefore"/>.
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:event[tei:desc/tei:date/@notAfter] | tei:event[tei:desc/tei:choice/tei:corr/tei:date/@notAfter]
+ | tei:event[tei:desc/tei:choice/tei:reg/tei:date/@notAfter]">
+<sch:assert test="./@notAfter = ./tei:desc/tei:date/@notAfter | ./tei:desc/tei:choice/tei:corr/tei:date/@notAfter
+ | ./tei:desc/tei:choice/tei:reg/tei:date/@notAfter"> This <event> must have a @notAfter attribute with the value <sch:value-of select="./tei:desc/tei:date/@notAfter | ./tei:desc/tei:choice/tei:corr/tei:date/@notAfter
+ | ./tei:desc/tei:choice/tei:reg/tei:date/@notAfter"/>.
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:event[tei:desc/tei:date/@from] | tei:event[tei:desc/tei:choice/tei:corr/tei:date/@from]
+ | tei:event[tei:desc/tei:choice/tei:reg/tei:date/@from]">
+<sch:assert test="./@from = ./tei:desc/tei:date/@from | ./tei:desc/tei:choice/tei:corr/tei:date/@from
+ | ./tei:desc/tei:choice/tei:reg/tei:date/@from"> This <event> must have a @from attribute with the value <sch:value-of select="./tei:desc/tei:date/@from | ./tei:desc/tei:choice/tei:corr/tei:date/@from
+ | ./tei:desc/tei:choice/tei:reg/tei:date/@from"/>.
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:event[tei:desc/tei:date/@to] | tei:event[tei:desc/tei:choice/tei:corr/tei:date/@to]
+ | tei:event[tei:desc/tei:choice/tei:reg/tei:date/@to]">
+<sch:assert test="./@to = ./tei:desc/tei:date/@to | ./tei:desc/tei:choice/tei:corr/tei:date/@to
+ | ./tei:desc/tei:choice/tei:reg/tei:date/@to"> This <event> must have a @to attribute with the value <sch:value-of select="./tei:desc/tei:date/@to | ./tei:desc/tei:choice/tei:corr/tei:date/@to
+ | ./tei:desc/tei:choice/tei:reg/tei:date/@to"/>.
+</sch:assert>
+</sch:rule> |
Schematron |
+<sch:rule context="//tei:ab//tei:event/tei:desc/tei:listRelation/tei:relation">
+<sch:report test="tei:desc">A <relation> element inside of an <event> element cannot take a <desc> element.</sch:report>
+</sch:rule> |
Content model | +<content> + <elementRef key="desc" minOccurs="1" + maxOccurs="1"/> +</content> + ⚓ |
Schema Declaration | +element event +{ + att.global.attributes, + att.datable.attributes, + att.editLike.attributes, + att.typed.attributes, + att.naming.attributes, + att.sortable.attributes, + att.locatable.attributes, + desc +}⚓ |
<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] | |
Module | header |
Attributes |
|
Contained by | header: teiHeader |
May contain | |
Note | Each <fileDesc> contains (in order) a <titleStmt>, an <editionStmt>, a <publicationStmt>, an optional <seriesStmt>, and a <sourceDesc>. |
Example | <fileDesc>
+ <titleStmt>
+ <title>The shortest possible TEI document</title>
+ </titleStmt>
+ <publicationStmt>
+ <p>Distributed as part of TEI P5</p>
+ </publicationStmt>
+ <sourceDesc>
+ <p>No print source exists: this is an original digital text</p>
+ </sourceDesc>
+</fileDesc> |
Content model | +<content> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="titleStmt" minOccurs="1" + maxOccurs="1"/> + <elementRef key="editionStmt" + minOccurs="1" maxOccurs="1"/> + <elementRef key="publicationStmt" + minOccurs="1" maxOccurs="1"/> + <elementRef key="seriesStmt" + minOccurs="1" maxOccurs="unbounded"/> + <elementRef key="sourceDesc" + minOccurs="1" maxOccurs="1"/> + </sequence> +</content> + ⚓ |
Schema Declaration | +element fileDesc +{ + att.global.attributes, + ( titleStmt, editionStmt, publicationStmt, seriesStmt+, sourceDesc ) +}⚓ |
<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] | |
Module | header |
Attributes |
|
Contained by | header: titleStmt |
May contain | Character data only |
Note | Within the <titleStmt>, funding bodies are identified with the <funder> element. If multiple funding bodies are relevant, then each one receives a separate <funder> element. |
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> + <textNode/> +</content> + ⚓ |
Schema Declaration | +element funder +{ + att.global.attributes, + att.canonical.attributes, + att.datable.attributes, + text +}⚓ |
<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] | |
Module | core |
Attributes |
|
Contained by | core: listBibl |
May contain | |
Note | When the child of <sourceDesc>, <head> must contain "Sources for the Data in this Born Digital Prosopography". When the child of <back>, <head> must contain "Works Cited". |
Example | The most common use for the <head> element is to mark the headings of sections. In older writings, the headings or incipits may be rather longer than usual in modern works. If a section has an explicit ending as well as a heading, it should be marked as a <trailer>, as in this example: <div1 n="I" type="book">
+ <head>In the name of Christ here begins the first book of the ecclesiastical history of
+ Georgius Florentinus, known as Gregory, Bishop of Tours.</head>
+ <div2 type="section">
+ <head>In the name of Christ here begins Book I of the history.</head>
+ <p>Proposing as I do ...</p>
+ <p>From the Passion of our Lord until the death of Saint Martin four hundred and twelve
+ years passed.</p>
+ <trailer>Here ends the first Book, which covers five thousand, five hundred and ninety-six
+ years from the beginning of the world down to the death of Saint Martin.</trailer>
+ </div2>
+</div1> |
Example | When headings are not inline with the running text (see e.g. the heading "Secunda conclusio") they might however be encoded as if. The actual placement in the source document can be captured with the place attribute. <div type="subsection">
+ <head place="margin">Secunda conclusio</head>
+ <p>
+ <lb n="1251"/>
+ <hi rend="large">Potencia: habitus: et actus: recipiunt speciem ab obiectis<supplied>.</supplied>
+ </hi>
+ <lb n="1252"/>Probatur sic. Omne importans necessariam habitudinem ad proprium
+ [...]
+ </p>
+</div> |
Example | The <head> element is also used to mark headings of other units, such as lists: With a few exceptions, connectives are equally
+ useful in all kinds of discourse: description, narration, exposition, argument. <list rend="bulleted">
+ <head>Connectives</head>
+ <item>above</item>
+ <item>accordingly</item>
+ <item>across from</item>
+ <item>adjacent to</item>
+ <item>again</item>
+ <item>
+<!-- ... -->
+ </item>
+</list> |
Schematron |
+<sch:rule context="tei:sourceDesc//tei:head">
+<sch:assert test="normalize-space(.) = 'Sources for the Data in this Born Digital Prosopography'"> A <head> element inside the <sourceDesc> must contain the text node:
+ "Sources for the Data in this Born Digital Prosopography". </sch:assert>
+</sch:rule>
+<sch:rule context="tei:back//tei:head">
+<sch:assert test="normalize-space(.) = 'Works Cited'"> A <head> element inside
+ the <back> must contain the text node: "Works Cited". </sch:assert>
+</sch:rule> |
Content model | +<content> + <alternate minOccurs="0" + maxOccurs="unbounded"> + <textNode/> + <elementRef key="lg"/> + <classRef key="model.gLike"/> + <classRef key="model.phrase"/> + <classRef key="model.inter"/> + <classRef key="model.lLike"/> + <classRef key="model.global"/> + </alternate> +</content> + ⚓ |
Schema Declaration | +element head +{ + att.global.attributes, + att.typed.attributes, + att.placement.attributes, + att.written.attributes, + ( + text + | lg + | model.gLike + | model.phrase + | model.inter + | model.lLike + | model.global + )* +}⚓ |
<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. [13.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] | |||||||
Module | header | ||||||
Attributes |
| ||||||
Contained by | |||||||
May contain | header: idno character data | ||||||
Note | This customization requires properly formatted identifiers for each TEI document and for each factoid. It ensures the alignment of the document cool-URI, the document name (always a number), and the factoid cool-URI. In the <teiHeader>, an <idno> requires a @type attribute indicating that it is a "URI". It must also have the text node "https://spear-prosop.org/{\d}/tei", where {\d} is a number that matches the number of the document name. Each factoid also requires an <idno> with a @type attribute of "URI". It must contain the full cool-URI for that factoid. This URI is constructed using the <idno> from the <publicationStmt> and attaching to it the "-{\d}" from the @xml:id on the parent <ab>. | ||||||
Example | <idno type="ISBN">978-1-906964-22-1</idno>
+<idno type="ISSN">0143-3385</idno>
+<idno type="DOI">10.1000/123</idno>
+<idno type="URI">http://www.worldcat.org/oclc/185922478</idno>
+<idno type="URI">http://authority.nzetc.org/463/</idno>
+<idno type="LT">Thomason Tract E.537(17)</idno>
+<idno type="Wing">C695</idno>
+<idno type="oldCat">
+ <g ref="#sym"/>345
+</idno> In the last case, the identifier includes a non-Unicode character which is defined elsewhere by means of a <glyph> or <char> element referenced here as #sym . | ||||||
Schematron |
+<sch:rule context="tei:ab[ancestor::tei:body]/tei:idno">
+<sch:assert test="@type='URI'">An <idno> descendant of <ab>
+ requires a @type attribute with the value "URI".</sch:assert>
+</sch:rule>
+<sch:rule context="//tei:publicationStmt/tei:idno">
+<sch:assert test="@type='URI'">This <idno>
+ requires a @type attribute with the value "URI".</sch:assert>
+</sch:rule>
+<sch:rule context="//tei:seriesStmt/tei:idno">
+<sch:assert test="@type='URI'">This <idno> element
+ requires a @type attribute with the value "URI".</sch:assert>
+</sch:rule> | ||||||
Schematron |
+<sch:rule context="//tei:publicationStmt/tei:idno[@type='URI']">
+<sch:let name="fileNo"
+ value="replace(document-uri(/), '[\D]', '')"/>
+<sch:assert test=". = concat('https://spear-prosop.org/', $fileNo, '/tei')"> The text node of this <idno> must be "https://spear-prosop.org/<sch:value-of select="$fileNo"/>/tei".
+</sch:assert>
+</sch:rule> | ||||||
Schematron |
+<sch:rule context="tei:ab[ancestor::tei:body]/tei:idno">
+<sch:let name="factoidNo"
+ value="parent::tei:ab/@xml:id/substring-after(., 'factoid')"/>
+<sch:assert test="contains(., concat(//tei:publicationStmt/tei:idno[@type]/substring-before(.,
+ '/tei'), $factoidNo))">This factoid URI must be: "<sch:value-of select="concat(//tei:publicationStmt/tei:idno[@type]/substring-before(., '/tei'),
+ $factoidNo)"/>.</sch:assert>
+</sch:rule> | ||||||
Content model | +<content> + <alternate minOccurs="0" + maxOccurs="unbounded"> + <textNode/> + <classRef key="model.gLike"/> + <elementRef key="idno"/> + </alternate> +</content> + ⚓ | ||||||
Schema Declaration | +element idno { attribute type { text }?, ( text | model.gLike | idno )* }⚓ |
<langKnowledge> | |
Module | namesdates |
Contained by | |
May contain | |
Note | This customization constrains the child elements under <langKnowledge> to include only <langKnown> and <note>. |
Content model | +<content> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="langKnown" minOccurs="1" + maxOccurs="1"/> + <elementRef key="note" minOccurs="1" + maxOccurs="1"/> + </sequence> +</content> + ⚓ |
Schema Declaration | +element langKnowledge { langKnown, note }⚓ |
<langKnown> (language known) summarizes the state of a person's linguistic competence, i.e., knowledge of a single language. [15.2.2. The Participant Description] | |||||||||
Module | namesdates | ||||||||
Attributes |
| ||||||||
Contained by | namesdates: langKnowledge | ||||||||
May contain | |||||||||
Note | This customization allows a closed list of values on the @level attribute ("low", "medium", and "high"). It also restricts the required @ana attribute to keyword URIs in the Syriac Taxonomy that pertain to languages. | ||||||||
Example | <langKnown tag="en-GB" level="H">British English</langKnown>
+<langKnown tag="fr" level="M">French</langKnown> | ||||||||
Schematron |
+<sch:rule context="//tei:langKnown/@ana">
+<sch:let name="anaTokens"
+ value="tokenize(., ' ')"/>
+<sch:let name="ti"
+ value="doc('https://raw.githubusercontent.com/srophe/syriaca/master/documentation/indexes/taxonomyIndex-old.xml')"/>
+<sch:let name="languageURIs"
+ value="$ti//listURI[@type = 'languages']/uri"/>
+<sch:let name="errors"
+ value="for $i in $anaTokens return $i[not(. = $languageURIs)]"/>
+<sch:assert test="every $i in $anaTokens satisfies $i = $languageURIs"
+ role="warning">
+ <sch:value-of select="string-join($errors, ', ')"/>: URI(s) not in the Taxonomy. If you find no appropriate concept on the following list,
+ please choose a keyword of your own for the editors to consider: <sch:value-of select="string-join($languageURIs, '; ')"/>.
+</sch:assert>
+</sch:rule> | ||||||||
Content model | +<content> + <macroRef key="macro.phraseSeq.limited"/> +</content> + ⚓ | ||||||||
Schema Declaration | +element langKnown +{ + att.global.attributes, + att.datable.attributes, + att.editLike.attributes, + attribute level { "low" | "medium" | "high" }?, + macro.phraseSeq.limited +}⚓ |
<licence> contains information about a licence or other legal agreement applicable to the text. [2.2.4. Publication, Distribution, Licensing, etc.] | |
Module | header |
Attributes |
|
Member of | |
Contained by | header: availability |
May contain | core: p |
Note | The <license> element, child of <availability>, is used to specify the Creative Commons CC-BY license under which this record is made available. Some records may incorporate information from works under copyright (with permission), a fact which is also indicated with <license>. |
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:licence/tei:p">
+<sch:assert test="normalize-space(.) = 'Distributed under a Creative Commons Attribution
+ 3.0 Unported License.'"> The <licence> element must contain <p> with the text: "Distributed under a Creative Commons Attribution 3.0 Unported License."
+</sch:assert>
+</sch:rule> |
Content model | +<content> + <elementRef key="p" minOccurs="1" + maxOccurs="1"/> +</content> + ⚓ |
Schema Declaration | +element licence +{ + att.global.attributes, + att.pointing.attributes, + att.datable.attributes, + p +}⚓ |
<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 15.3.2. Declarable Elements] | |
Module | core |
Attributes |
|
Member of | |
Contained by | |
May contain | |
Note | The <listBibl> element must contain a <head> and at least one <bibl>. |
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> + <elementRef key="head" minOccurs="1" + maxOccurs="1"/> + <elementRef key="bibl" minOccurs="1" + maxOccurs="unbounded"/> +</content> + ⚓ |
Schema Declaration | +element listBibl +{ + att.global.attributes, + att.sortable.attributes, + att.declarable.attributes, + att.typed.attributes, + head, + bibl+ +}⚓ |
<listPerson> | |
Module | namesdates |
Contained by | linking: ab |
May contain | |
Content model | +<content> + <alternate minOccurs="1" maxOccurs="1"> + <elementRef key="person" minOccurs="1" + maxOccurs="1"/> + <elementRef key="personGrp" minOccurs="1" + maxOccurs="1"/> + </alternate> +</content> + ⚓ |
Schema Declaration | +element listPerson { person | personGrp }⚓ |
<listRelation> provides information about relationships identified amongst people, places, and organizations, either informally as prose or as formally expressed relation links. [13.3.2.3. Personal Relationships] | |
Module | namesdates |
Attributes |
|
Member of | |
Contained by | |
May contain | namesdates: relation |
Note | SPEAR has three basic types of factoid data that are encoded using <listPerson>, <listEvent>, and <listRelation> elements. The TEI Guidelines allow the first two to nest inside <ab> while the last one is not. For uniformity and ease of encoding, SPEAR makes the <listRelation> element a part of the model class model.listLike so that it can function like other list elements and nest directly under the <ab> element. SPEAR also removes all attributes from the <listRelation> element and restricts the child elements to <relation>. |
Example | <listPerson>
+ <person xml:id="pp1">
+<!-- data about person pp1 -->
+ </person>
+ <person xml:id="pp2">
+<!-- data about person pp1 -->
+ </person>
+<!-- more person (pp3, pp4) elements here -->
+ <listRelation type="personal">
+ <relation name="parent"
+ active="#pp1 #pp2" passive="#pp3 #pp4"/>
+ <relation name="spouse"
+ mutual="#pp1 #pp2"/>
+ </listRelation>
+ <listRelation type="social">
+ <relation name="employer" active="#pp1"
+ passive="#pp3 #pp5 #pp6 #pp7"/>
+ </listRelation>
+</listPerson> The persons with identifiers pp1 and pp2 are the parents of pp3 and pp4; they are also married to each other; pp1 is the employer of pp3, pp5, pp6, and pp7. |
Example | <listPerson>
+ <person xml:id="en_pp1">
+<!-- data about person en_pp1 -->
+ </person>
+ <person xml:id="en_pp2">
+<!-- data about person en_pp2 -->
+ </person>
+<!-- more person (en_pp3, en_pp4) elements here -->
+</listPerson>
+<listPlace>
+ <place xml:id="en_pl1">
+<!-- data about place en_pl1 -->
+ </place>
+<!-- more place (en_pl2, en_pl3) elements here -->
+</listPlace>
+<listRelation>
+ <relation name="residence"
+ active="#en_pp1 #en_pp2" passive="#en_pl1"/>
+</listRelation> The persons with identifiers en_pp1 and en_pp2 live in en_pl1. |
Example | <listRelation>
+ <p>All speakers are members of the Ceruli family, born in Naples.</p>
+</listRelation> |
Content model | +<content> + <elementRef key="relation" minOccurs="1" + maxOccurs="unbounded"/> +</content> + ⚓ |
Schema Declaration | +element listRelation +{ + att.global.attributes, + att.typed.attributes, + att.sortable.attributes, + relation+ +}⚓ |
<name> (name, proper noun) contains a proper noun or noun phrase. [3.6.1. Referring Strings] | |
Module | core |
Attributes |
|
Member of | |
Contained by | |
May contain | |
Note | This customization limits the vaules of @ref attributes on <name> as child of <titleStmt> to a Syriaca.org URI for project contributors. |
Example | <name type="person">Thomas Hoccleve</name>
+<name type="place">Villingaholt</name>
+<name type="org">Vetus Latina Institut</name>
+<name type="person" ref="#HOC001">Occleve</name> |
Schematron |
+<sch:rule context="//tei:titleStmt/tei:respStmt/tei:name">
+<sch:assert test="@ref"> A @ref attribute is required.
+</sch:assert>
+</sch:rule>
+<sch:rule context="//tei:titleStmt/tei:respStmt/tei:name/@ref">
+<sch:let name="edsDoc"
+ value="doc('https://raw.githubusercontent.com/srophe/srophe-eXist-app/master/documentation/editors.xml')"/>
+<sch:let name="eds"
+ value="$edsDoc//tei:text/tei:body/tei:listPerson/tei:person/@xml:id"/>
+<sch:let name="refValues"
+ value="for $i in $eds return concat('http://syriaca.org/documentation/editors.xml#',
+ $i)"/>
+<sch:assert test=" every $i in . satisfies $i = $refValues"> Acceptable values for this @ref attribute include:
+<sch:value-of select="string-join($refValues, ' | ')"/>.
+</sch:assert>
+</sch:rule> |
Content model | +<content> + <macroRef key="macro.phraseSeq"/> +</content> + ⚓ |
Schema Declaration | +element name +{ + att.global.attributes, + att.personal.attributes, + att.datable.attributes, + att.editLike.attributes, + att.typed.attributes, + macro.phraseSeq +}⚓ |
<nationality> | |
Module | namesdates |
Attributes |
|
Contained by | |
May contain | |
Note | The TEI name for the <nationality> element is problematic from a pre-Modern perspective. "Citizenship" would be preferable in one sense, yet could in many instances exclude subaltern people such as the enslaved. SPEAR uses the <nationality> element as a general category for people living under a particular jurisdiction. This customization limits the attribute classes of the <nationality> element to att.datable.custom and att.datable.w3c and removes the <nationality> element from all model classes. It also requires exactly one <placeName> child and one <note> child and allows an optional <date> child. |
Content model | +<content> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="placeName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="date" minOccurs="0" + maxOccurs="1"/> + <elementRef key="note" minOccurs="1" + maxOccurs="1"/> + </sequence> +</content> + ⚓ |
Schema Declaration | +element nationality +{ + att.datable.custom.attributes, + att.datable.w3c.attributes, + ( placeName, date?, 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 9.3.5.4. Notes within Entries] | |||||||||||||||||||||||||||||||
Module | core | ||||||||||||||||||||||||||||||
Attributes |
| ||||||||||||||||||||||||||||||
Member of | |||||||||||||||||||||||||||||||
Contained by | |||||||||||||||||||||||||||||||
May contain | |||||||||||||||||||||||||||||||
Note | SPEAR factoids contain <note> elements that allow the encoder to offer a more prose-oriented description of the data that they have derived from the source they are analyzing. The content of the <note> is what human users encounter when using the HTML serialization of the data. This customization constrains the use of this element to ensure that the data marked up inside the <note> agrees with the more data-oriented encoding found elsewhere in the factoid. | ||||||||||||||||||||||||||||||
Example | In the following example, the translator has supplied a footnote containing an explanation of the term translated as "painterly": And yet it is not only
+ in the great line of Italian renaissance art, but even in the
+ painterly <note place="bottom" type="gloss"
+ resp="#MDMH">
+ <term xml:lang="de">Malerisch</term>. This word has, in the German, two
+ distinct meanings, one objective, a quality residing in the object,
+ the other subjective, a mode of apprehension and creation. To avoid
+ confusion, they have been distinguished in English as
+<mentioned>picturesque</mentioned> and
+<mentioned>painterly</mentioned> respectively.
+</note> style of the
+ Dutch genre painters of the seventeenth century that drapery has this
+ psychological significance.
+
+<!-- elsewhere in the document -->
+<respStmt xml:id="MDMH">
+ <resp>translation from German to English</resp>
+ <name>Hottinger, Marie Donald Mackie</name>
+</respStmt> For this example to be valid, the code MDMH must be defined elsewhere, for example by means of a responsibility statement in the associated TEI header. | ||||||||||||||||||||||||||||||
Example | The global n attribute may be used to supply the symbol or number used to mark the note's point of attachment in the source text, as in the following example: Mevorakh b. Saadya's mother, the matriarch of the
+ family during the second half of the eleventh century, <note n="126" anchored="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[parent::tei:birth and preceding-sibling::tei:placeName]">
+<sch:assert test="tei:persName">The <note> element in a birth place factoid
+ must contain a <persName>.</sch:assert>
+<sch:assert test="tei:placeName">The <note> element in a birth place factoid
+ must contain a <placeName>.</sch:assert>
+</sch:rule>
+<sch:rule context="tei:note[parent::tei:birth and preceding-sibling::tei:date]">
+<sch:assert test="tei:persName">The <note> element in a birth date factoid
+ must contain a <persName>.</sch:assert>
+</sch:rule>
+<sch:rule context="tei:note[parent::tei:nationality and preceding-sibling::tei:placeName]">
+<sch:assert test="tei:persName">The <note> element in a citizenship factoid
+ must contain a <persName>.</sch:assert>
+<sch:assert test="tei:placeName">The <note> element in a citizenship factoid
+ must contain a <placeName>.</sch:assert>
+</sch:rule>
+<sch:rule context="tei:note[parent::tei:death and preceding-sibling::tei:placeName]">
+<sch:assert test="tei:persName">The <note> element in a death place factoid
+ must contain a <persName>.</sch:assert>
+<sch:assert test="tei:placeName">The <note> element in a birth place factoid
+ must contain a <placeName>.</sch:assert>
+</sch:rule>
+<sch:rule context="tei:note[parent::tei:education]">
+<sch:assert test="tei:persName">The <note> element in an education factoid
+ must contain a <persName>.</sch:assert>
+</sch:rule>
+<sch:rule context="tei:note[parent::tei:death and preceding-sibling::tei:date]">
+<sch:assert test="tei:persName">The <note> element in a death date factoid
+ must contain a <persName>.</sch:assert>
+</sch:rule>
+<sch:rule context="tei:note[parent::tei:occupation]">
+<sch:assert test="tei:persName">The <note> element in an occupation factoid
+ must contain a <persName>.</sch:assert>
+</sch:rule>
+<sch:rule context="tei:note[parent::tei:residence and preceding-sibling::tei:placeName]">
+<sch:assert test="tei:persName">The <note> element in a residence factoid must
+ contain a <persName>.</sch:assert>
+<sch:assert test="tei:placeName">The <note> element in a residence factoid
+ must contain a <placeName>.</sch:assert>
+</sch:rule>
+<sch:rule context="tei:note[parent::tei:socecStatus]">
+<sch:assert test="tei:persName">The <note> element in a socioeconomic status
+ factoid must contain a <persName>.</sch:assert>
+</sch:rule>
+<sch:rule context="tei:note[parent::tei:langKnowledge and preceding-sibling::tei:langKnown]">
+<sch:assert test="tei:persName">The <note> element in a language-known factoid
+ must contain a <persName>.</sch:assert>
+</sch:rule>
+<sch:rule context="tei:note[parent::tei:trait]">
+<sch:assert test="tei:persName">The <note> element inside the <trait>
+ element must contain a <persName>.</sch:assert>
+</sch:rule>
+<sch:rule context="tei:note[parent::tei:state]">
+<sch:assert test="tei:persName">The <note> element inside the <state>
+ element must contain a <persName>.</sch:assert>
+</sch:rule>
+<sch:rule context="tei:note[parent::tei:reg and preceding-sibling::tei:date]">
+<sch:assert test="@ana">This <note> element requires an @ana
+ attribute.</sch:assert>
+</sch:rule> | ||||||||||||||||||||||||||||||
Schematron |
+<sch:rule context="tei:note[parent::tei:birth | parent::tei:death | parent::tei:education
+ | parent::tei:langKnowledge | parent::tei:nationality | parent::tei:occupation
+ | parent::tei:residence | parent::tei:socecStatus | parent::tei:state
+ | parent::tei:trait]/tei:persName[1]/@ref">
+<sch:assert test=". = ancestor::tei:person/tei:persName/@ref | ancestor::tei:personGrp/tei:persName/@ref"> The URI in this @ref attribute and the URI in the @ref attribute on the <persName> that
+ is the child of <person> must match.
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:note[parent::tei:birth | parent::tei:death | parent::tei:nationality
+ | parent::tei:residence]/tei:placeName[1]/@ref">
+<sch:report test=". = ancestor::tei:person/tei:placeName/@ref | ancestor::tei:personGrp/tei:placeName/@ref"> The URI in this @ref attribute and the URI in the @ref attribute on the <placeName> that
+ is the child of <person> must match.
+</sch:report>
+</sch:rule> | ||||||||||||||||||||||||||||||
Schematron |
+<sch:rule context="tei:note[parent::tei:reg and preceding-sibling::tei:date]">
+<sch:assert test="normalize-space(.) = 'This regularized date was calculated by the
+ SPEAR editor from a non-calendrical dating system such as regnal years,
+ etc.'"> The only note allowed in this context must contain the following text: "This
+ regularized date was calculated by the SPEAR editor from a non-calendrical dating
+ system such as regnal years, etc." </sch:assert>
+</sch:rule> | ||||||||||||||||||||||||||||||
Content model | +<content> + <macroRef key="macro.specialPara"/> +</content> + ⚓ | ||||||||||||||||||||||||||||||
Schema Declaration | +element note +{ + att.global.attribute.xmlid, + att.global.attribute.n, + att.global.attribute.xmllang, + att.global.attribute.xmlbase, + att.global.attribute.xmlspace, + att.global.rendition.attribute.rend, + att.global.rendition.attribute.style, + att.global.rendition.attribute.rendition, + att.global.linking.attribute.corresp, + att.global.linking.attribute.synch, + att.global.linking.attribute.sameAs, + att.global.linking.attribute.copyOf, + att.global.linking.attribute.next, + att.global.linking.attribute.prev, + att.global.linking.attribute.exclude, + att.global.linking.attribute.select, + att.global.responsibility.attribute.cert, + att.global.responsibility.attribute.resp, + att.global.source.attribute.source, + att.placement.attributes, + att.pointing.attributes, + att.written.attributes, + attribute ana { "#calculated" }?, + attribute type { "desc" | "certainty" | "relatedEvent" }?, + attribute subtype { "incerta" | "dubia" | "errata" }?, + macro.specialPara +}⚓ |
<num> (number) contains a number, written in any form. [3.6.3. Numbers and Measures] | |||||||||||||||||||||||
Module | core | ||||||||||||||||||||||
Attributes |
| ||||||||||||||||||||||
Member of | |||||||||||||||||||||||
Contained by | |||||||||||||||||||||||
May contain | |||||||||||||||||||||||
Note | Detailed analyses of quantities and units of measure in historical documents may also use the feature structure mechanism described in chapter 18. Feature Structures. The <num> element is intended for use in simple applications. | ||||||||||||||||||||||
Example | <p>I reached <num type="cardinal" value="21">twenty-one</num> on
+ my <num type="ordinal" value="21">twenty-first</num> birthday</p>
+<p>Light travels at <num value="3E10">3×10<hi rend="sup">10</hi>
+ </num> cm per second.</p> | ||||||||||||||||||||||
Content model | +<content> + <macroRef key="macro.phraseSeq"/> +</content> + ⚓ | ||||||||||||||||||||||
Schema Declaration | +element num +{ + att.global.attributes, + att.typed.attribute.subtype, + att.ranging.attributes, + attribute type { "cardinal" | "ordinal" | "fraction" | "percentage" }?, + attribute value { text }?, + macro.phraseSeq +}⚓ |
<occupation> (occupation) contains an informal description of a person's trade, profession or occupation. [15.2.2. The Participant Description] | |||||||||||||||||||||||
Module | namesdates | ||||||||||||||||||||||
Attributes |
| ||||||||||||||||||||||
Contained by | |||||||||||||||||||||||
May contain | core: note | ||||||||||||||||||||||
Note | This customization restricts the attribute classes of <occupation> to att.datable.w3c and att.global.analytic. If more precise dating is required for a SPEAR factoid, the encoder should use the <date> element. It only allows <note> as a child element and it restricts the required @ana attribute to keyword URIs in the Syriac Taxonomy that pertain to occupations. | ||||||||||||||||||||||
Example | <occupation>accountant</occupation> | ||||||||||||||||||||||
Example | <occupation scheme="#occupationtaxonomy"
+ code="#acc">accountant</occupation> | ||||||||||||||||||||||
Content model | +<content> + <elementRef key="note" minOccurs="1" + maxOccurs="1"/> +</content> + ⚓ | ||||||||||||||||||||||
Schema Declaration | +element occupation +{ + att.datable.w3c.attributes, + attribute ana { list { + } }, + attribute scheme { text }?, + attribute code { text }?, + note +}⚓ |
<orgName> (organization name) contains an organizational name. [13.2.2. Organizational Names] | |
Module | namesdates |
Attributes |
|
Member of | |
Contained by | |
May contain | |
Example | About a year back, a question of considerable interest was agitated in the <orgName key="PAS1" type="voluntary">
+ <placeName key="PEN">Pennsyla.</placeName> Abolition Society
+</orgName> [...] |
Content model | +<content> + <macroRef key="macro.phraseSeq"/> +</content> + ⚓ |
Schema Declaration | +element orgName +{ + att.global.attributes, + att.datable.attributes, + att.editLike.attributes, + att.personal.attributes, + att.typed.attributes, + macro.phraseSeq +}⚓ |
<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 12. Critical Apparatus] | |
Module | core |
Member of | |
Contained by | |
May contain | |
Example | If all that is desired is to call attention to the original version in the copy text, <orig> may be used alone: <l>But this will be a <orig>meere</orig> confusion</l>
+<l>And hardly shall we all be <orig>vnderstoode</orig>
+</l> |
Example | More usually, an <orig> will be combined with a regularized form within a <choice> element: <l>But this will be a <choice>
+ <orig>meere</orig>
+ <reg>mere</reg>
+ </choice> confusion</l>
+<l>And hardly shall we all be <choice>
+ <orig>vnderstoode</orig>
+ <reg>understood</reg>
+ </choice>
+</l> |
Content model | +<content> + <macroRef key="macro.paraContent"/> +</content> + ⚓ |
Schema Declaration | +element orig { macro.paraContent }⚓ |
<p> (paragraph) marks paragraphs in prose. [3.1. Paragraphs 7.2.5. Speech Contents] | |
Module | core |
Attributes |
|
Member of | |
Contained by | core: note header: availability change editorialDecl licence |
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: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> |
Schematron |
+<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> |
Content model | +<content> + <macroRef key="macro.paraContent"/> +</content> + ⚓ |
Schema Declaration | +element p +{ + att.global.attributes, + att.declaring.attributes, + att.fragmentable.attributes, + att.written.attributes, + macro.paraContent +}⚓ |
<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. [13.2.1. Personal Names] | |||||||||
Module | namesdates | ||||||||
Attributes |
| ||||||||
Member of | |||||||||
Contained by | |||||||||
May contain | |||||||||
Note | This customization requires <persName> to have a @ref attribute that points to a Syriaca.org authority file for a person. | ||||||||
Example | <persName>
+ <forename>Edward</forename>
+ <forename>George</forename>
+ <surname type="linked">Bulwer-Lytton</surname>, <roleName>Baron Lytton of
+ <placeName>Knebworth</placeName>
+ </roleName>
+</persName> | ||||||||
Content model | +<content> + <macroRef key="macro.phraseSeq"/> +</content> + ⚓ | ||||||||
Schema Declaration | +element persName +{ + att.datable.w3c.attributes, + attribute ref { text }, + macro.phraseSeq +}⚓ |
<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. [13.3.2. The Person Element 15.2.2. The Participant Description] | |||||||||||||||||||||||||||||||||
Module | namesdates | ||||||||||||||||||||||||||||||||
Attributes |
| ||||||||||||||||||||||||||||||||
Contained by | namesdates: listPerson | ||||||||||||||||||||||||||||||||
May contain | |||||||||||||||||||||||||||||||||
Note | The <person> element contains person factoid data. This customization requires the proper structure for that data. The first child of <person> must be a self-closing <persName> element with a @ref attribute containing a URIs pointing to Syriaca.org authority file for a person. The next child element must be one of the following: <birth>, <death>, <education>, <langKnown>, <nationality>, <occupation>, <residence>, <socecStatus>, <state>, or <trait>. | ||||||||||||||||||||||||||||||||
Example | <person sex="F" age="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="intersex" role="god"
+ age="immortal">
+ <persName>Hermaphroditos</persName>
+ <persName xml:lang="grc">Ἑρμαφρόδιτος</persName>
+</person> | ||||||||||||||||||||||||||||||||
Example | <person xml:id="Ovi01" sex="M" role="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="0017" notAfter="0018">17 or 18 AD <placeName>
+ <settlement type="city">Tomis (Constanta)</settlement>
+ <country key="RO">Romania</country>
+ </placeName>
+ </death>
+</person> | ||||||||||||||||||||||||||||||||
Example | The following exemplifies an adaptation of the vCard standard to indicate an unknown gender for a fictional character. <person xml:id="ariel" gender="U">
+ <persName>Ariel</persName>
+ <note>Character in <title level="m">The Tempest</title>.</note>
+</person> | ||||||||||||||||||||||||||||||||
Content model | +<content> + <alternate minOccurs="1" maxOccurs="1"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="birth" minOccurs="1" + maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="death" minOccurs="1" + maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="education" + minOccurs="1" maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="langKnowledge" + minOccurs="1" maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="nationality" + minOccurs="0" maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="occupation" + minOccurs="1" maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="residence" + minOccurs="1" maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="socecStatus" + minOccurs="0" maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="state" minOccurs="1" + maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="trait" minOccurs="0" + maxOccurs="1"/> + </sequence> + </alternate> +</content> + ⚓ | ||||||||||||||||||||||||||||||||
Schema Declaration | +element person +{ + attribute role { list { + } }?, + attribute sex { list { + } }?, + attribute gender { list { + } }?, + attribute age { text }?, + ( + persName + | ( persName, birth ) + | ( persName, death ) + | ( persName, education ) + | ( persName, langKnowledge ) + | ( persName, nationality? ) + | ( persName, occupation ) + | ( persName, residence ) + | ( persName, socecStatus? ) + | ( persName, state ) + | ( persName, trait? ) + ) +}⚓ |
<personGrp> (personal group) describes a group of individuals treated as a single person for analytic purposes. [15.2.2. The Participant Description] | |||||||||||||||||
Module | namesdates | ||||||||||||||||
Attributes |
| ||||||||||||||||
Contained by | namesdates: listPerson | ||||||||||||||||
May contain | core: ptr | ||||||||||||||||
Note | May contain a prose description organized as paragraphs, or any sequence of demographic elements in any combination. The global xml:id attribute should be used to identify each speaking participant in a spoken text if the who attribute is specified on individual utterances. | ||||||||||||||||
Example | <personGrp xml:id="pg1" role="audience"
+ sex="mixed" size="approx 50"/> | ||||||||||||||||
Content model | +<content> + <alternate minOccurs="1" maxOccurs="1"> + <sequence minOccurs="1" maxOccurs="1"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="ptr" minOccurs="1" + maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="education" + minOccurs="1" maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="nationality" + minOccurs="0" maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="residence" + minOccurs="1" maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="occupation" + minOccurs="1" maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="langKnowledge" + minOccurs="1" maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="state" minOccurs="1" + maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="trait" minOccurs="0" + maxOccurs="1"/> + </sequence> + <sequence minOccurs="1" maxOccurs="1"> + <elementRef key="persName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="socecStatus" + minOccurs="0" maxOccurs="1"/> + </sequence> + </alternate> +</content> + ⚓ | ||||||||||||||||
Schema Declaration | +element personGrp +{ + attribute sex { list { + } }?, + attribute gender { list { + } }?, + ( + ( persName, ptr ) + | ( persName, education ) + | ( persName, nationality? ) + | ( persName, residence ) + | ( persName, occupation ) + | ( persName, langKnowledge ) + | ( persName, state ) + | ( persName, trait? ) + | ( persName, socecStatus? ) + ) +}⚓ |
<placeName> (place name) contains an absolute or relative place name. [13.2.3. Place Names] | |||||||||
Module | namesdates | ||||||||
Attributes |
| ||||||||
Member of | |||||||||
Contained by | |||||||||
May contain | |||||||||
Note | This customization requires <placeName> to have a @ref attribute that points to a Syriaca.org authority file for a place. | ||||||||
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 { attribute ref { text }, macro.phraseSeq }⚓ |
<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] | |
Module | header |
Attributes |
|
Contained by | header: teiHeader |
May contain | Empty element |
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="entertain" degree="high"/>
+ <purpose type="inform" degree="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 { att.global.attributes, model.profileDescPart* }⚓ |
<ptr> (pointer) defines a pointer to another location. [3.7. Simple Links and Cross-References 16.1. Links] | |||||||||
Module | core | ||||||||
Attributes |
| ||||||||
Member of | |||||||||
Contained by | |||||||||
May contain | Empty element | ||||||||
Note | This customization requires a <ptr> to have a @type attribute (indicating "primary", "secondary", or "URN") and a @target attribute. It also ensures that the @target attribute with primary and secondary sources indicates a Syriaca.org authority file for a work or a bibliographic item. | ||||||||
Example | <ptr target="#p143 #p144"/>
+<ptr target="http://www.tei-c.org"/>
+<ptr cRef="1.3.4"/> | ||||||||
Schematron |
+<sch:report test="@target and @cRef">Only one of the
+ attributes @target and @cRef may be supplied on <sch:name/>.</sch:report> | ||||||||
Content model | +<content> + <empty/> +</content> + ⚓ | ||||||||
Schema Declaration | +element ptr { attribute target { list { + } }, empty }⚓ |
<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] | |
Module | core |
Attributes |
|
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 +{ + att.global.attributes, + att.naming.attributes, + macro.phraseSeq +}⚓ |
<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] | |
Module | header |
Attributes |
|
Contained by | header: fileDesc |
May contain | core: date header: authority availability idno |
Note | The <publicationStmt> is where we identify Syriaca.org as the entity responsible for publishing this information, indicate the date of the most recent edit, and identify the use license (Creative Commons CC-BY). |
Example | <publicationStmt>
+ <publisher>C. Muquardt </publisher>
+ <pubPlace>Bruxelles & 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> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="authority" minOccurs="1"/> + <elementRef key="idno" minOccurs="1"/> + <elementRef key="availability" + minOccurs="1"/> + <elementRef key="date" minOccurs="1"/> + </sequence> +</content> + ⚓ |
Schema Declaration | +element publicationStmt +{ + att.global.attributes, + ( authority, idno, availability, date ) +}⚓ |
<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.] | |
Module | core |
Attributes |
|
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 +{ + att.global.attributes, + att.canonical.attributes, + macro.phraseSeq +}⚓ |
<ref> (reference) defines a reference to another location, possibly modified by additional text or comment. [3.7. Simple Links and Cross-References 16.1. Links] | |
Module | core |
Attributes |
|
Member of | |
Contained by | |
May contain | |
Note | The target and cRef attributes are mutually exclusive. |
Example | See especially <ref target="http://www.natcorp.ox.ac.uk/Texts/A02.xml#s2">the second
+ sentence</ref> |
Example | See also <ref target="#locution">s.v. <term>locution</term>
+</ref>. |
Schematron |
+<sch:report test="@target and @cRef">Only one of the
+ attributes @target' and @cRef' may be supplied on <sch:name/>
+</sch:report> |
Content model | +<content> + <macroRef key="macro.paraContent"/> +</content> + ⚓ |
Schema Declaration | +element ref +{ + att.cReferencing.attributes, + att.declaring.attributes, + att.global.attributes, + att.internetMedia.attributes, + att.pointing.attributes, + att.typed.attributes, + macro.paraContent +}⚓ |
<reg> (regularization) contains a reading which has been regularized or normalized in some sense. [3.5.2. Regularization and Normalization 12. Critical Apparatus] | |
Module | core |
Member of | |
Contained by | |
May contain | |
Example | If all that is desired is to call attention to the fact that the copy text has been regularized, <reg> may be used alone: <q>Please <reg>knock</reg> if an <reg>answer</reg> is <reg>required</reg>
+</q> |
Example | It is also possible to identify the individual responsible for the regularization, and, using the <choice> and <orig> elements, to provide both the original and regularized readings: <q>Please <choice>
+ <reg resp="#LB">knock</reg>
+ <orig>cnk</orig>
+ </choice> if an <choice>
+ <reg>answer</reg>
+ <orig>nsr</orig>
+ </choice> is <choice>
+ <reg>required</reg>
+ <orig>reqd</orig>
+ </choice>
+</q> |
Content model | +<content> + <macroRef key="macro.paraContent"/> +</content> + ⚓ |
Schema Declaration | +element reg { macro.paraContent }⚓ |
<relation> (relationship) describes any kind of relationship or linkage amongst a specified group of places, events, persons, objects or other items. [13.3.2.3. Personal Relationships] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Module | namesdates | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Attributes |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Contained by | namesdates: listRelation | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
May contain | core: desc | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Note | The <relation> element is used for personal relationships and constitutes one of the three main data types in SPEAR. When SPEAR encodes straight relationships, they appear in a relationship factoid (tei:ab[@subtype="relation"]/tei:listRelation/tei:relation). Relationships can also appear inside an event factoid in cases where an event creates a relationship, i.e. a wedding is an event that created a spousal relationship. In such cases, SPEAR encodes this relationship inside the event factoid. In addition to these personal relationships, the <relation> element is also used to encode relationships between closely related events. The <relation> element is also used in the <teiHeader>. In the context of personal relationships, this customization constrains the @ref, @ana, @active, @passive, and @mutual attributes. A @ref attribute is required and must contain a URI pointing to a personal relationship in the Syriac Taxonomy. An @ana attribute is optional but when used must contain a URI pointing to a qualifier relationship in the Syriac Taxonomy, i.e. a sibling relationship might be qualified as a step-sibling relationship using @ana. For mutual relationship where each participant has the same relationship to the other (i.e. spousal), a @mutual attribute is used with all of the participants in that relationship listed. In the case of a directed relationship (i.e. where person X is the parent of person Y) both the @active and @passive attributes are used. The values allowed on the @active, @passive, and @mutual attributes are URIs pointing to Syriaca.org authority files for persons. In the context of relationships between events, this customization only allows appropriate values on @ref while excluding @ana, @active, and @passive attributes. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Example | <relation type="social" name="supervisor"
+ active="#p1" passive="#p2 #p3 #p4"/> This indicates that the person with identifier p1 is supervisor of persons p2, p3, and p4. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Example | <relation type="personal" name="friends"
+ mutual="#p2 #p3 #p4"/> This indicates that p2, p3, and p4 are all friends. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Example | <relation type="CRM"
+ name="P89_falls_within"
+ active="http://id.clarosnet.org/places/metamorphoses/place/italy-orvieto"
+ passive="http://id.clarosnet.org/places/metamorphoses/country/IT"/> This indicates that there is a relation, defined by CIDOC CRM, between two resources identified by URLs. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Example | <relation resp="http://viaf.org/viaf/44335536/"
+ ref="http://purl.org/saws/ontology#isVariantOf"
+ active="http://www.ancientwisdoms.ac.uk/cts/urn:cts:greekLit:tlg3017.Syno298.sawsGrc01:divedition.divsection1.o14.a107"
+ passive="http://data.perseus.org/citations/urn:cts:greekLit:tlg0031.tlg002.perseus-grc1:9.35"/> This example records a relationship, defined by the SAWS ontology, between a passage of text identified by a CTS URN, and a variant passage of text in the Perseus Digital Library, and assigns the identification of the relationship to a particular editor (all using resolvable URIs). | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Schematron |
+<sch:rule context="tei:ab[@subtype='relation']/tei:listRelation/tei:relation | tei:ab[@subtype='event']/tei:listEvent/tei:event/tei:desc/tei:listRelation/tei:relation">
+<sch:let name="ti"
+ value="doc('https://raw.githubusercontent.com/srophe/syriaca/master/documentation/indexes/taxonomyIndex-old.xml')"/>
+<sch:let name="mutual"
+ value="$ti//listURI[@type = 'relationships']//uri[@ana = 'mutual']"/>
+<sch:let name="directed"
+ value="$ti//listURI[@type = 'relationships']//uri[@ana = 'directed']"/>
+<sch:assert test=".[@ref = $mutual]/@mutual or .[@ref = $directed]/@active">This <relation> takes either a @mutual attribute with mutual
+ relationships or both @active and @passive attributes with directed
+ relationships. Mutual relationships include: <sch:value-of select="string-join($mutual, '; ')"/>. Directed relationships include:
+<sch:value-of select="string-join($directed, '; ')"/>.</sch:assert>
+<sch:assert test=".[@ref = $mutual]/@mutual or .[@ref = $directed]/@passive">This <relation> takes either a @mutual attribute with mutual
+ relationships or both @active and @passive attributes with directed
+ relationships. Mutual relationships include: <sch:value-of select="string-join($mutual, '; ')"/>. Directed relationships include:
+<sch:value-of select="string-join($directed, '; ')"/>.</sch:assert>
+</sch:rule>
+<sch:rule context="tei:ab[@subtype='event']/tei:listRelation/tei:relation">
+<sch:assert test="@mutual">A @mutual attribute is required on <relation>
+ in event factoids.</sch:assert>
+<sch:report test="@active">@active attributes are not allowed on <relation>
+ in event factoids.</sch:report>
+<sch:report test="@passive">@passive attributes are not allowed on <relation>
+ in event factoids.</sch:report>
+</sch:rule>
+<sch:rule context="tei:ab[@subtype='relation']/tei:listRelation/tei:relation/@mutual
+ | tei:ab[@subtype='relation']/tei:listRelation/tei:relation/@active
+ | tei:ab[@subtype='relation']/tei:listRelation/tei:relation/@passive
+ | tei:ab[@subtype='event']/tei:listEvent/tei:event/tei:desc/tei:listRelation/tei:relation/@mutual
+ | tei:ab[@subtype='event']/tei:listEvent/tei:event/tei:desc/tei:listRelation/tei:relation/@active
+ | tei:ab[@subtype='event']/tei:listEvent/tei:event/tei:desc/tei:listRelation/tei:relation/@passive">
+<sch:let name="personIndex"
+ value="doc('https://raw.githubusercontent.com/srophe/syriaca/master/documentation/indexes/persons.xml')"/>
+<sch:let name="personURIs"
+ value="$personIndex//tei:person/@ref"/>
+<sch:let name="error" value="."/>
+<sch:assert test=" every $i in (tokenize(., ' ')) satisfies $i = $personURIs"
+ role="warning">
+ <sch:value-of select="$error"/> is not currently in use.
+ Note that all person URIs take the form 'http://syriaca.org/person/{\d+}'
+ (where {\d+} is a number). If a URI is not current available, replace the number portion of the URI with
+ "#" followed without a space by a number that you use consistently when encoding information
+ about that person.
+</sch:assert>
+</sch:rule> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Schematron |
+<sch:rule context="tei:event[@when]//tei:relation">
+<sch:assert test="./@when = ./ancestor::tei:event/@when"> This <relation> must have a @when attribute with the value <sch:value-of select="./ancestor::tei:event/@when"/>.
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:event[@notBefore]//tei:relation">
+<sch:assert test="./@notBefore = ./ancestor::tei:event/@notBefore"> This <relation> must have a @notBefore attribute with the value <sch:value-of select="./ancestor::tei:event/@notBefore"/>.
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:event[@notAfter]//tei:relation">
+<sch:assert test="./@notAfter = ./ancestor::tei:event/@notAfter"> This <relation> must have a @notAfter attribute with the value <sch:value-of select="./ancestor::tei:event/@notAfter"/>.
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:event[@from]//tei:relation">
+<sch:assert test="./@from = ./ancestor::tei:event/@from"> This <relation> must have a @from attribute with the value <sch:value-of select="./ancestor::tei:event/@from"/>.
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:event[@to]//tei:relation">
+<sch:assert test="./@to = ./ancestor::tei:event/@to"> This <relation> must have a @to attribute with the value <sch:value-of select="./ancestor::tei:event/@to"/>.
+</sch:assert>
+</sch:rule> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Schematron |
+<sch:assert test="@ref or @key or @name">One of the attributes 'name', 'ref' or 'key' must be supplied</sch:assert> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Schematron |
+<sch:report test="@active and @mutual">Only one of the attributes @active and @mutual may be supplied</sch:report> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Schematron |
+<sch:report test="@passive and not(@active)">the attribute 'passive' may be supplied only if the attribute 'active' is supplied</sch:report> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Content model | +<content> + <elementRef key="desc" minOccurs="0" + maxOccurs="1"/> +</content> + ⚓ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Schema Declaration | +element relation +{ + att.global.attribute.xmlid, + att.global.attribute.n, + att.global.attribute.xmllang, + att.global.attribute.xmlbase, + att.global.attribute.xmlspace, + att.global.rendition.attribute.rend, + att.global.rendition.attribute.style, + att.global.rendition.attribute.rendition, + att.global.linking.attribute.corresp, + att.global.linking.attribute.synch, + att.global.linking.attribute.sameAs, + att.global.linking.attribute.copyOf, + att.global.linking.attribute.next, + att.global.linking.attribute.prev, + att.global.linking.attribute.exclude, + att.global.linking.attribute.select, + att.global.responsibility.attribute.cert, + att.global.responsibility.attribute.resp, + att.global.source.attribute.source, + att.datable.attributes, + att.editLike.attributes, + att.canonical.attribute.key, + att.sortable.attributes, + att.typed.attribute.subtype, + attribute ana { list { * } }?, + attribute ref { list { + } }?, + attribute type { text }, + ( attribute active { list { + } }? | attribute mutual { list { + } }? ), + attribute name { text }?, + attribute passive { list { + } }?, + desc? +}⚓ |
<residence> | |
Module | namesdates |
Attributes |
|
Contained by | |
May contain | |
Note | This customization limits the attribute classes of the <residence> element to att.datable.custom and att.datable.w3c and removes the <residence> element from all model classes. It also requires exactly one <placeName> child and one <note> child and allows an optional <date> child. |
Content model | +<content> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="placeName" minOccurs="1" + maxOccurs="1"/> + <elementRef key="date" minOccurs="0" + maxOccurs="1"/> + <elementRef key="note" minOccurs="1" + maxOccurs="1"/> + </sequence> +</content> + ⚓ |
Schema Declaration | +element residence +{ + att.datable.custom.attributes, + att.datable.w3c.attributes, + ( placeName, date?, note ) +}⚓ |
<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] | |
Module | core |
Attributes |
|
Contained by | core: respStmt |
May contain | |
Note | The attribute ref, inherited from the class att.canonical may be used to indicate the kind of responsibility in a normalized form by referring directly to a standardized list of responsibility types, such as that maintained by a naming authority, for example the list maintained at http://www.loc.gov/marc/relators/relacode.html for bibliographic usage. |
Example | <respStmt>
+ <resp ref="http://id.loc.gov/vocabulary/relators/com.html">compiler</resp>
+ <name>Edward Child</name>
+</respStmt> |
Content model | +<content> + <macroRef key="macro.phraseSeq.limited"/> +</content> + ⚓ |
Schema Declaration | +element resp +{ + att.global.attributes, + att.canonical.attributes, + att.datable.attributes, + macro.phraseSeq.limited +}⚓ |
<respStmt> (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] | |
Module | core |
Attributes |
|
Contained by | header: seriesStmt titleStmt |
May contain | |
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 +{ + att.global.attributes, + att.canonical.attributes, + ( + ( ( resp+, model.nameLike.agent+ ) | ( model.nameLike.agent+, resp+ ) ), + note* + ) +}⚓ |
<revisionDesc> (revision description) summarizes the revision history for a file. [2.6. The Revision Description 2.1.1. The TEI Header and Its Components] | |||||||||||
Module | header | ||||||||||
Attributes |
| ||||||||||
Contained by | header: teiHeader | ||||||||||
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-11" who="#LB"> deleted chapter 10 </change>
+</revisionDesc> | ||||||||||
Content model | +<content> + <elementRef key="change" minOccurs="0" + maxOccurs="unbounded"/> +</content> + ⚓ | ||||||||||
Schema Declaration | +element revisionDesc +{ + att.global.attributes, + attribute status { text }?, + change* +}⚓ |
<rs> (referencing string) contains a general purpose name or referring string. [13.2.1. Personal Names 3.6.1. Referring Strings] | |
Module | core |
Attributes |
|
Member of | |
Contained by | |
May contain | Character data only |
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:ab/tei:listEvent/tei:listRelation/tei:relation/tei:desc/tei:rs/@ref">
+<sch:let name="SameEventURIs"
+ value="tokenize(ancestor::tei:relation/@mutual, ' ')"/>
+<sch:let name="countMutual"
+ value="for $i in $SameEventURIs return count($i)"/>
+<sch:assert test=". = $SameEventURIs"> Acceptable values: <sch:value-of select="string-join($SameEventURIs, '; ')"/>
+</sch:assert>
+</sch:rule>
+<sch:rule context="//tei:ab//tei:rs">
+<sch:let name="URIno"
+ value="substring-after(@ref, 'spear-prosop.org/')"/>
+<sch:assert test=". = $URIno"> The text node of this <rs> element must be <sch:value-of select="$URIno"/>.
+</sch:assert>
+</sch:rule> |
Content model | +<content> + <textNode/> +</content> + ⚓ |
Schema Declaration | +element rs +{ + att.global.attributes, + att.naming.attributes, + att.typed.attributes, + text +}⚓ |
<seriesStmt> (series statement) groups information about the series, if any, to which a publication belongs. [2.2.5. The Series Statement 2.2. The File Description] | |
Module | header |
Attributes |
|
Contained by | header: fileDesc |
May contain | |
Example | <seriesStmt>
+ <title>Machine-Readable Texts for the Study of Indian Literature</title>
+ <respStmt>
+ <resp>ed. by</resp>
+ <name>Jan Gonda</name>
+ </respStmt>
+ <biblScope unit="volume">1.2</biblScope>
+ <idno type="ISSN">0 345 6789</idno>
+</seriesStmt> |
Schematron |
+<sch:rule context="tei:seriesStmt[1]/tei:title[1]">
+<sch:assert test="@level='s'"> The <title> requires a @level attribute with a value of "s".
+</sch:assert>
+<sch:assert test=". = 'SPEAR: Syriac Persons, Events, and Relations'"> This <title> must be "SPEAR: Syriac Persons, Events, and Relations".
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:seriesStmt[2]/tei:title[1]">
+<sch:assert test="@level='m'"> The <title> requires a @level attribute with a value of "m".
+</sch:assert>
+<sch:assert test=" . = 'The Chronicle of Edessa' or . = 'The Letters of Severus of Antioch'
+ or . = 'The Lives of the Eastern Saints' "> This <title> must be one of the following: "The Chronicle of Edessa", "The Lives of the Eastern Saints",
+ or "The Letters of Severus of Antioch".
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:seriesStmt[2]/tei:title[2]">
+<sch:assert test="@type='sub'"> This <title> requires a @type attribute with a value of "sub".
+</sch:assert>
+<sch:assert test=". = 'A SPEAR Prosopography'"> This <title> must be "A SPEAR Prosopography".
+</sch:assert>
+</sch:rule> |
Schematron |
+<sch:rule context="tei:seriesStmt/tei:editor">
+<sch:assert test="@role='general'"> This <editor> must have a @role attribute with a value of "general".
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:seriesStmt/tei:editor">
+<sch:report test="@role='creator'"> This <editor> cannot have a @role attribute with a value of "creator".
+</sch:report>
+</sch:rule>
+<sch:rule context="tei:seriesStmt[1]/tei:editor">
+<sch:assert test="@ref='http://syriaca.org/documentation/editors.xml#dschwartz'"> This <editor> must have a @ref attribute with a value of "http://syriaca.org/documentation/editors.xml#dschwartz".
+</sch:assert>
+<sch:assert test=". = 'Daniel L. Schwartz'"> This <editor> must be "Daniel L. Schwartz".
+</sch:assert>
+</sch:rule> |
Schematron |
+<sch:rule context="tei:seriesStmt[1]/tei:idno">
+<sch:assert test=". = 'https://spear-prosop.org'"> This <idno> must be "https://spear-prosop.org".
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:seriesStmt[2]/tei:idno[preceding-sibling::tei:title = 'The Lives
+ of the Eastern Saints']">
+<sch:assert test=". = 'https://spear-prosop.org/lives-eastern-saints'"> This <idno> must be "https://spear-prosop.org/lives-eastern-saints".
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:seriesStmt[2]/tei:idno[preceding-sibling::tei:title = 'The Letters
+ of Severus of Antioch']">
+<sch:assert test=". = 'https://spear-prosop.org/letters-severus'"> This <idno> must be "https://spear-prosop.org/letters-severus".
+</sch:assert>
+</sch:rule> |
Schematron |
+<sch:rule context="tei:seriesStmt[1]">
+<sch:report test="tei:biblScope"> This <seriesStmt> cannot contain a <biblScope>.
+</sch:report>
+</sch:rule>
+<sch:rule context="tei:seriesStmt[2]">
+<sch:assert test="tei:biblScope"> This <seriesStmt> requires a <biblScope>.
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:seriesStmt[2]/tei:biblScope">
+<sch:assert test="@unit='volume'"> This <biblScope> element requires a a @unit
+ attribute having a value of "volume".
+</sch:assert>
+<sch:assert test="tei:title"> This <biblScope> element requires a child <title> element.
+</sch:assert>
+</sch:rule>
+<sch:rule context="tei:seriesStmt[2]/tei:biblScope/tei:title">
+<sch:assert test="@level='s'"> This <title> element requires a @level attribute with a value of "s".
+</sch:assert>
+<sch:assert test=". = 'SPEAR: Syriac Persons, Events, and Relations'"> This <title> element must contain "SPEAR: Syriac Persons, Events, and Relations".
+</sch:assert>
+</sch:rule> |
Content model | +<content> + <sequence minOccurs="1" + maxOccurs="unbounded"> + <elementRef key="title" minOccurs="1" + maxOccurs="2"/> + <elementRef key="editor" minOccurs="1" + maxOccurs="unbounded"/> + <elementRef key="respStmt" minOccurs="0" + maxOccurs="unbounded"/> + <elementRef key="idno" minOccurs="1" + maxOccurs="1"/> + <elementRef key="biblScope" minOccurs="0" + maxOccurs="1"/> + </sequence> +</content> + ⚓ |
Schema Declaration | +element seriesStmt +{ + att.global.attributes, + att.declarable.attributes, + ( ( title, title? ), editor+, respStmt*, idno, biblScope? )+ +}⚓ |
<sic> (Latin for thus or so) contains text reproduced although apparently incorrect or inaccurate. [3.5.1. Apparent Errors] | |
Module | core |
Member of | |
Contained by | |
May contain | |
Example | for his nose was as sharp as
+ a pen, and <sic>a Table</sic> of green fields. |
Example | If all that is desired is to call attention to the apparent problem in the copy text, <sic> may be used alone: I don't know, Juan. It's so far in the past now
+ — how <sic>we can</sic> prove or disprove anyone's theories? |
Example | It is also possible, using the <choice> and <corr> elements, to provide a corrected reading: I don't know, Juan. It's so far in the past now
+ — how <choice>
+ <sic>we can</sic>
+ <corr>can we</corr>
+</choice> prove or disprove anyone's theories? |
Example | for his nose was as sharp as
+ a pen, and <choice>
+ <sic>a Table</sic>
+ <corr>a' babbld</corr>
+</choice> of green fields. |
Content model | +<content> + <macroRef key="macro.paraContent"/> +</content> + ⚓ |
Schema Declaration | +element sic { macro.paraContent }⚓ |
<socecStatus> (socio-economic status) contains an informal description of a person's perceived social or economic status. [15.2.2. The Participant Description] | |||||||||||||||||||||||
Module | namesdates | ||||||||||||||||||||||
Attributes |
| ||||||||||||||||||||||
Contained by | |||||||||||||||||||||||
May contain | core: note | ||||||||||||||||||||||
Note | This customization restricts the attribute classes of <socecStatus> to att.datable.w3c and att.global.analytic. If more precise dating is required for a SPEAR factoid, the encoder should use the <date> element. It only allows <note> as a child element and it restricts the required @ana attribute to keyword URIs in the Syriac Taxonomy that pertain to socioeconomic status. | ||||||||||||||||||||||
Example | <socecStatus scheme="#rg" code="#ab1"/> | ||||||||||||||||||||||
Example | <socecStatus>Status AB1 in the RG Classification scheme</socecStatus> | ||||||||||||||||||||||
Content model | +<content> + <elementRef key="note" minOccurs="1" + maxOccurs="unbounded"/> +</content> + ⚓ | ||||||||||||||||||||||
Schema Declaration | +element socecStatus +{ + att.datable.w3c.attributes, + attribute ana { list { + } }, + attribute scheme { text }?, + attribute code { text }?, + note+ +}⚓ |
<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] | |
Module | header |
Attributes |
|
Contained by | header: fileDesc |
May contain | core: listBibl namesdates: listRelation |
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> + <sequence minOccurs="0" + maxOccurs="unbounded"> + <elementRef key="listBibl" minOccurs="1" + maxOccurs="1"/> + <elementRef key="listRelation" + minOccurs="0" maxOccurs="unbounded"/> + </sequence> +</content> + ⚓ |
Schema Declaration | +element sourceDesc +{ + att.global.attributes, + att.declarable.attributes, + ( listBibl, listRelation* )* +}⚓ |
<sponsor> (sponsor) specifies the name of a sponsoring organization or institution. [2.2.1. The Title Statement] | |
Module | header |
Attributes |
|
Contained by | header: titleStmt |
May contain | Character data only |
Note | The TEI guidelines recommend that the <titleStmt> element also indicate who is responsible for this TEI file. Since <author> is typically used for the author of a print or manuscript text which was then encoded in TEI, we avoid the use of the <author> element. Instead, we identify Syriaca.org as the sponsoring institution. |
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> + <textNode/> +</content> + ⚓ |
Schema Declaration | +element sponsor +{ + att.global.attributes, + att.canonical.attributes, + att.datable.attributes, + text +}⚓ |
<state> (state) contains a description of some status or quality attributed to a person, place, or organization often at some specific time or for a specific date range. [13.3.1. Basic Principles 13.3.2.1. Personal Characteristics] | |||||||||||||||||||
Module | namesdates | ||||||||||||||||||
Attributes |
| ||||||||||||||||||
Contained by | |||||||||||||||||||
May contain | core: note | ||||||||||||||||||
Note | This customization restricts the attribute classes of <state> to att.datable.w3c and att.global.analytic. If more precise dating is required for a SPEAR factoid, the encoder should use the <date> element. It only allows <note> as a child element. It restricts the required @type attribute to the values "mental", "religiousAffiliation", and "sanctity". It restricts the required @ana attribute to keyword URIs in the Syriac Taxonomy that pertain to each of these three types. | ||||||||||||||||||
Example | <state ref="#SCHOL" type="status">
+ <label>scholar</label>
+</state> | ||||||||||||||||||
Example | <org>
+ <orgName notAfter="1960">The Silver Beetles</orgName>
+ <orgName notBefore="1960">The Beatles</orgName>
+ <state type="membership" from="1960-08"
+ to="1962-05">
+ <desc>
+ <persName>John Lennon</persName>
+ <persName>Paul McCartney</persName>
+ <persName>George Harrison</persName>
+ <persName>Stuart Sutcliffe</persName>
+ <persName>Pete Best</persName>
+ </desc>
+ </state>
+ <state type="membership" notBefore="1963">
+ <desc>
+ <persName>John Lennon</persName>
+ <persName>Paul McCartney</persName>
+ <persName>George Harrison</persName>
+ <persName>Ringo Starr</persName>
+ </desc>
+ </state>
+</org> | ||||||||||||||||||
Content model | +<content> + <elementRef key="note" minOccurs="1" + maxOccurs="1"/> +</content> + ⚓ | ||||||||||||||||||
Schema Declaration | +element state +{ + att.datable.w3c.attributes, + attribute ana { list { + } }, + attribute type { "mental" | "religiousAffiliation" | "sanctity" }, + note +}⚓ |
<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] | |
Module | header |
Attributes |
|
Contained by | header: classDecl |
May contain | header: category |
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> + <elementRef key="category" minOccurs="1" + maxOccurs="1"/> +</content> + ⚓ |
Schema Declaration | +element taxonomy { att.global.attributes, category }⚓ |
<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 15.1. Varieties of Composite Text] | |
Module | header |
Attributes |
|
Contained by | textstructure: TEI |
May contain | header: encodingDesc fileDesc profileDesc revisionDesc |
Note | Every <teiHeader> contains a <fileDesc> (information about the creation of a file), an <encodingDesc> (editorial rules), a <profileDesc>> (non-bibliographic aspects of a text), and a <revisionDesc> (history of revisions). |
Example | <teiHeader>
+ <fileDesc>
+ <titleStmt>
+ <title>Shakespeare: the first folio (1623) in electronic form</title>
+ <author>Shakespeare, William (1564–1616)</author>
+ <respStmt>
+ <resp>Originally prepared by</resp>
+ <name>Trevor Howard-Hill</name>
+ </respStmt>
+ <respStmt>
+ <resp>Revised and edited by</resp>
+ <name>Christine Avern-Carr</name>
+ </respStmt>
+ </titleStmt>
+ <publicationStmt>
+ <distributor>Oxford Text Archive</distributor>
+ <address>
+ <addrLine>13 Banbury Road, Oxford OX2 6NN, UK</addrLine>
+ </address>
+ <idno type="OTA">119</idno>
+ <availability>
+ <p>Freely available on a non-commercial basis.</p>
+ </availability>
+ <date when="1968">1968</date>
+ </publicationStmt>
+ <sourceDesc>
+ <bibl>The first folio of Shakespeare, prepared by Charlton Hinman (The Norton Facsimile,
+ 1968)</bibl>
+ </sourceDesc>
+ </fileDesc>
+ <encodingDesc>
+ <projectDesc>
+ <p>Originally prepared for use in the production of a series of old-spelling
+ concordances in 1968, this text was extensively checked and revised for use during the
+ editing of the new Oxford Shakespeare (Wells and Taylor, 1989).</p>
+ </projectDesc>
+ <editorialDecl>
+ <correction>
+ <p>Turned letters are silently corrected.</p>
+ </correction>
+ <normalization>
+ <p>Original spelling and typography is retained, except that long s and ligatured
+ forms are not encoded.</p>
+ </normalization>
+ </editorialDecl>
+ <refsDecl xml:id="ASLREF">
+ <cRefPattern matchPattern="(\S+) ([^.]+)\.(.*)"
+ replacementPattern="#xpath(//div1[@n='$1']/div2/[@n='$2']//lb[@n='$3'])">
+ <p>A reference is created by assembling the following, in the reverse order as that
+ listed here: <list>
+ <item>the <att>n</att> value of the preceding <gi>lb</gi>
+ </item>
+ <item>a period</item>
+ <item>the <att>n</att> value of the ancestor <gi>div2</gi>
+ </item>
+ <item>a space</item>
+ <item>the <att>n</att> value of the parent <gi>div1</gi>
+ </item>
+ </list>
+ </p>
+ </cRefPattern>
+ </refsDecl>
+ </encodingDesc>
+ <revisionDesc>
+ <list>
+ <item>
+ <date when="1989-04-12">12 Apr 89</date> Last checked by CAC</item>
+ <item>
+ <date when="1989-03-01">1 Mar 89</date> LB made new file</item>
+ </list>
+ </revisionDesc>
+</teiHeader> |
Content model | +<content> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="fileDesc" minOccurs="1" + maxOccurs="1"/> + <elementRef key="encodingDesc" + minOccurs="1" maxOccurs="1"/> + <elementRef key="profileDesc" + minOccurs="1" maxOccurs="1"/> + <elementRef key="revisionDesc" + minOccurs="1" maxOccurs="1"/> + </sequence> +</content> + ⚓ |
Schema Declaration | +element teiHeader +{ + att.global.attributes, + ( fileDesc, encodingDesc, profileDesc, revisionDesc ) +}⚓ |
<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 15.1. Varieties of Composite Text] | |
Module | textstructure |
Attributes |
|
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> |
Example | The body of a text may be replaced by a group of nested texts, as in the following schematic: <text>
+ <front>
+<!-- front matter for the whole group -->
+ </front>
+ <group>
+ <text>
+<!-- first text -->
+ </text>
+ <text>
+<!-- second text -->
+ </text>
+ </group>
+</text> |
Content model | +<content> + <sequence> + <classRef key="model.global" + minOccurs="0" maxOccurs="unbounded"/> + <sequence minOccurs="0"> + <elementRef key="front"/> + <classRef key="model.global" + minOccurs="0" maxOccurs="unbounded"/> + </sequence> + <alternate> + <elementRef key="body"/> + <elementRef key="group"/> + </alternate> + <classRef key="model.global" + minOccurs="0" maxOccurs="unbounded"/> + <sequence minOccurs="0"> + <elementRef key="back"/> + <classRef key="model.global" + minOccurs="0" maxOccurs="unbounded"/> + </sequence> + </sequence> +</content> + ⚓ |
Schema Declaration | +element text +{ + att.global.attributes, + att.declaring.attributes, + att.typed.attributes, + att.written.attributes, + ( + model.global*, + ( front, model.global* )?, + ( body | group ), + model.global*, + ( back, model.global* )? + ) +}⚓ |
<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] | |||||||||||||||||||||||
Module | core | ||||||||||||||||||||||
Attributes |
| ||||||||||||||||||||||
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:title/@ref">
+<sch:assert test="matches(., concat('http://syriaca.org/work/', '\d+'))"> The @ref attribute must take a Syriaca.org work URI
+ which reqires the form 'http://syriaca.org/work/{\d+}'
+ (where {\d+} is a number).
+</sch:assert>
+</sch:rule> | ||||||||||||||||||||||
Content model | +<content> + <macroRef key="macro.paraContent"/> +</content> + ⚓ | ||||||||||||||||||||||
Schema Declaration | +element title +{ + att.global.attributes, + att.typed.attribute.subtype, + att.canonical.attributes, + att.datable.attributes, + attribute type { text }?, + attribute level { "a" | "m" | "j" | "s" | "u" }?, + macro.paraContent +}⚓ |
<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] | |
Module | header |
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> |
Schematron |
+<sch:rule context="//tei:titleStmt/tei:title[1]">
+<sch:assert test="@level='m' or @level='a'"> The first <title> element child of <titleStmt> must have
+ @level attribute with a value of "m" indicating "monographic" or "a" indicating
+ analytic.
+</sch:assert>
+<sch:assert test="@type='main'"> The first <title> element child of <titleStmt> must have
+ @type attribute with a value of "main".
+</sch:assert>
+</sch:rule>
+<sch:rule context="//tei:titleStmt/tei:title[2]">
+<sch:assert test="@type='sub'"> The second <title> element child of <titleStmt> must have
+ @type attribute with a value of "sub".
+</sch:assert>
+<sch:assert test="normalize-space(.) = 'A SPEAR Prosopography'"> The text node of this subtitle must be "A SPEAR Prosopography".
+</sch:assert>
+</sch:rule> |
Content model | +<content> + <sequence minOccurs="1" maxOccurs="1" + preserveOrder="true"> + <elementRef key="title" minOccurs="2" + maxOccurs="2"/> + <elementRef key="sponsor" minOccurs="1" + maxOccurs="unbounded"/> + <elementRef key="funder" minOccurs="0" + maxOccurs="unbounded"/> + <elementRef key="editor" minOccurs="1" + maxOccurs="unbounded"/> + <elementRef key="respStmt" minOccurs="1" + maxOccurs="unbounded"/> + </sequence> +</content> + ⚓ |
Schema Declaration | +element titleStmt +{ + att.global.attributes, + ( ( title, title ), sponsor+, funder*, editor+, respStmt+ ) +}⚓ |
<trait> (trait) contains a description of some status or quality attributed to a person, place, or organization typically, but not necessarily, independent of the volition or action of the holder and usually not at some specific time or for a specific date range. [13.3.1. Basic Principles 13.3.2.1. Personal Characteristics] | |||||||||||||||||||
Module | namesdates | ||||||||||||||||||
Attributes |
| ||||||||||||||||||
Contained by | |||||||||||||||||||
May contain | core: note | ||||||||||||||||||
Note | This customization restricts the attribute classes of <trait> to att.datable.w3c and att.global.analytic. If more precise dating is required for a SPEAR factoid, the encoder should use the <date> element. It only allows <note> as a child element. It restricts the required @type attribute to the values "physical", "gender", and "ethnicLabel". It restricts the required @ana attribute to keyword URIs in the Syriac Taxonomy that pertain to each of these three types. | ||||||||||||||||||
Example | <trait type="physical">
+ <label>Eye colour</label>
+ <desc>Blue</desc>
+</trait> | ||||||||||||||||||
Content model | +<content> + <elementRef key="note" minOccurs="1" + maxOccurs="1"/> +</content> + ⚓ | ||||||||||||||||||
Schema Declaration | +element trait +{ + att.datable.w3c.attributes, + attribute ana { list { + } }, + attribute type { "physical" | "gender" | "ethnicLabel" }, + note +}⚓ |
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] | |
Module | tei |
Used by | |
Members | model.quoteLike |
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.] | |
Module | tei |
Used by | |
Members | licence |
model.biblLike groups elements containing a bibliographic description. [3.12. Bibliographic Citations and References] | |
Module | tei |
Used by | |
Members | bibl listBibl |
model.dateLike groups elements containing temporal expressions. [3.6.4. Dates and Times 13.4. Dates] | |
Module | tei |
Used by | |
Members | date |
model.divPart groups paragraph-level elements appearing directly within divisions. [1.3. The TEI Class System] | |
Module | tei |
Used by | |
Members | model.lLike 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. |
model.emphLike groups phrase-level elements which are typographically distinct and to which a specific function can be attributed. [3.3. Highlighting and Quotation] | |
Module | tei |
Used by | |
Members | title |
model.global groups elements which may appear at any point within a TEI text. [1.3. The TEI Class System] | |
Module | tei |
Used by | |
Members | model.global.edit model.global.meta model.milestoneLike model.noteLike[note] |
model.highlighted groups phrase-level elements which are typographically distinct. [3.3. Highlighting and Quotation] | |
Module | tei |
Used by | |
Members | model.emphLike[title] model.hiLike |
model.inter groups elements which can appear either within or between paragraph-like elements. [1.3. The TEI Class System] | |
Module | tei |
Used by | |
Members | model.attributable[model.quoteLike] model.biblLike[bibl listBibl] model.egLike model.labelLike model.listLike[listRelation] model.oddDecl model.stageLike |
model.limitedPhrase groups phrase-level elements excluding those elements primarily intended for transcription of existing sources. [1.3. The TEI Class System] | |
Module | tei |
Used by | |
Members | model.emphLike[title] model.hiLike model.pPart.data[model.addressLike model.dateLike[date] model.measureLike[num] model.nameLike[model.nameLike.agent[name orgName persName] model.offsetLike model.persNamePart model.placeStateLike[model.placeNamePart[placeName]] rs]] model.pPart.editorial[choice] model.pPart.msdesc model.phrase.xml model.ptrLike[ptr ref] |
model.listLike groups list-like elements. [3.8. Lists] | |
Module | tei |
Used by | |
Members | listRelation |
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] | |
Module | tei |
Used by | |
Members | num |
model.nameLike groups elements which name or refer to a person, place, or organization. | |
Module | tei |
Used by | |
Members | model.nameLike.agent[name orgName persName] model.offsetLike model.persNamePart model.placeStateLike[model.placeNamePart[placeName]] rs |
Note | A superset of the naming elements that may appear in datelines, addresses, statements of responsibility, etc. |
model.nameLike.agent groups elements which contain names of individuals or corporate bodies. [3.6. Names, Numbers, Dates, Abbreviations, and Addresses] | |
Module | tei |
Used by | |
Members | name orgName persName |
Note | This class is used in the content model of elements which reference names of people or organizations. |
model.noteLike groups globally-available note-like elements. [3.9. Notes, Annotation, and Indexing] | |
Module | tei |
Used by | |
Members | note |
model.pLike groups paragraph-like elements. | |
Module | tei |
Used by | |
Members | p |
model.pPart.data groups phrase-level elements containing names, dates, numbers, measures, and similar data. [3.6. Names, Numbers, Dates, Abbreviations, and Addresses] | |
Module | tei |
Used by | |
Members | model.addressLike model.dateLike[date] model.measureLike[num] model.nameLike[model.nameLike.agent[name orgName persName] model.offsetLike model.persNamePart model.placeStateLike[model.placeNamePart[placeName]] rs] |
model.pPart.edit groups phrase-level elements for simple editorial correction and transcription. [3.5. Simple Editorial Changes] | |
Module | tei |
Used by | |
Members | model.pPart.editorial[choice] model.pPart.transcriptional[corr orig reg sic] |
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] | |
Module | tei |
Used by | |
Members | choice |
model.pPart.transcriptional groups phrase-level elements used for editorial transcription of pre-existing source materials. [3.5. Simple Editorial Changes] | |
Module | tei |
Used by | |
Members | corr orig reg sic |
model.paraPart groups elements that may appear in paragraphs and similar elements [3.1. Paragraphs] | |
Module | tei |
Used by | |
Members | model.gLike model.global[model.global.edit model.global.meta model.milestoneLike model.noteLike[note]] model.inter[model.attributable[model.quoteLike] model.biblLike[bibl listBibl] model.egLike model.labelLike model.listLike[listRelation] model.oddDecl model.stageLike] model.lLike model.phrase[model.graphicLike model.highlighted[model.emphLike[title] model.hiLike] model.lPart model.pPart.data[model.addressLike model.dateLike[date] model.measureLike[num] model.nameLike[model.nameLike.agent[name orgName persName] model.offsetLike model.persNamePart model.placeStateLike[model.placeNamePart[placeName]] rs]] model.pPart.edit[model.pPart.editorial[choice] model.pPart.transcriptional[corr orig reg sic]] model.pPart.msdesc model.phrase.xml model.ptrLike[ptr ref] model.segLike model.specDescLike] |
model.phrase groups elements which can occur at the level of individual words or phrases. [1.3. The TEI Class System] | |
Module | tei |
Used by | |
Members | model.graphicLike model.highlighted[model.emphLike[title] model.hiLike] model.lPart model.pPart.data[model.addressLike model.dateLike[date] model.measureLike[num] model.nameLike[model.nameLike.agent[name orgName persName] model.offsetLike model.persNamePart model.placeStateLike[model.placeNamePart[placeName]] rs]] model.pPart.edit[model.pPart.editorial[choice] model.pPart.transcriptional[corr orig reg sic]] model.pPart.msdesc model.phrase.xml model.ptrLike[ptr ref] model.segLike model.specDescLike |
Note | This class of elements can occur within paragraphs, list items, lines of verse, etc. |
model.placeNamePart groups elements which form part of a place name. [13.2.3. Place Names] | |
Module | tei |
Used by | |
Members | placeName |
model.placeStateLike groups elements which describe changing states of a place. | |
Module | tei |
Used by | |
Members | model.placeNamePart[placeName] |
model.ptrLike groups elements used for purposes of location and reference. [3.7. Simple Links and Cross-References] | |
Module | tei |
Used by | |
Members | ptr ref |
model.resource groups separate elements which constitute the content of a digital resource, as opposed to its metadata. [1.3. The TEI Class System] | |
Module | tei |
Used by | |
Members | text |
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] | |||||||||||
Module | tei | ||||||||||
Members | change | ||||||||||
Attributes |
|
att.cReferencing provides attributes that may be used to supply a canonical reference as a means of identifying the target of a pointer. | |||||||||
Module | tei | ||||||||
Members | ref | ||||||||
Attributes |
|
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. [13.1.1. Linking Names and Their Referents] | |||||||||||||||||||||||
Module | tei | ||||||||||||||||||||||
Members | att.naming[att.personal[name orgName] author event pubPlace rs] authority catDesc funder publisher relation resp respStmt sponsor title | ||||||||||||||||||||||
Attributes |
|
att.datable provides attributes for normalization of elements that contain dates, times, or datable events. [3.6.4. Dates and Times 13.4. Dates] | |||||||||||||||||||||
Module | tei | ||||||||||||||||||||
Members | author change event funder langKnown licence name orgName relation resp sponsor title | ||||||||||||||||||||
Attributes |
| ||||||||||||||||||||
Note | This ‘superclass’ provides attributes that can be used to provide normalized values of temporal information. By default, the attributes from the att.datable.w3c class are provided. If the module for names & dates is loaded, this class also provides attributes from the att.datable.iso and att.datable.custom classes. In general, the possible values of attributes restricted to the W3C datatypes form a subset of those values available via the ISO 8601 standard. However, the greater expressiveness of the ISO datatypes may not be needed, and there exists much greater software support for the W3C datatypes. |
att.datable.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). [13.4. Dates] | |||||||||||||||||||||||||||||||||||||||||||||||||||||
Module | namesdates | ||||||||||||||||||||||||||||||||||||||||||||||||||||
Members | att.datable[author change event funder langKnown licence name orgName relation resp sponsor title] date nationality residence | ||||||||||||||||||||||||||||||||||||||||||||||||||||
Attributes |
|
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 13.4. Dates] | |||||||||||||||||||||||||||||||||||
Module | namesdates | ||||||||||||||||||||||||||||||||||
Members | att.datable[author change event funder langKnown licence name orgName relation resp sponsor title] | ||||||||||||||||||||||||||||||||||
Attributes |
| ||||||||||||||||||||||||||||||||||
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-01" dur-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. |
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 13.4. Dates] | |||||||||||||||||||||||||||||||||||||
Module | tei | ||||||||||||||||||||||||||||||||||||
Members | att.datable[author change event funder langKnown licence name orgName relation resp sponsor title] birth date death education nationality occupation persName residence socecStatus state trait | ||||||||||||||||||||||||||||||||||||
Attributes |
| ||||||||||||||||||||||||||||||||||||
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-28" to="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 Note that this format does not currently permit use of the value 0000 to represent the year 1 BCE; instead the value -0001 should be used. |
att.declarable provides attributes for those elements in the TEI header which may be independently selected by means of the special purpose decls attribute. [15.3. Associating Contextual Information with a Text] | |||||||||
Module | tei | ||||||||
Members | availability bibl editorialDecl listBibl seriesStmt sourceDesc | ||||||||
Attributes |
| ||||||||
Note | The rules governing the association of declarable elements with individual parts of a TEI text are fully defined in chapter 15.3. Associating Contextual Information with a Text. Only one element of a particular type may have a default attribute with a value of true. |
att.declaring 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. [15.3. Associating Contextual Information with a Text] | |||||||
Module | tei | ||||||
Members | back body p ref text | ||||||
Attributes |
| ||||||
Note | The rules governing the association of declarable elements with individual parts of a TEI text are fully defined in chapter 15.3. Associating Contextual Information with a Text. |
att.docStatus provides attributes for use on metadata elements describing the status of a document. | |||||||||
Module | tei | ||||||||
Members | bibl change revisionDesc | ||||||||
Attributes |
| ||||||||
Example | <revisionDesc status="published">
+ <change when="2010-10-21"
+ status="published"/>
+ <change when="2010-10-02" status="cleared"/>
+ <change when="2010-08-02"
+ status="embargoed"/>
+ <change when="2010-05-01" status="frozen"
+ who="#MSM"/>
+ <change when="2010-03-01" status="draft"
+ who="#LB"/>
+</revisionDesc> |
att.editLike provides attributes describing the nature of an encoded scholarly intervention or interpretation of any kind. [3.5. Simple Editorial Changes 10.3.1. Origination 13.3.2. The Person Element 11.3.1.1. Core Elements for Transcriptional Work] | |||||||||||||||||
Module | tei | ||||||||||||||||
Members | event langKnown name orgName relation | ||||||||||||||||
Attributes |
| ||||||||||||||||
Note | The members of this attribute class are typically used to represent any kind of editorial intervention in a text, for example a correction or interpretation, or to date or localize manuscripts etc. Each pointer on the source (if present) corresponding to a witness or witness group should reference a bibliographic citation such as a <witness>, <msDesc>, or <bibl> element, or another external bibliographic citation, documenting the source concerned. |
att.fragmentable provides attributes for representing fragmentation of a structural element, typically as a consequence of some overlapping hierarchy. | |||||||||||
Module | tei | ||||||||||
Members | p | ||||||||||
Attributes |
|
att.global provides attributes common to all elements in the TEI encoding scheme. [1.3.1.1. Global Attributes] | |||||||||||||||||||||||||||||||||||||||||||||
Module | tei | ||||||||||||||||||||||||||||||||||||||||||||
Members | TEI author authority availability back bibl biblScope body catDesc category change classDecl edition editionStmt editorialDecl encodingDesc event fileDesc funder head langKnown licence listBibl listRelation name note num orgName p profileDesc pubPlace publicationStmt publisher ref relation resp respStmt revisionDesc rs seriesStmt sourceDesc sponsor taxonomy teiHeader text title titleStmt | ||||||||||||||||||||||||||||||||||||||||||||
Attributes |
|
att.global.analytic I have needed to include this because it somehow disappeared from this customization. I do not know why this was necessary. | |||||||||
Module | derived-module-SPEAR | ||||||||
Members | att.global[TEI author authority availability back bibl biblScope body catDesc category change classDecl edition editionStmt editorialDecl encodingDesc event fileDesc funder head langKnown licence listBibl listRelation name note num orgName p profileDesc pubPlace publicationStmt publisher ref relation resp respStmt revisionDesc rs seriesStmt sourceDesc sponsor taxonomy teiHeader text title titleStmt] occupation socecStatus state trait | ||||||||
Attributes |
|
att.global.linking provides a set of attributes for hypertextual linking. [16. Linking, Segmentation, and Alignment] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Module | linking | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Members | att.global[TEI author authority availability back bibl biblScope body catDesc category change classDecl edition editionStmt editorialDecl encodingDesc event fileDesc funder head langKnown licence listBibl listRelation name note num orgName p profileDesc pubPlace publicationStmt publisher ref relation resp respStmt revisionDesc rs seriesStmt sourceDesc sponsor taxonomy teiHeader text title titleStmt] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Attributes |
|
att.global.rendition provides rendering attributes common to all elements in the TEI encoding scheme. [1.3.1.1.3. Rendition Indicators] | |||||||||||||||||||||||||||||||
Module | tei | ||||||||||||||||||||||||||||||
Members | att.global[TEI author authority availability back bibl biblScope body catDesc category change classDecl edition editionStmt editorialDecl encodingDesc event fileDesc funder head langKnown licence listBibl listRelation name note num orgName p profileDesc pubPlace publicationStmt publisher ref relation resp respStmt revisionDesc rs seriesStmt sourceDesc sponsor taxonomy teiHeader text title titleStmt] | ||||||||||||||||||||||||||||||
Attributes |
|
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 11.3.2.2. Hand, Responsibility, and Certainty Attributes 17.3. Spans and Interpretations 13.1.1. Linking Names and Their Referents] | |||||||||||||||
Module | tei | ||||||||||||||
Members | att.global[TEI author authority availability back bibl biblScope body catDesc category change classDecl edition editionStmt editorialDecl encodingDesc event fileDesc funder head langKnown licence listBibl listRelation name note num orgName p profileDesc pubPlace publicationStmt publisher ref relation resp respStmt revisionDesc rs seriesStmt sourceDesc sponsor taxonomy teiHeader text title titleStmt] | ||||||||||||||
Attributes |
| ||||||||||||||
Example | Blessed are the
+<choice>
+ <sic>cheesemakers</sic>
+ <corr resp="#editor" cert="high">peacemakers</corr>
+</choice>: for they shall be called the children of God. | ||||||||||||||
Example |
+<!-- in the <text> ... --><lg>
+<!-- ... -->
+ <l>Punkes, Panders, baſe extortionizing
+ sla<choice>
+ <sic>n</sic>
+ <corr resp="#JENS1_transcriber">u</corr>
+ </choice>es,</l>
+<!-- ... -->
+</lg>
+<!-- in the <teiHeader> ... -->
+<!-- ... -->
+<respStmt xml:id="JENS1_transcriber">
+ <resp when="2014">Transcriber</resp>
+ <name>Janelle Jenstad</name>
+</respStmt> |
att.global.source 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] | |||||||||||
Module | tei | ||||||||||
Members | att.global[TEI author authority availability back bibl biblScope body catDesc category change classDecl edition editionStmt editorialDecl encodingDesc event fileDesc funder head langKnown licence listBibl listRelation name note num orgName p profileDesc pubPlace publicationStmt publisher ref relation resp respStmt revisionDesc rs seriesStmt sourceDesc sponsor taxonomy teiHeader text title titleStmt] | ||||||||||
Attributes |
| ||||||||||
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="p" source="tei:2.0.1"/> Include in the schema an element named <p> available from the TEI P5 2.0.1 release. | ||||||||||
Example | <schemaSpec ident="myODD"
+ source="mycompiledODD.xml">
+<!-- further declarations specifying the components required -->
+</schemaSpec> Create a schema using components taken from the file mycompiledODD.xml. |
att.internetMedia provides attributes for specifying the type of a computer resource using a standard taxonomy. | |||||||
Module | tei | ||||||
Members | ref | ||||||
Attributes |
| ||||||
Example | In this example mimeType is used to indicate that the URL points to a TEI XML file encoded in UTF-8. <ref mimeType="application/tei+xml; charset=UTF-8"
+ target="https://raw.githubusercontent.com/TEIC/TEI/dev/P5/Source/guidelines-en.xml"/> | ||||||
Note | This attribute class provides an attribute for describing a computer resource, typically available over the internet, using a value taken from a standard taxonomy. At present only a single taxonomy is supported, the Multipurpose Internet Mail Extensions (MIME) Media Type system. This typology of media types is defined by the Internet Engineering Task Force in RFC 2046. The list of types is maintained by the Internet Assigned Numbers Authority (IANA). The mimeType attribute must have a value taken from this list. |
att.locatable provides attributes for referencing locations by pointing to entries in a canonical list of places. [2.3.9. The Unit Declaration 13.3.4.3. States, Traits, and Events] | |||||||
Module | tei | ||||||
Members | event | ||||||
Attributes |
|
att.naming provides attributes common to elements which refer to named persons, places, organizations etc. [3.6.1. Referring Strings 13.3.6. Names and Nyms] | |||||||||||||||
Module | tei | ||||||||||||||
Members | att.personal[name orgName] author event pubPlace rs | ||||||||||||||
Attributes |
|
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. [13.2.1. Personal Names] | |||||||||||||||
Module | tei | ||||||||||||||
Members | name orgName | ||||||||||||||
Attributes |
|
att.placement provides attributes for describing where on the source page or object a textual element appears. [3.5.3. Additions, Deletions, and Omissions 11.3.1.4. Additions and Deletions] | |||||||||||||
Module | tei | ||||||||||||
Members | head note | ||||||||||||
Attributes |
|
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] | |||||||||||||||||||||||||||||||
Module | tei | ||||||||||||||||||||||||||||||
Members | licence note ref | ||||||||||||||||||||||||||||||
Attributes |
|
att.ranging provides attributes for describing numerical ranges. | |||||||||||||||||||||||||||||||
Module | tei | ||||||||||||||||||||||||||||||
Members | num | ||||||||||||||||||||||||||||||
Attributes |
| ||||||||||||||||||||||||||||||
Example | The MS. was lost in transmission by mail from <del rend="overstrike">
+ <gap reason="illegible"
+ extent="one or two letters" atLeast="1" atMost="2" unit="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="120000000" unit="USD"
+ commodity="currency">more than
+ $120m</measure> in aid to Ukrainians.
+ |
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. [9.1. Dictionary Body and Overall Structure] | |||||||||||
Module | tei | ||||||||||
Members | bibl event listBibl listRelation relation | ||||||||||
Attributes |
|
att.typed provides attributes that can be used to classify or subclassify elements in any way. [1.3.1. Attribute Classes 17.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 13.3.2.3. Personal Relationships 11.3.1.1. Core Elements for Transcriptional Work 16.1.1. Pointers and Links 16.3. Blocks, Segments, and Anchors 12.2. Linking the Apparatus to the Text 22.5.1.2. Defining Content Models: RELAX NG 8.3. Elements Unique to Spoken Texts 23.3.1.3. Modification of Attribute and Attribute Value Lists] | |||||||||||||||||||
Module | tei | ||||||||||||||||||
Members | TEI bibl change event head listBibl listRelation name note num orgName ref relation rs text title | ||||||||||||||||||
Attributes |
| ||||||||||||||||||
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 23.3.1.3. Modification of Attribute and Attribute Value Lists . |
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] | |||||||
Module | tei | ||||||
Members | head note p text | ||||||
Attributes |
|
macro.paraContent (paragraph content) defines the content of paragraphs and similar elements. [1.3. The TEI Class System] | |
Module | tei |
Used by | |
Content model | +<content> + <alternate minOccurs="0" + maxOccurs="unbounded"> + <textNode/> + <classRef key="model.paraPart"/> + </alternate> +</content> + ⚓ |
Declaration | +macro.paraContent = ( text | model.paraPart )*⚓ |
macro.phraseSeq (phrase sequence) defines a sequence of character data and phrase-level elements. [1.4.1. Standard Content Models] | |
Module | tei |
Used by | |
Content model | +<content> + <alternate minOccurs="0" + maxOccurs="unbounded"> + <textNode/> + <classRef key="model.gLike"/> + <classRef key="model.attributable"/> + <classRef key="model.phrase"/> + <classRef key="model.global"/> + </alternate> +</content> + ⚓ |
Declaration | +macro.phraseSeq = + ( text | model.gLike | model.attributable | model.phrase | model.global )*⚓ |
macro.phraseSeq.limited (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] | |
Module | tei |
Used by | |
Content model | +<content> + <alternate minOccurs="0" + maxOccurs="unbounded"> + <textNode/> + <classRef key="model.limitedPhrase"/> + <classRef key="model.global"/> + </alternate> +</content> + ⚓ |
Declaration | +macro.phraseSeq.limited = ( text | model.limitedPhrase | model.global )*⚓ |
macro.specialPara ('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] | |
Module | tei |
Used by | |
Content model | +<content> + <alternate minOccurs="0" + maxOccurs="unbounded"> + <textNode/> + <classRef key="model.gLike"/> + <classRef key="model.phrase"/> + <classRef key="model.inter"/> + <classRef key="model.divPart"/> + <classRef key="model.global"/> + </alternate> +</content> + ⚓ |
Declaration | +macro.specialPara = + ( + text + | model.gLike + | model.phrase + | model.inter + | model.divPart + | model.global + )*⚓ |
teidata.certainty defines the range of attribute values expressing a degree of certainty. | |
Module | tei |
Used by | |
Content model | +<content> + <valList type="closed"> + <valItem ident="high"/> + <valItem ident="medium"/> + <valItem ident="low"/> + <valItem ident="unknown"/> + </valList> +</content> + ⚓ |
Declaration | +teidata.certainty = "high" | "medium" | "low" | "unknown"⚓ |
Note | Certainty may be expressed by one of the predefined symbolic values high, medium, or low. The value unknown should be used in cases where the encoder does not wish to assert an opinion about the matter. |
teidata.count defines the range of attribute values used for a non-negative integer value used as a count. | |
Module | tei |
Used by | |
Content model | +<content> + <dataRef name="nonNegativeInteger"/> +</content> + ⚓ |
Declaration | +teidata.count = xsd:nonNegativeInteger⚓ |
Note | Any positive integer value or zero is permitted |
teidata.duration.iso defines the range of attribute values available for representation of a duration in time using ISO 8601 standard formats | |
Module | tei |
Used by | |
Content model | +<content> + <dataRef name="token" + restriction="[0-9.,DHMPRSTWYZ/:+\-]+"/> +</content> + ⚓ |
Declaration | +teidata.duration.iso = token { pattern = "[0-9.,DHMPRSTWYZ/:+\-]+" }⚓ |
Example | <time dur-iso="PT0,75H">three-quarters of an hour</time> |
Example | <date dur-iso="P1,5D">a day and a half</date> |
Example | <date dur-iso="P14D">a fortnight</date> |
Example | <time dur-iso="PT0.02S">20 ms</time> |
Note | A duration is expressed as a sequence of number-letter pairs, preceded by the letter P; the letter gives the unit and may be Y (year), M (month), D (day), H (hour), M (minute), or S (second), in that order. The numbers are all unsigned integers, except for the last, which may have a decimal component (using either For complete details, see ISO 8601 Data elements and interchange formats — Information interchange — Representation of dates and times. |
teidata.duration.w3c defines the range of attribute values available for representation of a duration in time using W3C datatypes. | |
Module | tei |
Used by | |
Content model | +<content> + <dataRef name="duration"/> +</content> + ⚓ |
Declaration | +teidata.duration.w3c = xsd:duration⚓ |
Example | <time dur="PT45M">forty-five minutes</time> |
Example | <date dur="P1DT12H">a day and a half</date> |
Example | <date dur="P7D">a week</date> |
Example | <time dur="PT0.02S">20 ms</time> |
Note | A duration is expressed as a sequence of number-letter pairs, preceded by the letter P; the letter gives the unit and may be Y (year), M (month), D (day), H (hour), M (minute), or S (second), in that order. The numbers are all unsigned integers, except for the For complete details, see the W3C specification. |
teidata.enumerated defines the range of attribute values expressed as a single XML name taken from a list of documented possibilities. | |
Module | tei |
Used by | |
Content model | +<content> + <dataRef key="teidata.word"/> +</content> + ⚓ |
Declaration | +teidata.enumerated = teidata.word⚓ |
Note | Attributes using this datatype must contain a single ‘word’ which contains only letters, digits, punctuation characters, or symbols: thus it cannot include whitespace. Typically, the list of documented possibilities will be provided (or exemplified) by a value list in the associated attribute specification, expressed with a <valList> element. |
teidata.gender defines the range of attribute values used to represent the gender of a person, persona, or character. | |
Module | tei |
Used by | |
Content model | +<content> + <dataRef key="teidata.enumerated"/> +</content> + ⚓ |
Declaration | +teidata.gender = teidata.enumerated⚓ |
Note | Values for attributes using this datatype may be defined locally by a project, or they may refer to an external standard. Values for this datatype should not be used to encode morphological gender (cf. <gen>, msd as defined in att.linguistic, and 9.3.1. Information on Written and Spoken Forms). |
teidata.language defines the range of attribute values used to identify a particular combination of human language and writing system. [6.1. Language Identification] | |
Module | tei |
Used by | |
Content model | +<content> + <alternate> + <dataRef name="language"/> + <valList> + <valItem ident=""/> + </valList> + </alternate> +</content> + ⚓ |
Declaration | +teidata.language = xsd:language | ( "" )⚓ |
Note | The values for this attribute are language ‘tags’ as defined in BCP 47. Currently BCP 47 comprises RFC 5646 and RFC 4647; over time, other IETF documents may succeed these as the best current practice. A ‘language tag’, per BCP 47, is assembled from a sequence of components or subtags separated by the hyphen character (-, U+002D). The tag is made of the following subtags, in the following order. Every subtag except the first is optional. If present, each occurs only once, except the fourth and fifth components (variant and extension), which are repeatable.
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 Examples include
The W3C Internationalization Activity has published a useful introduction to BCP 47, Language tags in HTML and XML. |
teidata.name defines the range of attribute values expressed as an XML Name. | |
Module | tei |
Used by | |
Content model | +<content> + <dataRef name="Name"/> +</content> + ⚓ |
Declaration | +teidata.name = xsd:Name⚓ |
Note | Attributes using this datatype must contain a single word which follows the rules defining a legal XML name (see https://www.w3.org/TR/REC-xml/#dt-name): for example they cannot include whitespace or begin with digits. |
teidata.numeric defines the range of attribute values used for numeric values. | |
Module | tei |
Used by | Element:
|
Content model | +<content> + <alternate> + <dataRef name="double"/> + <dataRef name="token" + restriction="(\-?[\d]+/\-?[\d]+)"/> + <dataRef name="decimal"/> + </alternate> +</content> + ⚓ |
Declaration | +teidata.numeric = + xsd:double | token { pattern = "(\-?[\d]+/\-?[\d]+)" } | xsd:decimal⚓ |
Note | Any numeric value, represented as a decimal number, in floating point format, or as a ratio. To represent a floating point number, expressed in scientific notation, ‘E notation’, a variant of ‘exponential notation’, may be used. In this format, the value is expressed as two numbers separated by the letter E. The first number, the significand (sometimes called the mantissa) is given in decimal format, while the second is an integer. The value is obtained by multiplying the mantissa by 10 the number of times indicated by the integer. Thus the value represented in decimal notation as 1000.0 might be represented in scientific notation as 10E3. A value expressed as a ratio is represented by two integer values separated by a solidus (/) character. Thus, the value represented in decimal notation as 0.5 might be represented as a ratio by the string 1/2. |
teidata.outputMeasurement defines a range of values for use in specifying the size of an object that is intended for display. | |
Module | tei |
Used by | |
Content model | +<content> + <dataRef name="token" + restriction="[\-+]?\d+(\.\d+)?(%|cm|mm|in|pt|pc|px|em|ex|ch|rem|vw|vh|vmin|vmax)"/> +</content> + ⚓ |
Declaration | +teidata.outputMeasurement = + token + { + pattern = "[\-+]?\d+(\.\d+)?(%|cm|mm|in|pt|pc|px|em|ex|ch|rem|vw|vh|vmin|vmax)" + }⚓ |
Example | <figure>
+ <head>The TEI Logo</head>
+ <figDesc>Stylized yellow angle brackets with the letters <mentioned>TEI</mentioned> in
+ between and <mentioned>text encoding initiative</mentioned> underneath, all on a white
+ background.</figDesc>
+ <graphic height="600px" width="600px"
+ url="http://www.tei-c.org/logos/TEI-600.jpg"/>
+</figure> |
Note | These values map directly onto the values used by XSL-FO and CSS. For definitions of the units see those specifications; at the time of this writing the most complete list is in the CSS3 working draft. |
teidata.pattern defines attribute values which are expressed as a regular expression. | |
Module | tei |
Used by | |
Content model | +<content> + <dataRef name="token"/> +</content> + ⚓ |
Declaration | +teidata.pattern = token⚓ |
Note | A regular expression, often called a pattern, is an expression that describes a set of strings. They are usually used to give a concise description of a set, without having to list all elements. For example, the set containing the three strings Handel, Händel, and Haendel can be described by the pattern WikipediaH(ä|ae?)ndel (or alternatively, it is said that the pattern H(ä|ae?)ndel matches each of the three strings)This TEI datatype is mapped to the XSD token datatype, and may therefore contain any string of characters. However, it is recommended that the value used conform to the particular flavour of regular expression syntax supported by XSD Schema. |
teidata.pointer 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. | |
Module | tei |
Used by | Element:
|
Content model | +<content> + <dataRef restriction="\S+" name="anyURI"/> +</content> + ⚓ |
Declaration | +teidata.pointer = xsd:anyURI { pattern = "\S+" }⚓ |
Note | The range of syntactically valid values is defined by RFC 3986 Uniform Resource Identifier (URI): Generic Syntax. Note that the values themselves are encoded using RFC 3987 Internationalized Resource Identifiers (IRIs) mapping to URIs. For example, |
teidata.probCert defines a range of attribute values which can be expressed either as a numeric probability or as a coded certainty value. | |
Module | tei |
Used by | |
Content model | +<content> + <alternate> + <dataRef key="teidata.probability"/> + <dataRef key="teidata.certainty"/> + </alternate> +</content> + ⚓ |
Declaration | +teidata.probCert = teidata.probability | teidata.certainty⚓ |
teidata.probability defines the range of attribute values expressing a probability. | |
Module | tei |
Used by | |
Content model | +<content> + <dataRef name="double"/> +</content> + ⚓ |
Declaration | +teidata.probability = xsd:double⚓ |
Note | Probability is expressed as a real number between 0 and 1; 0 representing certainly false and 1 representing certainly true. |
teidata.sex defines the range of attribute values used to identify the sex of an organism. | |
Module | tei |
Used by | |
Content model | +<content> + <dataRef key="teidata.enumerated"/> +</content> + ⚓ |
Declaration | +teidata.sex = teidata.enumerated⚓ |
Note | Values for attributes using this datatype may be defined locally by a project, or they may refer to an external standard. |
teidata.temporal.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. | |
Module | tei |
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 | +teidata.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. |
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. | |
Module | tei |
Used by | |
Content model | +<content> + <alternate> + <dataRef name="date"/> + <dataRef name="gYear"/> + <dataRef name="gMonth"/> + <dataRef name="gDay"/> + <dataRef name="gYearMonth"/> + <dataRef name="gMonthDay"/> + <dataRef name="time"/> + <dataRef name="dateTime"/> + </alternate> +</content> + ⚓ |
Declaration | +teidata.temporal.w3c = + xsd:date + | xsd:gYear + | xsd:gMonth + | xsd:gDay + | xsd:gYearMonth + | xsd:gMonthDay + | xsd:time + | xsd:dateTime⚓ |
Note | If it is likely that the value used is to be compared with another, then a time zone indicator should always be included, and only the dateTime representation should be used. |
teidata.text defines the range of attribute values used to express some kind of identifying string as a single sequence of Unicode characters possibly including whitespace. | |
Module | tei |
Used by | |
Content model | +<content> + <dataRef name="string"/> +</content> + ⚓ |
Declaration | +teidata.text = string⚓ |
Note | Attributes using this datatype must contain a single ‘token’ in which whitespace and other punctuation characters are permitted. |
teidata.truthValue defines the range of attribute values used to express a truth value. | |
Module | tei |
Used by | |
Content model | +<content> + <dataRef name="boolean"/> +</content> + ⚓ |
Declaration | +teidata.truthValue = xsd:boolean⚓ |
Note | The possible values of this datatype are 1 or true, or 0 or false. This datatype applies only for cases where uncertainty is inappropriate; if the attribute concerned may have a value other than true or false, e.g. unknown, or inapplicable, it should have the extended version of this datatype: teidata.xTruthValue. |
teidata.version defines the range of attribute values which may be used to specify a TEI or Unicode version number. | |
Module | tei |
Used by | Element:
|
Content model | +<content> + <dataRef name="token" + restriction="[\d]+(\.[\d]+){0,2}"/> +</content> + ⚓ |
Declaration | +teidata.version = token { pattern = "[\d]+(\.[\d]+){0,2}" }⚓ |
Note | The value of this attribute follows the pattern specified by the Unicode consortium for its version number (http://unicode.org/versions/). A version number contains digits and fullstop characters only. The first number supplied identifies the major version number. A second and third number, for minor and sub-minor version numbers, may also be supplied. |
teidata.versionNumber defines the range of attribute values used for version numbers. | |
Module | tei |
Used by | |
Content model | +<content> + <dataRef name="token" + restriction="[\d]+[a-z]*[\d]*(\.[\d]+[a-z]*[\d]*){0,3}"/> +</content> + ⚓ |
Declaration | +teidata.versionNumber = + token { pattern = "[\d]+[a-z]*[\d]*(\.[\d]+[a-z]*[\d]*){0,3}" }⚓ |
teidata.word defines the range of attribute values expressed as a single word or token. | |
Module | tei |
Used by | |
Content model | +<content> + <dataRef name="token" + restriction="[^\p{C}\p{Z}]+"/> +</content> + ⚓ |
Declaration | +teidata.word = token { pattern = "[^\p{C}\p{Z}]+" }⚓ |
Note | Attributes using this datatype must contain a single ‘word’ which contains only letters, digits, punctuation characters, or symbols: thus it cannot include whitespace. |
teidata.xTruthValue (extended truth value) defines the range of attribute values used to express a truth value which may be unknown. | |
Module | tei |
Used by | |
Content model | +<content> + <alternate> + <dataRef name="boolean"/> + <valList> + <valItem ident="unknown"/> + <valItem ident="inapplicable"/> + </valList> + </alternate> +</content> + ⚓ |
Declaration | +teidata.xTruthValue = xsd:boolean | ( "unknown" | "inapplicable" )⚓ |
Note | In cases where where uncertainty is inappropriate, use the datatype teidata.TruthValue. |
teidata.xpath defines attribute values which contain an XPath expression. | |
Module | tei |
Used by | |
Content model | +<content> + <textNode/> +</content> + ⚓ |
Declaration | +teidata.xpath = text⚓ |
Note | Any XPath expression using the syntax defined in 6.2.. When writing programs that evaluate XPath expressions, programmers should be mindful of the possibility of malicious code injection attacks. For further information about XPath injection attacks, see the article at OWASP. |
Distributed under a Creative Commons Attribution 3.0 Unported License.
+The code examples contained in
The comments on element and attribute use contained in
This ODD provides a customization of the TEI P5 All.
+This schema has been created to to constrain the TEI P5 for validating the born-digital + project SPEAR: Syriac Persons, Events, and Relations. This customization will be used for + the encoding of many different documents by many different researchers having differnet + levels of training. As such, a schema is particularly important. The highly-structured data + model of SPEAR also requires some modifications and additions to TEI P5.
+ + Every
Each
The TEI guidelines recommend that the
This customization limits the vaules of @ref attributes on
Within the
The
The
Syriaca.org is identified as the responsible entity using
The
The body of a SPEAR file contains factoids, each of which appears in a separate
SPEAR has three basic types of factoid data that are encoded using
SPEAR only uses @xml:id and @type attributes on the
Since SPEAR relies on the Linked Open Data infrastructure of Syriaca.org, a
SPEAR only allows text in a
This customization does not allow attributes on the
This customization limits the attributes available on
+ This customization requires the basic pattern of SPEAR factoids to be encoded correctly. Each
+ factoid is encoded in an
This customization also requires that every
+ This customization requires properly formatted identifiers for each TEI document + and for each factoid. It ensures the alignment of the document cool-URI, the document name (always a number), + and the factoid cool-URI.
+In the
Each factoid also requires an
+ This customization makes
+ SPEAR factoids contain
+ This customization requires
+ This customization requires
+ This customization requires a
+ The
+ In the context of personal relationships, this customization constrains the @ref, @ana, @active, @passive, and @mutual attributes. + A @ref attribute is required and must contain a URI pointing to a personal relationship in the Syriac Taxonomy. An @ana attribute is optional but when + used must contain a URI pointing to a qualifier relationship in the Syriac Taxonomy, i.e. a sibling relationship might be qualified as a + step-sibling relationship using @ana. For mutual relationship where each participant has the same relationship to the other (i.e. spousal), a + @mutual attribute is used with all of the participants in that relationship listed. In the case of a directed relationship (i.e. where person X + is the parent of person Y) both the @active and @passive attributes are used. The values allowed on the @active, @passive, and @mutual + attributes are URIs pointing to Syriaca.org authority files for persons. +
++ In the context of relationships between events, this customization only allows appropriate values on @ref while excluding @ana, @active, and @passive + attributes. +
+
+ The
This customization restricts the attribute classes of the
+ It also restricts the child elements to those dealing with dates (
This customization restricts the attribute classes of the
+ It also restricts the child elements to those dealing with dates (
This customization restricts the attribute classes of
+ It also restricts the required @ana attribute to keyword URIs in the Syriac Taxonomy that pertain to + fields of education. +
+The TEI name for the
This customization limits the attribute classes of the
+
This customization limits the attribute classes of the
+
This customization restricts the attribute classes of
+ It only allows
+ This customization constrains the child elements under
+ This customization allows a closed list of values on the @level attribute ("low", "medium", and "high"). + It also restricts the required @ana attribute to keyword URIs in the Syriac Taxonomy that pertain to + languages. +
+This customization restricts the attribute classes of
+ It only allows
This customization restricts the attribute classes of
+ It only allows
+ The
+ The
+ When the child of
This customization restricts the attribute classes of
+ It only allows
@min
and @max
, or the proportion of observed values that fall within that range.<handNote>
element describing the hand considered responsible for the content of the element concerned.<refsDecl>
element in the TEI header<category>
s or <calendar>
s) within which the datable item is understood to have occurred.@target
, using a language tag generated according to BCP 47.@unit
attribute.@unit
attribute.<place>
element or other canonical description.<calendar>
element or other means of interpreting the values of the custom dating attributes.<textDesc>
. [2.3.7. The Classification Declaration]<TEI>
elements may be combined within a <TEI>
(or <teiCorpus>
) element. [4. Default Text Structure 15.1. Varieties of Composite Text]<calendar>
element or other means of interpreting the values of the custom dating attributes.<taxonomy>
element, or pointing to some other resource.@scheme
attribute.<taxonomy>
element or by supplying a URI for an externally-defined system.@scheme
attribute.