Difference between revisions of "IoT Semantics"

From AMTech WikiDocs
Jump to: navigation, search
(Json-ld)
(Json-ld)
Line 40: Line 40:
 
         "@id": "/amtech/things/observations/eddystoneBroadcast"
 
         "@id": "/amtech/things/observations/eddystoneBroadcast"
 
     }
 
     }
<\syntaxhighlight
+
<\syntaxhighlight>
  
 
== Things and Observations semantic ==
 
== Things and Observations semantic ==

Revision as of 00:19, 18 May 2016

Linked data

http://linkeddata.org/

Linked Data STRUCTURED DATA ON THE WEB

Resource Description Framework (RDF)

https://www.w3.org/RDF/

Json-ld

Json for linked data http://json-ld.org/

{
        "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"
    }
<\syntaxhighlight>

== 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 in composed of :
* Type general info (name, description, geometric representation)
* Type specific 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 :
* Property data type; there are 3 kinds of property types
[[File:semantic1.png|850px|thumbnail|center|Select property type]]
*primitive types
[[File:semantic2.png|450px|thumbnail|center|Select primitive type]]
*collection things type
*collection/single things instances 
[[File:semantic41.png|850px|thumbnail|center|Select thing instance]]
* Valid range or regular expression according to the data type
* Translation to the supported languages
* Limit of copies to keep for the property
*access control

== 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 their are not required
*existing supported properties cannot be deleted.
*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
[[File:Typepublished.png|thumbnail|center|public]] *public types show this icon in the [[Tree editor|Tree editor]]

== 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