rdf-mt/commit
Added rdf:_NNN entailment
author | Jan Wielemaker |
---|---|
Tue Dec 17 14:58:09 2013 +0100 | |
committer | Jan Wielemaker |
Tue Dec 17 14:58:09 2013 +0100 | |
commit | cf0bd88b99ae493fbe157d2987887bf21c0de327 |
tree | a381df6303133b9ee81fdaa7141b38eebaad76fa |
parent | 0ea24a0c43e97fc09c702a8779d73ed52536ea64 |
Diff style: patch stat
diff --git a/lib/rdf_mt/mt_rdf.pl b/lib/rdf_mt/mt_rdf.pl index f2b1e08..051ac46 100644 --- a/lib/rdf_mt/mt_rdf.pl +++ b/lib/rdf_mt/mt_rdf.pl @@ -35,4 +35,13 @@ :- multifile rdf_reasoner:entailment_module/2. rdf_reasoner:entailment_module(rdf, mt_rdf). -dummy @@ {sss, ppp, ooo} ==> true. +membership_prefix(rdf:'_'). + +seq_property @@ +{ _, P, _ } ==> + membership_prefix(Prefix), + sub_atom(P, 0, _, A, Prefix), + sub_string(P, _, A, 0, NumS), + number_string(I, NumS), + integer(I), + { P, rdf:type, rdfs:'ContainerMembershipProperty' }. diff --git a/lib/rdf_mt/mt_rdfs.pl b/lib/rdf_mt/mt_rdfs.pl index 3997829..02a8787 100644 --- a/lib/rdf_mt/mt_rdfs.pl +++ b/lib/rdf_mt/mt_rdfs.pl @@ -34,6 +34,7 @@ :- use_module(graph_consistency). :- multifile rdf_reasoner:entailment_module/2. +rdf_reasoner:entailment_module(rdfs, mt_rdf). rdf_reasoner:entailment_module(rdfs, mt_rdfs). /** <module> Rewrite rule set for RDFS diff --git a/lib/rdf_mt/rdf_reasoner.pl b/lib/rdf_mt/rdf_reasoner.pl index 632323e..fded2ec 100644 --- a/lib/rdf_mt/rdf_reasoner.pl +++ b/lib/rdf_mt/rdf_reasoner.pl @@ -46,12 +46,15 @@ % Compute the closure using Regime. compute_closure(Regime, Options) :- - entailment_module(Regime, Module), !, - debug(mt(regime), 'Regime ~w: rewriting', [Regime]), option(graph(Graph), Options, data), - fixed_point(Module:Graph). -compute_closure(Regime, _) :- - debug(mt(regime), 'Regime ~w not implemented', [Regime]). + ( entailment_module(Regime, Module) + *-> ( debug(mt(regime), + 'Regime ~w: rewriting using ~w', [Regime, Module]), + fixed_point(Module:Graph) + ) + ; debug(mt(regime), 'Regime ~w not implemented', [Regime]) + ), + fail ; true. fixed_point(Graph) :- rdf_rewrite(Graph), !,