Version 1.1 Vocabulary Server

Although the V1.1 code will remain operational for the foreseeable future, existing users are urged to convert to Vocabulary Server version 2.0 as soon as possible and the development of new V1.1 applications is strongly discouraged.

Caveats for the V1.1.4 Vocabulary Server release

List and term URIs

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




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-POX consumers should construct a GET request with the URI formed thus


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

XML data types

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


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

<xsd:complexType name="codeTableTypeType">

              <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" />



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

<xsd:complexType name="codeTableRecordType">
              <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" />


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="" 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

A description of these terms is available from the W3C:


Related BODC pages

BODC Web Services        NERC Vocabulary Server version 2.0
NERC DataGrid (NDG)   Version 1.0 Vocabulary Server method details

Related external links

NERC Vocabulary Server        Open Geospatial Consortium, Inc (OGC)


NERC DataGrid NERC DataGrid NERC DataGrid