Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Interface

URL prefix

Description

JSON

/json

returns JSON formatted data structures, used for raw data transfer

CDL

/cdl

returns a CDL template with markers replaced

netCDF

/netcdf

returns an empty netCDF file based on a CDL template

Python

/python

returns a Python script generating an empty netCDF file based on a CDL template

Matlab

/matlab

returns a Matlab script generating an empty netCDF file based on a CDL template

R/rncdf4returns a R script generating an empty netCDF file based on a CDL template

ncML

/ncml

returns a netCDF file description in netCDF Markup Language (ncML) which can be used to non-intrusively append netCDF meta data to an already existing netCDF file. The resulting XML formatted file should be kept with the netCDF file that it describes.

...

Syntax

Result

Example

/json/templates

Returns list with available templates

http://dtvirt61zandmotor.citg.deltarestudelft.nl/netcdfkickstarter/json/templates

/json/templates/<template>?category=<category>

Returns list with markers in given template

http://dtvirt61zandmotor.citg.deltarestudelft.nl/netcdfkickstarter/json/templates/grid.cdl
http://dtvirt61zandmotor.citg.deltarestudelft.nl/netcdfkickstarter/json/templates/grid.cdl?category=dim

/json/categories

Returns list with available marker categories

http://dtvirt61zandmotor.citg.deltarestudelft.nl/netcdfkickstarter/json/categories

/json/standardnames?search=<regexp>

Returns list with available CF standard names and descriptions

http://dtvirt61zandmotor.citg.deltarestudelft.nl/netcdfkickstarter/json/standardnames
http://dtvirt61zandmotor.citg.deltarestudelft.nl/netcdfkickstarter/json/standardnames?search=air.*temperature

...

The CDL and netCDF interface are virtually the same. The only difference is that the netCDF interface transforms the resulting CDL file into a netCDF file using the ncgen tool. The interfaces use the following syntax:

Code Block

/cdl/<template>?m[<marker>]=<value>&m[<marker>]=<value>& ... &m[<marker>]=<value>
/netcdf/<template>?m[<marker>]=<value>&m[<marker>]=<value>& ... &m[<marker>]=<value>

Some categories of markers are available as blocks in the CDL template. For example the var category defines a geophysical variable to be stored in the netCDF file (e.g. altitude) and is available as block in most CDL templates. If the markers for this category (or block) are used multiple times, the block is used multiple times which results in multiple geophysical variables stored in that netCDF file. For example:

Code Block

/netcdf/grid.cdl?m[var.name]=altitude
/netcdf/grid.cdl?m[var.name]=altitude&m[var.name]=grainsize

Python, Matlab and ncML interface

Also the Python, Matlab, R and ncML interface are virtually the same. They all generate scripts that in turn generate an empty netCDF file according to a given CDL template (with markers replaced). The only difference between the interfaces is the language the generated script uses. The interfaces use the same syntax as the CDL and netCDF interface:

Code Block

/python/<template>?m[<marker>]=<value>&m[<marker>]=<value>& ... &m[<marker>]=<value>
/matlab/<template>?m[<marker>]=<value>&m[<marker>]=<value>& ... &m[<marker>]=<value>
/rncdf4/<template>?m[<marker>]=<value>&m[<marker>]=<value>& ... &m[<marker>]=<value>
/ncml/<template>?m[<marker>]=<value>&m[<marker>]=<value>& ... &m[<marker>]=<value>

...

Using the JSON, CDL and netCDF interfaces of the netCDF kickstarter clients or graphical user interfaces (GUI) can be built that interact with the netCDF kickstarter. The netCDF kickstarter hosts it's own very simple webinterface. But the OpenEarthTools repository also contains a kickstarter toolbox that, for example, extracts the dimensions from your data itself.

...

The netCDF kickstarter is currently hosted at http://dtvirt61zandmotor.citg.deltarestudelft.nl/netcdfkickstarter/. This might not be its final location, since the tool is still under development. But any movements will be announced here.

...