[ 
https://issues.apache.org/jira/browse/JENA-2034?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17284402#comment-17284402
 ] 

Andy Seaborne commented on JENA-2034:
-------------------------------------

For graph diffs - and wanting to handle the general including blank nodes - I 
came up with [RDF Patch|https://afs.github.io/rdf-delta/rdf-patch.html] which 
is not an RDF format by design. By not being RDF, it can handle changes on 
specific blank nodes and record the order of operations, making it idempotent 
for replay.

For your case, could solid:deletes, solid:inserts refer to another web resource 
(graph) by URI then this file is the metadata about the change?

That could all be bundled up in an RDF dataset.

I'm not sure what you mean by "refer to the named graph as a property" - the 
properties are URIs.

For Solid questions, there is a gitter.im forum and also one for linked data 
which you might get other (interesting!) opinions.

> adding GraphNode (N3 formula) to Model (ARQInternalErrorException)
> ------------------------------------------------------------------
>
>                 Key: JENA-2034
>                 URL: https://issues.apache.org/jira/browse/JENA-2034
>             Project: Apache Jena
>          Issue Type: Question
>          Components: ARQ, Jena, RDF API
>    Affects Versions: Jena 3.17.0
>         Environment: * Ubuntu 20.04
>  * Using Eclipse EE
>  * Project is running a Tomcat 9 server
>            Reporter: Calum Mackervoy
>            Priority: Minor
>
> I'm attempting to add a Graph node to a Model (N3 formula)
> The output should be roughly like the below:
> ```
> <http://localhost:8080/patches/#cf0ba48fa8b0421c8b025c3ea6b41a4f>
>  a <http://www.w3.org/ns/solid/terms#Patch> ;
>  <http://www.w3.org/ns/solid/terms#patches>
>  <http://example.com/#me> ;
>  <http://www.w3.org/ns/solid/terms#inserts> \{ http://example.com/#me 
> http://example.com/#property http://example.com/#resource } .
> ```
> Note that the `#inserts` property here is a "GraphNode" or N3 formula, I'm 
> modelling a graph of the triples to write when a `Task` is complete
> I tried the code below:
> ```
> Model out = ModelFactory.createDefaultModel();
> out.add(endState, SolidTerms.inserts, 
> out.asRDFNode(NodeFactory.createGraphNode(inserts.getGraph())));
> ```
> but this throws `[org.apache.jena.sparql.ARQInternalErrorException: Unknown 
> node type: \{http://example.com/#me @http://example.com/#property 
> http://example.com/#resource}]`
> I've tried many other ways of putting the `Graph` in the model with no 
> success, posting this one because it was my first and I think the most 
> rational. I think it's a bug unless Jena just doesn't support the GraphNode 
> type in `RDFNode` ? I spent a few hours searching the documentation and the 
> web before opening this issue
> The `@` in the error output puzzled me a bit, but I checked that it's not 
> included in my property definition, it's maybe added in by the 
> `createGraphNode` or the error serialization



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to