Closed
Description
Allows a term definition to include an @values
block to describe structured values, such as for GeoJSON
Example
{
"@context": {
"coordinates": {
"@id": "geojson:coordinates",
"@container" : "@list",
"@values" : {
"@type" : "geojson:Coordinate",
"@container" : "@set",
"@values" : [
{"@type" : "xsd:double", "@id":"geo:longitude"},
{"@type" : "xsd:double", "@id":"geo:latitude"}
]
}
}
},
"@graph" : [{
"@id" : "ex:LineString1",
"coordinates" : [
[
3.1057405471801753,
51.064216229943476
],
[
3.1056976318359375,
51.063434090307574
]
]
}]
}
Would transform to (and vice versa):
ex:LineString1 geojson:coordinates _:b0 .
_:b0 rdf:first _:b1 .
_:b1 a geojson:Coordinate ;
geo:longitude "3.105740547180175E0"^^xsd:double ;
geo:latitude "5.106421622994348E1"^^xsd:double .
_:b0 rdf:rest _:b2 .
_:b2 rdf:first a geojson:Coordinate ;
geo:longitude "3.1056976318359375"^^xsd:double ;
geo:latitude "51.063434090307574"^^xsd:double .
_:b2 rdf:rest rdf:nil .
Original issue is JSON-LD 1.1 Feature Request: support @values for describing multidimensional containers (list of lists) #397