[
https://issues.apache.org/jira/browse/COMMONSRDF-15?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14528671#comment-14528671
]
Stian Soiland-Reyes commented on COMMONSRDF-15:
-----------------------------------------------
Simple does currently a mapping based on uniqueReference:
https://github.com/apache/incubator-commonsrdf/blob/master/simple/src/main/java/org/apache/commons/rdf/simple/GraphImpl.java#L81
See COMMONSRDF-21 -- this comes from the current requirements of
RDFTermFactory.createGraph() -- but affects this behaviour as it breaks
.contains(). Perhaps better would be for simple to create cloned BlankNodeImpl
and directly set its identifier field, e.g. a package-protected
BlankNodeImpl(BlankNode) constructor.
(Simple is doing those clones to avoid having non-simple objects in the Graph
in case they are say network dependent - it might be a different Jira
suggestion to remove that behavior)
> Can foreign BlankNode impls be used with .contains() and .getTriples()?
> -----------------------------------------------------------------------
>
> Key: COMMONSRDF-15
> URL: https://issues.apache.org/jira/browse/COMMONSRDF-15
> Project: Apache Commons RDF
> Issue Type: Improvement
> Reporter: Stian Soiland-Reyes (old)
> Priority: Minor
>
> What happens if I add a 'foreign' `BlankNode` to a Graph (either directly
> with `Graph.add(s,t,o)` or within a foreign `Triple` to `Graph.add()` -- will
> I be able to match using that original blank node object "later" in other
> calls like `.contains()` and `.getTriples()`?
> This is of course straight-forward for IRI and Literal, but trickier for
> BlankNode.
> e.g. pseudocode:
> {code}
> impl1 = new Impl1TermFactory();
> b1 = impl1.createBlankNode();
> knows = impl1.createIRI("http://xmlns.com/foaf/0.1/knows");
> alice = impl1.createIRI("http://example.com/alice");
> impl2 = new Impl2TermFactory();
> g2 = impl2.createGraph();
> g2.add(b1, knows, alice);
> assertTrue(g2.contains(b1, knows, alice));
> {code}
> As discussed under COMMONSRDF-8 and pull request 7
> https://github.com/apache/incubator-commonsrdf/pull/7
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)