Erklärung und Ergänzung Schemata

This commit is contained in:
Simon Martens
2024-05-08 18:31:39 +02:00
parent 9f354952e8
commit 43fd4b7127
13 changed files with 120 additions and 91 deletions

View File

@@ -19,6 +19,7 @@
<!-- TODO: URI FOR GND -->
<xsd:element name="gnd" minOccurs="0" maxOccurs="1" type="xsd:anyURI" nillable="false" />
<xsd:element name="anmerkung" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="vermerk" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:string" use="required" />
</xsd:complexType>

View File

@@ -11,7 +11,6 @@
<xsd:sequence>
<xsd:element name="beitrag" maxOccurs="unbounded">
<xsd:complexType>
<xsd:choice>
<xsd:sequence>
<xsd:choice>
<xsd:element name="stueck" type="kgpz:StueckBeitragRef"
@@ -25,30 +24,8 @@
minOccurs="1" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:choice>
<xsd:element name="titel" type="kgpz:NonEmptyString" minOccurs="1"
maxOccurs="1" />
<xsd:element name="incipit" type="kgpz:NonEmptyString" minOccurs="0"
maxOccurs="1" />
<xsd:group ref="kgpz:BeitragInfo" />
</xsd:sequence>
<xsd:sequence>
<xsd:choice>
<xsd:element name="stueck" type="kgpz:StueckBeitragRef"
minOccurs="1" maxOccurs="unbounded" />
<xsd:element name="beilage" type="kgpz:StueckBeilageRef"
minOccurs="1" maxOccurs="unbounded" />
<xsd:sequence>
<xsd:element name="stueck" type="kgpz:StueckBeitragRef"
minOccurs="1" maxOccurs="unbounded" />
<xsd:element name="beilage" type="kgpz:StueckBeilageRef"
minOccurs="1" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:choice>
<xsd:element name="incipit" type="kgpz:NonEmptyString" minOccurs="1"
maxOccurs="1" />
<xsd:group ref="kgpz:BeitragInfo" />
</xsd:sequence>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
@@ -82,34 +59,15 @@
<xsd:group name="BeitragInfo">
<xsd:sequence>
<xsd:element name="datum" type="xsd:date" minOccurs="1"
maxOccurs="1" />
<xsd:element name="ort" minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:attribute name="ref" type="kgpz:NonEmptyString"
use="required" />
</xsd:complexType>
</xsd:element>
<xsd:element name="autorschaft" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:attribute name="ref" type="kgpz:NonEmptyString"
use="required" />
</xsd:complexType>
</xsd:element>
<xsd:element name="kategorie" minOccurs="1" maxOccurs="unbounded">
<xsd:complexType>
<xsd:attribute name="ref" type="kgpz:NonEmptyString"
use="required" />
</xsd:complexType>
</xsd:element>
<xsd:element name="rezensiert" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:attribute name="ref" type="kgpz:NonEmptyString"
use="required" />
</xsd:complexType>
</xsd:element>
<xsd:element name="anmerkung" type="kgpz:NonEmptyString" minOccurs="0"
maxOccurs="unbounded" />
<xsd:element name="titel" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="1" />
<xsd:element name="incipit" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="1" />
<xsd:element name="datum" type="xsd:date" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="ort" minOccurs="0" maxOccurs="unbounded" type="kgpz:ref" />
<xsd:element name="autor" minOccurs="0" maxOccurs="unbounded" type="kgpz:ref" />
<xsd:element name="kategorie" minOccurs="1" maxOccurs="unbounded" type="kgpz:ref" />
<xsd:element name="rezensiert" minOccurs="0" maxOccurs="unbounded" type="kgpz:ref" />
<xsd:element name="anmerkung" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="vermerk" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:group>
</xsd:schema>

View File

@@ -17,4 +17,13 @@
<xsd:maxInclusive value="2024" />
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="ref">
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="ref" use="required" type="kgpz:NonEmptyString" />
<xsd:attribute name="unsicher" use="optional" default="false" type="xsd:boolean" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:schema>

View File

@@ -15,8 +15,9 @@
<xsd:sequence>
<xsd:element name="name" type="NonEmptyString" minOccurs="1" maxOccurs="1" nillable="false" />
<xsd:element name="anmerkung" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="vermerk" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
<xsd:attribute name="id" type="xsd:integer" use="required" />
<xsd:attribute name="id" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:sequence>

View File

@@ -17,6 +17,7 @@
<!-- TODO: geonames URI regex -->
<xsd:element name="geonames" type="xsd:anyURI" minOccurs="0" maxOccurs="1" nillable="false" />
<xsd:element name="anmerkung" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="vermerk" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
<xsd:attribute name="id" type="xsd:string" use="required" />
</xsd:complexType>

View File

@@ -24,7 +24,8 @@
<xsd:element name="beilagen" type="xsd:nonNegativeInteger" default="0" minOccurs="0" maxOccurs="1"/>
<!-- Vielleicht nötig -->
<xsd:element name="anmerkung" type="kgpz:NonEmptyString" />
<xsd:element name="anmerkung" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="vermerk" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="nummer" type="xsd:integer" use="required" />
</xsd:complexType>

View File

@@ -13,9 +13,11 @@
<xsd:element name="werk" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="daten" type="kgpz:citation" minOccurs="0" maxOccurs="1" />
<xsd:element name="zitation" type="NonEmptyString" minOccurs="0" maxOccurs="1" />
<xsd:group ref="citation" />
<xsd:element name="zitation" type="NonEmptyString" minOccurs="1" maxOccurs="1" />
<xsd:element name="url" type="xsd:anyURI" minOccurs="0" maxOccurs="unbounded"></xsd:element>
<xsd:element name="anmerkung" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="vermerk" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
<xsd:attribute name="id" type="xsd:string" use="required" />
</xsd:complexType>
@@ -28,18 +30,14 @@
</xsd:unique>
</xsd:element>
<xsd:complexType name="citation">
<xsd:group name="citation">
<xsd:sequence>
<xsd:element name="autorschaft" type="NonEmptyString" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="herausgabe" type="NonEmptyString" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="druck" type="NonEmptyString" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="verlag" type="NonEmptyString" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="vertrieb" type="NonEmptyString" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="ausgabe" type="NonEmptyString" minOccurs="0" maxOccurs="1" />
<xsd:element name="titel" type="NonEmptyString" minOccurs="0" maxOccurs="1" />
<xsd:element name="titelannotation" type="NonEmptyString" minOccurs="0" maxOccurs="1" />
<xsd:element name="jahr" type="NonEmptyString" minOccurs="0" maxOccurs="1" />
<xsd:element name="ort" type="NonEmptyString" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="autor" type="kgpz:ref" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="herausgabe" type="kgpz:ref" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="druck" type="kgpz:ref" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="verlag" type="kgpz:ref" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="vertrieb" type="kgpz:ref" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="jahr" type="kgpz:Year" minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:group>
</xsd:schema>

View File

@@ -2,11 +2,17 @@
<akteure xmlns="https://www.kgpz.de"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://www.kgpz.de XSD/KGPZ.xsd">
<akteur id="1">
<akteur id="einstein">
<!-- Pflicht sind: das Attribut id, <name> und <sortiername> -->
<name>Albert Einstein</name>
<!-- Für mehrere mögliche Namen gibt sind mehrere Namen-Tags möglich: -->
<name>Ainshutain, A.</name>
<sortiername>Einstein, Albert</sortiername>
<lebensdaten>1955-04-18</lebensdaten>
<lebensdaten>1889-1951</lebensdaten>
<!-- Die GND-Angabe muss einmalig im Dokument sein -->
<gnd>https://d-nb.info/gnd/118529579</gnd>
<anmerkung>Dies ist eine Anmerkung</anmerkung>
<anmerkung>Es kann auch mehrere Anmerkungen geben!</anmerkung>
<vermerk>Das ist ein Bearbeitungvermerk!</vermerk>
</akteur>
</akteure>

View File

@@ -3,12 +3,45 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://www.kgpz.de XSD/KGPZ.xsd">
<beitrag>
<stueck jahr="1752" nr="23" von="2" />
<!-- Notwendig sind:
- <beilage jahr="" nummer="" zaehlung=""> oder <stueck jahr="" nr="" von="">
- <kategorie ref="">
-->
<!-- Beispiel für einen Beitrag in zwei Stücken -->
<!-- Das bis-Attribut ist erforderlich falls der Beitrag Seitengrenzen überschreitet -->
<stueck jahr="1752" nr="23" von="2" bis="3" />
<stueck jahr="1799" nr="12" von="5" />
<titel>Was</titel>
<!-- Ein Beitrag kann einen Titel, ein Incipit, beides oder nichts davon haben: -->
<incipit>Incipit</incipit>
<datum>1762-12-12</datum>
<ort ref="ort">Die Zuordung eines Beitrags zu einem Ort kann annotiert werden</ort>
<autor ref="autor">Die Zuordnung eines Beitrags zu einem Autor kann annotiert werden</autor>
<!-- oder auch nicht: -->
<autor ref="einstein"/>
<!-- Es kann mehrere Orte, Kategorien oder Autoren geben: -->
<kategorie ref="kategorie" />
<kategorie ref="kategorie2" />
<rezensiert ref="werk">Auch die Zuordnung zu einer Werkrezension kann annotiert werden</rezensiert>
<anmerkung>Anmerkung</anmerkung>
<vermerk>Bearbeitungsvermerk</vermerk>
</beitrag>
<beitrag>
<!-- Beispiel für einen Beitrag in einer Beilage -->
<beilage jahr="1762" nr="12" beilage="1" />
<titel>Was</titel>
<incipit>Incipit</incipit>
<datum>1762-12-12</datum>
<ort ref="ort" />
<autorschaft ref="autor" />
<!-- alle Zuordnungen können mit unsicher="true" ausgezeichnet werden, es sich um eine Vermutung handelt -->
<!-- Standardwert ist unsicher="false" -->
<autor ref="autor" unsicher="true">Vgl. Herder Brief 1234</autor>
<autor ref="weitererautor" />
<kategorie ref="kategorie" />
</beitrag>
<beitrag>
<!-- Minimales Beispiel: -->
<stueck jahr="1752" nr="23" von="2" bis="3" />
<kategorie ref="währungskurse"></kategorie>
</beitrag>
</beitraege>

View File

@@ -3,12 +3,17 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://www.kgpz.de XSD/KGPZ.xsd">
<kategorie id="1">
<name>Wissenschaft</name>
<!-- Attribut @id + <name> müssen vorhanden sein -->
<name>Rezension</name>
<anmerkung>Anmerkung</anmerkung>
<vermerk>Bearbeitungsvermerk</vermerk>
</kategorie>
<kategorie id="2">
<name>Technik</name>
<name>Weckselkurse</name>
</kategorie>
<kategorie id="3">
<name>Politik</name>
<name>Tanzanleitung</name>
<anmerkung>Ja</anmerkung>
<vermerk>Darf nicht leer sein</vermerk>
</kategorie>
</kategorien>

View File

@@ -3,8 +3,12 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://www.kgpz.de XSD/KGPZ.xsd">
<ort id="1">
<name>Hallo</name>
<geonames></geonames>
<!-- das Attribut id + <name> müssen vorhanden sein -->
<name>Königsberg</name>
<!-- geonames muss im Dokument eindeutig sein -->
<geonames>https://www.geonames.org/554234</geonames>
<anmerkung>Anmerkung</anmerkung>
<vermerk>Vermerk</vermerk>
</ort>
<ort id="2">
<name>Hans2</name>

View File

@@ -3,10 +3,12 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://www.kgpz.de XSD/KGPZ.xsd">
<stueck nummer="1">
<!-- Alle Tags und Attribute außer Anmerkung und Vermerk sind Pflicht -->
<datum>1970-01-01</datum>
<von>1</von>
<bis>4</bis>
<beilagen>3</beilagen>
<anmerkung>Anmerkung</anmerkung>
<vermerk>Bearbeitungsvermerk</vermerk>
</stueck>
</stuecke>

View File

@@ -3,10 +3,20 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://www.kgpz.de XSD/KGPZ.xsd">
<werk id="1">
<!-- mehrere oder auch gar keine Autoren sind erlaubt-->
<autor ref="23"/>
<autor ref="12">Die Zurordnung eines Werkes zu einem Autor kann charakterisiert werden (Quellen oä.)</autor>
<!-- jahr zur Filterung und Sortierung notwendig -->
<jahr>1783</jahr>
<zitation>Unstrukturierte bibliographische Zitation</zitation>
<url>https://URL.de</url>
<!-- meherere Anmerkungen und Vermerke sind erlaubt -->
<anmerkung>Eine Anmerkung</anmerkung>
<vermerk>Ein Bearbeitungsvermerk</vermerk>
<vermerk>Ein Bearbeitungsvermerk</vermerk>
</werk>
<werk id="2">
<!-- minimaler Eintrag; das Attribut "id" und <zitation> müssen vorhanden sein. -->
<zitation>Hans</zitation>
<anmerkung>Anmerkungen</anmerkung>
</werk>
</werke>