default namespace = "http://www.tei-c.org/ns/Examples" namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0" namespace ns1 = "http://www.tei-c.org/ns/1.0" namespace rng = "http://relaxng.org/ns/structure/1.0" namespace sch = "http://purl.oclc.org/dsdl/schematron" namespace xlink = "http://www.w3.org/1999/xlink" # Schema generated from ODD source 2012-02-02T16:23:22Z. # Edition: 2.0.2 Last updated on 2nd February 2012. # Edition Location: http://www.tei-c.org/Vault/P5/2.0.2/ # # This material is dual-licensed. # # [http://creativecommons.org/licenses/by-sa/3.0/] # Distributed under a Creative Commons Attribution-ShareAlike 3.0 Unported License # # [http://www.opensource.org/licenses/BSD-2-Clause] # Copyright 2011 TEI Consortium. # All rights reserved. # # Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: # # Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. # Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. # # # # This software is provided by the copyright holders and contributors # "as is" and any express or implied warranties, including, but not # limited to, the implied warranties of merchantability and fitness for # a particular purpose are disclaimed. In no event shall the copyright # holder or contributors be liable for any direct, indirect, incidental, # special, exemplary, or consequential damages (including, but not # limited to, procurement of substitute goods or services; loss of use, # data, or profits; or business interruption) however caused and on any # theory of liability, whether in contract, strict liability, or tort # (including negligence or otherwise) arising in any way out of the use # of this software, even if advised of the possibility of such # damage. # # TEI material can be licensed differently depending on the use you intend to # make of it. Hence it is made available under both the CC+BY and BSD-2 # licences. The CC+BY licence is generally appropriate for usages which # treat TEI content as data or documentation. The BSD-2 licence is # generally appropriate for usage of TEI content in a software # environment. For further information or clarification, please contact # the TEI Consortium. # macro.paraContent = (text | model.gLike | model.phrase | model.inter | model.global)* macro.limitedContent = (text | model.limitedPhrase | model.inter)* macro.phraseSeq = (text | model.gLike | model.phrase | model.global)* macro.phraseSeq.limited = (text | model.limitedPhrase | model.global)* macro.specialPara = (text | model.gLike | model.phrase | model.inter | model.divPart | model.global)* macro.xtext = (text | model.gLike)* data.certainty = "high" | "medium" | "low" | "unknown" data.probability = xsd:double { minInclusive = "0" maxInclusive = "1" } data.numeric = xsd:double | xsd:token { pattern = "(\-?[\d]+/\-?[\d]+)" } | xsd:decimal data.count = xsd:nonNegativeInteger data.temporal.w3c = xsd:date | xsd:gYear | xsd:gMonth | xsd:gDay | xsd:gYearMonth | xsd:gMonthDay | xsd:time | xsd:dateTime data.truthValue = xsd:boolean data.xTruthValue = xsd:boolean | "unknown" | "inapplicable" data.language = xsd:language data.outputMeasurement = xsd:token { pattern = "[\-+]?\d+(\.\d+)?(%|cm|mm|in|pt|pc|px|em|ex|gd|rem|vw|vh|vm)" } data.pattern = xsd:token data.pointer = xsd:anyURI data.version = xsd:token { pattern = "[\d]+(\.[\d]+){0,2}" } data.key = xsd:string data.word = xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } data.code = xsd:anyURI data.name = xsd:Name data.enumerated = data.name macro.anyXML = element * - (ns1:* | egXML) { attribute * { text }*, (text | macro.anyXML)* } att.ascribed.attributes = att.ascribed.attribute.who att.ascribed.attribute.who = ## indicates the person, or group of people, to whom the element content is ascribed. attribute who { list { data.pointer, data.pointer* } }? att.canonical.attributes = att.canonical.attribute.key, att.canonical.attribute.ref att.canonical.attribute.key = ## provides an externally-defined means of identifying the entity (or entities) being ## named, using a coded value of some kind. attribute key { data.key }? att.canonical.attribute.ref = ## (reference) provides an explicit means of locating a full definition for the entity being named by ## means of one or more URIs. attribute ref { list { data.pointer, data.pointer* } }? att.ranging.attributes = att.ranging.attribute.atLeast, att.ranging.attribute.atMost, att.ranging.attribute.min, att.ranging.attribute.max, att.ranging.attribute.confidence att.ranging.attribute.atLeast = ## gives a minimum estimated value for the approximate measurement. attribute atLeast { data.numeric }? att.ranging.attribute.atMost = ## gives a maximum estimated value for the approximate measurement. attribute atMost { data.numeric }? att.ranging.attribute.min = ## where the measurement summarizes more than one observation ## or a range, supplies the minimum value ## observed. attribute min { data.numeric }? att.ranging.attribute.max = ## where the measurement summarizes more than one observation ## or a range, supplies the maximum value ## observed. attribute max { data.numeric }? att.ranging.attribute.confidence = ## The degree of statistical confidence (between zero and one) that a value falls within the range ## specified by min and max, or the proportion of observed values that fall within that range. attribute confidence { data.probability }? att.dimensions.attributes = att.ranging.attributes, att.dimensions.attribute.unit, att.dimensions.attribute.quantity, att.dimensions.attribute.extent, att.dimensions.attribute.precision, att.dimensions.attribute.scope att.dimensions.attribute.unit = ## names the unit used for the measurement ## Suggested values include: 1] cm(centimetres) ; 2] mm(millimetres) ; 3] in(inches) ; 4] lines; 5] chars(characters) attribute unit { ## (centimetres) "cm" | ## (millimetres) "mm" | ## (inches) "in" | ## lines of text "lines" | ## (characters) characters of text "chars" | xsd:Name }? att.dimensions.attribute.quantity = ## specifies the length in the units specified attribute quantity { data.numeric }? att.dimensions.attribute.extent = ## indicates the size of the object concerned using a project-specific vocabulary combining ## quantity and units in a single string of words. attribute extent { list { data.word, data.word* } }? att.dimensions.attribute.precision = ## characterizes the precision of the values specified by the other attributes. attribute precision { data.certainty }? att.dimensions.attribute.scope = ## where the measurement summarizes more than one observation, specifies the applicability ## of this measurement. ## Sample values include: 1] all; 2] most; 3] range attribute scope { data.enumerated }? att.breaking.attributes = att.breaking.attribute.break att.breaking.attribute.break = ## indicates whether or not the element ## bearing this attribute should be considered to mark the end of ## an orthographic token in the same way as whitespace. attribute break { data.enumerated }? att.datable.w3c.attributes = att.datable.w3c.attribute.when, att.datable.w3c.attribute.notBefore, att.datable.w3c.attribute.notAfter, att.datable.w3c.attribute.from, att.datable.w3c.attribute.to att.datable.w3c.attribute.when = ## supplies the value of the date or time in a standard form, ## e.g. yyyy-mm-dd. attribute when { data.temporal.w3c }? att.datable.w3c.attribute.notBefore = ## specifies the earliest possible date for the event in ## standard form, e.g. yyyy-mm-dd. attribute notBefore { data.temporal.w3c }? att.datable.w3c.attribute.notAfter = ## specifies the latest possible date for the event in ## standard form, e.g. yyyy-mm-dd. attribute notAfter { data.temporal.w3c }? att.datable.w3c.attribute.from = ## indicates the starting point of the period in standard form, e.g. yyyy-mm-dd. attribute from { data.temporal.w3c }? att.datable.w3c.attribute.to = ## indicates the ending point of the period in standard ## form, e.g. yyyy-mm-dd. attribute to { data.temporal.w3c }? att.datable.attributes = att.datable.w3c.attributes, att.datable.attribute.calendar, att.datable.attribute.period att.datable.attribute.calendar = ## indicates the system or calendar to which the date represented by the content of this ## element belongs. attribute calendar { data.pointer }? att.datable.attribute.period = ## supplies a pointer to some location defining a named ## period of time within which the datable item is understood to ## have occurred. attribute period { data.pointer }? att.declarable.attributes = att.declarable.attribute.default att.declarable.attribute.default = ## indicates whether or not this element is selected by default when ## its parent is selected. [ a:defaultValue = "false" ] attribute default { ## This element is selected if its parent is selected "true" | ## This element can only be selected explicitly, unless it is the ## only one of its kind, in which case it is selected if its parent is selected. "false" }? att.declaring.attributes = att.declaring.attribute.decls att.declaring.attribute.decls = ## identifies one or more declarable elements within the ## header, which are understood to apply to the element bearing this ## attribute and its content. attribute decls { list { data.pointer, data.pointer* } }? att.divLike.attributes = att.divLike.attribute.org, att.divLike.attribute.sample, att.divLike.attribute.part att.divLike.attribute.org = ## (organization) specifies how the content of the division is organized. [ a:defaultValue = "uniform" ] attribute org { ## composite content: i.e. no claim is made about the ## sequence in which the immediate contents of this division ## are to be processed, or their inter-relationships. "composite" | ## uniform content: i.e. the immediate contents of this ## element are regarded as forming a logical unit, to be ## processed in sequence. "uniform" }? att.divLike.attribute.sample = ## indicates whether this division is a sample of the ## original source and if so, from which part. [ a:defaultValue = "complete" ] attribute sample { ## division lacks material present at end in source. "initial" | ## division lacks material at start and end. "medial" | ## division lacks material at start. "final" | ## position of sampled material within original unknown. "unknown" | ## division is not a sample. "complete" }? att.divLike.attribute.part = ## specifies whether or not the division is fragmented by ## some other structural element, for example a speech which is ## divided between two or more verse stanzas. [ a:defaultValue = "N" ] attribute part { ## (yes) the division is incomplete in some respect "Y" | ## (no) either the division is complete, or no claim is made as to its completeness. "N" | ## (initial) the initial part of an incomplete division "I" | ## (medial) a medial part of an incomplete division "M" | ## (final) the final part of an incomplete division "F" }? att.docStatus.attributes = att.docStatus.attribute.status att.docStatus.attribute.status = ## describes the status of a document either currently or, when ## associated with a dated element, at the time indicated. ## Sample values include: 1] approved; 2] candidate; 3] cleared; 4] deprecated; 5] draft; 6] embargoed; 7] expired; 8] frozen; 9] galley; 10] proposed; 11] published; 12] recommendation; 13] submitted; 14] unfinished; 15] withdrawn [ a:defaultValue = "draft" ] attribute status { data.enumerated }? att.responsibility.attributes = att.responsibility.attribute.cert, att.responsibility.attribute.resp att.responsibility.attribute.cert = ## (certainty) signifies the degree of certainty associated with the intervention or interpretation. attribute cert { data.certainty }? att.responsibility.attribute.resp = ## (responsible party) indicates the agency responsible for the intervention or interpretation, for example an ## editor or transcriber. attribute resp { list { data.pointer, data.pointer* } }? att.editLike.attributes = att.dimensions.attributes, att.responsibility.attributes, att.editLike.attribute.evidence, att.editLike.attribute.source, att.editLike.attribute.instant att.editLike.attribute.evidence = ## indicates the nature of the evidence supporting the reliability or accuracy of the ## intervention or interpretation. ## Suggested values include: 1] internal; 2] external; 3] conjecture attribute evidence { list { ( ## there is internal evidence to support the intervention. "internal" | ## there is external evidence to support the intervention. "external" | ## the intervention or interpretation has been made by the editor, cataloguer, or ## scholar on the basis of their expertise. "conjecture" | xsd:Name), ( ## there is internal evidence to support the intervention. "internal" | ## there is external evidence to support the intervention. "external" | ## the intervention or interpretation has been made by the editor, cataloguer, or ## scholar on the basis of their expertise. "conjecture" | xsd:Name)* } }? att.editLike.attribute.source = ## contains a list of one or more pointers indicating sources ## supporting the given intervention or interpretation. attribute source { list { data.pointer, data.pointer* } }? att.editLike.attribute.instant = ## Is this an instant revision? [ a:defaultValue = "false" ] attribute instant { data.xTruthValue }? att.global.attributes = att.global.linking.attributes, att.global.analytic.attributes, att.global.attribute.xmlid, att.global.attribute.n, att.global.attribute.xmllang, att.global.attribute.rend, att.global.attribute.xmlbase, att.global.attribute.xmlspace att.global.attribute.xmlid = ## (identifier) provides a unique identifier for the element bearing the attribute. attribute xml:id { xsd:ID }? att.global.attribute.n = ## (number) gives a number (or other label) for an element, which is not necessarily unique within ## the document. attribute n { list { data.word, data.word* } }? att.global.attribute.xmllang = ## (language) indicates the language of the element content using a tag generated ## according to BCP 47 ## attribute xml:lang { data.language }? att.global.attribute.rend = ## (rendition) indicates how the element in question was rendered or presented in the source text. attribute rend { list { data.word, data.word* } }? att.global.attribute.xmlbase = ## provides a base URI reference with which applications can resolve relative URI ## references into absolute URI references. attribute xml:base { data.pointer }? att.global.attribute.xmlspace = ## signals an intention about how white space should be ## managed by applications. attribute xml:space { ## the processor should treat white space according to the ## default XML white space handling rules "default" | ## the processor should preserve unchanged any and all ## white space in the source "preserve" }? att.handFeatures.attributes = att.handFeatures.attribute.scribe, att.handFeatures.attribute.scribeRef, att.handFeatures.attribute.script, att.handFeatures.attribute.scriptRef, att.handFeatures.attribute.medium, att.handFeatures.attribute.scope att.handFeatures.attribute.scribe = ## gives a name or other identifier for the scribe ## believed to be responsible for this hand. attribute scribe { data.name }? att.handFeatures.attribute.scribeRef = ## points to a full description of the scribe concerned, typically supplied by a person element ## elsewhere in the description. attribute scribeRef { list { data.pointer, data.pointer* } }? att.handFeatures.attribute.script = ## characterizes the particular script or writing style used by ## this hand, for example secretary, copperplate, Chancery, Italian, etc. attribute script { list { data.name, data.name* } }? att.handFeatures.attribute.scriptRef = ## points to a full description of the script or writing style used by ## this hand, typically supplied by a scriptNote element ## elsewhere in the description. attribute scriptRef { list { data.pointer, data.pointer* } }? att.handFeatures.attribute.medium = ## describes the tint or type of ink, e.g. brown, or other ## writing medium, e.g. pencil attribute medium { data.enumerated }? att.handFeatures.attribute.scope = ## specifies how widely this hand is used in the manuscript. attribute scope { ## only this hand is used throughout the manuscript "sole" | ## this hand is used through most of the manuscript "major" | ## this hand is used occasionally in the manuscript "minor" }? att.internetMedia.attributes = att.internetMedia.attribute.mimeType att.internetMedia.attribute.mimeType = ## (MIME media type) specifies the applicable multimedia internet mail extension (MIME) media type attribute mimeType { list { data.word, data.word* } }? att.interpLike.attributes = att.responsibility.attributes, att.interpLike.attribute.type, att.interpLike.attribute.inst att.interpLike.attribute.type = ## indicates what kind of phenomenon is being noted in the passage. ## Sample values include: 1] image; 2] character; 3] theme; 4] allusion attribute type { data.enumerated }? att.interpLike.attribute.inst = ## (instances) points to instances of the analysis or interpretation represented ## by the current element. attribute inst { list { data.pointer, data.pointer* } }? att.measurement.attributes = att.measurement.attribute.unit, att.measurement.attribute.quantity, att.measurement.attribute.commodity att.measurement.attribute.unit = ## indicates the units used for the measurement, usually ## using the standard symbol for the desired units. ## Suggested values include: 1] m(metre) ; 2] kg(kilogram) ; 3] s(second) ; 4] Hz(hertz) ; 5] Pa(pascal) ; 6] Ω(ohm) ; 7] L(litre) ; 8] t(tonne) ; 9] ha(hectare) ; 10] Å(ångström) ; 11] mL(millilitre) ; 12] cm(centimetre) ; 13] dB(decibel) ; 14] kbit(kilobit) ; 15] Kibit(kibibit) ; 16] kB(kilobyte) ; 17] KiB(kibibyte) ; 18] MB(megabyte) ; 19] MiB(mebibyte) attribute unit { ## (metre) SI base unit of length "m" | ## (kilogram) SI base unit of mass "kg" | ## (second) SI base unit of time "s" | ## (hertz) SI unit of frequency "Hz" | ## (pascal) SI unit of pressure or stress "Pa" | ## (ohm) SI unit of electric resistance "Ω" | ## (litre) 1 dm³ "L" | ## (tonne) 10³ kg "t" | ## (hectare) 1 hm² "ha" | ## (ångström) 10⁻¹⁰ m "Å" | ## (millilitre) "mL" | ## (centimetre) "cm" | ## (decibel) see remarks, below "dB" | ## (kilobit) 10³ or 1000 bits "kbit" | ## (kibibit) 2¹⁰ or 1024 bits "Kibit" | ## (kilobyte) 10³ or 1000 bytes "kB" | ## (kibibyte) 2¹⁰ or 1024 bytes "KiB" | ## (megabyte) 10⁶ or 1 000 000 bytes "MB" | ## (mebibyte) 2²⁰ or 1 048 576 bytes "MiB" | xsd:Name }? att.measurement.attribute.quantity = ## specifies the number of the specified units that ## comprise the measurement attribute quantity { data.numeric }? att.measurement.attribute.commodity = ## indicates the substance that is being measured attribute commodity { list { data.word, data.word* } }? att.naming.attributes = att.canonical.attributes, att.naming.attribute.role, att.naming.attribute.nymRef att.naming.attribute.role = ## may be used to specify further information about the entity referenced by ## this name, for example the occupation of a person, or the status of a place. attribute role { data.enumerated }? att.naming.attribute.nymRef = ## (reference to the canonical name) provides a means of locating the canonical form ## (nym) of the names associated with the object ## named by ## the element bearing it. attribute nymRef { list { data.pointer, data.pointer* } }? att.placement.attributes = att.placement.attribute.place att.placement.attribute.place = ## ## Suggested values include: 1] below; 2] bottom; 3] margin; 4] top; 5] opposite; 6] overleaf; 7] above; 8] end; 9] inline; 10] inspace attribute place { list { ( ## below the line "below" | ## at the foot of the page "bottom" | ## in the margin (left, right, or both) "margin" | ## at the top of the page "top" | ## on the opposite, i.e. facing, page "opposite" | ## on the other side of the leaf "overleaf" | ## above the line "above" | ## at the end of e.g. chapter or volume. "end" | ## within the body of the text. "inline" | ## in a predefined space, for example left by an earlier scribe. "inspace" | xsd:Name), ( ## below the line "below" | ## at the foot of the page "bottom" | ## in the margin (left, right, or both) "margin" | ## at the top of the page "top" | ## on the opposite, i.e. facing, page "opposite" | ## on the other side of the leaf "overleaf" | ## above the line "above" | ## at the end of e.g. chapter or volume. "end" | ## within the body of the text. "inline" | ## in a predefined space, for example left by an earlier scribe. "inspace" | xsd:Name)* } }? att.typed.attributes = att.typed.attribute.type, att.typed.attribute.subtype att.typed.attribute.type = ## characterizes the element in some sense, using any convenient ## classification scheme or typology. attribute type { data.enumerated }? att.typed.attribute.subtype = ## provides a sub-categorization of the element, if needed attribute subtype { data.enumerated }? att.pointing.attributes = att.pointing.attribute.target, att.pointing.attribute.evaluate att.pointing.attribute.target = ## specifies the destination of the reference by supplying one or more URI References attribute target { list { data.pointer, data.pointer* } }? att.pointing.attribute.evaluate = ## specifies the intended meaning when the target of a ## pointer is itself a pointer. attribute evaluate { ## if the element pointed to is itself a pointer, then ## the target of that pointer will be taken, and so on, until ## an element is found which is not a pointer. "all" | ## if the element pointed to is itself a pointer, then ## its target (whether a pointer or not) is taken as the target ## of this pointer. "one" | ## no further evaluation of targets is carried out ## beyond that needed to find the element specified in the ## pointer's target. "none" }? att.segLike.attributes = att.segLike.attribute.function, att.segLike.attribute.part att.segLike.attribute.function = ## characterizes the function of the segment. attribute function { data.enumerated }? att.segLike.attribute.part = ## specifies whether or not the segment is fragmented by some other ## structural element, for example a clause which is divided between two ## or more sentences. [ a:defaultValue = "N" ] attribute part { ## (yes) the segment is incomplete in some respect "Y" | ## (no) either the segment is complete, or no claim is made as to ## its completeness "N" | ## (initial) the initial part of an incomplete segment "I" | ## (medial) a medial part of an incomplete segment "M" | ## (final) the final part of an incomplete segment "F" }? att.sortable.attributes = att.sortable.attribute.sortKey att.sortable.attribute.sortKey = ## supplies the sort key for this element in an index, list or group which contains it. attribute sortKey { data.word }? att.sourced.attributes = att.sourced.attribute.ed att.sourced.attribute.ed = ## (edition) supplies an arbitrary identifier for the source edition in which ## the associated feature (for example, a page, column, or line ## break) occurs at this point in the text. attribute ed { list { data.code, data.code* } }? att.spanning.attributes = att.spanning.attribute.spanTo att.spanning.attribute.spanTo = ## indicates the end of a span initiated by the element ## bearing this attribute. attribute spanTo { data.pointer }? att.tableDecoration.attributes = att.tableDecoration.attribute.role, att.tableDecoration.attribute.rows, att.tableDecoration.attribute.cols att.tableDecoration.attribute.role = ## indicates the kind of information held in this cell or ## in each cell of this row. ## Suggested values include: 1] label; 2] data [ a:defaultValue = "data" ] attribute role { ## labelling or descriptive information only. "label" | ## data values. "data" | xsd:Name }? att.tableDecoration.attribute.rows = ## indicates the number of rows occupied by this cell or row. [ a:defaultValue = "1" ] attribute rows { data.count }? att.tableDecoration.attribute.cols = ## (columns) indicates the number of columns occupied by this cell or ## row. [ a:defaultValue = "1" ] attribute cols { data.count }? att.transcriptional.attributes = att.editLike.attributes, att.transcriptional.attribute.hand, att.transcriptional.attribute.status, att.transcriptional.attribute.cause, att.transcriptional.attribute.seq att.transcriptional.attribute.hand = ## signifies the hand of the agent which made the intervention. attribute hand { data.pointer }? att.transcriptional.attribute.status = ## indicates the effect of the intervention, for example in ## the case of a deletion, strikeouts ## which include too much or too little text, or in the case of an ## addition, an insertion which duplicates some of the text ## already present. ## Sample values include: 1] duplicate; 2] duplicate-partial; 3] excessStart; 4] excessEnd; 5] shortStart; 6] shortEnd; 7] partial; 8] unremarkable [ a:defaultValue = "unremarkable" ] attribute status { data.enumerated }? att.transcriptional.attribute.cause = ## documents the presumed cause for the intervention. attribute cause { ## repeated for the purpose of fixation "fix" | ## repeated to clarify a previously illegible or badly written text ## or mark "unclear" }? att.transcriptional.attribute.seq = ## (sequence) assigns a sequence number related to the order in which ## the encoded features carrying this attribute are believed to have occurred. attribute seq { data.count }? att.translatable.attributes = att.translatable.attribute.version att.translatable.attribute.version = ## specifies the version name or number of the source from ## which the translated version was derived attribute version { data.word }? model.nameLike.agent = name model.nameLike.agent_alternation = name model.nameLike.agent_sequence = name model.nameLike.agent_sequenceOptional = name? model.nameLike.agent_sequenceOptionalRepeatable = name* model.nameLike.agent_sequenceRepeatable = name+ model.segLike = seg | s | pc model.segLike_alternation = seg | s | pc model.segLike_sequence = seg, s, pc model.segLike_sequenceOptional = seg?, s?, pc? model.segLike_sequenceOptionalRepeatable = seg*, s*, pc* model.segLike_sequenceRepeatable = seg+, s+, pc+ model.hiLike = hi model.hiLike_alternation = hi model.hiLike_sequence = hi model.hiLike_sequenceOptional = hi? model.hiLike_sequenceOptionalRepeatable = hi* model.hiLike_sequenceRepeatable = hi+ model.emphLike = foreign | emph | mentioned | soCalled | gloss | term | title | code | ident model.emphLike_alternation = foreign | emph | mentioned | soCalled | gloss | term | title | code | ident model.emphLike_sequence = foreign, emph, mentioned, soCalled, gloss, term, title, code, ident model.emphLike_sequenceOptional = foreign?, emph?, mentioned?, soCalled?, gloss?, term?, title?, code?, ident? model.emphLike_sequenceOptionalRepeatable = foreign*, emph*, mentioned*, soCalled*, gloss*, term*, title*, code*, ident* model.emphLike_sequenceRepeatable = foreign+, emph+, mentioned+, soCalled+, gloss+, term+, title+, code+, ident+ model.highlighted = model.hiLike | model.emphLike model.highlighted_alternation = model.hiLike_alternation | model.emphLike_alternation model.highlighted_sequence = model.hiLike_sequence, model.emphLike_sequence model.highlighted_sequenceOptional = model.hiLike_sequenceOptional?, model.emphLike_sequenceOptional? model.highlighted_sequenceOptionalRepeatable = model.hiLike_sequenceOptionalRepeatable*, model.emphLike_sequenceOptionalRepeatable* model.highlighted_sequenceRepeatable = model.hiLike_sequenceRepeatable+, model.emphLike_sequenceRepeatable+ model.dateLike = date | time model.dateLike_alternation = date | time model.dateLike_sequence = date, time model.dateLike_sequenceOptional = date?, time? model.dateLike_sequenceOptionalRepeatable = date*, time* model.dateLike_sequenceRepeatable = date+, time+ model.measureLike = num | measureGrp model.measureLike_alternation = num | measureGrp model.measureLike_sequence = num, measureGrp model.measureLike_sequenceOptional = num?, measureGrp? model.measureLike_sequenceOptionalRepeatable = num*, measureGrp* model.measureLike_sequenceRepeatable = num+, measureGrp+ model.egLike = eg | egXML model.egLike_alternation = eg | egXML model.egLike_sequence = eg, egXML model.egLike_sequenceOptional = eg?, egXML? model.egLike_sequenceOptionalRepeatable = eg*, egXML* model.egLike_sequenceRepeatable = eg+, egXML+ model.graphicLike = graphic | formula model.graphicLike_alternation = graphic | formula model.graphicLike_sequence = graphic, formula model.graphicLike_sequenceOptional = graphic?, formula? model.graphicLike_sequenceOptionalRepeatable = graphic*, formula* model.graphicLike_sequenceRepeatable = graphic+, formula+ model.pPart.editorial = choice | abbr | expan model.pPart.editorial_alternation = choice | abbr | expan model.pPart.editorial_sequence = choice, abbr, expan model.pPart.editorial_sequenceOptional = choice?, abbr?, expan? model.pPart.editorial_sequenceOptionalRepeatable = choice*, abbr*, expan* model.pPart.editorial_sequenceRepeatable = choice+, abbr+, expan+ model.pPart.transcriptional = sic | corr | reg | orig | add | del | unclear model.pPart.transcriptional_alternation = sic | corr | reg | orig | add | del | unclear model.pPart.transcriptional_sequence = sic, corr, reg, orig, add, del, unclear model.pPart.transcriptional_sequenceOptional = sic?, corr?, reg?, orig?, add?, del?, unclear? model.pPart.transcriptional_sequenceOptionalRepeatable = sic*, corr*, reg*, orig*, add*, del*, unclear* model.pPart.transcriptional_sequenceRepeatable = sic+, corr+, reg+, orig+, add+, del+, unclear+ model.pPart.edit = model.pPart.editorial | model.pPart.transcriptional model.pPart.edit_alternation = model.pPart.editorial_alternation | model.pPart.transcriptional_alternation model.pPart.edit_sequence = model.pPart.editorial_sequence, model.pPart.transcriptional_sequence model.pPart.edit_sequenceOptional = model.pPart.editorial_sequenceOptional?, model.pPart.transcriptional_sequenceOptional? model.pPart.edit_sequenceOptionalRepeatable = model.pPart.editorial_sequenceOptionalRepeatable*, model.pPart.transcriptional_sequenceOptionalRepeatable* model.pPart.edit_sequenceRepeatable = model.pPart.editorial_sequenceRepeatable+, model.pPart.transcriptional_sequenceRepeatable+ model.ptrLike = ptr | ref model.ptrLike_alternation = ptr | ref model.ptrLike_sequence = ptr, ref model.ptrLike_sequenceOptional = ptr?, ref? model.ptrLike_sequenceOptionalRepeatable = ptr*, ref* model.ptrLike_sequenceRepeatable = ptr+, ref+ model.global.meta = index | interp | interpGrp model.global.meta_alternation = index | interp | interpGrp model.global.meta_sequence = index, interp, interpGrp model.global.meta_sequenceOptional = index?, interp?, interpGrp? model.global.meta_sequenceOptionalRepeatable = index*, interp*, interpGrp* model.global.meta_sequenceRepeatable = index+, interp+, interpGrp+ model.milestoneLike = milestone | gb | pb | lb | anchor model.milestoneLike_alternation = milestone | gb | pb | lb | anchor model.milestoneLike_sequence = milestone, gb, pb, lb, anchor model.milestoneLike_sequenceOptional = milestone?, gb?, pb?, lb?, anchor? model.milestoneLike_sequenceOptionalRepeatable = milestone*, gb*, pb*, lb*, anchor* model.milestoneLike_sequenceRepeatable = milestone+, gb+, pb+, lb+, anchor+ model.gLike = notAllowed model.phrase.xml = att | gi | val model.phrase.xml_alternation = att | gi | val model.phrase.xml_sequence = att, gi, val model.phrase.xml_sequenceOptional = att?, gi?, val? model.phrase.xml_sequenceOptionalRepeatable = att*, gi*, val* model.phrase.xml_sequenceRepeatable = att+, gi+, val+ model.biblLike = bibl | biblFull model.biblLike_alternation = bibl | biblFull model.biblLike_sequence = bibl, biblFull model.biblLike_sequenceOptional = bibl?, biblFull? model.biblLike_sequenceOptionalRepeatable = bibl*, biblFull* model.biblLike_sequenceRepeatable = bibl+, biblFull+ model.headLike = head model.headLike_alternation = head model.headLike_sequence = head model.headLike_sequenceOptional = head? model.headLike_sequenceOptionalRepeatable = head* model.headLike_sequenceRepeatable = head+ model.labelLike = desc | label model.labelLike_alternation = desc | label model.labelLike_sequence = desc, label model.labelLike_sequenceOptional = desc?, label? model.labelLike_sequenceOptionalRepeatable = desc*, label* model.labelLike_sequenceRepeatable = desc+, label+ model.listLike = \list | listBibl | table model.listLike_alternation = \list | listBibl | table model.listLike_sequence = \list, listBibl, table model.listLike_sequenceOptional = \list?, listBibl?, table? model.listLike_sequenceOptionalRepeatable = \list*, listBibl*, table* model.listLike_sequenceRepeatable = \list+, listBibl+, table+ model.noteLike = note model.noteLike_alternation = note model.noteLike_sequence = note model.noteLike_sequenceOptional = note? model.noteLike_sequenceOptionalRepeatable = note* model.noteLike_sequenceRepeatable = note+ model.lLike = l model.lLike_alternation = l model.lLike_sequence = l model.lLike_sequenceOptional = l? model.lLike_sequenceOptionalRepeatable = l* model.lLike_sequenceRepeatable = l+ model.pLike = p model.pLike_alternation = p model.pLike_sequence = p model.pLike_sequenceOptional = p? model.pLike_sequenceOptionalRepeatable = p* model.pLike_sequenceRepeatable = p+ model.stageLike = stage model.stageLike_alternation = stage model.stageLike_sequence = stage model.stageLike_sequenceOptional = stage? model.stageLike_sequenceOptionalRepeatable = stage* model.stageLike_sequenceRepeatable = stage+ model.entryPart = notAllowed model.global.edit = gap model.global.edit_alternation = gap model.global.edit_sequence = gap model.global.edit_sequenceOptional = gap? model.global.edit_sequenceOptionalRepeatable = gap* model.global.edit_sequenceRepeatable = gap+ model.divPart = model.lLike | model.pLike | lg | sp model.divPart_alternation = model.lLike_alternation | model.pLike_alternation | lg | sp model.divPart_sequence = model.lLike_sequence, model.pLike_sequence, lg, sp model.divPart_sequenceOptional = model.lLike_sequenceOptional?, model.pLike_sequenceOptional?, lg?, sp? model.divPart_sequenceOptionalRepeatable = model.lLike_sequenceOptionalRepeatable*, model.pLike_sequenceOptionalRepeatable*, lg*, sp* model.divPart_sequenceRepeatable = model.lLike_sequenceRepeatable+, model.pLike_sequenceRepeatable+, lg+, sp+ model.publicationStmtPart = address | date | publisher | pubPlace | distributor | authority | idno | availability model.availabilityPart = p | licence model.glossLike = desc | gloss model.quoteLike = quote | cit model.quoteLike_alternation = quote | cit model.quoteLike_sequence = quote, cit model.quoteLike_sequenceOptional = quote?, cit? model.quoteLike_sequenceOptionalRepeatable = quote*, cit* model.quoteLike_sequenceRepeatable = quote+, cit+ model.qLike = model.quoteLike | said | q model.qLike_alternation = model.quoteLike_alternation | said | q model.qLike_sequence = model.quoteLike_sequence, said, q model.qLike_sequenceOptional = model.quoteLike_sequenceOptional?, said?, q? model.qLike_sequenceOptionalRepeatable = model.quoteLike_sequenceOptionalRepeatable*, said*, q* model.qLike_sequenceRepeatable = model.quoteLike_sequenceRepeatable+, said+, q+ model.respLike = author | editor | respStmt | sponsor | funder | principal model.respLike_alternation = author | editor | respStmt | sponsor | funder | principal model.respLike_sequence = author, editor, respStmt, sponsor, funder, principal model.respLike_sequenceOptional = author?, editor?, respStmt?, sponsor?, funder?, principal? model.respLike_sequenceOptionalRepeatable = author*, editor*, respStmt*, sponsor*, funder*, principal* model.respLike_sequenceRepeatable = author+, editor+, respStmt+, sponsor+, funder+, principal+ model.divWrapper = byline | dateline | argument | epigraph | salute | docAuthor | docDate model.divWrapper_alternation = byline | dateline | argument | epigraph | salute | docAuthor | docDate model.divWrapper_sequence = byline, dateline, argument, epigraph, salute, docAuthor, docDate model.divWrapper_sequenceOptional = byline?, dateline?, argument?, epigraph?, salute?, docAuthor?, docDate? model.divWrapper_sequenceOptionalRepeatable = byline*, dateline*, argument*, epigraph*, salute*, docAuthor*, docDate* model.divWrapper_sequenceRepeatable = byline+, dateline+, argument+, epigraph+, salute+, docAuthor+, docDate+ model.divTopPart = model.headLike | opener model.divTopPart_alternation = model.headLike_alternation | opener model.divTopPart_sequence = model.headLike_sequence, opener model.divTopPart_sequenceOptional = model.headLike_sequenceOptional?, opener? model.divTopPart_sequenceOptionalRepeatable = model.headLike_sequenceOptionalRepeatable*, opener* model.divTopPart_sequenceRepeatable = model.headLike_sequenceRepeatable+, opener+ model.divTop = model.divWrapper | model.divTopPart model.pLike.front = head | byline | argument | epigraph | docTitle | titlePart | docAuthor | docEdition | docImprint | docDate model.divBottomPart = trailer | closer | signed | postscript model.divBottomPart_alternation = trailer | closer | signed | postscript model.divBottomPart_sequence = trailer, closer, signed, postscript model.divBottomPart_sequenceOptional = trailer?, closer?, signed?, postscript? model.divBottomPart_sequenceOptionalRepeatable = trailer*, closer*, signed*, postscript* model.divBottomPart_sequenceRepeatable = trailer+, closer+, signed+, postscript+ model.divBottom = model.divWrapper | model.divBottomPart model.titlepagePart = graphic | byline | argument | epigraph | docTitle | titlePart | docAuthor | docEdition | docImprint | docDate model.msQuoteLike = title model.msQuoteLike_alternation = title model.msQuoteLike_sequence = title model.msQuoteLike_sequenceOptional = title? model.msQuoteLike_sequenceOptionalRepeatable = title* model.msQuoteLike_sequenceRepeatable = title+ model.choicePart = sic | corr | reg | orig | unclear | abbr | expan | seg model.imprintPart = publisher | biblScope | pubPlace | distributor model.imprintPart_alternation = publisher | biblScope | pubPlace | distributor model.imprintPart_sequence = publisher, biblScope, pubPlace, distributor model.imprintPart_sequenceOptional = publisher?, biblScope?, pubPlace?, distributor? model.imprintPart_sequenceOptionalRepeatable = publisher*, biblScope*, pubPlace*, distributor* model.imprintPart_sequenceRepeatable = publisher+, biblScope+, pubPlace+, distributor+ model.catDescPart = notAllowed model.addressLike = address model.addressLike_alternation = address model.addressLike_sequence = address model.addressLike_sequenceOptional = address? model.addressLike_sequenceOptionalRepeatable = address* model.addressLike_sequenceRepeatable = address+ model.nameLike = model.nameLike.agent | rs | idno model.nameLike_alternation = model.nameLike.agent_alternation | rs | idno model.nameLike_sequence = model.nameLike.agent_sequence, rs, idno model.nameLike_sequenceOptional = model.nameLike.agent_sequenceOptional?, rs?, idno? model.nameLike_sequenceOptionalRepeatable = model.nameLike.agent_sequenceOptionalRepeatable*, rs*, idno* model.nameLike_sequenceRepeatable = model.nameLike.agent_sequenceRepeatable+, rs+, idno+ model.global = model.global.meta | model.milestoneLike | model.noteLike | model.global.edit | notatedMusic | figure model.biblPart = model.respLike | model.imprintPart | bibl | relatedItem | textLang | edition | extent model.frontPart = divGen | titlePage model.addrPart = model.nameLike | addrLine model.pPart.data = model.dateLike | model.measureLike | model.addressLike | model.nameLike model.pPart.data_alternation = model.dateLike_alternation | model.measureLike_alternation | model.addressLike_alternation | model.nameLike_alternation model.pPart.data_sequence = model.dateLike_sequence, model.measureLike_sequence, model.addressLike_sequence, model.nameLike_sequence model.pPart.data_sequenceOptional = model.dateLike_sequenceOptional?, model.measureLike_sequenceOptional?, model.addressLike_sequenceOptional?, model.nameLike_sequenceOptional? model.pPart.data_sequenceOptionalRepeatable = model.dateLike_sequenceOptionalRepeatable*, model.measureLike_sequenceOptionalRepeatable*, model.addressLike_sequenceOptionalRepeatable*, model.nameLike_sequenceOptionalRepeatable* model.pPart.data_sequenceRepeatable = model.dateLike_sequenceRepeatable+, model.measureLike_sequenceRepeatable+, model.addressLike_sequenceRepeatable+, model.nameLike_sequenceRepeatable+ model.inter = model.egLike | model.biblLike | model.labelLike | model.listLike | model.stageLike | model.qLike model.inter_alternation = model.egLike_alternation | model.biblLike_alternation | model.labelLike_alternation | model.listLike_alternation | model.stageLike_alternation | model.qLike_alternation model.inter_sequence = model.egLike_sequence, model.biblLike_sequence, model.labelLike_sequence, model.listLike_sequence, model.stageLike_sequence, model.qLike_sequence model.inter_sequenceOptional = model.egLike_sequenceOptional?, model.biblLike_sequenceOptional?, model.labelLike_sequenceOptional?, model.listLike_sequenceOptional?, model.stageLike_sequenceOptional?, model.qLike_sequenceOptional? model.inter_sequenceOptionalRepeatable = model.egLike_sequenceOptionalRepeatable*, model.biblLike_sequenceOptionalRepeatable*, model.labelLike_sequenceOptionalRepeatable*, model.listLike_sequenceOptionalRepeatable*, model.stageLike_sequenceOptionalRepeatable*, model.qLike_sequenceOptionalRepeatable* model.inter_sequenceRepeatable = model.egLike_sequenceRepeatable+, model.biblLike_sequenceRepeatable+, model.labelLike_sequenceRepeatable+, model.listLike_sequenceRepeatable+, model.stageLike_sequenceRepeatable+, model.qLike_sequenceRepeatable+ model.common = model.divPart | model.inter model.phrase = model.segLike | model.highlighted | model.graphicLike | model.pPart.edit | model.ptrLike | model.phrase.xml | model.pPart.data model.limitedPhrase = model.hiLike | model.emphLike | model.pPart.editorial | model.ptrLike | model.phrase.xml | model.pPart.data model.divLike = \div model.divGenLike = divGen model.div1Like = notAllowed model.applicationLike = application model.teiHeaderPart = encodingDesc | profileDesc model.sourceDescPart = notAllowed model.encodingDescPart = projectDesc | samplingDecl | editorialDecl | refsDecl | classDecl | appInfo | geoDecl model.editorialDeclPart = notAllowed model.profileDescPart = creation | langUsage | textClass | calendarDesc model.resourceLike = notAllowed p = ## (paragraph) marks paragraphs in prose. [3.1. 7.2.5. ] element ns1:p { macro.paraContent, att.global.attributes, att.declaring.attributes, empty } foreign = ## (foreign) identifies a word or phrase as belonging to some language other than that of the ## surrounding text. [3.3.2.1. ] element ns1:foreign { macro.phraseSeq, att.global.attributes, empty } emph = ## (emphasized) marks words or phrases which are stressed or emphasized for ## linguistic or rhetorical effect. [3.3.2.2. 3.3.2. ] element ns1:emph { macro.paraContent, att.global.attributes, empty } hi = ## (highlighted) marks a word or phrase as graphically distinct from the ## surrounding text, for reasons concerning which no claim is ## made. [3.3.2.2. 3.3.2. ] element ns1:hi { macro.paraContent, att.global.attributes, empty } said = ## (speech or thought) indicates passages thought or spoken aloud, whether explicitly indicated in the source or ## not, whether directly or indirectly reported, whether by real people or fictional characters. [3.3.3. ] element ns1:said { macro.specialPara, att.global.attributes, att.ascribed.attributes, ## may be used to indicate whether the quoted matter is regarded as having been vocalized ## or signed. [ a:defaultValue = "unknown" ] attribute aloud { data.xTruthValue }?, ## may be used to indicate whether the quoted matter is regarded as direct or indirect ## speech. [ a:defaultValue = "true" ] attribute direct { data.xTruthValue }?, empty } quote = ## (quotation) contains a phrase or passage attributed by the narrator or author to some agency external ## to the text. [3.3.3. 4.3.1. ] element ns1:quote { macro.specialPara, att.global.attributes, att.typed.attributes, empty } q = ## (separated from the surrounding text with quotation marks) contains material which is marked as (ostensibly) being somehow different than the ## surrounding text, for any one of a variety of reasons including, but not limited to: direct ## speech or thought, technical terms or jargon, authorial distance, quotations from elsewhere, and ## passages that are mentioned but not used. [3.3.3. ] element ns1:q { macro.specialPara, att.global.attributes, att.ascribed.attributes, ## may be used to indicate whether the offset passage is spoken or thought, or to ## characterize it more finely. ## Suggested values include: 1] spoken; 2] thought; 3] written; 4] soCalled; 5] foreign(foreign words) ; 6] distinct(linguistically distinct) ; 7] term(technical term) ; 8] emph(rhetorically emphasized) ; 9] mentioned attribute type { ## representation of speech "spoken" | ## representation of thought, e.g. internal monologue "thought" | ## quotation from a written source "written" | ## authorial distance "soCalled" | ## (foreign words) "foreign" | ## (linguistically distinct) "distinct" | ## (technical term) "term" | ## (rhetorically emphasized) "emph" | ## refering to itself, not its normal referant "mentioned" | xsd:Name }?, empty } cit = ## (cited quotation) contains a quotation from some other document, together with a bibliographic reference to ## its source. In a dictionary it may contain an example text with at least one occurrence of the ## word form, used in the sense being described, or a translation of the headword, or an example. [3.3.3. 4.3.1. 9.3.5.1. ] element ns1:cit { (model.qLike | model.egLike | model.biblLike | model.ptrLike | model.global | model.entryPart)+, att.global.attributes, att.typed.attributes, empty } mentioned = ## marks words or phrases mentioned, not used. [3.3.4. ] element ns1:mentioned { macro.phraseSeq, att.global.attributes, empty } soCalled = ## contains a word or phrase for which the author or narrator indicates a disclaiming of ## responsibility, for example by the use of scare quotes or italics. [3.3.3. ] element ns1:soCalled { macro.phraseSeq, att.global.attributes, empty } desc = ## (description) contains a brief description of the object documented by its parent element, including its ## intended usage, purpose, or application where this is appropriate. [22.4.4. 22.4.5. 22.4.6. 22.4.7. ] element ns1:desc { macro.limitedContent, att.global.attributes, att.translatable.attributes, empty } gloss = ## identifies a phrase or word used to provide a gloss or definition for some other word or ## phrase. [3.3.4. ] element ns1:gloss { macro.phraseSeq, att.global.attributes, att.declaring.attributes, att.translatable.attributes, att.typed.attributes, att.pointing.attributes, ## (canonical reference) identifies the associated term element using a canonical reference from a ## scheme defined in a refsDecl element in the TEI header attribute cRef { data.pointer }?, empty } term = ## contains a single-word, multi-word, or symbolic designation which is regarded as a technical ## term. [3.3.4. ] element ns1:term { macro.phraseSeq, att.global.attributes, att.declaring.attributes, att.pointing.attributes, att.typed.attributes, att.canonical.attributes, att.sortable.attributes, ## identifies the associated gloss element using a canonical reference from a ## scheme defined in a refsDecl element in the TEI header attribute cRef { data.pointer }?, empty } sic = ## (latin for thus or so ## ) contains text reproduced although apparently incorrect or inaccurate. [3.4.1. ] element ns1:sic { macro.paraContent, att.global.attributes, att.responsibility.attributes, empty } corr = ## (correction) contains the correct form of a passage apparently erroneous in the copy text. [3.4.1. ] element ns1:corr { macro.paraContent, att.global.attributes, att.editLike.attributes, att.typed.attributes, empty } choice = ## groups a number of alternative encodings for the same point in ## a text. [3.4. ] element ns1:choice { (model.choicePart | choice)*, att.global.attributes, empty } reg = ## (regularization) contains a reading which has been regularized or normalized in some sense. [3.4.2. 12. ] element ns1:reg { macro.paraContent, att.global.attributes, att.editLike.attributes, att.typed.attributes, empty } orig = ## (original form) contains a reading which is marked as following the original, rather than being normalized ## or corrected. [3.4.2. 12. ] element ns1:orig { macro.paraContent, att.global.attributes, att.responsibility.attributes, empty } gap = ## (gap) indicates a point where material has been omitted in a transcription, whether for editorial ## reasons described in the TEI header, as part of sampling practice, or because the material is ## illegible, invisible, or inaudible. [3.4.3. ] element ns1:gap { model.glossLike*, att.global.attributes, att.editLike.attributes, ## gives the reason for omission. Sample values include sampling, ## inaudible, irrelevant, cancelled. attribute reason { list { data.word, data.word* } }?, ## in the case of text omitted from the transcription because of deliberate deletion by an ## identifiable hand, signifies the hand which made the deletion. attribute hand { data.pointer }?, ## In the case of text omitted because of damage, categorizes the cause of the damage, if ## it can be identified. ## Sample values include: 1] rubbing; 2] mildew; 3] smoke attribute agent { data.enumerated }?, empty } add = ## (addition) contains letters, words, or phrases inserted in the text by an ## author, scribe, annotator, or corrector. [3.4.3. ] element ns1:add { macro.paraContent, att.global.attributes, att.transcriptional.attributes, att.placement.attributes, att.typed.attributes, empty } del = ## (deletion) contains a letter, word, or passage deleted, marked as deleted, or otherwise indicated as ## superfluous or spurious in the copy text by an author, scribe, annotator, or corrector. [3.4.3. ] element ns1:del { macro.paraContent, att.global.attributes, att.transcriptional.attributes, att.typed.attributes, empty } unclear = ## contains a word, phrase, or passage which cannot be transcribed with certainty because it ## is illegible or inaudible in the source. [11.3.3.1. 3.4.3. ] element ns1:unclear { macro.paraContent, att.global.attributes, att.editLike.attributes, ## indicates why the material is hard to transcribe. attribute reason { list { data.word, data.word* } }?, ## Where the difficulty in transcription arises from action (partial deletion, etc.) ## assignable to an identifiable hand, signifies the hand responsible for the action. attribute hand { data.pointer }?, ## Where the difficulty in transcription arises from damage, categorizes the cause of ## the damage, if it can be identified. ## Sample values include: 1] rubbing; 2] mildew; 3] smoke attribute agent { data.enumerated }?, empty } name = ## (name, proper noun) contains a proper noun or noun phrase. [3.5.1. ] element ns1:name { macro.phraseSeq, att.global.attributes, att.naming.attributes, att.typed.attributes, empty } rs = ## (referencing string) contains a general purpose name or referring string. [13.2.1. 3.5.1. ] element ns1:rs { macro.phraseSeq, att.global.attributes, att.naming.attributes, ## indicates more specifically the object referred to by the referencing string. ## When suitable, values should be drawn from an existing ontology, such as the BBN's proposed answer categories. attribute type { data.enumerated }?, empty } address = ## contains a postal address, for example of a ## publisher, an organization, or an individual. [3.5.2. 2.2.4. 3.11.2.3. ] element ns1:address { (model.global*, (model.addrPart, model.global*)+), att.global.attributes, empty } addrLine = ## (address line) contains one line of a postal address. [3.5.2. 2.2.4. 3.11.2.3. ] element ns1:addrLine { macro.phraseSeq, att.global.attributes, empty } num = ## (number) contains a number, written in any form. [3.5.3. ] element ns1:num { macro.phraseSeq, att.global.attributes, att.ranging.attributes, ## indicates the type of numeric value. ## Suggested values include: 1] cardinal; 2] ordinal; 3] fraction; 4] percentage attribute type { ## absolute number, e.g. 21, 21.5 "cardinal" | ## ordinal number, e.g. 21st "ordinal" | ## fraction, e.g. one half or three-quarters "fraction" | ## a percentage "percentage" | xsd:Name }?, ## supplies the value of the number in standard form. attribute value { data.numeric }?, empty } measureGrp = ## (measure group) contains a group of dimensional specifications which relate to the same object, for example ## the height and width of a manuscript page. [10.3.4. ] element ns1:measureGrp { (text | model.gLike | model.measureLike)*, att.global.attributes, att.measurement.attributes, att.typed.attributes, empty } date = ## contains a date in any format. [3.5.4. 2.2.4. 2.5. 3.11.2.3. 15.2.3. 13.3.6. ] element ns1:date { (text | model.gLike | model.phrase | model.global)*, att.global.attributes, att.datable.attributes, att.editLike.attributes, att.typed.attributes, empty } time = ## contains a phrase defining a time of day in any format. [3.5.4. ] element ns1:time { (text | model.gLike | model.phrase | model.global)*, att.global.attributes, att.datable.attributes, att.editLike.attributes, att.typed.attributes, empty } abbr = ## (abbreviation) contains an abbreviation of any sort. [3.5.5. ] element ns1:abbr { macro.phraseSeq, att.global.attributes, att.responsibility.attributes, ## allows the encoder to classify the abbreviation according to some convenient ## typology. ## Sample values include: 1] suspension; 2] contraction; 3] brevigraph; 4] superscription; 5] acronym; 6] title; 7] organization; 8] geographic attribute type { data.enumerated }?, empty } expan = ## (expansion) contains the expansion of an abbreviation. [3.5.5. ] element ns1:expan { macro.phraseSeq, att.global.attributes, att.editLike.attributes, empty } ptr = ## (pointer) defines a pointer to another location. [3.6. 16.1. ] element ns1:ptr { empty >> sch:pattern [ id = "ptr-constraint-ptrAtts" "\x{a}" ~ " " sch:rule [ context = "tei:ptr" "\x{a}" ~ " " sch:report [ test = "@target and @cRef" "Only one of the\x{a}" ~ " attributes 'target' and 'cRef' may be supplied." ] "\x{a}" ~ " " ] "\x{a}" ~ " " ], att.global.attributes, att.pointing.attributes, att.internetMedia.attributes, att.typed.attributes, att.declaring.attributes, ## (canonical reference) specifies the destination of the pointer by supplying a canonical reference from a ## scheme defined in a refsDecl element in the TEI header attribute cRef { list { data.word, data.word* } }?, empty } ref = ## (reference) defines a reference to another location, possibly modified by additional text or comment. [3.6. 16.1. ] element ns1:ref { macro.paraContent >> sch:pattern [ id = "ref-constraint-refAtts" "\x{a}" ~ " " sch:rule [ context = "tei:ref" "\x{a}" ~ " " sch:report [ test = "@target and @cRef" "Only one of the\x{a}" ~ " attributes 'target' and 'cRef' may be supplied." ] "\x{a}" ~ " " ] "\x{a}" ~ " " ], att.global.attributes, att.pointing.attributes, att.internetMedia.attributes, att.typed.attributes, att.declaring.attributes, ## (canonical reference) specifies the destination of the reference by supplying a canonical reference from a ## scheme defined in a refsDecl element in the TEI header attribute cRef { list { data.word, data.word* } }?, empty } \list = ## (list) contains any sequence of items organized as a list. [3.7. ] element ns1:list { ((model.divTop | model.global)*, ((item, model.global*)+ | (label, model.global*, item, model.global*)+), (model.divBottom, model.global*)*), att.global.attributes, att.sortable.attributes, ## describes the form of the list. ## Suggested values include: 1] ordered; 2] bulleted; 3] simple; 4] gloss [ a:defaultValue = "simple" ] attribute type { ## list items are numbered or lettered. "ordered" | ## list items are marked with a bullet or other typographic device. "bulleted" | ## list items are not numbered or bulleted. "simple" | ## each list item glosses some term or concept, which is given by a label element ## preceding the list item. "gloss" | xsd:Name }?, empty } item = ## contains one component of a list. [3.7. 2.5. ] element ns1:item { macro.specialPara, att.global.attributes, att.sortable.attributes, empty } label = ## contains any label or heading used to identify part of a text, ## typically but not exclusively in a list or glossary. [3.7. ] element ns1:label { macro.phraseSeq, att.global.attributes, empty } 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. ] element ns1:head { (text | lg | model.gLike | model.phrase | model.inter | model.lLike | model.global)*, att.global.attributes, att.typed.attributes, empty } note = ## contains a note or annotation. [3.8.1. 2.2.6. 3.11.2.6. 9.3.5.4. ] element ns1:note { macro.specialPara, att.global.attributes, att.placement.attributes, att.pointing.attributes, att.responsibility.attributes, att.typed.attributes, ## indicates whether the copy text shows the exact place of reference for the note. [ a:defaultValue = "true" ] attribute anchored { data.truthValue }?, ## points to the end of the span to which the note is attached, if the note is not embedded ## in the text at that point. attribute targetEnd { list { data.pointer, data.pointer* } }?, empty } index = ## (index entry) marks a location to be indexed for whatever purpose. [3.8.2. ] element ns1:index { (term, index?)*, att.global.attributes, att.spanning.attributes, ## supplies a name to specify which index (of several) the index entry belongs to. attribute indexName { data.name }?, empty } graphic = ## indicates the location of an inline graphic, illustration, or figure. [3.9. ] element ns1:graphic { model.glossLike*, att.global.attributes, att.internetMedia.attributes, att.declaring.attributes, ## The display width of the image attribute width { data.outputMeasurement }?, ## The display height of the image attribute height { data.outputMeasurement }?, ## A scale factor to be applied to the image to make it the desired display size attribute scale { data.numeric }?, ## (uniform resource locator) A URL which refers to the image itself. attribute url { data.pointer }, empty } milestone = ## marks a boundary point separating any kind of section of a text, typically but not ## necessarily indicating a point at which some part of a standard reference system changes, where ## the change is not represented by a structural element. [3.10.3. ] element ns1:milestone { empty, att.global.attributes, att.typed.attributes, att.sourced.attributes, att.spanning.attributes, att.breaking.attributes, ## provides a conventional name for the kind of section changing at this milestone. ## Suggested values include: 1] page; 2] column; 3] line; 4] book; 5] poem; 6] canto; 7] speaker; 8] stanza; 9] act; 10] scene; 11] section; 12] absent; 13] unnumbered attribute unit { ## physical page breaks (synonymous with the pb element). "page" | ## column breaks. "column" | ## line breaks (synonymous with the lb element). "line" | ## any units termed book, liber, etc. "book" | ## individual poems in a collection. "poem" | ## cantos or other major sections of a poem. "canto" | ## changes of speaker or narrator. "speaker" | ## stanzas within a poem, book, or canto. "stanza" | ## acts within a play. "act" | ## scenes within a play or act. "scene" | ## sections of any kind. "section" | ## passages not present in the reference edition. "absent" | ## passages present in the text, but not to be included as part of the reference. "unnumbered" | xsd:Name }, empty } gb = ## (gathering begins) marks the point in a transcribed codex at which a new ## gathering or quire begins. [3.10.3. ] element ns1:gb { empty, att.global.attributes, att.typed.attributes, att.spanning.attributes, att.breaking.attributes, empty } pb = ## (page break) marks the boundary between one page of a text and the next in a standard reference system. [3.10.3. ] element ns1:pb { empty, att.global.attributes, att.typed.attributes, att.sourced.attributes, att.spanning.attributes, att.breaking.attributes, empty } lb = ## (line break) marks the start of a new (typographic) line in some edition or version of a text. [3.10.3. 7.2.5. ] element ns1:lb { empty, att.global.attributes, att.typed.attributes, att.sourced.attributes, att.spanning.attributes, att.breaking.attributes, empty } 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.11.2.2. 2.2.1. ] element ns1:author { macro.phraseSeq, att.global.attributes, att.naming.attributes, empty } editor = ## 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.11.2.2. ] element ns1:editor { macro.phraseSeq, att.global.attributes, att.naming.attributes, empty } 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.11.2.2. 2.2.1. 2.2.2. 2.2.5. ] element ns1:respStmt { ((resp+, model.nameLike.agent+) | (model.nameLike.agent+, resp+)), att.global.attributes, empty } 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.11.2.2. 2.2.1. 2.2.2. 2.2.5. ] element ns1:resp { macro.phraseSeq.limited, att.global.attributes, att.canonical.attributes, empty } title = ## contains a title for any kind of work. [3.11.2.2. 2.2.1. 2.2.5. ] element ns1:title { macro.paraContent, att.global.attributes, att.canonical.attributes, ## indicates the bibliographic level for a title, that is, whether ## it identifies an article, book, journal, series, or ## unpublished material. attribute level { ## (analytic) analytic title (article, poem, or other item ## published as part of a larger item) "a" | ## (monographic) monographic title (book, collection, or ## other item published as a distinct item, ## including single volumes of multi-volume ## works) "m" | ## (journal) journal title "j" | ## (series) series title "s" | ## (unpublished) title of unpublished material (including ## theses and dissertations unless ## published by a commercial press) "u" }?, ## classifies the title according to some convenient typology. ## Sample values include: 1] main; 2] sub(subordinate) ; 3] alt(alternate) ; 4] short; 5] desc(descriptive) attribute type { data.enumerated }?, empty } publisher = ## provides the name of the organization responsible for the publication or distribution of a ## bibliographic item. [3.11.2.3. 2.2.4. ] element ns1:publisher { macro.phraseSeq, att.global.attributes, empty } biblScope = ## (scope of citation) defines the scope of a bibliographic reference, for example as a ## list of page numbers, or a named subdivision of a larger work. [3.11.2.3. ] element ns1:biblScope { macro.phraseSeq, att.global.attributes, ## identifies the type of information conveyed by the element, e.g. ## columns, pages, volume. ## Suggested values include: 1] vol(volume) ; 2] issue; 3] pp(pages) ; 4] ll (lines) ; 5] chap(chapter) ; 6] part attribute type { ## (volume) the element contains a volume number. "vol" | ## the element contains an issue number, or volume and ## issue numbers. "issue" | ## (pages) the element contains a page number or page range. "pp" | ## (lines) the element contains a line number or line range. "ll" | ## (chapter) the element contains a chapter indication (number ## and/or title) "chap" | ## the element identifies a part of a book or collection. "part" | xsd:Name }?, ## specifies the starting point of the range of units indicated by the type attribute. attribute from { data.word }?, ## specifies the end-point of the range of units indicated by the type attribute. attribute to { data.word }?, empty } pubPlace = ## (publication place) contains the name of the place where a bibliographic item was published. [3.11.2.3. ] element ns1:pubPlace { macro.phraseSeq, att.global.attributes, att.naming.attributes, empty } bibl = ## (bibliographic citation) contains a loosely-structured bibliographic citation of which the sub-components may or may ## not be explicitly tagged. [3.11.1. 2.2.7. 15.3.2. ] element ns1:bibl { (text | model.gLike | model.highlighted | model.pPart.data | model.pPart.edit | model.segLike | model.ptrLike | model.biblPart | model.global)*, att.global.attributes, att.declarable.attributes, att.typed.attributes, att.sortable.attributes, empty } listBibl = ## (citation list) contains a list of bibliographic citations of any kind. [3.11.1. 2.2.7. 15.3.2. ] element ns1:listBibl { (model.headLike*, (model.biblLike | model.milestoneLike | listBibl)+), att.global.attributes, att.sortable.attributes, att.declarable.attributes, att.typed.attributes, empty } relatedItem = ## contains or references some other bibliographic item which is related to the present one in ## some specified manner, for example as a constituent or alternative version of it. [3.11.2.5. ] element ns1:relatedItem { ((model.biblLike | model.ptrLike)?) >> sch:pattern [ id = "relatedItem-constraint-targetorcontent11" "\x{a}" ~ " " sch:rule [ context = "tei:relatedItem" "\x{a}" ~ " " sch:report [ test = "@target and count( child::* ) > 0" "If the 'target' attribute is used, the\x{a}" ~ " relatedItem element must be empty" ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] >> sch:pattern [ id = "relatedItem-constraint-targetorcontent11" "\x{a}" ~ " " sch:rule [ context = "tei:relatedItem" "\x{a}" ~ " " sch:assert [ test = "@target or child::*" "A relatedItem element should have either a 'target' attribute\x{a}" ~ " or a child element to indicate the related bibliographic item" ] "\x{a}" ~ " " ] "\x{a}" ~ " " ], att.global.attributes, att.typed.attributes, ## points to the related bibliographic element by means of an ## absolute or relative URI reference attribute target { data.pointer }?, empty } l = ## (verse line) contains a single, possibly incomplete, line of verse. [3.12.1. 3.12. 7.2.5. ] element ns1:l { macro.paraContent, att.global.attributes, ## specifies whether or not the line is metrically complete. [ a:defaultValue = "N" ] attribute part { ## (yes) the line is metrically incomplete "Y" | ## (no) either the line is complete, or no claim is made as to its completeness "N" | ## (initial) the initial part of an incomplete line "I" | ## (medial) a medial part of an incomplete line "M" | ## (final) the final part of an incomplete line "F" }?, empty } lg = ## (line group) contains a group of verse lines functioning as a formal unit, e.g. a stanza, refrain, ## verse paragraph, etc. [3.12.1. 3.12. 7.2.5. ] element ns1:lg { ((model.divTop | model.global)*, (model.lLike | model.stageLike | model.labelLike | lg), (model.lLike | model.stageLike | model.labelLike | model.global | lg)*, (model.divBottom, model.global*)*), att.global.attributes, att.divLike.attributes, att.typed.attributes, att.declaring.attributes, empty } sp = ## (speech) An individual speech in a performance text, or a passage presented as such in a prose or ## verse text. [3.12.2. 3.12. 7.2.2. ] element ns1:sp { (model.global*, (speaker, model.global*)?, ((lg | model.lLike | model.pLike | model.listLike | model.stageLike | model.qLike), model.global*)+), att.global.attributes, att.ascribed.attributes, empty } speaker = ## A specialized form of heading or label, giving the name of one or more speakers in a ## dramatic text or fragment. [3.12.2. ] element ns1:speaker { macro.phraseSeq, att.global.attributes, empty } stage = ## (stage direction) contains any kind of stage direction within a dramatic text or fragment. [3.12.2. 3.12. 7.2.4. ] element ns1:stage { macro.specialPara, att.global.attributes, ## indicates the kind of stage direction. ## Suggested values include: 1] setting; 2] entrance; 3] exit; 4] business; 5] novelistic; 6] delivery; 7] modifier; 8] location; 9] mixed attribute type { ## describes a setting. "setting" | ## describes an entrance. "entrance" | ## describes an exit. "exit" | ## describes stage business. "business" | ## is a narrative, motivating stage direction. "novelistic" | ## describes how a character speaks. "delivery" | ## gives some detail about a character. "modifier" | ## describes a location. "location" | ## more than one of the above "mixed" | xsd:Name }?, empty } teiCorpus = ## contains the whole of a TEI encoded corpus, comprising a single corpus header and one or ## more TEI elements, each containing a single text header and a text. [4. 15.1. ] element ns1:teiCorpus { (teiHeader, (TEI | teiCorpus)+), att.global.attributes, ## The version of the TEI scheme [ a:defaultValue = "5.0" ] attribute version { data.version }?, empty } divGen = ## (automatically generated text division) indicates the location at which a textual division generated ## automatically by a text-processing application is to appear. [3.8.2. ] element ns1:divGen { model.headLike*, att.global.attributes, ## specifies what type of generated text division (e.g. index, ## table of contents, etc.) is to appear. ## Sample values include: 1] index; 2] toc; 3] figlist; 4] tablist attribute type { data.enumerated }?, empty } textLang = ## (text language) describes the languages and writing systems identified within the bibliographic work ## being described, rather than its description. [3.11.2.3. 10.6.6. ] element ns1:textLang { macro.phraseSeq, att.global.attributes, ## (main language) supplies a code which identifies the chief language used in the bibliographic work. attribute mainLang { data.language }?, ## (other languages) one or more codes identifying any other languages used in the bibliographic work. attribute otherLangs { list { data.language* } }?, empty } teiHeader = ## (TEI Header) supplies the descriptive and declarative information making up an electronic title page ## prefixed to every TEI-conformant text. [2.1.1. 15.1. ] element ns1:teiHeader { (fileDesc, model.teiHeaderPart*, revisionDesc?), att.global.attributes, ## specifies the kind of document to which the header is attached, for example whether it ## is a corpus or individual text. ## Sample values include: 1] text; 2] corpus [ a:defaultValue = "text" ] attribute type { data.enumerated }?, empty } fileDesc = ## (file description) contains a full bibliographic description of an electronic file. [2.2. 2.1.1. ] element ns1:fileDesc { ((titleStmt, editionStmt?, extent?, publicationStmt, seriesStmt?, notesStmt?), sourceDesc+), att.global.attributes, empty } titleStmt = ## (title statement) groups information about the title of a work and those responsible for its intellectual ## content. [2.2.1. 2.2. ] element ns1:titleStmt { (title+, model.respLike*), att.global.attributes, empty } sponsor = ## specifies the name of a sponsoring organization or institution. [2.2.1. ] element ns1:sponsor { macro.phraseSeq.limited, att.global.attributes, empty } funder = ## (funding body) specifies the name of an individual, institution, or organization responsible for the ## funding of a project or text. [2.2.1. ] element ns1:funder { macro.phraseSeq.limited, att.global.attributes, empty } principal = ## (principal researcher) supplies the name of the principal researcher responsible for the ## creation of an electronic text. [2.2.1. ] element ns1:principal { macro.phraseSeq.limited, att.global.attributes, empty } editionStmt = ## (edition statement) groups information relating to one edition of a text. [2.2.2. 2.2. ] element ns1:editionStmt { (model.pLike+ | (edition, respStmt*)), att.global.attributes, empty } edition = ## (edition) describes the particularities of one edition of a text. [2.2.2. ] element ns1:edition { macro.phraseSeq, att.global.attributes, empty } extent = ## describes the approximate size of a text as stored on some carrier medium, whether digital ## or non-digital, specified in any convenient units. [2.2.3. 2.2. 3.11.2.3. ] element ns1:extent { macro.phraseSeq, att.global.attributes, empty } publicationStmt = ## (publication statement) groups information concerning the publication or distribution of an electronic or other ## text. [2.2.4. 2.2. ] element ns1:publicationStmt { (model.pLike+ | model.publicationStmtPart+), att.global.attributes, empty } distributor = ## supplies the name of a person or other agency responsible for the ## distribution of a text. [2.2.4. ] element ns1:distributor { macro.phraseSeq, att.global.attributes, empty } authority = ## (release authority) supplies the name of a person or other agency responsible for ## making an electronic file available, other than a publisher or ## distributor. [2.2.4. ] element ns1:authority { macro.phraseSeq.limited, att.global.attributes, empty } 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. [2.2.4. 2.2.5. 3.11.2.3. ] element ns1:idno { macro.xtext, att.global.attributes, att.sortable.attributes, ## categorizes the identifier, for example as an ISBN, Social ## Security number, etc. attribute type { data.enumerated }?, empty } 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. ] element ns1:availability { model.availabilityPart+, att.global.attributes, att.declarable.attributes, ## supplies a code identifying the current availability of the text. [ a:defaultValue = "unknown" ] attribute status { ## the text is freely available. "free" | ## the status of the text is unknown. "unknown" | ## the text is not freely available. "restricted" }?, empty } licence = ## contains information about a licence or other legal agreement ## applicable to the text. [2.2.4. ] element ns1:licence { macro.specialPara, att.global.attributes, att.pointing.attributes, att.datable.attributes, empty } seriesStmt = ## (series statement) groups information about the series, if any, to which a publication belongs. [2.2.5. 2.2. ] element ns1:seriesStmt { (model.pLike+ | (title+, (editor | respStmt)*, (idno | biblScope)*)), att.global.attributes, empty } notesStmt = ## (notes statement) collects together any notes providing information about a text additional to that recorded ## in other parts of the bibliographic description. [2.2.6. 2.2. ] element ns1:notesStmt { model.noteLike+, att.global.attributes, empty } sourceDesc = ## (source description) describes the source 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. ] element ns1:sourceDesc { (model.pLike+ | (model.biblLike | model.sourceDescPart | model.listLike)+), att.global.attributes, att.declarable.attributes, empty } biblFull = ## (fully-structured bibliographic citation) contains a fully-structured bibliographic citation, in which all components of the TEI file ## description are present. [3.11.1. 2.2. 2.2.7. 15.3.2. ] element ns1:biblFull { ((titleStmt, editionStmt?, extent?, publicationStmt, seriesStmt?, notesStmt?), sourceDesc*), att.global.attributes, att.declarable.attributes, att.sortable.attributes, empty } encodingDesc = ## (encoding description) documents the relationship between an electronic text and the ## source or sources from which it was derived. [2.3. 2.1.1. ] element ns1:encodingDesc { (model.encodingDescPart | model.pLike)+, att.global.attributes, empty } projectDesc = ## (project description) describes in detail the aim or purpose for which an electronic file was encoded, together ## with any other relevant information concerning the process by which it was assembled or ## collected. [2.3.1. 2.3. 15.3.2. ] element ns1:projectDesc { model.pLike+, att.global.attributes, att.declarable.attributes, empty } samplingDecl = ## (sampling declaration) contains a prose description of the rationale and methods used in sampling texts in the ## creation of a corpus or collection. [2.3.2. 2.3. 15.3.2. ] element ns1:samplingDecl { model.pLike+, att.global.attributes, att.declarable.attributes, empty } editorialDecl = ## (editorial practice declaration) provides details of editorial principles and practices applied ## during the encoding of a text. [2.3.3. 2.3. 15.3.2. ] element ns1:editorialDecl { (model.pLike | model.editorialDeclPart)+, att.global.attributes, att.declarable.attributes, empty } refsDecl = ## (references declaration) specifies how canonical references are constructed for this ## text. [2.3.5.3. 2.3. 2.3.5. ] element ns1:refsDecl { (model.pLike+ | cRefPattern+ | refState+), att.global.attributes, att.declarable.attributes, empty } cRefPattern = ## (canonical reference pattern) specifies an expression and replacement pattern for transforming a canonical reference into ## a URI. [2.3.5.3. 2.3.5. 2.3.5.2. ] element ns1:cRefPattern { model.pLike*, att.global.attributes, ## specifies a regular expression against which the values of cRef attributes ## can be matched. attribute matchPattern { data.pattern }, ## specifies a replacement pattern which, once subpattern substitution ## has been performed, provides a URI. attribute replacementPattern { text }, empty } refState = ## (reference state) specifies one component of a canonical reference defined by the milestone method. [2.3.5.3. 2.3.5. ] element ns1:refState { empty, att.global.attributes, att.sourced.attributes, ## indicates what kind of state is changing at this milestone. ## Suggested values include: 1] page; 2] column; 3] line; 4] book; 5] poem; 6] canto; 7] stanza; 8] act; 9] scene; 10] section; 11] absent attribute unit { ## page breaks in the reference edition. "page" | ## column breaks. "column" | ## line breaks. "line" | ## any units termed book, liber, etc. "book" | ## individual poems in a collection. "poem" | ## cantos or other major sections of a poem. "canto" | ## stanzas within a poem, book, or canto. "stanza" | ## acts within a play. "act" | ## scenes within a play or act. "scene" | ## sections of any kind. "section" | ## passages not present in the reference edition. "absent" | xsd:Name }, ## specifies the fixed length of the reference component. attribute length { data.count }?, ## (delimiter) supplies a delimiting string following the reference component. attribute delim { text }?, empty } classDecl = ## (classification declarations) contains one or more taxonomies defining any classificatory ## codes used elsewhere in the text. [2.3.6. 2.3. ] element ns1:classDecl { taxonomy+, att.global.attributes, empty } taxonomy = ## defines a typology either implicitly, by means of a bibliographic ## citation, or explicitly by a structured taxonomy. [2.3.6. ] element ns1:taxonomy { (model.glossLike* | category+ | (model.biblLike, category*)), att.global.attributes, empty } category = ## contains an individual descriptive category, possibly nested within a superordinate ## category, within a user-defined taxonomy. [2.3.6. ] element ns1:category { ((catDesc+ | model.glossLike*), category*), att.global.attributes, empty } 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.6. ] element ns1:catDesc { (text | model.limitedPhrase | model.catDescPart)*, att.global.attributes, empty } appInfo = ## (application information) records information about an application which has ## edited the TEI file. element ns1:appInfo { model.applicationLike+, att.global.attributes, empty } application = ## provides information about an application which has acted upon the document. element ns1:application { (model.labelLike+, (model.ptrLike* | model.pLike*)), att.global.attributes, att.typed.attributes, att.datable.attributes, ## Supplies an identifier for the application, independent of its version number or display ## name. attribute ident { data.name }, ## Supplies a version number for the application, independent of its identifier or display ## name. attribute version { xsd:token { pattern = "[\d]+[a-z]*[\d]*(\.[\d]+[a-z]*[\d]*){0,3}" } }, empty } 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. 2.1.1. ] element ns1:profileDesc { model.profileDescPart*, att.global.attributes, empty } creation = ## contains information about the creation of a text. [2.4.1. 2.4. ] element ns1:creation { (text | model.limitedPhrase | listChange)*, att.global.attributes, att.datable.attributes, empty } langUsage = ## (language usage) describes the languages, sublanguages, registers, dialects, etc. ## represented within a text. [2.4.2. 2.4. 15.3.2. ] element ns1:langUsage { language+, att.global.attributes, att.declarable.attributes, empty } language = ## characterizes a single language or sublanguage used within a text. [2.4.2. ] element ns1:language { macro.phraseSeq.limited, att.global.attributes, ## (identifier) Supplies a language code constructed as defined in BCP 47 which is used to identify the ## language documented by this element, and which is referenced by the global ## xml:lang attribute. attribute ident { data.language }, ## specifies the approximate percentage (by volume) of the text which uses this language. attribute usage { xsd:nonNegativeInteger { maxInclusive = "100" } }?, empty } textClass = ## (text classification) groups information which describes the nature or topic of a text in terms of a standard ## classification scheme, thesaurus, etc. [2.4.3. ] element ns1:textClass { (classCode | catRef | keywords)*, att.global.attributes, att.declarable.attributes, empty } keywords = ## contains a list of keywords or phrases identifying the topic or nature of a text. [2.4.3. ] element ns1:keywords { (term+ | \list), att.global.attributes, ## identifies the controlled vocabulary within which the set of keywords concerned is ## defined. attribute scheme { data.pointer }, empty } classCode = ## (classification code) contains the classification code used for this text in some standard classification system. [2.4.3. ] element ns1:classCode { macro.phraseSeq.limited, att.global.attributes, ## identifies the classification system or taxonomy in use. attribute scheme { data.pointer }, empty } catRef = ## (category reference) specifies one or more defined categories within some taxonomy or text typology. [2.4.3. ] element ns1:catRef { empty, att.global.attributes, att.pointing.attributes, ## identifies the classification scheme within which the set of categories concerned is ## defined attribute scheme { data.pointer }?, empty } calendarDesc = ## (calendar description) contains a description of the calendar system used in any ## dating expression found in the text. [2.4. 2.4.4. ] element ns1:calendarDesc { calendar+, att.global.attributes, empty } calendar = ## describes a calendar or dating system used in a dating formula in the text. [2.4.4. ] element ns1:calendar { model.pLike+, att.global.attributes, att.pointing.attributes, empty } revisionDesc = ## (revision description) summarizes the revision history for a file. [2.5. 2.1.1. ] element ns1:revisionDesc { (\list | listChange | change+), att.global.attributes, att.docStatus.attributes, empty } 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.5. 2.4.1. ] element ns1:change { macro.specialPara, att.ascribed.attributes, att.datable.attributes, att.docStatus.attributes, att.global.attributes, att.typed.attributes, ## points to one or more elements that belong to this change. attribute target { list { data.pointer, data.pointer* } }?, empty } listChange = ## groups a number of change descriptions associated ## with either the creation of a source text or the revision of an encoded text. element ns1:listChange { (listChange | change)+, att.global.attributes, att.sortable.attributes, ## indicates whether the ordering of its child change ## elements is to be considered significant or not [ a:defaultValue = "true" ] attribute ordered { data.truthValue }?, empty } geoDecl = ## (geographic coordinates declaration) documents the notation and the datum used for geographic coordinates expressed as content of ## the geo element elsewhere within the document. element ns1:geoDecl { macro.phraseSeq, att.global.attributes, att.declarable.attributes, ## supplies a commonly used code name for the datum employed. ## Suggested values include: 1] WGS84(World Geodetic System) ; 2] MGRS(Military Grid Reference System) ; 3] OSGB36(ordnance survey great britain) ; 4] ED50(European Datum coordinate system) [ a:defaultValue = "WGS84" ] attribute datum { ## (World Geodetic System) a pair of numbers to be interpreted as latitude followed by longitude according to ## the World Geodetic System. "WGS84" | ## (Military Grid Reference System) the values supplied are geospatial entity object codes, based on "MGRS" | ## (ordnance survey great britain) the value supplied is to be interpreted as a British National Grid Reference. "OSGB36" | ## (European Datum coordinate system) the value supplied is to be interpreted as latitude followed by longitude according ## to the European Datum coordinate system. "ED50" | xsd:Name }?, empty } TEI = ## (TEI document) contains a single TEI-conformant document, ## comprising a TEI header and a text, either in isolation or as part of a ## teiCorpus element. [4. 15.1. ] element ns1:TEI { (teiHeader, ((model.resourceLike+, \text?) | \text)) >> sch:ns [ prefix = "tei" uri = "http://www.tei-c.org/ns/1.0" ] >> sch:ns [ prefix = "rng" uri = "http://relaxng.org/ns/structure/1.0" ], att.global.attributes, ## specifies the version number of the TEI Guidelines against ## which this document is valid. attribute version { data.version }?, empty } \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. 15.1. ] element ns1:text { (model.global*, (front, model.global*)?, (body | group), model.global*, (back, model.global*)?), att.global.attributes, att.declaring.attributes, att.typed.attributes, empty } body = ## (text body) contains the whole body of a single unitary text, excluding any front or back matter. [4. ] element ns1:body { (model.global*, (model.divTop, (model.global | model.divTop)*)?, (model.divGenLike, (model.global | model.divGenLike)*)?, ((model.divLike, (model.global | model.divGenLike)*)+ | (model.div1Like, (model.global | model.divGenLike)*)+ | ((model.common, model.global*)+, ((model.divLike, (model.global | model.divGenLike)*)+ | (model.div1Like, (model.global | model.divGenLike)*)+)?)), (model.divBottom, model.global*)*), att.global.attributes, att.declaring.attributes, empty } group = ## contains the body of a composite text, grouping together a sequence of distinct texts (or ## groups of such texts) which are regarded as a unit for some purpose, for example the collected ## works of an author, a sequence of prose essays, etc. [4. 4.3.1. 15.1. ] element ns1:group { ((model.divTop | model.global)*, ((\text | group), (\text | group | model.global)*), model.divBottom*), att.global.attributes, att.declaring.attributes, empty } \div = ## (text division) contains a subdivision of the front, body, or back of a text. [4.1. ] element ns1:div { ((model.divTop | model.global)*, ((((model.divLike | model.divGenLike), model.global*)+ | ((model.common, model.global*)+, ((model.divLike | model.divGenLike), model.global*)*)), (model.divBottom, model.global*)*)?), att.global.attributes, att.divLike.attributes, att.typed.attributes, att.declaring.attributes, empty } trailer = ## contains a closing title or footer appearing at the end of a division of a text. [4.2.4. 4.2. ] element ns1:trailer { macro.phraseSeq, att.global.attributes, empty } byline = ## contains the primary statement of responsibility given for a work ## on its title page or at the head or end of the work. [4.2.2. 4.5. ] element ns1:byline { (text | model.gLike | model.phrase | docAuthor | model.global)*, att.global.attributes, empty } dateline = ## contains a brief description of the place, date, time, etc. of production of a letter, ## newspaper story, or other work, prefixed or suffixed to it as a kind of heading or trailer. [4.2.4. 4.2.2. ] element ns1:dateline { macro.phraseSeq, att.global.attributes, empty } argument = ## A formal list or prose description of the topics addressed by ## a subdivision of a text. [4.2. 4.6. ] element ns1:argument { ((model.global | model.headLike)*, (model.common, model.global*)+), att.global.attributes, empty } epigraph = ## contains a quotation, anonymous or attributed, appearing at ## the start or end of a section or on a title page. [4.2.3. 4.2. 4.6. ] element ns1:epigraph { (model.common | model.global)*, att.global.attributes, empty } opener = ## groups together dateline, byline, salutation, and similar phrases appearing as a preliminary ## group at the start of a division, especially of a letter. [4.2.4. 4.2. ] element ns1:opener { (text | model.gLike | model.phrase | argument | byline | dateline | epigraph | salute | signed | model.global)*, att.global.attributes, empty } closer = ## groups together salutations, datelines, and similar phrases appearing as a final group at ## the end of a division, especially of a letter. [4.2.2. 4.2. ] element ns1:closer { (text | model.gLike | signed | dateline | salute | model.phrase | model.global)*, att.global.attributes, empty } salute = ## (salutation) contains a salutation or greeting prefixed to a foreword, dedicatory epistle, or other ## division of a text, or the salutation in the closing of a letter, preface, etc. [4.2.4. 4.2.2. ] element ns1:salute { macro.phraseSeq, att.global.attributes, empty } signed = ## (signature) contains the closing salutation, etc., appended to a foreword, ## dedicatory epistle, or other division of a text. [4.2.4. 4.2.2. ] element ns1:signed { macro.phraseSeq, att.global.attributes, empty } postscript = ## contains a postscript, e.g. to a letter. [4.2. ] element ns1:postscript { ((model.divTopPart*, model.common+, model.divBottomPart*) | model.global)*, att.global.attributes, empty } titlePage = ## (title page) contains the title page of a text, appearing within the front or back matter. [4.6. ] element ns1:titlePage { (model.global*, model.titlepagePart, (model.titlepagePart | model.global)*), att.global.attributes, ## classifies the title page according to any convenient typology. attribute type { data.enumerated }?, empty } docTitle = ## (document title) contains the title of a document, including all its ## constituents, as given on a title page. [4.6. ] element ns1:docTitle { (model.global*, (titlePart, model.global*)+), att.global.attributes, att.canonical.attributes, empty } titlePart = ## contains a subsection or division of the title of a work, as ## indicated on a title page. [4.6. ] element ns1:titlePart { macro.paraContent, att.global.attributes, ## specifies the role of this subdivision of the title. ## Suggested values include: 1] main; 2] sub(subordinate) ; 3] alt(alternate) ; 4] short; 5] desc(descriptive) [ a:defaultValue = "main" ] attribute type { ## main title of the work ## "main" | ## (subordinate) subtitle of the work ## "sub" | ## (alternate) alternative title of the work ## "alt" | ## abbreviated form of title "short" | ## (descriptive) descriptive paraphrase of the work ## "desc" | xsd:Name }?, empty } docAuthor = ## (document author) contains the name of the author of the document, as given on the ## title page (often but not always contained in a byline). [4.6. ] element ns1:docAuthor { macro.phraseSeq, att.global.attributes, att.canonical.attributes, empty } docEdition = ## (document edition) contains an edition statement as presented on a title page of a ## document. [4.6. ] element ns1:docEdition { macro.paraContent, att.global.attributes, empty } docImprint = ## (document imprint) contains the imprint statement (place and date of publication, ## publisher name), as given ## (usually) at the foot of a title page. [4.6. ] element ns1:docImprint { (text | model.gLike | model.phrase | pubPlace | docDate | publisher | model.global)*, att.global.attributes, empty } docDate = ## (document date) contains the date of a document, as given ## (usually) on a title page. [4.6. ] element ns1:docDate { macro.phraseSeq, att.global.attributes, ## gives the value of the date in standard form, i.e. YYYY-MM-DD. attribute when { data.temporal.w3c }?, empty } front = ## (front matter) contains any prefatory matter (headers, ## title page, prefaces, dedications, etc.) ## found at the start of a document, before the main body. [4.6. 4. ] element ns1:front { ((model.frontPart | model.pLike.front | model.global)*, ((model.div1Like, (model.frontPart | model.div1Like | model.global)*) | (model.divLike, (model.frontPart | model.divLike | model.global)*))?, (model.divBottomPart, (model.divBottomPart | model.global)*)?), att.global.attributes, att.declaring.attributes, empty } back = ## (back matter) contains any appendixes, etc. following the main part of a text. [4.7. 4. ] element ns1:back { ((model.frontPart | model.pLike.front | model.global)*, ((model.div1Like, (model.frontPart | model.div1Like | model.global)*) | (model.divLike, (model.frontPart | model.divLike | model.global)*))?, (model.divBottomPart, (model.divBottomPart | model.global)*)?), att.global.attributes, att.declaring.attributes, empty } table = ## contains text displayed in tabular form, in rows and columns. [14.1.1. ] element ns1:table { (((model.headLike | model.global)*, (row, model.global*)+) | model.graphicLike+), att.global.attributes, ## indicates the number of rows in the table. attribute rows { data.count }?, ## (columns) indicates the number of columns in each row of the table. attribute cols { data.count }?, empty } row = ## contains one row of a table. [14.1.1. ] element ns1:row { cell+, att.global.attributes, att.tableDecoration.attributes, empty } cell = ## contains one cell of a table. [14.1.1. ] element ns1:cell { macro.paraContent, att.global.attributes, att.tableDecoration.attributes, empty } formula = ## contains a mathematical or other formula. [14.2. ] element ns1:formula { (text | model.graphicLike)*, att.global.attributes, ## specifies the notation used for the content of the element. attribute notation { data.enumerated }?, empty } notatedMusic = ## encodes the presence of music notation in a text element ns1:notatedMusic { (model.labelLike | model.ptrLike | graphic)*, att.global.attributes, att.placement.attributes, att.typed.attributes, empty } figure = ## groups elements representing or containing graphic information ## such as an illustration, formula, or figure. [14.4. ] element ns1:figure { (model.headLike | model.common | figDesc | model.graphicLike | model.global | model.divBottomPart)*, att.global.attributes, att.placement.attributes, att.typed.attributes, empty } figDesc = ## (description of figure) contains a brief prose description of the appearance or content ## of a graphic figure, for use when documenting an image without ## displaying it. [14.4. ] element ns1:figDesc { macro.limitedContent, att.global.attributes, empty } anchor = ## (anchor point) attaches an identifier to a point within a text, whether or not it corresponds with a textual element. [8.4.2. 16.4. ] element ns1:anchor { empty, att.global.attributes, att.typed.attributes, empty } seg = ## (arbitrary segment) represents any segmentation of text below the chunk level. [16.3. 6.2. 7.2.5. ] element ns1:seg { macro.paraContent, att.global.attributes, att.segLike.attributes, att.typed.attributes, att.responsibility.attributes, empty } att.global.linking.attributes = 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.linking.attribute.corresp = ## (corresponds) points to elements that correspond to the current ## element in some way. attribute corresp { list { data.pointer, data.pointer* } }? att.global.linking.attribute.synch = ## (synchronous) points to elements that are synchronous with the current ## element. attribute synch { list { data.pointer, data.pointer* } }? att.global.linking.attribute.sameAs = ## points to an element that is the same as the current ## element. attribute sameAs { data.pointer }? att.global.linking.attribute.copyOf = ## points to an element of which the current element is a ## copy. attribute copyOf { data.pointer }? att.global.linking.attribute.next = ## points to the next element of a virtual aggregate of which ## the current element is part. attribute next { data.pointer }? att.global.linking.attribute.prev = ## (previous) points to the previous element of a virtual aggregate of ## which the current element is part. attribute prev { data.pointer }? att.global.linking.attribute.exclude = ## points to elements that are in exclusive alternation ## with the current element. attribute exclude { list { data.pointer, data.pointer* } }? att.global.linking.attribute.select = ## selects one or more alternants; if one alternant is ## selected, the ambiguity or uncertainty is marked as resolved. If ## more than one alternant is selected, the degree of ambiguity or ## uncertainty is marked as reduced by the number of alternants not ## selected. attribute select { list { data.pointer, data.pointer* } }? s = ## (s-unit) contains a sentence-like division of a text. [17.1. 8.4.1. ] element ns1:s { macro.phraseSeq >> sch:pattern [ id = "s-constraint-noNestedS" "\x{a}" ~ " " sch:rule [ context = "tei:s" "\x{a}" ~ " " sch:report [ test = "tei:s" "You may not nest one s element within\x{a}" ~ " another: use seg instead" ] "\x{a}" ~ " " ] "\x{a}" ~ " " ], att.global.attributes, att.segLike.attributes, att.typed.attributes, empty } pc = ## (punctuation character) a character or string of characters regarded as constituting a ## single punctuation mark. [17.1. ] element ns1:pc { (text | model.gLike)*, att.global.attributes, att.segLike.attributes, att.typed.attributes, ## indicates the extent to which this punctuation mark ## conventionally separates words or phrases attribute force { ## the punctuation mark is a word separator "strong" | ## the punctuation mark is not a word separator "weak" | ## the punctuation mark may or may not be a ## word separator "inter" }?, ## provides a name for the kind of unit delimited by this punctuation mark. attribute unit { data.enumerated }?, ## indicates whether this punctuation mark precedes or ## follows the unit it delimits. attribute pre { data.truthValue }?, empty } att.global.analytic.attributes = att.global.analytic.attribute.ana att.global.analytic.attribute.ana = ## (analysis) indicates one or more elements containing interpretations of the ## element on which the ana attribute appears. attribute ana { list { data.pointer, data.pointer* } }? interp = ## (interpretation) summarizes a specific interpretative annotation which can be linked to a span of text. [17.3. ] element ns1:interp { (text | model.gLike | model.glossLike)*, att.global.attributes, att.interpLike.attributes, empty } interpGrp = ## (interpretation group) collects together a set of related interpretations which share responsibility or type. [17.3. ] element ns1:interpGrp { (model.glossLike*, interp+), att.global.attributes, att.interpLike.attributes, empty } att = ## (attribute) contains the name of an attribute appearing within running text. [22. ] element ns1:att { text, att.global.attributes, ## supplies an identifier for the scheme in which this name is defined. ## Sample values include: 1] TEI(text encoding initiative) ; 2] DBK(docbook) ; 3] XX(unknown) [ a:defaultValue = "TEI" ] attribute scheme { data.enumerated }?, empty } code = ## contains literal code from some formal language such as a ## programming language. element ns1:code { text, att.global.attributes, ## (formal language) a name identifying the formal language in which the ## code is expressed attribute lang { data.word }?, empty } eg = ## (example) contains any kind of illustrative example. [22.4.4. 22.4.5. ] element ns1:eg { text, att.global.attributes, empty } egXML = ## (example of XML) contains a single well-formed XML fragment demonstrating the use of some XML element or ## attribute, in which the egXML element itself functions as the root element. [22.4.4. 22.4.5. ] element egXML { (text | macro.anyXML)*, att.global.attributes, ## indicates the intended validity of the example with respect to ## a schema. [ a:defaultValue = "true" ] attribute valid { ## the example is intended to be fully valid, ## assuming that its root element, or a provided root element, ## could have been used as a possible root element in the schema concerned. "true" | ## the example could be transformed into ## a valid document by inserting any number of valid attributes and child ## elements anywhere within it; or it is valid against a version of the ## schema concerned in which the provision of character data, list, element, or attribute ## values has been made optional. "feasible" | ## the example is not intended to be valid, ## and contains deliberate errors. "false" }?, empty } gi = ## (element name) contains the name (generic identifier) of an element. [22. 22.4.4. ] element ns1:gi { text, att.global.attributes, ## supplies the name of the scheme in which this name is defined. ## Sample values include: 1] TEI(text encoding initiative) ; 2] DBK(docbook) ; 3] XX(unknown) ; 4] Schematron; 5] HTML [ a:defaultValue = "TEI" ] attribute scheme { data.enumerated }?, empty } ident = ## (identifier) contains an identifier or name for an object of some kind in a formal language. ident is used for tokens such as variable names, class names, type names, function names etc. in formal programming languages. [22.1.1. ] element ns1:ident { text, att.global.attributes, att.typed.attributes, empty } val = ## (value) contains a single attribute value. [22. 22.4.5. ] element ns1:val { text, att.global.attributes, empty } start = TEI | teiCorpus