NERC DataGrid vocabulary server

The NERC DataGrid (NDG) vocabulary server gives data managers the means to access lists of controlled terms to describe data, thus saving the time and costs associated with unraveling the meaning of a given data set.

Go to the top of this page

Introduction

The NDG vocabulary server provides access to lists of standardised terms that cover a broad spectrum of disciplines of relevance to the oceanographic and wider community.

Using standardised sets of terms (otherwise known as "controlled vocabularies") in metadata and to label data solves the problem of ambiguities associated with data markup and also enables records to be interpreted by computers. This opens up data sets to a whole world of possibilities for computer aided manipulation, distribution and long term reuse.

An example of how computers may benefit from the use of controlled vocabularies is in the summing of values taken from different data sets. For instance, one data set may have a column labelled "Temperature of the water column" and another might have "water temperature" or even "temperature". To the human eye, the similarity is obvious but a computer would not be able to interpret these as the same thing unless all the possible options were hard coded into its software. If data are marked up with the same terms, this problem is resolved.

In the real world, it is not always possible or agreeable for data providers to use the same terms. In such cases, controlled vocabularies can be used as a medium to which data centres can map their equivalent terms.

The controlled vocabularies delivered by the NDG vocabulary server contain the following information for each term:

All of the vocabularies are fully versioned and a permanent record is kept of all changes made.

Version 1.1 of the server represents a complete rewrite of the internal software with both increased functionality and performance. The latter is particularly significant and consequently, although the V1.0 code will remain operational for the foreseeable future, existing users are urged to convert to V1.1 as soon as possible and the development of new V1.0 applications is strongly discouraged. The V1.0 method specifications are maintained as historical documents.

Go to the top of this page

Caveats for the V1.1 Vocabulary Server release

Go to the top of this page

List and term URIs

Lists and terms are presented to the server as URIs (actually URLs) having the syntax

List: http://vocab.ndg.nerc.ac.uk/list/listReference/listVersion
Term: http://vocab.ndg.nerc.ac.uk/term/listReference/listVersion/entryReference

where

Go to the top of this page

Connectivity

Consumers may access the vocabulary server either via SOAP or HTTP-POX sometimes wrongly (in this instance) referred to as RESTful access.

SOAP consumers should generate their client implementation from the WSDL available at http://vocab.ndg.nerc.ac.uk/1.1/VocabServerAPI_dl.wsdl.

HTTP-POX consumers should construct a GET request with the URI formed thus

http://vocab.ndg.nerc.ac.uk/axis2/services/vocab/
whatLists
?categoryKey=http://vocab.ndg.nerc.ac.uk/term/C980/1/CL03

where

If the cardinality of a parameter indicates you may specify more than one instance of a particular parameter, you may do this by including another key value pair indicating the criteria. For example, requesting the contents of two lists from getList looks like this

http://vocab.ndg.nerc.ac.uk/axis2/services/vocab/
getList
?recordKey=http://vocab.ndg.nerc.ac.uk/list/C110/4
&recordKey=http://vocab.ndg.nerc.ac.uk/list/C161/0

Go to the top of this page

XML data types

The service returns results as XML documents. The major data types of which are discussed below.


types:codeTableTypeType


XML conforming to the following XML Schema fragment is returned for each matching list.

<xsd:complexType name="codeTableTypeType">

      <xsd:sequence>
              <xsd:element name="listKey" type="xsd:string" />
              <xsd:element name="listLongName" type="xsd:string" />
              <xsd:element name="listShortName" type="xsd:string" />
              <xsd:element name="listDefinition" type="xsd:string" />
              <xsd:element name="listVersion" type="xsd:int" />
              <xsd:element name="listLastMod" type="xsd:dateTime" />
      </xsd:sequence>
</xsd:complexType>

where

types:codeTableRecordType

XML conforming to the following XML Schema fragment is returned for each matching term.

<xsd:complexType name="codeTableRecordType">
      <xsd:sequence>
              <xsd:element name="listKey" type="xsd:string" minOccurs="0" />
              <xsd:element name="entryKey" type="xsd:string" />
              <xsd:element name="entryTerm" type="xsd:string" />
              <xsd:element name="entryTermAbbr" type="xsd:string" nillable="true" />
              <xsd:element name="entryTermDef" type="xsd:string" nillable="true" />
              <xsd:element name="entryTermLastMod" type="xsd:dateTime" />
              <xsd:element name="exactMatch" type="types:codeTableRecordType" minOccurs="0" maxOccurs="unbounded" />
              <xsd:element name="narrowMatch" type="types:codeTableRecordType" minOccurs="0" maxOccurs="unbounded" />
              <xsd:element name="broadMatch" type="types:codeTableRecordType" minOccurs="0" maxOccurs="unbounded" />
              <xsd:element name="minorMatch" type="types:codeTableRecordType" minOccurs="0" maxOccurs="unbounded" />
              <xsd:element name="majorMatch" type="types:codeTableRecordType" minOccurs="0" maxOccurs="unbounded" />
      </xsd:sequence>
</xsd:complexType>

where

Null content in both XML data types is represented using W3C convention. For example, an absent abbreviated name is represented by

<ns1:entryTermAbbr xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="1" />

Predicate bit mask

The predicate bit mask is calculated by ORing together the following values. The predicate must not be equal to zero.

Predicate name Value (Hexadecimal) Value (Decimal)
hasExactMatch 0x01 1
hasNarrowMatch 0x02 2
hasBroadMatch 0x04 4
hasMinorMatch 0x08 8
hasMajorMatch 0x10 16

Go to the top of this page

A description of these terms is available from the W3C: http://www.w3.org/2004/02/skos/mapping.rdf


Related BODC pages

BODC Web Services        Vocabulary server method details
NERC DataGrid (NDG)    

Related external links

NERC DataGrid (NDG) vocabulary server        Open Geospatial Consortium, Inc (OGC)

 

NERC DataGrid NERC DataGrid NERC DataGrid

 


Copyright − http://www.bodc.ac.uk/help_and_hints/using_this_web_site/copyright/

Content disclaimer − http://www.bodc.ac.uk/help_and_hints/using_this_web_site/content_disclaimer/


  © BODC & NERC, 2008

 

British Oceanographic Data Centre
Close
 
Close