You can subscribe to this list here.
2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(120) |
Sep
(36) |
Oct
(116) |
Nov
(17) |
Dec
(44) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(143) |
Feb
(192) |
Mar
(74) |
Apr
(84) |
May
(105) |
Jun
(64) |
Jul
(49) |
Aug
(120) |
Sep
(159) |
Oct
(156) |
Nov
(51) |
Dec
(28) |
2009 |
Jan
(17) |
Feb
(55) |
Mar
(33) |
Apr
(57) |
May
(54) |
Jun
(28) |
Jul
(6) |
Aug
(16) |
Sep
(38) |
Oct
(30) |
Nov
(26) |
Dec
(52) |
2010 |
Jan
(7) |
Feb
(91) |
Mar
(65) |
Apr
(2) |
May
(14) |
Jun
(25) |
Jul
(38) |
Aug
(48) |
Sep
(80) |
Oct
(70) |
Nov
(75) |
Dec
(77) |
2011 |
Jan
(68) |
Feb
(53) |
Mar
(51) |
Apr
(35) |
May
(65) |
Jun
(101) |
Jul
(29) |
Aug
(230) |
Sep
(95) |
Oct
(49) |
Nov
(110) |
Dec
(63) |
2012 |
Jan
(41) |
Feb
(42) |
Mar
(25) |
Apr
(46) |
May
(51) |
Jun
(44) |
Jul
(45) |
Aug
(29) |
Sep
(12) |
Oct
(9) |
Nov
(17) |
Dec
(2) |
2013 |
Jan
(12) |
Feb
(14) |
Mar
(7) |
Apr
(16) |
May
(54) |
Jun
(27) |
Jul
(11) |
Aug
(5) |
Sep
(85) |
Oct
(27) |
Nov
(37) |
Dec
(32) |
2014 |
Jan
(8) |
Feb
(29) |
Mar
(5) |
Apr
(3) |
May
(22) |
Jun
(3) |
Jul
(4) |
Aug
(3) |
Sep
|
Oct
|
Nov
|
Dec
|
From: <jen...@us...> - 2007-08-29 16:26:10
|
Revision: 114 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=114&view=rev Author: jenslehmann Date: 2007-08-29 09:26:06 -0700 (Wed, 29 Aug 2007) Log Message: ----------- updated DBpedia examples to new SPARQL module Modified Paths: -------------- trunk/examples/dbpedia/AristotleWorking1.conf trunk/examples/dbpedia/SilentBob.conf trunk/examples/dbpedia/SilentBobWorking1.conf trunk/examples/dbpedia/SilentBobWorking2.conf Modified: trunk/examples/dbpedia/AristotleWorking1.conf =================================================================== --- trunk/examples/dbpedia/AristotleWorking1.conf 2007-08-29 16:25:30 UTC (rev 113) +++ trunk/examples/dbpedia/AristotleWorking1.conf 2007-08-29 16:26:06 UTC (rev 114) @@ -1,7 +1,5 @@ +runPreprocessingModule("org.dllearner.modules.sparql.SparqlModule"); -loadJarFile("lib/modules/sparqlModule.jar"); -runPreprocessingModule("org.dllearner.modules.SparqlModule"); - // reasoner settings reasoner = dig; digReasonerURL = "http://localhost:8081"; @@ -26,18 +24,12 @@ showSubsumptionHierarchy = true; hidePrefix="http://dbpedia.org/resource/"; -// refinement.useAllConstructor = false; refinement.useExistsConstructor = true; refinement.useNegation = false; sparqlModule.numberOfRecursion = 2; -/** -1 flach nicht zu empfehlen -2 Klassen f�r objects und properties of objects -3 Klassen f�r properties of objects und superklassen von klassen -**/ sparqlModule.filterMode = 0; Modified: trunk/examples/dbpedia/SilentBob.conf =================================================================== --- trunk/examples/dbpedia/SilentBob.conf 2007-08-29 16:25:30 UTC (rev 113) +++ trunk/examples/dbpedia/SilentBob.conf 2007-08-29 16:26:06 UTC (rev 114) @@ -1,5 +1,4 @@ -loadJarFile("lib/modules/sparqlModule.jar"); -runPreprocessingModule("org.dllearner.modules.SparqlModule"); +runPreprocessingModule("org.dllearner.modules.sparql.SparqlModule"); // reasoner settings reasoner = dig; @@ -28,52 +27,15 @@ hidePrefix="http://dbpedia.org/resource/"; - refinement.useAllConstructor = false; refinement.useExistsConstructor = true; refinement.useNegation = false; -// missbraucht als number of recursions, wird minus 10 gerechnet -// es gilt: -/** -11 flach nicht zu empfehlen -12 Klassen f�r objects und properties of objects -13 Klassen f�r properties of objects und superklassen von klassen -**/ + sparqlModule.numberOfRecursion = 3; -// nur yago =0 , nur category = 1 -// sollte nicht mit aufgenommen werden eher 3 listen mit uris +// only yago =0 , only category = 1 sparqlModule.filterMode = 1; - - - +test("http://dbpedia.org/resource/Jason_Mewes"). +test("http://dbpedia.org/resource/Kevin_Smith"). -test("http://dbpedia.org/resource/Trey_Parker"). -test("http://dbpedia.org/resource/Matt_Stone"). - - - -/* -TBox[0]: -RBox[0]: -ABox[0]: - -Subsumption Hierarchy is improved for Refinement Operator Based Algorithm -java.util.NoSuchElementException - at java.util.TreeMap.key(Unknown Source) - at java.util.TreeMap.firstKey(Unknown Source) - at java.util.TreeSet.first(Unknown Source) - at org.dllearner.reasoning.SubsumptionHierarchy.improveSubsumptionHierar -chy(Unknown Source) - at org.dllearner.Main.<init>(Unknown Source) - at org.dllearner.parser.DLLearner.main(Unknown Source) - at org.dllearner.QuickStart.main(Unknown Source) - - -*/ - - - - - Modified: trunk/examples/dbpedia/SilentBobWorking1.conf =================================================================== --- trunk/examples/dbpedia/SilentBobWorking1.conf 2007-08-29 16:25:30 UTC (rev 113) +++ trunk/examples/dbpedia/SilentBobWorking1.conf 2007-08-29 16:26:06 UTC (rev 114) @@ -1,5 +1,4 @@ -loadJarFile("lib/modules/sparqlModule.jar"); -runPreprocessingModule("org.dllearner.modules.SparqlModule"); +runPreprocessingModule("org.dllearner.modules.sparql.SparqlModule"); // reasoner settings reasoner = dig; @@ -30,22 +29,13 @@ refinement.useAllConstructor = false; refinement.useExistsConstructor = true; refinement.useNegation = false; -// missbraucht als number of recursions, wird minus 10 gerechnet -// es gilt: -/** -11 flach nicht zu empfehlen -12 Klassen fr objects und properties of objects -13 Klassen fr properties of objects und superklassen von klassen -**/ + sparqlModule.numberOfRecursion = 3; -// nur yago =0 , nur category = 1 nur skos+cat =2 -// sollte nicht mit aufgenommen werden eher 3 listen mit uris sparqlModule.filterMode = 0; // http://dbpedia.org/class/yago/agnostic OR http://dbpedia.org/class/yago/artist // http://dbpedia.org/class/yago/agnostic OR http://dbpedia.org/class/yago/teetotaler - +test("http://dbpedia.org/resource/Matt_Stone"). +test("http://dbpedia.org/resource/Sarah_Silverman"). -test("http://dbpedia.org/resource/Jim_Carrey"). Modified: trunk/examples/dbpedia/SilentBobWorking2.conf =================================================================== --- trunk/examples/dbpedia/SilentBobWorking2.conf 2007-08-29 16:25:30 UTC (rev 113) +++ trunk/examples/dbpedia/SilentBobWorking2.conf 2007-08-29 16:26:06 UTC (rev 114) @@ -1,5 +1,4 @@ -loadJarFile("lib/modules/sparqlModule.jar"); -runPreprocessingModule("org.dllearner.modules.SparqlModule"); +runPreprocessingModule("org.dllearner.modules.sparql.SparqlModule"); // reasoner settings reasoner = dig; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-29 16:25:38
|
Revision: 113 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=113&view=rev Author: jenslehmann Date: 2007-08-29 09:25:30 -0700 (Wed, 29 Aug 2007) Log Message: ----------- improved console output when reading N-Triple/OWL Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/reasoning/DIGReasoner.java Modified: trunk/src/dl-learner/org/dllearner/reasoning/DIGReasoner.java =================================================================== --- trunk/src/dl-learner/org/dllearner/reasoning/DIGReasoner.java 2007-08-29 16:08:28 UTC (rev 112) +++ trunk/src/dl-learner/org/dllearner/reasoning/DIGReasoner.java 2007-08-29 16:25:30 UTC (rev 113) @@ -145,21 +145,26 @@ // DL-Learner stark anwächst, da verschieden Jena-Bibliotheken // eingebunden werden müssen) long importStartTime = System.currentTimeMillis(); - System.out.print("Converting import file " + file + " to DIG using OWL API ... "); // if the ontology format is N-Triples then Jena is used, otherwise the OWL API - if(imports.get(file).equals(OntologyFileFormat.N_TRIPLES)) + if(imports.get(file).equals(OntologyFileFormat.N_TRIPLES)) { + System.out.print("Converting import file " + file + " to DIG using Jena ... "); + importDIGString = JenaOWLDIGConverter.getTellsString(file, imports.get(file), kbURI); - else + } else { + System.out.println("Converting import file " + file + " to DIG using OWL API:"); + importDIGString = OWLAPIDIGConverter.getTellsString(file, imports.get(file), kbURI); - + } + ResponseDocument rdImport = connector.tells(importDIGString); if(!rdImport.getResponse().isSetOk()) { System.err.println("DIG-Reasoner cannot read knowledgebase."); System.exit(0); } else { long importTime = System.currentTimeMillis() - importStartTime; - System.out.println("OK (" + importTime + " ms)"); + if(imports.get(file).equals(OntologyFileFormat.N_TRIPLES)) + System.out.println("OK (" + importTime + " ms)"); // (" + JenaOWLDIGConverter.nrOfStatementsLastConversion + " statements, "+ importTime + " ms)"); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-29 16:09:30
|
Revision: 112 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=112&view=rev Author: jenslehmann Date: 2007-08-29 09:08:28 -0700 (Wed, 29 Aug 2007) Log Message: ----------- updated startup files and father example Modified Paths: -------------- trunk/bin/dllearner trunk/bin/dllearner.bat trunk/bin/quickstart trunk/bin/quickstart.bat trunk/bin/ws trunk/bin/ws.bat trunk/examples/father.conf trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java Modified: trunk/bin/dllearner =================================================================== --- trunk/bin/dllearner 2007-08-29 16:04:24 UTC (rev 111) +++ trunk/bin/dllearner 2007-08-29 16:08:28 UTC (rev 112) @@ -1 +1 @@ -java -cp .:./lib/dig1.1-xmlbeans.jar:./lib/jena/antlr-2.7.5.jar:./lib/jena/commons-logging.jar:./lib/jena/concurrent.jar:./lib/jena/icu4j_3_4.jar:./lib/jena/iri.jar:./lib/jena/jena.jar:./lib/jena/xercesImpl.jar:./lib/kaon2.jar:./lib/modules/sparqlModule.jar:./lib/owlapi/antlr-runtime-3.0.jar:./lib/owlapi/commons-lang-2.2.jar:./lib/owlapi/owlapi-api.jar:./lib/owlapi/owlapi-apibinding.jar:./lib/owlapi/owlapi-change.jar:./lib/owlapi/owlapi-debugging.jar:./lib/owlapi/owlapi-dig1_1.jar:./lib/owlapi/owlapi-functionalparser.jar:./lib/owlapi/owlapi-functionalrenderer.jar:./lib/owlapi/owlapi-impl.jar:./lib/owlapi/owlapi-krssparser.jar:./lib/owlapi/owlapi-mansyntaxparser.jar:./lib/owlapi/owlapi-mansyntaxrenderer.jar:./lib/owlapi/owlapi-metrics.jar:./lib/owlapi/owlapi-oboparser.jar:./lib/owlapi/owlapi-owlxmlparser.jar:./lib/owlapi/owlapi-owlxmlrenderer.jar:./lib/owlapi/owlapi-rdfapi.jar:./lib/owlapi/owlapi-rdfxmlparser.jar:./lib/owlapi/owlapi-rdfxmlrenderer.jar:./lib/owlapi/owlapi-util.jar:./lib/xbean.jar:./lib/dllearner.jar org.dllearner.parser.DLLearner $@ \ No newline at end of file +java -cp .:./lib/dig1.1-xmlbeans.jar:./lib/jena/antlr-2.7.5.jar:./lib/jena/commons-logging.jar:./lib/jena/concurrent.jar:./lib/jena/icu4j_3_4.jar:./lib/jena/iri.jar:./lib/jena/jena.jar:./lib/jena/xercesImpl.jar:./lib/kaon2.jar:./lib/owlapi/antlr-runtime-3.0.jar:./lib/owlapi/commons-lang-2.2.jar:./lib/owlapi/owlapi-api.jar:./lib/owlapi/owlapi-apibinding.jar:./lib/owlapi/owlapi-change.jar:./lib/owlapi/owlapi-debugging.jar:./lib/owlapi/owlapi-dig1_1.jar:./lib/owlapi/owlapi-functionalparser.jar:./lib/owlapi/owlapi-functionalrenderer.jar:./lib/owlapi/owlapi-impl.jar:./lib/owlapi/owlapi-krssparser.jar:./lib/owlapi/owlapi-mansyntaxparser.jar:./lib/owlapi/owlapi-mansyntaxrenderer.jar:./lib/owlapi/owlapi-metrics.jar:./lib/owlapi/owlapi-oboparser.jar:./lib/owlapi/owlapi-owlxmlparser.jar:./lib/owlapi/owlapi-owlxmlrenderer.jar:./lib/owlapi/owlapi-rdfapi.jar:./lib/owlapi/owlapi-rdfxmlparser.jar:./lib/owlapi/owlapi-rdfxmlrenderer.jar:./lib/owlapi/owlapi-util.jar:./lib/xbean.jar:./lib/dllearner.jar org.dllearner.parser.DLLearner $@ \ No newline at end of file Modified: trunk/bin/dllearner.bat =================================================================== --- trunk/bin/dllearner.bat 2007-08-29 16:04:24 UTC (rev 111) +++ trunk/bin/dllearner.bat 2007-08-29 16:08:28 UTC (rev 112) @@ -1 +1 @@ -java -cp .;.\lib\dig1.1-xmlbeans.jar;.\lib\jena\antlr-2.7.5.jar;.\lib\jena\commons-logging.jar;.\lib\jena\concurrent.jar;.\lib\jena\icu4j_3_4.jar;.\lib\jena\iri.jar;.\lib\jena\jena.jar;.\lib\jena\xercesImpl.jar;.\lib\kaon2.jar;.\lib\modules\sparqlModule.jar;.\lib\owlapi\antlr-runtime-3.0.jar;.\lib\owlapi\commons-lang-2.2.jar;.\lib\owlapi\owlapi-api.jar;.\lib\owlapi\owlapi-apibinding.jar;.\lib\owlapi\owlapi-change.jar;.\lib\owlapi\owlapi-debugging.jar;.\lib\owlapi\owlapi-dig1_1.jar;.\lib\owlapi\owlapi-functionalparser.jar;.\lib\owlapi\owlapi-functionalrenderer.jar;.\lib\owlapi\owlapi-impl.jar;.\lib\owlapi\owlapi-krssparser.jar;.\lib\owlapi\owlapi-mansyntaxparser.jar;.\lib\owlapi\owlapi-mansyntaxrenderer.jar;.\lib\owlapi\owlapi-metrics.jar;.\lib\owlapi\owlapi-oboparser.jar;.\lib\owlapi\owlapi-owlxmlparser.jar;.\lib\owlapi\owlapi-owlxmlrenderer.jar;.\lib\owlapi\owlapi-rdfapi.jar;.\lib\owlapi\owlapi-rdfxmlparser.jar;.\lib\owlapi\owlapi-rdfxmlrenderer.jar;.\lib\owlapi\owlapi-util.jar;.\lib\xbean.jar;.\lib\dllearner.jar org.dllearner.parser.DLLearner %* \ No newline at end of file +java -cp .;.\lib\dig1.1-xmlbeans.jar;.\lib\jena\antlr-2.7.5.jar;.\lib\jena\commons-logging.jar;.\lib\jena\concurrent.jar;.\lib\jena\icu4j_3_4.jar;.\lib\jena\iri.jar;.\lib\jena\jena.jar;.\lib\jena\xercesImpl.jar;.\lib\kaon2.jar;.\lib\owlapi\antlr-runtime-3.0.jar;.\lib\owlapi\commons-lang-2.2.jar;.\lib\owlapi\owlapi-api.jar;.\lib\owlapi\owlapi-apibinding.jar;.\lib\owlapi\owlapi-change.jar;.\lib\owlapi\owlapi-debugging.jar;.\lib\owlapi\owlapi-dig1_1.jar;.\lib\owlapi\owlapi-functionalparser.jar;.\lib\owlapi\owlapi-functionalrenderer.jar;.\lib\owlapi\owlapi-impl.jar;.\lib\owlapi\owlapi-krssparser.jar;.\lib\owlapi\owlapi-mansyntaxparser.jar;.\lib\owlapi\owlapi-mansyntaxrenderer.jar;.\lib\owlapi\owlapi-metrics.jar;.\lib\owlapi\owlapi-oboparser.jar;.\lib\owlapi\owlapi-owlxmlparser.jar;.\lib\owlapi\owlapi-owlxmlrenderer.jar;.\lib\owlapi\owlapi-rdfapi.jar;.\lib\owlapi\owlapi-rdfxmlparser.jar;.\lib\owlapi\owlapi-rdfxmlrenderer.jar;.\lib\owlapi\owlapi-util.jar;.\lib\xbean.jar;.\lib\dllearner.jar org.dllearner.parser.DLLearner %* \ No newline at end of file Modified: trunk/bin/quickstart =================================================================== --- trunk/bin/quickstart 2007-08-29 16:04:24 UTC (rev 111) +++ trunk/bin/quickstart 2007-08-29 16:08:28 UTC (rev 112) @@ -1 +1 @@ -java -cp .:./lib/dig1.1-xmlbeans.jar:./lib/jena/antlr-2.7.5.jar:./lib/jena/commons-logging.jar:./lib/jena/concurrent.jar:./lib/jena/icu4j_3_4.jar:./lib/jena/iri.jar:./lib/jena/jena.jar:./lib/jena/xercesImpl.jar:./lib/kaon2.jar:./lib/modules/sparqlModule.jar:./lib/owlapi/antlr-runtime-3.0.jar:./lib/owlapi/commons-lang-2.2.jar:./lib/owlapi/owlapi-api.jar:./lib/owlapi/owlapi-apibinding.jar:./lib/owlapi/owlapi-change.jar:./lib/owlapi/owlapi-debugging.jar:./lib/owlapi/owlapi-dig1_1.jar:./lib/owlapi/owlapi-functionalparser.jar:./lib/owlapi/owlapi-functionalrenderer.jar:./lib/owlapi/owlapi-impl.jar:./lib/owlapi/owlapi-krssparser.jar:./lib/owlapi/owlapi-mansyntaxparser.jar:./lib/owlapi/owlapi-mansyntaxrenderer.jar:./lib/owlapi/owlapi-metrics.jar:./lib/owlapi/owlapi-oboparser.jar:./lib/owlapi/owlapi-owlxmlparser.jar:./lib/owlapi/owlapi-owlxmlrenderer.jar:./lib/owlapi/owlapi-rdfapi.jar:./lib/owlapi/owlapi-rdfxmlparser.jar:./lib/owlapi/owlapi-rdfxmlrenderer.jar:./lib/owlapi/owlapi-util.jar:./lib/xbean.jar:./lib/dllearner.jar org.dllearner.QuickStart \ No newline at end of file +java -cp .:./lib/dig1.1-xmlbeans.jar:./lib/jena/antlr-2.7.5.jar:./lib/jena/commons-logging.jar:./lib/jena/concurrent.jar:./lib/jena/icu4j_3_4.jar:./lib/jena/iri.jar:./lib/jena/jena.jar:./lib/jena/xercesImpl.jar:./lib/kaon2.jar:./lib/owlapi/antlr-runtime-3.0.jar:./lib/owlapi/commons-lang-2.2.jar:./lib/owlapi/owlapi-api.jar:./lib/owlapi/owlapi-apibinding.jar:./lib/owlapi/owlapi-change.jar:./lib/owlapi/owlapi-debugging.jar:./lib/owlapi/owlapi-dig1_1.jar:./lib/owlapi/owlapi-functionalparser.jar:./lib/owlapi/owlapi-functionalrenderer.jar:./lib/owlapi/owlapi-impl.jar:./lib/owlapi/owlapi-krssparser.jar:./lib/owlapi/owlapi-mansyntaxparser.jar:./lib/owlapi/owlapi-mansyntaxrenderer.jar:./lib/owlapi/owlapi-metrics.jar:./lib/owlapi/owlapi-oboparser.jar:./lib/owlapi/owlapi-owlxmlparser.jar:./lib/owlapi/owlapi-owlxmlrenderer.jar:./lib/owlapi/owlapi-rdfapi.jar:./lib/owlapi/owlapi-rdfxmlparser.jar:./lib/owlapi/owlapi-rdfxmlrenderer.jar:./lib/owlapi/owlapi-util.jar:./lib/xbean.jar:./lib/dllearner.jar org.dllearner.QuickStart \ No newline at end of file Modified: trunk/bin/quickstart.bat =================================================================== --- trunk/bin/quickstart.bat 2007-08-29 16:04:24 UTC (rev 111) +++ trunk/bin/quickstart.bat 2007-08-29 16:08:28 UTC (rev 112) @@ -1 +1 @@ -java -cp .;.\lib\dig1.1-xmlbeans.jar;.\lib\jena\antlr-2.7.5.jar;.\lib\jena\commons-logging.jar;.\lib\jena\concurrent.jar;.\lib\jena\icu4j_3_4.jar;.\lib\jena\iri.jar;.\lib\jena\jena.jar;.\lib\jena\xercesImpl.jar;.\lib\kaon2.jar;.\lib\modules\sparqlModule.jar;.\lib\owlapi\antlr-runtime-3.0.jar;.\lib\owlapi\commons-lang-2.2.jar;.\lib\owlapi\owlapi-api.jar;.\lib\owlapi\owlapi-apibinding.jar;.\lib\owlapi\owlapi-change.jar;.\lib\owlapi\owlapi-debugging.jar;.\lib\owlapi\owlapi-dig1_1.jar;.\lib\owlapi\owlapi-functionalparser.jar;.\lib\owlapi\owlapi-functionalrenderer.jar;.\lib\owlapi\owlapi-impl.jar;.\lib\owlapi\owlapi-krssparser.jar;.\lib\owlapi\owlapi-mansyntaxparser.jar;.\lib\owlapi\owlapi-mansyntaxrenderer.jar;.\lib\owlapi\owlapi-metrics.jar;.\lib\owlapi\owlapi-oboparser.jar;.\lib\owlapi\owlapi-owlxmlparser.jar;.\lib\owlapi\owlapi-owlxmlrenderer.jar;.\lib\owlapi\owlapi-rdfapi.jar;.\lib\owlapi\owlapi-rdfxmlparser.jar;.\lib\owlapi\owlapi-rdfxmlrenderer.jar;.\lib\owlapi\owlapi-util.jar;.\lib\xbean.jar;.\lib\dllearner.jar org.dllearner.QuickStart \ No newline at end of file +java -cp .;.\lib\dig1.1-xmlbeans.jar;.\lib\jena\antlr-2.7.5.jar;.\lib\jena\commons-logging.jar;.\lib\jena\concurrent.jar;.\lib\jena\icu4j_3_4.jar;.\lib\jena\iri.jar;.\lib\jena\jena.jar;.\lib\jena\xercesImpl.jar;.\lib\kaon2.jar;.\lib\owlapi\antlr-runtime-3.0.jar;.\lib\owlapi\commons-lang-2.2.jar;.\lib\owlapi\owlapi-api.jar;.\lib\owlapi\owlapi-apibinding.jar;.\lib\owlapi\owlapi-change.jar;.\lib\owlapi\owlapi-debugging.jar;.\lib\owlapi\owlapi-dig1_1.jar;.\lib\owlapi\owlapi-functionalparser.jar;.\lib\owlapi\owlapi-functionalrenderer.jar;.\lib\owlapi\owlapi-impl.jar;.\lib\owlapi\owlapi-krssparser.jar;.\lib\owlapi\owlapi-mansyntaxparser.jar;.\lib\owlapi\owlapi-mansyntaxrenderer.jar;.\lib\owlapi\owlapi-metrics.jar;.\lib\owlapi\owlapi-oboparser.jar;.\lib\owlapi\owlapi-owlxmlparser.jar;.\lib\owlapi\owlapi-owlxmlrenderer.jar;.\lib\owlapi\owlapi-rdfapi.jar;.\lib\owlapi\owlapi-rdfxmlparser.jar;.\lib\owlapi\owlapi-rdfxmlrenderer.jar;.\lib\owlapi\owlapi-util.jar;.\lib\xbean.jar;.\lib\dllearner.jar org.dllearner.QuickStart \ No newline at end of file Modified: trunk/bin/ws =================================================================== --- trunk/bin/ws 2007-08-29 16:04:24 UTC (rev 111) +++ trunk/bin/ws 2007-08-29 16:08:28 UTC (rev 112) @@ -1 +1 @@ -java -cp .:./lib/dig1.1-xmlbeans.jar:./lib/jena/antlr-2.7.5.jar:./lib/jena/commons-logging.jar:./lib/jena/concurrent.jar:./lib/jena/icu4j_3_4.jar:./lib/jena/iri.jar:./lib/jena/jena.jar:./lib/jena/xercesImpl.jar:./lib/kaon2.jar:./lib/modules/sparqlModule.jar:./lib/owlapi/antlr-runtime-3.0.jar:./lib/owlapi/commons-lang-2.2.jar:./lib/owlapi/owlapi-api.jar:./lib/owlapi/owlapi-apibinding.jar:./lib/owlapi/owlapi-change.jar:./lib/owlapi/owlapi-debugging.jar:./lib/owlapi/owlapi-dig1_1.jar:./lib/owlapi/owlapi-functionalparser.jar:./lib/owlapi/owlapi-functionalrenderer.jar:./lib/owlapi/owlapi-impl.jar:./lib/owlapi/owlapi-krssparser.jar:./lib/owlapi/owlapi-mansyntaxparser.jar:./lib/owlapi/owlapi-mansyntaxrenderer.jar:./lib/owlapi/owlapi-metrics.jar:./lib/owlapi/owlapi-oboparser.jar:./lib/owlapi/owlapi-owlxmlparser.jar:./lib/owlapi/owlapi-owlxmlrenderer.jar:./lib/owlapi/owlapi-rdfapi.jar:./lib/owlapi/owlapi-rdfxmlparser.jar:./lib/owlapi/owlapi-rdfxmlrenderer.jar:./lib/owlapi/owlapi-util.jar:./lib/xbean.jar:./lib/dllearner.jar org.dllearner.server.DLLearnerWSStart $@ \ No newline at end of file +java -cp .:./lib/dig1.1-xmlbeans.jar:./lib/jena/antlr-2.7.5.jar:./lib/jena/commons-logging.jar:./lib/jena/concurrent.jar:./lib/jena/icu4j_3_4.jar:./lib/jena/iri.jar:./lib/jena/jena.jar:./lib/jena/xercesImpl.jar:./lib/kaon2.jar:./lib/owlapi/antlr-runtime-3.0.jar:./lib/owlapi/commons-lang-2.2.jar:./lib/owlapi/owlapi-api.jar:./lib/owlapi/owlapi-apibinding.jar:./lib/owlapi/owlapi-change.jar:./lib/owlapi/owlapi-debugging.jar:./lib/owlapi/owlapi-dig1_1.jar:./lib/owlapi/owlapi-functionalparser.jar:./lib/owlapi/owlapi-functionalrenderer.jar:./lib/owlapi/owlapi-impl.jar:./lib/owlapi/owlapi-krssparser.jar:./lib/owlapi/owlapi-mansyntaxparser.jar:./lib/owlapi/owlapi-mansyntaxrenderer.jar:./lib/owlapi/owlapi-metrics.jar:./lib/owlapi/owlapi-oboparser.jar:./lib/owlapi/owlapi-owlxmlparser.jar:./lib/owlapi/owlapi-owlxmlrenderer.jar:./lib/owlapi/owlapi-rdfapi.jar:./lib/owlapi/owlapi-rdfxmlparser.jar:./lib/owlapi/owlapi-rdfxmlrenderer.jar:./lib/owlapi/owlapi-util.jar:./lib/xbean.jar:./lib/dllearner.jar org.dllearner.server.DLLearnerWSStart $@ \ No newline at end of file Modified: trunk/bin/ws.bat =================================================================== --- trunk/bin/ws.bat 2007-08-29 16:04:24 UTC (rev 111) +++ trunk/bin/ws.bat 2007-08-29 16:08:28 UTC (rev 112) @@ -1 +1 @@ -java -cp .;.\lib\dig1.1-xmlbeans.jar;.\lib\jena\antlr-2.7.5.jar;.\lib\jena\commons-logging.jar;.\lib\jena\concurrent.jar;.\lib\jena\icu4j_3_4.jar;.\lib\jena\iri.jar;.\lib\jena\jena.jar;.\lib\jena\xercesImpl.jar;.\lib\kaon2.jar;.\lib\modules\sparqlModule.jar;.\lib\owlapi\antlr-runtime-3.0.jar;.\lib\owlapi\commons-lang-2.2.jar;.\lib\owlapi\owlapi-api.jar;.\lib\owlapi\owlapi-apibinding.jar;.\lib\owlapi\owlapi-change.jar;.\lib\owlapi\owlapi-debugging.jar;.\lib\owlapi\owlapi-dig1_1.jar;.\lib\owlapi\owlapi-functionalparser.jar;.\lib\owlapi\owlapi-functionalrenderer.jar;.\lib\owlapi\owlapi-impl.jar;.\lib\owlapi\owlapi-krssparser.jar;.\lib\owlapi\owlapi-mansyntaxparser.jar;.\lib\owlapi\owlapi-mansyntaxrenderer.jar;.\lib\owlapi\owlapi-metrics.jar;.\lib\owlapi\owlapi-oboparser.jar;.\lib\owlapi\owlapi-owlxmlparser.jar;.\lib\owlapi\owlapi-owlxmlrenderer.jar;.\lib\owlapi\owlapi-rdfapi.jar;.\lib\owlapi\owlapi-rdfxmlparser.jar;.\lib\owlapi\owlapi-rdfxmlrenderer.jar;.\lib\owlapi\owlapi-util.jar;.\lib\xbean.jar;.\lib\dllearner.jar org.dllearner.server.DLLearnerWSStart %* \ No newline at end of file +java -cp .;.\lib\dig1.1-xmlbeans.jar;.\lib\jena\antlr-2.7.5.jar;.\lib\jena\commons-logging.jar;.\lib\jena\concurrent.jar;.\lib\jena\icu4j_3_4.jar;.\lib\jena\iri.jar;.\lib\jena\jena.jar;.\lib\jena\xercesImpl.jar;.\lib\kaon2.jar;.\lib\owlapi\antlr-runtime-3.0.jar;.\lib\owlapi\commons-lang-2.2.jar;.\lib\owlapi\owlapi-api.jar;.\lib\owlapi\owlapi-apibinding.jar;.\lib\owlapi\owlapi-change.jar;.\lib\owlapi\owlapi-debugging.jar;.\lib\owlapi\owlapi-dig1_1.jar;.\lib\owlapi\owlapi-functionalparser.jar;.\lib\owlapi\owlapi-functionalrenderer.jar;.\lib\owlapi\owlapi-impl.jar;.\lib\owlapi\owlapi-krssparser.jar;.\lib\owlapi\owlapi-mansyntaxparser.jar;.\lib\owlapi\owlapi-mansyntaxrenderer.jar;.\lib\owlapi\owlapi-metrics.jar;.\lib\owlapi\owlapi-oboparser.jar;.\lib\owlapi\owlapi-owlxmlparser.jar;.\lib\owlapi\owlapi-owlxmlrenderer.jar;.\lib\owlapi\owlapi-rdfapi.jar;.\lib\owlapi\owlapi-rdfxmlparser.jar;.\lib\owlapi\owlapi-rdfxmlrenderer.jar;.\lib\owlapi\owlapi-util.jar;.\lib\xbean.jar;.\lib\dllearner.jar org.dllearner.server.DLLearnerWSStart %* \ No newline at end of file Modified: trunk/examples/father.conf =================================================================== --- trunk/examples/father.conf 2007-08-29 16:04:24 UTC (rev 111) +++ trunk/examples/father.conf 2007-08-29 16:08:28 UTC (rev 112) @@ -18,7 +18,7 @@ // search tree protocol refinement.writeSearchTree = false; -refinement.searchTreeFile = "searchTree.txt"; +refinement.searchTreeFile = "log/searchTree.txt"; // control output showIndividuals = true; @@ -30,8 +30,6 @@ /** background knowledge ***/ BOTTOM = (male AND female). -father = (male AND EXISTS hasChild.TOP). - // persons male(markus). male(stefan). Modified: trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java =================================================================== --- trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java 2007-08-29 16:04:24 UTC (rev 111) +++ trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java 2007-08-29 16:08:28 UTC (rev 112) @@ -199,6 +199,7 @@ Config.algorithm = Algorithm.REFINEMENT; Config.Refinement.heuristic = Config.Refinement.Heuristic.FLEXIBLE; Config.Refinement.horizontalExpansionFactor = 0.6; + Config.Refinement.quiet = true; Config.percentPerLengthUnit = 0.05; learningAlgorithm = new ROLearner(learningProblem); } else if(algorithmNr==1) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-29 16:04:27
|
Revision: 111 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=111&view=rev Author: jenslehmann Date: 2007-08-29 09:04:24 -0700 (Wed, 29 Aug 2007) Log Message: ----------- removed SPARQL module (integrated in source code) Removed Paths: ------------- trunk/lib/modules/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-29 14:39:46
|
Revision: 110 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=110&view=rev Author: jenslehmann Date: 2007-08-29 07:39:45 -0700 (Wed, 29 Aug 2007) Log Message: ----------- updated statistics script Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java Modified: trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java =================================================================== --- trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java 2007-08-29 14:39:12 UTC (rev 109) +++ trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java 2007-08-29 14:39:45 UTC (rev 110) @@ -99,13 +99,21 @@ String gnuplotBaseDir = "log/gnuplot/"; String statBaseDir = "log/stat/"; - File[] confFiles = new File[2]; - confFiles[0] = new File(exampleBaseDir + "trains", "trains_owl.conf"); - confFiles[1] = new File(exampleBaseDir, "father2.conf"); + File[] confFiles = new File[6]; + confFiles[0] = new File(exampleBaseDir + "trains", "trains_owl.conf"); + confFiles[1] = new File(exampleBaseDir + "moral_reasoner", "moral_43examples_owl.conf"); + confFiles[2] = new File(exampleBaseDir + "moral_reasoner", "moral_43examples_complex_owl.conf"); + confFiles[3] = new File(exampleBaseDir + "poker", "pair_owl.conf"); + confFiles[4] = new File(exampleBaseDir + "poker", "straight_owl.conf"); + confFiles[5] = new File(exampleBaseDir + "forte", "forte_uncle_owl.conf"); - String[] examples = new String[2]; + String[] examples = new String[6]; examples[0] = "trains"; - examples[1] = "father"; + examples[1] = "moral reasoner (43 examples, simple)"; + examples[2] = "moral reasoner (43 examples, complex)"; + examples[3] = "poker (49 examples, pair)"; + examples[4] = "poker (55 examples, straight)"; + examples[5] = "uncle (FORTE data set)"; String[] algorithms = new String[3]; algorithms[0] = "refinement"; @@ -189,24 +197,35 @@ LearningAlgorithm learningAlgorithm = null; if(algorithmNr==0) { Config.algorithm = Algorithm.REFINEMENT; + Config.Refinement.heuristic = Config.Refinement.Heuristic.FLEXIBLE; + Config.Refinement.horizontalExpansionFactor = 0.6; + Config.percentPerLengthUnit = 0.05; learningAlgorithm = new ROLearner(learningProblem); } else if(algorithmNr==1) { Config.algorithm = Algorithm.GP; - Config.GP.numberOfIndividuals = 21; - Config.GP.algorithmType = GP.AlgorithmType.GENERATIONAL; + Config.GP.algorithmType = GP.AlgorithmType.GENERATIONAL; + Config.GP.selectionType = GP.SelectionType.RANK_SELECTION; + Config.GP.generations = 50; + Config.GP.useFixedNumberOfGenerations = true; + Config.GP.numberOfIndividuals = 401; Config.GP.refinementProbability = 0; Config.GP.mutationProbability = 0.02; Config.GP.crossoverProbability = 0.8; - Config.GP.hillClimbingProbability = 0; + Config.GP.hillClimbingProbability = 0; + Config.percentPerLengthUnit = 0.005; learningAlgorithm = new GP(learningProblem); } else if(algorithmNr==2) { Config.algorithm = Algorithm.HYBRID_GP; - Config.GP.numberOfIndividuals = 11; - Config.GP.algorithmType = GP.AlgorithmType.GENERATIONAL; + Config.GP.algorithmType = GP.AlgorithmType.GENERATIONAL; + Config.GP.selectionType = GP.SelectionType.RANK_SELECTION; + Config.GP.generations = 50; + Config.GP.useFixedNumberOfGenerations = true; + Config.GP.numberOfIndividuals = 401; Config.GP.refinementProbability = 0.65; Config.GP.mutationProbability = 0.02; Config.GP.crossoverProbability = 0.2; Config.GP.hillClimbingProbability = 0; + Config.percentPerLengthUnit = 0.005; learningAlgorithm = new GP(learningProblem); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-29 14:39:14
|
Revision: 109 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=109&view=rev Author: jenslehmann Date: 2007-08-29 07:39:12 -0700 (Wed, 29 Aug 2007) Log Message: ----------- added OWL conf file for FORTE Added Paths: ----------- trunk/examples/forte/forte_uncle_owl.conf Added: trunk/examples/forte/forte_uncle_owl.conf =================================================================== --- trunk/examples/forte/forte_uncle_owl.conf (rev 0) +++ trunk/examples/forte/forte_uncle_owl.conf 2007-08-29 14:39:12 UTC (rev 109) @@ -0,0 +1,90 @@ +import("moral_43instances.owl"); + + // complete example set ++isUncle(art). ++isUncle(calvin). ++isUncle(carlos). ++isUncle(david). ++isUncle(eric). ++isUncle(fred). ++isUncle(frederick). ++isUncle(george). ++isUncle(harry). ++isUncle(jack). ++isUncle(james). ++isUncle(jonas). ++isUncle(karl). ++isUncle(leon). ++isUncle(mark). ++isUncle(melvin). ++isUncle(neil). ++isUncle(nero). ++isUncle(owen). ++isUncle(paul). ++isUncle(peter). ++isUncle(umo). ++isUncle(walt). + +-isUncle(alfred). +-isUncle(alice). +-isUncle(angela). +-isUncle(ann). +-isUncle(beatrice). +-isUncle(bob). +-isUncle(callie). +-isUncle(carl). +-isUncle(christy). +-isUncle(cornelia). +-isUncle(deanna). +-isUncle(elisa). +-isUncle(f12). +-isUncle(f14). +-isUncle(f19). +-isUncle(f2). +-isUncle(f20). +-isUncle(f21). +-isUncle(f22). +-isUncle(f23). +-isUncle(f25). +-isUncle(f26). +-isUncle(f28). +-isUncle(f8). +-isUncle(fannie). +-isUncle(gail). +-isUncle(helen). +-isUncle(jane). +-isUncle(janet). +-isUncle(kari). +-isUncle(lorrie). +-isUncle(m1). +-isUncle(m10). +-isUncle(m11). +-isUncle(m13). +-isUncle(m15). +-isUncle(m16). +-isUncle(m17). +-isUncle(m18). +-isUncle(m24). +-isUncle(m27). +-isUncle(m29). +-isUncle(m3). +-isUncle(m4). +-isUncle(m5). +-isUncle(m6). +-isUncle(m7). +-isUncle(m9). +-isUncle(maria). +-isUncle(martha). +-isUncle(nancy). +-isUncle(nonnie). +-isUncle(oma). +-isUncle(paula). +-isUncle(prissie). +-isUncle(rachel). +-isUncle(ray). +-isUncle(regina). +-isUncle(steve). +-isUncle(susan). +-isUncle(terri). +-isUncle(terry). +-isUncle(wendy). This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-29 14:15:13
|
Revision: 108 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=108&view=rev Author: jenslehmann Date: 2007-08-29 07:15:05 -0700 (Wed, 29 Aug 2007) Log Message: ----------- some futher renamings Modified Paths: -------------- trunk/examples/moral_reasoner/README Added Paths: ----------- trunk/examples/moral_reasoner/moral_43examples_complex_owl.conf trunk/examples/moral_reasoner/moral_43examples_owl.conf Removed Paths: ------------- trunk/examples/moral_reasoner/moral_complex_owl.conf trunk/examples/moral_reasoner/moral_owl.conf Modified: trunk/examples/moral_reasoner/README =================================================================== --- trunk/examples/moral_reasoner/README 2007-08-29 14:00:20 UTC (rev 107) +++ trunk/examples/moral_reasoner/README 2007-08-29 14:15:05 UTC (rev 108) @@ -8,7 +8,9 @@ OWL-files: - "43instances" means that the number of instances has been reduced to 43 from the original example - - "complex" means that a definition has been left out + - "complex" means that a definition has been left out to make the learned + concept more complex + - complete Conf-files: - "43examples" means that these learning examples do not use all examples but Copied: trunk/examples/moral_reasoner/moral_43examples_complex_owl.conf (from rev 107, trunk/examples/moral_reasoner/moral_complex_owl.conf) =================================================================== --- trunk/examples/moral_reasoner/moral_43examples_complex_owl.conf (rev 0) +++ trunk/examples/moral_reasoner/moral_43examples_complex_owl.conf 2007-08-29 14:15:05 UTC (rev 108) @@ -0,0 +1,246 @@ + /*********************** + solution should be: + guilty = NOT justified AND (responsible OR vicarious) + + Found: ((NOT justified) AND (vicarious OR (negligent_c AND responsible))) + + + + Examples: + 23 positive + 20 negative + + + ***********************/ + + /** settings **/ + // reasoner settings + reasoner = dig; + digReasonerURL = "http://localhost:8081"; + useRetrievalForClassification = true; + refinement.useDIGMultiInstanceChecks = twoChecks; + + // algorithm settings + algorithm = refinement; + refinement.horizontalExpansionFactor = 0.6; + refinement.quiet = false; + refinement.useTooWeakList = true; + + // search tree protocol + refinement.writeSearchTree = false; + refinement.searchTreeFile = "searchTree.txt"; + + // control output + showIndividuals = false; + showConcepts = true; + showRoles = true; + showInternalKB = false; +showSubsumptionHierarchy = true; +//export("moral_complex.owl"); + + import("moral_43instances_complex.owl"); + //hidePrefix("http://localhost/foo#"); +/** background knowledge **/ + ++guilty(p0). ++guilty(p1). ++guilty(p2). ++guilty(p3). ++guilty(p4). ++guilty(p5). ++guilty(p6). ++guilty(p7). ++guilty(p8). ++guilty(p9). ++guilty(p10). +/*+guilty(p11). ++guilty(p12). ++guilty(p13). ++guilty(p14). ++guilty(p15). ++guilty(p16). ++guilty(p17). ++guilty(p18). ++guilty(p19). ++guilty(p20). +/*+guilty(p21). ++guilty(p22). ++guilty(p23). ++guilty(p24). ++guilty(p25). ++guilty(p26). ++guilty(p27). ++guilty(p28). ++guilty(p29). +/*+guilty(p30). ++guilty(p31). ++guilty(p32). ++guilty(p33). ++guilty(p34). ++guilty(p35). ++guilty(p36). ++guilty(p37). ++guilty(p38). ++guilty(p39). ++guilty(p40). ++guilty(p41). ++guilty(p42). ++guilty(p43). ++guilty(p44). ++guilty(p45). ++guilty(p46). ++guilty(p47). ++guilty(p48). ++guilty(p49). ++guilty(p50). ++guilty(p51). ++guilty(p52). ++guilty(p53). ++guilty(p54). ++guilty(p55). ++guilty(p56). ++guilty(p57). ++guilty(p58). ++guilty(p59). ++guilty(p60). ++guilty(p61). ++guilty(p62). ++guilty(p63). ++guilty(p64). ++guilty(p65). ++guilty(p66). ++guilty(p67). ++guilty(p68). ++guilty(p69). ++guilty(p70). ++guilty(p71). ++guilty(p72). ++guilty(p73). ++guilty(p74). ++guilty(p75). ++guilty(p76). ++guilty(p77). ++guilty(p78). ++guilty(p79). ++guilty(p80). ++guilty(p81). ++guilty(p82). ++guilty(p83). ++guilty(p84). ++guilty(p85). ++guilty(p86). ++guilty(p87). ++guilty(p88). ++guilty(p89).*/ ++guilty(p90). ++guilty(p91). ++guilty(p92). ++guilty(p93). ++guilty(p94). ++guilty(p95). ++guilty(p96). ++guilty(p97). ++guilty(p98). ++guilty(p99). ++guilty(p100). ++guilty(p101). +-guilty(n0). +-guilty(n1). +-guilty(n2). +-guilty(n3). +//-guilty(n4). +-guilty(n5). +-guilty(n6). +-guilty(n7). +-guilty(n8). +-guilty(n9). +-guilty(n10). +/*-guilty(n11). +-guilty(n12). +-guilty(n13). +-guilty(n14). +-guilty(n15). +-guilty(n16). +-guilty(n17). +-guilty(n18). +-guilty(n19). +/*-guilty(n20). +-guilty(n21). +-guilty(n22). +-guilty(n23). +-guilty(n24). +-guilty(n25). +-guilty(n26). +-guilty(n27). +-guilty(n28). +-guilty(n29). +/*-guilty(n30). +-guilty(n31). +-guilty(n32). +-guilty(n33). +-guilty(n34). +-guilty(n35). +-guilty(n36). +-guilty(n37). +-guilty(n38). +-guilty(n39). +-guilty(n40). +-guilty(n41). +-guilty(n42). +-guilty(n43). +-guilty(n44). +-guilty(n45). +-guilty(n46). +-guilty(n47). +-guilty(n48). +-guilty(n49). +-guilty(n50). +-guilty(n51). +-guilty(n52). +-guilty(n53). +-guilty(n54). +-guilty(n55). +-guilty(n56). +-guilty(n57). +-guilty(n58). +-guilty(n59). +-guilty(n60). +-guilty(n61). +-guilty(n62). +-guilty(n63). +-guilty(n64). +-guilty(n65). +-guilty(n66). +-guilty(n67). +-guilty(n68). +-guilty(n69). +-guilty(n70). +-guilty(n71). +-guilty(n72). +-guilty(n73). +-guilty(n74). +-guilty(n75). +-guilty(n76). +-guilty(n77). +-guilty(n78). +-guilty(n79). +-guilty(n80). +-guilty(n81). +-guilty(n82). +-guilty(n83). +-guilty(n84). +-guilty(n85). +-guilty(n86). +-guilty(n87). +-guilty(n88). +-guilty(n89).*/ +-guilty(n90). +-guilty(n91). +-guilty(n92). +-guilty(n93). +-guilty(n94). +-guilty(n95). +-guilty(n96). +-guilty(n97). +-guilty(n98). +-guilty(n99). Copied: trunk/examples/moral_reasoner/moral_43examples_owl.conf (from rev 107, trunk/examples/moral_reasoner/moral_owl.conf) =================================================================== --- trunk/examples/moral_reasoner/moral_43examples_owl.conf (rev 0) +++ trunk/examples/moral_reasoner/moral_43examples_owl.conf 2007-08-29 14:15:05 UTC (rev 108) @@ -0,0 +1,243 @@ + /*********************** + solution should be: + guilty = (blameworthy OR vicarious_blame ). + + + Examples: + 23 positive + 20 negative + + ***********************/ + + /** settings **/ + // reasoner settings + reasoner = dig; + digReasonerURL = "http://localhost:8081"; + useRetrievalForClassification = true; + refinement.useDIGMultiInstanceChecks = twoChecks; + + // algorithm settings + algorithm = refinement; + refinement.horizontalExpansionFactor = 0.6; + refinement.quiet = false; + refinement.useTooWeakList = true; + + // search tree protocol + refinement.writeSearchTree = false; + refinement.searchTreeFile = "searchTree.txt"; + + // control output + showIndividuals = false; + showConcepts = true; + showRoles = true; + showInternalKB = false; +showSubsumptionHierarchy = true; +import("moral_43instances.owl"); +//hidePrefix("http://localhost/foo#"); + +/** background knowledge **/ + + + ++guilty(p0). ++guilty(p1). ++guilty(p2). ++guilty(p3). ++guilty(p4). ++guilty(p5). ++guilty(p6). ++guilty(p7). ++guilty(p8). ++guilty(p9). ++guilty(p10). +/*+guilty(p11). ++guilty(p12). ++guilty(p13). ++guilty(p14). ++guilty(p15). ++guilty(p16). ++guilty(p17). ++guilty(p18). ++guilty(p19). ++guilty(p20). +/*+guilty(p21). ++guilty(p22). ++guilty(p23). ++guilty(p24). ++guilty(p25). ++guilty(p26). ++guilty(p27). ++guilty(p28). ++guilty(p29). +/*+guilty(p30). ++guilty(p31). ++guilty(p32). ++guilty(p33). ++guilty(p34). ++guilty(p35). ++guilty(p36). ++guilty(p37). ++guilty(p38). ++guilty(p39). ++guilty(p40). ++guilty(p41). ++guilty(p42). ++guilty(p43). ++guilty(p44). ++guilty(p45). ++guilty(p46). ++guilty(p47). ++guilty(p48). ++guilty(p49). ++guilty(p50). ++guilty(p51). ++guilty(p52). ++guilty(p53). ++guilty(p54). ++guilty(p55). ++guilty(p56). ++guilty(p57). ++guilty(p58). ++guilty(p59). ++guilty(p60). ++guilty(p61). ++guilty(p62). ++guilty(p63). ++guilty(p64). ++guilty(p65). ++guilty(p66). ++guilty(p67). ++guilty(p68). ++guilty(p69). ++guilty(p70). ++guilty(p71). ++guilty(p72). ++guilty(p73). ++guilty(p74). ++guilty(p75). ++guilty(p76). ++guilty(p77). ++guilty(p78). ++guilty(p79). ++guilty(p80). ++guilty(p81). ++guilty(p82). ++guilty(p83). ++guilty(p84). ++guilty(p85). ++guilty(p86). ++guilty(p87). ++guilty(p88). ++guilty(p89).*/ ++guilty(p90). ++guilty(p91). ++guilty(p92). ++guilty(p93). ++guilty(p94). ++guilty(p95). ++guilty(p96). ++guilty(p97). ++guilty(p98). ++guilty(p99). ++guilty(p100). ++guilty(p101). +-guilty(n0). +-guilty(n1). +-guilty(n2). +-guilty(n3). +//-guilty(n4). +-guilty(n5). +-guilty(n6). +-guilty(n7). +-guilty(n8). +-guilty(n9). +-guilty(n10). +/*-guilty(n11). +-guilty(n12). +-guilty(n13). +-guilty(n14). +-guilty(n15). +-guilty(n16). +-guilty(n17). +-guilty(n18). +-guilty(n19). +/*-guilty(n20). +-guilty(n21). +-guilty(n22). +-guilty(n23). +-guilty(n24). +-guilty(n25). +-guilty(n26). +-guilty(n27). +-guilty(n28). +-guilty(n29). +/*-guilty(n30). +-guilty(n31). +-guilty(n32). +-guilty(n33). +-guilty(n34). +-guilty(n35). +-guilty(n36). +-guilty(n37). +-guilty(n38). +-guilty(n39). +-guilty(n40). +-guilty(n41). +-guilty(n42). +-guilty(n43). +-guilty(n44). +-guilty(n45). +-guilty(n46). +-guilty(n47). +-guilty(n48). +-guilty(n49). +-guilty(n50). +-guilty(n51). +-guilty(n52). +-guilty(n53). +-guilty(n54). +-guilty(n55). +-guilty(n56). +-guilty(n57). +-guilty(n58). +-guilty(n59). +-guilty(n60). +-guilty(n61). +-guilty(n62). +-guilty(n63). +-guilty(n64). +-guilty(n65). +-guilty(n66). +-guilty(n67). +-guilty(n68). +-guilty(n69). +-guilty(n70). +-guilty(n71). +-guilty(n72). +-guilty(n73). +-guilty(n74). +-guilty(n75). +-guilty(n76). +-guilty(n77). +-guilty(n78). +-guilty(n79). +-guilty(n80). +-guilty(n81). +-guilty(n82). +-guilty(n83). +-guilty(n84). +-guilty(n85). +-guilty(n86). +-guilty(n87). +-guilty(n88). +-guilty(n89). 10*/ +-guilty(n90). +-guilty(n91). +-guilty(n92). +-guilty(n93). +-guilty(n94). +-guilty(n95). +-guilty(n96). +-guilty(n97). +-guilty(n98). +-guilty(n99). Deleted: trunk/examples/moral_reasoner/moral_complex_owl.conf =================================================================== --- trunk/examples/moral_reasoner/moral_complex_owl.conf 2007-08-29 14:00:20 UTC (rev 107) +++ trunk/examples/moral_reasoner/moral_complex_owl.conf 2007-08-29 14:15:05 UTC (rev 108) @@ -1,246 +0,0 @@ - /*********************** - solution should be: - guilty = NOT justified AND (responsible OR vicarious) - - Found: ((NOT justified) AND (vicarious OR (negligent_c AND responsible))) - - - - Examples: - 23 positive - 20 negative - - - ***********************/ - - /** settings **/ - // reasoner settings - reasoner = dig; - digReasonerURL = "http://localhost:8081"; - useRetrievalForClassification = true; - refinement.useDIGMultiInstanceChecks = twoChecks; - - // algorithm settings - algorithm = refinement; - refinement.horizontalExpansionFactor = 0.6; - refinement.quiet = false; - refinement.useTooWeakList = true; - - // search tree protocol - refinement.writeSearchTree = false; - refinement.searchTreeFile = "searchTree.txt"; - - // control output - showIndividuals = false; - showConcepts = true; - showRoles = true; - showInternalKB = false; -showSubsumptionHierarchy = true; -//export("moral_complex.owl"); - - import("moral_43instances_complex.owl"); - //hidePrefix("http://localhost/foo#"); -/** background knowledge **/ - -+guilty(p0). -+guilty(p1). -+guilty(p2). -+guilty(p3). -+guilty(p4). -+guilty(p5). -+guilty(p6). -+guilty(p7). -+guilty(p8). -+guilty(p9). -+guilty(p10). -/*+guilty(p11). -+guilty(p12). -+guilty(p13). -+guilty(p14). -+guilty(p15). -+guilty(p16). -+guilty(p17). -+guilty(p18). -+guilty(p19). -+guilty(p20). -/*+guilty(p21). -+guilty(p22). -+guilty(p23). -+guilty(p24). -+guilty(p25). -+guilty(p26). -+guilty(p27). -+guilty(p28). -+guilty(p29). -/*+guilty(p30). -+guilty(p31). -+guilty(p32). -+guilty(p33). -+guilty(p34). -+guilty(p35). -+guilty(p36). -+guilty(p37). -+guilty(p38). -+guilty(p39). -+guilty(p40). -+guilty(p41). -+guilty(p42). -+guilty(p43). -+guilty(p44). -+guilty(p45). -+guilty(p46). -+guilty(p47). -+guilty(p48). -+guilty(p49). -+guilty(p50). -+guilty(p51). -+guilty(p52). -+guilty(p53). -+guilty(p54). -+guilty(p55). -+guilty(p56). -+guilty(p57). -+guilty(p58). -+guilty(p59). -+guilty(p60). -+guilty(p61). -+guilty(p62). -+guilty(p63). -+guilty(p64). -+guilty(p65). -+guilty(p66). -+guilty(p67). -+guilty(p68). -+guilty(p69). -+guilty(p70). -+guilty(p71). -+guilty(p72). -+guilty(p73). -+guilty(p74). -+guilty(p75). -+guilty(p76). -+guilty(p77). -+guilty(p78). -+guilty(p79). -+guilty(p80). -+guilty(p81). -+guilty(p82). -+guilty(p83). -+guilty(p84). -+guilty(p85). -+guilty(p86). -+guilty(p87). -+guilty(p88). -+guilty(p89).*/ -+guilty(p90). -+guilty(p91). -+guilty(p92). -+guilty(p93). -+guilty(p94). -+guilty(p95). -+guilty(p96). -+guilty(p97). -+guilty(p98). -+guilty(p99). -+guilty(p100). -+guilty(p101). --guilty(n0). --guilty(n1). --guilty(n2). --guilty(n3). -//-guilty(n4). --guilty(n5). --guilty(n6). --guilty(n7). --guilty(n8). --guilty(n9). --guilty(n10). -/*-guilty(n11). --guilty(n12). --guilty(n13). --guilty(n14). --guilty(n15). --guilty(n16). --guilty(n17). --guilty(n18). --guilty(n19). -/*-guilty(n20). --guilty(n21). --guilty(n22). --guilty(n23). --guilty(n24). --guilty(n25). --guilty(n26). --guilty(n27). --guilty(n28). --guilty(n29). -/*-guilty(n30). --guilty(n31). --guilty(n32). --guilty(n33). --guilty(n34). --guilty(n35). --guilty(n36). --guilty(n37). --guilty(n38). --guilty(n39). --guilty(n40). --guilty(n41). --guilty(n42). --guilty(n43). --guilty(n44). --guilty(n45). --guilty(n46). --guilty(n47). --guilty(n48). --guilty(n49). --guilty(n50). --guilty(n51). --guilty(n52). --guilty(n53). --guilty(n54). --guilty(n55). --guilty(n56). --guilty(n57). --guilty(n58). --guilty(n59). --guilty(n60). --guilty(n61). --guilty(n62). --guilty(n63). --guilty(n64). --guilty(n65). --guilty(n66). --guilty(n67). --guilty(n68). --guilty(n69). --guilty(n70). --guilty(n71). --guilty(n72). --guilty(n73). --guilty(n74). --guilty(n75). --guilty(n76). --guilty(n77). --guilty(n78). --guilty(n79). --guilty(n80). --guilty(n81). --guilty(n82). --guilty(n83). --guilty(n84). --guilty(n85). --guilty(n86). --guilty(n87). --guilty(n88). --guilty(n89).*/ --guilty(n90). --guilty(n91). --guilty(n92). --guilty(n93). --guilty(n94). --guilty(n95). --guilty(n96). --guilty(n97). --guilty(n98). --guilty(n99). Deleted: trunk/examples/moral_reasoner/moral_owl.conf =================================================================== --- trunk/examples/moral_reasoner/moral_owl.conf 2007-08-29 14:00:20 UTC (rev 107) +++ trunk/examples/moral_reasoner/moral_owl.conf 2007-08-29 14:15:05 UTC (rev 108) @@ -1,243 +0,0 @@ - /*********************** - solution should be: - guilty = (blameworthy OR vicarious_blame ). - - - Examples: - 23 positive - 20 negative - - ***********************/ - - /** settings **/ - // reasoner settings - reasoner = dig; - digReasonerURL = "http://localhost:8081"; - useRetrievalForClassification = true; - refinement.useDIGMultiInstanceChecks = twoChecks; - - // algorithm settings - algorithm = refinement; - refinement.horizontalExpansionFactor = 0.6; - refinement.quiet = false; - refinement.useTooWeakList = true; - - // search tree protocol - refinement.writeSearchTree = false; - refinement.searchTreeFile = "searchTree.txt"; - - // control output - showIndividuals = false; - showConcepts = true; - showRoles = true; - showInternalKB = false; -showSubsumptionHierarchy = true; -import("moral.owl"); -//hidePrefix("http://localhost/foo#"); - -/** background knowledge **/ - - - -+guilty(p0). -+guilty(p1). -+guilty(p2). -+guilty(p3). -+guilty(p4). -+guilty(p5). -+guilty(p6). -+guilty(p7). -+guilty(p8). -+guilty(p9). -+guilty(p10). -/*+guilty(p11). -+guilty(p12). -+guilty(p13). -+guilty(p14). -+guilty(p15). -+guilty(p16). -+guilty(p17). -+guilty(p18). -+guilty(p19). -+guilty(p20). -/*+guilty(p21). -+guilty(p22). -+guilty(p23). -+guilty(p24). -+guilty(p25). -+guilty(p26). -+guilty(p27). -+guilty(p28). -+guilty(p29). -/*+guilty(p30). -+guilty(p31). -+guilty(p32). -+guilty(p33). -+guilty(p34). -+guilty(p35). -+guilty(p36). -+guilty(p37). -+guilty(p38). -+guilty(p39). -+guilty(p40). -+guilty(p41). -+guilty(p42). -+guilty(p43). -+guilty(p44). -+guilty(p45). -+guilty(p46). -+guilty(p47). -+guilty(p48). -+guilty(p49). -+guilty(p50). -+guilty(p51). -+guilty(p52). -+guilty(p53). -+guilty(p54). -+guilty(p55). -+guilty(p56). -+guilty(p57). -+guilty(p58). -+guilty(p59). -+guilty(p60). -+guilty(p61). -+guilty(p62). -+guilty(p63). -+guilty(p64). -+guilty(p65). -+guilty(p66). -+guilty(p67). -+guilty(p68). -+guilty(p69). -+guilty(p70). -+guilty(p71). -+guilty(p72). -+guilty(p73). -+guilty(p74). -+guilty(p75). -+guilty(p76). -+guilty(p77). -+guilty(p78). -+guilty(p79). -+guilty(p80). -+guilty(p81). -+guilty(p82). -+guilty(p83). -+guilty(p84). -+guilty(p85). -+guilty(p86). -+guilty(p87). -+guilty(p88). -+guilty(p89).*/ -+guilty(p90). -+guilty(p91). -+guilty(p92). -+guilty(p93). -+guilty(p94). -+guilty(p95). -+guilty(p96). -+guilty(p97). -+guilty(p98). -+guilty(p99). -+guilty(p100). -+guilty(p101). --guilty(n0). --guilty(n1). --guilty(n2). --guilty(n3). -//-guilty(n4). --guilty(n5). --guilty(n6). --guilty(n7). --guilty(n8). --guilty(n9). --guilty(n10). -/*-guilty(n11). --guilty(n12). --guilty(n13). --guilty(n14). --guilty(n15). --guilty(n16). --guilty(n17). --guilty(n18). --guilty(n19). -/*-guilty(n20). --guilty(n21). --guilty(n22). --guilty(n23). --guilty(n24). --guilty(n25). --guilty(n26). --guilty(n27). --guilty(n28). --guilty(n29). -/*-guilty(n30). --guilty(n31). --guilty(n32). --guilty(n33). --guilty(n34). --guilty(n35). --guilty(n36). --guilty(n37). --guilty(n38). --guilty(n39). --guilty(n40). --guilty(n41). --guilty(n42). --guilty(n43). --guilty(n44). --guilty(n45). --guilty(n46). --guilty(n47). --guilty(n48). --guilty(n49). --guilty(n50). --guilty(n51). --guilty(n52). --guilty(n53). --guilty(n54). --guilty(n55). --guilty(n56). --guilty(n57). --guilty(n58). --guilty(n59). --guilty(n60). --guilty(n61). --guilty(n62). --guilty(n63). --guilty(n64). --guilty(n65). --guilty(n66). --guilty(n67). --guilty(n68). --guilty(n69). --guilty(n70). --guilty(n71). --guilty(n72). --guilty(n73). --guilty(n74). --guilty(n75). --guilty(n76). --guilty(n77). --guilty(n78). --guilty(n79). --guilty(n80). --guilty(n81). --guilty(n82). --guilty(n83). --guilty(n84). --guilty(n85). --guilty(n86). --guilty(n87). --guilty(n88). --guilty(n89). 10*/ --guilty(n90). --guilty(n91). --guilty(n92). --guilty(n93). --guilty(n94). --guilty(n95). --guilty(n96). --guilty(n97). --guilty(n98). --guilty(n99). This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-29 14:00:22
|
Revision: 107 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=107&view=rev Author: jenslehmann Date: 2007-08-29 07:00:20 -0700 (Wed, 29 Aug 2007) Log Message: ----------- some renamings in moral reasoner example Added Paths: ----------- trunk/examples/moral_reasoner/README trunk/examples/moral_reasoner/moral.owl trunk/examples/moral_reasoner/moral_43examples.conf trunk/examples/moral_reasoner/moral_43examples_complex.conf trunk/examples/moral_reasoner/moral_43instances.owl trunk/examples/moral_reasoner/moral_43instances_complex.owl trunk/examples/moral_reasoner/moral_complex_owl.conf trunk/examples/moral_reasoner/moral_owl.conf Removed Paths: ------------- trunk/examples/moral_reasoner/moral_complete.owl trunk/examples/moral_reasoner/moral_final_43_examples.conf trunk/examples/moral_reasoner/moral_final_LONG_43_examples.conf trunk/examples/moral_reasoner/moral_final_LONG_OWL.conf trunk/examples/moral_reasoner/moral_final_OWL.conf trunk/examples/moral_reasoner/moral_small.owl trunk/examples/moral_reasoner/moral_small_LONG.owl Added: trunk/examples/moral_reasoner/README =================================================================== --- trunk/examples/moral_reasoner/README (rev 0) +++ trunk/examples/moral_reasoner/README 2007-08-29 14:00:20 UTC (rev 107) @@ -0,0 +1,17 @@ +Moral Reasoner Examples +======================= + +Taken from http://mlearn.ics.uci.edu/databases/moral-reasoner/. + +Explanations for the files in this directory: + +OWL-files: + - "43instances" means that the number of instances has been reduced to 43 + from the original example + - "complex" means that a definition has been left out + +Conf-files: + - "43examples" means that these learning examples do not use all examples but + just 43 + - "owl" means that these examples read the corresponding OWL files (instead + of using internal Syntax in conf files) Copied: trunk/examples/moral_reasoner/moral.owl (from rev 106, trunk/examples/moral_reasoner/moral_complete.owl) =================================================================== --- trunk/examples/moral_reasoner/moral.owl (rev 0) +++ trunk/examples/moral_reasoner/moral.owl 2007-08-29 14:00:20 UTC (rev 107) @@ -0,0 +1,16978 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!DOCTYPE rdf:RDF [ + <!ENTITY owl 'http://www.w3.org/2002/07/owl#'> +]> + +<rdf:RDF + xml:base="http://localhost/foo" + xmlns:a="http://localhost/foo#" + xmlns:owl="http://www.w3.org/2002/07/owl#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"> + +<owl:Ontology rdf:about=""/> + +<owl:Class rdf:ID="blameworthy"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#responsible"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Restriction> + <owl:onProperty rdf:resource="#severity_harm"/> + <owl:someValuesFrom> + <owl:Restriction> + <owl:onProperty rdf:resource="#greater"/> + <owl:someValuesFrom rdf:resource="&owl;Thing"/> + </owl:Restriction> + </owl:someValuesFrom> + </owl:Restriction> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Restriction> + <owl:onProperty rdf:resource="#benefit_victim"/> + <owl:someValuesFrom> + <owl:Restriction> + <owl:onProperty rdf:resource="#smaller"/> + <owl:someValuesFrom rdf:resource="&owl;Thing"/> + </owl:Restriction> + </owl:someValuesFrom> + </owl:Restriction> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#justified"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="cause"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#produce_harm"/> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#necessary_for_harm"/> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:unionOf> + </owl:Class> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="foreseeable"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#high_foreseeability"/> + <owl:Class rdf:about="#low_foreseeability"/> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="guilty"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#blameworthy"/> + <owl:Class rdf:about="#vicarious_blame"/> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="intend_c"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#strong_intend"/> + <owl:Class rdf:about="#weak_intend"/> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="intend_mental_state"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#reckless_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#negligent_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#neither_mental_state"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="intervening_cause"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#intervening_contribution"/> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="justified"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#achieve_goal"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#goal_outweigh_harm"/> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="negligent_c"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#negligent_mental_state"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#strong_intend"/> + </owl:complementOf> + </owl:Class> + <owl:Class rdf:about="#low_foreseeability"/> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="negligent_mental_state"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#reckless_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intend_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#neither_mental_state"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="neither_mental_state"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#reckless_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#negligent_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intend_mental_state"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="notaccident"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#intend_c"/> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#reckless_c"/> + <owl:Class rdf:about="#negligent_c"/> + </owl:unionOf> + </owl:Class> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="reckless_c"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#reckless_mental_state"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#high_foreseeability"/> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#strong_intend"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="reckless_mental_state"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intend_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#negligent_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#neither_mental_state"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="responsible"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#cause"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#notaccident"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#voluntary"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#foreseeable"/> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_cause"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="strong_intend"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#intend_mental_state"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#plan_known"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#plan_include_harm"/> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="vicarious"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#someone_else_cause_harm"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#outrank_perpetrator"/> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="vicarious_blame"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#vicarious"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Restriction> + <owl:onProperty rdf:resource="#severity_harm"/> + <owl:someValuesFrom> + <owl:Restriction> + <owl:onProperty rdf:resource="#greater"/> + <owl:someValuesFrom rdf:resource="&owl;Thing"/> + </owl:Restriction> + </owl:someValuesFrom> + </owl:Restriction> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Restriction> + <owl:onProperty rdf:resource="#benefit_victim"/> + <owl:someValuesFrom> + <owl:Restriction> + <owl:onProperty rdf:resource="#smaller"/> + <owl:someValuesFrom rdf:resource="&owl;Thing"/> + </owl:Restriction> + </owl:someValuesFrom> + </owl:Restriction> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#justified"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="voluntary"> + <owl:equivalentClass> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="weak_intend"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#monitor"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#benefit_protagonist"/> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:unionOf> + </owl:Class> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#negligent_c"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#reckless_c"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<a:achieve_goal rdf:ID="n0"> + <rdf:type rdf:resource="#control_perpetrator"/> + <rdf:type rdf:resource="#external_cause"/> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#harm_caused_as_planned"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#reckless_mental_state"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_protagonist"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_contribution"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#monitor"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#outrank_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v0"/> + <a:severity_harm rdf:resource="#v0"/> +</a:achieve_goal> + +<a:control_perpetrator rdf:ID="n1"> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#low_foreseeability"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#neither_mental_state"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_protagonist"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#outrank_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_include_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v1"/> + <a:severity_harm rdf:resource="#v0"/> +</a:control_perpetrator> + +<a:achieve_goal rdf:ID="n10"> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#harm_caused_as_planned"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#negligent_mental_state"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#someone_else_cause_harm"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_protagonist"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_contribution"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#outrank_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_include_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v0"/> + <a:severity_harm rdf:resource="#v0"/> +</a:achieve_goal> + +<a:benefit_protagonist rdf:ID="n11"> + <rdf:type rdf:resource="#careful"/> + <rdf:type rdf:resource="#control_perpetrator"/> + <rdf:type rdf:resource="#external_force"/> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#negligent_mental_state"/> + <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#someone_else_cause_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_outweigh_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_contribution"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#necessary_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#outrank_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_include_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_known"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v0"/> + <a:severity_harm rdf:resource="#v1"/> +</a:benefit_protagonist> + +<a:external_cause rdf:ID="n12"> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#low_foreseeability"/> + <rdf:type rdf:resource="#negligent_mental_state"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#produce_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_protagonist"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#monitor"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#necessary_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_include_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v1"/> + <a:severity_harm rdf:resource="#v0"/> +</a:external_cause> + +<a:achieve_goal rdf:ID="n13"> + <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#control_perpetrator"/> + <rdf:type rdf:resource="#external_force"/> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#low_foreseeability"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#reckless_mental_state"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#outrank_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_known"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v0"/> + <a:severity_harm rdf:resource="#v1"/> +</a:achieve_goal> + +<a:achieve_goal rdf:ID="n14"> + <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#careful"/> + <rdf:type rdf:resource="#control_perpetrator"/> + <rdf:type rdf:resource="#external_cause"/> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#reckless_mental_state"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_contribution"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#monitor"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v1"/> + <a:severity_harm rdf:resource="#v1"/> +</a:achieve_goal> + +<a:benefit_protagonist rdf:ID="n15"> + <rdf:type rdf:resource="#careful"/> + <rdf:type rdf:resource="#control_perpetrator"/> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#reckless_mental_state"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_outweigh_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_contribution"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#monitor"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#necessary_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v0"/> + <a:severity_harm rdf:resource="#v0"/> +</a:benefit_protagonist> + +<a:benefit_protagonist rdf:ID="n16"> + <rdf:type rdf:resource="#external_cause"/> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#harm_caused_as_planned"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#neither_mental_state"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#someone_else_cause_harm"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#monitor"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#necessary_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#outrank_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_known"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v0"/> + <a:severity_harm rdf:resource="#v0"/> +</a:benefit_protagonist> + +<a:careful rdf:ID="n17"> + <rdf:type rdf:resource="#external_cause"/> + <rdf:type rdf:resource="#external_force"/> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#harm_caused_as_planned"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#low_foreseeability"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#negligent_mental_state"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_protagonist"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#necessary_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#outrank_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v0"/> + <a:severity_harm rdf:resource="#v1"/> +</a:careful> + +<a:control_perpetrator rdf:ID="n18"> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#negligent_mental_state"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_protagonist"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#monitor"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#necessary_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v1"/> + <a:severity_harm rdf:resource="#v1"/> +</a:control_perpetrator> + +<a:achieve_goal rdf:ID="n19"> + <rdf:type rdf:resource="#careful"/> + <rdf:type rdf:resource="#control_perpetrator"/> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#low_foreseeability"/> + <rdf:type rdf:resource="#negligent_mental_state"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#someone_else_cause_harm"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_protagonist"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_outweigh_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#monitor"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#necessary_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v1"/> + <a:severity_harm rdf:resource="#v0"/> +</a:achieve_goal> + +<a:benefit_protagonist rdf:ID="n2"> + <rdf:type rdf:resource="#careful"/> + <rdf:type rdf:resource="#external_cause"/> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#harm_caused_as_planned"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#low_foreseeability"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#neither_mental_state"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#produce_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v1"/> + <a:severity_harm rdf:resource="#v1"/> +</a:benefit_protagonist> + +<a:achieve_goal rdf:ID="n20"> + <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#careful"/> + <rdf:type rdf:resource="#harm_caused_as_planned"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#negligent_mental_state"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_outweigh_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_contribution"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_include_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v1"/> + <a:severity_harm rdf:resource="#v1"/> +</a:achieve_goal> + +<a:achieve_goal rdf:ID="n21"> + <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#external_cause"/> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#harm_caused_as_planned"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#neither_mental_state"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#someone_else_cause_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_outweigh_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_contribution"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#monitor"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#necessary_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:compl... [truncated message content] |
From: <jen...@us...> - 2007-08-29 13:42:18
|
Revision: 106 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=106&view=rev Author: jenslehmann Date: 2007-08-29 06:40:11 -0700 (Wed, 29 Aug 2007) Log Message: ----------- statistics script (working version) Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/parser/DLLearner.java trunk/src/dl-learner/org/dllearner/parser/dllearner.jj trunk/src/dl-learner/org/dllearner/parser/dllearner.jjt trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java trunk/src/dl-learner/org/dllearner/utilities/Stat.java Modified: trunk/src/dl-learner/org/dllearner/parser/DLLearner.java =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/DLLearner.java 2007-08-29 13:38:23 UTC (rev 105) +++ trunk/src/dl-learner/org/dllearner/parser/DLLearner.java 2007-08-29 13:40:11 UTC (rev 106) @@ -148,6 +148,13 @@ } public static void parseFile(String filename) { + + positiveExamples = new TreeMap<AtomicConcept,SortedSet<Individual>>(conceptComparator); + negativeExamples = new TreeMap<AtomicConcept,SortedSet<Individual>>(conceptComparator); + confOptions = new LinkedList<ConfigurationOption>(); + functionCalls = new LinkedList<List<String>>(); + kb = new KB(); + try { if(constructorCalled) DLLearner.ReInit(new FileInputStream(filename)); @@ -1577,25 +1584,6 @@ finally { jj_save(11, xla); } } - static final private boolean jj_3R_18() { - if (jj_3R_12()) return true; - return false; - } - - static final private boolean jj_3R_35() { - if (jj_3R_49()) return true; - if (jj_3R_22()) return true; - if (jj_3R_17()) return true; - if (jj_scan_token(COMMAND_END)) return true; - if (jj_3R_14()) return true; - return false; - } - - static final private boolean jj_3R_26() { - if (jj_3R_4()) return true; - return false; - } - static final private boolean jj_3R_34() { if (jj_3R_39()) return true; if (jj_3R_14()) return true; @@ -2028,6 +2016,25 @@ return false; } + static final private boolean jj_3R_18() { + if (jj_3R_12()) return true; + return false; + } + + static final private boolean jj_3R_35() { + if (jj_3R_49()) return true; + if (jj_3R_22()) return true; + if (jj_3R_17()) return true; + if (jj_scan_token(COMMAND_END)) return true; + if (jj_3R_14()) return true; + return false; + } + + static final private boolean jj_3R_26() { + if (jj_3R_4()) return true; + return false; + } + static private boolean jj_initialized_once = false; static public DLLearnerTokenManager token_source; static SimpleCharStream jj_input_stream; Modified: trunk/src/dl-learner/org/dllearner/parser/dllearner.jj =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/dllearner.jj 2007-08-29 13:38:23 UTC (rev 105) +++ trunk/src/dl-learner/org/dllearner/parser/dllearner.jj 2007-08-29 13:40:11 UTC (rev 106) @@ -166,6 +166,13 @@ } public static void parseFile(String filename) { + + positiveExamples = new TreeMap<AtomicConcept,SortedSet<Individual>>(conceptComparator); + negativeExamples = new TreeMap<AtomicConcept,SortedSet<Individual>>(conceptComparator); + confOptions = new LinkedList<ConfigurationOption>(); + functionCalls = new LinkedList<List<String>>(); + kb = new KB(); + try { if(constructorCalled) DLLearner.ReInit(new FileInputStream(filename)); Modified: trunk/src/dl-learner/org/dllearner/parser/dllearner.jjt =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/dllearner.jjt 2007-08-29 13:38:23 UTC (rev 105) +++ trunk/src/dl-learner/org/dllearner/parser/dllearner.jjt 2007-08-29 13:40:11 UTC (rev 106) @@ -162,6 +162,13 @@ } public static void parseFile(String filename) { + + positiveExamples = new TreeMap<AtomicConcept,SortedSet<Individual>>(conceptComparator); + negativeExamples = new TreeMap<AtomicConcept,SortedSet<Individual>>(conceptComparator); + confOptions = new LinkedList<ConfigurationOption>(); + functionCalls = new LinkedList<List<String>>(); + kb = new KB(); + try { if(constructorCalled) DLLearner.ReInit(new FileInputStream(filename)); Modified: trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java =================================================================== --- trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java 2007-08-29 13:38:23 UTC (rev 105) +++ trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java 2007-08-29 13:40:11 UTC (rev 106) @@ -99,11 +99,13 @@ String gnuplotBaseDir = "log/gnuplot/"; String statBaseDir = "log/stat/"; - File[] confFiles = new File[1]; - confFiles[0] = new File(exampleBaseDir + "trains", "trains_owl.conf"); + File[] confFiles = new File[2]; + confFiles[0] = new File(exampleBaseDir + "trains", "trains_owl.conf"); + confFiles[1] = new File(exampleBaseDir, "father2.conf"); - String[] examples = new String[1]; + String[] examples = new String[2]; examples[0] = "trains"; + examples[1] = "father"; String[] algorithms = new String[3]; algorithms[0] = "refinement"; @@ -151,77 +153,89 @@ statString += "example: " + examples[exampleNr] + "\n\n"; for(int algorithmNr=0; algorithmNr < algorithms.length; algorithmNr++) { - - // create reasoner (this has to be done in this inner loop to - // ensure that none of the algorithm benefits from e.g. caching - // of previous reasoning requests - Reasoner reasoner = Main.createReasoner(new KB(), imports); - ReasoningService rs = new ReasoningService(reasoner); + + Stat classification = new Stat(); + Stat length = new Stat(); + Stat runtime = new Stat(); - // prepare reasoner for using subsumption and role hierarchy - // TODO: currently, it is a small unfairness that each algorithm - // uses the same reasoning object (e.g. the second algorithm may - // have a small advantage if the reasoner cached reasoning requests - // of the first algorithm) - Main.autoDetectConceptsAndRoles(rs); - try { - reasoner.prepareSubsumptionHierarchy(); - reasoner.prepareRoleHierarchy(); - // improving the subsumption hierarchy makes only sense - // for the refinement based algorithm - if(algorithmNr==0) - reasoner.getSubsumptionHierarchy().improveSubsumptionHierarchy(); - } catch (ReasoningMethodUnsupportedException e) { - e.printStackTrace(); - } + for(int runNr=0; runNr < algorithmRuns[algorithmNr]; runNr++) { + + // create reasoner (this has to be done in this inner loop to + // ensure that none of the algorithm benefits from e.g. caching + // of previous reasoning requests + Reasoner reasoner = Main.createReasoner(new KB(), imports); + ReasoningService rs = new ReasoningService(reasoner); + + // prepare reasoner for using subsumption and role hierarchy + // TODO: currently, it is a small unfairness that each algorithm + // uses the same reasoning object (e.g. the second algorithm may + // have a small advantage if the reasoner cached reasoning requests + // of the first algorithm) + Main.autoDetectConceptsAndRoles(rs); + try { + reasoner.prepareSubsumptionHierarchy(); + reasoner.prepareRoleHierarchy(); + // improving the subsumption hierarchy makes only sense + // for the refinement based algorithm + if(algorithmNr==0) + reasoner.getSubsumptionHierarchy().improveSubsumptionHierarchy(); + } catch (ReasoningMethodUnsupportedException e) { + e.printStackTrace(); + } + + // create learning problem + LearningProblem learningProblem = new LearningProblem(rs, positiveExamples, negativeExamples); + + LearningAlgorithm learningAlgorithm = null; + if(algorithmNr==0) { + Config.algorithm = Algorithm.REFINEMENT; + learningAlgorithm = new ROLearner(learningProblem); + } else if(algorithmNr==1) { + Config.algorithm = Algorithm.GP; + Config.GP.numberOfIndividuals = 21; + Config.GP.algorithmType = GP.AlgorithmType.GENERATIONAL; + Config.GP.refinementProbability = 0; + Config.GP.mutationProbability = 0.02; + Config.GP.crossoverProbability = 0.8; + Config.GP.hillClimbingProbability = 0; + learningAlgorithm = new GP(learningProblem); + } else if(algorithmNr==2) { + Config.algorithm = Algorithm.HYBRID_GP; + Config.GP.numberOfIndividuals = 11; + Config.GP.algorithmType = GP.AlgorithmType.GENERATIONAL; + Config.GP.refinementProbability = 0.65; + Config.GP.mutationProbability = 0.02; + Config.GP.crossoverProbability = 0.2; + Config.GP.hillClimbingProbability = 0; + learningAlgorithm = new GP(learningProblem); + } + + rs.resetStatistics(); + long algorithmStartTime = System.nanoTime(); + learningAlgorithm.start(); + long algorithmTime = System.nanoTime() - algorithmStartTime; + // long algorithmTimeSeconds = algorithmTime / 1000000000; + + int conceptLength = learningAlgorithm.getBestSolution().getLength(); + Score bestScore = learningAlgorithm.getSolutionScore(); + int misClassifications = bestScore.getCoveredNegatives().size() + + bestScore.getNotCoveredPositives().size(); + double classificationRatePercent = 100 * ((nrOfExamples - misClassifications) / (double) nrOfExamples); + + classification.addNumber(classificationRatePercent); + length.addNumber(conceptLength); + runtime.addNumber(algorithmTime); + + // free knowledge base to avoid memory leaks + ((DIGReasoner) reasoner).releaseKB(); - // create learning problem - LearningProblem learningProblem = new LearningProblem(rs, positiveExamples, negativeExamples); + } - LearningAlgorithm learningAlgorithm = null; - if(algorithmNr==0) { - Config.algorithm = Algorithm.REFINEMENT; - learningAlgorithm = new ROLearner(learningProblem); - } else if(algorithmNr==1) { - Config.algorithm = Algorithm.GP; - Config.GP.numberOfIndividuals = 21; - Config.GP.algorithmType = GP.AlgorithmType.GENERATIONAL; - Config.GP.refinementProbability = 0; - Config.GP.mutationProbability = 0.02; - Config.GP.crossoverProbability = 0.8; - Config.GP.hillClimbingProbability = 0; - learningAlgorithm = new GP(learningProblem); - } else if(algorithmNr==2) { - Config.algorithm = Algorithm.HYBRID_GP; - Config.GP.numberOfIndividuals = 11; - Config.GP.algorithmType = GP.AlgorithmType.GENERATIONAL; - Config.GP.refinementProbability = 0.65; - Config.GP.mutationProbability = 0.02; - Config.GP.crossoverProbability = 0.2; - Config.GP.hillClimbingProbability = 0; - learningAlgorithm = new GP(learningProblem); - } - - rs.resetStatistics(); - long algorithmStartTime = System.nanoTime(); - learningAlgorithm.start(); - long algorithmTime = System.nanoTime() - algorithmStartTime; - // long algorithmTimeSeconds = algorithmTime / 1000000000; - - int conceptLength = learningAlgorithm.getBestSolution().getLength(); - Score bestScore = learningAlgorithm.getSolutionScore(); - int misClassifications = bestScore.getCoveredNegatives().size() - + bestScore.getNotCoveredPositives().size(); - double classificationRatePercent = 100 * ((nrOfExamples - misClassifications) / (double) nrOfExamples); - - statString += "algorithm: " + algorithms[algorithmNr] + "\n"; - statString += "classification: " + classificationRatePercent + "%\n"; - statString += "concept length: " + conceptLength + "\n"; - statString += "runtime: " + Helper.prettyPrintNanoSeconds(algorithmTime) + "s\n\n"; + statString += "algorithm: " + algorithms[algorithmNr] + " (runs: " + algorithmRuns[algorithmNr] + ")\n"; + statString += "classification: " + classification.getMean() + "% (standard deviation: " + classification.getStandardDeviation() + "%)\n"; + statString += "concept length: " + length.getMean() + " (standard deviation: " + length.getStandardDeviation() + ")\n"; + statString += "runtime: " + Helper.prettyPrintNanoSeconds(Math.round(runtime.getMean())) + " (standard deviation: " + Helper.prettyPrintNanoSeconds(Math.round(runtime.getStandardDeviation())) + ")\n\n"; - // free knowledge base to avoid memory leaks - ((DIGReasoner) reasoner).releaseKB(); - } } Modified: trunk/src/dl-learner/org/dllearner/utilities/Stat.java =================================================================== --- trunk/src/dl-learner/org/dllearner/utilities/Stat.java 2007-08-29 13:38:23 UTC (rev 105) +++ trunk/src/dl-learner/org/dllearner/utilities/Stat.java 2007-08-29 13:40:11 UTC (rev 106) @@ -1,3 +1,23 @@ +/** + * Copyright (C) 2007, Jens Lehmann + * + * This file is part of DL-Learner. + * + * DL-Learner is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * DL-Learner is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ + package org.dllearner.utilities; /** @@ -57,20 +77,21 @@ * * @return The stanard deviation of all numbers. */ - public double getStandardDeviation() { - // TODO: Standardabweichung ist anscheinend nicht korrekt, siehe - // http://de.wikipedia.org/wiki/Standardabweichung. Es muss N-1 verwendet - // werden. - /* - double mean = getMean(); - double tmp = squareSum / count - mean * mean; - if(tmp==0) - return 0; - else - return Math.sqrt(tmp); - */ - // korrekter Code nach http://de.wikipedia.org/wiki/Standardabweichung - return Math.sqrt((count*squareSum-sum*sum)/(count*(count-1))); + public double getStandardDeviation() { + if(count <= 1) + return 0.0; + + // formula from http://de.wikipedia.org/wiki/Standardabweichung + double val = (count*squareSum-sum*sum)/(count*(count-1)); + double root = Math.sqrt(val); + + // due to rounding errors it can happen that "val" is negative + // this means that the real value is 0 (or very close to it), so + // we return 0 + if(Double.isNaN(root)) + return 0.0; + else + return root; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ku...@us...> - 2007-08-29 13:38:26
|
Revision: 105 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=105&view=rev Author: kurzum Date: 2007-08-29 06:38:23 -0700 (Wed, 29 Aug 2007) Log Message: ----------- Added Paths: ----------- trunk/examples/moral_reasoner/moral_final_43_examples.conf trunk/examples/moral_reasoner/moral_final_LONG_43_examples.conf Added: trunk/examples/moral_reasoner/moral_final_43_examples.conf =================================================================== --- trunk/examples/moral_reasoner/moral_final_43_examples.conf (rev 0) +++ trunk/examples/moral_reasoner/moral_final_43_examples.conf 2007-08-29 13:38:23 UTC (rev 105) @@ -0,0 +1,5211 @@ + /*********************** + solution should be: + guilty = (blameworthy OR vicarious_blame ). + + + Examples: + 23 positive + 20 negative + + ***********************/ + + /** settings **/ + // reasoner settings + reasoner = dig; + digReasonerURL = "http://localhost:8081"; + useRetrievalForClassification = true; + refinement.useDIGMultiInstanceChecks = twoChecks; + + // algorithm settings + algorithm = refinement; + refinement.horizontalExpansionFactor = 0.6; + refinement.quiet = false; + refinement.useTooWeakList = true; + + // search tree protocol + refinement.writeSearchTree = false; + refinement.searchTreeFile = "searchTree.txt"; + + // control output + showIndividuals = false; + showConcepts = true; + showRoles = true; + showInternalKB = false; +showSubsumptionHierarchy = true; +//export("moral.owl"); + +/** background knowledge **/ + +"Number"(v0). +"Number"(v1). + +greater(v1,v0) . +smaller(v0,v1) . + +intend_mental_state = (NOT reckless_mental_state AND (NOT negligent_mental_state AND NOT neither_mental_state)). +reckless_mental_state = (NOT intend_mental_state AND (NOT negligent_mental_state AND NOT neither_mental_state)). +negligent_mental_state = (NOT reckless_mental_state AND (NOT intend_mental_state AND NOT neither_mental_state)). +neither_mental_state = (NOT reckless_mental_state AND (NOT negligent_mental_state AND NOT intend_mental_state)). + + + +cause = (produce_harm OR (necessary_for_harm OR sufficient_for_harm)). + + +responsible = ( cause AND + ( notaccident AND + (voluntary AND + (foreseeable AND + NOT intervening_cause)))). + + +notaccident = (intend_c OR (reckless_c OR negligent_c)). + + +foreseeable = (high_foreseeability OR low_foreseeability ). + + +// complement checked +reckless_c = ( reckless_mental_state OR + + ( NOT careful AND + ( high_foreseeability AND + NOT strong_intend + ))) . + + + +// complement checked +negligent_c = ( negligent_mental_state OR + ( NOT careful AND + ( NOT strong_intend AND + low_foreseeability + ))). + + + +intend_c = (strong_intend OR weak_intend). + + +// complement checked +strong_intend = ( intend_mental_state OR + + ( plan_known AND + ( plan_include_harm AND + harm_caused_as_planned)) + ). + + + + weak_intend = ( ( monitor OR + (benefit_protagonist AND + NOT external_cause )) + + AND + ( NOT negligent_c AND + NOT reckless_c) ). + + + + +voluntary = NOT external_force. + +// complement checked +intervening_cause = ( intervening_contribution AND + NOT foresee_intervention ). + + + +vicarious = ( someone_else_cause_harm AND + ( outrank_perpetrator AND + control_perpetrator )). + + +blameworthy = ( responsible AND + ( EXISTS severity_harm.EXISTS greater.TOP AND + ( EXISTS benefit_victim.EXISTS smaller.TOP AND + NOT justified ))). + + +vicarious_blame = ( vicarious AND + (EXISTS severity_harm.EXISTS greater.TOP AND + (EXISTS benefit_victim.EXISTS smaller.TOP AND + NOT justified ))). + +// complement checked +justified= + ( achieve_goal AND + ( goal_outweigh_harm AND + NOT goal_achieveable_less_harmful)). + +//guilty = (blameworthy OR vicarious_blame ). +/******************** + + + + + +/**Example**/ + +NOT sufficient_for_harm(p0). +produce_harm(p0). +plan_known(p0). +plan_include_harm(p0). +NOT someone_else_cause_harm(p0). +NOT outrank_perpetrator(p0). +monitor(p0). +harm_caused_as_planned(p0). +goal_outweigh_harm(p0). +NOT goal_achieveable_less_harmful(p0). +foresee_intervention(p0). +NOT external_cause(p0). +control_perpetrator(p0). +benefit_protagonist(p0). +careful(p0). +benefit_victim(p0,v0). +severity_harm(p0,v1). +NOT achieve_goal(p0). +NOT intervening_contribution(p0). +high_foreseeability(p0). +NOT external_force(p0). +negligent_mental_state(p0). +necessary_for_harm(p0). + +NOT produce_harm(p1). +NOT plan_known(p1). +NOT plan_include_harm(p1). +NOT someone_else_cause_harm(p1). +outrank_perpetrator(p1). +NOT necessary_for_harm(p1). +monitor(p1). +NOT intervening_contribution(p1). +harm_caused_as_planned(p1). +NOT goal_outweigh_harm(p1). +goal_achieveable_less_harmful(p1). +NOT external_cause(p1). +control_perpetrator(p1). +benefit_protagonist(p1). +NOT careful(p1). +benefit_victim(p1,v0). +severity_harm(p1,v1). +NOT achieve_goal(p1). +foresee_intervention(p1). +high_foreseeability(p1). +NOT external_force(p1). +negligent_mental_state(p1). +sufficient_for_harm(p1). + +sufficient_for_harm(p2). +NOT plan_known(p2). +NOT plan_include_harm(p2). +NOT someone_else_cause_harm(p2). +outrank_perpetrator(p2). +necessary_for_harm(p2). +monitor(p2). +harm_caused_as_planned(p2). +goal_outweigh_harm(p2). +NOT goal_achieveable_less_harmful(p2). +NOT foresee_intervention(p2). +external_cause(p2). +control_perpetrator(p2). +benefit_protagonist(p2). +NOT careful(p2). +benefit_victim(p2,v0). +severity_harm(p2,v1). +NOT achieve_goal(p2). +NOT intervening_contribution(p2). +high_foreseeability(p2). +NOT external_force(p2). +negligent_mental_state(p2). +produce_harm(p2). + +sufficient_for_harm(p3). +produce_harm(p3). +plan_known(p3). +plan_include_harm(p3). +NOT someone_else_cause_harm(p3). +outrank_perpetrator(p3). +monitor(p3). +NOT intervening_contribution(p3). +harm_caused_as_planned(p3). +goal_outweigh_harm(p3). +NOT external_cause(p3). +control_perpetrator(p3). +benefit_protagonist(p3). +NOT achieve_goal(p3). +NOT careful(p3). +benefit_victim(p3,v0). +severity_harm(p3,v1). +goal_achieveable_less_harmful(p3). +foresee_intervention(p3). +high_foreseeability(p3). +NOT external_force(p3). +negligent_mental_state(p3). +necessary_for_harm(p3). + +sufficient_for_harm(p4). +plan_known(p4). +NOT plan_include_harm(p4). +NOT someone_else_cause_harm(p4). +outrank_perpetrator(p4). +NOT necessary_for_harm(p4). +monitor(p4). +NOT intervening_contribution(p4). +NOT harm_caused_as_planned(p4). +NOT goal_achieveable_less_harmful(p4). +external_cause(p4). +NOT control_perpetrator(p4). +NOT benefit_protagonist(p4). +NOT achieve_goal(p4). +careful(p4). +benefit_victim(p4,v0). +severity_harm(p4,v1). +NOT goal_outweigh_harm(p4). +foresee_intervention(p4). +high_foreseeability(p4). +NOT external_force(p4). +negligent_mental_state(p4). +produce_harm(p4). + +NOT produce_harm(p5). +plan_known(p5). +NOT plan_include_harm(p5). +someone_else_cause_harm(p5). +NOT outrank_perpetrator(p5). +necessary_for_harm(p5). +monitor(p5). +harm_caused_as_planned(p5). +goal_outweigh_harm(p5). +foresee_intervention(p5). +NOT external_cause(p5). +control_perpetrator(p5). +NOT benefit_protagonist(p5). +NOT achieve_goal(p5). +careful(p5). +benefit_victim(p5,v0). +severity_harm(p5,v1). +goal_achieveable_less_harmful(p5). +NOT intervening_contribution(p5). +high_foreseeability(p5). +NOT external_force(p5). +negligent_mental_state(p5). +sufficient_for_harm(p5). + +sufficient_for_harm(p6). +plan_known(p6). +NOT plan_include_harm(p6). +NOT someone_else_cause_harm(p6). +NOT outrank_perpetrator(p6). +NOT necessary_for_harm(p6). +NOT monitor(p6). +NOT intervening_contribution(p6). +NOT harm_caused_as_planned(p6). +goal_outweigh_harm(p6). +external_cause(p6). +NOT control_perpetrator(p6). +benefit_protagonist(p6). +NOT achieve_goal(p6). +careful(p6). +benefit_victim(p6,v0). +severity_harm(p6,v1). +goal_achieveable_less_harmful(p6). +foresee_intervention(p6). +low_foreseeability(p6). +NOT external_force(p6). +negligent_mental_state(p6). +produce_harm(p6). + +produce_harm(p7). +plan_known(p7). +plan_include_harm(p7). +someone_else_cause_harm(p7). +NOT outrank_perpetrator(p7). +necessary_for_harm(p7). +monitor(p7). +intervening_contribution(p7). +harm_caused_as_planned(p7). +goal_outweigh_harm(p7). +goal_achieveable_less_harmful(p7). +NOT external_cause(p7). +NOT control_perpetrator(p7). +benefit_protagonist(p7). +NOT careful(p7). +benefit_victim(p7,v0). +severity_harm(p7,v1). +NOT achieve_goal(p7). +foresee_intervention(p7). +low_foreseeability(p7). +NOT external_force(p7). +negligent_mental_state(p7). +sufficient_for_harm(p7). + +NOT sufficient_for_harm(p8). +NOT produce_harm(p8). +NOT plan_known(p8). +NOT plan_include_harm(p8). +NOT someone_else_cause_harm(p8). +outrank_perpetrator(p8). +monitor(p8). +NOT harm_caused_as_planned(p8). +NOT goal_outweigh_harm(p8). +NOT goal_achieveable_less_harmful(p8). +foresee_intervention(p8). +external_cause(p8). +control_perpetrator(p8). +NOT benefit_protagonist(p8). +NOT careful(p8). +benefit_victim(p8,v0). +severity_harm(p8,v1). +NOT achieve_goal(p8). +NOT intervening_contribution(p8). +low_foreseeability(p8). +NOT external_force(p8). +negligent_mental_state(p8). +necessary_for_harm(p8). + +NOT sufficient_for_harm(p9). +produce_harm(p9). +NOT plan_known(p9). +plan_include_harm(p9). +someone_else_cause_harm(p9). +outrank_perpetrator(p9). +NOT monitor(p9). +NOT harm_caused_as_planned(p9). +NOT goal_outweigh_harm(p9). +NOT goal_achieveable_less_harmful(p9). +foresee_intervention(p9). +external_cause(p9). +control_perpetrator(p9). +NOT benefit_protagonist(p9). +NOT careful(p9). +benefit_victim(p9,v0). +severity_harm(p9,v1). +NOT achieve_goal(p9). +NOT intervening_contribution(p9). +low_foreseeability(p9). +NOT external_force(p9). +negligent_mental_state(p9). +necessary_for_harm(p9). + +sufficient_for_harm(p10). +NOT plan_known(p10). +plan_include_harm(p10). +NOT someone_else_cause_harm(p10). +outrank_perpetrator(p10). +necessary_for_harm(p10). +NOT monitor(p10). +NOT intervening_contribution(p10). +harm_caused_as_planned(p10). +NOT goal_achieveable_less_harmful(p10). +NOT external_cause(p10). +NOT control_perpetrator(p10). +benefit_protagonist(p10). +NOT achieve_goal(p10). +careful(p10). +benefit_victim(p10,v0). +severity_harm(p10,v1). +NOT goal_outweigh_harm(p10). +foresee_intervention(p10). +low_foreseeability(p10). +NOT external_force(p10). +negligent_mental_state(p10). +produce_harm(p10). + +/* +sufficient_for_harm(p11). +NOT plan_known(p11). +plan_include_harm(p11). +someone_else_cause_harm(p11). +outrank_perpetrator(p11). +NOT necessary_for_harm(p11). +monitor(p11). +NOT harm_caused_as_planned(p11). +NOT goal_outweigh_harm(p11). +foresee_intervention(p11). +NOT external_cause(p11). +NOT control_perpetrator(p11). +benefit_protagonist(p11). +NOT achieve_goal(p11). +NOT careful(p11). +benefit_victim(p11,v0). +severity_harm(p11,v1). +goal_achieveable_less_harmful(p11). +NOT intervening_contribution(p11). +low_foreseeability(p11). +NOT external_force(p11). +negligent_mental_state(p11). +produce_harm(p11). + +produce_harm(p12). +plan_known(p12). +NOT plan_include_harm(p12). +someone_else_cause_harm(p12). +NOT outrank_perpetrator(p12). +necessary_for_harm(p12). +NOT monitor(p12). +NOT harm_caused_as_planned(p12). +goal_outweigh_harm(p12). +foresee_intervention(p12). +NOT external_cause(p12). +control_perpetrator(p12). +NOT benefit_protagonist(p12). +achieve_goal(p12). +reckless_mental_state(p12). +benefit_victim(p12,v0). +severity_harm(p12,v1). +goal_achieveable_less_harmful(p12). +NOT intervening_contribution(p12). +NOT external_force(p12). +low_foreseeability(p12). +NOT careful(p12). +sufficient_for_harm(p12). + +NOT sufficient_for_harm(p13). +plan_known(p13). +plan_include_harm(p13). +someone_else_cause_harm(p13). +outrank_perpetrator(p13). +NOT necessary_for_harm(p13). +monitor(p13). +harm_caused_as_planned(p13). +goal_achieveable_less_harmful(p13). +NOT foresee_intervention(p13). +NOT external_cause(p13). +NOT control_perpetrator(p13). +benefit_protagonist(p13). +achieve_goal(p13). +negligent_mental_state(p13). +benefit_victim(p13,v0). +severity_harm(p13,v1). +NOT goal_outweigh_harm(p13). +NOT intervening_contribution(p13). +NOT external_force(p13). +low_foreseeability(p13). +NOT careful(p13). +produce_harm(p13). + +NOT produce_harm(p14). +plan_known(p14). +NOT plan_include_harm(p14). +someone_else_cause_harm(p14). +NOT outrank_perpetrator(p14). +NOT necessary_for_harm(p14). +monitor(p14). +NOT intervening_contribution(p14). +harm_caused_as_planned(p14). +NOT goal_outweigh_harm(p14). +NOT external_cause(p14). +control_perpetrator(p14). +NOT benefit_protagonist(p14). +NOT achieve_goal(p14). +reckless_mental_state(p14). +benefit_victim(p14,v0). +severity_harm(p14,v1). +goal_achieveable_less_harmful(p14). +foresee_intervention(p14). +NOT external_force(p14). +low_foreseeability(p14). +NOT careful(p14). +sufficient_for_harm(p14). + +NOT sufficient_for_harm(p15). +plan_known(p15). +plan_include_harm(p15). +NOT someone_else_cause_harm(p15). +outrank_perpetrator(p15). +NOT necessary_for_harm(p15). +monitor(p15). +intervening_contribution(p15). +harm_caused_as_planned(p15). +NOT goal_achieveable_less_harmful(p15). +external_cause(p15). +control_perpetrator(p15). +benefit_protagonist(p15). +NOT achieve_goal(p15). +negligent_mental_state(p15). +benefit_victim(p15,v0). +severity_harm(p15,v1). +NOT goal_outweigh_harm(p15). +foresee_intervention(p15). +NOT external_force(p15). +low_foreseeability(p15). +NOT careful(p15). +produce_harm(p15). + +sufficient_for_harm(p16). +produce_harm(p16). +NOT plan_known(p16). +NOT plan_include_harm(p16). +someone_else_cause_harm(p16). +NOT outrank_perpetrator(p16). +monitor(p16). +harm_caused_as_planned(p16). +NOT goal_achieveable_less_harmful(p16). +NOT foresee_intervention(p16). +external_cause(p16). +control_perpetrator(p16). +NOT benefit_protagonist(p16). +achieve_goal(p16). +reckless_mental_state(p16). +benefit_victim(p16,v0). +severity_harm(p16,v1). +NOT goal_outweigh_harm(p16). +NOT intervening_contribution(p16). +NOT external_force(p16). +low_foreseeability(p16). +NOT careful(p16). +necessary_for_harm(p16). + +NOT produce_harm(p17). +plan_known(p17). +plan_include_harm(p17). +someone_else_cause_harm(p17). +outrank_perpetrator(p17). +necessary_for_harm(p17). +NOT monitor(p17). +NOT harm_caused_as_planned(p17). +goal_achieveable_less_harmful(p17). +foresee_intervention(p17). +NOT external_cause(p17). +NOT control_perpetrator(p17). +NOT benefit_protagonist(p17). +NOT achieve_goal(p17). +neither_mental_state(p17). +benefit_victim(p17,v0). +severity_harm(p17,v1). +NOT goal_outweigh_harm(p17). +NOT intervening_contribution(p17). +NOT external_force(p17). +low_foreseeability(p17). +NOT careful(p17). +sufficient_for_harm(p17). + +produce_harm(p18). +plan_known(p18). +NOT plan_include_harm(p18). +someone_else_cause_harm(p18). +outrank_perpetrator(p18). +NOT necessary_for_harm(p18). +monitor(p18). +NOT intervening_contribution(p18). +harm_caused_as_planned(p18). +NOT goal_outweigh_harm(p18). +goal_achieveable_less_harmful(p18). +external_cause(p18). +control_perpetrator(p18). +NOT benefit_protagonist(p18). +NOT careful(p18). +benefit_victim(p18,v0). +severity_harm(p18,v1). +NOT achieve_goal(p18). +foresee_intervention(p18). +high_foreseeability(p18). +NOT external_force(p18). +reckless_mental_state(p18). +sufficient_for_harm(p18). + +sufficient_for_harm(p19). +produce_harm(p19). +plan_known(p19). +plan_include_harm(p19). +someone_else_cause_harm(p19). +NOT outrank_perpetrator(p19). +NOT monitor(p19). +NOT harm_caused_as_planned(p19). +goal_achieveable_less_harmful(p19). +NOT foresee_intervention(p19). +NOT external_cause(p19). +NOT control_perpetrator(p19). +NOT benefit_protagonist(p19). +NOT achieve_goal(p19). +careful(p19). +benefit_victim(p19,v0). +severity_harm(p19,v1). +NOT goal_outweigh_harm(p19). +NOT intervening_contribution(p19). +high_foreseeability(p19). +NOT external_force(p19). +reckless_mental_state(p19). +necessary_for_harm(p19). + +sufficient_for_harm(p20). +NOT plan_known(p20). +NOT plan_include_harm(p20). +someone_else_cause_harm(p20). +NOT outrank_perpetrator(p20). +NOT necessary_for_harm(p20). +monitor(p20). +NOT harm_caused_as_planned(p20). +NOT goal_achieveable_less_harmful(p20). +NOT foresee_intervention(p20). +NOT external_cause(p20). +NOT control_perpetrator(p20). +NOT benefit_protagonist(p20). +achieve_goal(p20). +careful(p20). +benefit_victim(p20,v0). +severity_harm(p20,v1). +NOT goal_outweigh_harm(p20). +NOT intervening_contribution(p20). +high_foreseeability(p20). +NOT external_force(p20). +reckless_mental_state(p20). +produce_harm(p20). + +/*sufficient_for_harm(p21,y). +plan_known(p21). +plan_include_harm(p21). +someone_else_cause_harm(p21). +outrank_perpetrator(p21). +NOT necessary_for_harm(p21). +monitor(p21). +intervening_contribution(p21). +NOT harm_caused_as_planned(p21). +goal_outweigh_harm(p21). +goal_achieveable_less_harmful(p21). +NOT external_cause(p21). +NOT control_perpetrator(p21). +NOT benefit_protagonist(p21). +NOT careful(p21). +benefit_victim(p21,v0). +severity_harm(p21,v1). +NOT achieve_goal(p21). +foresee_intervention(p21). +high_foreseeability(p21). +NOT external_force(p21). +reckless_mental_state(p21). +produce_harm(p21). + +NOT produce_harm(p22). +plan_known(p22). +plan_include_harm(p22). +someone_else_cause_harm(p22). +NOT outrank_perpetrator(p22). +necessary_for_harm(p22). +NOT monitor(p22). +NOT harm_caused_as_planned(p22). +NOT goal_outweigh_harm(p22). +NOT goal_achieveable_less_harmful(p22). +foresee_intervention(p22). +external_cause(p22). +control_perpetrator(p22). +benefit_protagonist(p22). +NOT careful(p22). +benefit_victim(p22,v0). +severity_harm(p22,v1). +NOT achieve_goal(p22). +NOT intervening_contribution(p22). +high_foreseeability(p22). +NOT external_force(p22). +reckless_mental_state(p22). +sufficient_for_harm(p22). + +sufficient_for_harm(p23). +plan_known(p23). +NOT plan_include_harm(p23). +someone_else_cause_harm(p23). +outrank_perpetrator(p23). +necessary_for_harm(p23). +NOT monitor(p23). +intervening_contribution(p23). +NOT harm_caused_as_planned(p23). +goal_outweigh_harm(p23). +goal_achieveable_less_harmful(p23). +external_cause(p23). +control_perpetrator(p23). +benefit_protagonist(p23). +careful(p23). +benefit_victim(p23,v0). +severity_harm(p23,v1). +NOT achieve_goal(p23). +foresee_intervention(p23). +high_foreseeability(p23). +NOT external_force(p23). +reckless_mental_state(p23). +produce_harm(p23). + +sufficient_for_harm(p24). +produce_harm(p24). +plan_known(p24). +NOT plan_include_harm(p24). +NOT someone_else_cause_harm(p24). +NOT outrank_perpetrator(p24). +monitor(p24). +intervening_contribution(p24). +NOT harm_caused_as_planned(p24). +goal_achieveable_less_harmful(p24). +NOT external_cause(p24). +NOT control_perpetrator(p24). +NOT benefit_protagonist(p24). +NOT achieve_goal(p24). +careful(p24). +benefit_victim(p24,v0). +severity_harm(p24,v1). +NOT goal_outweigh_harm(p24). +foresee_intervention(p24). +low_foreseeability(p24). +NOT external_force(p24). +reckless_mental_state(p24). +necessary_for_harm(p24). + +sufficient_for_harm(p25). +plan_known(p25). +plan_include_harm(p25). +someone_else_cause_harm(p25). +NOT outrank_perpetrator(p25). +necessary_for_harm(p25). +monitor(p25). +harm_caused_as_planned(p25). +goal_outweigh_harm(p25). +NOT foresee_intervention(p25). +NOT external_cause(p25). +control_perpetrator(p25). +NOT benefit_protagonist(p25). +NOT achieve_goal(p25). +NOT careful(p25). +benefit_victim(p25,v0). +severity_harm(p25,v1). +goal_achieveable_less_harmful(p25). +NOT intervening_contribution(p25). +low_foreseeability(p25). +NOT external_force(p25). +reckless_mental_state(p25). +produce_harm(p25). + +NOT sufficient_for_harm(p26). +NOT plan_known(p26). +plan_include_harm(p26). +NOT someone_else_cause_harm(p26). +outrank_perpetrator(p26). +NOT necessary_for_harm(p26). +monitor(p26). +NOT harm_caused_as_planned(p26). +NOT goal_outweigh_harm(p26). +NOT foresee_intervention(p26). +external_cause(p26). +NOT control_perpetrator(p26). +benefit_protagonist(p26). +achieve_goal(p26). +NOT careful(p26). +benefit_victim(p26,v0). +severity_harm(p26,v1). +goal_achieveable_less_harmful(p26). +NOT intervening_contribution(p26). +low_foreseeability(p26). +NOT external_force(p26). +reckless_mental_state(p26). +produce_harm(p26). + +NOT sufficient_for_harm(p27). +NOT produce_harm(p27). +plan_known(p27). +plan_include_harm(p27). +NOT someone_else_cause_harm(p27). +NOT outrank_perpetrator(p27). +monitor(p27). +NOT intervening_contribution(p27). +NOT harm_caused_as_planned(p27). +NOT goal_outweigh_harm(p27). +NOT goal_achieveable_less_harmful(p27). +external_cause(p27). +control_perpetrator(p27). +benefit_protagonist(p27). +careful(p27). +benefit_victim(p27,v0). +severity_harm(p27,v1). +NOT achieve_goal(p27). +foresee_intervention(p27). +low_foreseeability(p27). +NOT external_force(p27). +reckless_mental_state(p27). +necessary_for_harm(p27). + +sufficient_for_harm(p28). +plan_known(p28). +plan_include_harm(p28). +NOT someone_else_cause_harm(p28). +NOT outrank_perpetrator(p28). +NOT necessary_for_harm(p28). +monitor(p28). +harm_caused_as_planned(p28). +goal_outweigh_harm(p28). +foresee_intervention(p28). +NOT external_cause(p28). +control_perpetrator(p28). +benefit_protagonist(p28). +NOT achieve_goal(p28). +careful(p28). +benefit_victim(p28,v0). +severity_harm(p28,v1). +goal_achieveable_less_harmful(p28). +NOT intervening_contribution(p28). +low_foreseeability(p28). +NOT external_force(p28). +reckless_mental_state(p28). +produce_harm(p28). + +sufficient_for_harm(p29). +NOT produce_harm(p29). +NOT plan_known(p29). +plan_include_harm(p29). +someone_else_cause_harm(p29). +outrank_perpetrator(p29). +monitor(p29). +harm_caused_as_planned(p29). +goal_outweigh_harm(p29). +goal_achieveable_less_harmful(p29). +NOT foresee_intervention(p29). +external_cause(p29). +NOT control_perpetrator(p29). +NOT benefit_protagonist(p29). +careful(p29). +benefit_victim(p29,v0). +severity_harm(p29,v1). +NOT achieve_goal(p29). +NOT intervening_contribution(p29). +low_foreseeability(p29). +NOT external_force(p29). +reckless_mental_state(p29). +necessary_for_harm(p29). + +NOT sufficient_for_harm(p30). +NOT produce_harm(p30). +plan_known(p30). +NOT plan_include_harm(p30). +someone_else_cause_harm(p30). +NOT outrank_perpetrator(p30). +monitor(p30). +harm_caused_as_planned(p30). +goal_outweigh_harm(p30). +NOT foresee_intervention(p30). +NOT external_cause(p30). +NOT control_perpetrator(p30). +benefit_protagonist(p30). +achieve_goal(p30). +negligent_mental_state(p30). +benefit_victim(p30,v0). +severity_harm(p30,v1). +goal_achieveable_less_harmful(p30). +NOT intervening_contribution(p30). +NOT external_force(p30). +high_foreseeability(p30). +NOT careful(p30). +necessary_for_harm(p30). + +/* +produce_harm(p31). +NOT plan_known(p31). +plan_include_harm(p31). +NOT someone_else_cause_harm(p31). +outrank_perpetrator(p31). +necessary_for_harm(p31). +monitor(p31). +intervening_contribution(p31). +NOT harm_caused_as_planned(p31). +NOT goal_achieveable_less_harmful(p31). +external_cause(p31). +control_perpetrator(p31). +NOT benefit_protagonist(p31). +NOT achieve_goal(p31). +neither_mental_state(p31). +benefit_victim(p31,v0). +severity_harm(p31,v1). +NOT goal_outweigh_harm(p31). +foresee_intervention(p31). +NOT external_force(p31). +high_foreseeability(p31). +NOT careful(p31). +sufficient_for_harm(p31). + +sufficient_for_harm(p32). +produce_harm(p32). +NOT plan_known(p32). +plan_include_harm(p32). +someone_else_cause_harm(p32). +outrank_perpetrator(p32). +monitor(p32). +intervening_contribution(p32). +NOT harm_caused_as_planned(p32). +goal_achieveable_less_harmful(p32). +NOT external_cause(p32). +control_perpetrator(p32). +benefit_protagonist(p32). +achieve_goal(p32). +negligent_mental_state(p32). +benefit_victim(p32,v0). +severity_harm(p32,v1). +NOT goal_outweigh_harm(p32). +foresee_intervention(p32). +NOT external_force(p32). +high_foreseeability(p32). +NOT careful(p32). +necessary_for_harm(p32). + +NOT sufficient_for_harm(p33). +plan_known(p33). +plan_include_harm(p33). +someone_else_cause_harm(p33). +NOT outrank_perpetrator(p33). +necessary_for_harm(p33). +NOT monitor(p33). +intervening_contribution(p33). +harm_caused_as_planned(p33). +goal_outweigh_harm(p33). +NOT external_cause(p33). +control_perpetrator(p33). +benefit_protagonist(p33). +NOT achieve_goal(p33). +reckless_mental_state(p33). +benefit_victim(p33,v0). +severity_harm(p33,v1). +goal_achieveable_less_harmful(p33). +foresee_intervention(p33). +NOT external_force(p33). +high_foreseeability(p33). +NOT careful(p33). +produce_harm(p33). + +produce_harm(p34). +NOT plan_known(p34). +plan_include_harm(p34). +NOT someone_else_cause_harm(p34). +outrank_perpetrator(p34). +NOT necessary_for_harm(p34). +NOT monitor(p34). +intervening_contribution(p34). +harm_caused_as_planned(p34). +goal_achieveable_less_harmful(p34). +NOT external_cause(p34). +control_perpetrator(p34). +NOT benefit_protagonist(p34). +NOT achieve_goal(p34). +negligent_mental_state(p34). +benefit_victim(p34,v0). +severity_harm(p34,v1). +NOT goal_outweigh_harm(p34). +foresee_intervention(p34). +NOT external_force(p34). +high_foreseeability(p34). +NOT careful(p34). +sufficient_for_harm(p34). + +NOT sufficient_for_harm(p35). +produce_harm(p35). +plan_known(p35). +plan_include_harm(p35). +someone_else_cause_harm(p35). +NOT outrank_perpetrator(p35). +NOT monitor(p35). +harm_caused_as_planned(p35). +NOT goal_outweigh_harm(p35). +NOT foresee_intervention(p35). +NOT external_cause(p35). +NOT control_perpetrator(p35). +benefit_protagonist(p35). +achieve_goal(p35). +reckless_mental_state(p35). +benefit_victim(p35,v0). +severity_harm(p35,v1). +goal_achieveable_less_harmful(p35). +NOT intervening_contribution(p35). +NOT external_force(p35). +high_foreseeability(p35). +NOT careful(p35). +necessary_for_harm(p35). + +produce_harm(p36). +NOT plan_known(p36). +plan_include_harm(p36). +NOT someone_else_cause_harm(p36). +NOT outrank_perpetrator(p36). +NOT necessary_for_harm(p36). +monitor(p36). +NOT intervening_contribution(p36). +NOT harm_caused_as_planned(p36). +NOT goal_achieveable_less_harmful(p36). +external_cause(p36). +control_perpetrator(p36). +NOT benefit_protagonist(p36). +NOT achieve_goal(p36). +NOT careful(p36). +benefit_victim(p36,v0). +severity_harm(p36,v1). +NOT goal_outweigh_harm(p36). +foresee_intervention(p36). +high_foreseeability(p36). +NOT external_force(p36). +intend_mental_state(p36). +sufficient_for_harm(p36). + +NOT sufficient_for_harm(p37). +NOT plan_known(p37). +NOT plan_include_harm(p37). +someone_else_cause_harm(p37). +NOT outrank_perpetrator(p37). +NOT necessary_for_harm(p37). +NOT monitor(p37). +intervening_contribution(p37). +harm_caused_as_planned(p37). +NOT goal_achieveable_less_harmful(p37). +NOT external_cause(p37). +NOT control_perpetrator(p37). +NOT benefit_protagonist(p37). +achieve_goal(p37). +NOT careful(p37). +benefit_victim(p37,v0). +severity_harm(p37,v1). +NOT goal_outweigh_harm(p37). +foresee_intervention(p37). +high_foreseeability(p37). +NOT external_force(p37). +intend_mental_state(p37). +produce_harm(p37). + +sufficient_for_harm(p38). +plan_known(p38). +NOT plan_include_harm(p38). +NOT someone_else_cause_harm(p38). +NOT outrank_perpetrator(p38). +NOT necessary_for_harm(p38). +monitor(p38). +NOT intervening_contribution(p38). +harm_caused_as_planned(p38). +goal_outweigh_harm(p38). +NOT external_cause(p38). +control_perpetrator(p38). +benefit_protagonist(p38). +achieve_goal(p38). +careful(p38). +benefit_victim(p38,v0). +severity_harm(p38,v1). +goal_achieveable_less_harmful(p38). +foresee_intervention(p38). +high_foreseeability(p38). +NOT external_force(p38). +intend_mental_state(p38). +produce_harm(p38). + +NOT sufficient_for_harm(p39). +NOT plan_known(p39). +NOT plan_include_harm(p39). +someone_else_cause_harm(p39). +NOT outrank_perpetrator(p39). +necessary_for_harm(p39). +NOT monitor(p39). +NOT intervening_contribution(p39). +NOT harm_caused_as_planned(p39). +NOT goal_outweigh_harm(p39). +NOT external_cause(p39). +NOT control_perpetrator(p39). +NOT benefit_protagonist(p39). +achieve_goal(p39). +careful(p39). +benefit_victim(p39,v0). +severity_harm(p39,v1). +goal_achieveable_less_harmful(p39). +foresee_intervention(p39). +high_foreseeability(p39). +NOT external_force(p39). +intend_mental_state(p39). +produce_harm(p39). + +NOT sufficient_for_harm(p40). +plan_known(p40). +plan_include_harm(p40). +NOT someone_else_cause_harm(p40). +NOT outrank_perpetrator(p40). +necessary_for_harm(p40). +NOT monitor(p40). +NOT harm_caused_as_planned(p40). +NOT goal_outweigh_harm(p40). +foresee_intervention(p40). +external_cause(p40). +NOT control_perpetrator(p40). +benefit_protagonist(p40). +NOT achieve_goal(p40). +careful(p40). +benefit_victim(p40,v0). +severity_harm(p40,v1). +goal_achieveable_less_harmful(p40). +NOT intervening_contribution(p40). +high_foreseeability(p40). +NOT external_force(p40). +intend_mental_state(p40). +produce_harm(p40). + +produce_harm(p41). +plan_known(p41). +plan_include_harm(p41). +NOT someone_else_cause_harm(p41). +NOT outrank_perpetrator(p41). +necessary_for_harm(p41). +monitor(p41). +NOT harm_caused_as_planned(p41). +NOT goal_outweigh_harm(p41). +foresee_intervention(p41). +external_cause(p41). +NOT control_perpetrator(p41). +benefit_protagonist(p41). +NOT achieve_goal(p41). +NOT careful(p41). +benefit_victim(p41,v0). +severity_harm(p41,v1). +goal_achieveable_less_harmful(p41). +NOT intervening_contribution(p41). +high_foreseeability(p41). +NOT external_force(p41). +intend_mental_state(p41). +sufficient_for_harm(p41). + +NOT produce_harm(p42). +NOT plan_known(p42). +NOT plan_include_harm(p42). +someone_else_cause_harm(p42). +outrank_perpetrator(p42). +NOT necessary_for_harm(p42). +monitor(p42). +NOT harm_caused_as_planned(p42). +NOT goal_achieveable_less_harmful(p42). +NOT foresee_intervention(p42). +external_cause(p42). +NOT control_perpetrator(p42). +NOT benefit_protagonist(p42). +achieve_goal(p42). +NOT careful(p42). +benefit_victim(p42,v0). +severity_harm(p42,v1). +NOT goal_outweigh_harm(p42). +NOT intervening_contribution(p42). +low_foreseeability(p42). +NOT external_force(p42). +intend_mental_state(p42). +sufficient_for_harm(p42). + +NOT sufficient_for_harm(p43). +produce_harm(p43). +NOT plan_known(p43). +NOT plan_include_harm(p43). +NOT someone_else_cause_harm(p43). +outrank_perpetrator(p43). +NOT monitor(p43). +intervening_contribution(p43). +harm_caused_as_planned(p43). +NOT goal_outweigh_harm(p43). +NOT goal_achieveable_less_harmful(p43). +external_cause(p43). +control_perpetrator(p43). +benefit_protagonist(p43). +careful(p43). +benefit_victim(p43,v0). +severity_harm(p43,v1). +NOT achieve_goal(p43). +foresee_intervention(p43). +low_foreseeability(p43). +NOT external_force(p43). +intend_mental_state(p43). +necessary_for_harm(p43). + +NOT sufficient_for_harm(p44). +produce_harm(p44). +plan_known(p44). +plan_include_harm(p44). +NOT someone_else_cause_harm(p44). +outrank_perpetrator(p44). +NOT monitor(p44). +NOT harm_caused_as_planned(p44). +goal_outweigh_harm(p44). +NOT goal_achieveable_less_harmful(p44). +NOT foresee_intervention(p44). +external_cause(p44). +control_perpetrator(p44). +benefit_protagonist(p44). +NOT careful(p44). +benefit_victim(p44,v0). +severity_harm(p44,v1). +NOT achieve_goal(p44). +NOT intervening_contribution(p44). +low_foreseeability(p44). +NOT external_force(p44). +intend_mental_state(p44). +necessary_for_harm(p44). + +NOT sufficient_for_harm(p45). +NOT plan_known(p45). +NOT plan_include_harm(p45). +someone_else_cause_harm(p45). +NOT outrank_perpetrator(p45). +NOT necessary_for_harm(p45). +NOT monitor(p45). +harm_caused_as_planned(p45). +goal_outweigh_harm(p45). +foresee_intervention(p45). +NOT external_cause(p45). +control_perpetrator(p45). +NOT benefit_protagonist(p45). +achieve_goal(p45). +careful(p45). +benefit_victim(p45,v0). +severity_harm(p45,v1). +goal_achieveable_less_harmful(p45). +NOT intervening_contribution(p45). +low_foreseeability(p45). +NOT external_force(p45). +intend_mental_state(p45). +produce_harm(p45). + +sufficient_for_harm(p46). +NOT plan_known(p46). +NOT plan_include_harm(p46). +someone_else_cause_harm(p46). +NOT outrank_perpetrator(p46). +necessary_for_harm(p46). +NOT monitor(p46). +harm_caused_as_planned(p46). +goal_achieveable_less_harmful(p46). +foresee_intervention(p46). +external_cause(p46). +control_perpetrator(p46). +benefit_protagonist(p46). +achieve_goal(p46). +NOT careful(p46). +benefit_victim(p46,v0). +severity_harm(p46,v1). +NOT goal_outweigh_harm(p46). +NOT intervening_contribution(p46). +low_foreseeability(p46). +NOT external_force(p46). +intend_mental_state(p46). +produce_harm(p46). + +NOT sufficient_for_harm(p47). +produce_harm(p47). +plan_known(p47). +NOT plan_include_harm(p47). +NOT someone_else_cause_harm(p47). +NOT outrank_perpetrator(p47). +monitor(p47). +intervening_contribution(p47). +harm_caused_as_planned(p47). +NOT goal_outweigh_harm(p47). +goal_achieveable_less_harmful(p47). +NOT external_cause(p47). +NOT control_perpetrator(p47). +benefit_protagonist(p47). +careful(p47). +benefit_victim(p47,v0). +severity_harm(p47,v1). +NOT achieve_goal(p47). +foresee_intervention(p47). +low_foreseeability(p47). +NOT external_force(p47). +intend_mental_state(p47). +necessary_for_harm(p47). + +produce_harm(p48). +someone_else_cause_harm(p48). +NOT outrank_perpetrator(p48). +necessary_for_harm(p48). +NOT monitor(p48). +NOT intervening_contribution(p48). +NOT goal_outweigh_harm(p48). +NOT goal_achieveable_less_harmful(p48). +NOT external_cause(p48). +NOT control_perpetrator(p48). +NOT benefit_protagonist(p48). +NOT careful(p48). +neither_mental_state(p48). +benefit_victim(p48,v0). +severity_harm(p48,v1). +NOT achieve_goal(p48). +foresee_intervention(p48). +high_foreseeability(p48). +NOT external_force(p48). +plan_known(p48). +plan_include_harm(p48). +harm_caused_as_planned(p48). +sufficient_for_harm(p48). + +NOT sufficient_for_harm(p49). +NOT someone_else_cause_harm(p49). +outrank_perpetrator(p49). +NOT necessary_for_harm(p49). +monitor(p49). +intervening_contribution(p49). +goal_achieveable_less_harmful(p49). +NOT external_cause(p49). +NOT control_perpetrator(p49). +benefit_protagonist(p49). +NOT achieve_goal(p49). +careful(p49). +reckless_mental_state(p49). +benefit_victim(p49,v0). +severity_harm(p49,v1). +NOT goal_outweigh_harm(p49). +foresee_intervention(p49). +high_foreseeability(p49). +NOT external_force(p49). +plan_known(p49). +plan_include_harm(p49). +harm_caused_as_planned(p49). +produce_harm(p49). + +sufficient_for_harm(p50). +NOT someone_else_cause_harm(p50). +NOT outrank_perpetrator(p50). +necessary_for_harm(p50). +NOT monitor(p50). +NOT intervening_contribution(p50). +goal_outweigh_harm(p50). +external_cause(p50). +NOT control_perpetrator(p50). +NOT benefit_protagonist(p50). +achieve_goal(p50). +NOT careful(p50). +neither_mental_state(p50). +benefit_victim(p50,v0). +severity_harm(p50,v1). +goal_achieveable_less_harmful(p50). +foresee_intervention(p50). +high_foreseeability(p50). +NOT external_force(p50). +plan_known(p50). +plan_include_harm(p50). +harm_caused_as_planned(p50). +produce_harm(p50). + +sufficient_for_harm(p51). +NOT produce_harm(p51). +someone_else_cause_harm(p51). +NOT outrank_perpetrator(p51). +monitor(p51). +NOT goal_achieveable_less_harmful(p51). +foresee_intervention(p51). +external_cause(p51). +NOT control_perpetrator(p51). +NOT benefit_protagonist(p51). +NOT achieve_goal(p51). +careful(p51). +neither_mental_state(p51). +benefit_victim(p51,v0). +severity_harm(p51,v1). +NOT goal_outweigh_harm(p51). +NOT intervening_contribution(p51). +high_foreseeability(p51). +NOT external_force(p51). +plan_known(p51). +plan_include_harm(p51). +harm_caused_as_planned(p51). +necessary_for_harm(p51). + +NOT produce_harm(p52). +NOT someone_else_cause_harm(p52). +outrank_perpetrator(p52). +NOT necessary_for_harm(p52). +NOT monitor(p52). +NOT goal_outweigh_harm(p52). +NOT goal_achieveable_less_harmful(p52). +foresee_intervention(p52). +NOT external_cause(p52). +control_perpetrator(p52). +NOT benefit_protagonist(p52). +NOT careful(p52). +neither_mental_state(p52). +benefit_victim(p52,v0). +severity_harm(p52,v1). +NOT achieve_goal(p52). +NOT intervening_contribution(p52). +high_foreseeability(p52). +NOT external_force(p52). +plan_known(p52). +plan_include_harm(p52). +harm_caused_as_planned(p52). +sufficient_for_harm(p52). + +NOT produce_harm(p53). +NOT someone_else_cause_harm(p53). +outrank_perpetrator(p53). +NOT necessary_for_harm(p53). +monitor(p53). +NOT intervening_contribution(p53). +NOT goal_outweigh_harm(p53). +NOT goal_achieveable_less_harmful(p53). +external_cause(p53). +NOT control_perpetrator(p53). +NOT benefit_protagonist(p53). +NOT careful(p53). +reckless_mental_state(p53). +benefit_victim(p53,v0). +severity_harm(p53,v1). +NOT achieve_goal(p53). +foresee_intervention(p53). +high_foreseeability(p53). +NOT external_force(p53). +plan_known(p53). +plan_include_harm(p53). +harm_caused_as_planned(p53). +sufficient_for_harm(p53). + +NOT produce_harm(p54). +someone_else_cause_harm(p54). +outrank_perpetrator(p54). +necessary_for_harm(p54). +monitor(p54). +goal_outweigh_harm(p54). +goal_achieveable_less_harmful(p54). +NOT foresee_intervention(p54). +external_cause(p54). +control_perpetrator(p54). +NOT benefit_protagonist(p54). +NOT careful(p54). +reckless_mental_state(p54). +benefit_victim(p54,v0). +severity_harm(p54,v1). +NOT achieve_goal(p54). +NOT intervening_contribution(p54). +low_foreseeability(p54). +NOT external_force(p54). +plan_known(p54). +plan_include_harm(p54). +harm_caused_as_planned(p54). +sufficient_for_harm(p54). + +NOT sufficient_for_harm(p55). +someone_else_cause_harm(p55). +outrank_perpetrator(p55). +necessary_for_harm(p55). +monitor(p55). +goal_outweigh_harm(p55). +NOT foresee_intervention(p55). +external_cause(p55). +NOT control_perpetrator(p55). +benefit_protagonist(p55). +achieve_goal(p55). +NOT careful(p55). +reckless_mental_state(p55). +benefit_victim(p55,v0). +severity_harm(p55,v1). +goal_achieveable_less_harmful(p55). +NOT intervening_contribution(p55). +low_foreseeability(p55). +NOT external_force(p55). +plan_known(p55). +plan_include_harm(p55). +harm_caused_as_planned(p55). +produce_harm(p55). + +NOT produce_harm(p56). +NOT someone_else_cause_harm(p56). +outrank_perpetrator(p56). +NOT necessary_for_harm(p56). +NOT monitor(p56). +NOT intervening_contribution(p56). +NOT goal_outweigh_harm(p56). +NOT external_cause(p56). +control_perpetrator(p56). +NOT benefit_protagonist(p56). +achieve_goal(p56). +NOT careful(p56). +negligent_mental_state(p56). +benefit_victim(p56,v0). +severity_harm(p56,v1). +goal_achieveable_less_harmful(p56). +foresee_intervention(p56). +low_foreseeability(p56). +NOT external_force(p56). +plan_known(p56). +plan_include_harm(p56). +harm_caused_as_planned(p56). +sufficient_for_harm(p56). + +sufficient_for_harm(p57). +produce_harm(p57). +NOT someone_else_cause_harm(p57). +outrank_perpetrator(p57). +monitor(p57). +NOT goal_outweigh_harm(p57). +NOT foresee_intervention(p57). +NOT external_cause(p57). +NOT control_perpetrator(p57). +NOT benefit_protagonist(p57). +NOT achieve_goal(p57). +careful(p57). +neither_mental_state(p57). +benefit_victim(p57,v0). +severity_harm(p57,v1). +goal_achieveable_less_harmful(p57). +NOT intervening_contribution(p57). +low_foreseeability(p57). +NOT external_force(p57). +plan_known(p57). +plan_include_harm(p57). +harm_caused_as_planned(p57). +necessary_for_harm(p57). + +sufficient_for_harm(p58). +produce_harm(p58). +someone_else_cause_harm(p58). +outrank_perpetrator(p58). +monitor(p58). +NOT goal_outweigh_harm(p58). +NOT goal_achieveable_less_harmful(p58). +NOT foresee_intervention(p58). +NOT external_cause(p58). +control_perpetrator(p58). +benefit_protagonist(p58). +NOT careful(p58). +neither_mental_state(p58). +benefit_victim(p58,v0). +severity_harm(p58,v1). +NOT achieve_goal(p58). +NOT intervening_contribution(p58). +low_foreseeability(p58). +NOT external_force(p58). +plan_known(p58). +plan_include_harm(p58). +harm_caused_as_planned(p58). +necessary_for_harm(p58). + +NOT sufficient_for_harm(p59). +NOT someone_else_cause_harm(p59). +NOT outrank_perpetrator(p59). +NOT necessary_for_harm(p59). +monitor(p59). +NOT goal_achieveable_less_harmful(p59). +NOT foresee_intervention(p59). +external_cause(p59). +control_perpetrator(p59). +NOT benefit_protagonist(p59). +NOT achieve_goal(p59). +careful(p59). +neither_mental_state(p59). +benefit_victim(p59,v0). +severity_harm(p59,v1). +NOT goal_outweigh_harm(p59). +NOT intervening_contribution(p59). +low_foreseeability(p59). +NOT external_force(p59). +plan_known(p59). +plan_include_harm(p59). +harm_caused_as_planned(p59). +produce_harm(p59). + +NOT sufficient_for_harm(p60). +plan_known(p60). +plan_include_harm(p60). +NOT someone_else_cause_harm(p60). +NOT outrank_perpetrator(p60). +NOT necessary_for_harm(p60). +NOT harm_caused_as_planned(p60). +NOT goal_outweigh_harm(p60). +NOT goal_achieveable_less_harmful(p60). +NOT foresee_intervention(p60). +NOT external_cause(p60). +control_perpetrator(p60). +benefit_protagonist(p60). +NOT careful(p60). +neither_mental_state(p60). +benefit_victim(p60,v0). +severity_harm(p60,v1). +NOT achieve_goal(p60). +NOT intervening_contribution(p60). +high_foreseeability(p60). +NOT external_force(p60). +monitor(p60). +produce_harm(p60). + +sufficient_for_harm(p61). +NOT plan_known(p61). +NOT plan_include_harm(p61). +NOT someone_else_cause_harm(p61). +outrank_perpetrator(p61). +NOT necessary_for_harm(p61). +intervening_contribution(p61). +NOT harm_caused_as_planned(p61). +NOT goal_outweigh_harm(p61). +external_cause(p61). +NOT control_perpetrator(p61). +benefit_protagonist(p61). +achieve_goal(p61). +NOT careful(p61). +reckless_mental_state(p61). +benefit_victim(p61,v0). +severity_harm(p61,v1). +goal_achieveable_less_harmful(p61). +foresee_intervention(p61). +high_foreseeability(p61). +NOT external_force(p61). +monitor(p61). +produce_harm(p61). + +NOT sufficient_for_harm(p62). +NOT produce_harm(p62). +plan_known(p62). +plan_include_harm(p62). +someone_else_cause_harm(p62). +NOT outrank_perpetrator(p62). +NOT intervening_contribution(p62). +NOT harm_caused_as_planned(p62). +goal_outweigh_harm(p62). +goal_achieveable_less_harmful(p62). +NOT external_cause(p62). +control_perpetrator(p62). +benefit_protagonist(p62). +NOT careful(p62). +neither_mental_state(p62). +benefit_victim(p62,v0). +severity_harm(p62,v1). +NOT achieve_goal(p62). +foresee_intervention(p62). +high_foreseeability(p62). +NOT external_force(p62). +monitor(p62). +necessary_for_harm(p62). + +NOT sufficient_for_harm(p63). +produce_harm(p63). +plan_known(p63). +plan_include_harm(p63). +NOT someone_else_cause_harm(p63). +outrank_perpetrator(p63). +NOT intervening_contribution(p63). +harm_caused_as_planned(p63). +goal_outweigh_harm(p63). +NOT goal_achieveable_less_harmful(p63). +external_cause(p63). +control_perpetrator(p63). +benefit_protagonist(p63). +careful(p63). +reckless_mental_state(p63). +benefit_victim(p63,v0). +severity_harm(p63,v1). +NOT achieve_goal(p63). +foresee_intervention(p63). +high_foreseeability(p63). +NOT external_force(p63). +monitor(p63). +necessary_for_harm(p63). + +sufficient_for_harm(p64). +NOT produce_harm(p64). +plan_known(p64). +NOT plan_include_harm(p64). +NOT someone_else_cause_harm(p64). +NOT outrank_perpetrator(p64). +NOT intervening_contribution(p64). +harm_caused_as_planned(p64). +goal_outweigh_harm(p64). +NOT external_cause(p64). +control_perpetrator(p64). +NOT benefit_protagonist(p64). +NOT achieve_goal(p64). +NOT careful(p64). +reckless_mental_state(p64). +benefit_victim(p64,v0). +severity_harm(p64,v1). +goal_achieveable_less_harmful(p64). +foresee_intervention(p64). +high_foreseeability(p64). +NOT external_force(p64). +monitor(p64). +necessary_for_harm(p64). + +NOT sufficient_for_harm(p65). +NOT plan_known(p65). +NOT plan_include_harm(p65). +NOT someone_else_cause_harm(p65). +NOT outrank_perpetrator(p65). +NOT necessary_for_harm(p65). +NOT harm_caused_as_planned(p65). +goal_outweigh_harm(p65). +NOT goal_achieveable_less_harmful(p65). +NOT foresee_intervention(p65). +NOT external_cause(p65). +control_perpetrator(p65). +NOT benefit_protagonist(p65). +careful(p65). +negligent_mental_state(p65). +benefit_victim(p65,v0). +severity_harm(p65,v1). +NOT achieve_goal(p65). +NOT intervening_contribution(p65). +high_foreseeability(p65). +NOT external_force(p65). +monitor(p65). +produce_harm(p65). + +sufficient_for_harm(p66). +produce_harm(p66). +NOT plan_known(p66). +plan_include_harm(p66). +NOT someone_else_cause_harm(p66). +NOT outrank_perpetrator(p66). +harm_caused_as_planned(p66). +NOT goal_outweigh_harm(p66). +NOT foresee_intervention(p66). +external_cause(p66). +NOT control_perpetrator(p66). +benefit_protagonist(p66). +achieve_goal(p66). +NOT careful(p66). +negligent_mental_state(p66). +benefit_victim(p66,v0). +severity_harm(p66,v1). +goal_achieveable_less_harmful(p66). +NOT intervening_contribution(p66). +low_foreseeability(p66). +NOT external_force(p66). +monitor(p66). +necessary_for_harm(p66). + +NOT sufficient_for_harm(p67). +NOT plan_known(p67). +NOT plan_include_harm(p67). +someone_else_cause_harm(p67). +outrank_perpetrator(p67). +NOT necessary_for_harm(p67). +intervening_contribution(p67). +NOT harm_caused_as_planned(p67). +NOT goal_achieveable_less_harmful(p67). +external_cause(p67). +NOT control_perpetrator(p67). +benefit_protagonist(p67). +achieve_goal(p67). +NOT careful(p67). +reckless_mental_state(p67). +benefit_victim(p67,v0). +severity_harm(p67,v1). +NOT goal_outweigh_harm(p67). +foresee_intervention(p67). +low_foreseeability(p67). +NOT external_force(p67). +monitor(p67). +produce_harm(p67). + +sufficient_for_harm(p68). +plan_known(p68). +NOT plan_include_harm(p68). +someone_else_cause_harm(p68). +NOT outrank_perpetrator(p68). +necessary_for_harm(p68). +intervening_contribution(p68). +NOT harm_caused_as_planned(p68). +NOT goal_outweigh_harm(p68). +goal_achieveable_less_harmful(p68). +NOT external_cause(p68). +NOT control_perpetrator(p68). +NOT benefit_protagonist(p68). +NOT careful(p68). +negligent_mental_state(p68). +benefit_victim(p68,v0). +severity_harm(p68,v1). +NOT achieve_goal(p68). +foresee_intervention(p68). +low_foreseeability(p68). +NOT external_force(p68). +monitor(p68). +produce_harm(p68). + +sufficient_for_harm(p69). +plan_known(p69). +plan_include_harm(p69). +NOT someone_else_cause_harm(p69). +NOT outrank_perpetrator(p69). +necessary_for_harm(p69). +NOT intervening_contribution(p69). +NOT harm_caused_as_planned(p69). +goal_outweigh_harm(p69). +NOT goal_achieveable_less_harmful(p69). +NOT external_cause(p69). +control_perpetrator(p69). +NOT benefit_protagonist(p69). +careful(p69). +neither_mental_state(p69). +benefit_victim(p69,v0). +severity_harm(p69,v1). +NOT achieve_goal(p69). +foresee_intervention(p69). +low_foreseeability(p69). +NOT external_force(p69). +monitor(p69). +produce_harm(p69). + +sufficient_for_harm(p70). +NOT produce_harm(p70). +NOT plan_known(p70). +plan_include_harm(p70). +someone_else_cause_harm(p70). +NOT outrank_perpetrator(p70). +intervening_contribution(p70). +harm_caused_as_planned(p70). +goal_outweigh_harm(p70). +NOT external_cause(p70). +control_perpetrator(p70). +NOT benefit_protagonist(p70). +NOT achieve_goal(p70). +NOT careful(p70). +negligent_mental_state(p70). +benefit_victim(p70,v0). +severity_harm(p70,v1). +goal_achieveable_less_harmful(p70). +foresee_intervention(p70). +low_foreseeability(p70). +NOT external_force(p70). +monitor(p70). +necessary_for_harm(p70). + +produce_harm(p71). +NOT plan_known(p71). +NOT plan_include_harm(p71). +someone_else_cause_harm(p71). +outrank_perpetrator(p71). +NOT necessary_for_harm(p71). +intervening_contribution(p71). +NOT harm_caused_as_planned(p71). +goal_outweigh_harm(p71). +external_cause(p71). +control_perpetrator(p71). +benefit_protagonist(p71). +NOT achieve_goal(p71). +careful(p71). +neither_mental_state(p71). +benefit_victim(p71,v0). +severity_harm(p71,v1). +goal_achieveable_less_harmful(p71). +foresee_intervention(p71). +low_foreseeability(p71). +NOT external_force(p71). +monitor(p71). +sufficient_for_harm(p71). + +sufficient_for_harm(p72). +NOT plan_known(p72). +NOT plan_include_harm(p72). +NOT someone_else_cause_harm(p72). +NOT outrank_perpetrator(p72). +NOT necessary_for_harm(p72). +monitor(p72). +NOT intervening_contribution(p72). +harm_caused_as_planned(p72). +NOT goal_outweigh_harm(p72). +goal_achieveable_less_harmful(p72). +external_cause(p72). +NOT control_perpetrator(p72). +NOT careful(p72). +reckless_mental_state(p72). +benefit_victim(p72,v0). +severity_harm(p72,v1). +NOT achieve_goal(p72). +foresee_intervention(p72). +high_foreseeability(p72). +NOT external_force(p72). +benefit_protagonist(p72). +produce_harm(p72). + +produce_harm(p73). +plan_known(p73). +plan_include_harm(p73). +someone_else_cause_harm(p73). +outrank_perpetrator(p73). +NOT necessary_for_harm(p73). +monitor(p73). +NOT harm_caused_as_planned(p73). +NOT goal_achieveable_less_harmful(p73). +foresee_intervention(p73). +NOT external_cause(p73). +control_perpetrator(p73). +achieve_goal(p73). +careful(p73). +neither_mental_state(p73). +benefit_victim(p73,v0). +severity_harm(p73,v1). +NOT goal_outweigh_harm(p73). +NOT intervening_contribution(p73). +high_foreseeability(p73). +NOT external_force(p73). +benefit_protagonist(p73). +sufficient_for_harm(p73). + +sufficient_for_harm(p74). +NOT plan_known(p74). +plan_include_harm(p74). +someone_else_cause_harm(p74). +NOT outrank_perpetrator(p74). +NOT necessary_for_harm(p74). +monitor(p74). +NOT harm_caused_as_planned(p74). +NOT goal_achieveable_less_harmful(p74). +foresee_intervention(p74). +NOT external_cause(p74). +NOT control_perpetrator(p74). +NOT achieve_goal(p74). +NOT careful(p74). +negligent_mental_state(p74). +benefit_victim(p74,v0). +severity_harm(p74,v1). +NOT goal_outweigh_harm(p74). +NOT intervening_contribution(p74). +high_foreseeability(p74). +NOT external_force(p74). +benefit_protagonist(p74). +produce_harm(p74). + +NOT sufficient_for_harm(p75). +NOT produce_harm(p75). +NOT plan_known(p75). +plan_include_harm(p75). +NOT someone_else_cause_harm(p75). +outrank_perpetrator(p75). +monitor(p75). +harm_caused_as_planned(p75). +NOT goal_outweigh_harm(p75). +goal_achieveable_less_harmful(p75). +NOT foresee_intervention(p75). +external_cause(p75). +control_perpetrator(p75). +NOT careful(p75). +reckless_mental_state(p75). +benefit_victim(p75,v0). +severity_harm(p75,v1). +NOT achieve_goal(p75). +NOT intervening_contribution(p75). +high_foreseeability(p75). +NOT external_force(p75). +benefit_protagonist(p75). +necessary_for_harm(p75). + +sufficient_for_harm(p76). +NOT produce_harm(p76). +plan_known(p76). +NOT plan_include_harm(p76). +someone_else_cause_harm(p76). +outrank_perpetrator(p76). +monitor(p76). +harm_caused_as_planned(p76). +NOT goal_achieveable_less_harmful(p76). +NOT foresee_intervention(p76). +external_cause(p76). +control_perpetrator(p76). +achieve_goal(p76). +NOT careful(p76). +negligent_mental_state(p76). +benefit_victim(p76,v0). +severity_harm(p76,v1). +NOT goal_outweigh_harm(p76). +NOT intervening_contribution(p76). +high_foreseeability(p76). +NOT external_force(p76). +benefit_protagonist(p76). +necessary_for_harm(p76). + +produce_harm(p77). +NOT plan_known(p77). +NOT plan_include_harm(p77). +NOT someone_else_cause_harm(p77). +NOT outrank_perpetrator(p77). +NOT necessary_for_harm(p77). +NOT monitor(p77). +NOT intervening_contribution(p77). +NOT harm_caused_as_planned(p77). +goal_outweigh_harm(p77). +goal_achieveable_less_harmful(p77). +NOT external_cause(p77). +control_perpetrator(p77). +NOT careful(p77). +reckless_mental_state(p77). +benefit_victim(p77,v0). +severity_harm(p77,v1). +NOT achieve_goal(p77). +foresee_intervention(p77). +high_foreseeability(p77). +NOT external_force(p77). +benefit_protagonist(p77). +sufficient_for_harm(p77). + +produce_harm(p78). +NOT plan_known(p78). +plan_include_harm(p78). +NOT someone_else_cause_harm(p78). +outrank_perpetrator(p78). +NOT necessary_for_harm(p78). +monitor(p78). +NOT intervening_contribution(p78). +harm_caused_as_planned(p78). +goal_achieveable_less_harmful(p78). +NOT external_cause(p78). +control_perpetrator(p78). +achieve_goal(p78). +NOT careful(p78). +reckless_mental_state(p78). +benefit_victim(p78,v0). +severity_harm(p78,v1). +NOT goal_outweigh_harm(p78). +foresee_intervention(p78). +low_foreseeability(p78). +NOT external_force(p78). +benefit_protagonist(p78). +sufficient_for_harm(p78). + +produce_harm(p79). +NOT plan_known(p79). +plan_include_harm(p79). +NOT someone_else_cause_harm(p79). +NOT outrank_perpetrator(p79). +necessary_for_harm(p79). +monitor(p79). +NOT harm_caused_as_planned(p79). +NOT goal_outweigh_harm(p79). +NOT foresee_intervention(p79). +NOT external_cause(p79). +NOT control_perpetrator(p79). +NOT achieve_goal(p79). +NOT careful(p79). +neither_mental_state(p79). +benefit_victim(p79,v0). +severity_harm(p79,v1). +goal_achieveable_less_harmful(p79). +NOT intervening_contribution(p79). +low_foreseeability(p79). +NOT external_force(p79). +benefit_protagonist(p79). +sufficient_for_harm(p79). + +sufficient_for_harm(p80). +NOT plan_known(p80). +NOT plan_include_harm(p80). +someone_else_cause_harm(p80). +NOT outrank_perpetrator(p80). +necessary_for_harm(p80). +monitor(p80). +NOT intervening_contribution(p80). +harm_caused_as_planned(p80). +goal_outweigh_harm(p80). +NOT external_cause(p80). +control_perpetrator(p80). +NOT achieve_goal(p80). +careful(p80). +neither_mental_state(p80). +benefit_victim(p80,v0). +severity_harm(p80,v1). +goal_achieveable_less_harmful(p80). +foresee_intervention(p80). +low_foreseeability(p80). +NOT external_force(p80). +benefit_protagonist(p80). +produce_harm(p80). + +NOT sufficient_for_harm(p81). +plan_known(p81). +NOT plan_include_harm(p81). +NOT someone_else_cause_harm(p81). +outrank_perpetrator(p81). +NOT necessary_for_harm(p81). +NOT monitor(p81). +NOT intervening_contribution(p81). +harm_caused_as_planned(p81). +NOT goal_outweigh_harm(p81). +NOT goal_achieveable_less_harmful(p81). +NOT external_cause(p81). +NOT control_perpetrator(p81). +NOT careful(p81). +reckless_mental_state(p81). +benefit_victim(p81,v0). +severity_harm(p81,v1). +NOT achieve_goal(p81). +foresee_intervention(p81). +low_foreseeability(p81). +NOT external_force(p81). +benefit_protagonist(p81). +produce_harm(p81). + +NOT sufficient_for_harm(p82). +plan_known(p82). +NOT plan_include_harm(p82). +someone_else_cause_harm(p82). +outrank_perpetrator(p82). +NOT necessary_for_harm(p82). +NOT monitor(p82). +intervening_contribution(p82). +harm_caused_as_planned(p82). +NOT goal_achieveable_less_harmful(p82). +external_cause(p82). +NOT control_perpetrator(p82). +NOT achieve_goal(p82). +NOT careful(p82). +negligent_mental_state(p82). +benefit_victim(p82,v0). +severity_harm(p82,v1). +NOT goal_outweigh_harm(p82). +foresee_intervention(p82). +low_foreseeability(p82). +NOT external_force(p82). +benefit_protagonist(p82). +produce_harm(p82). + +sufficient_for_harm(p83). +NOT plan_known(p83). +NOT plan_include_harm(p83). +NOT someone_else_cause_harm(p83). +NOT outrank_perpetrator(p83). +necessary_for_harm(p83). +NOT monitor(p83). +NOT harm_caused_as_planned(p83). +goal_achieveable_less_harmful(p83). +NOT foresee_intervention(p83). +NOT external_cause(p83). +control_perpetrator(p83). +achieve_goal(p83). +NOT careful(p83). +neither_mental_state(p83). +benefit_victim(p83,v0). +severity_harm(p83,v1). +NOT goal_outweigh_harm(p83). +NOT intervening_contribution(p83). +low_foreseeability(p83). +NOT external_force(p83). +benefit_protagonist(p83). +produce_harm(p83). + +NOT sufficient_for_harm(p84). +NOT produce_harm(p84). +NOT plan_known(p84). +NOT plan_include_harm(p84). +someone_else_cause_harm(p84). +outrank_perpetrator(p84). +NOT monitor(p84). +NOT intervening_contribution(p84). +harm_caused_as_planned(p84). +NOT goal_achieveable_less_harmful(p84). +NOT control_perpetrator(p84). +NOT benefit_protagonist(p84). +achieve_goal(p84). +NOT careful(p84). +negligent_mental_state(p84). +benefit_victim(p84,v0). +severity_harm(p84,v1). +NOT goal_outweigh_harm(p84). +foresee_intervention(p84). +high_foreseeability(p84). +NOT external_force(p84). +NOT external_cause(p84). +necessary_for_harm(p84). + +sufficient_for_harm(p85). +plan_known(p85). +NOT plan_include_harm(p85). +someone_else_cause_harm(p85). +NOT outrank_perpetrator(p85). +NOT necessary_for_harm(p85). +monitor(p85). +NOT intervening_contribution(p85). +harm_caused_as_planned(p85). +NOT goal_outweigh_harm(p85). +goal_achieveable_less_harmful(p85). +control_perpetrator(p85). +benefit_protagonist(p85). +NOT careful(p85). +reckless_mental_state(p85). +benefit_victim(p85,v0). +severity_harm(p85,v1). +NOT achieve_goal(p85). +foresee_intervention(p85). +high_foreseeability(p85). +NOT external_force(p85). +NOT external_cause(p85). +produce_harm(p85). + +NOT produce_harm(p86). +plan_known(p86). +NOT plan_include_harm(p86). +NOT someone_else_cause_harm(p86). +outrank_perpetrator(p86). +NOT necessary_for_harm(p86). +monitor(p86). +harm_caused_as_planned(p86). +NOT goal_achieveable_less_harmful(p86). +foresee_intervention(p86). +NOT control_perpetrator(p86). +benefit_protagonist(p86). +NOT achieve_goal(p86). +careful(p86). +neither_mental_state(p86). +benefit_victim(p86,v0). +severity_harm(p86,v1). +NOT goal_outweigh_harm(p86). +NOT intervening_contribution(p86). +high_foreseeability(p86). +NOT external_force(p86). +NOT external_cause(p86). +sufficient_for_harm(p86). + +sufficient_for_harm(p87). +produce_harm(p87). +NOT plan_known(p87). +plan_include_harm(p87). +NOT someone_else_cause_harm(p87). +outrank_perpetrator(p87). +NOT monitor(p87). +NOT harm_caused_as_planned(p87). +goal_outweigh_harm(p87). +goal_achieveable_less_harmful(p87). +NOT foresee_intervention(p87). +NOT control_perpetrator(p87). +benefit_protagonist(p87). +careful(p87). +reckless_mental_state(p87). +benefit_victim(p87,v0). +severity_harm(p87,v1). +NOT achieve_goal(p87). +NOT intervening_contribution(p87). +high_foreseeability(p87). +NOT external_force(p87). +NOT external_cause(p87). +necessary_for_harm(p87). + +produce_harm(p88). +NOT plan_known(p88). +NOT plan_include_harm(p88). +NOT someone_else_cause_harm(p88). +outrank_perpetrator(p88). +necessary_for_harm(p88). +NOT monitor(p88). +NOT intervening_contribution(p88). +harm_caused_as_planned(p88). +goal_outweigh_harm(p88). +control_perpetrator(p88). +benefit_protagonist(p88). +NOT achieve_goal(p88). +careful(p88). +neither_mental_state(p88). +benefit_victim(p88,v0). +severity_harm(p88,v1). +goal_achieveable_less_harmful(p88). +foresee_intervention(p88). +high_foreseeability(p88). +NOT external_force(p88). +NOT external_cause(p88). +sufficient_for_harm(p88). + +sufficient_for_harm(p89). +produce_harm(p89). +plan_known(p89). +NOT plan_include_harm(p89). +someone_else_cause_harm(p89). +outrank_perpetrator(p89). +NOT monitor(p89). +harm_caused_as_planned(p89). +NOT goal_outweigh_harm(p89). +goal_achieveable_less_harmful(p89). +foresee_intervention(p89). +NOT control_perpetrator(p89). +benefit_protagonist(p89). +careful(p89). +neither_mental_state(p89). +benefit_victim(p89,v0). +severity_harm(p89,v1). +NOT achieve_goal(p89). +NOT intervening_contribution(p89). +high_foreseeability(p89). +NOT external_force(p89). +NOT external_cause(p89). +necessary_for_harm(p89). + +*/ + +sufficient_for_harm(p90). +NOT produce_harm(p90). +plan_known(p90). +plan_include_harm(p90). +someone_else_cause_harm(p90). +outrank_perpetrator(p90). +monitor(p90). +harm_caused_as_planned(p90). +goal_outweigh_harm(p90). +NOT foresee_intervention(p90). +control_perpetrator(p90). +NOT benefit_protagonist(p90). +NOT achieve_goal(p90). +NOT careful(p90). +neither_mental_state(p90). +benefit_victim(p90,v0). +severity_harm(p90,v1). +goal_achieveable_less_harmful(p90). +NOT intervening_contribution(p90). +low_foreseeability(p90). +NOT external_force(p90). +NOT external_cause(p90). +necessary_for_harm(p90). + +NOT produce_harm(p91). +NOT plan_known(p91). +plan_include_harm(p91). +NOT someone_else_cause_harm(p91). +outrank_perpetrator(p91). +NOT necessary_for_harm(p91). +NOT monitor(p91). +intervening_contribution(p91). +NOT harm_caused_as_planned(p91). +NOT goal_outweigh_harm(p91). +goal_achieveable_less_harmful(p91). +NOT control_perpetrator(p91). +benefit_protagonist(p91). +careful(p91). +negligent_mental_state(p91). +benefit_victim(p91,v0). +severity_harm(p91,v1). +NOT achieve_goal(p91). +foresee_intervention(p91). +low_foreseeability(p91). +N... [truncated message content] |
From: <ku...@us...> - 2007-08-29 09:23:22
|
Revision: 104 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=104&view=rev Author: kurzum Date: 2007-08-29 02:23:17 -0700 (Wed, 29 Aug 2007) Log Message: ----------- sparql module.txt updated dbpedia examples Modified Paths: -------------- trunk/doc/sparqlModule.txt trunk/examples/dbpedia/SilentBob.conf trunk/examples/dbpedia/SilentBobWorking1.conf trunk/examples/dbpedia/SilentBobWorking2.conf Modified: trunk/doc/sparqlModule.txt =================================================================== --- trunk/doc/sparqlModule.txt 2007-08-29 09:15:29 UTC (rev 103) +++ trunk/doc/sparqlModule.txt 2007-08-29 09:23:17 UTC (rev 104) @@ -1,5 +1,70 @@ +SPARQL-module +The SPARQL module is integrated into the DL-Learner and cannot be run alone any more. +You can just ignore the second part of this file, although it might describe some things +in more detail. + +Here are some things that have to be included in the .conf file +to get a working example: + +loadJarFile("lib/modules/sparqlModule.jar"); +runPreprocessingModule("org.dllearner.modules.SparqlModule"); + +Options: +======== + +sparqlModule.numberOfRecursion = 2; +(range: 1-3) +Influences how deep the Ontology will be cut out +Default: not sure 2 at the moment +1: means only the selected individuals are loaded +2: adds classes of the individuals and properties +3: adds classes of properties of individuals and superclasses of classes + + +sparqlModule.filterMode = 0; +(range 0-2) +These are presets for SPARQL filters (see below for configurations) +0 only yago classes +1 only categories +2 skos and categories + + +With the next options SPARQL filters can be configured in more detail. +USE EITHER THIS or the filtermode above. + +sparqlModule.sparqlPredicateFilterList={"http://www.w3.org/2004/02/skos/core", + "http://xmlns.com/foaf/0.1/", + "http://dbpedia.org/property/wikipage-", + "http://www.w3.org/2002/07/owl#sameAs", + "http://dbpedia.org/property/reference"}; + +sparqlModule.sparqlObjectFilterList={"http://dbpedia.org/resource/Category:Articles_", + "http://dbpedia.org/resource/Category:Wikipedia_", + "http://xmlns.com/foaf/0.1/", + "http://dbpedia.org/resource/Category", + "http://dbpedia.org/resource/Template", + "http://upload.wikimedia.org/wikipedia/commons"}; + + +With the next option you can state namespaces that shall be typed as classes: +sparqlModule.classList={"http://dbpedia.org/class/yago", + "http://dbpedia.org/resource/Category:", + "http://dbpedia.org/resource/Template:", + "http://www.w3.org/2004/02/skos/core", + "http://dbpedia.org/class/"}; + +Hint: You can maybe export the ontology with the help of kaon2 in rdf format using: +export("file.owl"); +But it is untested. + + + +Attention******************************************* +below is a description of how to run the sparql module as a standalone application +this was disabled though and does NOT work at the moment + Algorithm: ========= Modified: trunk/examples/dbpedia/SilentBob.conf =================================================================== --- trunk/examples/dbpedia/SilentBob.conf 2007-08-29 09:15:29 UTC (rev 103) +++ trunk/examples/dbpedia/SilentBob.conf 2007-08-29 09:23:17 UTC (rev 104) @@ -39,10 +39,10 @@ 12 Klassen f�r objects und properties of objects 13 Klassen f�r properties of objects und superklassen von klassen **/ -gp.numberOfIndividuals = 13; +sparqlModule.numberOfRecursion = 3; // nur yago =0 , nur category = 1 // sollte nicht mit aufgenommen werden eher 3 listen mit uris -gp.crossoverPercent = 1; +sparqlModule.filterMode = 1; Modified: trunk/examples/dbpedia/SilentBobWorking1.conf =================================================================== --- trunk/examples/dbpedia/SilentBobWorking1.conf 2007-08-29 09:15:29 UTC (rev 103) +++ trunk/examples/dbpedia/SilentBobWorking1.conf 2007-08-29 09:23:17 UTC (rev 104) @@ -37,10 +37,10 @@ 12 Klassen fr objects und properties of objects 13 Klassen fr properties of objects und superklassen von klassen **/ -gp.numberOfIndividuals = 13; +sparqlModule.numberOfRecursion = 3; // nur yago =0 , nur category = 1 nur skos+cat =2 // sollte nicht mit aufgenommen werden eher 3 listen mit uris -gp.crossoverPercent = 0; +sparqlModule.filterMode = 0; // http://dbpedia.org/class/yago/agnostic OR http://dbpedia.org/class/yago/artist // http://dbpedia.org/class/yago/agnostic OR http://dbpedia.org/class/yago/teetotaler Modified: trunk/examples/dbpedia/SilentBobWorking2.conf =================================================================== --- trunk/examples/dbpedia/SilentBobWorking2.conf 2007-08-29 09:15:29 UTC (rev 103) +++ trunk/examples/dbpedia/SilentBobWorking2.conf 2007-08-29 09:23:17 UTC (rev 104) @@ -37,10 +37,10 @@ 12 Klassen f�r objects und properties of objects 13 Klassen f�r properties of objects und superklassen von klassen **/ -gp.numberOfIndividuals = 13; +sparqlModule.numberOfRecursion = 3; // nur yago =0 , nur category = 1 nur skos+cat =2 // sollte nicht mit aufgenommen werden eher 3 listen mit uris -gp.crossoverPercent = 2; +sparqlModule.filterMode = 2; // hier sind alternativen zum ausklammern This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-29 09:15:31
|
Revision: 103 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=103&view=rev Author: jenslehmann Date: 2007-08-29 02:15:29 -0700 (Wed, 29 Aug 2007) Log Message: ----------- - next version of statistics script (not fully working yet) - some smaller overall improvements Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/ConfigurationManager.java trunk/src/dl-learner/org/dllearner/Info.java trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java trunk/src/dl-learner/org/dllearner/reasoning/DIGHTTPConnector.java trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java Modified: trunk/src/dl-learner/org/dllearner/ConfigurationManager.java =================================================================== --- trunk/src/dl-learner/org/dllearner/ConfigurationManager.java 2007-08-29 08:57:59 UTC (rev 102) +++ trunk/src/dl-learner/org/dllearner/ConfigurationManager.java 2007-08-29 09:15:29 UTC (rev 103) @@ -56,7 +56,7 @@ private List<String> setOptions; public ConfigurationManager() { - this(null); + this(new LinkedList<ConfigurationOption>()); } public ConfigurationManager(Collection<ConfigurationOption> confOptions) { Modified: trunk/src/dl-learner/org/dllearner/Info.java =================================================================== --- trunk/src/dl-learner/org/dllearner/Info.java 2007-08-29 08:57:59 UTC (rev 102) +++ trunk/src/dl-learner/org/dllearner/Info.java 2007-08-29 09:15:29 UTC (rev 103) @@ -3,6 +3,6 @@ package org.dllearner; public class Info { - public static final String build = "2007-08-28"; + public static final String build = "2007-08-29"; } \ No newline at end of file Modified: trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java 2007-08-29 08:57:59 UTC (rev 102) +++ trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java 2007-08-29 09:15:29 UTC (rev 103) @@ -819,8 +819,7 @@ } public Score getSolutionScore() { - // TODO Auto-generated method stub - return null; + return learningProblem.computeScore(getBestSolution()); } public void stop() { Modified: trunk/src/dl-learner/org/dllearner/reasoning/DIGHTTPConnector.java =================================================================== --- trunk/src/dl-learner/org/dllearner/reasoning/DIGHTTPConnector.java 2007-08-29 08:57:59 UTC (rev 102) +++ trunk/src/dl-learner/org/dllearner/reasoning/DIGHTTPConnector.java 2007-08-29 09:15:29 UTC (rev 103) @@ -101,6 +101,7 @@ rd = ResponsesDocument.Factory.parse(answer); } catch (XmlException e) { e.printStackTrace(); + System.err.println("Exception occured when receiving the following string:\n" + answer); } return rd; } Modified: trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java =================================================================== --- trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java 2007-08-29 08:57:59 UTC (rev 102) +++ trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java 2007-08-29 09:15:29 UTC (rev 103) @@ -26,24 +26,29 @@ import java.util.List; import java.util.Map; import java.util.SortedSet; -import java.util.TreeSet; - import org.dllearner.Config; +import org.dllearner.ConfigurationManager; import org.dllearner.LearningProblem; import org.dllearner.Main; import org.dllearner.OntologyFileFormat; +import org.dllearner.Score; +import org.dllearner.Config.Algorithm; +import org.dllearner.algorithms.LearningAlgorithm; +import org.dllearner.algorithms.gp.GP; import org.dllearner.algorithms.refinement.ROLearner; import org.dllearner.dl.AtomicConcept; import org.dllearner.dl.Individual; import org.dllearner.dl.KB; import org.dllearner.parser.DLLearner; +import org.dllearner.reasoning.DIGReasoner; import org.dllearner.reasoning.Reasoner; import org.dllearner.reasoning.ReasoningMethodUnsupportedException; import org.dllearner.reasoning.ReasoningService; /** * Utility script for creating statistics for publications. - * (Warning: Scripts may run for several hours.) + * (Warning: Scripts may run for several hours. Results may change + * when core algorithms are modified.) * * @author Jens Lehmann * @@ -91,77 +96,140 @@ // - more? String exampleBaseDir = "examples/"; + String gnuplotBaseDir = "log/gnuplot/"; + String statBaseDir = "log/stat/"; File[] confFiles = new File[1]; - confFiles[0] = new File(exampleBaseDir, "trains/trains.conf"); + confFiles[0] = new File(exampleBaseDir + "trains", "trains_owl.conf"); - /* - Stat[][] statAr = new Stat[4][3]; - File[][] fileAr = new File[4][3]; + String[] examples = new String[1]; + examples[0] = "trains"; - fileAr[0][0] = new File(baseDir, "gnuplot/hybrid100classification.data"); - fileAr[0][1] = new File(baseDir, "gnuplot/hybrid100length.data"); - fileAr[0][2] = new File(baseDir, "gnuplot/hybrid100runtime.data"); - fileAr[1][0] = new File(baseDir, "gnuplot/hybrid50classification.data"); - fileAr[1][1] = new File(baseDir, "gnuplot/hybrid50length.data"); - fileAr[1][2] = new File(baseDir, "gnuplot/hybrid50runtime.data"); - fileAr[2][0] = new File(baseDir, "gnuplot/gpclassification.data"); - fileAr[2][1] = new File(baseDir, "gnuplot/gplength.data"); - fileAr[2][2] = new File(baseDir, "gnuplot/gpruntime.data"); - */ + String[] algorithms = new String[3]; + algorithms[0] = "refinement"; + algorithms[1] = "gp"; + algorithms[2] = "hybrid"; - // set reasoner URL - try { - Config.digReasonerURL = new URL("http://localhost:8081"); - } catch (MalformedURLException e) { - e.printStackTrace(); - } + int[] algorithmRuns = {1,10,10}; - String fatherConfFile = "examples/father2.conf"; + // do not plot anything + // File[][][] gnuplotFiles = new File[examples.length][algorithms.length][3]; + // for(int i=0; i<examples.length; i++) { + // for(int j=0; j<algorithms.length; j++) { + // gnuplotFiles[i][j][0] = new File(gnuplotBaseDir, examples[i] + "_classification_" + algorithms[j] + ".data"); + // gnuplotFiles[i][j][1] = new File(gnuplotBaseDir, examples[i] + "_length_" + algorithms[j] + ".data"); + // gnuplotFiles[i][j][2] = new File(gnuplotBaseDir, examples[i] + "_runtime_" + algorithms[j] + ".data"); + // } + //} - // file is parsed, but we use only the specified examples really - // (everything else is ignored) - DLLearner.parseFile(fatherConfFile); - // DLLearner.parseFile(fatherConfFile); + File statFile = new File(statBaseDir, "statistics.txt"); + String statString = "**automatically generated statistics**\n\n"; - Map<URL, OntologyFileFormat> imports = getImports(DLLearner.getFunctionCalls()); + // just set default options + ConfigurationManager confMgr = new ConfigurationManager(); + confMgr.applyOptions(); - // initialise reasoner - Reasoner reasoner = Main.createReasoner(new KB(), imports); - ReasoningService rs = new ReasoningService(reasoner); - - Main.autoDetectConceptsAndRoles(rs); - if (Config.Refinement.improveSubsumptionHierarchy) { - try { - reasoner.prepareSubsumptionHierarchy(); - reasoner.prepareRoleHierarchy(); - reasoner.getSubsumptionHierarchy().improveSubsumptionHierarchy(); - } catch (ReasoningMethodUnsupportedException e) { - e.printStackTrace(); + for(int exampleNr=0; exampleNr < examples.length; exampleNr++) { + + // parse current conf file + DLLearner.parseFile(confFiles[exampleNr].toString()); + + // read which files were imported (internal KB is ignored) and initialise reasoner + Map<URL, OntologyFileFormat> imports = getImports(DLLearner.getFunctionCalls(), confFiles[exampleNr]); + + // detect specified positive and negative examples + SortedSet<Individual> positiveExamples = null; + SortedSet<Individual> negativeExamples = null; + Map<AtomicConcept,SortedSet<Individual>> posExamplesTmp = DLLearner.getPositiveExamples(); + Map<AtomicConcept,SortedSet<Individual>> negExamplesTmp = DLLearner.getNegativeExamples(); + for (AtomicConcept target : posExamplesTmp.keySet()) + positiveExamples = posExamplesTmp.get(target); + for (AtomicConcept target : negExamplesTmp.keySet()) + negativeExamples = negExamplesTmp.get(target); + int nrOfExamples = positiveExamples.size() + negativeExamples.size(); + + statString += "example: " + examples[exampleNr] + "\n\n"; + + for(int algorithmNr=0; algorithmNr < algorithms.length; algorithmNr++) { + + // create reasoner (this has to be done in this inner loop to + // ensure that none of the algorithm benefits from e.g. caching + // of previous reasoning requests + Reasoner reasoner = Main.createReasoner(new KB(), imports); + ReasoningService rs = new ReasoningService(reasoner); + + // prepare reasoner for using subsumption and role hierarchy + // TODO: currently, it is a small unfairness that each algorithm + // uses the same reasoning object (e.g. the second algorithm may + // have a small advantage if the reasoner cached reasoning requests + // of the first algorithm) + Main.autoDetectConceptsAndRoles(rs); + try { + reasoner.prepareSubsumptionHierarchy(); + reasoner.prepareRoleHierarchy(); + // improving the subsumption hierarchy makes only sense + // for the refinement based algorithm + if(algorithmNr==0) + reasoner.getSubsumptionHierarchy().improveSubsumptionHierarchy(); + } catch (ReasoningMethodUnsupportedException e) { + e.printStackTrace(); + } + + // create learning problem + LearningProblem learningProblem = new LearningProblem(rs, positiveExamples, negativeExamples); + + LearningAlgorithm learningAlgorithm = null; + if(algorithmNr==0) { + Config.algorithm = Algorithm.REFINEMENT; + learningAlgorithm = new ROLearner(learningProblem); + } else if(algorithmNr==1) { + Config.algorithm = Algorithm.GP; + Config.GP.numberOfIndividuals = 21; + Config.GP.algorithmType = GP.AlgorithmType.GENERATIONAL; + Config.GP.refinementProbability = 0; + Config.GP.mutationProbability = 0.02; + Config.GP.crossoverProbability = 0.8; + Config.GP.hillClimbingProbability = 0; + learningAlgorithm = new GP(learningProblem); + } else if(algorithmNr==2) { + Config.algorithm = Algorithm.HYBRID_GP; + Config.GP.numberOfIndividuals = 11; + Config.GP.algorithmType = GP.AlgorithmType.GENERATIONAL; + Config.GP.refinementProbability = 0.65; + Config.GP.mutationProbability = 0.02; + Config.GP.crossoverProbability = 0.2; + Config.GP.hillClimbingProbability = 0; + learningAlgorithm = new GP(learningProblem); + } + + rs.resetStatistics(); + long algorithmStartTime = System.nanoTime(); + learningAlgorithm.start(); + long algorithmTime = System.nanoTime() - algorithmStartTime; + // long algorithmTimeSeconds = algorithmTime / 1000000000; + + int conceptLength = learningAlgorithm.getBestSolution().getLength(); + Score bestScore = learningAlgorithm.getSolutionScore(); + int misClassifications = bestScore.getCoveredNegatives().size() + + bestScore.getNotCoveredPositives().size(); + double classificationRatePercent = 100 * ((nrOfExamples - misClassifications) / (double) nrOfExamples); + + statString += "algorithm: " + algorithms[algorithmNr] + "\n"; + statString += "classification: " + classificationRatePercent + "%\n"; + statString += "concept length: " + conceptLength + "\n"; + statString += "runtime: " + Helper.prettyPrintNanoSeconds(algorithmTime) + "s\n\n"; + + // free knowledge base to avoid memory leaks + ((DIGReasoner) reasoner).releaseKB(); + } + } - SortedSet<Individual> positiveExamples = new TreeSet<Individual>(); - SortedSet<Individual> negativeExamples = new TreeSet<Individual>(); - Map<AtomicConcept,SortedSet<Individual>> posExamplesTmp = DLLearner.getPositiveExamples(); - Map<AtomicConcept,SortedSet<Individual>> negExamplesTmp = DLLearner.getNegativeExamples(); - - for (AtomicConcept target : posExamplesTmp.keySet()) - positiveExamples = posExamplesTmp.get(target); - - for (AtomicConcept target : negExamplesTmp.keySet()) - negativeExamples = negExamplesTmp.get(target); - - - - LearningProblem learningProblem = new LearningProblem(rs, positiveExamples, negativeExamples); - ROLearner learner = new ROLearner(learningProblem); - learner.start(); - System.out.println(learner.getBestSolution().toString()); - + Main.createFile(statFile, statString); } - private static Map<URL, OntologyFileFormat> getImports(List<List<String>> functionCalls) { + private static Map<URL, OntologyFileFormat> getImports(List<List<String>> functionCalls, File confFile) { Map<URL, OntologyFileFormat> importedFiles = new HashMap<URL, OntologyFileFormat>(); OntologyFileFormat format = null; @@ -170,15 +238,13 @@ for (List<String> call : functionCalls) { if(call.get(0).equals("import")) { - // alte Methode mit file statt URI - // File f = new File(baseDir, call.get(1)); - + try { String fileString = call.get(1); if(fileString.startsWith("http:")) { url = new URL(fileString); } else { - File f = new File("examples", call.get(1)); + File f = new File(confFile.getParent(), call.get(1)); url = f.toURI().toURL(); } } catch (MalformedURLException e) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ku...@us...> - 2007-08-29 08:58:07
|
Revision: 102 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=102&view=rev Author: kurzum Date: 2007-08-29 01:57:59 -0700 (Wed, 29 Aug 2007) Log Message: ----------- confs added for moral reasoner Added Paths: ----------- trunk/examples/moral_reasoner/moral_final_LONG_OWL.conf trunk/examples/moral_reasoner/moral_final_OWL.conf trunk/examples/moral_reasoner/moral_small_LONG.owl Added: trunk/examples/moral_reasoner/moral_final_LONG_OWL.conf =================================================================== --- trunk/examples/moral_reasoner/moral_final_LONG_OWL.conf (rev 0) +++ trunk/examples/moral_reasoner/moral_final_LONG_OWL.conf 2007-08-29 08:57:59 UTC (rev 102) @@ -0,0 +1,246 @@ + /*********************** + solution should be: + guilty = NOT justified AND (responsible OR vicarious) + + Found: ((NOT justified) AND (vicarious OR (negligent_c AND responsible))) + + + + Examples: + 23 positive + 20 negative + + + ***********************/ + + /** settings **/ + // reasoner settings + reasoner = dig; + digReasonerURL = "http://localhost:8081"; + useRetrievalForClassification = true; + refinement.useDIGMultiInstanceChecks = twoChecks; + + // algorithm settings + algorithm = refinement; + refinement.horizontalExpansionFactor = 0.6; + refinement.quiet = false; + refinement.useTooWeakList = true; + + // search tree protocol + refinement.writeSearchTree = false; + refinement.searchTreeFile = "searchTree.txt"; + + // control output + showIndividuals = false; + showConcepts = true; + showRoles = true; + showInternalKB = false; +showSubsumptionHierarchy = true; +//export("moral_LONG.owl"); + + import("moral_small_LONG.owl"); + //hidePrefix("http://localhost/foo#"); +/** background knowledge **/ + ++guilty(p0). ++guilty(p1). ++guilty(p2). ++guilty(p3). ++guilty(p4). ++guilty(p5). ++guilty(p6). ++guilty(p7). ++guilty(p8). ++guilty(p9). ++guilty(p10). +/*+guilty(p11). ++guilty(p12). ++guilty(p13). ++guilty(p14). ++guilty(p15). ++guilty(p16). ++guilty(p17). ++guilty(p18). ++guilty(p19). ++guilty(p20). +/*+guilty(p21). ++guilty(p22). ++guilty(p23). ++guilty(p24). ++guilty(p25). ++guilty(p26). ++guilty(p27). ++guilty(p28). ++guilty(p29). +/*+guilty(p30). ++guilty(p31). ++guilty(p32). ++guilty(p33). ++guilty(p34). ++guilty(p35). ++guilty(p36). ++guilty(p37). ++guilty(p38). ++guilty(p39). ++guilty(p40). ++guilty(p41). ++guilty(p42). ++guilty(p43). ++guilty(p44). ++guilty(p45). ++guilty(p46). ++guilty(p47). ++guilty(p48). ++guilty(p49). ++guilty(p50). ++guilty(p51). ++guilty(p52). ++guilty(p53). ++guilty(p54). ++guilty(p55). ++guilty(p56). ++guilty(p57). ++guilty(p58). ++guilty(p59). ++guilty(p60). ++guilty(p61). ++guilty(p62). ++guilty(p63). ++guilty(p64). ++guilty(p65). ++guilty(p66). ++guilty(p67). ++guilty(p68). ++guilty(p69). ++guilty(p70). ++guilty(p71). ++guilty(p72). ++guilty(p73). ++guilty(p74). ++guilty(p75). ++guilty(p76). ++guilty(p77). ++guilty(p78). ++guilty(p79). ++guilty(p80). ++guilty(p81). ++guilty(p82). ++guilty(p83). ++guilty(p84). ++guilty(p85). ++guilty(p86). ++guilty(p87). ++guilty(p88). ++guilty(p89).*/ ++guilty(p90). ++guilty(p91). ++guilty(p92). ++guilty(p93). ++guilty(p94). ++guilty(p95). ++guilty(p96). ++guilty(p97). ++guilty(p98). ++guilty(p99). ++guilty(p100). ++guilty(p101). +-guilty(n0). +-guilty(n1). +-guilty(n2). +-guilty(n3). +//-guilty(n4). +-guilty(n5). +-guilty(n6). +-guilty(n7). +-guilty(n8). +-guilty(n9). +-guilty(n10). +/*-guilty(n11). +-guilty(n12). +-guilty(n13). +-guilty(n14). +-guilty(n15). +-guilty(n16). +-guilty(n17). +-guilty(n18). +-guilty(n19). +/*-guilty(n20). +-guilty(n21). +-guilty(n22). +-guilty(n23). +-guilty(n24). +-guilty(n25). +-guilty(n26). +-guilty(n27). +-guilty(n28). +-guilty(n29). +/*-guilty(n30). +-guilty(n31). +-guilty(n32). +-guilty(n33). +-guilty(n34). +-guilty(n35). +-guilty(n36). +-guilty(n37). +-guilty(n38). +-guilty(n39). +-guilty(n40). +-guilty(n41). +-guilty(n42). +-guilty(n43). +-guilty(n44). +-guilty(n45). +-guilty(n46). +-guilty(n47). +-guilty(n48). +-guilty(n49). +-guilty(n50). +-guilty(n51). +-guilty(n52). +-guilty(n53). +-guilty(n54). +-guilty(n55). +-guilty(n56). +-guilty(n57). +-guilty(n58). +-guilty(n59). +-guilty(n60). +-guilty(n61). +-guilty(n62). +-guilty(n63). +-guilty(n64). +-guilty(n65). +-guilty(n66). +-guilty(n67). +-guilty(n68). +-guilty(n69). +-guilty(n70). +-guilty(n71). +-guilty(n72). +-guilty(n73). +-guilty(n74). +-guilty(n75). +-guilty(n76). +-guilty(n77). +-guilty(n78). +-guilty(n79). +-guilty(n80). +-guilty(n81). +-guilty(n82). +-guilty(n83). +-guilty(n84). +-guilty(n85). +-guilty(n86). +-guilty(n87). +-guilty(n88). +-guilty(n89).*/ +-guilty(n90). +-guilty(n91). +-guilty(n92). +-guilty(n93). +-guilty(n94). +-guilty(n95). +-guilty(n96). +-guilty(n97). +-guilty(n98). +-guilty(n99). Added: trunk/examples/moral_reasoner/moral_final_OWL.conf =================================================================== --- trunk/examples/moral_reasoner/moral_final_OWL.conf (rev 0) +++ trunk/examples/moral_reasoner/moral_final_OWL.conf 2007-08-29 08:57:59 UTC (rev 102) @@ -0,0 +1,243 @@ + /*********************** + solution should be: + guilty = (blameworthy OR vicarious_blame ). + + + Examples: + 23 positive + 20 negative + + ***********************/ + + /** settings **/ + // reasoner settings + reasoner = dig; + digReasonerURL = "http://localhost:8081"; + useRetrievalForClassification = true; + refinement.useDIGMultiInstanceChecks = twoChecks; + + // algorithm settings + algorithm = refinement; + refinement.horizontalExpansionFactor = 0.6; + refinement.quiet = false; + refinement.useTooWeakList = true; + + // search tree protocol + refinement.writeSearchTree = false; + refinement.searchTreeFile = "searchTree.txt"; + + // control output + showIndividuals = false; + showConcepts = true; + showRoles = true; + showInternalKB = false; +showSubsumptionHierarchy = true; +import("moral_small.owl"); +//hidePrefix("http://localhost/foo#"); + +/** background knowledge **/ + + + ++guilty(p0). ++guilty(p1). ++guilty(p2). ++guilty(p3). ++guilty(p4). ++guilty(p5). ++guilty(p6). ++guilty(p7). ++guilty(p8). ++guilty(p9). ++guilty(p10). +/*+guilty(p11). ++guilty(p12). ++guilty(p13). ++guilty(p14). ++guilty(p15). ++guilty(p16). ++guilty(p17). ++guilty(p18). ++guilty(p19). ++guilty(p20). +/*+guilty(p21). ++guilty(p22). ++guilty(p23). ++guilty(p24). ++guilty(p25). ++guilty(p26). ++guilty(p27). ++guilty(p28). ++guilty(p29). +/*+guilty(p30). ++guilty(p31). ++guilty(p32). ++guilty(p33). ++guilty(p34). ++guilty(p35). ++guilty(p36). ++guilty(p37). ++guilty(p38). ++guilty(p39). ++guilty(p40). ++guilty(p41). ++guilty(p42). ++guilty(p43). ++guilty(p44). ++guilty(p45). ++guilty(p46). ++guilty(p47). ++guilty(p48). ++guilty(p49). ++guilty(p50). ++guilty(p51). ++guilty(p52). ++guilty(p53). ++guilty(p54). ++guilty(p55). ++guilty(p56). ++guilty(p57). ++guilty(p58). ++guilty(p59). ++guilty(p60). ++guilty(p61). ++guilty(p62). ++guilty(p63). ++guilty(p64). ++guilty(p65). ++guilty(p66). ++guilty(p67). ++guilty(p68). ++guilty(p69). ++guilty(p70). ++guilty(p71). ++guilty(p72). ++guilty(p73). ++guilty(p74). ++guilty(p75). ++guilty(p76). ++guilty(p77). ++guilty(p78). ++guilty(p79). ++guilty(p80). ++guilty(p81). ++guilty(p82). ++guilty(p83). ++guilty(p84). ++guilty(p85). ++guilty(p86). ++guilty(p87). ++guilty(p88). ++guilty(p89).*/ ++guilty(p90). ++guilty(p91). ++guilty(p92). ++guilty(p93). ++guilty(p94). ++guilty(p95). ++guilty(p96). ++guilty(p97). ++guilty(p98). ++guilty(p99). ++guilty(p100). ++guilty(p101). +-guilty(n0). +-guilty(n1). +-guilty(n2). +-guilty(n3). +//-guilty(n4). +-guilty(n5). +-guilty(n6). +-guilty(n7). +-guilty(n8). +-guilty(n9). +-guilty(n10). +/*-guilty(n11). +-guilty(n12). +-guilty(n13). +-guilty(n14). +-guilty(n15). +-guilty(n16). +-guilty(n17). +-guilty(n18). +-guilty(n19). +/*-guilty(n20). +-guilty(n21). +-guilty(n22). +-guilty(n23). +-guilty(n24). +-guilty(n25). +-guilty(n26). +-guilty(n27). +-guilty(n28). +-guilty(n29). +/*-guilty(n30). +-guilty(n31). +-guilty(n32). +-guilty(n33). +-guilty(n34). +-guilty(n35). +-guilty(n36). +-guilty(n37). +-guilty(n38). +-guilty(n39). +-guilty(n40). +-guilty(n41). +-guilty(n42). +-guilty(n43). +-guilty(n44). +-guilty(n45). +-guilty(n46). +-guilty(n47). +-guilty(n48). +-guilty(n49). +-guilty(n50). +-guilty(n51). +-guilty(n52). +-guilty(n53). +-guilty(n54). +-guilty(n55). +-guilty(n56). +-guilty(n57). +-guilty(n58). +-guilty(n59). +-guilty(n60). +-guilty(n61). +-guilty(n62). +-guilty(n63). +-guilty(n64). +-guilty(n65). +-guilty(n66). +-guilty(n67). +-guilty(n68). +-guilty(n69). +-guilty(n70). +-guilty(n71). +-guilty(n72). +-guilty(n73). +-guilty(n74). +-guilty(n75). +-guilty(n76). +-guilty(n77). +-guilty(n78). +-guilty(n79). +-guilty(n80). +-guilty(n81). +-guilty(n82). +-guilty(n83). +-guilty(n84). +-guilty(n85). +-guilty(n86). +-guilty(n87). +-guilty(n88). +-guilty(n89). 10*/ +-guilty(n90). +-guilty(n91). +-guilty(n92). +-guilty(n93). +-guilty(n94). +-guilty(n95). +-guilty(n96). +-guilty(n97). +-guilty(n98). +-guilty(n99). Added: trunk/examples/moral_reasoner/moral_small_LONG.owl =================================================================== --- trunk/examples/moral_reasoner/moral_small_LONG.owl (rev 0) +++ trunk/examples/moral_reasoner/moral_small_LONG.owl 2007-08-29 08:57:59 UTC (rev 102) @@ -0,0 +1,3896 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!DOCTYPE rdf:RDF [ + <!ENTITY owl 'http://www.w3.org/2002/07/owl#'> +]> + +<rdf:RDF + xml:base="http://localhost/foo" + xmlns:a="http://localhost/foo#" + xmlns:owl="http://www.w3.org/2002/07/owl#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"> + +<owl:Ontology rdf:about=""/> + +<owl:Class rdf:ID="cause"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#produce_harm"/> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#necessary_for_harm"/> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:unionOf> + </owl:Class> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="foreseeable"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#high_foreseeability"/> + <owl:Class rdf:about="#low_foreseeability"/> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="intend_c"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#strong_intend"/> + <owl:Class rdf:about="#weak_intend"/> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="intend_mental_state"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#reckless_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#negligent_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#neither_mental_state"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="intervening_cause"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#intervening_contribution"/> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="justified"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#achieve_goal"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#goal_outweigh_harm"/> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="negligent_c"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#negligent_mental_state"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#strong_intend"/> + </owl:complementOf> + </owl:Class> + <owl:Class rdf:about="#low_foreseeability"/> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="negligent_mental_state"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#reckless_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intend_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#neither_mental_state"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="neither_mental_state"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#reckless_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#negligent_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intend_mental_state"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="notaccident"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#intend_c"/> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#reckless_c"/> + <owl:Class rdf:about="#negligent_c"/> + </owl:unionOf> + </owl:Class> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="reckless_c"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#reckless_mental_state"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#high_foreseeability"/> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#strong_intend"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="reckless_mental_state"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intend_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#negligent_mental_state"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#neither_mental_state"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="responsible"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#cause"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#notaccident"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#voluntary"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#foreseeable"/> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_cause"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="strong_intend"> + <owl:equivalentClass> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#intend_mental_state"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#plan_known"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#plan_include_harm"/> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:unionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="vicarious"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#someone_else_cause_harm"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#outrank_perpetrator"/> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="voluntary"> + <owl:equivalentClass> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<owl:Class rdf:ID="weak_intend"> + <owl:equivalentClass> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:unionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#monitor"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class rdf:about="#benefit_protagonist"/> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:unionOf> + </owl:Class> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#negligent_c"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#reckless_c"/> + </owl:complementOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:intersectionOf> + </owl:Class> + </owl:equivalentClass> +</owl:Class> + +<a:achieve_goal rdf:ID="n0"> + <rdf:type rdf:resource="#control_perpetrator"/> + <rdf:type rdf:resource="#external_cause"/> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#harm_caused_as_planned"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#reckless_mental_state"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_protagonist"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_contribution"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#monitor"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#outrank_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v0"/> + <a:severity_harm rdf:resource="#v0"/> +</a:achieve_goal> + +<a:control_perpetrator rdf:ID="n1"> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#low_foreseeability"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#neither_mental_state"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_protagonist"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#outrank_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_include_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v1"/> + <a:severity_harm rdf:resource="#v0"/> +</a:control_perpetrator> + +<a:achieve_goal rdf:ID="n10"> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#harm_caused_as_planned"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#negligent_mental_state"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#someone_else_cause_harm"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_protagonist"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_contribution"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#outrank_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_include_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v0"/> + <a:severity_harm rdf:resource="#v0"/> +</a:achieve_goal> + +<a:benefit_protagonist rdf:ID="n2"> + <rdf:type rdf:resource="#careful"/> + <rdf:type rdf:resource="#external_cause"/> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#harm_caused_as_planned"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#low_foreseeability"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#neither_mental_state"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#produce_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v1"/> + <a:severity_harm rdf:resource="#v1"/> +</a:benefit_protagonist> + +<a:careful rdf:ID="n3"> + <rdf:type rdf:resource="#external_cause"/> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#low_foreseeability"/> + <rdf:type rdf:resource="#neither_mental_state"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_protagonist"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_outweigh_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#monitor"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#necessary_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_include_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v1"/> + <a:severity_harm rdf:resource="#v0"/> +</a:careful> + +<a:careful rdf:ID="n5"> + <rdf:type rdf:resource="#external_force"/> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#harm_caused_as_planned"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#low_foreseeability"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#neither_mental_state"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#someone_else_cause_harm"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_protagonist"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_outweigh_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#necessary_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v1"/> + <a:severity_harm rdf:resource="#v1"/> +</a:careful> + +<a:achieve_goal rdf:ID="n6"> + <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#careful"/> + <rdf:type rdf:resource="#control_perpetrator"/> + <rdf:type rdf:resource="#external_force"/> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#neither_mental_state"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_include_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v0"/> + <a:severity_harm rdf:resource="#v1"/> +</a:achieve_goal> + +<a:benefit_protagonist rdf:ID="n7"> + <rdf:type rdf:resource="#control_perpetrator"/> + <rdf:type rdf:resource="#external_cause"/> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#reckless_mental_state"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#outrank_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_include_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v1"/> + <a:severity_harm rdf:resource="#v1"/> +</a:benefit_protagonist> + +<a:achieve_goal rdf:ID="n8"> + <rdf:type rdf:resource="#control_perpetrator"/> + <rdf:type rdf:resource="#external_cause"/> + <rdf:type rdf:resource="#external_force"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#harm_caused_as_planned"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#low_foreseeability"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#reckless_mental_state"/> + <rdf:type rdf:resource="#someone_else_cause_harm"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_protagonist"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#monitor"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#necessary_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_known"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v1"/> + <a:severity_harm rdf:resource="#v1"/> +</a:achieve_goal> + +<a:benefit_protagonist rdf:ID="n9"> + <rdf:type rdf:resource="#foresee_intervention"/> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#low_foreseeability"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#negligent_mental_state"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#someone_else_cause_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_force"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_contribution"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#necessary_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_include_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v0"/> + <a:severity_harm rdf:resource="#v0"/> +</a:benefit_protagonist> + +<a:external_force rdf:ID="n90"> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#intervening_contribution"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#neither_mental_state"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#someone_else_cause_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#achieve_goal"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_protagonist"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#careful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_outweigh_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#monitor"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#outrank_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_include_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v0"/> + <a:severity_harm rdf:resource="#v1"/> +</a:external_force> + +<a:achieve_goal rdf:ID="n91"> + <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#careful"/> + <rdf:type rdf:resource="#external_force"/> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#negligent_mental_state"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_include_harm"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#external_cause"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_outweigh_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_contribution"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#necessary_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v1"/> + <a:severity_harm rdf:resource="#v1"/> +</a:achieve_goal> + +<a:achieve_goal rdf:ID="n92"> + <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#careful"/> + <rdf:type rdf:resource="#control_perpetrator"/> + <rdf:type rdf:resource="#external_cause"/> + <rdf:type rdf:resource="#external_force"/> + <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> + <rdf:type rdf:resource="#goal_outweigh_harm"/> + <rdf:type rdf:resource="#high_foreseeability"/> + <rdf:type rdf:resource="#monitor"/> + <rdf:type rdf:resource="#necessary_for_harm"/> + <rdf:type rdf:resource="#neither_mental_state"/> + <rdf:type rdf:resource="#outrank_perpetrator"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_contribution"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_include_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#sufficient_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <a:benefit_victim rdf:resource="#v0"/> + <a:severity_harm rdf:resource="#v0"/> +</a:achieve_goal> + +<a:achieve_goal rdf:ID="n93"> + <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#careful"/> + <rdf:type rdf:resource="#external_cause"/> + <rdf:type rdf:resource="#external_force"/> + <rdf:type rdf:resource="#low_foreseeability"/> + <rdf:type rdf:resource="#negligent_mental_state"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#control_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#foresee_intervention"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_achieveable_less_harmful"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#goal_outweigh_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#harm_caused_as_planned"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#intervening_contribution"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#monitor"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#necessary_for_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#outrank_perpetrator"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_include_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#plan_known"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#produce_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#someone_else_cause_harm"/> + </owl:complementOf> + </owl... [truncated message content] |
From: <ku...@us...> - 2007-08-29 08:40:25
|
Revision: 101 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=101&view=rev Author: kurzum Date: 2007-08-29 01:40:20 -0700 (Wed, 29 Aug 2007) Log Message: ----------- added modules.sparql to javadoc Modified Paths: -------------- trunk/build.xml Modified: trunk/build.xml =================================================================== --- trunk/build.xml 2007-08-29 08:36:13 UTC (rev 100) +++ trunk/build.xml 2007-08-29 08:40:20 UTC (rev 101) @@ -208,7 +208,7 @@ nonavbar="false" notree="false" overview="src/dl-learner/overview.html" - packagenames="org.dllearner.reasoning,org.dllearner.dl,org.dllearner.server,org.dllearner,org.dllearner.server.exceptions,org.dllearner.server.jaxws,org.dllearner.algorithms.gp,org.dllearner.parser,org.dllearner.modules,org.dllearner.algorithms,org.dllearner.examples,org.dllearner.utilities,org.dllearner.algorithms.hybridgp,org.dllearner.algorithms.refinement" + packagenames="org.dllearner.reasoning,org.dllearner.dl,org.dllearner.server,org.dllearner,org.dllearner.server.exceptions,org.dllearner.server.jaxws,org.dllearner.algorithms.gp,org.dllearner.parser,org.dllearner.modules,org.dllearner.modules.sparql,org.dllearner.algorithms,org.dllearner.examples,org.dllearner.utilities,org.dllearner.algorithms.hybridgp,org.dllearner.algorithms.refinement" source="1.6" sourcepath="src/dl-learner" splitindex="true" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ku...@us...> - 2007-08-29 08:36:18
|
Revision: 100 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=100&view=rev Author: kurzum Date: 2007-08-29 01:36:13 -0700 (Wed, 29 Aug 2007) Log Message: ----------- css path changed Modified Paths: -------------- trunk/build.xml Modified: trunk/build.xml =================================================================== --- trunk/build.xml 2007-08-29 08:32:41 UTC (rev 99) +++ trunk/build.xml 2007-08-29 08:36:13 UTC (rev 100) @@ -212,7 +212,7 @@ source="1.6" sourcepath="src/dl-learner" splitindex="true" - stylesheetfile="/home/jl/promotion/dl-learner-svn/trunk/javadoc.css" + stylesheetfile="javadoc.css" use="true" version="true" linksource="true" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ku...@us...> - 2007-08-29 08:32:48
|
Revision: 99 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=99&view=rev Author: kurzum Date: 2007-08-29 01:32:41 -0700 (Wed, 29 Aug 2007) Log Message: ----------- sparqlmodule sourcecode Added Paths: ----------- trunk/src/dl-learner/org/dllearner/modules/sparql/ trunk/src/dl-learner/org/dllearner/modules/sparql/Cache.java trunk/src/dl-learner/org/dllearner/modules/sparql/OntologyCollector.java trunk/src/dl-learner/org/dllearner/modules/sparql/PartialOntology.java trunk/src/dl-learner/org/dllearner/modules/sparql/QueryMaker.java trunk/src/dl-learner/org/dllearner/modules/sparql/SimpleHTTPRequest.java trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlFilter.java trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlModule.java trunk/src/dl-learner/org/dllearner/modules/sparql/Util.java Added: trunk/src/dl-learner/org/dllearner/modules/sparql/Cache.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/Cache.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/Cache.java 2007-08-29 08:32:41 UTC (rev 99) @@ -0,0 +1,115 @@ +package org.dllearner.modules.sparql; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; +import java.io.Serializable; +import java.net.URLEncoder; + +public class Cache implements Serializable{ + // Object can be the cache itself + // or a cache object(one entry) + + final static long serialVersionUID=104; + transient String basedir=""; + transient String fileending=".cache"; + long timestamp; + String content=""; + long daysoffreshness=15; + long multiplier=24*60*60*1000;//h m s ms + String sparqlquery=""; + + //constructor for the cache itself + public Cache(String path){ + this.basedir=path+File.separator; + if(!new File(path).exists()) + {System.out.println(new File(path).mkdir());;} + + } + +// constructor for single cache object(one entry) + public Cache(String c, String sparql){ + this.content=c; + this.sparqlquery=sparql; + this.timestamp=System.currentTimeMillis(); + } + + + public String get(String key, String sparql){ + //System.out.println("get From "+key); + String ret=null; + try{ + Cache c =readFromFile(makeFilename(key)) ; + if(c==null)return null; + //System.out.println(" file found"); + if(!c.checkFreshness())return null; + //System.out.println("fresh"); + if(!c.validate(sparql))return null; + //System.out.println("valid"); + ret=c.content; + }catch (Exception e) {e.printStackTrace();} + return ret; + }; + public void put(String key, String content, String sparql){ + //System.out.println("put into "+key); + Cache c=new Cache(content,sparql); + putIntoFile(makeFilename(key), c); + } + + + String makeFilename(String key){ + String ret=""; + try{ + ret=basedir+URLEncoder.encode(key, "UTF-8")+fileending; + }catch (Exception e) {e.printStackTrace();} + return ret; + } + boolean checkFreshness(){ + if((System.currentTimeMillis()-this.timestamp)<=(daysoffreshness*multiplier)) + //fresh + return true; + else return false; + } + boolean validate(String sparql){ + if(this.sparqlquery.equals(sparql)) + //valid + return true; + else return false; + } + + public void checkFile(String Filename){ + if(!new File(Filename).exists()){ + try{ + new File(Filename).createNewFile(); + }catch (Exception e) {e.printStackTrace();} + + } + + } + + public void putIntoFile(String Filename,Cache content){ + try{ + //FileWriter fw=new FileWriter(new File(Filename),true); + FileOutputStream fos = new FileOutputStream( Filename , false ); + ObjectOutputStream o = new ObjectOutputStream( fos ); + o.writeObject( content ); + fos.flush(); + fos.close(); + }catch (Exception e) {System.out.println("Not in cache creating: "+Filename);} + } + + public Cache readFromFile(String Filename){ + Cache content=null; + try{ + FileInputStream fos = new FileInputStream( Filename ); + ObjectInputStream o = new ObjectInputStream( fos ); + content=(Cache)o.readObject(); + //FileReader fr=new FileReader(new File(Filename,"r")); + //BufferedReader br=new BufferedReader(fr); + }catch (Exception e) {} + return content; + + } +} Added: trunk/src/dl-learner/org/dllearner/modules/sparql/OntologyCollector.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/OntologyCollector.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/OntologyCollector.java 2007-08-29 08:32:41 UTC (rev 99) @@ -0,0 +1,262 @@ +package org.dllearner.modules.sparql; + +import java.net.InetAddress; +import java.util.ArrayList; +import java.util.HashSet; +import java.util.Iterator; + +public class OntologyCollector { + + boolean print_flag=false; + SimpleHTTPRequest s; + QueryMaker q; + Cache c; + InetAddress ia; + SparqlFilter sf; + String[] subjectList; + int numberOfRecursions; + HashSet<String> properties; + HashSet<String> classes; + HashSet<String> instances; + HashSet<String> triples; + + String subclass="http://www.w3.org/2000/01/rdf-schema#subClassOf"; + String type="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"; + String objectProperty="http://www.w3.org/2002/07/owl#ObjectProperty"; + String classns="http://www.w3.org/2002/07/owl#Class"; + String thing="http://www.w3.org/2002/07/owl#Thing"; + + + String[] defaultClasses={ + "http://dbpedia.org/class/yago", + "http://dbpedia.org/resource/Category:", + "http://dbpedia.org/resource/Template:", + "http://www.w3.org/2004/02/skos/core", + "http://dbpedia.org/class/"}; //TODO FEHLER hier fehlt yago + + + public OntologyCollector(String[] subjectList,int numberOfRecursions, + int filterMode, String[] FilterPredList,String[] FilterObjList,String[] defClasses){ + this.subjectList=subjectList; + this.numberOfRecursions=numberOfRecursions; + + this.s=new SimpleHTTPRequest(); + this.q=new QueryMaker(); + this.c=new Cache("cache"); + if(defClasses!=null && defClasses.length>0 ){ + this.defaultClasses=defClasses; + } + + try{ + this.sf=new SparqlFilter(filterMode,FilterPredList,FilterObjList); + this.ia=InetAddress.getByName("dbpedia.openlinksw.com"); + //this.fw=new FileWriter(new File(System.currentTimeMillis()+".nt"),true); + this.properties=new HashSet<String>(); + this.classes=new HashSet<String>(); + this.instances=new HashSet<String>(); + this.triples=new HashSet<String>(); + //this.all=new HashSet<String>(); + }catch (Exception e) {e.printStackTrace();} + + } + public String collectOntology(){ + getRecursiveList(subjectList, numberOfRecursions); + finalize(); + String ret=""; + for (Iterator<String> iter = triples.iterator(); iter.hasNext();) { + ret += iter.next(); + + } + return ret; + } + + public void getRecursiveList(String[] subjects,int NumberofRecursions){ + for (int i = 0; i < subjects.length; i++) { + getRecursive(subjects[i], NumberofRecursions); + + } + + } + + public void getRecursive(String StartingSubject,int NumberofRecursions){ + System.out.print("SparqlModul: Depth: "+NumberofRecursions+" @ "+StartingSubject+" "); + if(NumberofRecursions<=0) + { return; + } + else {NumberofRecursions--;} + //System.out.println(NumberofRecursions); + try{ + + String sparql=q.makeQueryFilter(StartingSubject,this.sf); + p(sparql); + p("*******************"); + String FromCache=c.get(StartingSubject, sparql); + String xml; + if(FromCache==null){ + xml=s.sendAndReceive(ia, 8890, sparql); + c.put(StartingSubject, xml, sparql); + System.out.print("\n"); + } + else{ + xml=FromCache; + System.out.println("FROM CACHE"); + } + p(xml); + p("***********************"); + String[] newSubjects=processResult(StartingSubject,xml); + + for (int i = 0; (i < newSubjects.length)&& NumberofRecursions!=0; i++) { + getRecursive(newSubjects[i], NumberofRecursions); + } + + //System.out.println(xml); + }catch (Exception e) {e.printStackTrace();} + + } + + public String[] processResult(String subject,String xml){ + //TODO if result is empty, catch exceptions + String one="<binding name=\"predicate\"><uri>"; + String two="<binding name=\"object\"><uri>"; + String end="</uri></binding>"; + String predtmp=""; + String objtmp=""; + ArrayList<String> al=new ArrayList<String>(); + + while(xml.indexOf(one)!=-1){ + //get pred + xml=xml.substring(xml.indexOf(one)+one.length()); + predtmp=xml.substring(0,xml.indexOf(end)); + //getobj + xml=xml.substring(xml.indexOf(two)+two.length()); + objtmp=xml.substring(0,xml.indexOf(end)); + + + processTriples(subject, predtmp, objtmp,al); + //System.out.println(al.size()); + + } + + Object[] o=al.toArray(); + String[] ret=new String[o.length]; + for (int i = 0; i < o.length; i++) { + ret[i]=(String)o[i]; + } + return ret; + //return (String[])al.toArray(); + //System.out.println(xml); + } + public void processTriples(String s,String p, String o,ArrayList<String> al){ + String t="/Category"; + if(s.equals(t) || o.equals(t))return ; + + if(sf.mode==2) + { + if( o.startsWith("http://dbpedia.org/resource/Category:") + && + !p.startsWith("http://www.w3.org/2004/02/skos/core") + ) + {return;} + if(p.equals("http://www.w3.org/2004/02/skos/core#broader")){ + p=subclass; + } + else if(p.equals("http://www.w3.org/2004/02/skos/core#subject")){ + p=type; + } + else {} + } + + //save for further processing + al.add(o); + + if(isClass(o)){ + classes.add(o); + if(isClass(s))p=subclass; + else p=type; + } + else { + instances.add(o); + this.properties.add(p); + } + + + + //maketriples + try{ + this.triples.add(makeTriples(s, p, o)); + //fw.write(makeTriples(subject, predtmp, objtmp)); + }catch (Exception e) {e.printStackTrace();} + + + return; + } +// also makes subclass property between classes + public String makeTriples(String s,String p, String o){ + //s=replaceNamespace(s); + //p=replaceNamespace(p); + //o=replaceNamespace(o); + String ret=""; + ret="<"+s+"> <"+p+"> <"+o+">.\n"; + return ret; + } + + public boolean isClass(String obj){ + + boolean retval=false; + for (String defclass : defaultClasses) { + if(obj.contains(defclass))retval=true; + } + return retval; + } + + + @Override + public void finalize(){ + typeProperties(); + typeClasses(); + typeInstances(); + } + + public void typeProperties(){ + String rdfns="http://www.w3.org/1999/02/22-rdf-syntax-ns"; + String owlns="http://www.w3.org/2002/07/owl"; + Iterator<String> it=properties.iterator(); + String current=""; + while (it.hasNext()){ + try{ + current=it.next(); + if(current.equals(subclass))continue; + if(current.contains(rdfns)||current.contains(owlns)){/*DO NOTHING*/} + else {this.triples.add(makeTriples(current,type,objectProperty));} + }catch (Exception e) {} + + } + } + public void typeClasses(){ + Iterator<String> it=classes.iterator(); + String current=""; + while (it.hasNext()){ + try{ + current=it.next(); + this.triples.add(makeTriples(current,type,classns)); + }catch (Exception e) {} + } + } + public void typeInstances(){ + Iterator<String> it=instances.iterator(); + String current=""; + while (it.hasNext()){ + try{ + current=it.next(); + this.triples.add(makeTriples(current,type,thing)); + }catch (Exception e) {} + } + } + + public void p(String s){ + if(print_flag) + System.out.println(s); + } + + +} Added: trunk/src/dl-learner/org/dllearner/modules/sparql/PartialOntology.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/PartialOntology.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/PartialOntology.java 2007-08-29 08:32:41 UTC (rev 99) @@ -0,0 +1,380 @@ +package org.dllearner.modules.sparql; + +import java.io.File; +import java.io.FileWriter; +import java.net.InetAddress; +import java.util.ArrayList; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.SortedSet; + +import org.dllearner.ConfigurationOption; +import org.dllearner.dl.AtomicConcept; +import org.dllearner.dl.Individual; +import org.dllearner.dl.KB; +import org.dllearner.modules.PreprocessingModule; + + +public class PartialOntology implements PreprocessingModule { + SimpleHTTPRequest s; + QueryMaker q; + Cache c; + InetAddress ia; + FileWriter fw; + HashSet<String> properties; + HashSet<String> classes; + HashSet<String> instances; + //HashSet<String> all;// remove after cache is here + String[] FilterPredList=null; + String[] FilterObjList=null; + + String[] defaultClasses={ + "http://dbpedia.org/class/yago", + "http://dbpedia.org/resource/Category:", + "http://www.w3.org/2004/02/skos/core", + "http://dbpedia.org/class/"}; //TODO FEHLER hier fehlt yago + + + public String getModuleName(){ + return "SparqlModule"; + } + + public void preprocess(KB kb, + Map<AtomicConcept, SortedSet<Individual>> positiveExamples, + Map<AtomicConcept, SortedSet<Individual>> negativeExamples, + List<ConfigurationOption> confOptions, + List<List<String>> functionCalls, String baseDir, + boolean useQueryMode) { + + String filename=System.currentTimeMillis()+".nt"; + ArrayList<String> al=new ArrayList<String>(); + //int numberOfRecursions=3; + String prefix=""; + al.add("import");al.add(filename);al.add( "N-TRIPLES"); + functionCalls.add(al); + al=new ArrayList<String>(); + + for (int i = 0; i < confOptions.size(); i++) { + if(confOptions.get(i).getOption().equals("hidePrefix")){ + prefix=confOptions.get(i).getStrValue(); + } + System.out.println(confOptions.get(i).getOption()); + if(confOptions.get(i).getOption().equals("gp")) + System.out.println(confOptions.get(i).getIntValue()+"AAAAAAAAAAAAAAAAAAAA"); + } + //System.out.println(confOptions); + //Iterator it=positiveExamples.keySet().iterator(); + addMapToArrayList(al,positiveExamples); + addMapToArrayList(al,negativeExamples); + String[] subjectList=new String[al.size()]; + Object[] o=al.toArray(); + for (int i = 0; i < subjectList.length; i++) { + subjectList[i]=prefix+(String)o[i]; + } + + + + + try{ + this.fw=new FileWriter(new File(baseDir+File.separator+filename),true); + + //this.getRecursiveList(subjectList,numberOfRecursions); + //this.finalize(); + + System.out.println("****Finished"); + + /*System.out.println(this.classes); + System.out.println(this.properties); + System.out.println(this.instances); + System.out.println();*/ + + /*for (String s : subjectList) { + //System.out.println("+test(\""+s+"\")."); + } + */ + this.fw.close(); + }catch (Exception e) {e.printStackTrace();} + + + //System.out.println(positiveExamples); + //System.out.println(functionCalls); + //System.out.println(confOptions); + +// System.out.println(baseDir); + + } + + void addMapToArrayList(ArrayList<String> al, Map<AtomicConcept, SortedSet<Individual>> m){ + Iterator<AtomicConcept> it=m.keySet().iterator(); + while(it.hasNext()){ + SortedSet<Individual> s=m.get(it.next()); + Iterator<Individual> inner =s.iterator(); + while(inner.hasNext()){ + al.add(inner.next().toString()); + } + } + + } + + + + /*public static void main(String[] args){ + try{ + int numberOfRecursions=1; + + /*String[] subjectList={ + "http://dbpedia.org/resource/Adolf_Hitler", + "http://dbpedia.org/resource/Prince_Chlodwig_zu_HohenloheSchillingsf%C3%BCrst", + "http://dbpedia.org/resource/Prince_Maximilian_of_Baden", + "http://dbpedia.org/resource/Franz_von_Papen", + "http://dbpedia.org/resource/Joseph_Goebbels", + "http://dbpedia.org/resource/Gerhard_Schr%C3%B6der", + "http://dbpedia.org/resource/Angela_Merkel", + "http://dbpedia.org/resource/Helmut_Kohl", + "http://dbpedia.org/resource/Helmut_Schmidt", + "http://dbpedia.org/resource/Ludwig_Erhard", + "http://dbpedia.org/resource/Willy_Brandt" + };*/ + + /*String[] subjectList=args; + + + + + + SparqlModule sm=new SparqlModule(); + + sm.getRecursiveList(subjectList,numberOfRecursions); + + + sm.finalize(); + + System.out.println("****Finished preprocessing"); + //System.out.println(sm.classes); + //System.out.println(sm.properties); + //System.out.println(sm.instances); + //System.out.println(); + + for (String s : subjectList) { + System.out.println("+test(\""+s+"\")."); + } + + sm.fw.close(); + }catch (Exception e) {e.printStackTrace();} + + }*/ + + + public PartialOntology() { + this.s=new SimpleHTTPRequest(); + this.q=new QueryMaker(); + this.c=new Cache("cache"); + try{ + this.ia=InetAddress.getByName("dbpedia.openlinksw.com"); + //this.fw=new FileWriter(new File(System.currentTimeMillis()+".nt"),true); + this.properties=new HashSet<String>(); + this.classes=new HashSet<String>(); + this.instances=new HashSet<String>(); + //this.all=new HashSet<String>(); + + }catch (Exception e) {e.printStackTrace();} + } + + + + public void getRecursiveList(String[] subjects,int NumberofRecursions){ + for (int i = 0; i < subjects.length; i++) { + getRecursive(subjects[i], NumberofRecursions); + + } + + } + + public void getRecursive(String StartingSubject,int NumberofRecursions){ + System.out.print("Tiefe: "+NumberofRecursions+" @ "+StartingSubject+" "); + if(NumberofRecursions<=0) + { return; + } + else {NumberofRecursions--;} + //System.out.println(NumberofRecursions); + try{ + + String sparql=q.makeQueryFilter(StartingSubject, new SparqlFilter(0,null,null)); + String FromCache=c.get(StartingSubject, sparql); + String xml; + if(FromCache==null){ + xml=s.sendAndReceive(ia, 8890, sparql); + c.put(StartingSubject, xml, sparql); + System.out.print("\n"); + } + else{ + xml=FromCache; + System.out.println("FROM CACHE"); + } + + String[] newSubjects=processResult(StartingSubject,xml); + + for (int i = 0; (i < newSubjects.length)&& NumberofRecursions!=0; i++) { + getRecursive(newSubjects[i], NumberofRecursions); + } + + //System.out.println(xml); + }catch (Exception e) {e.printStackTrace();} + + } + + public String[] processResult(String subject,String xml){ + //TODO if result is empty, catch exceptions + String one="<binding name=\"predicate\"><uri>"; + String two="<binding name=\"object\"><uri>"; + String end="</uri></binding>"; + String predtmp=""; + String objtmp=""; + ArrayList<String> al=new ArrayList<String>(); + + while(xml.indexOf(one)!=-1){ + //get pred + xml=xml.substring(xml.indexOf(one)+one.length()); + predtmp=xml.substring(0,xml.indexOf(end)); + //getobj + xml=xml.substring(xml.indexOf(two)+two.length()); + objtmp=xml.substring(0,xml.indexOf(end)); + + //save for further processing + al.add(objtmp); + this.properties.add(predtmp); + if(isClass(objtmp))classes.add(objtmp); + else instances.add(objtmp); + + //maketriples + try{ + fw.write(makeTriples(subject, predtmp, objtmp)); + }catch (Exception e) {e.printStackTrace();} + //System.out.println(predtmp); + //System.out.println(objtmp); + //xml=xml.substring(xml.indexOf(one)+one.length()); + } + + Object[] o=al.toArray(); + String[] ret=new String[o.length]; + for (int i = 0; i < o.length; i++) { + ret[i]=(String)o[i]; + } + return ret; + //return (String[])al.toArray(); + //System.out.println(xml); + } + + public String makeTriples(String s,String p, String o){ + //this.properties.add(p); + String subclass="http://www.w3.org/2000/01/rdf-schema#subClassOf"; + + String ret=""; + if(isClass(s))ret="<"+s+"> <"+subclass+"> <"+o+">.\n"; + else ret="<"+s+"> <"+p+"> <"+o+">.\n"; + + + return ret; + } + + public String makeTriplesNoSub(String s,String p, String o){ + //this.properties.add(p); + + + String ret=""; + ret="<"+s+"> <"+p+"> <"+o+">.\n"; + + + return ret; + } + + @Override + public void finalize(){ + typeProperties(); + typeClasses(); + typeInstances(); + } + + public void typeProperties(){ + String rdfns="http://www.w3.org/1999/02/22-rdf-syntax-ns"; + String owlns="http://www.w3.org/2002/07/owl"; + + Iterator<String> it=properties.iterator(); + String p="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"; + String o="http://www.w3.org/2002/07/owl#ObjectProperty"; + + String current=""; + while (it.hasNext()){ + try{ + current=it.next(); + if(current.contains(rdfns)||current.contains(owlns)){/*DO NOTHING*/} + else {this.fw.write(makeTriples(current,p,o));} + }catch (Exception e) {} + + } + + + } + public void typeClasses(){ + Iterator<String> it=classes.iterator(); + String p="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"; + String o="http://www.w3.org/2002/07/owl#Class"; + + String current=""; + while (it.hasNext()){ + try{ + current=it.next(); + this.fw.write(makeTriplesNoSub(current,p,o)); + }catch (Exception e) {} + + } + + + } + public void typeInstances(){ + Iterator<String>it=instances.iterator(); + String p="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"; + //String o1="http://www.w3.org/2002/07/owl#Class"; + String o2="http://www.w3.org/2002/07/owl#Thing"; + String current=""; + while (it.hasNext()){ + try{ + current=it.next(); + //fw.write(makeTriples(current,p,o1)); + + this.fw.write(makeTriples(current,p,o2)); + }catch (Exception e) {} + } + + + } + + public boolean isClass(String obj){ + + boolean retval=false; + for (String defclass : defaultClasses) { + if(obj.contains(defclass))retval=true; + } + return retval; + } + + + + public void printHashSet(HashSet<String> h){ + Iterator<String> it=h.iterator(); + String current=""; + while (it.hasNext()){ + current=it.next(); + + if(current.contains("http://dbpedia.org/resource/"))System.out.println("test(\""+current+"\")."); + } + } + + + + + + +} Added: trunk/src/dl-learner/org/dllearner/modules/sparql/QueryMaker.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/QueryMaker.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/QueryMaker.java 2007-08-29 08:32:41 UTC (rev 99) @@ -0,0 +1,84 @@ +package org.dllearner.modules.sparql; + +public class QueryMaker { + //Good + /*public static String owl ="http://www.w3.org/2002/07/owl#"; + public static String xsd="http://www.w3.org/2001/XMLSchema#"; + public static String rdfs="http://www.w3.org/2000/01/rdf-schema#"; + public static String rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"; + public static String base="http://dbpedia.org/resource/"; + public static String dbpedia2="http://dbpedia.org/property/"; + public static String dbpedia="http://dbpedia.org/"; + + + //BAD + public static String skos="http://www.w3.org/2004/02/skos/core#"; + public static String foaf="http://xmlns.com/foaf/0.1/"; + public static String dc="http://purl.org/dc/elements/1.1/"; + public static String foreign="http://dbpedia.org/property/wikipage-"; + public static String sameAs="http://www.w3.org/2002/07/owl#sameAs"; + public static String reference="http://dbpedia.org/property/reference";*/ + + + + int tempyago=0; + + + + + public String makeQueryFilter(String subject, SparqlFilter sf){ + + + String Filter=""; + if(!sf.useLiterals)Filter+="!isLiteral(?object))"; + for (String p : sf.getPredFilter()) { + Filter+="\n" + filterPredicate(p); + } + for (String o : sf.getObjFilter()) { + Filter+="\n" + filterObject(o); + } + + + String ret= + "SELECT * WHERE { \n" + + "<"+ + subject+ + + "> ?predicate ?object.\n" + + "FILTER( \n" + + "(" +Filter+").}"; + //System.out.println(ret); + return ret; + } + + + /*public String makeQueryDefault(String subject){ + String ret= + "SELECT * WHERE { \n" + + "<"+ + subject+ + + "> ?predicate ?object.\n" + + "FILTER( \n" + + "(!isLiteral(?object))" + + "\n" + filterPredicate(skos)+ + //"\n" + filterObject(skos)+ + "\n" + filterPredicate(foaf)+ + "\n" + filterObject(foaf)+ + "\n" + filterPredicate(foreign)+ + "\n" + filterPredicate(sameAs)+ + "\n" + filterPredicate(reference)+ + ")." + + " }"; + + //System.out.println(ret); + return ret; +}*/ + + public String filterObject(String ns){ + return "&&( !regex((?object), '"+ns+"') )"; + } + public String filterPredicate(String ns){ + return "&&( !regex(str(?predicate), '"+ns+"') )"; + } +} Added: trunk/src/dl-learner/org/dllearner/modules/sparql/SimpleHTTPRequest.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/SimpleHTTPRequest.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/SimpleHTTPRequest.java 2007-08-29 08:32:41 UTC (rev 99) @@ -0,0 +1,98 @@ +package org.dllearner.modules.sparql; + +import java.io.BufferedInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.net.InetAddress; +import java.net.Socket; +import java.net.URLEncoder; + + + +public class SimpleHTTPRequest { + static final char value[]={13,10}; + static final String cut=new String(value); + + + + + public String sendAndReceive(InetAddress ia, int port, String sparql){ + String retval=""; + // + + byte resp[]=null; + + try{ + Socket SparqlServer=new Socket(ia,port); + String request=makeHeader(sparql); + // send request + (SparqlServer.getOutputStream()).write(request.getBytes()); + + //get Response + resp=readBuffer(new BufferedInputStream(SparqlServer.getInputStream())); + retval=new String(resp); + retval=subtractResponseHeader(retval); + //retval="||"+retval; + + SparqlServer.close(); + + + + } + catch(Exception e){e.printStackTrace();} + //System.out.println("got it"); + return retval; + + }//down + + public static byte[] readBuffer(InputStream IS) + throws IOException{ + byte buffer[] = new byte[0xffff]; + int nbytes=0; + byte resp[]=new byte[0]; + while ((nbytes=IS.read(buffer))!=-1) { + byte tmp[]=new byte[resp.length+nbytes]; + int i=0; + for (;i<resp.length;i++){ + tmp[i]=resp[i]; + } + for(int a=0;a<nbytes;a++,i++){ + tmp[i]=buffer[a]; + } + resp=tmp; + } + return resp; + } + + public String subtractResponseHeader(String in){ + //System.out.println(in.indexOf(cut+""+cut)); + return in.substring(in.indexOf(cut+""+cut)+4); + + + } + + public String makeHeader(String query){ + + + String RequestHeader=""; + try{ + + RequestHeader="GET /sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=" + + //"SELECT%20%2A%20WHERE%20%7B%20%3Chttp%3A%2F%2Fdbpedia.org%2Fresource%2FAristotle%3E%20%3Fa%20%3Fb%20%7D%20" + + URLEncoder.encode(query, "UTF-8")+ + //query+// URLencode + "&format=application%2Fsparql-results%2Bxml HTTP/1.1"+cut+ + "Host: dbpedia.openlinksw.com"+cut+ + "Connection: close"+cut+ + //"Accept-Encoding: gzip"+cut+ + "Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"+cut+ + "Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3"+cut+ + "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"+cut+ + "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4 Web-Sniffer/1.0.24"+cut+ + cut; + }catch (Exception e) {e.printStackTrace();} + return RequestHeader; + + } + +} Added: trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlFilter.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlFilter.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlFilter.java 2007-08-29 08:32:41 UTC (rev 99) @@ -0,0 +1,91 @@ +package org.dllearner.modules.sparql; + +public class SparqlFilter { + public int mode=0; + // 0 yago, 1 only cat, 2 skos+cat + String[] PredFilter=null; + String[] ObjFilter=null; + boolean useLiterals=false; + + + String[] yagoPredFilterDefault={ + "http://www.w3.org/2004/02/skos/core", + "http://xmlns.com/foaf/0.1/", + "http://dbpedia.org/property/wikipage-", + "http://www.w3.org/2002/07/owl#sameAs", + "http://dbpedia.org/property/reference" }; + String[] yagoObjFilterDefault={ + "http://dbpedia.org/resource/Category:Articles_", + "http://dbpedia.org/resource/Category:Wikipedia_", + "http://xmlns.com/foaf/0.1/", + "http://dbpedia.org/resource/Category", + "http://dbpedia.org/resource/Template", + "http://upload.wikimedia.org/wikipedia/commons"}; + + String[] onlyCatPredFilterDefault={ + "http://www.w3.org/2004/02/skos/core", + "http://xmlns.com/foaf/0.1/", + "http://dbpedia.org/property/wikipage-", + "http://www.w3.org/2002/07/owl#sameAs", + "http://dbpedia.org/property/reference" }; + String[] onlyCatObjFilterDefault={ + "http://dbpedia.org/resource/Category:Articles_", + "http://dbpedia.org/resource/Category:Wikipedia_", + "http://xmlns.com/foaf/0.1/", + "http://dbpedia.org/class/yago", + "http://dbpedia.org/resource/Template", + "http://upload.wikimedia.org/wikipedia/commons"}; + + String[] skosPredFilterDefault={ + "http://www.w3.org/2004/02/skos/core#narrower", + "http://xmlns.com/foaf/0.1/", + "http://dbpedia.org/property/wikipage-", + "http://www.w3.org/2002/07/owl#sameAs", + "http://dbpedia.org/property/reference" }; + String[] skosObjFilterDefault={ + "http://dbpedia.org/resource/Category:Articles_", + "http://dbpedia.org/resource/Category:Wikipedia_", + "http://xmlns.com/foaf/0.1/", + "http://dbpedia.org/class/yago", + "http://dbpedia.org/resource/Template", + "http://upload.wikimedia.org/wikipedia/commons"}; + + public SparqlFilter(int mode, String[] pred, String[] obj) { + if (mode==-1 && (pred==null || pred.length==0 || obj==null||obj.length==0)) + {mode=0;} + + switch (mode){ + case 0: //yago + ObjFilter=yagoObjFilterDefault; + PredFilter=yagoPredFilterDefault; + break; + case 1: // only Categories + ObjFilter=onlyCatObjFilterDefault; + PredFilter=onlyCatPredFilterDefault; + break; + case 2: + ObjFilter=skosObjFilterDefault; + PredFilter=skosPredFilterDefault; + break; + default: + ObjFilter=obj; + PredFilter=pred; + break; + + }} + public SparqlFilter(int mode, String[] pred, String[] obj,boolean uselits) throws Exception{ + this(mode, pred,obj); + this.useLiterals=uselits; + } + + public String[] getObjFilter(){ + return this.ObjFilter; + } + public String[] getPredFilter(){ + return this.PredFilter; + } + + + + } + Added: trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlModule.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlModule.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlModule.java 2007-08-29 08:32:41 UTC (rev 99) @@ -0,0 +1,172 @@ +package org.dllearner.modules.sparql; + +import java.io.File; +import java.io.FileWriter; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.SortedSet; + +import org.dllearner.ConfigurationOption; +import org.dllearner.Main; +import org.dllearner.dl.AtomicConcept; +import org.dllearner.dl.Individual; +import org.dllearner.dl.KB; +import org.dllearner.modules.PreprocessingModule; + + +public class SparqlModule implements PreprocessingModule { + + FileWriter fw; + + //HashSet<String> all;// remove after cache is here + String[] FilterPredList=null; + String[] FilterObjList=null; + + + +public String getModuleName(){ + return "Sparql Module v0.3"; +} + + public void preprocess(KB kb, + Map<AtomicConcept, SortedSet<Individual>> positiveExamples, + Map<AtomicConcept, SortedSet<Individual>> negativeExamples, + List<ConfigurationOption> confOptions, + List<List<String>> functionCalls, String baseDir, + boolean useQueryMode) { + + + + //temporary file + String filename=System.currentTimeMillis()+".nt"; + + // add filename + ArrayList<String> al=new ArrayList<String>(); + al.add("import");al.add(filename);al.add( "N-TRIPLES"); + functionCalls.add(al); + + // get options hidePrefix and recursion + int numberOfRecursions=0; + String prefix=""; + int filterMode=-1; + Set<String> predList=null; + Set<String> objList=null; + Set<String> classList=null; + //boolean useLiterals=false; + + System.out.println("SparqlModul: Processing Options"); + Main.getConfMgr().addStringOption("preprocessingModule", new String[] {}); + + for (int i = 0; i < confOptions.size(); i++) { + if(confOptions.get(i).getOption().equals("hidePrefix")){ + prefix=confOptions.get(i).getStrValue(); + } + //sparqlModule options + if(confOptions.get(i).getOption().equals("sparqlModule")){ + if(confOptions.get(i).getSubOption().equals("numberOfRecursion")){ + numberOfRecursions=confOptions.get(i).getIntValue(); + Main.getConfMgr().addIntegerOption("sparqlModule.numberOfRecursion", new Integer[] { 1, 3 }); + } + if(confOptions.get(i).getSubOption().equals("filterMode")){ + filterMode=confOptions.get(i).getIntValue(); + Main.getConfMgr().addIntegerOption("sparqlModule.filterMode", new Integer[] { 0, 2 }); + } + if(confOptions.get(i).getSubOption().equals("sparqlPredicateFilterList")){ + predList=confOptions.get(i).getSetValues(); + Main.getConfMgr().addSetOption("sparqlModule.sparqlPredicateFilterList"); + } + if(confOptions.get(i).getSubOption().equals("sparqlObjectFilterList")){ + objList=confOptions.get(i).getSetValues(); + Main.getConfMgr().addSetOption("sparqlModule.sparqlObjectFilterList"); + } + if(confOptions.get(i).getSubOption().equals("classList")){ + classList=confOptions.get(i).getSetValues(); + Main.getConfMgr().addSetOption("sparqlModule.classList"); + } + if(confOptions.get(i).getSubOption().equals("useLiterals")){ + //useLiterals=confOptions.get(i).; + + } + } + }// end for + System.out.println("SparqlModul: Processing finished"); + // subject for which information is drafted from wikipedia + String[] subjectList=makeSubjectList(prefix, positiveExamples, negativeExamples); + + + try{ + this.fw=new FileWriter(new File(baseDir+File.separator+filename),true); + System.out.println("SparqlModul: Collecting Ontology"); + OntologyCollector oc=new OntologyCollector(subjectList, numberOfRecursions, + filterMode, Util.setToArray(predList),Util.setToArray( objList),Util.setToArray(classList)); + + String ont=oc.collectOntology(); + fw.write(ont); + fw.flush(); + //.getRecursiveList(subjectList,numberOfRecursions); + //type classes and properties + //this.finalize(); + + System.out.println("SparqlModul: ****Finished"); + //System.out.println(yago); + //System.out.println(subjectList.length); + //System.out.println(subjectList); + + + this.fw.close(); + //System.exit(0); + }catch (Exception e) {e.printStackTrace();} + + } + + + String[] makeSubjectList(String prefix, + Map<AtomicConcept, SortedSet<Individual>> positive, + Map<AtomicConcept, SortedSet<Individual>> negative){ + + //prefix + prefix=""; + + ArrayList<String> al=new ArrayList<String>(); + Iterator<AtomicConcept> it=positive.keySet().iterator(); + while(it.hasNext()){ + SortedSet<Individual> s=positive.get(it.next()); + Iterator<Individual> inner =s.iterator(); + while(inner.hasNext()){ + al.add(inner.next().toString()); + } + } + + it=negative.keySet().iterator(); + while(it.hasNext()){ + SortedSet<Individual> s=negative.get(it.next()); + Iterator<Individual> inner =s.iterator(); + while(inner.hasNext()){ + al.add(inner.next().toString()); + } + } + String[] subjectList=new String[al.size()]; + Object[] o=al.toArray(); + for (int i = 0; i < subjectList.length; i++) { + subjectList[i]=prefix+(String)o[i]; + } + return subjectList; + } + + public SparqlModule() { + + + } + + + + + + + + + +} Added: trunk/src/dl-learner/org/dllearner/modules/sparql/Util.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/Util.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/Util.java 2007-08-29 08:32:41 UTC (rev 99) @@ -0,0 +1,44 @@ +package org.dllearner.modules.sparql; + +import java.util.HashSet; +import java.util.Iterator; +import java.util.Set; + +public class Util { + + + public static String[] setToArray(Set<String> s){ + if(s==null)return null; + String[] ret=new String[s.size()]; + int i=0; + for (Iterator<String> iter = s.iterator(); iter.hasNext();) { + ret[i] = iter.next(); + i++; + + } + return ret; + + } + + public static String replaceNamespace(String s){ + s=s.replace("http://dbpedia.org/class/yago/", "yago:"); + s=s.replace("http://dbpedia.org/class/", "yago2:"); + s=s.replace("http://dbpedia.org/resource/Category:", "cat:"); + s=s.replace("http://dbpedia.org/resource/Template:", "temp:"); + s=s.replace("http://www.w3.org/2004/02/skos/core#", "skos:"); + + s=s.replace("http://dbpedia.org/property/", "prop:"); + //s=s.replace("http://dbpedia.org/resource/", "base:"); + return s; + } + + public static void printHashSet(HashSet<String> h){ + Iterator<String> it=h.iterator(); + String current=""; + while (it.hasNext()){ + current=it.next(); + + if(current.contains("http://dbpedia.org/resource/"))System.out.println("test(\""+current+"\")."); + } + } +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ku...@us...> - 2007-08-29 07:29:57
|
Revision: 98 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=98&view=rev Author: kurzum Date: 2007-08-29 00:29:53 -0700 (Wed, 29 Aug 2007) Log Message: ----------- no options Modified Paths: -------------- trunk/lib/modules/sparqlModule.jar Modified: trunk/lib/modules/sparqlModule.jar =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-28 16:48:47
|
Revision: 97 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=97&view=rev Author: jenslehmann Date: 2007-08-28 09:48:40 -0700 (Tue, 28 Aug 2007) Log Message: ----------- Core algorithm change of the refinement operator based algorithm. The algorithm now uses role hierarchies to organise the search space (in case this hierarchy is flat the behaviour is the same as before). As demonstration example the search tree of "daughter.conf" can be used. Modified Paths: -------------- trunk/examples/daughter.conf trunk/src/dl-learner/org/dllearner/Info.java trunk/src/dl-learner/org/dllearner/algorithms/refinement/RhoDown.java trunk/src/dl-learner/org/dllearner/parser/DLLearner.java trunk/src/dl-learner/org/dllearner/parser/dllearner.jj trunk/src/dl-learner/org/dllearner/parser/dllearner.jjt Modified: trunk/examples/daughter.conf =================================================================== --- trunk/examples/daughter.conf 2007-08-28 14:58:25 UTC (rev 96) +++ trunk/examples/daughter.conf 2007-08-28 16:48:40 UTC (rev 97) @@ -20,8 +20,11 @@ showSubsumptionHierarchy = true; /** background knowledge ***/ + +// male and female are disjoint BOTTOM = (male AND female). +// role hierarchy Subrole(hasSon, hasChild). Subrole(hasDaughter, hasChild). @@ -36,13 +39,13 @@ female(michelle). // children -hasChild(stefan,markus). -hasChild(markus,anna). -hasChild(bernd,gabi). -hasChild(gabi,anna). -hasChild(anna,heinz). -hasChild(franz,heinz). -hasChild(franz,michelle). +hasSon(stefan,markus). +hasDaughter(markus,anna). +hasDaughter(bernd,gabi). +hasDaughter(gabi,anna). +hasSon(anna,heinz). +hasSon(franz,heinz). +hasDaughter(franz,michelle). /** examples **/ -father(stefan). Modified: trunk/src/dl-learner/org/dllearner/Info.java =================================================================== --- trunk/src/dl-learner/org/dllearner/Info.java 2007-08-28 14:58:25 UTC (rev 96) +++ trunk/src/dl-learner/org/dllearner/Info.java 2007-08-28 16:48:40 UTC (rev 97) @@ -3,6 +3,6 @@ package org.dllearner; public class Info { - public static final String build = "2007-08-20"; + public static final String build = "2007-08-28"; } \ No newline at end of file Modified: trunk/src/dl-learner/org/dllearner/algorithms/refinement/RhoDown.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/refinement/RhoDown.java 2007-08-28 14:58:25 UTC (rev 96) +++ trunk/src/dl-learner/org/dllearner/algorithms/refinement/RhoDown.java 2007-08-28 16:48:40 UTC (rev 97) @@ -1,3 +1,22 @@ +/** + * Copyright (C) 2007, Jens Lehmann + * + * This file is part of DL-Learner. + * + * DL-Learner is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * DL-Learner is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ package org.dllearner.algorithms.refinement; import java.util.HashMap; @@ -30,6 +49,17 @@ import org.dllearner.utilities.ConceptComparator; import org.dllearner.utilities.ConceptTransformation; +/** + * Implementation of the downward refinement operator in the DL-Learner refinement + * based algorithm. + * + * See <a href="http://jens-lehmann.org/files/2007_alc_learning_algorithm.pdf" + * >http://jens-lehmann.org/files/2007_alc_learning_algorithm.pdf</a> for + * details. + * + * @author Jens Lehmann + * + */ public class RhoDown implements RefinementOperator { private LearningProblem learningProblem; @@ -222,19 +252,34 @@ } } else if (concept instanceof Exists) { + Role role = ((Quantification)concept).getRole(); + + // rule 1: EXISTS r.D => EXISTS r.E tmp = refine(concept.getChild(0), maxLength-2, null); for(Concept c : tmp) { refinements.add(new Exists(((Quantification)concept).getRole(),c)); } + + // rule 2: EXISTS r.D => EXISTS s.D or EXISTS r^-1.D => EXISTS s^-1.D + // currently inverse roles are not supported + AtomicRole ar = (AtomicRole) role; + Set<AtomicRole> moreSpecialRoles = rs.getMoreSpecialRoles(ar); + for(AtomicRole moreSpecialRole : moreSpecialRoles) { + refinements.add(new Exists(moreSpecialRole, concept.getChild(0))); + } } else if (concept instanceof All) { + Role role = ((Quantification)concept).getRole(); + + // rule 1: ALL r.D => ALL r.E tmp = refine(concept.getChild(0), maxLength-2, null); for(Concept c : tmp) { refinements.add(new All(((Quantification)concept).getRole(),c)); } + // rule 2: ALL r.D => ALL r.BOTTOM if D is a most specific atomic concept // falls es keine spezielleren atomaren Konzepte gibt, dann wird // bottom angehangen => nur wenn es ein atomares Konzept (insbesondere != bottom) // ist @@ -243,6 +288,14 @@ refinements.add(new All(((Quantification)concept).getRole(),new Bottom())); } + // rule 3: ALL r.D => ALL s.D or ALL r^-1.D => ALL s^-1.D + // currently inverse roles are not supported + AtomicRole ar = (AtomicRole) role; + Set<AtomicRole> moreSpecialRoles = rs.getMoreSpecialRoles(ar); + for(AtomicRole moreSpecialRole : moreSpecialRoles) { + refinements.add(new All(moreSpecialRole, concept.getChild(0))); + } + } else if(concept instanceof Disjunction || concept instanceof Conjunction) throw new RuntimeException("only multi disjunction/conjunction allowed"); @@ -438,14 +491,13 @@ topComputationTimeNs += System.nanoTime() - topComputationTimeStartNs; } + // computation of the set M private void computeM(int maxLength) { long mComputationTimeStartNs = System.nanoTime(); // System.out.println("compute M from " + (topRefinementsLength+1) + " up to " + maxLength); - // berechnen der Menge M bis zu maxLength - // erstmal leere Mengen hinzufügen (um die Fälle abzudecken, in denen - // es keine Rolle gibt, also M für bestimmte Längen keinen Einträge hat, - // was an anderen Stellen zu NullPointerExceptions führen kann) + // initialise all not yet initialised lengths + // (avoids null pointers in some cases) for(int i=topRefinementsLength+1; i<=maxLength; i++) { m.put(i, new TreeSet<Concept>(conceptComparator)); } @@ -474,9 +526,14 @@ // Konzepte der Länge 3: EXISTS r.TOP if(Config.Refinement.useExistsConstructor) { Set<Concept> m3 = new TreeSet<Concept>(conceptComparator); - for(AtomicRole r : Config.Refinement.allowedRoles) { + // previous operator: uses all roles + // for(AtomicRole r : Config.Refinement.allowedRoles) { + // m3.add(new Exists(r, new Top())); + //} + // new operator: only uses most general roles + for(AtomicRole r : rs.getMostGeneralRoles()) { m3.add(new Exists(r, new Top())); - } + } m.put(3,m3); } } @@ -498,8 +555,13 @@ // if(!m.containsKey(i+2)) // m.put(i+2, new TreeSet<Concept>(conceptComparator)); - for(AtomicRole r : Config.Refinement.allowedRoles) { + // previous operator: uses all roles + // for(AtomicRole r : Config.Refinement.allowedRoles) { // Mehrfacheinf�gen ist bei einer Menge kein Problem + // m.get(i+2).add(new All(r,c)); + // } + + for(AtomicRole r : rs.getMostGeneralRoles()) { m.get(i+2).add(new All(r,c)); } } Modified: trunk/src/dl-learner/org/dllearner/parser/DLLearner.java =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/DLLearner.java 2007-08-28 14:58:25 UTC (rev 96) +++ trunk/src/dl-learner/org/dllearner/parser/DLLearner.java 2007-08-28 16:48:40 UTC (rev 97) @@ -194,7 +194,7 @@ // n.dump(""); // System.out.println("Thank you."); } catch (Exception e) { - System.out.println("Oops. hh"); + System.out.println("\nParse exception occurred. Please follow the advise given below."); System.out.println(e.getMessage()); e.printStackTrace(); System.exit(0); Modified: trunk/src/dl-learner/org/dllearner/parser/dllearner.jj =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/dllearner.jj 2007-08-28 14:58:25 UTC (rev 96) +++ trunk/src/dl-learner/org/dllearner/parser/dllearner.jj 2007-08-28 16:48:40 UTC (rev 97) @@ -212,7 +212,7 @@ // n.dump(""); // System.out.println("Thank you."); } catch (Exception e) { - System.out.println("Oops. hh"); + System.out.println("\nParse exception occurred. Please follow the advise given below."); System.out.println(e.getMessage()); e.printStackTrace(); System.exit(0); Modified: trunk/src/dl-learner/org/dllearner/parser/dllearner.jjt =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/dllearner.jjt 2007-08-28 14:58:25 UTC (rev 96) +++ trunk/src/dl-learner/org/dllearner/parser/dllearner.jjt 2007-08-28 16:48:40 UTC (rev 97) @@ -208,7 +208,7 @@ // n.dump(""); // System.out.println("Thank you."); } catch (Exception e) { - System.out.println("Oops. hh"); + System.out.println("\nParse exception occurred. Please follow the advise given below."); System.out.println(e.getMessage()); e.printStackTrace(); System.exit(0); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-28 15:32:59
|
Revision: 96 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=96&view=rev Author: jenslehmann Date: 2007-08-28 07:58:25 -0700 (Tue, 28 Aug 2007) Log Message: ----------- small update Modified Paths: -------------- trunk/README Modified: trunk/README =================================================================== --- trunk/README 2007-08-28 14:56:37 UTC (rev 95) +++ trunk/README 2007-08-28 14:58:25 UTC (rev 96) @@ -12,3 +12,6 @@ Latest Release: http://sourceforge.net/project/showfiles.php?group_id=203619 DL-Learner is Open Source and licenced unter the GNU General Public License. + +Documentation for DL-Learner (e.g. various configuration options) can be found +in the "doc" directory and at http://dl-learner.org. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ku...@us...> - 2007-08-28 11:42:41
|
Revision: 84 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=84&view=rev Author: kurzum Date: 2007-08-28 04:42:35 -0700 (Tue, 28 Aug 2007) Log Message: ----------- changes Modified Paths: -------------- trunk/bin/dllearner trunk/bin/dllearner.bat trunk/bin/quickstart trunk/bin/quickstart.bat trunk/bin/ws trunk/bin/ws.bat trunk/build.xml Modified: trunk/bin/dllearner =================================================================== --- trunk/bin/dllearner 2007-08-28 11:36:13 UTC (rev 83) +++ trunk/bin/dllearner 2007-08-28 11:42:35 UTC (rev 84) @@ -1 +1 @@ -java -cp .:lib/dllearner.jar:lib/kaon2.jar:lib/dig1.1-xmlbeans.jar:lib/xbean.jar:lib/jena/antlr-2.7.5.jar:lib/jena/commons-logging.jar:lib/jena/concurrent.jar:lib/jena/icu4j_3_4.jar:lib/jena/iri.jar:lib/jena/jena.jar:lib/jena/xercesImpl.jar org.dllearner.parser.DLLearner $@ +java -cp /Programme/Java/eclipse/workspace/DL-Learner-SVN:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/dig1.1-xmlbeans.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/antlr-2.7.5.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/commons-logging.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/concurrent.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/icu4j_3_4.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/iri.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/jena.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/xercesImpl.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/kaon2.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/modules/sparqlModule.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/antlr-runtime-3.0.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/commons-lang-2.2.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-api.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-apibinding.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-change.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-debugging.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-dig1_1.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-functionalparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-functionalrenderer.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-impl.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-krssparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-mansyntaxparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-mansyntaxrenderer.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-metrics.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-oboparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-owlxmlparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-owlxmlrenderer.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-rdfapi.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-rdfxmlparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-rdfxmlrenderer.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-util.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/xbean.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/dllearner.jar org.dllearner.parser.DLLearner $@ \ No newline at end of file Modified: trunk/bin/dllearner.bat =================================================================== --- trunk/bin/dllearner.bat 2007-08-28 11:36:13 UTC (rev 83) +++ trunk/bin/dllearner.bat 2007-08-28 11:42:35 UTC (rev 84) @@ -1 +1 @@ -java -cp .;lib/dllearner.jar;lib/kaon2.jar;lib/dig1.1-xmlbeans.jar;lib/xbean.jar;lib/jena/antlr-2.7.5.jar;lib/jena/commons-logging.jar;lib/jena/concurrent.jar;lib/jena/icu4j_3_4.jar;lib/jena/iri.jar;lib/jena/jena.jar;lib/jena/xercesImpl.jar org.dllearner.parser.DLLearner %* +java -cp .;.\lib\dig1.1-xmlbeans.jar;.\lib\jena\antlr-2.7.5.jar;.\lib\jena\commons-logging.jar;.\lib\jena\concurrent.jar;.\lib\jena\icu4j_3_4.jar;.\lib\jena\iri.jar;.\lib\jena\jena.jar;.\lib\jena\xercesImpl.jar;.\lib\kaon2.jar;.\lib\modules\sparqlModule.jar;.\lib\owlapi\antlr-runtime-3.0.jar;.\lib\owlapi\commons-lang-2.2.jar;.\lib\owlapi\owlapi-api.jar;.\lib\owlapi\owlapi-apibinding.jar;.\lib\owlapi\owlapi-change.jar;.\lib\owlapi\owlapi-debugging.jar;.\lib\owlapi\owlapi-dig1_1.jar;.\lib\owlapi\owlapi-functionalparser.jar;.\lib\owlapi\owlapi-functionalrenderer.jar;.\lib\owlapi\owlapi-impl.jar;.\lib\owlapi\owlapi-krssparser.jar;.\lib\owlapi\owlapi-mansyntaxparser.jar;.\lib\owlapi\owlapi-mansyntaxrenderer.jar;.\lib\owlapi\owlapi-metrics.jar;.\lib\owlapi\owlapi-oboparser.jar;.\lib\owlapi\owlapi-owlxmlparser.jar;.\lib\owlapi\owlapi-owlxmlrenderer.jar;.\lib\owlapi\owlapi-rdfapi.jar;.\lib\owlapi\owlapi-rdfxmlparser.jar;.\lib\owlapi\owlapi-rdfxmlrenderer.jar;.\lib\owlapi\owlapi-util.jar;.\lib\xbean.jar;.\lib\dllearner.jar org.dllearner.parser.DLLearner %* \ No newline at end of file Modified: trunk/bin/quickstart =================================================================== --- trunk/bin/quickstart 2007-08-28 11:36:13 UTC (rev 83) +++ trunk/bin/quickstart 2007-08-28 11:42:35 UTC (rev 84) @@ -1 +1 @@ -java -cp .:lib:lib/dllearner.jar:lib/kaon2.jar:lib/dig1.1-xmlbeans.jar:lib/xbean.jar:lib/jena/antlr-2.7.5.jar:lib/jena/commons-logging.jar:lib/jena/concurrent.jar:lib/jena/icu4j_3_4.jar:lib/jena/iri.jar:lib/jena/jena.jar:lib/jena/xercesImpl.jar org.dllearner.QuickStart +java -cp /Programme/Java/eclipse/workspace/DL-Learner-SVN:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/dig1.1-xmlbeans.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/antlr-2.7.5.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/commons-logging.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/concurrent.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/icu4j_3_4.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/iri.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/jena.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/xercesImpl.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/kaon2.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/modules/sparqlModule.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/antlr-runtime-3.0.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/commons-lang-2.2.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-api.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-apibinding.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-change.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-debugging.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-dig1_1.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-functionalparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-functionalrenderer.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-impl.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-krssparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-mansyntaxparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-mansyntaxrenderer.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-metrics.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-oboparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-owlxmlparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-owlxmlrenderer.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-rdfapi.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-rdfxmlparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-rdfxmlrenderer.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-util.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/xbean.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/dllearner.jar org.dllearner.QuickStart \ No newline at end of file Modified: trunk/bin/quickstart.bat =================================================================== --- trunk/bin/quickstart.bat 2007-08-28 11:36:13 UTC (rev 83) +++ trunk/bin/quickstart.bat 2007-08-28 11:42:35 UTC (rev 84) @@ -1 +1 @@ -java -cp .;lib;lib/dllearner.jar;lib/kaon2.jar;lib/dig1.1-xmlbeans.jar;lib/xbean.jar;lib/jena/antlr-2.7.5.jar;lib/jena/commons-logging.jar;lib/jena/concurrent.jar;lib/jena/icu4j_3_4.jar;lib/jena/iri.jar;lib/jena/jena.jar;lib/jena/xercesImpl.jar org.dllearner.QuickStart +java -cp .;.\lib\dig1.1-xmlbeans.jar;.\lib\jena\antlr-2.7.5.jar;.\lib\jena\commons-logging.jar;.\lib\jena\concurrent.jar;.\lib\jena\icu4j_3_4.jar;.\lib\jena\iri.jar;.\lib\jena\jena.jar;.\lib\jena\xercesImpl.jar;.\lib\kaon2.jar;.\lib\modules\sparqlModule.jar;.\lib\owlapi\antlr-runtime-3.0.jar;.\lib\owlapi\commons-lang-2.2.jar;.\lib\owlapi\owlapi-api.jar;.\lib\owlapi\owlapi-apibinding.jar;.\lib\owlapi\owlapi-change.jar;.\lib\owlapi\owlapi-debugging.jar;.\lib\owlapi\owlapi-dig1_1.jar;.\lib\owlapi\owlapi-functionalparser.jar;.\lib\owlapi\owlapi-functionalrenderer.jar;.\lib\owlapi\owlapi-impl.jar;.\lib\owlapi\owlapi-krssparser.jar;.\lib\owlapi\owlapi-mansyntaxparser.jar;.\lib\owlapi\owlapi-mansyntaxrenderer.jar;.\lib\owlapi\owlapi-metrics.jar;.\lib\owlapi\owlapi-oboparser.jar;.\lib\owlapi\owlapi-owlxmlparser.jar;.\lib\owlapi\owlapi-owlxmlrenderer.jar;.\lib\owlapi\owlapi-rdfapi.jar;.\lib\owlapi\owlapi-rdfxmlparser.jar;.\lib\owlapi\owlapi-rdfxmlrenderer.jar;.\lib\owlapi\owlapi-util.jar;.\lib\xbean.jar;.\lib\dllearner.jar org.dllearner.QuickStart \ No newline at end of file Modified: trunk/bin/ws =================================================================== --- trunk/bin/ws 2007-08-28 11:36:13 UTC (rev 83) +++ trunk/bin/ws 2007-08-28 11:42:35 UTC (rev 84) @@ -1 +1 @@ -java -cp .:lib/dllearner.jar:lib/kaon2.jar:lib/dig1.1-xmlbeans.jar:lib/xbean.jar:lib/jena/antlr-2.7.5.jar:lib/jena/commons-logging.jar:lib/jena/concurrent.jar:lib/jena/icu4j_3_4.jar:lib/jena/iri.jar:lib/jena/jena.jar:lib/jena/xercesImpl.jar org.dllearner.server.DLLearnerWSStart $@ +java -cp /Programme/Java/eclipse/workspace/DL-Learner-SVN:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/dig1.1-xmlbeans.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/antlr-2.7.5.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/commons-logging.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/concurrent.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/icu4j_3_4.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/iri.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/jena.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/jena/xercesImpl.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/kaon2.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/modules/sparqlModule.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/antlr-runtime-3.0.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/commons-lang-2.2.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-api.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-apibinding.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-change.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-debugging.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-dig1_1.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-functionalparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-functionalrenderer.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-impl.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-krssparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-mansyntaxparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-mansyntaxrenderer.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-metrics.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-oboparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-owlxmlparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-owlxmlrenderer.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-rdfapi.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-rdfxmlparser.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-rdfxmlrenderer.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/owlapi/owlapi-util.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/xbean.jar:/Programme/Java/eclipse/workspace/DL-Learner-SVN/lib/dllearner.jar org.dllearner.server.DLLearnerWSStart $@ \ No newline at end of file Modified: trunk/bin/ws.bat =================================================================== --- trunk/bin/ws.bat 2007-08-28 11:36:13 UTC (rev 83) +++ trunk/bin/ws.bat 2007-08-28 11:42:35 UTC (rev 84) @@ -1 +1 @@ -java -cp .;lib/dllearner.jar;lib/kaon2.jar;lib/dig1.1-xmlbeans.jar;lib/xbean.jar;lib/jena/antlr-2.7.5.jar;lib/jena/commons-logging.jar;lib/jena/concurrent.jar;lib/jena/icu4j_3_4.jar;lib/jena/iri.jar;lib/jena/jena.jar;lib/jena/xercesImpl.jar org.dllearner.server.DLLearnerWSStart %* +java -cp .;.\lib\dig1.1-xmlbeans.jar;.\lib\jena\antlr-2.7.5.jar;.\lib\jena\commons-logging.jar;.\lib\jena\concurrent.jar;.\lib\jena\icu4j_3_4.jar;.\lib\jena\iri.jar;.\lib\jena\jena.jar;.\lib\jena\xercesImpl.jar;.\lib\kaon2.jar;.\lib\modules\sparqlModule.jar;.\lib\owlapi\antlr-runtime-3.0.jar;.\lib\owlapi\commons-lang-2.2.jar;.\lib\owlapi\owlapi-api.jar;.\lib\owlapi\owlapi-apibinding.jar;.\lib\owlapi\owlapi-change.jar;.\lib\owlapi\owlapi-debugging.jar;.\lib\owlapi\owlapi-dig1_1.jar;.\lib\owlapi\owlapi-functionalparser.jar;.\lib\owlapi\owlapi-functionalrenderer.jar;.\lib\owlapi\owlapi-impl.jar;.\lib\owlapi\owlapi-krssparser.jar;.\lib\owlapi\owlapi-mansyntaxparser.jar;.\lib\owlapi\owlapi-mansyntaxrenderer.jar;.\lib\owlapi\owlapi-metrics.jar;.\lib\owlapi\owlapi-oboparser.jar;.\lib\owlapi\owlapi-owlxmlparser.jar;.\lib\owlapi\owlapi-owlxmlrenderer.jar;.\lib\owlapi\owlapi-rdfapi.jar;.\lib\owlapi\owlapi-rdfxmlparser.jar;.\lib\owlapi\owlapi-rdfxmlrenderer.jar;.\lib\owlapi\owlapi-util.jar;.\lib\xbean.jar;.\lib\dllearner.jar org.dllearner.server.DLLearnerWSStart %* \ No newline at end of file Modified: trunk/build.xml =================================================================== --- trunk/build.xml 2007-08-28 11:36:13 UTC (rev 83) +++ trunk/build.xml 2007-08-28 11:42:35 UTC (rev 84) @@ -2,7 +2,7 @@ <project basedir="." default="build" name="dl_learner"> <!-- directory settings --> - <property name="lib_dir" value="library" /> + <property name="lib_dir" value="lib" /> <property name="source_dir" value="src/dl-learner" /> <property name="class_dir" value="classes" /> <property name="php_client_dir" value="src/php-client" /> @@ -39,7 +39,7 @@ </path> <!-- build target --> - <target name="build"> + <target name="build" depends="createScripts"> <!-- write current build date into Info.java --> <echo file="${source_dir}/org/dllearner/Info.java" append="false"> @@ -163,13 +163,35 @@ <target name="createScripts" > - <pathconvert refid="classpath" property="pathString"/> - <echo file="bin/test.bat" message="java -cp ${pathString} org.dllearner.QuickStart"/> - <property name="kaon2" value="${lib_dir}/kaon2.jar"/> - + <path id="addjar"> + <path refid="classpath"/> + <pathelement location="${lib_dir}/dllearner.jar"/> + </path> + <path id="removeprefix"><pathelement location="."/> </path> + <pathconvert refid="removeprefix" property="removeprefixwin" targetos="windows"/> + <pathconvert refid="removeprefix" property="removeprefixunix" targetos="unix"/> + <pathconvert refid="addjar" property="pathStringUnix" targetos="unix"> + <map from="${removeprefixunix}" to="."/> + <map from="c:" to=""/> + </pathconvert> + <pathconvert refid="addjar" property="pathStringWin" targetos="windows"> + <map from="${removeprefixwin}" to="."/> + </pathconvert> + + <echo message="${removeprefixunix}"/> + <echo message="${pathStringUnix}"/> + <echo file="bin/quickstart.bat" message="java -cp ${pathStringWin} org.dllearner.QuickStart"/> + <echo file="bin/dllearner.bat" message="java -cp ${pathStringWin} org.dllearner.parser.DLLearner %*"/> + <echo file="bin/ws.bat" message="java -cp ${pathStringWin} org.dllearner.server.DLLearnerWSStart %*"/> + <echo file="bin/quickstart" message="java -cp ${pathStringUnix} org.dllearner.QuickStart"/> + <echo file="bin/dllearner" message="java -cp ${pathStringUnix} org.dllearner.parser.DLLearner $@"/> + <echo file="bin/ws" message="java -cp ${pathStringUnix} org.dllearner.server.DLLearnerWSStart $@"/> + </target> + + <target name="javadoc"> <pathconvert refid="classpath" property="jdocclasspath"/> <!--classpath="library/owlapi/antlr-runtime-3.0.jar:library/owlapi/owlapi-rdfxmlparser.jar:library/owlapi/owlapi-owlxmlrenderer.jar:library/owlapi/owlapi-mansyntaxrenderer.jar:library/owlapi/owlapi-metrics.jar:library/owlapi/owlapi-owlxmlparser.jar:library/owlapi/owlapi-change.jar:library/owlapi/owlapi-rdfxmlrenderer.jar:library/owlapi/owlapi-apibinding.jar:library/xbean.jar:library/owlapi/owlapi-oboparser.jar:library/jena/jena.jar:library/owlapi/commons-lang-2.2.jar:library/jena/commons-logging.jar:library/owlapi/owlapi-dig1_1.jar:library/owlapi/owlapi-api.jar:library/owlapi/owlapi-debugging.jar:library/jena/iri.jar:library/kaon2.jar:library/jena/xercesImpl.jar:library/owlapi/owlapi-krssparser.jar:library/jena/antlr-2.7.5.jar:library/owlapi/owlapi-functionalrenderer.jar:library/modules/sparqlModule.jar:library/owlapi/owlapi-mansyntaxparser.jar:library/jena/icu4j_3_4.jar:library/owlapi/owlapi-util.jar:library/dig1.1-xmlbeans.jar:library/jena/concurrent.jar:library/owlapi/owlapi-functionalparser.jar:library/owlapi/owlapi-impl.jar:library/owlapi/owlapi-rdfapi.jar" --> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-28 11:36:18
|
Revision: 83 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=83&view=rev Author: jenslehmann Date: 2007-08-28 04:36:13 -0700 (Tue, 28 Aug 2007) Log Message: ----------- re-enabled N-Triple support using Jena (other formats are still handled by OWL API) Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/reasoning/DIGReasoner.java Modified: trunk/src/dl-learner/org/dllearner/reasoning/DIGReasoner.java =================================================================== --- trunk/src/dl-learner/org/dllearner/reasoning/DIGReasoner.java 2007-08-28 11:20:03 UTC (rev 82) +++ trunk/src/dl-learner/org/dllearner/reasoning/DIGReasoner.java 2007-08-28 11:36:13 UTC (rev 83) @@ -146,8 +146,13 @@ // eingebunden werden müssen) long importStartTime = System.currentTimeMillis(); System.out.print("Converting import file " + file + " to DIG using OWL API ... "); - // importDIGString = JenaOWLDIGConverter.getTellsString(file, imports.get(file), kbURI); - importDIGString = OWLAPIDIGConverter.getTellsString(file, imports.get(file), kbURI); + + // if the ontology format is N-Triples then Jena is used, otherwise the OWL API + if(imports.get(file).equals(OntologyFileFormat.N_TRIPLES)) + importDIGString = JenaOWLDIGConverter.getTellsString(file, imports.get(file), kbURI); + else + importDIGString = OWLAPIDIGConverter.getTellsString(file, imports.get(file), kbURI); + ResponseDocument rdImport = connector.tells(importDIGString); if(!rdImport.getResponse().isSetOk()) { System.err.println("DIG-Reasoner cannot read knowledgebase."); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-28 11:20:09
|
Revision: 82 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=82&view=rev Author: jenslehmann Date: 2007-08-28 04:20:03 -0700 (Tue, 28 Aug 2007) Log Message: ----------- updated Eclipse project paths to lib folder Modified Paths: -------------- trunk/doc/eclipse/classpath.dist Modified: trunk/doc/eclipse/classpath.dist =================================================================== --- trunk/doc/eclipse/classpath.dist 2007-08-28 11:13:25 UTC (rev 81) +++ trunk/doc/eclipse/classpath.dist 2007-08-28 11:20:03 UTC (rev 82) @@ -2,37 +2,37 @@ <classpath> <classpathentry kind="src" path="src/dl-learner"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> - <classpathentry kind="lib" path="library/dig1.1-xmlbeans.jar"/> - <classpathentry kind="lib" path="library/kaon2.jar"/> - <classpathentry kind="lib" path="library/xbean.jar"/> - <classpathentry kind="lib" path="library/jena/antlr-2.7.5.jar"/> - <classpathentry kind="lib" path="library/jena/commons-logging.jar"/> - <classpathentry kind="lib" path="library/jena/concurrent.jar"/> - <classpathentry kind="lib" path="library/jena/icu4j_3_4.jar"/> - <classpathentry kind="lib" path="library/jena/iri.jar"/> - <classpathentry kind="lib" path="library/jena/jena.jar"/> - <classpathentry kind="lib" path="library/jena/xercesImpl.jar"/> - <classpathentry kind="lib" path="library/modules/sparqlModule.jar"/> - <classpathentry kind="lib" path="library/owlapi/antlr-runtime-3.0.jar"/> - <classpathentry kind="lib" path="library/owlapi/commons-lang-2.2.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-api.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-apibinding.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-change.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-debugging.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-dig1_1.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-functionalparser.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-functionalrenderer.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-impl.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-krssparser.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-mansyntaxparser.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-mansyntaxrenderer.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-metrics.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-oboparser.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-owlxmlparser.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-owlxmlrenderer.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-rdfapi.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-rdfxmlparser.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-rdfxmlrenderer.jar"/> - <classpathentry kind="lib" path="library/owlapi/owlapi-util.jar"/> + <classpathentry kind="lib" path="lib/dig1.1-xmlbeans.jar"/> + <classpathentry kind="lib" path="lib/kaon2.jar"/> + <classpathentry kind="lib" path="lib/xbean.jar"/> + <classpathentry kind="lib" path="lib/jena/antlr-2.7.5.jar"/> + <classpathentry kind="lib" path="lib/jena/commons-logging.jar"/> + <classpathentry kind="lib" path="lib/jena/concurrent.jar"/> + <classpathentry kind="lib" path="lib/jena/icu4j_3_4.jar"/> + <classpathentry kind="lib" path="lib/jena/iri.jar"/> + <classpathentry kind="lib" path="lib/jena/jena.jar"/> + <classpathentry kind="lib" path="lib/jena/xercesImpl.jar"/> + <classpathentry kind="lib" path="lib/modules/sparqlModule.jar"/> + <classpathentry kind="lib" path="lib/owlapi/antlr-runtime-3.0.jar"/> + <classpathentry kind="lib" path="lib/owlapi/commons-lang-2.2.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-api.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-apibinding.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-change.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-debugging.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-dig1_1.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-functionalparser.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-functionalrenderer.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-impl.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-krssparser.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-mansyntaxparser.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-mansyntaxrenderer.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-metrics.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-oboparser.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-owlxmlparser.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-owlxmlrenderer.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-rdfapi.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-rdfxmlparser.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-rdfxmlrenderer.jar"/> + <classpathentry kind="lib" path="lib/owlapi/owlapi-util.jar"/> <classpathentry kind="output" path="classes"/> </classpath> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-28 11:13:36
|
Revision: 81 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=81&view=rev Author: jenslehmann Date: 2007-08-28 04:13:25 -0700 (Tue, 28 Aug 2007) Log Message: ----------- renamed library folder to lib Added Paths: ----------- trunk/lib/ Removed Paths: ------------- trunk/library/ Copied: trunk/lib (from rev 80, trunk/library) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-28 10:57:56
|
Revision: 80 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=80&view=rev Author: jenslehmann Date: 2007-08-28 03:57:53 -0700 (Tue, 28 Aug 2007) Log Message: ----------- added script for generating statistics (initial test version) Added Paths: ----------- trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java Added: trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java =================================================================== --- trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java 2007-08-28 10:57:53 UTC (rev 80) @@ -0,0 +1,121 @@ +/** + * Copyright (C) 2007, Jens Lehmann + * + * This file is part of DL-Learner. + * + * DL-Learner is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * DL-Learner is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ +package org.dllearner.utilities; + +import java.io.File; +import java.net.MalformedURLException; +import java.net.URL; +import java.util.HashMap; +import java.util.Map; +import java.util.SortedSet; +import java.util.TreeSet; + +import org.dllearner.Config; +import org.dllearner.LearningProblem; +import org.dllearner.Main; +import org.dllearner.OntologyFileFormat; +import org.dllearner.algorithms.refinement.ROLearner; +import org.dllearner.dl.AtomicConcept; +import org.dllearner.dl.Individual; +import org.dllearner.dl.KB; +import org.dllearner.parser.DLLearner; +import org.dllearner.reasoning.Reasoner; +import org.dllearner.reasoning.ReasoningMethodUnsupportedException; +import org.dllearner.reasoning.ReasoningService; + +/** + * Utility script for creating statistics for publications. + * (Warning: Scripts may run for several hours.) + * + * @author Jens Lehmann + * + */ +public class PaperStatistics { + + /** + * Points to the current statistic generation function. + * + * @param args None. + */ + public static void main(String[] args) { + createStatistics(); + } + + @SuppressWarnings("unused") + private static void createStatistics() { + + // set reasoner URL + try { + Config.digReasonerURL = new URL("http://localhost:8081"); + } catch (MalformedURLException e) { + e.printStackTrace(); + } + + // used OWL files + File fatherOwlFile = new File("examples/father.owl"); + String fatherConfFile = "examples/father2.conf"; + URL ontologyFatherURL = null; + try { + ontologyFatherURL = new URL("file", "localhost", fatherOwlFile.getAbsolutePath()); + } catch (MalformedURLException e1) { + e1.printStackTrace(); + } + + Map<URL, OntologyFileFormat> m = new HashMap<URL, OntologyFileFormat>(); + m.put(ontologyFatherURL, OntologyFileFormat.RDF_XML); + + // initialise reasoner + Reasoner reasoner = Main.createReasoner(new KB(), m); + ReasoningService rs = new ReasoningService(reasoner); + + Main.autoDetectConceptsAndRoles(rs); + if (Config.Refinement.improveSubsumptionHierarchy) { + try { + reasoner.prepareSubsumptionHierarchy(); + reasoner.prepareRoleHierarchy(); + reasoner.getSubsumptionHierarchy().improveSubsumptionHierarchy(); + } catch (ReasoningMethodUnsupportedException e) { + e.printStackTrace(); + } + } + + // file is parsed, but we use only the specified examples really + // (everything else is ignored) + DLLearner.parseFile(fatherConfFile); + + SortedSet<Individual> positiveExamples = new TreeSet<Individual>(); + SortedSet<Individual> negativeExamples = new TreeSet<Individual>(); + Map<AtomicConcept,SortedSet<Individual>> posExamplesTmp = DLLearner.getPositiveExamples(); + Map<AtomicConcept,SortedSet<Individual>> negExamplesTmp = DLLearner.getNegativeExamples(); + + for (AtomicConcept target : posExamplesTmp.keySet()) + positiveExamples = posExamplesTmp.get(target); + + for (AtomicConcept target : negExamplesTmp.keySet()) + negativeExamples = negExamplesTmp.get(target); + + LearningProblem learningProblem = new LearningProblem(rs, positiveExamples, negativeExamples); + ROLearner learner = new ROLearner(learningProblem); + learner.start(); + System.out.println(learner.getBestSolution().toString()); + + } + +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-08-28 10:55:25
|
Revision: 79 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=79&view=rev Author: jenslehmann Date: 2007-08-28 03:55:23 -0700 (Tue, 28 Aug 2007) Log Message: ----------- build in function to call parser as standalone tool Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/parser/DLLearner.java trunk/src/dl-learner/org/dllearner/parser/dllearner.jj trunk/src/dl-learner/org/dllearner/parser/dllearner.jjt Modified: trunk/src/dl-learner/org/dllearner/parser/DLLearner.java =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/DLLearner.java 2007-08-28 10:44:01 UTC (rev 78) +++ trunk/src/dl-learner/org/dllearner/parser/DLLearner.java 2007-08-28 10:55:23 UTC (rev 79) @@ -73,6 +73,14 @@ } } + public static Map<AtomicConcept,SortedSet<Individual>> getPositiveExamples() { + return positiveExamples; + } + + public static Map<AtomicConcept,SortedSet<Individual>> getNegativeExamples() { + return negativeExamples; + } + /* private static void addFunctionCall(String functionName, String argument) { if(functionCalls.containsKey(functionName)) { @@ -127,6 +135,15 @@ return c; } + public static void parseFile(String filename) { + try { + new DLLearner(new FileInputStream(filename)); + DLLearner.Start(); + } catch(Exception e) { + e.printStackTrace(); + } + } + public static void main(String args[]) { if(args.length==0) { @@ -1544,66 +1561,6 @@ finally { jj_save(11, xla); } } - static final private boolean jj_3R_50() { - if (jj_scan_token(LE)) return true; - return false; - } - - static final private boolean jj_3R_47() { - if (jj_scan_token(EXISTS)) return true; - return false; - } - - static final private boolean jj_3R_49() { - if (jj_scan_token(GE)) return true; - return false; - } - - static final private boolean jj_3R_45() { - if (jj_scan_token(BOTTOM)) return true; - return false; - } - - static final private boolean jj_3R_39() { - if (jj_scan_token(NOT)) return true; - return false; - } - - static final private boolean jj_3R_51() { - if (jj_3R_4()) return true; - return false; - } - - static final private boolean jj_3R_48() { - if (jj_scan_token(ALL)) return true; - return false; - } - - static final private boolean jj_3R_46() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_51()) { - jj_scanpos = xsp; - if (jj_3R_52()) return true; - } - return false; - } - - static final private boolean jj_3R_44() { - if (jj_scan_token(TOP)) return true; - return false; - } - - static final private boolean jj_3R_20() { - if (jj_scan_token(AND)) return true; - return false; - } - - static final private boolean jj_3R_21() { - if (jj_scan_token(OR)) return true; - return false; - } - static final private boolean jj_3R_19() { if (jj_3R_4()) return true; return false; @@ -1995,6 +1952,66 @@ return false; } + static final private boolean jj_3R_50() { + if (jj_scan_token(LE)) return true; + return false; + } + + static final private boolean jj_3R_47() { + if (jj_scan_token(EXISTS)) return true; + return false; + } + + static final private boolean jj_3R_49() { + if (jj_scan_token(GE)) return true; + return false; + } + + static final private boolean jj_3R_45() { + if (jj_scan_token(BOTTOM)) return true; + return false; + } + + static final private boolean jj_3R_39() { + if (jj_scan_token(NOT)) return true; + return false; + } + + static final private boolean jj_3R_51() { + if (jj_3R_4()) return true; + return false; + } + + static final private boolean jj_3R_48() { + if (jj_scan_token(ALL)) return true; + return false; + } + + static final private boolean jj_3R_46() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_51()) { + jj_scanpos = xsp; + if (jj_3R_52()) return true; + } + return false; + } + + static final private boolean jj_3R_44() { + if (jj_scan_token(TOP)) return true; + return false; + } + + static final private boolean jj_3R_20() { + if (jj_scan_token(AND)) return true; + return false; + } + + static final private boolean jj_3R_21() { + if (jj_scan_token(OR)) return true; + return false; + } + static private boolean jj_initialized_once = false; static public DLLearnerTokenManager token_source; static SimpleCharStream jj_input_stream; Modified: trunk/src/dl-learner/org/dllearner/parser/dllearner.jj =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/dllearner.jj 2007-08-28 10:44:01 UTC (rev 78) +++ trunk/src/dl-learner/org/dllearner/parser/dllearner.jj 2007-08-28 10:55:23 UTC (rev 79) @@ -91,6 +91,14 @@ } } + public static Map<AtomicConcept,SortedSet<Individual>> getPositiveExamples() { + return positiveExamples; + } + + public static Map<AtomicConcept,SortedSet<Individual>> getNegativeExamples() { + return negativeExamples; + } + /* private static void addFunctionCall(String functionName, String argument) { if(functionCalls.containsKey(functionName)) { @@ -145,6 +153,15 @@ return c; } + public static void parseFile(String filename) { + try { + new DLLearner(new FileInputStream(filename)); + DLLearner.Start(); + } catch(Exception e) { + e.printStackTrace(); + } + } + public static void main(String args[]) { if(args.length==0) { Modified: trunk/src/dl-learner/org/dllearner/parser/dllearner.jjt =================================================================== --- trunk/src/dl-learner/org/dllearner/parser/dllearner.jjt 2007-08-28 10:44:01 UTC (rev 78) +++ trunk/src/dl-learner/org/dllearner/parser/dllearner.jjt 2007-08-28 10:55:23 UTC (rev 79) @@ -87,6 +87,14 @@ } } + public static Map<AtomicConcept,SortedSet<Individual>> getPositiveExamples() { + return positiveExamples; + } + + public static Map<AtomicConcept,SortedSet<Individual>> getNegativeExamples() { + return negativeExamples; + } + /* private static void addFunctionCall(String functionName, String argument) { if(functionCalls.containsKey(functionName)) { @@ -141,6 +149,15 @@ return c; } + public static void parseFile(String filename) { + try { + new DLLearner(new FileInputStream(filename)); + DLLearner.Start(); + } catch(Exception e) { + e.printStackTrace(); + } + } + public static void main(String args[]) { if(args.length==0) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |