NGSI-LD

Next Generation Service Interfaces - Linked Data

What is NGSI-LD?

NGSI-LD is information model and API for publishing, querying and subscribing to context information. It enables structured information sharing across multiple domains like smart cities, smart industries, and digital twins. Standardized by ETSI through ISG CIM, it builds on decades of context management research and evolved from the OMA's NGSI specifications via the FIWARE community.

The NGSI-LD information model represents Context Information as entities that have properties and relationships to other entities. It is derived from property graphs, with semantics formally defined on the basis of RDF and the semantic web framework.

Key features of NGSI-LD include:

  • A uniform representation of entities and attributes as graph-based data
  • Based on JSON-LD to enable semantic interoperability
  • Standardized REST API for managing and accessing context information
  • Advanced query language for retrieving context information
  • Support for temporal, spatial and graph queries

A Simple Example

The tabs below show how to create and then retrieve an NGSI‑LD Entity in various output representions. The "normalized" and "simplified" representations are JSON-LD-compliant documents.

POST ../ngsi-ld/v1/entities/

Content-Type: application/ld+json
{
   "@context": [
     "https://smart-data-models.github.io/dataModel.Person/context.jsonld",
     "https://uri.etsi.org/ngsi-ld/v1/ngsi-ld-core-context-v1.8.jsonld"
   ],
   "id": "urn:ngsi-ld:Person:John_Lennon",
   "type": "Person",
   "name": {"type": "Property", "value": "John Lennon"},
   "born": {"type": "Property", "value": "1940-10-09"},
   "spouse": {"type": "Relationship", "object": "urn:ngsi-ld:Person:Cynthia_Lennon" }
}
GET  ../ngsi-ld/v1/entities/urn:ngsi-ld:Person:John_Lennon

Accept: application/ld+json
Link:   <https://smart-data-models.github.io/dataModel.Person/context.jsonld>;
        rel="http://www.w3.org/ns/json-ld#context"; type="application/ld+json"
{
  "@context": [
    "https://smart-data-models.github.io/dataModel.Person/context.jsonld",
    "https://uri.etsi.org/ngsi-ld/v1/ngsi-ld-core-context-v1.8.jsonld"
  ],
  "id": "urn:ngsi-ld:Person:John_Lennon",
  "type": "Person",
  "name": {"type": "Property", "value": "John Lennon"},
  "born": {"type": "Property", "value": "1940-10-09"},
  "spouse": {"type": "Relationship", "object": "urn:ngsi-ld:Person:Cynthia_Lennon" }
}
GET  ../ngsi-ld/v1/entities/urn:ngsi-ld:Person:John_Lennon?format=simplified

Accept: application/ld+json
Link:   <https://smart-data-models.github.io/dataModel.Person/context.jsonld>;
        rel="http://www.w3.org/ns/json-ld#context"; type="application/ld+json"
{
  "@context": [
    "https://smart-data-models.github.io/dataModel.Person/context.jsonld",
    "https://uri.etsi.org/ngsi-ld/v1/ngsi-ld-core-context-v1.8.jsonld"
  ],
  "id": "urn:ngsi-ld:Person:John_Lennon",
  "type": "Person",
  "name": "John Lennon",
  "born": "1940-10-09",
  "spouse": "urn:ngsi-ld:Person:Cynthia_Lennon"
}
GET  ../ngsi-ld/v1/entities/urn:ngsi-ld:Person:John_Lennon?format=simplified

Accept: application/json
Link:   <https://smart-data-models.github.io/dataModel.Person/context.jsonld>;
        rel="http://www.w3.org/ns/json-ld#context"; type="application/ld+json"
{
  "id": "urn:ngsi-ld:Person:John_Lennon",
  "type": "Person",
  "name": "John Lennon",
  "born": "1940-10-09",
  "spouse": "urn:ngsi-ld:Person:Cynthia_Lennon"
}

First time? Start here!

Documentation & Resources

This website is an independent resource and it is not affiliated with ETSI.