From 21b0e50fb6ec9db7ac8c2e719e0ff64b20679919 Mon Sep 17 00:00:00 2001 From: c <f> Date: Wed, 12 Aug 2020 11:14:59 +0200 Subject: [PATCH] =?UTF-8?q?Dernschwam-Nummer=20im=20Schema=20erg=C3=A4nzt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Schema/tei_blotius.rnc | 357 +++++++++++++++++++------------------ Schema/tei_blotius_odd.odd | 5 +- 2 files changed, 191 insertions(+), 171 deletions(-) diff --git a/Schema/tei_blotius.rnc b/Schema/tei_blotius.rnc index 0627d66..a590a5c 100644 --- a/Schema/tei_blotius.rnc +++ b/Schema/tei_blotius.rnc @@ -8,10 +8,10 @@ namespace teix = "http://www.tei-c.org/ns/Examples" namespace xi = "http://www.w3.org/2001/XInclude" namespace xlink = "http://www.w3.org/1999/xlink" -# Schema generated from ODD source 2019-09-11T07:28:01Z. . -# TEI Edition: Version 3.6.0. Last updated on -# 16th July 2019, revision 4d9d1971f -# TEI Edition Location: http://www.tei-c.org/Vault/P5/Version 3.6.0/ +# Schema generated from ODD source 2020-08-12T09:07:48Z. . +# TEI Edition: Version 4.0.0. Last updated on +# 13th February 2020, revision ccd19b0ba +# TEI Edition Location: http://www.tei-c.org/Vault/P5/Version 4.0.0/ # # This material is dual-licensed. @@ -150,7 +150,7 @@ teiatt.dimensions.attribute.unit = | ## (characters) characters of text "char" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.dimensions.attribute.quantity = @@ -186,7 +186,7 @@ teiatt.dimensions.attribute.scope = ## where the measurement summarizes more than one observation, specifies the applicability of this measurement. ## Beispielwerte sind etwa: 1] all; 2] most; 3] range attribute scope { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.written.attributes = teiatt.written.attribute.hand teiatt.written.attribute.hand = @@ -209,7 +209,7 @@ teiatt.damaged.attribute.agent = ## categorizes the cause of the damage, if it can be identified. ## Beispielwerte sind etwa: 1] rubbing; 2] mildew; 3] smoke attribute agent { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.damaged.attribute.degree = [ @@ -247,7 +247,7 @@ teiatt.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 { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.cReferencing.attributes = teiatt.cReferencing.attribute.cRef teiatt.cReferencing.attribute.cRef = @@ -526,7 +526,7 @@ teiatt.docStatus.attribute.status = ## Beispielwerte sind etwa: 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 { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.global.responsibility.attributes = teiatt.global.responsibility.attribute.cert, @@ -572,7 +572,7 @@ teiatt.editLike.attribute.evidence = | ## the intervention or interpretation has been made by the editor, cataloguer, or scholar on the basis of their expertise. "conjecture" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" })+ + | xsd:token { pattern = "[^\p{C}\p{Z}]+" })+ } }? teiatt.editLike.attribute.instant = @@ -597,7 +597,7 @@ teiatt.global.rendition.attribute.rend = ## (rendition) indicates how the element in question was rendered or presented in the source text. attribute rend { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }? teiatt.global.rendition.attribute.style = @@ -713,7 +713,7 @@ teiatt.handFeatures.attribute.medium = ## describes the tint or type of ink, e.g. brown, or other writing medium, e.g. pencil attribute medium { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }? teiatt.handFeatures.attribute.scope = @@ -737,7 +737,7 @@ teiatt.internetMedia.attribute.mimeType = ## (MIME media type) specifies the applicable multimedia internet mail extension (MIME) media type attribute mimeType { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }? teiatt.media.attributes = @@ -784,7 +784,7 @@ teiatt.measurement.attributes = teiatt.measurement.attribute.unit = ## indicates the units used for the measurement, usually using the standard symbol for the desired units. - ## Empfohlene Werte sind: 1] m (metre); 2] kg (kilogram); 3] s (second); 4] Hz (hertz); 5] Pa (pascal); 6] Ω (ohm); 7] L (litre); 8] t (tonne); 9] ha (hectare); 10] â„« (Ã¥ngström); 11] mL (millilitre); 12] cm (centimetre); 13] dB (decibel); 14] kbit (kilobit); 15] Kibit (kibibit); 16] kB (kilobyte); 17] KiB (kibibyte); 18] MB (megabyte); 19] MiB (mebibyte) + ## Empfohlene Werte sind: 1] m (metre); 2] kg (kilogram); 3] s (second); 4] Hz (hertz); 5] Pa (pascal); 6] Ω (ohm); 7] L (litre); 8] t (tonne); 9] ha (hectare); 10] Ã… (Ã¥ngström); 11] mL (millilitre); 12] cm (centimetre); 13] dB (decibel); 14] kbit (kilobit); 15] Kibit (kibibit); 16] kB (kilobyte); 17] KiB (kibibyte); 18] MB (megabyte); 19] MiB (mebibyte) attribute unit { ## (metre) SI base unit of length @@ -803,7 +803,7 @@ teiatt.measurement.attribute.unit = "Pa" | ## (ohm) SI unit of electric resistance - "Ω" + "Ω" | ## (litre) 1 dm³ "L" @@ -815,7 +815,7 @@ teiatt.measurement.attribute.unit = "ha" | ## (Ã¥ngström) 10â»Â¹â° m - "â„«" + "Ã…" | ## (millilitre) "mL" @@ -843,7 +843,7 @@ teiatt.measurement.attribute.unit = | ## (mebibyte) 2²Ⱐor 1 048 576 bytes "MiB" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.measurement.attribute.unitRef = [ @@ -869,7 +869,7 @@ teiatt.measurement.attribute.commodity = ## indicates the substance that is being measured attribute commodity { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }? sch:pattern [ @@ -901,7 +901,7 @@ teiatt.naming.attribute.role = ## may be used to specify further information about the entity referenced by this name in the form of a set of whitespace-separated values, for example the occupation of a person, or the status of a place. attribute role { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }? teiatt.naming.attribute.nymRef = @@ -915,7 +915,7 @@ teiatt.notated.attribute.notation = ## names the notation used for the content of the element. attribute notation { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.placement.attributes = teiatt.placement.attribute.place teiatt.placement.attribute.place = @@ -954,7 +954,7 @@ teiatt.placement.attribute.place = | ## in a predefined space, for example left by an earlier scribe. "inspace" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" })+ + | xsd:token { pattern = "[^\p{C}\p{Z}]+" })+ } }? teiatt.typed.attributes = @@ -963,13 +963,13 @@ teiatt.typed.attribute.type = ## characterizes the element in some sense, using any convenient classification scheme or typology. attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.typed.attribute.subtype = ## provides a sub-categorization of the element, if needed attribute subtype { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? sch:pattern [ id = "tei_blotius_odd-att.typed-subtypeTyped-constraint-rule-6" @@ -1082,9 +1082,9 @@ teiatt.pointing.group.attribute.targFunc = ] attribute targFunc { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }, - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }, - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }* + xsd:token { pattern = "[^\p{C}\p{Z}]+" }, + xsd:token { pattern = "[^\p{C}\p{Z}]+" }, + xsd:token { pattern = "[^\p{C}\p{Z}]+" }* } }? teiatt.segLike.attributes = @@ -1095,14 +1095,14 @@ teiatt.segLike.attribute.function = ## characterizes the function of the segment. attribute function { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.sortable.attributes = teiatt.sortable.attribute.sortKey teiatt.sortable.attribute.sortKey = ## supplies the sort key for this element in an index, list or group which contains it. attribute sortKey { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.edition.attributes = teiatt.edition.attribute.ed, teiatt.edition.attribute.edRef @@ -1111,7 +1111,7 @@ teiatt.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 { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }? teiatt.edition.attribute.edRef = @@ -1224,13 +1224,13 @@ teiatt.transcriptional.attribute.status = ## Beispielwerte sind etwa: 1] duplicate; 2] duplicate-partial; 3] excessStart; 4] excessEnd; 5] shortStart; 6] shortEnd; 7] partial; 8] unremarkable [ a:defaultValue = "unremarkable" ] attribute status { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.transcriptional.attribute.cause = ## documents the presumed cause for the intervention. attribute cause { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.transcriptional.attribute.seq = @@ -1284,7 +1284,7 @@ teiatt.citing.attribute.unit = | ## the element identifies an entry number or label in a list of entries. "entry" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.citing.attribute.from = [ @@ -1295,7 +1295,7 @@ teiatt.citing.attribute.from = ] ] attribute from { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.citing.attribute.to = [ @@ -1306,7 +1306,7 @@ teiatt.citing.attribute.to = ] ] attribute to { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teimodel.nameLike.agent = teiname | teiorgName | teipersName teimodel.nameLike.agent_alternation = teiname | teiorgName | teipersName @@ -1910,6 +1910,7 @@ teimodel.frontPart.drama = notAllowed teimodel.pLike.front = teihead | teibyline + | teidateline | teiargument | teiepigraph | teidocTitle @@ -2046,6 +2047,9 @@ teimodel.biblPart = | teilistRelation | teiobjectIdentifier | teimsIdentifier + | teiexplicit + | teiincipit + | teidecoNote teimodel.frontPart = teimodel.frontPart.drama | teilistBibl | teidivGen | teititlePage teimodel.addrPart = @@ -2120,6 +2124,13 @@ teimodel.profileDescPart = | teicorrespDesc | teihandNotes | teilistTranspose +teimodel.standOffPart = + teimodel.global.meta + | teimodel.biblLike + | teimodel.listLike + | teilistChange + | teiseg + | teizone teiatt.formula.attributes = teiatt.formula.attribute.formula teiatt.formula.attribute.formula = [ @@ -2136,7 +2147,8 @@ teimodel.correspContextPart = teimodel.ptrLike | teimodel.pLike | teinote teimodel.correspDescPart = teinote | teicorrespAction | teicorrespContext -teimodel.resourceLike = teitext | teifacsimile | teisourceDoc +teimodel.resource = teistandOff | teitext | teifacsimile | teisourceDoc +teimodel.describedResource = teiteiCorpus | teiTEI teimodel.objectLike = teiobject | teilistObject teiatt.personal.attributes = teiatt.naming.attributes, @@ -2217,7 +2229,7 @@ teiatt.milestoneUnit.attribute.unit = | ## passages present in the text, but not to be included as part of the reference. "unnumbered" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } } teip = @@ -2299,10 +2311,11 @@ teidistinct = element distinct { teimacro.phraseSeq, teiatt.global.attributes, + teiatt.typed.attribute.subtype, ## specifies the sublanguage or register to which the word or phrase is being assigned attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, ## specifies how the phrase is distinct diachronically @@ -2396,7 +2409,7 @@ teiq = | ## (erwähnt) bezieht sich auf sich selbst, nicht auf den üblichen Bezugspunkt "mentioned" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -2439,14 +2452,14 @@ teidesc = sch:rule [ context = "tei:desc[ @type eq 'deprecationInfo']" "\x{a}" ~ - " " + " " sch:assert [ test = "../@validUntil" "Information about a\x{a}" ~ - " deprecation should only be present in a specification element\x{a}" ~ - " that is being deprecated: that is, only an element that has a\x{a}" ~ - " @validUntil attribute should have a child <desc\x{a}" ~ - ' type="deprecationInfo">.' + " deprecation should only be present in a specification element\x{a}" ~ + " that is being deprecated: that is, only an element that has a\x{a}" ~ + " @validUntil attribute should have a child <desc\x{a}" ~ + ' type="deprecationInfo">.' ] "\x{a}" ~ " " @@ -2460,7 +2473,7 @@ teidesc = ## characterizes the element in some sense, using any convenient classification scheme or typology. attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -2562,14 +2575,14 @@ teigap = | ## (Auswahl) "sampling" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" })+ + | xsd:token { pattern = "[^\p{C}\p{Z}]+" })+ } }?, ## (Ursache) bestimmt im Falle von Text, der wegen Beschädigung weggelassen wird, die Ursache für den Schaden, sofern er ermittelt werden kann. ## Beispielwerte sind etwa: 1] rubbing; 2] mildew; 3] smoke attribute agent { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -2624,14 +2637,14 @@ teiunclear = | ## (exzentrischer Duktus) "eccentric_ductus" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" })+ + | xsd:token { pattern = "[^\p{C}\p{Z}]+" })+ } }?, ## basiert die Schwierigkeit bei der Transkription auf einer schadhaften Stelle am Textträger, kann der Grund dafür hier genauer kategorisiert werden. ## Beispielwerte sind etwa: 1] rubbing; 2] mildew; 3] smoke attribute agent { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -2694,6 +2707,7 @@ teinum = element num { teimacro.phraseSeq, teiatt.global.attributes, + teiatt.typed.attribute.subtype, teiatt.ranging.attributes, ## bestimmt die Art des numerischen Wertes. @@ -2711,7 +2725,7 @@ teinum = | ## Prozentangabe "percentage" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, ## beinhaltet den Zahlenwert in standardisierter Form. @@ -2729,11 +2743,12 @@ teimeasure = element measure { teimacro.phraseSeq, teiatt.global.attributes, + teiatt.typed.attribute.subtype, teiatt.measurement.attributes, ## specifies the type of measurement in any convenient typology. attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -2795,7 +2810,7 @@ teiabbr = ## (Typ) erlaubt es, die Abkürzung nach einer geeigneten Typologie zu klassifizieren. ## Beispielwerte sind etwa: 1] suspension; 2] contraction; 3] brevigraph; 4] superscription; 5] acronym; 6] title; 7] organization; 8] geographic attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -2933,7 +2948,7 @@ teilist = | ## (logischer Schluss) jeder Listenpunkt ist Teil eines Arguments, das aus zwei oder mehr Prämissen und einem daraus gezogenen Schluss besteht. "syllogism" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -3040,7 +3055,7 @@ teimedia = ## (MIME media type) specifies the applicable multimedia internet mail extension (MIME) media type attribute mimeType { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }, empty @@ -3074,7 +3089,7 @@ teibinaryObject = ] attribute encoding { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }?, empty @@ -3264,14 +3279,14 @@ teititle = element title { teimacro.paraContent, teiatt.global.attributes, - teiatt.canonical.attributes, teiatt.typed.attribute.subtype, + teiatt.canonical.attributes, teiatt.datable.attributes, ## klassifiziert den Titel entsprechend einer geeigneten Typologie. ## Beispielwerte sind etwa: 1] main; 2] sub (subordinate); 3] alt (alternate); 4] short; 5] desc (descriptive) attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, ## gibt den bibliografischen Typ eines Titels an, d.h. ob er einen Artikel, ein Buch, eine Zeitschrift, eine Reihe oder unpubliziertes Material bezeichnet. @@ -3425,19 +3440,6 @@ teirelatedItem = "relatedItem element must be empty" ] "\x{a}" ~ - " " - ] - "\x{a}" ~ - " " - ] - >> sch:pattern [ - id = - "tei_blotius_odd-relatedItem-targetorcontent1-constraint-assert-8" - "\x{a}" ~ - " " - sch:rule [ - context = "tei:relatedItem" - "\x{a}" ~ " " sch:assert [ test = "@target or child::*" @@ -3615,7 +3617,7 @@ teistage = | ## mehrere der oben angeführten Funktionen. "mixed" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" })* + | xsd:token { pattern = "[^\p{C}\p{Z}]+" })* } }?, empty @@ -3629,9 +3631,7 @@ teiteiCorpus = ] ] element teiCorpus { - (teiteiHeader, - ((teimodel.resourceLike+, (teiTEI | teiteiCorpus)*) - | (teiTEI | teiteiCorpus)+)), + (teiteiHeader, teimodel.resource*, teimodel.describedResource+), teiatt.global.attributes, teiatt.typed.attributes, @@ -3647,11 +3647,12 @@ teidivGen = element divGen { teimodel.headLike*, teiatt.global.attributes, + teiatt.typed.attribute.subtype, ## specifies what type of generated text division (e.g. index, table of contents, etc.) is to appear. ## Beispielwerte sind etwa: 1] index; 2] toc; 3] figlist; 4] tablist attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -4240,7 +4241,7 @@ teirendition = ## where CSS is used, provides a way of defining pseudo-elements, that is, styling rules applicable to specific sub-portions of an element. ## Beispielwerte sind etwa: 1] first-line; 2] first-letter; 3] before; 4] after attribute scope { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, [ a:documentation [ @@ -4353,6 +4354,7 @@ teicatDesc = element catDesc { (text | teimodel.limitedPhrase | teimodel.catDescPart)*, teiatt.global.attributes, + teiatt.canonical.attributes, empty } teigeoDecl = @@ -4384,7 +4386,7 @@ teigeoDecl = | ## (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:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -4643,7 +4645,7 @@ teicorrespAction = | ## information concerning the forwarding of a message. "forwarded" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -4864,7 +4866,7 @@ teiab = ## characterizes the element in some sense, using any convenient classification scheme or typology. attribute type { - ## The value "blotius number" reflects the number given by Blotius to the title in the inventary. + ## The value "blotius-number" reflects the number given by Blotius to the title in the inventary. "blotius-number" | ## The value "title" reflects the title as written by Blotius. @@ -4872,6 +4874,9 @@ teiab = | ## The value "note" is reserved for a note made by Blotius himself. "note" + | + ## The value "dernschwam-number" reflects the number given by Hans Dernschwam to the title in his catalogue. + "dernschwam-number" }?, empty } @@ -4937,7 +4942,7 @@ teiwhen = | ## (milliseconds) "ms" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, ## specifies a time interval either as a number or as one of the keywords defined by the datatype data.interval @@ -4996,7 +5001,7 @@ teitimeline = | ## (milliseconds) "ms" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, ## specifies a time interval either as a positive integral value or using one of a set of predefined codes. @@ -5157,10 +5162,46 @@ teialtGrp = }?, empty } +teistandOff = + + ## Functions as a container element for linked data, contextual information, and stand-off annotations embedded in a TEI document. [16.10. The standOff Container] + element standOff { + (teimodel.standOffPart+) + >> sch:pattern [ + id = + "tei_blotius_odd-standOff-nested_standOff_should_be_typed-constraint-assert-12" + "\x{a}" ~ + " " + sch:rule [ + context = "tei:standOff" + "\x{a}" ~ + " " + sch:assert [ + test = "@type or not(ancestor::tei:standOff)" + "This\x{a}" ~ + " " + sch:name [ ] + " element must have a @type attribute, since it is\x{a}" ~ + " nested inside a " + sch:name [ ] + "\x{a}" ~ + " " + ] + "\x{a}" ~ + " " + ] + "\x{a}" ~ + " " + ], + teiatt.global.attributes, + teiatt.typed.attributes, + teiatt.declaring.attributes, + empty + } teiTEI = [ a:documentation [ - "(TEI-Dokument) enthält ein einzelnes TEI-konformes Dokument, das aus einem einzigen TEI-Header und einem oder mehreren Mitgliedern der model.resourceLike-Klasse besteht. Mehrere " + "(TEI-Dokument) enthält ein einzelnes TEI-konformes Dokument, das aus einem einzigen TEI-Header und einem oder mehreren Mitgliedern der model.resource-Klasse besteht. Mehrere " ns1:code [ "<TEI>" ] "-Elemente können in einem " ns1:code [ "<teiCorpus>" ] @@ -5168,7 +5209,8 @@ teiTEI = ] ] element TEI { - (teiteiHeader, teimodel.resourceLike+) + (teiteiHeader, + ((teimodel.resource+, teiTEI*) | teiTEI+)) >> 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 [ @@ -5308,7 +5350,7 @@ teidiv = ## "entry" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -5441,10 +5483,11 @@ teititlePage = teimodel.titlepagePart, (teimodel.titlepagePart | teimodel.global)*), teiatt.global.attributes, + teiatt.typed.attribute.subtype, ## klassifiziert die Titelseite entsprechend einer geeigneten Typologie. attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -5463,6 +5506,7 @@ teititlePart = element titlePart { teimacro.paraContent, teiatt.global.attributes, + teiatt.typed.attribute.subtype, ## (Titelart) beschreibt die Funktion dieses Titelbestandteils näher. ## Empfohlene Werte sind: 1] main; 2] sub (subordinate); 3] alt (alternate); 4] short; 5] desc (descriptive) @@ -5483,7 +5527,7 @@ teititlePart = | ## (Beschreibung) beschreibende Paraphrase eines Werks "desc" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -5591,7 +5635,7 @@ teiatt.datable.custom.attribute.when-custom = ## supplies the value of a date or time in some custom standard form. attribute when-custom { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }? teiatt.datable.custom.attribute.notBefore-custom = @@ -5599,7 +5643,7 @@ teiatt.datable.custom.attribute.notBefore-custom = ## specifies the earliest possible date for the event in some custom standard form. attribute notBefore-custom { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }? teiatt.datable.custom.attribute.notAfter-custom = @@ -5607,7 +5651,7 @@ teiatt.datable.custom.attribute.notAfter-custom = ## specifies the latest possible date for the event in some custom standard form. attribute notAfter-custom { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }? teiatt.datable.custom.attribute.from-custom = @@ -5615,7 +5659,7 @@ teiatt.datable.custom.attribute.from-custom = ## indicates the starting point of the period in some custom standard form. attribute from-custom { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }? teiatt.datable.custom.attribute.to-custom = @@ -5623,7 +5667,7 @@ teiatt.datable.custom.attribute.to-custom = ## indicates the ending point of the period in some custom standard form. attribute to-custom { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }? teiatt.datable.custom.attribute.datingPoint = @@ -5948,7 +5992,7 @@ teiaffiliation = ## characterizes the element in some sense, using any convenient classification scheme or typology. ## Beispielwerte sind etwa: 1] sponsor; 2] recommend; 3] discredit; 4] pledged attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -5966,7 +6010,7 @@ teiage = ## characterizes the element in some sense, using any convenient classification scheme or typology. ## Beispielwerte sind etwa: 1] western; 2] sui; 3] subjective; 4] objective; 5] inWorld (in world); 6] chronological; 7] biological; 8] psychological; 9] functional attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, ## supplies a numeric code representing the age or age group @@ -5988,7 +6032,7 @@ teibirth = ## characterizes the element in some sense, using any convenient classification scheme or typology. ## Beispielwerte sind etwa: 1] caesarean (caesarean section); 2] vaginal (vaginal delivery); 3] exNihilo (ex nihilo); 4] incorporated; 5] founded; 6] established attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -6007,7 +6051,7 @@ teideath = ## characterizes the element in some sense, using any convenient classification scheme or typology. ## Beispielwerte sind etwa: 1] proclaimed; 2] assumed; 3] verified; 4] clinical; 5] brain; 6] natural; 7] unnatural; 8] fragmentation; 9] dissolution attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -6025,7 +6069,7 @@ teieducation = ## characterizes the element in some sense, using any convenient classification scheme or typology. ## Beispielwerte sind etwa: 1] primary; 2] secondary; 3] undergraduate; 4] graduate; 5] residency; 6] apprenticeship attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -6073,7 +6117,7 @@ teifaith = ## characterizes the element in some sense, using any convenient classification scheme or typology. ## Beispielwerte sind etwa: 1] practicing; 2] clandestine; 3] patrilineal; 4] matrilineal; 5] convert attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -6181,7 +6225,7 @@ teioccupation = ## characterizes the element in some sense, using any convenient classification scheme or typology. ## Beispielwerte sind etwa: 1] primary; 2] other; 3] paid; 4] unpaid attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, [ a:documentation [ @@ -6226,7 +6270,7 @@ teiorg = ## specifies a primary role or classification for the organization. attribute role { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }?, empty @@ -6256,20 +6300,20 @@ teiperson = ## specifies a primary role or classification for the person. attribute role { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }?, ## specifies the sex of the person. attribute sex { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }?, ## specifies an age group for the person. attribute age { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -6285,20 +6329,20 @@ teipersona = ## specifies a primary role or classification for the persona. attribute role { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }?, ## specifies the sex of the persona. attribute sex { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }?, ## specifies an age group for the persona. attribute age { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -6312,25 +6356,25 @@ teipersonGrp = ## specifies the role of this group of participants in the interaction. attribute role { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, ## specifies the sex of the participant group. attribute sex { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }?, ## specifies the age group of the participants. attribute age { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, ## 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 { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }?, empty @@ -6364,7 +6408,7 @@ teirelation = (teidesc?) >> sch:pattern [ id = - "tei_blotius_odd-relation-reforkeyorname-constraint-assert-12" + "tei_blotius_odd-relation-reforkeyorname-constraint-assert-13" "\x{a}" ~ " " sch:rule [ @@ -6428,7 +6472,7 @@ teirelation = ## supplies a name for the kind of relationship of which this is an instance. attribute name { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, ( ## identifies the active participants in a non-mutual relationship, or all the participants in a mutual one. @@ -6461,7 +6505,7 @@ teiresidence = ## characterizes the element in some sense, using any convenient classification scheme or typology. ## Beispielwerte sind etwa: 1] primary; 2] secondary; 3] temporary; 4] permanent attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -6478,13 +6522,13 @@ teisex = ## characterizes the element in some sense, using any convenient classification scheme or typology. ## Beispielwerte sind etwa: 1] explicit; 2] implicit attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, ## supplies a coded value for sex attribute value { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }?, empty @@ -6503,7 +6547,7 @@ teisocecStatus = ## characterizes the element in some sense, using any convenient classification scheme or typology. ## Beispielwerte sind etwa: 1] atBirth; 2] atDeath; 3] dependent; 4] inherited; 5] independent attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, [ a:documentation [ @@ -6744,7 +6788,7 @@ teiatt.coordinated.attribute.lry = }? teiatt.coordinated.attribute.points = - ## identifies a two dimensional area within the bounding box specified by the other attributes by means of a series of pairs of numbers, each of which gives the x,y coordinates of a point on a line enclosing the area. + ## identifies a two dimensional area by means of a series of pairs of numbers, each of which gives the x,y coordinates of a point on a line enclosing the area. attribute points { list { xsd:token { @@ -6799,7 +6843,7 @@ teisurface = ## describes the method by which this surface is or was connected to the main surface ## Beispielwerte sind etwa: 1] glued; 2] pinned; 3] sewn attribute attachment { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, ## indicates whether the surface is attached and folded in such a way as to provide two writing surfaces @@ -6826,6 +6870,7 @@ teizone = ] element zone { (text + | teimodel.gLike | teimodel.graphicLike | teimodel.global | teisurface @@ -6956,7 +7001,7 @@ teiaddSpan = element addSpan { empty >> sch:pattern [ - id = "tei_blotius_odd-addSpan-spanTo-constraint-assert-13" + id = "tei_blotius_odd-addSpan-spanTo-constraint-assert-14" "\x{a}" ~ " " sch:rule [ @@ -6976,7 +7021,7 @@ teiaddSpan = " " ] >> sch:pattern [ - id = "tei_blotius_odd-addSpan-spanTo_fr-constraint-assert-14" + id = "tei_blotius_odd-addSpan-spanTo_fr-constraint-assert-15" "\x{a}" ~ " " sch:rule [ @@ -7017,7 +7062,7 @@ teidamageSpan = element damageSpan { empty >> sch:pattern [ - id = "tei_blotius_odd-damageSpan-spanTo-constraint-assert-15" + id = "tei_blotius_odd-damageSpan-spanTo-constraint-assert-16" "\x{a}" ~ " " sch:rule [ @@ -7039,7 +7084,7 @@ teidamageSpan = ] >> sch:pattern [ id = - "tei_blotius_odd-damageSpan-spanTo_fr-constraint-assert-16" + "tei_blotius_odd-damageSpan-spanTo_fr-constraint-assert-17" "\x{a}" ~ " " sch:rule [ @@ -7068,7 +7113,7 @@ teidelSpan = element delSpan { empty >> sch:pattern [ - id = "tei_blotius_odd-delSpan-spanTo-constraint-assert-17" + id = "tei_blotius_odd-delSpan-spanTo-constraint-assert-18" "\x{a}" ~ " " sch:rule [ @@ -7088,7 +7133,7 @@ teidelSpan = " " ] >> sch:pattern [ - id = "tei_blotius_odd-delSpan-spanTo_fr-constraint-assert-18" + id = "tei_blotius_odd-delSpan-spanTo_fr-constraint-assert-19" "\x{a}" ~ " " sch:rule [ @@ -7128,13 +7173,13 @@ teifw = element fw { teimacro.phraseSeq, teiatt.global.attributes, + teiatt.typed.attribute.subtype, teiatt.placement.attributes, teiatt.written.attributes, ## classifies the material encoded according to some useful typology. - ## Beispielwerte sind etwa: 1] header; 2] footer; 3] pageNum (page number); 4] lineNum (line number); 5] sig (signature); 6] catch (catchword) attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -7236,7 +7281,7 @@ teisubst = ((teiadd | teidel | teimodel.milestoneLike)+) >> sch:pattern [ id = - "tei_blotius_odd-subst-substContents1-constraint-assert-19" + "tei_blotius_odd-subst-substContents1-constraint-assert-20" "\x{a}" ~ " " sch:rule [ @@ -7284,7 +7329,7 @@ teisupplied = ## one or more words indicating why the text has had to be supplied, e.g. overbinding, faded-ink, lost-folio, omitted-in-original. attribute reason { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }?, empty @@ -7301,7 +7346,7 @@ teisurplus = ## one or more words indicating why this text is believed to be superfluous, e.g. repeated, interpolated etc. attribute reason { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }?, empty @@ -7318,7 +7363,7 @@ teisecl = ## one or more words indicating why this text has been secluded, e.g. interpolated etc. attribute reason { list { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" }+ + xsd:token { pattern = "[^\p{C}\p{Z}]+" }+ } }?, empty @@ -7351,7 +7396,7 @@ teimetamark = ## describes the function (for example status, insertion, deletion, transposition) of the metamark. attribute function { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, ## identifies one or more elements to which the metamark applies. @@ -7437,7 +7482,7 @@ teiatt.tableDecoration.attribute.role = | ## data values. "data" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } }? teiatt.tableDecoration.attribute.rows = @@ -7527,7 +7572,7 @@ teiatt.msClass.attribute.class = }? teimsDesc = - ## (manuscript description) contains a description of a single identifiable manuscript or other text-bearing object. [10.1. Overview] + ## (manuscript description) contains a description of a single identifiable manuscript or other text-bearing object such as early printed books. [10.1. Overview] element msDesc { (teimsIdentifier, teimodel.headLike*, @@ -7551,7 +7596,7 @@ teicatchwords = teimacro.phraseSeq >> sch:pattern [ id = - "tei_blotius_odd-catchwords-catchword_in_msDesc-constraint-assert-20" + "tei_blotius_odd-catchwords-catchword_in_msDesc-constraint-assert-21" "\x{a}" ~ " " sch:rule [ @@ -7596,19 +7641,6 @@ teidimensions = " " ] "\x{a}" ~ - " " - ] - "\x{a}" ~ - " " - ] - >> sch:pattern [ - id = - "tei_blotius_odd-dimensions-duplicateDim-constraint-report-22" - "\x{a}" ~ - " " - sch:rule [ - context = "tei:dimensions" - "\x{a}" ~ " " sch:report [ test = "count(tei:height)> 1" @@ -7619,19 +7651,6 @@ teidimensions = " " ] "\x{a}" ~ - " " - ] - "\x{a}" ~ - " " - ] - >> sch:pattern [ - id = - "tei_blotius_odd-dimensions-duplicateDim-constraint-report-23" - "\x{a}" ~ - " " - sch:rule [ - context = "tei:dimensions" - "\x{a}" ~ " " sch:report [ test = "count(tei:depth)> 1" @@ -7649,11 +7668,11 @@ teidimensions = ], teiatt.global.attributes, teiatt.dimensions.attributes, + teiatt.typed.attribute.subtype, ## indicates which aspect of the object is being measured. - ## Beispielwerte sind etwa: 1] leaves; 2] ruled; 3] pricked; 4] written; 5] miniatures; 6] binding; 7] box attribute type { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -7724,12 +7743,12 @@ teilocus = ## specifies the starting point of the location in a normalized form, typically a page number. attribute from { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, ## specifies the end-point of the location in a normalized form, typically as a page number. attribute to { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -7798,7 +7817,7 @@ teisecFol = teimacro.phraseSeq >> sch:pattern [ id = - "tei_blotius_odd-secFol-secFol_in_msDesc-constraint-assert-21" + "tei_blotius_odd-secFol-secFol_in_msDesc-constraint-assert-22" "\x{a}" ~ " " sch:rule [ @@ -7827,7 +7846,7 @@ teisignatures = teimacro.specialPara >> sch:pattern [ id = - "tei_blotius_odd-signatures-signatures_in_msDesc-constraint-assert-22" + "tei_blotius_odd-signatures-signatures_in_msDesc-constraint-assert-23" "\x{a}" ~ " " sch:rule [ @@ -7907,7 +7926,7 @@ teiinstitution = ## contains the name of an organization such as a university or library, with which a manuscript or other object is identified, generally its holding institution. [10.4. The Manuscript Identifier] element institution { - teimacro.xtext, + teimacro.phraseSeq.limited, teiatt.global.attributes, teiatt.naming.attributes, empty @@ -7916,7 +7935,7 @@ teirepository = ## contains the name of a repository within which manuscripts or other objects are stored, possibly forming part of an institution. [10.4. The Manuscript Identifier] element repository { - teimacro.xtext, + teimacro.phraseSeq.limited, teiatt.global.attributes, teiatt.naming.attributes, empty @@ -7925,7 +7944,7 @@ teicollection = ## contains the name of a collection of manuscripts or other objects, not necessarily located within a single repository. [10.4. The Manuscript Identifier] element collection { - teimacro.xtext, + teimacro.phraseSeq.limited, teiatt.global.attributes, teiatt.naming.attributes, teiatt.typed.attributes, @@ -8104,7 +8123,7 @@ teiobjectDesc = ## a short project-specific name identifying the physical form of the carrier, for example as a codex, roll, fragment, partial leaf, cutting etc. attribute form { - xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } @@ -8132,7 +8151,7 @@ teisupportDesc = | ## "mixed" - | xsd:token { pattern = "(\p{L}|\p{N}|\p{P}|\p{S})+" } + | xsd:token { pattern = "[^\p{C}\p{Z}]+" } }?, empty } diff --git a/Schema/tei_blotius_odd.odd b/Schema/tei_blotius_odd.odd index 24ffbd8..b2f85bb 100644 --- a/Schema/tei_blotius_odd.odd +++ b/Schema/tei_blotius_odd.odd @@ -40,7 +40,7 @@ </address> </publisher> <pubPlace ref="http://www.geonames.org/2761369/">Vienna</pubPlace> - <date type="lastChanged">2019-04-03</date> + <date type="lastChanged">2020-08-12</date> <availability status="free"> <licence target="https://creativecommons.org/licenses/by-sa/4.0/"> <p>Distributed under the Creative Commons Attribution-ShareAlike 4.0 International @@ -113,9 +113,10 @@ <attList> <attDef ident="type" mode="change"> <valList type="closed" mode="replace"> - <valItem ident="blotius-number"><desc xml:lang="en">The value "blotius number" reflects the number given by Blotius to the title in the inventary.</desc></valItem> + <valItem ident="blotius-number"><desc xml:lang="en">The value "blotius-number" reflects the number given by Blotius to the title in the inventary.</desc></valItem> <valItem ident="title"><desc xml:lang="en">The value "title" reflects the title as written by Blotius.</desc></valItem> <valItem ident="note"><desc xml:lang="en">The value "note" is reserved for a note made by Blotius himself.</desc></valItem> + <valItem ident="dernschwam-number"><desc xml:lang="en" versionDate="2020-08-12">The value "dernschwam-number" reflects the number given by Hans Dernschwam to the title in his catalogue.</desc></valItem> </valList> </attDef> <attDef ident="ana" mode="delete"/> -- GitLab