ESRI Geoportal

From NGDC Wiki
Revision as of 22:29, 6 January 2020 by Anna.milan (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Geoportal Instances

Indexes


NOAA Geoportal Collaborative Documentation

Google Docs

NOAA Geoportal Server Inventory Matrix on Google Docs

ISO 19115-2 support

To configure GeoPortal to work with ncISO, you need to add ISO 19115-2 support.

  • Unzip the linked file http://www.ngdc.noaa.gov/eds/tds/downloads/NGDC_customizations.zip
  • Review the files determine whether the customizations make sense for your geoportal instance! These files contain new property meanings to allow common searching across FGDC and ISO metadata. Custom displays to allow linkages from Geoportal search results to common THREDDS services and other NOAA viewers.
  • After your review copy the relevant files to your webapps\geoportal\ folder.
  • You will need to restart the geoportal web application after adding/updating the files.
  • Currently GeoPortal can only support resolved ISO records (no xlinks) and not use nilReason xml attributes for mandatory fields (such as date).

Image at right is an ISO-2 metadata record with custom links out to OGC Services and NOAA viewer apps.

Steps to configure OpenDAP Viewer linkage in Geoportal

Note this customization and linkages to other THREDDS services and NOAA clients are now included in the NGDC_Customizations.zip file referenced above.

GeoPortal_OpenDAP

Working with custom locator services

Follow ESRI instructions on creating a locator service for ArcGIS Server: http://help.arcgis.com/en/arcgisserver/10.0/help/arcgis_server_dotnet_help/index.html#//009300000025000000.htm

Once established you can update your gpt.xml file to point to the new service. See the interactiveMap element e.g.

       locatorUrl="http://maps.ngdc.noaa.gov/rest/services/GptGaz/GeocodeServer"
       locatorSingleFieldParameter = "PlaceName"/>

The NGDC locator service contains world ocean and sea names as well as undersea features.

Customizing browse catalog

You can modify the browse tree to display custom searches of your metadata. In some cases, you may want to browse by Web Accessible Folder (WAF), below is an example of a tree node that displays all records in your WAF.

<item> <name resourceKey="catalog.search.filterContentTypes.org.ioos"></name> <query>searchText=sys.siteuuid:"{E4949969-468A-4B10-823D-9BF1BF0785B2}"</query> </item>

Be sure to include your resource key text value in the gpt.properties file.

Updating the CSW Response

Please be sure to update the metadata associated with the CSW GetCapabilities response.

Updates can be made to cswCapabilities.xml file.

This file is located here: /geoportal/WEB-INF/classes/gpt/metadata/cswCapabilities.xml

GeoPortal REST Documentation

Multibeam WAF

Search within the multibeam WAF for records with start date 2009-02-01 to end date 2012-02-01 with JSON response: Multibeam Example1 Link

Search within the multibeam WAF for keywords 'Elevation' with JSON response: Multibeam Example2 Link

Search within the multibeam WAF for records within -82.692,32.6969,-67.2573,40.2692 with JSON response: Multibeam Example3 Link


IOOS WAFs

See GitHub Repository: https://github.com/ioos/registry/blob/master/uuid.csv
Date Search Example: Search within the PacIOOS WAF for records with start date 2009-02-01 to end date 2012-02-01 with JSON response: PacIOOS DateSearchExample Link

Decoded Parameters: rid=local&ridName=NOAA's Geophysical Data Center&searchText=startDate:[1800-01-01 TO 2012-02-01] AND endDate:[2009-02-01 TO 2100-01-01] AND sys.siteuuid:"{68FF11D8-D66B-45EE-B33A-21919BB26421}"&start=1&max=10&orderBy=relevance&maxSearchTimeMilliSec=10000&f=pjson


Keyword Example: Search within the PacIOOS WAF for keywords 'sea_water_salinity' with JSON response: PacIOOS KeywordExample Link

Decoded Parameters: rid=local&ridName=NOAA's Geophysical Data Center&searchText=keywords: sea_water_salinity AND sys.siteuuid:"{68FF11D8-D66B-45EE-B33A-21919BB26421}"&start=1&max=1000&orderBy=relevance&maxSearchTimeMilliSec=10000&f=pjson


Geographic Search Example: Search within the PacIOOS WAF for metadata records within -164.9246,16.6012,-149.4899,25.3959 with JSON response: PacIOOS GeoExample Link

Decoded Parameters: rid=local&ridName=NOAA's Geophysical Data Center&searchText=sys.siteuuid:"{68FF11D8-D66B-45EE-B33A-21919BB26421}"&start=1&max=1000&orderBy=relevance&spatialRel=esriSpatialRelWithin&bbox=-164.9246,16.6012,-149.4899,25.3959&maxSearchTimeMilliSec=10000&f=pjson


Multi-Criteria Example: Search within the PacIOOS WAF for metadata records with all of the above with JSON response: PacIOOS MultiExample Link

Decoded Parameters: rid=local&ridName=NOAA's Geophysical Data Center&rids=local&searchText=keywords: sea_water_salinity AND endDate:[2009-02-01 TO 2100-01-01] AND startDate:[1800-01-01 TO 2012-02-01] AND sys.siteuuid:"{68FF11D8-D66B-45EE-B33A-21919BB26421}"&start=1&max=1000&orderBy=relevance&spatialRel=esriSpatialRelWithin&bbox=-164.9246,16.6012,-149.4899,25.3959&maxSearchTimeMilliSec=10000&f=pjson


WMS Example: Search within the PacIOOS WAF for metadata records with a WMS service endpoint with GeoRSS response: PacIOOS WMSExample Link

Decoded Parameters: rid=local&ridName=NOAA's Geophysical Data Center&rids=local&searchText=wms.resource.url:* AND sys.siteuuid:"{68FF11D8-D66B-45EE-B33A-21919BB26421}"&start=1&max=1000&orderBy=relevance&maxSearchTimeMilliSec=10000&f=georss


WCS Example: Search within the PacIOOS WAF for metadata records with a WCS service endpoint with html response: PacIOOS WCSExample Link

Decoded Parameters: rid=local&ridName=NOAA's Geophysical Data Center&rids=local&searchText=wcs.resource.url:* AND sys.siteuuid:"{68FF11D8-D66B-45EE-B33A-21919BB26421}"&start=1&max=1000&orderBy=relevance&maxSearchTimeMilliSec=10000&f=html


SOS Example: Search within the PacIOOS WAF for metadata records with an SOS service endpoint with html response: PacIOOS SOSExample Link

Decoded Parameters: rid=local&ridName=NOAA's Geophysical Data Center&rids=local&searchText=sos.resource.url:* AND sys.siteuuid:"{68FF11D8-D66B-45EE-B33A-21919BB26421}"&start=1&max=1000&orderBy=relevance&maxSearchTimeMilliSec=10000&f=html


OPeNDAP Example: Search within the PacIOOS WAF for metadata records with a OpenDAP service endpoint with html response: PacIOOS OPeNDAPExample Link

Decoded Parameters: rid=local&ridName=NOAA's Geophysical Data Center&rids=local&searchText=odp.resource.url:* AND sys.siteuuid:"{68FF11D8-D66B-45EE-B33A-21919BB26421}"&start=1&max=1000&orderBy=relevance&maxSearchTimeMilliSec=10000&f=html

ESRI API Docs

ESRI Restful Interface Documentation

GeoPortal CSW Documentation

NGDC CSW Service Endpoint

http://www.ngdc.noaa.gov/geoportal/csw

The examples below must be made as an XML POST request.


PacIOOS WAF

WMS Search Example:

<?xml version="1.0"?>	
<csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results" 
outputSchema="http://www.isotc211.org/2005/gmd" startPosition="1" maxRecords="1000">
  <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:PropertyIsEqualTo>
        <ogc:PropertyName>sys.siteuuid</ogc:PropertyName>
        <ogc:Literal>{68FF11D8-D66B-45EE-B33A-21919BB26421}</ogc:Literal>
      </ogc:PropertyIsEqualTo>
      <ogc:PropertyIsLike wildCard="*" escape="\" singleChar="?"> 
        <ogc:PropertyName>apiso:ServiceType</ogc:PropertyName>
        <ogc:Literal>*wms*</ogc:Literal>
      </ogc:PropertyIsLike>
    </ogc:And> 
  </ogc:Filter> 
</csw:Constraint> 
</csw:Query>
</csw:GetRecords>

WCS Search Example:

<?xml version="1.0"?>	
<csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results" 
outputSchema="http://www.isotc211.org/2005/gmd" startPosition="1" maxRecords="1000">
  <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:PropertyIsEqualTo>
        <ogc:PropertyName>sys.siteuuid</ogc:PropertyName>
        <ogc:Literal>{68FF11D8-D66B-45EE-B33A-21919BB26421}</ogc:Literal>
      </ogc:PropertyIsEqualTo>
      <ogc:PropertyIsLike wildCard="*" escape="\" singleChar="?"> 
        <ogc:PropertyName>apiso:ServiceType</ogc:PropertyName>
        <ogc:Literal>*wcs*</ogc:Literal>
      </ogc:PropertyIsLike>
    </ogc:And> 
  </ogc:Filter> 
</csw:Constraint> 
</csw:Query>
</csw:GetRecords>

OPeNDAP Search Example:

<?xml version="1.0"?>	
<csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results"
outputSchema="http://www.isotc211.org/2005/gmd" startPosition="1" maxRecords="1000">
  <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:PropertyIsEqualTo>
        <ogc:PropertyName>sys.siteuuid</ogc:PropertyName>
        <ogc:Literal>{68FF11D8-D66B-45EE-B33A-21919BB26421}</ogc:Literal>
      </ogc:PropertyIsEqualTo>
      <ogc:PropertyIsLike wildCard="*" escape="\" singleChar="?"> 
        <ogc:PropertyName>apiso:ServiceType</ogc:PropertyName>
        <ogc:Literal>*opendap*</ogc:Literal>
      </ogc:PropertyIsLike>
    </ogc:And> 
  </ogc:Filter> 
</csw:Constraint> 
</csw:Query>
</csw:GetRecords>

SOS Search Example:

<?xml version="1.0"?>	
<csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results"
outputSchema="http://www.isotc211.org/2005/gmd" startPosition="1" maxRecords="1000">
  <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:PropertyIsEqualTo>
        <ogc:PropertyName>sys.siteuuid</ogc:PropertyName>
        <ogc:Literal>{68FF11D8-D66B-45EE-B33A-21919BB26421}</ogc:Literal>
      </ogc:PropertyIsEqualTo>
      <ogc:PropertyIsLike wildCard="*" escape="\" singleChar="?"> 
        <ogc:PropertyName>apiso:ServiceType</ogc:PropertyName>
        <ogc:Literal>*sos*</ogc:Literal>
      </ogc:PropertyIsLike>
    </ogc:And> 
  </ogc:Filter> 
</csw:Constraint> 
</csw:Query>
</csw:GetRecords>

ISO Date Modified Search

<csw:GetRecords xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" version="2.0.2" service="CSW" resultType="results" startPosition="1" maxRecords="11" outputSchema="http://www.isotc211.org/2005/gmd"> <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:PropertyIsGreaterThan> 
      <ogc:PropertyName>apiso:modified</ogc:PropertyName> <ogc:Literal>2011-09-30</ogc:Literal>
      </ogc:PropertyIsGreaterThan> 
      <ogc:PropertyIsLessThan> 
      <ogc:PropertyName>apiso:modified</ogc:PropertyName> <ogc:Literal>2011-10-02</ogc:Literal>
      </ogc:PropertyIsLessThan> 
    </ogc:And>
  </ogc:Filter>
</csw:Constraint> 
</csw:Query> 
</csw:GetRecords> 

ESRI CSW Docs

http://sourceforge.net/apps/mediawiki/geoportal/index.php?title=Catalog_Service

GeoPortal OpenSearch Documentation

Geoportal's OpenSearch API support allows you to use your browser to search for metadata. To use OpenSearch from the browser go to a Geoportal website and then from the search option drop down choose add Geoportal Search (see image at right). Next enter a simple text search phrase or leverage lucene search syntax such as where sys.siteuuid refers to IOOS WAF: keywords: sea_water_salinity AND endDate:[2009-02-01 TO 2100-01-01] AND startDate:[1800-01-01 TO 2012-02-01] AND sys.siteuuid:"{E4949969-468A-4B10-823D-9BF1BF0785B2}"


OpenSearch can also be used by client applications using the REST API. For example, the same search above can be submitted as (see image at right):

Example: Search within the IOOS WAF with HTML response:

IOOS Example

Decoded OpenSearch REST Example: /geoportal/rest/find/document?searchText=keywords: sea_water_salinity AND endDate:[2009-02-01 TO 2100-01-01] AND startDate:[1800-01-01 TO 2012-02-01] AND sys.siteuuid:"{E4949969-468A-4B10-823D-9BF1BF0785B2}"&start=&max=&bbox=&f=html

NOAA Geoportal Presentations