Relocated LCWDs to proper location.
authorManu Sporny <msporny@digitalbazaar.com>
Tue, 09 Apr 2013 11:49:05 -0400
changeset 1571 2d46b94af937
parent 1570 11d49104eea9
child 1572 42e6e35c4a8e
Relocated LCWDs to proper location.
spec/WD/20130411/json-ld-api/diff-20120712.html
spec/WD/20130411/json-ld-api/index.html
spec/WD/20130411/json-ld/diff-20120712.html
spec/WD/20130411/json-ld/index.html
spec/WD/20130411/json-ld/linked-data-graph.png
spec/WD/json-ld-api/20130411/diff-20120712.html
spec/WD/json-ld-api/20130411/index.html
spec/WD/json-ld/20130411/diff-20120712.html
spec/WD/json-ld/20130411/index.html
spec/WD/json-ld/20130411/linked-data-graph.png
--- a/spec/WD/20130411/json-ld-api/diff-20120712.html	Mon Apr 08 11:44:09 2013 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,42008 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML+RDFa 1.1//EN' 'http://www.w3.org/MarkUp/DTD/xhtml-rdfa-2.dtd'>
-<html dir="ltr" xmlns="http://www.w3.org/1999/xhtml" prefix='bibo: http://purl.org/ontology/bibo/' typeof="bibo:Document">
-<head>
-<title>JSON-LD 1.0 Processing Algorithms and API</title>
-<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
-<style type="text/css">
-  .diff {
-    font-weight:bold; color:#0a3;
-  }
-  .error a {
-    color:  #ff4500;
-    border-bottom:  1px dotted #ff4500;
-    text-decoration: none;
-  }
-  .atrisk-head {
-    font-style: italic;
-  }
-</style>
-<style>
-/* --- 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><style>/* --- WEB IDL --- */
-pre.idl {
-    border-top: 1px solid #90b8de;
-    border-bottom: 1px solid #90b8de;
-    padding:    1em;
-    line-height:    120%;
-}
-
-pre.idl::before {
-    content:    "WebIDL";
-    display:    block;
-    width:      150px;
-    background: #90b8de;
-    color:  #fff;
-    font-family:    initial;
-    padding:    3px;
-    font-weight:    bold;
-    margin: -1em 0 1em -1em;
-}
-
-.idlType {
-    color:  #ff4500;
-    font-weight:    bold;
-    text-decoration:    none;
-}
-
-/*.idlModule*/
-/*.idlModuleID*/
-/*.idlInterface*/
-.idlInterfaceID, .idlDictionaryID, .idlCallbackID, .idlEnumID {
-    font-weight:    bold;
-    color:  #005a9c;
-}
-a.idlEnumItem {
-    color:  #000;
-    border-bottom:  1px dotted #ccc;
-    text-decoration: none;
-}
-
-.idlSuperclass {
-    font-style: italic;
-    color:  #005a9c;
-}
-
-/*.idlAttribute*/
-.idlAttrType, .idlFieldType, .idlMemberType {
-    color:  #005a9c;
-}
-.idlAttrName, .idlFieldName, .idlMemberName {
-    color:  #ff4500;
-}
-.idlAttrName a, .idlFieldName a, .idlMemberName a {
-    color:  #ff4500;
-    border-bottom:  1px dotted #ff4500;
-    text-decoration: none;
-}
-
-/*.idlMethod*/
-.idlMethType, .idlCallbackType {
-    color:  #005a9c;
-}
-.idlMethName {
-    color:  #ff4500;
-}
-.idlMethName a {
-    color:  #ff4500;
-    border-bottom:  1px dotted #ff4500;
-    text-decoration: none;
-}
-
-/*.idlCtor*/
-.idlCtorName {
-    color:  #ff4500;
-}
-.idlCtorName a {
-    color:  #ff4500;
-    border-bottom:  1px dotted #ff4500;
-    text-decoration: none;
-}
-
-/*.idlParam*/
-.idlParamType {
-    color:  #005a9c;
-}
-.idlParamName, .idlDefaultValue {
-    font-style: italic;
-}
-
-.extAttr {
-    color:  #666;
-}
-
-/*.idlSectionComment*/
-.idlSectionComment {
-    color: gray;
-}
-
-/*.idlConst*/
-.idlConstType {
-    color:  #005a9c;
-}
-.idlConstName {
-    color:  #ff4500;
-}
-.idlConstName a {
-    color:  #ff4500;
-    border-bottom:  1px dotted #ff4500;
-    text-decoration: none;
-}
-
-/*.idlException*/
-.idlExceptionID {
-    font-weight:    bold;
-    color:  #c00;
-}
-
-.idlTypedefID, .idlTypedefType {
-    color:  #005a9c;
-}
-
-.idlRaises, .idlRaises a.idlType, .idlRaises a.idlType code, .excName a, .excName a code {
-    color:  #c00;
-    font-weight:    normal;
-}
-
-.excName a {
-    font-family:    monospace;
-}
-
-.idlRaises a.idlType, .excName a.idlType {
-    border-bottom:  1px dotted #c00;
-}
-
-.excGetSetTrue, .excGetSetFalse, .prmNullTrue, .prmNullFalse, .prmOptTrue, .prmOptFalse {
-    width:  45px;
-    text-align: center;
-}
-.excGetSetTrue, .prmNullTrue, .prmOptTrue { color:  #0c0; }
-.excGetSetFalse, .prmNullFalse, .prmOptFalse { color:  #c00; }
-
-.idlImplements a {
-    font-weight:    bold;
-}
-
-dl.attributes, dl.methods, dl.constants, dl.constructors, dl.fields, dl.dictionary-members {
-    margin-left:    2em;
-}
-
-.attributes dt, .methods dt, .constants dt, .constructors dt, .fields dt, .dictionary-members dt {
-    font-weight:    normal;
-}
-
-.attributes dt code, .methods dt code, .constants dt code, .constructors dt code, .fields dt code, .dictionary-members dt code {
-    font-weight:    bold;
-    color:  #000;
-    font-family:    monospace;
-}
-
-.attributes dt code, .fields dt code, .dictionary-members dt code {
-    background:  #ffffd2;
-}
-
-.attributes dt .idlAttrType code, .fields dt .idlFieldType code, .dictionary-members dt .idlMemberType code {
-    color:  #005a9c;
-    background:  transparent;
-    font-family:    inherit;
-    font-weight:    normal;
-    font-style: italic;
-}
-
-.methods dt code {
-    background:  #d9e6f8;
-}
-
-.constants dt code {
-    background:  #ddffd2;
-}
-
-.constructors dt code {
-    background:  #cfc;
-}
-
-.attributes dd, .methods dd, .constants dd, .constructors dd, .fields dd, .dictionary-members dd {
-    margin-bottom:  1em;
-}
-
-table.parameters, table.exceptions {
-    border-spacing: 0;
-    border-collapse:    collapse;
-    margin: 0.5em 0;
-    width:  100%;
-}
-table.parameters { border-bottom:  1px solid #90b8de; }
-table.exceptions { border-bottom:  1px solid #deb890; }
-
-.parameters th, .exceptions th {
-    color:  #fff;
-    padding:    3px 5px;
-    text-align: left;
-    font-family:    initial;
-    font-weight:    normal;
-    text-shadow:    #666 1px 1px 0;
-}
-.parameters th { background: #90b8de; }
-.exceptions th { background: #deb890; }
-
-.parameters td, .exceptions td {
-    padding:    3px 10px;
-    border-top: 1px solid #ddd;
-    vertical-align: top;
-}
-
-.parameters tr:first-child td, .exceptions tr:first-child td {
-    border-top: none;
-}
-
-.parameters td.prmName, .exceptions td.excName, .exceptions td.excCodeName {
-    width:  100px;
-}
-
-.parameters td.prmType {
-    width:  120px;
-}
-
-table.exceptions table {
-    border-spacing: 0;
-    border-collapse:    collapse;
-    width:  100%;
-}
-</style><link rel="stylesheet" href="http://www.w3.org/StyleSheets/TR/W3C-WD" />
-<!--[if lt IE 9]><script src='http://www.w3.org/2008/site/js/html5shiv.js'></script><![endif]-->
-
-<!--[if lt IE 9]><script src='http://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
-<del class="diff-old">API
-</del>
-1.0
-<ins class="diff-new">Processing
-Algorithms
-and
-API
-</ins>
-</h1>
-<del class="diff-old">An
-Application
-Programming
-Interface
-for
-the
-JSON-LD
-Syntax
-</del>
-<h2 id="w3c-last-call-working-draft-11-april-2013">
-<abbr title="World Wide Web Consortium">
-W3C
-</abbr>
-<ins class="diff-chg">Last
-Call
-</ins>
-Working
-Draft
-<del class="diff-old">12
-July
-2012
-</del>
-<ins class="diff-chg">11
-April
-2013
-</ins>
-</h2>
-<dl>
-<dt>
-This
-version:
-</dt>
-<dd>
-<del class="diff-old">http://www.w3.org/TR/2012/WD-json-ld-api-20120712/
-</del>
-<a href="http://www.w3.org/TR/2013/WD-json-ld-api-20130411/">
-<ins class="diff-chg">http://www.w3.org/TR/2013/WD-json-ld-api-20130411/
-</ins>
-</a>
-</dd>
-<dt>
-Latest
-published
-version:
-</dt>
-<dd>
-<a href="http://www.w3.org/TR/json-ld-api/">
-http://www.w3.org/TR/json-ld-api/
-</a>
-</dd>
-<dt>
-Latest
-editor's
-draft:
-</dt>
-<dd>
-<del class="diff-old">http://dvcs.w3.org/hg/json-ld/raw-file/default/spec/latest/json-ld-api/index.html
-</del>
-<a href="http://json-ld.org/spec/latest/json-ld-api/index.html">
-<ins class="diff-chg">http://json-ld.org/spec/latest/json-ld-api/index.html
-</ins></a></dd><dt><ins class="diff-chg">
-Test
-suite:
-</ins></dt><dd><a href="http://www.w3.org/2013/json-ld-tests/"><ins class="diff-chg">
-http://www.w3.org/2013/json-ld-tests/
-</ins></a></dd><dt><ins class="diff-chg">
-Previous
-version:
-</ins></dt><dd><a href="http://www.w3.org/TR/2012/WD-json-ld-api-20120712/"><ins class="diff-chg">
-http://www.w3.org/TR/2012/WD-json-ld-api-20120712/
-</ins>
-</a>
-</dd>
-<dt>
-Editors:
-</dt>
-<dd rel="bibo:editor" inlist="">
-<span typeof="foaf:Person">
-<del class="diff-old">Manu
-Sporny
-</del>
-<a rel="foaf:homepage" property="foaf:name" content="Markus Lanthaler" href="http://www.markus-lanthaler.com/">
-<ins class="diff-chg">Markus
-Lanthaler
-</ins>
-</a>,
-<del class="diff-old">Digital
-Bazaar
-</del>
-<a rel="foaf:workplaceHomepage" href="http://www.tugraz.at/">
-<ins class="diff-chg">Graz
-University
-of
-Technology
-</ins>
-</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">
-<del class="diff-old">Dave
-Longley
-</del>
-<a rel="foaf:homepage" property="foaf:name" content="Manu Sporny" href="http://manu.sporny.org/">
-<ins class="diff-chg">Manu
-Sporny
-</ins>
-</a>,
-<a rel="foaf:workplaceHomepage" href="http://digitalbazaar.com/">
-Digital
-Bazaar
-</a>
-</span>
-</dd>
-<del class="diff-old">Markus
-Lanthaler
-,
-Graz
-University
-of
-Technology
-</del>
-<dt>
-Authors:
-</dt>
-<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">
-<del class="diff-old">Manu
-Sporny
-,
-Digital
-Bazaar
-</del>
-<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="Manu Sporny" href="http://digitalbazaar.com/">
-<ins class="diff-new">Manu
-Sporny
-</ins></a>,<a rel="foaf:workplaceHomepage" href="http://digitalbazaar.com/"><ins class="diff-new">
-Digital
-Bazaar
-</ins></a></span></dd>
-</dl>
-<p>
-This
-document
-is
-also
-available
-in
-this
-non-normative
-format:
-<a rel="alternate" href="diff-20120712.html">
-diff
-to
-previous
-version
-</a>
-</p>
-<p class="copyright">
-<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">
-Copyright
-</a>

-<del class="diff-old">2010-2012
-</del>
-<ins class="diff-chg">2010-2013
-</ins>
-<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>,
-<a href="http://ev.buaa.edu.cn/">
-<ins class="diff-new">Beihang
-</ins>
-</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" property="dcterms:abstract" datatype="" typeof="bibo:Chapter" resource="#abstract" rel="bibo:chapter">
-<h2>
-Abstract
-</h2>
-<p>
-<del class="diff-old">JSON
-[
-RFC4627
-]
-has
-proven
-to
-be
-a
-highly
-useful
-object
-serialization
-and
-messaging
-format.
-JSON-LD
-[
-JSON-LD
-]
-harmonizes
-the
-representation
-of
-Linked
-Data
-in
-JSON
-by
-outlining
-a
-common
-JSON
-representation
-format
-for
-expressing
-directed
-graphs;
-mixing
-both
-Linked
-Data
-and
-non-Linked
-Data
-in
-a
-single
-document.
-</del>
-This
-<del class="diff-old">document
-outlines
-</del>
-<ins class="diff-chg">specification
-defines
-</ins>
-an
-Application
-Programming
-Interface
-<ins class="diff-new">(API)
-</ins>
-and
-a
-set
-of
-algorithms
-for
-<del class="diff-old">programmatically
-transforming
-</del>
-<ins class="diff-chg">programmatic
-transformations
-of
-</ins>
-JSON-LD
-<del class="diff-old">documents
-in
-order
-to
-make
-them
-easier
-to
-work
-with
-in
-programming
-environments
-like
-JavaScript,
-Python,
-and
-Ruby.
-</del>
-<ins class="diff-chg">documents.
-Restructuring
-data
-according
-the
-defined
-transformations
-often
-dramatically
-simplifies
-its
-usage.
-</ins>
-</p>
-</section>
-<section id="sotd" class="introductory" typeof="bibo:Chapter" resource="#sotd" rel="bibo:chapter">
-<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">25
-</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.
-<del class="diff-old">While
-this
-is
-a
-First
-Public
-Working
-Draft
-publication,
-the
-</del>
-<ins class="diff-chg">The
-</ins>
-specification
-has
-undergone
-significant
-development,
-review,
-and
-changes
-during
-the
-course
-of
-the
-last
-<del class="diff-old">18
-months
-and
-is
-more
-mature
-than
-the
-First
-Public
-Working
-Draft
-status
-implies.
-</del>
-<ins class="diff-chg">25
-months.
-</ins>
-There
-are
-<del class="diff-old">currently
-</del>
-<ins class="diff-chg">several
-independent
-</ins>
-<a href="http://json-ld.org/#impl">
-<del class="diff-old">five
-</del>
-interoperable
-implementations
-</a>
-of
-this
-<del class="diff-old">specification.
-There
-is
-</del>
-<ins class="diff-chg">specification
-and
-</ins>
-a
-fairly
-complete
-test
-suite
-<del class="diff-old">and
-a
-live
-JSON-LD
-editor
-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.
-Issue
-1
-</del>
-<ins class="diff-chg">[
-</ins><cite>
-<a class="bibref" href="#bib-JSON-LD-TESTS">
-<ins class="diff-chg">JSON-LD-TESTS
-</ins></a>
-<del class="diff-old">It
-is
-important
-for
-readers
-to
-understand
-that
-the
-scope
-of
-this
-document
-is
-currently
-under
-debate
-and
-new
-features
-may
-be
-added
-to
-the
-specification.
-Existing
-features
-may
-be
-modified
-heavily
-or
-removed
-entirely
-from
-the
-specification
-upon
-further
-review
-and
-feedback
-from
-the
-broader
-community.
-This
-is
-a
-work
-in
-progress
-and
-publication
-as
-a
-First
-Public
-Working
-Draft
-does
-not
-require
-that
-all
-Working
-Group
-members
-agree
-on
-the
-content
-of
-the
-document.
-</del>
-</cite>
-<ins class="diff-chg">].
-</ins>
-</p>
-<p>
-This
-document
-was
-published
-by
-the
-<a href="http://www.w3.org/2011/rdf-wg/">
-RDF
-Working
-Group
-</a>
-as
-a
-<del class="diff-old">First
-Public
-</del>
-<ins class="diff-chg">Last
-Call
-</ins>
-Working
-Draft.
-This
-document
-is
-intended
-to
-become
-a
-<abbr title="World Wide Web Consortium">
-W3C
-</abbr>
-Recommendation.
-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>
-).
-<ins class="diff-new">The
-Last
-Call
-period
-ends
-11
-May
-2013.
-</ins>
-All
-<del class="diff-old">feedback
-is
-</del>
-<ins class="diff-chg">comments
-are
-</ins>
-welcome.
-</p>
-<div style="padding: 1em; margin: 1em; border: 1px solid red;">
-<p>
-<ins class="diff-new">The
-Working
-Group
-welcomes
-reports
-of
-implementations,
-sent
-to
-the
-comments
-address.
-If
-we
-gather
-sufficient
-evidence
-of
-interoperable
-implementations,
-the
-group
-may
-request
-to
-skip
-Call
-for
-Implementations
-(Candidate
-Recommendation)
-drafts
-and
-have
-the
-next
-round
-of
-publications
-be
-Proposed
-Recommendations.
-</ins></p></div>
-<p>
-Publication
-as
-a
-<ins class="diff-new">Last
-Call
-</ins>
-Working
-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
-<ins class="diff-new">is
-a
-Last
-Call
-Working
-Draft
-and
-thus
-the
-Working
-Group
-has
-determined
-that
-this
-document
-has
-satisfied
-the
-relevant
-technical
-requirements
-and
-is
-sufficiently
-stable
-to
-advance
-through
-the
-Technical
-Recommendation
-process.
-</ins></p><p><ins class="diff-new">
-This
-</ins>
-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>
-<del class="diff-old">Preface
-1.1
-Contributing
-</del>
-<ins class="diff-chg">Introduction
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#features" class="tocxref">
-<span class="secno">
-2.
-</span>
-<del class="diff-old">Introduction
-</del>
-<ins class="diff-chg">Features
-</ins>
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#expansion" class="tocxref">
-<span class="secno">
-2.1
-</span>
-Expansion
-</a>
-</li>
-<li class="tocline">
-<a href="#compaction" class="tocxref">
-<span class="secno">
-2.2
-</span>
-Compaction
-</a>
-</li>
-<li class="tocline">
-<a href="#flattening" class="tocxref">
-<span class="secno">
-2.3
-</span>
-<del class="diff-old">Conversion
-to
-and
-from
-RDF
-</del>
-<ins class="diff-chg">Flattening
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#rdf-conversion" class="tocxref">
-<span class="secno">
-2.4
-</span>
-<del class="diff-old">Framing
-and
-Normalization
-</del>
-<ins class="diff-chg">RDF
-Conversion
-</ins>
-</a>
-</li>
-</ul>
-</li>
-<li class="tocline">
-<a href="#conformance" class="tocxref">
-<span class="secno">
-3.
-</span>
-<del class="diff-old">The
-Application
-Programming
-Interface
-</del>
-<ins class="diff-chg">Conformance
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#general-terminology" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.1
-</del>
-<ins class="diff-chg">4.
-</ins>
-</span>
-General
-Terminology
-</a>
-</li>
-<li class="tocline">
-<del class="diff-old">3.2
-JsonLdProcessor
-</del>
-<a href="#algorithm-terms" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.2.1
-</del>
-<ins class="diff-chg">5.
-</ins>
-</span>
-<del class="diff-old">Methods
-</del>
-<ins class="diff-chg">Algorithm
-Terms
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#context-processing-algorithms" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.3
-</del>
-<ins class="diff-chg">6.
-</ins>
-</span>
-<del class="diff-old">Callbacks
-</del>
-<ins class="diff-chg">Context
-Processing
-Algorithms
-</ins>
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#context-processing-algorithm" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.3.1
-</del>
-<ins class="diff-chg">6.1
-</ins>
-</span>
-<del class="diff-old">JsonLdCallback
-</del>
-<ins class="diff-chg">Context
-Processing
-Algorithm
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#create-term-definition" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.3.1.1
-</del>
-<ins class="diff-chg">6.2
-</ins>
-</span>
-<del class="diff-old">Methods
-</del>
-<ins class="diff-chg">Create
-Term
-Definition
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#iri-expansion" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.3.2
-</del>
-<ins class="diff-chg">6.3
-</ins>
-</span>
-<del class="diff-old">QuadCallback
-</del>
-<del class="diff-old">3.3.2.1
-Methods
-</del>
-<abbr title="Internationalized Resource Identifier">
-<ins class="diff-chg">IRI
-</ins></abbr><ins class="diff-chg">
-Expansion
-</ins>
-</a>
-</li>
-</ul>
-</li>
-<li class="tocline">
-<a href="#expansion-algorithms" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.4
-</del>
-<ins class="diff-chg">7.
-</ins>
-</span>
-<del class="diff-old">Data
-Structures
-</del>
-<ins class="diff-chg">Expansion
-Algorithms
-</ins>
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#expansion-algorithm" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.4.1
-</del>
-<ins class="diff-chg">7.1
-</ins>
-</span>
-<del class="diff-old">URL
-</del>
-<ins class="diff-chg">Expansion
-Algorithm
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#value-expansion" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.4.2
-</del>
-<ins class="diff-chg">7.2
-</ins>
-</span>
-<del class="diff-old">JsonLdOptions
-</del>
-<ins class="diff-chg">Value
-Expansion
-</ins>
-</a>
-</li>
-</ul>
-</li>
-<li class="tocline">
-<a href="#compaction-algorithms" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.4.3
-</del>
-<ins class="diff-chg">8.
-</ins>
-</span>
-<del class="diff-old">Quad
-</del>
-<ins class="diff-chg">Compaction
-Algorithms
-</ins>
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#compaction-algorithm" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.4.3.1
-</del>
-<ins class="diff-chg">8.1
-</ins>
-</span>
-<del class="diff-old">Attributes
-</del>
-<ins class="diff-chg">Compaction
-Algorithm
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#inverse-context-creation" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.4.4
-</del>
-<ins class="diff-chg">8.2
-</ins>
-</span>
-<del class="diff-old">Node
-</del>
-<ins class="diff-chg">Inverse
-Context
-Creation
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#iri-compaction" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.4.5
-</del>
-<ins class="diff-chg">8.3
-</ins>
-</span>
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<del class="diff-old">3.4.5.1
-Attributes
-</del>
-<ins class="diff-chg">Compaction
-</ins>
-</a>
-</li>
-<del class="diff-old">3.4.6
-Blank
-Node
-</del>
-<li class="tocline">
-<a href="#term-selection" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.4.6.1
-</del>
-<ins class="diff-chg">8.4
-</ins>
-</span>
-<del class="diff-old">Attributes
-</del>
-<ins class="diff-chg">Term
-Selection
-</ins>
-</a>
-</li>
-<li class="tocline">
-<del class="diff-old">3.4.7
-Literal
-</del>
-<a href="#value-compaction" class="tocxref">
-<span class="secno">
-<del class="diff-old">3.4.7.1
-</del>
-<ins class="diff-chg">8.5
-</ins>
-</span>
-<del class="diff-old">Attributes
-</del>
-<ins class="diff-chg">Value
-Compaction
-</ins>
-</a>
-</li>
-</ul>
-</li>
-<li class="tocline">
-<a href="#flattening-algorithms" class="tocxref">
-<span class="secno">
-<del class="diff-old">4.
-</del>
-<ins class="diff-chg">9.
-</ins>
-</span>
-<ins class="diff-new">Flattening
-</ins>
-Algorithms
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#flattening-algorithm" class="tocxref">
-<span class="secno">
-<del class="diff-old">4.1
-</del>
-<ins class="diff-chg">9.1
-</ins>
-</span>
-<ins class="diff-new">Flattening
-</ins>
-Algorithm
-<del class="diff-old">Terms
-</del>
-</a>
-</li>
-<li class="tocline">
-<a href="#node-map-generation" class="tocxref">
-<span class="secno">
-<del class="diff-old">4.2
-</del>
-<ins class="diff-chg">9.2
-</ins>
-</span>
-<del class="diff-old">Context
-Processing
-</del>
-<ins class="diff-chg">Node
-Map
-Generation
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#generate-blank-node-identifier" class="tocxref">
-<span class="secno">
-<del class="diff-old">4.3
-</del>
-<ins class="diff-chg">9.3
-</ins>
-</span>
-<del class="diff-old">IRI
-Expansion
-</del>
-<ins class="diff-chg">Generate
-Blank
-Node
-Identifier
-</ins>
-</a>
-</li>
-<del class="diff-old">4.4
-IRI
-Compaction
-</del>
-</ul>
-</li>
-<li class="tocline">
-<a href="#rdf-conversion-algorithms" class="tocxref">
-<span class="secno">
-<del class="diff-old">4.4.1
-</del>
-<ins class="diff-chg">10.
-</ins>
-</span>
-<del class="diff-old">IRI
-Compaction
-Algorithm
-</del>
-<ins class="diff-chg">RDF
-Conversion
-Algorithms
-</ins>
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#convert-to-rdf-algorithm" class="tocxref">
-<span class="secno">
-<del class="diff-old">4.4.2
-</del>
-<ins class="diff-chg">10.1
-</ins>
-</span>
-<del class="diff-old">Term
-Rank
-</del>
-<ins class="diff-chg">Convert
-to
-RDF
-</ins>
-Algorithm
-</a>
-</li>
-<li class="tocline">
-<a href="#object-to-rdf-conversion" class="tocxref">
-<span class="secno">
-<del class="diff-old">4.5
-</del>
-<ins class="diff-chg">10.2
-</ins>
-</span>
-<del class="diff-old">Value
-Expansion
-</del>
-<ins class="diff-chg">Object
-to
-RDF
-Conversion
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#list-to-rdf-conversion" class="tocxref">
-<span class="secno">
-<del class="diff-old">4.6
-</del>
-<ins class="diff-chg">10.3
-</ins>
-</span>
-<del class="diff-old">Value
-Compaction
-</del>
-<ins class="diff-chg">List
-to
-RDF
-Conversion
-</ins>
-</a>
-</li>
-<li class="tocline">
-<del class="diff-old">4.7
-Expansion
-</del>
-<a href="#convert-from-rdf-algorithm" class="tocxref">
-<span class="secno">
-<del class="diff-old">4.7.1
-</del>
-<ins class="diff-chg">10.4
-</ins>
-</span>
-<del class="diff-old">Expansion
-</del>
-<ins class="diff-chg">Convert
-from
-RDF
-</ins>
-Algorithm
-</a>
-</li>
-<li class="tocline">
-<a href="#rdf-to-object-conversion" class="tocxref">
-<span class="secno">
-<del class="diff-old">4.8
-</del>
-<ins class="diff-chg">10.5
-</ins>
-</span>
-<del class="diff-old">Compaction
-</del>
-<ins class="diff-chg">RDF
-to
-Object
-Conversion
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#data-round-tripping" class="tocxref">
-<span class="secno">
-<del class="diff-old">4.8.1
-</del>
-<ins class="diff-chg">10.6
-</ins>
-</span>
-<del class="diff-old">Compaction
-Algorithm
-</del>
-<ins class="diff-chg">Data
-Round
-Tripping
-</ins>
-</a>
-</li>
-</ul>
-</li>
-<li class="tocline">
-<a href="#the-application-programming-interface" class="tocxref">
-<span class="secno">
-<del class="diff-old">4.9
-</del>
-<ins class="diff-chg">11.
-</ins>
-</span>
-<del class="diff-old">RDF
-Conversion
-</del>
-<ins class="diff-chg">The
-Application
-Programming
-Interface
-</ins>
-</a>
-<ul class="toc">
-<li class="tocline">
-<del class="diff-old">4.9.1
-Overview
-4.9.2
-Parsing
-Examples
-</del>
-<a href="#the-jsonldprocessor-interface" class="tocxref">
-<span class="secno">
-<del class="diff-old">4.9.3
-</del>
-<ins class="diff-chg">11.1
-</ins>
-</span>
-<del class="diff-old">Convert
-to
-RDF
-Algorithm
-</del>
-<ins class="diff-chg">The
-</ins><span class="formerLink">
-<code>
-<ins class="diff-chg">JsonLdProcessor
-</ins></code>
-<del class="diff-old">4.9.4
-</del>
-</span>
-<del class="diff-old">List
-Conversion
-</del>
-<ins class="diff-chg">Interface
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#callbacks" class="tocxref">
-<span class="secno">
-<del class="diff-old">4.9.5
-</del>
-<ins class="diff-chg">11.2
-</ins>
-</span>
-<del class="diff-old">Convert
-from
-RDF
-Algorithm
-</del>
-<ins class="diff-chg">Callbacks
-</ins>
-</a>
-</li>
-<li class="tocline">
-<a href="#data-structures" class="tocxref">
-<span class="secno">
-<del class="diff-old">5.
-</del>
-<ins class="diff-chg">11.3
-</ins>
-</span>
-Data
-<del class="diff-old">Round
-Tripping
-</del>
-<ins class="diff-chg">Structures
-</ins>
-</a>
-</li>
-<del class="diff-old">A.
-Initial
-Context
-</del>
-</ul>
-</li>
-<li class="tocline">
-<a href="#acknowledgements" class="tocxref">
-<span class="secno">
-<del class="diff-old">B.
-</del>
-<ins class="diff-chg">A.
-</ins>
-</span>
-Acknowledgements
-</a>
-</li>
-<li class="tocline">
-<a href="#references" class="tocxref">
-<span class="secno">
-<del class="diff-old">C.
-</del>
-<ins class="diff-chg">B.
-</ins>
-</span>
-References
-</a>
-<ul class="toc">
-<li class="tocline">
-<a href="#normative-references" class="tocxref">
-<span class="secno">
-<del class="diff-old">C.1
-</del>
-<ins class="diff-chg">B.1
-</ins>
-</span>
-Normative
-references
-</a>
-</li>
-<li class="tocline">
-<a href="#informative-references" class="tocxref">
-<span class="secno">
-<del class="diff-old">C.2
-</del>
-<ins class="diff-chg">B.2
-</ins>
-</span>
-Informative
-references
-</a>
-</li>
-</ul>
-</li>
-</ul>
-</section>
-<section class="informative" id="introduction">
-<h2>
-<span class="secno">
-1.
-</span>
-<del class="diff-old">Preface
-</del>
-<ins class="diff-chg">Introduction
-</ins>
-</h2>
-<p>
-<em>
-<ins class="diff-new">This
-section
-is
-non-normative.
-</ins></em></p>
-<p>
-This
-document
-is
-a
-detailed
-specification
-for
-an
-Application
-Programming
-Interface
-for
-the
-JSON-LD
-<del class="diff-old">Syntax.
-</del>
-<ins class="diff-chg">syntax.
-</ins>
-The
-document
-is
-primarily
-intended
-for
-the
-following
-audiences:
-</p>
-<ul>
-<li>
-<ins class="diff-new">Developers
-who
-want
-an
-overview
-of
-the
-JSON-LD
-API.
-</ins></li><li>
-Web
-authors
-and
-developers
-<del class="diff-old">that
-</del>
-<ins class="diff-chg">who
-</ins>
-want
-a
-very
-detailed
-view
-of
-how
-a
-<a class="tref internalDFN" title="json-ld-processor" href="#dfn-json-ld-processor">
-<ins class="diff-new">JSON-LD
-Processor
-</ins></a><ins class="diff-new">
-or
-a
-</ins><a class="tref internalDFN" title="json-ld-api-implementation" href="#dfn-json-ld-api-implementation">
-JSON-LD
-<del class="diff-old">processor
-and
-the
-</del>
-API
-<ins class="diff-new">Implementation
-</ins></a>
-operates.
-</li>
-<li>
-Software
-developers
-<del class="diff-old">that
-</del>
-<ins class="diff-chg">who
-</ins>
-want
-to
-implement
-<del class="diff-old">processors
-and
-APIs
-for
-JSON-LD.
-</del>
-<ins class="diff-chg">the
-algorithms
-to
-transform
-JSON-LD
-documents.
-</ins>
-</li>
-</ul>
-<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>
-].
-You
-must
-also
-understand
-the
-JSON-LD
-<del class="diff-old">Syntax
-</del>
-<ins class="diff-chg">syntax
-defined
-in
-</ins>
-[
-<cite>
-<a class="bibref" href="#bib-JSON-LD">
-JSON-LD
-</a>
-</cite>
-],
-which
-is
-the
-base
-syntax
-used
-by
-all
-of
-the
-algorithms
-in
-this
-document.
-To
-understand
-the
-API
-and
-how
-it
-is
-intended
-to
-operate
-in
-a
-programming
-environment,
-it
-is
-useful
-to
-have
-working
-knowledge
-of
-the
-JavaScript
-programming
-language
-[
-<cite>
-<a class="bibref" href="#bib-ECMA-262">
-ECMA-262
-</a>
-</cite>
-]
-and
-WebIDL
-[
-<cite>
-<a class="bibref" href="#bib-WEBIDL">
-WEBIDL
-</a>
-</cite>
-].
-To
-understand
-how
-JSON-LD
-maps
-to
-RDF,
-it
-is
-helpful
-to
-be
-familiar
-with
-the
-basic
-RDF
-concepts
-[
-<cite>
-<del class="diff-old">RDF-CONCEPTS
-</del>
-<a class="bibref" href="#bib-RDF11-CONCEPTS">
-<ins class="diff-chg">RDF11-CONCEPTS
-</ins>
-</a>
-</cite>
-].
-</p>
-</section>
-<section class="informative" id="features">
-<h2>
-<span class="secno">
-<del class="diff-old">1.1
-</del>
-<ins class="diff-chg">2.
-</ins>
-</span>
-<del class="diff-old">Contributing
-There
-are
-a
-number
-of
-ways
-that
-one
-may
-participate
-in
-the
-development
-of
-this
-specification:
-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:
[email protected]
-Ad-hoc
-technical
-discussion
-primarily
-occurs
-on
-the
-public
-community
-mailing
-list:
[email protected]
-</del>
-<ins class="diff-chg">Features
-</ins></h2>
-<del class="diff-old">Public
-JSON-LD
-Community
-Group
-teleconferences
-are
-held
-on
-Tuesdays
-at
-1500UTC
-every
-week.
-RDF
-Working
-Group
-teleconferences
-are
-held
-on
-Wednesdays
-at
-1500UTC
-every
-week.
-Participation
-is
-limited
-to
-RDF
-Working
-Group
-members.
-Specification
-bugs
-and
-issues
-should
-be
-reported
-in
-the
-issue
-tracker
-if
-you
-do
-not
-want
-to
-send
-an
-e-mail
-to
-the
-public-rdf-comments
-mailing
-list.
-</del>
-<p>
-<del class="diff-old">Source
-code
-for
-the
-specification
-can
-be
-found
-on
-Github.
-The
-#json-ld
-IRC
-channel
-</del>
-<em>
-<ins class="diff-chg">This
-section
-</ins>
-is
-<del class="diff-old">available
-for
-real-time
-discussion
-on
-irc.freenode.net.
-</del>
-<ins class="diff-chg">non-normative.
-</ins></em>
-<del class="diff-old">2.
-Introduction
-</del>
-</p>
-<p>
-The
-JSON-LD
-Syntax
-specification
-[
-<cite>
-<a class="bibref" href="#bib-JSON-LD">
-JSON-LD
-</a>
-</cite>
-]
-<del class="diff-old">outlines
-</del>
-<ins class="diff-chg">defines
-</ins>
-a
-<del class="diff-old">language
-that
-may
-be
-used
-</del>
-<ins class="diff-chg">syntax
-</ins>
-to
-express
-Linked
-Data
-in
-JSON.
-<del class="diff-old">Often,
-</del>
-<ins class="diff-chg">Because
-there
-is
-more
-than
-one
-way
-to
-express
-Linked
-Data
-using
-this
-syntax,
-</ins>
-it
-is
-<ins class="diff-new">often
-</ins>
-useful
-to
-be
-able
-to
-transform
-JSON-LD
-documents
-so
-that
-they
-may
-be
-<ins class="diff-new">more
-</ins>
-easily
-<del class="diff-old">processed
-</del>
-<ins class="diff-chg">consumed
-by
-specific
-applications.
-</ins></p><p><ins class="diff-chg">
-JSON-LD
-uses
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-contexts
-</ins></a><ins class="diff-chg">
-to
-allow
-Linked
-Data
-to
-be
-expressed
-</ins>
-in
-a
-<del class="diff-old">programming
-environment
-like
-JavaScript,
-Python
-</del>
-<ins class="diff-chg">way
-that
-is
-specifically
-tailored
-to
-a
-particular
-person
-</ins>
-or
-<del class="diff-old">Ruby.
-</del>
-<ins class="diff-chg">application.
-By
-providing
-a
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a>,<ins class="diff-chg">
-JSON
-data
-can
-be
-expressed
-in
-a
-way
-that
-is
-a
-natural
-fit
-for
-a
-particular
-person
-or
-application
-whilst
-also
-indicating
-how
-the
-data
-should
-be
-understood
-at
-a
-global
-scale.
-In
-order
-for
-people
-or
-applications
-to
-share
-data
-that
-was
-created
-using
-a
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a><ins class="diff-chg">
-that
-is
-different
-from
-their
-own,
-a
-JSON-LD
-processor
-must
-be
-able
-to
-transform
-a
-document
-from
-one
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a><ins class="diff-chg">
-to
-another.
-Instead
-of
-requiring
-JSON-LD
-processors
-to
-write
-specific
-code
-for
-every
-imaginable
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a><ins class="diff-chg">
-switching
-scenario,
-it
-is
-much
-easier
-to
-specify
-a
-single
-algorithm
-that
-can
-remove
-any
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a>.<ins class="diff-chg">
-Similarly,
-another
-algorithm
-can
-be
-specified
-to
-subsequently
-apply
-any
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a>.<ins class="diff-chg">
-These
-two
-algorithms
-represent
-the
-most
-basic
-transformations
-of
-JSON-LD
-documents.
-They
-are
-referred
-to
-as
-</ins><a class="tref internalDFN" title="expansion" href="#dfn-expansion"><ins class="diff-chg">
-expansion
-</ins></a><ins class="diff-chg">
-and
-</ins><a class="tref internalDFN" title="compaction" href="#dfn-compaction"><ins class="diff-chg">
-compaction
-</ins></a>,<ins class="diff-chg">
-respectively.
-</ins>
-</p>
-<p>
-There
-are
-<del class="diff-old">three
-</del>
-<ins class="diff-chg">four
-</ins>
-major
-types
-of
-transformation
-that
-are
-discussed
-in
-this
-<del class="diff-old">document;
-compaction,
-</del>
-<ins class="diff-chg">document:
-</ins>
-expansion,
-<ins class="diff-new">compaction,
-flattening,
-</ins>
-and
-RDF
-conversion.
-</p>
-<section class="informative" id="expansion">
-<h3>
-<span class="secno">
-2.1
-</span>
-Expansion
-</h3>
-<p>
-<del class="diff-old">Software
-algorithms
-are
-easiest
-to
-write
-when
-the
-data
-</del>
-<em>
-<ins class="diff-chg">This
-section
-is
-non-normative.
-</ins></em></p><p><ins class="diff-chg">
-The
-algorithm
-</ins>
-that
-<del class="diff-old">they
-are
-processing
-have
-</del>
-<ins class="diff-chg">removes
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a><ins class="diff-chg">
-is
-called
-</ins><dfn title="expansion" id="dfn-expansion"><ins class="diff-chg">
-expansion
-</ins></dfn>.<ins class="diff-chg">
-Before
-performing
-any
-other
-transformations
-on
-</ins>
-a
-<del class="diff-old">regular
-form.
-Since
-information
-can
-be
-represented
-by
-</del>
-JSON-LD
-<del class="diff-old">in
-a
-variety
-of
-different
-ways,
-transforming
-all
-</del>
-<ins class="diff-chg">document,
-it
-is
-easiest
-to
-remove
-any
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a><ins class="diff-chg">
-from
-it
-and
-to
-make
-data
-structures
-more
-regular.
-</ins></p><p><ins class="diff-chg">
-To
-get
-an
-idea
-</ins>
-of
-<del class="diff-old">these
-methods
-into
-a
-uniform
-structure
-allows
-</del>
-<ins class="diff-chg">how
-context
-and
-data
-structuring
-affects
-</ins>
-the
-<del class="diff-old">developer
-to
-simplify
-their
-processing
-code.
-For
-example,
-note
-</del>
-<ins class="diff-chg">same
-data,
-here
-is
-an
-example
-of
-JSON-LD
-</ins>
-that
-<del class="diff-old">the
-following
-input
-</del>
-uses
-only
-<a class="tref internalDFN" title="term" href="#dfn-term">
-<del class="diff-old">term
-</del>
-<ins class="diff-chg">terms
-</ins>
-</a>
-<del class="diff-old">s
-</del>
-and
-is
-fairly
-compact:
-</p>
-<del class="diff-old">  var input1 = {
-  &quot;@context&quot;: &quot;http://json-ld.org/contexts/person.jsonld&quot;
-  &quot;name&quot;: &quot;Manu Sporny&quot;,
-  &quot;homepage&quot;: &quot;http://manu.sporny.org/&quot;
-</del>
-    <div class="example"><div class="example-title"><span>Example 1</span>: Sample JSON-LD document</div><pre class="example">{
-<ins class="diff-chg">  &quot;@context&quot;: {
-    &quot;name&quot;: &quot;http://xmlns.com/foaf/0.1/name&quot;,
-    &quot;homepage&quot;: {
-      &quot;@id&quot;: &quot;http://xmlns.com/foaf/0.1/homepage&quot;,
-      &quot;@type&quot;: &quot;@id&quot;
-    }
-  },
-  &quot;@id&quot;: &quot;http://me.markus-lanthaler.com/&quot;,
-  &quot;name&quot;: &quot;Markus Lanthaler&quot;,
-  &quot;homepage&quot;: &quot;http://www.markus-lanthaler.com/&quot;
-</ins>
-}
-</pre>
-</div>
-<p>
-The
-next
-input
-example
-uses
-one
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-to
-express
-a
-<del class="diff-old">property,
-</del>
-<ins class="diff-chg">property
-and
-an
-</ins><a class="tref internalDFN" title="array" href="#dfn-array"><ins class="diff-chg">
-array
-</ins></a><ins class="diff-chg">
-to
-encapsulate
-another,
-</ins>
-but
-leaves
-the
-rest
-of
-the
-information
-untouched.
-</p>
-<del class="diff-old">  var input2 = {
-  &quot;@context&quot;: &quot;http://json-ld.org/contexts/person.jsonld&quot;
-  &quot;&quot;: &quot;Manu Sporny&quot;,
-  &quot;homepage&quot;: &quot;http://manu.sporny.org/&quot;
-</del>
-    <div class="example"><div class="example-title"><span>Example 2</span>: Sample JSON-LD document using an IRI instead of a term to express a property</div><pre class="example">{
-<ins class="diff-chg">  &quot;@context&quot;: {
-</ins>    <span class="diff">&quot;website&quot;: &quot;http://xmlns.com/foaf/0.1/homepage&quot;</span><ins class="diff-chg">
-  },
-  &quot;@id&quot;: &quot;http://me.markus-lanthaler.com/&quot;,
-  &quot;<span class="diff">http://xmlns.com/foaf/0.1/name</span>&quot;: &quot;Markus Lanthaler&quot;,
-</ins>  <span class="diff">&quot;website&quot;</span>: <span class="diff">{ &quot;@id&quot;:</span> &quot;http://www.markus-lanthaler.com/&quot; <span class="diff">}</span>
-}
-</pre>
-</div>
-<p>
-<del class="diff-old">While
-</del>
-<ins class="diff-chg">Note
-that
-</ins>
-both
-inputs
-are
-valid
-<del class="diff-old">JSON-LD,
-writing
-a
-program
-to
-handle
-every
-permutation
-of
-possible
-inputs
-can
-be
-difficult,
-especially
-when
-</del>
-<ins class="diff-chg">JSON-LD
-and
-both
-represent
-</ins>
-the
-<del class="diff-old">incoming
-</del>
-<ins class="diff-chg">same
-information.
-The
-difference
-is
-in
-their
-</ins><a class="tref internalDFN" title="context" href="#dfn-context">
-context
-<del class="diff-old">could
-change
-as
-well.
-To
-</del>
-</a>
-<ins class="diff-chg">information
-and
-in
-the
-data
-structures
-used.
-A
-JSON-LD
-processor
-can
-remove
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a><ins class="diff-chg">
-and
-</ins>
-ensure
-that
-the
-data
-<del class="diff-old">can
-be
-given
-a
-</del>
-<ins class="diff-chg">is
-</ins>
-more
-<del class="diff-old">uniform
-structure,
-JSON-LD
-introduces
-the
-notion
-of
-expansion.
-</del>
-<ins class="diff-chg">regular
-by
-employing
-</ins><a class="tref internalDFN" title="expansion" href="#dfn-expansion"><ins class="diff-chg">
-expansion
-</ins></a>.</p><p><a class="tref internalDFN" title="expansion" href="#dfn-expansion">
-Expansion
-<del class="diff-old">performs
-</del>
-</a>
-<ins class="diff-chg">has
-</ins>
-two
-important
-<del class="diff-old">operations.
-The
-first
-is
-to
-expand
-</del>
-<ins class="diff-chg">goals:
-removing
-any
-contextual
-information
-from
-the
-document,
-and
-ensuring
-</ins>
-all
-values
-<del class="diff-old">that
-</del>
-are
-<del class="diff-old">IRI
-s
-to
-their
-fully
-expanded
-</del>
-<ins class="diff-chg">represented
-in
-a
-regular
-</ins>
-form.
-<del class="diff-old">The
-second
-is
-</del>
-<ins class="diff-chg">These
-goals
-are
-accomplished
-by
-expanding
-all
-properties
-</ins>
-to
-<del class="diff-old">express
-</del>
-<a class="tref internalDFN" title="absolute-iri" href="#dfn-absolute-iri">
-<ins class="diff-chg">absolute
-IRIs
-</ins></a><ins class="diff-chg">
-and
-by
-expressing
-</ins>
-all
-values
-in
-<a class="tref internalDFN" title="array" href="#dfn-array">
-<ins class="diff-chg">arrays
-</ins></a><ins class="diff-chg">
-in
-</ins><a class="tref internalDFN" title="expanded-form" href="#dfn-expanded-form">
-expanded
-form
-<del class="diff-old">.
-To
-transform
-both
-inputs
-above
-to
-</del>
-</a>.
-<a class="tref internalDFN" title="expanded-form" href="#dfn-expanded-form">
-<ins class="diff-chg">Expanded
-form
-</ins></a><ins class="diff-chg">
-is
-</ins>
-the
-<del class="diff-old">same
-representation,
-</del>
-<ins class="diff-chg">most
-verbose
-and
-regular
-way
-of
-expressing
-of
-values
-in
-JSON-LD;
-all
-contextual
-information
-from
-</ins>
-the
-<del class="diff-old">developer
-could
-do
-</del>
-<ins class="diff-chg">document
-is
-instead
-stored
-locally
-with
-each
-value.
-Running
-</ins>
-the
-<del class="diff-old">following:
-  function expansionCallback(output) {
-   console.log(output);
-}
-</del>
-<a href="#expansion-algorithm">
-<ins class="diff-chg">Expansion
-algorithm
-</ins></a><ins class="diff-chg">
-(
-</ins><code class="idlMemberName">
-<del class="diff-old">// the second parameter is 'null' because the developer does not wish to
-// inject another context value
-jsonld.expand(input1, null, expansionCallback);
-jsonld.expand(input2,
-null,
-expansionCallback);
-</del>
-<a href="#widl-JsonLdProcessor-expand-void-JsonLdInput-input-JsonLdCallback-callback-JsonLdOptions-options">
-<ins class="diff-chg">expand
-</ins></a>
-<del class="diff-old">The
-output
-for
-both
-calls
-</del>
-</code>
-<ins class="diff-chg">operation)
-against
-the
-</ins>
-above
-<del class="diff-old">will
-be:
-</del>
-<ins class="diff-chg">examples
-results
-in
-the
-following
-output:
-</ins>
-</p>
-<del class="diff-old">  [{
-  &quot;http://xmlns.com/foaf/0.1/name&quot;: [{
-    &quot;@value&quot;: &quot;Manu Sporny&quot;
-  }],
-  &quot;http://xmlns.com/foaf/0.1/homepage&quot;: [{
-    &quot;@id&quot;: &quot;http://manu.sporny.org/&quot;
-  }]
-}]
-</del>
-    <div class="example"><div class="example-title"><span>Example 3</span>: Expanded sample document</div><pre class="example">[
-<ins class="diff-chg">  {
-    &quot;@id&quot;: &quot;http://me.markus-lanthaler.com/&quot;,
-    &quot;http://xmlns.com/foaf/0.1/name&quot;: [
-      { &quot;@value&quot;: &quot;Markus Lanthaler&quot; }
-    ],
-    &quot;http://xmlns.com/foaf/0.1/homepage&quot;: [
-      { &quot;@id&quot;: &quot;http://www.markus-lanthaler.com/&quot; }
-    ]
-  }
-]
-</ins>
-</pre>
-</div>
-<p>
-Note
-that
-in
-the
-<del class="diff-old">example
-above;
-</del>
-<ins class="diff-chg">output
-above
-</ins>
-all
-<a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>
-definitions
-have
-been
-removed,
-all
-<a class="tref internalDFN" title="term" href="#dfn-term">
-<del class="diff-old">term
-</del>
-<ins class="diff-chg">terms
-</ins>
-</a>
-and
-<del class="diff-old">prefixes
-</del>
-<a class="tref internalDFN" title="compact-iri" href="#dfn-compact-iri">
-<ins class="diff-chg">compact
-IRIs
-</ins></a>
-have
-been
-expanded
-to
-<del class="diff-old">full
-IRIs,
-</del>
-<ins class="diff-chg">absolute
-</ins><a class="tref internalDFN" title="iri" href="#dfn-iri"><ins class="diff-chg">
-IRIs
-</ins></a>,
-and
-all
-<del class="diff-old">literal
-</del>
-<a class="tref internalDFN" title="json-ld-value" href="#dfn-json-ld-value">
-<ins class="diff-chg">JSON-LD
-values
-</ins>
-</a>
-<del class="diff-old">s
-</del>
-are
-expressed
-in
-<a class="tref internalDFN" title="array" href="#dfn-array">
-<ins class="diff-chg">arrays
-</ins></a><ins class="diff-chg">
-in
-</ins><a class="tref internalDFN" title="expanded-form" href="#dfn-expanded-form">
-expanded
-form
-</a>.
-While
-the
-output
-is
-more
-<ins class="diff-new">verbose
-and
-</ins>
-difficult
-for
-a
-human
-to
-read,
-it
-<del class="diff-old">is
-easier
-for
-</del>
-<ins class="diff-chg">establishes
-</ins>
-a
-<del class="diff-old">software
-program
-to
-process
-</del>
-<ins class="diff-chg">baseline
-that
-makes
-JSON-LD
-processing
-easier
-</ins>
-because
-of
-its
-very
-regular
-structure.
-</p>
-</section>
-<section class="informative" id="compaction">
-<h3>
-<span class="secno">
-2.2
-</span>
-Compaction
-</h3>
-<p>
-<em>
-<ins class="diff-new">This
-section
-is
-non-normative.
-</ins></em></p>
-<p>
-While
-<a class="tref internalDFN" title="expansion" href="#dfn-expansion">
-expansion
-<del class="diff-old">expands
-</del>
-</a>
-<ins class="diff-chg">removes
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a><ins class="diff-chg">
-from
-</ins>
-a
-given
-<del class="diff-old">input
-as
-much
-as
-possible,
-compaction
-performs
-</del>
-<ins class="diff-chg">input,
-</ins><a class="tref internalDFN" title="compaction" href="#dfn-compaction"><ins class="diff-chg">
-compaction's
-</ins></a><ins class="diff-chg">
-primary
-function
-is
-to
-perform
-</ins>
-the
-opposite
-<del class="diff-old">operation
--
-expressing
-</del>
-<ins class="diff-chg">operation:
-to
-express
-</ins>
-a
-given
-input
-<del class="diff-old">as
-succinctly
-as
-possible.
-While
-expansion
-is
-meant
-</del>
-<ins class="diff-chg">according
-</ins>
-to
-<del class="diff-old">produce
-something
-</del>
-<ins class="diff-chg">a
-particular
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a>.<dfn title="compaction" id="dfn-compaction"><ins class="diff-chg">
-Compaction
-</ins></dfn><ins class="diff-chg">
-applies
-a
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a>
-that
-<ins class="diff-new">specifically
-tailors
-the
-way
-information
-</ins>
-is
-<del class="diff-old">easy
-to
-process
-by
-software
-programs,
-compaction
-is
-meant
-to
-produce
-something
-</del>
-<ins class="diff-chg">expressed
-for
-a
-particular
-person
-or
-application.
-This
-simplifies
-applications
-</ins>
-that
-<del class="diff-old">is
-easy
-</del>
-<ins class="diff-chg">consume
-JSON
-or
-JSON-LD
-by
-expressing
-the
-data
-in
-application-specific
-terms,
-and
-it
-makes
-the
-data
-easier
-</ins>
-to
-<del class="diff-old">ready
-</del>
-<ins class="diff-chg">read
-</ins>
-by
-<del class="diff-old">software
-developers.
-</del>
-<ins class="diff-chg">humans.
-</ins></p><p><a class="tref internalDFN" title="compaction" href="#dfn-compaction">
-Compaction
-</a>
-uses
-a
-developer-supplied
-<a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>
-to
-<del class="diff-old">compresses
-all
-</del>
-<ins class="diff-chg">shorten
-</ins>
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<del class="diff-old">IRI
-</del>
-<ins class="diff-chg">IRIs
-</ins>
-</a>
-<del class="diff-old">s
-</del>
-to
-<a class="tref internalDFN" title="term" href="#dfn-term">
-<del class="diff-old">term
-</del>
-<ins class="diff-chg">terms
-</ins>
-</a>
-<del class="diff-old">s
-</del>
-or
-<del class="diff-old">prefix
-</del>
-<a class="tref internalDFN" title="compact-iri" href="#dfn-compact-iri">
-<ins class="diff-chg">compact
-IRIs
-</ins>
-</a>
-<del class="diff-old">es,
-</del>
-and
-<del class="diff-old">compacts
-all
-literal
-</del>
-<a class="tref internalDFN" title="json-ld-value" href="#dfn-json-ld-value">
-<ins class="diff-chg">JSON-LD
-values
-</ins>
-</a>
-<del class="diff-old">s
-</del>
-expressed
-in
-<a class="tref internalDFN" title="expanded-form" href="#dfn-expanded-form">
-expanded
-form
-</a>
-<ins class="diff-new">to
-simple
-values
-such
-</ins>
-as
-<del class="diff-old">much
-as
-possible.
-</del>
-<a class="tref internalDFN" title="string" href="#dfn-string">
-<ins class="diff-chg">strings
-</ins></a><ins class="diff-chg">
-or
-</ins><a class="tref internalDFN" title="number" href="#dfn-number"><ins class="diff-chg">
-numbers
-</ins></a>.
-</p>
-<p>
-<del class="diff-old">The
-</del>
-<ins class="diff-chg">For
-example,
-assume
-the
-</ins>
-following
-<del class="diff-old">example
-expresses
-</del>
-<ins class="diff-chg">expanded
-JSON-LD
-</ins>
-input
-<del class="diff-old">that
-has
-already
-been
-fully
-expanded:
-</del>
-<ins class="diff-chg">document:
-</ins>
-</p>
-<del class="diff-old">  var expandedInput = [{
-  &quot;http://xmlns.com/foaf/0.1/name&quot;: [{
-    &quot;@value&quot;: &quot;Manu Sporny&quot;
-  }],
-  &quot;http://xmlns.com/foaf/0.1/homepage&quot;: [{
-    &quot;@id&quot;: &quot;http://manu.sporny.org/&quot;
-  }]
-}]
-</del>
-    <div class="example"><div class="example-title"><span>Example 4</span>: Expanded sample document</div><pre class="example">[
-<ins class="diff-chg">  {
-    &quot;@id&quot;: &quot;http://me.markus-lanthaler.com/&quot;,
-    &quot;http://xmlns.com/foaf/0.1/name&quot;: [
-      { &quot;@value&quot;: &quot;Markus Lanthaler&quot; }
-    ],
-    &quot;http://xmlns.com/foaf/0.1/homepage&quot;: [
-      { &quot;@id&quot;: &quot;http://www.markus-lanthaler.com/&quot; }
-    ]
-  }
-]
-</ins>
-</pre>
-</div>
-<p>
-<del class="diff-old">A
-developer
-that
-wants
-to
-transform
-the
-data
-above
-into
-a
-more
-human-readable
-form,
-could
-do
-</del>
-<ins class="diff-chg">Additionally,
-assume
-</ins>
-the
-following
-<del class="diff-old">using
-the
-</del>
-<ins class="diff-chg">developer-supplied
-</ins>
-JSON-LD
-<del class="diff-old">API:
-</del>
-<a class="tref internalDFN" title="context" href="#dfn-context">
-<ins class="diff-chg">context
-</ins></a>:
-</p>
-<del class="diff-old">  function compactionCallback(output) {
-   console.log(output);
-</del>
-    <div class="example"><div class="example-title"><span>Example 5</span>: JSON-LD context</div><pre class="example">{
-<ins class="diff-chg">  &quot;@context&quot;: {
-    &quot;name&quot;: &quot;http://xmlns.com/foaf/0.1/name&quot;,
-    &quot;homepage&quot;: {
-      &quot;@id&quot;: &quot;http://xmlns.com/foaf/0.1/homepage&quot;,
-      &quot;@type&quot;: &quot;@id&quot;
-    }
-  }
-</ins>
-}
-<del class="diff-old">jsonld.compact(expandedInput,
-&quot;http://json-ld.org/contexts/person.jsonld&quot;,
-compactionCallback);
-</del>
-</pre>
-</div>
-<p>
-<del class="diff-old">The
-following
-would
-be
-</del>
-<ins class="diff-chg">Running
-the
-</ins><a href="#compaction-algorithm"><ins class="diff-chg">
-Compaction
-Algorithm
-</ins></a><ins class="diff-chg">
-(
-</ins><code class="idlMemberName"><a href="#widl-JsonLdProcessor-compact-void-JsonLdInput-input-JsonLdContext-context-JsonLdCallback-callback-JsonLdOptions-options"><ins class="diff-chg">
-compact
-</ins></a></code><ins class="diff-chg">
-operation)
-given
-</ins>
-the
-<ins class="diff-new">context
-supplied
-above
-against
-the
-JSON-LD
-input
-document
-provided
-above
-would
-</ins>
-result
-<del class="diff-old">of
-</del>
-<ins class="diff-chg">in
-</ins>
-the
-<del class="diff-old">call
-above:
-</del>
-<ins class="diff-chg">following
-output:
-</ins>
-</p>
-<del class="diff-old">  {
-  &quot;@context&quot;: &quot;http://json-ld.org/contexts/person.jsonld&quot;
-  &quot;name&quot;: &quot;Manu Sporny&quot;,
-  &quot;homepage&quot;: &quot;http://manu.sporny.org/&quot;
-</del>
-    <div class="example"><div class="example-title"><span>Example 6</span>: Compacted sample document</div><pre class="example">{
-<ins class="diff-chg">  &quot;@context&quot;: {
-    &quot;name&quot;: &quot;http://xmlns.com/foaf/0.1/name&quot;,
-    &quot;homepage&quot;: {
-      &quot;@id&quot;: &quot;http://xmlns.com/foaf/0.1/homepage&quot;,
-      &quot;@type&quot;: &quot;@id&quot;
-    }
-  },
-  &quot;@id&quot;: &quot;http://me.markus-lanthaler.com/&quot;,
-  &quot;name&quot;: &quot;Markus Lanthaler&quot;,
-  &quot;homepage&quot;: &quot;http://www.markus-lanthaler.com/&quot;
-</ins>
-}
-</pre>
-</div>
-<p>
-Note
-that
-all
-<del class="diff-old">of
-the
-term
-</del>
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<ins class="diff-chg">IRIs
-</ins>
-</a>
-<del class="diff-old">s
-</del>
-have
-been
-<del class="diff-old">compressed
-and
-</del>
-<ins class="diff-chg">compacted
-to
-</ins><a class="tref internalDFN" title="term" href="#dfn-term"><ins class="diff-chg">
-terms
-</ins></a><ins class="diff-chg">
-as
-specified
-in
-</ins>
-the
-<a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>,
-<ins class="diff-chg">which
-</ins>
-has
-been
-injected
-into
-the
-output.
-While
-compacted
-output
-is
-<del class="diff-old">most
-</del>
-useful
-to
-humans,
-it
-<del class="diff-old">can
-</del>
-<ins class="diff-chg">is
-</ins>
-also
-<del class="diff-old">be
-carefully
-</del>
-used
-to
-generate
-structures
-that
-are
-easy
-to
-<del class="diff-old">use
-for
-</del>
-<ins class="diff-chg">program
-against.
-Compaction
-enables
-</ins>
-developers
-to
-<del class="diff-old">program
-against
-as
-well.
-</del>
-<ins class="diff-chg">map
-any
-expanded
-document
-into
-an
-application-specific
-compacted
-document.
-While
-the
-context
-provided
-above
-mapped
-</ins><code><ins class="diff-chg">
-http://xmlns.com/foaf/0.1/name
-</ins></code><ins class="diff-chg">
-to
-</ins><code><ins class="diff-chg">
-name
-</ins></code>,<ins class="diff-chg">
-it
-could
-also
-have
-been
-mapped
-to
-any
-other
-term
-provided
-by
-the
-developer.
-</ins>
-</p>
-</section>
-<section class="informative" id="flattening">
-<h3>
-<span class="secno">
-2.3
-</span>
-<del class="diff-old">Conversion
-</del>
-<ins class="diff-chg">Flattening
-</ins></h3><p><em><ins class="diff-chg">
-This
-section
-is
-non-normative.
-</ins></em></p><p><ins class="diff-chg">
-While
-expansion
-ensures
-that
-a
-document
-is
-in
-a
-uniform
-structure,
-flattening
-goes
-a
-step
-further
-</ins>
-to
-<ins class="diff-new">ensure
-that
-the
-shape
-of
-the
-data
-is
-deterministic.
-In
-expanded
-documents,
-the
-properties
-of
-a
-single
-</ins><a class="tref internalDFN" title="node" href="#dfn-node"><ins class="diff-new">
-node
-</ins></a><ins class="diff-new">
-may
-be
-spread
-across
-a
-number
-of
-different
-</ins><a class="tref internalDFN" title="json-object" href="#dfn-json-object"><ins class="diff-new">
-JSON
-objects
-</ins></a>.<ins class="diff-new">
-By
-flattening
-a
-document,
-all
-properties
-of
-a
-</ins><a class="tref internalDFN" title="node" href="#dfn-node"><ins class="diff-new">
-node
-</ins></a><ins class="diff-new">
-are
-collected
-in
-a
-single
-</ins><a class="tref internalDFN" title="json-object" href="#dfn-json-object"><ins class="diff-new">
-JSON
-object
-</ins></a>
-and
-<del class="diff-old">from
-</del>
-<ins class="diff-chg">all
-</ins><a class="tref internalDFN" title="blank-node" href="#dfn-blank-node"><ins class="diff-chg">
-blank
-nodes
-</ins></a><ins class="diff-chg">
-are
-labeled
-with
-a
-</ins><a class="tref internalDFN" title="blank-node-identifier" href="#dfn-blank-node-identifier"><ins class="diff-chg">
-blank
-node
-identifier
-</ins></a>.<ins class="diff-chg">
-This
-may
-drastically
-simplify
-the
-code
-required
-to
-process
-JSON-LD
-data
-in
-certain
-applications.
-</ins></p><p><ins class="diff-chg">
-For
-example,
-assume
-the
-following
-JSON-LD
-input
-document:
-</ins></p>    <div class="example"><div class="example-title"><span>Example 7</span>: Sample JSON-LD document</div><pre class="example">{<ins class="diff-chg">
-  &quot;@context&quot;: {
-    &quot;name&quot;: &quot;http://xmlns.com/foaf/0.1/name&quot;,
-    &quot;knows&quot;: &quot;http://xmlns.com/foaf/0.1/knows&quot;
-  },
-  &quot;@id&quot;: &quot;http://me.markus-lanthaler.com/&quot;,
-  &quot;name&quot;: &quot;Markus Lanthaler&quot;,
-  &quot;knows&quot;: [
-    {
-      &quot;name&quot;: &quot;Dave Longley&quot;
-    }
-  ]
-}
-</ins></pre></div><p><ins class="diff-chg">
-Running
-the
-</ins><a href="#flattening-algorithm"><ins class="diff-chg">
-Flattening
-algorithm
-</ins></a><ins class="diff-chg">
-(
-</ins><code class="idlMemberName"><a href="#widl-JsonLdProcessor-flatten-void-JsonLdInput-input-JsonLdContext-context-JsonLdCallback-callback-JsonLdOptions-options"><ins class="diff-chg">
-flatten
-</ins></a></code><ins class="diff-chg">
-operation)
-with
-a
-context
-set
-to
-</ins><a class="tref internalDFN" title="null" href="#dfn-null"><ins class="diff-chg">
-null
-</ins></a><ins class="diff-chg">
-to
-prevent
-compaction
-returns
-the
-following
-document:
-</ins></p>    <div class="example"><div class="example-title"><span>Example 8</span>: Flattened sample document in expanded form</div><pre class="example">[<ins class="diff-chg">
-  {
-    &quot;@id&quot;: &quot;_:t0&quot;,
-    &quot;http://xmlns.com/foaf/0.1/name&quot;: [
-      { &quot;@value&quot;: &quot;Dave Longley&quot; }
-    ]
-  },
-  {
-    &quot;@id&quot;: &quot;http://me.markus-lanthaler.com/&quot;,
-    &quot;http://xmlns.com/foaf/0.1/name&quot;: [
-      { &quot;@value&quot;: &quot;Markus Lanthaler&quot; }
-    ],
-    &quot;http://xmlns.com/foaf/0.1/knows&quot;: [
-      { &quot;@id&quot;: &quot;_:t0&quot; }
-    ]
-  }
-]
-</ins></pre></div><p><ins class="diff-chg">
-Note
-how
-in
-the
-output
-above
-all
-properties
-of
-a
-</ins><a class="tref internalDFN" title="node" href="#dfn-node"><ins class="diff-chg">
-node
-</ins></a><ins class="diff-chg">
-are
-collected
-in
-a
-single
-</ins><a class="tref internalDFN" title="json-object" href="#dfn-json-object"><ins class="diff-chg">
-JSON
-object
-</ins></a><ins class="diff-chg">
-and
-how
-the
-</ins><a class="tref internalDFN" title="blank-node" href="#dfn-blank-node"><ins class="diff-chg">
-blank
-node
-</ins></a><ins class="diff-chg">
-representing
-&quot;Dave
-Longley&quot;
-has
-been
-assigned
-the
-</ins><a class="tref internalDFN" title="blank-node-identifier" href="#dfn-blank-node-identifier"><ins class="diff-chg">
-blank
-node
-identifier
-</ins></a><code><ins class="diff-chg">
-_:t0
-</ins></code>.</p><p><ins class="diff-chg">
-To
-make
-it
-easier
-for
-humans
-to
-read
-or
-for
-certain
-applications
-to
-process
-it,
-a
-flattened
-document
-can
-be
-compacted
-by
-passing
-a
-context.
-Using
-the
-same
-context
-as
-the
-input
-document,
-the
-flattened
-and
-compacted
-document
-looks
-as
-follows:
-</ins></p>    <div class="example"><div class="example-title"><span>Example 9</span>: Flattened and compacted sample document</div><pre class="example">{<ins class="diff-chg">
-  &quot;@context&quot;: {
-    &quot;name&quot;: &quot;http://xmlns.com/foaf/0.1/name&quot;,
-    &quot;knows&quot;: &quot;http://xmlns.com/foaf/0.1/knows&quot;
-  },
-  &quot;@graph&quot;: [
-    {
-      &quot;@id&quot;: &quot;_:t0&quot;,
-      &quot;name&quot;: &quot;Dave Longley&quot;
-    },
-    {
-      &quot;@id&quot;: &quot;http://me.markus-lanthaler.com/&quot;,
-      &quot;name&quot;: &quot;Markus Lanthaler&quot;,
-      &quot;knows&quot;: { &quot;@id&quot;: &quot;_:t0&quot; }
-    }
-  ]
-}
-</ins></pre></div><p><ins class="diff-chg">
-Please
-note
-that
-the
-result
-of
-flattening
-and
-compacting
-a
-document
-is
-always
-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">
-which
-contains
-an
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code><ins class="diff-chg">
-member
-that
-represents
-the
-</ins><a class="tref internalDFN" title="default-graph" href="#dfn-default-graph"><ins class="diff-chg">
-default
-graph
-</ins></a>.</p></section><section class="informative" id="rdf-conversion"><h3><span class="secno"><ins class="diff-chg">
-2.4
-</ins></span>
-RDF
-<ins class="diff-new">Conversion
-</ins>
-</h3>
-<p>
-<em>
-<ins class="diff-new">This
-section
-is
-non-normative.
-</ins></em></p>
-<p>
-JSON-LD
-can
-be
-used
-to
-<del class="diff-old">losslessly
-express
-the
-RDF
-</del>
-<ins class="diff-chg">serialize
-</ins>
-data
-<del class="diff-old">model
-</del>
-<ins class="diff-chg">expressed
-in
-RDF
-</ins>
-as
-described
-in
-<del class="diff-old">the
-RDF
-Concepts
-document
-</del>
-[
-<cite>
-<del class="diff-old">RDF-CONCEPTS
-</del>
-<a class="bibref" href="#bib-RDF11-CONCEPTS">
-<ins class="diff-chg">RDF11-CONCEPTS
-</ins>
-</a>
-</cite>
-].
-This
-ensures
-that
-data
-can
-be
-round-tripped
-<ins class="diff-new">to
-and
-</ins>
-from
-any
-RDF
-<del class="diff-old">syntax,
-like
-N-Triples
-or
-TURTLE,
-</del>
-<ins class="diff-chg">syntax
-</ins>
-without
-any
-loss
-in
-<del class="diff-old">the
-fidelity
-of
-the
-data.
-Assume
-</del>
-<ins class="diff-chg">fidelity.
-</ins></p><p><ins class="diff-chg">
-For
-example,
-assume
-</ins>
-the
-following
-RDF
-input
-<ins class="diff-new">serialized
-</ins>
-in
-<del class="diff-old">N-Triples
-format:
-</del>
-<ins class="diff-chg">Turtle
-[
-</ins><cite><a class="bibref" href="#bib-TURTLE"><ins class="diff-chg">
-TURTLE
-</ins></a></cite><ins class="diff-chg">
-]:
-</ins>
-</p>
-<del class="diff-old">  var data = &quot;
-&lt;http://manu.sporny.org/about/#manu&gt; &lt;http://xmlns.com/foaf/0.1/name&gt; \&quot;Manu Sporny\&quot; .\n
-&lt;http://manu.sporny.org/about/#manu&gt;
-</del>
-    <div class="example"><div class="example-title"><span>Example 10</span>: Sample Turtle document</div><pre class="example">&lt;http://me.markus-lanthaler.com/&gt; &lt;http://xmlns.com/foaf/0.1/name&gt; &quot;Markus Lanthaler&quot; .
-<ins class="diff-chg">&lt;http://me.markus-lanthaler.com/&gt;
-</ins>
-&lt;http://xmlns.com/foaf/0.1/homepage&gt;
-<del class="diff-old">&lt;http://manu.sporny.org/&gt;
-.&quot;;
-</del>
-<ins class="diff-chg">&lt;http://www.markus-lanthaler.com/&gt;
-.
-</ins>
-</pre>
-</div>
-<p>
-<del class="diff-old">A
-developer
-can
-use
-</del>
-<ins class="diff-chg">Using
-</ins>
-the
-<del class="diff-old">JSON-LD
-API
-to
-</del>
-<a href="#convert-from-rdf-algorithm">
-<ins class="diff-chg">Convert
-from
-RDF
-algorithm
-</ins></a><ins class="diff-chg">
-a
-developer
-could
-</ins>
-transform
-<del class="diff-old">the
-markup
-above
-</del>
-<ins class="diff-chg">this
-document
-</ins>
-into
-<del class="diff-old">a
-JSON-LD
-document:
-  function conversionCallback(result)
-{
-  console.log(&quot;JSON-LD Document: &quot;, result);
-};
-jsonld.fromRDF(data,
-conversionCallback,
-{&quot;format&quot;:
-&quot;ntriples&quot;});
-The
-following
-</del>
-expanded
-<del class="diff-old">output
-would
-be
-the
-result
-of
-the
-call
-above:
-</del>
-<ins class="diff-chg">JSON-LD:
-</ins>
-</p>
-<del class="diff-old">  [{
-  &quot;@id&quot;: &quot;http://manu.sporny.org/about/#manu&quot;,
-  &quot;http://xmlns.com/foaf/0.1/name&quot;: [{
-    &quot;@value&quot;: &quot;Manu Sporny&quot;
-  }],
-  &quot;http://xmlns.com/foaf/0.1/homepage&quot;: [{
-    &quot;@id&quot;: &quot;http://manu.sporny.org/&quot;
-  }]
-}]
-</del>
-    <div class="example"><div class="example-title"><span>Example 11</span>: Sample Turtle document converted to JSON-LD</div><pre class="example">[
-<ins class="diff-chg">  {
-    &quot;@id&quot;: &quot;http://me.markus-lanthaler.com/&quot;,
-    &quot;http://xmlns.com/foaf/0.1/name&quot;: [
-      { &quot;@value&quot;: &quot;Markus Lanthaler&quot; }
-    ],
-    &quot;http://xmlns.com/foaf/0.1/homepage&quot;: [
-      { &quot;@id&quot;: &quot;http://www.markus-lanthaler.com/&quot; }
-    ]
-  }
-]
-</ins>
-</pre>
-</div>
-<p>
-Note
-that
-the
-output
-<del class="diff-old">above,
-</del>
-<ins class="diff-chg">above
-</ins>
-could
-easily
-be
-compacted
-<del class="diff-old">to
-produce
-the
-following
-</del>
-using
-the
-technique
-outlined
-in
-the
-previous
-<del class="diff-old">section:
-  {
-  &quot;@context&quot;: &quot;http://json-ld.org/contexts/person.jsonld&quot;,
-  &quot;@id&quot;: &quot;http://manu.sporny.org/about/#manu&quot;,
-  &quot;name&quot;: &quot;Manu Sporny&quot;,
-  &quot;homepage&quot;: &quot;http://manu.sporny.org/&quot;
-}
-Transforming
-</del>
-<ins class="diff-chg">section.
-It
-is
-also
-possible
-to
-transform
-</ins>
-the
-<del class="diff-old">object
-above
-</del>
-<ins class="diff-chg">JSON-LD
-document
-</ins>
-back
-to
-RDF
-<del class="diff-old">is
-as
-simple
-as
-calling
-</del>
-<ins class="diff-chg">using
-</ins>
-the
-<del class="diff-old">toRDF()
-method:
-</del>
-<a href="#convert-to-rdf-algorithm">
-<ins class="diff-chg">Convert
-to
-RDF
-algorithm
-</ins></a>.
-</p>
-<del class="diff-old">  var jsonldDocument = ...; // assign the JSON-LD document here
-function rdfCallback(quads)
-{
-  console.log(&quot;RDF Data: &quot;, quads);
-};
-jsonld.toRDF(jsonldDocument,
-rdfCallback);
-</del>
-</section>
-</section>
-<section id="conformance">
-<h2>
-<span class="secno">
-<del class="diff-old">2.4
-</del>
-<ins class="diff-chg">3.
-</ins>
-</span>
-<del class="diff-old">Framing
-</del>
-<ins class="diff-chg">Conformance
-</ins></h2><p><ins class="diff-chg">
-All
-examples
-</ins>
-and
-<del class="diff-old">Normalization
-Issue
-2
-</del>
-<ins class="diff-chg">notes
-as
-well
-as
-sections
-marked
-as
-non-normative
-in
-this
-specification
-are
-non-normative.
-Everything
-else
-in
-this
-specification
-is
-normative.
-</ins></p><p><ins class="diff-chg">
-The
-keywords
-</ins><em class="rfc2119" title="MUST"><ins class="diff-chg">
-MUST
-</ins></em>,<em class="rfc2119" title="MUST NOT"><ins class="diff-chg">
-MUST
-NOT
-</ins></em>,<em class="rfc2119" title="REQUIRED"><ins class="diff-chg">
-REQUIRED
-</ins></em>,<em class="rfc2119" title="SHOULD"><ins class="diff-chg">
-SHOULD
-</ins></em>,<em class="rfc2119" title="SHOULD NOT"><ins class="diff-chg">
-SHOULD
-NOT
-</ins></em>,<em class="rfc2119" title="RECOMMENDED"><ins class="diff-chg">
-RECOMMENDED
-</ins></em>,<em class="rfc2119" title="MAY"><ins class="diff-chg">
-MAY
-</ins></em>,<ins class="diff-chg">
-and
-</ins><em class="rfc2119" title="OPTIONAL"><ins class="diff-chg">
-OPTIONAL
-</ins></em><ins class="diff-chg">
-in
-this
-specification
-are
-to
-be
-interpreted
-as
-described
-in
-[
-</ins><cite>
-<a class="bibref" href="#bib-RFC2119">
-<ins class="diff-chg">RFC2119
-</ins></a>
-</cite>
-<ins class="diff-chg">].
-</ins></p><p>
-There
-are
-<del class="diff-old">currently
-two
-other
-API
-methods
-</del>
-<ins class="diff-chg">three
-classes
-of
-products
-</ins>
-that
-<del class="diff-old">are
-in
-active
-development
-and
-were
-not
-ready
-for
-publication
-at
-the
-time
-this
-document
-was
-published.
-Framing
-allows
-a
-developer
-</del>
-<ins class="diff-chg">can
-claim
-conformance
-</ins>
-to
-<del class="diff-old">force
-a
-different
-layout
-for
-the
-data
-</del>
-<ins class="diff-chg">this
-specification:
-</ins><a class="tref internalDFN" title="json-ld-processor" href="#dfn-json-ld-processor"><ins class="diff-chg">
-JSON-LD
-Processors
-</ins></a>,<a class="tref internalDFN" title="json-ld-api-implementation" href="#dfn-json-ld-api-implementation"><ins class="diff-chg">
-JSON-LD
-API
-Implementations
-</ins></a>,
-and
-<del class="diff-old">effectively
-perform
-query-by-example
-on
-</del>
-<a class="tref internalDFN" title="json-ld-rdf-converter" href="#dfn-json-ld-rdf-converter">
-<ins class="diff-chg">JSON-LD-RDF
-Converters
-</ins></a>.</p><p><ins class="diff-chg">
-A
-conforming
-</ins><dfn title="json-ld-processor" id="dfn-json-ld-processor">
-JSON-LD
-<del class="diff-old">documents
--
-this
-</del>
-<ins class="diff-chg">Processor
-</ins></dfn>
-is
-<del class="diff-old">most
-useful
-when
-</del>
-a
-<del class="diff-old">JSON-LD-based
-REST
-API
-does
-not
-know
-the
-exact
-form
-of
-</del>
-<ins class="diff-chg">system
-which
-can
-perform
-</ins>
-the
-<del class="diff-old">data
-it
-is
-getting
-in,
-but
-still
-wants
-to
-operate
-upon
-it
-if
-some
-bare
-essentials
-are
-found
-</del>
-<a href="#expansion-algorithm">
-<ins class="diff-chg">Expansion
-</ins></a>,<a href="#compaction-algorithm"><ins class="diff-chg">
-Compaction
-</ins></a>,<ins class="diff-chg">
-and
-</ins><a href="#flattening-algorithm"><ins class="diff-chg">
-Flattening
-</ins></a><ins class="diff-chg">
-operations
-defined
-</ins>
-in
-<del class="diff-old">the
-data.
-</del>
-<ins class="diff-chg">this
-specification.
-</ins></p><p><ins class="diff-chg">
-A
-conforming
-</ins><dfn title="json-ld-api-implementation" id="dfn-json-ld-api-implementation">
-JSON-LD
-<del class="diff-old">normalization
-allows
-</del>
-<ins class="diff-chg">API
-Implementation
-</ins></dfn><ins class="diff-chg">
-is
-a
-conforming
-</ins><a class="tref internalDFN" title="json-ld-processor" href="#dfn-json-ld-processor">
-JSON-LD
-<del class="diff-old">documents
-to
-be
-deterministically
-serialized
-such
-</del>
-<ins class="diff-chg">Processor
-</ins></a>
-that
-<del class="diff-old">they
-can
-be
-digitally
-signed
-or
-be
-used
-to
-find
-</del>
-<ins class="diff-chg">exposes
-</ins>
-the
-<del class="diff-old">differences
-between
-two
-linked
-data
-graph
-</del>
-<a href="#the-application-programming-interface">
-<ins class="diff-chg">Application
-Programming
-Interface
-(API)
-</ins>
-</a>
-<del class="diff-old">s.
-</del>
-<ins class="diff-chg">defined
-in
-this
-specification.
-</ins>
-It
-<del class="diff-old">is
-expected
-that
-framing
-will
-be
-a
-part
-of
-</del>
-<em class="rfc2119" title="MUST">
-<ins class="diff-chg">MUST
-</ins></em><ins class="diff-chg">
-implement
-</ins>
-the
-<del class="diff-old">final
-API.
-It
-is
-expected
-that
-normalization
-will
-be
-an
-optional
-feature
-that
-JSON-LD
-processors
-may
-implement.
-</del>
-<code>
-<ins class="diff-chg">json-ld-1.0
-</ins></code><ins class="diff-chg">
-processing
-mode
-(for
-further
-details,
-see
-the
-</ins><code class="idlMemberName">
-<a href="#widl-JsonLdOptions-processingMode">
-<ins class="diff-chg">processingMode
-</ins></a>
-<del class="diff-old">3.
-The
-Application
-Programming
-Interface
-</del>
-</code>
-<ins class="diff-chg">option
-of
-</ins><a href="#idl-def-JsonLdOptions" class="idlType"><code><ins class="diff-chg">
-JsonLdOptions
-</ins></code></a><ins class="diff-chg">
-).
-</ins></p>
-<p>
-<del class="diff-old">This
-</del>
-<a class="tref internalDFN" title="json-ld-processor" href="#dfn-json-ld-processor">
-<ins class="diff-chg">JSON-LD
-Processors
-</ins></a><ins class="diff-chg">
-and
-</ins><a class="tref internalDFN" title="json-ld-api-implementation" href="#dfn-json-ld-api-implementation">
-API
-<del class="diff-old">provides
-a
-clean
-mechanism
-that
-enables
-developers
-</del>
-<ins class="diff-chg">Implementations
-</ins></a><em class="rfc2119" title="MUST NOT"><ins class="diff-chg">
-MUST
-NOT
-</ins></em><ins class="diff-chg">
-attempt
-</ins>
-to
-<del class="diff-old">convert
-JSON-LD
-data
-into
-a
-</del>
-<ins class="diff-chg">correct
-malformed
-</ins><a class="tref internalDFN" title="iri" href="#dfn-iri"><ins class="diff-chg">
-IRIs
-</ins></a><ins class="diff-chg">
-or
-language
-tags;
-however,
-they
-</ins><em class="rfc2119" title="MAY"><ins class="diff-chg">
-MAY
-</ins></em><ins class="diff-chg">
-issue
-validation
-warnings.
-IRIs
-are
-not
-modified
-other
-than
-converted
-between
-</ins><a class="tref internalDFN" title="relative-iri" href="#dfn-relative-iri"><ins class="diff-chg">
-relative
-</ins></a><ins class="diff-chg">
-and
-</ins><a class="tref internalDFN" title="absolute-iri" href="#dfn-absolute-iri"><ins class="diff-chg">
-absolute
-IRIs
-</ins></a>.</p><p><ins class="diff-chg">
-A
-conforming
-</ins><dfn title="json-ld-rdf-converter" id="dfn-json-ld-rdf-converter"><ins class="diff-chg">
-JSON-LD-RDF
-Converter
-</ins></dfn><ins class="diff-chg">
-is
-</ins>
-a
-<del class="diff-old">variety
-of
-output
-formats
-</del>
-<ins class="diff-chg">system
-</ins>
-that
-<del class="diff-old">are
-easier
-</del>
-<ins class="diff-chg">can
-perform
-</ins><a href="#convert-to-rdf-algorithm"><ins class="diff-chg">
-Conversion
-</ins>
-to
-<del class="diff-old">work
-with
-</del>
-<ins class="diff-chg">RDF
-</ins></a><ins class="diff-chg">
-and
-</ins><a href="#convert-from-rdf-algorithm"><ins class="diff-chg">
-Conversion
-from
-RDF
-</ins></a>.</p><p><ins class="diff-chg">
-The
-algorithms
-</ins>
-in
-<del class="diff-old">various
-programming
-languages.
-If
-a
-</del>
-<ins class="diff-chg">this
-specification
-are
-generally
-written
-with
-more
-concern
-for
-clarity
-than
-efficiency.
-Thus,
-</ins><a class="tref internalDFN" title="json-ld-processor" href="#dfn-json-ld-processor">
-JSON-LD
-<ins class="diff-new">Processors
-</ins></a><ins class="diff-new">
-and
-</ins><a class="tref internalDFN" title="json-ld-api-implementation" href="#dfn-json-ld-api-implementation">
-API
-<del class="diff-old">is
-provided
-</del>
-<ins class="diff-chg">Implementations
-</ins></a><ins class="diff-chg">
-may
-implement
-the
-algorithms
-given
-</ins>
-in
-<del class="diff-old">a
-programming
-environment,
-</del>
-<ins class="diff-chg">this
-specification
-in
-any
-way
-desired,
-so
-long
-as
-</ins>
-the
-<del class="diff-old">entirety
-of
-</del>
-<ins class="diff-chg">end
-result
-is
-indistinguishable
-from
-</ins>
-the
-<del class="diff-old">following
-API
-must
-</del>
-<ins class="diff-chg">result
-that
-would
-</ins>
-be
-<del class="diff-old">implemented.
-</del>
-<ins class="diff-chg">obtained
-by
-the
-specification's
-algorithms.
-</ins>
-</p>
-<del class="diff-old">3.1
-General
-Terminology
-</del>
-<div class="note">
-<div class="note-title">
-<span>
-<del class="diff-old">Issue
-3
-</del>
-<ins class="diff-chg">Note
-</ins>
-</span>
-</div>
-<p class="">
-<del class="diff-old">The
-intent
-of
-the
-Working
-Group
-and
-the
-Editors
-</del>
-<ins class="diff-chg">Implementers
-can
-partially
-check
-their
-level
-</ins>
-of
-<del class="diff-old">this
-specification
-is
-</del>
-<ins class="diff-chg">conformance
-</ins>
-to
-<del class="diff-old">eventually
-align
-terminology
-used
-in
-</del>
-this
-<del class="diff-old">document
-with
-</del>
-<ins class="diff-chg">specification
-by
-successfully
-passing
-</ins>
-the
-<del class="diff-old">terminology
-used
-in
-</del>
-<ins class="diff-chg">test
-cases
-of
-</ins>
-the
-<del class="diff-old">RDF
-Concepts
-document
-to
-</del>
-<ins class="diff-chg">JSON-LD
-test
-suite
-[
-</ins><cite><a class="bibref" href="#bib-JSON-LD-TESTS"><ins class="diff-chg">
-JSON-LD-TESTS
-</ins></a></cite><ins class="diff-chg">
-].
-Note,
-however,
-that
-passing
-all
-</ins>
-the
-<del class="diff-old">extent
-to
-which
-it
-makes
-sense
-to
-do
-so.
-In
-general,
-if
-there
-is
-an
-analogue
-to
-terminology
-used
-in
-this
-document
-</del>
-<ins class="diff-chg">tests
-</ins>
-in
-the
-<del class="diff-old">RDF
-Concepts
-document,
-the
-preference
-is
-</del>
-<ins class="diff-chg">test
-suite
-does
-not
-imply
-complete
-conformance
-</ins>
-to
-<del class="diff-old">use
-</del>
-<ins class="diff-chg">this
-specification.
-It
-only
-implies
-that
-</ins>
-the
-<del class="diff-old">terminology
-in
-</del>
-<ins class="diff-chg">implementation
-conforms
-to
-aspects
-tested
-by
-</ins>
-the
-<del class="diff-old">RDF
-Concepts
-document.
-</del>
-<ins class="diff-chg">test
-suite.
-</ins>
-</p>
-</div>
-</section>
-<section id="general-terminology">
-<h2>
-<span class="secno">
-<ins class="diff-new">4.
-</ins></span><ins class="diff-new">
-General
-Terminology
-</ins></h2>
-<p>
-<del class="diff-old">The
-</del>
-<ins class="diff-chg">This
-document
-uses
-the
-</ins>
-following
-<del class="diff-old">is
-an
-explanation
-of
-</del>
-<ins class="diff-chg">terms
-as
-defined
-in
-JSON
-[
-</ins><cite><a class="bibref" href="#bib-RFC4627"><ins class="diff-chg">
-RFC4627
-</ins></a></cite><ins class="diff-chg">
-].
-Refer
-to
-</ins>
-the
-<del class="diff-old">general
-terminology
-used
-</del>
-<em>
-<ins class="diff-chg">JSON
-Grammar
-</ins></em><ins class="diff-chg">
-section
-</ins>
-in
-<del class="diff-old">this
-document:
-</del>
-<ins class="diff-chg">[
-</ins><cite><a class="bibref" href="#bib-RFC4627"><ins class="diff-chg">
-RFC4627
-</ins></a></cite><ins class="diff-chg">
-]
-for
-formal
-definitions.
-</ins>
-</p>
-<dl>
-<dt>
-<dfn title="json-object" id="dfn-json-object">
-JSON
-object
-</dfn>
-</dt>
-<dd>
-An
-object
-structure
-is
-represented
-as
-a
-pair
-of
-curly
-brackets
-surrounding
-zero
-or
-more
-<del class="diff-old">name-value
-</del>
-<ins class="diff-chg">key-value
-</ins>
-pairs.
-A
-<del class="diff-old">name
-</del>
-<ins class="diff-chg">key
-</ins>
-is
-a
-<a class="tref internalDFN" title="string" href="#dfn-string">
-string
-</a>.
-A
-single
-colon
-comes
-after
-each
-<del class="diff-old">name,
-</del>
-<ins class="diff-chg">key,
-</ins>
-separating
-the
-<del class="diff-old">name
-</del>
-<ins class="diff-chg">key
-</ins>
-from
-the
-value.
-A
-single
-comma
-separates
-a
-value
-from
-a
-following
-<del class="diff-old">name.
-The
-names
-within
-</del>
-<ins class="diff-chg">key.
-In
-contrast
-to
-JSON,
-in
-JSON-LD
-the
-keys
-in
-</ins>
-an
-object
-<del class="diff-old">should
-</del>
-<ins class="diff-chg">must
-</ins>
-be
-unique.
-</dd>
-<dt>
-<dfn title="array" id="dfn-array">
-array
-</dfn>
-</dt>
-<dd>
-An
-array
-<ins class="diff-new">structure
-</ins>
-is
-represented
-as
-square
-brackets
-surrounding
-zero
-or
-more
-<del class="diff-old">values
-that
-</del>
-<ins class="diff-chg">values.
-Values
-</ins>
-are
-separated
-by
-commas.
-<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.
-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
-JSON
-arrays,
-it
-is
-not
-in
-regular
-JSON-LD
-arrays
-unless
-specifically
-defined
-(see
-</ins><cite><a href="../json-ld/#sets-and-lists"><ins class="diff-new">
-Sets
-and
-Lists
-</ins></a></cite><ins class="diff-new">
-in
-the
-JSON-LD
-specification
-[
-</ins><cite><a class="bibref" href="#bib-JSON-LD"><ins class="diff-new">
-JSON-LD
-</ins></a></cite><ins class="diff-new">
-]).
-</ins>
-</dd>
-<dt>
-<dfn title="string" id="dfn-string">
-string
-</dfn>
-</dt>
-<dd>
-A
-string
-is
-a
-sequence
-of
-zero
-or
-more
-Unicode
-<del class="diff-old">(UTF-8)
-</del>
-characters,
-wrapped
-in
-double
-quotes,
-using
-backslash
-escapes
-(if
-necessary).
-A
-character
-is
-represented
-as
-a
-single
-character
-string.
-</dd>
-<dt>
-<dfn title="number" id="dfn-number">
-number
-</dfn>
-</dt>
-<dd>
-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.
-</dd>
-<dt>
-<dfn title="true" id="dfn-true">
-true
-</dfn>
-and
-<dfn title="false" id="dfn-false">
-false
-</dfn>
-</dt>
-<dd>
-Values
-that
-are
-used
-to
-express
-one
-of
-two
-possible
-boolean
-states.
-</dd>
-<dt>
-<dfn title="null" id="dfn-null">
-null
-</dfn>
-</dt>
-<dd>
-<del class="diff-old">Unless
-otherwise
-specified,
-a
-JSON-LD
-processor
-must
-act
-as
-if
-</del>
-<ins class="diff-chg">The
-</ins><a class="tref internalDFN" title="null" href="#dfn-null"><ins class="diff-chg">
-null
-</ins></a><ins class="diff-chg">
-value.
-A
-key-value
-pair
-in
-the
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code><ins class="diff-chg">
-where
-the
-value,
-or
-the
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code><ins class="diff-chg">
-of
-the
-value,
-is
-</ins><a class="tref internalDFN" title="null" href="#dfn-null"><ins class="diff-chg">
-null
-</ins></a><ins class="diff-chg">
-explicitly
-decouples
-</ins>
-a
-<ins class="diff-new">term's
-association
-with
-an
-</ins><abbr title="Internationalized Resource Identifier"><ins class="diff-new">
-IRI
-</ins></abbr>.<ins class="diff-new">
-A
-</ins>
-key-value
-pair
-in
-the
-body
-of
-a
-JSON-LD
-document
-<del class="diff-old">was
-never
-declared
-when
-the
-</del>
-<ins class="diff-chg">whose
-</ins>
-value
-<del class="diff-old">equals
-</del>
-<ins class="diff-chg">is
-</ins><a class="tref internalDFN" title="null" href="#dfn-null">
-null
-<del class="diff-old">.
-</del>
-</a>
-<ins class="diff-chg">has
-the
-same
-meaning
-as
-if
-the
-key-value
-pair
-was
-not
-defined.
-</ins>
-If
-<code>
[email protected]
-</code>,
-<code>
[email protected]
-</code>,
-or
-<code>
[email protected]
-</code>
-is
-set
-to
-<a class="tref internalDFN" title="null" href="#dfn-null">
-null
-</a>
-in
-expanded
-form,
-then
-the
-entire
-<a class="tref internalDFN" title="json-object" href="#dfn-json-object">
-JSON
-object
-</a>
-is
-ignored.
-<del class="diff-old">If
[email protected]
-is
-set
-to
-null
-,
-</del>
-</dd>
-</dl>
-<p>
-<ins class="diff-chg">Furthermore,
-</ins>
-the
-<del class="diff-old">active
-context
-</del>
-<ins class="diff-chg">following
-terminology
-</ins>
-is
-<del class="diff-old">reset
-and
-when
-</del>
-used
-<del class="diff-old">within
-a
-context
-,
-it
-removes
-any
-definition
-associated
-with
-the
-key,
-unless
-otherwise
-specified.
-</del>
-<ins class="diff-chg">throughout
-this
-document:
-</ins></p><dl>
-<dt>
-<del class="diff-old">subject
-definition
-</del>
-<dfn title="keyword" id="dfn-keyword">
-<ins class="diff-chg">keyword
-</ins>
-</dfn>
-</dt>
-<dd>
-A
-JSON
-<del class="diff-old">object
-used
-to
-represent
-a
-subject
-and
-one
-or
-more
-properties
-of
-</del>
-<ins class="diff-chg">key
-</ins>
-that
-<del class="diff-old">subject.
-A
-JSON
-object
-</del>
-is
-<del class="diff-old">a
-subject
-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]
-.
-</del>
-<ins class="diff-chg">specific
-to
-JSON-LD,
-specified
-in
-the
-section
-</ins><cite>
-<del class="diff-old">subject
-reference
-</del>
-<a href="../json-ld/#syntax-tokens-and-keywords">
-<ins class="diff-chg">Syntax
-Tokens
-and
-Keywords
-</ins></a>
-</cite>
-<ins class="diff-chg">of
-the
-JSON-LD
-specification
-[
-</ins><cite>
-<del class="diff-old">A
-JSON
-object
-</del>
-<a class="bibref" href="#bib-JSON-LD">
-<ins class="diff-chg">JSON-LD
-</ins>
-</a>
-<del class="diff-old">used
-to
-reference
-a
-subject
-having
-only
-the
[email protected]
-key.
-</del>
-</cite>
-<ins class="diff-chg">].
-</ins>
-</dd>
-<dt>
-<del class="diff-old">Linked
-Data
-</del>
-<dfn title="context" id="dfn-context">
-<ins class="diff-chg">context
-</ins>
-</dfn>
-</dt>
-<dd>
-A
-set
-of
-<del class="diff-old">documents,
-each
-containing
-a
-representation
-of
-</del>
-<ins class="diff-chg">rules
-for
-interpreting
-</ins>
-a
-<del class="diff-old">linked
-data
-graph
-.
-linked
-data
-graph
-or
-dataset
-</del>
-<ins class="diff-chg">JSON-LD
-document
-as
-specified
-in
-the
-section
-</ins><cite>
-<del class="diff-old">An
-unordered
-labeled
-directed
-graph,
-where
-node
-s
-are
-subject
-</del>
-<a href="../json-ld/#the-context">
-<ins class="diff-chg">The
-Context
-</ins>
-</a>
-<del class="diff-old">s
-or
-object
-</del>
-</cite>
-<ins class="diff-chg">of
-the
-JSON-LD
-specification
-[
-</ins><cite><a class="bibref" href="#bib-JSON-LD"><ins class="diff-chg">
-JSON-LD
-</ins>
-</a>
-<del class="diff-old">s,
-and
-edges
-are
-properties.
-</del>
-</cite>
-<ins class="diff-chg">].
-</ins>
-</dd>
-<dt>
-<del class="diff-old">node
-</del>
-<dfn title="json-ld-document" id="dfn-json-ld-document">
-<ins class="diff-chg">JSON-LD
-document
-</ins>
-</dfn>
-</dt>
-<dd>
-A
-<del class="diff-old">piece
-of
-information
-that
-</del>
-<a class="tref internalDFN" title="json-ld-document" href="#dfn-json-ld-document">
-<ins class="diff-chg">JSON-LD
-document
-</ins></a>
-is
-<del class="diff-old">represented
-in
-</del>
-a
-<del class="diff-old">linked
-data
-</del>
-<ins class="diff-chg">serialization
-of
-a
-collection
-of
-</ins><a class="tref internalDFN" title="json-ld-graph" href="#dfn-json-ld-graph"><ins class="diff-chg">
-JSON-LD
-graphs
-</ins></a><ins class="diff-chg">
-and
-comprises
-exactly
-one
-</ins><a class="tref internalDFN" title="default-graph" href="#dfn-default-graph"><ins class="diff-chg">
-default
-</ins>
-graph
-</a>
-<ins class="diff-new">and
-zero
-or
-more
-</ins><a class="tref internalDFN" title="named-graph" href="#dfn-named-graph"><ins class="diff-new">
-named
-graphs
-</ins>
-</a>.
-</dd>
-<dt>
-<dfn title="named-graph" id="dfn-named-graph">
-named
-graph
-</dfn>
-</dt>
-<dd>
-A
-<del class="diff-old">linked
-data
-</del>
-<ins class="diff-chg">named
-</ins>
-graph
-<del class="diff-old">that
-has
-one
-or
-more
-</del>
-<ins class="diff-chg">is
-a
-pair
-consisting
-of
-an
-</ins>
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-<del class="diff-old">that
-are
-used
-to
-refer
-to
-it.
-</del>
-<ins class="diff-chg">or
-</ins><a class="tref internalDFN" title="blank-node" href="#dfn-blank-node"><ins class="diff-chg">
-blank
-node
-</ins></a><ins class="diff-chg">
-(the
-</ins><dfn title="graph-name" id="dfn-graph-name">
-graph
-name
-</dfn>
-<del class="diff-old">An
-IRI
-that
-is
-a
-reference
-to
-</del>
-<ins class="diff-chg">)
-and
-</ins>
-a
-<del class="diff-old">named
-</del>
-<a class="tref internalDFN" title="json-ld-graph" href="#dfn-json-ld-graph">
-<ins class="diff-chg">JSON-LD
-</ins>
-graph
-</a>.
-</dd>
-<dt>
-<dfn title="default-graph" id="dfn-default-graph">
-default
-graph
-</dfn>
-</dt>
-<dd>
-<del class="diff-old">When
-executing
-an
-algorithm,
-</del>
-<ins class="diff-chg">The
-default
-graph
-is
-</ins>
-the
-<ins class="diff-new">only
-</ins>
-graph
-<del class="diff-old">where
-data
-should
-be
-placed
-if
-</del>
-<ins class="diff-chg">in
-</ins>
-a
-<del class="diff-old">named
-</del>
-<ins class="diff-chg">JSON-LD
-document
-which
-has
-no
-</ins><a class="tref internalDFN" title="graph-name" href="#dfn-graph-name">
-graph
-<del class="diff-old">is
-not
-specified.
-</del>
-<ins class="diff-chg">name
-</ins></a>.
-</dd>
-<dt>
-<del class="diff-old">subject
-</del>
-<dfn title="json-ld-graph" id="dfn-json-ld-graph">
-<ins class="diff-chg">JSON-LD
-graph
-</ins>
-</dfn>
-</dt>
-<dd>
-<del class="diff-old">Any
-node
-in
-</del>
-<ins class="diff-chg">A
-labeled
-directed
-graph,
-i.e.,
-</ins>
-a
-<del class="diff-old">linked
-data
-graph
-</del>
-<ins class="diff-chg">set
-of
-</ins><a class="tref internalDFN" title="node" href="#dfn-node"><ins class="diff-chg">
-nodes
-</ins>
-</a>
-<del class="diff-old">with
-at
-least
-one
-outgoing
-edge.
-IRI
-An
-Internationalized
-Resource
-Identifier
-</del>
-<ins class="diff-chg">connected
-by
-</ins><a class="tref internalDFN" title="edge" href="#dfn-edge"><ins class="diff-chg">
-edges
-</ins></a>,
-as
-<del class="diff-old">described
-</del>
-<ins class="diff-chg">specified
-</ins>
-in
-<del class="diff-old">[
-</del>
-<ins class="diff-chg">the
-</ins>
-<cite>
-<del class="diff-old">RFC3987
-</del>
-<a href="../json-ld/#data-model">
-<ins class="diff-chg">Data
-Model
-</ins>
-</a>
-</cite>
-<del class="diff-old">]).
-object
-A
-node
-in
-a
-linked
-data
-graph
-with
-at
-least
-one
-incoming
-edge.
-property
-An
-edge
-of
-the
-linked
-data
-graph
-.
-literal
-An
-object
-with
-a
-label
-that
-is
-not
-an
-IRI
-.
-quad
-A
-piece
-</del>
-<ins class="diff-chg">section
-</ins>
-of
-<del class="diff-old">information
-that
-contains
-four
-items;
-a
-subject
-,
-a
-property
-,
-a
-object
-,
-and
-a
-graph
-name
-.
-context
-A
-JSON
-object
-that
-contains
-rules
-for
-interpreting
-a
-JSON-LD
-document.
-keyword
-A
-JSON
-key
-that
-is
-specific
-to
-JSON-LD,
-specified
-in
-</del>
-the
-JSON-LD
-<del class="diff-old">Syntax
-</del>
-specification
-[
-<cite>
-<a class="bibref" href="#bib-JSON-LD">
-JSON-LD
-</a>
-</cite>
-<del class="diff-old">]
-in
-the
-section
-titled
-Syntax
-Tokens
-and
-Keywords
-.
-</del>
-<ins class="diff-chg">].
-</ins>
-</dd>
-<del class="diff-old">3.2
-JsonLdProcessor
-The
-JSON-LD
-Processor
-interface
-is
-the
-high-level
-programming
-structure
-that
-developers
-use
-to
-access
-the
-JSON-LD
-transformation
-methods.
-    ]
-interface  {
-};
-3.2.1
-Methods
-</del>
-<dt>
-<del class="diff-old">compact
-</del>
-<dfn title="edge" id="dfn-edge">
-<ins class="diff-chg">edge
-</ins></dfn>
-</dt>
-<dd>
-<del class="diff-old">Compacts
-</del>
-<ins class="diff-chg">Every
-</ins><a class="tref internalDFN" title="edge" href="#dfn-edge"><ins class="diff-chg">
-edge
-</ins>
-</a>
-<del class="diff-old">the
-given
-input
-using
-the
-context
-according
-to
-the
-steps
-in
-the
-Compaction
-Algorithm
-.
-The
-input
-must
-be
-copied,
-compacted
-</del>
-<ins class="diff-chg">has
-a
-direction
-associated
-with
-it
-</ins>
-and
-<del class="diff-old">returned
-if
-there
-are
-no
-errors.
-If
-the
-compaction
-fails,
-an
-appropriate
-exception
-must
-be
-thrown.
-Parameter
-Type
-Nullable
-Optional
-Description
-input
-object
-or
-object[]
-or
-URL
-✘
-✘
-The
-JSON-LD
-object
-or
-array
-of
-JSON-LD
-objects
-to
-perform
-the
-compaction
-upon
-or
-</del>
-<ins class="diff-chg">is
-labeled
-with
-</ins>
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-<del class="diff-old">referencing
-the
-JSON-LD
-document
-to
-compact.
-context
-object
-</del>
-or
-<del class="diff-old">URL
-✘
-✘
-The
-context
-to
-use
-when
-compacting
-the
-input
-;
-either
-in
-the
-form
-of
-an
-JSON
-object
-or
-as
-IRI
-.
-callback
-JsonLdCallback
-✘
-✘
-A
-callback
-that
-is
-called
-when
-processing
-is
-complete
-on
-the
-given
-input
-.
-options
-JsonLdOptions
-✘
-✔
-A
-set
-of
-options
-that
-may
-affect
-the
-expansion
-algorithm
-such
-as,
-e.g.,
-the
-input
-document's
-base
-IRI
-</del>
-<ins class="diff-chg">a
-</ins><a class="tref internalDFN" title="blank-node-identifier" href="#dfn-blank-node-identifier"><ins class="diff-chg">
-blank
-node
-identifier
-</ins>
-</a>.
-<del class="diff-old">This
-also
-includes
-optimize
-,
-which
-if
-set
-will
-cause
-processor-specific
-optimization.
-Return
-type:
-void
-expand
-Expands
-the
-given
-input
-according
-to
-the
-steps
-in
-</del>
-<ins class="diff-chg">Within
-</ins>
-the
-<del class="diff-old">Expansion
-Algorithm
-.
-The
-input
-must
-be
-copied,
-expanded
-and
-returned
-if
-there
-</del>
-<ins class="diff-chg">JSON-LD
-syntax
-these
-edge
-labels
-</ins>
-are
-<del class="diff-old">no
-errors.
-If
-the
-expansion
-fails,
-</del>
-<ins class="diff-chg">called
-</ins><dfn title="property" id="dfn-property"><ins class="diff-chg">
-properties
-</ins></dfn>.<ins class="diff-chg">
-Whenever
-possible,
-</ins>
-an
-<del class="diff-old">appropriate
-exception
-must
-be
-thrown.
-Parameter
-Type
-Nullable
-Optional
-Description
-input
-object
-or
-object[]
-or
-URL
-</del>
-<a class="tref internalDFN" title="edge" href="#dfn-edge">
-<ins class="diff-chg">edge
-</ins>
-</a>
-<del class="diff-old">✘
-✘
-The
-JSON-LD
-object
-or
-array
-of
-JSON-LD
-objects
-to
-perform
-the
-expansion
-upon
-or
-</del>
-<ins class="diff-chg">should
-be
-labeled
-with
-</ins>
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<del class="diff-old">referencing
-the
-JSON-LD
-document
-to
-expand.
-context
-object
-or
-URL
-✔
-✘
-An
-optional
-external
-context
-to
-use
-additionally
-to
-the
-context
-embedded
-in
-input
-when
-expanding
-the
-input
-.
-callback
-JsonLdCallback
-✘
-✘
-A
-callback
-that
-is
-called
-when
-processing
-is
-complete
-on
-the
-given
-input
-.
-options
-JsonLdOptions
-✘
-✔
-A
-set
-of
-options
-that
-may
-affect
-the
-expansion
-algorithm
-such
-as,
-e.g.,
-the
-input
-document's
-base
-IRI
-</del>
-</a>.
-<del class="diff-old">Return
-type:
-void
-</del>
-</dd>
-<dt>
-<del class="diff-old">fromRDF
-Creates
-a
-JSON-LD
-document
-given
-an
-set
-of
-Quads
-.
-Parameter
-Type
-Nullable
-Optional
-Description
-input
-Quad
-[]
-✘
-✘
-A
-dataset
-represented
-as
-an
-array
-of
-Quads
-.
-callback
-JsonLdCallback
-✘
-✘
-A
-callback
-that
-is
-called
-when
-processing
-is
-complete
-on
-the
-given
-input
-.
-options
-JsonLdOptions
-✘
-✔
-A
-set
-of
-options
-that
-will
-affect
-the
-algorithm.
-This
-includes
-notType
-,
-which
-if
-set
-to
-true
-causes
-the
-resulting
-document
-to
-use
-rdf:type
-as
-a
-property,
-instead
-of
[email protected]
-.
-Return
-type:
-void
-toRDF
-</del>
-<dfn title="node" id="dfn-node">
-<ins class="diff-chg">node
-</ins></dfn>
-</dt>
-<dd>
-<del class="diff-old">Processes
-the
-input
-according
-to
-the
-Convert
-to
-RDF
-Algorithm
-,
-calling
-the
-provided
-callback
-for
-each
-Quad
-generated.
-Parameter
-Type
-Nullable
-Optional
-Description
-input
-object
-or
-object[]
-or
-URL
-✘
-✘
-The
-JSON-LD
-object
-or
-array
-of
-JSON-LD
-objects
-to
-convert
-to
-RDF
-or
-a
-URL
-referencing
-the
-JSON-LD
-document
-to
-convert
-to
-RDF.
-callback
-QuadCallback
-✘
-✘
-A
-callback
-that
-is
-called
-when
-a
-Quad
-</del>
-<ins class="diff-chg">Every
-</ins><a class="tref internalDFN" title="node" href="#dfn-node"><ins class="diff-chg">
-node
-</ins>
-</a>
-is
-<del class="diff-old">created
-from
-processing
-the
-given
-input
-.
-options
-JsonLdOptions
-✘
-✔
-A
-set
-of
-options
-that
-may
-affect
-the
-conversion
-to
-RDF
-such
-as,
-e.g.,
-the
-input
-document's
-base
-</del>
-<ins class="diff-chg">an
-</ins>
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<del class="diff-old">.
-Return
-type:
-void
-3.3
-Callbacks
-3.3.1
-JsonLdCallback
-The
-JsonLdCallback
-is
-used
-to
-return
-</del>
-</a>,
-a
-<del class="diff-old">processed
-</del>
-<a class="tref internalDFN" title="blank-node" href="#dfn-blank-node">
-<ins class="diff-chg">blank
-node
-</ins></a>,<ins class="diff-chg">
-a
-</ins><a class="tref internalDFN" title="json-ld-value" href="#dfn-json-ld-value">
-JSON-LD
-<del class="diff-old">representation
-as
-the
-result
-of
-processing
-an
-API
-method.
-    ]
-interface  {
-};
-3.3.1.1
-Methods
-jsonLd
-This
-callback
-is
-invoked
-when
-processing
-is
-complete.
-Parameter
-Type
-Nullable
-Optional
-Description
-jsonld
-object
-</del>
-<ins class="diff-chg">value
-</ins></a>,
-or
-<del class="diff-old">object
-[]
-✘
-✘
-The
-processed
-JSON-LD
-document.
-Return
-type:
-void
-3.3.2
-QuadCallback
-The
-QuadCallback
-is
-called
-whenever
-the
-processor
-generates
-</del>
-a
-<del class="diff-old">quad
-during
-the
-quad()
-call.
-    ]
-interface  {
-};
-3.3.2.1
-Methods
-quad
-This
-callback
-is
-invoked
-whenever
-a
-quad
-is
-generated
-by
-the
-processor.
-Parameter
-Type
-Nullable
-Optional
-Description
-quad
-Quad
-✘
-✘
-The
-quad.
-Return
-type:
-void
-</del>
-<a class="tref internalDFN" title="list" href="#dfn-list">
-<ins class="diff-chg">list
-</ins></a>.
-</dd>
-<dt>
-<del class="diff-old">3.4
-Data
-Structures
-This
-section
-describes
-datatype
-definitions
-used
-within
-the
-JSON-LD
-API.
-3.4.1
-URL
-The
-URL
-datatype
-is
-a
-string
-representation
-of
-an
-</del>
-<dfn title="iri" id="dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<del class="diff-old">.
-typedef
-DOMString
-URL
-;
-</del>
-</dfn>
-<del class="diff-old">This
-datatype
-indicates
-that
-the
-</del>
-</dt>
-<dd>
-<ins class="diff-chg">An
-</ins>
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>
-<del class="diff-old">is
-interpreted
-as
-a
-Universal
-</del>
-<ins class="diff-chg">(Internationalized
-</ins>
-Resource
-<del class="diff-old">Locator
-identifying
-a
-document,
-which
-when
-parsed
-as
-JSON
-yields
-either
-a
-JSON
-object
-or
-array
-.
-3.4.2
-JsonLdOptions
-The
-JsonLdOptions
-type
-</del>
-<ins class="diff-chg">Identifier)
-</ins>
-is
-<del class="diff-old">used
-to
-convert
-</del>
-a
-<del class="diff-old">set
-of
-options
-</del>
-<ins class="diff-chg">string
-that
-conforms
-</ins>
-to
-<del class="diff-old">an
-interface
-method.
-typedef
-</del>
-<ins class="diff-chg">the
-syntax
-defined
-in
-[
-</ins><cite>
-<del class="diff-old">object
-</del>
-<a class="bibref" href="#bib-RFC3987">
-<ins class="diff-chg">RFC3987
-</ins>
-</a>
-<del class="diff-old">JsonLdOptions
-;
-</del>
-</cite>
-<ins class="diff-chg">].
-</ins></dd>
-<dt>
-<del class="diff-old">URL
-base
-The
-Base
-</del>
-<dfn title="absolute-iri" id="dfn-absolute-iri">
-<ins class="diff-chg">absolute
-</ins>
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<del class="diff-old">to
-use
-when
-expanding
-the
-document.
-This
-overrides
-the
-value
-of
-input
-if
-it
-is
-a
-</del>
-<del class="diff-old">URL
-</del>
-</dfn>
-<del class="diff-old">or
-if
-it
-is
-a
-object
-or
-object[]
-.
-boolean
-optimize
-If
-set
-to
-true
-,
-the
-JSON-LD
-processor
-is
-allowed
-to
-optimize
-the
-output
-of
-the
-Compaction
-Algorithm
-to
-produce
-even
-compacter
-representations.
-The
-algorithm
-for
-compaction
-optimization
-is
-beyond
-the
-scope
-of
-this
-specification
-and
-thus
-not
-defined.
-Consequently,
-different
-implementations
-may
-implement
-different
-optimization
-algorithms.
-boolean
-noType
-</del>
-</dt>
-<dd>
-<del class="diff-old">If
-set
-to
-true
-,
-the
-JSON-LD
-processor
-will
-not
-use
-the
[email protected]
-property
-when
-generating
-the
-output,
-and
-will
-use
-the
-expanded
-rdf:type
-</del>
-<ins class="diff-chg">An
-absolute
-</ins>
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<del class="diff-old">as
-the
-property
-instead
-of
[email protected]
-.
-The
-following
-data
-structures
-are
-used
-for
-representing
-data
-about
-RDF
-quads.
-They
-are
-used
-for
-normalization,
-fromRDF
-,
-and
-from
-toRDF
-interfaces.
-3.4.3
-Quad
-The
-Quad
-interface
-represents
-an
-RDF
-Quad.
-See
-</del>
-<ins class="diff-chg">is
-defined
-in
-</ins>
-[
-<cite>
-<del class="diff-old">RDF-CONCEPTS
-</del>
-<a class="bibref" href="#bib-RFC3987">
-<ins class="diff-chg">RFC3987
-</ins>
-</a>
-</cite>
-]
-<del class="diff-old">definition
-for
-RDF
-triple
-,
-which
-most
-closely
-aligns
-to
-Quad
-.
-    ]
-interface  {
-};
-3.4.3.1
-Attributes
-graphName
-of
-type
-Node
-,
-readonly,
-nullable
-If
-present,
-the
-name
-associated
-with
-the
-Quad
-identifying
-it
-as
-a
-member
-of
-</del>
-<ins class="diff-chg">containing
-</ins>
-a
-<del class="diff-old">named
-graph
-.
-If
-it
-is
-missing,
-the
-quad
-is
-</del>
-<em>
-<ins class="diff-chg">scheme
-</ins></em><ins class="diff-chg">
-along
-with
-</ins>
-a
-<del class="diff-old">member
-of
-the
-default
-graph
-.
-Issue
-4
-This
-element
-is
-at
-risk,
-</del>
-<em>
-<ins class="diff-chg">path
-</ins></em>
-and
-<del class="diff-old">may
-be
-removed.
-object
-of
-type
-Node
-,
-readonly
-The
-object
-associated
-with
-the
-Quad
-.
-</del>
-<ins class="diff-chg">optional
-</ins><em><ins class="diff-chg">
-query
-</ins></em><ins class="diff-chg">
-and
-fragment
-segments.
-</ins>
-</dd>
-<dt>
-<del class="diff-old">predicate
-of
-type
-Node
-,
-readonly
-The
-predicate
-associated
-with
-the
-Quad
-</del>
-<dfn title="relative-iri" id="dfn-relative-iri">
-<ins class="diff-chg">relative
-</ins><abbr title="Internationalized Resource Identifier"><ins class="diff-chg">
-IRI
-</ins></abbr>
-<del class="diff-old">.
-Within
-JSON-LD,
-an
-RDF
-predicate
-</del>
-</dfn>
-<del class="diff-old">is
-refered
-to
-as
-a
-property
-subject
-of
-type
-</del>
-<del class="diff-old">Node
-,
-readonly
-</del>
-</dt>
-<dd>
-<del class="diff-old">The
-subject
-associated
-with
-the
-Quad
-.
-3.4.4
-Node
-Node
-is
-the
-base
-class
-of
-</del>
-<ins class="diff-chg">A
-relative
-</ins>
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<del class="diff-old">,
-BlankNode
-,
-and
-Literal
-.
-It
-</del>
-is
-<del class="diff-old">the
-IDL
-representation
-of
-a
-linked
-data
-graph
-node
-.
-    ]
-interface  {
-};
-3.4.5
-</del>
-<ins class="diff-chg">an
-</ins>
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<del class="diff-old">A
-node
-</del>
-that
-is
-<del class="diff-old">an
-</del>
-<ins class="diff-chg">relative
-some
-other
-</ins><a class="tref internalDFN" title="absolute-iri" href="#dfn-absolute-iri"><ins class="diff-chg">
-absolute
-</ins>
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<del class="diff-old">.
-    ]
-interface  {
-};
-3.4.5.1
-Attributes
-value
-of
-type
-DOMString
-</del>
-</a>
-<del class="diff-old">,
-readonly
-The
-IRI
-identifier
-</del>
-<ins class="diff-chg">;
-in
-the
-case
-</ins>
-of
-<ins class="diff-new">JSON-LD
-this
-is
-</ins>
-the
-<del class="diff-old">node
-as
-a
-[
-UNICODE
-]
-string.
-</del>
-<ins class="diff-chg">base
-location
-of
-the
-document.
-</ins>
-</dd>
-<dt>
-<del class="diff-old">3.4.6
-Blank
-Node
-</del>
-<dfn title="blank-node" id="dfn-blank-node">
-<ins class="diff-chg">blank
-node
-</ins>
-</dfn>
-</dt>
-<dd>
-A
-<a class="tref internalDFN" title="node" href="#dfn-node">
-node
-</a>
-in
-<del class="diff-old">the
-linked
-data
-</del>
-<ins class="diff-chg">a
-</ins><a class="tref internalDFN" title="json-ld-graph" href="#dfn-json-ld-graph"><ins class="diff-chg">
-JSON-LD
-</ins>
-graph
-</a>
-that
-<del class="diff-old">does
-not
-contain
-a
-de-reference-able
-identifier
-because
-it
-</del>
-is
-<del class="diff-old">either
-ephemeral
-in
-nature
-or
-does
-not
-contain
-information
-that
-needs
-to
-be
-linked
-to
-from
-outside
-of
-the
-linked
-data
-graph
-.
-A
-blank
-node
-is
-assigned
-an
-identifier
-starting
-with
-the
-prefix
-_:
-and
-</del>
-<ins class="diff-chg">neither
-</ins>
-an
-<del class="diff-old">implementation
-dependent,
-auto-generated
-suffix
-that
-is
-unique
-to
-all
-information
-associated
-with
-the
-particular
-blank
-node.
-    ]
-interface  {
-};
-3.4.6.1
-Attributes
-</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">nor
-a
-</ins><a class="tref internalDFN" title="json-ld-value" href="#dfn-json-ld-value"><ins class="diff-chg">
-JSON-LD
-value
-</ins></a>,<ins class="diff-chg">
-nor
-a
-</ins><a class="tref internalDFN" title="list" href="#dfn-list"><ins class="diff-chg">
-list
-</ins></a>.</dd><dt>
-<dfn title="blank-node-identifier" id="dfn-blank-node-identifier">
-<ins class="diff-chg">blank
-node
-</ins>
-identifier
-<del class="diff-old">of
-type
-DOMString
-</del>
-</dfn>
-<del class="diff-old">,
-readonly
-</del>
-</dt>
-<dd>
-<del class="diff-old">The
-temporary
-identifier
-of
-the
-</del>
-<ins class="diff-chg">A
-</ins>
-blank
-node
-<del class="diff-old">.
-The
-</del>
-identifier
-<del class="diff-old">must
-not
-be
-relied
-upon
-in
-any
-way
-between
-two
-separate
-processing
-runs
-of
-the
-same
-document
-or
-with
-</del>
-<ins class="diff-chg">is
-</ins>
-a
-<del class="diff-old">different
-document.
-Note
-Developers
-and
-authors
-must
-not
-assume
-</del>
-<ins class="diff-chg">string
-</ins>
-that
-<del class="diff-old">the
-value
-of
-</del>
-<ins class="diff-chg">can
-be
-used
-as
-an
-identifier
-for
-</ins>
-a
-<a class="tref internalDFN" title="blank-node" href="#dfn-blank-node">
-blank
-node
-</a>
-<del class="diff-old">will
-remain
-the
-same
-between
-two
-processing
-runs.
-BlankNode
-values
-are
-only
-valid
-for
-the
-most
-recent
-processing
-run
-on
-</del>
-<ins class="diff-chg">within
-</ins>
-the
-<ins class="diff-new">scope
-of
-a
-JSON-LD
-</ins>
-document.
-<ins class="diff-chg">Blank
-node
-identifiers
-begin
-with
-</ins>
-<code>
-<del class="diff-old">BlankNode
-values
-will
-often
-be
-generated
-differently
-by
-different
-processors.
-Note
-Implementers
-must
-ensure
-that
-</del>
-<ins class="diff-chg">_:
-</ins></code>.</dd><dt>
-<del class="diff-old">BlankNode
-</del>
-<dfn title="json-ld-value" id="dfn-json-ld-value">
-<ins class="diff-chg">JSON-LD
-value
-</ins></dfn>
-</dt>
-<dd>
-<ins class="diff-new">A
-</ins><a class="tref internalDFN" title="json-ld-value" href="#dfn-json-ld-value"><ins class="diff-new">
-JSON-LD
-value
-</ins>
-</a>
-<del class="diff-old">values
-are
-unique
-within
-the
-current
-environment,
-two
-BlankNodes
-</del>
-<ins class="diff-chg">is
-a
-</ins><a class="tref internalDFN" title="string" href="#dfn-string"><ins class="diff-chg">
-string
-</ins></a>,<ins class="diff-chg">
-a
-</ins><a class="tref internalDFN" title="number" href="#dfn-number"><ins class="diff-chg">
-number
-</ins></a>,<a class="tref internalDFN" title="true" href="#dfn-true"><ins class="diff-chg">
-true
-</ins>
-</a>
-<del class="diff-old">are
-considered
-equal
-if,
-and
-only
-if,
-their
-values
-are
-strictly
-equal.
-</del>
-<ins class="diff-chg">or
-</ins><a class="tref internalDFN" title="false" href="#dfn-false"><ins class="diff-chg">
-false
-</ins></a>,<ins class="diff-chg">
-a
-</ins><a class="tref internalDFN" title="typed-value" href="#dfn-typed-value"><ins class="diff-chg">
-typed
-value
-</ins></a>,<ins class="diff-chg">
-or
-a
-</ins><a class="tref internalDFN" title="language-tagged-string" href="#dfn-language-tagged-string"><ins class="diff-chg">
-language-tagged
-string
-</ins></a>.</dd><dt>
-<dfn title="typed-value" id="dfn-typed-value">
-<ins class="diff-chg">typed
-value
-</ins></dfn>
-<del class="diff-old">3.4.7
-Literal
-Literals
-represent
-values
-such
-as
-numbers,
-dates
-and
-strings
-in
-RDF
-data.
-</del>
-</dt>
-<dd>
-A
-<del class="diff-old">Literal
-</del>
-<a class="tref internalDFN" title="typed-value" href="#dfn-typed-value">
-<ins class="diff-chg">typed
-value
-</ins>
-</a>
-<del class="diff-old">is
-comprised
-</del>
-<ins class="diff-chg">consists
-</ins>
-of
-<del class="diff-old">three
-attributes:
-</del>
-a
-<del class="diff-old">lexical
-form
-of
-the
-value
-an
-optional
-language
-tag
-</del>
-<ins class="diff-chg">value,
-which
-is
-</ins>
-a
-<del class="diff-old">datatype
-specified
-by
-</del>
-<ins class="diff-chg">string,
-and
-a
-type,
-which
-is
-</ins>
-an
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>.
-</dd>
-<dt>
-<dfn title="language-tagged-string" id="dfn-language-tagged-string">
-<ins class="diff-chg">language-tagged
-string
-</ins></dfn>
-<del class="diff-old">Literals
-representing
-plain
-text
-in
-</del>
-</dt>
-<dd>
-<ins class="diff-chg">A
-</ins><a class="tref internalDFN" title="language-tagged-string" href="#dfn-language-tagged-string"><ins class="diff-chg">
-language-tagged
-string
-</ins></a><ins class="diff-chg">
-consists
-of
-</ins>
-a
-<del class="diff-old">natural
-language
-may
-have
-</del>
-<ins class="diff-chg">string
-and
-</ins>
-a
-<ins class="diff-chg">non-empty
-</ins>
-language
-tag
-<del class="diff-old">specified
-by
-a
-string
-token,
-</del>
-as
-<del class="diff-old">specified
-in
-</del>
-<ins class="diff-chg">defined
-by
-</ins>
-[
-<cite>
-<a class="bibref" href="#bib-BCP47">
-BCP47
-</a>
-</cite>
-<del class="diff-old">],
-normalized
-to
-lowercase
-(e.g.,
-'en'
-,
-'fr'
-,
-'en-gb'
-).
-They
-also
-have
-a
-datatype
-attribute
-such
-as
-xsd:string
-.
-If
-unspecified,
-the
-datatype
-defaults
-</del>
-<ins class="diff-chg">].
-The
-language
-tag
-must
-be
-well-formed
-according
-</ins>
-to
-<del class="diff-old">xsd:string
-.
-Literals
-representing
-values
-with
-a
-specific
-datatype,
-such
-as
-the
-integer
-72,
-may
-have
-a
-datatype
-attribute
-specified
-in
-the
-form
-of
-a
-IRI
-(e.g.,
-xsd:integer
-).
-See[
-RDF-CONCEPTS
-]
-definition
-for
-literal
-.
-      ]
-interface  {
-};
-3.4.7.1
-Attributes
-datatype
-</del>
-<a href="http://tools.ietf.org/html/bcp47#section-2.2.9">
-<ins class="diff-chg">section
-2.2.9
-Classes
-</ins>
-of
-<del class="diff-old">type
-IRI
-</del>
-<ins class="diff-chg">Conformance
-</ins>
-</a>
-<del class="diff-old">,
-readonly,
-nullable
-An
-optional
-datatype
-identified
-by
-a
-IRI
-.
-language
-</del>
-of
-<del class="diff-old">type
-DOMString
-,
-readonly,
-nullable
-An
-optional
-language
-tag
-as
-defined
-in
-</del>
-[
-<cite>
-<a class="bibref" href="#bib-BCP47">
-BCP47
-</a>
-</cite>
-],
-<ins class="diff-new">and
-is
-</ins>
-normalized
-to
-lowercase.
-</dd>
-<dt>
-<del class="diff-old">value
-of
-type
-DOMString
-</del>
-<dfn title="list" id="dfn-list">
-<ins class="diff-chg">list
-</ins></dfn>
-<del class="diff-old">,
-readonly
-</del>
-</dt>
-<dd>
-<del class="diff-old">The
-lexical
-form
-</del>
-<ins class="diff-chg">A
-</ins><a class="tref internalDFN" title="list" href="#dfn-list"><ins class="diff-chg">
-list
-</ins></a><ins class="diff-chg">
-is
-an
-ordered
-sequence
-</ins>
-of
-<del class="diff-old">the
-Literal's
-value.
-</del>
-<a class="tref internalDFN" title="iri" href="#dfn-iri">
-<ins class="diff-chg">IRIs
-</ins></a>,<a class="tref internalDFN" title="blank-node" href="#dfn-blank-node"><ins class="diff-chg">
-blank
-nodes
-</ins></a>,<ins class="diff-chg">
-and
-</ins><a class="tref internalDFN" title="json-ld-value" href="#dfn-json-ld-value"><ins class="diff-chg">
-JSON-LD
-values
-</ins></a>.
-</dd>
-</dl>
-</section>
-<section id="algorithm-terms">
-<h2>
-<span class="secno">
-<del class="diff-old">4.
-Algorithms
-All
-algorithms
-described
-in
-this
-section
-are
-intended
-to
-operate
-on
-language-native
-data
-structures.
-That
-is,
-the
-serialization
-to
-a
-text-based
-JSON
-document
-isn't
-required
-as
-input
-or
-output
-to
-any
-of
-these
-algorithms
-and
-language-native
-data
-structures
-must
-be
-used
-where
-applicable.
-4.1
-</del>
-<ins class="diff-chg">5.
-</ins>
-</span>
-Algorithm
-Terms
-</h2>
-<dl>
-<dt>
-<del class="diff-old">initial
-context
-</del>
-<dfn title="active-graph" id="dfn-active-graph">
-<ins class="diff-chg">active
-graph
-</ins>
-</dfn>
-</dt>
-<dd>
-<del class="diff-old">a
-context
-that
-is
-specified
-to
-the
-algorithm
-before
-processing
-begins.
-</del>
-The
-<del class="diff-old">contents
-</del>
-<ins class="diff-chg">name
-</ins>
-of
-the
-<del class="diff-old">initial
-context
-is
-defined
-in
-Appendix
-A
-.
-active
-subject
-the
-</del>
-currently
-active
-<del class="diff-old">subject
-</del>
-<ins class="diff-chg">graph
-</ins>
-that
-the
-processor
-should
-use
-when
-processing.
-</dd>
-<dt>
-<dfn title="active-subject" id="dfn-active-subject">
-active
-<del class="diff-old">property
-</del>
-<ins class="diff-chg">subject
-</ins>
-</dfn>
-</dt>
-<dd>
-<del class="diff-old">the
-</del>
-<ins class="diff-chg">The
-</ins>
-currently
-active
-<del class="diff-old">property
-</del>
-<ins class="diff-chg">subject
-</ins>
-that
-the
-processor
-should
-use
-when
-processing.
-<del class="diff-old">The
-active
-property
-is
-represented
-in
-the
-original
-lexical
-form,
-which
-is
-used
-for
-finding
-coercion
-mappings
-in
-the
-active
-context
-.
-</del>
-</dd>
-<dt>
-<dfn title="active-property" id="dfn-active-property">
-active
-<del class="diff-old">object
-</del>
-<ins class="diff-chg">property
-</ins>
-</dfn>
-</dt>
-<dd>
-<del class="diff-old">the
-</del>
-<ins class="diff-chg">The
-</ins>
-currently
-active
-<del class="diff-old">object
-</del>
-<a class="tref internalDFN" title="property" href="#dfn-property">
-<ins class="diff-chg">property
-</ins></a><ins class="diff-chg">
-or
-</ins><a class="tref internalDFN" title="keyword" href="#dfn-keyword"><ins class="diff-chg">
-keyword
-</ins></a>
-that
-the
-processor
-should
-use
-when
-processing.
-</dd>
-<dt>
-<dfn title="active-context" id="dfn-active-context">
-active
-context
-</dfn>
-</dt>
-<dd>
-<del class="diff-old">a
-</del>
-<ins class="diff-chg">A
-</ins>
-context
-that
-is
-used
-to
-resolve
-<a class="tref internalDFN" title="term" href="#dfn-term">
-<del class="diff-old">term
-</del>
-<ins class="diff-chg">terms
-</ins>
-</a>
-<del class="diff-old">s
-</del>
-while
-the
-processing
-algorithm
-is
-running.
-<del class="diff-old">The
-active
-</del>
-</dd>
-<dt>
-<dfn title="local-context" id="dfn-local-context">
-<ins class="diff-chg">local
-</ins>
-context
-<del class="diff-old">is
-the
-</del>
-</dfn>
-</dt>
-<dd>
-<ins class="diff-chg">A
-</ins>
-context
-<del class="diff-old">contained
-</del>
-<ins class="diff-chg">that
-is
-specified
-</ins>
-within
-<ins class="diff-new">a
-</ins><a class="tref internalDFN" title="json-object" href="#dfn-json-object"><ins class="diff-new">
-JSON
-object
-</ins></a>,<ins class="diff-new">
-specified
-via
-</ins>
-the
-<del class="diff-old">processor
-state
-</del>
-<code>
-<ins class="diff-chg">@context
-</ins></code><a class="tref internalDFN" title="keyword" href="#dfn-keyword"><ins class="diff-chg">
-keyword
-</ins>
-</a>.
-</dd>
-<dt>
-<dfn title="json-ld-input" id="dfn-json-ld-input">
-<ins class="diff-chg">JSON-LD
-input
-</ins></dfn></dt><dd><ins class="diff-chg">
-The
-JSON-LD
-data
-structure
-that
-is
-provided
-as
-input
-to
-the
-algorithm.
-</ins></dd><dt><dfn title="term" id="dfn-term"><ins class="diff-chg">
-term
-</ins></dfn></dt><dd><ins class="diff-chg">
-A
-</ins><a class="tref internalDFN" title="term" href="#dfn-term"><ins class="diff-chg">
-term
-</ins></a><ins class="diff-chg">
-is
-a
-short
-word
-defined
-in
-a
-context
-that
-may
-be
-expanded
-to
-an
-</ins><a class="tref internalDFN" title="iri" href="#dfn-iri"><abbr title="Internationalized Resource Identifier"><ins class="diff-chg">
-IRI
-</ins></abbr></a></dd><dt><dfn title="compact-iri" id="dfn-compact-iri">
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</dfn>
-</dt>
-<dd>
-<del class="diff-old">a
-</del>
-<ins class="diff-chg">A
-</ins>
-compact
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<del class="diff-old">is
-</del>
-has
-the
-form
-of
-<dfn title="prefix" id="dfn-prefix">
-prefix
-<del class="diff-old">and
-</del>
-</dfn>:
-<em>
-suffix
-</em>
-and
-is
-used
-as
-a
-way
-of
-expressing
-an
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-without
-needing
-to
-define
-separate
-<a class="tref internalDFN" title="term" href="#dfn-term">
-term
-</a>
-definitions
-for
-each
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-contained
-within
-a
-common
-vocabulary
-identified
-by
-<a class="tref internalDFN" title="prefix" href="#dfn-prefix">
-prefix
-</a>.
-</dd>
-<dt>
-<del class="diff-old">local
-context
-</del>
-<dfn title="node-object" id="dfn-node-object">
-<ins class="diff-chg">node
-object
-</ins>
-</dfn>
-</dt>
-<dd>
-<ins class="diff-new">A
-</ins><a class="tref internalDFN" title="node-object" href="#dfn-node-object"><ins class="diff-new">
-node
-object
-</ins></a><ins class="diff-new">
-represents
-zero
-or
-more
-properties
-of
-</ins>
-a
-<del class="diff-old">context
-that
-</del>
-<a class="tref internalDFN" title="node" href="#dfn-node">
-<ins class="diff-chg">node
-</ins></a><ins class="diff-chg">
-in
-the
-</ins><a class="tref internalDFN" title="json-ld-graph" href="#dfn-json-ld-graph"><ins class="diff-chg">
-JSON-LD
-graph
-</ins></a><ins class="diff-chg">
-serialized
-by
-the
-JSON-LD
-document.
-A
-</ins><a class="tref internalDFN" title="json-object" href="#dfn-json-object"><ins class="diff-chg">
-JSON
-object
-</ins></a>
-is
-<del class="diff-old">specified
-within
-</del>
-a
-<a class="tref internalDFN" title="node-object" href="#dfn-node-object">
-<ins class="diff-chg">node
-object
-</ins></a><ins class="diff-chg">
-if
-it
-exists
-outside
-of
-the
-JSON-LD
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a><ins class="diff-chg">
-and:
-</ins><ul><li><ins class="diff-chg">
-it
-does
-not
-contain
-the
-</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">
-keywords,
-or
-</ins></li><li><ins class="diff-chg">
-it
-is
-not
-the
-top-most
-</ins><a class="tref internalDFN" title="json-object" href="#dfn-json-object">
-JSON
-object
-<del class="diff-old">,
-specified
-via
-</del>
-</a>
-<ins class="diff-chg">in
-</ins>
-the
-<ins class="diff-new">JSON-LD
-document
-consisting
-of
-no
-other
-members
-than
-</ins>
-<code>
-<del class="diff-old">@context
-</del>
-<ins class="diff-chg">@graph
-</ins>
-</code>
-<del class="diff-old">keyword
-.
-</del>
-<ins class="diff-chg">and
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code>.</li></ul>
-</dd>
-<dt>
-<del class="diff-old">processor
-state
-</del>
-<dfn title="value-object" id="dfn-value-object">
-<ins class="diff-chg">value
-object
-</ins>
-</dfn>
-</dt>
-<dd>
-<del class="diff-old">the
-processor
-state
-,
-which
-includes
-the
-active
-context
-,
-active
-subject
-,
-and
-active
-property
-.
-The
-processor
-state
-</del>
-<ins class="diff-chg">A
-</ins><a class="tref internalDFN" title="value-object" href="#dfn-value-object"><ins class="diff-chg">
-value
-object
-</ins>
-</a>
-is
-<del class="diff-old">managed
-as
-a
-stack
-with
-elements
-from
-the
-previous
-processor
-state
-copied
-into
-a
-new
-processor
-state
-when
-entering
-</del>
-a
-<del class="diff-old">new
-</del>
-<a class="tref internalDFN" title="json-object" href="#dfn-json-object">
-JSON
-object
-<del class="diff-old">.
-</del>
-</a>
-<ins class="diff-chg">that
-has
-an
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code><ins class="diff-chg">
-member.
-</ins>
-</dd>
-<dt>
-<del class="diff-old">JSON-LD
-input
-</del>
-<dfn title="list-object" id="dfn-list-object">
-<ins class="diff-chg">list
-object
-</ins>
-</dfn>
-</dt>
-<dd>
-<del class="diff-old">The
-JSON-LD
-data
-structure
-that
-</del>
-<ins class="diff-chg">A
-</ins><a class="tref internalDFN" title="list-object" href="#dfn-list-object"><ins class="diff-chg">
-list
-object
-</ins></a>
-is
-<del class="diff-old">provided
-as
-input
-to
-the
-algorithm.
-</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><ins class="diff-chg">
-that
-has
-an
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code><ins class="diff-chg">
-member.
-</ins>
-</dd>
-<dt>
-<del class="diff-old">JSON-LD
-output
-</del>
-<dfn title="set-object" id="dfn-set-object">
-<ins class="diff-chg">set
-object
-</ins>
-</dfn>
-</dt>
-<dd>
-<del class="diff-old">The
-JSON-LD
-data
-structure
-that
-</del>
-<ins class="diff-chg">A
-</ins><a class="tref internalDFN" title="set-object" href="#dfn-set-object"><ins class="diff-chg">
-set
-object
-</ins></a>
-is
-<del class="diff-old">produced
-as
-output
-by
-the
-algorithm.
-</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><ins class="diff-chg">
-that
-has
-an
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code><ins class="diff-chg">
-member.
-</ins>
-</dd>
-<dt>
-<del class="diff-old">term
-</del>
-<dfn title="scalar" id="dfn-scalar">
-<ins class="diff-chg">scalar
-</ins>
-</dfn>
-</dt>
-<dd>
-A
-<del class="diff-old">term
-</del>
-<ins class="diff-chg">scalar
-</ins>
-is
-<ins class="diff-new">either
-</ins>
-a
-<del class="diff-old">short
-word
-defined
-in
-a
-context
-that
-may
-be
-expanded
-to
-an
-IRI
-</del>
-<ins class="diff-chg">JSON
-</ins><a class="tref internalDFN" title="string" href="#dfn-string"><ins class="diff-chg">
-string
-</ins></a>,<a class="tref internalDFN" title="number" href="#dfn-number"><ins class="diff-chg">
-number
-</ins></a>,<a class="tref internalDFN" title="true" href="#dfn-true"><ins class="diff-chg">
-true
-</ins></a>,<ins class="diff-chg">
-or
-</ins><a class="tref internalDFN" title="false" href="#dfn-false"><ins class="diff-chg">
-false
-</ins></a>.
-</dd>
-<dt>
-<del class="diff-old">prefix
-</del>
-<dfn title="rdf-subject" id="dfn-rdf-subject">
-<ins class="diff-chg">RDF
-subject
-</ins>
-</dfn>
-</dt>
-<dd>
-A
-<del class="diff-old">prefix
-is
-a
-term
-</del>
-<a class="tref externalDFN" title="subject" href="http://www.w3.org/TR/rdf11-concepts/#dfn-subject">
-<ins class="diff-chg">subject
-</ins>
-</a>
-<del class="diff-old">that
-expands
-to
-a
-vocabulary
-base
-IRI
-.
-It
-is
-typically
-used
-along
-with
-a
-suffix
-to
-form
-a
-compact
-IRI
-</del>
-<ins class="diff-chg">as
-specified
-by
-[
-</ins><cite>
-<a class="bibref" href="#bib-RDF11-CONCEPTS">
-<ins class="diff-new">RDF11-CONCEPTS
-</ins>
-</a>
-<del class="diff-old">to
-create
-an
-IRI
-within
-a
-vocabulary.
-</del>
-</cite>
-<ins class="diff-chg">].
-</ins>
-</dd>
-<dt>
-<del class="diff-old">language-tagged
-literal
-</del>
-<dfn title="rdf-predicate" id="dfn-rdf-predicate">
-<ins class="diff-chg">RDF
-predicate
-</ins>
-</dfn>
-</dt>
-<dd>
-A
-<del class="diff-old">language-tagged
-literal
-is
-a
-literal
-</del>
-<a class="tref externalDFN" title="predicate" href="http://www.w3.org/TR/rdf11-concepts/#dfn-predicate">
-<ins class="diff-chg">predicate
-</ins>
-</a>
-<del class="diff-old">without
-a
-datatype,
-including
-a
-language.
-See
-</del>
-<ins class="diff-chg">as
-specified
-by
-[
-</ins>
-<cite>
-<del class="diff-old">literal
-</del>
-<a class="bibref" href="#bib-RDF11-CONCEPTS">
-<ins class="diff-chg">RDF11-CONCEPTS
-</ins>
-</a>
-</cite>
-<del class="diff-old">in
-</del>
-<ins class="diff-chg">].
-</ins></dd><dt><dfn title="rdf-object" id="dfn-rdf-object"><ins class="diff-chg">
-RDF
-object
-</ins></dfn></dt><dd><ins class="diff-chg">
-An
-</ins><a class="tref externalDFN" title="object" href="http://www.w3.org/TR/rdf11-concepts/#dfn-object"><ins class="diff-chg">
-object
-</ins></a><ins class="diff-chg">
-as
-specified
-by
-</ins>
-[
-<cite>
-<del class="diff-old">RDF-CONCEPTS
-</del>
-<a class="bibref" href="#bib-RDF11-CONCEPTS">
-<ins class="diff-chg">RDF11-CONCEPTS
-</ins>
-</a>
-</cite>
-].
-</dd>
-<dt>
-<del class="diff-old">typed
-literal
-</del>
-<dfn title="rdf-triple" id="dfn-rdf-triple">
-<ins class="diff-chg">RDF
-triple
-</ins>
-</dfn>
-</dt>
-<dd>
-A
-<del class="diff-old">typed
-literal
-is
-a
-literal
-with
-an
-associated
-IRI
-</del>
-<a class="tref externalDFN" title="triple" href="http://www.w3.org/TR/rdf11-concepts/#dfn-rdf-triple">
-<ins class="diff-chg">triple
-</ins>
-</a>
-<del class="diff-old">which
-indicates
-the
-literal's
-datatype.
-See
-</del>
-<ins class="diff-chg">as
-specified
-by
-[
-</ins>
-<cite>
-<del class="diff-old">language-tagged
-string
-</del>
-<a class="bibref" href="#bib-RDF11-CONCEPTS">
-<ins class="diff-chg">RDF11-CONCEPTS
-</ins>
-</a>
-</cite>
-<del class="diff-old">in
-</del>
-<ins class="diff-chg">].
-</ins></dd><dt><dfn title="rdf-dataset" id="dfn-rdf-dataset"><ins class="diff-chg">
-RDF
-dataset
-</ins></dfn></dt><dd><ins class="diff-chg">
-A
-</ins><a class="tref externalDFN" title="dataset" href="http://www.w3.org/TR/rdf11-concepts/#dfn-rdf-dataset"><ins class="diff-chg">
-dataset
-</ins></a><ins class="diff-chg">
-as
-specified
-by
-</ins>
-[
-<cite>
-<del class="diff-old">RDF-CONCEPTS
-</del>
-<a class="bibref" href="#bib-RDF11-CONCEPTS">
-<ins class="diff-chg">RDF11-CONCEPTS
-</ins>
-</a>
-</cite>
-<del class="diff-old">].
-</del>
-<ins class="diff-chg">]
-representing
-a
-collection
-of
-</ins><a class="tref externalDFN" title="rdf-graphs" href="http://www.w3.org/TR/rdf11-concepts/#dfn-rdf-graph"><ins class="diff-chg">
-RDF
-graphs
-</ins></a>.
-</dd>
-</dl>
-</section>
-<section id="context-processing-algorithms">
-<h2>
-<span class="secno">
-<del class="diff-old">4.2
-</del>
-<ins class="diff-chg">6.
-</ins></span><ins class="diff-chg">
-Context
-Processing
-Algorithms
-</ins></h2><section id="context-processing-algorithm"><h3><span class="secno"><ins class="diff-chg">
-6.1
-</ins>
-</span>
-Context
-Processing
-<ins class="diff-new">Algorithm
-</ins>
-</h3>
-<p>
-<del class="diff-old">Processing
-of
-</del>
-<ins class="diff-chg">When
-processing
-a
-</ins>
-JSON-LD
-data
-<del class="diff-old">structure
-is
-managed
-recursively.
-During
-processing,
-</del>
-<ins class="diff-chg">structure,
-</ins>
-each
-<ins class="diff-new">processing
-</ins>
-rule
-is
-applied
-using
-information
-provided
-by
-the
-<a class="tref internalDFN" title="active-context" href="#dfn-active-context">
-active
-context
-</a>.
-<del class="diff-old">Processing
-begins
-by
-pushing
-a
-new
-processor
-state
-</del>
-<ins class="diff-chg">This
-section
-describes
-how
-to
-produce
-an
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context"><ins class="diff-chg">
-active
-context
-</ins></a>.</p><p><ins class="diff-chg">
-The
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context"><ins class="diff-chg">
-active
-context
-</ins>
-</a>
-<del class="diff-old">onto
-</del>
-<ins class="diff-chg">contains
-</ins>
-the
-<del class="diff-old">processor
-state
-</del>
-<ins class="diff-chg">active
-</ins><dfn title="term-definition" id="dfn-term-definition"><ins class="diff-chg">
-term
-definitions
-</ins></dfn><ins class="diff-chg">
-which
-specify
-how
-properties
-and
-values
-have
-to
-be
-interpreted
-as
-well
-as
-the
-current
-</ins><dfn title="base-iri" id="dfn-base-iri"><ins class="diff-chg">
-base
-</ins><abbr title="Internationalized Resource Identifier"><ins class="diff-chg">
-IRI
-</ins></abbr></dfn>,<ins class="diff-chg">
-the
-</ins><dfn title="vocabulary-mapping" id="dfn-vocabulary-mapping"><ins class="diff-chg">
-vocabulary
-mapping
-</ins></dfn><ins class="diff-chg">
-and
-the
-</ins><dfn title="default-language" id="dfn-default-language"><ins class="diff-chg">
-default
-language
-</ins></dfn>.<ins class="diff-chg">
-Each
-</ins><a class="tref internalDFN" title="term-definition" href="#dfn-term-definition"><ins class="diff-chg">
-term
-definition
-</ins>
-</a>
-<del class="diff-old">stack
-</del>
-<ins class="diff-chg">consists
-of
-an
-</ins><dfn title="iri-mapping" id="dfn-iri-mapping"><abbr title="Internationalized Resource Identifier"><ins class="diff-chg">
-IRI
-</ins></abbr><ins class="diff-chg">
-mapping
-</ins></dfn>,<ins class="diff-chg">
-a
-boolean
-flag
-</ins><dfn title="reverse-property" id="dfn-reverse-property"><ins class="diff-chg">
-reverse
-property
-</ins></dfn>,<ins class="diff-chg">
-an
-optional
-</ins><dfn title="type-mapping" id="dfn-type-mapping"><ins class="diff-chg">
-type
-mapping
-</ins></dfn><ins class="diff-chg">
-or
-</ins><dfn title="language-mapping" id="dfn-language-mapping"><ins class="diff-chg">
-language
-mapping
-</ins></dfn>,
-and
-<del class="diff-old">initializing
-</del>
-<ins class="diff-chg">an
-optional
-</ins><dfn title="container-mapping" id="dfn-container-mapping"><ins class="diff-chg">
-container
-mapping
-</ins></dfn>.<ins class="diff-chg">
-A
-</ins><a class="tref internalDFN" title="term-definition" href="#dfn-term-definition"><ins class="diff-chg">
-term
-definition
-</ins></a><ins class="diff-chg">
-can
-not
-only
-be
-used
-to
-map
-a
-</ins><a class="tref internalDFN" title="term" href="#dfn-term"><ins class="diff-chg">
-term
-</ins></a><ins class="diff-chg">
-to
-an
-</ins><abbr title="Internationalized Resource Identifier"><ins class="diff-chg">
-IRI
-</ins></abbr>,<ins class="diff-chg">
-but
-also
-to
-map
-a
-</ins><a class="tref internalDFN" title="term" href="#dfn-term"><ins class="diff-chg">
-term
-</ins></a><ins class="diff-chg">
-to
-a
-</ins><a class="tref internalDFN" title="keyword" href="#dfn-keyword"><ins class="diff-chg">
-keyword
-</ins></a>,<ins class="diff-chg">
-in
-which
-case
-it
-is
-referred
-to
-as
-a
-</ins><dfn title="keyword-alias" id="dfn-keyword-alias"><ins class="diff-chg">
-keyword
-alias
-</ins></dfn>.</p><p><ins class="diff-chg">
-When
-processing,
-</ins>
-the
-<a class="tref internalDFN" title="active-context" href="#dfn-active-context">
-active
-context
-</a>
-<del class="diff-old">with
-the
-initial
-context
-</del>
-<ins class="diff-chg">is
-initialized
-without
-any
-</ins><a class="tref internalDFN" title="term-definition" href="#dfn-term-definition"><ins class="diff-chg">
-term
-definitions
-</ins></a>,<a class="tref internalDFN" title="vocabulary-mapping" href="#dfn-vocabulary-mapping"><ins class="diff-chg">
-vocabulary
-mapping
-</ins></a>,<ins class="diff-chg">
-or
-</ins><a class="tref internalDFN" title="default-language" href="#dfn-default-language"><ins class="diff-chg">
-default
-language
-</ins>
-</a>.
-If
-a
-<a class="tref internalDFN" title="local-context" href="#dfn-local-context">
-local
-context
-</a>
-is
-<del class="diff-old">encountered,
-</del>
-<ins class="diff-chg">encountered
-during
-processing,
-a
-new
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context"><ins class="diff-chg">
-active
-context
-</ins></a><ins class="diff-chg">
-is
-created
-by
-cloning
-the
-existing
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context"><ins class="diff-chg">
-active
-context
-</ins></a>.<ins class="diff-chg">
-Then
-the
-</ins>
-information
-from
-the
-<a class="tref internalDFN" title="local-context" href="#dfn-local-context">
-local
-context
-</a>
-is
-merged
-into
-the
-<ins class="diff-chg">new
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context">
-active
-context
-</a>.
-<ins class="diff-new">Given
-that
-</ins><a class="tref internalDFN" title="local-context" href="#dfn-local-context"><ins class="diff-new">
-local
-contexts
-</ins></a><ins class="diff-new">
-may
-contain
-references
-to
-remote
-contexts,
-this
-includes
-their
-retrieval.
-</ins>
-</p>
-<section class="informative">
-<h4 id="overview">
-<ins class="diff-new">Overview
-</ins></h4>
-<p>
-<del class="diff-old">The
-</del>
-<em>
-<ins class="diff-chg">This
-section
-is
-non-normative.
-</ins></em></p><p><ins class="diff-chg">
-First
-we
-prepare
-a
-new
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context">
-active
-context
-</a>
-<del class="diff-old">is
-used
-for
-expanding
-properties
-and
-values
-</del>
-<i>
-<ins class="diff-chg">result
-</ins></i><ins class="diff-chg">
-by
-cloning
-the
-current
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context"><ins class="diff-chg">
-active
-context
-</ins></a>.<ins class="diff-chg">
-Then
-we
-normalize
-the
-form
-of
-the
-passed
-</ins><a class="tref internalDFN" title="local-context" href="#dfn-local-context"><ins class="diff-chg">
-local
-context
-</ins></a><ins class="diff-chg">
-to
-an
-</ins><a class="tref internalDFN" title="array" href="#dfn-array"><ins class="diff-chg">
-array
-</ins></a>.<a class="tref internalDFN" title="local-context" href="#dfn-local-context"><ins class="diff-chg">
-Local
-contexts
-</ins></a><ins class="diff-chg">
-may
-be
-in
-the
-form
-</ins>
-of
-a
-<a class="tref internalDFN" title="json-object" href="#dfn-json-object">
-JSON
-object
-<del class="diff-old">(or
-elements
-of
-</del>
-</a>,
-<ins class="diff-chg">a
-</ins><a class="tref internalDFN" title="string" href="#dfn-string"><ins class="diff-chg">
-string
-</ins></a>,<ins class="diff-chg">
-or
-</ins>
-an
-<del class="diff-old">array)
-using
-</del>
-<a class="tref internalDFN" title="array" href="#dfn-array">
-<ins class="diff-chg">array
-</ins></a><ins class="diff-chg">
-containing
-</ins>
-a
-<del class="diff-old">term
-mapping
-.
-It
-</del>
-<ins class="diff-chg">combination
-of
-the
-two.
-Finally
-we
-process
-each
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a><ins class="diff-chg">
-contained
-in
-the
-</ins><a class="tref internalDFN" title="local-context" href="#dfn-local-context"><ins class="diff-chg">
-local
-context
-</ins></a><a class="tref internalDFN" title="array" href="#dfn-array"><ins class="diff-chg">
-array
-</ins></a><ins class="diff-chg">
-as
-follows.
-</ins></p><p><ins class="diff-chg">
-If
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a>
-is
-<del class="diff-old">also
-used
-to
-maintain
-coercion
-mapping
-s
-from
-terms
-to
-datatypes,
-language
-mapping
-s
-from
-terms
-</del>
-<ins class="diff-chg">a
-</ins><a class="tref internalDFN" title="string" href="#dfn-string"><ins class="diff-chg">
-string
-</ins></a>,<ins class="diff-chg">
-it
-represents
-a
-reference
-</ins>
-to
-<del class="diff-old">language
-codes,
-and
-list
-mapping
-s
-</del>
-<ins class="diff-chg">a
-remote
-context.
-We
-dereference
-the
-remote
-context
-</ins>
-and
-<del class="diff-old">set
-mapping
-s
-for
-terms.
-Processors
-must
-use
-</del>
-<ins class="diff-chg">replace
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a><ins class="diff-chg">
-with
-</ins>
-the
-<del class="diff-old">lexical
-form
-</del>
-<ins class="diff-chg">value
-</ins>
-of
-the
-<del class="diff-old">property
-when
-creating
-a
-mapping,
-as
-lookup
-</del>
-<code>
-<ins class="diff-chg">@context
-</ins></code><ins class="diff-chg">
-key
-of
-the
-top-level
-object
-in
-the
-retrieved
-JSON-LD
-document.
-If
-there's
-no
-such
-key,
-an
-invalid
-remote
-context
-has
-been
-detected.
-Otherwise,
-we
-process
-</ins><a class="tref internalDFN" title="context" href="#dfn-context"><ins class="diff-chg">
-context
-</ins></a><ins class="diff-chg">
-by
-recursively
-using
-this
-algorithm
-ensuring
-that
-there
-</ins>
-is
-<del class="diff-old">performed
-on
-lexical
-forms,
-not
-expanded
-IRI
-representations.
-</del>
-<ins class="diff-chg">no
-cyclical
-reference.
-</ins>
-</p>
-<p>
-<del class="diff-old">A
-local
-</del>
-<ins class="diff-chg">If
-</ins><a class="tref internalDFN" title="context" href="#dfn-context">
-context
-</a>
-is
-<del class="diff-old">identified
-within
-</del>
-a
-<a class="tref internalDFN" title="json-object" href="#dfn-json-object">
-JSON
-object
-</a>,
-<ins class="diff-new">we
-first
-update
-the
-</ins><a class="tref internalDFN" title="base-iri" href="#dfn-base-iri"><ins class="diff-new">
-base
-</ins><abbr title="Internationalized Resource Identifier"><ins class="diff-new">
-IRI
-</ins></abbr></a>,<ins class="diff-new">
-the
-</ins><a class="tref internalDFN" title="vocabulary-mapping" href="#dfn-vocabulary-mapping"><ins class="diff-new">
-vocabulary
-mapping
-</ins></a>,<ins class="diff-new">
-and
-the
-</ins><a class="tref internalDFN" title="default-language" href="#dfn-default-language"><ins class="diff-new">
-default
-language
-</ins>
-</a>
-<del class="diff-old">having
-a
-</del>
-<ins class="diff-chg">by
-processing
-three
-specific
-keywords:
-</ins>
-<code>
-<del class="diff-old">@context
-property
-with
-a
-string
-</del>
-<ins class="diff-chg">@base
-</ins></code>,<code><ins class="diff-chg">
[email protected]
-</ins></code>,<ins class="diff-chg">
-and
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code>.<ins class="diff-chg">
-These
-are
-handled
-before
-any
-other
-keys
-in
-the
-</ins><a class="tref internalDFN" title="local-context" href="#dfn-local-context"><ins class="diff-chg">
-local
-context
-</ins></a><ins class="diff-chg">
-because
-they
-affect
-how
-the
-other
-keys
-are
-processed.
-</ins></p><p><ins class="diff-chg">
-Then,
-for
-every
-other
-key
-in
-</ins><a class="tref internalDFN" title="local-context" href="#dfn-local-context"><ins class="diff-chg">
-local
-context
-</ins>
-</a>,
-<del class="diff-old">array
-</del>
-<ins class="diff-chg">we
-update
-the
-</ins><a class="tref internalDFN" title="term-definition" href="#dfn-term-definition"><ins class="diff-chg">
-term
-definition
-</ins>
-</a>
-<del class="diff-old">or
-a
-JSON
-object
-</del>
-<ins class="diff-chg">in
-</ins><i><ins class="diff-chg">
-result
-</ins></i>.<ins class="diff-chg">
-Since
-</ins><a class="tref internalDFN" title="term-definition" href="#dfn-term-definition"><ins class="diff-chg">
-term
-definitions
-</ins>
-</a>
-<del class="diff-old">value.
-When
-processing
-</del>
-<ins class="diff-chg">in
-</ins>
-a
-<a class="tref internalDFN" title="local-context" href="#dfn-local-context">
-local
-context
-</a>
-<ins class="diff-new">may
-themselves
-contain
-</ins><a class="tref internalDFN" title="term" href="#dfn-term"><ins class="diff-new">
-terms
-</ins></a><ins class="diff-new">
-or
-</ins><a class="tref internalDFN" title="compact-iri" href="#dfn-compact-iri"><ins class="diff-new">
-compact
-IRIs
-</ins>
-</a>,
-<del class="diff-old">special
-processing
-rules
-apply:
-</del>
-<ins class="diff-chg">we
-may
-need
-to
-recurse.
-When
-doing
-so,
-we
-must
-ensure
-that
-there
-is
-no
-cyclical
-dependency,
-which
-is
-an
-error.
-After
-we
-have
-processed
-any
-</ins><a class="tref internalDFN" title="term-definition" href="#dfn-term-definition"><ins class="diff-chg">
-term
-definition
-</ins></a><ins class="diff-chg">
-dependencies,
-we
-update
-the
-current
-</ins><a class="tref internalDFN" title="term-definition" href="#dfn-term-definition"><ins class="diff-chg">
-term
-definition
-</ins></a>,<ins class="diff-chg">
-which
-may
-be
-a
-</ins><a class="tref internalDFN" title="keyword-alias" href="#dfn-keyword-alias"><ins class="diff-chg">
-keyword
-alias
-</ins></a>.
-</p>
-<del class="diff-old">Create
-</del>
-<p>
-<ins class="diff-chg">Finally,
-we
-return
-</ins><i><ins class="diff-chg">
-result
-</ins></i><ins class="diff-chg">
-as
-the
-new
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context"><ins class="diff-chg">
-active
-context
-</ins></a>.</p></section><section><h4 id="algorithm"><ins class="diff-chg">
-Algorithm
-</ins></h4><p><ins class="diff-chg">
-This
-algorithm
-specifies
-how
-</ins>
-a
-<del class="diff-old">new,
-empty
-</del>
-<ins class="diff-chg">new
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context"><ins class="diff-chg">
-active
-context
-</ins></a><ins class="diff-chg">
-is
-updated
-with
-a
-</ins><a class="tref internalDFN" title="local-context" href="#dfn-local-context">
-local
-context
-</a>.
-<del class="diff-old">Let
-context
-be
-the
-value
-of
[email protected]
-If
-</del>
-<ins class="diff-chg">The
-algorithm
-takes
-three
-input
-variables:
-an
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context"><ins class="diff-chg">
-active
-</ins>
-context
-<del class="diff-old">equals
-null
-</del>
-</a>,
-<del class="diff-old">reset
-the
-active
-</del>
-<ins class="diff-chg">a
-</ins><a class="tref internalDFN" title="local-context" href="#dfn-local-context"><ins class="diff-chg">
-local
-</ins>
-context
-</a>,
-<ins class="diff-new">and
-an
-</ins><a class="tref internalDFN" title="array" href="#dfn-array"><ins class="diff-new">
-array
-</ins>
-</a>
-<i>
-<ins class="diff-new">remote
-contexts
-</ins></i><ins class="diff-new">
-which
-is
-used
-to
-detect
-cyclical
-context
-inclusions.
-If
-</ins><i><ins class="diff-new">
-remote
-contexts
-</ins></i><ins class="diff-new">
-is
-not
-passed,
-it
-is
-initialized
-to
-an
-empty
-</ins><a class="tref internalDFN" title="array" href="#dfn-array"><ins class="diff-new">
-array
-</ins></a>.</p><ol class="algorithm"><li><ins class="diff-new">
-Initialize
-</ins><i><ins class="diff-new">
-result
-</ins></i>
-to
-the
-<del class="diff-old">initial
-</del>
-<ins class="diff-chg">result
-of
-cloning
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context"><ins class="diff-chg">
-active
-</ins>
-context
-</a>.
-</li>
-<li>
-If
-<a class="tref internalDFN" title="local-context" href="#dfn-local-context">
-<ins class="diff-chg">local
-</ins>
-context
-</a>
-is
-<ins class="diff-new">not
-</ins>
-an
-<a class="tref internalDFN" title="array" href="#dfn-array">
-array
-</a>,
-<del class="diff-old">process
-</del>
-<ins class="diff-chg">set
-it
-to
-an
-</ins><a class="tref internalDFN" title="array" href="#dfn-array"><ins class="diff-chg">
-array
-</ins></a><ins class="diff-chg">
-containing
-only
-</ins><a class="tref internalDFN" title="local-context" href="#dfn-local-context"><ins class="diff-chg">
-local
-context
-</ins></a>.</li><li><ins class="diff-chg">
-For
-</ins>
-each
-<del class="diff-old">element
-as
-</del>
-<ins class="diff-chg">item
-</ins><i>
-context
-</i>
-in
-<del class="diff-old">order
-by
-starting
-at
-Step
-2.1
-.
-</del>
-<a class="tref internalDFN" title="local-context" href="#dfn-local-context">
-<ins class="diff-chg">local
-context
-</ins></a>:<ol class="algorithm"><li><ins class="diff-chg">
-If
-</ins><i><ins class="diff-chg">
-context
-</ins></i><ins class="diff-chg">
-is
-</ins><a class="tref internalDFN" title="null" href="#dfn-null"><ins class="diff-chg">
-null
-</ins></a>,<ins class="diff-chg">
-set
-</ins><i><ins class="diff-chg">
-result
-</ins></i><ins class="diff-chg">
-to
-a
-newly-initialized
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context"><ins class="diff-chg">
-active
-context
-</ins></a><ins class="diff-chg">
-and
-continue
-with
-the
-next
-</ins><i><ins class="diff-chg">
-context
-</ins></i>.
-</li>
-<li>
-If
-<i>
-context
-</i>
-is
-a
-<a class="tref internalDFN" title="string" href="#dfn-string">
-string
-</a>,
-<del class="diff-old">it
-must
-have
-</del>
-<ol class="algorithm">
-<li>
-<ins class="diff-chg">Set
-</ins><i><ins class="diff-chg">
-context
-</ins></i><ins class="diff-chg">
-to
-the
-result
-of
-resolving
-</ins><i><ins class="diff-chg">
-value
-</ins></i><ins class="diff-chg">
-against
-the
-base
-</ins><abbr title="Internationalized Resource Identifier"><ins class="diff-chg">
-IRI
-</ins></abbr><ins class="diff-chg">
-which
-is
-established
-as
-specified
-in
-</ins><cite><a href="http://tools.ietf.org/html/rfc3986#section-5.1"><ins class="diff-chg">
-section
-5.1
-Establishing
-</ins>
-a
-<del class="diff-old">lexical
-form
-</del>
-<ins class="diff-chg">Base
-URI
-</ins></a></cite>
-of
-<del class="diff-old">absolute
-</del>
-<ins class="diff-chg">[
-</ins><cite><a class="bibref" href="#bib-RFC3986"><ins class="diff-chg">
-RFC3986
-</ins></a></cite><ins class="diff-chg">
-].
-Only
-the
-basic
-algorithm
-in
-</ins><cite><a href="http://tools.ietf.org/html/rfc3986#section-5.2"><ins class="diff-chg">
-section
-5.2
-</ins></a></cite><ins class="diff-chg">
-of
-[
-</ins><cite><a class="bibref" href="#bib-RFC3986"><ins class="diff-chg">
-RFC3986
-</ins></a></cite><ins class="diff-chg">
-]
-is
-used;
-neither
-</ins><cite><a href="http://tools.ietf.org/html/rfc3986#section-6.2.2"><ins class="diff-chg">
-Syntax-Based
-Normalization
-</ins></a></cite><ins class="diff-chg">
-nor
-</ins><cite><a href="http://tools.ietf.org/html/rfc3986#section-6.2.3"><ins class="diff-chg">
-Scheme-Based
-Normalization
-</ins></a></cite><ins class="diff-chg">
-are
-performed.
-Characters
-additionally
-allowed
-in
-</ins>
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<ins class="diff-new">references
-are
-treated
-in
-the
-same
-way
-that
-unreserved
-characters
-are
-treated
-in
-URI
-references,
-per
-</ins><cite><a href="http://tools.ietf.org/html/rfc3987#section-6.5"><ins class="diff-new">
-section
-6.5
-</ins></a></cite><ins class="diff-new">
-of
-[
-</ins><cite><a class="bibref" href="#bib-RFC3987"><ins class="diff-new">
-RFC3987
-</ins></a></cite><ins class="diff-new">
-].
-</ins></li><li><ins class="diff-new">
-If
-</ins><i><ins class="diff-new">
-context
-</ins></i><ins class="diff-new">
-is
-in
-the
-</ins><i><ins class="diff-new">
-remote
-contexts
-</ins></i><ins class="diff-new">
-array,
-a
-</ins><code class="error">
-<a href="#idl-def-JsonLdErrorCode.recursive-context-inclusion">
-<ins class="diff-new">recursive
-context
-inclusion
-</ins></a></code><ins class="diff-new">
-error
-has
-been
-detected
-and
-processing
-is
-aborted;
-otherwise,
-add
-</ins><i><ins class="diff-new">
-context
-</ins></i><ins class="diff-new">
-to
-</ins><i><ins class="diff-new">
-remote
-contexts
-</ins></i>.</li><li><ins class="diff-new">
-Initialize
-</ins><i><ins class="diff-new">
-context
-no
-base
-</ins></i><ins class="diff-new">
-to
-the
-result
-of
-cloning
-the
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context"><ins class="diff-new">
-active
-context
-</ins>
-</a>.
-</li>
-<li>
-<del class="diff-old">Dereference
-</del>
-<ins class="diff-chg">Remove
-the
-</ins><a class="tref internalDFN" title="base-iri" href="#dfn-base-iri"><ins class="diff-chg">
-base
-</ins><abbr title="Internationalized Resource Identifier"><ins class="diff-chg">
-IRI
-</ins></abbr></a><ins class="diff-chg">
-of
-</ins><i>
-context
-<del class="diff-old">.
-</del>
-<ins class="diff-chg">no
-base
-</ins></i>.
-</li>
-<li>
-<ins class="diff-new">Dereference
-</ins><i><ins class="diff-new">
-context
-</ins></i>.
-If
-the
-<del class="diff-old">resulting
-</del>
-<ins class="diff-chg">dereferenced
-</ins>
-document
-<del class="diff-old">is
-a
-JSON
-document,
-extract
-the
-</del>
-<ins class="diff-chg">has
-no
-</ins>
-top-level
-<a class="tref internalDFN" title="json-object" href="#dfn-json-object">
-<ins class="diff-new">JSON
-object
-</ins></a><ins class="diff-new">
-with
-an
-</ins>
-<code>
[email protected]
-</code>
-<del class="diff-old">element
-using
-the
-JSON
-Pointer
-&quot;/@context&quot;
-as
-described
-in
-[
-</del>
-<ins class="diff-chg">member,
-an
-</ins><code class="error">
-<del class="diff-old">JSON-POINTER
-</del>
-<a href="#idl-def-JsonLdErrorCode.invalid-remote-context">
-<ins class="diff-chg">invalid
-remote
-context
-</ins>
-</a>
-<del class="diff-old">].
-</del>
-</code>
-<ins class="diff-chg">has
-been
-detected
-and
-processing
-is
-aborted;
-otherwise,
-set
-</ins><i><ins class="diff-chg">
-context
-</ins></i><ins class="diff-chg">
-to
-the
-value
-of
-that
-member.
-</ins></li><li>
-Set
-<i>
-context
-</i>
-to
-the
-<del class="diff-old">extracted
-content
-</del>
-<ins class="diff-chg">result
-of
-recursively
-calling
-this
-algorithm,
-passing
-</ins><i><ins class="diff-chg">
-context
-no
-base
-</ins></i><ins class="diff-chg">
-for
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context"><ins class="diff-chg">
-active
-context
-</ins></a>,<i><ins class="diff-chg">
-context
-</ins></i><ins class="diff-chg">
-for
-</ins><a class="tref internalDFN" title="local-context" href="#dfn-local-context"><ins class="diff-chg">
-local
-context
-</ins></a>,
-and
-<del class="diff-old">process
-it
-by
-starting
-at
-Step
-2.1
-.
-</del>
-<i>
-<ins class="diff-chg">remote
-contexts
-</ins></i>.</li><li><ins class="diff-chg">
-If
-</ins><i><ins class="diff-chg">
-context
-</ins></i><ins class="diff-chg">
-has
-no
-</ins><a class="tref internalDFN" title="base-iri" href="#dfn-base-iri"><ins class="diff-chg">
-base
-</ins><abbr title="Internationalized Resource Identifier"><ins class="diff-chg">
-IRI
-</ins></abbr></a><ins class="diff-chg">
-but
-</ins><i><ins class="diff-chg">
-result
-</ins></i><ins class="diff-chg">
-does,
-set
-the
-</ins><a class="tref internalDFN" title="base-iri" href="#dfn-base-iri"><ins class="diff-chg">
-base
-</ins><abbr title="Internationalized Resource Identifier"><ins class="diff-chg">
-IRI
-</ins></abbr></a><ins class="diff-chg">
-of
-</ins><i><ins class="diff-chg">
-context
-</ins></i><ins class="diff-chg">
-to
-the
-one
-of
-</ins><i><ins class="diff-chg">
-result
-</ins></i>.</li><li><ins class="diff-chg">
-Overwrite
-</ins><i><ins class="diff-chg">
-result
-</ins></i><ins class="diff-chg">
-with
-</ins><i><ins class="diff-chg">
-context
-</ins></i><ins class="diff-chg">
-and
-continue
-with
-the
-next
-</ins><i><ins class="diff-chg">
-context
-</ins></i>.
-</li>
-</ol>
-</li>
-<li>
-If
-<i>
-context
-</i>
-is
-<ins class="diff-new">not
-</ins>
-a
-<a class="tref internalDFN" title="json-object" href="#dfn-json-object">
-JSON
-object
-</a>,
-<del class="diff-old">perform
-the
-following
-steps:
-</del>
-<ins class="diff-chg">an
-</ins><code class="error"><a href="#idl-def-JsonLdErrorCode.invalid-local-context"><ins class="diff-chg">
-invalid
-local
-context
-</ins></a></code><ins class="diff-chg">
-error
-has
-been
-detected
-and
-processing
-is
-aborted.
-</ins></li>
-<li>
-If
-<i>
-context
-</i>
-has
-<del class="diff-old">a
-</del>
-<ins class="diff-chg">an
-</ins>
-<code>
-<del class="diff-old">@language
-</del>
-<ins class="diff-chg">@base
-</ins>
-</code>
-<del class="diff-old">property,
-it
-must
-have
-a
-value
-of
-a
-simple
-string
-</del>
-<ins class="diff-chg">key:
-</ins><div class="issue atrisk"><div class="issue-title"><span><ins class="diff-chg">
-Feature
-at
-Risk
-1
-</ins></span>:<ins class="diff-chg">
[email protected]
-keyword
-</ins></div><div class="atrisk"><p class="atrisk-head"><ins class="diff-chg">
-Note:
-This
-feature
-is
-</ins><a href="http://www.w3.org/2005/10/Process-20051014/tr#cfi"><ins class="diff-chg">
-&quot;at
-risk&quot;
-</ins>
-</a>
-<del class="diff-old">or
-null
-</del>
-<ins class="diff-chg">and
-may
-be
-removed
-from
-this
-specification
-based
-on
-feedback.
-Please
-send
-feedback
-to
-</ins><a href="mailto:[email protected]"><ins class="diff-chg">
[email protected]
-</ins>
-</a>.
-<del class="diff-old">Add
-</del>
-<ins class="diff-chg">For
-</ins>
-the
-<del class="diff-old">language
-to
-</del>
-<ins class="diff-chg">current
-status
-see
-</ins><a href="http://www.w3.org/2011/rdf-wg/wiki/JSON-LD_Features_at_Risk"><ins class="diff-chg">
-features
-&quot;at
-risk&quot;
-in
-JSON-LD
-1.0
-</ins></a></p><p><ins class="diff-chg">
-Support
-for
-</ins>
-the
-<del class="diff-old">local
-context
-.
-Otherwise,
-</del>
-<code>
-<ins class="diff-chg">@base
-</ins></code><ins class="diff-chg">
-keyword
-might
-be
-removed
-from
-JSON-LD
-1.0
-if
-implementation
-experience
-reveals
-that
-the
-fact
-that
-a
-document
-may
-have
-multiple
-base
-IRIs
-is
-confusing
-</ins>
-for
-<del class="diff-old">each
-property
-in
-context
-perform
-</del>
-<ins class="diff-chg">developers.
-It
-is
-also
-being
-discussed
-whether
-relative
-IRIs
-are
-allowed
-as
-values
-of
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code><ins class="diff-chg">
-or
-whether
-</ins>
-the
-<del class="diff-old">following
-steps:
-</del>
-<ins class="diff-chg">empty
-string
-should
-be
-used
-to
-explicitly
-specify
-that
-there
-isn't
-a
-base
-</ins><abbr title="Internationalized Resource Identifier"><ins class="diff-chg">
-IRI
-</ins></abbr>,<ins class="diff-chg">
-which
-could
-be
-used
-to
-ensure
-that
-relative
-IRIs
-remain
-relative
-when
-expanding.
-</ins></p></div></div>
-<ol class="algorithm">
-<li>
-<ins class="diff-new">Initialize
-</ins><i><ins class="diff-new">
-value
-</ins></i><ins class="diff-new">
-to
-the
-value
-associated
-with
-the
-</ins><code><ins class="diff-new">
[email protected]
-</ins></code><ins class="diff-new">
-key.
-</ins></li><li>
-If
-<i>
-<ins class="diff-new">value
-</ins></i><ins class="diff-new">
-is
-</ins><a class="tref internalDFN" title="null" href="#dfn-null"><ins class="diff-new">
-null
-</ins></a>,<ins class="diff-new">
-remove
-</ins>
-the
-<del class="diff-old">property's
-</del>
-<a class="tref internalDFN" title="base-iri" href="#dfn-base-iri">
-<ins class="diff-chg">base
-</ins><abbr title="Internationalized Resource Identifier"><ins class="diff-chg">
-IRI
-</ins></abbr></a><ins class="diff-chg">
-of
-</ins><i><ins class="diff-chg">
-result
-</ins></i>.</li><li><ins class="diff-chg">
-Otherwise,
-if
-</ins><i>
-value
-</i>
-is
-<del class="diff-old">a
-simple
-string
-</del>
-<ins class="diff-chg">an
-</ins><a class="tref internalDFN" title="absolute-iri" href="#dfn-absolute-iri"><ins class="diff-chg">
-absolute
-</ins><abbr title="Internationalized Resource Identifier"><ins class="diff-chg">
-IRI
-</ins></abbr>
-</a>,
-<del class="diff-old">determine
-</del>
-the
-<a class="tref internalDFN" title="base-iri" href="#dfn-base-iri">
-<ins class="diff-new">base
-</ins>
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<del class="diff-old">mapping
-</del>
-</a>
-<ins class="diff-chg">of
-</ins><i><ins class="diff-chg">
-result
-</ins></i><ins class="diff-chg">
-is
-set
-to
-</ins><i>
-value
-<del class="diff-old">by
-performing
-</del>
-</i>.
-<ins class="diff-chg">If
-it
-is
-not
-an
-</ins><a class="tref internalDFN" title="absolute-iri" href="#dfn-absolute-iri"><ins class="diff-chg">
-absolute
-</ins><abbr title="Internationalized Resource Identifier"><ins class="diff-chg">
-IRI
-</ins></abbr>
-</a>,
-<ins class="diff-new">an
-</ins><code class="error"><a href="#idl-def-JsonLdErrorCode.invalid-base-IRI"><ins class="diff-new">
-invalid
-base
-</ins>
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-<del class="diff-old">Expansion
-</del>
-</a>
-<del class="diff-old">on
-</del>
-</code>
-<ins class="diff-chg">error
-has
-been
-detected
-and
-processing
-is
-aborted.
-</ins></li></ol></li><li><ins class="diff-chg">
-If
-</ins><i><ins class="diff-chg">
-context
-</ins></i><ins class="diff-chg">
-has
-an
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code><ins class="diff-chg">
-key:
-</ins><ol class="algorithm"><li><ins class="diff-chg">
-Initialize
-</ins><i><ins class="diff-chg">
-value
-</ins></i><ins class="diff-chg">
-to
-</ins>
-the
-<ins class="diff-new">value
-</ins>
-associated
-<del class="diff-old">value.
-If
-</del>
-<ins class="diff-chg">with
-</ins>
-the
-<code>
-<ins class="diff-new">@vocab
-</ins></code><ins class="diff-new">
-key.
-</ins></li><li><ins class="diff-new">
-If
-</ins><i><ins class="diff-new">
-value
-</ins></i><ins class="diff-new">
-is
-</ins><a class="tref internalDFN" title="null" href="#dfn-null"><ins class="diff-new">
-null
-</ins></a>,<ins class="diff-new">
-remove
-any
-</ins><a class="tref internalDFN" title="vocabulary-mapping" href="#dfn-vocabulary-mapping"><ins class="diff-new">
-vocabulary
-mapping
-</ins></a><ins class="diff-new">
-from
-</ins><i>
-result
-<del class="diff-old">of
-the
-</del>
-</i>.
-</li>
-<li>
-<ins class="diff-chg">Otherwise,
-if
-</ins><i><ins class="diff-chg">
-value
-</ins></i><ins class="diff-chg">
-is
-an
-</ins><a class="tref internalDFN" title="absolute-iri" href="#dfn-absolute-iri"><ins class="diff-chg">
-absolute
-</ins>
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>,
-<ins class="diff-new">the
-</ins><a class="tref internalDFN" title="vocabulary-mapping" href="#dfn-vocabulary-mapping"><ins class="diff-new">
-vocabulary
-</ins>
-mapping
-</a>
-<ins class="diff-new">of
-</ins><i><ins class="diff-new">
-result
-</ins></i><ins class="diff-new">
-is
-set
-to
-</ins><i><ins class="diff-new">
-value
-</ins></i>.<ins class="diff-new">
-If
-it
-</ins>
-is
-<ins class="diff-new">not
-</ins>
-an
-<a class="tref internalDFN" title="absolute-iri" href="#dfn-absolute-iri">
-absolute
-<abbr title="Internationalized Resource Identifier">
-IRI
-</abbr>
-</a>,
-<del class="diff-old">merge
-the
-property
-into
-the
-local
-context
-term
-</del>
-<ins class="diff-chg">an
-</ins><code class="error"><a href="#idl-def-JsonLdErrorCode.invalid-vocab-mapping"><ins class="diff-chg">
-invalid
-vocab
-</ins>
-mapping
-<del class="diff-old">,
-unless
-the
-property
-</del>
-</a>
-</code>
-<ins class="diff-chg">error
-has
-been
-detected
-and
-processing
-</ins>
-is
-<del class="diff-old">a
-JSON-LD
-keyword
-,
-in
-which
-case
-throw
-an
-exception.
-</del>
-<ins class="diff-chg">aborted.
-</ins></li></ol>
-</li>
-<li>
-<del class="diff-old">Otherwise,
-if
-</del>
-<ins class="diff-chg">If
-</ins><i><ins class="diff-chg">
-context
-</ins></i><ins class="diff-chg">
-has
-an
-</ins><code><ins class="diff-chg">
[email protected]
-</ins></code><ins class="diff-chg">
-key:
-</ins><ol class="algorithm"><li><ins class="diff-chg">
-Initialize
-</ins><i><ins class="diff-chg">
-value
-</ins></i><ins class="diff-chg">
-to
-</ins>
-the
-<del class="diff-old">property's
-</del>
-value
-<ins class="diff-new">associated
-with
-the
-</ins><code><ins class="diff-new">
[email protected]
-</ins></code><ins class="diff-new">
-key.
-</ins></li><li><ins class="diff-new">
-If
-</ins><i><ins class="diff-new">
-value
-</ins></i>
-is
-<a class="tref internalDFN" title="null" href="#dfn-null">
-null
-</a>,
-remove
-<del class="diff-old">mapping,
-coercion,
-container
-and
-</del>
-<ins class="diff-chg">any
-</ins><a class="tref internalDFN" title="default-language" href="#dfn-default-language"><ins class="diff-chg">
-default
-</ins>
-language
-<del class="diff-old">information
-associated
-with
-property
-</del>
-</a>
-from
-<del class="diff-old">the
-local
-context
-.
-</del>
-<i>
-<ins class="diff-chg">result
-</ins></i>.
-</li>
-<li>
-Otherwise,
-<ins class="diff-new">if
-</ins><i><ins class="diff-new">
-value
-</ins></i><ins class="diff-new">
-is
-</ins><a class="tref internalDFN" title="string" href="#dfn-string"><ins class="diff-new">
-string
-</ins></a>,
-the
-<del class="diff-old">property
-'s
-</del>
-<a class="tref internalDFN" title="default-language" href="#dfn-default-language">
-<ins class="diff-chg">default
-language
-</ins></a><ins class="diff-chg">
-of
-</ins><i><ins class="diff-chg">
-result
-</ins></i><ins class="diff-chg">
-is
-set
-to
-lowercased
-</ins><i>
-value
-<del class="diff-old">must
-be
-a
-JSON
-object
-.
-</del>
-</i>.
-If
-<del class="diff-old">the
-property
-</del>
-<ins class="diff-chg">it
-</ins>
-is
-<ins class="diff-new">not
-</ins>
-a
-<del class="diff-old">JSON-LD
-keyword
-</del>
-<a class="tref internalDFN" title="string" href="#dfn-string">
-<ins class="diff-chg">string
-</ins></a>,<ins class="diff-chg">
-an
-</ins><code class="error"><a href="#idl-def-JsonLdErrorCode.invalid-default-language"><ins class="diff-chg">
-invalid
-default
-language
-</ins>
-</a>
-</code>
-<ins class="diff-new">error
-has
-been
-detected
-</ins>
-and
-<del class="diff-old">the
-value
-</del>
-<ins class="diff-chg">processing
-is
-aborted.
-</ins></li></ol></li><li><ins class="diff-chg">
-Create
-a
-</ins><a class="tref internalDFN" title="json-object" href="#dfn-json-object"><ins class="diff-chg">
-JSON
-object
-</ins></a><i><ins class="diff-chg">
-defined
-</ins></i><ins class="diff-chg">
-to
-use
-to
-keep
-track
-of
-whether
-or
-not
-a
-</ins><a class="tref internalDFN" title="term" href="#dfn-term"><ins class="diff-chg">
-term
-</ins></a>
-has
-<ins class="diff-new">already
-been
-defined
-or
-currently
-being
-defined
-during
-recursion.
-</ins></li><li><ins class="diff-new">
-For
-each
-</ins><i><ins class="diff-new">
-key
-</ins></i><ins class="diff-new">
--
-</ins><i><ins class="diff-new">
-value
-</ins></i><ins class="diff-new">
-pair
-in
-</ins><i><ins class="diff-new">
-context
-</ins></i><ins class="diff-new">
-where
-</ins><i><ins class="diff-new">
-key
-</ins></i><ins class="diff-new">
-is
-not
-</ins>
-<code>
-<del class="diff-old">@id
-</del>
-<ins class="diff-chg">@base
-</ins>
-</code>,
-<code>
-<del class="diff-old">@language
-</del>
-<ins class="diff-chg">@vocab
-</ins></code>,
-or
-<code>
-<del class="diff-old">@type
-properties,
-throw
-an
-exception.
-</del>
-<ins class="diff-chg">@language
-</ins></code>,<ins class="diff-chg">
-invoke
-the
-</ins><a href="#create-term-definition"><ins class="diff-chg">
-Create
-Term
-Definition
-algorithm
-</ins></a>,<ins class="diff-chg">
-passing
-</ins><i><ins class="diff-chg">
-result
-</ins></i><ins class="diff-chg">
-for
-</ins><a class="tref internalDFN" title="active-context" href="#dfn-active-context"><ins class="diff-chg">
-active
-context
-</ins></a>,<i><ins class="diff-chg">
-context
-</ins></i><ins class="diff-chg">
-for
-</ins><a class="tref internalDFN" title="local-context" href="#dfn-local-context"><ins class="diff-chg">
-local
-context
-</ins></a>,<i><ins class="diff-chg">
-key
-</ins></i>,<ins class="diff-chg">
-and
-</ins><i><ins class="diff-chg">
-defined
-</ins></i>.</li></ol></li><li><ins class="diff-chg">
-Return
-</ins><i><ins class="diff-chg">
-result
-</ins></i>.</li></ol></section></section><section id="create-term-definition"><h3>
-<del class="diff-old">Issue
-5
-</del>
-<span class="secno">
-<ins class="diff-chg">6.2
-</ins>
-</span>
-<del class="diff-old">Undecided
-if
[email protected]
-or
[email protected]
-can
-take
-</del>
-<ins class="diff-chg">Create
-Term
-Definition
-</ins></h3><p><ins class="diff-chg">
-This
-algorithm
-is
-called
-from
-the
-</ins><a href="#context-processing-algorithm"><ins class="diff-chg">
-Context
-Processing
-algorithm
-</ins></a><ins class="diff-chg">
-to
-create
-</ins>
-a
-<del class="diff-old">@container