Suchkomponenten
Die primären Komponenten, die mit der Ausführung von Suchvorgängen im Geoportal-Metadatenkatalog zusammenhängen, werden in der folgenden Abbildung dargestellt.
Die Suchseite der Website stellt für die Erkennung von Metadaten einen Dienst-Endpunkt zur Verfügung. Anforderungen von der Seite werden über die SearchController-Komponente verarbeitet, die wiederum Anforderungen über die SearchEngine-Komponente ausführt.
Die Website stellt für die Erkennung von Metadaten einen Dienst-Endpunkt mit einer REST-Abfrage-API zur Verfügung. Mit diesem Dienst-Endpunkt können Antworten in den Formaten GeoRSS, KML, ATOM, JSON, HTML und HTML-Fragment generiert werden. Anforderungen werden über eine RestQueryParser-Komponente analysiert und über die SearchEngine-Komponente ausgeführt. Jeder Client, der RSS-, GeoRSS-, KML-, ATOM-, JSON- oder HTML-Protokolle verstehen kann, kann diesen Endpunkt verwenden. Zu den typischen Clients gehören: Browser, Content-Management-Systeme, ArcGIS Explorer und Google Earth.
Die Website stellt für die Erkennung von Metadaten den CSW 2.0.2 Suchdienst-Endpunkt zur Verfügung. Jeder Client, der das CSW 2.0.2 Suchprotokoll verstehen kann, kann den Katalog über diesen Endpunkt abfragen. Die CSW-Client-Komponenten für das Geoportal, die in ArcGIS Explorer und ArcGIS for Desktop eingebunden werden können, können diesen Endpunkt verwenden. Externe Mapping-Anwendungen können für die Verwendung dieses Endpunktes konfiguriert werden.
Die SearchEngine-Komponente verarbeitet eingehende Anforderungen von der Suchseite der Website und dem verfügbar gemachten Endpunkt, der über eine REST-Abfrage-API verfügt. Anforderungen für den lokalen Metadatenkatalog werden in eine CSW 2.0.2 Such-XML umgewandelt und zur Verarbeitung an einen CSW-Such-Parser übermittelt. Anforderungen für einen Remote-CSW-Dienst werden von einer CSW-Client-Komponente übermittelt und verarbeitet.
Bei CSW 2.0.2 Suchanforderungen für den lokalen Metadatenkatalog wird zur Verarbeitung jeder einzelnen Anforderung eine standardisierte Methode implementiert:
- Die Anforderung wird analysiert (CSW-Such-Parser). Dabei werden die CSW-Anforderungsparameter und die OGC-Filterinformationen extrahiert. Diese Informationen werden für die Erstellung eines abstrakten Suchmodells verwendet (Paket: com.esri.Geoportal catalog.discovery)
- Das Suchmodell wird an einen LuceneQueryAdapter gesendet, der für das Erstellen und Ausführen einer Abfrage zum Apache Lucene-Index die Apache Lucene-Java-API verwendet. Die Ergebnisse werden dann verwendet, um die resultierenden Komponentenobjekte des Suchmodells aufzufüllen.
- Anschließend wird aus den resultierenden Komponentenobjekten des Suchmodells eine CSW 2.0.2 Such-XML generiert.