forked from ruzyysmartt/json-ld-api
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathterms.html
More file actions
297 lines (295 loc) · 20.1 KB
/
terms.html
File metadata and controls
297 lines (295 loc) · 20.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
<dl class="termlist" data-sort>
<dt><dfn>array</dfn></dt><dd>
In the JSON serialization, an array structure is represented as square brackets surrounding zero
or more values. Values are separated by commas.
In the <a>internal representation</a>, an array is an <em>ordered</em> collection of zero or more values.
While JSON-LD uses the same array representation as JSON,
the collection is <em>unordered</em> by default. While order is
preserved in regular JSON arrays, it is not in regular JSON-LD arrays
unless specifically defined (see
<a data-cite="JSON-LD11#sets-and-lists" class="externalDFN">Sets and Lists</a> in
the JSON-LD Syntax specification [[JSON-LD11]]).</dd>
<dt><dfn>JSON object</dfn></dt><dd>
In the JSON serialization, an <a data-cite="RFC8259#section-4" class="externalDFN">object</a> structure is represented as a pair of curly brackets surrounding zero or
more members composed of name-value pairs. A name is a <a>string</a>. A single colon comes after
each name, separating the name from the value. A single comma separates a value
from a following name. In JSON-LD the names in an object MUST be unique.
In the <a>internal representation</a> a <a>JSON object</a> is equivalent to a
<dfn data-cite="WEBIDL#dfn-dictionary" class="preserve">dictionary</dfn> (see [[WEBIDL]]),
composed of <dfn data-cite="WEBIDL#dfn-dictionary-member" data-lt="dictionary member|member" class="preserve">dictionary members</dfn> with key-value pairs.</dd>
<dt class="changed"><dfn data-lt="internal representation">JSON-LD internal representation</dfn></dt><dd class="changed">The JSON-LD
internal representation is the result of transforming a JSON syntactic structure
into the core data structures suitable for direct processing:
<a>arrays</a>, <a>dictionaries</a>,
<a>strings</a>, <a>numbers</a>, <a>booleans</a>, and <a>null</a>.</dd>
<dt><dfn>null</dfn></dt><dd>
The use of the <a data-cite="RFC8259#section-3" class="externalDFN">null</a> value within JSON-LD is used to
ignore or reset values. A <a>dictionary member</a> in the <code>@context</code> where
the value, or the <code>@id</code> of the value, is <code>null</code>
explicitly decouples a term's association with an IRI. A <a>dictionary member</a> in
the body of a <a>JSON-LD document</a> whose value is <code>null</code> has the
same meaning as if the <a>dictionary member</a> was not defined. If
<code>@value</code>, <code>@list</code>, or <code>@set</code> is set to
<code>null</code> in expanded form, then the entire <a>JSON
object</a> is ignored.</dd>
<dt><dfn data-lt="number|JSON number">number</dfn></dt><dd>
In the JSON serialization, a <a data-cite="RFC8259#section-6" class="externalDFN">number</a> is similar to that used in most programming languages, except
that the octal and hexadecimal formats are not used and that leading
zeros are not allowed.
In the <a>internal representation</a>, a <a>number</a> is equivalent to either
a <dfn data-cite="WEBIDL#idl-long" class="preserve">long</dfn>
or <dfn data-cite="WEBIDL#idl-double" class="preserve">double</dfn>, depending
on if the number has a non-zero fractional part (see [[WEBIDL]]).</dd>
<dt><dfn>scalar</dfn></dt><dd>
A scalar is either a JSON <a>string</a>, <a>number</a>, <a>true</a>,
or <a>false</a>.</dd>
<dt><dfn>string</dfn></dt><dd>
A <a data-cite="RFC8259#section-7" class="externalDFN">string</a> is a sequence of zero or more Unicode (UTF-8) characters,
wrapped in double quotes, using backslash escapes (if necessary). A
character is represented as a single character string.</dd>
<dt><dfn>true</dfn> and <dfn>false</dfn></dt><dd>
<a data-cite="RFC8259#section-3" class="externalDFN">Values</a> that are used to express one of two possible
<dfn data-cite="WEBIDL#idl-boolean" class="preserve">boolean</dfn> states.</dd>
</dl>
<p>Furthermore, the following terminology is used throughout this document:</p>
<dl class="termlist" data-sort>
<dt><dfn>absolute IRI</dfn></dt><dd>
An <a data-cite="RFC3987#section-1.3" class="externalDFN">absolute IRI</a> is defined in [[RFC3987]] containing a <em>scheme</em> along with a <em>path</em> and
optional <em>query</em> and fragment segments.</dd>
<dt><dfn>active context</dfn></dt><dd>
A <a>context</a> that is used to resolve <a>terms</a> while the processing
algorithm is running.</dd>
<dt><dfn>base IRI</dfn></dt><dd>
The <a>base IRI</a> is an <a>absolute IRI</a> established in the <a>context</a>,
or is based on the <a>JSON-LD document</a> location. The <a>base IRI</a> is used to turn
<a>relative IRIs</a> into <a>absolute IRIs</a>.</dd>
<dt><dfn>blank node</dfn></dt><dd>
A <a>node</a> in a <a>graph</a> that is neither an
<a>IRI</a>, nor a <a>JSON-LD value</a>, nor a <a>list</a>.
A <a data-cite="RDF11-CONCEPTS#dfn-blank-node" class="externalDFN">blank node</a> does not contain a de-referenceable
identifier because it is either ephemeral in nature or does not contain information that needs to be
linked to from outside of the <a>linked data graph</a>. A blank node is assigned an identifier starting with
the prefix <code>_:</code>.</dd>
<dt><dfn>blank node identifier</dfn></dt><dd>
A <a data-cite="RDF11-CONCEPTS#dfn-blank-node-identifier" class="externalDFN">blank node identifier</a> is a string that can be used as an identifier for a
<a>blank node</a> within the scope of a JSON-LD document. Blank node identifiers
begin with <code>_:</code>.</dd>
<dt><dfn>compact IRI</dfn></dt><dd>
A compact IRI is has the form of <a>prefix</a>:<em>suffix</em> and is used as a way
of expressing an <a>IRI</a> without needing to define separate <a>term</a> definitions for
each IRI contained within a common vocabulary identified by <a>prefix</a>.</dd>
<dt><dfn>context</dfn></dt><dd>
A set of rules for interpreting a <a>JSON-LD document</a> as specified in
<a data-cite="JSON-LD11#the-context">The Context</a> of the JSON-LD Syntax specification [[JSON-LD11]].</dd>
<dt><dfn>datatype IRI</dfn></dt><dd>
A <a data-cite="RDF11-CONCEPTS#dfn-datatype-iri" class="externalDFN">datatype IRI</a>
as specified by [[RDF11-CONCEPTS]].</dd>
<dt><dfn>default graph</dfn></dt><dd>
The <a data-cite="RDF11-CONCEPTS#dfn-default-graph" class="externalDFN">default graph</a> is the only graph in a JSON-LD document which has no <a>graph name</a>.
When executing an algorithm, the graph where data should be placed
if a <a>named graph</a> is not specified.</dd>
<dt><dfn>default language</dfn></dt><dd>
The default language is set in the <a>context</a> using the <code>@language</code> key whose
value MUST be a <a>string</a> representing a [[BCP47]] language code or <code>null</code>.</dd>
<dt><dfn>default object</dfn></dt><dd>
A <a>default object</a> is a <a>dictionary</a> that has a <code>@default</code> key.</dd>
<dt><dfn>edge</dfn></dt><dd>
Every <a>edge</a> has a direction associated with it and is labeled with
an <a>IRI</a> or a <a>blank node identifier</a>. Within the JSON-LD syntax
these edge labels are called <a>properties</a>. Whenever possible, an
<a>edge</a> should be labeled with an <a>IRI</a>.</dd>
<dt><dfn>expanded term definition</dfn></dt><dd>
An expanded term definition, is a <a>term definition</a> where the value is a <a>dictionary</a>
containing one or more <a>keyword</a> keys to define the associated <a>absolute IRI</a>,
if this is a reverse property, the type associated with string values, and a container mapping.</dd>
<dt><dfn data-lt="frame|JSON-LD frame">frame</dfn></dt><dd>
A <a>JSON-LD document</a>, which describes the form for transforming
another <a>JSON-LD document</a> using matching and embedding rules.
A frame document allows additional keywords and certain <a>dictionary members</a>
to describe the matching and transforming process.</dd>
<dt><dfn data-lt="json-ld processor|Processors">JSON-LD Processor</dfn></dt><dd>
A <a>JSON-LD Processor</a> is a system which can perform the algorithms defined in [[JSON-LD11-API]].</dd>
<dt><dfn>frame object</dfn></dt><dd>
A frame object is a <a>dictionary</a> element within a <a>frame</a>
which represents a specific portion of the <a>frame</a> matching either a
<a>node object</a> or a <a>value object</a> in the input.</dd>
<dt><dfn>graph name</dfn></dt><dd>
The <a>IRI</a> identifying a <a data-cite="RDF11-CONCEPTS#dfn-graph-name" class="externalDFN">named graph</a>.</dd>
<dt class="changed"><dfn>id map</dfn></dt><dd class="changed">
An <a>id map</a> is a <a>dictionary</a> value of a <a>term</a> defined with
<code>@container</code> set to <code>@id</code>, whose keys are
interpreted as <a>IRIs</a> representing the <code>@id</code>
of the associated <a>node object</a>; value MUST be a <a>node object</a>.
If the value contains a key expanding to <code>@id</code>, it's value MUST
be equivalent to the referencing key.</dd>
<dt class="changed"><dfn>graph object</dfn></dt><dd class="changed">
A <a>graph object</a> represents a <a>named graph</a> represented as the
value of a <a>dictionary member</a> within a <a>node object</a>. When expanded, a
graph object MUST have an <code>@graph</code> <a>member</a>, and may also have
<code>@id</code>, and <code>@index</code> <a>members</a>.
A <dfn class="preserve">simple graph object</dfn> is a
<a>graph object</a> which does not have an <code>@id</code> <a>member</a>. Note
that <a>node objects</a> may have a <code>@graph</code> member, but are
not considered <a>graph objects</a> if they include any other <a>members</a>.
A top-level object consisting of <code>@graph</code> is also not a <a>graph object</a>.</dd>
<dt><dfn>index map</dfn></dt><dd>
An <a>index map</a> is a <a>dictionary</a> value of a <a>term</a> defined with
<code>@container</code> set to <code>@index</code>, whose values MUST be any of the following types:
<a>string</a>,
<a>number</a>,
<a>true</a>,
<a>false</a>,
<a>null</a>,
<a>node object</a>,
<a>value object</a>,
<a>list object</a>,
<a>set object</a>, or
an <a>array</a> of zero or more of the above possibilities.
</dd>
<dt><dfn data-lt="IRI|Internationalized Resource Identifier"><abbr title="Internationalized Resource Identifier">IRI</abbr></dfn></dt><dd>
An <a data-cite="RFC3987#section-1.3" class="externalDFN">Internationalized Resource Identifier</a> as described in [[RFC3987]].</dd>
<dt><dfn>JSON-LD document</dfn></dt><dd>
A <a>JSON-LD document</a> is a serialization of a collection of
<a>graphs</a> and comprises exactly one
<a>default graph</a> and zero or more <a>named graphs</a>.</dd>
<dt><dfn>JSON-LD value</dfn></dt><dd>
A <a>JSON-LD value</a> is a <a>string</a>, a <a>number</a>,
<a>true</a> or <a>false</a>, a <a>typed value</a>, or a
<a>language-tagged string</a>.</dd>
<dt><dfn>keyword</dfn></dt><dd>
A <a>string</a> that is specific to JSON-LD, specified in the JSON-LD Syntax specification [[JSON-LD11]]
in the section titled <a data-cite="JSON-LD11#syntax-tokens-and-keywords">Syntax Tokens and Keywords</a>.</dd>
<dt><dfn>language map</dfn></dt><dd>
An <a>language map</a> is a <a>dictionary</a> value of a <a>term</a> defined with
<code>@container</code> set to <code>@language</code>, whose keys MUST be <a>strings</a> representing
[[BCP47]] language codes and the values MUST be any of the following types:
<a>null</a>,
<a>string</a>, or
an <a>array</a> of zero or more of the above possibilities.
</dd>
<dt><dfn>language-tagged string</dfn></dt><dd>
A <a data-cite="RDF11-CONCEPTS#dfn-language-tagged-string" class="externalDFN">language-tagged string</a> consists of a string and a non-empty language
tag as defined by [[BCP47]]. The <dfn>language tag</dfn> MUST be well-formed according to
<a data-cite="BCP47#section-2.2.9">section 2.2.9 Classes of Conformance</a>
of [[BCP47]], and is normalized to lowercase.</dd>
<dt><dfn>Linked Data</dfn></dt><dd>
A set of documents, each containing a representation of a <a>linked data graph</a>.</dd>
<dt><dfn data-lt="graph">linked data graph</dfn></dt><dd>
A labeled directed <a data-cite="RDF11-CONCEPTS#dfn-rdf-graph" class="externalDFN">graph</a>, i.e., a set of <a>nodes</a>
connected by <a>edges</a>,
as specified in the <a data-cite="JSON-LD11#data-model">Data Model</a>
section of the JSON-LD specification [[JSON-LD11]].
A <a>linked data graph</a> is a generalized representation of an
<dfn class="preserve" data-cite="RDF11-CONCEPTS#dfn-rdf-graph">RDF graph</dfn>
as defined in [[RDF11-CONCEPTS]].</dd>
<dt><dfn>list</dfn></dt><dd>
A <a>list</a> is an ordered sequence of <a>IRIs</a>,
<a>blank nodes</a>, and <a>JSON-LD values</a>.
See <dfn data-cite="RDF-SCHEMA#ch_collectionvocab" data-lt="collection" class="preserve">RDF collection</dfn>
in [[RDF-SCHEMA]].</dd>
<dt><dfn>list object</dfn></dt><dd>
A <a>list object</a> is a <a>dictionary</a> that has a <code>@list</code>
key.</dd>
<dt><dfn>literal</dfn></dt><dd>
An <a>object</a> expressed as a value such as a string, number or in expanded form.</dd>
<dt><dfn>local context</dfn></dt><dd>
A <a>context</a> that is specified with a <a>dictionary</a>,
specified via the <code>@context</code> <a>keyword</a>.</dd>
<dt><dfn>named graph</dfn></dt><dd>
A <a data-cite="RDF11-CONCEPTS#dfn-named-graph" class="externalDFN">named graph</a> is a <a>linked data graph</a> that is identified by an <a>IRI</a> or <a>blank node</a>.</dd>
<dt><dfn>implicitly named graph</dfn></dt><dd>
A <a>named graph</a> created from the value of a <a>dictionary member</a> having an
<a>expanded term definition</a> where <code>@container</code> is set to <code>@graph</code>.</dd>
<dt><dfn>nested property</dfn></dt><dd>
A <a>nested property</a> is a key in a <a>node object</a> whose value is a
<a>dictionary</a> containing <a>members</a> which are treated as if they were values of the <a>node object</a>.
The <a>nested property</a> itself is semantically meaningless used only to create a sub-structure within
a <a>node object</a>.
</dd>
<dt><dfn>node</dfn></dt><dd>
Every <a data-cite="RDF11-CONCEPTS#dfn-node" class="externalDFN">node</a> is an <a>IRI</a>, a <a>blank node</a>,
a <a>JSON-LD value</a>, or a <a>list</a>.
A piece of information that is represented in a <a>linked data graph</a>.</dd>
<dt><dfn>node object</dfn></dt><dd>
A <a>node object</a> represents zero or more <a>properties</a> of a
<a>node</a> in the <a>graph</a> serialized by the
<a>JSON-LD document</a>. A <a>dictionary</a> is a <a>node object</a>
if it exists outside of the JSON-LD <a>context</a> and:
<ul>
<li>it does not contain the <code>@value</code>, <code>@list</code>,
or <code>@set</code> keywords, or</li>
<li>it is not the top-most <a>dictionary</a> in the JSON-LD document consisting
of no other <a>members</a> than <code>@graph</code> and <code>@context</code>.</li>
</ul>
The <a>members</a> of a <a>node object</a> whose keys are not keywords are also called <a>properties</a> of the <a>node object</a>.
</dd>
<dt><dfn>node reference</dfn></dt><dd>
A <a>node object</a> used to reference a node having only the
<code>@id</code> key.</dd>
<dt><dfn>object</dfn></dt><dd>
An <a data-cite="RDF11-CONCEPTS#dfn-object" class="externalDFN">object</a> is a <a>node</a> in a <a>linked data graph</a> with at least one incoming edge.
See <dfn data-cite="RDF11-CONCEPTS#dfn-object" class="preserve">RDF object</dfn> in [[RDF11-CONCEPTS]].</dd>
<dt><dfn>prefix</dfn></dt><dd>
A <a>prefix</a> is the first component of a <a>compact IRI</a> which comes from a
<a>term</a> that maps to a string that, when prepended to the suffix of the <a>compact IRI</a>
results in an <a>absolute IRI</a>.</dd>
<dt><dfn>processing mode</dfn></dt><dd>
The processing mode defines how a JSON-LD document is processed.
By default, all documents are assumed to be conformant with
<a data-cite="JSON-LD">JSON-LD 1.0</a> [[JSON-LD]]. By defining
a different version using the <code>@version</code> <a>member</a> in a
<a>context</a>, or via explicit API option, other processing modes
can be accessed. This specification defines extensions for the
<code>json-ld-1.1</code> <a>processing mode</a>.</dd>
<dt><dfn>property</dfn></dt><dd>
The <a>IRI</a> label of an edge in a <a>linked data graph</a>.
See <dfn data-cite="RDF11-CONCEPTS#dfn-predicate" data-lt="predicate" class="preserve">RDF predicate</dfn> in [[RDF11-CONCEPTS]].</dd>
<dt><dfn>quad</dfn></dt><dd>
A piece of information that contains four items; a <a>subject</a>, a <a>property</a>,
an <a>object</a>, and a <a>graph name</a>.</dd>
<dt><dfn data-lt="dataset">RDF dataset</dfn></dt><dd>
A <a data-cite="RDF11-CONCEPTS#dfn-rdf-dataset" class="externalDFN">dataset</a> as specified by [[RDF11-CONCEPTS]] representing a collection of
<a data-cite="RDF11-CONCEPTS#dfn-rdf-graph">RDF graphs</a>.</dd>
<dt><dfn data-lt="resource">RDF resource</dfn></dt><dd>
A <a data-cite="RDF11-CONCEPTS#dfn-resource" class="externalDFN">resource</a> as specified by [[RDF11-CONCEPTS]].</dd>
<dt><dfn data-lt="triple">RDF triple</dfn></dt><dd>
A <a data-cite="RDF11-CONCEPTS#dfn-rdf-triple" class="externalDFN">triple</a> as specified by [[RDF11-CONCEPTS]].</dd>
<dt><dfn>relative IRI</dfn></dt><dd>
A relative IRI is an <a>IRI</a> that is relative to some other <a>absolute IRI</a>,
typically the <a>base IRI</a> of the document. Note that
<a>properties</a>, values of <code>@type</code>, and values of <a>terms</a> defined to be <em>vocabulary relative</em>
are resolved relative to the <a>vocabulary mapping</a>, not the <a>base IRI</a>.</dd>
<dt><dfn>set object</dfn></dt><dd>
A <a>set object</a> is a <a>dictionary</a> that has an <code>@set</code> <a>member</a>.</dd>
<dt><dfn>subject</dfn></dt><dd>
A <a data-cite="RDF11-CONCEPTS#dfn-subject" class="externalDFN">subject</a> is a<a>node</a> in a <a>linked data graph</a> with at least one outgoing edge, related to an <a>object</a> node through a <a>property</a>.
See <dfn data-cite="RDF11-CONCEPTS#dfn-subject" class="preserve">RDF subject</dfn> in [[RDF11-CONCEPTS]].</dd>
<dt><dfn>term</dfn></dt><dd>
A <a>term</a> is a short word defined in a <a>context</a> that MAY be expanded to an <a>IRI</a>
</dd>
<dt><dfn>term definition</dfn></dt><dd>
A term definition is an entry in a <a>context</a>, where the key defines a <a>term</a> which may be used within
a <a>dictionary</a> as a key, type, or elsewhere that a string is interpreted as a vocabulary item.
Its value is either a string (<dfn data-lt="simple term">simple term definition</dfn>), expanding to an absolute IRI, or an <a>expanded term definition</a>.
</dd>
<dt class="changed"><dfn>type map</dfn></dt><dd class="changed">
An <a>type map</a> is a <a>dictionary</a> value of a <a>term</a> defined with
<code>@container</code> set to <code>@type</code>, whose keys are
interpreted as <a>IRIs</a> representing the <code>@type</code>
of the associated <a>node object</a>;
value MUST be a <a>node object</a>, or <a>array</a> of node objects.
If the value contains a <a>term</a> expanding to <code>@type</code>, it's values
are merged with the map value when expanding.</dd>
<dt><dfn>typed literal</dfn></dt><dd>
A <a>typed literal</a> is a <a>literal</a> with an associated <a>IRI</a>
which indicates the literal's datatype.
See <dfn data-cite="RDF11-CONCEPTS#dfn-literal" class="preserve">RDF literal</dfn> in [[RDF11-CONCEPTS]].</dd>
<dt><dfn>typed value</dfn></dt><dd>
A <a>typed value</a> consists of a value, which is a <a>string</a>, and a type,
which is an <a>IRI</a>.</dd>
<dt><dfn>value object</dfn></dt><dd>
A <a>value object</a> is a <a>dictionary</a> that has an <code>@value</code> <a>member</a>.</dd>
<dt><dfn>vocabulary mapping</dfn></dt><dd>
The vocabulary mapping is set in the <a>context</a> using the <code>@vocab</code> key whose
value MUST be an <a>absolute IRI</a> or <code>null</code>.</dd>
</dl>