如何解决访问json-ld框架中的嵌套属性
所以,这是我的json-ld数据:
[
{
"@id": "http://example.com/id2","http://www.w3.org/2008/05/skos-xl#literalForm": [
{
"@value": "Secondary entity"
}
]
},{
"@id": "http://example.com/id1","http://example.com/describedBy": [
{
"@id": "http://example.com/id2"
}
],"http://www.w3.org/2000/01/rdf-schema#label": [
{
"@value": "Main entity"
}
]
}
]
这是我正在使用的框架:
{
"@context" :
{
"label": {
"@id":"http://www.w3.org/2000/01/rdf-schema#label"
},"describedBy": {
"@id":"http://example.com/describedBy"
},"id": "@id","@vocab" : "http://example.com/","@base" : "http://example.com/"
},"@graph" : {
"describedBy": {}
}
}
我得到的结果如下:
{
"@context": {
"label": {
"@id": "http://www.w3.org/2000/01/rdf-schema#label"
},"describedBy": {
"@id": "http://example.com/describedBy"
},"@vocab": "http://example.com/","@base": "http://example.com/"
},"id": "id1","describedBy": {
"id": "id2","http://www.w3.org/2008/05/skos-xl#literalForm": "Secondary entity"
},"label": "Main entity"
}
是否可以将数据框起来像这样:
{
"@context": {
"label": {
"@id": "http://www.w3.org/2000/01/rdf-schema#label"
},"describedById": "id2","describedByLabel": "Secondary entity","label": "Main entity"
}
基本上,这是基于先前的describedById
创建两个新属性:describedByLabel
和describedBy
。
解决方法
在框架中不能真正做到这一点,因为“第二实体”是“ id2”节点的属性,因此需要将其提升为“ id1”节点的属性。
您可以使用SPARQL CONSTRUCT进行此操作,但是JSON-LD不允许您真正创建新数据。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。