JSONLD:如何将json转换为JsonLD?

时间:2016-10-06 06:19:06

标签: java json scala apache-spark json-ld

我有一个用例,我有一个Json数据,我必须将其转换为JSONLD格式。

第一个问题:这可以轻松完成,就像一些API,可能是我错过了吗?

第二个问题:如果没有,那么需要采取哪些步骤。

所以Json看起来像:

{
key:"language",
value: "scala"
}

我想将其转换为JSONLD格式。

感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

您只需在此json对象上添加上下文,如:

{
  @context: {
        "key": "http://schema.org/description",
        "value": "http://schema.org/value"
      },
  key: "language",
  value: "scala"
}

答案 1 :(得分:0)

如果您对使用JavaScript库执行此任务感兴趣,那么npm模块JSONLD非常棒。 注意:此库依赖于PYTHON。

JavaScript代码来自JSONLD网站的示例:

var doc = {
  "http://schema.org/name": "Manu Sporny",
  "http://schema.org/url": {"@id": "http://manu.sporny.org/"},
  "http://schema.org/image": {"@id": "http://manu.sporny.org/images/manu.png"}
};
var context = {
  "name": "http://schema.org/name",
  "homepage": {"@id": "http://schema.org/url", "@type": "@id"},
  "image": {"@id": "http://schema.org/image", "@type": "@id"}
};

// compact a document according to a particular context
// see: http://json-ld.org/spec/latest/json-ld/#compacted-document-form
jsonld.compact(doc, context, function(err, compacted) {
  console.log(JSON.stringify(compacted, null, 2));
});

<强>输出:

 {
    "@context": {...},
    "name": "Manu Sporny",
    "homepage": "http://manu.sporny.org/",
    "image": "http://manu.sporny.org/images/manu.png"
  }

当我在搜索JSON到JSONLD转换的JavaScript库时,我可以想出这个。但是,由于这个库具有PYTHON依赖性,我正在搜索其他JavaScript库。