Web Concepts in JSON: Concept Data

Web Concepts JSON representations are available for easily using Web concepts in machine-readable form. JSON data for all concepts and their values is available as one JSON document.

For each concept, there also is JSON data just for that concept, and there also is individual JSON data for each individual concept value. These JSON representations are linked from the concept pages, and from the concept value pages. They follow this pattern:

JSON Document Structure

The following JSON snippet shows one part of the HTTP Method concept. All but the HTTP GET method have been removed in this example.

{ "concept":       "http-method",
  "id":            "http://webconcepts.info/concepts/http-method/",
  "name-singular": "HTTP Request Method",
  "name-plural":   "HTTP Request Methods",
  "registry":      "http://www.iana.org/assignments/http-methods/http-methods.xhtml#methods",
  "values": [
    { "value":   "GET",
      "concept": "http://webconcepts.info/concepts/http-method/",
      "id":      "http://webconcepts.info/concepts/http-method/GET",
      "details": [
        { "description":   "The GET method ...",
          "documentation": "http://tools.ietf.org/html/rfc7231#section-4.3.1",
          "specification": "http://webconcepts.info/specs/IETF/RFC/7231",
          "spec-name":     "RFC 7231" }]}]}

For the top-level object describing the concept, the structure is rather simple:

For each value, the concept JSON contains a JSON object that is either embedded (as shown here), or is also available as a standalone JSON document as described above. The concept value object uses the following structure:

Within the details array, the following object structure is used (this data is also available in the JSON representation of specifications):

There can be more than one value in the details array, see here for a discussion of why there can be more than one description/definition. There currently is no way to determine the “best” or “most authoritative” one, so applications ideally should render all of them.