Smart Data Models - Device schema


An apparatus (hardware + software + firmware) intended to accomplish a particular task (sensing the environment, actuating, etc.).

Type: object

All from GSMA-Commons https://smart-data-models.github.io/data-models/common-schema.json#/definitions/GSMA-Commons

Type: object

Property. Unique identifier of the entity

Type: string

Property. Identifier format of any NGSI entity

Must match regular expression: ^[\w\-\.\{\}\$\+\*\[\]`|~^@!,:\\]+$

Must be at least 1 characters long

Must be at most 256 characters long

Type: string

Property. Identifier format of any NGSI entity

Type: string

Property. Entity creation timestamp. This will usually be allocated by the storage platform.

Type: string

Property. Timestamp of the last modification of the entity. This will usually be allocated by the storage platform.

Type: string

Property. A sequence of characters giving the original source of the entity data as a URL. Recommended to be the fully qualified domain name of the source provider, or the URL to the source object.

Type: string

Property. The name of this item.

Type: string

Property. An alternative name for this item

Type: string

Property. A description of this item

Type: string

Property. A sequence of characters identifying the provider of the harmonised data entity.

Type: array

Property. A List containing a JSON encoded sequence of characters referencing the unique Ids of the owner(s)

Each item of this array must be:

Type: object

Property. Unique identifier of the entity

Same definition as id


Property. list of uri pointing to additional resources about the item

Type: array of string

Must contain a minimum of 1 items

Each item of this array must be:

Type: string
Type: string
Type: object

All from Location-Commons https://smart-data-models.github.io/data-models/common-schema.json#/definitions/Location-Commons


Geoproperty. Geojson reference to the item. It can be Point, LineString, Polygon, MultiPoint, MultiLineString or MultiPolygon

Type: object

Geoproperty. Geojson reference to the item. Point

Type: enum (of string)

Must be one of:

  • "Point"

Type: array of number

Must contain a minimum of 2 items

Each item of this array must be:

Type: array of number

Must contain a minimum of 4 items

Each item of this array must be:

Type: object

Geoproperty. Geojson reference to the item. LineString

Type: enum (of string)

Must be one of:

  • "LineString"

Type: array of array

Must contain a minimum of 2 items

Each item of this array must be:

Type: array of number

Must contain a minimum of 2 items

Each item of this array must be:

Type: array of number

Must contain a minimum of 4 items

Each item of this array must be:

Type: object

Geoproperty. Geojson reference to the item. Polygon

Type: enum (of string)

Must be one of:

  • "Polygon"

Type: array of array

Each item of this array must be:

Type: array of array

Must contain a minimum of 4 items

Each item of this array must be:

Type: array of number

Must contain a minimum of 2 items

Each item of this array must be:

Type: array of number

Must contain a minimum of 4 items

Each item of this array must be:

Type: object

Geoproperty. Geojson reference to the item. MultiPoint

Type: enum (of string)

Must be one of:

  • "MultiPoint"

Type: array of array

Each item of this array must be:

Type: array of number

Must contain a minimum of 2 items

Each item of this array must be:

Type: array of number

Must contain a minimum of 4 items

Each item of this array must be:

Type: object

Geoproperty. Geojson reference to the item. MultiLineString

Type: enum (of string)

Must be one of:

  • "MultiLineString"

Type: array of array

Each item of this array must be:

Type: array of array

Must contain a minimum of 2 items

Each item of this array must be:

Type: array of number

Must contain a minimum of 2 items

Each item of this array must be:

Type: array of number

Must contain a minimum of 4 items

Each item of this array must be:

Type: object

Geoproperty. Geojson reference to the item. MultiLineString

Type: enum (of string)

Must be one of:

  • "MultiPolygon"

Type: array of array

Each item of this array must be:

Type: array of array

Each item of this array must be:

Type: array of array

Must contain a minimum of 4 items

Each item of this array must be:

Type: array of number

Must contain a minimum of 2 items

Each item of this array must be:

Type: array of number

Must contain a minimum of 4 items

Each item of this array must be:

Type: object

Property. The mailing address. Model:'https://schema.org/address'

Type: string

Property. The street address. Model:'https://schema.org/streetAddress'

Type: string

Property. The locality in which the street address is, and which is in the region. Model:'https://schema.org/addressLocality'

Type: string

Property. The region in which the locality is, and which is in the country. Model:'https://schema.org/addressRegion'

Type: string

Property. The country. For example, Spain. Model:'https://schema.org/addressCountry'

Type: string

Property. The postal code. For example, 24004. Model:'https://schema.org/https://schema.org/postalCode'

Type: string

Property. The post office box number for PO box addresses. For example, 03578. Model:'https://schema.org/postOfficeBoxNumber'

Type: string

Property. The geographic area where a service or offered item is provided. Model:'https://schema.org/Text'

Type: object

All from Device-Commons https://smart-data-models.github.io/dataModel.Device/device-schema.json#/definitions/Device-Commons

Type: array of enum (of string)

Property. Model:'https://schema.org/Text'. Sensor: A device that detects and responds to events or changes in the physical environment such as light, motion, or temperature changes. https://w3id.org/saref#Sensor. actuator : A device responsible for moving or controlling a mechanism or system. https://w3id.org/saref#Actuator. Meter : A device built to accurately detect and display a quantity in a form readable by a human being. Partially defined by SAREF. HVAC : Heating, Ventilation and Air Conditioning (HVAC) device that provides indoor environmental comfort. https://w3id.org/saref#HVAC. Network : A device used to connect other devices in a network, such as hub, switch or router in a LAN or Sensor network. (https://w3id.org/saref#Network. Multimedia : A device designed to display, store, record or play multimedia content such as audio, images, animation, video. Enum:'actuator, beacon, endgun, HVAC, implement, irrSection, irrSystem, meter, multimedia, network, sensor'

Each item of this array must be:

Type: enum (of string)

Must be one of:

  • "actuator"
  • "beacon"
  • "endgun"
  • "HVAC"
  • "implement"
  • "irrSection"
  • "irrSystem"
  • "meter"
  • "multimedia"
  • "network"
  • "sensor"

Type: array of enum (of string)

Property. Model:'https://schema.org/Text'. Anything that can be sensed, measured or controlled by. Enum:'airPollution, atmosphericPressure, averageVelocity, batteryLife, batterySupply, cdom, conductance, conductivity, depth, eatingActivity, eatingActivity, electricityConsumption, energy, fillingLevel, freeChlorine, gasConsumption, gateOpening, heading, humidity, light, location, milking, motion, movementActivity, noiseLevel, occupancy, orp, pH, power, precipitation, pressure, refractiveIndex, salinity, smoke, soilMoisture, solarRadiation, speed, tds, temperature, trafficFlow, tss, turbidity, waterConsumption, waterFlow, waterLevel, waterPollution, weatherConditions, weight, windDirection, windSpeed'

Each item of this array must be:

Type: enum (of string)

Must be one of:

  • "airPollution"
  • "atmosphericPressure"
  • "averageVelocity"
  • "batteryLife"
  • "batterySupply"
  • "cdom"
  • "conductance"
  • "conductivity"
  • "depth"
  • "eatingActivity"
  • "eatingActivity"
  • "electricityConsumption"
  • "energy"
  • "fillingLevel"
  • "freeChlorine"
  • "gasConsumption"
  • "gateOpening"
  • "heading"
  • "humidity"
  • "light"
  • "location"
  • "milking"
  • "motion"
  • "movementActivity"
  • "noiseLevel"
  • "occupancy"
  • "orp"
  • "pH"
  • "power"
  • "precipitation"
  • "pressure"
  • "refractiveIndex"
  • "salinity"
  • "smoke"
  • "soilMoisture"
  • "solarRadiation"
  • "speed"
  • "tds"
  • "temperature"
  • "trafficFlow"
  • "tss"
  • "turbidity"
  • "waterConsumption"
  • "waterFlow"
  • "waterLevel"
  • "waterPollution"
  • "weatherConditions"
  • "weight"
  • "windDirection"
  • "windSpeed"

Type: array of enum (of string)

Property. Model:'https://schema.org/Text'. Supported protocol(s) or networks. Model:'3g, bluetooth, bluetooth LE, cat-m, coap, ec-gsm-iot, gprs, http, lwm2m, lora, lte-m, mqtt, nb-iot, onem2m, sigfox, ul20, websocket'

Each item of this array must be:

Type: enum (of string)

Must be one of:

  • "3g"
  • "bluetooth"
  • "bluetooth LE"
  • "cat-m"
  • "coap"
  • "ec-gsm-iot"
  • "gprs"
  • "http"
  • "lwm2m"
  • "lora"
  • "lte-m"
  • "mqtt"
  • "nb-iot"
  • "onem2m"
  • "sigfox"
  • "ul20"
  • "websocket"

Type: string

Property. Model:'https://schema.org/Text'. The MAC address of the device.

Must match regular expression: ^([[:xdigit:]]{2}[:.-]?){5}[[:xdigit:]]{2}$
Type: object

Type: enum (of string)

Property. NGSI Entity type. It has to be Device

Must be one of:

  • "Device"

Type: array

Property. Model:'https://schema.org/Text'. List of the asset(s) (building, object, etc.) controlled by the device.

Each item of this array must be:

Type: string

Property. Model:'https://schema.org/Text'. This property identifies the Mobile Network Code (MNC) of the network the device is attached to. The MNC is used in combination with a Mobile Country Code (MCC) (also known as a 'MCC / MNC tuple') to uniquely identify a mobile phone operator/carrier using the GSM, CDMA, iDEN, TETRA and 3G / 4G public land mobile networks and some satellite mobile networks.

Type: string

Property. Model:'https://schema.org/Text'. This property identifies the Mobile Country Code

Type: array of string

Property. Model:'https://schema.org/Text'. List of IP address of the device. It can be a comma separated list of values if the device has more than one IP address.

Each item of this array must be:

Type: array of object

Property. Model:'https://schema.org/StructuredValue'. Device's technical configuration. This attribute is intended to be a array properties and their values which capture parameters which have to do with the configuration of a device (timeouts, reporting periods, etc.) and which are not currently covered by the standard attributes defined by this model.

Each item of this array must be:

Type: object

Type: string

Type: string

Property. Model:'https://schema.org/DateTime'. A timestamp which denotes when the device was installed (if it requires installation).

Type: string

Property. Model:'https://schema.org/DateTime'. A timestamp which denotes when the device was first used.

Type: string

Property. Model:'https://schema.org/DateTime'. A timestamp which denotes when the device was manufactured.

Type: string

Property. Model:'https://schema.org/Text'. The hardware version of this device.

Type: string

Property. Model:'https://schema.org/Text'. The software version of this device.

Type: string

Property. Model:'https://schema.org/Text'. The firmware version of this device.

Type: string

Property. Model:'https://schema.org/Text'. The version of the host operating system device.

Type: number

Property. Model:'https://schema.org/Distance'. Location of this device represented by a distance from a starting point. All units are accepted in CEFACT code

Type: boolean

Property. Indicates a device which is Daylight Savings Time Aware (True). In case it is then the Timestamp is automatically adjusted by the device to reflect DST changes. If not (False) the time adjustments must be taken care of by the user.

Type: number

Property. Model:'https://schema.org/depth'. Location of this device represented by a depth from a starting point. All units are accepted in CEFACT code

Type: string

Property. Location of this device in a coordinate system according to its local emplacement.

Type: enum (of string)

Property. Enum:'Inlet, Outlet, Entry, Exit'. Model:'https://schema.org/DateTime'. A timestamp which denotes when the device was installed (if it requires installation).

Must be one of:

  • "Inlet"
  • "Outlet"
  • "Entry"
  • "Exit"

Type: string

Property. Model:'https://schema.org/DateTime'. A timestamp which denotes when the last calibration of the device happened.

Type: string

Property. Model:'https://schema.org/serialNumber'. The serial number assigned by the manufacturer.

Type: string

Property. Model:'https://schema.org/provider'. The provider of the device.


Relationship. Model of the device

Type: object

Property. Unique identifier of the entity

Same definition as id


Property. Model:'https://schema.org/Number'. Device battery level. It must be equal to 1.0 when battery is full. 0.0 when battery is empty. -1 when transiently cannot be determined.

Type: number

Value must be greater or equal to 0 and lesser or equal to 1

Type: const
Specific value: -1

Type: number

Property. Model:'https://schema.org/Number'. Received signal strength indicator for a wireless enabled device. It must be expressed in dBm or mW, use unitcode to set it out.

Type: string

Property. Model:'https://schema.org/Text'. State of this device from an operational point of view. Its value can be vendor dependent.

Type: string

Property. Model:'https://schema.org/DateTime'. A timestamp which denotes the last time when the device successfully reported data to the cloud.

Type: string

Property. Model:'https://schema.org/QuantitativeValue'. A observed or reported value. For actuator devices, it is an attribute that allows a controlling application to change the actuation setting. For instance, a switch device which is currently on can report a value 'on' of type 'Text'. Obviously, in order to toggle the referred switch, this attribute value will have to be changed to 'off'.

Type: string

Property. Date of the observed entity defined by the user.

The following properties are required: