amalgame/commit
IMPROVED: switch order of rdf_has/5 predicates based on instantiated patterns
author | Jacco van Ossenbruggen |
---|---|
Fri Mar 6 13:07:10 2015 +0100 | |
committer | Jacco van Ossenbruggen |
Fri Mar 6 13:07:10 2015 +0100 | |
commit | fc3fc71d20ac5f346e642901ec524230536a539b |
tree | 902e13a20d1faff84c9c1bc2004246f6110232ac |
parent | 5fc88e3a70ee8ace62fcb9dc1ae5c9d1a74324c0 |
Diff style: patch stat
diff --git a/lib/amalgame/rdf_util.pl b/lib/amalgame/rdf_util.pl index a6b0991..930d4ab 100644 --- a/lib/amalgame/rdf_util.pl +++ b/lib/amalgame/rdf_util.pl @@ -24,8 +24,12 @@ % Behaves as rdf_has/4 but the underlying triple needs to be in % named graph G. rdf_has(S,P,O,RP,G) :- - rdf_has(S,P,O,RP), - rdf(S,RP,O,G). + ( ground(G) + -> rdf(S,RP,O,G:_), + rdf_has(S,P,O,RP) + ; rdf_has(S,P,O,RP), + rdf(S,RP,O,G:_) + ). rdf_literal_predicates(L) :- findall(P, rdf_is_literal_predicate(P), Ps),