Uploaded image for project: 'Blazegraph (by SYSTAP)'
  1. Blazegraph (by SYSTAP)
  2. BLZG-1209

Resource... contexts not encoded/decoded according to openrdf semantics (REST API)

    Details

      Description

      This issues shows up with the following REST API methods. It is also present for the new HASSTMT REST API method.


      - http://wiki.blazegraph.com/wiki/index.php/NanoSparqlServer#FAST_RANGE_COUNTS
      - http://wiki.blazegraph.com/wiki/index.php/NanoSparqlServer#DELETE_with_Access_Path

      The correct semantics for the openrdf API are as follows (and are documented at BD.NULL_GRAPH in our code base).

          * Given
          * 
          * <pre>
          * void foo(Resource s, final URI p, final Value o, final Resource... contexts)
          * </pre>
          * 
          * <dl>
          * <dt>foo(s,p,o)</dt>
          * <dd>All named graphs are addressed. The <i>contexts</i> parameter will be
          * a Resource[0] reference.</dd>
          * <dt>foo(s,p,o,(Resource[]) null)</dt>
          * <dd>
          * <em>Note: openrdf does not allow this invocation pattern - the Resource[] MUST NOT be a <code>null</code> reference.</em>
          * </dd>
          * <dt>foo(s,p,o,(Resource) null)</dt>
          * <dd>The openrdf "nullGraph" is addressed. The <i>contexts</i> parameter
          * will be Resource[]{null}. Java will autobox the Resource reference as a
          * Resource[]{null} array.</dd>
          * <dt>foo(s,p,o,x,y,z)</dt>
          * <dd>The openrdf named graphs (x,y,z) are addressed. The <i>contexts</i>
          * parameter will be Resource[]{x,y,z}.</dd>
          * <dt>foo(s,p,o,x,null,z)</dt>
          * <dd>The openrdf named graphs (x,nullGraph,z) are addressed. The
          * <i>contexts</i> parameter will be Resource[]{x,null,z}</dd>
          * </dd>
          * </dl>
      

      Note: This problem showed up when trying to integrate HASSTMT into our RemoteRepository.

      TODO Revisit the ESTCARD and DELETE_BY_ACCESS path APIs on the client and the server and ensure test coverage for compliance. Also add test coverage for HASSTMT.

      TODO Document the interpretation of &c more completely on the NSS wiki page per this ticket.

      See BLZG-1143 Extension REST API does not support multiple context values

        Activity

        beebs Brad Bebee created issue -
        bryanthompson bryanthompson made changes -
        Field Original Value New Value
        Fix Version/s BLAZEGRAPH_RELEASE_1_5_2 [ 10164 ]
        beebs Brad Bebee made changes -
        Workflow Trac Import v2 [ 13045 ] Trac Import v3 [ 14477 ]
        beebs Brad Bebee made changes -
        Workflow Trac Import v3 [ 14477 ] Trac Import v4 [ 15806 ]
        beebs Brad Bebee made changes -
        Status Closed - Won't Fix [ 6 ] Open [ 1 ]
        beebs Brad Bebee made changes -
        Status Open [ 1 ] Accepted [ 10101 ]
        beebs Brad Bebee made changes -
        Status Accepted [ 10101 ] In Progress [ 3 ]
        Priority Highest [ 1 ]
        beebs Brad Bebee made changes -
        Status In Progress [ 3 ] Resolved [ 5 ]
        beebs Brad Bebee made changes -
        Status Resolved [ 5 ] In Review [ 10100 ]
        beebs Brad Bebee made changes -
        Status In Review [ 10100 ] Done [ 10000 ]
        beebs Brad Bebee made changes -
        Workflow Trac Import v4 [ 15806 ] Trac Import v5 [ 16047 ]
        beebs Brad Bebee made changes -
        Workflow Trac Import v5 [ 16047 ] Trac Import v6 [ 18351 ]
        beebs Brad Bebee made changes -
        Workflow Trac Import v6 [ 18351 ] Trac Import v7 [ 19750 ]
        beebs Brad Bebee made changes -
        Workflow Trac Import v7 [ 19750 ] Trac Import v8 [ 21373 ]

          People

          • Assignee:
            bryanthompson bryanthompson
            Reporter:
            bryanthompson bryanthompson
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: