JSON-LD remote contexts

Does Stardog not support JSON-LD remote contexts?

Here is a shell session that demonstrates a remote JSON-LD context working as expected:

justin@parens:/tmp$ cat a.json
{ "@context":"http://18.221.230.193:9090/some.json",
    "title": "the world according to garp",
    "writer":"john irving",
    "ical:date": "some date here",
    "@type":"book"
}

justin@parens:/tmp$ curl 'http://18.221.230.193:9090/some.json'
{
  "@context": {
    "ical": "http://www.w3.org/2002/12/cal/ical#",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "title": {
      "@id": "ical:title",
      "@type": "xsd:string"
    },
    "writer": {
      "@id": "http://www.w3.org/2002/12/cal/ical#writer",
      "@type": "xsd:string"
    }
  }
}

justin@parens:/tmp$ ~/Downloads/apache-jena-4.7.0/bin/riot --syntax=jsonld --formatted=turtle a.json
[ a       <file:///tmp/book> ;
  <http://www.w3.org/2002/12/cal/ical#date>
          "some date here" ;
  <http://www.w3.org/2002/12/cal/ical#title>
          "the world according to garp" ;
  <http://www.w3.org/2002/12/cal/ical#writer>
          "john irving"
] .

And when I load that JSON-LD into Stardog 8.1.1 I get:

_:b0 a <http://api.stardog.com/book> ;
   <ical:date> "some date here" .
1 Like

I'm having the same problem. Is remote contexts not implementet due to security considerations? If so, could we keep a copy of the remote context in the database and reference it in @context when adding json-ld data?

1 Like

Correct. As with FROM NAMED we will not resolve and download data from arbitrary URLs.