Difference between revisions of "IoT Semantics"
(→Publishing semantic) |
|||
Line 102: | Line 102: | ||
When a thing instance does not meet the requirements imposed by the semantic of the type the status of the resource is invalid. | When a thing instance does not meet the requirements imposed by the semantic of the type the status of the resource is invalid. | ||
;resource with invalid status do not returned as result of observers execution therefore are not taken into account by reasoners execution | ;resource with invalid status do not returned as result of observers execution therefore are not taken into account by reasoners execution | ||
+ | |||
+ | == Properties data type in custom sematic == |
Revision as of 14:22, 5 September 2016
Contents
Linked data
Linked Data STRUCTURED DATA ON THE WEB
Resource Description Framework (RDF)
Json-ld
Json for linked data http://json-ld.org/
Example of an observation @type eddystoneBrodcast, @id eddystoneBroadcast
{
"proximityarea": "",
"eddystoneTlmAdvCnt": 0,
"guestusers": [],
"targetthings": "[]",
"location": "",
"eddystoneTlmVbatt": 0,
"eddystoneTlmSecCnt": 0,
"lastSeenByBLEHub": "2016-02-21T18:39:21.000Z",
"eddystoneType": "uid",
"eddystoneNamespace": "0123456789",
"eddystoneInstance": "123456",
"eddystoneTlmVersion": "0",
"smoothingResult": "new",
"description": "",
"topic": "m2mBridgeTest/bleScanner/eddystone/new",
"beaconRssi": 1,
"@type": "/amtech/linkeddata/types/composite/observation/eddystoneBrodcast",
"beaconTxPower": 1,
"beaconDistance": 0,
"creationDate": "2016-03-24T20:53:47.369Z",
"guesttenants": [],
"eddystoneUrl": "",
"eddystoneTlmTemperature": 0,
"producer": "eddystone",
"detectiontime": "2016-03-04T18:37:31.000Z",
"occurrencetime": "2016-03-04T18:37:31.000Z",
"@id": "/amtech/things/observations/eddystoneBroadcast"
}
Things and Observations semantic
Semantic for things and the observations they produce can be defined using the Thing Types and Observation Types This configurable semantic is composed by :
- Type general info (name, description, geometric representation)
- Type specific properties known as supported properties
- In the case of the thing types, the set of observation types that the given thing type can produce
Each specific property contains its own semantic to define. The main common information are:
- Value type or range: type of the values this property can hold
- property informations: name, caption, description, default values,etc
- Validation parameters and message (see below).
- Translation of the caption, description, validation message to the supported languages
Also, the thing types allow
- Maximum number and recording frequency of historic values (snapshots) to keep for the property
- an option to check if the type is allowed to have floor plan or not.
The validation parameters include
- minimum and maximum values for numerical data
- minimum and maximum date for datetime data
- regular expression for strings
- isRequired to say that the field can not be empty.
To create a new supported property click on under the supportedProperties collection of the chosen semantic. The opened dialog allows to define the name of the property and the value type:
As shown, there are 4 options
- the value must be an instance of any of the already defined thing types
- the property will hold thing types
- the property will hold instances of the thing type selected in the dialog
The choice will then appear on the right of the button
The three last options allow also to define the property as a collection:
Clicking on the button will create the new property and will open it on the editor so you can edit the other information of its semantic.
Thing and Observation instances
Instances are resources of a specific semantic type, that have values for each property defined in the semantic.
- Support instances enrichment, allowing insert new properties and values after semantic been extended.
Publishing semantic
Semantic for thing and observation types can be defined without letting others see the changes. The action of publishing a type is what makes it visible to other creators, thus available for use by others in their activities. Once published, a type can only be extended by its creator.
When a type is published:
- it becomes visible to other creators that will be able to use it in their activities
- its supported properties become visible to other creators
- supported properties can only be added as long as they are not required
- existing supported properties that are required cannot be deleted (if they are not required they can be deleted anytime)
- existing supported properties that are required and published cannot be changed to not required
- the type can be deleted only if it is not used by anyone
- values for the validation of the supported properties that are published cannot be changed : min value, max value, min date, max date and validation regex
Resources status
When a thing instance does not meet the requirements imposed by the semantic of the type the status of the resource is invalid.
- resource with invalid status do not returned as result of observers execution therefore are not taken into account by reasoners execution