# gdalmdiminfo

Added in version 3.1.

Reports structure and content of a multidimensional dataset.

## Synopsis

    Usage: gdalmdiminfo [--help] [--long-usage] [--help-general]
                        [-detailed] [-nopretty] [-array <array_name>]
                        [-limit <number>] [-oo <NAME>=<VALUE>]... [-if <format>]...
                        [-arrayoption <NAME>=<VALUE>]... [-stats]
                        <dataset_name>

## Description

gdalmdiminfo program lists various information about a GDAL supported multidimensional raster dataset as JSON output. It follows the following JSON schema gdalmdiminfo_output.schema.json.

The following command line parameters can appear in any order

--help

  Show this help message and exit

--help-general

  Gives a brief usage message for the generic GDAL commandline options and exit.

-detailed

  Most verbose output. Report attribute data types and array values.

-nopretty

  Outputs on a single line without any indentation.

-array <array_name>

  Name of the array used to restrict the output to the specified array.

-limit <number>

  Number of values in each dimension that is used to limit the display of array values. By default, unlimited. Only taken into account if used with -detailed.

-oo <NAME>=<VALUE>

  Dataset open option (format specific). This option may be used several times.

-arrayoption <NAME>=<VALUE>

  Option passed to `GDALGroup::GetMDArrayNames()` to filter reported arrays. Such option is format specific. Consult driver documentation. This option may be used several times.

-stats

  Read and display array statistics. Force computation if no statistics are stored in an array.

  Added in version 3.2.

-if <format>

  Format/driver name to be attempted to open the input file(s). It is generally not necessary to specify it, but it can be used to skip automatic driver detection, when it fails to select the appropriate driver. This option can be repeated several times to specify several candidate drivers. Note that it does not force those drivers to open the dataset. In particular, some drivers have requirements on file extensions.

  Added in version 3.2.

## C API

This utility is also callable from C with `GDALMultiDimInfo()`.

## Examples

### Example 1: Display general structure

    $ gdalmdiminfo netcdf-4d.nc

    {
      "type": "group",
      "name": "/",
      "attributes": {
        "Conventions": "CF-1.5"
      },
      "dimensions": [
        {
          "name": "levelist",
          "full_name": "/levelist",
          "size": 2,
          "type": "VERTICAL",
          "indexing_variable": "/levelist"
        },
        {
          "name": "longitude",
          "full_name": "/longitude",
          "size": 10,
          "type": "HORIZONTAL_X",
          "direction": "EAST",
          "indexing_variable": "/longitude"
        },
        {
          "name": "latitude",
          "full_name": "/latitude",
          "size": 10,
          "type": "HORIZONTAL_Y",
          "direction": "NORTH",
          "indexing_variable": "/latitude"
        },
        {
          "name": "time",
          "full_name": "/time",
            "size": 4,
          "type": "TEMPORAL",
          "indexing_variable": "/time"
          }
      ],
      "arrays": {
        "levelist": {
          "datatype": "Int32",
          "dimensions": [
              "/levelist"
            ],
          "attributes": {
            "long_name": "pressure_level"
          },
          "unit": "millibars"
        },
        "longitude": {
          "datatype": "Float32",
          "dimensions": [
            "/longitude"
          ],
          "attributes": {
            "standard_name": "longitude",
            "long_name": "longitude",
            "axis": "X"
          },
          "unit": "degrees_east"
        },
        "latitude": {
          "datatype": "Float32",
          "dimensions": [
            "/latitude"
          ],
          "attributes": {
            "standard_name": "latitude",
            "long_name": "latitude",
            "axis": "Y"
          },
          "unit": "degrees_north"
        },
        "time": {
          "datatype": "Float64",
          "dimensions": [
            "/time"
          ],
          "attributes": {
            "standard_name": "time",
            "calendar": "standard"
          },
          "unit": "hours since 1900-01-01 00:00:00"
        },
        "t": {
          "datatype": "Int32",
          "dimensions": [
            "/time",
            "/levelist",
            "/latitude",
            "/longitude"
          ],
          "nodata_value": -32767
        }
      },
      "structural_info": {
        "NC_FORMAT": "CLASSIC"
      }
    }

### Example 2: Display detailed information about a given array

    $ gdalmdiminfo netcdf-4d.nc -array t -detailed -limit 3