Removed old, unneeded diff for 2012-08-30 JSON-LD Syntax spec.
authorManu Sporny <msporny@digitalbazaar.com>
Sun, 30 Sep 2012 16:24:45 -0400
changeset 889 b92b518d30c3
parent 888 006f29fcb53b
child 890 9ab1aa867500
Removed old, unneeded diff for 2012-08-30 JSON-LD Syntax spec.
spec/ED/json-ld-syntax/20120930/diff-20120830.html
--- a/spec/ED/json-ld-syntax/20120930/diff-20120830.html	Sun Sep 30 16:23:51 2012 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,19044 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
-<html dir="ltr" xmlns="http://www.w3.org/1999/xhtml" typeof="bibo:Document">
-<head>
-<title>JSON-LD Syntax 1.0</title>
-<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
-
-<!--
-  === NOTA BENE ===
-  For the three scripts below, if your spec resides on dev.w3 you can check them
-  out in the same tree and use relative links so that they'll work offline,
-  -->
-
-
-
-<style type="text/css">
-.diff { font-weight:bold; color:#0a3; }
-.issue.resolved { display: none; }
-table, thead, tr, td { padding: 5px; border-width: 1px; border-spacing: 0px; border-style: solid; border-collapse: collapse;}
-</style>
-<style>/*****************************************************************
- * ReSpec 3 CSS
- * Robin Berjon - http://berjon.com/
- *****************************************************************/
-
-/* --- INLINES --- */
-em.rfc2119 { 
-    text-transform:     lowercase;
-    font-variant:       small-caps;
-    font-style:         normal;
-    color:              #900;
-}
-
-h1 acronym, h2 acronym, h3 acronym, h4 acronym, h5 acronym, h6 acronym, a acronym,
-h1 abbr, h2 abbr, h3 abbr, h4 abbr, h5 abbr, h6 abbr, a abbr {
-    border: none;
-}
-
-dfn {
-    font-weight:    bold;
-}
-
-a.internalDFN {
-    color:  inherit;
-    border-bottom:  1px solid #99c;
-    text-decoration:    none;
-}
-
-a.externalDFN {
-    color:  inherit;
-    border-bottom:  1px dotted #ccc;
-    text-decoration:    none;
-}
-
-a.bibref {
-    text-decoration:    none;
-}
-
-cite .bibref {
-    font-style: normal;
-}
-
-code {
-    color:  #ff4500;
-}
-
-
-/* --- --- */
-ol.algorithm { counter-reset:numsection; list-style-type: none; }
-ol.algorithm li { margin: 0.5em 0; }
-ol.algorithm li:before { font-weight: bold; counter-increment: numsection; content: counters(numsection, ".") ") "; }
-
-/* --- TOC --- */
-.toc a, .tof a {
-    text-decoration:    none;
-}
-
-a .secno, a .figno {
-    color:  #000;
-}
-
-ul.tof, ol.tof {
-    list-style: none outside none;
-}
-
-.caption {
-    margin-top: 0.5em;
-    font-style:   italic;
-}
-
-/* --- TABLE --- */
-table.simple {
-    border-spacing: 0;
-    border-collapse:    collapse;
-    border-bottom:  3px solid #005a9c;
-}
-
-.simple th {
-    background: #005a9c;
-    color:  #fff;
-    padding:    3px 5px;
-    text-align: left;
-}
-
-.simple th[scope="row"] {
-    background: inherit;
-    color:  inherit;
-    border-top: 1px solid #ddd;
-}
-
-.simple td {
-    padding:    3px 10px;
-    border-top: 1px solid #ddd;
-}
-
-.simple tr:nth-child(even) {
-    background: #f0f6ff;
-}
-
-/* --- DL --- */
-.section dd > p:first-child {
-    margin-top: 0;
-}
-
-.section dd > p:last-child {
-    margin-bottom: 0;
-}
-
-.section dd {
-    margin-bottom:  1em;
-}
-
-.section dl.attrs dd, .section dl.eldef dd {
-    margin-bottom:  0;
-}
-</style><style>/* --- EXAMPLES --- */
-div.example-title {
-    min-width: 7.5em;
-    color: #b9ab2d;
-}
-div.example-title span {
-    text-transform: uppercase;   
-}
-aside.example, div.example, div.illegal-example {
-    padding: 0.5em;
-    margin: 1em 0;
-    position: relative;
-    clear: both;
-}
-div.illegal-example { color: red }
-div.illegal-example p { color: black }
-aside.example, div.example {
-    padding: .5em;
-    border-left-width: .5em;
-    border-left-style: solid;
-    border-color: #e0cb52;
-    background: #fcfaee;    
-}
-
-aside.example div.example {
-    border-left-width: .1em;
-    border-color: #999;
-    background: #fff;
-}
-aside.example div.example div.example-title {
-    color: #999;
-}
-</style><style>/* --- ISSUES/NOTES --- */
-div.issue-title, div.note-title {
-    padding-right:  1em;
-    min-width: 7.5em;
-    color: #b9ab2d;
-}
-div.issue-title { color: #e05252; }
-div.note-title { color: #52e052; }
-div.issue-title span, div.note-title span {
-    text-transform: uppercase;
-}
-div.note, div.issue {
-    margin-top: 1em;
-    margin-bottom: 1em;
-}
-.note > p:first-child, .issue > p:first-child { margin-top: 0 }
-.issue, .note {
-    padding: .5em;
-    border-left-width: .5em;
-    border-left-style: solid;
-}
-div.issue, div.note {
-    padding: 0.5em;
-    margin: 1em 0;
-    position: relative;
-    clear: both;
-}
-span.note, span.issue { padding: .1em .5em .15em; }
-
-.issue {
-    border-color: #e05252;
-    background: #fbe9e9;
-}
-.note {
-    border-color: #52e052;
-    background: #e9fbe9;
-}
-
-
-</style><link rel="stylesheet" href="http://www.w3.org/StyleSheets/TR/W3C-ED" /><script>window["_GOOG_TRANS_EXT_VER"] = "1";</script>
-<!--[if lt IE 9]><script src='undefined://www.w3.org/2008/site/js/html5shiv.js'></script><![endif]-->
-<style type='text/css'>
-.diff-old-a {
-  font-size: smaller;
-  color: red;
-}
-
-.diff-new { background-color: yellow; }
-.diff-chg { background-color: lime; }
-.diff-new:before,
-.diff-new:after
-    { content: "\2191" }
-.diff-chg:before, .diff-chg:after
-    { content: "\2195" }
-.diff-old { text-decoration: line-through; background-color: #FBB; }
-.diff-old:before,
-.diff-old:after
-    { content: "\2193" }
-:focus { border: thin red solid}
-</style>
-</head>
-
-
-<body>
-<div class="head">
-<p>
-<a href="http://www.w3.org/">
-<img width="72" height="48" src="http://www.w3.org/Icons/w3c_home" alt="W3C" />
-</a>
-</p>
-<h1 class="title" id="title">
-JSON-LD
-Syntax
-1.0
-</h1>
-<h2 id="subtitle">
-A
-Context-based
-JSON
-Serialization
-for
-Linking
-Data
-</h2>
-<h2 id="w3c-editor-s-draft-30-september-2012">
-<abbr title="World Wide Web Consortium">
-W3C
-</abbr>
-Editor's
-Draft
-30
-<del class="diff-old">August
-</del>
-<ins class="diff-chg">September
-</ins>
-2012
-</h2>
-<dl>
-<dt>
-This
-version:
-</dt>
-<dd>
-<del class="diff-old">http://dvcs.w3.org/hg/json-ld/raw-file/default/spec/ED/json-ld-syntax/20120830/index.html
-</del>
-<a href="http://dvcs.w3.org/hg/json-ld/raw-file/default/spec/latest/json-ld-syntax/index.html">
-<ins class="diff-chg">http://dvcs.w3.org/hg/json-ld/raw-file/default/spec/latest/json-ld-syntax/index.html
-</ins>
-</a>
-</dd>
-<dt>
-Latest
-published
-version:
-</dt>
-<dd>
-<a href="http://www.w3.org/TR/json-ld-syntax/">
-http://www.w3.org/TR/json-ld-syntax/
-</a>
-</dd>
-<dt>
-Latest
-editor's
-draft:
-</dt>
-<dd>
-<a href="http://dvcs.w3.org/hg/json-ld/raw-file/default/spec/latest/json-ld-syntax/index.html">
-http://dvcs.w3.org/hg/json-ld/raw-file/default/spec/latest/json-ld-syntax/index.html
-</a>
-</dd>
-<dt>
-Editors:
-</dt>
-<dd rel="bibo:editor" inlist="">
-<span typeof="foaf:Person">
-<a rel="foaf:homepage" property="foaf:name" content="Manu Sporny" href="http://manu.sporny.org/">
-Manu
-Sporny
-</a>,
-<a rel="foaf:workplaceHomepage" href="http://digitalbazaar.com/">
-Digital
-Bazaar
-</a>
-</span>
-</dd>
-<dd rel="bibo:editor" inlist="">
-<span typeof="foaf:Person">
-<a rel="foaf:homepage" property="foaf:name" content="Gregg Kellogg" href="http://greggkellogg.net/">
-Gregg
-Kellogg
-</a>,
-<a rel="foaf:workplaceHomepage" href="http://kellogg-assoc.com/">
-Kellogg
-Associates
-</a>
-</span>
-</dd>
-<dd rel="bibo:editor" inlist="">
-<span typeof="foaf:Person">
-<a rel="foaf:homepage" property="foaf:name" content="Markus Lanthaler" href="http://www.markus-lanthaler.com/">
-Markus
-Lanthaler
-</a>,
-<a rel="foaf:workplaceHomepage" href="http://www.tugraz.at/">
-Graz
-University
-of
-Technology
-</a>
-</span>
-</dd>
-<dt>
-Authors:
-</dt>
-<dd rel="dcterms:contributor">
-<span typeof="foaf:Person">
-<a rel="foaf:homepage" property="foaf:name" content="Manu Sporny" href="http://digitalbazaar.com/">
-Manu
-Sporny
-</a>,
-<a rel="foaf:workplaceHomepage" href="http://digitalbazaar.com/">
-Digital
-Bazaar
-</a>
-</span>
-</dd>
-<dd rel="dcterms:contributor">
-<span typeof="foaf:Person">
-<a rel="foaf:homepage" property="foaf:name" content="Dave Longley" href="http://digitalbazaar.com/">
-Dave
-Longley
-</a>,
-<a rel="foaf:workplaceHomepage" href="http://digitalbazaar.com/">
-Digital
-Bazaar
-</a>
-</span>
-</dd>
-<dd rel="dcterms:contributor">
-<span typeof="foaf:Person">
-<a rel="foaf:homepage" property="foaf:name" content="Gregg Kellogg" href="http://greggkellogg.net/">
-Gregg
-Kellogg
-</a>,
-<a rel="foaf:workplaceHomepage" href="http://kellogg-assoc.com/">
-Kellogg
-Associates
-</a>
-</span>
-</dd>
-<dd rel="dcterms:contributor">
-<span typeof="foaf:Person">
-<a rel="foaf:homepage" property="foaf:name" content="Markus Lanthaler" href="http://www.markus-lanthaler.com/">
-Markus
-Lanthaler
-</a>,
-<a rel="foaf:workplaceHomepage" href="http://www.tugraz.at/">
-Graz
-University
-of
-Technology
-</a>
-</span>
-</dd>
-<dd rel="dcterms:contributor">
-<span typeof="foaf:Person">
-<a rel="foaf:homepage" property="foaf:name" content="Mark Birbeck" href="http://webbackplane.com/">
-Mark
-Birbeck
-</a>,
-<a rel="foaf:workplaceHomepage" href="http://webbackplane.com/">
-Backplane
-Ltd.
-</a>
-</span>
-</dd>
-</dl>
-<p>
-This
-document
-is
-also
-available
-in
-this
-non-normative
-format:
-<a href="diff-20120830.html">
-diff
-to
-previous
-version
-</a>
-</p>
-<p class="copyright">
-<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">
-Copyright
-</a>

-2010-2012
-<a href="http://www.w3.org/">
-<abbr title="World Wide Web Consortium">
-W3C
-</abbr>
-</a>
-<sup>

-</sup>
-(
-<a href="http://www.csail.mit.edu/">
-<abbr title="Massachusetts Institute of Technology">
-MIT
-</abbr>
-</a>,
-<a href="http://www.ercim.eu/">
-<abbr title="European Research Consortium for Informatics and Mathematics">
-ERCIM
-</abbr>
-</a>,
-<a href="http://www.keio.ac.jp/">
-Keio
-</a>
-),
-All
-Rights
-Reserved.
-<abbr title="World Wide Web Consortium">
-W3C
-</abbr>
-<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">
-liability
-</a>,
-<a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">
-trademark
-</a>
-and
-<a href="http://www.w3.org/Consortium/Legal/copyright-documents">
-document
-use
-</a>
-rules
-apply.
-</p>
-<hr />
-</div>
-<section id="abstract" class="introductory">
-<h2>
-Abstract
-</h2>
-<p>
-JSON
-has
-proven
-to
-be
-a
-highly
-useful
-object
-serialization
-and
-messaging
-format.
-In
-an
-attempt
-to
-harmonize
-the
-representation
-of
-<a class="tref internalDFN" title="linked_data" href="#dfn-linked_data">
-Linked
-Data
-</a>
-in
-JSON,
-this
-specification
-outlines
-a
-common
-JSON
-representation
-format
-for
-expressing
-directed
-graphs;
-mixing
-both
-Linked
-Data
-and
-non-Linked
-Data
-in
-a
-single
-document.
-</p>
-</section>
-<section id="sotd" class="introductory">
-<h2>
-Status
-of
-This
-Document
-</h2>
-<p>
-<em>
-This
-section
-describes
-the
-status
-of
-this
-document
-at
-the
-time
-of
-its
-publication.
-Other
-documents
-may
-supersede
-this
-document.
-A
-list
-of
-current
-<abbr title="World Wide Web Consortium">
-W3C
-</abbr>
-publications
-and
-the
-latest
-revision
-of
-this
-technical
-report
-can
-be
-found
-in
-the
-<a href="http://www.w3.org/TR/">
-<abbr title="World Wide Web Consortium">
-W3C
-</abbr>
-technical
-reports
-index
-</a>
-at
-http://www.w3.org/TR/.
-</em>
-</p>
-<p>
-This
-document
-has
-been
-under
-development
-for
-over
-<del class="diff-old">18
-</del>
-<ins class="diff-chg">20
-</ins>
-months
-in
-the
-JSON
-for
-Linking
-Data
-Community
-Group.
-The
-document
-has
-recently
-been
-transferred
-to
-the
-RDF
-Working
-Group
-for
-review,
-improvement,
-and
-publication
-along
-the
-Recommendation
-track.
-The
-specification
-has
-undergone
-significant
-development,
-review,
-and
-changes
-during
-the
-course
-of
-the
-last
-<del class="diff-old">18
-</del>
-<ins class="diff-chg">20
-</ins>
-months.
-</p>
-<p>
-There
-are
-currently
-<a href="http://json-ld.org/#impl">
-five
-interoperable
-implementations
-</a>
-of
-this
-specification.
-There
-is
-a
-<a href="https://github.com/json-ld/json-ld.org/tree/master/test-suite">
-fairly
-complete
-test
-suite
-</a>
-and
-a
-<a href="http://json-ld.org/playground/">
-live
-JSON-LD
-editor
-</a>
-that
-is
-capable
-of
-demonstrating
-the
-features
-described
-in
-this
-document.
-While
-development
-on
-implementations,
-the
-test
-suite
-and
-the
-live
-editor
-will
-continue,
-they
-are
-believed
-to
-be
-mature
-enough
-to
-be
-integrated
-into
-a
-non-production
-system
-at
-this
-point
-in
-time
-with
-the
-expectation
-that
-they
-could
-be
-used
-in
-a
-production
-system
-within
-the
-next
-year.
-</p>
-<p>
-There
-are
-a
-number
-of
-ways
-that
-one
-may
-participate
-in
-the
-development
-of
-this
-specification:
-</p>
-<ul>
-<li>
-If
-you
-want
-to
-make
-sure
-that
-your
-feedback
-is
-formally
-addressed
-by
-the
-RDF
-Working
-Group,
-you
-should
-send
-it
-to
-public-rdf-comments:
-<a href="http://lists.w3.org/Archives/Public/public-rdf-comments/">
[email protected]
-</a>
-</li>
-<li>
-Ad-hoc
-technical
-discussion
-primarily
-occurs
-on
-the
-public
-community
-mailing
-list:
-<a href="http://lists.w3.org/Archives/Public/public-linked-json/">
[email protected]
-</a>
-</li>
-<li>
-<a href="http://json-ld.org/minutes/">
-Public
-JSON-LD
-Community
-Group
-teleconferences
-</a>
-are
-held
-on
-Tuesdays
-at
-1500UTC
-every
-week.
-</li>
-<li>
-RDF
-Working
-Group
-teleconferences
-are
-held
-on
-Wednesdays
-at
-1500UTC
-every
-week.
-Participation
-is
-limited
-to
-RDF
-Working
-Group
-members.
-</li>
-<li>
-Specification
-bugs
-and
-issues
-should
-be
-reported
-in
-the
-<a href="https://github.com/json-ld/json-ld.org/issues">
-issue
-tracker
-</a>
-if
-you
-do
-not
-want
-to
-send
-an
-e-mail
-to
-the
-public-rdf-comments
-mailing
-list.
-</li>
-<li>
-<a href="https://github.com/json-ld/json-ld.org/tree/master/spec">
-Source
-code
-</a>
-for
-the
-specification
-can
-be
-found
-on
-Github.
-</li>
-<li>
-The
-<a href="http://webchat.freenode.net/?channels=json-ld">
-#json-ld
-</a>
-IRC
-channel
-is
-available
-for
-real-time
-discussion
-on
-irc.freenode.net.
-</li>
-</ul>
-<p>
-This
-document
-was
-published
-by
-the
-<a href="http://www.w3.org/2011/rdf-wg/">
-RDF
-Working
-Group
-</a>
-as
-an
-Editor's
-Draft.
-If
-you
-wish
-to
-make
-comments
-regarding
-this
-document,
-please
-send
-them
-to
-<a href="mailto:[email protected]">
[email protected]
-</a>
-(
-<a href="mailto:[email protected]?subject=subscribe">
-subscribe
-</a>,
-<a href="http://lists.w3.org/Archives/Public/public-rdf-comments/">
-archives
-</a>
-).
-All
-feedback
-is
-welcome.
-</p>
-<p>
-Publication
-as
-an
-Editor's
-Draft
-does
-not
-imply
-endorsement
-by
-the
-<abbr title="World Wide Web Consortium">
-W3C
-</abbr>
-Membership.
-This
-is
-a
-draft
-document
-and
-may
-be
-updated,
-replaced
-or
-obsoleted
-by
-other
-documents
-at
-any
-time.
-It
-is
-inappropriate
-to
-cite
-this
-document
-as
-other
-than
-work
-in
-progress.
-</p>
-<p>
-This
-document
-was
-produced
-by
-a
-group
-operating
-under
-the
-<a href="http://www.w3.org/Consortium/Patent-Policy-20040205/">
-5
-February
-2004
-<abbr title="World Wide Web Consortium">
-W3C
-</abbr>
-Patent
-Policy
-</a>.
-<abbr title="World Wide Web Consortium">
-W3C
-</abbr>
-maintains
-a
-<a href="http://www.w3.org/2004/01/pp-impl/46168/status" rel="disclosure">
-public
-list
-of
-any
-patent
-disclosures
-</a>
-made
-in
-connection
-with
-the
-deliverables
-of
-the
-group;
-that
-page
-also
-includes
-instructions
-for
-disclosing
-a
-patent.
-An
-individual
-who
-has
-actual
-knowledge
-of
-a
-patent
-which
-the
-individual
-believes
-contains
-<a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">
-Essential
-Claim(s)
-</a>
-must
-disclose
-the
-information
-in
-accordance
-with
-<a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">
-section
-6
-of
-the
-<abbr title="World Wide Web Consortium">
-W3C
-</abbr>
-Patent
-Policy
-</a>.
-</p>
-</section>
-<section id="toc">
-<h2 class="introductory">
-Table
-of
-Contents
-</h2>
-<ul class="toc">
-<li class="tocline">
-<a href="#introduction" class="tocxref">
-<span class="secno">
-1.
-</span>
-Introduction
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#how-to-read-this-document" class="tocxref">
-<span class="secno">
-1.1
-</span>
-How
-to
-Read
-this
-Document
-</a>
-</li>
-<del class="diff-old">1.2
-General
-Terminology
-</del>
-</ul>
-</li>
-<li class="tocline">
-<a href="#design-goals-and-rationale" class="tocxref">
-<span class="secno">
-2.
-</span>
-Design
-Goals
-and
-Rationale
-</a>
-</li>
-<li class="tocline">
-<a href="#basic-concepts" class="tocxref">
-<span class="secno">
-3.
-</span>
-Basic
-Concepts
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#benefits-of-json-ld" class="tocxref">
-<span class="secno">
-3.1
-</span>
-<del class="diff-old">Linked
-</del>
-<ins class="diff-chg">Benefits
-of
-JSON-LD
-</ins></a></li><li class="tocline"><a href="#json-ld-data-model" class="tocxref"><span class="secno"><ins class="diff-chg">
-3.2
-</ins></span><ins class="diff-chg">
-JSON-LD
-</ins>
-Data
-<ins class="diff-new">Model
-</ins></a></li><li class="tocline"><a href="#general-terminology" class="tocxref"><span class="secno"><ins class="diff-new">
-3.3
-</ins></span><ins class="diff-new">
-General
-Terminology
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#syntax-tokens-and-keywords" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.2
-</del>
-<ins class="diff-chg">3.4
-</ins>
-</span>
-Syntax
-Tokens
-and
-Keywords
-</a>
-</li>
-<li class="tocline">
-<a href="#the-context" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.3
-</del>
-<ins class="diff-chg">3.5
-</ins>
-</span>
-The
-Context
-</a>
-</li>
-<li class="tocline">
-<a href="#from-json-to-json-ld" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.4
-</del>
-<ins class="diff-chg">3.6
-</ins>
-</span>
-From
-JSON
-to
-JSON-LD
-</a>
-</li>
-<li class="tocline">
-<a href="#iris" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.5
-</del>
-<ins class="diff-chg">3.7
-</ins>
-</span>
-IRIs
-</a>
-</li>
-<li class="tocline">
-<a href="#node-identifiers" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.6
-</del>
-<ins class="diff-chg">3.8
-</ins>
-</span>
-Node
-Identifiers
-</a>
-</li>
-<li class="tocline">
-<a href="#specifying-the-type" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.7
-</del>
-<ins class="diff-chg">3.9
-</ins>
-</span>
-Specifying
-the
-Type
-</a>
-</li>
-<li class="tocline">
-<a href="#string-internationalization" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.8
-</del>
-<ins class="diff-chg">3.10
-</ins>
-</span>
-String
-Internationalization
-</a>
-</li>
-<li class="tocline">
-<a href="#json-ld-syntax" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.9
-</del>
-<ins class="diff-chg">3.11
-</ins>
-</span>
-JSON-LD
-Syntax
-</a>
-</li>
-</ul>
-</li>
-<li class="tocline">
-<a href="#advanced-concepts" class="tocxref">
-<span class="secno">
-4.
-</span>
-Advanced
-Concepts
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#compact-iris" class="tocxref">
-<span class="secno">
-4.1
-</span>
-Compact
-IRIs
-</a>
-</li>
-<li class="tocline">
-<a href="#typed-values" class="tocxref">
-<span class="secno">
-4.2
-</span>
-Typed
-Values
-</a>
-</li>
-<li class="tocline">
-<a href="#language-tagged-strings" class="tocxref">
-<span class="secno">
-4.3
-</span>
-Language-tagged
-Strings
-</a>
-</li>
-<li class="tocline">
-<a href="#referencing-contexts-from-json-documents" class="tocxref">
-<span class="secno">
-4.4
-</span>
-Referencing
-Contexts
-from
-JSON
-Documents
-</a>
-</li>
-<li class="tocline">
-<a href="#expanded-term-definition" class="tocxref">
-<span class="secno">
-4.5
-</span>
-Expanded
-Term
-Definition
-</a>
-</li>
-<li class="tocline">
-<a href="#type-coercion" class="tocxref">
-<span class="secno">
-4.6
-</span>
-Type
-Coercion
-</a>
-</li>
-<li class="tocline">
-<a href="#property-generators" class="tocxref">
-<span class="secno">
-4.7
-</span>
-Property
-Generators
-</a>
-</li>
-<li class="tocline">
-<a href="#iri-expansion-within-a-context" class="tocxref">
-<span class="secno">
-4.8
-</span>
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-Expansion
-Within
-a
-Context
-</a>
-</li>
-<li class="tocline">
-<a href="#sets-and-lists" class="tocxref">
-<span class="secno">
-4.9
-</span>
-Sets
-and
-Lists
-</a>
-</li>
-<li class="tocline">
-<a href="#embedding" class="tocxref">
-<span class="secno">
-4.10
-</span>
-Embedding
-</a>
-</li>
-<li class="tocline">
-<a href="#named-graphs" class="tocxref">
-<span class="secno">
-4.11
-</span>
-Named
-Graphs
-</a>
-</li>
-<li class="tocline">
-<a href="#identifying-unlabeled-nodes" class="tocxref">
-<span class="secno">
-4.12
-</span>
-Identifying
-Unlabeled
-Nodes
-</a>
-</li>
-<li class="tocline">
-<a href="#aliasing-keywords" class="tocxref">
-<span class="secno">
-4.13
-</span>
-Aliasing
-Keywords
-</a>
-</li>
-<li class="tocline">
-<a href="#expanded-document-form" class="tocxref">
-<span class="secno">
-4.14
-</span>
-Expanded
-Document
-Form
-</a>
-</li>
-<li class="tocline">
-<a href="#compact-document-form" class="tocxref">
-<span class="secno">
-4.15
-</span>
-Compact
-Document
-Form
-</a>
-</li>
-</ul>
-</li>
-<li class="tocline">
-<a href="#json-ld-grammar" class="tocxref">
-<span class="secno">
-A.
-</span>
-JSON-LD
-Grammar
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#grammar-node-definition" class="tocxref">
-<span class="secno">
-A.1
-</span>
-Node
-Definition
-</a>
-</li>
-<li class="tocline">
-<a href="#grammar-node-reference" class="tocxref">
-<span class="secno">
-A.2
-</span>
-Node
-Reference
-</a>
-</li>
-<li class="tocline">
-<a href="#grammar-language-map" class="tocxref">
-<span class="secno">
-A.3
-</span>
-Language
-Map
-</a>
-</li>
-<li class="tocline">
-<a href="#grammar-expanded-values" class="tocxref">
-<span class="secno">
-A.4
-</span>
-Expanded
-Values
-</a>
-</li>
-<li class="tocline">
-<a href="#grammar-set-list" class="tocxref">
-<span class="secno">
-A.5
-</span>
-List
-and
-Set
-Values
-</a>
-</li>
-<li class="tocline">
-<a href="#grammar-context" class="tocxref">
-<span class="secno">
-A.6
-</span>
-Context
-Definition
-</a>
-</li>
-</ul>
-</li>
-<li class="tocline">
-<a href="#relationship-to-other-linked-data-formats-and-data-models" class="tocxref">
-<span class="secno">
-B.
-</span>
-Relationship
-to
-Other
-Linked
-Data
-Formats
-and
-Data
-Models
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#rdf" class="tocxref">
-<span class="secno">
-B.1
-</span>
-RDF
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#turtle" class="tocxref">
-<span class="secno">
-<del class="diff-old">B.2
-</del>
-<ins class="diff-chg">B.1.1
-</ins>
-</span>
-Turtle
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#prefix-definitions" class="tocxref">
-<span class="secno">
-<del class="diff-old">B.2.1
-</del>
-<ins class="diff-chg">B.1.1.1
-</ins>
-</span>
-Prefix
-definitions
-</a>
-</li>
-<li class="tocline">
-<a href="#embedding-1" class="tocxref">
-<span class="secno">
-<del class="diff-old">B.2.2
-</del>
-<ins class="diff-chg">B.1.1.2
-</ins>
-</span>
-Embedding
-</a>
-</li>
-<li class="tocline">
-<a href="#lists" class="tocxref">
-<span class="secno">
-<del class="diff-old">B.2.3
-</del>
-<ins class="diff-chg">B.1.1.3
-</ins>
-</span>
-Lists
-</a>
-</li>
-</ul>
-</li>
-<li class="tocline">
-<a href="#rdfa" class="tocxref">
-<span class="secno">
-<del class="diff-old">B.3
-</del>
-<ins class="diff-chg">B.1.2
-</ins>
-</span>
-RDFa
-</a>
-</li>
-<li class="tocline">
-<a href="#microformats" class="tocxref">
-<span class="secno">
-<del class="diff-old">B.4
-</del>
-<ins class="diff-chg">B.1.3
-</ins>
-</span>
-Microformats
-</a>
-</li>
-<li class="tocline">
-<a href="#microdata" class="tocxref">
-<span class="secno">
-<del class="diff-old">B.5
-</del>
-<ins class="diff-chg">B.1.4
-</ins>
-</span>
-Microdata
-</a>
-</li>
-</ul>
-</li>
-<li class="tocline">
-<a href="#iana-considerations" class="tocxref">
-<span class="secno">
-<del class="diff-old">C.
-</del>
-<ins class="diff-chg">B.2
-</ins>
-</span>
-IANA
-Considerations
-</a>
-</li>
-<li class="tocline">
-<a href="#acknowledgements" class="tocxref">
-<span class="secno">
-<del class="diff-old">D.
-</del>
-<ins class="diff-chg">B.3
-</ins>
-</span>
-Acknowledgements
-</a>
-</li>
-</ul>
-</li>
-<li class="tocline">
-<a href="#references" class="tocxref">
-<span class="secno">
-<del class="diff-old">E.
-</del>
-<ins class="diff-chg">C.
-</ins>
-</span>
-References
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#normative-references" class="tocxref">
-<span class="secno">
-<del class="diff-old">E.1
-</del>
-<ins class="diff-chg">C.1
-</ins>
-</span>
-Normative
-references
-</a>
-</li>
-<li class="tocline">
-<a href="#informative-references" class="tocxref">
-<span class="secno">
-<del class="diff-old">E.2
-</del>
-<ins class="diff-chg">C.2
-</ins>
-</span>
-Informative
-references
-</a>
-</li>
-</ul>
-</li>
-</ul>
-</section>
-<section class="informative" id="introduction">
-<h2>
-<span class="secno">
-1.
-</span>
-Introduction
-</h2>
-<p>
-<em>
-This
-section
-is
-non-normative.
-</em>
-</p>
-<p>
-JSON,
-as
-specified
-in
-[
-<cite>
-<a class="bibref" href="#bib-RFC4627">
-RFC4627
-</a>
-</cite>
-],
-is
-a
-simple
-language
-for
-representing
-data
-on
-the
-Web.
-<a class="tref internalDFN" title="linked_data" href="#dfn-linked_data">
-Linked
-Data
-</a>
-is
-a
-technique
-for
-creating
-a
-network
-of
-inter-connected
-data
-across
-different
-Web
-documents
-and
-Web
-sites.
-A
-<em>
-document
-</em>
-in
-this
-data
-network
-is
-typically
-identified
-using
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-(Internationalized
-Resource
-Identifier).
-A
-software
-program
-can
-typically
-follow
-an
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-just
-like
-you
-follow
-a
-URL
-by
-putting
-it
-into
-your
-browser's
-location
-bar.
-By
-following
-IRIs,
-a
-software
-program
-can
-find
-more
-information
-about
-the
-<em>
-document
-</em>
-and
-the
-<em>
-thing
-</em>
-s
-that
-the
-document
-describes.
-These
-<em>
-things
-</em>
-may
-also
-be
-identified
-using
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-s.
-The
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-allows
-a
-software
-program
-to
-start
-at
-one
-<em>
-document
-</em>
-and
-follow
-links
-to
-other
-<em>
-documents
-</em>
-or
-<em>
-things
-</em>
-in
-order
-to
-learn
-more
-about
-all
-of
-the
-<em>
-documents
-</em>
-and
-<em>
-things
-</em>
-described
-on
-the
-Web.
-</p>
-<p>
-JSON-LD
-is
-designed
-as
-a
-lightweight
-syntax
-that
-can
-be
-used
-to
-express
-<a class="tref internalDFN" title="linked_data" href="#dfn-linked_data">
-Linked
-Data
-</a>.
-It
-is
-primarily
-intended
-to
-be
-a
-way
-to
-use
-Linked
-Data
-in
-Javascript
-and
-other
-Web-based
-programming
-environments.
-It
-is
-also
-useful
-when
-building
-inter-operable
-Web
-services
-and
-when
-storing
-Linked
-Data
-in
-JSON-based
-document
-storage
-engines.
-It
-is
-practical
-and
-designed
-to
-be
-as
-simple
-as
-possible,
-utilizing
-the
-large
-number
-of
-JSON
-parsers
-and
-libraries
-available
-today.
-</p>
-<p>
-The
-syntax
-does
-not
-necessarily
-require
-applications
-to
-change
-their
-JSON,
-but
-allows
-one
-to
-easily
-add
-meaning
-by
-simply
-adding
-or
-referencing
-a
-context.
-The
-syntax
-is
-designed
-to
-not
-disturb
-already
-deployed
-systems
-running
-on
-JSON,
-but
-provide
-a
-smooth
-upgrade
-path
-from
-JSON
-to
-JSON-LD.
-Finally,
-the
-format
-is
-intended
-to
-be
-easy
-to
-parse,
-efficient
-to
-generate,
-and
-<del class="diff-old">only
-requires
-a
-</del>
-<ins class="diff-chg">can
-operate
-inside
-of
-devices
-that
-contain
-</ins>
-very
-<del class="diff-old">small
-memory
-footprint
-in
-order
-to
-operate.
-</del>
-<ins class="diff-chg">little
-memory.
-</ins>
-</p>
-<section id="how-to-read-this-document">
-<h3>
-<span class="secno">
-1.1
-</span>
-How
-to
-Read
-this
-Document
-</h3>
-<p>
-<em>
-This
-section
-is
-non-normative.
-</em>
-</p>
-<p>
-This
-document
-is
-a
-detailed
-specification
-for
-a
-serialization
-of
-Linked
-Data
-in
-JSON.
-The
-document
-is
-primarily
-intended
-for
-the
-following
-audiences:
-</p>
-<ul>
-<li>
-Software
-developers
-that
-want
-to
-encode
-Linked
-Data
-in
-a
-<del class="diff-old">way
-</del>
-<ins class="diff-chg">variety
-of
-programing
-languages
-</ins>
-that
-<del class="diff-old">is
-cross-language
-compatible
-via
-</del>
-<ins class="diff-chg">can
-use
-</ins>
-JSON.
-</li>
-<li>
-Software
-developers
-that
-want
-to
-understand
-the
-design
-decisions
-and
-language
-syntax
-for
-JSON-LD.
-</li>
-<li>
-Software
-developers
-that
-want
-to
-implement
-processors
-and
-APIs
-for
-JSON-LD.
-</li>
-</ul>
-<p>
-This
-specification
-does
-not
-describe
-the
-programming
-interfaces
-for
-the
-JSON-LD
-Syntax.
-The
-specification
-that
-describes
-the
-programming
-interfaces
-for
-JSON-LD
-documents
-is
-the
-JSON-LD
-Application
-Programming
-Interface
-[
-<cite>
-<a class="bibref" href="#bib-JSON-LD-API">
-JSON-LD-API
-</a>
-</cite>
-].
-</p>
-<p>
-To
-understand
-the
-basics
-in
-this
-specification
-you
-must
-first
-be
-familiar
-with
-JSON,
-which
-is
-detailed
-in
-[
-<cite>
-<a class="bibref" href="#bib-RFC4627">
-RFC4627
-</a>
-</cite>
-].
-</p>
-</section>
-<del class="diff-old">1.2
-General
-Terminology
-The
-following
-is
-an
-explanation
-of
-the
-general
-terminology
-used
-in
-this
-document:
-JSON
-object
-An
-object
-structure
-is
-represented
-as
-a
-pair
-of
-curly
-brackets
-surrounding
-zero
-or
-more
-name-value
-pairs.
-A
-name
-is
-a
-string
-.
-A
-single
-colon
-comes
-after
-each
-name,
-separating
-the
-name
-from
-the
-value.
-A
-single
-comma
-separates
-a
-value
-from
-a
-following
-name.
-The
-names
-within
-an
-object
-should
-be
-unique.
-array
-In
-JSON,
-an
-array
-is
-an
-ordered
-sequence
-of
-zero
-or
-more
-values.
-An
-array
-is
-represented
-as
-square
-brackets
-surrounding
-zero
-or
-more
-values
-that
-are
-separated
-by
-commas.
-While
-JSON-LD
-uses
-the
-same
-array
-representation
-as
-JSON,
-the
-collection
-is
-unordered
-by
-default.
-While
-order
-is
-preserved
-in
-regular
-JSON
-arrays,
-it
-is
-not
-in
-regular
-JSON-LD
-arrays
-unless
-specific
-markup
-is
-provided
-(see
-4.9
-Sets
-and
-Lists
-).
-string
-A
-string
-is
-a
-sequence
-of
-zero
-or
-more
-Unicode
-characters,
-wrapped
-in
-double
-quotes,
-using
-backslash
-escapes
-(if
-necessary).
-A
-character
-is
-represented
-as
-a
-single
-character
-string.
-number
-A
-number
-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.
-true
-and
-false
-Values
-that
-are
-used
-to
-express
-one
-of
-two
-possible
-boolean
-states.
-null
-The
-null
-value
-is
-used
-to
-make
-the
-JSON-LD
-processor
-&quot;forget&quot;
-any
-previously
-defined
-JSON
-key
-that
-is
-associated
-with
-the
-null
-value.
-If
-a
-previous
-definition
-doesn't
-exist,
-the
-entire
-key-value
-is
-ignored.
-If
-a
-previous
-definition
-of
-the
-key
-does
-exist,
-the
-previous
-definition
-is
-undefined.
-node
-definition
-A
-JSON
-object
-used
-to
-represent
-a
-node
-and
-one
-or
-more
-properties
-of
-that
-node.
-A
-JSON
-object
-is
-a
-node
-definition
-if
-it
-does
-not
-contain
-they
-keys
[email protected]
-,
[email protected]
-or
[email protected]
-and
-it
-has
-one
-or
-more
-keys
-other
-than
[email protected]
-.
-A
-node
-definition
-may
-be
-spread
-among
-different
-parts
-of
-a
-document
-or
-even
-between
-different
-documents.
-node
-reference
-A
-JSON
-object
-used
-to
-reference
-a
-node
-having
-only
-the
[email protected]
-key.
-</del>
-</section>
-<section class="informative" id="design-goals-and-rationale">
-<h2>
-<span class="secno">
-2.
-</span>
-Design
-Goals
-and
-Rationale
-</h2>
-<p>
-<em>
-This
-section
-is
-non-normative.
-</em>
-</p>
-<p>
-A
-number
-of
-design
-goals
-were
-established
-before
-the
-creation
-of
-this
-markup
-language:
-</p>
-<dl>
-<dt>
-Simplicity
-</dt>
-<dd>
-No
-extra
-processors
-or
-software
-libraries
-should
-be
-necessary
-to
-use
-JSON-LD
-in
-its
-most
-basic
-form.
-The
-language
-will
-provide
-developers
-with
-a
-very
-easy
-learning
-curve.
-Developers
-need
-only
-know
-JSON
-and
-two
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keywords
-</a>
-(
-<code>
[email protected]
-</code>
-and
-<code>
[email protected]
-</code>
-)
-to
-use
-the
-basic
-functionality
-in
-JSON-LD.
-</dd>
-<dt>
-Compatibility
-</dt>
-<dd>
-The
-JSON-LD
-markup
-must
-be
-100%
-compatible
-with
-JSON.
-This
-ensures
-that
-all
-of
-the
-standard
-JSON
-libraries
-work
-seamlessly
-with
-JSON-LD
-documents.
-</dd>
-<dt>
-Expressiveness
-</dt>
-<dd>
-The
-syntax
-must
-be
-able
-to
-express
-directed
-graphs,
-which
-have
-been
-proven
-to
-be
-able
-to
-express
-almost
-every
-real
-world
-data
-model.
-</dd>
-<dt>
-Terseness
-</dt>
-<dd>
-The
-JSON-LD
-syntax
-must
-be
-very
-terse
-and
-human
-readable,
-requiring
-as
-little
-effort
-as
-possible
-from
-the
-developer.
-</dd>
-<dt>
-Zero
-Edits,
-most
-of
-the
-time
-</dt>
-<dd>
-JSON-LD
-must
-provide
-a
-<a href="#referencing-contexts-from-json-documents">
-mechanism
-</a>
-that
-allows
-developers
-to
-specify
-<a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>
-in
-a
-way
-that
-is
-out-of-band.
-This
-allows
-organizations
-that
-have
-already
-deployed
-large
-JSON-based
-infrastructure
-to
-add
-meaning
-to
-their
-JSON
-documents
-in
-a
-way
-that
-is
-not
-disruptive
-to
-their
-day-to-day
-operations
-and
-is
-transparent
-to
-their
-current
-customers.
-At
-times,
-mapping
-JSON
-to
-a
-graph
-representation
-can
-become
-difficult.
-In
-these
-instances,
-rather
-than
-having
-JSON-LD
-support
-an
-esoteric
-use
-case,
-we
-chose
-not
-to
-support
-the
-use
-case
-and
-support
-a
-simplified
-syntax
-instead.
-So,
-while
-Zero
-Edits
-is
-a
-design
-goal,
-it
-is
-not
-always
-possible
-without
-adding
-great
-complexity
-to
-the
-language.
-</dd>
-<dt>
-One-pass
-Processing
-</dt>
-<dd>
-JSON-LD
-supports
-one-pass
-processing,
-which
-results
-in
-a
-very
-small
-memory
-footprint
-when
-processing
-documents.
-For
-example,
-to
-expand
-a
-JSON-LD
-document
-from
-a
-compacted
-form,
-only
-one
-pass
-is
-required
-over
-the
-data.
-</dd>
-<dt>
-Linked
-Data-centric
-</dt>
-<dd>
-The
-focus
-on
-Linked
-Data
-is
-placed
-at
-a
-much
-higher
-priority
-than
-the
-focus
-on
-the
-Semantic
-Web.
-One
-outcome
-of
-this
-ordering
-of
-priorities
-is
-an
-aggressively
-reduced
-focus
-on
-the
-Semantic
-Web
-stack
-(RDF
-[
-<cite>
-<a class="bibref" href="#bib-RDF-CONCEPTS">
-RDF-CONCEPTS
-</a>
-</cite>
-],
-TURTLE
-[
-<cite>
-<a class="bibref" href="#bib-TURTLE-TR">
-TURTLE-TR
-</a>
-</cite>
-],
-triple
-stores,
-and
-SPARQL
-[
-<cite>
-<a class="bibref" href="#bib-RDF-SPARQL-QUERY">
-RDF-SPARQL-QUERY
-</a>
-</cite>
-]).
-While
-this
-may
-be
-off-putting
-to
-proponents
-of
-the
-Semantic
-Web,
-the
-audience
-for
-this
-specification
-are
-Web
-developers
-that
-want
-a
-gentler
-introduction
-and
-a
-simpler
-technology
-stack
-for
-using
-Linked
-Data
-in
-their
-Web
-applications.
-Semantic
-Web
-concepts,
-such
-as
-conversion
-to
-and
-from
-RDF,
-are
-fully
-supported
-by
-JSON-LD,
-but
-the
-implementation
-of
-these
-features
-are
-not
-elaborated
-upon
-in
-this
-specification.
-See
-<a href="#relationship-to-other-linked-data-formats-and-data-models" class="sec-ref">
-<span class="secno">
-B.
-</span>
-<span class="sec-title">
-Relationship
-to
-Other
-Linked
-Data
-Formats
-and
-Data
-Models
-</span>
-</a>
-for
-more
-information
-about
-how
-JSON-LD
-integrates
-into
-the
-more
-traditional
-Semantic
-Web
-stack.
-</dd>
-</dl>
-</section>
-<section class="normative" id="basic-concepts">
-<h2>
-<span class="secno">
-3.
-</span>
-Basic
-Concepts
-</h2>
-<em>
-This
-section
-is
-normative.
-</em>
-<p>
-JSON-LD
-is
-designed
-to
-ensure
-that
-<a class="tref internalDFN" title="linked_data" href="#dfn-linked_data">
-Linked
-Data
-</a>
-concepts
-can
-be
-marked
-up
-in
-a
-way
-that
-is
-simple
-to
-understand
-and
-create
-by
-Web
-authors.
-In
-many
-cases,
-regular
-JSON
-markup
-can
-become
-Linked
-Data
-with
-the
-simple
-addition
-of
-a
-<a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>.
-As
-more
-JSON-LD
-features
-are
-used,
-more
-semantics
-are
-added
-to
-the
-JSON
-markup.
-</p>
-<section id="benefits-of-json-ld">
-<h3>
-<span class="secno">
-3.1
-</span>
-<del class="diff-old">Linked
-Data
-</del>
-<ins class="diff-chg">Benefits
-of
-JSON-LD
-</ins>
-</h3>
-<p>
-<del class="diff-old">The
-following
-definition
-for
-Linked
-Data
-is
-the
-one
-</del>
-<ins class="diff-chg">JSON
-provides
-a
-number
-of
-benefits
-to
-software
-developers
-</ins>
-that
-<del class="diff-old">will
-be
-used
-for
-this
-specification.
-</del>
-<ins class="diff-chg">need
-to
-serialize
-data:
-</ins>
-</p>
-<ol>
-<li>
-<del class="diff-old">Linked
-Data
-</del>
-<ins class="diff-chg">It
-is
-easy
-for
-humans
-to
-read
-and
-write.
-</ins></li><li><ins class="diff-chg">
-It
-is
-easy
-for
-machines
-to
-parse
-and
-generate.
-</ins></li><li><ins class="diff-chg">
-It
-has
-a
-syntax
-that
-</ins>
-is
-<ins class="diff-new">familiar
-across
-</ins>
-a
-<del class="diff-old">set
-</del>
-<ins class="diff-chg">large
-number
-</ins>
-of
-<del class="diff-old">documents,
-each
-containing
-</del>
-<ins class="diff-chg">programming
-languages.
-</ins></li><li><ins class="diff-chg">
-It
-is
-capable
-of
-representing
-many
-different
-types
-of
-data
-using
-two
-universal
-data
-structures;
-</ins>
-a
-<del class="diff-old">representation
-</del>
-<ins class="diff-chg">collection
-</ins>
-of
-<ins class="diff-new">key-value
-pairs
-and
-lists.
-</ins></li></ol><p><ins class="diff-new">
-JSON
-has
-become
-</ins>
-a
-<del class="diff-old">linked
-</del>
-<ins class="diff-chg">very
-popular
-data-interchange
-format
-on
-the
-Web,
-particularly
-for
-</ins><a href="http://en.wikipedia.org/wiki/REST"><ins class="diff-chg">
-REST
-</ins></a><ins class="diff-chg">
--based
-Web
-Services.
-Unfortunately,
-it
-has
-a
-number
-of
-short-comings
-that
-other
-Web-native
-</ins>
-data
-<del class="diff-old">graph
-.
-</del>
-<ins class="diff-chg">formats
-do
-not
-have:
-</ins></p><ol>
-<li>
-<del class="diff-old">A
-linked
-data
-graph
-</del>
-<ins class="diff-chg">There
-</ins>
-is
-<del class="diff-old">an
-unordered
-labeled
-directed
-graph,
-where
-nodes
-are
-IRIs
-</del>
-<ins class="diff-chg">no
-standardized,
-universal
-identifier
-mechanism
-for
-</ins><a class="tref internalDFN" title="json_object" href="#dfn-json_object"><ins class="diff-chg">
-JSON
-object
-</ins>
-</a>
-<del class="diff-old">or
-Blank
-Nodes
-,
-or
-</del>
-<ins class="diff-chg">s.
-</ins></li><li><ins class="diff-chg">
-The
-meaning
-of
-the
-keys
-used
-in
-a
-</ins><a class="tref internalDFN" title="json_object" href="#dfn-json_object"><ins class="diff-chg">
-JSON
-object
-</ins></a><ins class="diff-chg">
-s
-are
-ambiguous
-and
-often
-conflict
-with
-</ins>
-other
-<del class="diff-old">values.
-</del>
-<ins class="diff-chg">data
-published
-on
-the
-Web.
-</ins>
-</li>
-<li>
-<del class="diff-old">A
-node
-</del>
-<ins class="diff-chg">There
-is
-no
-standardized
-way
-for
-a
-value
-in
-a
-</ins><a class="tref internalDFN" title="json_object" href="#dfn-json_object"><ins class="diff-chg">
-JSON
-object
-</ins>
-</a>
-<del class="diff-old">having
-an
-outgoing
-edge
-must
-be
-an
-IRI
-</del>
-<ins class="diff-chg">to
-refer
-to
-a
-</ins><a class="tref internalDFN" title="json_object" href="#dfn-json_object"><ins class="diff-chg">
-JSON
-object
-</ins>
-</a>
-<del class="diff-old">or
-Blank
-Node
-.
-</del>
-<ins class="diff-chg">on
-a
-different
-site
-on
-the
-Web.
-</ins>
-</li>
-<li>
-A
-<del class="diff-old">node
-</del>
-<ins class="diff-chg">developer
-cannot
-express
-the
-language
-associated
-with
-a
-</ins><a class="tref internalDFN" title="string" href="#dfn-string"><ins class="diff-chg">
-string
-</ins>
-</a>
-<del class="diff-old">having
-an
-incoming
-edge
-must
-be
-an
-IRI
-,
-Blank
-Node
-,
-or
-</del>
-value
-<del class="diff-old">such
-as
-</del>
-<ins class="diff-chg">in
-</ins>
-a
-<del class="diff-old">number
-or
-string.
-</del>
-<ins class="diff-chg">standardized
-manner.
-</ins>
-</li>
-<li>
-<del class="diff-old">A
-node
-may
-have
-both
-incoming
-</del>
-<ins class="diff-chg">There
-is
-no
-standard
-mechanism
-to
-associate
-datatypes
-with
-values
-such
-as
-dates,
-times,
-weights,
-</ins>
-and
-<del class="diff-old">outgoing
-edges.
-</del>
-<ins class="diff-chg">distances.
-</ins>
-</li>
-<li>
-<del class="diff-old">An
-edge
-must
-be
-labeled
-</del>
-<ins class="diff-chg">There
-is
-no
-facility
-to
-express
-a
-Web
-of
-information
-(directed
-graph),
-such
-as
-a
-social
-network,
-in
-a
-standardized
-manner.
-</ins></li></ol><p><ins class="diff-chg">
-JSON-LD
-is
-a
-web-native
-standard,
-is
-100%
-compatible
-</ins>
-with
-<del class="diff-old">an
-absolute
-</del>
-<ins class="diff-chg">JSON,
-provides
-all
-of
-the
-facilities
-that
-JSON
-provides,
-and
-extends
-the
-language
-to
-provide
-the
-following
-core
-advantages:
-</ins></p><ol><li><ins class="diff-chg">
-A
-universal
-identifier
-mechanism
-for
-</ins><a class="tref internalDFN" title="json_object" href="#dfn-json_object"><ins class="diff-chg">
-JSON
-object
-</ins></a><ins class="diff-chg">
-s
-via
-the
-use
-of
-</ins><a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<del class="diff-old">,
-within
-the
-JSON-LD
-syntax,
-this
-label
-is
-called
-a
-property
-.
-</del>
-</a>
-<ins class="diff-chg">s.
-</ins>
-</li>
-<li>
-<del class="diff-old">IRIs
-used
-within
-a
-linked
-data
-graph
-should
-be
-dereferenceable
-</del>
-<ins class="diff-chg">A
-way
-</ins>
-to
-<del class="diff-old">a
-Linked
-Data
-document
-describing
-</del>
-<ins class="diff-chg">dis-ambiguate
-</ins>
-the
-<del class="diff-old">resource
-denoted
-</del>
-<ins class="diff-chg">keys
-used
-between
-multiple
-JSON
-documents
-</ins>
-by
-<del class="diff-old">that
-</del>
-<ins class="diff-chg">mapping
-them
-to
-</ins>
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-<ins class="diff-new">s
-via
-a
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-new">
-context
-</ins>
-</a>.
-</li>
-<del class="diff-old">Note
-</del>
-<li>
-A
-<del class="diff-old">Linked
-Data
-</del>
-<ins class="diff-chg">mechanism
-in
-which
-a
-value
-in
-a
-</ins><a class="tref internalDFN" title="json_object" href="#dfn-json_object"><ins class="diff-chg">
-JSON
-object
-</ins>
-</a>
-<del class="diff-old">document
-does
-not
-necessarily
-need
-</del>
-<ins class="diff-chg">may
-refer
-</ins>
-to
-<del class="diff-old">be
-expressed
-in
-JSON-LD.
-The
-notion
-of
-Linked
-Data
-</del>
-<ins class="diff-chg">a
-</ins><a class="tref internalDFN" title="json_object" href="#dfn-json_object"><ins class="diff-chg">
-JSON
-object
-</ins>
-</a>
-<del class="diff-old">is
-</del>
-<ins class="diff-chg">on
-</ins>
-a
-<del class="diff-old">concept
-independent
-of
-any
-given
-serialization
-format.
-In
-particular,
-any
-document
-based
-</del>
-<ins class="diff-chg">different
-site
-</ins>
-on
-<del class="diff-old">an
-RDF
-serialization
-format
-is
-</del>
-<ins class="diff-chg">the
-Web.
-</ins></li><li><ins class="diff-chg">
-The
-ability
-to
-express
-the
-language
-associated
-with
-</ins>
-a
-<del class="diff-old">Linked
-Data
-document.
-This
-definition
-of
-Linked
-Data
-</del>
-<a class="tref internalDFN" title="string" href="#dfn-string">
-<ins class="diff-chg">string
-</ins>
-</a>
-<del class="diff-old">is
-entirely
-consistent
-</del>
-<ins class="diff-chg">value.
-</ins></li><li><ins class="diff-chg">
-A
-way
-to
-associate
-datatypes
-</ins>
-with
-<del class="diff-old">that
-</del>
-<ins class="diff-chg">values
-such
-as
-dates,
-times,
-weights,
-and
-distances.
-</ins></li><li><ins class="diff-chg">
-A
-facility
-to
-express
-one
-or
-more
-directed
-graphs,
-such
-as
-a
-social
-network,
-</ins>
-in
-<del class="diff-old">[
-RDF-CONCEPTS
-],
-although
-Linked
-Data
-may
-not
-be
-</del>
-a
-<del class="diff-old">valid
-RDF
-document,
-</del>
-<ins class="diff-chg">single
-document.
-</ins></li></ol><p><ins class="diff-chg">
-Developers
-that
-require
-</ins>
-any
-<del class="diff-old">RDF
-document
-is
-an
-expression
-</del>
-of
-<del class="diff-old">Linked
-Data
-.
-</del>
-<ins class="diff-chg">the
-facilities
-listed
-above
-will
-find
-JSON-LD
-of
-interest.
-</ins>
-</p>
-</section>
-<section id="json-ld-data-model">
-<h3>
-<del class="diff-old">Issue
-</del>
-<span class="secno">
-<ins class="diff-chg">3.2
-</ins>
-</span>
-<del class="diff-old">An
-illustration
-of
-</del>
-<ins class="diff-chg">JSON-LD
-Data
-Model
-</ins></h3><p><dfn title="linked_data" id="dfn-linked_data"><ins class="diff-chg">
-Linked
-Data
-</ins></dfn><ins class="diff-chg">
-is
-</ins>
-a
-<del class="diff-old">linked
-</del>
-<ins class="diff-chg">way
-of
-publishing
-</ins>
-data
-<del class="diff-old">graph
-would
-probably
-help
-here.
-</del>
-<ins class="diff-chg">on
-the
-Web.
-In
-general,
-Linked
-Data
-has
-four
-properties;
-1)
-It
-uses
-</ins><a class="tref internalDFN" title="iri" href="#dfn-iri">
-<del class="diff-old">Issue
-47
-</del>
-<abbr title="Internationalized Resource Identifier">
-<ins class="diff-chg">IRI
-</ins></abbr>
-</a>
-<ins class="diff-new">s
-to
-name
-</ins><em><ins class="diff-new">
-things
-</ins></em>,<ins class="diff-new">
-2)
-It
-uses
-HTTP
-</ins><a class="tref internalDFN" title="iri" href="#dfn-iri">
-<del class="diff-old">Richard
-Cyganiak
-suggests
-that
-the
-data
-model
-is
-at
-odds
-with
-[
-</del>
-<abbr title="Internationalized Resource Identifier">
-<ins class="diff-chg">IRI
-</ins></abbr>
-<del class="diff-old">RDF-CONCEPTS
-</del>
-</a>
-<del class="diff-old">]
-and
-should
-be
-</del>
-<ins class="diff-chg">s
-for
-those
-names,
-3)
-The
-name
-links,
-when
-followed,
-provide
-</ins>
-more
-<del class="diff-old">closely
-aligned
-with
-it
-instead
-of
-creating
-new
-terminology.
-Note
-that
-this
-definition
-is
-provisional,
-</del>
-<ins class="diff-chg">information
-about
-the
-name,
-</ins>
-and
-<del class="diff-old">may
-be
-reverted
-</del>
-<ins class="diff-chg">4)
-The
-data
-expresses
-links
-</ins>
-to
-<del class="diff-old">something
-closer
-</del>
-<ins class="diff-chg">data
-on
-other
-Web
-sites.
-These
-properties
-allow
-data
-published
-on
-the
-Web
-</ins>
-to
-<ins class="diff-new">work
-much
-like
-Web
-pages
-do
-today.
-One
-can
-start
-at
-one
-piece
-of
-Linked
-Data,
-and
-follow
-</ins>
-the
-<del class="diff-old">original
-depending
-</del>
-<ins class="diff-chg">links
-to
-other
-pieces
-of
-data
-that
-are
-hosted
-</ins>
-on
-<del class="diff-old">community
-feedback.
-</del>
-<ins class="diff-chg">different
-sites
-across
-the
-Web.
-</ins>
-</p>
-<p>
-<ins class="diff-chg">JSON-LD
-is
-a
-way
-of
-expressing
-</ins>
-<a class="tref internalDFN" title="linked_data" href="#dfn-linked_data">
-Linked
-Data
-</a>
-<ins class="diff-new">on
-the
-Web.
-The
-JSON-LD
-data
-model
-encapsulates
-the
-following
-concepts:
-</ins></p><ol><li><ins class="diff-new">
-The
-JSON-LD
-data
-model
-</ins>
-is
-<del class="diff-old">a
-set
-of
-documents,
-each
-containing
-a
-representation
-of
-a
-</del>
-<ins class="diff-chg">used
-to
-represent
-</ins>
-<a class="tref internalDFN" title="linked_data_graph" href="#dfn-linked_data_graph">
-linked
-data
-graph
-<del class="diff-old">.
-</del>
-</a>
-<ins class="diff-chg">s.
-</ins>
-</li>
-<li>
-A
-<dfn title="linked_data_graph" id="dfn-linked_data_graph">
-linked
-data
-graph
-</dfn>
-is
-an
-unordered
-labeled
-directed
-graph,
-where
-<del class="diff-old">nodes
-are
-</del>
-<ins class="diff-chg">each
-</ins><dfn title="node" id="dfn-node"><ins class="diff-chg">
-node
-</ins></dfn><ins class="diff-chg">
-is
-a
-</ins><a class="tref internalDFN" title="subject" href="#dfn-subject">
-subject
-<del class="diff-old">s
-</del>
-</a>
-or
-<a class="tref internalDFN" title="object" href="#dfn-object">
-object
-<del class="diff-old">s,
-</del>
-</a>,
-and
-edges
-are
-labeled
-using
-<a class="tref internalDFN" title="property" href="#dfn-property">
-properties
-</a>.
-</li>
-<li>
-A
-<dfn title="subject" id="dfn-subject">
-subject
-</dfn>
-is
-any
-node
-in
-a
-<a class="tref internalDFN" title="linked_data_graph" href="#dfn-linked_data_graph">
-linked
-data
-graph
-</a>
-with
-at
-least
-one
-outgoing
-edge.
-</li>
-<li>
-A
-<a class="tref internalDFN" title="subject" href="#dfn-subject">
-subject
-</a>
-<em class="rfc2119" title="should">
-should
-</em>
-be
-labeled
-with
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-(an
-Internationalized
-Resource
-Identifier
-as
-described
-in
-[
-<cite>
-<a class="bibref" href="#bib-RFC3987">
-RFC3987
-</a>
-</cite>
-]).
-</li>
-<li>
-An
-<dfn title="object" id="dfn-object">
-object
-</dfn>
-is
-a
-node
-in
-a
-<a class="tref internalDFN" title="linked_data_graph" href="#dfn-linked_data_graph">
-linked
-data
-graph
-</a>
-with
-at
-least
-one
-incoming
-edge.
-</li>
-<li>
-An
-<a class="tref internalDFN" title="object" href="#dfn-object">
-object
-</a>
-<em class="rfc2119" title="may">
-may
-</em>
-be
-labeled
-with
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-or
-a
-label
-that
-is
-not
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-such
-as
-plain
-text,
-internationalized
-text,
-or
-a
-strictly-typed
-data
-value.
-</li>
-<li>
-A
-<a class="tref internalDFN" title="node" href="#dfn-node">
-node
-</a>
-<em class="rfc2119" title="may">
-may
-</em>
-be
-a
-<a class="tref internalDFN" title="subject" href="#dfn-subject">
-subject
-</a>
-and
-an
-<a class="tref internalDFN" title="object" href="#dfn-object">
-object
-</a>
-at
-the
-same
-time.
-</li>
-<li>
-A
-<dfn title="property" id="dfn-property">
-property
-</dfn>
-is
-the
-label
-on
-an
-edge
-in
-a
-<a class="tref internalDFN" title="linked_data_graph" href="#dfn-linked_data_graph">
-linked
-data
-graph
-</a>.
-</li>
-<li>
-A
-<a class="tref internalDFN" title="property" href="#dfn-property">
-property
-</a>
-<em class="rfc2119" title="should">
-should
-</em>
-be
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>.
-</li>
-<li>
-An
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-that
-is
-a
-label
-in
-a
-<a class="tref internalDFN" title="linked_data_graph" href="#dfn-linked_data_graph">
-linked
-data
-graph
-</a>
-<em class="rfc2119" title="should">
-should
-</em>
-be
-dereferencable
-to
-a
-<a class="tref internalDFN" title="linked_data" href="#dfn-linked_data">
-Linked
-Data
-</a>
-document
-describing
-the
-labeled
-<a class="tref internalDFN" title="subject" href="#dfn-subject">
-subject
-<del class="diff-old">,
-</del>
-</a>,
-<a class="tref internalDFN" title="property" href="#dfn-property">
-property
-</a>
-or
-<a class="tref internalDFN" title="object" href="#dfn-object">
-object
-<del class="diff-old">.
-</del>
-</a>.
-</li>
-</ol>
-<div class="note">
-<div class="note-title">
-<span>
-Note
-</span>
-</div>
-<del class="diff-old">JSON-LD
-allows
-properties
-to
-be
-BNodes,
-while
-RDF
-</del>
-<div class="">
-<p>
-<ins class="diff-chg">A
-</ins><a class="tref internalDFN" title="linked_data" href="#dfn-linked_data"><ins class="diff-chg">
-Linked
-Data
-</ins></a><ins class="diff-chg">
-document
-</ins>
-does
-<del class="diff-old">not.
-When
-used
-as
-just
-JSON-LD,
-this
-is
-</del>
-not
-<del class="diff-old">unreasonable;
-it
-only
-becomes
-an
-issue
-(and
-could
-raise
-an
-exception)
-when
-transformed
-</del>
-<ins class="diff-chg">necessarily
-need
-</ins>
-to
-<del class="diff-old">RDF.
-Note
-that
-the
-definition
-for
-</del>
-<ins class="diff-chg">be
-expressed
-in
-JSON-LD.
-The
-notion
-of
-</ins>
-<a class="tref internalDFN" title="linked_data" href="#dfn-linked_data">
-Linked
-Data
-</a>
-<del class="diff-old">above
-</del>
-is
-<del class="diff-old">silent
-on
-the
-topic
-</del>
-<ins class="diff-chg">a
-concept
-independent
-</ins>
-of
-<del class="diff-old">unlabeled
-nodes
-.
-Nevertheless,
-this
-specification
-allows
-for
-the
-expression
-</del>
-<ins class="diff-chg">any
-given
-serialization
-format.
-</ins></p></div></div><img style="padding: 5px; border-style: solid; border-width: 1px; display: block; margin-left: auto; margin-right: auto;" src="linked-data-graph.png" title="An example of a linked data graph" longdesc="An example of a linked data graph showing two main nodes labeled with URLs for Alice and Bob. The Alice node contains two other connected nodes showing Alice's age (32) and name (Alice)." /><p style="text-align: center;"><ins class="diff-chg">
-Figure
-1:
-An
-example
-</ins>
-of
-<del class="diff-old">unlabeled
-nodes
-,
-as
-most
-graph-based
-</del>
-<ins class="diff-chg">a
-linked
-</ins>
-data
-<del class="diff-old">sets
-on
-the
-Web
-contain
-</del>
-<ins class="diff-chg">graph.
-</ins></p><p><ins class="diff-chg">
-There
-are
-</ins>
-a
-number
-of
-<del class="diff-old">associated
-nodes
-</del>
-<ins class="diff-chg">best
-practices
-</ins>
-that
-<del class="diff-old">are
-not
-named
-and
-thus
-are
-not
-directly
-de-referenceable.
-</del>
-<ins class="diff-chg">can
-ensure
-that
-developers
-will
-generate
-good
-Linked
-Data
-for
-the
-Web.
-</ins>
-JSON-LD
-<del class="diff-old">defines
-</del>
-<ins class="diff-chg">formalizes
-those
-techniques
-by
-providing
-</ins>
-a
-mechanism
-to
-map
-JSON
-<del class="diff-old">terms,
-</del>
-<ins class="diff-chg">data,
-</ins>
-i.e.,
-keys
-and
-values,
-to
-<del class="diff-old">IRIs.
-</del>
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-<ins class="diff-chg">IRI
-</ins></abbr></a><ins class="diff-chg">
-s.
-</ins>
-This
-does
-not
-mean
-that
-JSON-LD
-requires
-every
-key
-or
-value
-to
-be
-an
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>,
-but
-rather
-ensures
-that
-keys
-and
-values
-can
-be
-mapped
-to
-IRIs
-if
-the
-developer
-desires
-to
-transform
-their
-data
-into
-<a class="tref internalDFN" title="linked_data" href="#dfn-linked_data">
-Linked
-Data
-</a>.
-<del class="diff-old">There
-are
-a
-few
-techniques
-that
-can
-ensure
-that
-developers
-will
-generate
-good
-Linked
-Data
-for
-the
-Web.
-JSON-LD
-formalizes
-those
-techniques.
-</del>
-</p>
-</section>
-<section id="general-terminology">
-<h3>
-<span class="secno">
-<ins class="diff-new">3.3
-</ins></span><ins class="diff-new">
-General
-Terminology
-</ins></h3>
-<p>
-<del class="diff-old">We
-will
-</del>
-<ins class="diff-chg">The
-following
-is
-an
-explanation
-of
-the
-general
-terminology
-used
-in
-this
-document.
-Many
-of
-the
-terms
-should
-</ins>
-be
-<del class="diff-old">using
-</del>
-<ins class="diff-chg">familiar
-to
-developers
-that
-have
-used
-JSON:
-</ins></p><dl><dt><dfn title="json_object" id="dfn-json_object"><ins class="diff-chg">
-JSON
-object
-</ins></dfn></dt><dd><ins class="diff-chg">
-An
-object
-structure
-is
-represented
-as
-a
-pair
-of
-curly
-brackets
-surrounding
-zero
-or
-more
-key-value
-pairs.
-A
-key
-is
-a
-</ins><a class="tref internalDFN" title="string" href="#dfn-string"><ins class="diff-chg">
-string
-</ins></a>.<ins class="diff-chg">
-A
-single
-colon
-comes
-after
-each
-key,
-separating
-</ins>
-the
-<ins class="diff-new">key
-from
-the
-value.
-A
-single
-comma
-separates
-a
-value
-from
-a
-</ins>
-following
-<ins class="diff-new">key.
-The
-keys
-within
-an
-object
-</ins><em class="rfc2119" title="should"><ins class="diff-new">
-should
-</ins></em><ins class="diff-new">
-be
-unique.
-</ins></dd><dt><dfn title="array" id="dfn-array"><ins class="diff-new">
-array
-</ins></dfn></dt><dd><ins class="diff-new">
-In
-JSON,
-an
-array
-is
-an
-</ins><em><ins class="diff-new">
-ordered
-</ins></em><ins class="diff-new">
-sequence
-of
-zero
-or
-more
-values.
-An
-array
-is
-represented
-as
-square
-brackets
-surrounding
-zero
-or
-more
-values
-that
-are
-separated
-by
-commas.
-While
-JSON-LD
-uses
-the
-same
-array
-representation
-as
-JSON,
-the
-collection
-is
-</ins><em><ins class="diff-new">
-unordered
-</ins></em><ins class="diff-new">
-by
-default.
-While
-order
-is
-preserved
-in
-regular
-</ins>
-JSON
-<ins class="diff-new">arrays,
-it
-is
-not
-in
-regular
-JSON-LD
-arrays
-unless
-specific
-</ins>
-markup
-<ins class="diff-new">is
-provided
-(see
-</ins><a href="#sets-and-lists" class="sec-ref"><span class="secno"><ins class="diff-new">
-4.9
-</ins></span><span class="sec-title"><ins class="diff-new">
-Sets
-and
-Lists
-</ins></span></a><ins class="diff-new">
-).
-</ins></dd><dt><dfn title="string" id="dfn-string"><ins class="diff-new">
-string
-</ins></dfn></dt><dd><ins class="diff-new">
-A
-string
-is
-a
-sequence
-of
-zero
-or
-more
-Unicode
-characters,
-wrapped
-in
-double
-quotes,
-using
-backslash
-escapes
-(if
-necessary).
-A
-character
-is
-represented
-</ins>
-as
-<ins class="diff-new">a
-single
-character
-string.
-</ins></dd><dt><dfn title="number" id="dfn-number"><ins class="diff-new">
-number
-</ins></dfn></dt><dd><ins class="diff-new">
-A
-number
-is
-similar
-to
-that
-used
-in
-most
-programming
-languages,
-except
-that
-</ins>
-the
-<del class="diff-old">example
-for
-</del>
-<ins class="diff-chg">octal
-and
-hexadecimal
-formats
-are
-not
-used
-and
-that
-leading
-zeros
-are
-not
-allowed.
-</ins></dd><dt><dfn title="true" id="dfn-true"><ins class="diff-chg">
-true
-</ins></dfn><ins class="diff-chg">
-and
-</ins><dfn title="false" id="dfn-false"><ins class="diff-chg">
-false
-</ins></dfn></dt><dd><ins class="diff-chg">
-Values
-that
-are
-used
-to
-express
-one
-of
-two
-possible
-boolean
-states.
-</ins></dd><dt><dfn title="null" id="dfn-null"><ins class="diff-chg">
-null
-</ins></dfn></dt><dd><ins class="diff-chg">
-The
-null
-value
-is
-used
-to
-make
-a
-JSON-LD
-processor
-&quot;forget&quot;
-any
-previously
-defined
-JSON
-key
-that
-is
-associated
-with
-</ins>
-the
-<del class="diff-old">rest
-</del>
-<ins class="diff-chg">null
-value.
-If
-a
-previous
-definition
-doesn't
-exist,
-the
-entire
-key-value
-is
-ignored.
-If
-a
-previous
-definition
-</ins>
-of
-<del class="diff-old">this
-section:
-{
-  &quot;name&quot;: &quot;Manu Sporny&quot;,
-  &quot;homepage&quot;: &quot;http://manu.sporny.org/&quot;,
-  &quot;depiction&quot;: &quot;http://twitter.com/account/profile_image/manusporny&quot;
-}
-</del>
-<ins class="diff-chg">the
-key
-does
-exist,
-the
-previous
-definition
-is
-undefined.
-</ins></dd><dt>
-<dfn title="node_definition" id="dfn-node_definition">
-<ins class="diff-chg">node
-definition
-</ins></dfn></dt><dd><ins class="diff-chg">
-A
-</ins><a class="tref internalDFN" title="json_object" href="#dfn-json_object"><ins class="diff-chg">
-JSON
-object
-</ins></a><ins class="diff-chg">
-used
-to
-represent
-a
-</ins><a class="tref internalDFN" title="node" href="#dfn-node"><ins class="diff-chg">
-node
-</ins></a><ins class="diff-chg">
-and
-one
-or
-more
-properties
-of
-that
-node.
-A
-</ins><a class="tref internalDFN" title="json_object" href="#dfn-json_object"><ins class="diff-chg">
-JSON
-object
-</ins></a><ins class="diff-chg">
-is
-a
-node
-definition
-if
-it
-does
-not
-contain
-the
-keys
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code>,<code><ins class="diff-chg">
[email protected]
-</ins></code><ins class="diff-chg">
-or
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code><ins class="diff-chg">
-and
-it
-has
-one
-or
-more
-keys
-other
-than
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code>.<ins class="diff-chg">
-A
-node
-definition
-</ins><em class="rfc2119" title="may"><ins class="diff-chg">
-may
-</ins></em><ins class="diff-chg">
-be
-spread
-among
-different
-parts
-of
-a
-document
-or
-even
-between
-different
-documents.
-</ins></dd><dt><dfn title="node_reference" id="dfn-node_reference"><ins class="diff-chg">
-node
-reference
-</ins></dfn></dt><dd><ins class="diff-chg">
-A
-</ins><a class="tref internalDFN" title="json_object" href="#dfn-json_object"><ins class="diff-chg">
-JSON
-object
-</ins></a><ins class="diff-chg">
-used
-to
-refer
-to
-a
-node
-that
-contains
-a
-single
-key-value
-pair
-where
-the
-key
-is
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code>.</dd></dl><p></p>
-</section>
-<section id="syntax-tokens-and-keywords">
-<h3>
-<span class="secno">
-<del class="diff-old">3.2
-</del>
-<ins class="diff-chg">3.4
-</ins>
-</span>
-Syntax
-Tokens
-and
-Keywords
-</h3>
-<p>
-JSON-LD
-specifies
-a
-number
-of
-syntax
-tokens
-and
-<dfn title="keyword" id="dfn-keyword">
-keywords
-</dfn>
-that
-are
-a
-core
-part
-of
-the
-language:
-</p>
-<dl>
-<dt>
-<code>
[email protected]
-</code>
-</dt>
-<dd>
-Used
-to
-define
-the
-short-hand
-names
-that
-are
-used
-throughout
-a
-JSON-LD
-document.
-These
-short-hand
-names
-are
-called
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s
-and
-help
-developers
-to
-express
-specific
-identifiers
-in
-a
-compact
-manner.
-The
-<code>
[email protected]
-</code>
-keyword
-is
-described
-in
-detail
-in
-the
-section
-titled
-<a href="#the-context" class="sec-ref">
-<span class="secno">
-<del class="diff-old">3.3
-</del>
-<ins class="diff-chg">3.5
-</ins>
-</span>
-<span class="sec-title">
-The
-Context
-</span>
-</a>.
-</dd>
-<dt>
-<code>
[email protected]
-</code>
-</dt>
-<dd>
-Used
-to
-explicitly
-label
-a
-<a class="tref internalDFN" title="linked_data_graph" href="#dfn-linked_data_graph">
-linked
-data
-graph
-</a>.
-This
-keyword
-is
-described
-in
-<a href="#named-graphs" class="sec-ref">
-<span class="secno">
-4.11
-</span>
-<span class="sec-title">
-Named
-Graphs
-</span>
-</a>.
-</dd>
-<dt>
-<code>
[email protected]
-</code>
-</dt>
-<dd>
-Used
-to
-uniquely
-identify
-<em>
-things
-</em>
-that
-are
-being
-described
-in
-the
-document.
-This
-keyword
-is
-described
-in
-<a href="#node-identifiers" class="sec-ref">
-<span class="secno">
-<del class="diff-old">3.6
-</del>
-<ins class="diff-chg">3.8
-</ins>
-</span>
-<span class="sec-title">
-Node
-Identifiers
-</span>
-</a>.
-</dd>
-<dt>
-<code>
[email protected]
-</code>
-</dt>
-<dd>
-Used
-to
-specify
-the
-data
-that
-is
-associated
-with
-a
-particular
-<a class="tref internalDFN" title="property" href="#dfn-property">
-property
-</a>
-in
-the
-graph.
-This
-keyword
-is
-described
-in
-<a href="#string-internationalization" class="sec-ref">
-<span class="secno">
-<del class="diff-old">3.8
-</del>
-<ins class="diff-chg">3.10
-</ins>
-</span>
-<span class="sec-title">
-String
-Internationalization
-</span>
-</a>
-and
-<a href="#typed-values" class="sec-ref">
-<span class="secno">
-4.2
-</span>
-<span class="sec-title">
-Typed
-Values
-</span>
-</a>.
-</dd>
-<dt>
-<code>
[email protected]
-</code>
-</dt>
-<dd>
-Used
-to
-specify
-the
-native
-language
-for
-a
-particular
-value
-or
-the
-default
-language
-of
-a
-JSON-LD
-document.
-This
-keyword
-is
-described
-in
-the
-section
-titled
-<a href="#string-internationalization" class="sec-ref">
-<span class="secno">
-<del class="diff-old">3.8
-</del>
-<ins class="diff-chg">3.10
-</ins>
-</span>
-<span class="sec-title">
-String
-Internationalization
-</span>
-</a>.
-</dd>
-<dt>
-<code>
[email protected]
-</code>
-</dt>
-<dd>
-Used
-to
-set
-the
-data
-type
-of
-a
-<a class="tref internalDFN" title="node" href="#dfn-node">
-node
-</a>
-or
-<a class="tref internalDFN" title="typed_value" href="#dfn-typed_value">
-typed
-value
-</a>.
-This
-keyword
-is
-described
-in
-the
-section
-titled
-<a href="#typed-values" class="sec-ref">
-<span class="secno">
-4.2
-</span>
-<span class="sec-title">
-Typed
-Values
-</span>
-</a>.
-</dd>
-<dt>
-<code>
[email protected]
-</code>
-</dt>
-<dd>
-Used
-to
-set
-the
-container
-of
-a
-particular
-value.
-This
-keyword
-is
-described
-in
-the
-section
-titled
-<a href="#sets-and-lists" class="sec-ref">
-<span class="secno">
-4.9
-</span>
-<span class="sec-title">
-Sets
-and
-Lists
-</span>
-</a>.
-</dd>
-<dt>
-<code>
[email protected]
-</code>
-</dt>
-<dd>
-Used
-to
-express
-an
-ordered
-set
-of
-data.
-This
-keyword
-is
-described
-in
-the
-section
-titled
-<a href="#sets-and-lists" class="sec-ref">
-<span class="secno">
-4.9
-</span>
-<span class="sec-title">
-Sets
-and
-Lists
-</span>
-</a>.
-</dd>
-<dt>
-<code>
[email protected]
-</code>
-</dt>
-<dd>
-Used
-to
-express
-an
-unordered
-set
-of
-data.
-This
-keyword
-is
-described
-in
-the
-section
-titled
-<a href="#sets-and-lists" class="sec-ref">
-<span class="secno">
-4.9
-</span>
-<span class="sec-title">
-Sets
-and
-Lists
-</span>
-</a>.
-</dd>
-<dt>
-<code>
[email protected]
-</code>
-</dt>
-<dd>
-Used
-to
-set
-the
-base
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-for
-all
-property
-IRIs
-affected
-by
-the
-<a class="tref internalDFN" title="active_context" href="#dfn-active_context">
-active
-context
-</a>.
-This
-keyword
-is
-described
-in
-section
-<a href="#iris" class="sec-ref">
-<span class="secno">
-<del class="diff-old">3.5
-</del>
-<ins class="diff-chg">3.7
-</ins>
-</span>
-<span class="sec-title">
-IRIs
-</span>
-</a>.
-</dd>
-<dt>
-<code>:
-</code>
-</dt>
-<dd>
-The
-separator
-for
-JSON
-keys
-and
-values
-that
-use
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-IRIs
-</a>.
-</dd>
-</dl>
-<p>
-For
-the
-avoidance
-of
-doubt,
-all
-keys,
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keywords
-</a>,
-and
-values
-in
-JSON-LD
-are
-case-sensitive.
-</p>
-</section>
-<section id="the-context">
-<h3>
-<span class="secno">
-<del class="diff-old">3.3
-</del>
-<ins class="diff-chg">3.5
-</ins>
-</span>
-The
-Context
-</h3>
-<p>
-In
-JSON-LD,
-a
-<dfn title="context" id="dfn-context">
-context
-</dfn>
-is
-used
-to
-map
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s,
-i.e.,
-properties
-with
-associated
-values
-in
-an
-JSON
-document,
-to
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-s.
-A
-<dfn title="term" id="dfn-term">
-term
-</dfn>
-is
-a
-short
-word
-that
-expands
-to
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>.
-<a class="tref internalDFN" title="term" href="#dfn-term">
-Term
-</a>
-s
-<em class="rfc2119" title="may">
-may
-</em>
-be
-defined
-as
-any
-valid
-JSON
-<a class="tref internalDFN" title="string" href="#dfn-string">
-string
-</a>
-other
-than
-a
-JSON-LD
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>.
-To
-avoid
-forward-compatibility
-issues,
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s
-starting
-with
-an
-<code>
[email protected]
-</code>
-character
-<em class="rfc2119" title="should not">
-should
-not
-</em>
-be
-used
-as
-they
-might
-be
-used
-as
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keywords
-</a>
-in
-future
-versions
-of
-JSON-LD.
-Furthermore,
-the
-use
-of
-empty
-terms
-(
-<code>
-&quot;&quot;
-</code>
-)
-is
-discouraged
-as
-not
-all
-programming
-languages
-are
-able
-to
-handle
-empty
-property
-names.
-</p>
-<p>
-The
-Web
-uses
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-IRIs
-</a>
-for
-unambiguous
-identification.
-The
-idea
-is
-that
-these
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s
-mean
-something
-that
-may
-be
-of
-use
-to
-other
-developers
-and
-that
-it
-is
-useful
-to
-give
-them
-an
-unambiguous
-identifier.
-That
-is,
-it
-is
-useful
-for
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s
-to
-expand
-to
-IRIs
-so
-that
-developers
-don't
-accidentally
-step
-on
-each
-other's
-<dfn title="vocabulary" id="dfn-vocabulary">
-vocabulary
-</dfn>
-terms
-and
-other
-resources.
-Furthermore,
-developers,
-and
-machines,
-are
-able
-to
-use
-this
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-(by
-plugging
-it
-directly
-into
-a
-web
-browser,
-for
-instance)
-to
-go
-to
-the
-term
-and
-get
-a
-definition
-of
-what
-the
-term
-means.
-This
-mechanism
-is
-analogous
-to
-the
-way
-we
-can
-use
-<a href="http://wordnet.princeton.edu/">
-WordNet
-</a>
-today
-to
-see
-the
-definition
-of
-words
-in
-the
-English
-language.
-Developers
-and
-machines
-need
-the
-same
-sort
-of
-definition
-of
-terms.
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-IRIs
-</a>
-provide
-a
-way
-to
-ensure
-that
-these
-terms
-are
-unambiguous.
-For
-example,
-the
-term
-<code>
-name
-</code>
-may
-map
-directly
-to
-the
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<code>
-http://xmlns.com/foaf/0.1/name
-</code>.
-This
-allows
-JSON-LD
-documents
-to
-be
-constructed
-using
-the
-common
-JSON
-practice
-of
-simple
-<del class="diff-old">name/value
-</del>
-<ins class="diff-chg">key-value
-</ins>
-pairs
-while
-ensuring
-that
-the
-data
-is
-useful
-outside
-of
-the
-page,
-API
-or
-database
-in
-which
-it
-resides.
-The
-value
-of
-a
-term
-mapping
-<em class="rfc2119" title="must">
-must
-</em>
-be
-either;
-1)
-a
-simple
-string
-with
-the
-lexical
-form
-of
-an
-<a class="tref internalDFN" title="absolute_iri" href="#dfn-absolute_iri">
-absolute
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-or
-2)
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>,
-or
-3)
-an
-<a class="tref internalDFN" title="json_object" href="#dfn-json_object">
-JSON
-object
-</a>
-containing
-an
-<code>
[email protected]
-</code>,
-<code>
[email protected]
-</code>,
-<code>
[email protected]
-</code>,
-or
-<code>
[email protected]
-</code>
-keyword
-(all
-other
-keywords
-are
-ignored
-by
-a
-JSON-LD
-processor).
-</p>
-<p>
-These
-Linked
-Data
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s
-are
-typically
-collected
-in
-a
-context
-document
-that
-would
-look
-something
-like
-this:
-</p>
-<del class="diff-old">{
-</del>
-<div class="example"><div class="example-title"><span>Example 1</span>: Context definition</div><pre class="example">{
-  &quot;@context&quot;:
-  {
-    &quot;name&quot;: &quot;http://xmlns.com/foaf/0.1/name&quot;,
-    &quot;depiction&quot;:
-    {
-      &quot;@id&quot;: &quot;http://xmlns.com/foaf/0.1/depiction&quot;,
-      &quot;@type&quot;: &quot;@id&quot;
-    },
-    &quot;homepage&quot;:
-    {
-      &quot;@id&quot;: &quot;http://xmlns.com/foaf/0.1/homepage&quot;,
-      &quot;@type&quot;: &quot;@id&quot;
-    },
-  }
-}
-</pre>
-</div>
-<p>
-<del class="diff-old">Assuming
-</del>
-<ins class="diff-chg">Let's
-assume
-</ins>
-that
-<del class="diff-old">this
-context
-document
-can
-be
-retrieved
-at
-http://json-ld.org/contexts/person.jsonld
-,
-it
-can
-be
-referenced
-from
-</del>
-a
-<del class="diff-old">JSON-LD
-document
-by
-adding
-</del>
-<ins class="diff-chg">developer
-starts
-with
-the
-following
-JSON
-document:
-</ins></p><div class="example"><div class="example-title"><span>Example 2</span>: Sample JSON object</div><pre class="example">{<ins class="diff-chg">
-  &quot;name&quot;: &quot;Manu Sporny&quot;,
-  &quot;homepage&quot;: &quot;http://manu.sporny.org/&quot;,
-  &quot;depiction&quot;: &quot;http://twitter.com/account/profile_image/manusporny&quot;
-}
-</ins></pre></div><p><ins class="diff-chg">
-The
-developer
-can
-add
-</ins>
-a
-single
-<del class="diff-old">line.
-The
-</del>
-<ins class="diff-chg">line
-to
-the
-</ins>
-JSON
-<del class="diff-old">markup
-shown
-in
-</del>
-<ins class="diff-chg">document
-above
-to
-reference
-</ins>
-the
-<del class="diff-old">previous
-section
-could
-be
-changed
-as
-follows:
-</del>
-<ins class="diff-chg">context
-and
-transform
-it
-into
-a
-JSON-LD
-document:
-</ins>
-</p>
-<div class="example"><div class="example-title"><span>Example 3</span>: Adding context reference to JSON document</div><pre class="example">{
-  <span class="diff">&quot;@context&quot;: &quot;http://json-ld.org/contexts/person.jsonld&quot;,</span>
-  &quot;name&quot;: &quot;Manu Sporny&quot;,
-  &quot;homepage&quot;: &quot;http://manu.sporny.org/&quot;,
-  &quot;depiction&quot;: &quot;http://twitter.com/account/profile_image/manusporny&quot;
-}
-</pre>
-</div>
-<p>
-The
-additions
-above
-transform
-the
-previous
-JSON
-document
-into
-a
-JSON
-document
-with
-added
-semantics
-because
-the
-<code>
[email protected]
-</code>
-specifies
-how
-the
-<strong>
-name
-</strong>,
-<strong>
-homepage
-</strong>,
-and
-<strong>
-depiction
-</strong>
-terms
-map
-to
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-IRIs
-</a>.
-Mapping
-those
-keys
-to
-IRIs
-gives
-the
-data
-global
-context.
-If
-two
-developers
-use
-the
-same
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-to
-describe
-a
-property,
-they
-are
-more
-than
-likely
-expressing
-the
-same
-concept.
-This
-allows
-both
-developers
-to
-re-use
-each
-others'
-data
-without
-having
-to
-agree
-to
-how
-their
-data
-will
-interoperate
-on
-a
-site-by-site
-basis.
-Contexts
-may
-also
-contain
-type
-information
-for
-certain
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s
-as
-well
-as
-other
-processing
-instructions
-for
-the
-JSON-LD
-processor.
-</p>
-<div class="note">
-<div class="note-title">
-<span>
-Note
-</span>
-</div>
-<p class="">
-External
-JSON-LD
-context
-documents
-<em class="rfc2119" title="may">
-may
-</em>
-contain
-extra
-information
-located
-outside
-of
-the
-<code>
[email protected]
-</code>
-key,
-such
-as
-documentation
-about
-the
-<a class="tref internalDFN" title="term" href="#dfn-term">
-terms
-</a>
-declared
-in
-the
-document.
-When
-importing
-a
-<code>
[email protected]
-</code>
-value
-from
-an
-external
-JSON-LD
-context
-document,
-any
-extra
-information
-contained
-outside
-of
-the
-<code>
[email protected]
-</code>
-value
-<em class="rfc2119" title="must">
-must
-</em>
-be
-discarded.
-</p>
-</div>
-<p>
-Contexts
-<em class="rfc2119" title="may">
-may
-</em>
-be
-specified
-in-line.
-This
-ensures
-that
-JSON-LD
-documents
-can
-be
-processed
-when
-a
-JSON-LD
-processor
-does
-not
-have
-access
-to
-the
-Web.
-</p>
-<div class="example"><div class="example-title"><span>Example 4</span>: In-line context definition</div><pre class="example">{
-  <span class="diff">&quot;@context&quot;:
-  {
-    &quot;name&quot;: &quot;http://xmlns.com/foaf/0.1/name&quot;,
-    &quot;depiction&quot;:
-    {
-      &quot;@id&quot;: &quot;http://xmlns.com/foaf/0.1/depiction&quot;,
-      &quot;@type&quot;: &quot;@id&quot;
-    },
-    &quot;homepage&quot;:
-    {
-      &quot;@id&quot;: &quot;http://xmlns.com/foaf/0.1/homepage&quot;,
-      &quot;@type&quot;: &quot;@id&quot;
-    },
-  },</span>
-  &quot;name&quot;: &quot;Manu Sporny&quot;,
-  &quot;homepage&quot;: &quot;http://manu.sporny.org/&quot;,
-  &quot;depiction&quot;: &quot;http://twitter.com/account/profile_image/manusporny&quot;
-}
-</pre>
-</div>
-<p>
-Contexts
-<em class="rfc2119" title="may">
-may
-</em>
-be
-used
-at
-any
-time
-a
-<a class="tref internalDFN" title="node_definition" href="#dfn-node_definition">
-node
-definition
-</a>
-is
-defined.
-A
-<a class="tref internalDFN" title="node_definition" href="#dfn-node_definition">
-node
-definition
-</a>
-<em class="rfc2119" title="may">
-may
-</em>
-specify
-multiple
-contexts,
-using
-an
-<a class="tref internalDFN" title="array" href="#dfn-array">
-array
-</a>,
-which
-is
-processed
-in
-order.
-This
-is
-useful
-when
-an
-author
-would
-like
-to
-use
-an
-existing
-context
-and
-add
-application-specific
-terms
-to
-the
-existing
-context.
-Duplicate
-context
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s
-<em class="rfc2119" title="must">
-must
-</em>
-be
-overridden
-using
-a
-last-defined-overrides
-mechanism.
-</p>
-<div class="example"><div class="example-title"><span>Example 5</span>: Scoped contexts within node definitions</div><pre class="example">{
-  <span class="diff">&quot;@context&quot;:
-  {
-    &quot;name&quot;: &quot;http://example.com/person#name&quot;,
-    &quot;details&quot;: &quot;http://example.com/person#details&quot;
-  },</span>
-  &quot;<span class="diff">name</span>&quot;: &quot;Markus Lanthaler&quot;,
-  ...
-  &quot;details&quot;:
-  {
-    <span class="diff">&quot;@context&quot;: {
-      &quot;name&quot;: &quot;http://example.com/organization#name&quot;
-    },</span>
-    &quot;<span class="diff">name</span>&quot;: &quot;Graz University of Technology&quot;
-  }
-}
-</pre>
-</div>
-<p>
-In
-the
-example
-above,
-the
-<code>
-name
-</code>
-prefix
-is
-overridden
-in
-the
-more
-deeply
-nested
-<code>
-details
-</code>
-structure.
-Note
-that
-this
-is
-rarely
-a
-good
-authoring
-practice
-and
-is
-typically
-used
-when
-there
-exist
-legacy
-applications
-that
-depend
-on
-the
-specific
-structure
-of
-the
-<a class="tref internalDFN" title="json_object" href="#dfn-json_object">
-JSON
-object
-</a>.
-</p>
-<div class="note">
-<div class="note-title">
-<span>
-Note
-</span>
-</div>
-<p class="">
-If
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-is
-re-defined
-within
-a
-context,
-all
-previous
-rules
-associated
-with
-the
-previous
-definition
-are
-removed.
-A
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-defined
-in
-a
-previous
-context
-<em class="rfc2119" title="must">
-must
-</em>
-be
-removed,
-if
-it
-is
-re-defined
-to
-<code>
-null
-</code>.
-</p>
-</div>
-<p>
-The
-set
-of
-contexts
-defined
-within
-a
-specific
-<a class="tref internalDFN" title="node_definition" href="#dfn-node_definition">
-node
-definition
-</a>
-are
-referred
-to
-as
-<dfn title="local_context" id="dfn-local_context">
-local
-context
-</dfn>
-s.
-Setting
-the
-context
-to
-<code>
-null
-</code>
-effectively
-resets
-the
-<a class="tref internalDFN" title="active_context" href="#dfn-active_context">
-active
-context
-</a>
-to
-an
-empty
-context.
-The
-<dfn title="active_context" id="dfn-active_context">
-active
-context
-</dfn>
-refers
-to
-the
-accumulation
-of
-<a class="tref internalDFN" title="local_context" href="#dfn-local_context">
-local
-context
-</a>
-s
-that
-are
-in
-scope
-at
-a
-specific
-point
-within
-the
-document.
-The
-following
-example
-specifies
-an
-external
-context
-and
-then
-layers
-a
-local
-context
-on
-top
-of
-the
-external
-context:
-</p>
-<div class="example"><div class="example-title"><span>Example 6</span>: Combining external and local contexts</div><pre class="example">{
-  <span class="diff">&quot;@context&quot;: [
-    &quot;http://json-ld.org/contexts/person.jsonld&quot;,
-    {
-      &quot;pic&quot;: &quot;http://xmlns.com/foaf/0.1/depiction&quot;
-    }
-  ],</span>
-  &quot;name&quot;: &quot;Manu Sporny&quot;,
-  &quot;homepage&quot;: &quot;http://manu.sporny.org/&quot;,
-  <span class="diff">&quot;pic&quot;: &quot;http://twitter.com/account/profile_image/manusporny&quot;</span>
-}
-</pre>
-</div>
-<div class="note">
-<div class="note-title">
-<span>
-Note
-</span>
-</div>
-<p class="">
-To
-ensure
-the
-best
-possible
-performance,
-it
-is
-a
-best
-practice
-to
-put
-the
-<a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>
-definition
-at
-the
-top
-of
-the
-JSON-LD
-document.
-If
-it
-isn't
-listed
-first,
-processors
-have
-to
-save
-each
-key-value
-pair
-until
-the
-<a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>
-is
-processed.
-This
-creates
-a
-memory
-and
-complexity
-burden
-for
-certain
-types
-of
-low-memory
-footprint
-JSON-LD
-processors.
-</p>
-</div>
-<div class="note">
-<div class="note-title">
-<span>
-Note
-</span>
-</div>
-<p class="">
-The
-<code>
-null
-</code>
-value
-is
-processed
-in
-a
-special
-way
-in
-JSON-LD.
-Unless
-otherwise
-specified,
-a
-JSON-LD
-processor
-<em class="rfc2119" title="must">
-must
-</em>
-act
-as
-if
-a
-key-value
-pair
-in
-the
-body
-of
-a
-JSON-LD
-document
-was
-never
-declared
-when
-the
-value
-equals
-<em>
-null
-</em>.
-If
-<code>
[email protected]
-</code>,
-<code>
[email protected]
-</code>,
-or
-<code>
[email protected]
-</code>
-is
-set
-to
-<em>
-null
-</em>
-in
-expanded
-form,
-then
-the
-entire
-<a class="tref internalDFN" title="json_object" href="#dfn-json_object">
-JSON
-object
-</a>
-is
-ignored.
-If
-<code>
[email protected]
-</code>
-is
-set
-to
-<em>
-null
-</em>,
-the
-<a class="tref internalDFN" title="active_context" href="#dfn-active_context">
-active
-context
-</a>
-is
-reset
-and
-when
-used
-within
-a
-<a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>,
-it
-removes
-any
-definition
-associated
-with
-the
-key,
-unless
-otherwise
-specified.
-</p>
-</div>
-</section>
-<section id="from-json-to-json-ld">
-<h3>
-<span class="secno">
-<del class="diff-old">3.4
-</del>
-<ins class="diff-chg">3.6
-</ins>
-</span>
-From
-JSON
-to
-JSON-LD
-</h3>
-<p>
-If
-a
-set
-of
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s
-such
-as,
-<strong>
-name
-</strong>,
-<strong>
-homepage
-</strong>,
-and
-<strong>
-depiction
-</strong>,
-are
-defined
-in
-a
-<a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>,
-and
-that
-context
-is
-used
-to
-resolve
-the
-names
-in
-<a class="tref internalDFN" title="json_object" href="#dfn-json_object">
-JSON
-objects
-</a>,
-machines
-are
-able
-to
-automatically
-expand
-the
-terms
-to
-something
-meaningful
-and
-unambiguous,
-like
-this:
-</p>
-<div class="example"><div class="example-title"><span>Example 7</span>: Expanded terms</div><pre class="example">{
-  &quot;<span class="diff">http://xmlns.com/foaf/0.1/name</span>&quot;: &quot;Manu Sporny&quot;,
-  &quot;<span class="diff">http://xmlns.com/foaf/0.1/homepage</span>&quot;: &quot;http://manu.sporny.org&quot;
-  &quot;<span class="diff">http://xmlns.com/foaf/0.1/depiction</span>&quot;: &quot;http://twitter.com/account/profile_image/manusporny&quot;
-}
-</pre>
-</div>
-<p>
-Doing
-this
-allows
-JSON
-to
-be
-unambiguously
-machine-readable
-without
-requiring
-developers
-to
-drastically
-change
-their
-workflow.
-</p>
-<div class="note">
-<div class="note-title">
-<span>
-Note
-</span>
-</div>
-<p class="">
-The
-example
-above
-does
-not
-use
-the
-<code>
[email protected]
-</code>
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>
-to
-identify
-the
-node
-being
-described
-above.
-This
-type
-of
-node
-is
-called
-an
-<a class="tref internalDFN" title="unlabeled_node" href="#dfn-unlabeled_node">
-unlabeled
-node
-</a>.
-It
-is
-advised
-that
-all
-nodes
-described
-in
-JSON-LD
-are
-given
-unique
-identifiers
-via
-the
-<code>
[email protected]
-</code>
-keyword
-unless
-the
-data
-is
-not
-intended
-to
-be
-linked
-to
-from
-other
-data
-sets.
-</p>
-</div>
-<p>
-A
-<a class="tref internalDFN" title="json_object" href="#dfn-json_object">
-JSON
-object
-</a>
-used
-to
-define
-property
-values
-is
-called
-a
-<a class="tref internalDFN" title="node_definition" href="#dfn-node_definition">
-node
-definition
-</a>.
-<a class="tref internalDFN" title="node_definition" href="#dfn-node_definition">
-Node
-definitions
-</a>
-do
-not
-require
-an
-<code>
[email protected]
-</code>.
-<a class="tref internalDFN" title="node_definition" href="#dfn-node_definition">
-Node
-definitions
-</a>
-that
-do
-not
-contain
-an
-<code>
[email protected]
-</code>
-are
-known
-as
-an
-<a class="tref internalDFN" title="unlabeled_node" href="#dfn-unlabeled_node">
-unlabeled
-nodes
-</a>.
-</p>
-</section>
-<section id="iris">
-<h3>
-<span class="secno">
-<del class="diff-old">3.5
-</del>
-<ins class="diff-chg">3.7
-</ins>
-</span>
-IRIs
-</h3>
-<p>
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-IRIs
-</a>
-are
-fundamental
-to
-<a class="tref internalDFN" title="linked_data" href="#dfn-linked_data">
-Linked
-Data
-</a>
-as
-that
-is
-how
-most
-<a class="tref internalDFN" title="node" href="#dfn-node">
-nodes
-</a>
-s
-and
-all
-<a class="tref internalDFN" title="property" href="#dfn-property">
-properties
-</a>
-are
-identified.
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-s
-can
-be
-expressed
-in
-a
-variety
-of
-different
-ways
-in
-JSON-LD.
-</p>
-<p>
-An
-<dfn title="iri" id="dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</dfn>
-(an
-Internationalized
-Resource
-Identifier)
-is
-described
-in
-[
-<cite>
-<a class="bibref" href="#bib-RFC3987">
-RFC3987
-</a>
-</cite>
-])
-and
-the
-use
-with
-JSON-LD
-conforms
-to
-the
-definition
-of
-<cite>
-<a href="http://www.w3.org/TR/rdf11-concepts/#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-</cite>
-in
-[
-<cite>
-<a class="bibref" href="#bib-RDF-CONCEPTS">
-RDF-CONCEPTS
-</a>
-</cite>
-].
-</p>
-<ol>
-<li>
-Except
-within
-a
-<a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>
-definition,
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s
-in
-the
-key
-position
-in
-a
-<a class="tref internalDFN" title="json_object" href="#dfn-json_object">
-JSON
-object
-</a>
-that
-have
-a
-mapping
-or
-a
-vocabulary
-base
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-in
-the
-<a class="tref internalDFN" title="active_context" href="#dfn-active_context">
-active
-context
-</a>
-are
-expanded
-to
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-by
-JSON-LD
-processors.
-</li>
-<li>
-An
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-is
-generated
-for
-the
-<a class="tref internalDFN" title="string" href="#dfn-string">
-string
-</a>
-value
-specified
-using
-<code>
[email protected]
-</code>
-or
-<code>
[email protected]
-</code>.
-</li>
-<li>
-An
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-is
-generated
-for
-the
-<a class="tref internalDFN" title="string" href="#dfn-string">
-string
-</a>
-value
-of
-any
-key
-for
-which
-there
-are
-<a class="tref internalDFN" title="coercion" href="#dfn-coercion">
-coercion
-</a>
-rules
-in
-effect
-that
-identify
-the
-value
-as
-an
-<code>
[email protected]
-</code>.
-</li>
-</ol>
-<p>
-IRIs
-may
-be
-represented
-as
-an
-<a class="tref internalDFN" title="absolute_iri" href="#dfn-absolute_iri">
-absolute
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>,
-a
-<a class="tref internalDFN" title="relative_iri" href="#dfn-relative_iri">
-relative
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>,
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>,
-a
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>,
-or
-as
-a
-value
-relative
-to
-<code>
[email protected]
-</code>.
-</p>
-<p>
-An
-<dfn title="absolute_iri" id="dfn-absolute_iri">
-absolute
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</dfn>
-is
-defined
-in
-[
-<cite>
-<a class="bibref" href="#bib-RFC3987">
-RFC3987
-</a>
-</cite>
-]
-containing
-a
-<em>
-scheme
-</em>
-along
-with
-<em>
-path
-</em>
-and
-optional
-<em>
-query
-</em>
-and
-<em>
-fragment
-</em>
-segments.
-A
-<dfn title="relative_iri" id="dfn-relative_iri">
-relative
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</dfn>
-is
-an
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-that
-is
-relative
-to
-some
-other
-<a class="tref internalDFN" title="absolute_iri" href="#dfn-absolute_iri">
-absolute
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>.
-In
-JSON-LD
-all
-<a class="tref internalDFN" title="relative_iri" href="#dfn-relative_iri">
-relative
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-s
-are
-resolved
-relative
-to
-the
-<dfn title="base_iri" id="dfn-base_iri">
-base
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</dfn>
-associated
-with
-the
-document
-(typically,
-the
-directory
-that
-contains
-the
-document
-or
-the
-document
-itself).
-</p>
-<p>
-IRIs
-can
-be
-expressed
-directly
-in
-the
-key
-position
-like
-so:
-</p>
-<div class="example"><div class="example-title"><span>Example 8</span>: IRI as a key</div><pre class="example">{
-...
-  &quot;<span class="diff">http://xmlns.com/foaf/0.1/name</span>&quot;: &quot;Manu Sporny&quot;,
-...
-}
-</pre>
-</div>
-<p>
-In
-the
-example
-above,
-the
-key
-<code>
-http://xmlns.com/foaf/0.1/name
-</code>
-is
-interpreted
-as
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-because
-it
-contains
-a
-colon
-(
-<code>:
-</code>
-)
-and
-the
-'http'
-<a class="tref internalDFN" title="prefix" href="#dfn-prefix">
-prefix
-</a>
-does
-not
-exist
-in
-the
-context.
-</p>
-<p>
-Term
-expansion
-occurs
-for
-IRIs
-if
-the
-value
-matches
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-defined
-within
-the
-<a class="tref internalDFN" title="active_context" href="#dfn-active_context">
-active
-context
-</a>:
-</p>
-<div class="example"><div class="example-title"><span>Example 9</span>: Term expansion from context definition</div><pre class="example">{
-  &quot;<span class="diff">@context</span>&quot;:
-  {
-    &quot;<span class="diff">name</span>&quot;: &quot;<span class="diff">http://xmlns.com/foaf/0.1/name</span>&quot;
-...
-  },
-  &quot;<span class="diff">name</span>&quot;: &quot;Manu Sporny&quot;,
-  &quot;status&quot;: &quot;trollin'&quot;,
-...
-}
-</pre>
-</div>
-<p>
-<a class="tref internalDFN" title="term" href="#dfn-term">
-Term
-</a>
-s
-are
-case
-sensitive,
-and
-<em class="rfc2119" title="must">
-must
-</em>
-be
-matched
-using
-a
-case-sensitive
-comparison.
-</p>
-<p>
-JSON
-keys
-that
-do
-not
-expand
-to
-an
-absolute
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-are
-ignored,
-or
-removed
-in
-some
-cases,
-by
-the
-[
-<cite>
-<a class="bibref" href="#bib-JSON-LD-API">
-JSON-LD-API
-</a>
-</cite>
-].
-However,
-JSON
-keys
-that
-do
-not
-include
-a
-mapping
-in
-the
-<a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>
-are
-still
-considered
-valid
-expressions
-in
-JSON-LD
-documents
--
-the
-keys
-just
-don't
-have
-any
-machine-readable,
-semantic
-meaning.
-</p>
-<p>
-<a class="tref internalDFN" title="prefix" href="#dfn-prefix">
-Prefix
-</a>
-es
-are
-expanded
-when
-the
-form
-of
-the
-value
-is
-a
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-represented
-as
-a
-<code>
-prefix:suffix
-</code>
-combination,
-and
-the
-prefix
-matches
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-defined
-within
-the
-<a class="tref internalDFN" title="active_context" href="#dfn-active_context">
-active
-context
-</a>:
-</p>
-<div class="example"><div class="example-title"><span>Example 10</span>: Prefix expansion</div><pre class="example">{
-  &quot;<span class="diff">@context</span>&quot;:
-  {
-    &quot;<span class="diff">foaf</span>&quot;: &quot;<span class="diff">http://xmlns.com/foaf/0.1/</span>&quot;
-...
-  },
-  &quot;<span class="diff">foaf:name</span>&quot;: &quot;Manu Sporny&quot;,
-...
-}
-</pre>
-</div>
-<p>
-<code>
-foaf:name
-</code>
-above
-will
-automatically
-expand
-out
-to
-the
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<code>
-http://xmlns.com/foaf/0.1/name
-</code>.
-See
-<a href="#compact-iris" class="sec-ref">
-<span class="secno">
-4.1
-</span>
-<span class="sec-title">
-Compact
-IRIs
-</span>
-</a>
-for
-more
-details.
-</p>
-<p>
-If
-the
-<code>
[email protected]
-</code>
-is
-set,
-all
-keys
-that
-do
-not
-match
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-or
-a
-<a class="tref internalDFN" title="prefix" href="#dfn-prefix">
-prefix
-</a>
-are
-It
-is
-often
-common
-that
-all
-types
-and
-properties
-come
-from
-the
-same
-vocabulary.
-JSON-LD's
-<code>
[email protected]
-</code>
-keyword
-allows
-to
-set
-a
-base
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-to
-be
-used
-for
-all
-properties
-and
-types
-that
-that
-do
-not
-match
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>,
-a
-<a class="tref internalDFN" title="prefix" href="#dfn-prefix">
-prefix
-</a>,
-or
-an
-<a class="tref internalDFN" title="absolute_iri" href="#dfn-absolute_iri">
-absolute
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-(i.e.,
-do
-not
-contain
-a
-colon).
-The
-<code>
[email protected]
-</code>
-mapping
-<em class="rfc2119" title="must">
-must
-</em>
-have
-a
-value
-of
-a
-simple
-string
-with
-the
-lexical
-form
-of
-an
-absolute
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>.
-</p>
-<div class="example"><div class="example-title"><span>Example 11</span>: Vocabulary base IRI</div><pre class="example">{
-  <span class="diff">&quot;@context&quot;: {
-    &quot;@vocab&quot;: &quot;http://xmlns.com/foaf/1.0/&quot;
-  },</span>
-  &quot;@type&quot;: <span class="diff">&quot;Person&quot;</span>,
-  <span class="diff">&quot;name&quot;</span>: &quot;Manu Sporny&quot;,
-}
-</pre>
-</div>
-<p>
-An
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-is
-generated
-when
-a
-<a class="tref internalDFN" title="json_object" href="#dfn-json_object">
-JSON
-object
-</a>
-is
-used
-in
-the
-value
-position
-that
-contains
-an
-<code>
[email protected]
-</code>
-keyword:
-</p>
-<div class="example"><div class="example-title"><span>Example 12</span>: Expanded IRI definition</div><pre class="example">{
-...
-  &quot;homepage&quot;: { &quot;<span class="diff">@id</span>&quot;: &quot;http://manu.sporny.org&quot; }
-...
-}
-</pre>
-</div>
-<div class="note">
-<div class="note-title">
-<span>
-Note
-</span>
-</div>
-<p class="">
-Specifying
-a
-<a class="tref internalDFN" title="json_object" href="#dfn-json_object">
-JSON
-object
-</a>
-with
-an
-<code>
[email protected]
-</code>
-key
-is
-used
-to
-identify
-that
-<a class="tref internalDFN" title="node" href="#dfn-node">
-node
-</a>
-using
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>.
-When
-the
-object
-has
-only
-the
-<code>
[email protected]
-</code>,
-it
-is
-called
-a
-<a class="tref internalDFN" title="node_reference" href="#dfn-node_reference">
-node
-reference
-</a>.
-This
-facility
-<em class="rfc2119" title="may">
-may
-</em>
-also
-be
-used
-to
-link
-to
-another
-<a class="tref internalDFN" title="node_definition" href="#dfn-node_definition">
-node
-definition
-</a>
-using
-a
-mechanism
-called
-<a class="tref internalDFN" title="embedding" href="#dfn-embedding">
-embedding
-</a>,
-which
-is
-covered
-in
-the
-section
-titled
-<a href="#embedding" class="sec-ref">
-<span class="secno">
-4.10
-</span>
-<span class="sec-title">
-Embedding
-</span>
-</a>.
-</p>
-</div>
-<p>
-If
-type
-<a class="tref internalDFN" title="coercion" href="#dfn-coercion">
-coercion
-</a>
-rules
-are
-specified
-in
-the
-<code>
[email protected]
-</code>
-for
-a
-particular
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-or
-property
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>,
-an
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-is
-generated:
-</p>
-<div class="example"><div class="example-title"><span>Example 13</span>: Type coercion</div><pre class="example">{<span class="diff">
-  &quot;@context&quot;:
-  {
-    ...
-    &quot;homepage&quot;:
-    {
-      &quot;@id&quot;: &quot;http://xmlns.com/foaf/0.1/homepage&quot;,
-      &quot;@type&quot;: &quot;@id&quot;
-    }
-    ...
-  }</span>
-...
-  &quot;homepage&quot;: &quot;http://manu.sporny.org/&quot;,
-...
-}
-</pre>
-</div>
-<p>
-In
-the
-example
-above,
-even
-though
-the
-value
-<code>
-http://manu.sporny.org/
-</code>
-is
-expressed
-as
-a
-JSON
-<a class="tref internalDFN" title="string" href="#dfn-string">
-string
-</a>,
-the
-type
-<a class="tref internalDFN" title="coercion" href="#dfn-coercion">
-coercion
-</a>
-rules
-will
-transform
-the
-value
-into
-an
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-when
-processed
-by
-a
-JSON-LD
-Processor.
-</p>
-</section>
-<section id="node-identifiers">
-<h3>
-<span class="secno">
-<del class="diff-old">3.6
-</del>
-<ins class="diff-chg">3.8
-</ins>
-</span>
-Node
-Identifiers
-</h3>
-<p>
-To
-be
-able
-to
-externally
-reference
-nodes
-in
-a
-graph,
-it
-is
-important
-that
-each
-node
-has
-an
-unambiguous
-identifier.
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-s
-are
-a
-fundamental
-concept
-of
-<a class="tref internalDFN" title="linked_data" href="#dfn-linked_data">
-Linked
-Data
-</a>,
-and
-nodes
-should
-have
-a
-de-referencable
-identifier
-used
-to
-name
-and
-locate
-them.
-For
-nodes
-to
-be
-truly
-linked,
-de-referencing
-the
-identifier
-should
-result
-in
-a
-representation
-of
-that
-node
-(for
-example,
-using
-a
-URL
-to
-retrieve
-a
-web
-page).
-Associating
-an
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-with
-a
-node
-tells
-an
-application
-that
-the
-returned
-document
-contains
-a
-description
-of
-the
-node
-requested.
-</p>
-<p>
-JSON-LD
-documents
-may
-also
-contain
-descriptions
-of
-other
-nodes,
-so
-it
-is
-necessary
-to
-be
-able
-to
-uniquely
-identify
-each
-node
-which
-may
-be
-externally
-referenced.
-</p>
-<p>
-The
-node
-of
-a
-<a class="tref internalDFN" title="json_object" href="#dfn-json_object">
-JSON
-object
-</a>
-is
-identified
-using
-the
-<code>
[email protected]
-</code>
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>:
-</p>
-<div class="example"><div class="example-title"><span>Example 14</span>: Identifying a node</div><pre class="example">{
-  &quot;@context&quot;:
-  {
-    ...
-    &quot;homepage&quot;:
-    {
-      &quot;@id&quot;: &quot;http://xmlns.com/foaf/0.1/homepage&quot;,
-      &quot;@type&quot;: &quot;@id&quot;
-    }
-    ...
-  },
-  &quot;<span class="diff">@id</span>&quot;: &quot;<span class="diff">http://example.org/people#joebob</span>&quot;,
-  &quot;homepage&quot;: &quot;http://manu.sporny.org/&quot;,
-...
-}
-</pre>
-</div>
-<p>
-The
-example
-above
-contains
-a
-node
-identified
-by
-the
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<code>
-http://example.org/people#joebob
-</code>.
-</p>
-<p>
-A
-<a class="tref internalDFN" title="json_object" href="#dfn-json_object">
-JSON
-object
-</a>
-used
-to
-define
-property
-values
-is
-called
-a
-<a class="tref internalDFN" title="node_definition" href="#dfn-node_definition">
-node
-definition
-</a>.
-<a class="tref internalDFN" title="node_definition" href="#dfn-node_definition">
-Node
-definitions
-</a>
-do
-not
-require
-an
-<code>
[email protected]
-</code>.
-A
-<a class="tref internalDFN" title="node_definition" href="#dfn-node_definition">
-node
-definition
-</a>
-that
-does
-not
-contain
-an
-<code>
[email protected]
-</code>
-property
-defines
-properties
-of
-an
-<a class="tref internalDFN" title="unlabeled_node" href="#dfn-unlabeled_node">
-unlabeled
-node
-</a>.
-<a class="tref internalDFN" title="node_definition" href="#dfn-node_definition">
-Node
-definitions
-</a>
-<em class="rfc2119" title="may">
-may
-</em>
-be
-spread
-among
-different
-parts
-of
-a
-document
-or
-even
-between
-different
-documents.
-</p>
-<div class="note">
-<div class="note-title">
-<span>
-Note
-</span>
-</div>
-<p class="">
-To
-ensure
-the
-best
-possible
-performance,
-when
-possible,
-it
-is
-a
-best
-practice
-to
-put
-JSON-LD
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>
-s,
-such
-as
-<code>
[email protected]
-</code>
-and
-<code>
[email protected]
-</code>
-before
-other
-key-value
-pairs
-in
-a
-<a class="tref internalDFN" title="json_object" href="#dfn-json_object">
-JSON
-object
-</a>.
-However,
-keys
-in
-a
-<a class="tref internalDFN" title="json_object" href="#dfn-json_object">
-JSON
-object
-</a>
-are
-not
-ordered,
-so
-processors
-<em class="rfc2119" title="must not">
-must
-not
-</em>
-depend
-on
-key
-ordering.
-If
-keywords
-are
-not
-listed
-first,
-processors
-have
-to
-save
-each
-key-value
-pair
-until
-at
-least
-the
-<code>
[email protected]
-</code>
-and
-the
-<code>
[email protected]
-</code>
-are
-processed.
-Not
-specifying
-those
-keywords
-first
-creates
-a
-memory
-and
-complexity
-burden
-for
-low-memory
-footprint
-processors,
-forcing
-them
-to
-use
-more
-memory
-and
-computing
-cycles
-than
-necessary.
-</p>
-</div>
-</section>
-<section id="specifying-the-type">
-<h3>
-<span class="secno">
-<del class="diff-old">3.7
-</del>
-<ins class="diff-chg">3.9
-</ins>
-</span>
-Specifying
-the
-Type
-</h3>
-<p>
-The
-type
-of
-a
-particular
-node
-can
-be
-specified
-using
-the
-<code>
[email protected]
-</code>
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>.
-To
-be
-considered
-<a class="tref internalDFN" title="linked_data" href="#dfn-linked_data">
-Linked
-Data
-</a>,
-types
-<em class="rfc2119" title="must">
-must
-</em>
-be
-uniquely
-identified
-by
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>.
-</p>
-<div class="example"><div class="example-title"><span>Example 15</span>: Specifying the type for a node</div><pre class="example">{
-...
-  &quot;@id&quot;: &quot;http://example.org/people#joebob&quot;,
-  &quot;<span class="diff">@type</span>&quot;: &quot;<span class="diff">http://xmlns.com/foaf/0.1/Person</span>&quot;,
-...
-}
-</pre>
-</div>
-<p>
-A
-node
-can
-be
-assigned
-more
-than
-one
-type
-by
-using
-the
-following
-markup
-pattern:
-</p>
-<div class="example"><div class="example-title"><span>Example 16</span>: Specifying multiple types for a node</div><pre class="example">{
-...
-  &quot;@id&quot;: &quot;http://example.org/places#BrewEats&quot;,
-  &quot;<span class="diff">@type</span>&quot;: <span class="diff">[&quot;http://schema.org/Restaurant&quot;, &quot;http://schema.org/Brewery&quot;]</span>
-...
-}
-</pre>
-</div>
-</section>
-<section id="string-internationalization">
-<h3>
-<span class="secno">
-<del class="diff-old">3.8
-</del>
-<ins class="diff-chg">3.10
-</ins>
-</span>
-String
-Internationalization
-</h3>
-<p>
-At
-times,
-it
-is
-important
-to
-annotate
-a
-<a class="tref internalDFN" title="string" href="#dfn-string">
-string
-</a>
-with
-its
-language.
-In
-JSON-LD
-this
-is
-possible
-in
-a
-variety
-of
-ways.
-Firstly,
-it
-is
-possible
-to
-define
-a
-default
-language
-for
-a
-JSON-LD
-document
-by
-setting
-the
-<code>
[email protected]
-</code>
-key
-in
-the
-<code>
[email protected]
-</code>
-or
-in
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-definition:
-</p>
-<div class="example"><div class="example-title"><span>Example 17</span>: String Internationalization</div><pre class="example">{
-  <span class="diff">&quot;@context&quot;:
-  {
-    ...
-    &quot;@language&quot;: &quot;ja&quot;
-  },</span>
-  &quot;name&quot;: <span class="diff">&quot;花澄&quot;</span>,
-  &quot;occupation&quot;: <span class="diff">&quot;科学者&quot;</span>
-}
-</pre>
-</div>
-<p>
-The
-example
-above
-would
-associate
-the
-<code>
-ja
-</code>
-language
-code
-with
-the
-two
-<a class="tref internalDFN" title="string" href="#dfn-string">
-string
-</a>
-s
-<em>
-花澄
-</em>
-and
-<em>
-科学者
-</em>.
-Languages
-<em class="rfc2119" title="must">
-must
-</em>
-be
-well-formed
-language
-tags
-according
-to
-[
-<cite>
-<a class="bibref" href="#bib-BCP47">
-BCP47
-</a>
-</cite>
-].
-</p>
-<p>
-It
-is
-possible
-to
-override
-the
-default
-language
-by
-using
-the
-expanded
-form
-of
-a
-value:
-</p>
-<div class="example"><div class="example-title"><span>Example 18</span>: Expanded value with language</div><pre class="example">{
-  &quot;@context&quot;: {
-    ...
-    &quot;@language&quot;: &quot;ja&quot;
-  },
-  &quot;name&quot;: &quot;花澄&quot;,
-  &quot;occupation&quot;: <span class="diff">{
-    &quot;@value&quot;: &quot;Scientist&quot;,
-    &quot;@language&quot;: &quot;en&quot;
-  }</span>
-}
-</pre>
-</div>
-<p>
-It
-is
-also
-possible
-to
-override
-the
-default
-language
-or
-specify
-a
-plain
-value
-by
-omitting
-the
-<code>
[email protected]
-</code>
-tag
-or
-setting
-it
-to
-<code>
-null
-</code>
-when
-expressing
-the
-expanded
-value:
-</p>
-<div class="example"><div class="example-title"><span>Example 19</span>: Expanded value to remove language</div><pre class="example">{
-  &quot;@context&quot;: {
-    ...
-    &quot;@language&quot;: &quot;ja&quot;
-  },
-  &quot;name&quot;: <span class="diff">{
-    &quot;@value&quot;: &quot;Frank&quot;
-  },</span>
-  &quot;occupation&quot;: <span class="diff"> {
-    &quot;@value&quot;: &quot;Ninja&quot;,
-    &quot;@language&quot;: &quot;en&quot;
-  }</span>,
-  &quot;speciality&quot;: &quot;手裏剣&quot;
-}
-</pre>
-</div>
-<div class="note">
-<div class="note-title">
-<span>
-Note
-</span>
-</div>
-<p class="">
-Please
-note
-that
-language
-associations
-<em class="rfc2119" title="must">
-must
-</em>
-only
-be
-applied
-to
-plain
-literal
-<a class="tref internalDFN" title="string" href="#dfn-string">
-string
-</a>
-s.
-That
-is,
-<a class="tref internalDFN" title="typed_value" href="#dfn-typed_value">
-typed
-value
-</a>
-s
-or
-values
-that
-are
-subject
-to
-<a href="#type-coercion" class="sec-ref">
-<span class="secno">
-4.6
-</span>
-<span class="sec-title">
-Type
-Coercion
-</span>
-</a>
-won't
-be
-language
-tagged.
-</p>
-</div>
-<p>
-To
-clear
-the
-default
-language
-for
-a
-subtree,
-<code>
[email protected]
-</code>
-can
-be
-set
-to
-<code>
-null
-</code>
-in
-a
-<a class="tref internalDFN" title="local_context" href="#dfn-local_context">
-local
-context
-</a>
-as
-follows:
-</p>
-<div class="example"><div class="example-title"><span>Example 20</span>: Clearing default language</div><pre class="example">{
-  &quot;@context&quot;: {
-    ...
-    &quot;@language&quot;: &quot;ja&quot;
-  },
-  &quot;name&quot;: &quot;花澄&quot;,
-  &quot;details&quot;: {
-<span class="diff">    &quot;@context&quot;: {
-      &quot;@language&quot;: null
-    },</span>
-    &quot;occupation&quot;: &quot;Ninja&quot;
-  }
-}
-</pre>
-</div>
-<div class="note">
-<div class="note-title">
-<span>
-Note
-</span>
-</div>
-<p class="">
-JSON-LD
-allows
-one
-to
-associate
-language
-information
-with
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s.
-See
-<a href="#expanded-term-definition" class="sec-ref">
-<span class="secno">
-4.5
-</span>
-<span class="sec-title">
-Expanded
-Term
-Definition
-</span>
-</a>
-for
-more
-details.
-</p>
-</div>
-</section>
-<section id="json-ld-syntax">
-<h3>
-<span class="secno">
-<del class="diff-old">3.9
-</del>
-<ins class="diff-chg">3.11
-</ins>
-</span>
-JSON-LD
-Syntax
-</h3>
-<p>
-A
-JSON-LD
-document
-is
-first,
-and
-foremost,
-a
-JSON
-document
-(as
-defined
-in
-[
-<cite>
-<a class="bibref" href="#bib-RFC4627">
-RFC4627
-</a>
-</cite>
-]),
-and
-any
-syntactically
-correct
-JSON
-document
-<em class="rfc2119" title="must">
-must
-</em>
-be
-processed
-by
-a
-conforming
-JSON-LD
-processor.
-However,
-JSON-LD
-describes
-a
-specific
-syntax
-to
-use
-for
-expressing
-Linked
-Data.
-This
-includes
-the
-use
-of
-specific
-keywords,
-as
-identified
-in
-<a href="#syntax-tokens-and-keywords" class="sec-ref">
-<span class="secno">
-<del class="diff-old">3.2
-</del>
-<ins class="diff-chg">3.4
-</ins>
-</span>
-<span class="sec-title">
-Syntax
-Tokens
-and
-Keywords
-</span>
-</a>
-for
-expressing
-<a title="node definition">
-node
-definitions
-</a>,
-values,
-and
-the
-<a href="#dfn-context" class="internalDFN">
-context
-</a>.
-See
-<a href="#json-ld-grammar" class="sec-ref">
-<span class="secno">
-A.
-</span>
-<span class="sec-title">
-JSON-LD
-Grammar
-</span>
-</a>
-for
-authoring
-guidelines
-and
-a
-BNF
-description
-of
-JSON-LD.
-</p>
-</section>
-</section>
-<section id="advanced-concepts">
-<h2>
-<span class="secno">
-4.
-</span>
-Advanced
-Concepts
-</h2>
-<em>
-This
-section
-is
-normative.
-</em>
-<p>
-JSON-LD
-has
-a
-number
-of
-features
-that
-provide
-functionality
-above
-and
-beyond
-the
-core
-functionality
-described
-above.
-The
-following
-section
-describes
-this
-advanced
-functionality
-in
-more
-detail.
-</p>
-<section id="compact-iris">
-<h3>
-<span class="secno">
-4.1
-</span>
-Compact
-IRIs
-</h3>
-<p>
-<a class="tref internalDFN" title="term" href="#dfn-term">
-Term
-</a>
-s
-in
-<a class="tref internalDFN" title="linked_data" href="#dfn-linked_data">
-Linked
-Data
-</a>
-documents
-may
-draw
-from
-a
-number
-of
-different
-<a class="tref internalDFN" title="vocabulary" href="#dfn-vocabulary">
-vocabularies
-</a>.
-At
-times,
-declaring
-every
-single
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-that
-a
-document
-uses
-can
-require
-the
-developer
-to
-declare
-tens,
-if
-not
-hundreds
-of
-potential
-<a class="tref internalDFN" title="vocabulary" href="#dfn-vocabulary">
-vocabulary
-</a>
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s
-that
-are
-used
-across
-an
-application.
-This
-is
-a
-concern
-for
-at
-least
-two
-reasons:
-the
-first
-is
-the
-cognitive
-load
-on
-the
-developer
-of
-remembering
-all
-of
-the
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s,
-and
-the
-second
-is
-the
-serialized
-size
-of
-the
-<a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>
-if
-it
-is
-specified
-inline.
-In
-order
-to
-address
-these
-issues,
-the
-concept
-of
-a
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-is
-introduced.
-</p>
-<p>
-A
-<dfn title="compact_iri" id="dfn-compact_iri">
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</dfn>
-is
-a
-way
-of
-expressing
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-using
-a
-<em>
-prefix
-</em>
-and
-<em>
-suffix
-</em>
-separated
-by
-a
-colon
-(
-<code>:
-</code>
-)
-which
-is
-similar
-to
-the
-<cite>
-<a href="http://www.w3.org/TR/rdfa-core/#s_curies">
-CURIE
-Syntax
-</a>
-</cite>
-in
-[
-<cite>
-<a class="bibref" href="#bib-RDFA-CORE">
-RDFA-CORE
-</a>
-</cite>
-].
-The
-<dfn title="prefix" id="dfn-prefix">
-prefix
-</dfn>
-is
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-taken
-from
-the
-<a class="tref internalDFN" title="active_context" href="#dfn-active_context">
-active
-context
-</a>
-and
-is
-a
-short
-string
-identifying
-a
-particular
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-in
-a
-JSON-LD
-document.
-For
-example,
-the
-prefix
-<code>
-foaf
-</code>
-may
-be
-used
-as
-a
-short
-hand
-for
-the
-Friend-of-a-Friend
-vocabulary,
-which
-is
-identified
-using
-the
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<code>
-http://xmlns.com/foaf/0.1/
-</code>.
-A
-developer
-may
-append
-any
-of
-the
-FOAF
-<a class="tref internalDFN" title="vocabulary" href="#dfn-vocabulary">
-vocabulary
-</a>
-terms
-to
-the
-end
-of
-the
-prefix
-to
-specify
-a
-short-hand
-version
-of
-the
-<a class="tref internalDFN" title="absolute_iri" href="#dfn-absolute_iri">
-absolute
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-for
-the
-<a class="tref internalDFN" title="vocabulary" href="#dfn-vocabulary">
-vocabulary
-</a>
-term.
-For
-example,
-<code>
-foaf:name
-</code>
-would
-be
-expanded
-out
-to
-the
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<code>
-http://xmlns.com/foaf/0.1/name
-</code>.
-Instead
-of
-having
-to
-remember
-and
-type
-out
-the
-entire
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>,
-the
-developer
-can
-instead
-use
-the
-prefix
-in
-their
-JSON-LD
-markup.
-</p>
-<p>
-Terms
-are
-interpreted
-as
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-s
-if
-they
-contain
-at
-least
-one
-colon
-and
-the
-first
-colon
-is
-not
-followed
-by
-two
-slashes
-(
-<code>
-//
-</code>,
-as
-in
-<code>
-http://example.com
-</code>
-).
-To
-generate
-the
-full
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>,
-the
-value
-is
-first
-split
-into
-a
-<em>
-prefix
-</em>
-and
-<em>
-suffix
-</em>
-at
-the
-first
-occurrence
-of
-a
-colon
-(
-<code>:
-</code>
-).
-If
-the
-<a class="tref internalDFN" title="active_context" href="#dfn-active_context">
-active
-context
-</a>
-contains
-a
-term
-mapping
-for
-<em>
-prefix
-</em>,
-an
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-is
-generated
-by
-prepending
-the
-mapped
-<em>
-prefix
-</em>
-to
-the
-(possibly
-empty)
-<em>
-suffix
-</em>
-using
-textual
-concatenation.
-If
-no
-prefix
-mapping
-is
-defined,
-the
-value
-is
-interpreted
-as
-an
-<a class="tref internalDFN" title="absolute_iri" href="#dfn-absolute_iri">
-absolute
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>.
-If
-the
-prefix
-is
-an
-underscore
-(
-<code>
-_
-</code>
-),
-the
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-remains
-unchanged.
-This
-effectively
-means
-that
-every
-term
-containing
-a
-colon
-will
-be
-interpreted
-by
-a
-JSON-LD
-processor
-as
-an
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>.
-</p>
-<p>
-Consider
-the
-following
-example:
-</p>
-  <div class="example"><div class="example-title"><span>Example 21</span>: Compact IRIs</div><pre class="example">{
-  &quot;@context&quot;:
-  {
-    <span class="diff">&quot;dc&quot;: &quot;http://purl.org/dc/elements/1.1/&quot;,</span>
-    <span class="diff">&quot;ex&quot;: &quot;http://example.org/vocab#&quot;</span>
-  },
-  &quot;@id&quot;: &quot;http://example.org/library&quot;,
-  &quot;@type&quot;: <span class="diff">&quot;ex:Library&quot;</span>,
-  <span class="diff">&quot;ex:contains&quot;</span>:
-  {
-    &quot;@id&quot;: &quot;http://example.org/library/the-republic&quot;,
-    &quot;@type&quot;: <span class="diff">&quot;ex:Book&quot;</span>,
-    <span class="diff">&quot;dc:creator&quot;</span>: &quot;Plato&quot;,
-    <span class="diff">&quot;dc:title&quot;</span>: &quot;The Republic&quot;,
-    <span class="diff">&quot;ex:contains&quot;</span>:
-    {
-      &quot;@id&quot;: &quot;http://example.org/library/the-republic#introduction&quot;,
-      &quot;@type&quot;: <span class="diff">&quot;ex:Chapter&quot;</span>,
-      <span class="diff">&quot;dc:description&quot;</span>: &quot;An introductory chapter on The Republic.&quot;,
-      <span class="diff">&quot;dc:title&quot;</span>: &quot;The Introduction&quot;
-    }
-  }
-}
-</pre>
-</div>
-<p>
-In
-this
-example,
-two
-different
-<a class="tref internalDFN" title="vocabulary" href="#dfn-vocabulary">
-vocabularies
-</a>
-are
-referred
-to
-using
-prefixes.
-Those
-prefixes
-are
-then
-used
-as
-type
-and
-property
-values
-using
-the
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<code>
-prefix:suffix
-</code>
-notation.
-</p>
-<p>
-It's
-also
-possible
-to
-use
-compact
-IRIs
-within
-the
-context
-as
-shown
-in
-the
-following
-example:
-</p>
-  <div class="example"><div class="example-title"><span>Example 22</span>: Using vocabularies</div><pre class="example">{
-  &quot;@context&quot;:
-  {
-    &quot;xsd&quot;: &quot;http://www.w3.org/2001/XMLSchema#&quot;,
-    &quot;foaf&quot;: &quot;http://xmlns.com/foaf/0.1/&quot;,
-    <span class="diff">&quot;foaf:homepage&quot;</span>: { &quot;@type&quot;: &quot;@id&quot; },
-    &quot;picture&quot;: { &quot;@id&quot;: <span class="diff">&quot;foaf:depiction&quot;</span>, &quot;@type&quot;: &quot;@id&quot; }
-  },
-  &quot;@id&quot;: &quot;http://me.markus-lanthaler.com/&quot;,
-  &quot;@type&quot;: &quot;foaf:Person&quot;,
-  &quot;foaf:name&quot;: &quot;Markus Lanthaler&quot;,
-  &quot;foaf:homepage&quot;: &quot;http://www.markus-lanthaler.com/&quot;,
-  &quot;picture&quot;: &quot;http://twitter.com/account/profile_image/markuslanthaler&quot;
-}
-</pre>
-</div>
-</section>
-<section id="typed-values">
-<h3>
-<span class="secno">
-4.2
-</span>
-Typed
-Values
-</h3>
-<p>
-A
-value
-with
-an
-associated
-type,
-also
-known
-as
-a
-<dfn title="typed_value" id="dfn-typed_value">
-typed
-value
-</dfn>,
-is
-indicated
-by
-associating
-a
-value
-with
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-which
-indicates
-the
-value's
-type.
-Typed
-values
-may
-be
-expressed
-in
-JSON-LD
-in
-three
-ways:
-</p>
-<ol>
-<li>
-By
-utilizing
-the
-<code>
[email protected]
-</code>
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>
-when
-defining
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-within
-a
-<code>
[email protected]
-</code>
-section.
-</li>
-<li>
-By
-utilizing
-the
-expanded
-form
-for
-specifying
-values.
-</li>
-<li>
-By
-using
-a
-native
-JSON
-type
-such
-as
-<a class="tref internalDFN" title="number" href="#dfn-number">
-number
-</a>,
-<a class="tref internalDFN" title="true" href="#dfn-true">
-true
-</a>,
-or
-<a class="tref internalDFN" title="false" href="#dfn-false">
-false
-</a>.
-</li>
-</ol>
-<p>
-The
-first
-example
-uses
-the
-<code>
[email protected]
-</code>
-keyword
-to
-associate
-a
-type
-with
-a
-particular
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-in
-the
-<code>
[email protected]
-</code>:
-</p>
-<div class="example"><div class="example-title"><span>Example 23</span>: Expanded term definition with type coercion</div><pre class="example">{
-  <span class="diff">&quot;@context&quot;:
-  {
-    &quot;modified&quot;:
-    {
-      &quot;@id&quot;: &quot;http://purl.org/dc/terms/modified&quot;,
-      &quot;@type&quot;: &quot;http://www.w3.org/2001/XMLSchema#dateTime&quot;
-    }
-  },</span>
-...
-  &quot;modified&quot;: &quot;2010-05-29T14:17:39+02:00&quot;,
-...
-}
-</pre>
-</div>
-<p>
-The
-<em>
-modified
-</em>
-key's
-value
-above
-is
-automatically
-type
-coerced
-to
-a
-datetime
-value
-because
-of
-the
-information
-specified
-in
-the
-<code>
[email protected]
-</code>.
-</p>
-<p>
-The
-second
-example
-uses
-the
-expanded
-form
-of
-setting
-the
-type
-information
-in
-the
-body
-of
-a
-JSON-LD
-document:
-</p>
-<div class="example"><div class="example-title"><span>Example 24</span>: Expanded value with type</div><pre class="example">{
-  &quot;@context&quot;:
-  {
-    &quot;modified&quot;:
-    {
-      &quot;@id&quot;: &quot;http://purl.org/dc/terms/modified&quot;
-    }
-  },
-...
-  &quot;modified&quot;:
-  <span class="diff">{
-    &quot;@value&quot;: &quot;2010-05-29T14:17:39+02:00&quot;,
-    &quot;@type&quot;: &quot;http://www.w3.org/2001/XMLSchema#dateTime&quot;
-  }</span>
-...
-}
-</pre>
-</div>
-<p>
-Both
-examples
-above
-would
-generate
-the
-value
-<code>
-2010-05-29T14:17:39+02:00
-</code>
-with
-the
-type
-<code>
-http://www.w3.org/2001/XMLSchema#dateTime
-</code>.
-Note
-that
-it
-is
-also
-possible
-to
-use
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-or
-a
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-to
-express
-the
-value
-of
-a
-type.
-</p>
-<p>
-The
-<code>
[email protected]
-</code>
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>
-is
-also
-used
-to
-associate
-a
-type
-with
-a
-<a class="tref internalDFN" title="node" href="#dfn-node">
-node
-</a>.
-The
-concept
-of
-an
-<dfn title="node_type" id="dfn-node_type">
-node
-type
-</dfn>
-and
-a
-<dfn title="value_type" id="dfn-value_type">
-value
-type
-</dfn>
-are
-different.
-This
-is
-similar
-to
-object-oriented
-programming
-languages
-where
-both
-scalar
-and
-structured
-types
-use
-the
-same
-class
-inheritance
-mechanism,
-even
-though
-scalar
-types
-and
-structured
-types
-are
-inherently
-different.
-</p>
-<div class="example"><div class="example-title"><span>Example 25</span>: Example demonstrating the context-sensitivity for @type</div><pre class="example">{
-...
-  &quot;@id&quot;: &quot;http://example.org/posts#TripToWestVirginia&quot;,
-  <span class="diff">&quot;@type&quot;: &quot;http://schema.org/BlogPosting&quot;</span>,
-  &quot;modified&quot;:
-  {
-    &quot;@value&quot;: &quot;2010-05-29T14:17:39+02:00&quot;,
-    <span class="diff">&quot;@type&quot;: &quot;http://www.w3.org/2001/XMLSchema#dateTime&quot;</span>
-  }
-...
-}
-</pre>
-</div>
-<p>
-The
-first
-use
-of
-<code>
[email protected]
-</code>
-associates
-a
-<a class="tref internalDFN" title="node_type" href="#dfn-node_type">
-node
-type
-</a>
-(
-<code>
-http://schema.org/BlogPosting
-</code>
-)
-with
-the
-<a class="tref internalDFN" title="node" href="#dfn-node">
-node
-</a>,
-which
-is
-expressed
-using
-the
-<code>
[email protected]
-</code>
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>.
-The
-second
-use
-of
-<code>
[email protected]
-</code>
-associates
-a
-<a class="tref internalDFN" title="value_type" href="#dfn-value_type">
-value
-type
-</a>
-(
-<code>
-http://www.w3.org/2001/XMLSchema#dateTime
-</code>
-)
-with
-the
-value
-expressed
-using
-the
-<code>
[email protected]
-</code>
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>.
-As
-a
-general
-rule,
-when
-<code>
[email protected]
-</code>
-and
-<code>
[email protected]
-</code>
-are
-used
-in
-the
-same
-<a class="tref internalDFN" title="json_object" href="#dfn-json_object">
-JSON
-object
-</a>,
-the
-<code>
[email protected]
-</code>
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>
-is
-expressing
-a
-<a class="tref internalDFN" title="value_type" href="#dfn-value_type">
-value
-type
-</a>.
-Otherwise,
-the
-<code>
[email protected]
-</code>
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>
-is
-expressing
-a
-<a class="tref internalDFN" title="node_type" href="#dfn-node_type">
-node
-type
-</a>.
-</p>
-</section>
-<section id="language-tagged-strings">
-<h3>
-<span class="secno">
-4.3
-</span>
-Language-tagged
-Strings
-</h3>
-<p>
-A
-string
-with
-an
-associated
-language,
-also
-known
-as
-a
-<dfn title="language-tagged_string" id="dfn-language-tagged_string">
-language-tagged
-string
-</dfn>,
-is
-indicated
-by
-associating
-a
-string
-with
-an
-language
-code
-as
-defined
-in
-[
-<cite>
-<a class="bibref" href="#bib-BCP47">
-BCP47
-</a>
-</cite>
-].
-Language-tagged
-strings
-may
-be
-expressed
-in
-JSON-LD
-in
-four
-ways:
-</p>
-<ol>
-<li>
-By
-defining
-a
-global
-language
-using
-the
-<code>
[email protected]
-</code>
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>
-within
-a
-<code>
[email protected]
-</code>
-section.
-</li>
-<li>
-By
-utilizing
-the
-<code>
[email protected]
-</code>
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>
-when
-defining
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-within
-a
-<code>
[email protected]
-</code>
-section.
-</li>
-<li>
-By
-utilizing
-the
-expanded
-form
-for
-specifying
-values.
-</li>
-<li>
-By
-utilizing
-the
-<code>
[email protected]
-</code>
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>
-with
-a
-value
-of
-<code>
[email protected]
-</code>
-when
-defining
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-within
-a
-<code>
[email protected]
-</code>
-section.
-This
-usage
-pattern
-is
-called
-a
-<dfn title="language_map" id="dfn-language_map">
-language
-map
-</dfn>.
-</li>
-</ol>
-<p>
-The
-first
-example
-uses
-the
-<code>
[email protected]
-</code>
-keyword
-to
-associate
-a
-type
-with
-a
-particular
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-in
-the
-<code>
[email protected]
-</code>:
-</p>
-<div class="example"><div class="example-title"><span>Example 26</span>: Expanded term definition with language coercion</div><pre class="example">{
-  <span class="diff">&quot;@context&quot;:
-  {
-    &quot;title&quot;:
-    {
-      &quot;@id&quot;: &quot;http://purl.org/dc/terms/title&quot;,
-      &quot;@language&quot;: &quot;en&quot;
-    }
-  },</span>
-...
-  &quot;title&quot;: &quot;JSON-LD Syntax&quot;,
-...
-}
-</pre>
-</div>
-<p>
-The
-<em>
-modified
-</em>
-key's
-value
-above
-is
-automatically
-language
-coerced
-to
-a
-English
-value
-because
-of
-the
-information
-specified
-in
-the
-<code>
[email protected]
-</code>.
-</p>
-<p>
-The
-second
-example
-uses
-the
-expanded
-form
-of
-setting
-the
-language
-information
-in
-the
-body
-of
-a
-JSON-LD
-document:
-</p>
-<div class="example"><div class="example-title"><span>Example 27</span>: Expanded value with language</div><pre class="example">{
-  &quot;@context&quot;:
-  {
-    &quot;title&quot;:
-    {
-      &quot;@id&quot;: &quot;http://purl.org/dc/terms/title&quot;
-    }
-  },
-...
-  &quot;title&quot;:
-  <span class="diff">{
-    &quot;@value&quot;: &quot;JSON-LD Syntax&quot;,
-    &quot;@language&quot;: &quot;en&quot;
-  }</span>
-...
-}
-</pre>
-</div>
-<p>
-Both
-examples
-above
-would
-generate
-the
-value
-<code>
-JSON-LD
-Syntax
-</code>
-tagged
-with
-the
-language
-<code>
-en
-</code>
-;
-which
-is
-the
-[
-<cite>
-<a class="bibref" href="#bib-BCP47">
-BCP47
-</a>
-</cite>
-]
-code
-for
-the
-English
-language.
-</p>
-<p>
-Systems
-that
-support
-multiple
-languages
-often
-need
-to
-express
-data
-values
-in
-each
-language.
-Typically,
-such
-systems
-also
-try
-to
-ensure
-that
-developers
-have
-a
-programatically
-easy
-way
-to
-navigate
-the
-datastructures
-for
-the
-language-specific
-data.
-In
-this
-case,
-<a class="tref internalDFN" title="language_map" href="#dfn-language_map">
-language
-map
-</a>
-s
-may
-be
-utilized.
-</p>
-<div class="example"><div class="example-title"><span>Example 28</span>: Language map expressing a property in three languages</div><pre class="example">{
-  &quot;@context&quot;:
-  {
-    &quot;title&quot;:
-    {
-      &quot;@id&quot;: &quot;http://purl.org/dc/terms/title&quot;
-      &quot;@container&quot;: &quot;@language&quot;
-    }
-  },
-...
-  &quot;title&quot;:
-  <span class="diff">{
-    &quot;en&quot;: &quot;JSON-LD Syntax&quot;,
-    &quot;ru&quot;: &quot;JSON-LD Синтаксис&quot;,
-    &quot;ja&quot;: &quot;JSON-LDの構文&quot;
-  }</span>
-...
-}
-</pre>
-</div>
-<p>
-In
-the
-example
-above,
-the
-title
-is
-expressed
-in
-three
-languages;
-English,
-Russian,
-and
-Japanese.
-To
-access
-the
-data
-above
-in
-a
-programming
-language
-supporting
-dot-notation
-accessors
-for
-object
-properties,
-a
-developer
-may
-use
-the
-<code>
-property.language
-</code>
-pattern.
-For
-example,
-to
-access
-the
-Japanese
-version
-of
-the
-title,
-a
-developer
-would
-use
-the
-following
-code
-snippet:
-<code>
-obj.title.ja
-</code>.
-</p>
-</section>
-<section id="referencing-contexts-from-json-documents">
-<h3>
-<span class="secno">
-4.4
-</span>
-Referencing
-Contexts
-from
-JSON
-Documents
-</h3>
-<p>
-Ordinary
-JSON
-documents
-can
-be
-transformed
-into
-JSON-LD
-documents
-by
-referencing
-to
-an
-external
-JSON-LD
-<a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>
-in
-an
-HTTP
-Link
-Header.
-Doing
-this
-allows
-JSON
-to
-be
-unambiguously
-machine-readable
-without
-requiring
-developers
-to
-drastically
-change
-their
-workflow
-and
-provides
-an
-upgrade
-path
-for
-existing
-infrastructure
-without
-breaking
-existing
-clients
-that
-rely
-on
-the
-<code>
-application/json
-</code>
-media
-type.
-</p>
-<p>
-In
-order
-to
-use
-an
-external
-context
-with
-an
-ordinary
-JSON
-document,
-an
-author
-<em class="rfc2119" title="must">
-must
-</em>
-specify
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-to
-a
-valid
-JSON-LD
-document
-in
-an
-HTTP
-Link
-Header
-[
-<cite>
-<a class="bibref" href="#bib-RFC5988">
-RFC5988
-</a>
-</cite>
-]
-using
-the
-<code>
-describedby
-</code>
-link
-relation.
-The
-referenced
-document
-<em class="rfc2119" title="must">
-must
-</em>
-have
-a
-top-level
-<a class="tref internalDFN" title="node_definition" href="#dfn-node_definition">
-node
-definition
-</a>.
-The
-<code>
[email protected]
-</code>
-subtree
-within
-that
-object
-is
-added
-to
-the
-top-level
-<a class="tref internalDFN" title="node_definition" href="#dfn-node_definition">
-node
-definition
-</a>
-of
-the
-referencing
-document.
-If
-an
-<a class="tref internalDFN" title="array" href="#dfn-array">
-array
-</a>
-is
-at
-the
-top-level
-of
-the
-referencing
-document
-and
-its
-items
-are
-<a class="tref internalDFN" title="node_definition" href="#dfn-node_definition">
-node
-definitions
-</a>,
-the
-<code>
[email protected]
-</code>
-subtree
-is
-added
-to
-all
-<a class="tref internalDFN" title="array" href="#dfn-array">
-array
-</a>
-items.
-All
-extra
-information
-located
-outside
-of
-the
-<code>
[email protected]
-</code>
-subtree
-in
-the
-referenced
-document
-<em class="rfc2119" title="must">
-must
-</em>
-be
-discarded.
-</p>
-<p>
-The
-following
-example
-demonstrates
-the
-use
-of
-an
-external
-context
-with
-an
-ordinary
-JSON
-document:
-</p>
-<div class="example"><div class="example-title"><span>Example 29</span>: Specifing context through HTTP header</div><pre class="example">GET /ordinary-json-document.json HTTP/1.1
-Host: example.com
-Accept: application/ld+json,application/json,*/*;q=0.1
-====================================
-HTTP/1.0 200 OK
-...
-Content-Type: <span class="diff">application/json</span>
-<span class="diff">Link: &lt;http://json-ld.org/contexts/person.jsonld&gt;; rel=&quot;describedby&quot;; type=&quot;application/ld+json&quot;</span>
-{
-  &quot;name&quot;: &quot;Markus Lanthaler&quot;,
-  &quot;homepage&quot;: &quot;http://www.markus-lanthaler.com/&quot;,
-  &quot;depiction&quot;: &quot;http://twitter.com/account/profile_image/markuslanthaler&quot;
-}
-</pre>
-</div>
-<div class="note">
-<div class="note-title">
-<span>
-Note
-</span>
-</div>
-<p class="">
-JSON-LD
-documents
-served
-with
-the
-<code>
-application/ld+json
-</code>
-media
-type
-<em class="rfc2119" title="must">
-must
-</em>
-have
-all
-context
-information,
-including
-references
-to
-external
-contexts,
-within
-the
-body
-of
-the
-document.
-</p>
-</div>
-</section>
-<section id="expanded-term-definition">
-<h3>
-<span class="secno">
-4.5
-</span>
-Expanded
-Term
-Definition
-</h3>
-<p>
-Within
-a
-<a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>
-definition,
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s
-<em class="rfc2119" title="may">
-may
-</em>
-be
-defined
-using
-an
-expanded
-notation
-to
-allow
-for
-additional
-information
-associated
-with
-the
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-to
-be
-specified
-(see
-also
-<a href="#type-coercion" class="sec-ref">
-<span class="secno">
-4.6
-</span>
-<span class="sec-title">
-Type
-Coercion
-</span>
-</a>
-and
-<a href="#sets-and-lists" class="sec-ref">
-<span class="secno">
-4.9
-</span>
-<span class="sec-title">
-Sets
-and
-Lists
-</span>
-</a>
-).
-</p>
-<p>
-Instead
-of
-using
-a
-string
-representation
-of
-an
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>,
-the
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<em class="rfc2119" title="may">
-may
-</em>
-be
-specified
-using
-a
-<a class="tref internalDFN" title="json_object" href="#dfn-json_object">
-JSON
-object
-</a>
-having
-an
-<code>
[email protected]
-</code>
-key.
-The
-value
-of
-the
-<code>
[email protected]
-</code>
-key
-<em class="rfc2119" title="must">
-must
-</em>
-be
-either
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>,
-a
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>,
-or
-an
-<a class="tref internalDFN" title="absolute_iri" href="#dfn-absolute_iri">
-absolute
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>.
-Such
-an
-object
-is
-called
-a
-<a class="tref internalDFN" title="node_reference" href="#dfn-node_reference">
-node
-reference
-</a>.
-</p>
-<div class="example"><div class="example-title"><span>Example 30</span>: Expanded term definition</div><pre class="example">{
-  &quot;@context&quot;:
-  {
-    &quot;foaf&quot;: <span class="diff">{ &quot;@id&quot;: &quot;http://xmlns.com/foaf/0.1/&quot; }</span>,
-    &quot;name&quot;: <span class="diff">{ &quot;@id&quot;: &quot;http://xmlns.com/foaf/0.1/name&quot; }</span>,
-    &quot;homepage&quot;: <span class="diff">{ &quot;@id&quot;: &quot;foaf:homepage&quot; }</span>,
-    &quot;depiction&quot;: <span class="diff">{ &quot;@id&quot;: &quot;foaf:depiction&quot; }</span>
-  },
-  &quot;name&quot;: &quot;Manu Sporny&quot;,
-  &quot;homepage&quot;: &quot;http://manu.sporny.org/&quot;,
-  &quot;depiction&quot;: &quot;http://twitter.com/account/profile_image/manusporny&quot;
-}
-</pre>
-</div>
-<p>
-This
-allows
-additional
-information
-to
-be
-associated
-with
-the
-term.
-This
-<em class="rfc2119" title="may">
-may
-</em>
-be
-used
-for
-<a href="#type-coercion" class="sec-ref">
-<span class="secno">
-4.6
-</span>
-<span class="sec-title">
-Type
-Coercion
-</span>
-</a>,
-<a href="#sets-and-lists" class="sec-ref">
-<span class="secno">
-4.9
-</span>
-<span class="sec-title">
-Sets
-and
-Lists
-</span>
-</a>
-),
-or
-to
-associate
-language
-information
-with
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-as
-shown
-in
-the
-following
-example:
-</p>
-<div class="example"><div class="example-title"><span>Example 31</span>: Expanded term definition with language</div><pre class="example">{
-  &quot;@context&quot;: {
-    ...
-    &quot;ex&quot;: &quot;http://example.com/&quot;,
-    &quot;@language&quot;: &quot;ja&quot;,
-    &quot;name&quot;: { &quot;@id&quot;: &quot;ex:name&quot;, <span class="diff">&quot;@language&quot;: null</span> },
-    &quot;occupation&quot;: { &quot;@id&quot;: &quot;ex:occupation&quot; },
-    &quot;occupation_en&quot;: { &quot;@id&quot;: &quot;ex:occupation&quot;, <span class="diff">&quot;@language&quot;: &quot;en&quot;</span> },
-    &quot;occupation_cs&quot;: { &quot;@id&quot;: &quot;ex:occupation&quot;, <span class="diff">&quot;@language&quot;: &quot;cs&quot;</span> }
-  },
-  <span class="diff">&quot;name&quot;: &quot;Yagyū Muneyoshi&quot;,
-  &quot;occupation&quot;: &quot;忍者&quot;,
-  &quot;occupation_en&quot;: &quot;Ninja&quot;,
-  &quot;occupation_cs&quot;: &quot;Nindža&quot;,</span>
-  ...
-}
-</pre>
-</div>
-<p>
-The
-example
-above
-would
-associate
-<em>
-忍者
-</em>
-with
-the
-specified
-default
-language
-code
-<code>
-ja
-</code>,
-<em>
-Ninja
-</em>
-with
-the
-language
-code
-<code>
-en
-</code>,
-and
-<em>
-Nindža
-</em>
-with
-the
-language
-code
-<code>
-cs
-</code>.
-The
-value
-of
-<code>
-name
-</code>,
-<em>
-Yagyū
-Muneyoshi
-</em>
-wouldn't
-be
-associated
-with
-any
-language
-code
-since
-<code>
[email protected]
-</code>
-was
-reset
-to
-<a class="tref internalDFN" title="null" href="#dfn-null">
-null
-</a>
-in
-the
-expanded
-term
-definition.
-</p>
-<p>
-Expanded
-terms
-<em class="rfc2119" title="may">
-may
-</em>
-also
-be
-defined
-using
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-IRIs
-</a>
-or
-<a class="tref internalDFN" title="absolute_iri" href="#dfn-absolute_iri">
-absolute
-IRIs
-</a>
-as
-keys.
-If
-the
-definition
-does
-not
-include
-an
-<code>
[email protected]
-</code>
-key,
-the
-expanded
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-is
-determined
-by
-performing
-expansion
-of
-the
-key
-within
-the
-current
-active
-context.
-This
-mechanism
-is
-mainly
-used
-to
-associate
-type
-or
-language
-information
-with
-a
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-or
-an
-<a class="tref internalDFN" title="absolute_iri" href="#dfn-absolute_iri">
-absolute
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>.
-</p>
-<div class="note">
-<div class="note-title">
-<span>
-Note
-</span>
-</div>
-<p class="">
-While
-it
-is
-possible
-to
-define
-a
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>,
-or
-an
-absolute
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-to
-expand
-to
-some
-other
-unrelated
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-(for
-example,
-<code>
-foaf:name
-</code>
-expanding
-to
-<code>
-http://example.org/unrelated#species
-</code>
-),
-such
-usage
-is
-strongly
-discouraged.
-</p>
-</div>
-</section>
-<section id="type-coercion">
-<h3>
-<span class="secno">
-4.6
-</span>
-Type
-Coercion
-</h3>
-<p>
-JSON-LD
-supports
-the
-coercion
-of
-values
-to
-particular
-data
-types.
-Type
-<dfn title="coercion" id="dfn-coercion">
-coercion
-</dfn>
-allows
-someone
-deploying
-JSON-LD
-to
-coerce
-the
-incoming
-or
-outgoing
-values
-to
-the
-proper
-data
-type
-based
-on
-a
-mapping
-of
-data
-type
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-s
-to
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-s.
-Using
-type
-coercion,
-value
-representation
-is
-preserved
-without
-requiring
-the
-data
-type
-to
-be
-specified
-with
-each
-piece
-of
-data.
-</p>
-<p>
-Type
-coercion
-is
-specified
-within
-an
-<a href="#expanded-term-definition" class="sec-ref">
-<span class="secno">
-4.5
-</span>
-<span class="sec-title">
-Expanded
-Term
-Definition
-</span>
-</a>
-using
-the
-<code>
[email protected]
-</code>
-key.
-The
-value
-of
-this
-key
-represents
-a
-type
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-and
-<em class="rfc2119" title="must">
-must
-</em>
-take
-the
-form
-of
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>,
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>,
-<a class="tref internalDFN" title="absolute_iri" href="#dfn-absolute_iri">
-absolute
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>,
-or
-the
-<a class="tref internalDFN" title="keyword" href="#dfn-keyword">
-keyword
-</a>
-<code>
[email protected]
-</code>.
-Specifying
-<code>
[email protected]
-</code>
-indicates
-that
-within
-the
-body
-of
-a
-JSON-LD
-document,
-a
-string
-value
-of
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-coerced
-to
-<code>
[email protected]
-</code>
-is
-to
-be
-interpreted
-as
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>.
-</p>
-<p>
-<a class="tref internalDFN" title="term" href="#dfn-term">
-Terms
-</a>
-or
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-IRIs
-</a>
-used
-as
-the
-value
-of
-a
-<code>
[email protected]
-</code>
-key
-<em class="rfc2119" title="may">
-may
-</em>
-be
-defined
-within
-the
-same
-context.
-This
-means
-that
-one
-may
-specify
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-like
-<code>
-xsd
-</code>
-and
-then
-use
-<code>
-xsd:integer
-</code>
-within
-the
-same
-context
-definition
--
-the
-JSON-LD
-processor
-will
-be
-able
-to
-determine
-the
-proper
-expansion
-for
-<code>
-xsd:integer
-</code>.
-</p>
-<p>
-The
-example
-below
-demonstrates
-how
-a
-JSON-LD
-author
-can
-coerce
-values
-to
-<a class="tref internalDFN" title="typed_value" href="#dfn-typed_value">
-typed
-value
-</a>
-s,
-IRIs
-and
-lists.
-</p>
-<div class="example"><div class="example-title"><span>Example 32</span>: Expanded term definition with types</div><pre class="example">{
-  &quot;@context&quot;:
-  {
-    &quot;xsd&quot;: &quot;http://www.w3.org/2001/XMLSchema#&quot;,
-    &quot;name&quot;: &quot;http://xmlns.com/foaf/0.1/name&quot;,
-    &quot;age&quot;:
-    <span class="diff">{
-      &quot;@id&quot;: &quot;http://xmlns.com/foaf/0.1/age&quot;,
-      &quot;@type&quot;: &quot;xsd:integer&quot;
-    }</span>,
-    &quot;homepage&quot;:
-    <span class="diff">{
-      &quot;@id&quot;: &quot;http://xmlns.com/foaf/0.1/homepage&quot;,
-      &quot;@type&quot;: &quot;@id&quot;,
-      &quot;@container&quot;: &quot;@list&quot;
-    }</span>
-  },
-  &quot;name&quot;: &quot;John Smith&quot;,
-  &quot;age&quot;: <span class="diff">&quot;41&quot;</span>,
-  &quot;homepage&quot;:
-  <span class="diff">[
-    &quot;http://personal.example.org/&quot;,
-    &quot;http://work.example.com/jsmith/&quot;
-  ]</span>
-}
-</pre>
-</div>
-<p>
-The
-example
-above
-would
-generate
-the
-following
-Turtle:
-</p>
-<div class="example"><div class="example-title"><span>Example 33</span></div><pre class="example">@prefix xsd: &lt;http://www.w3.org/2001/XMLSchema#&gt; .
-[ foaf:name &quot;John Smith&quot;;
-  foaf:age  &quot;41&quot;^^xsd:integer;
-  foaf:homepage ( &lt;http://personal.example.org/&gt; &lt;http://work.example.com/jsmith/&gt; )
-]
-.
-</pre>
-</div>
-<p>
-Terms
-may
-also
-be
-defined
-using
-<a class="tref internalDFN" title="absolute_iri" href="#dfn-absolute_iri">
-absolute
-IRIs
-</a>
-or
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-IRIs
-</a>.
-This
-allows
-coercion
-rules
-to
-be
-applied
-to
-keys
-which
-are
-not
-represented
-as
-a
-simple
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>.
-For
-example:
-</p>
-<div class="example"><div class="example-title"><span>Example 34</span>: Term definition with absolute IRI</div><pre class="example">{
-  &quot;@context&quot;:
-  {
-    <span class="diff">&quot;foaf&quot;: &quot;http://xmlns.com/foaf/0.1/&quot;</span>,
-    &quot;<span class="diff">foaf:age</span>&quot;:
-    {
-      &quot;@type&quot;: &quot;xsd:integer&quot;
-    },
-    &quot;<span class="diff">foaf:homepage</span>&quot;:
-    <span class="diff">{
-      &quot;@type&quot;: &quot;@id&quot;
-    }</span>
-  },
-  &quot;foaf:name&quot;: &quot;John Smith&quot;,
-  &quot;foaf:age&quot;: <span class="diff">&quot;41&quot;</span>,
-  &quot;foaf:homepage&quot;:
-  <span class="diff">[
-    &quot;http://personal.example.org/&quot;,
-    &quot;http://work.example.com/jsmith/&quot;
-  ]</span>
-}
-</pre>
-</div>
-<p>
-In
-this
-case
-the
-<code>
[email protected]
-</code>
-definition
-is
-optional,
-but
-if
-it
-does
-exist,
-the
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-or
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-is
-treated
-as
-a
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-(not
-a
-<code>
-prefix:suffix
-</code>
-construct)
-so
-that
-the
-actual
-definition
-of
-a
-<a class="tref internalDFN" title="prefix" href="#dfn-prefix">
-prefix
-</a>
-becomes
-unnecessary.
-</p>
-<div class="note">
-<div class="note-title">
-<span>
-Note
-</span>
-</div>
-<p class="">
-Keys
-in
-the
-context
-are
-treated
-as
-<a class="tref internalDFN" title="term" href="#dfn-term">
-terms
-</a>
-for
-the
-purpose
-of
-expansion
-and
-value
-coercion.
-At
-times,
-this
-may
-result
-in
-multiple
-representations
-for
-the
-same
-expanded
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>.
-For
-example,
-one
-could
-specify
-that
-<code>
-dog
-</code>
-and
-<code>
-cat
-</code>
-both
-expanded
-to
-<code>
-http://example.com/vocab#animal
-</code>.
-Doing
-this
-could
-be
-useful
-for
-establishing
-different
-type
-coercion
-or
-language
-specification
-rules.
-It
-also
-allows
-a
-<a class="tref internalDFN" title="compact_iri" href="#dfn-compact_iri">
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-(or
-even
-an
-absolute
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-)
-to
-be
-defined
-as
-something
-else
-entirely.
-For
-example,
-one
-could
-specify
-that
-the
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-<code>
-http://example.org/zoo
-</code>
-should
-expand
-to
-<code>
-http://example.org/river
-</code>,
-but
-this
-usage
-is
-discouraged
-because
-it
-would
-lead
-to
-a
-great
-deal
-of
-confusion
-among
-developers
-attempting
-to
-understand
-the
-JSON-LD
-document.
-</p>
-</div>
-<p>
-Type
-coercion
-is
-performed
-using
-the
-unexpanded
-value
-of
-the
-key,
-which
-<em class="rfc2119" title="must">
-must
-</em>
-have
-an
-exact
-match
-for
-an
-entry
-in
-the
-<a class="tref internalDFN" title="active_context" href="#dfn-active_context">
-active
-context
-</a>.
-</p>
-</section>
-<section id="property-generators">
-<h3>
-<span class="secno">
-4.7
-</span>
-Property
-Generators
-</h3>
-<p>
-At
-times,
-an