W3C home > Mailing lists > Public > public-shex@w3.org > January 2017

Progressing with the ShEx/JSON-LD integration

From: Dimitris Kontokostas <kontokostas@informatik.uni-leipzig.de>
Date: Thu, 26 Jan 2017 17:08:47 +0200
Message-ID: <CA+u4+a23tXB+7hpok7KAgnhvK3Gx=o6y2mgN6UuvLqBV=dBNHg@mail.gmail.com>
To: public-shex@w3.org
Dear all,

During the last meeting, we did not discuss a sub-issue of whether to rely
on JSON-LD/RDF for refrences or build custom structures to express
references.
JSON-LD has a (terse) syntax for RDF references which expresses connections
in an RDF graph.
Originally, ShExJ encoded a shape reference like "@<S2>" in:

  <S1> { <p1> @<S2> }
  <S2> { <p2> . }

as a custom JSON structure:
  { "type": "Schema", "shapes": [
    { "id": "http://a.example/S1", "type": "Shape",
      "expression": {
        "type": "TripleConstraint", "predicate": "http://a.example/p1",
        "valueExpr": {                                      #
            "type": "ShapeRef",                          # old reference
structure
            "reference": "http://a.example/S2"  #
    } } },
    { "id": "http://a.example/S2", "type": "Shape",
      "expression": {
        "type": "TripleConstraint", "predicate": "http://a.example/p2"
    } } } }

Using JSON-LD as a graph language allows us to eliminate the ceremony
around the ref to <S2>:
  { "type": "Schema", "shapes": [
    { "id": "http://a.example/S1", "type": "Shape",
      "expression": {
        "type": "TripleConstraint", "predicate": "http://a.example/p1",
        "valueExpr": "http://a.example/S2"    # new reference using RDF
    } },
    { "id": "http://a.example/S2", "type": "Shape",
      "expression": {
        "type": "TripleConstraint", "predicate": "http://a.example/p2"
    } } } }

This has been implemented in the issue-22-reference-cleanup branches of
shexTest and shex.js as well as Gregg's implementation.
This is our only remaining syntax issue so it would be nice if folks with
questions or an objection could express them in thread commnents:
  https://github.com/shexSpec/shex/issues/22
You can vote with the +☺ link at the top right of the issue to give a
thumbs-up or thumbs-down.
Scroll to the bottom of the issue text to see the current tally (+1's)

Best,
Dimitris


-- 
Dimitris Kontokostas
Department of Computer Science, University of Leipzig & DBpedia Association
Projects: http://dbpedia.org, http://rdfunit.aksw.org,
http://aligned-project.eu
Homepage: http://aksw.org/DimitrisKontokostas
Research Group: AKSW/KILT http://aksw.org/Groups/KILT
Received on Thursday, 26 January 2017 15:09:57 UTC

This archive was generated by hypermail 2.3.1 : Thursday, 26 January 2017 15:09:58 UTC