Ignore JSON nesting

Hi,

I'm working on an open data API which currently can serialize its output to GeoJSON or RDF/Turtle. I'm working on JSON-LD serialization, and ideally I would like to have a @context which I can add to the existing GeoJSON output (together with some @ids and @types), so that both the Turtle output and the JSON-LD output will normalize to the same triples.

Data is organized as follows: each object/feature has an ID and a name, and data on one or more layers. Per layer, there is a data field, which contains a JSON object. Example GeoJSON output:

{
  "type": "FeatureCollection",   
  "features": [
    {
      "type": "Feature",
      "properties": {
        "id": "admr.nl.appingedam",
        "name": "Appingedam",
        "layers": {
          "cbs": {
            "data": {
              "name": "Appingedam",
              "population": 1092
            }
          },
          "admr": {
              "data": {
              "name": "Appingedam",
                "gme_code": 4654,
                "admn_level": 3
              }
          }
        }
      },
      "geometry": {…}
    }
  ]
}
Example Turtle output:

<admr.nl.appingedam>
    a :Node ;
    dc:title "Appingedam" ;
    :createdOnLayer <layer/admr> ;
    :layerData <admr.nl.appingedam/admr> ;
    :layerData <admr.nl.appingedam/cbs> .
<admr.nl.appingedam/admr>
    a :LayerData ;
    :definedOnLayer <layer/admr> ;
    <layer/admr/name> "Appingedam" ;
    <layer/admr/gme_code> "4654" .
    <layer/admr/admn_level> "3" .
<admr.nl.appingedam/cbs>
    a :LayerData ;
    :definedOnLayer <layer/cbs> ;
    <layer/cbs/name> "Appingedam" ;
    <layer/cbs/population> "1092" ;
The properties object does not have its own URI. Is there a way to create a JSON-LD context which takes the contents of the properties into account, but further 'ignores' its precence?

Many thanks,

Bert Spaan

Received on Tuesday, 11 March 2014 15:34:39 UTC