Skip to content
Doug Latornell edited this page Mar 19, 2020 · 12 revisions

Schema

Format: attribute: DATA_TYPE

{
    "dataset_key": {
        "name": STRING,
        "attribution": STRING,
        "climatology": STRING (UNUSED AT THIS TIME),
        "enabled": BOOL,
        "help": STRING,
        "quantum": STRING,
        "url": STRING,
        "geo_ref": {
            "url": STRING,
            "drop_variables": LIST,
        },
        "lat_var_key": STRING,
        "long_var_key": STRING,
        "time_dim_units": STRING,
        "cache": INTEGER,
        "variables": {
             "variable_key_from_dataset": { "name": STRING, "unit": STRING, "scale": ARRAY, "zero_centered": STRING, "equation": STRING, "dims": ARRAY, "scale_factor": REAL },
        }
    },
}

Attribute details

Optional attributes are indicated as such.

  • name User-friendly name for the dataset. Displayed in the front-end in the dataset dropdown menu.
  • attribution (OPTIONAL) A string containing the source of the dataset.
  • climatology (UNUSED ATTRIBUTE) URL to a climatology dataset.
  • help (OPTIONAL) Summary text of the dataset displayed in the front-end.
  • enabled If true, the Navigator will "see" this dataset and make it available to the API (and the front-end by extension).
  • quantum The time scale of the dataset. Values can be "hour", "day", or "month".
  • url Path to an sqlite database output by the index tool, an OPeNDAP URL, or a single netCDF file.
  • geo_ref (OPTIONAL) Dictionary containing information about a geo-reference dataset that will be merged into a dataset from an OPeNDAP URL or netCDF file. See geo_ref Attribute below for more details.
  • lat_var_key key of the latitude variable in the dataset.
  • lon_var_key key of the longitude variable in the dataset.
  • time_dim_units The units of the time dimension as seen in ncdump -h. See example below.
  • cache (OPTIONAL) Time (in hours) to keep generated tiles from the dataset in the filesystem cache. If not defined, tiles will be stored indefinitely in the TILE_CACHE_DIR defined on oceannavigator.cfg.

Variable attributes

  • name User-friendly name for the dataset. Displayed in the front-end in the variable dropdown menu.
  • unit Variable units.
  • scale Colourmap scale. See example below.
  • zero_centered (OPTIONAL) Values can be "true" or "false". This should be set to "true" for vector variables only (excluding magnitude variables). Default is "false".
  • equation (OPTIONAL) Define a calculated variable here by implementing a simple math expression or by calling a function defined in data/calculated_parser/functions.py.
  • dims (OPTIONAL/REQUIRED) Specify the dimensions a calculated variable should have. OPTIONAL if not defining an equation, REQUIRED otherwise.
  • scale_factor (OPTIONAL) Scale variable values by this constant. Default is 1.0.

geo_ref Attribute

The geo-reference dataset is a mapping of model grid x-y indices and longitude-latitude coordinates. It is used for datasets such as those from the SalishSeaCast NEMO model for which the longitude-latitude coordinates are not included as coordinates or variables due to dataset structure requirements imposed by ERDDAP. The geo_ref attribute has 1 required and 1 optional element:

  • url An OPeNDAP URL or file system path from which to load the geo-reference dataset
  • drop_variables (OPTIONAL) A list of variable names in the geo-reference dataset that are to be excluded when it is merged into the associated OPeNDAP URL or netCDF dataset

Examples

"wcps_2dll": {
        "url": "/data/db/wcps-2dll.sqlite3",
        "name": "WCPS-GLS Great Lakes Coupled Atmosphere-Ocean-Ice Forecast - LatLon",
        "quantum": "hour",
        "type": "forecast",
        "time_dim_units": "seconds since 1950-01-01 00:00:00",
        "enabled": true,
        "cache": 6,
        "climatology": "http://navigator.oceansdata.ca:8080/thredds/dodsC/climatology/Levitus98_PHC21/aggregated.ncml",
        "attribution": "The Canadian Centre for Meteorological and Environmental Prediction",
        "lat_var_key": "latitude",
        "lon_var_key": "longitude",
        "help": "",
        "variables": {
            "uwindsurf": { "name": "Surface Wind Y Velocity", "unit": "m/s", "scale": [-15, 15], "zero_centered": "true" },
            "vwindsurf": { "name": "Surface Wind X Velocity", "unit": "m/s", "scale": [-15, 15], "zero_centered": "true" },
            "magwindsurf": { "name": "Suface Wind Velocity", "unit": "m/s", "scale": [0, 15], "equation": "magnitude(uwindsurf, vwindsurf)",  "dims": ["time", "latitude", "longitude"] },
            "votemper": { "name": "Temperature", "unit": "Celsius", "scale": [-0.07, 5], "equation": "votemper - 273.15", "dims": ["time", "latitude", "longitude"] },
            "tairsurf": { "name": "Surface Air Temperature", "unit": "Celsius", "scale": [-20, 20], "equation": "tairsurf - 273.15", "dims": ["time", "latitude", "longitude"] }
        }
    },
    "salishseacast_2d_ssh": {
        "enabled": true,
        "name": "SalishSeaCast Sea Surface Height",
        "envtype": ["ocean"],
        "type": "historical",
        "url": "https://salishsea.eos.ubc.ca/erddap/griddap/ubcSSgSurfaceTracerFields1hV19-05",
        "geo_ref": {
            "url": "/data/grids/salishsea/geo_reference_201702.nc",
            "drop_variables": ["bathymetry"]
        },
        "quantum": "hour",
        "time_dim_units": "seconds since 1970-01-01 00:00:00",
        "lat_var_key": "latitude",
        "lon_var_key": "longitude",
        "attribution": "Mesoscale Ocean & Atmosphere Dynamics Group (MOAD), Earth, Ocean & Atmopspheric Sciences (EOAS), University of British Columbia",
        "help": "",
        "variables": {
            "ssh": { "name":  "Sea Surface Height", "unit":  "m", "scale":  [-4, 4], "zero_centered": "true" }
        }
    },
Clone this wiki locally