From: <jen...@us...> - 2011-11-02 12:46:10
|
Revision: 3360 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=3360&view=rev Author: jenslehmann Date: 2011-11-02 12:46:04 +0000 (Wed, 02 Nov 2011) Log Message: ----------- improvements of Manchester syntax parser Modified Paths: -------------- trunk/components-core/src/main/java/org/dllearner/parser/ManchesterSyntaxParser.java trunk/components-core/src/main/java/org/dllearner/parser/manchester.jj trunk/components-core/src/test/java/org/dllearner/test/junit/ParserTests.java trunk/examples/nlp2rdf/reuters_gold_vs_copper/learn.conf Modified: trunk/components-core/src/main/java/org/dllearner/parser/ManchesterSyntaxParser.java =================================================================== --- trunk/components-core/src/main/java/org/dllearner/parser/ManchesterSyntaxParser.java 2011-11-02 12:26:53 UTC (rev 3359) +++ trunk/components-core/src/main/java/org/dllearner/parser/ManchesterSyntaxParser.java 2011-11-02 12:46:04 UTC (rev 3360) @@ -42,14 +42,18 @@ jj_consume_token(22); {if (true) return new Union(c1,c2);} } else if (jj_2_3(2147483647)) { + jj_consume_token(21); s = URI(); jj_consume_token(SOME); c = ClassExpression(); + jj_consume_token(22); {if (true) return new ObjectSomeRestriction(new ObjectProperty(s),c);} } else if (jj_2_4(2147483647)) { + jj_consume_token(21); s = URI(); jj_consume_token(ONLY); c = ClassExpression(); + jj_consume_token(22); {if (true) return new ObjectAllRestriction(new ObjectProperty(s),c);} } else { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { @@ -192,9 +196,11 @@ } private boolean jj_3R_8() { + if (jj_scan_token(21)) return true; if (jj_3R_2()) return true; if (jj_scan_token(SOME)) return true; if (jj_3R_1()) return true; + if (jj_scan_token(22)) return true; return false; } @@ -291,6 +297,7 @@ } private boolean jj_3_4() { + if (jj_scan_token(21)) return true; if (jj_3R_2()) return true; if (jj_scan_token(ONLY)) return true; return false; @@ -306,6 +313,7 @@ } private boolean jj_3_3() { + if (jj_scan_token(21)) return true; if (jj_3R_2()) return true; if (jj_scan_token(SOME)) return true; return false; @@ -350,9 +358,11 @@ } private boolean jj_3R_9() { + if (jj_scan_token(21)) return true; if (jj_3R_2()) return true; if (jj_scan_token(ONLY)) return true; if (jj_3R_1()) return true; + if (jj_scan_token(22)) return true; return false; } Modified: trunk/components-core/src/main/java/org/dllearner/parser/manchester.jj =================================================================== --- trunk/components-core/src/main/java/org/dllearner/parser/manchester.jj 2011-11-02 12:26:53 UTC (rev 3359) +++ trunk/components-core/src/main/java/org/dllearner/parser/manchester.jj 2011-11-02 12:46:04 UTC (rev 3360) @@ -84,11 +84,11 @@ | LOOKAHEAD( "(" ClassExpression() <OR>) "(" c1=ClassExpression() <OR> c2=ClassExpression() ")" {return new Union(c1,c2);} - | LOOKAHEAD( URI() <SOME>) - s=URI() <SOME> c=ClassExpression() + | LOOKAHEAD( "(" URI() <SOME>) + "(" s=URI() <SOME> c=ClassExpression() ")" {return new ObjectSomeRestriction(new ObjectProperty(s),c); } - | LOOKAHEAD( URI() <ONLY>) - s=URI() <ONLY> c=ClassExpression() + | LOOKAHEAD( "(" URI() <ONLY>) + "(" s=URI() <ONLY> c=ClassExpression() ")" {return new ObjectAllRestriction(new ObjectProperty(s),c); } | <NOT> c=ClassExpression() {return new Negation(c); } Modified: trunk/components-core/src/test/java/org/dllearner/test/junit/ParserTests.java =================================================================== --- trunk/components-core/src/test/java/org/dllearner/test/junit/ParserTests.java 2011-11-02 12:26:53 UTC (rev 3359) +++ trunk/components-core/src/test/java/org/dllearner/test/junit/ParserTests.java 2011-11-02 12:46:04 UTC (rev 3360) @@ -53,9 +53,9 @@ // simple URI "<http://example.com/foo>", // existential restriction - "<http://example.com/prop> some <http://example.com/class>", + "(<http://example.com/prop> some <http://example.com/class>)", // universal restriction - "<http://example.com/prop> only <http://example.com/class>", + "(<http://example.com/prop> only <http://example.com/class>)", // intersection "(<http://example.com/class1> and <http://example.com/class2>)", // disjunction @@ -65,7 +65,9 @@ // has value with string "(<http://example.com/prop> value \"string\")", // nested expression - "<http://example.com/prop> some (<http://example.com/class1> and <http://example.com/class2>)", + "(<http://example.com/prop> some (<http://example.com/class1> and <http://example.com/class2>))", + // another nested expression + "(<http://nlp2rdf.lod2.eu/schema/string/Document> and (<http://nlp2rdf.lod2.eu/schema/string/subStringTrans> some <http://www.w3.org/2002/07/owl#Thing>))", }; // loop through all test cases Modified: trunk/examples/nlp2rdf/reuters_gold_vs_copper/learn.conf =================================================================== --- trunk/examples/nlp2rdf/reuters_gold_vs_copper/learn.conf 2011-11-02 12:26:53 UTC (rev 3359) +++ trunk/examples/nlp2rdf/reuters_gold_vs_copper/learn.conf 2011-11-02 12:46:04 UTC (rev 3360) @@ -34,11 +34,11 @@ op.useStringDatatypes = true //op.frequencyThreshold = 1 alg.type = "celoe" -alg.writeSearchTree = true +// alg.writeSearchTree = true alg.replaceSearchTree = true alg.maxExecutionTimeInSeconds = 100 alg.maxNrOfResults = 10 +alg.startClass = "(<http://nlp2rdf.lod2.eu/schema/string/Document> and (<http://nlp2rdf.lod2.eu/schema/string/subStringTrans> some <http://www.w3.org/2002/07/owl#Thing>))" - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |