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. --- src/uk/ac/ox/cs/pagoda/query/GapByStore4ID2.java | 146 ----------------------- 1 file changed, 146 deletions(-) delete mode 100644 src/uk/ac/ox/cs/pagoda/query/GapByStore4ID2.java (limited to 'src/uk/ac/ox/cs/pagoda/query/GapByStore4ID2.java') diff --git a/src/uk/ac/ox/cs/pagoda/query/GapByStore4ID2.java b/src/uk/ac/ox/cs/pagoda/query/GapByStore4ID2.java deleted file mode 100644 index f8e1709..0000000 --- a/src/uk/ac/ox/cs/pagoda/query/GapByStore4ID2.java +++ /dev/null @@ -1,146 +0,0 @@ -package uk.ac.ox.cs.pagoda.query; - -import java.util.HashMap; -import java.util.HashSet; -import java.util.LinkedList; -import java.util.Map; -import java.util.Set; - -import uk.ac.ox.cs.pagoda.reasoner.light.BasicQueryEngine; -import uk.ac.ox.cs.pagoda.util.UFS; -import uk.ac.ox.cs.JRDFox.JRDFStoreException; -import uk.ac.ox.cs.JRDFox.store.TupleIterator; - -public class GapByStore4ID2 extends GapByStore4ID { - - private BasicQueryEngine m_baseEngine; - private UFS m_equality = null, m_baseEquality = null; - - public GapByStore4ID2(BasicQueryEngine engine, BasicQueryEngine baseEngine) { - super(engine); - m_baseEngine = baseEngine; - } - - @Override - public boolean hasNext() { - if (getNewGapTuple(iterator, -1)) return true; - if (iterator != null) { - iterator.dispose(); - iterator = null; - } - return getNextGapFactAboutEquality(); - } - - private boolean getNewGapTuple(TupleIterator it, int firstElement) { - if (it == null) return false; - int firstIndex = 0; - tuple = new int[3]; - if (firstElement > 0) { - tuple[0] = firstElement; - firstIndex = 1; - } - Integer predicate; - try { - for (; multi != 0; multi = it.getNext()) { - for (int i = firstIndex; i < 3; ++i) - tuple[i] = (int) it.getResourceID(i - firstIndex); - - if (isRDF_TYPE()) { - predicate = getGapPredicateID(tuple[2]); - if (predicate == null) continue; - tuple[2] = predicate; - } - else { - predicate = getGapPredicateID(tuple[1]); - if (predicate == null) continue; - tuple[1] = predicate; - } - return true; - } - } catch (JRDFStoreException e) { - e.printStackTrace(); - return false; - } - return false; - } - - private LinkedList toAddedIndividuals = null; - private TupleIterator iter_individual = null; - private int currentID = -1; - - private boolean getNextGapFactAboutEquality() { - if (toAddedIndividuals == null) { - m_equality = m_engine.getEqualityGroups(false); - m_baseEquality = m_baseEngine.getEqualityGroups(false); - toAddedIndividuals = new LinkedList(); - Map rep2cnt = new HashMap(); - Map rep2cnt_base = new HashMap(); - count(m_engine, m_equality, rep2cnt); - count(m_baseEngine, m_baseEquality, rep2cnt_base); - Set visitedrep = new HashSet(); - for (String individual : m_equality.keySet()) { - String rep = m_equality.find(individual); - if (visitedrep.contains(rep)) continue; - visitedrep.add(rep); - String rep_base = m_baseEquality.find(individual); - if (!rep2cnt.get(rep).equals(rep2cnt_base.get(rep_base))) { - toAddedIndividuals.add(rep); - } - } - - } - while (true) { - if (getNewGapTuple(iter_individual, currentID)) return true; - if (iter_individual != null) { - iter_individual.dispose(); - iter_individual = null; - } - if (toAddedIndividuals.isEmpty()) { - currentID = -1; - return false; - } - String individual = toAddedIndividuals.remove(); - currentID = tripleManager.getResourceID(individual); - try { - iter_individual = m_engine.internal_evaluateNotExpanded(String.format("select distinct ?y ?z where { <%s> ?y ?z }", individual)); - multi = iter_individual.open(); - } catch (JRDFStoreException e) { - e.printStackTrace(); - } - } - } - - private void count(BasicQueryEngine engine, UFS equality, Map map) { - for (String ind : equality.keySet()) { - Integer exist = map.get(ind); - if (exist == null) - map.put(equality.find(ind), 1); - else - map.put(equality.find(ind), ++exist); - } - } - - @Override - public int[] next() { - try { - if (iterator != null) - multi = iterator.getNext(); - else if (iter_individual != null) - multi = iter_individual.getNext(); - else - multi = 0; - } catch (JRDFStoreException e) { - e.printStackTrace(); - } - return tuple; - } - - public void clear() { - super.clear(); - if (iter_individual != null) { - iter_individual.dispose(); - iter_individual = null; - } - } - -} -- cgit v1.2.3