Files
KGPZ/XSD/beitraege.xsd
Simon Martens 1a1ca1fb93 + Beitrag-IDs
2025-09-22 19:33:06 +02:00

108 lines
4.6 KiB
XML

<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="https://www.koenigsberger-zeitungen.de"
xmlns="https://www.koenigsberger-zeitungen.de"
xmlns:kgpz="https://www.koenigsberger-zeitungen.de"
elementFormDefault="qualified">
<xsd:include schemaLocation="common.xsd"></xsd:include>
<xsd:element name="beitraege">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="beitrag" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:choice minOccurs="1" maxOccurs="unbounded">
<xsd:element name="stueck" type="kgpz:stueckref">
<xsd:annotation>
<xsd:documentation>Verweist auf ein Stück oder eine Beilage, in der ein Beitrag veröffentlicht
wurde. Darf mehrmals vorkommen.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:choice>
<xsd:element name="kategorie" minOccurs="0" maxOccurs="unbounded" type="kgpz:ref">
<xsd:annotation>
<xsd:documentation>Optional: Verweis auf eine Kategorie, in die der Beitrag
eingeordnet werden kann.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="datum" type="kgpz:date" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>Optional: Das Datum, welches im Beitrag angegeben ist.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="titel" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>Optional: Der Titel des Beitrags.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="incipit" type="kgpz:NonEmptyString" minOccurs="0" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>Optional: Der Anfang des Beitrags.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:choice minOccurs="0" maxOccurs="unbounded">
<xsd:element name="werk" type="kgpz:werkref">
<xsd:annotation>
<xsd:documentation>Optional: Verweis auf ein Werk.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="beitrag" type="kgpz:beitragref">
<xsd:annotation>
<xsd:documentation>Optional: Verweis auf einen Beitrag.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="akteur" type="kgpz:akteurref">
<xsd:annotation>
<xsd:documentation>Optional: Verweis auf eine Person, die mit dem Beitrag in
Verbindung steht.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="ort" type="kgpz:ortref">
<xsd:annotation>
<xsd:documentation>Optional: Der Ort, welcher im Beitrag angegeben ist.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:choice>
<xsd:element name="anmerkung" type="kgpz:text" minOccurs="0"
maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>Optional: Eine Anmerkung zum Beitrag. Öffentlich.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="vermerk" type="kgpz:text" minOccurs="0"
maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>Optional: Ein Vermerk zum Beitrag. Intern.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:string" use="required">
<xsd:annotation>
<xsd:documentation>Pflicht: Eindeutige ID des Beitrags.</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:unique name="uniqueIndexBeitrag">
<xsd:annotation>
<xsd:documentation>Pflicht: jede vergebene ID eines Beitrags ist eindeutig.</xsd:documentation>
</xsd:annotation>
<xsd:selector xpath="kgpz:beitrag" />
<xsd:field xpath="@id" />
</xsd:unique>
</xsd:element>
</xsd:schema>