From 9ce65c5a963b03ee97fe9cb6c5aa65a3c04a80a8 Mon Sep 17 00:00:00 2001 From: yzhou Date: Tue, 21 Apr 2015 10:34:27 +0100 Subject: initial version --- src/uk/ac/ox/cs/pagoda/rules/GeneralProgram.java | 49 ++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 src/uk/ac/ox/cs/pagoda/rules/GeneralProgram.java (limited to 'src/uk/ac/ox/cs/pagoda/rules/GeneralProgram.java') diff --git a/src/uk/ac/ox/cs/pagoda/rules/GeneralProgram.java b/src/uk/ac/ox/cs/pagoda/rules/GeneralProgram.java new file mode 100644 index 0000000..38fa494 --- /dev/null +++ b/src/uk/ac/ox/cs/pagoda/rules/GeneralProgram.java @@ -0,0 +1,49 @@ +package uk.ac.ox.cs.pagoda.rules; + +import java.util.Collection; +import java.util.Collections; +import java.util.Set; + +import org.semanticweb.HermiT.model.DLClause; +import org.semanticweb.owlapi.model.OWLOntology; +import uk.ac.ox.cs.pagoda.constraints.UnaryBottom; + +public class GeneralProgram extends Program { + + public GeneralProgram(Set relevantClauses, OWLOntology relevantOntology) { + ontology = relevantOntology; + + ontologyDirectory = null; + dlOntology = null; + botStrategy = new UnaryBottom(); + + clauses = botStrategy.process(relevantClauses); + } + + public GeneralProgram() {} + + public Collection convert2Clauses(DLClause clause) { + return botStrategy.process(Collections.singleton(clause)); + } + + @Override + public String getOutputPath() { + return getDirectory() + "rules.dlog"; + } + +// @Override +// public String getDirectory() { +// File dir = new File(ontologyDirectory + Utility.FILE_SEPARATOR + "general"); +// if (!dir.exists()) +// dir.mkdirs(); +// return dir.getPath(); +// } + + public boolean isHorn() { + for (DLClause clause: clauses) + if (clause.getHeadLength() > 1) + return false; + return true; + } + +} -- cgit v1.2.3