UnidataTDS and ncISO: Metadata Services


The TDS distribution (as of TDS 4.2.4) includes the ncISO package from NOAA/NGDC (many thanks to Dave Neufeld and Ted Habermann).

ncISO Services

ncISO supports three new services for datasets:

Enabling ncISO Services

NOTE: The following applies to TDS 4.2.8+. For versions 4.2.4 through 4.2.7, see the "Enabling ncISO Services - pre-4.2.8" section below.

In TDS 4.2.8 on, the ncISO services are disabled by default and can be enabled for locally served datasets by including the following in the threddsConfig.xml file:

<NCISO>
  <ncmlAllow>true</ncmlAllow>
  <uddcAllow>true</uddcAllow>
  <isoAllow>true</isoAllow>
</NCISO>

Providing ncISO Services for Datasets

Once ncISO is enabled, datasets can be configured to have the three ncISO services in the TDS catalog configuration files similar to the way other services are configured. The service element's serviceType and base attribute values must be as follows:

<service name="ncml" serviceType="NCML" base="/thredds/ncml/"/>
<service name="uddc" serviceType="UDDC" base="/thredds/uddc/"/>
<service name="iso" serviceType="ISO" base="/thredds/iso/"/>

The dataset to be served must reference a containing compound service by the service name. For instance, if a compound service named "all" contained all three services listed above:

<dataset ID="sample" name="Sample Data" urlPath="sample.nc">
  <serviceName>all</serviceName>
</dataset>

The dataset can be configured by datasetRoot or datasetScan as appropriate (see "Basic Configuration"). They are listed in the resulting THREDDS catalogs as are other datasets.


Enabling ncISO Services - pre-4.2.8

With TDS 4.2.4 through TDS 4.2.7, enabling the ncISO services required editing of the TDS web.xml file ($TOMCAT_HOME/webapps/thredds/WEB-INF/web.xml). Since web.xml files are overwritten when a webapp is deployed, these edits were required each time a new version of the TDS was deployed.

There are three sections of the web.xml file that must be uncommented. Searching for "metadata" will bring you to each of the three sections. The three sections look like the following:

114 <!-- To allow the ncISO service, uncomment this filter mapping. -->
115 <!--filter-mapping>
116   <filter-name>RequestQueryFilter</filter-name>
117   <servlet-name>metadata</servlet-name>
118 </filter-mapping-->

To uncomment the above section, remove the "!--" in line 115 and the "--" in line 118.

336 <!-- Metadata services (ncISO) from NGDC -->
337 <!-- To allow the ncISO service, uncomment this servlet element. -->
338 <!--servlet>
339   <servlet-name>metadata</servlet-name>
340   <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
341   <load-on-startup>3</load-on-startup>
342 </servlet-->

To uncomment the above section, remove the "!--" in line 338 and the "--" in line 342.

548 <!-- Metadata services (ncISO) from NGDC -->
549 <!-- To allow the ncISO service, uncomment these servlet mappings. -->
550 <!--servlet-mapping>
551   <servlet-name>metadata</servlet-name>
552   <url-pattern>/ncml/*</url-pattern>
553 </servlet-mapping>
554 <servlet-mapping>
555   <servlet-name>metadata</servlet-name>
556   <url-pattern>/uddc/*</url-pattern>
557 </servlet-mapping>
558 <servlet-mapping>
559   <servlet-name>metadata</servlet-name>
560   <url-pattern>/iso/*</url-pattern>
561 </servlet-mapping-->

To uncomment the above section, remove the "!--" in line 550 and the "--" in line 561.


THREDDS This document is maintained by Unidata and was last updated June 2011. Send comments to THREDDS support.