FAIR metadata generation

FAIR metadata generation#

FAIR principles provide some guidelines when producing and sharing datasets.

An openEO backend can make it easier to comply with these principles, by incorporating these principles in the implementation, so that users are automatically a step closer to generating FAIR-compliant open data.

These are a few examples that you want to look for as a user, or that a backend provider may want to implement:

As openEO backends do not automatically publish the data you generate, there’s also a number of principles that still require some attention, but still, with data and metadata generated by openEO, you should get a headstart!

This is an example of how openEO generated metadata looks like in STAC browser:

openEO metadata in STAC browser

This is the STAC collection metadata as raw STAC JSON:

{
  "assets": {
    "openEO_2021-10-14Z.tif": {
      "eo:bands": [
        {
          "name": "classification"
        },
        {
          "name": "confidence"
        }
      ],
      "file:nodata": [
        255
      ],
      "file:size": 6217374,
      "href": "https://openeo.vito.be/openeo/1.1/jobs/j-2310271419f040e1af6000397f82d225/results/assets/ZGZhNjc4Y2I5YWIxN2Y2NWQ0ZjAyNWUzMGZhYzVlMGQ5MDExNjE3NmU0NGZkMTdkNzAzNDE5MzIyNzQ3Y2JiZEBlZ2kuZXU%3D/ff1b8d19ac0f7da5ec0de65469687ef6/openEO_2021-10-14Z.tif?expires=1699532026",
      "proj:bbox": [
        7.4805357,
        53.8670476,
        12.615119,
        57.6290476
      ],
      "proj:epsg": 4326,
      "proj:shape": [
        61615,
        45144
      ],
      "raster:bands": [
        {
          "name": "classification",
          "statistics": {
            "maximum": 254,
            "mean": 254,
            "minimum": 254,
            "stddev": 0,
            "valid_percent": 0.1222
          }
        },
        {
          "name": "confidence",
          "statistics": {
            "maximum": 254,
            "mean": 254,
            "minimum": 254,
            "stddev": 0,
            "valid_percent": 0.1222
          }
        }
      ],
      "roles": [
        "data"
      ],
      "title": "openEO_2021-10-14Z.tif",
      "type": "image/tiff; application=geotiff"
    },
    "openEO_2021-11-01Z.tif": {
      "eo:bands": [
        {
          "name": "classification"
        },
        {
          "name": "confidence"
        }
      ],
      "file:nodata": [
        255
      ],
      "file:size": 67310450,
      "href": "https://openeo.vito.be/openeo/1.1/jobs/j-2310271419f040e1af6000397f82d225/results/assets/ZGZhNjc4Y2I5YWIxN2Y2NWQ0ZjAyNWUzMGZhYzVlMGQ5MDExNjE3NmU0NGZkMTdkNzAzNDE5MzIyNzQ3Y2JiZEBlZ2kuZXU%3D/d99a1d12a8ad8f4baee20f477a6a60a9/openEO_2021-11-01Z.tif?expires=1699532026",
      "proj:bbox": [
        7.4805357,
        53.8670476,
        12.615119,
        57.6290476
      ],
      "proj:epsg": 4326,
      "proj:shape": [
        61615,
        45144
      ],
      "raster:bands": [
        {
          "name": "classification",
          "statistics": {
            "maximum": 254,
            "mean": 213.73997589491,
            "minimum": 0,
            "stddev": 91.77160764761,
            "valid_percent": 40.9
          }
        },
        {
          "name": "confidence",
          "statistics": {
            "maximum": 254,
            "mean": 227.9460494272,
            "minimum": 1,
            "stddev": 59.206365744221,
            "valid_percent": 40.9
          }
        }
      ],
      "roles": [
        "data"
      ],
      "title": "openEO_2021-11-01Z.tif",
      "type": "image/tiff; application=geotiff"
    },
    "openEO_2021-11-06Z.tif": {
      "eo:bands": [
        {
          "name": "classification"
        },
        {
          "name": "confidence"
        }
      ],
      "file:nodata": [
        255
      ],
      "file:size": 138751594,
      "href": "https://openeo.vito.be/openeo/1.1/jobs/j-2310271419f040e1af6000397f82d225/results/assets/ZGZhNjc4Y2I5YWIxN2Y2NWQ0ZjAyNWUzMGZhYzVlMGQ5MDExNjE3NmU0NGZkMTdkNzAzNDE5MzIyNzQ3Y2JiZEBlZ2kuZXU%3D/17af096d82f07bab97a8adea5fc97161/openEO_2021-11-06Z.tif?expires=1699532026",
      "proj:bbox": [
        7.4805357,
        53.8670476,
        12.615119,
        57.6290476
      ],
      "proj:epsg": 4326,
      "proj:shape": [
        61615,
        45144
      ],
      "raster:bands": [
        {
          "name": "classification",
          "statistics": {
            "maximum": 254,
            "mean": 204.83501624158,
            "minimum": 0,
            "stddev": 97.851898853376,
            "valid_percent": 65.92
          }
        },
        {
          "name": "confidence",
          "statistics": {
            "maximum": 254,
            "mean": 220.89470191516,
            "minimum": 1,
            "stddev": 65.302942822965,
            "valid_percent": 65.92
          }
        }
      ],
      "roles": [
        "data"
      ],
      "title": "openEO_2021-11-06Z.tif",
      "type": "image/tiff; application=geotiff"
    }
  },
  "description": "Results for batch job j-2310271419f040e1af6000397f82d225",
  "extent": {
    "spatial": {
      "bbox": [
        [
          7.480602792076421,
          53.86710561799978,
          12.615055888579983,
          57.628974589891726
        ]
      ]
    },
    "temporal": {
      "interval": [
        [
          "2020-09-12T00:00:00Z",
          "2021-12-20T00:00:00Z"
        ]
      ]
    }
  },
  "id": "j-2310271419f040e1af6000397f82d225",
  "license": "proprietary",
  "links": [
    {
      "href": "urn:eop:VITO:ESA_WORLDCEREAL_MAIZE_V1:22190_tc-maize-main_maize_2021",
      "rel": "derived_from",
      "title": "Derived from urn:eop:VITO:ESA_WORLDCEREAL_MAIZE_V1:22190_tc-maize-main_maize_2021",
      "type": "application/json"
    },
    {
      "href": "urn:eop:VITO:ESA_WORLDCEREAL_MAIZE_V1:37175_tc-maize-main_maize_2021",
      "rel": "derived_from",
      "title": "Derived from urn:eop:VITO:ESA_WORLDCEREAL_MAIZE_V1:37175_tc-maize-main_maize_2021",
      "type": "application/json"
    },
    {
      "href": "urn:eop:VITO:ESA_WORLDCEREAL_MAIZE_V1:46172_tc-maize-main_maize_2021",
      "rel": "derived_from",
      "title": "Derived from urn:eop:VITO:ESA_WORLDCEREAL_MAIZE_V1:46172_tc-maize-main_maize_2021",
      "type": "application/json"
    },
    {
      "href": "https://openeo.vito.be/openeo/1.1/jobs/j-2310271419f040e1af6000397f82d225/results",
      "rel": "self",
      "type": "application/json"
    },
    {
      "href": "https://openeo.vito.be/openeo/1.1/jobs/j-2310271419f040e1af6000397f82d225/results/ZGZhNjc4Y2I5YWIxN2Y2NWQ0ZjAyNWUzMGZhYzVlMGQ5MDExNjE3NmU0NGZkMTdkNzAzNDE5MzIyNzQ3Y2JiZEBlZ2kuZXU%3D/f26e1c25ab773060ca5e3a33ab327eff?expires=1699532026",
      "rel": "canonical",
      "type": "application/json"
    },
    {
      "href": "https://openeo.vito.be/openeo/1.1/jobs/j-2310271419f040e1af6000397f82d225/results/items/ZGZhNjc4Y2I5YWIxN2Y2NWQ0ZjAyNWUzMGZhYzVlMGQ5MDExNjE3NmU0NGZkMTdkNzAzNDE5MzIyNzQ3Y2JiZEBlZ2kuZXU%3D/ff1b8d19ac0f7da5ec0de65469687ef6/openEO_2021-10-14Z.tif?expires=1699532026",
      "rel": "item",
      "type": "application/geo+json"
    },
    {
      "href": "https://openeo.vito.be/openeo/1.1/jobs/j-2310271419f040e1af6000397f82d225/results/items/ZGZhNjc4Y2I5YWIxN2Y2NWQ0ZjAyNWUzMGZhYzVlMGQ5MDExNjE3NmU0NGZkMTdkNzAzNDE5MzIyNzQ3Y2JiZEBlZ2kuZXU%3D/d99a1d12a8ad8f4baee20f477a6a60a9/openEO_2021-11-01Z.tif?expires=1699532026",
      "rel": "item",
      "type": "application/geo+json"
    },
    {
      "href": "https://openeo.vito.be/openeo/1.1/jobs/j-2310271419f040e1af6000397f82d225/results/items/ZGZhNjc4Y2I5YWIxN2Y2NWQ0ZjAyNWUzMGZhYzVlMGQ5MDExNjE3NmU0NGZkMTdkNzAzNDE5MzIyNzQ3Y2JiZEBlZ2kuZXU%3D/17af096d82f07bab97a8adea5fc97161/openEO_2021-11-06Z.tif?expires=1699532026",
      "rel": "item",
      "type": "application/geo+json"
    }
  ],
  "openeo:status": "finished",
  "providers": [
    {
      "description": "This data was processed on an openEO backend maintained by VITO.",
      "name": "VITO",
      "processing:expression": [
        {
          "expression": {
            "loadco1": {
              "arguments": {
                "id": "ESA_WORLDCEREAL_MAIZE",
                "spatial_extent": {
                  "east": 12.615055888579983,
                  "north": 57.628974589891726,
                  "south": 53.86710561799978,
                  "west": 7.480602792076421
                },
                "temporal_extent": [
                  "2020-09-12T00:00:00Z",
                  "2021-12-20T00:00:00Z"
                ]
              },
              "process_id": "load_collection"
            },
            "savere1": {
              "arguments": {
                "data": {
                  "from_node": "loadco1"
                },
                "format": "GTIFF"
              },
              "process_id": "save_result",
              "result": true
            }
          },
          "format": "openeo"
        }
      ],
      "processing:facility": "openEO Geotrellis backend",
      "processing:software": {
        "Geotrellis backend": "0.18.0a1"
      },
      "roles": [
        "processor"
      ]
    }
  ],
  "stac_extensions": [
    "https://stac-extensions.github.io/eo/v1.1.0/schema.json",
    "https://stac-extensions.github.io/file/v2.1.0/schema.json",
    "https://stac-extensions.github.io/processing/v1.1.0/schema.json",
    "https://stac-extensions.github.io/projection/v1.1.0/schema.json"
  ],
  "stac_version": "1.0.0",
  "summaries": {  },
  "title": "test worldcereal",
  "type": "Collection"
}

openEO item metadata example:

{
  "bbox": [
    7.480535713535801,
    53.86704763287789,
    12.615119046848596,
    57.62904763286284
  ],
  "collection": "j-2310271419f040e1af6000397f82d225",
  "epsg": 4326,
  "geometry": {
    "coordinates": [
      [
        [
          7.480535713535801,
          53.86704763287789
        ],
        [
          7.480535713535801,
          57.62904763286284
        ],
        [
          12.615119046848596,
          57.62904763286284
        ],
        [
          12.615119046848596,
          53.86704763287789
        ],
        [
          7.480535713535801,
          53.86704763287789
        ]
      ]
    ],
    "type": "Polygon"
  },
  "id": "openEO_2021-11-01Z.tif",
  "links": [
    {
      "href": "https://openeo.vito.be/openeo/1.1/jobs/j-xxx/results/items/openEO_2021-11-01Z.tif",
      "rel": "self",
      "type": "application/geo+json"
    },
    {
      "href": "https://openeo.vito.be/openeo/1.1/jobs/j-xxx/results",
      "rel": "collection",
      "type": "application/json"
    }
  ],
  "properties": {
    "datetime": "2021-11-01T00:00:00Z",
    "proj:bbox": [
      7.4805357,
      53.8670476,
      12.615119,
      57.6290476
    ],
    "proj:shape": [
      61615,
      45144
    ]
  },
  "assets": {
    "openEO_2021-11-01Z.tif": {
      "eo:bands": [
        {
          "name": "classification"
        },
        {
          "name": "confidence"
        }
      ],
      "file:nodata": [
        255
      ],
      "file:size": 67310450,
      "href": "https://openeo.vito.be/.../openEO_2021-11-01Z.tif?expires=1699532067",
      "proj:bbox": [
        7.4805357,
        53.8670476,
        12.615119,
        57.6290476
      ],
      "proj:epsg": 4326,
      "proj:shape": [
        61615,
        45144
      ],
      "raster:bands": [
        {
          "name": "classification",
          "statistics": {
            "maximum": 254,
            "mean": 213.73997589491,
            "minimum": 0,
            "stddev": 91.77160764761,
            "valid_percent": 40.9
          }
        },
        {
          "name": "confidence",
          "statistics": {
            "maximum": 254,
            "mean": 227.9460494272,
            "minimum": 1,
            "stddev": 59.206365744221,
            "valid_percent": 40.9
          }
        }
      ],
      "roles": [
        "data"
      ],
      "title": "openEO_2021-11-01Z.tif",
      "type": "image/tiff; application=geotiff"
    }
  },
  "stac_extensions": [
    "https://stac-extensions.github.io/eo/v1.1.0/schema.json",
    "https://stac-extensions.github.io/file/v2.1.0/schema.json",
    "https://stac-extensions.github.io/projection/v1.1.0/schema.json",
    "https://stac-extensions.github.io/raster/v1.1.0/schema.json"
  ],
  "stac_version": "0.9.0",
  "type": "Feature"
}