default namespace = "http://www.tei-c.org/ns/1.0" namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0" namespace ns1 = "http://www.isocat.org/ns/dcr" namespace rng = "http://relaxng.org/ns/structure/1.0" namespace sch = "http://purl.oclc.org/dsdl/schematron" namespace tbx = "http://www.tbx.org" namespace xlink = "http://www.w3.org/1999/xlink" # Schema generated from ODD source 2014-02-23T14:50:35Z. # Edition: Version 2.6.0. Last updated on # 20th January 2014, revision 12802 # Edition Location: http://www.tei-c.org/Vault/P5/Version 2.6.0/ # # This document is intended to be submitted as a new chapter of the TEI guidelines. It can be thus disseminated as widely as necessary, but please contact the author if you want to fork it with modifications, so that these can be included in any future version.[http://creativecommons.org/licenses/by/3.0/] The Creative Commons Attribution 3.0 Unported (CC BY 3.0) Licence applies to this document.You can quote this document as: Romary, L., TBX extension to TEI; ODD specification. 2014 macro.paraContent = (text | model.gLike | model.phrase | model.inter | model.global | lg)* 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.interval = xsd:float { minExclusive = "0" } | "regular" | "irregular" | "unknown" 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.namespace = xsd:anyURI 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.versionNumber = xsd:token { pattern = "[\d]+[a-z]*[\d]*(\.[\d]+[a-z]*[\d]*){0,3}" } data.replacement = text data.word = xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } data.sex = data.word data.text = xsd:string data.name = xsd:Name data.enumerated = data.name 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+ } }? 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.text }? 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+ } }? 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 = ## specifies 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; 2] mm; 3] in; 4] lines; 5] chars 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 { data.text }? 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.cReferencing.attributes = att.cReferencing.attribute.cRef att.cReferencing.attribute.cRef = ## (canonical reference) specifies the destination of the pointer by supplying a canonical reference expressed using the scheme defined in a refsDecl element in the TEI header attribute cRef { data.text }? att.datcat.attributes = att.datcat.attribute.datcat, att.datcat.attribute.valueDatcat att.datcat.attribute.datcat = ## contains a PID (persistent identifier) that aligns the given element with the appropriate Data Category (or categories) in ISOcat. attribute ns1:datcat { list { data.pointer+ } }? att.datcat.attribute.valueDatcat = ## contains a PID (persistent identifier) that aligns the content of the given element or the value of the given attribute with the appropriate simple Data Category (or categories) in ISOcat. attribute ns1:valueDatcat { list { 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.fragmentable.attributes = att.fragmentable.attribute.part att.fragmentable.attribute.part = ## specifies whether or not its parent element is fragmented in some way, typically by some other overlapping structure: for example a speech which is divided between two or more verse stanzas, a paragraph which is split across a page division, a verse line which is divided between two speakers. [ a:defaultValue = "N" ] attribute part { ## (yes) the element is fragmented in some (unspecified) respect "Y" | ## (no) either the element is not fragmented, or no claim is made as to its completeness. "N" | ## (initial) this is the initial part of a fragmented element "I" | ## (medial) this is a medial part of a fragmented element "M" | ## (final) this is the final part of a fragmented element "F" }? att.divLike.attributes = att.fragmentable.attributes, att.divLike.attribute.org, att.divLike.attribute.sample att.divLike.attribute.org = ## (organization) specifies how the content of the division is organized. [ a:defaultValue = "uniform" ] attribute org { ## no claim is made about the sequence in which the immediate contents of this division are to be processed, or their inter-relationships. "composite" | ## 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.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.source.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+ } }? att.editLike.attributes = att.dimensions.attributes, att.responsibility.attributes, att.editLike.attribute.evidence, 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)+ } }? att.editLike.attribute.instant = ## indicates whether this is an instant revision or not. [ a:defaultValue = "false" ] attribute instant { data.xTruthValue }? att.global.attributes = att.global.linking.attributes, att.global.attribute.xmlid, att.global.attribute.n, att.global.attribute.xmllang, att.global.attribute.rend, att.global.attribute.style, att.global.attribute.rendition, 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 { data.text }? 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+ } }? att.global.attribute.style = ## contains an expression in some formal style definition language which defines the rendering or presentation used for this element in the source text attribute style { data.text }? att.global.attribute.rendition = ## points to a description of the rendering or presentation used for this element in the source text. attribute rendition { list { data.pointer+ } }? 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 { ## signals that the application's default white-space processing modes are acceptable "default" | ## indicates the intent that applications preserve all white space "preserve" }? 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+ } }? 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+ } }? 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+ } }? 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+ } }? att.media.attributes = att.internetMedia.attributes, att.media.attribute.width, att.media.attribute.height, att.media.attribute.scale att.media.attribute.width = ## Where the media are displayed, indicates the display width attribute width { data.outputMeasurement }? att.media.attribute.height = ## Where the media are displayed, indicates the display height attribute height { data.outputMeasurement }? att.media.attribute.scale = ## Where the media are displayed, indicates a scale factor to be applied when generating the desired display size attribute scale { data.numeric }? att.resourced.attributes = att.resourced.attribute.url att.resourced.attribute.url = ## (uniform resource locator) specifies the URL from which the media concerned may be obtained. attribute url { data.pointer } 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+ } }? 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; 2] kg; 3] s; 4] Hz; 5] Pa; 6] Ω; 7] L; 8] t; 9] ha; 10] Å; 11] mL; 12] cm; 13] dB; 14] kbit; 15] Kibit; 16] kB; 17] KiB; 18] MB; 19] MiB 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+ } }? 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+ } }? att.placement.attributes = att.placement.attribute.place att.placement.attribute.place = ## specifies where this item is placed ## 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)+ } }? 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 }? sch:pattern [ id = "att.typed-constraint-subtypeTyped" "\x{a}" ~ " " sch:rule [ context = "*[@subtype]" "\x{a}" ~ " " sch:assert [ test = "@type" "The " sch:name [ ] " element should not be categorized in detail with @subtype\x{a}" ~ " unless also categorized in general with @type" ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] att.pointing.attributes = att.pointing.attribute.targetLang, att.pointing.attribute.target, att.pointing.attribute.evaluate att.pointing.attribute.targetLang = ## specifies the language of the content to be found at the destination referenced by target, using a language tag generated according to BCP 47. attribute targetLang { data.language }? sch:pattern [ id = "targetLang-constraint-targetLang" "\x{a}" ~ " " sch:rule [ context = "tei:*[not(self::tei:schemaSpec)][@targetLang]" "\x{a}" ~ " " sch:assert [ test = "count(@target)" "@targetLang can only be used if @target is specified." ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] att.pointing.attribute.target = ## specifies the destination of the reference by supplying one or more URI References attribute target { list { 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.pointing.group.attributes = att.pointing.attributes, att.typed.attributes, att.pointing.group.attribute.domains, att.pointing.group.attribute.targFunc att.pointing.group.attribute.domains = ## optionally specifies the identifiers of the elements within which all elements indicated by the contents of this element lie. attribute domains { list { data.pointer, data.pointer, data.pointer* } }? att.pointing.group.attribute.targFunc = ## (target function) describes the function of each of the values of the target attribute of the enclosed link, join, or alt tags. attribute targFunc { list { data.word, data.word, data.word* } }? att.segLike.attributes = att.datcat.attributes, att.fragmentable.attributes, att.segLike.attribute.function att.segLike.attribute.function = ## characterizes the function of the segment. attribute function { data.enumerated }? 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.edition.attributes = att.edition.attribute.ed, att.edition.attribute.edRef att.edition.attribute.ed = ## (edition) supplies a sigil or other arbitrary identifier for the source edition in which the associated feature (for example, a page, column, or line break) occurs at this point in the text. attribute ed { list { data.word+ } }? att.edition.attribute.edRef = ## (edition reference) provides a pointer to the source edition in which the associated feature (for example, a page, column, or line break) occurs at this point in the text. attribute edRef { list { data.pointer+ } }? 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 }? sch:pattern [ id = "spanTo-constraint-spanTo-2" "\x{a}" ~ " " sch:rule [ context = "tei:*[@spanTo]" "\x{a}" ~ " " sch:assert [ test = "id(substring(@spanTo,2)) and following::*[@xml:id=substring(current()/@spanTo,2)]" "\x{a}" ~ "The element indicated by @spanTo (" sch:value-of [ select = "@spanTo" ] ") must follow the current element " sch:name [ ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] att.styleDef.attributes = att.styleDef.attribute.scheme, att.styleDef.attribute.schemeVersion att.styleDef.attribute.scheme = ## identifies the language used to describe the rendition. attribute scheme { ## Cascading Stylesheet Language "css" | ## Extensible Stylesheet Language Formatting Objects "xslfo" | ## Informal free text description "free" | ## A user-defined rendition description language "other" }? att.styleDef.attribute.schemeVersion = ## supplies a version number for the style language provided in scheme. attribute schemeVersion { data.versionNumber }? sch:pattern [ id = "schemeVersion-constraint-schemeVersionRequiresScheme" "\x{a}" ~ " " sch:rule [ context = "tei:*[@schemeVersion]" "\x{a}" ~ " " sch:assert [ test = "@scheme and not(@scheme = 'free')" "\x{a}" ~ " @schemeVersion can only be used if @scheme is specified.\x{a}" ~ " " ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] att.timed.attributes = att.timed.attribute.start, att.timed.attribute.end att.timed.attribute.start = ## indicates the location within a temporal alignment at which this element begins. attribute start { data.pointer }? att.timed.attribute.end = ## indicates the location within a temporal alignment at which this element ends. attribute end { data.pointer }? 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 = ## indicates 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.versionDate att.translatable.attribute.versionDate = ## specifies the date on which the source text was extracted and sent to the translator attribute versionDate { data.temporal.w3c }? att.citing.attributes = att.citing.attribute.unit, att.citing.attribute.from, att.citing.attribute.to att.citing.attribute.unit = ## identifies the unit of information conveyed by the element, e.g. columns, pages, volume. ## Suggested values include: 1] volume; 2] issue; 3] page; 4] line; 5] chapter; 6] part; 7] column attribute unit { ## the element contains a volume number. "volume" | ## the element contains an issue number, or volume and issue numbers. "issue" | ## the element contains a page number or page range. "page" | ## the element contains a line number or line range. "line" | ## the element contains a chapter indication (number and/or title) "chapter" | ## the element identifies a part of a book or collection. "part" | ## the element identifies a column. "column" | xsd:Name }? att.citing.attribute.from = ## specifies the starting point of the range of units indicated by the unit attribute. attribute from { data.word }? att.citing.attribute.to = ## specifies the end-point of the range of units indicated by the unit attribute. attribute to { data.word }? model.nameLike.agent = name | orgName | persName model.nameLike.agent_alternation = name | orgName | persName model.nameLike.agent_sequence = name, orgName, persName model.nameLike.agent_sequenceOptional = name?, orgName?, persName? model.nameLike.agent_sequenceOptionalRepeatable = name*, orgName*, persName* model.nameLike.agent_sequenceRepeatable = name+, orgName+, persName+ model.segLike = seg | s | cl | phr | w | m | c | 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 | distinct | mentioned | soCalled | gloss | term | title model.emphLike_alternation = foreign | emph | distinct | mentioned | soCalled | gloss | term | title model.emphLike_sequence = foreign, emph, distinct, mentioned, soCalled, gloss, term, title model.emphLike_sequenceOptional = foreign?, emph?, distinct?, mentioned?, soCalled?, gloss?, term?, title? model.emphLike_sequenceOptionalRepeatable = foreign*, emph*, distinct*, mentioned*, soCalled*, gloss*, term*, title* model.emphLike_sequenceRepeatable = foreign+, emph+, distinct+, mentioned+, soCalled+, gloss+, term+, title+ model.highlighted = model.hiLike | model.emphLike 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 | measure | measureGrp | geo model.measureLike_alternation = num | measure | measureGrp | geo model.measureLike_sequence = num, measure, measureGrp, geo model.measureLike_sequenceOptional = num?, measure?, measureGrp?, geo? model.measureLike_sequenceOptionalRepeatable = num*, measure*, measureGrp*, geo* model.measureLike_sequenceRepeatable = num+, measure+, measureGrp+, geo+ model.egLike = notAllowed model.egLike_alternation = notAllowed model.egLike_sequence = empty model.egLike_sequenceOptional = empty model.egLike_sequenceOptionalRepeatable = empty model.egLike_sequenceRepeatable = notAllowed model.graphicLike = media | graphic | binaryObject model.offsetLike = offset | geogFeat model.offsetLike_alternation = offset | geogFeat model.offsetLike_sequence = offset, geogFeat model.offsetLike_sequenceOptional = offset?, geogFeat? model.offsetLike_sequenceOptionalRepeatable = offset*, geogFeat* model.offsetLike_sequenceRepeatable = offset+, geogFeat+ 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.ptrLike = ptr | ref model.lPart = notAllowed model.global.meta = index | link | linkGrp | timeline | join | joinGrp | alt | altGrp | span | spanGrp | interp | interpGrp model.milestoneLike = milestone | gb | pb | lb | cb | anchor model.gLike = notAllowed model.biblLike = bibl | biblStruct | listBibl model.biblLike_alternation = bibl | biblStruct | listBibl model.biblLike_sequence = bibl, biblStruct, listBibl model.biblLike_sequenceOptional = bibl?, biblStruct?, listBibl? model.biblLike_sequenceOptionalRepeatable = bibl*, biblStruct*, listBibl* model.biblLike_sequenceRepeatable = bibl+, biblStruct+, listBibl+ 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 | listOrg | listEvent | listPerson | listPlace | listNym model.listLike_alternation = \list | listOrg | listEvent | listPerson | listPlace | listNym model.listLike_sequence = \list, listOrg, listEvent, listPerson, listPlace, listNym model.listLike_sequenceOptional = \list?, listOrg?, listEvent?, listPerson?, listPlace?, listNym? model.listLike_sequenceOptionalRepeatable = \list*, listOrg*, listEvent*, listPerson*, listPlace*, listNym* model.listLike_sequenceRepeatable = \list+, listOrg+, listEvent+, listPerson+, listPlace+, listNym+ model.noteLike = 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 | ab model.pLike_alternation = p | ab model.pLike_sequence = p, ab model.pLike_sequenceOptional = p?, ab? model.pLike_sequenceOptionalRepeatable = p*, ab* model.pLike_sequenceRepeatable = p+, ab+ 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 = superEntry | hom | sense | form | orth | pron | hyph | syll | gramGrp | pos | subc | colloc | def | etym | usg | lbl | xr | re model.entryPart.top = cit | dictScrap | form | gramGrp | def | etym | usg | xr | re model.global.edit = gap model.divPart = model.lLike | model.pLike | lg | sp model.persStateLike = persName | affiliation | age | education | faith | floruit | langKnowledge | nationality | occupation | residence | sex | socecStatus | state | trait model.persEventLike = birth | death | event | listEvent model.personLike = org | person | personGrp model.personPart = model.biblLike | model.persStateLike | model.persEventLike | idno model.placeNamePart = placeName | bloc | country | region | district | settlement | geogName model.placeNamePart_alternation = placeName | bloc | country | region | district | settlement | geogName model.placeNamePart_sequence = placeName, bloc, country, region, district, settlement, geogName model.placeNamePart_sequenceOptional = placeName?, bloc?, country?, region?, district?, settlement?, geogName? model.placeNamePart_sequenceOptionalRepeatable = placeName*, bloc*, country*, region*, district*, settlement*, geogName* model.placeNamePart_sequenceRepeatable = placeName+, bloc+, country+, region+, district+, settlement+, geogName+ model.placeStateLike = model.placeNamePart | climate | location | population | state | terrain | trait model.placeStateLike_alternation = model.placeNamePart_alternation | climate | location | population | state | terrain | trait model.placeStateLike_sequence = model.placeNamePart_sequence, climate, location, population, state, terrain, trait model.placeStateLike_sequenceOptional = model.placeNamePart_sequenceOptional?, climate?, location?, population?, state?, terrain?, trait? model.placeStateLike_sequenceOptionalRepeatable = model.placeNamePart_sequenceOptionalRepeatable*, climate*, location*, population*, state*, terrain*, trait* model.placeStateLike_sequenceRepeatable = model.placeNamePart_sequenceRepeatable+, climate+, location+, population+, state+, terrain+, trait+ model.placeEventLike = event model.orgPart = listOrg | listPerson | listPlace model.publicationStmtPart.agency = publisher | distributor | authority model.publicationStmtPart.detail = address | date | pubPlace | idno | availability model.availabilityPart = licence model.certLike = notAllowed model.descLike = desc model.glossLike = 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 | meeting | sponsor | funder | principal model.divWrapper = meeting model.divTopPart = model.headLike model.divTop = model.divWrapper | model.divTopPart model.divBottom = model.divWrapper model.choicePart = sic | corr | reg | orig | unclear | abbr | expan | seg model.imprintPart = publisher | biblScope | pubPlace | distributor model.catDescPart = textDesc model.settingPart = locale | activity model.textDescPart_sequence = channel, constitution, derivation, domain, factuality, interaction, preparedness model.addressLike = email | address | affiliation model.addressLike_alternation = email | address | affiliation model.addressLike_sequence = email, address, affiliation model.addressLike_sequenceOptional = email?, address?, affiliation? model.addressLike_sequenceOptionalRepeatable = email*, address*, affiliation* model.addressLike_sequenceRepeatable = email+, address+, affiliation+ model.nameLike = model.nameLike.agent | model.offsetLike | model.placeStateLike | rs | idno | model.persNamePart | lang model.nameLike_alternation = model.nameLike.agent_alternation | model.offsetLike_alternation | model.placeStateLike_alternation | rs | idno | model.persNamePart_alternation | lang model.nameLike_sequence = model.nameLike.agent_sequence, model.offsetLike_sequence, model.placeStateLike_sequence, rs, idno, model.persNamePart_sequence, lang model.nameLike_sequenceOptional = model.nameLike.agent_sequenceOptional?, model.offsetLike_sequenceOptional?, model.placeStateLike_sequenceOptional?, rs?, idno?, model.persNamePart_sequenceOptional?, lang? model.nameLike_sequenceOptionalRepeatable = model.nameLike.agent_sequenceOptionalRepeatable*, model.offsetLike_sequenceOptionalRepeatable*, model.placeStateLike_sequenceOptionalRepeatable*, rs*, idno*, model.persNamePart_sequenceOptionalRepeatable*, lang* model.nameLike_sequenceRepeatable = model.nameLike.agent_sequenceRepeatable+, model.offsetLike_sequenceRepeatable+, model.placeStateLike_sequenceRepeatable+, rs+, idno+, model.persNamePart_sequenceRepeatable+, lang+ model.global = model.global.meta | model.milestoneLike | model.noteLike | model.global.edit model.biblPart = model.respLike | model.imprintPart | series | citedRange | bibl | relatedItem | textLang | edition | extent | listRelation | relationGrp model.addrPart = model.nameLike | addrLine | street | postCode | postBox model.pPart.data = model.dateLike | model.measureLike | model.addressLike | model.nameLike model.inter = model.egLike | model.biblLike | model.labelLike | model.listLike | model.stageLike | model.qLike model.common = model.divPart | model.inter | model.entryLike model.phrase = model.segLike | model.highlighted | model.graphicLike | model.pPart.edit | model.ptrLike | model.lPart | model.pPart.data | model.ptrLike.form model.limitedPhrase = model.hiLike | model.emphLike | model.pPart.editorial | model.ptrLike | 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 | tagsDecl | styleDefDecl | refsDecl | listPrefixDef | classDecl | geoDecl | appInfo model.editorialDeclPart = correction | normalization | quotation | hyphenation | segmentation | stdVals | interpretation model.profileDescPart = abstract | creation | langUsage | textClass | calendarDesc | textDesc | particDesc | settingDesc att.source.attributes = att.source.attribute.source att.source.attribute.source = ## provides a pointer to the bibliographical source from which a quotation or citation is drawn. attribute source { list { data.pointer+ } }? model.resourceLike = notAllowed att.personal.attributes = att.naming.attributes, att.personal.attribute.full, att.personal.attribute.sort att.personal.attribute.full = ## indicates whether the name component is given in full, as an abbreviation or simply as an initial. [ a:defaultValue = "yes" ] attribute full { ## the name component is spelled out in full. "yes" | ## (abbreviated) the name component is given in an abbreviated form. "abb" | ## (initial letter) the name component is indicated only by one initial. "init" }? att.personal.attribute.sort = ## specifies the sort order of the name component in relation to others within the name. attribute sort { data.count }? model.placeLike = place att.milestoneUnit.attributes = att.milestoneUnit.attribute.unit att.milestoneUnit.attribute.unit = ## 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 } p = ## (paragraph) marks paragraphs in prose. [3.1. 7.2.5. ] element p { macro.paraContent, att.global.attributes, att.fragmentable.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 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 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 hi { macro.paraContent, att.global.attributes, empty } distinct = ## identifies any word or phrase which is regarded as linguistically distinct, for example as archaic, technical, dialectal, non-preferred, etc., or as forming part of a sublanguage. [3.3.2.3. ] element distinct { macro.phraseSeq, att.global.attributes, ## specifies the sublanguage or register to which the word or phrase is being assigned attribute type { data.enumerated }?, ## specifies how the phrase is distinct diachronically attribute time { data.text }?, ## specifies how the phrase is distinct diatopically attribute space { data.text }?, ## specifies how the phrase is distinct diastatically attribute social { data.text }?, 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 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 quote { macro.specialPara, att.global.attributes, att.typed.attributes, att.source.attributes, empty } q = ## (quoted) contains material which is distinguished from the surrounding text using quotation marks or a similar method, for any one of a variety of reasons including, but not limited to: direct speech or thought, technical terms or jargon, authorial distance, quotations from elsewhere, and passages that are mentioned but not used. [3.3.3. ] element q { macro.specialPara, att.global.attributes, att.ascribed.attributes, att.source.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; 6] distinct; 7] term; 8] emph; 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" | ## linguistically distinct "distinct" | ## technical term "term" | ## rhetorically emphasized "emph" | ## refering to itself, not its normal referent "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 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.3. ] element 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 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.1. ] element desc { macro.limitedContent, att.global.attributes, att.translatable.attributes, att.typed.attributes, empty } gloss = ## identifies a phrase or word used to provide a gloss or definition for some other word or phrase. [3.3.4. 22.4.1. ] element gloss { macro.phraseSeq, att.global.attributes, att.translatable.attributes, att.typed.attributes, att.pointing.attributes, att.cReferencing.attributes, empty } term = ## contains a single-word, multi-word, or symbolic designation which is regarded as a technical term. [3.3.4. ] element term { macro.phraseSeq, att.global.attributes, att.pointing.attributes, att.typed.attributes, att.canonical.attributes, att.sortable.attributes, att.cReferencing.attributes, empty } sic = ## (Latin for thus or so ## ) contains text reproduced although apparently incorrect or inaccurate. [3.4.1. ] element 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 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 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 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 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 gap { (model.descLike | model.certLike)*, att.global.attributes, att.editLike.attributes, ## gives the reason for omission. Sample values include sampling, inaudible, irrelevant, cancelled. attribute reason { list { data.word+ } }?, ## in the case of text omitted from the transcription because of deliberate deletion by an identifiable hand, indicates 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 source text by an author, scribe, or a previous annotator or corrector. [3.4.3. ] element 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, or a previous annotator or corrector. [3.4.3. ] element 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 unclear { macro.paraContent, att.global.attributes, att.editLike.attributes, ## indicates why the material is hard to transcribe. attribute reason { list { 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 name { macro.phraseSeq, att.global.attributes, att.personal.attributes, att.editLike.attributes, att.typed.attributes, empty } rs = ## (referencing string) contains a general purpose name or referring string. [13.2.1. 3.5.1. ] element rs { macro.phraseSeq, att.global.attributes, att.naming.attributes, att.typed.attributes, empty } email = ## (electronic mail address) contains an e-mail address identifying a location to which e-mail messages can be delivered. [3.5.2. ] element email { macro.phraseSeq, att.global.attributes, 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.4. ] element 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.4. ] element addrLine { macro.phraseSeq, att.global.attributes, empty } street = ## contains a full street address including any name or number identifying a building as well as the name of the street or route on which it is located. [3.5.2. ] element street { macro.phraseSeq, att.global.attributes, empty } postCode = ## (postal code) contains a numerical or alphanumeric code used as part of a postal address to simplify sorting or delivery of mail. [3.5.2. ] element postCode { text, att.global.attributes, empty } postBox = ## (postal box or post office box) contains a number or other identifier for some postal delivery point other than a street address. [3.5.2. ] element postBox { text, att.global.attributes, empty } num = ## (number) contains a number, written in any form. [3.5.3. ] element 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 } measure = ## contains a word or phrase referring to some quantity of an object or commodity, usually comprising a number, a unit, and a commodity name. [3.5.3. ] element measure { macro.phraseSeq, att.global.attributes, att.measurement.attributes, ## specifies the type of measurement in any convenient typology. attribute type { data.enumerated }?, 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 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.4. 15.2.3. 13.3.6. ] element date { (text | model.gLike | model.phrase | model.global)*, att.global.attributes, att.editLike.attributes, att.typed.attributes, empty } time = ## contains a phrase defining a time of day in any format. [3.5.4. ] element time { (text | model.gLike | model.phrase | model.global)*, att.global.attributes, att.editLike.attributes, att.typed.attributes, empty } abbr = ## (abbreviation) contains an abbreviation of any sort. [3.5.5. ] element abbr { macro.phraseSeq, att.global.attributes, att.responsibility.attributes, att.typed.attribute.subtype, ## allows the encoder to classify the abbreviation according to some convenient typology. attribute type { data.enumerated }?, empty } expan = ## (expansion) contains the expansion of an abbreviation. [3.5.5. ] element expan { macro.phraseSeq, att.global.attributes, att.editLike.attributes, empty } ptr = ## (pointer) defines a pointer to another location. [3.6. 16.1. ] element 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 on " sch:name [ ] "." ] "\x{a}" ~ " " ] "\x{a}" ~ " " ], att.global.attributes, att.pointing.attributes, att.internetMedia.attributes, att.typed.attributes, att.cReferencing.attributes, empty } ref = ## (reference) defines a reference to another location, possibly modified by additional text or comment. [3.6. 16.1. ] element 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 on " sch:name [ ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] "\x{a}" ~ " " ], att.global.attributes, att.pointing.attributes, att.internetMedia.attributes, att.typed.attributes, att.cReferencing.attributes, empty } \list = ## (list) contains any sequence of items organized as a list. [3.7. ] element list { ((model.divTop | model.global)*, ((item, model.global*)+ | (headLabel?, headItem?, (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 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 label { macro.phraseSeq, att.global.attributes, att.typed.attributes, att.placement.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 head { (text | lg | model.gLike | model.phrase | model.inter | model.lLike | model.global)*, att.global.attributes, att.typed.attributes, empty } headLabel = ## (heading for list labels) contains the heading for the label or term column in a glossary list or similar structured list. [3.7. ] element headLabel { macro.phraseSeq, att.global.attributes, empty } headItem = ## (heading for list items) contains the heading for the item or gloss column in a glossary list or similar structured list. [3.7. ] element headItem { macro.phraseSeq, att.global.attributes, empty } note = ## contains a note or annotation. [3.8.1. 2.2.6. 3.11.2.8. 9.3.5.4. ] element 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+ } }?, empty } index = ## (index entry) marks a location to be indexed for whatever purpose. [3.8.2. ] element index { (term, index?)*, att.global.attributes, att.spanning.attributes, ## a single word which follows the rules defining a legal XML name (see ), supplying a name to specify which index (of several) the index entry belongs to. attribute indexName { data.name }?, empty } media = ## indicates the location of any form of external media such as an audio or video clip etc. [3.9. ] element media { model.descLike*, att.typed.attributes, att.global.attributes, att.media.attribute.width, att.media.attribute.height, att.media.attribute.scale, att.resourced.attributes, att.timed.attributes, ## (MIME media type) specifies the applicable multimedia internet mail extension (MIME) media type attribute mimeType { list { data.word+ } }, empty } graphic = ## indicates the location of an inline graphic, illustration, or figure. [3.9. ] element graphic { model.descLike*, att.global.attributes, att.media.attributes, att.resourced.attributes, empty } binaryObject = ## provides encoded binary data representing an inline graphic, audio, video or other object. [3.9. ] element binaryObject { text, att.global.attributes, att.media.attributes, att.timed.attributes, att.typed.attributes, ## The encoding used to encode the binary data. If not specified, this is assumed to be Base64. attribute encoding { list { data.word+ } }?, 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 milestone { empty, att.global.attributes, att.milestoneUnit.attributes, att.typed.attributes, att.edition.attributes, att.spanning.attributes, att.breaking.attributes, empty } gb = ## (gathering begins) marks the point in a transcribed codex at which a new gathering or quire begins. [3.10.3. ] element gb { empty, att.global.attributes, att.typed.attributes, att.spanning.attributes, att.breaking.attributes, empty } pb = ## (page break) marks the start of a new page in a paginated document. [3.10.3. ] element pb { empty, att.global.attributes, att.typed.attributes, att.edition.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 lb { empty, att.global.attributes, att.typed.attributes, att.edition.attributes, att.spanning.attributes, att.breaking.attributes, empty } cb = ## (column break) marks the beginning of a new column of a text on a multi-column page. [3.10.3. ] element cb { empty, att.global.attributes, att.typed.attributes, att.edition.attributes, att.spanning.attributes, att.breaking.attributes, empty } analytic = ## (analytic level) contains bibliographic elements describing an item (e.g. an article or poem) published within a monograph or journal and not as an independent publication. [3.11.2.1. ] element analytic { (author | editor | respStmt | title | model.ptrLike | date | textLang | idno)*, att.global.attributes, empty } monogr = ## (monographic level) contains bibliographic elements describing an item (e.g. a book or journal) published as an independent item (i.e. as a separate physical object). [3.11.2.1. ] element monogr { ((((author | editor | meeting | respStmt), (author | editor | meeting | respStmt)*, title+, (model.ptrLike | idno | textLang | editor | respStmt)*) | ((title | model.ptrLike | idno)+, (textLang | author | editor | meeting | respStmt)*) | (authority, idno))?, model.noteLike*, (edition, (idno | model.ptrLike | editor | sponsor | funder | respStmt)*)*, imprint, (imprint | extent | biblScope)*), att.global.attributes, empty } series = ## (series information) contains information about the series in which a book or other bibliographic item has appeared. [3.11.2.1. ] element series { (text | model.gLike | title | model.ptrLike | editor | respStmt | biblScope | idno | textLang | model.global)*, att.global.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 author { macro.phraseSeq, att.global.attributes, att.naming.attributes, empty } editor = ## contains a secondary statement of responsibility for a bibliographic item, for example the name of an individual, institution or organization, (or of several such) acting as editor, compiler, translator, etc. [3.11.2.2. ] element 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 respStmt { ((resp+, model.nameLike.agent+) | (model.nameLike.agent+, resp+)), att.global.attributes, att.canonical.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 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 title { macro.paraContent, att.global.attributes, att.canonical.attributes, att.typed.attribute.subtype, ## classifies the title according to some convenient typology. ## Sample values include: 1] main; 2] sub; 3] alt; 4] short; 5] desc attribute type { data.enumerated }?, ## indicates the bibliographic level for a title, that is, whether it identifies an article, book, journal, series, or unpublished material. attribute level { ## (analytic) the title applies to an analytic item, such as an article, poem, or other work published as part of a larger item. "a" | ## (monographic) the title applies to a monograph such as a book or other item considered to be a distinct publication, including single volumes of multi-volume works "m" | ## (journal) the title applies to any serial or periodical publication such as a journal, magazine, or newspaper "j" | ## (series) the title applies to a series of otherwise distinct publications such as a collection "s" | ## (unpublished) the title applies to any unpublished material (including theses and dissertations unless published by a commercial press) "u" }?, empty } meeting = ## contains the formalized descriptive title for a meeting or conference, for use in a bibliographic description for an item derived from such a meeting, or as a heading or preamble to publications emanating from it. [3.11.2.2. ] element meeting { macro.limitedContent, att.global.attributes, att.canonical.attributes, empty } imprint = ## groups information relating to the publication or distribution of a bibliographic item. [3.11.2.4. ] element imprint { ((classCode | catRef)*, ((model.imprintPart | model.dateLike), respStmt*, model.global*)+), att.global.attributes, empty } publisher = ## provides the name of the organization responsible for the publication or distribution of a bibliographic item. [3.11.2.4. 2.2.4. ] element publisher { macro.phraseSeq, att.global.attributes, empty } biblScope = ## (scope of bibliographic reference) defines the scope of a bibliographic reference, for example as a list of page numbers, or a named subdivision of a larger work. [3.11.2.4. ] element biblScope { macro.phraseSeq, att.global.attributes, att.citing.attributes, ## identifies the type of information conveyed by the element, e.g. columns, pages, volume. ## Suggested values include: 1] vol; 2] issue; 3] pp; 4] ll; 5] chap; 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 }?, empty } citedRange = ## (cited range) defines the range of cited content, often represented by pages or other units [3.11.2.4. ] element citedRange { macro.phraseSeq, att.global.attributes, att.pointing.attributes, att.citing.attributes, empty } pubPlace = ## (publication place) contains the name of the place where a bibliographic item was published. [3.11.2.4. ] element 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 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, att.docStatus.attributes, empty } biblStruct = ## (structured bibliographic citation) contains a structured bibliographic citation, in which only bibliographic sub-elements appear and in a specified order. [3.11.1. 2.2.7. 15.3.2. ] element biblStruct { (analytic*, (monogr, series*)+, (model.noteLike | idno | model.ptrLike | relatedItem | citedRange)*), att.global.attributes, att.declarable.attributes, att.typed.attributes, att.sortable.attributes, att.docStatus.attributes, empty } listBibl = ## (citation list) contains a list of bibliographic citations of any kind. [3.11.1. 2.2.7. 15.3.2. ] element listBibl { (model.headLike*, (model.biblLike | model.milestoneLike)+), 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.7. ] element 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" "\x{a}" ~ "If the @target attribute on " sch:name [ ] " is used, the\x{a}" ~ "relatedItem element must be empty" ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] >> sch:pattern [ id = "relatedItem-constraint-targetorcontent12" "\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 l { macro.paraContent, att.global.attributes, att.fragmentable.attributes, empty } lg = ## (line group) contains one or more verse lines functioning as a formal unit, e.g. a stanza, refrain, verse paragraph, etc. [3.12.1. 3.12. 7.2.5. ] element 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*)*) >> sch:pattern [ id = "lg-constraint-atleast1oflggapl" "\x{a}" ~ " " sch:rule [ context = "tei:lg" "\x{a}" ~ " " sch:assert [ test = "count(descendant::tei:lg|descendant::tei:l|descendant::tei:gap) > 0" "An lg element\x{a}" ~ " must contain at least one child l, lg or gap element." ] "\x{a}" ~ " " ] "\x{a}" ~ " " ], att.global.attributes, att.divLike.attributes, att.typed.attributes, empty } sp = ## (speech) contains 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 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 = ## contains 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 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 stage { macro.specialPara, att.ascribed.attributes, att.global.attributes, att.placement.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 teiCorpus { (teiHeader, ((model.resourceLike+, (TEI | teiCorpus)*) | (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 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.4. 10.6.6. ] element 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 } att.patternReplacement.attributes = att.patternReplacement.attribute.matchPattern, att.patternReplacement.attribute.replacementPattern att.patternReplacement.attribute.matchPattern = ## specifies a regular expression against which the values of other attributes can be matched. attribute matchPattern { data.pattern } att.patternReplacement.attribute.replacementPattern = ## specifies a replacement pattern, that is, the skeleton of a relative or absolute URI containing references to groups in the matchPattern which, once subpattern substitution has been performed, complete the URI. attribute replacementPattern { data.replacement } 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 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 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 content. [2.2.1. 2.2. ] element titleStmt { (title+, model.respLike*), att.global.attributes, empty } sponsor = ## specifies the name of a sponsoring organization or institution. [2.2.1. ] element sponsor { macro.phraseSeq.limited, att.global.attributes, att.canonical.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 funder { macro.phraseSeq.limited, att.global.attributes, att.canonical.attributes, empty } principal = ## (principal researcher) supplies the name of the principal researcher responsible for the creation of an electronic text. [2.2.1. ] element principal { macro.phraseSeq.limited, att.global.attributes, att.canonical.attributes, empty } editionStmt = ## (edition statement) groups information relating to one edition of a text. [2.2.2. 2.2. ] element editionStmt { (model.pLike+ | (edition, model.respLike*)), att.global.attributes, empty } edition = ## (edition) describes the particularities of one edition of a text. [2.2.2. ] element edition { macro.phraseSeq, att.global.attributes, empty } extent = ## describes the approximate size of a text stored on some carrier medium or of some other object, digital or non-digital, specified in any convenient units. [2.2.3. 2.2. 3.11.2.4. 10.7.1. ] element 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 publicationStmt { ((model.publicationStmtPart.agency, model.publicationStmtPart.detail*)+ | model.pLike+), 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 distributor { macro.phraseSeq, att.global.attributes, empty } authority = ## (release authority) supplies the name of a person or other agency responsible for making a work available, other than a publisher or distributor. [2.2.4. ] element 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.4. ] element idno { (text | model.gLike | idno)*, 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 availability { (model.availabilityPart | model.pLike)+, 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 licence { macro.specialPara, att.global.attributes, att.pointing.attributes, empty } seriesStmt = ## (series statement) groups information about the series, if any, to which a publication belongs. [2.2.5. 2.2. ] element 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 notesStmt { (model.noteLike | relatedItem)+, 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 sourceDesc { (model.pLike+ | (model.biblLike | model.sourceDescPart | model.listLike)+), att.global.attributes, att.declarable.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 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 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 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 editorialDecl { (model.pLike | model.editorialDeclPart)+, att.global.attributes, att.declarable.attributes, empty } correction = ## (correction principles) states how and under what circumstances corrections have been made in the text. [2.3.3. 15.3.2. ] element correction { model.pLike+, att.global.attributes, att.declarable.attributes, ## indicates the degree of correction applied to the text. [ a:defaultValue = "unknown" ] attribute status { ## the text has been thoroughly checked and proofread. "high" | ## the text has been checked at least once. "medium" | ## the text has not been checked. "low" | ## the correction status of the text is unknown. "unknown" }?, ## indicates the method adopted to indicate corrections within the text. [ a:defaultValue = "silent" ] attribute method { ## corrections have been made silently "silent" | ## corrections have been represented using markup "markup" }?, empty } normalization = ## indicates the extent of normalization or regularization of the original source carried out in converting it to electronic form. [2.3.3. 15.3.2. ] element normalization { model.pLike+, att.global.attributes, att.declarable.attributes, ## indicates a bibliographic description or other resource documenting the principles underlying the normalization carried out. attribute source { data.pointer }?, ## indicates the method adopted to indicate normalizations within the text. [ a:defaultValue = "silent" ] attribute method { ## normalization made silently "silent" | ## normalization represented using markup "markup" }?, empty } quotation = ## specifies editorial practice adopted with respect to quotation marks in the original. [2.3.3. 15.3.2. ] element quotation { (model.pLike*) >> sch:pattern [ id = "quotation-constraint-quotationContents" "\x{a}" ~ " " sch:rule [ context = "tei:quotation" "\x{a}" ~ " " sch:report [ test = "not(@marks) and not (tei:p)" "\x{a}" ~ "On " sch:name [ ] ", either the @marks attribute should be used, or a paragraph of description provided" ] "\x{a}" ~ " " ] "\x{a}" ~ " " ], att.global.attributes, att.declarable.attributes, ## (quotation marks) indicates whether or not quotation marks have been retained as content within the text. attribute marks { ## no quotation marks have been retained "none" | ## some quotation marks have been retained "some" | ## all quotation marks have been retained "all" }?, ## specifies how quotation marks are indicated within the text. [ a:defaultValue = "unknown" ] attribute form { data.enumerated }?, empty } hyphenation = ## summarizes the way in which hyphenation in a source text has been treated in an encoded version of it. [2.3.3. 15.3.2. ] element hyphenation { model.pLike+, att.global.attributes, att.declarable.attributes, ## (end-of-line) indicates whether or not end-of-line hyphenation has been retained in a text. [ a:defaultValue = "some" ] attribute eol { ## all end-of-line hyphenation has been retained, even though the lineation of the original may not have been. "all" | ## end-of-line hyphenation has been retained in some cases. "some" | ## all soft end-of-line hyphenation has been removed: any remaining end-of-line hyphenation should be retained. "hard" | ## all end-of-line hyphenation has been removed: any remaining hyphenation occurred within the line. "none" }?, empty } segmentation = ## describes the principles according to which the text has been segmented, for example into sentences, tone-units, graphemic strata, etc. [2.3.3. 15.3.2. ] element segmentation { model.pLike+, att.global.attributes, att.declarable.attributes, empty } stdVals = ## (standard values) specifies the format used when standardized date or number values are supplied. [2.3.3. 15.3.2. ] element stdVals { model.pLike+, att.global.attributes, att.declarable.attributes, empty } interpretation = ## describes the scope of any analytic or interpretive information added to the text in addition to the transcription. [2.3.3. ] element interpretation { model.pLike+, att.global.attributes, att.declarable.attributes, empty } tagsDecl = ## (tagging declaration) provides detailed information about the tagging applied to a document. [2.3.4. 2.3. ] element tagsDecl { (rendition*, \namespace*), att.global.attributes, empty } tagUsage = ## supplies information about the usage of a specific element within a text. [2.3.4. ] element tagUsage { macro.limitedContent, att.global.attributes, ## (generic identifier) specifies the name (generic identifier) of the element indicated by the tag, within the namespace indicated by the parent namespace element. attribute gi { data.name }, ## specifies the number of occurrences of this element within the text. attribute occurs { data.count }?, ## (with unique identifier) specifies the number of occurrences of this element within the text which bear a distinct value for the global xml:id attribute. attribute withId { data.count }?, ## specifies the identifier of a rendition element which defines how this element was rendered in the source text. attribute render { list { data.pointer+ } }?, empty } \namespace = ## supplies the formal name of the namespace to which the elements documented by its children belong. [2.3.4. ] element namespace { tagUsage+, att.global.attributes, ## specifies the full formal name of the namespace concerned. attribute name { data.namespace }, empty } rendition = ## supplies information about the rendition or appearance of one or more elements in the source text. [2.3.4. ] element rendition { macro.limitedContent, att.global.attributes, att.styleDef.attributes, ## where CSS is used, provides a way of defining pseudo-elements, that is, styling rules applicable to specific sub-portions of an element. ## Sample values include: 1] first-line; 2] first-letter; 3] before; 4] after attribute scope { data.enumerated }?, empty } styleDefDecl = ## (style definition language declaration) specifies the name of the formal language in which style or renditional information is supplied elsewhere in the document. The specific version of the scheme may also be supplied. [2.3.5. ] element styleDefDecl { model.pLike*, att.global.attributes, att.declarable.attributes, att.styleDef.attributes, empty } refsDecl = ## (references declaration) specifies how canonical references are constructed for this text. [2.3.6.3. 2.3. 2.3.6. ] element 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.6.3. 2.3.6. 2.3.6.2. ] element cRefPattern { model.pLike*, att.global.attributes, att.patternReplacement.attributes, empty } prefixDef = ## (prefixing scheme used in data.pointer values) defines a prefixing scheme used in data.pointer values, showing how abbreviated URIs using the scheme may be expanded into full URIs. [16.2.3. ] element prefixDef { model.pLike*, att.global.attributes, att.patternReplacement.attributes, ## supplies a name which functions as the prefix for an abbreviated pointing scheme such as a private URI scheme. The prefix constitutes the text preceding the first colon. attribute ident { data.name }, empty } listPrefixDef = ## (list of prefix definitions) contains a list of definitions of prefixing schemes used in data.pointer values, showing how abbreviated URIs using each scheme may be expanded into full URIs. [16.2.3. ] element listPrefixDef { (prefixDef | listPrefixDef)+, att.global.attributes, empty } refState = ## (reference state) specifies one component of a canonical reference defined by the milestone method. [2.3.6.3. 2.3.6. ] element refState { empty, att.global.attributes, att.milestoneUnit.attributes, att.edition.attributes, ## specifies the fixed length of the reference component. attribute length { data.count }?, ## (delimiter) supplies a delimiting string following the reference component. attribute delim { data.text }?, empty } classDecl = ## (classification declarations) contains one or more taxonomies defining any classificatory codes used elsewhere in the text. [2.3.7. 2.3. ] element 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.7. ] element taxonomy { ((model.glossLike | model.descLike)* | 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.7. ] element category { ((catDesc+ | (model.descLike | 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.7. ] element catDesc { (text | model.limitedPhrase | model.catDescPart)*, att.global.attributes, 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. [2.3.8. ] element geoDecl { macro.phraseSeq, att.global.attributes, att.declarable.attributes, ## supplies a commonly used code name for the datum employed. ## Suggested values include: 1] WGS84; 2] MGRS; 3] OSGB36; 4] ED50 [ 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 } appInfo = ## (application information) records information about an application which has edited the TEI file. [2.3.10. ] element appInfo { model.applicationLike+, att.global.attributes, empty } application = ## provides information about an application which has acted upon the document. [2.3.10. ] element application { (model.labelLike+, (model.ptrLike* | model.pLike*)), att.global.attributes, att.typed.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 { data.versionNumber }, 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 profileDesc { model.profileDescPart*, att.global.attributes, empty } abstract = ## contains a summary or formal abstract prefixed to an existing source document by the encoder. [2.4.4. ] element abstract { (model.pLike | model.listLike)+, att.global.attributes, att.responsibility.attributes, empty } creation = ## contains information about the creation of a text. [2.4.1. 2.4. ] element creation { (text | model.limitedPhrase | listChange)*, att.global.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 langUsage { language+, att.global.attributes, att.declarable.attributes, empty } language = ## characterizes a single language or sublanguage used within a text. [2.4.2. ] element 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 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 keywords { (term+ | \list), att.global.attributes, ## identifies the controlled vocabulary within which the set of keywords concerned is defined identifies the classification scheme within which the set of categories concerned is defined, for example by a taxonomy element, or by some other resource. 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 classCode { macro.phraseSeq.limited, att.global.attributes, ## identifies the classification system in use, as defined by for example by a taxonomy element, or some other resource.. attribute scheme { data.pointer }, empty } catRef = ## (category reference) specifies one or more defined categories within some taxonomy or text typology. [2.4.3. ] element catRef { empty, att.global.attributes, att.pointing.attributes, ## identifies the classification scheme within which the set of categories concerned is defined, for example by a taxonomy element, or by some other resource. 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.5. ] element calendarDesc { calendar+, att.global.attributes, empty } calendar = ## describes a calendar or dating system used in a dating formula in the text. [2.4.5. ] element 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 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 change { macro.specialPara, att.ascribed.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+ } }?, empty } listChange = ## groups a number of change descriptions associated with either the creation of a source text or the revision of an encoded text. [2.5. 11.7. ] element 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 } 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 TEI { (teiHeader, ((model.resourceLike+, \text?) | \text)) >> sch:ns [ prefix = "tei" uri = "http://www.tei-c.org/ns/1.0" ] >> sch:ns [ prefix = "xs" uri = "http://www.w3.org/2001/XMLSchema" ] >> sch:ns [ prefix = "rng" uri = "http://relaxng.org/ns/structure/1.0" ], att.global.attributes, ## specifies the major 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 text { (model.global*, model.global*, (body), model.global*, model.global*), att.global.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 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, empty } \div = ## (text division) contains a subdivision of the front, body, or back of a text. [4.1. ] element 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, empty } model.persNamePart = surname | forename | genName | nameLink | addName | roleName model.persNamePart_alternation = surname | forename | genName | nameLink | addName | roleName model.persNamePart_sequence = surname, forename, genName, nameLink, addName, roleName model.persNamePart_sequenceOptional = surname?, forename?, genName?, nameLink?, addName?, roleName? model.persNamePart_sequenceOptionalRepeatable = surname*, forename*, genName*, nameLink*, addName*, roleName* model.persNamePart_sequenceRepeatable = surname+, forename+, genName+, nameLink+, addName+, roleName+ orgName = ## (organization name) contains an organizational name. [13.2.2. ] element orgName { macro.phraseSeq, att.global.attributes, att.editLike.attributes, att.personal.attributes, att.typed.attributes, empty } persName = ## (personal name) contains a proper noun or proper-noun phrase referring to a person, possibly including one or more of the person's forenames, surnames, honorifics, added names, etc. [13.2.1. ] element persName { macro.phraseSeq, att.global.attributes, att.editLike.attributes, att.personal.attributes, att.typed.attributes, empty } surname = ## contains a family (inherited) name, as opposed to a given, baptismal, or nick name. [13.2.1. ] element surname { macro.phraseSeq, att.global.attributes, att.personal.attributes, att.typed.attributes, empty } forename = ## contains a forename, given or baptismal name. [13.2.1. ] element forename { macro.phraseSeq, att.global.attributes, att.personal.attributes, att.typed.attributes, empty } genName = ## (generational name component) contains a name component used to distinguish otherwise similar names on the basis of the relative ages or generations of the persons named. [13.2.1. ] element genName { macro.phraseSeq, att.global.attributes, att.personal.attributes, att.typed.attributes, empty } nameLink = ## (name link) contains a connecting phrase or link used within a name but not regarded as part of it, such as van der or of. [13.2.1. ] element nameLink { macro.phraseSeq, att.global.attributes, att.typed.attributes, empty } addName = ## (additional name) contains an additional name component, such as a nickname, epithet, or alias, or any other descriptive phrase used within a personal name. [13.2.1. ] element addName { macro.phraseSeq, att.global.attributes, att.personal.attributes, att.typed.attributes, empty } roleName = ## contains a name component which indicates that the referent has a particular role or position in society, such as an official title or rank. [13.2.1. ] element roleName { macro.phraseSeq, att.global.attributes, att.personal.attributes, att.typed.attributes, empty } placeName = ## contains an absolute or relative place name. [13.2.3. ] element placeName { macro.phraseSeq, att.editLike.attributes, att.global.attributes, att.personal.attributes, att.typed.attributes, empty } bloc = ## (bloc) contains the name of a geo-political unit consisting of two or more nation states or countries. [13.2.3. ] element bloc { macro.phraseSeq, att.global.attributes, att.naming.attributes, att.typed.attributes, empty } country = ## (country) contains the name of a geo-political unit, such as a nation, country, colony, or commonwealth, larger than or administratively superior to a region and smaller than a bloc. [13.2.3. ] element country { macro.phraseSeq, att.global.attributes, att.naming.attributes, att.typed.attributes, empty } region = ## contains the name of an administrative unit such as a state, province, or county, larger than a settlement, but smaller than a country. [13.2.3. ] element region { macro.phraseSeq, att.global.attributes, att.naming.attributes, att.typed.attributes, empty } district = ## contains the name of any kind of subdivision of a settlement, such as a parish, ward, or other administrative or geographic unit. [13.2.3. ] element district { macro.phraseSeq, att.global.attributes, att.naming.attributes, att.typed.attributes, empty } settlement = ## contains the name of a settlement such as a city, town, or village identified as a single geo-political or administrative unit. [13.2.3. ] element settlement { macro.phraseSeq, att.global.attributes, att.naming.attributes, att.typed.attributes, empty } offset = ## marks that part of a relative temporal or spatial expression which indicates the direction of the offset between the two place names, dates, or times involved in the expression. [13.2.3. ] element offset { macro.xtext, att.global.attributes, att.typed.attributes, empty } geogName = ## (geographical name) identifies a name associated with some geographical feature such as Windrush Valley or Mount Sinai. [13.2.3. ] element geogName { macro.phraseSeq, att.editLike.attributes, att.global.attributes, att.naming.attributes, att.typed.attributes, empty } geogFeat = ## (geographical feature name) contains a common noun identifying some geographical feature contained within a geographic name, such as valley, mount, etc. [13.2.3. ] element geogFeat { macro.phraseSeq, att.global.attributes, att.naming.attributes, att.typed.attributes, empty } affiliation = ## (affiliation) contains an informal description of a person's present or past affiliation with some organization, for example an employer or sponsor. [15.2.2. ] element affiliation { macro.phraseSeq, att.global.attributes, att.editLike.attributes, att.naming.attributes, empty } age = ## (age) specifies the age of a person. [13.3.2.1. ] element age { macro.phraseSeq.limited, att.global.attributes, att.editLike.attributes, ## supplies a numeric code representing the age or age group attribute value { data.count }?, empty } birth = ## (birth) contains information about a person's birth, such as its date and place. [15.2.2. ] element birth { macro.phraseSeq, att.global.attributes, att.editLike.attributes, att.naming.attributes, empty } climate = ## (climate) contains information about the physical climate of a place. [13.3.4.3. ] element climate { (model.headLike*, (model.pLike+ | model.labelLike+), (model.noteLike | model.biblLike)*, climate*), att.global.attributes, att.editLike.attributes, att.naming.attributes, att.typed.attributes, empty } death = ## (death) contains information about a person's death, such as its date and place. [15.2.2. ] element death { macro.phraseSeq, att.global.attributes, att.editLike.attributes, att.naming.attributes, empty } education = ## contains a description of the educational experience of a person. [15.2.2. ] element education { macro.phraseSeq, att.global.attributes, att.editLike.attributes, att.naming.attributes, empty } event = ## (event) contains data relating to any kind of significant event associated with a person, place, or organization. [13.3.1. ] element event { (model.headLike*, (model.pLike+ | model.labelLike+), (model.noteLike | model.biblLike | linkGrp | link)*, event*), att.global.attributes, att.editLike.attributes, att.typed.attributes, att.naming.attributes, att.sortable.attributes, ## indicates the location of an event by pointing to a place element attribute where { data.pointer }?, empty } faith = ## specifies the faith, religion, or belief set of a person. [13.3.2.1. ] element faith { macro.phraseSeq, att.global.attributes, att.editLike.attributes, att.canonical.attributes, empty } floruit = ## contains information about a person's period of activity. [13.3.2.1. ] element floruit { macro.phraseSeq, att.global.attributes, att.editLike.attributes, empty } geo = ## (geographical coordinates) contains any expression of a set of geographic coordinates, representing a point, line, or area on the surface of the earth in some notation. [13.3.4.1. ] element geo { text, att.global.attributes, empty } langKnowledge = ## (language knowledge) summarizes the state of a person's linguistic knowledge, either as prose or by a list of langKnown elements. [13.3.2.1. ] element langKnowledge { (model.pLike | langKnown+), att.global.attributes, att.editLike.attributes, ## supplies one or more valid language tags for the languages specified attribute tags { list { data.language+ } }?, empty } langKnown = ## (language known) summarizes the state of a person's linguistic competence, i.e., knowledge of a single language. [15.2.2. ] element langKnown { macro.phraseSeq.limited, att.global.attributes, att.editLike.attributes, ## supplies a valid language tag for the language concerned. attribute tag { data.language }, ## a code indicating the person's level of knowledge for this language attribute level { data.word }?, empty } listOrg = ## (list of organizations) contains a list of elements, each of which provides information about an identifiable organization. [13.2.2. ] element listOrg { (model.headLike*, (org | listOrg)+, (listRelation | relationGrp | relation)*), att.global.attributes, att.typed.attributes, att.declarable.attributes, att.sortable.attributes, empty } listEvent = ## (list of events) contains a list of descriptions, each of which provides information about an identifiable event. [13.3.1. ] element listEvent { (model.headLike*, (event | listEvent)+, (relation | relationGrp | listRelation)*), att.global.attributes, att.typed.attributes, att.declarable.attributes, att.sortable.attributes, empty } listPerson = ## (list of persons) contains a list of descriptions, each of which provides information about an identifiable person or a group of people, for example the participants in a language interaction, or the people referred to in a historical source. [13.3.2. 15.2. 2.4. 15.3.2. ] element listPerson { (model.headLike*, (model.personLike | listPerson)+, (relation | listRelation | relationGrp)*), att.global.attributes, att.typed.attributes, att.declarable.attributes, att.sortable.attributes, empty } listPlace = ## (list of places) contains a list of places, optionally followed by a list of relationships (other than containment) defined amongst them. [2.2.7. 13.3.4. ] element listPlace { (model.headLike*, (model.placeLike | listPlace)+, (listRelation | relationGrp | relation)*), att.global.attributes, att.typed.attributes, att.declarable.attributes, att.sortable.attributes, empty } location = ## defines the location of a place as a set of geographical coordinates, in terms of other named geo-political entities, or as an address. [13.3.4. ] element location { (model.labelLike | model.placeNamePart | model.offsetLike | model.measureLike | model.addressLike | model.noteLike | model.biblLike)*, att.global.attributes, att.typed.attributes, att.editLike.attributes, empty } nationality = ## contains an informal description of a person's present or past nationality or citizenship. [15.2.2. ] element nationality { macro.phraseSeq, att.global.attributes, att.editLike.attributes, att.naming.attributes, empty } occupation = ## contains an informal description of a person's trade, profession or occupation. [15.2.2. ] element occupation { macro.phraseSeq, att.global.attributes, att.editLike.attributes, att.naming.attributes, ## indicates the classification system or taxonomy in use, for example by supplying the identifier of a taxonomy element, or pointing to some other resource. attribute scheme { data.pointer }?, ## identifies an occupation code defined within the classification system or taxonomy defined by the scheme attribute. attribute code { data.pointer }?, empty } org = ## (organization) provides information about an identifiable organization such as a business, a tribe, or any other grouping of people. [13.2.2. ] element org { (model.headLike*, (model.pLike* | (model.labelLike | model.nameLike | model.placeLike | model.orgPart)*), (model.noteLike | model.biblLike | linkGrp | link)*, model.personLike*), att.global.attributes, att.typed.attributes, att.editLike.attributes, att.sortable.attributes, ## specifies a primary role or classification for the organization. attribute role { list { data.word+ } }?, empty } listRelation = ## provides information about relationships identified amongst people, places, and organizations, either informally as prose or as formally expressed relation links. [13.3.2.3. ] element listRelation { (model.pLike+ | relation+), att.global.attributes, att.typed.attributes, att.sortable.attributes, empty } relationGrp = ## (relation group) provides information about relationships identified amongst people, places, and organizations, either informally as prose or as formally expressed relation links. [13.3.2.3. ] element relationGrp { (model.pLike+ | relation+), att.global.attributes, att.typed.attributes, att.sortable.attributes, empty } person = ## provides information about an identifiable individual, for example a participant in a language interaction, or a person referred to in a historical source. [13.3.2. 15.2.2. ] element person { (model.pLike+ | (model.personPart | model.global)*), att.global.attributes, att.editLike.attributes, att.sortable.attributes, ## specifies a primary role or classification for the person. attribute role { list { data.enumerated+ } }?, ## specifies the sex of the person. attribute sex { list { data.sex+ } }?, ## specifies an age group for the person. attribute age { data.enumerated }?, empty } personGrp = ## (personal group) describes a group of individuals treated as a single person for analytic purposes. [15.2.2. ] element personGrp { (model.pLike+ | model.personPart*), att.global.attributes, att.sortable.attributes, ## specifies the role of this group of participants in the interaction. attribute role { data.enumerated }?, ## specifies the sex of the participant group. attribute sex { list { data.sex+ } }?, ## specifies the age group of the participants. attribute age { data.enumerated }?, ## describes informally the size or approximate size of the group for example by means of a number and an indication of accuracy e.g. approx 200. attribute size { list { data.word+ } }?, empty } place = ## contains data about a geographic location [13.3.4. ] element place { (model.headLike*, (model.pLike* | (model.labelLike | model.placeStateLike | model.placeEventLike)*), (model.noteLike | model.biblLike | idno | linkGrp | link)*, (model.placeLike | listPlace)*), att.global.attributes, att.typed.attributes, att.editLike.attributes, att.sortable.attributes, empty } population = ## contains information about the population of a place. [13.3.4.3. ] element population { (model.headLike*, ((model.pLike+ | model.labelLike+), (model.noteLike | model.biblLike)*)?, population*), att.global.attributes, att.editLike.attributes, att.naming.attributes, att.typed.attributes, empty } relation = ## (relationship) describes any kind of relationship or linkage amongst a specified group of places, events, persons, objects or other items. [13.3.2.3. ] element relation { (desc?) >> sch:pattern [ id = "relation-constraint-reforkeyorname" "\x{a}" ~ " " sch:rule [ context = "tei:relation" "\x{a}" ~ " " sch:assert [ test = "@ref or @key or @name" "One of the attributes 'name', 'ref' or 'key' must be supplied" ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] >> sch:pattern [ id = "relation-constraint-activemutual" "\x{a}" ~ " " sch:rule [ context = "tei:relation" "\x{a}" ~ " " sch:report [ test = "@active and @mutual" "Only one of the attributes\x{a}" ~ "@active and @mutual may be supplied" ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] >> sch:pattern [ id = "relation-constraint-activepassive" "\x{a}" ~ " " sch:rule [ context = "tei:relation" "\x{a}" ~ " " sch:report [ test = "@passive and not(@active)" "the attribute 'passive'\x{a}" ~ " may be supplied only if the attribute 'active' is\x{a}" ~ " supplied" ] "\x{a}" ~ " " ] "\x{a}" ~ " " ], att.global.attributes, att.editLike.attributes, att.canonical.attributes, att.sortable.attributes, ## categorizes the relationship in some respect, e.g. as social, personal or other. ## Suggested values include: 1] social; 2] personal; 3] other [ a:defaultValue = "personal" ] attribute type { ## relationship concerned with social roles "social" | ## relationship concerned with personal roles, e.g. kinship, marriage, etc. "personal" | ## other kinds of relationship "other" | xsd:Name }?, ## supplies a name for the kind of relationship of which this is an instance. attribute name { data.enumerated }?, ( ## identifies the active participants in a non-mutual relationship, or all the participants in a mutual one. attribute active { list { data.pointer+ } }? | ## supplies a list of participants amongst all of whom the relationship holds equally. attribute mutual { list { data.pointer+ } }?), ## identifies the passive participants in a non-mutual relationship. attribute passive { list { data.pointer+ } }?, empty } residence = ## (residence) describes a person's present or past places of residence. [15.2.2. ] element residence { macro.phraseSeq, att.global.attributes, att.editLike.attributes, att.naming.attributes, empty } sex = ## specifies the sex of a person. [13.3.2.1. ] element sex { macro.phraseSeq, att.global.attributes, att.editLike.attributes, ## supplies a coded value for sex attribute value { list { data.sex+ } }?, empty } socecStatus = ## (socio-economic status) contains an informal description of a person's perceived social or economic status. [15.2.2. ] element socecStatus { macro.phraseSeq, att.global.attributes, att.editLike.attributes, att.naming.attributes, ## identifies the classification system or taxonomy in use, for example by pointing to a locally-defined taxonomy element or by supplying a URI for an externally-defined system. attribute scheme { data.pointer }?, ## identifies a status code defined within the classification system or taxonomy defined by the scheme attribute. attribute code { data.pointer }?, empty } state = ## contains a description of some status or quality attributed to a person, place, or organization often at some specific time or for a specific date range. [13.3.1. 13.3.2.1. 13.3.2.1. ] element state { (state+ | (model.headLike*, model.pLike+, (model.noteLike | model.biblLike)*) | (model.labelLike | model.noteLike | model.biblLike)*), att.global.attributes, att.editLike.attributes, att.typed.attributes, att.naming.attributes, empty } terrain = ## contains information about the physical terrain of a place. [13.3.4.3. ] element terrain { (model.headLike*, (model.pLike+ | model.labelLike+), (model.noteLike | model.biblLike)*, terrain*), att.global.attributes, att.editLike.attributes, att.naming.attributes, att.typed.attributes, empty } trait = ## contains a description of some status or quality attributed to a person, place, or organization typically, but not necessarily, independent of the volition or action of the holder and usually not at some specific time or for a specific date range. [13.3.1. 13.3.2.1. 13.3.2.1. ] element trait { (trait+ | (model.headLike*, model.pLike+, (model.noteLike | model.biblLike)*) | (model.labelLike | model.noteLike | model.biblLike)*), att.global.attributes, att.editLike.attributes, att.naming.attributes, att.typed.attributes, empty } nym = ## (canonical name) contains the definition for a canonical name or name component of any kind. [13.3.5. ] element nym { (model.entryPart*, model.pLike*, nym*), att.global.attributes, att.typed.attributes, att.sortable.attributes, ## points to constituent nyms attribute parts { list { data.pointer+ } }?, empty } listNym = ## (list of canonical names) contains a list of nyms, that is, standardized names for any thing. [13.3.5. ] element listNym { (model.headLike*, (nym | listNym)+, (listRelation | relationGrp | relation)*), att.global.attributes, att.typed.attributes, att.declarable.attributes, att.sortable.attributes, empty } att.global.linking.attributes = att.global.linking.attribute.synch att.global.linking.attribute.synch = ## (synchronous) points to elements that are synchronous with the current element. attribute synch { list { data.pointer+ } }? link = ## defines an association or hypertextual link among elements or passages, of some type not more precisely specifiable by other elements. [16.1. ] element link { empty >> sch:pattern [ id = "link-constraint-linkTargets3" "\x{a}" ~ " " sch:rule [ context = "tei:link" "\x{a}" ~ " " sch:assert [ test = "contains(@target,' ')" "You must supply at least two values for @target or @targets on " sch:name [ ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] "\x{a}" ~ " " ], att.global.attributes, att.pointing.attributes, att.typed.attributes, empty } linkGrp = ## (link group) defines a collection of associations or hypertextual links. [16.1. ] element linkGrp { (link | ptr)+, att.global.attributes, att.pointing.group.attributes, empty } ab = ## (anonymous block) contains any arbitrary component-level unit of text, acting as an anonymous container for phrase or inter level elements analogous to, but without the semantic baggage of, a paragraph. [16.3. ] element ab { macro.paraContent, att.global.attributes, att.typed.attributes, att.fragmentable.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 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 seg { macro.paraContent, att.global.attributes, att.segLike.attributes, att.typed.attributes, att.responsibility.attributes, empty } when = ## indicates a point in time either relative to other elements in the same timeline tag, or absolutely. [16.5.2. ] element when { empty, att.global.attributes, ## supplies an absolute value for the time. attribute absolute { data.temporal.w3c }?, ## specifies the unit of time in which the interval value is expressed, if this is not inherited from the parent timeline. ## Suggested values include: 1] d; 2] h; 3] min; 4] s; 5] ms attribute unit { ## (days) "d" | ## (hours) "h" | ## (minutes) "min" | ## (seconds) "s" | ## (milliseconds) "ms" | xsd:Name }?, ## specifies a time interval either as a number or as one of the keywords defined by the datatype data.interval attribute interval { data.interval }?, ## identifies the reference point for determining the time of the current when element, which is obtained by adding the interval to the time of the reference point. attribute since { data.pointer }?, empty } timeline = ## (timeline) provides a set of ordered points in time which can be linked to elements of a spoken text to create a temporal alignment of that text. [16.5.2. ] element timeline { when+, att.global.attributes, ## designates the origin of the timeline, i.e. the time at which it begins. attribute origin { data.pointer }?, ## specifies the unit of time corresponding to the interval value of the timeline or of its constituent points in time. ## Suggested values include: 1] d; 2] h; 3] min; 4] s; 5] ms attribute unit { ## (days) "d" | ## (hours) "h" | ## (minutes) "min" | ## (seconds) "s" | ## (milliseconds) "ms" | xsd:Name }?, ## specifies a time interval either as a positive integral value or using one of a set of predefined codes. attribute interval { data.interval }?, empty } join = ## identifies a possibly fragmented segment of text, by pointing at the possibly discontiguous elements which compose it. [16.7. ] element join { ((model.descLike | model.certLike)*) >> sch:pattern [ id = "join-constraint-joinTargets3" "\x{a}" ~ " " sch:rule [ context = "tei:join" "\x{a}" ~ " " sch:assert [ test = "contains(@target,' ')" "\x{a}" ~ "You must supply at least two values for @target on " sch:name [ ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] "\x{a}" ~ " " ], att.global.attributes, att.pointing.attributes, att.typed.attributes, ## specifies the name of an element which this aggregation may be understood to represent. attribute result { data.name }?, ## indicates whether the targets to be joined include the entire element indicated (the entire subtree including its root), or just the children of the target (the branches of the subtree). [ a:defaultValue = "root" ] attribute scope { ## the rooted subtrees indicated by the targets attribute are joined, each subtree become a child of the virtual element created by the join "root" | ## the children of the subtrees indicated by the targets attribute become the children of the virtual element (i.e. the roots of the subtrees are discarded) "branches" }?, empty } joinGrp = ## (join group) groups a collection of join elements and possibly pointers. [16.7. ] element joinGrp { (model.glossLike*, (join | ptr)+), att.global.attributes, att.pointing.group.attributes, ## supplies the default value for the result on each join included within the group. attribute result { data.name }?, empty } alt = ## (alternation) identifies an alternation or a set of choices among elements or passages. [16.8. ] element alt { empty, att.global.attributes, att.pointing.attribute.targetLang, att.pointing.attribute.evaluate, att.typed.attributes, ## specifies the destination of the reference by supplying one or more URI References attribute target { list { data.pointer, data.pointer, data.pointer* } }?, ## states whether the alternations gathered in this collection are exclusive or inclusive. attribute mode { ## (exclusive) indicates that the alternation is exclusive, i.e. that at most one of the alternatives occurs. "excl" | ## (inclusive) indicates that the alternation is not exclusive, i.e. that one or more of the alternatives occur. "incl" }?, ## If mode is , each weight states the probability that the corresponding alternative occurs. If mode is incl each weight states the probability that the corresponding alternative occurs given that at least one of the other alternatives occurs. attribute weights { list { data.probability, data.probability, data.probability* } }?, empty } altGrp = ## (alternation group) groups a collection of alt elements and possibly pointers. [16.8. ] element altGrp { (alt | ptr)*, att.global.attributes, att.pointing.group.attributes, ## states whether the alternations gathered in this collection are exclusive or inclusive. [ a:defaultValue = "excl" ] attribute mode { ## (exclusive) indicates that the alternation is exclusive, i.e. that at most one of the alternatives occurs. "excl" | ## (inclusive) indicates that the alternation is not exclusive, i.e. that one or more of the alternatives occur. "incl" }?, empty } s = ## (s-unit) contains a sentence-like division of a text. [17.1. 8.4.1. ] element s { ((text | model.gLike | model.global | binaryObject | graphic | media | distinct | emph | foreign | gloss | mentioned | soCalled | term | title | hi | address | affiliation | email | date | time | geo | measure | measureGrp | num | name | orgName | persName | geogFeat | offset | addName | forename | genName | nameLink | roleName | surname | bloc | country | district | geogName | placeName | region | settlement | climate | location | population | state | terrain | trait | idno | lang | rs | abbr | choice | expan | add | corr | del | orig | reg | sic | unclear | ptr | ref | oRef | oVar | pRef | pVar | c | cl | m | pc | phr | seg | w)*) >> 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 } cl = ## (clause) represents a grammatical clause. [17.1. ] element cl { macro.phraseSeq, att.global.attributes, att.segLike.attributes, att.typed.attributes, empty } phr = ## (phrase) represents a grammatical phrase. [17.1. ] element phr { macro.phraseSeq, att.global.attributes, att.segLike.attributes, att.typed.attributes, empty } w = ## (word) represents a grammatical (not necessarily orthographic) word. [17.1. ] element w { (text | model.gLike | seg | w | m | c | pc | model.global | model.lPart | model.hiLike | model.pPart.edit)*, att.global.attributes, att.segLike.attributes, att.typed.attributes, ## provides a lemma for the word, such as an uninflected dictionary entry form. attribute lemma { data.text }?, ## provides a pointer to a definition of the lemma for the word, for example in an online lexicon. attribute lemmaRef { data.pointer }?, empty } m = ## (morpheme) represents a grammatical morpheme. [17.1. ] element m { (text | model.gLike | seg | m | c | model.global)*, att.global.attributes, att.segLike.attributes, att.typed.attributes, ## supplies the morpheme's base form. attribute baseForm { data.word }?, empty } c = ## (character) represents a character. [17.1. ] element c { macro.xtext, att.global.attributes, att.segLike.attributes, att.typed.attributes, empty } pc = ## (punctuation character) contains a character or string of characters regarded as constituting a single punctuation mark. [17.1. ] element pc { (text | model.gLike | c | model.pPart.edit)*, 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 } span = ## associates an interpretative annotation directly with a span of text. [17.3. ] element span { macro.phraseSeq.limited >> sch:pattern [ id = "span-constraint-targetfrom" "\x{a}" ~ " " sch:rule [ context = "tei:span" "\x{a}" ~ " " sch:report [ test = "@from and @target" "\x{a}" ~ "Only one of the attributes @target and @from may be supplied on " sch:name [ ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] >> sch:pattern [ id = "span-constraint-targetto" "\x{a}" ~ " " sch:rule [ context = "tei:span" "\x{a}" ~ " " sch:report [ test = "@to and @target" "\x{a}" ~ "Only one of the attributes @target and @to may be supplied on " sch:name [ ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] >> sch:pattern [ id = "span-constraint-tonotfrom" "\x{a}" ~ " " sch:rule [ context = "tei:span" "\x{a}" ~ " " sch:report [ test = "@to and not(@from)" "\x{a}" ~ "If @to is supplied on " sch:name [ ] ", @from must be supplied as well" ] "\x{a}" ~ " " ] "\x{a}" ~ " " ] >> sch:pattern [ id = "span-constraint-tofrom" "\x{a}" ~ " " sch:rule [ context = "tei:span" "\x{a}" ~ " " sch:report [ test = "contains(@to,' ') or contains(@from,' ')" "\x{a}" ~ "The attributes @to and @from on " sch:name [ ] " may each contain only a single value" ] "\x{a}" ~ " " ] "\x{a}" ~ " " ], att.global.attributes, att.interpLike.attributes, att.pointing.attributes, ## gives the identifier of the node which is the starting point of the span of text being annotated; if not accompanied by a to attribute, gives the identifier of the node of the entire span of text being annotated. attribute from { data.pointer }?, ## gives the identifier of the node which is the end-point of the span of text being annotated. attribute to { data.pointer }?, empty } spanGrp = ## (span group) collects together span tags. [17.3. ] element spanGrp { span*, att.global.attributes, att.interpLike.attributes, empty } interp = ## (interpretation) summarizes a specific interpretative annotation which can be linked to a span of text. [17.3. ] element interp { (text | model.gLike | model.descLike | model.certLike)*, 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 interpGrp { (model.descLike*, interp+), att.global.attributes, att.interpLike.attributes, empty } textDesc = ## (text description) provides a description of a text in terms of its situational parameters. [15.2.1. ] element textDesc { (model.textDescPart_sequence, purpose+), att.global.attributes, att.declarable.attributes, empty } particDesc = ## (participation description) describes the identifiable speakers, voices, or other participants in any kind of text or other persons named or otherwise referred to in a text, edition, or metadata. [15.2. ] element particDesc { (model.pLike+ | (model.personLike | listPerson | listOrg)+), att.global.attributes, att.declarable.attributes, empty } settingDesc = ## (setting description) describes the setting or settings within which a language interaction takes place, or other places otherwise referred to in a text, edition, or metadata. [15.2. 2.4. ] element settingDesc { (model.pLike+ | (setting | model.placeLike | listPlace)+), att.global.attributes, att.declarable.attributes, empty } channel = ## (primary channel) describes the medium or channel by which a text is delivered or experienced. For a written text, this might be print, manuscript, e-mail, etc.; for a spoken one, radio, telephone, face-to-face, etc. [15.2.1. ] element channel { macro.phraseSeq.limited, att.global.attributes, ## specifies the mode of this channel with respect to speech and writing. [ a:defaultValue = "x" ] attribute mode { ## (spoken) "s" | ## (written) "w" | ## (spoken to be written) e.g. dictation "sw" | ## (written to be spoken) e.g. a script "ws" | ## (mixed) "m" | ## (unknown or inapplicable) "x" }?, empty } constitution = ## describes the internal composition of a text or text sample, for example as fragmentary, complete, etc. [15.2.1. ] element constitution { macro.phraseSeq.limited, att.global.attributes, ## specifies how the text was constituted. [ a:defaultValue = "single" ] attribute type { ## a single complete text "single" | ## a text made by combining several smaller items, each individually complete "composite" | ## (fragments) a text made by combining several smaller, not necessarily complete, items "frags" | ## composition unknown or unspecified "unknown" }?, empty } derivation = ## describes the nature and extent of originality of this text. [15.2.1. ] element derivation { macro.phraseSeq.limited, att.global.attributes, ## categorizes the derivation of the text. ## Sample values include: 1] original; 2] revision; 3] translation; 4] abridgment; 5] plagiarism; 6] traditional attribute type { data.enumerated }?, empty } domain = ## (domain of use) describes the most important social context in which the text was realized or for which it is intended, for example private vs. public, education, religion, etc. [15.2.1. ] element domain { macro.phraseSeq.limited, att.global.attributes, ## categorizes the domain of use. ## Sample values include: 1] art; 2] domestic; 3] religious; 4] business; 5] education; 6] govt; 7] public attribute type { data.enumerated }?, empty } factuality = ## describes the extent to which the text may be regarded as imaginative or non-imaginative, that is, as describing a fictional or a non-fictional world. [15.2.1. ] element factuality { macro.phraseSeq.limited, att.global.attributes, ## categorizes the factuality of the text. attribute type { ## the text is to be regarded as entirely imaginative "fiction" | ## the text is to be regarded as entirely informative or factual "fact" | ## the text contains a mixture of fact and fiction "mixed" | ## the fiction/fact distinction is not regarded as helpful or appropriate to this text "inapplicable" }?, empty } interaction = ## describes the extent, cardinality and nature of any interaction among those producing and experiencing the text, for example in the form of response or interjection, commentary, etc. [15.2.1. ] element interaction { macro.phraseSeq.limited, att.global.attributes, ## specifies the degree of interaction between active and passive participants in the text. attribute type { ## no interaction of any kind, e.g. a monologue "none" | ## some degree of interaction, e.g. a monologue with set responses "partial" | ## complete interaction, e.g. a face to face conversation "complete" | ## this parameter is inappropriate or inapplicable in this case "inapplicable" }?, ## specifies the number of active participants (or addressors) producing parts of the text. ## Suggested values include: 1] singular; 2] plural; 3] corporate; 4] unknown attribute active { ## a single addressor "singular" | ## many addressors "plural" | ## a corporate addressor "corporate" | ## number of addressors unknown or unspecifiable "unknown" | xsd:Name }?, ## specifies the number of passive participants (or addressees) to whom a text is directed or in whose presence it is created or performed. ## Suggested values include: 1] self; 2] single; 3] many; 4] group; 5] world attribute passive { ## text is addressed to the originator e.g. a diary "self" | ## text is addressed to one other person e.g. a personal letter "single" | ## text is addressed to a countable number of others e.g. a conversation in which all participants are identified "many" | ## text is addressed to an undefined but fixed number of participants e.g. a lecture "group" | ## text is addressed to an undefined and indeterminately large number e.g. a published book "world" | xsd:Name }?, empty } preparedness = ## describes the extent to which a text may be regarded as prepared or spontaneous. [15.2.1. ] element preparedness { macro.phraseSeq.limited, att.global.attributes, ## a keyword characterizing the type of preparedness. ## Sample values include: 1] none; 2] scripted; 3] formulaic; 4] revised attribute type { data.enumerated }?, empty } purpose = ## characterizes a single purpose or communicative function of the text. [15.2.1. ] element purpose { macro.phraseSeq.limited, att.global.attributes, ## specifies a particular kind of purpose. ## Suggested values include: 1] persuade; 2] express; 3] inform; 4] entertain attribute type { ## didactic, advertising, propaganda, etc. "persuade" | ## self expression, confessional, etc. "express" | ## convey information, educate, etc. "inform" | ## amuse, entertain, etc. "entertain" | xsd:Name }?, ## specifies the extent to which this purpose predominates. attribute degree { data.certainty }?, empty } setting = ## describes one particular setting in which a language interaction takes place. [15.2.3. ] element setting { (model.pLike+ | (model.nameLike.agent | model.dateLike | model.settingPart)*), att.global.attributes, att.ascribed.attributes, empty } locale = ## contains a brief informal description of the kind of place concerned, for example: a room, a restaurant, a park bench, etc. [15.2.3. ] element locale { macro.phraseSeq.limited, att.global.attributes, empty } activity = ## contains a brief informal description of what a participant in a language interaction is doing other than speaking, if anything. [15.2.3. ] element activity { macro.phraseSeq.limited, att.global.attributes, empty } model.entryLike = superEntry | entry | entryFree | termEntry att.entryLike.attributes = att.entryLike.attribute.type att.entryLike.attribute.type = ## indicates type of entry, in dictionaries with multiple types. ## Suggested values include: 1] main; 2] hom; 3] xref; 4] affix; 5] abbr; 6] supplemental; 7] foreign [ a:defaultValue = "main" ] attribute type { ## a main entry (default). "main" | ## (homograph) groups information relating to one homograph within an entry. "hom" | ## (cross reference) a reduced entry whose only function is to point to another main entry (e.g. for forms of an irregular verb or for variant spellings: was pointing to be, or esthete to aesthete). "xref" | ## an entry for a prefix, infix, or suffix. "affix" | ## (abbreviation) an entry for an abbreviation. "abbr" | ## a supplemental entry (for use in dictionaries which issue supplements to their main work in which they include updated information about entries). "supplemental" | ## an entry for a foreign word in a monolingual dictionary. "foreign" | xsd:Name }? att.lexicographic.attributes = att.datcat.attributes, att.lexicographic.attribute.expand, att.lexicographic.attribute.norm, att.lexicographic.attribute.split, att.lexicographic.attribute.value, att.lexicographic.attribute.orig, att.lexicographic.attribute.location, att.lexicographic.attribute.mergedIn, att.lexicographic.attribute.opt att.lexicographic.attribute.expand = ## gives an expanded form of information presented more concisely in the dictionary attribute expand { text }? att.lexicographic.attribute.norm = ## (normalized) gives a normalized form of information given by the source text in a non-normalized form attribute norm { data.text }? att.lexicographic.attribute.split = ## gives the list of split values for a merged form attribute split { data.text }? att.lexicographic.attribute.value = ## gives a value which lacks any realization in the printed source text. attribute value { data.text }? att.lexicographic.attribute.orig = ## (original) gives the original string or is the empty string when the element does not appear in the source text. attribute orig { data.text }? att.lexicographic.attribute.location = ## indicates an anchor element typically elsewhere in the document, but possibly in another document, which is the original location of this component. attribute location { data.pointer }? att.lexicographic.attribute.mergedIn = ## gives a reference to another element, where the original appears as a merged form. attribute mergedIn { data.pointer }? att.lexicographic.attribute.opt = ## (optional) indicates whether the element is optional or not [ a:defaultValue = "false" ] attribute opt { data.truthValue }? model.morphLike = gram | gen | number | case | per | tns | mood | iType model.morphLike_alternation = gram | gen | number | case | per | tns | mood | iType model.morphLike_sequence = gram, gen, number, case, per, tns, mood, iType model.morphLike_sequenceOptional = gram?, gen?, number?, case?, per?, tns?, mood?, iType? model.morphLike_sequenceOptionalRepeatable = gram*, gen*, number*, case*, per*, tns*, mood*, iType* model.morphLike_sequenceRepeatable = gram+, gen+, number+, case+, per+, tns+, mood+, iType+ model.gramPart = model.morphLike | gramGrp | pos | subc | colloc | usg | lbl model.formPart = model.gramPart | form | orth | pron | hyph | syll | stress model.ptrLike.form = oRef | oVar | pRef | pVar superEntry = ## groups a sequence of entries within any kind of lexical resource, such as a dictionary or lexicon which function as a single unit, for example a set of homographs. [9.1. ] element superEntry { ((form?, entry+) | dictScrap), att.global.attributes, att.entryLike.attributes, att.sortable.attributes, empty } entry = ## contains a single structured entry in any kind of lexical resource, such as a dictionary or lexicon. [9.1. 9.2. ] element entry { (hom | sense | model.entryPart.top | model.global | model.ptrLike)+, att.global.attributes, att.entryLike.attributes, att.sortable.attributes, empty } entryFree = ## (unstructured entry) contains a single unstructured entry in any kind of lexical resource, such as a dictionary or lexicon. [9.1. 9.2. ] element entryFree { (text | model.gLike | model.entryPart | model.morphLike | model.phrase | model.inter | model.global)*, att.global.attributes, att.entryLike.attributes, att.lexicographic.attributes, att.sortable.attributes, empty } hom = ## (homograph) groups information relating to one homograph within an entry. [9.2. ] element hom { (sense | model.entryPart.top | model.global)*, att.global.attributes, att.lexicographic.attributes, empty } sense = ## groups together all information relating to one word sense in a dictionary entry, for example definitions, examples, and translation equivalents. [9.2. ] element sense { (text | model.gLike | sense | model.entryPart.top | model.phrase | model.global)*, att.global.attributes, att.lexicographic.attributes, ## gives the nesting depth of this sense. attribute level { data.count }?, empty } dictScrap = ## (dictionary scrap) encloses a part of a dictionary entry in which other phrase-level dictionary elements are freely combined. [9.1. 9.2. ] element dictScrap { (text | model.gLike | model.entryPart | model.morphLike | model.phrase | model.inter | model.global)*, att.global.attributes, empty } form = ## (form information group) groups all the information on the written and spoken forms of one headword. [9.3.1. ] element form { (text | model.gLike | model.phrase | model.inter | model.formPart | model.global)*, att.global.attributes, att.lexicographic.attributes, ## classifies form as simple, compound, etc. ## Suggested values include: 1] simple; 2] lemma; 3] variant; 4] compound; 5] derivative; 6] inflected; 7] phrase attribute type { ## single free lexical item "simple" | ## the headword itself "lemma" | ## a variant form "variant" | ## word formed from simple lexical items "compound" | ## word derived from headword "derivative" | ## word in other than usual dictionary form "inflected" | ## multiple-word lexical item "phrase" | xsd:Name }?, empty } orth = ## (orthographic form) gives the orthographic form of a dictionary headword. [9.3.1. ] element orth { macro.paraContent, att.global.attributes, att.lexicographic.attributes, ## gives the type of spelling. attribute type { data.enumerated }?, ## gives the extent of the orthographic information provided. ## Sample values include: 1] full; 2] pref; 3] suff; 4] part [ a:defaultValue = "full" ] attribute extent { data.enumerated }?, empty } pron = ## (pronunciation) contains the pronunciation(s) of the word. [9.3.1. ] element pron { macro.paraContent, att.global.attributes, att.lexicographic.attributes, ## indicates whether the pronunciation is for whole word or part. ## Sample values include: 1] full; 2] pref; 3] suff; 4] part [ a:defaultValue = "full" ] attribute extent { data.enumerated }?, ## indicates what notation is used for the pronunciation, if more than one occurs in the machine-readable dictionary. attribute notation { data.enumerated }?, empty } hyph = ## (hyphenation) contains a hyphenated form of a dictionary headword, or hyphenation information in some other form. [9.3.1. ] element hyph { macro.paraContent, att.global.attributes, att.lexicographic.attributes, empty } syll = ## (syllabification) contains the syllabification of the headword. [9.3.1. ] element syll { macro.paraContent, att.global.attributes, att.lexicographic.attributes, empty } stress = ## contains the stress pattern for a dictionary headword, if given separately. [9.3.1. ] element stress { macro.paraContent, att.global.attributes, empty } gram = ## (grammatical information) within an entry in a dictionary or a terminological data file, contains grammatical information relating to a term, word, or form. [9.3.2. ] element gram { macro.paraContent, att.global.attributes, att.lexicographic.attributes, ## classifies the grammatical information given according to some convenient typology—in the case of terminological information, preferably the dictionary of data element types specified in ISO 12620. ## Sample values include: 1] pos; 2] gen; 3] num; 4] animate; 5] proper attribute type { data.enumerated }?, empty } gen = ## (gender) identifies the morphological gender of a lexical item, as given in the dictionary. [9.3.1. ] element gen { macro.paraContent, att.global.attributes, att.lexicographic.attributes, empty } number = ## indicates grammatical number associated with a form, as given in a dictionary. [9.3.1. 9.3.2. ] element number { macro.paraContent, att.global.attributes, att.lexicographic.attributes, empty } case = ## contains grammatical case information given by a dictionary for a given form. [9.3.1. ] element case { macro.paraContent, att.global.attributes, att.lexicographic.attributes, empty } per = ## (person) contains an indication of the grammatical person (1st, 2nd, 3rd, etc.) associated with a given inflected form in a dictionary. [9.3.1. ] element per { macro.paraContent, att.global.attributes, att.lexicographic.attributes, empty } tns = ## (tense) indicates the grammatical tense associated with a given inflected form in a dictionary. [9.3.1. ] element tns { macro.paraContent, att.global.attributes, att.lexicographic.attributes, empty } mood = ## contains information about the grammatical mood of verbs (e.g. indicative, subjunctive, imperative). [9.3.1. ] element mood { macro.paraContent, att.global.attributes, att.lexicographic.attributes, empty } iType = ## (inflectional class) indicates the inflectional class associated with a lexical item. [9.3.1. ] element iType { macro.paraContent, att.global.attributes, att.lexicographic.attributes, ## indicates the type of indicator used to specify the inflection class, when it is necessary to distinguish between the usual abbreviated indications (e.g. inv) and other kinds of indicators, such as special codes referring to conjugation patterns, etc. ## Sample values include: 1] abbrev; 2] verbTable attribute type { data.enumerated }?, empty } gramGrp = ## (grammatical information group) groups morpho-syntactic information about a lexical item, e.g. pos, gen, number, case, or iType (inflectional class). [9.3.2. ] element gramGrp { (text | model.gLike | model.phrase | model.inter | model.gramPart | model.global)*, att.global.attributes, att.lexicographic.attributes, att.typed.attributes, empty } pos = ## (part of speech) indicates the part of speech assigned to a dictionary headword such as noun, verb, or adjective. [9.3.2. ] element pos { macro.paraContent, att.global.attributes, att.lexicographic.attributes, empty } subc = ## (subcategorization) contains subcategorization information (transitive/intransitive, countable/non-countable, etc.) [9.3.2. ] element subc { macro.paraContent, att.global.attributes, att.lexicographic.attributes, empty } colloc = ## (collocate) contains any sequence of words that co-occur with the headword with significant frequency. [9.3.2. ] element colloc { macro.paraContent, att.global.attributes, att.lexicographic.attributes, att.typed.attributes, empty } def = ## (definition) contains definition text in a dictionary entry. [9.3.3.1. ] element def { macro.paraContent, att.global.attributes, att.lexicographic.attributes, empty } etym = ## (etymology) encloses the etymological information in a dictionary entry. [9.3.4. ] element etym { (text | model.gLike | model.phrase | model.inter | usg | lbl | def | model.morphLike | xr | model.global)*, att.global.attributes, att.lexicographic.attributes, empty } lang = ## (language name) contains the name of a language mentioned in etymological or other linguistic discussion. [9.3.4. ] element lang { macro.paraContent, att.global.attributes, att.lexicographic.attributes, empty } usg = ## (usage) contains usage information in a dictionary entry. [9.3.5.2. ] element usg { macro.paraContent, att.global.attributes, att.lexicographic.attributes, ## classifies the usage information using any convenient typology. ## Sample values include: 1] geo; 2] time; 3] dom; 4] register; 5] style; 6] plev; 7] lang; 8] gram; 9] syn; 10] hyper; 11] colloc; 12] comp; 13] obj; 14] subj; 15] verb; 16] hint attribute type { data.enumerated }?, empty } lbl = ## (label) contains a label for a form, example, translation, or other piece of information, e.g. abbreviation for, contraction of, literally, approximately, synonyms:, etc. [9.3.1. 9.3.3.2. 9.3.5.3. ] element lbl { macro.paraContent, att.global.attributes, att.lexicographic.attributes, ## classifies the label using any convenient typology. attribute type { data.enumerated }?, empty } xr = ## (cross-reference phrase) contains a phrase, sentence, or icon referring the reader to some other location in this or another text. [9.3.5.3. ] element xr { (text | model.gLike | model.phrase | model.inter | usg | lbl | model.global)*, att.global.attributes, att.lexicographic.attributes, ## indicates the type of cross reference, using any convenient typology. ## Sample values include: 1] syn; 2] etym; 3] cf; 4] illus attribute type { data.enumerated }?, empty } re = ## (related entry) contains a dictionary entry for a lexical item related to the headword, such as a compound phrase or derived form, embedded inside a larger entry. [9.3.6. ] element re { (text | model.gLike | sense | model.entryPart.top | model.phrase | model.global)*, att.global.attributes, att.lexicographic.attributes, att.typed.attributes, empty } oRef = ## (orthographic-form reference) in a dictionary example, indicates a reference to the orthographic form(s) of the headword. [9.4. ] element oRef { empty, att.global.attributes, att.lexicographic.attributes, att.pointing.attributes, ## indicates the kind of typographic modification made to the headword in the reference. ## Sample values include: 1] cap; 2] noHyph attribute type { data.enumerated }?, empty } oVar = ## (orthographic-variant reference) in a dictionary example, indicates a reference to variant orthographic form(s) of the headword. [9. ] element oVar { (text | model.gLike | oRef)*, att.global.attributes, att.lexicographic.attributes, att.pointing.attributes, ## indicates the kind of variant involved. ## Sample values include: 1] pt; 2] pp; 3] prp; 4] f; 5] pl attribute type { data.enumerated }?, empty } pRef = ## (pronunciation reference) in a dictionary example, indicates a reference to the pronunciation(s) of the headword. [9.4. ] element pRef { empty, att.global.attributes, att.pointing.attributes, att.lexicographic.attributes, empty } pVar = ## (pronunciation-variant reference) in a dictionary example, indicates a reference to variant pronunciation(s) of the headword. [9. ] element pVar { (text | model.gLike | pRef)*, att.global.attributes, att.pointing.attributes, att.lexicographic.attributes, empty } termEntry = ## groups the components of a single Terminological Entry as defined in ISO 16642 (TMF) element tbx:termEntry { (model.auxInfo*, langSet*), att.global.attributes, empty } langSet = ## groups all information relevant to the Language Section component as defined in ISO 16642 (TMF) element tbx:langSet { (model.auxInfo*, tig*), att.global.attributes, empty } tig = ## groups all information relevant to the Term Section component as defined in ISO 16642 (TMF) element tbx:tig { (term, termNote*, model.auxInfo*), att.global.attributes, empty } termNote = ## ... element tbx:termNote { (text | model.limitedPhrase | model.metaMarkup)*, att.global.attributes, att.typed.attributes, empty } descrip = ## provides descriptive information about the node in question. element tbx:descrip { (text | model.limitedPhrase | model.metaMarkup)*, att.global.attributes, att.typed.attributes, att.pointing.attributes, empty } descripGrp = ## ... element tbx:descripGrp { (descrip, admin*), text, att.global.attributes, empty } transacGrp = ## ... element tbx:transacGrp { (transac, (transacNote, date)*), text, att.global.attributes, empty } transacNote = ## ... element tbx:transacNote { (text | model.limitedPhrase | model.metaMarkup)*, att.global.attributes, att.typed.attributes, att.pointing.attributes, empty } transac = ## ... element tbx:transac { (text | model.limitedPhrase | model.metaMarkup)*, att.global.attributes, att.typed.attributes, empty } admin = ## contains information of an administrative nature for the node in question element tbx:admin { (text | model.limitedPhrase | model.metaMarkup)*, att.global.attributes, att.typed.attributes, empty } bpt = ## (begin paired tags) meta-markup tags that are used to mark up, i.e., encapsulate markup to distinguish it from text element tbx:bpt { (text | model.limitedPhrase | model.metaMarkup)*, att.global.attributes, att.typed.attributes, empty } model.auxInfo = model.ptrLike | model.noteLike | descrip | descripGrp | transacGrp | admin model.metaMarkup = bpt start = TEI | teiCorpus