-
Notifications
You must be signed in to change notification settings - Fork 92
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Operations with graphs #186
Comments
The Ruby RDF toolset doesn't specifically have such a tool, or an RDF Diff tool, which would be useful, however you may be able to achieve what you want using a SPARQL MINUS or SPARQL UPDATE DELETE WHERE, both available using the SPARQL gem. Note that the problem is that BNodes in two different graphs are different, and a simple removal doesn't work. Even if you load the same serialization into two different graphs, the BNodes aren't equivalent. However, if you can put the graph you want to do in a SPARQL WHERE clause, BNodes act like existential variables, so that they will match BNodes that have the same pattern. Lastly, on the books to implement is RDF Normalization, which might work, as it can create canonical serializations of both graphs allowing a text diff to work, or by skolemizing the BNodes in each graph using normalized identifiers allowing the use of something like RDF::Mutable.delete. |
See issue #209 on how rdf-normalize might add a |
(closed by mistake) |
This seems like a punt for 2.0 so I'm removing the tag. I have some ideas about supporting graph operations through FFI to C and/or Rust, but think this is a larger work chunk than we can take on on the 2.0 timeline. It would be useful for any interested parties to chime in on use cases. |
Is there a way to realize operations with graphs? I have two graphs and I need to subtract them.
The text was updated successfully, but these errors were encountered: