From 17bd9beaf7f358a44e5bf36a5855fe6727d506dc Mon Sep 17 00:00:00 2001 From: Federico Igne Date: Tue, 10 May 2022 18:17:06 +0100 Subject: [pagoda] Move project to Scala This commit includes a few changes: - The repository still uses Maven to manage dependency but it is now a Scala project. - The code has been ported from OWLAPI 3.4.10 to 5.1.20 - A proof of concept program using both RSAComb and PAGOdA has been added. --- .../karma2/model/ExtendedConjunctiveQuery.java | 94 ---------------------- 1 file changed, 94 deletions(-) delete mode 100644 src/org/semanticweb/karma2/model/ExtendedConjunctiveQuery.java (limited to 'src/org/semanticweb/karma2/model/ExtendedConjunctiveQuery.java') diff --git a/src/org/semanticweb/karma2/model/ExtendedConjunctiveQuery.java b/src/org/semanticweb/karma2/model/ExtendedConjunctiveQuery.java deleted file mode 100644 index de2f87e..0000000 --- a/src/org/semanticweb/karma2/model/ExtendedConjunctiveQuery.java +++ /dev/null @@ -1,94 +0,0 @@ -package org.semanticweb.karma2.model; - -import java.util.LinkedHashSet; -import java.util.LinkedList; -import java.util.List; -import java.util.Set; - -import org.semanticweb.HermiT.model.Atom; -import org.semanticweb.HermiT.model.Term; -import org.semanticweb.HermiT.model.Variable; - -import uk.ac.ox.cs.JRDFox.Prefixes; - - -public class ExtendedConjunctiveQuery extends ConjunctiveQuery { - - private Term[] ansTerms; - private Term[] terms; - - public ExtendedConjunctiveQuery( - Atom[] queryAtoms, Term[] answerTerms, Prefixes pref) { - super(queryAtoms, getExtendedHead(queryAtoms, answerTerms), pref); - this.ansTerms = answerTerms.clone(); - terms = getQueryTerms(queryAtoms); - } - - public int getNumberOfRealAnswerTerms() { - return ansTerms.length; - } - - public Term getRealAnswerTerm(int termIndex) { - return ansTerms[termIndex]; - } - - public int getNumberOfTerms() { - return terms.length; - } - - public Term[] getTerms() { - return terms; - } - - - public Atom[] getAtoms() { - return m_queryAtoms; - } - - public Term[] getRealAnswerTerms() { - return ansTerms; - } - - private static Term[] getExtendedHead(Atom[] queryAtoms, Term[] answerTerms) { - List terms = new LinkedList(); - for (Term t :answerTerms) { - terms.add(t); - } - for (Atom a : queryAtoms) { - if (a.getArgument(0) instanceof Variable && !terms.contains(a.getArgument(0))) - terms.add(a.getArgument(0)); - if (a.getArity()> 1 && a.getArgument(1) instanceof Variable && !terms.contains(a.getArgument(1))) - terms.add(a.getArgument(1)); - } - return terms.toArray(new Term[terms.size()]); - - } - - private static Term[] getQueryTerms(Atom[] queryAtoms) { - Set terms = new LinkedHashSet(); - for (Atom a : queryAtoms) { - terms.add(a.getArgument(0)); - if (a.getArity()> 1) - terms.add(a.getArgument(1)); - } - return terms.toArray(new Term[terms.size()]); - } - - - public static ExtendedConjunctiveQuery computeExtension(ConjunctiveQuery q) { - Term[] answerTerms = new Term[q.getNumberOfAnswerTerms()]; - for (int i = 0; i < q.getNumberOfAnswerTerms(); i++) - answerTerms[i] = q.getAnswerTerm(i); - Atom[] atoms = new Atom[q.getNumberOfQueryAtoms()]; - for (int i = 0; i < q.getNumberOfQueryAtoms(); i++) - atoms[i] = q.getQueryAtom(i); - return new ExtendedConjunctiveQuery(atoms, answerTerms,q.prefixes); - - } - - public Term getTerm(int i) { - return terms[i]; - } - - -} -- cgit v1.2.3