amalgame/commit
introduce setting to bind manually created reference alignment to the global strategy instead of the individual mapping
author | Jacco van Ossenbruggen |
---|---|
Wed Jun 26 10:09:36 2013 +0200 | |
committer | Jacco van Ossenbruggen |
Wed Jun 26 10:09:36 2013 +0200 | |
commit | ded3d93b029caae6114e7ab946d94e2d0a72ab6b |
tree | 4f505cf43fd616e897f246f5fb4ed9263c626d6e |
parent | 6672ef00d02cd615794eb966ebcad39665acb46f |
Diff style: patch stat
diff --git a/lib/amalgame/ag_evaluation.pl b/lib/amalgame/ag_evaluation.pl index a5d15cb..1383c3a 100644 --- a/lib/amalgame/ag_evaluation.pl +++ b/lib/amalgame/ag_evaluation.pl @@ -10,9 +10,14 @@ :- use_module(library(amalgame/ag_provenance)). :- use_module(library(amalgame/util)). +:- setting(amalgame:reference_alignment, oneof([strategy, mapping]), strategy, + 'Keep reference alignments per mapping or per strategy. Note that in the per mapping mode, the references are lost when the mapping is deleted.'). evaluation_graph_chk(Strategy, Mapping, EvalGraph) :- - rdf(EvalGraph, amalgame:evaluationOf, Mapping, Strategy), + ( setting(amalgame:reference_alignment, mapping) + -> rdf(EvalGraph, amalgame:evaluationOf, Mapping, Strategy) + ; rdf(EvalGraph, amalgame:evaluationOf, Strategy, Strategy) + ), !. evaluation_graph(Strategy, Mapping, EvalGraph) :- @@ -22,24 +27,28 @@ evaluation_graph(Strategy, Mapping, EvalGraph) :- ). create_evaluation_graph(Strategy, Mapping, EvalGraph) :- - mint_node_uri(Strategy, evaluation_process, EvalProcess), - mint_node_uri(Strategy, evaluation_result, EvalGraph), - - format(atom(Comment), 'Manual evaluation of ~w', [Mapping]), + mint_node_uri(Strategy, manual_evaluation_process, EvalProcess), + mint_node_uri(Strategy, manual_reference_alignment, EvalGraph), rdf_assert(EvalProcess, rdf:type, amalgame:'EvaluationProcess', Strategy), rdf_assert(EvalProcess, rdfs:label, literal('Manual evaluation process'), Strategy), - rdf_assert(EvalProcess, amalgame:input, Mapping, Strategy), - - rdf_assert(EvalGraph, rdf:type, amalgame:'EvaluatedMapping', Strategy), - rdf_assert(EvalGraph, rdfs:label, literal('Evaluation results'), Strategy), - rdf_assert(EvalGraph, rdfs:comment, literal(Comment), Strategy), + rdf_assert(EvalGraph, rdf:type, amalgame:'EvaluatedMapping', Strategy), + rdf_assert(EvalGraph, rdfs:label, literal('Evaluation results'), Strategy), rdf_assert(EvalGraph, amalgame:wasGeneratedBy, EvalProcess, Strategy), - rdf_assert(EvalGraph, amalgame:evaluationOf, Mapping, Strategy), rdf_assert(EvalGraph, amalgame:status, amalgame:intermediate, Strategy), - Options = [was_derived_from([Mapping])], + ( setting(amalgame:reference_alignment, mapping) + -> format(atom(Comment), 'Manual evaluation of ~p', [Mapping]), + rdf_assert(EvalProcess, amalgame:input, Mapping, Strategy), + rdf_assert(EvalGraph, amalgame:evaluationOf, Mapping, Strategy), + Options = [was_derived_from([Mapping, Strategy])] + ; format(atom(Comment), 'Manual evaluation of mappings from ~p', [Strategy]), + rdf_assert(EvalProcess, amalgame:input, Strategy, Strategy), + rdf_assert(EvalGraph, amalgame:evaluationOf, Strategy, Strategy), + Options = [was_derived_from([Strategy])] + ), + rdf_assert(EvalGraph, rdfs:comment, literal(Comment), Strategy), provenance_graph(Strategy, ProvGraph), prov_was_generated_by(EvalProcess, [EvalGraph], ProvGraph, Options).