From fdb77329154f976b156992c94cfa8f32e37e6521 Mon Sep 17 00:00:00 2001 From: Jose Manuel Cantera Date: Thu, 22 Nov 2018 09:27:20 +0100 Subject: [PATCH] Time rel in common --- schema/common.json | 308 +++++++++--------- .../temporal/temporal-entities-spec.json | 15 +- 2 files changed, 174 insertions(+), 149 deletions(-) diff --git a/schema/common.json b/schema/common.json index 94a301f..ebd8e3e 100644 --- a/schema/common.json +++ b/schema/common.json @@ -1,150 +1,162 @@ { - "$schema": "http://json-schema.org/schema#", - "id": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/common.json", - "title": "NGSI-LD Common Definitions", - "description": "NGSI-LD Common", - "definitions": { - "Name": { - "type": "string", - "pattern": "^(\\d|[a-zA-Z]|_)+$", - "minLength": 1, - "description": "NGSI-LD Name" - }, - "observedAt": { - "type": "string", - "format": "date-time" - }, - "createdAt": { - "type": "string", - "format": "date-time" - }, - "modifiedAt": { - "type": "string", - "format": "date-time" - }, - "LdContext": { - "anyOf": [{ - "type": "object" - }, - { - "type": "string", - "format": "uri" - }, - { - "type": "array", - "minItems": 1, - "items": { - "anyOf": [{ - "type": "string", - "format": "uri" - }, - { - "type": "object" - } - ] - } - } - ] - }, - "Endpoint": { - "type": "object", - "required": [ - "uri" - ], - "properties": { - "uri": { - "type": "string", - "format": "uri" - }, - "accept": { - "type": "string", - "enum": [ - "application/json", - "application/ld+json" - ] - } - } - }, - "EntityInfo": { - "type": "object", - "properties": { - "id": { - "type": "string", - "format": "uri" - }, - "type": { - "$ref": "#/definitions/Name" - }, - "idPattern": { - "type": "string", - "format": "regex" - } - }, - "required": [ - "type" - ] - }, - "ProblemDetails": { - "type": "object", - "properties": { - "type": { - "type": "string", - "format": "uri" - }, - "title": { - "type": "string" - }, - "detail": { - "type": "string" - } - }, - "required": [ - "type" - ] - }, - "georel": { - "anyOf": [{ - "type": "string", - "enum": [ - "equals", - "disjoint", - "intersects", - "within", - "contains", - "overlaps" - ] - }, - { - "type": "string", - "pattern": "^near;((maxDistance==\\d+)|(minDistance==\\d+))$" - } - ] - }, - "coordinates": { - "oneOf": [{ - "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/geometry-schema.json#/definitions/position" - }, - { - "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/geometry-schema.json#/definitions/positionArray" - }, - { - "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/geometry-schema.json#/definitions/lineString" - }, - { - "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/geometry-schema.json#/definitions/polygon" - } - ] - }, - "geometry": { - "type": "string", - "enumeration": [ - "Point", - "MultiPoint", - "LineString", - "MultiLineString", - "Polygon", - "MultiPolygon" - ] - } + "$schema": "http://json-schema.org/schema#", + "id": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/common.json", + "title": "NGSI-LD Common Definitions", + "description": "NGSI-LD Common", + "definitions": { + "Name": { + "type": "string", + "pattern": "^(\\d|[a-zA-Z]|_)+$", + "minLength": 1, + "description": "NGSI-LD Name" + }, + "observedAt": { + "type": "string", + "format": "date-time" + }, + "createdAt": { + "type": "string", + "format": "date-time" + }, + "modifiedAt": { + "type": "string", + "format": "date-time" + }, + "LdContext": { + "anyOf": [ + { + "type": "object" + }, + { + "type": "string", + "format": "uri" + }, + { + "type": "array", + "minItems": 1, + "items": { + "anyOf": [ + { + "type": "string", + "format": "uri" + }, + { + "type": "object" + } + ] + } + } + ] + }, + "Endpoint": { + "type": "object", + "required": [ + "uri" + ], + "properties": { + "uri": { + "type": "string", + "format": "uri" + }, + "accept": { + "type": "string", + "enum": [ + "application/json", + "application/ld+json" + ] + } + } + }, + "EntityInfo": { + "type": "object", + "properties": { + "id": { + "type": "string", + "format": "uri" + }, + "type": { + "$ref": "#/definitions/Name" + }, + "idPattern": { + "type": "string", + "format": "regex" + } + }, + "required": [ + "type" + ] + }, + "ProblemDetails": { + "type": "object", + "properties": { + "type": { + "type": "string", + "format": "uri" + }, + "title": { + "type": "string" + }, + "detail": { + "type": "string" + } + }, + "required": [ + "type" + ] + }, + "georel": { + "anyOf": [ + { + "type": "string", + "enum": [ + "equals", + "disjoint", + "intersects", + "within", + "contains", + "overlaps" + ] + }, + { + "type": "string", + "pattern": "^near;((maxDistance==\\d+)|(minDistance==\\d+))$" + } + ] + }, + "coordinates": { + "oneOf": [ + { + "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/geometry-schema.json#/definitions/position" + }, + { + "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/geometry-schema.json#/definitions/positionArray" + }, + { + "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/geometry-schema.json#/definitions/lineString" + }, + { + "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/geometry-schema.json#/definitions/polygon" + } + ] + }, + "geometry": { + "type": "string", + "enumeration": [ + "Point", + "MultiPoint", + "LineString", + "MultiLineString", + "Polygon", + "MultiPolygon" + ] + }, + "timerel": { + "type": "string", + "enum": [ + "before", + "after", + "between" + ] } -} \ No newline at end of file + } +} diff --git a/spec/updated/temporal/temporal-entities-spec.json b/spec/updated/temporal/temporal-entities-spec.json index 292052b..847f4a7 100644 --- a/spec/updated/temporal/temporal-entities-spec.json +++ b/spec/updated/temporal/temporal-entities-spec.json @@ -44,6 +44,16 @@ "$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/common.json#/definitions/Name" } }, + "lastN": { + "name": "lastN", + "description": "Only retrieve last N instances", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "minValue": 1 + } + }, "options": { "name": "options", "description": "Options dictionary", @@ -93,7 +103,7 @@ "$ref": "#/components/parameters/timerel" }, { - "$ref": "#/components/parameters/temporalproperty" + "$ref": "#/components/parameters/timeproperty" }, { "$ref": "#/components/parameters/time" @@ -109,6 +119,9 @@ }, { "$ref": "#/components/parameters/options" + }, + { + "$ref": "#/components/parameters/lastN" } ], "responses": { -- GitLab