diff --git a/stammbuch.rng b/stammbuch.rng new file mode 100644 index 0000000000000000000000000000000000000000..1fb23918e58562d8d66952ea1a4d578f45192110 --- /dev/null +++ b/stammbuch.rng @@ -0,0 +1,886 @@ +<?xml version="1.0" encoding="utf-8"?> +<grammar xmlns="http://relaxng.org/ns/structure/1.0" + xmlns:tei="http://www.tei-c.org/ns/1.0" + xmlns:teix="http://www.tei-c.org/ns/Examples" + xmlns:xlink="http://www.w3.org/1999/xlink" + datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" + ns="http://www.tei-c.org/ns/1.0"><!-- +Schema generated from ODD source 2023-06-14T15:57:24Z. . +TEI Edition: Version 4.5.0. Last updated on + 25th October 2022, revision 3e98e619e +TEI Edition Location: https://www.tei-c.org/Vault/P5/Version 4.5.0/ + +--><!--[https://creativecommons.org/licenses/by-sa/4.0/] Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)--> + <sch:ns xmlns:sch="http://purl.oclc.org/dsdl/schematron" + prefix="tei" + uri="http://www.tei-c.org/ns/1.0"/> + <define name="model.phrase"> + <choice> + <ref name="choice"/> + <ref name="date"/> + <ref name="foreign"/> + <ref name="hi"/> + <ref name="ref"/> + <ref name="seg"/> + </choice> + </define> + <define name="model.global"> + <choice> + <ref name="lb"/> + <ref name="note"/> + </choice> + </define> + <define name="abbr"> + <element name="abbr"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <ref name="g"/> + </element> + </define> + <define name="availability"> + <element name="availability"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <ref name="licence"/> + </element> + </define> + <define name="bibl"> + <element name="bibl"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <mixed> + <ref name="ptr"/> + <optional> + <ref name="citedRange"/> + </optional> + </mixed> + <mixed> + <optional> + <ref name="ptr"/> + </optional> + <ref name="citedRange"/> + </mixed> + <mixed> + <ref name="ref"/> + <optional> + <ref name="citedRange"/> + </optional> + </mixed> + <text/> + </choice> + </element> + </define> + <define name="body"> + <element name="body"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <ref name="div"/> + </oneOrMore> + </element> + </define> + <define name="char"> + <element name="char"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <group> + <optional> + <ref name="mapping"/> + </optional> + <optional> + <ref name="figure"/> + </optional> + <optional> + <ref name="note"/> + </optional> + </group> + <attribute name="xml:id"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="ID"/> + </attribute> + <empty/> + </element> + </define> + <define name="charDecl"> + <element name="charDecl"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <ref name="char"/> + </oneOrMore> + </element> + </define> + <define name="choice"> + <element name="choice"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <group> + <ref name="abbr"/> + <ref name="expan"/> + </group> + </element> + </define> + <define name="citedRange"> + <element name="citedRange"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + <optional> + <attribute name="target"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="anyURI"/> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="date"> + <element name="date"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <choice> + <ref name="model.phrase"/> + <ref name="model.global"/> + <ref name="g"/> + <ref name="bibl"/> + <ref name="index"/> + <ref name="rs"/> + <text/> + </choice> + </oneOrMore> + <optional> + <attribute name="notAfter-iso"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <data type="gYear"/> + <data type="gYearMonth"/> + <data type="date"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="notBefore-iso"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <data type="gYear"/> + <data type="gYearMonth"/> + <data type="date"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="when-iso"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <data type="gYear"/> + <data type="gYearMonth"/> + <data type="date"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="precision"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <value>high</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>low</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </choice> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="desc"> + <element name="desc"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + </element> + </define> + <define name="div"> + <element name="div"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <interleave> + <zeroOrMore> + <ref name="p"/> + </zeroOrMore> + <zeroOrMore> + <ref name="div"/> + </zeroOrMore> + <optional> + <ref name="list"/> + </optional> + <optional> + <ref name="listBibl"/> + </optional> + <zeroOrMore> + <ref name="figure"/> + </zeroOrMore> + </interleave> + <optional> + <attribute name="type"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </attribute> + </optional> + <optional> + <attribute name="subtype"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <value>Leerseite</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xml:id"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="ID"/> + </attribute> + </optional> + <optional> + <attribute name="xml:lang"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="editor"> + <element name="editor"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <ref name="persName"/> + <attribute name="xml:id"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="ID"/> + </attribute> + <empty/> + </element> + </define> + <define name="encodingDesc"> + <element name="encodingDesc"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <group> + <ref name="tagsDecl"/> + <ref name="listPrefixDef"/> + <ref name="charDecl"/> + </group> + </element> + </define> + <define name="expan"> + <element name="expan"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + </element> + </define> + <define name="figure"> + <element name="figure"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <ref name="graphic"/> + </element> + </define> + <define name="fileDesc"> + <element name="fileDesc"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <group> + <ref name="titleStmt"/> + <ref name="publicationStmt"/> + <ref name="sourceDesc"/> + </group> + </element> + </define> + <define name="foreign"> + <element name="foreign"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <choice> + <ref name="model.phrase"/> + <ref name="model.global"/> + <ref name="g"/> + <ref name="bibl"/> + <ref name="index"/> + <ref name="rs"/> + <text/> + </choice> + </oneOrMore> + <attribute name="xml:lang"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </attribute> + <empty/> + </element> + </define> + <define name="forename"> + <element name="forename"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + </element> + </define> + <define name="g"> + <element name="g"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + <optional> + <attribute name="ref"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <value>#etc</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>#etc2</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>#fermesse</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </choice> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="graphic"> + <element name="graphic"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <optional> + <ref name="desc"/> + </optional> + <attribute name="url"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="string"/> + </attribute> + <optional> + <attribute name="mimeType"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <value>svg+xml</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>image/jpeg</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>image/jpg</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>image/png</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </choice> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="handNote"> + <element name="handNote"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + <attribute name="xml:id"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="ID"/> + </attribute> + <empty/> + </element> + </define> + <define name="handNotes"> + <element name="handNotes"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <ref name="handNote"/> + </oneOrMore> + </element> + </define> + <define name="hi"> + <element name="hi"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <choice> + <ref name="model.phrase"/> + <ref name="model.global"/> + <ref name="g"/> + <ref name="bibl"/> + <ref name="index"/> + <ref name="rs"/> + <text/> + </choice> + </oneOrMore> + <optional> + <attribute name="rendition"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <value>#i</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </choice> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="idno"> + <element name="idno"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + <attribute name="type"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <value>shelfmark</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </choice> + </attribute> + <empty/> + </element> + </define> + <define name="index"> + <element name="index"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <ref name="term"/> + </element> + </define> + <define name="item"> + <element name="item"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <ref name="term"/> + </element> + </define> + <define name="lb"> + <element name="lb"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <rng:empty xmlns:rng="http://relaxng.org/ns/structure/1.0"/> + </element> + </define> + <define name="licence"> + <element name="licence"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <ref name="p"/> + <attribute name="target"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="anyURI"/> + </attribute> + <empty/> + </element> + </define> + <define name="list"> + <element name="list"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <ref name="item"/> + </oneOrMore> + </element> + </define> + <define name="listBibl"> + <element name="listBibl"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <ref name="bibl"/> + </oneOrMore> + </element> + </define> + <define name="listPrefixDef"> + <element name="listPrefixDef"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <ref name="prefixDef"/> + </oneOrMore> + </element> + </define> + <define name="mapping"> + <element name="mapping"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + <attribute name="type"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <value>MUFI</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>standard</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </choice> + </attribute> + <empty/> + </element> + </define> + <define name="msDesc"> + <element name="msDesc"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <ref name="msIdentifier"/> + </element> + </define> + <define name="msIdentifier"> + <element name="msIdentifier"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <group> + <ref name="repository"/> + <ref name="idno"/> + </group> + </element> + </define> + <define name="note"> + <element name="note"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <choice> + <ref name="model.phrase"/> + <ref name="model.global"/> + <ref name="g"/> + <ref name="bibl"/> + <ref name="index"/> + <ref name="rs"/> + <text/> + </choice> + </oneOrMore> + <optional> + <attribute name="type"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <value>Anmerkung</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>Glossar</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>Textfeldbeschreibung</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>Übersetzung</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </choice> + </attribute> + </optional> + <optional> + <attribute name="xml:lang"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="p"> + <element name="p"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <choice> + <ref name="model.phrase"/> + <ref name="model.global"/> + <ref name="g"/> + <text/> + <ref name="bibl"/> + <ref name="index"/> + <ref name="rs"/> + </choice> + </oneOrMore> + <optional> + <attribute name="hand"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="anyURI"/> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="persName"> + <element name="persName"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <group> + <ref name="forename"/> + <ref name="surname"/> + </group> + <optional> + <attribute name="ref"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="anyURI"/> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="prefixDef"> + <element name="prefixDef"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <ref name="p"/> + <attribute name="ident"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <value>lit</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>psn</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>img</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>img2</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </choice> + </attribute> + <attribute name="matchPattern"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <value>(.+)</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </choice> + </attribute> + <attribute name="replacementPattern"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <value>https://stammbuch.hab.de/informationen-zur-edition/bibliographie/$1</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>https://stammbuch.hab.de/register/personen/$1</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>https://stammbuch.hab.de/cms/uploads/$1</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <value>https://stammbuch.hab.de/img/register/$1</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </choice> + </attribute> + <empty/> + </element> + </define> + <define name="profileDesc"> + <element name="profileDesc"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <optional> + <ref name="handNotes"/> + </optional> + </element> + </define> + <define name="ptr"> + <element name="ptr"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <empty/> + <attribute name="target"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="anyURI"/> + </attribute> + <empty/> + </element> + </define> + <define name="publicationStmt"> + <element name="publicationStmt"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <group> + <optional> + <ref name="publisher"/> + </optional> + <optional> + <ref name="date"/> + </optional> + <optional> + <ref name="availability"/> + </optional> + <optional> + <ref name="idno"/> + </optional> + <optional> + <ref name="p"/> + </optional> + </group> + </element> + </define> + <define name="publisher"> + <element name="publisher"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + </element> + </define> + <define name="ref"> + <element name="ref"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <choice> + <ref name="model.phrase"/> + <ref name="model.global"/> + <ref name="g"/> + <ref name="bibl"/> + <text/> + </choice> + </oneOrMore> + <optional> + <attribute name="target"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="anyURI"/> + </attribute> + </optional> + <pattern xmlns="http://purl.oclc.org/dsdl/schematron" + id="stammbuch-ref-target-uri-constraint-rule-1"> + <sch:rule xmlns="http://www.tei-c.org/ns/1.0" + xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" + xmlns:rng="http://relaxng.org/ns/structure/1.0" + xmlns:sch="http://purl.oclc.org/dsdl/schematron" + context="tei:ref[starts-with(@target,'http')]"> + <sch:assert test="matches(@target,'^https?://\S+$')">ungültiger Hyperlink</sch:assert> + </sch:rule> + </pattern> + <optional> + <attribute name="type"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <value>Abbildungsverweis</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </choice> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="rendition"> + <element name="rendition"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + <attribute name="scheme"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <choice> + <value>css</value> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </choice> + </attribute> + <attribute name="xml:id"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="ID"/> + </attribute> + <empty/> + </element> + </define> + <define name="repository"> + <element name="repository"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + </element> + </define> + <define name="resp"> + <element name="resp"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + <attribute name="ref"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="anyURI"/> + </attribute> + <empty/> + </element> + </define> + <define name="respStmt"> + <element name="respStmt"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <group> + <ref name="resp"/> + <ref name="persName"/> + </group> + </element> + </define> + <define name="rs"> + <element name="rs"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <choice> + <ref name="model.phrase"/> + <ref name="model.global"/> + <ref name="g"/> + <ref name="bibl"/> + <text/> + </choice> + </oneOrMore> + <attribute name="type"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + </attribute> + <attribute name="ref"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="anyURI"/> + </attribute> + <empty/> + </element> + </define> + <define name="seg"> + <element name="seg"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <choice> + <ref name="model.phrase"/> + <ref name="model.global"/> + <ref name="g"/> + <ref name="bibl"/> + <ref name="index"/> + <ref name="rs"/> + <text/> + </choice> + </oneOrMore> + <attribute name="hand"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="anyURI"/> + </attribute> + <empty/> + </element> + </define> + <define name="sourceDesc"> + <element name="sourceDesc"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <group> + <optional> + <choice> + <ref name="bibl"/> + <ref name="msDesc"/> + </choice> + </optional> + <optional> + <ref name="p"/> + </optional> + </group> + </element> + </define> + <define name="surname"> + <element name="surname"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + </element> + </define> + <define name="tagsDecl"> + <element name="tagsDecl"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <ref name="rendition"/> + </element> + </define> + <define name="TEI"> + <element name="TEI"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <group> + <ref name="teiHeader"/> + <ref name="text"/> + </group> + <optional> + <attribute name="xml:id"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="ID"/> + </attribute> + </optional> + <empty/> + </element> + </define> + <define name="teiHeader"> + <element name="teiHeader"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <oneOrMore> + <choice> + <ref name="fileDesc"/> + <ref name="encodingDesc"/> + <ref name="profileDesc"/> + </choice> + </oneOrMore> + </element> + </define> + <define name="term"> + <element name="term"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + <attribute name="ref"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <data type="anyURI"/> + </attribute> + <empty/> + </element> + </define> + <define name="text"> + <element name="text"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <ref name="body"/> + </element> + </define> + <define name="title"> + <element name="title"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <text/> + </element> + </define> + <define name="titleStmt"> + <element name="titleStmt"> + <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"/> + <group> + <ref name="title"/> + <ref name="editor"/> + <oneOrMore> + <ref name="respStmt"/> + </oneOrMore> + </group> + </element> + </define> + <start> + <ref name="TEI"/> + </start> +</grammar>