Commit cda579f1 authored by canterafonsj's avatar canterafonsj
Browse files

Subscription

parent 18ffc49c
...@@ -4,127 +4,175 @@ ...@@ -4,127 +4,175 @@
"title": "NGSI-LD Subscription", "title": "NGSI-LD Subscription",
"description": "NGSI-LD Subscription", "description": "NGSI-LD Subscription",
"definitions": { "definitions": {
"NotificationParams": {}, "NotificationParams": {
"EntityInfo": {},
"GeoQuery": {
"type": "object", "type": "object",
"required": [
"geometry",
"coordinates",
"georel"
],
"properties": { "properties": {
"georel": { "type": "object",
"oneOf": [ "required": [
{ "endpoint"
"type": "string", ],
"enumeration": [ "properties": {
"equals", "attributes": {
"disjoint", "type": "array",
"intersects", "minItems": 1,
"within", "items": {
"contains", "type": "string"
"overlaps"
]
},
{
"type": "string",
"pattern": "near;maxDistance=="
} }
] },
}, "format": {
"coordinates": { "type": "string"
"oneOf": [{ },
"$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/geometry-schema.json#/definitions/position", "endpoint": {
"$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/common.json#/definitions/EndPoint"
"$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" "status": {
}] "type": "string",
}, "enum": [
"geometry": { "ok",
"type": "string", "failed"
"enumeration": [ ]
"Point", },
"MultiPoint", "timesSent": {
"LineString", "type": "number",
"MultiLineString", "minimum": 1
"Polygon", },
"MultiPolygon" "lastNotification": {
] "type": "string",
"format": "date-time"
},
"lastFailure": {
"type": "string",
"format": "date-time"
},
"lastSuccess": {
"type": "string",
"format": "date-time"
}
}
},
"EntityInfo": {},
"GeoQuery": {
"type": "object",
"required": [
"geometry",
"coordinates",
"georel"
],
"properties": {
"georel": {
"oneOf": [
{
"type": "string",
"enumeration": [
"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"
]
}
} }
} }
}
},
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uri"
},
"type": {
"type": "string",
"const": "Subscription"
},
"@context": {
"$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/common.json#/definitions/LdContext"
},
"name": {
"type": "string",
"minLength": 1
},
"description": {
"type": "string",
"minLength": 1
},
"entities": {
"$ref": "#/definitions/EntityInfo"
}, },
"watchedAttributes": { "type": "object",
"type": "array", "properties": {
"minItems": 1, "id": {
"items": { "type": "string",
"format": "uri"
},
"type": {
"type": "string",
"const": "Subscription"
},
"@context": {
"$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/common.json#/definitions/LdContext"
},
"name": {
"type": "string",
"minLength": 1
},
"description": {
"type": "string",
"minLength": 1
},
"entities": {
"$ref": "#/definitions/EntityInfo"
},
"watchedAttributes": {
"type": "array",
"minItems": 1,
"items": {
"type": "string"
},
"uniqueItems": true
},
"timeInterval": {
"type": "number",
"minimum": 0
},
"geoQ": {
"$ref": "#/definitions/GeoQuery"
},
"notification": {
"$ref": "#/definitions/NotificationParams"
},
"expires": {
"type": "string",
"format": "date-time"
},
"status": {
"type": "string",
"enum": [
"active",
"paused",
"expired"
]
},
"isActive": {
"type": "boolean"
},
"throttling": {
"type": "number",
"minimum": 1
},
"q": {
"type": "string" "type": "string"
}, },
"uniqueItems": true "csf": {
}, "type": "string"
"timeInterval": { }
"type": "number",
"minimum": 0
},
"geoQ": {
"$ref": "#/definitions/GeoQuery"
},
"notification": {
"$ref": "#/definitions/NotificationParams"
},
"expires": {
"type": "string",
"format": "date-time"
},
"status": {
"type": "string",
"enum": [
"active",
"paused",
"expired"
]
},
"isActive": {
"type": "boolean"
},
"throttling": {
"type": "number",
"minimum": 1
},
"q": {
"type": "string"
}, },
"csf": { "required": [
"type": "string" "id",
} "type"
}, ]
"required": [ }
"id",
"type",
]
} }
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment