Json-LD:使用Json-LD链接文档

时间:2015-01-13 13:42:50

标签: node-webkit json-ld

我正在使用node-webkit创建桌面应用程序。

创建应用程序的目的是添加文档,任何人都可以对文档发表评论。该文件将分为段落,人们可以对段落发表评论。每个段落将被视为不同的部分。我想使用JSON-LD将每个部分(或段落)与注释相关联。

我是JSON-LD的新手,我想知道如何使用它。

1 个答案:

答案 0 :(得分:1)

在文档(无论如何,HTML文档)中,可以使用@id属性来标识部分(或任何元素),该属性通常成为文档的片段标识符。例如,http://www.w3.org/TR/json-ld/#abstract是带有“抽象”片段标识符的URL,如果查看html源代码,您将看到以下内容:

<section id="abstract" class="introductory" property="dcterms:abstract" datatype="" typeof="bibo:Chapter" resource="#abstract" rel="bibo:chapter"><h2 aria-level="1" role="heading" id="h2_abstract">Abstract</h2>
  <p>JSON is a useful data serialization and messaging format.
    This specification defines JSON-LD, a JSON-based format to serialize
    Linked Data. The syntax is designed to easily integrate into deployed
    systems that already use JSON, and provides a smooth upgrade path from
    JSON to JSON-LD.
    It is primarily intended to be a way to use Linked Data in Web-based
    programming environments, to build interoperable Web services, and to
    store Linked Data in JSON-based storage engines.</p>
</section>

(请注意,其中一些是自动生成的,因此还有其他不相关的锅炉板。)

这为您提供了一种使用JSON-LD描述文档结构的机制:

{
  "@id": "http://www.w3.org/TR/json-ld",
  "@type": "bibo:Document",
 "bibo:chapter": [{
    "@id": "#abstract"
  }, {
    "@id": "#sotd"
  }, {
    "@id": "#references"
  }],
}

注意,在这种情况下,JSON-LD被定义为具有与HTML文档相同的URI(URL),因此“#abstract”确实扩展为http://www.w3.org/TR/json-ld#abstract,这为您提供了一种引用方式该部分,以及该部分的标识符。还有更多可能。

事实上,许多W3C规范都标记在RDFa中,因为RDFa和JSON-LD都是RDF格式,您实际上也可以将此文档转换为适当的JSON-LD,例如我维护的RDF蒸馏器。例如,请在浏览器中尝试以下操作:http://rdf.greggkellogg.net/distiller?fmt=jsonld&in_fmt=rdfa&uri=http://www.w3.org/TR/json-ld/#abstract