EntityTemporal.json 2.99 KB
Newer Older
canterafonsj's avatar
canterafonsj committed
{
  "$schema": "http://json-schema.org/schema#",
canterafonsj's avatar
canterafonsj committed
  "$id": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/temporal/EntityTemporal.json",
canterafonsj's avatar
canterafonsj committed
  "title": "NGSI-LD Entity",
  "description": "NGSI-LD Temporal Representation of an Entity",
canterafonsj's avatar
canterafonsj committed
  "definitions": {
    "EntityTemporalFragment": {
      "type": "object",
      "properties": {
        "@context": {
          "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/common.json#/definitions/LdContext"
canterafonsj's avatar
canterafonsj committed
        },
canterafonsj's avatar
canterafonsj committed
        "location": {
          "type": "array",
          "items": {
            "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/Entity.json#/definitions/GeoProperty"
          },
          "minItems": 1
canterafonsj's avatar
canterafonsj committed
        },
canterafonsj's avatar
canterafonsj committed
        "observationSpace": {
          "type": "array",
          "items": {
            "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/Entity.json#/definitions/GeoProperty"
          },
          "minItems": 1
canterafonsj's avatar
canterafonsj committed
        },
canterafonsj's avatar
canterafonsj committed
        "operationSpace": {
          "type": "array",
          "items": {
            "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/Entity.json#/definitions/GeoProperty"
          },
          "minItems": 1
        "id": {
          "type": "string",
          "format": "uri"
        },
        "type": {
          "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/common.json#/definitions/Name"
        },
        "createdAt": {
          "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/common.json#/definitions/createdAt"
        },
        "modifiedAt": {
          "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/common.json#/definitions/modifiedAt"
canterafonsj's avatar
canterafonsj committed
        }
      },
      "additionalProperties": {
        "anyOf": [
          {
            "type": "array",
            "items": {
              "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/Entity.json#/definitions/Property"
            },
            "minItems": 1
          },
          {
            "type": "array",
            "items": {
              "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/Entity.json#/definitions/Relationship"
            },
            "minItems": 1
          },
          {
            "type": "array",
            "items": {
              "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/Entity.json#/definitions/GeoProperty"
            },
            "minItems": 1
          }
        ]
      },
      "propertyNames": {
        "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/common.json#/definitions/PropertyNames"
canterafonsj's avatar
canterafonsj committed
      }
canterafonsj's avatar
canterafonsj committed
    },
    "EntityTemporal": {
      "allOf": [
        {
          "type": "object",
          "required": [
            "id",
            "type"
          ]
        },
        {
          "$ref": "#/definitions/EntityTemporalFragment"
        }
      ]
    }
canterafonsj's avatar
canterafonsj committed
  },
canterafonsj's avatar
canterafonsj committed
  "allOf": [
    {
      "$ref": "#/definitions/EntityTemporal"
    }
  ]
canterafonsj's avatar
canterafonsj committed
}