Geoportal server as a broker

Christine White edited this page Jan 21, 2015 · 8 revisions

Table of Contents

Features of a Broker

A software service broker serves as a middleman, connecting different data sources and services to one another. It provides access to a variety of resources, and exposes these resources not only through human-readable interfaces but also machine readable ones.

Certain features of the Esri Geoportal Server distinguish its use as a service broker. Particularly, the ability to register multiple types of resources for harvest/discovery, the ability to direct a search to a remote endpoint, and the ability to discover resources hosted at or through the geoportal through standards-based protocols represent functionality essential in a service broker.

Supported Protocols and Interfaces

To know how to interact with a service broker, its important to understand what protocols and interfaces are implemented or compatible. The standards and protocols supported by the Geoportal Server are shown and explained below.


Explanation of Geoportal-endpoints

You can see that the Geoportal Server catalog is exposed through the CS-W, OpenSearch, SPARQL, REST, GeoRSS, ATOM, KML, JSON, and HTML protocols. You can access records that are hosted by the geoportal through these protocols. The records themselves consist of metadata XML of a variety of flavors: ISO metadata XML standards, Dublin Core, FGDC, profiles of these, and service metadata. Other schemas can be accommodated through customization (see Add a Custom Profile).

  • To access your geoportal's OGCCORE 2.0.2 CSW endpoint, use <code>http://serverName/geoportal/csw?Request=GetCapabilities&Service=CSW&Version=2.0.2</code>
  • To access your geoportal's OpenSearch endpoint, use http://serverName/geoportal/openSearchDescription
  • To access resources through the geoportal's REST API - which includes GeoRSS, ATOM, KML, JSON, CSV, and HTML - you can use a URL formatted like the following (see REST API Syntax for list of supported REST parameters): <code>http://serverName/geoportal/rest/find/document?requestParameter1&requestParameter2&...</code>
  • You can interact with the SPARQL interface through the geoportal UI - there is a customization available to simply expose the endpoint. If the customization has been deployed, you will see the SPARQL endpoint available at <code>http://serverName/geoportal/index.jsp</code>. To deploy the simple customization on your geoportal endpoint, see Geoportal SPARQL Sample.

Protocols with which the Geoportal can Synchronize

The geoportal also supports connecting to a variety of interfaces to synchronize with resources at remote locations. Synchronization means that an endpoint is registered with the geoportal to be revisited at a regular interval and retrieve resources/updates of the resources at the endpoint. For example, if registered a Web Accessible Folder (WAF) to be synchronized once a week, at the initial session all the records would be retrieved. At subsequent sessions in the following weeks, updated records and new records would be retrieved. A single resource - for example, one WMS service - can be registered, or a container resource as in the WAF example can be registered. The types of endpoints that can be registered are:

  • GetCapabilities URL to an OGC service (WMS, WCS, WFS, WPS, SOS, SPS, or KML)
  • CSW GetCapabilities URL (see Supported CSW Profiles for Synchronization and the Federated Search section below)
  • REST URL (e.g., formatted in RSS)
  • OpenSearch description XML
  • URL to a metadata XML (such as FGDC, ISO-based profiles, Dublin Core, etc.)
  • URL to an ArcGIS Server which contains services
  • URL to one specific ArcGIS Server service (e.g., MapServer, GlobeServer, ImageServer, GeoDataServer, MobileServer, GPServer, GeocodeServer, GeometryServer,NAServer, FeatureServer, SearchServer, WMSServer, WFSServer, and WCSServer)
  • Esri Metadata Server service / ArcIMS metadata service
  • Open Archive Initiative service
  • web-accessible folder (WAF)
  • THREDDS Data Server catalog .xml endpoint
  • ATOM 1.0-compliant feeds
It is possible to customize the geoportal to accept other protocols - to do this, see Extending the Web Harvester.

Federated Search

It is possible to access certain types of resources remotely through the geoportal's federated search. CS-W endpoints can be registered for federated search through the Geoportal Administration user interface (see How to Publish Resources#Register an endpoint for federated search). For a list of the supported CS-W profiles or to add support for a new profile, see Supported CSW Profiles for Synchronization. OpenSearch endpoints can be registered by adding the transformation template information in the geoportal's configuration file (see Add an OpenSearch endpoint for Federated Search). An example of this is the repository. Because in this latter case the configuration file is not available through the user interface, you would need to contact the geoportal's host organization to have the endpoint added. Once the resource has been either registered or configured, it will be available from the "Search In" option on the geoportal's search page. To view repositories registered for federated search in geoportal, you can use http://server:port/geoportal/rest/repositories. to view all repositories including those registered and those configured in gpt.xml for federated search in geoportal, use http://server:port/geoportal/rest/repositories?protocol=all.

You can also search a remote endpoint through the Geoportal REST API. To do this, you must direct your search to the rid (remote ID) of the endpoint. For remote repositories registered as remote CSW endpoints, the rid for a repository is the same as its document ID in the geoportal. For example, if you click on the "View Metadata" icon for a specific repository on the Geoportal Administration interface, you will see the document ID appear in the URL for the window that opens showing the metadata. For OpenSearch endpoints that were added to the geoportal configuration file to enable federated search, the rid will be the same as the name in their repository key attribute in the gpt.xml file. Examples of each are below:

  • Example of remote CSW endpoint: <code>http://serverName/geoportal/rest/find/document?rid={53FEF05D-E5E1-42C9-A37D-31BB5534C853}&searchText=water&f=atom</code>
  • Example of remote OpenSearch endpoint: <code>http://serverName/geoportal/rest/find/document?rid=ArcGIS.COM&searchText=water&f=atom</code>

More Resources

This is a brief overview of in-depth geoportal functionality. To learn more, the following topics can be referenced:

Further, this wiki topic will be expanded through participation in the EarthCube Hack-a-thon. Please return from time to time as more information is provided.
Back to Main Page
Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.