<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns:csw="http://www.deegree.org/services/csw" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.deegree.org/services/csw"
  elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb"
  jaxb:version="3.0">
  <annotation>
    <appinfo>
      <jaxb:schemaBindings>
        <jaxb:package name="org.deegree.services.jaxb.csw" />
      </jaxb:schemaBindings>
    </appinfo>
  </annotation>
  <element name="deegreeCSW">
    <complexType>
      <sequence>
        <element name="SupportedVersions" minOccurs="0">
          <complexType>
            <sequence>
              <element name="Version" type="csw:CSWVersionType" maxOccurs="unbounded" />
            </sequence>
          </complexType>
        </element>
        <element name="MaxMatches" type="nonNegativeInteger" minOccurs="0" default="0">
          <annotation>
            <documentation>
              Controls the mode for determining the number of matching records for GetRecords records. If
              omitted (or set to 0), the number of matching records will be determined using a separate count query
              against the metadata store. Otherwise, record retrieval and determination of hits is performed using a
              single call against that metadata store. The latter can be much more efficient, if a metadata store
              contains a very large number of records, but it restricts the number of matches that are considered and
              accessible by GetRecords requests.
            </documentation>
          </annotation>
        </element>
        <element name="MetadataStoreId" type="string" minOccurs="0" />
        <element name="EnableTransactions" type="boolean" minOccurs="0" default="false">
          <annotation>
            <documentation>
              The CSW can be configured to state 'read-only' or 'read-write'. For 'read-only', the user is
              not able to change data. In this case the transaction operation is disabled. The default state is
              'read-only'. 			      
            </documentation>
          </annotation>
        </element>
        <element name="EnableInspireExtensions" minOccurs="0">
          <annotation>
            <documentation>
              Enable the INSPIRE extension (for ISO catalogues).
            </documentation>
          </annotation>
        </element>
        <element name="ExtendedCapabilities" type="anyURI" minOccurs="0">
          <annotation>
            <documentation>
              Reference to a XML-Snippet containing the extended capabilities which should be included 
              in the Capabilities document of this service.
            </documentation>
          </annotation>
        </element>
        <element name="ElementNames" minOccurs="0">
          <annotation>
            <documentation>
              Configure a set of ElementNames which can be used by the short name in the ElementName 
              element in GetRecords requests.
            </documentation>
          </annotation>
          <complexType>
            <sequence>
              <element ref="csw:ElementName" maxOccurs="unbounded" />
            </sequence>
          </complexType>
        </element>
      </sequence>
      <attribute name="configVersion" type="string" use="optional"/>
    </complexType>
  </element>
  <element name="ElementName">
    <complexType>
      <sequence>
        <element name="name">
          <complexType>
            <simpleContent>
              <extension base="string">
                <attribute name="namespace" type="anyURI" />
              </extension>
            </simpleContent>
          </complexType>
        </element>
        <element name="XPath" type="string" maxOccurs="unbounded">
          <annotation>
            <documentation>Supported namespace bindings are:
              gmd ->
              http://www.isotc211.org/2005/gmd
              srv ->
              http://www.isotc211.org/2005/srv
              gco ->
              http://www.isotc211.org/2005/gco
              gml3_2 ->
              http://www.opengis.net/gml/3.2
              gml ->
              http://www.opengis.net/gml
              Use the prefixes as defined
              above in the XPath expressions. 
            </documentation>
          </annotation>
        </element>
      </sequence>
    </complexType>
  </element>
  <simpleType name="CSWVersionType">
    <restriction base="string">
      <enumeration value="1.0.0" />
      <enumeration value="2.0.2" />
    </restriction>
  </simpleType>
</schema>