将列表项转换为 属性 - JSONLD

Transform list items to property - JSONLD

我想从 API 中提取 RDF,我使用 jsonld 和 javascript 来完成它。 API 中的 json 看起来像这样:

  "datasetid": "etat-des-stations-le-velo-star-en-temps-reel",
  "recordid": "88a8871cd455b991aae541e2d60ebdab34840e3e",
  "fields": {
    "etat": "En fonctionnement",
    "lastupdate": "2021-03-19T17:33:18+00:00",
    "nombrevelosdisponibles": 6,
    "nombreemplacementsactuels": 16,
    "nom": "Musée Beaux-Arts",
    "nombreemplacementsdisponibles": 10,
    "idstation": "5510",
    "coordonnees": [
      48.109601,
      -1.67408
    ]
  },
  "geometry": {
    "type": "Point",
    "coordinates": [
      -1.67408,
      48.109601
    ]
  },
  "record_timestamp": "2021-03-19T17:33:00+00:00"
}

我已经定义了这个上下文:

const context_bike = {
"@vocab": "http://schema.org/",
"@base": "http://data.org/",
"geometry":null,
"datasetid":null,
"recordid":null,
"record_timestamp":null,
"field": "@nest",
"idstation": "@id",
"coordonnees":"???",
"nombreemplacementsdisponibles":{"@id":"AvailableSpaceNumber", "@type":"xsd:integer"},
"nom": {"@id":"name", "@type":"xsd:string"},
"nombrevelosdisponibles": {"@id":"AvailableBikeNumber", "@type":"xsd:integer"},
"lastupdate":{"@id":"lastupdate", "@type":"xsd:dateTime"},
"state":{"@id":"etat", "@type":"xsd:string"}

}

我只是在从“coordonnees”中提取数据时遇到问题。我想要一个 属性 lat 和另一个 long 对应于“coordonnees”数组的第一个和第二个元素。

我该怎么做?我还在其他示例中看到了单词“@context”的定义,我必须添加它吗?我刚刚添加了“@vocab”,当我添加“@context”时,它创建了奇怪的 n 三元组,甚至还定义了空属性。

谢谢!

您可能想查看 Geo JSON-LD (http://geojson.org/geojson-ld/),以使用列表描述坐标。然后,您可以使用 SPARQL(或 GeoSPARQL)将 lat/long 放入属性中。