<?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:element name="werke">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element name="werk" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>Ein Werk im Werkeverzeichnis Pflicht: @id,
                            &lt;zitation&gt;.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:element name="akteur" type="kgpz:akteurref" minOccurs="0" maxOccurs="unbounded" />
                            <xsd:element name="ort" type="kgpz:ortref" minOccurs="0" maxOccurs="unbounded" />
                            <xsd:element name="werk" type="kgpz:werkref" minOccurs="0" maxOccurs="unbounded"/>
                            <xsd:element name="zitation" type="kgpz:NonEmptyString" minOccurs="1"
                                maxOccurs="1">
                                <xsd:annotation>
                                    <xsd:documentation>Pflicht: Unstrukturierte Zitation des Werkes.</xsd:documentation>
                                </xsd:annotation>
                            </xsd:element>

                            <xsd:element name="url" minOccurs="0" maxOccurs="unbounded">
                                <xsd:annotation>
                                    <xsd:documentation>Optional: URLs zum Werk.</xsd:documentation>
                                </xsd:annotation>
                                <xsd:complexType>
                                    <xsd:simpleContent>
                                        <xsd:extension base="xsd:string">
                                            <xsd:attribute name="address" type="xsd:anyURI">
                                                <xsd:annotation>
                                                    <xsd:documentation>Pflicht: Die URL zum Werk.</xsd:documentation>
                                                </xsd:annotation>
                                            </xsd:attribute>
                                            <xsd:attribute name="type" type="kgpz:NonEmptyString"
                                                use="optional" default="Digitalisat">
                                                <xsd:annotation>
                                                    <xsd:documentation>Optional: Der Typ der
                                                        Resource. Default: Digitalisat</xsd:documentation>
                                                </xsd:annotation>
                                            </xsd:attribute>
                                        </xsd:extension>
                                    </xsd:simpleContent>
                                </xsd:complexType>
                            </xsd:element>

                            <xsd:element name="anmerkung" type="kgpz:NonEmptyString" minOccurs="0"
                                maxOccurs="unbounded">
                                <xsd:annotation>
                                    <xsd:documentation>Optional: Eine Anmerkung zum Werk.
                                        Öffentlich.</xsd:documentation>
                                </xsd:annotation>
                            </xsd:element>

                            <xsd:element name="vermerk" type="kgpz:NonEmptyString" minOccurs="0"
                                maxOccurs="unbounded">
                                <xsd:annotation>
                                    <xsd:documentation>Optional: Ein Vermerk zum Werk. 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 Werkes.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                    </xsd:complexType>
                </xsd:element>
            </xsd:sequence>
        </xsd:complexType>
        <xsd:unique name="uniqueId">
            <xsd:annotation>
                <xsd:documentation>Pflicht: Jedes Werk hat eine eindeutige ID.</xsd:documentation>
            </xsd:annotation>

            <xsd:selector xpath="kgpz:werk" />
            <xsd:field xpath="@id" />
        </xsd:unique>
    </xsd:element>
</xsd:schema>
