NGSI en de huidige versie NGSI-LD zijn RESTfullAPI's om context informatie te coderen. NGSI is de belangrijkste interface voor een Context Broker.

NGSI versus NGSI-LD

Hoewel zowel NGSI als NGSI-LD context informatie vastleggen, het belangrijkste verschil is dat NGSI-LD aan NGSI toevoegt, gegevenselementen te koppelen (LD staat voor Linked Data). Dit kan het beste worden aangetoond met een voorbeeld. Hieronder volgt een voorbeeld van een NGSI-codering van een Point of Interest

NGSI codering

{
    "id": "PointOfInterest:RZ:MainSquare",
    "type": "PointOfInterest",
    "category": {
       "type": "List",
       "value": ["113"]
   },
   "description": {
       "type": "Text",
       "value": "Beach of RZ"
   },
   "location": {
       "type": "geo:json",
       "value": {
           "type": "Point",
           "coordinates": [-8, 44]
       }
   }
}

NGSI-LD Codering

{
   "id": "urn:ngsi-ld:PointOfInterest:RZ:MainSquare ",
   "type": "PointOfInterest",
   "category": {
       "type": "Property",
       "value": ["113"]
   },
   "description": {
       "type": "Property",
       "value": "Beach of RZ"
   },
   "location": {
       "type": "GeoProperty",
       "value": {
           "type": "Point",
           "coordinates": [-8, 44]
       }
   },
   "@context": [
       "https://schema.lab.fiware.org/ld/context",
       "https://uri.etsi.org/ngsi-ld/v1/ngsi-ld-core-context.jsonld"
   ]
}

Hier een voorbeeld van een context

{
   "@context": {
       "dateObserved": "http://schema.fiware.org/dateObserved",
       "NO2": "http://schema.fiware.org/NO2",
       "refPointOfInterest": {
           "@type": "@id",
           "@id": "http://schema.fiware.org/refPointOfInterest"
       },
       "category": "http://schema.fiware.org/category",
       "description": "http://schema.org/description"
   }
}

De belangrijkste innovatie in NGSI-LD is dat het concepten in het bericht (bijv. 'DateObserved') koppelt aan standaarddefinities zoals gedefinieerd in de context ('dateObserved' is gedefinieerd in 'http://schema.fiware.org/refPointOfInterest'). Dit maakt het voor separaat ontwikkelde applicaties mogelijk om informatie te delen door een gedeelde definitie van data elementen.

ETSI & NGSI-LD

De CIM-werkgroep in ETSI (https://www.etsi.org/committee/cim ETSI-CIM) heeft NGSI-LD ontwikkeld en aangenomen als wereldwijde standaard voor het verwerken van context informatie. De volledige specificatie van NGSI-LD vindt u hier: https://www.etsi.org/deliver/etsi_gs/CIM/001_099/004/01.01.02_60/gs_CIM004v010102p.pdf.