如何解决json-ld 可以在压缩/框架时展平深层嵌套的链接数据关系吗?
我有一些从 RDF 导出的输入数据,这些数据描述了具有地址、地理位置、纬度和经度坐标的事物。这种事情的简化定义如下所示:
[
{
"@id": "https://example.com/thing1#Address","http://data.ordnancesurvey.co.uk/ontology/spatialrelations/within": [
{
"@id": "http://data.ordnancesurvey.co.uk/id/postcodeunit/OX41JE"
}
],"@type": [
"https://example.com/vocab/Address"
]
},{
"@id": "http://data.ordnancesurvey.co.uk/id/postcodeunit/OX41JE","http://www.w3.org/2003/01/geo/wgs84_pos#long": [
{
"@type": "http://www.w3.org/2001/XMLSchema#decimal","@value": "-1.239064"
}
],"http://www.w3.org/2003/01/geo/wgs84_pos#lat": [
{
"@type": "http://www.w3.org/2001/XMLSchema#decimal","@value": "51.748316"
}
]
},{
"@id": "https://example.com/thing1","@type": [
"https://example.com/vocab/Thing"
],"https://example.com/vocab/hasAddress": [
{
"@id": "https://example.com/thing1#Address"
}
]
}
]
我正在尝试将其展平为更像这样的内容:
{
"@id": "ex:thing1","location": {
"lat": 51.748316,"long": -1.239064
}
}
到目前为止,我最大的努力是这个框架,但这包含许多不需要的嵌套和坐标的复杂对象:
{
"@context": {
"@version": 1.1,"ex": "https://example.com/","ossr": "http://data.ordnancesurvey.co.uk/ontology/spatialrelations/","geo": "http://www.w3.org/2003/01/geo/wgs84_pos#","postcode": "http://data.ordnancesurvey.co.uk/id/postcodeunit/","address": {
"@id": "ex:vocab/hasAddress"
},"within": {
"@id": "ossr:within"
},"lat": {
"@id": "geo:lat"
},"long": {
"@id": "geo:long"
}
},"@id": "ex:thing1","@type": "ex:vocab/Thing","address": {
"@id": "ex:thing1#Address","@type": "ex:vocab/Address","within": {
"@id": "postcode:OX41JE","lat": {
"@type": "http://www.w3.org/2001/XMLSchema#decimal","@value": "51.748316"
},"long": {
"@type": "http://www.w3.org/2001/XMLSchema#decimal","@value": "-1.239064"
}
}
}
}
很抱歉这有两个部分 - 我对这两部分的答案都很感兴趣:
- 展平嵌套的术语,省略了不止一层
- 将坐标对象映射为简单值(最好是数值,但字符串也可以)
我认为后者是可能的,尽管我正在努力寻找正确的表达方式......
但不确定前者是否可行? JSON-LD 规范中带有 @nest
的示例似乎在走向另一个方向:在压缩时添加嵌套。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。