JSON-LD 中的 IRI 映射和引用
IRI Mapping and referencing in JSON-LD
我正在尝试使用 JSON-LD 设计一个 ontology,但我无法正确使用语法。我查看了 https://www.w3.org/TR/json-ld 但无法准确找到我要查找的信息,即:How to nest IRI's in the context, and how to reference them in the body?
{
"@context":{
"@base":"http://example.com/",
"instances":"base:instances",
"animals":"base:animals",
"plants":"base:plants"
},
"@graph":[
{
"@id": "instances:1",
"@type": "Plant",
"plants:numleaves": "8",
"plants:speciesname": "sunflower"
},
{
"@id": "instances:2",
"@type": "Animal",
"animals:numlegs": "4",
"animals:speciesname": "dog",
"animals:eats": "instances:1"
}
]
}
我希望第一个元素的 id 是 http://example.com/instances#1
,但是当我 运行 通过 http://json-ld.org/playground/ 时,它的扩展形式是 base:instances1
。我该如何正确处理?
它没有按照您想要的方式工作,因为您定义了 @base
然后尝试将其用作前缀。
哈希 (#) 也不会神奇地出现。您必须将其包含在您的基本 URI 中。
总而言之,您必须将上下文更改为:
"@context":{
"base":"http://example.com/",
"instances":"base:instances#",
"animals":"base:animals#",
"plants":"base:plants#"
}
现在 instances:1
是 http://example.com/
+ instances#
+ 1
的串联。
我正在尝试使用 JSON-LD 设计一个 ontology,但我无法正确使用语法。我查看了 https://www.w3.org/TR/json-ld 但无法准确找到我要查找的信息,即:How to nest IRI's in the context, and how to reference them in the body?
{
"@context":{
"@base":"http://example.com/",
"instances":"base:instances",
"animals":"base:animals",
"plants":"base:plants"
},
"@graph":[
{
"@id": "instances:1",
"@type": "Plant",
"plants:numleaves": "8",
"plants:speciesname": "sunflower"
},
{
"@id": "instances:2",
"@type": "Animal",
"animals:numlegs": "4",
"animals:speciesname": "dog",
"animals:eats": "instances:1"
}
]
}
我希望第一个元素的 id 是 http://example.com/instances#1
,但是当我 运行 通过 http://json-ld.org/playground/ 时,它的扩展形式是 base:instances1
。我该如何正确处理?
它没有按照您想要的方式工作,因为您定义了 @base
然后尝试将其用作前缀。
哈希 (#) 也不会神奇地出现。您必须将其包含在您的基本 URI 中。
总而言之,您必须将上下文更改为:
"@context":{
"base":"http://example.com/",
"instances":"base:instances#",
"animals":"base:animals#",
"plants":"base:plants#"
}
现在 instances:1
是 http://example.com/
+ instances#
+ 1
的串联。