Skip To Content

Katalog-Service

In diesem Thema

Katalog-Service des Geoportals

Wenn das Geoportal ein Auto wäre, wäre der Katalog-Service des Geoportals sein Motor. Er steuert andere Komponenten, verwaltet Transaktionen und bietet die zentrale Schnittstelle für die Suche, Veröffentlichung und Validierung von Metadaten. Ab Version 9.3 verfügt das Geoportal über eine Implementierung der Open Geospatial Consortium (OGC) Catalog Service for the Web (CS-W) 2.0.2-Schnittstellenspezifikation. Der Link zu diesem Dienst folgt in der Regel dem Format unten:

http://serverName:port/geoportal/csw?Request=GetCapabilities&Service=CSW&Version=2.0.2
wobei
  • serverName der Name des Geoportal-Webservers ist
  • port die Portnummer des Geoportals ist
Der Geoportal CS-W-Service ermöglicht die Unterstützung für beliebige Metadatenschemas ohne die Suchkomponente des Geoportals zu verkomplizieren. Wenn ein Metadatendokument im Geoportal veröffentlicht wird, bleiben die ursprünglichen Metadaten unverändert erhalten und werden verwendet, wenn die Metadaten im Online-Formular bearbeitet werden oder wenn die vollständigen Metadaten als Teil der Suchergebnisse angezeigt werden. Gleichzeitig ist das Geoportal in der Lage, suchbare Elemente in eine einheitliche Struktur zu extrahieren, Domänenwerte in Metadatennormen zu standardisieren, die Themenkategoriecodes oder Inhaltstypen der Metadatendokumente zu bestimmen, Schlüsselinhalt für die Verbindung mit Online-Ressourcen auszuwählen und dem Datensatz einen eindeutigen Identifikator zuzuweisen. Die Funktionen der Geoportal CS-W-Implementation werden beschrieben und Beispielanforderungen und Antworten werden in die Abschnitte unten aufgenommen. Weitere Informationen zu den Web-Service-Definitionsdateien finden Sie unter Geoportal-WSDL.

Einzelheiten der CS-W-Benutzeroberfläche

  1. UNTERSTÜTZTE OPERATIONEN: Die Geoportal CS-W-Implementierung unterstützt sowohl die verpflichtenden CS-W-Anforderungen als auch die optionalen GetRecordsById- und Transaction-Anforderungen. Die Transaktionsanforderungen veröffentlichen oder aktualisieren nur gesamte Dokumente. Die Transaktionsanforderung delete basiert ausschließlich auf dem Datei-Identifikator. Geoportal-Publisher-Berechtigungen zum Ausführen der Transaktionsanforderungen müssen im HTTP-Header in der Client-Anwendung erhalten sein, die die CS-W-Anforderung sendet. Der Header und die Anmeldeinformationen der Client-Anwendung müssen den Http-Autorisierungsstandards folgen. Die Operationen GetDomain und Harvest werden derzeit nicht unterstützt.
    Hinweis:

    In der Tabelle unten gibt die Spalte Verpflichtung an, ob die Operation verpflichtend oder optional ist. Verpflichtende Operationen, die für den Dienst erforderlich sind, müssen mit dieser CS-W-Spezifikation minimal kompatibel sein. Optionale Operationen sind laut CS-W-Spezifikation nicht erforderlich.

    Tabelle 1: Unterstützte CS-W-Operationen

    Operation VerpflichtungUnterstütztBindung

    GetCapabilities

    Verpflichtend

    Ja

    KVP+POST+SOAP

    DescribeRecord

    Verpflichtend

    Ja

    KVP+POST+SOAP

    GetRecords

    Verpflichtend

    Ja

    KVP+POST+SOAP

    GetRecordById

    optional

    Ja

    KVP+POST+SOAP

    GetDomain

    optional

    Nein

    N/A

    Harvest

    optional

    Nein

    N/A

    Transaktion

    optional

    Ja

    POST+SOAP

    Für jede der unterstützten Operationen unterstützt die Geoportal CS-W-Implementierung KVP-, POST- und SOAP-Implementierungen.
  2. NAMESPACES: Die folgende Tabelle listet die Namespace-Präfix-Deklarationen auf, die in diesem Dokument und den dazugehörigen Spezifikationen und Versionen verwendet werden.

    Tabelle 2: Namespace-Präfix-Deklarationen

    PräfixNamespace-URISpezifikation

    csw

    http://www.opengis.net/cat/csw/2.0.2

    OGC Catalogue Services 2.0.2, Corrigendum 2 Release, OGC 07-006r1

    ows

    http://www.opengis.net/ows

    OGC Common 1.0.0

    ogc

    http://www.opengis.net/ogc

    OGC Filter 1.1.0

    gml

    http://www.opengis.net/gml

    GML 3.0.0

    dc

    http://purl.org/dc/elements/1.1/

    Dublin Core

    dct

    http://purl.org/dc/terms

    Dublin Core-Bedingungen

    gmd

    http://www.isotc211.org/2005/gmd

    ISO 19115/19139

    SOAP-ENV

    http://schemas.xmlsoap.org/soap/envelope

    SOAP Version 1.1

    env

    http://www.w3.org/2003/05/soap-envelope/

    SOAP Version 1.2

  3. WICHTIGE ABFRAGBARE EIGENSCHAFTEN: Die Geoportal CS-W-Implementierung unterstützt wichtige abfragbare Eigenschaften, und zwar die, die im CSW ISO-Anwendungsprofil unterstützt werden sowie zusätzliche abfragbare Eigenschaften (gilt nur für ISO-Metadaten). Das Geoportal-Informationsmodell wird von XML-Dokumenten und einer Spatial-Database gesichert. Seine XML-Dokumente enthalten FGDC, ISO 19139, Dublin Core oder andere XML-Elemente und Attribute. Unten befindet sich eine Tabelle, in der wichtige abfragbare Eigenschaften des OGC Catalog Elementen im Geoportal-Informationsmodell zugeordnet werden. Die übrigen abfragbaren Eigenschaften , die sich auf ISO 19115 und ISO 19119 Metadaten verlassen, folgen getreu den Namen und Zuordnungen, die in OpenGIS® Catalogue Services Specification 2.0.2 - ISO Metadata Application Profile und Technical-Guidance-Dokument zur Implementierung der INSPIRE Discovery Services Technical Guidance Version 2.12 definiert werden.

    Tabelle 3: Wichtige abfragbare Beschreibung und Zuordnung

    NameAliasnamenDefinitionDatentyp Zulässige OGC-EigenschaftenfilterZuordnung zu Informationsmodell

    dc:identifier

    fileIdentifier, fid, id, identifier, fileID

    Eine eindeutige Referenz zur Ressource innerhalb eines gegebenen Kontextes.

    Zeichenfolge

    Alle *

    ISO 19139: /gmd:MD_Metadata/gmd:fileIdentifier/gco:CharacterString Dublin Core:/rdf:RDF/rdf:Description/dc:identifier FGDC: Vom System vergebener Identifikator, da FGDC dafür keine Bestimmung enthält.

    dct:modified

    modified, dc:date, date

    Datum, an dem die Ressource zuletzt geändert wurde.

    Zeichenfolge im Datumsformat (JJJJ-MM-TT)

    Sämtliche * sind zulässig, abgesehen von ogc:PropertyIsLike

    Gespeichert in Datenbank. Gelesen aus den Dateisysteminformationen

    ows:BoundingBox

    geometry, envelope

    Ein Begrenzungsrechteck zur Identifizierung eines geografischen Bereichs von Interesse.

    gml:Envelope, gml:Point

    Satz an räumlichen Operatoren (siehe Abschnitt unten zu räumlichen Abfragen)

    Die Beispiele sind für "West", verwenden Sie eine ähnliche Syntax für Ost, Nord und Süd: ISO 19139: /gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:westBoundLongitude/gco:Decimal Dublin Core, two options (east = UpperCorner, north = UpperCorner, south = LowerCorner): /rdf:RDF/rdf:Description/ows:WGS84BoundingBox/westbc /rdf:RDF/rdf:Description/ows:WGS84BoundingBox/ows:LowerCorner FGDC: west: /metadata/idinfo/spdom/bounding/westbc

    anyText

    csw:anyText

    Dieser abfragbare Text stellt den Katalogeintrag als Ganzes dar.

    Zeichenfolge

    ogc:PropertyIsLike

    Die markierten Elemente, die eine der folgenden Bedeutungen haben: Titel, Kurzfassung, Schlüsselwörter oder Text. Weitere Informationen zu den Standardeinstellungen für diese Bedeutungen und wie sie sich ändern lassen finden Sie im Abschnitt zur Funktionsweise der Lucene-Indizierung.

    dc:title

    title

    Ein Name der Ressource

    Zeichenfolge

    Alle *

    ISO 19139: /gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:title/gco:CharacterString Dublin Core: /rdf:RDF/rdf:Description/dc:title FGDC: /metadata/idinfo/citation/citeinfo/title

    dc:abstract

    abstract

    Übersichtsbeschreibung der Ressource

    Zeichenfolge

    Alle *

    ISO 19139: /gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:abstract/gco:CharacterString Dublin Core: /rdf:RDF/rdf:Description/dc:description FGDC: /metadata/idinfo/descript/abstract

    dc:subject

    subject

    Das Thema des Inhalts der Ressource. Controlled-Liste

    Zeichenfolge

    ogc:PropertyIsEqualTo

    Die akzeptierten Werte basieren auf den ISO 19115-Themenkategoriecodes: farming biota boundaries climatologyMeteorologyAtmosphere economy elevation environment geoscientificInformation health imageryBaseMapsEarthCover intelligenceMilitary inlandWaters location oceans planningCadastre society structure transportation utilitiesCommunication ISO 19139:/gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:topicCategory/gmd:MD_TopicCategoryCode Dublin Core: /rdf:RDF/rdf:Description/dc:subject FGDC: /metadata/idinfo/keywords/theme[1]/themekey

    dc:type

    type, dc:format, format

    Die physische oder digitale Manifestation der Ressource

    Zeichenfolge

    Alle * sind zulässig, jedoch macht nur "ogc:PropertyIsEqualTo" einen logischen Sinn.

    Akzeptierte Werte sind: liveData downloadableData offlineData staticMapImage document application geographicService clearinghouse mapFiles geographicActivities ISO 19139: bestimmt durch die Auswahl zwischen ISO19115- oder ISO19119-Inhaltsnormen. Dublin Core: /rdf:RDF/rdf:Description/dc:type FGDC: /metadata/distinfo/resdesc

    Hinweis:

    *"Alle" umfasst alle OGC-Vergleichsoperatoren:

    • ogc:PropertyIsEqualTo
    • ogc:PropertyIsNotEqualTo
    • ogc:PropertyIsLessThan
    • ogc:PropertyIsGreaterThan
    • ogc:PropertyIsLessThanOrEqualTo
    • ogc:PropertyIsGreaterThanOrEqualTo
    • ogc:PropertyIsLike

  4. RÄUMLICHE ABFRAGEN: Envelope-Abfragen werden mit Hilfe von räumlichen Prädikaten der OGC-Filter codiert. Die Geoportal CS-W-API unterstützt nicht jedes räumliche Prädikat, das in den Filterspezifikationen zugänglich ist.

    Tabelle 4 – Unterstützte räumliche Prädikate

    Räumliche Prädikate der OGC-FilterRäumliche Prädikate von Geoportal CS-W

    ogc:BBOX

    Überlappungen

    ogc:Intersects

    Überlappungen

    ogc:Within

    Innerhalb

    • overlaps: sucht Metadatendokumente, bei denen Teile oder der gesamte Envelope des Metadatendokuments innerhalb des spezifizierten Suchfelds liegt. Alles, was vom Suchfeld berührt wird, wird gefunden.
    • within: findet Metadatendokumente, bei denen der Envelope des Dokuments komplett innerhalb des spezifizierten Suchfelds liegt. Der räumliche Envelope des Dokuments kann die Umrandung des Suchfelds berühren.
    • Die für räumliche Abfragen unterstützte Geometrie-Operanden sind:
      1. gml:Envelope
      2. gml:Point
  5. VERGLEICHSOPERATOREN: Vergleichsoperatoren sind in einer csw:GetRecord-Abfrage enthalten:
    • Between
    • EqualTo
    • GreaterThan
    • GreaterThanEqualTo
    • LessThan
    • LessthanEqualTo
    • Like
    • NotEqualTo
    • NullCheck
  6. PARAMETER: Die folgende Tabelle enthält die Parameter für jede unterstützte Operation.

    Tabelle 5: Unterstützte Parameter

    Operation Parameter Akzeptierte Werte

    DescribeRecord

    typeName

    csw:Record, csw:SummaryRecord, csw:BriefRecord

    outputFormat

    text/xml, application/xml

    GetRecords

    typeNames

    csw:Record

    outputFormat

    text/xml, application/xml

    outputSchema

    http://www.opengis.net/cat/csw/2.0.2

    http://www.isotc211.org/2005/gmd

    resultType

    results, hits, validate

    ElementSetName

    summary, brief, full

    constraintLanguage

    Filter

    GetRecordById

    ElementSetName

    summary, brief, full

    outputFormat

    text/xml, application/xml

    outputSchema

    http://www.opengis.net/cat/csw/2.0.2

    http://www.isotc211.org/2005/gmd

    service

    CSW, http://www.opengis.net/cat/csw/2.0.2

    version

    2.0.2

    PostEncoding

    XML

  7. ZURÜCKGEBBARE EIGENSCHAFTEN:

    Beim csw:Record-Ausgabeschema enthalten die zurückgegebenen Datensätze eine Auswahl der wichtigen zurückgebbaren Eigenschaften, deren Teilmenge vom Elementsatz abhängt. Wenn request=GetRecordById, outputSchema=original und ElementSetName=full ist, gibt die Geoportal CS-W-Benutzeroberfläche die ursprünglichen Metadatendokumente so zurück, als wären sie im Geoportal veröffentlicht worden. Beim gmd:MD_Metadata-Ausgabeschema enthalten die zurückgegebenen Datensätze eine Auswahl an ISO-Metadatenelementen, deren Teilmenge vom Elementsatz abhängt, der im OGC CSW ISO-Anwendungsprofil definiert ist.

    Tabelle 6: Zurückgebbare Eigenschaften

    ElementsatzZurückgebbare Eigenschaften

    brief

    dc:identifier, dc:title, dc:type, ows:Envelope

    Zusammenfassung

    dc:identifier, dc:title, dc:type, dc:format, ows:Envelope, dc:subject, dct:modified, dc:abstract

    Voll

    dc:identifier, dc:title, dc:type, ows:Envelope, dc:subject, dct:modified, dc:abstract, dct:references

Beispielanforderungen

Dieser Abschnitt enthält Beispielanforderungen.

  1. GetCapabilities: Sowohl KVP-, POST- und SOAP-Anforderungen werden vom Geoportal CS-W-Service unterstützt.

    KVP

    ?REQUEST=GetCapabilities&SERVICE=CSW&version=2.0.2

    POST

    <?xml version="1.0" encoding="UTF-8"?> <csw:GetCapabilities xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" service="CSW" xmlns="http://www.opengis.net/ows"> </csw:GetCapabilities>

    SOAP

    <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema"> <SOAP-ENV:Body> <csw:GetCapabilities xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" service="CSW" xmlns="http://www.opengis.net/ows"> </csw:GetCapabilities> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

  2. DescribeRecord

    KVP

    ?REQUEST=DescribeRecord&service=CSW&version=2.0.0

    POST

    <csw:DescribeRecord service="CSW" version="2.0.2" xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"></csw:DescribeRecord>

    SOAP

    <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema"> <SOAP-ENV:Body> <csw:DescribeRecord service="CSW" version="2.0.2" xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"> </csw:DescribeRecord> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

  3. GetRecords: Eine GetRecords-Anforderung erfordert eine Constraint Language und nachdem der Geoportal CS-W-Service CQL (Common Query Language) nicht unterstützt, werden nur XML-Filter mit Anforderungen im POST-Stil unterstützt.

    AnyText

    KVP

    N/A

    POST

    <csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results" startPosition="1" maxRecords="10"> <csw:Query typeNames="csw:Record" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml"> <csw:ElementSetName>full</csw:ElementSetName> <csw:Constraint version="1.1.0"> <ogc:Filter> <ogc:And> <ogc:PropertyIsLike wildCard="*" escape="\" singleChar="?"> <ogc:PropertyName>AnyText</ogc:PropertyName> <ogc:Literal>data</ogc:Literal> </ogc:PropertyIsLike> <ogc:PropertyIsEqualTo> <ogc:PropertyName>dc:type</ogc:PropertyName> <ogc:Literal>liveData</ogc:Literal> </ogc:PropertyIsEqualTo> <ogc:PropertyIsEqualTo> <ogc:PropertyName>dc:subject</ogc:PropertyName> <ogc:Literal>imageryBaseMapsEarthCover</ogc:Literal> </ogc:PropertyIsEqualTo> <ogc:BBOX> <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName> <gml:Envelope> <gml:lowerCorner>-118.3 32.1</gml:lowerCorner> <gml:upperCorner>-87.1 45.2</gml:upperCorner> </gml:Envelope> </ogc:BBOX> </ogc:And> </ogc:Filter> </csw:Constraint> </csw:Query> </csw:GetRecords>

    SOAP

    <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema"> <SOAP-ENV:Body> <csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results" startPosition="1" maxRecords="10"> <csw:Query typeNames="csw:Record" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml"> <csw:ElementSetName>full</csw:ElementSetName> <csw:Constraint version="1.1.0"> <ogc:Filter> <ogc:And> <ogc:PropertyIsLike wildCard="*" escape="\" singleChar="?"> <ogc:PropertyName>AnyText</ogc:PropertyName> <ogc:Literal>data</ogc:Literal> </ogc:PropertyIsLike> <ogc:PropertyIsEqualTo> <ogc:PropertyName>dc:type</ogc:PropertyName> <ogc:Literal>liveData</ogc:Literal> </ogc:PropertyIsEqualTo> <ogc:PropertyIsEqualTo> <ogc:PropertyName>dc:subject</ogc:PropertyName> <ogc:Literal>imageryBaseMapsEarthCover</ogc:Literal> </ogc:PropertyIsEqualTo> <ogc:BBOX> <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName> <gml:Envelope> <gml:lowerCorner>-118.3 32.1</gml:lowerCorner> <gml:upperCorner>-87.1 45.2</gml:upperCorner> </gml:Envelope> </ogc:BBOX> </ogc:And> </ogc:Filter> </csw:Constraint> </csw:Query> </csw:GetRecords> </SOAP-ENV:Body> </SOAP-ENV:Envelope >

    Titel

    KVP

    N/A

    POST

    <csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results" startPosition="1" maxRecords="10"> <csw:Query typeNames="csw:Record" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml"> <csw:ElementSetName>full</csw:ElementSetName> <csw:Constraint version="1.1.0"> <ogc:Filter> <ogc:PropertyIsLike wildCard="*" escape="\" singleChar="?"> <ogc:PropertyIsEqualTo> <ogc:PropertyName>dc:title</ogc:PropertyName> <ogc:Literal>Sample Document</ogc:Literal> </ogc:PropertyIsEqualTo> </ogc:Filter> </csw:Constraint> <ogc:SortBy> <ogc:SortProperty> <ogc:PropertyName>dc:title</ogc:PropertyName> <ogc:SortOrder>ASC</ogc:SortOrder> </ogc:SortProperty> </ogc:SortBy> </csw:Query> </csw:GetRecords>

    SOAP

    <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema"> <SOAP-ENV:Body> <csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results" startPosition="1" maxRecords="10"> <csw:Query typeNames="csw:Record" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml"> <csw:ElementSetName>full</csw:ElementSetName> <csw:Constraint version="1.1.0"> <ogc:Filter> <ogc:PropertyIsLike wildCard="*" escape="\" singleChar="?"> <ogc:PropertyIsEqualTo> <ogc:PropertyName>dc:title</ogc:PropertyName> <ogc:Literal>Sample Document</ogc:Literal> </ogc:PropertyIsEqualTo> </ogc:Filter> </csw:Constraint> <ogc:SortBy> <ogc:SortProperty> <ogc:PropertyName>dc:title</ogc:PropertyName> <ogc:SortOrder>ASC</ogc:SortOrder> </ogc:SortProperty> </ogc:SortBy> </csw:Query> </csw:GetRecords> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

    Thema

    KVP

    N/A

    POST

    <csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results" startPosition="1" maxRecords="10"> <csw:Query typeNames="csw:Record" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml"> <csw:ElementSetName>full</csw:ElementSetName> <csw:Constraint version="1.1.0"> <ogc:Filter> <ogc:PropertyIsEqualTo> <ogc:PropertyName>dc:subject</ogc:PropertyName> <ogc:Literal>imageryBaseMapsEarthCover</ogc:Literal> </ogc:PropertyIsEqualTo> </ogc:Filter> </csw:Constraint> <ogc:SortBy> <ogc:SortProperty> <ogc:PropertyName>dc:title</ogc:PropertyName> <ogc:SortOrder>ASC</ogc:SortOrder> </ogc:SortProperty> </ogc:SortBy> </csw:Query> </csw:GetRecords>

    SOAP

    <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema"> <SOAP-ENV:Body> <csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results" startPosition="1" maxRecords="10"> <csw:Query typeNames="csw:Record" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml"> <csw:ElementSetName>full</csw:ElementSetName> <csw:Constraint version="1.1.0"> <ogc:Filter> <ogc:PropertyIsEqualTo> <ogc:PropertyName>dc:subject</ogc:PropertyName> <ogc:Literal>imageryBaseMapsEarthCover</ogc:Literal> </ogc:PropertyIsEqualTo> </ogc:Filter> </csw:Constraint> <ogc:SortBy> <ogc:SortProperty> <ogc:PropertyName>dc:title</ogc:PropertyName> <ogc:SortOrder>ASC</ogc:SortOrder> </ogc:SortProperty> </ogc:SortBy> </csw:Query> </csw:GetRecords> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

    Geändert

    KVP

    N/A

    POST

    <csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results" startPosition="1" maxRecords="10"> <csw:Query typeNames="csw:Record" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml"> <csw:ElementSetName>full</csw:ElementSetName> <csw:Constraint version="1.1.0"> <ogc:Filter> <ogc:PropertyIsGreaterThan> <ogc:PropertyName>dct:modified</ogc:PropertyName> <ogc:Literal>2000-01-01</ogc:Literal> </ogc:PropertyIsGreaterThan> </ogc:Filter> </csw:Constraint> <ogc:SortBy> <ogc:SortProperty> <ogc:PropertyName>dc:title</ogc:PropertyName> <ogc:SortOrder>ASC</ogc:SortOrder> </ogc:SortProperty> </ogc:SortBy> </csw:Query> </csw:GetRecords>

    SOAP

    <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema"> <SOAP-ENV:Body> <csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results" startPosition="1" maxRecords="10"> <csw:Query typeNames="csw:Record" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml"> <csw:ElementSetName>full</csw:ElementSetName> <csw:Constraint version="1.1.0"> <ogc:Filter> <ogc:PropertyIsGreaterThan> <ogc:PropertyName>dct:modified</ogc:PropertyName> <ogc:Literal>2000-01-01</ogc:Literal> </ogc:PropertyIsGreaterThan> </ogc:Filter> </csw:Constraint> <ogc:SortBy> <ogc:SortProperty> <ogc:PropertyName>dc:title</ogc:PropertyName> <ogc:SortOrder>ASC</ogc:SortOrder> </ogc:SortProperty> </ogc:SortBy> </csw:Query> </csw:GetRecords> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

    Envelope

    KVP

    N/A

    POST

    <csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results" startPosition="1" maxRecords="10"> <csw:Query typeNames="csw:Record" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml"> <csw:ElementSetName>full</csw:ElementSetName> <csw:Constraint version="1.1.0"> <ogc:Filter> <ogc:BBOX> <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName> <gml:Envelope> <gml:lowerCorner>-118.3 32.1</gml:lowerCorner> <gml:upperCorner>-87.1 45.2</gml:upperCorner> </gml:Envelope> </ogc:BBOX> </ogc:Filter> </csw:Constraint> <ogc:SortBy> <ogc:SortProperty> <ogc:PropertyName>dc:title</ogc:PropertyName> <ogc:SortOrder>ASC</ogc:SortOrder> </ogc:SortProperty> </ogc:SortBy> </csw:Query> </csw:GetRecords

    SOAP

    <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema"> <SOAP-ENV:Body> <csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results" startPosition="1" maxRecords="10"> <csw:Query typeNames="csw:Record" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml"> <csw:ElementSetName>full</csw:ElementSetName> <csw:Constraint version="1.1.0"> <ogc:Filter> <ogc:BBOX> <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName> <gml:Envelope> <gml:lowerCorner>-118.3 32.1</gml:lowerCorner> <gml:upperCorner>-87.1 45.2</gml:upperCorner> </gml:Envelope> </ogc:BBOX> </ogc:Filter> </csw:Constraint> <ogc:SortBy> <ogc:SortProperty> <ogc:PropertyName>dc:title</ogc:PropertyName> <ogc:SortOrder>ASC</ogc:SortOrder> </ogc:SortProperty> </ogc:SortBy> </csw:Query> </csw:GetRecords> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

  4. GetRecordById

    KVP

    ?REQUEST=GetRecordById&service=CSW&version=2.0.2&Id=B6A0EC8C-826D-11D8-BADF-080020ECC953

    POST

    <<csw:GetRecordById xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW"> <csw:Id>B6A0EC8C-826D-11D8-BADF-080020ECC953</csw:Id></csw:GetRecordById>

    SOAP

    <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema"> <SOAP-ENV:Body> <csw:GetRecordById xmlns:csw=http://www.opengis.net/cat/csw/2.0.2 version="2.0.2" service="CSW"> <csw:Id>B6A0EC8C-826D-11D8-BADF-080020ECC953</csw:Id> </csw:GetRecordById> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

  5. Transaktion "Einfügen":

    POST

    <?xml version="1.0" encoding="UTF-8"?> <csw:Transaction service="CSW" version="2.0.2" xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" > <csw:Insert> … Metadatendokument wird hier ohne XML-Prolog eingefügt … </csw:Insert> </csw:Transaction>

    SOAP

    <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema"> <SOAP-ENV:Body> <csw:Transaction service="CSW" version="2.0.2" xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" > <csw:Insert> … Metadatendokument wird hier ohne XML-Prolog eingefügt … </csw:Insert> </csw:Transaction> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

  6. Transaktion "Update": Die Update-Anforderung unterstützt nur das Ersetzen ganzer Dokumente.

    POST

    <?xml version="1.0" encoding="UTF-8"?> <csw:Transaction service="CSW" version="2.0.2" xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" > <csw:Update> … Metadatendokument wird hier ohne XML-Prolog eingefügt … </csw:Update> </csw:Transaction>

    SOAP

    <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema"> <SOAP-ENV:Body> <csw:Transaction service="CSW" version="2.0.2" xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" > <csw:Update> … Metadatendokument wird hier ohne XML-Prolog eingefügt … </csw:Update> </csw:Transaction> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

  7. Transaktion "Löschen": Die Löschanforderung unterstützt nur das Löschen ganzer Dokumente basierend auf dem Identifikator. Die Identifikatoren werden in der GetRecords-Antwort zurückgegeben. Der Workflow besteht darin, mit Hilfe der GetRecords-Antwort den Datensatz zu finden, der bestimmten Kriterien entspricht, und die zurückgegebenen Datensätze anschließend basierend auf dem dc:identifier zu löschen.

    POST

    <?xml version="1.0" encoding="UTF-8"?> <csw:Transaction service="CSW" version="2.0.2" xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" xmlns:dc="http://www.purl.org/dc/elements/1.1/" xmlns:ogc="http://www.opengis.net/ogc"> <csw:Delete> <csw:Constraint version="2.0.2"> <ogc:Filter> <ogc:PropertyIsEqualTo> <ogc:PropertyName>dc:identifier</ogc:PropertyName> <ogc:Literal>A0522EE9-8C45-4399-8B73-7CCFC2BB9F60</ogc:Literal> </ogc:PropertyIsEqualTo> </ogc:Filter> </csw:Constraint> </csw:Delete> </csw:Transaction>

    SOAP

    <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema"> <SOAP-ENV:Body> <csw:Transaction service="CSW" version="2.0.2" xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" xmlns:dc="http://www.purl.org/dc/elements/1.1/" xmlns:ogc="http://www.opengis.net/ogc"> <csw:Delete> <csw:Constraint version="2.0.2"> <ogc:Filter> <ogc:PropertyIsEqualTo> <ogc:PropertyName>dc:identifier</ogc:PropertyName> <ogc:Literal>A0522EE9-8C45-4399-8B73-7CCFC2BB9F60</ogc:Literal> </ogc:PropertyIsEqualTo> </ogc:Filter> </csw:Constraint> </csw:Delete> </csw:Transaction> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Geoportal WSDL

Die mit den Geoportal CS-W SOAP-Endpunkten verbundene WSDL basiert auf dem OGC-Beispiel unter http://schemas.opengis.net/csw/2.0.2/examples/wsdl/2.0.2/. Die Geoportal-WSDL-Dateien, die mit den CS-W SOAP-Endpunkten verbunden sind, befinden sich unter http://<host>:<port>/geoportal/csw/service-wsdl.jsp, wo <host> der Geoportal-Host-Server und <port> die Portnummer ist. Sie sind im Verzeichnis \\geoportal\csw gespeichert und lauten wie folgt:

  • http-binding.wsdl
  • kvp-binding.wsdl
  • responses.wsdl
  • service-wsdl.jsp
  • soap-binding.wsdl
  • xml-interfaces.wsdl