From: <Jen...@us...> - 2008-10-07 10:29:59
|
Revision: 1347 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=1347&view=rev Author: JensLehmann Date: 2008-10-07 10:27:14 +0000 (Tue, 07 Oct 2008) Log Message: ----------- - example unit tester now tries to continue when exceptions occurr - conf file parser now throws parse exceptions instead of printing them (so they can be caugth by the unit test) Modified Paths: -------------- trunk/examples/krk/complete_no_draw.conf trunk/src/dl-learner/org/dllearner/cli/Start.java trunk/src/dl-learner/org/dllearner/gui/Config.java trunk/src/dl-learner/org/dllearner/parser/ConfParser.java trunk/src/dl-learner/org/dllearner/parser/ConfParserConstants.java trunk/src/dl-learner/org/dllearner/parser/ConfParserTokenManager.java trunk/src/dl-learner/org/dllearner/parser/ParseException.java trunk/src/dl-learner/org/dllearner/parser/SimpleCharStream.java trunk/src/dl-learner/org/dllearner/parser/Token.java trunk/src/dl-learner/org/dllearner/parser/TokenMgrError.java trunk/src/dl-learner/org/dllearner/parser/conf.jj trunk/src/dl-learner/org/dllearner/scripts/CrossValidation.java trunk/src/dl-learner/org/dllearner/scripts/TestValidation.java trunk/src/dl-learner/org/dllearner/test/junit/ExampleTests.java Modified: trunk/examples/krk/complete_no_draw.conf =================================================================== --- trunk/examples/krk/complete_no_draw.conf 2008-10-07 10:05:51 UTC (rev 1346) +++ trunk/examples/krk/complete_no_draw.conf 2008-10-07 10:27:14 UTC (rev 1347) @@ -1,4 +1,8 @@ +/** + * You need to generate the OWL background knowledge file, + * otherwise this example won't work! + */ import("complete_nodraw.owl"); refexamples.ignoredConcepts={ Modified: trunk/src/dl-learner/org/dllearner/cli/Start.java =================================================================== --- trunk/src/dl-learner/org/dllearner/cli/Start.java 2008-10-07 10:05:51 UTC (rev 1346) +++ trunk/src/dl-learner/org/dllearner/cli/Start.java 2008-10-07 10:27:14 UTC (rev 1347) @@ -21,6 +21,7 @@ import java.io.BufferedReader; import java.io.File; +import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStreamReader; import java.net.MalformedURLException; @@ -117,8 +118,10 @@ * Entry point for CLI interface. * * @param args + * @throws ParseException + * @throws FileNotFoundException */ - public static void main(String[] args) throws ComponentInitException { + public static void main(String[] args) throws ComponentInitException, FileNotFoundException, ParseException { File file = new File(args[args.length - 1]); @@ -173,8 +176,10 @@ * @param file * Conf file to read. * @throws ComponentInitException + * @throws ParseException + * @throws FileNotFoundException */ - public Start(File file) throws ComponentInitException { + public Start(File file) throws ComponentInitException, FileNotFoundException, ParseException { String baseDir = file.getParentFile().getPath(); // create component manager instance Modified: trunk/src/dl-learner/org/dllearner/gui/Config.java =================================================================== --- trunk/src/dl-learner/org/dllearner/gui/Config.java 2008-10-07 10:05:51 UTC (rev 1346) +++ trunk/src/dl-learner/org/dllearner/gui/Config.java 2008-10-07 10:27:14 UTC (rev 1347) @@ -20,6 +20,7 @@ package org.dllearner.gui; import java.io.File; +import java.io.FileNotFoundException; import java.util.HashSet; import java.util.LinkedList; import java.util.List; @@ -42,6 +43,7 @@ import org.dllearner.kb.OWLFile; import org.dllearner.kb.sparql.SparqlKnowledgeSource; import org.dllearner.learningproblems.PosNegLP; +import org.dllearner.parser.ParseException; /** * Config save all together used variables: ComponentManager, KnowledgeSource, @@ -130,7 +132,16 @@ // use CLI to load file try { // set all loaded components as active components - Start start = new Start(file); + Start start = null; + try { + start = new Start(file); + } catch (FileNotFoundException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (ParseException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } Set<KnowledgeSource> sources = start.getSources(); if (sources.size() != 1) { gui.getStatusPanel().setExceptionMessage( Modified: trunk/src/dl-learner/org/dllearner/parser/ConfParser.java =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/ConfParser.java 2008-10-07 10:05:51 UTC (rev 1346) +++ trunk/src/dl-learner/org/dllearner/parser/ConfParser.java 2008-10-07 10:27:14 UTC (rev 1347) @@ -5,7 +5,6 @@ import java.util.List; import java.util.LinkedList; import java.util.Map; -import java.util.TreeMap; import java.util.Set; import java.util.HashSet; import java.util.SortedSet; @@ -15,14 +14,14 @@ import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; -import java.io.StringReader; import org.dllearner.Info; import org.dllearner.cli.*; import org.dllearner.utilities.datastructures.*; -public @SuppressWarnings("all") class ConfParser implements ConfParserConstants { +@SuppressWarnings("all") +public class ConfParser implements ConfParserConstants { // examples private SortedSet<String> positiveExamples = new TreeSet<String>(); @@ -122,16 +121,16 @@ } */ - public static ConfParser parseFile(File filename) { + public static ConfParser parseFile(File filename) throws FileNotFoundException, ParseException { ConfParser learner = null; - try { +// try { learner = new ConfParser(new FileInputStream(filename)); learner.Start(); - } catch(FileNotFoundException e) { - e.printStackTrace(); - } catch(ParseException e) { - e.printStackTrace(); - } +// } catch(FileNotFoundException e) { +// e.printStackTrace(); +// } catch(ParseException e) { +// e.printStackTrace(); +// } return learner; } @@ -150,7 +149,7 @@ // System.out.println(args.length); File f = new File(args[args.length-1]); - String baseDir = ""; +// String baseDir = ""; System.out.print("Parsing " + f.getName() + " ... "); long parseStartTime = System.currentTimeMillis(); @@ -159,7 +158,7 @@ ConfParser learner = null; try { learner = new ConfParser(new FileInputStream(args[args.length-1])); - baseDir = f.getParentFile().getPath(); +// baseDir = f.getParentFile().getPath(); } catch(IOException e) { System.err.println(e); System.exit(0); @@ -178,13 +177,13 @@ long parseDuration = System.currentTimeMillis() - parseStartTime; System.out.println("OK (" + parseDuration + " ms)"); - boolean queryMode = false; +// boolean queryMode = false; // solution test mode wird nicht unbedingt gebraucht, da man die covers // gleich standardmäßig beim query mit anzeigen kann // boolean solutionTestMode = false; - if(args.length>1 && args[0].equals("-q")) - queryMode = true; +// if(args.length>1 && args[0].equals("-q")) +// queryMode = true; //if(args.length>1 && args[0].equals("-qt")) { // queryMode = true; @@ -526,85 +525,96 @@ throw new Error("Missing return statement in function"); } - final private boolean jj_2_1(int xla) { + private boolean jj_2_1(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_1(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(0, xla); } } - final private boolean jj_2_2(int xla) { + private boolean jj_2_2(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_2(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(1, xla); } } - final private boolean jj_2_3(int xla) { + private boolean jj_2_3(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_3(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(2, xla); } } - final private boolean jj_2_4(int xla) { + private boolean jj_2_4(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_4(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(3, xla); } } - final private boolean jj_2_5(int xla) { + private boolean jj_2_5(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_5(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(4, xla); } } - final private boolean jj_2_6(int xla) { + private boolean jj_2_6(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_6(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(5, xla); } } - final private boolean jj_2_7(int xla) { + private boolean jj_2_7(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_7(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(6, xla); } } - final private boolean jj_2_8(int xla) { + private boolean jj_2_8(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_8(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(7, xla); } } - final private boolean jj_3R_7() { + private boolean jj_3R_11() { + if (jj_scan_token(STRING)) return true; + return false; + } + + private boolean jj_3_8() { + if (jj_scan_token(27)) return true; + if (jj_scan_token(32)) return true; + return false; + } + + private boolean jj_3R_7() { if (jj_3R_5()) return true; return false; } - final private boolean jj_3_7() { + private boolean jj_3_7() { if (jj_scan_token(26)) return true; if (jj_scan_token(31)) return true; return false; } - final private boolean jj_3R_12() { + private boolean jj_3R_12() { if (jj_scan_token(29)) return true; if (jj_3R_11()) return true; return false; } - final private boolean jj_3R_17() { + private boolean jj_3R_17() { if (jj_3R_11()) return true; return false; } - final private boolean jj_3_6() { + private boolean jj_3_6() { if (jj_scan_token(28)) return true; Token xsp; xsp = jj_scanpos; @@ -623,7 +633,7 @@ return false; } - final private boolean jj_3_5() { + private boolean jj_3_5() { Token xsp; xsp = jj_scanpos; if (jj_3R_13()) { @@ -634,43 +644,43 @@ return false; } - final private boolean jj_3R_19() { + private boolean jj_3R_19() { if (jj_scan_token(NUMBER)) return true; return false; } - final private boolean jj_3R_10() { + private boolean jj_3R_10() { if (jj_3R_11()) return true; return false; } - final private boolean jj_3R_6() { + private boolean jj_3R_6() { if (jj_scan_token(COMMAND_END)) return true; if (jj_3R_5()) return true; return false; } - final private boolean jj_3R_16() { + private boolean jj_3R_16() { if (jj_3R_5()) return true; return false; } - final private boolean jj_3_4() { + private boolean jj_3_4() { if (jj_scan_token(NEG_EX)) return true; return false; } - final private boolean jj_3_3() { + private boolean jj_3_3() { if (jj_scan_token(POS_EX)) return true; return false; } - final private boolean jj_3R_20() { + private boolean jj_3R_20() { if (jj_scan_token(DOUBLE)) return true; return false; } - final private boolean jj_3_2() { + private boolean jj_3_2() { if (jj_3R_5()) return true; if (jj_scan_token(28)) return true; if (jj_3R_11()) return true; @@ -684,12 +694,12 @@ return false; } - final private boolean jj_3R_14() { + private boolean jj_3R_14() { if (jj_3R_5()) return true; return false; } - final private boolean jj_3_1() { + private boolean jj_3_1() { if (jj_3R_5()) return true; Token xsp; xsp = jj_scanpos; @@ -715,76 +725,69 @@ return false; } - final private boolean jj_3R_9() { + private boolean jj_3R_9() { if (jj_3R_20()) return true; return false; } - final private boolean jj_3R_5() { + private boolean jj_3R_5() { if (jj_scan_token(ID)) return true; return false; } - final private boolean jj_3R_15() { + private boolean jj_3R_15() { if (jj_3R_11()) return true; return false; } - final private boolean jj_3R_18() { + private boolean jj_3R_18() { if (jj_3R_5()) return true; return false; } - final private boolean jj_3R_13() { + private boolean jj_3R_13() { if (jj_3R_11()) return true; return false; } - final private boolean jj_3R_8() { + private boolean jj_3R_8() { if (jj_3R_19()) return true; return false; } - final private boolean jj_3R_11() { - if (jj_scan_token(STRING)) return true; - return false; - } - - final private boolean jj_3_8() { - if (jj_scan_token(27)) return true; - if (jj_scan_token(32)) return true; - return false; - } - + /** Generated Token Manager. */ public ConfParserTokenManager token_source; SimpleCharStream jj_input_stream; - public Token token, jj_nt; + /** Current token. */ + public Token token; + /** Next token. */ + public Token jj_nt; private int jj_ntk; private Token jj_scanpos, jj_lastpos; private int jj_la; - public boolean lookingAhead = false; - private boolean jj_semLA; private int jj_gen; final private int[] jj_la1 = new int[13]; static private int[] jj_la1_0; static private int[] jj_la1_1; static { - jj_la1_0(); - jj_la1_1(); + jj_la1_init_0(); + jj_la1_init_1(); } - private static void jj_la1_0() { + private static void jj_la1_init_0() { jj_la1_0 = new int[] {0x1c00,0x100,0x1001000,0x1001000,0x1001000,0x1001000,0x1001000,0x1001000,0x1007000,0x4000000,0x8000000,0x20000000,0x1001000,}; } - private static void jj_la1_1() { + private static void jj_la1_init_1() { jj_la1_1 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,}; } final private JJCalls[] jj_2_rtns = new JJCalls[8]; private boolean jj_rescan = false; private int jj_gc = 0; + /** Constructor with InputStream. */ public ConfParser(java.io.InputStream stream) { this(stream, null); } + /** Constructor with InputStream and supplied encoding */ public ConfParser(java.io.InputStream stream, String encoding) { try { jj_input_stream = new SimpleCharStream(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); } token_source = new ConfParserTokenManager(jj_input_stream); @@ -795,9 +798,11 @@ for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } + /** Reinitialise. */ public void ReInit(java.io.InputStream stream) { ReInit(stream, null); } + /** Reinitialise. */ public void ReInit(java.io.InputStream stream, String encoding) { try { jj_input_stream.ReInit(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); } token_source.ReInit(jj_input_stream); @@ -808,6 +813,7 @@ for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } + /** Constructor. */ public ConfParser(java.io.Reader stream) { jj_input_stream = new SimpleCharStream(stream, 1, 1); token_source = new ConfParserTokenManager(jj_input_stream); @@ -818,6 +824,7 @@ for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } + /** Reinitialise. */ public void ReInit(java.io.Reader stream) { jj_input_stream.ReInit(stream, 1, 1); token_source.ReInit(jj_input_stream); @@ -828,6 +835,7 @@ for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } + /** Constructor with generated Token Manager. */ public ConfParser(ConfParserTokenManager tm) { token_source = tm; token = new Token(); @@ -837,6 +845,7 @@ for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } + /** Reinitialise. */ public void ReInit(ConfParserTokenManager tm) { token_source = tm; token = new Token(); @@ -846,7 +855,7 @@ for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } - final private Token jj_consume_token(int kind) throws ParseException { + private Token jj_consume_token(int kind) throws ParseException { Token oldToken; if ((oldToken = token).next != null) token = token.next; else token = token.next = token_source.getNextToken(); @@ -872,7 +881,7 @@ static private final class LookaheadSuccess extends java.lang.Error { } final private LookaheadSuccess jj_ls = new LookaheadSuccess(); - final private boolean jj_scan_token(int kind) { + private boolean jj_scan_token(int kind) { if (jj_scanpos == jj_lastpos) { jj_la--; if (jj_scanpos.next == null) { @@ -893,6 +902,8 @@ return false; } + +/** Get the next Token. */ final public Token getNextToken() { if (token.next != null) token = token.next; else token = token.next = token_source.getNextToken(); @@ -901,8 +912,9 @@ return token; } +/** Get the specific Token. */ final public Token getToken(int index) { - Token t = lookingAhead ? jj_scanpos : token; + Token t = token; for (int i = 0; i < index; i++) { if (t.next != null) t = t.next; else t = t.next = token_source.getNextToken(); @@ -910,14 +922,14 @@ return t; } - final private int jj_ntk() { + private int jj_ntk() { if ((jj_nt=token.next) == null) return (jj_ntk = (token.next=token_source.getNextToken()).kind); else return (jj_ntk = jj_nt.kind); } - private java.util.Vector<int[]> jj_expentries = new java.util.Vector<int[]>(); + private java.util.List<int[]> jj_expentries = new java.util.ArrayList<int[]>(); private int[] jj_expentry; private int jj_kind = -1; private int[] jj_lasttokens = new int[100]; @@ -932,27 +944,25 @@ for (int i = 0; i < jj_endpos; i++) { jj_expentry[i] = jj_lasttokens[i]; } - boolean exists = false; - for (java.util.Enumeration e = jj_expentries.elements(); e.hasMoreElements();) { - int[] oldentry = (int[])(e.nextElement()); + jj_entries_loop: for (java.util.Iterator it = jj_expentries.iterator(); it.hasNext();) { + int[] oldentry = (int[])(it.next()); if (oldentry.length == jj_expentry.length) { - exists = true; for (int i = 0; i < jj_expentry.length; i++) { if (oldentry[i] != jj_expentry[i]) { - exists = false; - break; + continue jj_entries_loop; } } - if (exists) break; + jj_expentries.add(jj_expentry); + break jj_entries_loop; } } - if (!exists) jj_expentries.addElement(jj_expentry); if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind; } } + /** Generate ParseException. */ public ParseException generateParseException() { - jj_expentries.removeAllElements(); + jj_expentries.clear(); boolean[] la1tokens = new boolean[33]; if (jj_kind >= 0) { la1tokens[jj_kind] = true; @@ -974,7 +984,7 @@ if (la1tokens[i]) { jj_expentry = new int[1]; jj_expentry[0] = i; - jj_expentries.addElement(jj_expentry); + jj_expentries.add(jj_expentry); } } jj_endpos = 0; @@ -982,18 +992,20 @@ jj_add_error_token(0, 0); int[][] exptokseq = new int[jj_expentries.size()][]; for (int i = 0; i < jj_expentries.size(); i++) { - exptokseq[i] = jj_expentries.elementAt(i); + exptokseq[i] = jj_expentries.get(i); } return new ParseException(token, exptokseq, tokenImage); } + /** Enable tracing. */ final public void enable_tracing() { } + /** Disable tracing. */ final public void disable_tracing() { } - final private void jj_rescan_token() { + private void jj_rescan_token() { jj_rescan = true; for (int i = 0; i < 8; i++) { try { @@ -1019,7 +1031,7 @@ jj_rescan = false; } - final private void jj_save(int index, int xla) { + private void jj_save(int index, int xla) { JJCalls p = jj_2_rtns[index]; while (p.gen > jj_gen) { if (p.next == null) { p = p.next = new JJCalls(); break; } Modified: trunk/src/dl-learner/org/dllearner/parser/ConfParserConstants.java =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/ConfParserConstants.java 2008-10-07 10:05:51 UTC (rev 1346) +++ trunk/src/dl-learner/org/dllearner/parser/ConfParserConstants.java 2008-10-07 10:27:14 UTC (rev 1347) @@ -1,32 +1,60 @@ /* Generated By:JavaCC: Do not edit this line. ConfParserConstants.java */ package org.dllearner.parser; -public @SuppressWarnings("all") interface ConfParserConstants { +/** + * Token literal values and constants. + * Generated by org.javacc.parser.OtherFilesGen#start() + */ +public interface ConfParserConstants { + + /** End of File. */ int EOF = 0; + /** RegularExpression Id. */ int SINGLE_LINE_COMMENT = 5; + /** RegularExpression Id. */ int FORMAL_COMMENT = 6; + /** RegularExpression Id. */ int MULTI_LINE_COMMENT = 7; + /** RegularExpression Id. */ int COMMAND_END = 8; + /** RegularExpression Id. */ int CONF_END = 9; + /** RegularExpression Id. */ int POS_EX = 10; + /** RegularExpression Id. */ int NEG_EX = 11; + /** RegularExpression Id. */ int ID = 12; + /** RegularExpression Id. */ int NUMBER = 13; + /** RegularExpression Id. */ int DOUBLE = 14; + /** RegularExpression Id. */ int TOP = 15; + /** RegularExpression Id. */ int BOTTOM = 16; + /** RegularExpression Id. */ int AND = 17; + /** RegularExpression Id. */ int OR = 18; + /** RegularExpression Id. */ int EXISTS = 19; + /** RegularExpression Id. */ int ALL = 20; + /** RegularExpression Id. */ int NOT = 21; + /** RegularExpression Id. */ int GE = 22; + /** RegularExpression Id. */ int LE = 23; + /** RegularExpression Id. */ int STRING = 24; + /** Lexical state. */ int DEFAULT = 0; + /** Literal token values. */ String[] tokenImage = { "<EOF>", "\" \"", Modified: trunk/src/dl-learner/org/dllearner/parser/ConfParserTokenManager.java =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/ConfParserTokenManager.java 2008-10-07 10:05:51 UTC (rev 1346) +++ trunk/src/dl-learner/org/dllearner/parser/ConfParserTokenManager.java 2008-10-07 10:27:14 UTC (rev 1347) @@ -4,7 +4,6 @@ import java.util.List; import java.util.LinkedList; import java.util.Map; -import java.util.TreeMap; import java.util.Set; import java.util.HashSet; import java.util.SortedSet; @@ -13,14 +12,18 @@ import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; -import java.io.StringReader; import org.dllearner.Info; import org.dllearner.cli.*; import org.dllearner.utilities.datastructures.*; -public @SuppressWarnings("all") class ConfParserTokenManager implements ConfParserConstants +/** Token Manager. */ +@SuppressWarnings("all") +public class ConfParserTokenManager implements ConfParserConstants { + + /** Debug output. */ public java.io.PrintStream debugStream = System.out; + /** Set debug output. */ public void setDebugStream(java.io.PrintStream ds) { debugStream = ds; } private final int jjStopStringLiteralDfa_0(int pos, long active0) { @@ -38,22 +41,14 @@ { return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0), pos + 1); } -private final int jjStopAtPos(int pos, int kind) +private int jjStopAtPos(int pos, int kind) { jjmatchedKind = kind; jjmatchedPos = pos; return pos + 1; } -private final int jjStartNfaWithStates_0(int pos, int kind, int state) +private int jjMoveStringLiteralDfa0_0() { - jjmatchedKind = kind; - jjmatchedPos = pos; - try { curChar = input_stream.readChar(); } - catch(java.io.IOException e) { return pos + 1; } - return jjMoveNfa_0(state, pos + 1); -} -private final int jjMoveStringLiteralDfa0_0() -{ switch(curChar) { case 40: @@ -96,7 +91,7 @@ return jjMoveNfa_0(0, 0); } } -private final int jjMoveStringLiteralDfa1_0(long active0) +private int jjMoveStringLiteralDfa1_0(long active0) { try { curChar = input_stream.readChar(); } catch(java.io.IOException e) { @@ -124,7 +119,7 @@ } return jjStartNfa_0(0, active0); } -private final int jjMoveStringLiteralDfa2_0(long old0, long active0) +private int jjMoveStringLiteralDfa2_0(long old0, long active0) { if (((active0 &= old0)) == 0L) return jjStartNfa_0(0, old0); @@ -150,7 +145,7 @@ } return jjStartNfa_0(1, active0); } -private final int jjMoveStringLiteralDfa3_0(long old0, long active0) +private int jjMoveStringLiteralDfa3_0(long old0, long active0) { if (((active0 &= old0)) == 0L) return jjStartNfa_0(1, old0); @@ -168,7 +163,7 @@ } return jjStartNfa_0(2, active0); } -private final int jjMoveStringLiteralDfa4_0(long old0, long active0) +private int jjMoveStringLiteralDfa4_0(long old0, long active0) { if (((active0 &= old0)) == 0L) return jjStartNfa_0(2, old0); @@ -186,7 +181,7 @@ } return jjStartNfa_0(3, active0); } -private final int jjMoveStringLiteralDfa5_0(long old0, long active0) +private int jjMoveStringLiteralDfa5_0(long old0, long active0) { if (((active0 &= old0)) == 0L) return jjStartNfa_0(3, old0); @@ -206,47 +201,16 @@ } return jjStartNfa_0(4, active0); } -private final void jjCheckNAdd(int state) -{ - if (jjrounds[state] != jjround) - { - jjstateSet[jjnewStateCnt++] = state; - jjrounds[state] = jjround; - } -} -private final void jjAddStates(int start, int end) -{ - do { - jjstateSet[jjnewStateCnt++] = jjnextStates[start]; - } while (start++ != end); -} -private final void jjCheckNAddTwoStates(int state1, int state2) -{ - jjCheckNAdd(state1); - jjCheckNAdd(state2); -} -private final void jjCheckNAddStates(int start, int end) -{ - do { - jjCheckNAdd(jjnextStates[start]); - } while (start++ != end); -} -private final void jjCheckNAddStates(int start) -{ - jjCheckNAdd(jjnextStates[start]); - jjCheckNAdd(jjnextStates[start + 1]); -} static final long[] jjbitVec0 = { 0x0L, 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL }; -private final int jjMoveNfa_0(int startState, int curPos) +private int jjMoveNfa_0(int startState, int curPos) { - int[] nextStates; int startsAt = 0; jjnewStateCnt = 53; int i = 1; jjstateSet[0] = startState; - int j, kind = 0x7fffffff; + int kind = 0x7fffffff; for (;;) { if (++jjround == 0x7fffffff) @@ -254,7 +218,7 @@ if (curChar < 64) { long l = 1L << curChar; - MatchLoop: do + do { switch(jjstateSet[--i]) { @@ -417,7 +381,7 @@ else if (curChar < 128) { long l = 1L << (curChar & 077); - MatchLoop: do + do { switch(jjstateSet[--i]) { @@ -564,7 +528,7 @@ { int i2 = (curChar & 0xff) >> 6; long l2 = 1L << (curChar & 077); - MatchLoop: do + do { switch(jjstateSet[--i]) { @@ -615,11 +579,15 @@ 48, 49, 50, 29, 40, 41, 30, 31, 33, 36, 37, 39, 43, 44, 46, 25, 27, 21, 22, }; + +/** Token literal values. */ public static final String[] jjstrLiteralImages = { "", null, null, null, null, null, null, null, "\56", "\73", "\53", "\55", null, null, null, "\124\117\120", "\102\117\124\124\117\115", "\101\116\104", "\117\122", null, null, null, "\76\75", "\74\75", null, "\75", "\173", "\133", "\50", "\54", "\51", "\175", "\135", }; + +/** Lexer state names. */ public static final String[] lexStateNames = { "DEFAULT", }; @@ -633,15 +601,20 @@ private final int[] jjrounds = new int[53]; private final int[] jjstateSet = new int[106]; protected char curChar; +/** Constructor. */ public ConfParserTokenManager(SimpleCharStream stream){ if (SimpleCharStream.staticFlag) throw new Error("ERROR: Cannot use a static CharStream class with a non-static lexical analyzer."); input_stream = stream; } + +/** Constructor. */ public ConfParserTokenManager(SimpleCharStream stream, int lexState){ this(stream); SwitchTo(lexState); } + +/** Reinitialise parser. */ public void ReInit(SimpleCharStream stream) { jjmatchedPos = jjnewStateCnt = 0; @@ -649,18 +622,22 @@ input_stream = stream; ReInitRounds(); } -private final void ReInitRounds() +private void ReInitRounds() { int i; jjround = 0x80000001; for (i = 53; i-- > 0;) jjrounds[i] = 0x80000000; } + +/** Reinitialise parser. */ public void ReInit(SimpleCharStream stream, int lexState) { ReInit(stream); SwitchTo(lexState); } + +/** Switch to specified lex state. */ public void SwitchTo(int lexState) { if (lexState >= 1 || lexState < 0) @@ -671,14 +648,25 @@ protected Token jjFillToken() { - Token t = Token.newToken(jjmatchedKind); - t.kind = jjmatchedKind; + final Token t; + final String curTokenImage; + final int beginLine; + final int endLine; + final int beginColumn; + final int endColumn; String im = jjstrLiteralImages[jjmatchedKind]; - t.image = (im == null) ? input_stream.GetImage() : im; - t.beginLine = input_stream.getBeginLine(); - t.beginColumn = input_stream.getBeginColumn(); - t.endLine = input_stream.getEndLine(); - t.endColumn = input_stream.getEndColumn(); + curTokenImage = (im == null) ? input_stream.GetImage() : im; + beginLine = input_stream.getBeginLine(); + beginColumn = input_stream.getBeginColumn(); + endLine = input_stream.getEndLine(); + endColumn = input_stream.getEndColumn(); + t = Token.newToken(jjmatchedKind, curTokenImage); + + t.beginLine = beginLine; + t.endLine = endLine; + t.beginColumn = beginColumn; + t.endColumn = endColumn; + return t; } @@ -689,10 +677,9 @@ int jjmatchedPos; int jjmatchedKind; +/** Get the next Token. */ public Token getNextToken() { - int kind; - Token specialToken = null; Token matchedToken; int curPos = 0; @@ -755,4 +742,31 @@ } } +private void jjCheckNAdd(int state) +{ + if (jjrounds[state] != jjround) + { + jjstateSet[jjnewStateCnt++] = state; + jjrounds[state] = jjround; + } } +private void jjAddStates(int start, int end) +{ + do { + jjstateSet[jjnewStateCnt++] = jjnextStates[start]; + } while (start++ != end); +} +private void jjCheckNAddTwoStates(int state1, int state2) +{ + jjCheckNAdd(state1); + jjCheckNAdd(state2); +} + +private void jjCheckNAddStates(int start, int end) +{ + do { + jjCheckNAdd(jjnextStates[start]); + } while (start++ != end); +} + +} Modified: trunk/src/dl-learner/org/dllearner/parser/ParseException.java =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/ParseException.java 2008-10-07 10:05:51 UTC (rev 1346) +++ trunk/src/dl-learner/org/dllearner/parser/ParseException.java 2008-10-07 10:27:14 UTC (rev 1347) @@ -1,4 +1,5 @@ -/* Generated By:JavaCC: Do not edit this line. ParseException.java Version 3.0 */ +/* Generated By:JavaCC: Do not edit this line. ParseException.java Version 4.1 */ +/* JavaCCOptions:KEEP_LINE_COL=null */ package org.dllearner.parser; /** @@ -10,7 +11,8 @@ * You can modify this class to customize your error reporting * mechanisms so long as you retain the public fields. */ -public @SuppressWarnings("all") class ParseException extends Exception { +@SuppressWarnings("all") +public class ParseException extends Exception { /** * This constructor is used by the method "generateParseException" @@ -51,6 +53,7 @@ specialConstructor = false; } + /** Constructor with message. */ public ParseException(String message) { super(message); specialConstructor = false; @@ -120,7 +123,10 @@ retval += tokenImage[0]; break; } + retval += " " + tokenImage[tok.kind]; + retval += " \""; retval += add_escapes(tok.image); + retval += " \""; tok = tok.next; } retval += "\" at line " + currentToken.next.beginLine + ", column " + currentToken.next.beginColumn; @@ -190,3 +196,4 @@ } } +/* JavaCC - OriginalChecksum=635b36f1d3290cdbc6b59e8752e3623d (do not edit this line) */ Modified: trunk/src/dl-learner/org/dllearner/parser/SimpleCharStream.java =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/SimpleCharStream.java 2008-10-07 10:05:51 UTC (rev 1346) +++ trunk/src/dl-learner/org/dllearner/parser/SimpleCharStream.java 2008-10-07 10:27:14 UTC (rev 1347) @@ -1,4 +1,5 @@ -/* Generated By:JavaCC: Do not edit this line. SimpleCharStream.java Version 4.0 */ +/* Generated By:JavaCC: Do not edit this line. SimpleCharStream.java Version 4.1 */ +/* JavaCCOptions:STATIC=false */ package org.dllearner.parser; /** @@ -6,12 +7,14 @@ * contain only ASCII characters (without unicode processing). */ -public @SuppressWarnings("all") class SimpleCharStream +public class SimpleCharStream { +/** Whether parser is static. */ public static final boolean staticFlag = false; int bufsize; int available; int tokenBegin; +/** Position in buffer. */ public int bufpos = -1; protected int bufline[]; protected int bufcolumn[]; @@ -128,6 +131,7 @@ } } +/** Start. */ public char BeginToken() throws java.io.IOException { tokenBegin = -1; @@ -177,6 +181,7 @@ bufcolumn[bufpos] = column; } +/** Read a character. */ public char readChar() throws java.io.IOException { if (inBuf > 0) @@ -216,22 +221,27 @@ return bufline[bufpos]; } + /** Get token end column number. */ public int getEndColumn() { return bufcolumn[bufpos]; } + /** Get token end line number. */ public int getEndLine() { return bufline[bufpos]; } + /** Get token beginning column number. */ public int getBeginColumn() { return bufcolumn[tokenBegin]; } + /** Get token beginning line number. */ public int getBeginLine() { return bufline[tokenBegin]; } +/** Backup a number of characters. */ public void backup(int amount) { inBuf += amount; @@ -239,6 +249,7 @@ bufpos += bufsize; } + /** Constructor. */ public SimpleCharStream(java.io.Reader dstream, int startline, int startcolumn, int buffersize) { @@ -252,16 +263,20 @@ bufcolumn = new int[buffersize]; } + /** Constructor. */ public SimpleCharStream(java.io.Reader dstream, int startline, int startcolumn) { this(dstream, startline, startcolumn, 4096); } + /** Constructor. */ public SimpleCharStream(java.io.Reader dstream) { this(dstream, 1, 1, 4096); } + + /** Reinitialise. */ public void ReInit(java.io.Reader dstream, int startline, int startcolumn, int buffersize) { @@ -281,81 +296,96 @@ bufpos = -1; } + /** Reinitialise. */ public void ReInit(java.io.Reader dstream, int startline, int startcolumn) { ReInit(dstream, startline, startcolumn, 4096); } + /** Reinitialise. */ public void ReInit(java.io.Reader dstream) { ReInit(dstream, 1, 1, 4096); } + /** Constructor. */ public SimpleCharStream(java.io.InputStream dstream, String encoding, int startline, int startcolumn, int buffersize) throws java.io.UnsupportedEncodingException { this(encoding == null ? new java.io.InputStreamReader(dstream) : new java.io.InputStreamReader(dstream, encoding), startline, startcolumn, buffersize); } + /** Constructor. */ public SimpleCharStream(java.io.InputStream dstream, int startline, int startcolumn, int buffersize) { this(new java.io.InputStreamReader(dstream), startline, startcolumn, buffersize); } + /** Constructor. */ public SimpleCharStream(java.io.InputStream dstream, String encoding, int startline, int startcolumn) throws java.io.UnsupportedEncodingException { this(dstream, encoding, startline, startcolumn, 4096); } + /** Constructor. */ public SimpleCharStream(java.io.InputStream dstream, int startline, int startcolumn) { this(dstream, startline, startcolumn, 4096); } + /** Constructor. */ public SimpleCharStream(java.io.InputStream dstream, String encoding) throws java.io.UnsupportedEncodingException { this(dstream, encoding, 1, 1, 4096); } + /** Constructor. */ public SimpleCharStream(java.io.InputStream dstream) { this(dstream, 1, 1, 4096); } + /** Reinitialise. */ public void ReInit(java.io.InputStream dstream, String encoding, int startline, int startcolumn, int buffersize) throws java.io.UnsupportedEncodingException { ReInit(encoding == null ? new java.io.InputStreamReader(dstream) : new java.io.InputStreamReader(dstream, encoding), startline, startcolumn, buffersize); } + /** Reinitialise. */ public void ReInit(java.io.InputStream dstream, int startline, int startcolumn, int buffersize) { ReInit(new java.io.InputStreamReader(dstream), startline, startcolumn, buffersize); } + /** Reinitialise. */ public void ReInit(java.io.InputStream dstream, String encoding) throws java.io.UnsupportedEncodingException { ReInit(dstream, encoding, 1, 1, 4096); } + /** Reinitialise. */ public void ReInit(java.io.InputStream dstream) { ReInit(dstream, 1, 1, 4096); } + /** Reinitialise. */ public void ReInit(java.io.InputStream dstream, String encoding, int startline, int startcolumn) throws java.io.UnsupportedEncodingException { ReInit(dstream, encoding, startline, startcolumn, 4096); } + /** Reinitialise. */ public void ReInit(java.io.InputStream dstream, int startline, int startcolumn) { ReInit(dstream, startline, startcolumn, 4096); } + /** Get token literal value. */ public String GetImage() { if (bufpos >= tokenBegin) @@ -365,6 +395,7 @@ new String(buffer, 0, bufpos + 1); } + /** Get the suffix. */ public char[] GetSuffix(int len) { char[] ret = new char[len]; @@ -381,6 +412,7 @@ return ret; } + /** Reset buffer when finished. */ public void Done() { buffer = null; @@ -437,3 +469,4 @@ } } +/* JavaCC - OriginalChecksum=4dc2726dec9c445d0f0f7d31e4258576 (do not edit this line) */ Modified: trunk/src/dl-learner/org/dllearner/parser/Token.java =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/Token.java 2008-10-07 10:05:51 UTC (rev 1346) +++ trunk/src/dl-learner/org/dllearner/parser/Token.java 2008-10-07 10:27:14 UTC (rev 1347) @@ -1,11 +1,12 @@ -/* Generated By:JavaCC: Do not edit this line. Token.java Version 3.0 */ +/* Generated By:JavaCC: Do not edit this line. Token.java Version 4.1 */ +/* JavaCCOptions:TOKEN_EXTENDS=,KEEP_LINE_COL=null */ package org.dllearner.parser; /** * Describes the input token stream. */ -public @SuppressWarnings("all") class Token { +public class Token { /** * An integer that describes the kind of this token. This numbering @@ -14,12 +15,14 @@ */ public int kind; - /** - * beginLine and beginColumn describe the position of the first character - * of this token; endLine and endColumn describe the position of the - * last character of this token. - */ - public int beginLine, beginColumn, endLine, endColumn; + /** The line number of the first character of this Token. */ + public int beginLine; + /** The column number of the first character of this Token. */ + public int beginColumn; + /** The line number of the last character of this Token. */ + public int endLine; + /** The column number of the last character of this Token. */ + public int endColumn; /** * The string image of the token. @@ -51,6 +54,40 @@ public Token specialToken; /** + * An optional attribute value of the Token. + * Tokens which are not used as syntactic sugar will often contain + * meaningful values that will be used later on by the compiler or + * interpreter. This attribute value is often different from the image. + * Any subclass of Token that actually wants to return a non-null value can + * override this method as appropriate. + */ + public Object getValue() { + return null; + } + + /** + * No-argument constructor + */ + public Token() {} + + /** + * Constructs a new token for the specified Image. + */ + public Token(int kind) + { + this(kind, null); + } + + /** + * Constructs a new token for the specified Image and Kind. + */ + public Token(int kind, String image) + { + this.kind = kind; + this.image = image; + } + + /** * Returns the image. */ public String toString() @@ -63,19 +100,25 @@ * can create and return subclass objects based on the value of ofKind. * Simply add the cases to the switch for all those special cases. * For example, if you have a subclass of Token called IDToken that - * you want to create if ofKind is ID, simlpy add something like : + * you want to create if ofKind is ID, simply add something like : * - * case MyParserConstants.ID : return new IDToken(); + * case MyParserConstants.ID : return new IDToken(ofKind, image); * * to the following switch statement. Then you can cast matchedToken - * variable to the appropriate type and use it in your lexical actions. + * variable to the appropriate type and use sit in your lexical actions. */ - public static final Token newToken(int ofKind) + public static Token newToken(int ofKind, String image) { switch(ofKind) { - default : return new Token(); + default : return new Token(ofKind, image); } } + public static Token newToken(int ofKind) + { + return newToken(ofKind, null); + } + } +/* JavaCC - OriginalChecksum=8d8b4fbd81824dbdd6b91fb215e7f12d (do not edit this line) */ Modified: trunk/src/dl-learner/org/dllearner/parser/TokenMgrError.java =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/TokenMgrError.java 2008-10-07 10:05:51 UTC (rev 1346) +++ trunk/src/dl-learner/org/dllearner/parser/TokenMgrError.java 2008-10-07 10:27:14 UTC (rev 1347) @@ -1,8 +1,12 @@ -/* Generated By:JavaCC: Do not edit this line. TokenMgrError.java Version 3.0 */ +/* Generated By:JavaCC: Do not edit this line. TokenMgrError.java Version 4.1 */ +/* JavaCCOptions: */ package org.dllearner.parser; -public @SuppressWarnings("all") class TokenMgrError extends Error +/** Token Manager Error. */ +@SuppressWarnings("serial") +public class TokenMgrError extends Error { + /* * Ordinals for various reasons why an Error of this type can be thrown. */ @@ -119,15 +123,19 @@ * Constructors of various flavors follow. */ + /** No arg constructor. */ public TokenMgrError() { } + /** Constructor with message and reason. */ public TokenMgrError(String message, int reason) { super(message); errorCode = reason; } + /** Full Constructor. */ public TokenMgrError(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, char curChar, int reason) { this(LexicalError(EOFSeen, lexState, errorLine, errorColumn, errorAfter, curChar), reason); } } +/* JavaCC - OriginalChecksum=520337036fd46df117e8ba0a007c282e (do not edit this line) */ Modified: trunk/src/dl-learner/org/dllearner/parser/conf.jj =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/conf.jj 2008-10-07 10:05:51 UTC (rev 1346) +++ trunk/src/dl-learner/org/dllearner/parser/conf.jj 2008-10-07 10:27:14 UTC (rev 1347) @@ -34,7 +34,6 @@ import java.util.List; import java.util.LinkedList; import java.util.Map; -import java.util.TreeMap; import java.util.Set; import java.util.HashSet; import java.util.SortedSet; @@ -44,7 +43,6 @@ import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; -import java.io.StringReader; import org.dllearner.Info; @@ -151,16 +149,16 @@ } */ - public static ConfParser parseFile(File filename) { + public static ConfParser parseFile(File filename) throws FileNotFoundException, ParseException { ConfParser learner = null; - try { +// try { learner = new ConfParser(new FileInputStream(filename)); learner.Start(); - } catch(FileNotFoundException e) { - e.printStackTrace(); - } catch(ParseException e) { - e.printStackTrace(); - } +// } catch(FileNotFoundException e) { +// e.printStackTrace(); +// } catch(ParseException e) { +// e.printStackTrace(); +// } return learner; } @@ -179,7 +177,7 @@ // System.out.println(args.length); File f = new File(args[args.length-1]); - String baseDir = ""; +// String baseDir = ""; System.out.print("Parsing " + f.getName() + " ... "); long parseStartTime = System.currentTimeMillis(); @@ -188,7 +186,7 @@ ConfParser learner = null; try { learner = new ConfParser(new FileInputStream(args[args.length-1])); - baseDir = f.getParentFile().getPath(); +// baseDir = f.getParentFile().getPath(); } catch(IOException e) { System.err.println(e); System.exit(0); @@ -207,13 +205,13 @@ long parseDuration = System.currentTimeMillis() - parseStartTime; System.out.println("OK (" + parseDuration + " ms)"); - boolean queryMode = false; +// boolean queryMode = false; // solution test mode wird nicht unbedingt gebraucht, da man die covers // gleich standardmäßig beim query mit anzeigen kann // boolean solutionTestMode = false; - if(args.length>1 && args[0].equals("-q")) - queryMode = true; +// if(args.length>1 && args[0].equals("-q")) +// queryMode = true; //if(args.length>1 && args[0].equals("-qt")) { // queryMode = true; Modified: trunk/src/dl-learner/org/dllearner/scripts/CrossValidation.java =================================================================== --- trunk/src/dl-learner/org/dllearner/scripts/CrossValidation.java 2008-10-07 10:05:51 UTC (rev 1346) +++ trunk/src/dl-learner/org/dllearner/scripts/CrossValidation.java 2008-10-07 10:27:14 UTC (rev 1347) @@ -20,6 +20,7 @@ package org.dllearner.scripts; import java.io.File; +import java.io.FileNotFoundException; import java.text.DecimalFormat; import java.util.Collections; import java.util.HashSet; @@ -42,6 +43,7 @@ import org.dllearner.core.owl.Individual; import org.dllearner.learningproblems.PosNegLP; import org.dllearner.learningproblems.PosOnlyLP; +import org.dllearner.parser.ParseException; import org.dllearner.utilities.Helper; import org.dllearner.utilities.datastructures.Datastructures; import org.dllearner.utilities.statistics.Stat; @@ -112,6 +114,12 @@ } catch (ComponentInitException e) { // TODO Auto-generated catch block e.printStackTrace(); + } catch (FileNotFoundException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (ParseException e) { + // TODO Auto-generated catch block + e.printStackTrace(); } LearningProblem lp = start.getLearningProblem(); @@ -196,6 +204,12 @@ start = new Start(file); } catch (ComponentInitException e) { e.printStackTrace(); + } catch (FileNotFoundException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (ParseException e) { + // TODO Auto-generated catch block + e.printStackTrace(); } lp = start.getLearningProblem(); Set<String> pos = Datastructures.individualSetToStringSet(trainingSetsPos.get(currFold)); Modified: trunk/src/dl-learner/org/dllearner/scripts/TestValidation.java =================================================================== --- trunk/src/dl-learner/org/dllearner/scripts/TestValidation.java 2008-10-07 10:05:51 UTC (rev 1346) +++ trunk/src/dl-learner/org/dllearner/scripts/TestValidation.java 2008-10-07 10:27:14 UTC (rev 1347) @@ -20,6 +20,7 @@ package org.dllearner.scripts; import java.io.File; +import java.io.FileNotFoundException; import java.util.Set; import org.apache.log4j.ConsoleAppender; @@ -33,6 +34,7 @@ import org.dllearner.core.Score; import org.dllearner.core.owl.Description; import org.dllearner.core.owl.Individual; +import org.dllearner.parser.ParseException; /** * @author Jens Lehmann @@ -42,7 +44,7 @@ private static Logger logger = Logger.getRootLogger(); - public static void main(String args[]) throws ComponentInitException { + public static void main(String args[]) throws ComponentInitException, FileNotFoundException, ParseException { // create logger (a simple logger which outputs // its messages to the console) Modified: trunk/src/dl-learner/org/dllearner/test/junit/ExampleTests.java =================================================================== --- trunk/src/dl-learner/org/dllearner/test/junit/ExampleTests.java 2008-10-07 10:05:51 UTC (rev 1346) +++ trunk/src/dl-learner/org/dllearner/test/junit/ExampleTests.java 2008-10-07 10:27:14 UTC (rev 1347) @@ -77,6 +77,10 @@ // to server downtime, lack of features etc., but should still // remain in the example directory Set<String> ignore = new TreeSet<String>(); + // "standard" ignores (no problem to keep those) + ignore.add("./examples/krk/complete_no_draw.conf"); // refers to an OWL file, which has to be auto-generated + + // ignored due to errors ignore.add("./examples/sparql/govtrack.conf"); // HTTP 500 Server error ignore.add("./examples/sparql/musicbrainz.conf"); // HTTP 502 error - NullPointer in extraction ignore.add("./examples/sparql/SKOSTEST_local.conf"); // Out of Memory Error @@ -86,7 +90,8 @@ ignore.add("./examples/family/father_posonly.conf"); // ArrayOutOfBoundsException in Pellet - main problem: pos only not working ignore.add("./examples/sparql/difference/DBPediaSKOS_kohl_vs_angela.conf"); // Pellet: literal cannot be cast to individual ignore.add("./examples/family-benchmark/Aunt.conf"); // did not terminate so far (waited 45 minutes) - + + int failedCounter = 0; for (String path : confFiles.keySet()) { for (String file : confFiles.get(path)) { String conf = path + file + ".conf"; @@ -95,18 +100,31 @@ } else { System.out.println("Testing " + conf + " (time: " + sdf.format(new Date()) + ")."); long startTime = System.nanoTime(); - // start example - Start start = new Start(new File(conf)); - start.start(false); - // test is successful if a concept was learned - assert (start.getLearningAlgorithm().getCurrentlyBestDescription() != null); + boolean success = false; + try { + // start example + Start start = new Start(new File(conf)); + start.start(false); + // test is successful if a concept was learned + assert (start.getLearningAlgorithm().getCurrentlyBestDescription() != null); + start.getReasoningService().releaseKB(); + success = true; + } catch (Exception e) { + // unit test not succesful (exceptions are caught explicitly to find + assert ( false ); + e.printStackTrace(); + failedCounter++; + } long timeNeeded = System.nanoTime() - startTime; - start.getReasoningService().releaseKB(); ComponentManager.getInstance().freeAllComponents(); + if(!success) { + System.out.println("TEST FAILED."); + } System.out.println("Test of " + conf + " completed in " + Helper.prettyPrintNanoSeconds(timeNeeded) + "."); } } } + System.out.println("Finished. " + failedCounter + " tests failed."); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |