You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 2
Next »
Vector products are accessible through the GIBS WMTS and WMS visualization services. WMTS responses are formatted as gzip-compressed Mapbox vector tiles (specification), or "MVTs", while WMS responses are available as raster images.
The data behind each visualization service is the same, however the mechanism for styling differs. A client application is responsible for applying styling to MVTs when using the WMTS API. Conversely, GIBS applies a default style when rendering vector data as a raster when using the WMS API. See the Vector Layer Styles section below for more information.
An MVT returned via the WMTS service contains information for a client to draw the features within the user interface, but also a set of properties that contain data associated with the feature. The Mapbox vector tile specification provides structure for representing these data, but no mechanism for interpreting the meaning or intended use. As such, additional metadata is required. GIBS has developed a specification for defining each property contained within MVTs in its vector products. See the Vector Layer Metadata section below for more information.
The following sections provide examples for how to detect and interact with vector products within the GIBS WMTS and WMS services
As mentioned previously, the Mapbox vector tile specification provides structure for representing these data, but no mechanism for interpreting the meaning or intended use. As such, GIBS has developed the following specification for defining each property contained within MVTs in its vector products. Each vector product has an associated vector layer metadata file which provides the following information:
- A unique identifier for the property, as found in the MVT data itself
- Descriptive information such as a title, description, and the function of the property (e.g. identification vs styling)
- The data type and optional units for the property
- Valid values for the property
- Additional flags for improved UI experience (e.g. "is this optional")
JSON?
Contents
A vector layer metadata file is a list of content blocks defining each property. The following snippet shows an example of a single property's definition within the vector layer metadata file.
{
"Identifier" : "NumReactor",
"Title" : "Number of Reactors",
"Description": "Number of Active Reactors at a given Plant",
"Units" : "Reactors",
"DataType" : "int",
"ValueRanges": [ { "Min": 1, "Max": 9 } ],
"Function" : "Style",
"IsOptional" : false,
"IsLabel" : false
}
The following block provides a full example of a vector layer metadata file.
{
"id": "Nuclear_Power_Plant_Locations",
"mvt_properties": [
{
"Identifier" : "Plant",
"Title" : "Plant Site Name",
"Description": "Name of Nuclear Plant",
"DataType" : "string",
"Function" : "Identify",
"IsOptional" : false,
"IsLabel" : true
},
{
"Identifier" : "NumReactor",
"Title" : "Number of Reactors",
"Description": "Number of Active Reactors at a given Plant",
"Units" : "Reactors",
"DataType" : "int",
"ValueRanges": [ { "Min": 1, "Max": 9 } ],
"Function" : "Style",
"IsOptional" : false,
"IsLabel" : false
},
{
"Identifier" : "p10_30",
"Title" : "Population within 30km (2010)",
"Description": "Total population within a 30km radius of the nuclear plant (2010)",
"Units" : "Persons",
"DataType" : "int",
"ValueRanges": [ { "Min": 275, "Max": 7170590 } ],
"Function" : "Describe",
"IsOptional" : false,
"IsLabel" : false
}
}
Stuff...
- Identifier [1]
- Title [1]
- Descripition [1]
- Units [0..1]
- Data Type [1]
- Value Ranges [0..1]
- Value List [0..1]
- Value Map [0..1]
- Function [1]
- Is Optional [1]
- Is Label [1]
Name | Description | Type | Required? | Sample Value |
---|
Identifier | The unique identifier of the MVT property. | String | | FRP |
---|
Title | A human readable title for the property. | String | | Fire Radiative Power |
---|
Description | A human readable description for the property. | String | |
|
---|
Units | The units value to be applied to the actual value of this property. | String | | MW |
---|
DataType | The data type of this property. | Enumeration | | float |
---|
ValueList | A listing of the possible valid values for a 'string' property type, if the property has a controlled list. |
|
|
|
---|
ValueRanges | A listing of mutually exclusive min and max value pairs representing ranges of valid values for the 'Integer', 'float', and 'datetime' property types. |
|
|
|
---|
ValueMap | A map of the possible valid values for 'string' or 'int' property types, and their associated description. |
|
|
|
---|
Function | The property’s intended function as a part of the visualization product. | Enumeration | | Describe |
---|
IsOptional | Indicates whether the property is optional. | Boolean | | true |
---|
IsLabel | Indicates whether the property should be used to label the point in a user interface. | Boolean | | true |
---|
Identifier
Description
The unique identifier of the MVT property.
Sample Value
“FRP”
Title
Description
The unique identifier of the MVT property.
Sample Value
“FRP”
Description
Description
A human readable description for the property written using HTML notation. Newlines within the markdown must be escaped. This value is used for informational dialogues.
Sample Value
“The Fire Radiative Power (FRP) is a measure of the rate of radiant heat output from a fire. It has been demonstrated in small-scale experimental fires that the FRP of a fire is related to the rate at which fuel is being consumed (Wooster et al., 2005) and smoke emissions released (Freeborn et al., 2008).”
Units
Description
An optional units value to be applied to the actual value of this property.
Sample Value
“MW”
Data Type
Description
The data type of this property. Valid values include:
- ‘string’
- ‘int’
- ‘float’
- ‘datetime’ (YYYY-MM-DDTHH:MM:SSZ)
Sample Value
“double”
Valid Values
Value Ranges
Description
A listing of mutually exclusive min and max value pairs representing ranges of valid values for the “Integer”, “Float”, and “DateTime” property types.
Sample Value
{ "Min": 0, "Max": 99999999 }
Value List
Description
A listing of the possible valid values for a “String” property type, if the property has a controlled list.
Sample Value
[ "Lake Ice", "Sea Ice", "Not Ice" ]
Value Map
Description
A map of the possible valid values for “String” or “int” property types, and their associated description. This facilitates a KVP lookup table allowing for a simplified property value (i.e. the ‘key’ in the KVP).
Sample Value
{ 10 : “Processed Fire Pixel”, 20 : “Saturated Fire Pixel” }
Function
Description
The property’s intended function as a part of the visualization product. Possible functions include:
- Identify - Properties that form a “primary key” to identify the visualization product. Often these are used used during processing to separate data points into separate layers (e.g. Platform and Day/Night). These properties typically would also be in the associated layer metadata (e.g. Platform or Version) and embedded in the layer identifier (e.g. MODIS_Terra_Day_Fires).
- Style - Properties that are utilized for styling or filtering vector features. These will typically be included in the default style(s) offered through WMS or the Mapbox Style JSONs.
- Describe - Properties that provide additional information regarding the vector feature (e.g. Acquisition Time or Inclination Angle). They may be useful for tooltip presentation to users.
Sample Value
“Identify”
Is Optional
Description
Indicates whether the property is optional.
Sample Value
True
Is Label
Description
Indicates whether the property should be used to label the point in a user interface.
Sample Value
True