Skip to content
Pascal Dihé edited this page May 24, 2016 · 11 revisions

Open Data Registration Tool JSON API

The Open Data Registration Tool accepts a single query parameter representations that has to contain an encoded JSON array of the following format:

    [{
        "name": "name",
        "description": "description",
        "contentlocation": "http://127.0.0.1/",
        "contenttype": "contenttype",
        "type": "type",
        "function": "function",
        "protocol": "protocol",
        "uploadmessage": "uploadmessage"
    }]

A JSON array representations array submitted to the Open Data Registration Tool must contain at least one element. Only the values of contentlocation, contenttype and function of the first array element are shown in the Open Data Registration Tool.

Specification

The representation JSON object is a description of the “physical” representation of a dataset. This is in line with the specification of SWITCH-ON's Standard Information Model for Meta-Data (SIM): A resource (dataset) may have different representations. For example, a dataset may be available in different formats (WMS, WSF, downloadable SHP File) or an aggregated representation of the data for enabling preview and search functionality may exist.

The representation JSON object defines the following properties:

  • name name of the representation (mandatory)
  • description description of the representation (optional)
  • contentlocation URI (link) of the representation (mandatory)
  • contenttype content type (MIME Type) of the representation (mandatory)
  • type type of the representation (mandatory)
  • function function of the contentlocation link (mandatory)
  • protocol protocol of the contentlocation link (mandatory)
  • uploadmessage processing instructions evaluated by the SIP Backend when resource meta-data is uploaded (optional)

Allowed Tags

Apart from name, description, contentlocation and uploadmessage, the value of the properties must comply to predefined "tags" defined in the SIM. The allowed values for contenttype, type, function and protocol are listed below.

contentype

MIME Type of the representation (open group which several predefined tags).

name description
application/adrg ADRG (Digitilized Raster Graphics)
application/agr AGR (ESRI ArcGIS Ascii Grid)
application/aib AIB (ARC/INFO Coverages)
application/dem DEM (Digital Elevation Model)
application/dlg DLF (Digital Line Graph)
application/drg DRG (Digital raster graphic)
application/gml+xml GML (Geography Markup Language)
application/grb GRIB (GRIdded Binary)
application/gzip TAR.GZ (Compressed tar file)
application/json JSON (Java Script Object Notation)
application/ntf NTF (National Imagery Transmission Format)
application/octet-stream unknown or multiple formats
application/pdf PDF (Portable Document Format)
application/sdf SDF (Spatial Data File)
application/shp SHP (ESRI Shapefile)
application/vnd.geo+json GEOJSON (Geo JavaScript Object Notation)
application/vnd.google-earth.kml+xml KML (Keyhole Markup Language)
application/vnd.ms-access MDB (MS Access File)
application/vnd.ms-excel XLS (MS Excel File)
application/wkb WKB (Well-known binary)
application/wkt WKT (Well-known text)
application/x-hdf5 HDF5 (hierachical data format)
application/xhtml+xml XHTML (Extensible HyperText Markup Language)
application/xml XML (eXtensible Markup Language)
application/x-netcdf NETCDF (Network Common Data Form)
application/x-rar-compressed RAR (Compredded Roshal ARchive)
application/x-tar TAR (Composite tar file)
application/zip ZIP (zip archive file format)
image/ecw ECW (Enhanced Compressed Wavelet)
image/geotiff GEOTIFF (Tagged Image File Format)
image/gif GIF (Graphigs Interchange Format)
image/jp2 JP2 (JPEG2000)
image/jpeg JPEG (Joint Photographic Experts Group)
image/png PNG (Portable Network Graphics)
image/tiff TIFF (Tagged Image File Format)
image/vnd.dwg DWG (AutoCAD DWG)
image/vnd.dxf DXF (AutoCAD DXF)
image/x-mrsid MRSID (Multi-Resolution raster format)
text/csv CSV (Comma Separated Values)
text/html HTML (Hypertext Markup Language)
text/plain TXT (raw, ascii text)
text/rtf RTF (Rich Text Format)
text/tab-separated-values TAB (Tab Separated Values)
type

SIP internal type of the representation of the resource (fixed group).

name description
aggregated data The representation holds aggregated data of the resource
original data The representation holds the original data of the resource
preview data The representation holds preview data of the resource, e.g. an image or a specific WMS getMap request

In general original data should be used. However, the representation's type property is also evaluated by BYOD to show WMS or TMS (WMTS) Layers on the Map Component. If such a WMS or TMS layer is available (Example), an additional representation of the type aggregated data can be added to the JSON array. In this case, the following property values must be used:

#####function Function that can be performed following the contentLocation link to the resource representation (fixed group, ISO standard codelist).

name description
application link points to an application (e.g. downloadable exe or Java Webstart rich internet application) which can be used to get the resource
download The link will get the dataset. The function of the link is to download a file.
information link provides information about resource
link to order data The link value is the URL of a web application requiring user interaction to order/request access to the dataset.
service link is service endpoint

#####protocol Protocol of the service that can be accessed at the contentLocation of the resource representation (open group with several predefined tags from standard ISO codelists).

name description
OGC:CSW OGC Catalogue Service for the Web
OGC:GML OGC Geography Markup Language
OGC:SOS OGC Sensor Observation Service
OGC:WCS OGC Web Coverage Service
OGC:WFS-1.0.0-http-get-capabilities OGC Web Feature Service, a WFS getcapabilities operation
OGC:WFS-1.0.0-http-get-feature OGC Web Feature Service, a WFS getFeature operation
OGC:WMS-1.1.1-http-get-capabilities OGC Web Map Service
OGC:WMS-1.1.1-http-get-map OGC Web Map Service, a WMS getMap operation
OGC:WPS OGC Web Processing Service
OPeNDAP:OPeNDAP OPeNDAP root URL
OpenSearch1.1 OpenSearch template
OpenSearch1.1:Description OpenSearch description document
UNIDATA:CDM Common Data Model Remote Web Service
UNIDATA:CdmRemote Common Data Model index subsetting
UNIDATA:CdmrFeature Common Data Model coordinate subsetting
UNIDATA:NCSS NetCDF Subset Service
WWW:DOWNLOAD-1.0-ftp--download File for download through FTP
WWW:DOWNLOAD-1.0-http--download Web Address (URL), this is a download URL
WWW:FORM Web form
WWW:LINK-1.0-http--link Web Address (URL), should be used when no further information about the resource is available
WWW:RIA Rich Internet Application (JavaScript/HTML5 application)
WWW:TILESERVER ...

####Processing Instructions (uploadmessage) The optional property uploadmessage may contain a processing instruction that is evaluated by the SIP Backend when the resource meta-data is uploaded to SIP Meta-Data Repository. Please refer to the documentation of Processing Instructions for more information and examples.

Example

The following example JSON array defines 4 representations:

  • the main representation (MDB downland)
  • an alternate download representation (ZIP File)
  • another alternate service representation (WFS)
  • an 'aggregated' representation that is used as map layer in BYOD (TMS)
[{
        "name": "ECRINS_lake MS Access file",
        "type": "original data",
        "function": "download",
        "protocol": "WWW:DOWNLOAD-1.0-http--download",
        "contentlocation": "http://projects.eionet.europa.eu/ecrins/library/hydrography/v1/ecrlakmdb/download/1/EcrLak.mdb",
        "contenttype": "application/vnd.ms-access"
    }, {
        "name": "ECRINS_lake Spatialite file",
        "type": "original data",
        "function": "download",
        "protocol": "WWW:DOWNLOAD-1.0-http--download",
        "contentlocation": "http://sdi.eea.europa.eu/public/data/eea_v_3035_250_k_ecrins-fec_1990-2006_rev01/EcrFEC_sqlite.zip",
        "contenttype": "application/zip"
    }, {
        "name": "ECRINS_lake WFS",
        "type": "original data",
        "function": "service",
        "protocol": "OGC:WFS-1.0.0-http-get-feature",
        "contentlocation": "http://tl-243.xtr.deltares.nl/geoserver/ECRINS/wms?service=WFS&version=1.0.0&request=GetCapabilities",
        "contenttype": "application/xml"
    }, {
        "name": "ECRINS:ECRINS_lakes Tileserver",
        "description": "ECRINS:ECRINS_lakes Tileserver",
        "type": "aggregated data",
        "function": "service",
        "protocol": "WWW:TILESERVER",
        "contentlocation": "http://tl-243.xtr.deltares.nl/tileserver/ECRINS:ECRINS_lakes@EPSG:900913@png/{z}/{x}/{y}.png",
        "contenttype": "image/png"
    }]

The JSON array must be encoded with encodeURIComponent before it can be passed via the representations query parameter to the Open Data Registration Tool

%5B%7B%0A%20%20%20%20%20%20%20%20%22name%22%3A%20%22ECRINS_lake%20MS%20Access%20file%22%2C%0A%20%20%20%20%20%20%20
%20%22type%22%3A%20%22original%20data%22%2C%0A%20%20%20%20%20%20%20%20%22function%22%3A%20%22download%22%2C%0A%20
%20%20%20%20%20%20%20%22protocol%22%3A%20%22WWW%3ADOWNLOAD-1.0-http--download%22%2C%0A%20%20%20%20%20%20%20
%20%22contentlocation%22%3A%20%22http%3A%2F
%2Fprojects.eionet.europa.eu%2Fecrins%2Flibrary%2Fhydrography%2Fv1%2Fecrlakmdb%2Fdownload%2F1%2FEcrLak.mdb%22%2C
%0A%20%20%20%20%20%20%20%20%22contenttype%22%3A%20%22application%2Fvnd.ms-access%22%0A%20%20%20%20%7D%2C%20%7B%0A%20
%20%20%20%20%20%20%20%22name%22%3A%20%22ECRINS_lake%20Spatialite%20file%22%2C%0A%20%20%20%20%20%20%20%20%22type%22%3A
%20%22original%20data%22%2C%0A%20%20%20%20%20%20%20%20%22function%22%3A%20%22download%22%2C%0A%20%20%20%20%20%20%20
%20%22protocol%22%3A%20%22WWW%3ADOWNLOAD-1.0-http--download%22%2C%0A%20%20%20%20%20%20%20%20%22contentlocation%22%3A
%20%22http%3A%2F%2Fsdi.eea.europa.eu%2Fpublic%2Fdata%2Feea_v_3035_250_k_ecrins-
fec_1990-2006_rev01%2FEcrFEC_sqlite.zip%22%2C%0A%20%20%20%20%20%20%20%20%22contenttype%22%3A%20%22application%2Fzip
%22%0A%20%20%20%20%7D%2C%20%7B%0A%20%20%20%20%20%20%20%20%22name%22%3A%20%22ECRINS_lake%20WFS%22%2C%0A%20%20%20%20%20
%20%20%20%22type%22%3A%20%22original%20data%22%2C%0A%20%20%20%20%20%20%20%20%22function%22%3A%20%22service%22%2C
%0A%20%20%20%20%20%20%20%20%22protocol%22%3A%20%22OGC%3AWFS-1.0.0-http-get-feature%22%2C%0A%20%20%20%20%20%20%20
%20%22contentlocation%22%3A%20%22http%3A%2F%2Ftl-
243.xtr.deltares.nl%2Fgeoserver%2FECRINS%2Fwms%3Fservice%3DWFS%26version%3D1.0.0%26request%3DGetCapabilities%22%2C
%0A%20%20%20%20%20%20%20%20%22contenttype%22%3A%20%22application%2Fxml%22%0A%20%20%20%20%7D%2C%20%7B%0A%20%20%20
%20%20%20%20%20%22name%22%3A%20%22ECRINS%3AECRINS_lakes%20Tileserver%22%2C%0A%20%20%20%20%20%20%20%20%22description
%22%3A%20%22ECRINS%3AECRINS_lakes%20Tileserver%22%2C%0A%20%20%20%20%20%20%20%20%22type%22%3A%20%22aggregated%20data
%22%2C%0A%20%20%20%20%20%20%20%20%22function%22%3A%20%22service%22%2C%0A%20%20%20%20%20%20%20%20%22protocol%22%3A
%20%22WWW%3ATILESERVER%22%2C%0A%20%20%20%20%20%20%20%20%22contentlocation%22%3A%20%22http%3A%2F%2Ftl-
243.xtr.deltares.nl%2Ftileserver%2FECRINS%3AECRINS_lakes%40EPSG%3A900913%40png%2F%7Bz%7D%2F%7Bx%7D%2F%7By%7D.png
%22%2C%0A%20%20%20%20%20%20%20%20%22contenttype%22%3A%20%22image%2Fpng%22%0A%20%20%20%20%7D%5D

Open Data Registration Tool URL with representations query parameter:

http://switchon.cismet.de/open-data-registration-snapshot/index.html

Resource with 4 representations in BYOD:

http://switchon.cismet.de/sip-snapshot/#/resource/11978

Clone this wiki locally