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/MyPrefixes.java | 162 --------------------------------- 1 file changed, 162 deletions(-) delete mode 100644 src/uk/ac/ox/cs/pagoda/MyPrefixes.java (limited to 'src/uk/ac/ox/cs/pagoda/MyPrefixes.java') diff --git a/src/uk/ac/ox/cs/pagoda/MyPrefixes.java b/src/uk/ac/ox/cs/pagoda/MyPrefixes.java deleted file mode 100644 index 98a4e97..0000000 --- a/src/uk/ac/ox/cs/pagoda/MyPrefixes.java +++ /dev/null @@ -1,162 +0,0 @@ -package uk.ac.ox.cs.pagoda; - -import java.util.Map; - -import uk.ac.ox.cs.pagoda.owl.OWLHelper; -import uk.ac.ox.cs.pagoda.util.Namespace; -import uk.ac.ox.cs.pagoda.util.Utility; - -public class MyPrefixes { - - public final static MyPrefixes PAGOdAPrefixes = new MyPrefixes(); - - private org.semanticweb.HermiT.Prefixes hermit = new org.semanticweb.HermiT.Prefixes(); - private uk.ac.ox.cs.JRDFox.Prefixes rdfox = new uk.ac.ox.cs.JRDFox.Prefixes(); - - public MyPrefixes() { - hermit.declareSemanticWebPrefixes(); - hermit.declarePrefix("anony:", Namespace.PAGODA_ANONY); - hermit.declarePrefix("aux:", Namespace.PAGODA_AUX); - - rdfox.declareSemanticWebPrefixes(); - rdfox.declarePrefix("anony:", Namespace.PAGODA_ANONY); - rdfox.declarePrefix("aux:", Namespace.PAGODA_AUX); - } - - public org.semanticweb.HermiT.Prefixes getHermiTPrefixes() { - return hermit; - } - - public uk.ac.ox.cs.JRDFox.Prefixes getRDFoxPrefixes() { - return rdfox; - } - - public void declarePrefix(String prefixName, String prefixIRI) { - Utility.logDebug("Prefix declared: " + prefixName + "=" + prefixIRI); - hermit.declarePrefix(prefixName, prefixIRI); - rdfox.declarePrefix(prefixName, prefixIRI); - } - - public static boolean isColon4Prefixes(String text, int index) { - if (index >= text.length() - 1) return false; - if (index > 0 && text.charAt(index - 1) == '_') return false; // _: blank node - char nextCharacter = text.charAt(index + 1); - if (nextCharacter == '-') return false; // :- - if (nextCharacter == '/') return false; // :/ - return true; - } - - public String expandText(String text) { - for (int index = 0; ;) { - index = text.indexOf(':', index); - if (!isColon4Prefixes(text, index)) { - ++index; - continue; - } - if (index == -1) return text; - int start = index - 1, ends = index + 1; - char ch; - while (start >= 0 && (ch = text.charAt(start)) != ',' && ch != '(' && ch != ' ') --start; - while (ends < text.length() && (ch = text.charAt(ends)) != '(' && ch != ',' && ch != ')') ++ends; - - String sub = text.substring(start + 1, ends); - String newSub = OWLHelper.addAngles(hermit.expandAbbreviatedIRI(sub)); - - text = text.replaceAll(sub, newSub); - index = ends + newSub.length() - sub.length(); - } - } - - public void declareNewPrefix(String iri) { - if (!iri.startsWith("<")) return ; - int index = splitPoint(iri); - if (index >= 0) { - String prefixIRI = iri.substring(1, index + 1), prefixName; - if ((prefixName = getPrefixName(prefixIRI)) == null) { - prefixName = getNewPrefixName(); - declarePrefix(prefixName, prefixIRI); - } - } - } - - /** - * detect the split point of prefix and name for an - * - * @param uri - * @param index - * @return - */ - private int splitPoint(String uri) { - int index = uri.lastIndexOf("#"); - if (index != -1) return index; - index = uri.lastIndexOf("/"); - if (index > 0 && uri.charAt(index - 1) != '/') - return index; - return -1; - } - - - private int prefixNumber = 0; - - public String getNewPrefixName() { - return "prefix" + (prefixNumber ++) + ":"; - } - - public String abbreviateIRI(String iri) { - declareNewPrefix(iri); - - if (iri.startsWith("<")) - return hermit.abbreviateIRI(OWLHelper.removeAngles(iri)); - else if (iri.contains("^^")) { - int index = iri.indexOf("^^"); - if (iri.charAt(index + 2) == '<') - return iri.substring(0, index + 2) + abbreviateIRI(iri.substring(index + 2, iri.lastIndexOf('>') + 1)); - } - return iri; - } - - /** - * expanded iri without <> - * - * @param iri - * @return - */ - public String expandIRI(String iri) { - if (hermit.canBeExpanded(iri)) - return hermit.expandAbbreviatedIRI(iri); - else if (iri.startsWith("<")) - return iri.substring(1, iri.length() - 1); - else - return iri; - } - - /** - * expanded iri with <> - * - * @param iri - * @return - */ - public String getQuotedIRI(String iri) { - if (iri.startsWith("<")) return iri; - if (hermit.canBeExpanded(iri)) - return OWLHelper.addAngles(hermit.expandAbbreviatedIRI(iri)); - return iri; - } - - public String getPrefixName(String prefixIRI) { - return hermit.getPrefixName(prefixIRI); - } - - public Map getPrefixIRIsByPrefixName() { - return hermit.getPrefixIRIsByPrefixName(); - } - - public String prefixesText() { - StringBuffer buf = new StringBuffer(); - for (Map.Entry entry: getPrefixIRIsByPrefixName().entrySet()) - buf.append("PREFIX ").append(entry.getKey()).append(" <").append(entry.getValue()).append(">").append(Utility.LINE_SEPARATOR); - return buf.toString(); - } - - -} -- cgit v1.2.3