Skip To Content

Multidimensional Info

  • URL:https://<imageservice-url>/multidimensionalInfo
  • Required Capability:Image
  • Version Introduced:10.3

Description

The multidimensionalInfo resource returns multidimensional information for the service. This resource is supported if the hasMultidimensions property of the service is true.

Common data sources for multidimensional image services are mosaic datasets created from netCDF, GRIB, and HDF data.

Request parameters

ParameterDetails
returnDimensionValues

Returns the dimension values of an image service.

Values: always | never | ifIrregular

renderingRule

Added at 10.9. This parameter specifies the rendering rule for how the requested image service will be processed. The response is the multidimensional information that reflects a custom processing as defined by the rendering rule.

See raster function JSON objectsfor the syntax and examples.

f

The response format. The default response format is html.

Values: html | json

Example usage

The following is a sample request URL that demonstrates returning the multidimensional information for an image service:

https://machine.domain.com/arcgis/rest/services/MyService/ImageServer/multidimensionalInfo?f=pjson

JSON Response syntax

The response contains dimensions for each variable in the service.


{	
  "multidimensionalInfo": {
    "variables": [
      {
        "name": "<variable>", //string
        "description": "<description>", //string
        "unit": "<unit>",		//string
        "dimensions": [
          {
            "name": "<name>", //string
            "description": "<description>", //string
            "unit": "<units>", //string
            "field": "<field>", //string. The corresponding field/attribute name
            "extent": [<extent_from>,<extent_to>], //the extent of dimension values, the element type depends on the dimension's field type, can be time, or double
            "hasRanges":<true | false>, //bool, indicates whether one dimension value has both lower and upper bounds.
            "values": [<value1>,...] //array of values. If hasRanges=false, each element is one single value; if hasRanges=true, each element is an array of lower/upper bounds
            "hasRegularIntervals": true| false, //added at 10.3.1
            "interval": <interval>, //double, added at 10.3.1
            "intervalUnit": <unit>, //string, added at 10.3.1 (e.g. "Months", "Years", "Days", "Hours",)
          },
          ...   
        ]
      },
      ...
    ]
  }
}

JSON Response examples

Example 1


{	
  "multidimensionalInfo": {
	 	 "variables": [
      {
   			  "name": "salinity",
   			  "description": "Salinity",
   			  "unit": "psu",
   			  "dimensions": [
          {
     				   "name": "StdTime",
     				   "description": "Valid Time",
     				   "unit": "ISO8601",
     				   "field": "StdTime",
     				   "extent": [1363651200000,1363910400000],
            "hasRegularIntervals": true,
            "interval": 3,
            "intervalUnit": "Hours",
     				   "hasRanges": false,
     				   "values": [1363651200000,1363662000000,...1363910400000]
          },
          {				
            "name": "StdZ",
     				   "description": "Depth",
     				   "unit": "esriMeters",
     				   "field": "StdZ",
     				   "extent": [-5000,0],
            "hasRegularIntervals": true,
            "interval": 3,
            "intervalUnit": "Hours",
     				   "hasRanges": false,
     				   "values": [-5000,-4000,...0]
          }
        ]
      },
      {
        "name": "water_temp",
        "description": "Water Temperature",
        "unit": "degC",
        "dimensions": [
          {
     				   "name": "StdTime",
     				   "description": "Valid Time",
     				   "unit": "ISO8601",
     				   "field": "StdTime",
     				   "extent": [1363651200000,1363910400000],
            "hasRegularIntervals": true,
            "interval": 3,
            "intervalUnit": "Hours",
     				   "hasRanges": false,
     				   "values": [1363651200000,1363662000000,...1363910400000]
          },
          {				
            "name": "StdZ",
     				   "description": "Depth",
     				   "unit": "esriMeters",
     				   "field": "StdZ",
     				   "extent": [-5000,0],
            "hasRegularIntervals": true,
            "interval": 3,
            "intervalUnit": "Hours",
     				   "hasRanges": false,
     				   "values": [-5000,-4000,...0]
          }
        ]
      }
    ]
  }
}

Example 2


{	
  "multidimensionalInfo": {
	 	 "variables": [
      {
        "name": "cape@spdl",
        "description": "Convective available potential energy [J\/kg] @ \"Level at specified pressure difference from ground to level\"",
        "unit": "J\/kg",
        "dimensions": [
          {
            "name": "StdPressure",
            "description": "\"Level at specified pressure difference from ground to level\"",
            "unit": "esriPascals",
            "field": "StdPressure",
            "extent": [
              18000,
              0
            ],
            "hasRegularIntervals": true,
            "interval": 3,
            "intervalUnit": "Hours",
            "hasRanges": true,
            "values": [[18000,0],[25500,0]]
          },
          {
            "name": "StdTime",
            "description": "time",
            "unit": "ISO8601",
            "field": "StdTime",
            "extent": [1378879200000,1378879200000],
            "hasRegularIntervals": true,
            "interval": 3,
            "intervalUnit": "Hours",
            "hasRanges": false,
            "values": [1378879200000]
          }
        ]
      }
    ]
  }
}