Introduction
This document, and the associated documents in alternative formats, defines the JSON-LD Namespace.
This includes URIs required for HTTP Profile and media-type profile definitions,
Link relations used for locating JSON-LD context files,
and a vocabulary that can be used for representing JSON-LD contexts in RDF.
For example, the following Turtle defines a subset of the terms defined in the JSON-LD vocabulary context definition:
@prefix : <http://www.w3.org/ns/json-ld> .
[ a :Context
:version 1.1;
:definition [
a :PrefixDefinition;
:term "jsonld";
:iri <http://www.w3.org/ns/json-ld#>;
], [
a :TermDefinition;
:term "Context";
:iri :Context
], [
a :TermDefinition;
:term "base";
:iri :base;
:type "@id"
]
] .
Context |
Context
§
Defines term definitions and other aspects of a JSON-LD Context .
A context definition MUST be a map whose keys MUST be either terms, compact IRIs, IRIs, or one of the keywords @base , @import , @language , @propagate , @protected , @type , @version , or @vocab .
You can read more about this feature in the JSON-LD Syntax Specification.
|
PrefixDefinition |
Prefix Definition
§
A string (simple term definition), expanding to an IRI.
You can read more about this feature in the JSON-LD Syntax Specification.
|
TermDefinition |
Term Definition
§
A term definition is an entry in a context, where the key defines a term which may be used within a dictionary as a key, type, or elsewhere that a string is interpreted as a vocabulary item. Its value is an expanded term definition.
An expanded term definition MUST be a map composed of zero or more keys from @id , @reverse , @type , @language , @container , @context , @prefix , @propagate , or @protected . An expanded term definition SHOULD NOT contain any other keys.
You can read more about this feature in the JSON-LD Syntax Specification.
|
base |
base
§
If the context definition has an @base key, its value MUST be an IRI reference, or null .
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- xsd:anyUri
- schema:domainIncludes
- jsonld:Context
|
container |
container
§
The associated @container value in an expanded term definition.
If the expanded term definition contains the @container keyword, its value MUST be either @list , @set , @language , @index , @id , @graph , @type , or be null or an array containing exactly any one of those keywords, or a combination of @set and any of @index , @id , @graph , @type , @language in any order.
@container may also be an array containing @graph along with either @id or @index and also optionally including @set .
If the value is @language , when the term is used outside of the @context , the associated value MUST be a language map.
If the value is @index , when the term is used outside of the @context , the associated value MUST be an index map.
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- jsonld:ContainerType
- schema:domainIncludes
- jsonld:TermDefinition
|
context |
context
§
As an IRI, this link relation is used to associate a JSON-LD context with a JSON document so that it can be interpreted as JSON-LD. In an HTTP request header, specifies the location of a context to use for compaction. As a Context, defines an inline context definition .
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- jsonld:Context, xsd:anyUri
|
definition |
definition
§
Term definition(s) associated with this context.
- schema:rangeIncludes
- jsonld:TermDefinition, jsonld:PrefixDefinition
- schema:domainIncludes
- jsonld:Context
|
direction |
direction
§
If the context definition has an @direction key, its value MUST be one of "ltr" or "rtl" , or be null .
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- xsd:string
- schema:domainIncludes
- jsonld:Context, jsonld:TermDefinition
|
id |
id
§
The @id mapping of a term definition.
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- xsd:anyUri
- schema:domainIncludes
- jsonld:TermDefinition, jsonld:PrefixDefinition
|
import |
import
§
If the context definition contains the @import keyword, its value MUST be an IRI reference. When used as a reference from an @import , the referenced context definition MUST NOT include an @import key, itself.
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- xsd:anyUri
- schema:domainIncludes
- jsonld:Context
|
language |
language
§
The default language is set in the context using the @language key whose value MUST be a string representing a BCP47 language code or null.
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- xsd:string
- schema:domainIncludes
- jsonld:Context, jsonld:TermDefinition
|
nest |
nest
§
If the expanded term definition contains the @nest keyword, its value MUST be either @nest , or a term which expands to @nest .
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- xsd:string
- schema:domainIncludes
- jsonld:TermDefinition
|
prefix |
prefix
§
With the value true , allows this term to be used to construct a compact IRI when compacting.
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- xsd:boolean
- schema:domainIncludes
- jsonld:TermDefinition
|
propagate |
propagate
§
If the context definition contains the @propagate keyword, its value MUST be true or false .
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- xsd:boolean
- schema:domainIncludes
- jsonld:Context, jsonld:TermDefinition
|
protected |
protected
§
If the context definition contains the @protected keyword, its value MUST be true or false .
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- xsd:boolean
- schema:domainIncludes
- jsonld:Context, jsonld:TermDefinition
|
reverse |
reverse
§
The @reverse mapping of an expanded term definition.
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- xsd:anyUri
- schema:domainIncludes
- jsonld:TermDefinition
|
term |
term
§
The term associated with a term definition.
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- xsd:string
- schema:domainIncludes
- jsonld:TermDefinition, jsonld:PrefixDefinition
|
type |
type
§
If the context definition contains the @type keyword, its value MUST be a map with only the entry @container set to @set , and optionally an entry @protected .
If the expanded term definition contains the @type keyword, its value MUST be an IRI reference, a term, null , or one of the keywords @id , @json , @none , or @vocab .
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- xsd:anyUri, xsd:string
- schema:domainIncludes
- jsonld:Context, jsonld:TermDefinition
|
version |
version
§
The processing mode defines how a JSON-LD document is processed. By default, all documents are assumed to be conformant with JSON-LD 1.1`. By defining a different version via explicit API option, other processing modes can be accessed. This specification defines extensions for the json-ld-1.1 processing mode.
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- xsd:decimal
- schema:domainIncludes
- jsonld:Context
|
vocab |
vocab
§
Used to expand properties and values in @type with a common prefix IRI.
You can read more about this feature in the JSON-LD Syntax Specification.
- schema:rangeIncludes
- xsd:anyUri
- schema:domainIncludes
- jsonld:Context
|
compacted |
compacted
§
This profile IRI is used to request or specify compacted JSON-LD document form.
You can read more about this feature in the JSON-LD Syntax Specification.
|
expanded |
expanded
§
This profile URI is used to request or specify expanded JSON-LD document form.
You can read more about this feature in the JSON-LD Syntax Specification.
|
flattened |
flattened
§
This profile URI is used to request or specify flattened JSON-LD document form.
You can read more about this feature in the JSON-LD Syntax Specification.
|
frame |
frame
§
As an IRI, this link relation is used to associate a JSON-LD frame with a JSON-LD document. In an HTTP request header, specifies the location of a frame to use for framing.
You can read more about this feature in the JSON-LD Syntax Specification.
|
framed |
framed
§
This profile URI is used to request or specify framed JSON-LD document form.
You can read more about this feature in the JSON-LD Syntax Specification.
|
graphContainerType |
@graph
§
If the expanded term definition contains the @container keyword, its value MUST be either @list , @set , @language , @index , @id , @graph , @type , or be null or an array containing exactly any one of those keywords.
You can read more about this feature in the JSON-LD Syntax Specification.
|
idContainerType |
@id
§
If the expanded term definition contains the @container keyword, its value MUST be either @list , @set , @language , @index , @id , @graph , @type , or be null or an array containing exactly any one of those keywords.
You can read more about this feature in the JSON-LD Syntax Specification.
|
indexContainerType |
@index
§
If the expanded term definition contains the @container keyword, its value MUST be either @list , @set , @language , @index , @id , @graph , @type , or be null or an array containing exactly any one of those keywords.
You can read more about this feature in the JSON-LD Syntax Specification.
|
languageContainerType |
@language
§
If the expanded term definition contains the @container keyword, its value MUST be either @list , @set , @language , @index , @id , @graph , @type , or be null or an array containing exactly any one of those keywords.
You can read more about this feature in the JSON-LD Syntax Specification.
|
listContainerType |
@list
§
If the expanded term definition contains the @container keyword, its value MUST be either @list , @set , @language , @index , @id , @graph , @type , or be null or an array containing exactly any one of those keywords.
You can read more about this feature in the JSON-LD Syntax Specification.
|
setContainerType |
@set
§
If the expanded term definition contains the @container keyword, its value MUST be either @list , @set , @language , @index , @id , @graph , @type , or be null or an array containing exactly any one of those keywords.
You can read more about this feature in the JSON-LD Syntax Specification.
|
streaming |
streaming
§
This profile URI is used to request or specify streaming JSON-LD document form.
You can read more about this feature in the JSON-LD Syntax Specification.
|
typeContainerType |
@type
§
If the expanded term definition contains the @container keyword, its value MUST be either @list , @set , @language , @index , @id , @graph , @type , or be null or an array containing exactly any one of those keywords.
You can read more about this feature in the JSON-LD Syntax Specification.
|