JSON-LD
JSON-LD is a method of encoding linked data using JSON and of serializing data similarly to traditional JSON. It is meant to be simple to create by modifying JSON documents. JSON-LD is a World Wide Web Consortium Recommendation initially developed by the JSON for Linking Data Community Group, transferred to the RDF Working Group for review, improvement and standardization, and now maintained by the JSON-LD Working Group.
Design
JSON-LD is based on the concept of a "context" that maps JSON object properties to concepts in an ontology using an RDF model. In order to map the JSON-LD syntax to RDF, JSON-LD allows values to be coerced to a specified type or tagged with a language. A context can be embedded directly in a JSON-LD document or put into a separate file and referenced from traditional JSON documents via an HTTP Link header.Example
The example above describes a person, based on the FOAF (friend of a friend) ontology. First, the two JSON properties
name and homepage and the type Person are mapped to concepts in the FOAF vocabulary and the value of the homepage property is specified to be of the type @id. In other words, the homepage id is specified to be an IRI in the context definition. Based on the RDF model, this allows the person described in the document to be unambiguously identified by an IRI. The use of resolvable IRIs allows RDF documents containing more information to be transcluded which enables clients to discover new data by following those links; this principle is known as 'Follow Your Nose'.By having all data semantically annotated as in the example, an RDF processor can identify that the document contains information about a person and if the processor understands the FOAF vocabulary it can determine which properties specify the person's name and homepage.