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-09-25 14:32:28
|
Revision: 152 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=152&view=rev Author: jenslehmann Date: 2007-09-25 07:32:25 -0700 (Tue, 25 Sep 2007) Log Message: ----------- another major step in building the new base structure Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/Config.java trunk/src/dl-learner/org/dllearner/ConfigurationManager.java trunk/src/dl-learner/org/dllearner/LearningProblem.java trunk/src/dl-learner/org/dllearner/Main.java trunk/src/dl-learner/org/dllearner/Score.java trunk/src/dl-learner/org/dllearner/ScoreThreeValued.java trunk/src/dl-learner/org/dllearner/ScoreTwoValued.java trunk/src/dl-learner/org/dllearner/algorithms/BruteForceLearner.java trunk/src/dl-learner/org/dllearner/algorithms/LearningAlgorithm.java trunk/src/dl-learner/org/dllearner/algorithms/RandomGuesser.java trunk/src/dl-learner/org/dllearner/algorithms/gp/ADC.java trunk/src/dl-learner/org/dllearner/algorithms/gp/GP.java trunk/src/dl-learner/org/dllearner/algorithms/gp/GPUtilities.java trunk/src/dl-learner/org/dllearner/algorithms/gp/Program.java trunk/src/dl-learner/org/dllearner/algorithms/hybridgp/Psi.java trunk/src/dl-learner/org/dllearner/algorithms/hybridgp/PsiDown.java trunk/src/dl-learner/org/dllearner/algorithms/hybridgp/PsiUp.java trunk/src/dl-learner/org/dllearner/algorithms/refinement/Node.java trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java trunk/src/dl-learner/org/dllearner/algorithms/refinement/RefinementOperator.java trunk/src/dl-learner/org/dllearner/algorithms/refinement/RhoDown.java trunk/src/dl-learner/org/dllearner/algorithms/refinement/SearchSpace.java trunk/src/dl-learner/org/dllearner/core/Component.java trunk/src/dl-learner/org/dllearner/core/ComponentManager.java trunk/src/dl-learner/org/dllearner/core/ComponentTest.java trunk/src/dl-learner/org/dllearner/core/ConfigOption.java trunk/src/dl-learner/org/dllearner/core/IntegerConfigOption.java trunk/src/dl-learner/org/dllearner/core/ReasonerComponent.java trunk/src/dl-learner/org/dllearner/core/StringConfigOption.java trunk/src/dl-learner/org/dllearner/core/dl/All.java trunk/src/dl-learner/org/dllearner/core/dl/AssertionalAxiom.java trunk/src/dl-learner/org/dllearner/core/dl/AtomicConcept.java trunk/src/dl-learner/org/dllearner/core/dl/AtomicRole.java trunk/src/dl-learner/org/dllearner/core/dl/Axiom.java trunk/src/dl-learner/org/dllearner/core/dl/Bottom.java trunk/src/dl-learner/org/dllearner/core/dl/Concept.java trunk/src/dl-learner/org/dllearner/core/dl/ConceptAssertion.java trunk/src/dl-learner/org/dllearner/core/dl/Conjunction.java trunk/src/dl-learner/org/dllearner/core/dl/Disjunction.java trunk/src/dl-learner/org/dllearner/core/dl/Equality.java trunk/src/dl-learner/org/dllearner/core/dl/Exists.java trunk/src/dl-learner/org/dllearner/core/dl/FlatABox.java trunk/src/dl-learner/org/dllearner/core/dl/FunctionalRoleAxiom.java trunk/src/dl-learner/org/dllearner/core/dl/GreaterEqual.java trunk/src/dl-learner/org/dllearner/core/dl/Inclusion.java trunk/src/dl-learner/org/dllearner/core/dl/Individual.java trunk/src/dl-learner/org/dllearner/core/dl/InverseRole.java trunk/src/dl-learner/org/dllearner/core/dl/InverseRoleAxiom.java trunk/src/dl-learner/org/dllearner/core/dl/KB.java trunk/src/dl-learner/org/dllearner/core/dl/KBElement.java trunk/src/dl-learner/org/dllearner/core/dl/LessEqual.java trunk/src/dl-learner/org/dllearner/core/dl/MultiConjunction.java trunk/src/dl-learner/org/dllearner/core/dl/MultiDisjunction.java trunk/src/dl-learner/org/dllearner/core/dl/Negation.java trunk/src/dl-learner/org/dllearner/core/dl/NumberRestriction.java trunk/src/dl-learner/org/dllearner/core/dl/Quantification.java trunk/src/dl-learner/org/dllearner/core/dl/RBoxAxiom.java trunk/src/dl-learner/org/dllearner/core/dl/Role.java trunk/src/dl-learner/org/dllearner/core/dl/RoleAssertion.java trunk/src/dl-learner/org/dllearner/core/dl/SubRoleAxiom.java trunk/src/dl-learner/org/dllearner/core/dl/SymmetricRoleAxiom.java trunk/src/dl-learner/org/dllearner/core/dl/TerminologicalAxiom.java trunk/src/dl-learner/org/dllearner/core/dl/Top.java trunk/src/dl-learner/org/dllearner/core/dl/TransitiveRoleAxiom.java trunk/src/dl-learner/org/dllearner/kb/OWLFile.java trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPThreeValued.java trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPTwoValued.java trunk/src/dl-learner/org/dllearner/modules/ModuleInvocator.java trunk/src/dl-learner/org/dllearner/modules/PreprocessingModule.java trunk/src/dl-learner/org/dllearner/modules/TestModule.java trunk/src/dl-learner/org/dllearner/modules/sparql/PartialOntology.java trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlModule.java trunk/src/dl-learner/org/dllearner/parser/dllearner.jjt trunk/src/dl-learner/org/dllearner/reasoning/AbstractReasoner.java trunk/src/dl-learner/org/dllearner/reasoning/DIGConverter.java trunk/src/dl-learner/org/dllearner/reasoning/DIGReasoner.java trunk/src/dl-learner/org/dllearner/reasoning/FastRetrieval.java trunk/src/dl-learner/org/dllearner/reasoning/FastRetrievalReasoner.java trunk/src/dl-learner/org/dllearner/reasoning/KAON2Reasoner.java trunk/src/dl-learner/org/dllearner/reasoning/RoleHierarchy.java trunk/src/dl-learner/org/dllearner/reasoning/SubsumptionHierarchy.java trunk/src/dl-learner/org/dllearner/server/ClientState.java trunk/src/dl-learner/org/dllearner/server/DLLearnerWSoriginal.java trunk/src/dl-learner/org/dllearner/server/LearnMonitor.java trunk/src/dl-learner/org/dllearner/utilities/ConceptComparator.java trunk/src/dl-learner/org/dllearner/utilities/ConceptTransformation.java trunk/src/dl-learner/org/dllearner/utilities/Helper.java trunk/src/dl-learner/org/dllearner/utilities/OntologyClassRewriter.java trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java trunk/src/dl-learner/org/dllearner/utilities/RoleComparator.java Added Paths: ----------- trunk/src/dl-learner/org/dllearner/core/Reasoner.java trunk/src/dl-learner/org/dllearner/core/ReasoningMethodUnsupportedException.java trunk/src/dl-learner/org/dllearner/core/ReasoningService.java trunk/src/dl-learner/org/dllearner/core/StringSetConfigOption.java trunk/src/dl-learner/org/dllearner/core/dl/ trunk/src/dl-learner/org/dllearner/reasoning/DIGReasonerNew.java Removed Paths: ------------- trunk/src/dl-learner/org/dllearner/dl/ trunk/src/dl-learner/org/dllearner/reasoning/Reasoner.java trunk/src/dl-learner/org/dllearner/reasoning/ReasoningMethodUnsupportedException.java trunk/src/dl-learner/org/dllearner/reasoning/ReasoningService.java Modified: trunk/src/dl-learner/org/dllearner/Config.java =================================================================== --- trunk/src/dl-learner/org/dllearner/Config.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/Config.java 2007-09-25 14:32:25 UTC (rev 152) @@ -11,8 +11,8 @@ import org.dllearner.ScoreThreeValued.ScoreMethod; import org.dllearner.algorithms.gp.GP.AlgorithmType; import org.dllearner.algorithms.gp.GP.SelectionType; -import org.dllearner.dl.AtomicConcept; -import org.dllearner.dl.AtomicRole; +import org.dllearner.core.dl.AtomicConcept; +import org.dllearner.core.dl.AtomicRole; import org.dllearner.reasoning.ReasonerType; public class Config { Modified: trunk/src/dl-learner/org/dllearner/ConfigurationManager.java =================================================================== --- trunk/src/dl-learner/org/dllearner/ConfigurationManager.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/ConfigurationManager.java 2007-09-25 14:32:25 UTC (rev 152) @@ -16,8 +16,8 @@ import org.dllearner.ScoreThreeValued.ScoreMethod; import org.dllearner.algorithms.gp.GP.AlgorithmType; import org.dllearner.algorithms.gp.GP.SelectionType; -import org.dllearner.dl.AtomicConcept; -import org.dllearner.dl.AtomicRole; +import org.dllearner.core.dl.AtomicConcept; +import org.dllearner.core.dl.AtomicRole; import org.dllearner.parser.DLLearner; import org.dllearner.reasoning.ReasonerType; import org.dllearner.utilities.ConceptComparator; Modified: trunk/src/dl-learner/org/dllearner/LearningProblem.java =================================================================== --- trunk/src/dl-learner/org/dllearner/LearningProblem.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/LearningProblem.java 2007-09-25 14:32:25 UTC (rev 152) @@ -5,11 +5,11 @@ import java.util.TreeSet; import org.dllearner.Config.Refinement; -import org.dllearner.dl.Concept; -import org.dllearner.dl.Individual; -import org.dllearner.dl.Negation; +import org.dllearner.core.ReasoningService; +import org.dllearner.core.dl.Concept; +import org.dllearner.core.dl.Individual; +import org.dllearner.core.dl.Negation; import org.dllearner.reasoning.ReasonerType; -import org.dllearner.reasoning.ReasoningService; import org.dllearner.utilities.Helper; import org.dllearner.utilities.SortedSetTuple; Modified: trunk/src/dl-learner/org/dllearner/Main.java =================================================================== --- trunk/src/dl-learner/org/dllearner/Main.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/Main.java 2007-09-25 14:32:25 UTC (rev 152) @@ -45,16 +45,19 @@ import org.dllearner.algorithms.RandomGuesser; import org.dllearner.algorithms.gp.GP; import org.dllearner.algorithms.refinement.ROLearner; -import org.dllearner.dl.AssertionalAxiom; -import org.dllearner.dl.AtomicConcept; -import org.dllearner.dl.AtomicRole; -import org.dllearner.dl.Concept; -import org.dllearner.dl.ConceptAssertion; -import org.dllearner.dl.FlatABox; -import org.dllearner.dl.Individual; -import org.dllearner.dl.KB; -import org.dllearner.dl.Negation; -import org.dllearner.dl.RoleAssertion; +import org.dllearner.core.Reasoner; +import org.dllearner.core.ReasoningMethodUnsupportedException; +import org.dllearner.core.ReasoningService; +import org.dllearner.core.dl.AssertionalAxiom; +import org.dllearner.core.dl.AtomicConcept; +import org.dllearner.core.dl.AtomicRole; +import org.dllearner.core.dl.Concept; +import org.dllearner.core.dl.ConceptAssertion; +import org.dllearner.core.dl.FlatABox; +import org.dllearner.core.dl.Individual; +import org.dllearner.core.dl.KB; +import org.dllearner.core.dl.Negation; +import org.dllearner.core.dl.RoleAssertion; import org.dllearner.modules.ModuleInvocator; import org.dllearner.parser.DLLearner; import org.dllearner.parser.ParseException; @@ -62,10 +65,7 @@ import org.dllearner.reasoning.DIGReasoner; import org.dllearner.reasoning.FastRetrievalReasoner; import org.dllearner.reasoning.KAON2Reasoner; -import org.dllearner.reasoning.Reasoner; import org.dllearner.reasoning.ReasonerType; -import org.dllearner.reasoning.ReasoningMethodUnsupportedException; -import org.dllearner.reasoning.ReasoningService; import org.dllearner.utilities.ConceptComparator; import org.dllearner.utilities.ConceptTransformation; import org.dllearner.utilities.Helper; Modified: trunk/src/dl-learner/org/dllearner/Score.java =================================================================== --- trunk/src/dl-learner/org/dllearner/Score.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/Score.java 2007-09-25 14:32:25 UTC (rev 152) @@ -2,7 +2,7 @@ import java.util.Set; -import org.dllearner.dl.Individual; +import org.dllearner.core.dl.Individual; public abstract class Score { public abstract double getScore(); Modified: trunk/src/dl-learner/org/dllearner/ScoreThreeValued.java =================================================================== --- trunk/src/dl-learner/org/dllearner/ScoreThreeValued.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/ScoreThreeValued.java 2007-09-25 14:32:25 UTC (rev 152) @@ -4,7 +4,7 @@ import java.util.Set; import java.util.SortedSet; -import org.dllearner.dl.Individual; +import org.dllearner.core.dl.Individual; import org.dllearner.utilities.Helper; /** Modified: trunk/src/dl-learner/org/dllearner/ScoreTwoValued.java =================================================================== --- trunk/src/dl-learner/org/dllearner/ScoreTwoValued.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/ScoreTwoValued.java 2007-09-25 14:32:25 UTC (rev 152) @@ -2,7 +2,7 @@ import java.util.Set; -import org.dllearner.dl.Individual; +import org.dllearner.core.dl.Individual; /** * Modified: trunk/src/dl-learner/org/dllearner/algorithms/BruteForceLearner.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/BruteForceLearner.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/BruteForceLearner.java 2007-09-25 14:32:25 UTC (rev 152) @@ -8,16 +8,16 @@ import org.dllearner.Config; import org.dllearner.LearningProblem; import org.dllearner.Score; -import org.dllearner.dl.All; -import org.dllearner.dl.AtomicConcept; -import org.dllearner.dl.AtomicRole; -import org.dllearner.dl.Bottom; -import org.dllearner.dl.Concept; -import org.dllearner.dl.Conjunction; -import org.dllearner.dl.Disjunction; -import org.dllearner.dl.Exists; -import org.dllearner.dl.Negation; -import org.dllearner.dl.Top; +import org.dllearner.core.dl.All; +import org.dllearner.core.dl.AtomicConcept; +import org.dllearner.core.dl.AtomicRole; +import org.dllearner.core.dl.Bottom; +import org.dllearner.core.dl.Concept; +import org.dllearner.core.dl.Conjunction; +import org.dllearner.core.dl.Disjunction; +import org.dllearner.core.dl.Exists; +import org.dllearner.core.dl.Negation; +import org.dllearner.core.dl.Top; /** * TODO: Man könnte den Speicherbedarf gegen Null gehen lassen, wenn man gar keine Programme Modified: trunk/src/dl-learner/org/dllearner/algorithms/LearningAlgorithm.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/LearningAlgorithm.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/LearningAlgorithm.java 2007-09-25 14:32:25 UTC (rev 152) @@ -1,7 +1,7 @@ package org.dllearner.algorithms; import org.dllearner.Score; -import org.dllearner.dl.Concept; +import org.dllearner.core.dl.Concept; /** * TODO: Es gibt 3 Sachen, die eine Loesung ausmachen: die Loesung selbst, Modified: trunk/src/dl-learner/org/dllearner/algorithms/RandomGuesser.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/RandomGuesser.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/RandomGuesser.java 2007-09-25 14:32:25 UTC (rev 152) @@ -4,7 +4,7 @@ import org.dllearner.Score; import org.dllearner.algorithms.gp.Program; import org.dllearner.algorithms.gp.GPUtilities; -import org.dllearner.dl.Concept; +import org.dllearner.core.dl.Concept; public class RandomGuesser implements LearningAlgorithm { Modified: trunk/src/dl-learner/org/dllearner/algorithms/gp/ADC.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/gp/ADC.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/gp/ADC.java 2007-09-25 14:32:25 UTC (rev 152) @@ -1,6 +1,6 @@ package org.dllearner.algorithms.gp; -import org.dllearner.dl.Concept; +import org.dllearner.core.dl.Concept; public class ADC extends Concept { Modified: trunk/src/dl-learner/org/dllearner/algorithms/gp/GP.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/gp/GP.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/gp/GP.java 2007-09-25 14:32:25 UTC (rev 152) @@ -48,8 +48,8 @@ import org.dllearner.Score; import org.dllearner.algorithms.LearningAlgorithm; import org.dllearner.algorithms.hybridgp.Psi; -import org.dllearner.dl.Concept; -import org.dllearner.dl.Top; +import org.dllearner.core.dl.Concept; +import org.dllearner.core.dl.Top; import org.dllearner.utilities.Helper; /** Modified: trunk/src/dl-learner/org/dllearner/algorithms/gp/GPUtilities.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/gp/GPUtilities.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/gp/GPUtilities.java 2007-09-25 14:32:25 UTC (rev 152) @@ -14,20 +14,20 @@ import org.dllearner.Main; import org.dllearner.Score; import org.dllearner.ScoreThreeValued; -import org.dllearner.dl.All; -import org.dllearner.dl.AtomicConcept; -import org.dllearner.dl.AtomicRole; -import org.dllearner.dl.Bottom; -import org.dllearner.dl.Concept; -import org.dllearner.dl.Conjunction; -import org.dllearner.dl.Disjunction; -import org.dllearner.dl.Exists; -import org.dllearner.dl.FlatABox; -import org.dllearner.dl.Individual; -import org.dllearner.dl.MultiConjunction; -import org.dllearner.dl.MultiDisjunction; -import org.dllearner.dl.Negation; -import org.dllearner.dl.Top; +import org.dllearner.core.dl.All; +import org.dllearner.core.dl.AtomicConcept; +import org.dllearner.core.dl.AtomicRole; +import org.dllearner.core.dl.Bottom; +import org.dllearner.core.dl.Concept; +import org.dllearner.core.dl.Conjunction; +import org.dllearner.core.dl.Disjunction; +import org.dllearner.core.dl.Exists; +import org.dllearner.core.dl.FlatABox; +import org.dllearner.core.dl.Individual; +import org.dllearner.core.dl.MultiConjunction; +import org.dllearner.core.dl.MultiDisjunction; +import org.dllearner.core.dl.Negation; +import org.dllearner.core.dl.Top; import org.dllearner.reasoning.FastRetrieval; import org.dllearner.reasoning.ReasonerType; import org.dllearner.utilities.Helper; Modified: trunk/src/dl-learner/org/dllearner/algorithms/gp/Program.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/gp/Program.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/gp/Program.java 2007-09-25 14:32:25 UTC (rev 152) @@ -21,7 +21,7 @@ package org.dllearner.algorithms.gp; import org.dllearner.Score; -import org.dllearner.dl.Concept; +import org.dllearner.core.dl.Concept; /** * This class represents a program, i.e. an individual. Modified: trunk/src/dl-learner/org/dllearner/algorithms/hybridgp/Psi.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/hybridgp/Psi.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/hybridgp/Psi.java 2007-09-25 14:32:25 UTC (rev 152) @@ -8,7 +8,7 @@ import org.dllearner.LearningProblem; import org.dllearner.Score; import org.dllearner.algorithms.gp.Program; -import org.dllearner.dl.Concept; +import org.dllearner.core.dl.Concept; import org.dllearner.utilities.ConceptComparator; import org.dllearner.utilities.ConceptTransformation; Modified: trunk/src/dl-learner/org/dllearner/algorithms/hybridgp/PsiDown.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/hybridgp/PsiDown.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/hybridgp/PsiDown.java 2007-09-25 14:32:25 UTC (rev 152) @@ -9,18 +9,18 @@ import org.dllearner.LearningProblem; import org.dllearner.algorithms.refinement.RefinementOperator; -import org.dllearner.dl.All; -import org.dllearner.dl.AtomicConcept; -import org.dllearner.dl.AtomicRole; -import org.dllearner.dl.Bottom; -import org.dllearner.dl.Concept; -import org.dllearner.dl.Exists; -import org.dllearner.dl.MultiConjunction; -import org.dllearner.dl.MultiDisjunction; -import org.dllearner.dl.Negation; -import org.dllearner.dl.Quantification; -import org.dllearner.dl.Top; -import org.dllearner.reasoning.ReasoningService; +import org.dllearner.core.ReasoningService; +import org.dllearner.core.dl.All; +import org.dllearner.core.dl.AtomicConcept; +import org.dllearner.core.dl.AtomicRole; +import org.dllearner.core.dl.Bottom; +import org.dllearner.core.dl.Concept; +import org.dllearner.core.dl.Exists; +import org.dllearner.core.dl.MultiConjunction; +import org.dllearner.core.dl.MultiDisjunction; +import org.dllearner.core.dl.Negation; +import org.dllearner.core.dl.Quantification; +import org.dllearner.core.dl.Top; import org.dllearner.utilities.ConceptComparator; /** Modified: trunk/src/dl-learner/org/dllearner/algorithms/hybridgp/PsiUp.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/hybridgp/PsiUp.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/hybridgp/PsiUp.java 2007-09-25 14:32:25 UTC (rev 152) @@ -9,18 +9,18 @@ import org.dllearner.LearningProblem; import org.dllearner.algorithms.refinement.RefinementOperator; -import org.dllearner.dl.All; -import org.dllearner.dl.AtomicConcept; -import org.dllearner.dl.AtomicRole; -import org.dllearner.dl.Bottom; -import org.dllearner.dl.Concept; -import org.dllearner.dl.Exists; -import org.dllearner.dl.MultiConjunction; -import org.dllearner.dl.MultiDisjunction; -import org.dllearner.dl.Negation; -import org.dllearner.dl.Quantification; -import org.dllearner.dl.Top; -import org.dllearner.reasoning.ReasoningService; +import org.dllearner.core.ReasoningService; +import org.dllearner.core.dl.All; +import org.dllearner.core.dl.AtomicConcept; +import org.dllearner.core.dl.AtomicRole; +import org.dllearner.core.dl.Bottom; +import org.dllearner.core.dl.Concept; +import org.dllearner.core.dl.Exists; +import org.dllearner.core.dl.MultiConjunction; +import org.dllearner.core.dl.MultiDisjunction; +import org.dllearner.core.dl.Negation; +import org.dllearner.core.dl.Quantification; +import org.dllearner.core.dl.Top; import org.dllearner.utilities.ConceptComparator; public class PsiUp implements RefinementOperator { Modified: trunk/src/dl-learner/org/dllearner/algorithms/refinement/Node.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/refinement/Node.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/refinement/Node.java 2007-09-25 14:32:25 UTC (rev 152) @@ -3,7 +3,7 @@ import java.util.Set; import java.util.TreeSet; -import org.dllearner.dl.Concept; +import org.dllearner.core.dl.Concept; import org.dllearner.utilities.ConceptComparator; public class Node { Modified: trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java 2007-09-25 14:32:25 UTC (rev 152) @@ -14,10 +14,10 @@ import org.dllearner.Main; import org.dllearner.Score; import org.dllearner.algorithms.LearningAlgorithm; -import org.dllearner.dl.Concept; -import org.dllearner.dl.MultiConjunction; -import org.dllearner.dl.MultiDisjunction; -import org.dllearner.dl.Top; +import org.dllearner.core.dl.Concept; +import org.dllearner.core.dl.MultiConjunction; +import org.dllearner.core.dl.MultiDisjunction; +import org.dllearner.core.dl.Top; import org.dllearner.utilities.ConceptComparator; import org.dllearner.utilities.ConceptTransformation; import org.dllearner.utilities.Helper; Modified: trunk/src/dl-learner/org/dllearner/algorithms/refinement/RefinementOperator.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/refinement/RefinementOperator.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/refinement/RefinementOperator.java 2007-09-25 14:32:25 UTC (rev 152) @@ -2,8 +2,9 @@ import java.util.List; import java.util.Set; -import org.dllearner.dl.Concept; +import org.dllearner.core.dl.Concept; + public interface RefinementOperator { public Set<Concept> refine(Concept concept); Modified: trunk/src/dl-learner/org/dllearner/algorithms/refinement/RhoDown.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/refinement/RhoDown.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/refinement/RhoDown.java 2007-09-25 14:32:25 UTC (rev 152) @@ -31,21 +31,21 @@ import org.dllearner.Config; import org.dllearner.LearningProblem; -import org.dllearner.dl.All; -import org.dllearner.dl.AtomicConcept; -import org.dllearner.dl.AtomicRole; -import org.dllearner.dl.Bottom; -import org.dllearner.dl.Concept; -import org.dllearner.dl.Conjunction; -import org.dllearner.dl.Disjunction; -import org.dllearner.dl.Exists; -import org.dllearner.dl.MultiConjunction; -import org.dllearner.dl.MultiDisjunction; -import org.dllearner.dl.Negation; -import org.dllearner.dl.Quantification; -import org.dllearner.dl.Role; -import org.dllearner.dl.Top; -import org.dllearner.reasoning.ReasoningService; +import org.dllearner.core.ReasoningService; +import org.dllearner.core.dl.All; +import org.dllearner.core.dl.AtomicConcept; +import org.dllearner.core.dl.AtomicRole; +import org.dllearner.core.dl.Bottom; +import org.dllearner.core.dl.Concept; +import org.dllearner.core.dl.Conjunction; +import org.dllearner.core.dl.Disjunction; +import org.dllearner.core.dl.Exists; +import org.dllearner.core.dl.MultiConjunction; +import org.dllearner.core.dl.MultiDisjunction; +import org.dllearner.core.dl.Negation; +import org.dllearner.core.dl.Quantification; +import org.dllearner.core.dl.Role; +import org.dllearner.core.dl.Top; import org.dllearner.utilities.ConceptComparator; import org.dllearner.utilities.ConceptTransformation; Modified: trunk/src/dl-learner/org/dllearner/algorithms/refinement/SearchSpace.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/refinement/SearchSpace.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/algorithms/refinement/SearchSpace.java 2007-09-25 14:32:25 UTC (rev 152) @@ -1,6 +1,6 @@ package org.dllearner.algorithms.refinement; -import org.dllearner.dl.Concept; +import org.dllearner.core.dl.Concept; /** * Soll hauptsächlich dazu dienen zu testen, ob ein Konzept im Modified: trunk/src/dl-learner/org/dllearner/core/Component.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/Component.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/core/Component.java 2007-09-25 14:32:25 UTC (rev 152) @@ -44,6 +44,11 @@ } /** + * Method to be called after the component has been configured. + */ + public abstract void init(); + + /** * Applies a configuration option to this component. * * @param entry A configuration entry. Modified: trunk/src/dl-learner/org/dllearner/core/ComponentManager.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ComponentManager.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/core/ComponentManager.java 2007-09-25 14:32:25 UTC (rev 152) @@ -26,9 +26,16 @@ import java.io.InputStreamReader; import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.HashMap; import java.util.LinkedList; import java.util.List; +import java.util.Map; +import java.util.Set; +import org.dllearner.kb.OWLFile; + + /** * Central manager class for DL-Learner. * @@ -41,8 +48,70 @@ private static ComponentManager cm = new ComponentManager(); + private List<Class<? extends Component>> components; + + // list of all configuration options of all components + private Map<Class<? extends Component>,List<ConfigOption<?>>> componentOptions; + private Map<Class<? extends Component>,Map<String,ConfigOption<?>>> componentOptionsByName; + + @SuppressWarnings({"unchecked"}) private ComponentManager() { + // read in components file + List<String> componentsString = readComponentsFile(); + // component list + components = new LinkedList<Class<? extends Component>>(); + + // create classes from strings + for(String componentString : componentsString) { + try { + Class<? extends Component> component = Class.forName(componentString).asSubclass(Component.class); + components.add(component); + } catch (ClassNotFoundException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + // read in all configuration options + componentOptions = new HashMap<Class<? extends Component>,List<ConfigOption<?>>>(); + componentOptionsByName = new HashMap<Class<? extends Component>,Map<String,ConfigOption<?>>>(); + + for(Class<? extends Component> component : components) { + // unfortunately Java does not seem to offer a way to call + // a static method given a class object directly, so we have + // to use reflection + try { + Method createConfig = component.getMethod("createConfigOptions"); + List<ConfigOption<?>> options = (List<ConfigOption<?>>) createConfig.invoke(null); + + componentOptions.put(component, options); + + Map<String,ConfigOption<?>> byName = new HashMap<String,ConfigOption<?>>(); + for(ConfigOption<?> option : options) + byName.put(option.getName(), option); + componentOptionsByName.put(component, byName); + + // componentOptionsByName.put(key, value) + } catch (IllegalArgumentException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (IllegalAccessException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (InvocationTargetException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (SecurityException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (NoSuchMethodException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + } + } public static ComponentManager getInstance() { @@ -72,6 +141,42 @@ return componentStrings; } + /** + * Convenience method for testing purposes. If you know that the type of the + * value is correct, it is preferable to create a ConfigEntry object and apply + * it to the component (no type checking necessary). + * @param component + * @param optionName + * @param value + */ + public <T> void applyConfigEntry(Component component, String optionName, T value) { + // first we look whether the component is registered + if(components.contains(component)) { + + // look for a config option with the specified name + ConfigOption<?> option = (ConfigOption<?>) componentOptionsByName.get(component).get(optionName); + if(option!=null) { + // check whether the given object has the correct type + if(!option.checkType(value)) { + System.out.println("Warning: value " + value + " is not valid for option " + optionName + " in component " + component); + return; + } + + // we have checked the type, hence it should now be safe to typecast and + // create a ConfigEntry object + try { + @SuppressWarnings({"unchecked"}) + ConfigEntry<T> entry = new ConfigEntry<T>((ConfigOption<T>) option, value); + component.applyConfigEntry(entry); + } catch (InvalidConfigOptionValueException e) { + System.out.println("Warning: value " + value + " is not valid for option " + optionName + " in component " + component); + } + } else + System.out.println("Warning: undefined option " + optionName + " in component " + component); + } else + System.out.println("Warning: unregistered component " + component); + } + public KnowledgeSource knowledgeSource(Class<? extends KnowledgeSource> source) { try { Constructor<? extends KnowledgeSource> constructor = source.getConstructor(); @@ -99,9 +204,37 @@ return null; } - public LearningProblemNew learningProblem(Class<LearningProblemNew> lp, ReasonerComponent reasoner) { + public <T extends ReasonerComponent> ReasoningService reasoningService(Class<T> reasoner, Set<KnowledgeSource> sources) { try { - Constructor<LearningProblemNew> constructor = lp.getConstructor(ReasonerComponent.class); + Constructor<T> constructor = reasoner.getConstructor(ReasonerComponent.class); + T reasonerInstance = constructor.newInstance(sources); + return new ReasoningService(reasonerInstance); + } catch (IllegalArgumentException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (InstantiationException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (IllegalAccessException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (InvocationTargetException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (SecurityException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (NoSuchMethodException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + return null; + } + + public <T extends LearningProblemNew> T learningProblem(Class<T> lp, ReasonerComponent reasoner) { + try { + Constructor<T> constructor = lp.getConstructor(ReasonerComponent.class); return constructor.newInstance(reasoner); } catch (SecurityException e) { // TODO Auto-generated catch block Modified: trunk/src/dl-learner/org/dllearner/core/ComponentTest.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ComponentTest.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/core/ComponentTest.java 2007-09-25 14:32:25 UTC (rev 152) @@ -39,11 +39,12 @@ // create knowledge source KnowledgeSource source = cm.knowledgeSource(OWLFile.class); + cm.applyConfigEntry(source, "url", "father.owl"); // ... to be continued ... - ReasonerComponent reasoner = new ReasonerComponent(); - ComponentManager.getInstance().learningProblem(LearningProblemNew.class, reasoner); + // ReasonerComponent reasoner = new ReasonerComponent(); + // ComponentManager.getInstance().learningProblem(LearningProblemNew.class, reasoner); } Modified: trunk/src/dl-learner/org/dllearner/core/ConfigOption.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ConfigOption.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/core/ConfigOption.java 2007-09-25 14:32:25 UTC (rev 152) @@ -38,6 +38,16 @@ return name; } + /** + * Checks whether the object has the correct type to be used as + * a value for this option (this method is necessary, because + * generic information is erased at runtime in Java). + * + * @param object The object to check. + * @return + */ + public abstract boolean checkType(Object object); + public abstract boolean isValidValue(T value); } Modified: trunk/src/dl-learner/org/dllearner/core/IntegerConfigOption.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/IntegerConfigOption.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/core/IntegerConfigOption.java 2007-09-25 14:32:25 UTC (rev 152) @@ -91,6 +91,18 @@ this.upperLimit = upperLimit; } + /* (non-Javadoc) + * @see org.dllearner.core.ConfigOption#checkType(java.lang.Object) + */ + @Override + public boolean checkType(Object object) { + return (object instanceof Integer); + } + + + + + } Copied: trunk/src/dl-learner/org/dllearner/core/Reasoner.java (from rev 150, trunk/src/dl-learner/org/dllearner/reasoning/Reasoner.java) =================================================================== --- trunk/src/dl-learner/org/dllearner/core/Reasoner.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/Reasoner.java 2007-09-25 14:32:25 UTC (rev 152) @@ -0,0 +1,92 @@ +/** + * 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.core; + +import java.util.Map; +import java.util.Set; +import java.util.SortedSet; + +import org.dllearner.core.dl.AtomicConcept; +import org.dllearner.core.dl.AtomicRole; +import org.dllearner.core.dl.Concept; +import org.dllearner.core.dl.Individual; +import org.dllearner.reasoning.ReasonerType; +import org.dllearner.reasoning.RoleHierarchy; +import org.dllearner.reasoning.SubsumptionHierarchy; +import org.dllearner.utilities.SortedSetTuple; + +/** + * Reasoner Interface. Lists all available reasoning methods. + * + * @author Jens Lehmann + * + */ +public interface Reasoner { + + public ReasonerType getReasonerType(); + + // Methode, die Subsumptionhierarchie initialisiert (sollte nur einmal + // pro erstelltem ReasoningService bzw. Reasoner aufgerufen werden) + // => erstellt auch vereinfachte Sichten auf Subsumptionhierarchie + // (siehe einfacher Traversal in Diplomarbeit) + public void prepareSubsumptionHierarchy(); + public void prepareRoleHierarchy() throws ReasoningMethodUnsupportedException; + + public boolean subsumes(Concept superConcept, Concept subConcept) throws ReasoningMethodUnsupportedException; + + // mehrere subsumption checks - spart bei DIG Anfragen (nur die zweite Methode wird gebraucht) + public Set<Concept> subsumes(Concept superConcept, Set<Concept> subConcepts) throws ReasoningMethodUnsupportedException; + public Set<Concept> subsumes(Set<Concept> superConcepts, Concept subConcept) throws ReasoningMethodUnsupportedException; + + // liefert eine Menge paarweise nicht äquivalenter Konzepte zurück, die über dem Konzept in der + // Subsumption-Hierarchie stehen + // Methoden veraltet, da das jetzt von der SubsumptionHierarchy-Klasse geregelt wird + // public SortedSet<Concept> getMoreGeneralConcepts(Concept concept) throws ReasoningMethodUnsupportedException; + // public SortedSet<Concept> getMoreSpecialConcepts(Concept concept) throws ReasoningMethodUnsupportedException; + + public SubsumptionHierarchy getSubsumptionHierarchy() throws ReasoningMethodUnsupportedException; + + public RoleHierarchy getRoleHierarchy() throws ReasoningMethodUnsupportedException; + + public SortedSet<Individual> retrieval(Concept concept) throws ReasoningMethodUnsupportedException; + + public Map<Individual, SortedSet<Individual>> getRoleMembers(AtomicRole atomicRole) throws ReasoningMethodUnsupportedException; + + public boolean instanceCheck(Concept concept, Individual individual) throws ReasoningMethodUnsupportedException; + + // mehrere instance checks für ein Konzept - spart bei DIG Anfragen + public Set<Individual> instanceCheck(Concept concept, Set<Individual> individuals) throws ReasoningMethodUnsupportedException; + + public SortedSetTuple<Individual> doubleRetrieval(Concept concept) throws ReasoningMethodUnsupportedException; + + public SortedSetTuple<Individual> doubleRetrieval(Concept concept, Concept adc) throws ReasoningMethodUnsupportedException; + + public boolean isSatisfiable() throws ReasoningMethodUnsupportedException; + + // alle Konzepte, die i als Instanz haben + public Set<AtomicConcept> getConcepts(Individual i) throws ReasoningMethodUnsupportedException; + + public Set<AtomicConcept> getAtomicConcepts(); + + public Set<AtomicRole> getAtomicRoles(); + + public SortedSet<Individual> getIndividuals(); +} Modified: trunk/src/dl-learner/org/dllearner/core/ReasonerComponent.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ReasonerComponent.java 2007-09-25 09:30:13 UTC (rev 151) +++ trunk/src/dl-learner/org/dllearner/core/ReasonerComponent.java 2007-09-25 14:32:25 UTC (rev 152) @@ -19,19 +19,104 @@ */ package org.dllearner.core; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; +import java.util.SortedSet; + +import org.dllearner.core.dl.AtomicConcept; +import org.dllearner.core.dl.AtomicRole; +import org.dllearner.core.dl.Concept; +import org.dllearner.core.dl.Individual; +import org.dllearner.reasoning.RoleHierarchy; +import org.dllearner.reasoning.SubsumptionHierarchy; +import org.dllearner.utilities.SortedSetTuple; + /** * @author Jens Lehmann - * + * */ -public class ReasonerComponent extends Component { +public abstract class ReasonerComponent extends Component implements Reasoner { - /* (non-Javadoc) - * @see org.dllearner.core.Component#applyConfigEntry(org.dllearner.core.ConfigEntry) - */ - @Override - public <T> void applyConfigEntry(ConfigEntry<T> entry) { - // TODO Auto-generated method stub + public boolean subsumes(Concept superConcept, Concept subConcept) + throws ReasoningMethodUnsupportedException { + throw new ReasoningMethodUnsupportedException(); + } + public Set<Concept> subsumes(Concept superConcept, Set<Concept> subConcepts) + throws ReasoningMethodUnsupportedException { + Set<Concept> returnSet = new HashSet<Concept>(); + for (Concept subConcept : subConcepts) { + if (subsumes(superConcept, subConcept)) + returnSet.add(subConcept); + } + return returnSet; } + public Set<Concept> subsumes(Set<Concept> superConcepts, Concept subConcept) + throws ReasoningMethodUnsupportedException { + Set<Concept> returnSet = new HashSet<Concept>(); + for (Concept superConcept : superConcepts) { + if (subsumes(superConcept, subConcept)) + returnSet.add(superConcept); + } + return returnSet; + } + + public SortedSet<Individual> retrieval(Concept concept) + throws ReasoningMethodUnsupportedException { + throw new ReasoningMethodUnsupportedException(); + } + + public Map<Individual, SortedSet<Individual>> getRoleMembers(AtomicRole atomicRole) + throws ReasoningMethodUnsupportedException { + throw new ReasoningMethodUnsupportedException(); + } + + public boolean instanceCheck(Concept concept, Individual individual) + throws ReasoningMethodUnsupportedException { + throw new ReasoningMethodUnsupportedException(); + } + + public Set<Individual> instanceCheck(Concept concept, Set<Individual> individuals) + throws ReasoningMethodUnsupportedException { + Set<Individual> returnSet = new HashSet<Individual>(); + for (Individual individual : individuals) { + if (instanceCheck(concept, individual)) + returnSet.add(individual); + } + return returnSet; + } + + public SortedSetTuple<Individual> doubleRetrieval(Concept concept) + throws ReasoningMethodUnsupportedException { + throw new ReasoningMethodUnsupportedException(); + } + + public SortedSetTuple<Individual> doubleRetrieval(Concept concept, Concept adc) + throws ReasoningMethodUnsupportedException { + throw new ReasoningMethodUnsupportedException(); + } + + public boolean isSatisfiable() throws ReasoningMethodUnsupportedException { + throw new ReasoningMethodUnsupportedException(); + } + + public SubsumptionHierarchy getSubsumptionHierarchy() + throws ReasoningMethodUnsupportedException { + throw new ReasoningMethodUnsupportedException(); + } + + public void prepareRoleHierarchy() throws ReasoningMethodUnsupportedException { + throw new ReasoningMethodUnsupportedException(); + } + + public RoleHierarchy getRoleHierarchy() throws ReasoningMethodUnsupportedException { + throw new ReasoningMethodUnsupportedException(); + } + + public Set<AtomicConcept> getConcepts(Individual i) throws ReasoningMethodUnsupportedException { + throw new ReasoningMethodUnsupportedException(); + } + } Copied: trunk/src/dl-learner/org/dllearner/core/ReasoningMethodUnsupportedException.java (from rev 150, trunk/src/dl-learner/org/dllearner/reasoning/ReasoningMethodUnsupportedException.java) =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ReasoningMethodUnsupportedException.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/ReasoningMethodUnsupportedException.java 2007-09-25 14:32:25 UTC (rev 152) @@ -0,0 +1,7 @@ +package org.dllearner.core; + +public class ReasoningMethodUnsupportedException extends Exception { + + private static final long serialVersionUID = -7045236443032695475L; + +} Copied: trunk/src/dl-learner/org/dllearner/core/ReasoningService.java (from rev 150, trunk/src/dl-learner/org/dllearner/reasoning/ReasoningService.java) =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ReasoningService.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/ReasoningService.java 2007-09-25 14:32:25 UTC (rev 152) @@ -0,0 +1,493 @@ +/** + * 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.core; + +import java.io.File; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.SortedSet; +import java.util.TreeSet; + +import org.dllearner.OntologyFileFormat; +import org.dllearner.core.dl.AtomicConcept; +import org.dllearner.core.dl.AtomicRole; +import org.dllearner.core.dl.Concept; +import org.dllearner.core.dl.Individual; +import org.dllearner.reasoning.DIGReasoner; +import org.dllearner.reasoning.KAON2Reasoner; +import org.dllearner.reasoning.ReasonerType; +import org.dllearner.reasoning.RoleHierarchy; +import org.dllearner.reasoning.SubsumptionHierarchy; +import org.dllearner.utilities.SortedSetTuple; + +/** + * The reasoning service is the interface to the used reasoner. Basically, + * it delegates all incoming reasoner request to the <code>Reasoner</code> + * object which has been specified in the constructor. However, it calculates + * some additional statistics about the time the reasoner needs to answer + * the query. + * + * @author Jens Lehmann + * + */ +public class ReasoningService { + + // statistische Daten + private long instanceCheckReasoningTimeNs = 0; + private int nrOfInstanceChecks = 0; + private int nrOfMultiInstanceChecks = 0; + private long retrievalReasoningTimeNs = 0; + private int nrOfRetrievals = 0; + private long subsumptionReasoningTimeNs = 0; + private int nrOfSubsumptionChecks = 0; + private int nrOfMultiSubsumptionChecks = 0; + // private long subsumptionHierarchyTimeNs = 0; + private int nrOfSubsumptionHierarchyQueries = 0; + + // restliche Reasoning-Zeit + private long otherReasoningTimeNs = 0; + + // Zeit für alle Reasoningaufgabe (normalerweise länger als nur + // obige Sachen) + private long overallReasoningTimeNs = 0; + + // temporäre Variablen (ausgelagert wg. Performance und Vereinfachung) + private long reasoningStartTimeTmp; + private long reasoningDurationTmp; + + // Listenansicht + private List<AtomicConcept> atomicConceptsList; + private List<AtomicRole> atomicRolesList; + + // private SortedSet<Concept> retrievalsSet = new TreeSet<Concept>(new ConceptComparator()); + + // Caching f�r allgemeinere/speziellere atomare Konzepte => wird innerhalb der Reasoner gemacht + // private Map<Concept,Set<Concept>> moreGeneralConcepts = new HashMap<Concept,Set<Concept>>(); + // private Map<Concept,Set<Concept>> moreSpecialConcepts = new HashMap<Concept,Set<Concept>>(); + + private Reasoner reasoner; + + // Beachte: wenn Wissensbasis modifiziert wird, muss ein neues + // Reasoner-Objekt + // angelegt werden (da Wissensbasis sofort entsprechend verwendetem + // Reasoning-Typ + // umgewandelt wird) + public ReasoningService(Reasoner reasoner) { + this.reasoner = reasoner; + + // Listenansicht + atomicConceptsList = new LinkedList<AtomicConcept>(getAtomicConcepts()); + atomicRolesList = new LinkedList<AtomicRole>(getAtomicRoles()); + + resetStatistics(); + } + + // zurücksetzen aller Statistiken (wenn z.B. vorher ein Satisfiability Check gemacht wird, + // der allerdings nicht zum eigentlichen Algorithmus gehört) + public void resetStatistics() { + instanceCheckReasoningTimeNs = 0; + nrOfInstanceChecks = 0; + retrievalReasoningTimeNs = 0; + nrOfRetrievals = 0; + subsumptionReasoningTimeNs = 0; + nrOfSubsumptionChecks = 0; + // subsumptionHierarchyTimeNs = 0; + nrOfSubsumptionHierarchyQueries = 0; + otherReasoningTimeNs = 0; + overallReasoningTimeNs = 0; + } + + public SortedSetTuple<Individual> doubleRetrieval(Concept concept) { + reasoningStartTimeTmp = System.nanoTime(); + SortedSetTuple<Individual> result; + try { + result = reasoner.doubleRetrieval(concept); + } catch (ReasoningMethodUnsupportedException e) { + handleExceptions(e); + return null; + } + reasoningDurationTmp = System.nanoTime() - reasoningStartTimeTmp; + otherReasoningTimeNs += reasoningDurationTmp; + overallReasoningTimeNs += reasoningDurationTmp; + return result; + } + + public SortedSetTuple<Individual> doubleRetrieval(Concept concept, Concept adc) { + reasoningStartTimeTmp = System.nanoTime(); + SortedSetTuple<Individual> result; + try { + result = reasoner.doubleRetrieval(concept, adc); + } catch (ReasoningMethodUnsupportedException e) { + handleExceptions(e); + return null; + } + reasoningDurationTmp = System.nanoTime() - reasoningStartTimeTmp; + otherReasoningTimeNs += reasoningDurationTmp; + overallReasoningTimeNs += reasoningDurationTmp; + return result; + } + + // nachher wieder entfernen + // public static List<Concept> retrievals = new LinkedList<Concept>(); + + public SortedSet<Individual> retrieval(Concept concept) { + // Test, ob tatsächlich keine doppelten Retrievals ausgeführt werden + // retrievals.add(concept); + + reasoningStartTimeTmp = System.nanoTime(); + SortedSet<Individual> result; + try { + result = reasoner.retrieval(concept); + } catch (ReasoningMethodUnsupportedException e) { + handleExceptions(e); + return null; + } + nrOfRetrievals++; + reasoningDurationTmp = System.nanoTime() - reasoningStartTimeTmp; + retrievalReasoningTimeNs += reasoningDurationTmp; + overallReasoningTimeNs += reasoningDurationTmp; + return result; + } + + public boolean instanceCheck(Concept concept, Individual s) { + reasoningStartTimeTmp = System.nanoTime(); + boolean result = false; + try { + result = reasoner.instanceCheck(concept, s); + } catch (ReasoningMethodUnsupportedException e) { + handleExceptions(e); + } + nrOfInstanceChecks++; + reasoningDurationTmp = System.nanoTime() - reasoningStartTimeTmp; + instanceCheckReasoningTimeNs += reasoningDurationTmp; + overallReasoningTimeNs += reasoningDurationTmp; + return result; + } + + public Set<Individual> instanceCheck(Concept concept, Set<Individual> s) { + reasoningStartTimeTmp = System.nanoTime(); + Set<Individual> result = null; + try { + result = reasoner.instanceCheck(concept, s); + } catch (ReasoningMethodUnsupportedException e) { + handleExceptions(e); + } + nrOfInstanceChecks+=s.size(); + nrOfMultiInstanceChecks++; + reasoningDurationTmp = System.nanoTime() - reasoningStartTimeTmp; + instanceCheckReasoningTimeNs += reasoningDurationTmp; + overallReasoningTimeNs += reasoningDurationTmp; + return result; + } + + // c1 subsummiert c2 + public boolean subsumes(Concept superConcept, Concept subConcept) { + reasoningStartTimeTmp = System.nanoTime(); + boolean result = false; + try { + result = reasoner.subsumes(superConcept, subConcept); + } catch (ReasoningMethodUnsupportedException e) { + handleExceptions(e); + } + nrOfSubsumptionChecks++; + reasoningDurationTmp = System.nanoTime() - reasoningStartTimeTmp; + subsumptionReasoningTimeNs += reasoningDurationTmp; + overallReasoningTimeNs += reasoningDurationTmp; + return result; + } + + public Set<Concept> subsumes(Set<Concept> superConcepts, Concept subConcept) { + reasoningStartTimeTmp = System.nanoTime(); + Set<Concept> result = null; + try { + result = reasoner.subsumes(superConcepts, subConcept); + } catch (ReasoningMethodUnsupportedException e) { + handleExceptions(e); + } + nrOfSubsumptionChecks += superConcepts.size(); + nrOfMultiSubsumptionChecks++; + reasoningDurationTmp = System.nanoTime() - reasoningStartTimeTmp; + subsumptionReasoningTimeNs += reasoningDurationTmp; + overallReasoningTimeNs += reasoningDurationTmp; + return result; + } + + /* + // Problem: wie behandle ich Top und Bottom? + // TODO: schauen wie das in KAON2 gemacht wird + public SortedSet<Concept> getMoreGeneralConcepts(Concept concept) { + if(Config.useHierarchyReasonerBenchmarks) + reasoningStartTimeTmp = System.nanoTime(); + SortedSet<Concept> result; + try { + result = reasoner.getMoreGeneralConcepts(concept); + } catch (ReasoningMethodUnsupportedException e) { + handleExceptions(e); + return null; + } + if(Config.useHierarchyReasonerBenchmarks) { + nrOfSubsumptionHierarchyQueries++; + reasoningDurationTmp = System.nanoTime() - reasoningStartTimeTmp; + subsumptionHierarchyTimeNs += reasoningDurationTmp; + overallReasoningTimeNs += reasoningDurationTmp; + } + return result; + } + + public SortedSet<Concept> getMoreSpecialConcepts(Concept concept) { + if(Config.useHierarchyReasonerBenchmarks) + reasoningStartTimeTmp = System.nanoTime(); + SortedSet<Concept> result; + try { + result = reasoner.getMoreSpecialConcepts(concept); + } catch (ReasoningMethodUnsupportedException e) { + handleExceptions(e); + return null; + } + if(Config.useHierarchyReasonerBenchmarks) { + nrOfSubsumptionHierarchyQueries++; + reasoningDurationTmp = System.nanoTime() - reasoningStartTimeTmp; + subsumptionHierarchyTimeNs += reasoningDurationTmp; + overallReasoningTimeNs += reasoningDurationTmp; + } + return result; + } + */ + + /** + * Returns more general concepts in the subsumption hierarchy. + * + * @param concept Atomic concept, top, or bottom. + * @return A set of more general concepts. + */ + public SortedSet<Concept> getMoreGeneralConcepts(Concept concept) { + return getSubsumptionHierarchy().getMoreGeneralConcepts(concept); + } + + /** + * Returns more special concepts in the subsumption hierarchy. + * + * @param concept Atomic concept, top, or bottom. + * @return A set of more special concepts. + */ + public SortedSet<Concept> getMoreSpecialConcepts(Concept concept) { + return getSubsumptionHierarchy().getMoreSpecialConcepts(concept); + } + + /** + * Returns more general concepts in the subsumption hierarchy. + * + * @see RoleHierarchy#getMoreGeneralRoles(AtomicRole) + * @param role Atomic concept, top, or bottom. + * @return A set of more general concepts. + */ + public SortedSet<AtomicRole> getMoreGeneralRoles(AtomicRole role) { + return getRoleHierarchy().getMoreGeneralRoles(role); + } + + /** + * Returns more special concepts in the subsumption hierarchy. + * + * @see RoleHierarchy#getMoreSpecialRoles(AtomicRole) + * @param role Atomic concept, top, or bottom. + * @return A set of more special concepts. + */ + public SortedSet<AtomicRole> getMoreSpecialRoles(AtomicRole role) { + return getRoleHierarchy().getMoreSpecialRoles(role); + } + + /** + * @see RoleHierarchy#getMostGeneralRoles() + * @return The most general roles. + */ + public TreeSet<AtomicRole> getMostGeneralRoles() { + return getRoleHierarchy().getMostGeneralRoles(); + } + + /** + * @see RoleHierarchy#getMostSpecialRoles() + * @return The most special roles. + */ + public TreeSet<AtomicRole> getMostSpecialRoles() { + return getRoleHierarchy().getMostSpecialRoles(); + } + + public SubsumptionHierarchy getSubsumptionHierarchy() { + try { + nrOfSubsumptionHierarchyQueries++; + return reasoner.getSubsumptionHierarchy(); + } catch (ReasoningMethodUnsupportedException e) { + handleExceptions(e); + return null; + } + } + + public RoleHierarchy getRoleHierarchy() { + try { + return reasoner.getRoleHierarchy(); + } catch (ReasoningMethodUnsupportedException e) { + handleExceptions(e); + return null; + } + } + + public boolean isSatisfiable() { + reasoningStartTimeTmp = System.nanoTime(); + boolean result; + try { + result = reasoner.isSatisfiable(); + } catch (ReasoningMethodUnsupportedException e) { + handleExceptions(e); + return false; + } + reasoningDurationTmp = System.nanoTime() - reasoningStartTimeTmp; + otherReasoningTimeNs += reasoningDurationTmp; + overallReasoningTimeNs += reasoningDurationTmp; + return result; + } + + // gibt zu einer Rolle alle Elemente zur�ck + // private, da es keine Standardoperation ist + public Map<Individual, SortedSet<Individual>> getRoleMembers(AtomicRole atomicRole) { + reasoningStartTimeTmp = System.nanoTime(); + Map<Individual, SortedSet<Individual>> result; + try { + result = reasoner.getRoleMembers(atomicRole); + } catch (ReasoningMethodUnsupportedException e) { + handleExceptions(e); + return null; + } + reasoningDurationTmp = System.nanoTime() - reasoningStartTimeTmp; + otherReasoningTimeNs += reasoningDurationTmp; + overallReasoningTimeNs += reasoningDurationTmp; + return result; + } + + // speichern einer Ontolgie wird speziell behandelt, da kein Reasoning + public void saveOntology(File file, OntologyFileFormat format) { + if (getReasonerType() == ReasonerType.KAON2) { + ((KAON2Reasoner) reasoner).saveOntology(file, format); + } else if (getReasonerType() == ReasonerType.DIG) { + // DIG erzeugt momentan auch nur einen KAON2-Reasoner und + // exportiert dann mit der obigen Funktion + ((DIGReasoner) reasoner).saveOntology(file, format); + } + } + + public Set<AtomicConcept> getAtomicConcepts() { + return reasoner.getAtomicConcepts(); + } + + public Set<AtomicRole> getAtomicRoles() { + return reasoner.getAtomicRoles(); + } + + public SortedSet<Individual> getIndividuals() { + return reasoner.getIndividuals(); + } + + public ReasonerType getReasonerType() { + return reasoner.getReasonerType(); + } + + public List<AtomicConcept> getAtomicConceptsList() { + return atomicConceptsList; + } + + public List<AtomicRole> getAtomicRolesList() { + return atomicRolesList; + } + + public long getInstanceCheckReasoningTimeNs() { + return instanceCheckReasoningTimeNs; + } + + public long getRetrievalReasoningTimeNs() { + return retrievalReasoningTimeNs; + } + + public int getNrOfInstanceChecks() { + return nrOfInstanceChecks; + } + + public int getNrOfRetrievals() { + return nrOfRetrievals; + } + + public int getNrOfSubsumptionChecks() { + return nrOfSubsumptionChecks; + } + + public long getSubsumptionReasoningTimeNs() { + return subsumptionReasoningTimeNs; + } + + /* + public long getSubsumptionHierarchyTimeNs() { + return subsumptionHierarchyTimeNs; + } + */ + public int getNrOfSubsumptionHierarchyQueries() { + return nrOfSubsumptionHierarchyQueries; + } + + + public long getOver... [truncated message content] |
From: <jen...@us...> - 2007-09-25 09:30:17
|
Revision: 151 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=151&view=rev Author: jenslehmann Date: 2007-09-25 02:30:13 -0700 (Tue, 25 Sep 2007) Log Message: ----------- continued building base structure Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/core/Component.java trunk/src/dl-learner/org/dllearner/core/ComponentManager.java trunk/src/dl-learner/org/dllearner/core/ConfigEntry.java trunk/src/dl-learner/org/dllearner/core/ConfigOption.java trunk/src/dl-learner/org/dllearner/core/IntegerConfigOption.java trunk/src/dl-learner/org/dllearner/core/InvalidConfigOptionValueException.java trunk/src/dl-learner/org/dllearner/core/LearningAlgorithmNew.java trunk/src/dl-learner/org/dllearner/core/ReasonerComponent.java trunk/src/dl-learner/org/dllearner/core/StringConfigOption.java trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLP.java Added Paths: ----------- trunk/src/dl-learner/org/dllearner/core/CommonConfigMappings.java trunk/src/dl-learner/org/dllearner/core/ComponentTest.java trunk/src/dl-learner/org/dllearner/core/KnowledgeSource.java trunk/src/dl-learner/org/dllearner/kb/ trunk/src/dl-learner/org/dllearner/kb/OWLFile.java Removed Paths: ------------- trunk/Test.txt Deleted: trunk/Test.txt =================================================================== --- trunk/Test.txt 2007-09-23 17:17:56 UTC (rev 150) +++ trunk/Test.txt 2007-09-25 09:30:13 UTC (rev 151) @@ -1 +0,0 @@ -Test \ No newline at end of file Added: trunk/src/dl-learner/org/dllearner/core/CommonConfigMappings.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/CommonConfigMappings.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/CommonConfigMappings.java 2007-09-25 09:30:13 UTC (rev 151) @@ -0,0 +1,28 @@ +/** + * 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.core; + +/** + * @author Jens Lehmann + * + */ +public class CommonConfigMappings { + +} Modified: trunk/src/dl-learner/org/dllearner/core/Component.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/Component.java 2007-09-23 17:17:56 UTC (rev 150) +++ trunk/src/dl-learner/org/dllearner/core/Component.java 2007-09-25 09:30:13 UTC (rev 151) @@ -39,8 +39,8 @@ /** * Returns all configuration options supported by this component. */ - public static Collection<ConfigOption> createConfigOptions() { - return new LinkedList<ConfigOption>(); + public static Collection<ConfigOption<?>> createConfigOptions() { + return new LinkedList<ConfigOption<?>>(); } /** @@ -48,5 +48,5 @@ * * @param entry A configuration entry. */ - public abstract void applyConfigEntry(ConfigEntry entry); + public abstract <T> void applyConfigEntry(ConfigEntry<T> entry) throws InvalidConfigOptionValueException; } Modified: trunk/src/dl-learner/org/dllearner/core/ComponentManager.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ComponentManager.java 2007-09-23 17:17:56 UTC (rev 150) +++ trunk/src/dl-learner/org/dllearner/core/ComponentManager.java 2007-09-25 09:30:13 UTC (rev 151) @@ -72,6 +72,33 @@ return componentStrings; } + public KnowledgeSource knowledgeSource(Class<? extends KnowledgeSource> source) { + try { + Constructor<? extends KnowledgeSource> constructor = source.getConstructor(); + return constructor.newInstance(); + } catch (InstantiationException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (IllegalAccessException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (SecurityException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (NoSuchMethodException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (IllegalArgumentException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (InvocationTargetException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + return null; + } + public LearningProblemNew learningProblem(Class<LearningProblemNew> lp, ReasonerComponent reasoner) { try { Constructor<LearningProblemNew> constructor = lp.getConstructor(ReasonerComponent.class); Added: trunk/src/dl-learner/org/dllearner/core/ComponentTest.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ComponentTest.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/ComponentTest.java 2007-09-25 09:30:13 UTC (rev 151) @@ -0,0 +1,50 @@ +/** + * 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.core; + +import org.dllearner.kb.OWLFile; + +/** + * Test for component based design. + * + * @author Jens Lehmann + * + */ +public class ComponentTest { + + /** + * @param args + */ + public static void main(String[] args) { + + // get singleton instance of component manager + ComponentManager cm = ComponentManager.getInstance(); + + // create knowledge source + KnowledgeSource source = cm.knowledgeSource(OWLFile.class); + + // ... to be continued ... + + ReasonerComponent reasoner = new ReasonerComponent(); + ComponentManager.getInstance().learningProblem(LearningProblemNew.class, reasoner); + + } + +} Modified: trunk/src/dl-learner/org/dllearner/core/ConfigEntry.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ConfigEntry.java 2007-09-23 17:17:56 UTC (rev 150) +++ trunk/src/dl-learner/org/dllearner/core/ConfigEntry.java 2007-09-25 09:30:13 UTC (rev 151) @@ -25,14 +25,30 @@ * @author Jens Lehmann * */ -public class ConfigEntry { +public class ConfigEntry<T> { - public ConfigEntry(ConfigOption option, Object value) throws Exception { + private ConfigOption<T> option; + private T value; + + public ConfigEntry(ConfigOption<T> option, T value) throws InvalidConfigOptionValueException { if(!option.isValidValue(value)) { throw new InvalidConfigOptionValueException(option, value); } else { - + this.option = option; + this.value = value; } } + public ConfigOption<T> getOption() { + return option; + } + + public String getOptionName() { + return option.getName(); + } + + public T getValue() { + return value; + } + } Modified: trunk/src/dl-learner/org/dllearner/core/ConfigOption.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ConfigOption.java 2007-09-23 17:17:56 UTC (rev 150) +++ trunk/src/dl-learner/org/dllearner/core/ConfigOption.java 2007-09-25 09:30:13 UTC (rev 151) @@ -26,7 +26,7 @@ * @author Jens Lehmann * */ -public abstract class ConfigOption { +public abstract class ConfigOption<T> { private String name; @@ -38,6 +38,6 @@ return name; } - public abstract boolean isValidValue(Object value); + public abstract boolean isValidValue(T value); } Modified: trunk/src/dl-learner/org/dllearner/core/IntegerConfigOption.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/IntegerConfigOption.java 2007-09-23 17:17:56 UTC (rev 150) +++ trunk/src/dl-learner/org/dllearner/core/IntegerConfigOption.java 2007-09-25 09:30:13 UTC (rev 151) @@ -26,7 +26,7 @@ * @author Jens Lehmann * */ -public class IntegerConfigOption extends ConfigOption { +public class IntegerConfigOption extends ConfigOption<Integer> { private int lowerLimit = Integer.MIN_VALUE; private int upperLimit = Integer.MAX_VALUE; @@ -38,7 +38,7 @@ /* (non-Javadoc) * @see org.dllearner.core.ConfigOption#isValidValue(java.lang.Object) */ - @Override + /* public boolean isValidValue(Object value) { if(!(value instanceof Integer)) return false; @@ -50,7 +50,19 @@ else return false; } + */ + /* (non-Javadoc) + * @see org.dllearner.core.ConfigOption#isValidValue(java.lang.Object) + */ + @Override + public boolean isValidValue(Integer value) { + if(value >= lowerLimit && value <= upperLimit) + return true; + else + return false; + } + /** * @return the The lowest possible value for this configuration option. */ @@ -79,4 +91,6 @@ this.upperLimit = upperLimit; } + + } Modified: trunk/src/dl-learner/org/dllearner/core/InvalidConfigOptionValueException.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/InvalidConfigOptionValueException.java 2007-09-23 17:17:56 UTC (rev 150) +++ trunk/src/dl-learner/org/dllearner/core/InvalidConfigOptionValueException.java 2007-09-25 09:30:13 UTC (rev 151) @@ -27,7 +27,7 @@ private static final long serialVersionUID = 3286110428258072698L; - public InvalidConfigOptionValueException(ConfigOption option, Object value) { + public InvalidConfigOptionValueException(ConfigOption<?> option, Object value) { super("The value " + value + " is not valid for the configuration option " + option + "."); } Added: trunk/src/dl-learner/org/dllearner/core/KnowledgeSource.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/KnowledgeSource.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/KnowledgeSource.java 2007-09-25 09:30:13 UTC (rev 151) @@ -0,0 +1,32 @@ +/** + * 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.core; + +import java.net.URI; + +/** + * @author Jens Lehmann + * + */ +public abstract class KnowledgeSource extends Component { + + public abstract String toDIG(URI kbURI); + +} Modified: trunk/src/dl-learner/org/dllearner/core/LearningAlgorithmNew.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/LearningAlgorithmNew.java 2007-09-23 17:17:56 UTC (rev 150) +++ trunk/src/dl-learner/org/dllearner/core/LearningAlgorithmNew.java 2007-09-25 09:30:13 UTC (rev 151) @@ -23,15 +23,8 @@ * @author Jens Lehmann * */ -public class LearningAlgorithmNew extends Component { +public abstract class LearningAlgorithmNew extends Component { - /* (non-Javadoc) - * @see org.dllearner.core.Component#applyConfigEntry(org.dllearner.core.ConfigEntry) - */ - @Override - public void applyConfigEntry(ConfigEntry entry) { - // TODO Auto-generated method stub - } } Modified: trunk/src/dl-learner/org/dllearner/core/ReasonerComponent.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ReasonerComponent.java 2007-09-23 17:17:56 UTC (rev 150) +++ trunk/src/dl-learner/org/dllearner/core/ReasonerComponent.java 2007-09-25 09:30:13 UTC (rev 151) @@ -29,7 +29,7 @@ * @see org.dllearner.core.Component#applyConfigEntry(org.dllearner.core.ConfigEntry) */ @Override - public void applyConfigEntry(ConfigEntry entry) { + public <T> void applyConfigEntry(ConfigEntry<T> entry) { // TODO Auto-generated method stub } Modified: trunk/src/dl-learner/org/dllearner/core/StringConfigOption.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/StringConfigOption.java 2007-09-23 17:17:56 UTC (rev 150) +++ trunk/src/dl-learner/org/dllearner/core/StringConfigOption.java 2007-09-25 09:30:13 UTC (rev 151) @@ -29,7 +29,7 @@ * @author Jens Lehmann * */ -public class StringConfigOption extends ConfigOption { +public class StringConfigOption extends ConfigOption<String> { private Set<String> allowedValues; @@ -42,13 +42,8 @@ * @see org.dllearner.core.ConfigOption#isValidValue(java.lang.Object) */ @Override - public boolean isValidValue(Object value) { - if(!(value instanceof String)) - return false; - - String stringValue = (String) value; - - if(allowedValues.size() == 0 || allowedValues.contains(stringValue)) + public boolean isValidValue(String value) { + if(allowedValues.size() == 0 || allowedValues.contains(value)) return true; else return false; Added: trunk/src/dl-learner/org/dllearner/kb/OWLFile.java =================================================================== --- trunk/src/dl-learner/org/dllearner/kb/OWLFile.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/kb/OWLFile.java 2007-09-25 09:30:13 UTC (rev 151) @@ -0,0 +1,81 @@ +/** + * 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.kb; + +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URL; +import java.util.Collection; +import java.util.LinkedList; + +import org.dllearner.OntologyFileFormat; +import org.dllearner.core.ConfigEntry; +import org.dllearner.core.ConfigOption; +import org.dllearner.core.InvalidConfigOptionValueException; +import org.dllearner.core.KnowledgeSource; +import org.dllearner.core.StringConfigOption; +import org.dllearner.reasoning.OWLAPIDIGConverter; + +/** + * @author Jens Lehmann + * + */ +public class OWLFile extends KnowledgeSource { + + private URL url; + + public static String getName() { + return "OWL file"; + } + + public static Collection<ConfigOption<?>> createConfigOptions() { + Collection<ConfigOption<?>> options = new LinkedList<ConfigOption<?>>(); + options.add(new StringConfigOption("url")); + return options; + } + + /* + * @see org.dllearner.core.Component#applyConfigEntry(org.dllearner.core.ConfigEntry) + */ + @Override + public <T> void applyConfigEntry(ConfigEntry<T> entry) throws InvalidConfigOptionValueException { + if (entry.getOptionName().equals("url")) { + String s = (String) entry.getValue(); + try { + url = new URL(s); + } catch (MalformedURLException e) { + // e.printStackTrace(); + throw new InvalidConfigOptionValueException(entry.getOption(), entry.getValue()); + } + } + } + + /* + * (non-Javadoc) + * + * @see org.dllearner.core.KnowledgeSource#toDIG() + */ + @Override + public String toDIG(URI kbURI) { + // TODO: need some handling for cases where the URL was not set + return OWLAPIDIGConverter.getTellsString(url, OntologyFileFormat.RDF_XML, kbURI); + } + +} Modified: trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLP.java =================================================================== --- trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLP.java 2007-09-23 17:17:56 UTC (rev 150) +++ trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLP.java 2007-09-25 09:30:13 UTC (rev 151) @@ -19,10 +19,7 @@ */ package org.dllearner.learningproblems; -import java.util.Collection; - import org.dllearner.core.ConfigEntry; -import org.dllearner.core.ConfigOption; import org.dllearner.core.LearningProblemNew; /** @@ -35,17 +32,9 @@ * @see org.dllearner.core.Component#applyConfigEntry(org.dllearner.core.ConfigEntry) */ @Override - public void applyConfigEntry(ConfigEntry entry) { + public <T> void applyConfigEntry(ConfigEntry<T> entry) { // TODO Auto-generated method stub } - - /* (non-Javadoc) - * @see org.dllearner.core.Component#getConfigOptions() - */ - public static Collection<ConfigOption> getConfigOptions() { - // TODO: positive and negative examples - return null; - } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-09-23 17:17:57
|
Revision: 150 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=150&view=rev Author: jenslehmann Date: 2007-09-23 10:17:56 -0700 (Sun, 23 Sep 2007) Log Message: ----------- stub for file with component list Added Paths: ----------- trunk/lib/components.ini Added: trunk/lib/components.ini =================================================================== --- trunk/lib/components.ini (rev 0) +++ trunk/lib/components.ini 2007-09-23 17:17:56 UTC (rev 150) @@ -0,0 +1,3 @@ +// list of all components DL-Learner should use +// (if you implement your own components add them here) +org.dllearner.learningproblems.DefinitionLPTwoValued This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-09-23 17:16:13
|
Revision: 149 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=149&view=rev Author: jenslehmann Date: 2007-09-23 10:16:08 -0700 (Sun, 23 Sep 2007) Log Message: ----------- continued implementing the new base structure Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/core/Component.java trunk/src/dl-learner/org/dllearner/core/ComponentManager.java trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLP.java trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPThreeValued.java trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPTwoValued.java Added Paths: ----------- trunk/src/dl-learner/org/dllearner/core/LearningAlgorithmNew.java trunk/src/dl-learner/org/dllearner/core/LearningProblemNew.java trunk/src/dl-learner/org/dllearner/core/ReasonerComponent.java Removed Paths: ------------- trunk/src/dl-learner/org/dllearner/learningproblems/LearningProblemNew.java Modified: trunk/src/dl-learner/org/dllearner/core/Component.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/Component.java 2007-09-22 10:22:00 UTC (rev 148) +++ trunk/src/dl-learner/org/dllearner/core/Component.java 2007-09-23 17:16:08 UTC (rev 149) @@ -20,28 +20,33 @@ package org.dllearner.core; import java.util.Collection; +import java.util.LinkedList; /** * @author Jens Lehmann * */ -public interface Component { - +public abstract class Component { + /** * * @return The name of this component. */ - public String getName(); + public static String getName() { + return "unnamed component"; + } /** * Returns all configuration options supported by this component. */ - public Collection<ConfigOption> getConfigOptions(); + public static Collection<ConfigOption> createConfigOptions() { + return new LinkedList<ConfigOption>(); + } /** * Applies a configuration option to this component. * * @param entry A configuration entry. */ - public void applyConfigEntry(ConfigEntry entry); + public abstract void applyConfigEntry(ConfigEntry entry); } Modified: trunk/src/dl-learner/org/dllearner/core/ComponentManager.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ComponentManager.java 2007-09-22 10:22:00 UTC (rev 148) +++ trunk/src/dl-learner/org/dllearner/core/ComponentManager.java 2007-09-23 17:16:08 UTC (rev 149) @@ -19,10 +19,84 @@ */ package org.dllearner.core; +import java.io.BufferedReader; +import java.io.DataInputStream; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStreamReader; +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; +import java.util.LinkedList; +import java.util.List; + /** + * Central manager class for DL-Learner. + * * @author Jens Lehmann * */ public class ComponentManager { + private static String componentsFile = "lib/components.ini"; + + private static ComponentManager cm = new ComponentManager(); + + private ComponentManager() { + + } + + public static ComponentManager getInstance() { + return cm; + } + + private static List<String> readComponentsFile() { + List<String> componentStrings = new LinkedList<String>(); + + try { + FileInputStream fstream = new FileInputStream(componentsFile); + + DataInputStream in = new DataInputStream(fstream); + BufferedReader br = new BufferedReader(new InputStreamReader(in)); + String line; + + while ((line = br.readLine()) != null) { + if(!(line.startsWith("#") || line.startsWith("//") || line.startsWith("%"))) + componentStrings.add(line); + } + + in.close(); + } catch (IOException e) { + e.printStackTrace(); + } + + return componentStrings; + } + + public LearningProblemNew learningProblem(Class<LearningProblemNew> lp, ReasonerComponent reasoner) { + try { + Constructor<LearningProblemNew> constructor = lp.getConstructor(ReasonerComponent.class); + return constructor.newInstance(reasoner); + } catch (SecurityException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (NoSuchMethodException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (IllegalArgumentException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (InstantiationException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (IllegalAccessException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (InvocationTargetException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + return null; + } + } Added: trunk/src/dl-learner/org/dllearner/core/LearningAlgorithmNew.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/LearningAlgorithmNew.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/LearningAlgorithmNew.java 2007-09-23 17:16:08 UTC (rev 149) @@ -0,0 +1,37 @@ +/** + * 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.core; + +/** + * @author Jens Lehmann + * + */ +public class LearningAlgorithmNew extends Component { + + /* (non-Javadoc) + * @see org.dllearner.core.Component#applyConfigEntry(org.dllearner.core.ConfigEntry) + */ + @Override + public void applyConfigEntry(ConfigEntry entry) { + // TODO Auto-generated method stub + + } + +} Copied: trunk/src/dl-learner/org/dllearner/core/LearningProblemNew.java (from rev 148, trunk/src/dl-learner/org/dllearner/learningproblems/LearningProblemNew.java) =================================================================== --- trunk/src/dl-learner/org/dllearner/core/LearningProblemNew.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/LearningProblemNew.java 2007-09-23 17:16:08 UTC (rev 149) @@ -0,0 +1,31 @@ +/** + * 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.core; + +/** + * Marker interface for all learning problems (the "New" at the end of the name + * is temporary for the restructuring process). + * + * @author Jens Lehmann + * + */ +public abstract class LearningProblemNew extends Component { + +} Added: trunk/src/dl-learner/org/dllearner/core/ReasonerComponent.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ReasonerComponent.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/ReasonerComponent.java 2007-09-23 17:16:08 UTC (rev 149) @@ -0,0 +1,37 @@ +/** + * 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.core; + +/** + * @author Jens Lehmann + * + */ +public class ReasonerComponent extends Component { + + /* (non-Javadoc) + * @see org.dllearner.core.Component#applyConfigEntry(org.dllearner.core.ConfigEntry) + */ + @Override + public void applyConfigEntry(ConfigEntry entry) { + // TODO Auto-generated method stub + + } + +} Modified: trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLP.java =================================================================== --- trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLP.java 2007-09-22 10:22:00 UTC (rev 148) +++ trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLP.java 2007-09-23 17:16:08 UTC (rev 149) @@ -21,19 +21,20 @@ import java.util.Collection; -import org.dllearner.core.Component; import org.dllearner.core.ConfigEntry; import org.dllearner.core.ConfigOption; +import org.dllearner.core.LearningProblemNew; /** * @author Jens Lehmann * */ -public abstract class DefinitionLP implements LearningProblemNew, Component { +public abstract class DefinitionLP extends LearningProblemNew { /* (non-Javadoc) * @see org.dllearner.core.Component#applyConfigEntry(org.dllearner.core.ConfigEntry) */ + @Override public void applyConfigEntry(ConfigEntry entry) { // TODO Auto-generated method stub @@ -42,17 +43,9 @@ /* (non-Javadoc) * @see org.dllearner.core.Component#getConfigOptions() */ - public Collection<ConfigOption> getConfigOptions() { - // TODO Auto-generated method stub + public static Collection<ConfigOption> getConfigOptions() { + // TODO: positive and negative examples return null; } - - /* (non-Javadoc) - * @see org.dllearner.core.Component#getName() - */ - public String getName() { - // TODO Auto-generated method stub - return null; - } } Modified: trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPThreeValued.java =================================================================== --- trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPThreeValued.java 2007-09-22 10:22:00 UTC (rev 148) +++ trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPThreeValued.java 2007-09-23 17:16:08 UTC (rev 149) @@ -19,17 +19,17 @@ */ package org.dllearner.learningproblems; -import java.util.Collection; - -import org.dllearner.core.ConfigEntry; -import org.dllearner.core.ConfigOption; - /** * @author Jens Lehmann * */ public class DefinitionLPThreeValued extends DefinitionLP { + /* (non-Javadoc) + * @see org.dllearner.core.Component#getName() + */ + public static String getName() { + return "two valued definition learning problem"; + } - } Modified: trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPTwoValued.java =================================================================== --- trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPTwoValued.java 2007-09-22 10:22:00 UTC (rev 148) +++ trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPTwoValued.java 2007-09-23 17:16:08 UTC (rev 149) @@ -25,6 +25,11 @@ */ public class DefinitionLPTwoValued extends DefinitionLP { + /* (non-Javadoc) + * @see org.dllearner.core.Component#getName() + */ + public static String getName() { + return "two valued definition learning problem"; + } - } Deleted: trunk/src/dl-learner/org/dllearner/learningproblems/LearningProblemNew.java =================================================================== --- trunk/src/dl-learner/org/dllearner/learningproblems/LearningProblemNew.java 2007-09-22 10:22:00 UTC (rev 148) +++ trunk/src/dl-learner/org/dllearner/learningproblems/LearningProblemNew.java 2007-09-23 17:16:08 UTC (rev 149) @@ -1,31 +0,0 @@ -/** - * 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.learningproblems; - -/** - * Marker interface for all learning problems (the "New" at the end of the name - * is temporary for the restructuring process). - * - * @author Jens Lehmann - * - */ -public interface LearningProblemNew { - -} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-09-22 10:22:02
|
Revision: 148 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=148&view=rev Author: jenslehmann Date: 2007-09-22 03:22:00 -0700 (Sat, 22 Sep 2007) Log Message: ----------- added string config options and new learning problem structure Added Paths: ----------- trunk/src/dl-learner/org/dllearner/core/CommonConfigOptions.java trunk/src/dl-learner/org/dllearner/core/StringConfigOption.java trunk/src/dl-learner/org/dllearner/learningproblems/ trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLP.java trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPThreeValued.java trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPTwoValued.java trunk/src/dl-learner/org/dllearner/learningproblems/LearningProblemNew.java Added: trunk/src/dl-learner/org/dllearner/core/CommonConfigOptions.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/CommonConfigOptions.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/CommonConfigOptions.java 2007-09-22 10:22:00 UTC (rev 148) @@ -0,0 +1,34 @@ +/** + * 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.core; + +/** + * @author Jens Lehmann + * + */ +public final class CommonConfigOptions { + + public static final IntegerConfigOption getVerbosityOption() { + // TODO: temporary code + IntegerConfigOption verbosityOption = new IntegerConfigOption("verbosity"); + return verbosityOption; + } + +} Added: trunk/src/dl-learner/org/dllearner/core/StringConfigOption.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/StringConfigOption.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/StringConfigOption.java 2007-09-22 10:22:00 UTC (rev 148) @@ -0,0 +1,71 @@ +/** + * 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.core; + +import java.util.Set; +import java.util.TreeSet; + +/** + * A configuration option, which allows values of type String. Optionally a set + * of allowed strings can be set. By default all strings are allowed. + * + * @author Jens Lehmann + * + */ +public class StringConfigOption extends ConfigOption { + + private Set<String> allowedValues; + + public StringConfigOption(String name) { + super(name); + allowedValues = new TreeSet<String>(); + } + + /* (non-Javadoc) + * @see org.dllearner.core.ConfigOption#isValidValue(java.lang.Object) + */ + @Override + public boolean isValidValue(Object value) { + if(!(value instanceof String)) + return false; + + String stringValue = (String) value; + + if(allowedValues.size() == 0 || allowedValues.contains(stringValue)) + return true; + else + return false; + } + + /** + * @return the allowedValues + */ + public Set<String> getAllowedValues() { + return allowedValues; + } + + /** + * @param allowedValues the allowedValues to set + */ + public void setAllowedValues(Set<String> allowedValues) { + this.allowedValues = allowedValues; + } + +} Added: trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLP.java =================================================================== --- trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLP.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLP.java 2007-09-22 10:22:00 UTC (rev 148) @@ -0,0 +1,58 @@ +/** + * 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.learningproblems; + +import java.util.Collection; + +import org.dllearner.core.Component; +import org.dllearner.core.ConfigEntry; +import org.dllearner.core.ConfigOption; + +/** + * @author Jens Lehmann + * + */ +public abstract class DefinitionLP implements LearningProblemNew, Component { + + /* (non-Javadoc) + * @see org.dllearner.core.Component#applyConfigEntry(org.dllearner.core.ConfigEntry) + */ + public void applyConfigEntry(ConfigEntry entry) { + // TODO Auto-generated method stub + + } + + /* (non-Javadoc) + * @see org.dllearner.core.Component#getConfigOptions() + */ + public Collection<ConfigOption> getConfigOptions() { + // TODO Auto-generated method stub + return null; + } + + /* (non-Javadoc) + * @see org.dllearner.core.Component#getName() + */ + public String getName() { + // TODO Auto-generated method stub + return null; + } + +} Added: trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPThreeValued.java =================================================================== --- trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPThreeValued.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPThreeValued.java 2007-09-22 10:22:00 UTC (rev 148) @@ -0,0 +1,35 @@ +/** + * 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.learningproblems; + +import java.util.Collection; + +import org.dllearner.core.ConfigEntry; +import org.dllearner.core.ConfigOption; + +/** + * @author Jens Lehmann + * + */ +public class DefinitionLPThreeValued extends DefinitionLP { + + + +} Added: trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPTwoValued.java =================================================================== --- trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPTwoValued.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/learningproblems/DefinitionLPTwoValued.java 2007-09-22 10:22:00 UTC (rev 148) @@ -0,0 +1,30 @@ +/** + * 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.learningproblems; + +/** + * @author Jens Lehmann + * + */ +public class DefinitionLPTwoValued extends DefinitionLP { + + + +} Added: trunk/src/dl-learner/org/dllearner/learningproblems/LearningProblemNew.java =================================================================== --- trunk/src/dl-learner/org/dllearner/learningproblems/LearningProblemNew.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/learningproblems/LearningProblemNew.java 2007-09-22 10:22:00 UTC (rev 148) @@ -0,0 +1,31 @@ +/** + * 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.learningproblems; + +/** + * Marker interface for all learning problems (the "New" at the end of the name + * is temporary for the restructuring process). + * + * @author Jens Lehmann + * + */ +public interface LearningProblemNew { + +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-09-22 09:30:16
|
Revision: 147 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=147&view=rev Author: jenslehmann Date: 2007-09-22 02:30:01 -0700 (Sat, 22 Sep 2007) Log Message: ----------- intermediate commit for new base structure Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/core/Component.java trunk/src/dl-learner/org/dllearner/core/ConfigOption.java Added Paths: ----------- trunk/src/dl-learner/org/dllearner/core/ConfigEntry.java trunk/src/dl-learner/org/dllearner/core/IntegerConfigOption.java trunk/src/dl-learner/org/dllearner/core/InvalidConfigOptionValueException.java Removed Paths: ------------- trunk/src/dl-learner/org/dllearner/core/ConfigOptionInstance.java trunk/src/dl-learner/org/dllearner/core/ConfigOptionType.java Modified: trunk/src/dl-learner/org/dllearner/core/Component.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/Component.java 2007-09-21 14:21:49 UTC (rev 146) +++ trunk/src/dl-learner/org/dllearner/core/Component.java 2007-09-22 09:30:01 UTC (rev 147) @@ -19,10 +19,29 @@ */ package org.dllearner.core; +import java.util.Collection; + /** * @author Jens Lehmann * */ public interface Component { + /** + * + * @return The name of this component. + */ + public String getName(); + + /** + * Returns all configuration options supported by this component. + */ + public Collection<ConfigOption> getConfigOptions(); + + /** + * Applies a configuration option to this component. + * + * @param entry A configuration entry. + */ + public void applyConfigEntry(ConfigEntry entry); } Copied: trunk/src/dl-learner/org/dllearner/core/ConfigEntry.java (from rev 146, trunk/src/dl-learner/org/dllearner/core/ConfigOptionInstance.java) =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ConfigEntry.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/ConfigEntry.java 2007-09-22 09:30:01 UTC (rev 147) @@ -0,0 +1,38 @@ +/** + * 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.core; + +/** + * A config entry is a configuration option and a value for the option. + * + * @author Jens Lehmann + * + */ +public class ConfigEntry { + + public ConfigEntry(ConfigOption option, Object value) throws Exception { + if(!option.isValidValue(value)) { + throw new InvalidConfigOptionValueException(option, value); + } else { + + } + } + +} Modified: trunk/src/dl-learner/org/dllearner/core/ConfigOption.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ConfigOption.java 2007-09-21 14:21:49 UTC (rev 146) +++ trunk/src/dl-learner/org/dllearner/core/ConfigOption.java 2007-09-22 09:30:01 UTC (rev 147) @@ -20,9 +20,24 @@ package org.dllearner.core; /** + * This class represents a configuration option (without a value for the + * option). + * * @author Jens Lehmann * */ -public class ConfigOption { +public abstract class ConfigOption { + private String name; + + public ConfigOption(String name) { + this.name = name; + } + + public String getName() { + return name; + } + + public abstract boolean isValidValue(Object value); + } Deleted: trunk/src/dl-learner/org/dllearner/core/ConfigOptionInstance.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ConfigOptionInstance.java 2007-09-21 14:21:49 UTC (rev 146) +++ trunk/src/dl-learner/org/dllearner/core/ConfigOptionInstance.java 2007-09-22 09:30:01 UTC (rev 147) @@ -1,28 +0,0 @@ -/** - * 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.core; - -/** - * @author Jens Lehmann - * - */ -public class ConfigOptionInstance { - -} Deleted: trunk/src/dl-learner/org/dllearner/core/ConfigOptionType.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ConfigOptionType.java 2007-09-21 14:21:49 UTC (rev 146) +++ trunk/src/dl-learner/org/dllearner/core/ConfigOptionType.java 2007-09-22 09:30:01 UTC (rev 147) @@ -1,36 +0,0 @@ -/** - * 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.core; - -/** - * @author Jens Lehmann - * - */ -public enum ConfigOptionType { - - INT, - - DOUBLE, - - STRING, - - SET_STRING - -} Added: trunk/src/dl-learner/org/dllearner/core/IntegerConfigOption.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/IntegerConfigOption.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/IntegerConfigOption.java 2007-09-22 09:30:01 UTC (rev 147) @@ -0,0 +1,82 @@ +/** + * 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.core; + +/** + * A configuration option, which allows values of type integer. A minimum and + * maximum value of the argument can optionally be specified. + * + * @author Jens Lehmann + * + */ +public class IntegerConfigOption extends ConfigOption { + + private int lowerLimit = Integer.MIN_VALUE; + private int upperLimit = Integer.MAX_VALUE; + + public IntegerConfigOption(String name) { + super(name); + } + + /* (non-Javadoc) + * @see org.dllearner.core.ConfigOption#isValidValue(java.lang.Object) + */ + @Override + public boolean isValidValue(Object value) { + if(!(value instanceof Integer)) + return false; + + int intValue = (Integer) value; + + if(intValue >= lowerLimit && intValue <= upperLimit) + return true; + else + return false; + } + + /** + * @return the The lowest possible value for this configuration option. + */ + public int getLowerLimit() { + return lowerLimit; + } + + /** + * @param lowerLimit The lowest possible value for this configuration option. + */ + public void setLowerLimit(int lowerLimit) { + this.lowerLimit = lowerLimit; + } + + /** + * @return the The highest possible value for this configuration option. + */ + public int getUpperLimit() { + return upperLimit; + } + + /** + * @param upperLimit The highest possible value for this configuration option. + */ + public void setUpperLimit(int upperLimit) { + this.upperLimit = upperLimit; + } + +} Added: trunk/src/dl-learner/org/dllearner/core/InvalidConfigOptionValueException.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/InvalidConfigOptionValueException.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/InvalidConfigOptionValueException.java 2007-09-22 09:30:01 UTC (rev 147) @@ -0,0 +1,34 @@ +/** + * 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.core; + +/** + * @author Jens Lehmann + * + */ +public class InvalidConfigOptionValueException extends Exception { + + private static final long serialVersionUID = 3286110428258072698L; + + public InvalidConfigOptionValueException(ConfigOption option, Object value) { + super("The value " + value + " is not valid for the configuration option " + option + "."); + } + +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-09-21 14:21:56
|
Revision: 146 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=146&view=rev Author: jenslehmann Date: 2007-09-21 07:21:49 -0700 (Fri, 21 Sep 2007) Log Message: ----------- new base structure started Added Paths: ----------- trunk/src/dl-learner/org/dllearner/core/ trunk/src/dl-learner/org/dllearner/core/Component.java trunk/src/dl-learner/org/dllearner/core/ComponentManager.java trunk/src/dl-learner/org/dllearner/core/ConfigOption.java trunk/src/dl-learner/org/dllearner/core/ConfigOptionInstance.java trunk/src/dl-learner/org/dllearner/core/ConfigOptionType.java Added: trunk/src/dl-learner/org/dllearner/core/Component.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/Component.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/Component.java 2007-09-21 14:21:49 UTC (rev 146) @@ -0,0 +1,28 @@ +/** + * 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.core; + +/** + * @author Jens Lehmann + * + */ +public interface Component { + +} Added: trunk/src/dl-learner/org/dllearner/core/ComponentManager.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ComponentManager.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/ComponentManager.java 2007-09-21 14:21:49 UTC (rev 146) @@ -0,0 +1,28 @@ +/** + * 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.core; + +/** + * @author Jens Lehmann + * + */ +public class ComponentManager { + +} Added: trunk/src/dl-learner/org/dllearner/core/ConfigOption.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ConfigOption.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/ConfigOption.java 2007-09-21 14:21:49 UTC (rev 146) @@ -0,0 +1,28 @@ +/** + * 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.core; + +/** + * @author Jens Lehmann + * + */ +public class ConfigOption { + +} Added: trunk/src/dl-learner/org/dllearner/core/ConfigOptionInstance.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ConfigOptionInstance.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/ConfigOptionInstance.java 2007-09-21 14:21:49 UTC (rev 146) @@ -0,0 +1,28 @@ +/** + * 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.core; + +/** + * @author Jens Lehmann + * + */ +public class ConfigOptionInstance { + +} Added: trunk/src/dl-learner/org/dllearner/core/ConfigOptionType.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/ConfigOptionType.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/core/ConfigOptionType.java 2007-09-21 14:21:49 UTC (rev 146) @@ -0,0 +1,36 @@ +/** + * 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.core; + +/** + * @author Jens Lehmann + * + */ +public enum ConfigOptionType { + + INT, + + DOUBLE, + + STRING, + + SET_STRING + +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sk...@us...> - 2007-09-20 09:43:02
|
Revision: 145 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=145&view=rev Author: sknappe Date: 2007-09-20 02:42:59 -0700 (Thu, 20 Sep 2007) Log Message: ----------- TestCommit Added Paths: ----------- trunk/Test.txt Added: trunk/Test.txt =================================================================== --- trunk/Test.txt (rev 0) +++ trunk/Test.txt 2007-09-20 09:42:59 UTC (rev 145) @@ -0,0 +1 @@ +Test \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-09-20 07:57:50
|
Revision: 144 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=144&view=rev Author: jenslehmann Date: 2007-09-20 00:57:46 -0700 (Thu, 20 Sep 2007) Log Message: ----------- added german architecture graphics for SSW book chapter and fixed typo in english graphics Modified Paths: -------------- trunk/resources/architecture.png trunk/resources/architecture.svg Added Paths: ----------- trunk/resources/architecture_german.png trunk/resources/architecture_german.svg Modified: trunk/resources/architecture.png =================================================================== (Binary files differ) Modified: trunk/resources/architecture.svg =================================================================== --- trunk/resources/architecture.svg 2007-09-19 12:37:45 UTC (rev 143) +++ trunk/resources/architecture.svg 2007-09-20 07:57:46 UTC (rev 144) @@ -13,6 +13,9 @@ id="svg2" sodipodi:version="0.32" inkscape:version="0.45" + sodipodi:docname="architecture.svg" + sodipodi:docbase="/home/jl/promotion/dl-learner-svn/trunk/resources" + inkscape:output_extension="org.inkscape.output.svg.inkscape" sodipodi:modified="true"> <defs id="defs4"> @@ -205,7 +208,7 @@ sodipodi:role="line" x="222.85715" y="607.71936" - id="tspan3197">refinement operator bases,</tspan><tspan + id="tspan3197">refinement operator based,</tspan><tspan sodipodi:role="line" x="222.85715" y="630.21936" Added: trunk/resources/architecture_german.png =================================================================== (Binary files differ) Property changes on: trunk/resources/architecture_german.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/resources/architecture_german.svg =================================================================== --- trunk/resources/architecture_german.svg (rev 0) +++ trunk/resources/architecture_german.svg 2007-09-20 07:57:46 UTC (rev 144) @@ -0,0 +1,354 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="600" + height="477.14276" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.45" + sodipodi:docname="architecture_german.eps" + sodipodi:docbase="/home/jl/promotion/dl-learner-svn/trunk/resources" + inkscape:output_extension="org.inkscape.output.eps" + inkscape:export-filename="/home/jl/promotion/dl-learner-svn/trunk/resources/architecture_german.png" + inkscape:export-xdpi="67.5" + inkscape:export-ydpi="67.5" + version="1.0" + inkscape:dataloss="true"> + <defs + id="defs4"> + <marker + inkscape:stockid="TriangleOutL" + orient="auto" + refY="0" + refX="0" + id="TriangleOutL" + style="overflow:visible"> + <path + id="path3302" + d="M 5.77,0 L -2.88,5 L -2.88,-5 L 5.77,0 z " + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(0.8,0.8)" /> + </marker> + <marker + inkscape:stockid="TriangleOutM" + orient="auto" + refY="0" + refX="0" + id="TriangleOutM" + style="overflow:visible"> + <path + id="path3299" + d="M 5.77,0 L -2.88,5 L -2.88,-5 L 5.77,0 z " + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="scale(0.4,0.4)" /> + </marker> + <marker + inkscape:stockid="Arrow2Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow2Lend" + style="overflow:visible"> + <path + id="path3379" + style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" + d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.97309,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z " + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" /> + </marker> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + gridtolerance="10000" + guidetolerance="10" + objecttolerance="10" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.7" + inkscape:cx="375" + inkscape:cy="178.45345" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="1280" + inkscape:window-height="951" + inkscape:window-x="0" + inkscape:window-y="0" /> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(-49.999999,-175.71934)"> + <rect + style="opacity:0.58500001;fill:#ffd42a;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.98969221;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect2160" + width="249.01031" + height="89.010307" + x="50.494846" + y="177.64302" /> + <text + xml:space="preserve" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="64.285713" + y="206.6479" + id="text2162"><tspan + sodipodi:role="line" + id="tspan2164" + x="64.285713" + y="206.6479" + style="font-size:18px">Hintergrundwissen</tspan><tspan + sodipodi:role="line" + x="64.285713" + y="229.1479" + id="tspan2166" + style="font-size:18px">(OWL-DL Ontologie,</tspan><tspan + sodipodi:role="line" + x="64.285713" + y="251.6479" + id="tspan2168" + style="font-size:18px">DL Wissensbasis)</tspan></text> + <rect + style="opacity:0.58500001;fill:#ffd42a;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.06090128;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect3167" + width="248.9391" + height="88.939102" + x="400.53046" + y="176.24979" /> + <rect + style="opacity:0.58500001;fill:#ffd42a;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.07453477;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect3169" + width="248.92546" + height="88.925468" + x="400.53726" + y="369.87546" /> + <rect + style="opacity:0.58500001;fill:#ffd42a;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.97974563;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect3171" + width="249.02025" + height="89.020256" + x="50.489872" + y="369.06635" /> + <rect + style="opacity:0.58500001;fill:#ffd42a;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect3173" + width="304.28571" + height="97.14286" + x="191.42856" + y="555.21924" /> + <text + xml:space="preserve" + style="font-size:18px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="411.42856" + y="209.50504" + id="text3175"><tspan + sodipodi:role="line" + id="tspan3177" + x="411.42856" + y="209.50504">positive und negative</tspan><tspan + sodipodi:role="line" + x="411.42856" + y="232.00504" + id="tspan3179">Beispiele</tspan></text> + <text + xml:space="preserve" + style="font-size:18px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="81.428574" + y="398.07648" + id="text3181"><tspan + sodipodi:role="line" + id="tspan3183" + x="81.428574" + y="398.07648">Reasoner, z.B.</tspan><tspan + sodipodi:role="line" + x="81.428574" + y="420.57648" + id="tspan3185">Pellet, FaCT, KAON2,</tspan><tspan + sodipodi:role="line" + x="81.428574" + y="443.07648" + id="tspan3423">Racer Pro</tspan></text> + <text + xml:space="preserve" + style="font-size:18px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="431.42856" + y="399.50504" + id="text3187"><tspan + sodipodi:role="line" + x="431.42856" + y="399.50504" + id="tspan3191">Qualitätsmessung</tspan><tspan + sodipodi:role="line" + x="431.42856" + y="422.00504" + id="tspan2234">des Konzepts</tspan></text> + <text + xml:space="preserve" + style="font-size:18px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="222.85715" + y="585.21936" + id="text3193"><tspan + sodipodi:role="line" + id="tspan3195" + x="222.85715" + y="585.21936">Konzept-Generator, z.B.</tspan><tspan + sodipodi:role="line" + x="222.85715" + y="607.71936" + id="tspan3197">Refinement Operator basiert,</tspan><tspan + sodipodi:role="line" + x="222.85715" + y="630.21936" + id="tspan3201">Genetische Programmierung</tspan></text> + <text + xml:space="preserve" + style="font-size:18px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="-348.07318" + y="506.30338" + id="text3413" + transform="matrix(2.6333241e-3,-0.9999965,0.9999965,2.6333241e-3,0,0)"><tspan + sodipodi:role="line" + id="tspan3415" + x="-348.07318" + y="506.30338">benutzt</tspan></text> + <path + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.81616569;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutL);stroke-miterlimit:4;stroke-dasharray:3.26466269, 3.26466269;stroke-dashoffset:0;stroke-opacity:1" + d="M 162.85714,361.19067 L 162.85714,276.53946" + id="path3419" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.97576565;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutL);stroke-miterlimit:4;stroke-dasharray:3.90306258, 3.90306258;stroke-dashoffset:0;stroke-opacity:1" + d="M 395.95553,408.43421 C 365.52641,422.06523 335.22418,433.61629 307.34169,405.51055" + id="path3421" + sodipodi:nodetypes="cc" /> + <text + xml:space="preserve" + style="font-size:18px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="-349.63113" + y="152.92007" + id="text3425" + transform="matrix(2.6333243e-3,-0.9999965,0.9999965,2.6333243e-3,0,0)"><tspan + sodipodi:role="line" + id="tspan3427" + x="-349.63113" + y="152.92007">benutzt</tspan></text> + <path + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.90932429;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutL);stroke-miterlimit:4;stroke-dasharray:2.7279727, 2.7279727;stroke-dashoffset:0;stroke-opacity:1" + d="M 544.48318,465.45996 C 504.89558,458.38783 475.6447,491.54308 451.56873,544.83742" + id="path3451" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.98453361;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutL);stroke-miterlimit:4;stroke-dasharray:2.95360103, 2.95360103;stroke-dashoffset:0;stroke-opacity:1" + d="M 475.85156,549.83705 C 521.04331,557.09936 554.43503,523.05257 581.91927,468.32516" + id="path3453" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.81616569;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutL);stroke-miterlimit:4;stroke-dasharray:3.26466269, 3.26466269;stroke-dashoffset:0;stroke-opacity:1" + d="M 518.57143,360.85721 L 518.57143,276.206" + id="path3455" /> + <text + xml:space="preserve" + style="font-size:18px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="565.71429" + y="519.50507" + id="text3457"><tspan + sodipodi:role="line" + id="tspan3459" + x="565.71429" + y="519.50507">teste</tspan><tspan + sodipodi:role="line" + x="565.71429" + y="542.00507" + id="tspan3461">Konzept</tspan></text> + <text + xml:space="preserve" + style="font-size:18px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="391.42859" + y="498.07648" + id="text3463"><tspan + sodipodi:role="line" + x="391.42859" + y="498.07648" + id="tspan3467">Qualität</tspan></text> + <path + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.94272459;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutL);stroke-miterlimit:4;stroke-dasharray:2.82817393, 2.82817393;stroke-dashoffset:0;stroke-opacity:1" + d="M 217.62905,548.94843 C 176.19401,556.21074 145.57809,522.16395 120.37857,467.43654" + id="path3469" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.91076428;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutL);stroke-miterlimit:4;stroke-dasharray:2.73229266, 2.73229266;stroke-dashoffset:0;stroke-opacity:1" + d="M 154.30839,465.51986 C 194.02146,458.44773 223.36506,491.60298 247.51734,544.89732" + id="path3471" + sodipodi:nodetypes="cc" /> + <text + xml:space="preserve" + style="font-size:18px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="237.14285" + y="490.93359" + id="text3473"><tspan + sodipodi:role="line" + x="237.14285" + y="490.93359" + id="tspan3477">Anfrage-</tspan><tspan + sodipodi:role="line" + x="237.14285" + y="513.43359" + id="tspan2238">ergebnis</tspan></text> + <text + xml:space="preserve" + style="font-size:18px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="80" + y="536.64795" + id="text3479"><tspan + sodipodi:role="line" + id="tspan3481" + x="80" + y="536.64795">Anfrage</tspan></text> + <text + xml:space="preserve" + style="font-size:18px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="314.28571" + y="439.50504" + id="text3485"><tspan + sodipodi:role="line" + id="tspan3487" + x="314.28571" + y="439.50504">instance</tspan><tspan + sodipodi:role="line" + x="314.28571" + y="462.00504" + id="tspan3489">checks</tspan></text> + <path + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.89501047;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#TriangleOutL);stroke-miterlimit:4;stroke-dasharray:3.5800417, 3.5800417;stroke-dashoffset:0;stroke-opacity:1" + d="M 305.42618,385.92792 C 334.98062,374.12036 364.41182,364.11452 391.49283,388.46048" + id="path3491" + sodipodi:nodetypes="cc" /> + <text + xml:space="preserve" + style="font-size:18px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans" + x="318.57144" + y="363.79077" + id="text3493"><tspan + sodipodi:role="line" + id="tspan3495" + x="318.57144" + y="363.79077">Resultate</tspan></text> + </g> +</svg> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-09-19 12:37:49
|
Revision: 143 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=143&view=rev Author: jenslehmann Date: 2007-09-19 05:37:45 -0700 (Wed, 19 Sep 2007) Log Message: ----------- example cleanup continued Modified Paths: -------------- trunk/examples/forte/forte_uncle.conf trunk/examples/forte/forte_uncle_owl.conf trunk/examples/poker/pair_owl.conf trunk/examples/poker/poker_pair.conf trunk/examples/poker/poker_straight.conf trunk/examples/poker/straight_owl.conf trunk/examples/trains/trains.conf trunk/examples/trains/trains_owl.conf trunk/examples/yinyang_files/readme.txt Modified: trunk/examples/forte/forte_uncle.conf =================================================================== --- trunk/examples/forte/forte_uncle.conf 2007-09-18 11:52:14 UTC (rev 142) +++ trunk/examples/forte/forte_uncle.conf 2007-09-19 12:37:45 UTC (rev 143) @@ -1,24 +1,27 @@ /** * Extracted from the FORTE (First Order Revision of Theories from Examples) - * data set + * data set: * * http://www.cs.utexas.edu/users/ml/forte.html * - * solution: (male AND (EXISTS hasSibling.EXISTS hasChild.TOP + * The goal of this learning problem is to learn the concept of an uncle. + * + * At the bottom of this file, you can find a graphical representation of the + * family tree corresponding to the facts in this file. + * + * possible solution: (male AND (EXISTS hasSibling.EXISTS hasChild.TOP * OR EXISTS married.EXISTS hasSibling.EXISTS hasChild.TOP)) + * + * Copyright (C) 2007, Jens Lehmann */ // control output showIndividuals = true; showConcepts = true; showRoles = true; -// showInternalKB = true; -// showSubsumptionHierarchy = true; +showInternalKB = true; +showSubsumptionHierarchy = true; -algorithm = refinement; - - - /** background knowledge **/ BOTTOM = (male AND female). @@ -393,18 +396,6 @@ -isUncle(terry). -isUncle(wendy). - - -// temporär: -/* -married(art,alice). -married(david,deanna). -married(harry,helen). -married(melvin,maria). -married(ray,regina). -married(terry,terri). -*/ - /* Here's the family shown graphically: Steve |--- m7 Modified: trunk/examples/forte/forte_uncle_owl.conf =================================================================== --- trunk/examples/forte/forte_uncle_owl.conf 2007-09-18 11:52:14 UTC (rev 142) +++ trunk/examples/forte/forte_uncle_owl.conf 2007-09-19 12:37:45 UTC (rev 143) @@ -1,14 +1,10 @@ /** - * Extracted from the FORTE (First Order Revision of Theories from Examples) - * data set + * See forte_uncle.conf. This is the same learning problem, but loading background + * knowledge from an OWL file instead. * - * http://www.cs.utexas.edu/users/ml/forte.html - * - * solution: (male AND (EXISTS hasSibling.EXISTS hasChild.TOP - * OR EXISTS married.EXISTS hasSibling.EXISTS hasChild.TOP)) + * Copyright (C) 2007, Jens Lehmann */ - /** background knowledge **/ import("forte.owl"); Modified: trunk/examples/poker/pair_owl.conf =================================================================== --- trunk/examples/poker/pair_owl.conf 2007-09-18 11:52:14 UTC (rev 142) +++ trunk/examples/poker/pair_owl.conf 2007-09-19 12:37:45 UTC (rev 143) @@ -1,3 +1,10 @@ +/** + * See poker_pair.conf. This is the same learning problem, but loading background + * knowledge from an OWL file instead. + * + * Copyright (C) 2007, Jens Lehmann + */ + showConcepts = true; showRoles = true; showIndividuals = true; Modified: trunk/examples/poker/poker_pair.conf =================================================================== --- trunk/examples/poker/poker_pair.conf 2007-09-18 11:52:14 UTC (rev 142) +++ trunk/examples/poker/poker_pair.conf 2007-09-19 12:37:45 UTC (rev 143) @@ -1,3 +1,14 @@ +/** + * Automatically created random poker decks (the UCI-ML-Repository Poker example + * was transformed to a conf file). The goal is to learn the concept of a pair + * (two cards with equal rank). + * + * possible solution: + * EXISTS hasCard.EXISTS sameRank.TOP + * + * Copyright (C) 2007, Jens Lehmann + */ + deck(hand0). card(card0). hasCard(hand0,card0). Modified: trunk/examples/poker/poker_straight.conf =================================================================== --- trunk/examples/poker/poker_straight.conf 2007-09-18 11:52:14 UTC (rev 142) +++ trunk/examples/poker/poker_straight.conf 2007-09-19 12:37:45 UTC (rev 143) @@ -1,3 +1,18 @@ +/** + * Automatically created random poker decks (the UCI-ML-Repository Poker example + * was transformed to a conf file). The goal is to learn the concept of a + * straight (5 cards with increasing rank). Note, that for Ace and 2 in one deck, + * nextRank is set between these two cards only if there is no king in the deck. + * Otherwise the special case that a straight can start with Ace cannot be + * handled using ALC as target language. + * + * possible solution: + * EXISTS hasCard.EXISTS nextRank.EXISTS nextRank.EXISTS nextRank. + * EXISTS nextRank.TOP + * + * Copyright (C) 2007, Jens Lehmann + */ + deck(hand0). card(card0). hasCard(hand0,card0). Modified: trunk/examples/poker/straight_owl.conf =================================================================== --- trunk/examples/poker/straight_owl.conf 2007-09-18 11:52:14 UTC (rev 142) +++ trunk/examples/poker/straight_owl.conf 2007-09-19 12:37:45 UTC (rev 143) @@ -1,3 +1,10 @@ +/** + * See poker_straight.conf. This is the same learning problem, but loading + * background knowledge from an OWL file instead. + * + * Copyright (C) 2007, Jens Lehmann + */ + import("straight.owl"); refinement.quiet = false; Modified: trunk/examples/trains/trains.conf =================================================================== --- trunk/examples/trains/trains.conf 2007-09-18 11:52:14 UTC (rev 142) +++ trunk/examples/trains/trains.conf 2007-09-19 12:37:45 UTC (rev 143) @@ -26,13 +26,15 @@ * Intelligence, Vol. PAMI-2, No. 4, pp. 349-361, July 1980. * * http://www.mli.gmu.edu/papers/79-80/80-05.pdf (page 11) + * + * Copyright (C) 2007, Jens Lehmann */ useRetrievalForClassification = false; refinement.useDIGMultiInstanceChecks = twoChecks; /** background knowledge **/ -// TODO: more knowledge can be added here, e.g. that all classes are disjunct; +// TODO: more knowledge could be added here, e.g. that all classes are disjoint; // shape can be described using nominals i.e. a fixed set of values; etc. car(car_11). car(car_12). car(car_13). car(car_14). Modified: trunk/examples/trains/trains_owl.conf =================================================================== --- trunk/examples/trains/trains_owl.conf 2007-09-18 11:52:14 UTC (rev 142) +++ trunk/examples/trains/trains_owl.conf 2007-09-19 12:37:45 UTC (rev 143) @@ -1,3 +1,10 @@ +/** + * See arch.conf. This is the same learning problem, but loading background + * knowledge from an OWL file instead. + * + * Copyright (C) 2007, Jens Lehmann + */ + import("trains.owl"); algorithm = refinement; Modified: trunk/examples/yinyang_files/readme.txt =================================================================== --- trunk/examples/yinyang_files/readme.txt 2007-09-18 11:52:14 UTC (rev 142) +++ trunk/examples/yinyang_files/readme.txt 2007-09-19 12:37:45 UTC (rev 143) @@ -1,2 +1,3 @@ This directory contains additional files, which are needed in order to test the -DL-Learner examples with YinYang. +DL-Learner examples with YinYang. Use run.bat (Windows) or run (other systems) +to run the examples. You have to adapt the path to YinYang in these files first. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-09-18 11:52:17
|
Revision: 142 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=142&view=rev Author: jenslehmann Date: 2007-09-18 04:52:14 -0700 (Tue, 18 Sep 2007) Log Message: ----------- cleaned up arch example Modified Paths: -------------- trunk/examples/arch/arch.conf trunk/examples/arch/arch_owl.conf Modified: trunk/examples/arch/arch.conf =================================================================== --- trunk/examples/arch/arch.conf 2007-09-18 11:40:37 UTC (rev 141) +++ trunk/examples/arch/arch.conf 2007-09-18 11:52:14 UTC (rev 142) @@ -1,56 +1,36 @@ -/***************************** +/** + * Arches Example + * + * Originally published in Winston, P.H. (1975). Learning structural descriptions + * from examples. In P.H. Winstons (Ed.), The psychology of computer vision. New + * York: Mc Graw- Hill. + * + * See the pictures for an illustration of the input data. + * + * The example is a converted, modified and extended version of the original + * learning problem. + * + * possible solution: + * EXISTS hasPillar.(freeStandingPillar AND EXISTS leftof.EXISTS supports.TOP) + * + * Copyright (C) 2007, Sebastian Hellmann + */ - -Example created from these predicates: - -arch(A, B, C) A, B and C form an arch with lintel A -supports(A, B) A supports B -left-of(A, B) A is left of B -touches(A, B) the sides of A and B touch -brick(A) A is a brick -wedge(A) A is a wedge -parallelpiped(A, B) A is a brick or a wedge - -Solution: arch(A, B, C) <- left-of(B, C), supports(B, A), not touches(B, C) - - -Solution -EXISTS hasPillar.EXISTS leftof.TOP <-TOO OBVIOUS all constructions c1,c2,c3,c4 -AND EXISTS hasPillar.EXISTS supports.TOP <-IS FOUND [c1, c3, c4] -AND NOT EXISTS hasPillar.EXISTS touches.TOP <- Not found (open world assumption) - work around with freeStandingPillar - -New Solution: -EXISTS hasPillar.(freeStandingPillar AND EXISTS leftof.EXISTS supports.TOP) - -See the pictures for an illustration of the input data. - -Originally published in Winston, P.H. (1975). Learning structural descriptions -from examples. In P.H. Winstons (Ed.), The psychology of computer vision. New -York: Mc Graw- Hill. - -***************************/ - - //reasoner = kaon2; - - // search tree protocol +// search tree protocol refinement.writeSearchTree = false; -refinement.searchTreeFile = "searchTree.txt"; +refinement.searchTreeFile = "log/archSearchTree.txt"; //export("arch.owl"); /** background knowledge **/ parallelpipe = (brick OR wedge). freeStandingPillar = (pillar AND NOT EXISTS touches.TOP ) . - - construction(c1). construction(c2). construction(c3). construction(c4). construction(c5). - pillar(p1). pillar(p2). pillar(p3). @@ -61,10 +41,10 @@ pillar(p8). pillar(p9). - brick(a). brick(b). brick(c). + wedge(d). wedge(e). @@ -78,16 +58,12 @@ hasPillar(c4,p8). hasPillar(c5,p9). - - - hasParallelpipe(c1,a). hasParallelpipe(c2,b). hasParallelpipe(c3,c). hasParallelpipe(c4,d). hasParallelpipe(c5,e). - supports(p1,a). supports(p2,a). supports(p5,c). @@ -96,7 +72,6 @@ supports(p8,d). supports(p9,e). - leftof(p1,p2). leftof(p3,p4). leftof(p5,p6). @@ -104,7 +79,6 @@ touches(p5,p6). - freeStandingPillar(p1). freeStandingPillar(p2). freeStandingPillar(p3). @@ -113,8 +87,6 @@ freeStandingPillar(p8). freeStandingPillar(p9). - - /** examples **/ +arch(c1). +arch(c4). Modified: trunk/examples/arch/arch_owl.conf =================================================================== --- trunk/examples/arch/arch_owl.conf 2007-09-18 11:40:37 UTC (rev 141) +++ trunk/examples/arch/arch_owl.conf 2007-09-18 11:52:14 UTC (rev 142) @@ -1,48 +1,13 @@ -/***************************** +/** + * See arch.conf. This is the same learning problem, but loading background + * knowledge from an OWL file instead. + * + * Copyright (C) 2007, Sebastian Hellmann + */ - -Example created from these predicates: - -arch(A, B, C) A, B and C form an arch with lintel A -supports(A, B) A supports B -left-of(A, B) A is left of B -touches(A, B) the sides of A and B touch -brick(A) A is a brick -wedge(A) A is a wedge -parallelpiped(A, B) A is a brick or a wedge - -Solution: arch(A, B, C) <- left-of(B, C), supports(B, A), not touches(B, C) - -Solution -EXISTS hasPillar.EXISTS leftof.TOP <-TOO OBVIOUS all constructions c1,c2,c3,c4 -AND EXISTS hasPillar.EXISTS supports.TOP <-IS FOUND [c1, c3, c4] -AND NOT EXISTS hasPillar.EXISTS touches.TOP <- Not found (open world assumption) - -New Solution: -EXISTS hasPillar.(freeStandingPillar AND EXISTS leftof.EXISTS supports.TOP) - -See the pictures for an illustration of the input data. - -Originally published in Winston, P.H. (1975). Learning structural descriptions -from examples. In P.H. Winstons (Ed.), The psychology of computer vision. New -York: Mc Graw- Hill. - - -***************************/ - - //reasoner = kaon2; - - // search tree protocol -refinement.writeSearchTree = false; -refinement.searchTreeFile = "searchTree.txt"; -refinement.quiet = false; -// hidePrefix="http://localhost/foo#"; /** background knowledge **/ - - import("arch.owl"); - /** examples **/ +arch("http://localhost/foo#c1"). +arch("http://localhost/foo#c4"). This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-09-18 11:40:45
|
Revision: 141 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=141&view=rev Author: jenslehmann Date: 2007-09-18 04:40:37 -0700 (Tue, 18 Sep 2007) Log Message: ----------- started example cleanup Modified Paths: -------------- trunk/examples/father.conf trunk/examples/father2.conf trunk/examples/grandfather.conf trunk/examples/uncle.conf Modified: trunk/examples/father.conf =================================================================== --- trunk/examples/father.conf 2007-09-15 11:24:14 UTC (rev 140) +++ trunk/examples/father.conf 2007-09-18 11:40:37 UTC (rev 141) @@ -1,7 +1,10 @@ /** * Father Example * - * possible solution: male AND EXISTS hasChild.TOP + * possible solution: + * male AND EXISTS hasChild.TOP + * + * Copyright (C) 2007, Jens Lehmann */ /** settings **/ Modified: trunk/examples/father2.conf =================================================================== --- trunk/examples/father2.conf 2007-09-15 11:24:14 UTC (rev 140) +++ trunk/examples/father2.conf 2007-09-18 11:40:37 UTC (rev 141) @@ -1,6 +1,10 @@ /** * Another Father Example (this time using OWL import) * + * possible solution: + * male AND EXISTS hasChild.TOP + * + * Copyright (C) 2007, Jens Lehmann */ reasoner = dig; @@ -12,7 +16,7 @@ hidePrefix = "http://example.com/father#"; writeDIGProtocol = false; -digProtocolFile = "owlapi_dig.txt"; +digProtocolFile = "log/father2_dig.txt"; /** examples **/ +father("http://example.com/father#stefan"). Modified: trunk/examples/grandfather.conf =================================================================== --- trunk/examples/grandfather.conf 2007-09-15 11:24:14 UTC (rev 140) +++ trunk/examples/grandfather.conf 2007-09-18 11:40:37 UTC (rev 141) @@ -1,10 +1,13 @@ /** * Grandfather Example * - * possible solution: male AND EXISTS hasChild.EXISTS hasChild.TOP + * possible solution: + * male AND EXISTS hasChild.EXISTS hasChild.TOP * * Compared tp the father example, we have an additional concept person and * and additional role married here to make the task more complex. + * + * Copyright (C) 2007, Jens Lehmann */ /** settings **/ Modified: trunk/examples/uncle.conf =================================================================== --- trunk/examples/uncle.conf 2007-09-15 11:24:14 UTC (rev 140) +++ trunk/examples/uncle.conf 2007-09-18 11:40:37 UTC (rev 141) @@ -10,10 +10,12 @@ * * Note: Currently the data is insufficient, i.e. it allows the algorithm to * to find shorter correct solutions than the desired one above. + * + * Copyright (C) 2007, Jens Lehmann */ writeDIGProtocol = false; -digProtocolFile = "dig_uncle_fact.txt"; +digProtocolFile = "log/dig_uncle_fact.txt"; /** background knowledge **/ BOTTOM = (male AND female). This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-09-15 11:24:17
|
Revision: 140 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=140&view=rev Author: jenslehmann Date: 2007-09-15 04:24:14 -0700 (Sat, 15 Sep 2007) Log Message: ----------- small fixes Modified Paths: -------------- trunk/examples/yinyang_files/straightLearningProblem.xml trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java Modified: trunk/examples/yinyang_files/straightLearningProblem.xml =================================================================== --- trunk/examples/yinyang_files/straightLearningProblem.xml 2007-09-07 04:39:51 UTC (rev 139) +++ trunk/examples/yinyang_files/straightLearningProblem.xml 2007-09-15 11:24:14 UTC (rev 140) @@ -13,7 +13,7 @@ abstractionClass="it.uniba.di.dl.abstraction.KBoundMSCApproximatorRefinement" learn="true" normalize="true" -consistencyCheck="false" +consistencyCheck="true" reasonerURL ="http://localhost:8081" Modified: trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java =================================================================== --- trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java 2007-09-07 04:39:51 UTC (rev 139) +++ trunk/src/dl-learner/org/dllearner/utilities/PaperStatistics.java 2007-09-15 11:24:14 UTC (rev 140) @@ -126,6 +126,7 @@ int[] algorithmRuns = {1,10,10}; int startAlgorithmNr = 0; + // Config.GP.maxConceptLength = 30; Config.writeDIGProtocol = true; Config.digProtocolFile = new File(statBaseDir, "dig.log"); @@ -233,7 +234,7 @@ Config.percentPerLengthUnit = 0.005; // give GP a chance to find the long solution of the // uncle problem - if(exampleNr==3 || exampleNr == 6) + if(exampleNr==3 || exampleNr==5 || exampleNr == 6) Config.percentPerLengthUnit = 0.002; learningAlgorithm = new GP(learningProblem); } else if(algorithmNr==2) { @@ -250,7 +251,7 @@ Config.GP.crossoverProbability = 0.2; Config.GP.hillClimbingProbability = 0; Config.percentPerLengthUnit = 0.005; - if(exampleNr == 3 || exampleNr==6) + if(exampleNr == 3 || exampleNr==5 || exampleNr==6) Config.percentPerLengthUnit = 0.002; learningAlgorithm = new GP(learningProblem); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ku...@us...> - 2007-09-07 04:41:47
|
Revision: 138 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=138&view=rev Author: kurzum Date: 2007-09-06 21:38:46 -0700 (Thu, 06 Sep 2007) Log Message: ----------- changed some examples Modified Paths: -------------- trunk/examples/arch/arch.conf trunk/examples/arch/arch_owl.conf trunk/examples/forte/forte_uncle.conf trunk/examples/forte/forte_uncle_owl.conf trunk/examples/moral_reasoner/moral_43examples_complex.conf trunk/examples/moral_reasoner/moral_43examples_complex_owl.conf Added Paths: ----------- trunk/examples/moral_reasoner/moral_43examples_simple owl.conf trunk/examples/moral_reasoner/moral_43examples_simple.conf trunk/examples/moral_reasoner/moral_all_examples_simple.conf Modified: trunk/examples/arch/arch.conf =================================================================== --- trunk/examples/arch/arch.conf 2007-09-05 21:30:47 UTC (rev 137) +++ trunk/examples/arch/arch.conf 2007-09-07 04:38:46 UTC (rev 138) @@ -1,5 +1,6 @@ /***************************** + Example created from these predicates: arch(A, B, C) A, B and C form an arch with lintel A @@ -11,13 +12,17 @@ parallelpiped(A, B) A is a brick or a wedge Solution: arch(A, B, C) <- left-of(B, C), supports(B, A), not touches(B, C) - + + Solution EXISTS hasPillar.EXISTS leftof.TOP <-TOO OBVIOUS all constructions c1,c2,c3,c4 AND EXISTS hasPillar.EXISTS supports.TOP <-IS FOUND [c1, c3, c4] AND NOT EXISTS hasPillar.EXISTS touches.TOP <- Not found (open world assumption) work around with freeStandingPillar +New Solution: +EXISTS hasPillar.(freeStandingPillar AND EXISTS leftof.EXISTS supports.TOP) + See the pictures for an illustration of the input data. Originally published in Winston, P.H. (1975). Learning structural descriptions Modified: trunk/examples/arch/arch_owl.conf =================================================================== --- trunk/examples/arch/arch_owl.conf 2007-09-05 21:30:47 UTC (rev 137) +++ trunk/examples/arch/arch_owl.conf 2007-09-07 04:38:46 UTC (rev 138) @@ -1,7 +1,8 @@ /***************************** -Example created from this: +Example created from these predicates: + arch(A, B, C) A, B and C form an arch with lintel A supports(A, B) A supports B left-of(A, B) A is left of B @@ -16,11 +17,17 @@ EXISTS hasPillar.EXISTS leftof.TOP <-TOO OBVIOUS all constructions c1,c2,c3,c4 AND EXISTS hasPillar.EXISTS supports.TOP <-IS FOUND [c1, c3, c4] AND NOT EXISTS hasPillar.EXISTS touches.TOP <- Not found (open world assumption) - work around with freeStandingPillar -see picture arch.jpg +New Solution: +EXISTS hasPillar.(freeStandingPillar AND EXISTS leftof.EXISTS supports.TOP) +See the pictures for an illustration of the input data. +Originally published in Winston, P.H. (1975). Learning structural descriptions +from examples. In P.H. Winstons (Ed.), The psychology of computer vision. New +York: Mc Graw- Hill. + + ***************************/ //reasoner = kaon2; @@ -29,12 +36,13 @@ refinement.writeSearchTree = false; refinement.searchTreeFile = "searchTree.txt"; refinement.quiet = false; -import("arch.owl"); // hidePrefix="http://localhost/foo#"; /** background knowledge **/ +import("arch.owl"); + /** examples **/ +arch("http://localhost/foo#c1"). +arch("http://localhost/foo#c4"). Modified: trunk/examples/forte/forte_uncle.conf =================================================================== --- trunk/examples/forte/forte_uncle.conf 2007-09-05 21:30:47 UTC (rev 137) +++ trunk/examples/forte/forte_uncle.conf 2007-09-07 04:38:46 UTC (rev 138) @@ -4,12 +4,12 @@ * * http://www.cs.utexas.edu/users/ml/forte.html * - * possible solution: (male AND (EXISTS hasSibling.EXISTS hasChild.TOP - * OR EXISTS married.EXISTS hasSibling.EXISTS hasChild.TOP)) + * solution: (male AND (EXISTS hasSibling.EXISTS hasChild.TOP + * OR EXISTS married.EXISTS hasSibling.EXISTS hasChild.TOP)) */ // control output -// showIndividuals = true; +showIndividuals = true; showConcepts = true; showRoles = true; // showInternalKB = true; @@ -17,6 +17,9 @@ algorithm = refinement; + + +/** background knowledge **/ BOTTOM = (male AND female). Symmetric(sibling). @@ -279,6 +282,9 @@ married(prissie, peter). married(jane, jack). married(christy, carlos). married(regina, ray). + +/** examples **/ + /* small example set +isUncle(art). +isUncle(calvin). Modified: trunk/examples/forte/forte_uncle_owl.conf =================================================================== --- trunk/examples/forte/forte_uncle_owl.conf 2007-09-05 21:30:47 UTC (rev 137) +++ trunk/examples/forte/forte_uncle_owl.conf 2007-09-07 04:38:46 UTC (rev 138) @@ -1,5 +1,39 @@ +/** + * Extracted from the FORTE (First Order Revision of Theories from Examples) + * data set + * + * http://www.cs.utexas.edu/users/ml/forte.html + * + * solution: (male AND (EXISTS hasSibling.EXISTS hasChild.TOP + * OR EXISTS married.EXISTS hasSibling.EXISTS hasChild.TOP)) + */ + + +/** background knowledge **/ + import("forte.owl"); +/** examples **/ + +/* small example set ++isUncle(art). ++isUncle(calvin). ++isUncle(carlos). ++isUncle(david). ++isUncle(eric). ++isUncle(fred). ++isUncle(frederick). ++isUncle(george). + +-isUncle(alfred). +-isUncle(alice). +-isUncle(angela). +-isUncle(bob). +-isUncle(carl). +-isUncle(christy). +-isUncle(karl). +*/ + // complete example set +isUncle(art). +isUncle(calvin). Modified: trunk/examples/moral_reasoner/moral_43examples_complex.conf =================================================================== --- trunk/examples/moral_reasoner/moral_43examples_complex.conf 2007-09-05 21:30:47 UTC (rev 137) +++ trunk/examples/moral_reasoner/moral_43examples_complex.conf 2007-09-07 04:38:46 UTC (rev 138) @@ -1,8 +1,6 @@ /*********************** - solution should be: - guilty = NOT justified AND (responsible OR vicarious) - - Found: ((NOT justified) AND (vicarious OR (negligent_c AND responsible))) + solution is: + (severity_harm AND (NOT benefit_victim) AND (vicarious OR voluntary)) @@ -10,7 +8,6 @@ 23 positive 20 negative - ***********************/ /** settings **/ @@ -30,6 +27,10 @@ refinement.writeSearchTree = false; refinement.searchTreeFile = "searchTree.txt"; + // writeDIGProtocol = true; + //digProtocolFile = "dig.log"; + + // control output showIndividuals = false; showConcepts = true; @@ -40,26 +41,19 @@ /** background knowledge **/ -"Number"(v0). -"Number"(v1). +//"Number"(v0). +//"Number"(v1). -greater(v1,v0) . -smaller(v0,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)). -/*BOTTOM = (intend_mental_state AND reckless_mental_state). -BOTTOM = (intend_mental_state AND negligent_mental_state). -BOTTOM = (intend_mental_state AND neither_mental_state). -BOTTOM = (neither_mental_state AND reckless_mental_state). -BOTTOM = (neither_mental_state AND reckless_mental_state). -BOTTOM = (negligent_mental_state AND reckless_mental_state).*/ - cause = (produce_harm OR (necessary_for_harm OR sufficient_for_harm)). @@ -131,16 +125,16 @@ ( outrank_perpetrator AND control_perpetrator )). - -/*blameworthy = ( responsible AND - ( EXISTS severity_harm.EXISTS greater.TOP AND - ( EXISTS benefit_victim.EXISTS smaller.TOP AND +/* +blameworthy = ( responsible AND + ( severity_harm AND + ( NOT benefit_victim AND NOT justified ))). - + vicarious_blame = ( vicarious AND - (EXISTS severity_harm.EXISTS greater.TOP AND - (EXISTS benefit_victim.EXISTS smaller.TOP AND + ( severity_harm AND + ( NOT benefit_victim AND NOT justified ))). */ // complement checked @@ -150,6 +144,10 @@ NOT goal_achieveable_less_harmful)). //guilty = (blameworthy OR vicarious_blame ). +/*test= (severity_harm AND + ( NOT benefit_victim AND + ( vicarious OR + voluntary))).*/ /******************** @@ -173,8 +171,8 @@ control_perpetrator(p0). benefit_protagonist(p0). careful(p0). -benefit_victim(p0,v0). -severity_harm(p0,v1). +NOT benefit_victim(p0). +severity_harm(p0). NOT achieve_goal(p0). NOT intervening_contribution(p0). high_foreseeability(p0). @@ -197,8 +195,8 @@ control_perpetrator(p1). benefit_protagonist(p1). NOT careful(p1). -benefit_victim(p1,v0). -severity_harm(p1,v1). +NOT benefit_victim(p1). +severity_harm(p1). NOT achieve_goal(p1). foresee_intervention(p1). high_foreseeability(p1). @@ -221,8 +219,8 @@ control_perpetrator(p2). benefit_protagonist(p2). NOT careful(p2). -benefit_victim(p2,v0). -severity_harm(p2,v1). +NOT benefit_victim(p2). +severity_harm(p2). NOT achieve_goal(p2). NOT intervening_contribution(p2). high_foreseeability(p2). @@ -245,8 +243,8 @@ benefit_protagonist(p3). NOT achieve_goal(p3). NOT careful(p3). -benefit_victim(p3,v0). -severity_harm(p3,v1). +NOT benefit_victim(p3). +severity_harm(p3). goal_achieveable_less_harmful(p3). foresee_intervention(p3). high_foreseeability(p3). @@ -269,8 +267,8 @@ NOT benefit_protagonist(p4). NOT achieve_goal(p4). careful(p4). -benefit_victim(p4,v0). -severity_harm(p4,v1). +NOT benefit_victim(p4). +severity_harm(p4). NOT goal_outweigh_harm(p4). foresee_intervention(p4). high_foreseeability(p4). @@ -293,8 +291,8 @@ NOT benefit_protagonist(p5). NOT achieve_goal(p5). careful(p5). -benefit_victim(p5,v0). -severity_harm(p5,v1). +NOT benefit_victim(p5). +severity_harm(p5). goal_achieveable_less_harmful(p5). NOT intervening_contribution(p5). high_foreseeability(p5). @@ -317,8 +315,8 @@ benefit_protagonist(p6). NOT achieve_goal(p6). careful(p6). -benefit_victim(p6,v0). -severity_harm(p6,v1). +NOT benefit_victim(p6). +severity_harm(p6). goal_achieveable_less_harmful(p6). foresee_intervention(p6). low_foreseeability(p6). @@ -341,8 +339,8 @@ NOT control_perpetrator(p7). benefit_protagonist(p7). NOT careful(p7). -benefit_victim(p7,v0). -severity_harm(p7,v1). +NOT benefit_victim(p7). +severity_harm(p7). NOT achieve_goal(p7). foresee_intervention(p7). low_foreseeability(p7). @@ -365,8 +363,8 @@ control_perpetrator(p8). NOT benefit_protagonist(p8). NOT careful(p8). -benefit_victim(p8,v0). -severity_harm(p8,v1). +NOT benefit_victim(p8). +severity_harm(p8). NOT achieve_goal(p8). NOT intervening_contribution(p8). low_foreseeability(p8). @@ -389,8 +387,8 @@ control_perpetrator(p9). NOT benefit_protagonist(p9). NOT careful(p9). -benefit_victim(p9,v0). -severity_harm(p9,v1). +NOT benefit_victim(p9). +severity_harm(p9). NOT achieve_goal(p9). NOT intervening_contribution(p9). low_foreseeability(p9). @@ -413,8 +411,8 @@ benefit_protagonist(p10). NOT achieve_goal(p10). careful(p10). -benefit_victim(p10,v0). -severity_harm(p10,v1). +NOT benefit_victim(p10). +severity_harm(p10). NOT goal_outweigh_harm(p10). foresee_intervention(p10). low_foreseeability(p10). @@ -422,8 +420,8 @@ negligent_mental_state(p10). produce_harm(p10). -/* -sufficient_for_harm(p11). + +/*sufficient_for_harm(p11). NOT plan_known(p11). plan_include_harm(p11). someone_else_cause_harm(p11). @@ -438,8 +436,8 @@ benefit_protagonist(p11). NOT achieve_goal(p11). NOT careful(p11). -benefit_victim(p11,v0). -severity_harm(p11,v1). +NOT benefit_victim(p11). +severity_harm(p11). goal_achieveable_less_harmful(p11). NOT intervening_contribution(p11). low_foreseeability(p11). @@ -462,8 +460,8 @@ NOT benefit_protagonist(p12). achieve_goal(p12). reckless_mental_state(p12). -benefit_victim(p12,v0). -severity_harm(p12,v1). +NOT benefit_victim(p12). +severity_harm(p12). goal_achieveable_less_harmful(p12). NOT intervening_contribution(p12). NOT external_force(p12). @@ -486,8 +484,8 @@ benefit_protagonist(p13). achieve_goal(p13). negligent_mental_state(p13). -benefit_victim(p13,v0). -severity_harm(p13,v1). +NOT benefit_victim(p13). +severity_harm(p13). NOT goal_outweigh_harm(p13). NOT intervening_contribution(p13). NOT external_force(p13). @@ -510,8 +508,8 @@ NOT benefit_protagonist(p14). NOT achieve_goal(p14). reckless_mental_state(p14). -benefit_victim(p14,v0). -severity_harm(p14,v1). +NOT benefit_victim(p14). +severity_harm(p14). goal_achieveable_less_harmful(p14). foresee_intervention(p14). NOT external_force(p14). @@ -534,8 +532,8 @@ benefit_protagonist(p15). NOT achieve_goal(p15). negligent_mental_state(p15). -benefit_victim(p15,v0). -severity_harm(p15,v1). +NOT benefit_victim(p15). +severity_harm(p15). NOT goal_outweigh_harm(p15). foresee_intervention(p15). NOT external_force(p15). @@ -558,8 +556,8 @@ NOT benefit_protagonist(p16). achieve_goal(p16). reckless_mental_state(p16). -benefit_victim(p16,v0). -severity_harm(p16,v1). +NOT benefit_victim(p16). +severity_harm(p16). NOT goal_outweigh_harm(p16). NOT intervening_contribution(p16). NOT external_force(p16). @@ -582,8 +580,8 @@ NOT benefit_protagonist(p17). NOT achieve_goal(p17). neither_mental_state(p17). -benefit_victim(p17,v0). -severity_harm(p17,v1). +NOT benefit_victim(p17). +severity_harm(p17). NOT goal_outweigh_harm(p17). NOT intervening_contribution(p17). NOT external_force(p17). @@ -606,8 +604,8 @@ control_perpetrator(p18). NOT benefit_protagonist(p18). NOT careful(p18). -benefit_victim(p18,v0). -severity_harm(p18,v1). +NOT benefit_victim(p18). +severity_harm(p18). NOT achieve_goal(p18). foresee_intervention(p18). high_foreseeability(p18). @@ -630,8 +628,8 @@ NOT benefit_protagonist(p19). NOT achieve_goal(p19). careful(p19). -benefit_victim(p19,v0). -severity_harm(p19,v1). +NOT benefit_victim(p19). +severity_harm(p19). NOT goal_outweigh_harm(p19). NOT intervening_contribution(p19). high_foreseeability(p19). @@ -654,8 +652,8 @@ NOT benefit_protagonist(p20). achieve_goal(p20). careful(p20). -benefit_victim(p20,v0). -severity_harm(p20,v1). +NOT benefit_victim(p20). +severity_harm(p20). NOT goal_outweigh_harm(p20). NOT intervening_contribution(p20). high_foreseeability(p20). @@ -663,7 +661,7 @@ reckless_mental_state(p20). produce_harm(p20). -/*sufficient_for_harm(p21,y). +sufficient_for_harm(p21). plan_known(p21). plan_include_harm(p21). someone_else_cause_harm(p21). @@ -678,8 +676,8 @@ NOT control_perpetrator(p21). NOT benefit_protagonist(p21). NOT careful(p21). -benefit_victim(p21,v0). -severity_harm(p21,v1). +NOT benefit_victim(p21). +severity_harm(p21). NOT achieve_goal(p21). foresee_intervention(p21). high_foreseeability(p21). @@ -702,8 +700,8 @@ control_perpetrator(p22). benefit_protagonist(p22). NOT careful(p22). -benefit_victim(p22,v0). -severity_harm(p22,v1). +NOT benefit_victim(p22). +severity_harm(p22). NOT achieve_goal(p22). NOT intervening_contribution(p22). high_foreseeability(p22). @@ -726,8 +724,8 @@ control_perpetrator(p23). benefit_protagonist(p23). careful(p23). -benefit_victim(p23,v0). -severity_harm(p23,v1). +NOT benefit_victim(p23). +severity_harm(p23). NOT achieve_goal(p23). foresee_intervention(p23). high_foreseeability(p23). @@ -750,8 +748,8 @@ NOT benefit_protagonist(p24). NOT achieve_goal(p24). careful(p24). -benefit_victim(p24,v0). -severity_harm(p24,v1). +NOT benefit_victim(p24). +severity_harm(p24). NOT goal_outweigh_harm(p24). foresee_intervention(p24). low_foreseeability(p24). @@ -774,8 +772,8 @@ NOT benefit_protagonist(p25). NOT achieve_goal(p25). NOT careful(p25). -benefit_victim(p25,v0). -severity_harm(p25,v1). +NOT benefit_victim(p25). +severity_harm(p25). goal_achieveable_less_harmful(p25). NOT intervening_contribution(p25). low_foreseeability(p25). @@ -798,8 +796,8 @@ benefit_protagonist(p26). achieve_goal(p26). NOT careful(p26). -benefit_victim(p26,v0). -severity_harm(p26,v1). +NOT benefit_victim(p26). +severity_harm(p26). goal_achieveable_less_harmful(p26). NOT intervening_contribution(p26). low_foreseeability(p26). @@ -822,8 +820,8 @@ control_perpetrator(p27). benefit_protagonist(p27). careful(p27). -benefit_victim(p27,v0). -severity_harm(p27,v1). +NOT benefit_victim(p27). +severity_harm(p27). NOT achieve_goal(p27). foresee_intervention(p27). low_foreseeability(p27). @@ -846,8 +844,8 @@ benefit_protagonist(p28). NOT achieve_goal(p28). careful(p28). -benefit_victim(p28,v0). -severity_harm(p28,v1). +NOT benefit_victim(p28). +severity_harm(p28). goal_achieveable_less_harmful(p28). NOT intervening_contribution(p28). low_foreseeability(p28). @@ -870,8 +868,8 @@ NOT control_perpetrator(p29). NOT benefit_protagonist(p29). careful(p29). -benefit_victim(p29,v0). -severity_harm(p29,v1). +NOT benefit_victim(p29). +severity_harm(p29). NOT achieve_goal(p29). NOT intervening_contribution(p29). low_foreseeability(p29). @@ -894,8 +892,8 @@ benefit_protagonist(p30). achieve_goal(p30). negligent_mental_state(p30). -benefit_victim(p30,v0). -severity_harm(p30,v1). +NOT benefit_victim(p30). +severity_harm(p30). goal_achieveable_less_harmful(p30). NOT intervening_contribution(p30). NOT external_force(p30). @@ -903,7 +901,7 @@ NOT careful(p30). necessary_for_harm(p30). -/* + produce_harm(p31). NOT plan_known(p31). plan_include_harm(p31). @@ -919,8 +917,8 @@ NOT benefit_protagonist(p31). NOT achieve_goal(p31). neither_mental_state(p31). -benefit_victim(p31,v0). -severity_harm(p31,v1). +NOT benefit_victim(p31). +severity_harm(p31). NOT goal_outweigh_harm(p31). foresee_intervention(p31). NOT external_force(p31). @@ -943,8 +941,8 @@ benefit_protagonist(p32). achieve_goal(p32). negligent_mental_state(p32). -benefit_victim(p32,v0). -severity_harm(p32,v1). +NOT benefit_victim(p32). +severity_harm(p32). NOT goal_outweigh_harm(p32). foresee_intervention(p32). NOT external_force(p32). @@ -967,8 +965,8 @@ benefit_protagonist(p33). NOT achieve_goal(p33). reckless_mental_state(p33). -benefit_victim(p33,v0). -severity_harm(p33,v1). +NOT benefit_victim(p33). +severity_harm(p33). goal_achieveable_less_harmful(p33). foresee_intervention(p33). NOT external_force(p33). @@ -991,8 +989,8 @@ NOT benefit_protagonist(p34). NOT achieve_goal(p34). negligent_mental_state(p34). -benefit_victim(p34,v0). -severity_harm(p34,v1). +NOT benefit_victim(p34). +severity_harm(p34). NOT goal_outweigh_harm(p34). foresee_intervention(p34). NOT external_force(p34). @@ -1015,8 +1013,8 @@ benefit_protagonist(p35). achieve_goal(p35). reckless_mental_state(p35). -benefit_victim(p35,v0). -severity_harm(p35,v1). +NOT benefit_victim(p35). +severity_harm(p35). goal_achieveable_less_harmful(p35). NOT intervening_contribution(p35). NOT external_force(p35). @@ -1039,8 +1037,8 @@ NOT benefit_protagonist(p36). NOT achieve_goal(p36). NOT careful(p36). -benefit_victim(p36,v0). -severity_harm(p36,v1). +NOT benefit_victim(p36). +severity_harm(p36). NOT goal_outweigh_harm(p36). foresee_intervention(p36). high_foreseeability(p36). @@ -1063,8 +1061,8 @@ NOT benefit_protagonist(p37). achieve_goal(p37). NOT careful(p37). -benefit_victim(p37,v0). -severity_harm(p37,v1). +NOT benefit_victim(p37). +severity_harm(p37). NOT goal_outweigh_harm(p37). foresee_intervention(p37). high_foreseeability(p37). @@ -1087,8 +1085,8 @@ benefit_protagonist(p38). achieve_goal(p38). careful(p38). -benefit_victim(p38,v0). -severity_harm(p38,v1). +NOT benefit_victim(p38). +severity_harm(p38). goal_achieveable_less_harmful(p38). foresee_intervention(p38). high_foreseeability(p38). @@ -1111,8 +1109,8 @@ NOT benefit_protagonist(p39). achieve_goal(p39). careful(p39). -benefit_victim(p39,v0). -severity_harm(p39,v1). +NOT benefit_victim(p39). +severity_harm(p39). goal_achieveable_less_harmful(p39). foresee_intervention(p39). high_foreseeability(p39). @@ -1135,8 +1133,8 @@ benefit_protagonist(p40). NOT achieve_goal(p40). careful(p40). -benefit_victim(p40,v0). -severity_harm(p40,v1). +NOT benefit_victim(p40). +severity_harm(p40). goal_achieveable_less_harmful(p40). NOT intervening_contribution(p40). high_foreseeability(p40). @@ -1159,8 +1157,8 @@ benefit_protagonist(p41). NOT achieve_goal(p41). NOT careful(p41). -benefit_victim(p41,v0). -severity_harm(p41,v1). +NOT benefit_victim(p41). +severity_harm(p41). goal_achieveable_less_harmful(p41). NOT intervening_contribution(p41). high_foreseeability(p41). @@ -1183,8 +1181,8 @@ NOT benefit_protagonist(p42). achieve_goal(p42). NOT careful(p42). -benefit_victim(p42,v0). -severity_harm(p42,v1). +NOT benefit_victim(p42). +severity_harm(p42). NOT goal_outweigh_harm(p42). NOT intervening_contribution(p42). low_foreseeability(p42). @@ -1207,8 +1205,8 @@ control_perpetrator(p43). benefit_protagonist(p43). careful(p43). -benefit_victim(p43,v0). -severity_harm(p43,v1). +NOT benefit_victim(p43). +severity_harm(p43). NOT achieve_goal(p43). foresee_intervention(p43). low_foreseeability(p43). @@ -1231,8 +1229,8 @@ control_perpetrator(p44). benefit_protagonist(p44). NOT careful(p44). -benefit_victim(p44,v0). -severity_harm(p44,v1). +NOT benefit_victim(p44). +severity_harm(p44). NOT achieve_goal(p44). NOT intervening_contribution(p44). low_foreseeability(p44). @@ -1255,8 +1253,8 @@ NOT benefit_protagonist(p45). achieve_goal(p45). careful(p45). -benefit_victim(p45,v0). -severity_harm(p45,v1). +NOT benefit_victim(p45). +severity_harm(p45). goal_achieveable_less_harmful(p45). NOT intervening_contribution(p45). low_foreseeability(p45). @@ -1279,8 +1277,8 @@ benefit_protagonist(p46). achieve_goal(p46). NOT careful(p46). -benefit_victim(p46,v0). -severity_harm(p46,v1). +NOT benefit_victim(p46). +severity_harm(p46). NOT goal_outweigh_harm(p46). NOT intervening_contribution(p46). low_foreseeability(p46). @@ -1303,8 +1301,8 @@ NOT control_perpetrator(p47). benefit_protagonist(p47). careful(p47). -benefit_victim(p47,v0). -severity_harm(p47,v1). +NOT benefit_victim(p47). +severity_harm(p47). NOT achieve_goal(p47). foresee_intervention(p47). low_foreseeability(p47). @@ -1325,8 +1323,8 @@ NOT benefit_protagonist(p48). NOT careful(p48). neither_mental_state(p48). -benefit_victim(p48,v0). -severity_harm(p48,v1). +NOT benefit_victim(p48). +severity_harm(p48). NOT achieve_goal(p48). foresee_intervention(p48). high_foreseeability(p48). @@ -1349,8 +1347,8 @@ NOT achieve_goal(p49). careful(p49). reckless_mental_state(p49). -benefit_victim(p49,v0). -severity_harm(p49,v1). +NOT benefit_victim(p49). +severity_harm(p49). NOT goal_outweigh_harm(p49). foresee_intervention(p49). high_foreseeability(p49). @@ -1373,8 +1371,8 @@ achieve_goal(p50). NOT careful(p50). neither_mental_state(p50). -benefit_victim(p50,v0). -severity_harm(p50,v1). +NOT benefit_victim(p50). +severity_harm(p50). goal_achieveable_less_harmful(p50). foresee_intervention(p50). high_foreseeability(p50). @@ -1397,8 +1395,8 @@ NOT achieve_goal(p51). careful(p51). neither_mental_state(p51). -benefit_victim(p51,v0). -severity_harm(p51,v1). +NOT benefit_victim(p51). +severity_harm(p51). NOT goal_outweigh_harm(p51). NOT intervening_contribution(p51). high_foreseeability(p51). @@ -1421,8 +1419,8 @@ NOT benefit_protagonist(p52). NOT careful(p52). neither_mental_state(p52). -benefit_victim(p52,v0). -severity_harm(p52,v1). +NOT benefit_victim(p52). +severity_harm(p52). NOT achieve_goal(p52). NOT intervening_contribution(p52). high_foreseeability(p52). @@ -1445,8 +1443,8 @@ NOT benefit_protagonist(p53). NOT careful(p53). reckless_mental_state(p53). -benefit_victim(p53,v0). -severity_harm(p53,v1). +NOT benefit_victim(p53). +severity_harm(p53). NOT achieve_goal(p53). foresee_intervention(p53). high_foreseeability(p53). @@ -1469,8 +1467,8 @@ NOT benefit_protagonist(p54). NOT careful(p54). reckless_mental_state(p54). -benefit_victim(p54,v0). -severity_harm(p54,v1). +NOT benefit_victim(p54). +severity_harm(p54). NOT achieve_goal(p54). NOT intervening_contribution(p54). low_foreseeability(p54). @@ -1493,8 +1491,8 @@ achieve_goal(p55). NOT careful(p55). reckless_mental_state(p55). -benefit_victim(p55,v0). -severity_harm(p55,v1). +NOT benefit_victim(p55). +severity_harm(p55). goal_achieveable_less_harmful(p55). NOT intervening_contribution(p55). low_foreseeability(p55). @@ -1517,8 +1515,8 @@ achieve_goal(p56). NOT careful(p56). negligent_mental_state(p56). -benefit_victim(p56,v0). -severity_harm(p56,v1). +NOT benefit_victim(p56). +severity_harm(p56). goal_achieveable_less_harmful(p56). foresee_intervention(p56). low_foreseeability(p56). @@ -1541,8 +1539,8 @@ NOT achieve_goal(p57). careful(p57). neither_mental_state(p57). -benefit_victim(p57,v0). -severity_harm(p57,v1). +NOT benefit_victim(p57). +severity_harm(p57). goal_achieveable_less_harmful(p57). NOT intervening_contribution(p57). low_foreseeability(p57). @@ -1565,8 +1563,8 @@ benefit_protagonist(p58). NOT careful(p58). neither_mental_state(p58). -benefit_victim(p58,v0). -severity_harm(p58,v1). +NOT benefit_victim(p58). +severity_harm(p58). NOT achieve_goal(p58). NOT intervening_contribution(p58). low_foreseeability(p58). @@ -1589,8 +1587,8 @@ NOT achieve_goal(p59). careful(p59). neither_mental_state(p59). -benefit_victim(p59,v0). -severity_harm(p59,v1). +NOT benefit_victim(p59). +severity_harm(p59). NOT goal_outweigh_harm(p59). NOT intervening_contribution(p59). low_foreseeability(p59). @@ -1615,8 +1613,8 @@ benefit_protagonist(p60). NOT careful(p60). neither_mental_state(p60). -benefit_victim(p60,v0). -severity_harm(p60,v1). +NOT benefit_victim(p60). +severity_harm(p60). NOT achieve_goal(p60). NOT intervening_contribution(p60). high_foreseeability(p60). @@ -1639,8 +1637,8 @@ achieve_goal(p61). NOT careful(p61). reckless_mental_state(p61). -benefit_victim(p61,v0). -severity_harm(p61,v1). +NOT benefit_victim(p61). +severity_harm(p61). goal_achieveable_less_harmful(p61). foresee_intervention(p61). high_foreseeability(p61). @@ -1663,8 +1661,8 @@ benefit_protagonist(p62). NOT careful(p62). neither_mental_state(p62). -benefit_victim(p62,v0). -severity_harm(p62,v1). +NOT benefit_victim(p62). +severity_harm(p62). NOT achieve_goal(p62). foresee_intervention(p62). high_foreseeability(p62). @@ -1687,8 +1685,8 @@ benefit_protagonist(p63). careful(p63). reckless_mental_state(p63). -benefit_victim(p63,v0). -severity_harm(p63,v1). +NOT benefit_victim(p63). +severity_harm(p63). NOT achieve_goal(p63). foresee_intervention(p63). high_foreseeability(p63). @@ -1711,8 +1709,8 @@ NOT achieve_goal(p64). NOT careful(p64). reckless_mental_state(p64). -benefit_victim(p64,v0). -severity_harm(p64,v1). +NOT benefit_victim(p64). +severity_harm(p64). goal_achieveable_less_harmful(p64). foresee_intervention(p64). high_foreseeability(p64). @@ -1735,8 +1733,8 @@ NOT benefit_protagonist(p65). careful(p65). negligent_mental_state(p65). -benefit_victim(p65,v0). -severity_harm(p65,v1). +NOT benefit_victim(p65). +severity_harm(p65). NOT achieve_goal(p65). NOT intervening_contribution(p65). high_foreseeability(p65). @@ -1759,8 +1757,8 @@ achieve_goal(p66). NOT careful(p66). negligent_mental_state(p66). -benefit_victim(p66,v0). -severity_harm(p66,v1). +NOT benefit_victim(p66). +severity_harm(p66). goal_achieveable_less_harmful(p66). NOT intervening_contribution(p66). low_foreseeability(p66). @@ -1783,8 +1781,8 @@ achieve_goal(p67). NOT careful(p67). reckless_mental_state(p67). -benefit_victim(p67,v0). -severity_harm(p67,v1). +NOT benefit_victim(p67). +severity_harm(p67). NOT goal_outweigh_harm(p67). foresee_intervention(p67). low_foreseeability(p67). @@ -1807,8 +1805,8 @@ NOT benefit_protagonist(p68). NOT careful(p68). negligent_mental_state(p68). -benefit_victim(p68,v0). -severity_harm(p68,v1). +NOT benefit_victim(p68). +severity_harm(p68). NOT achieve_goal(p68). foresee_intervention(p68). low_foreseeability(p68). @@ -1831,8 +1829,8 @@ NOT benefit_protagonist(p69). careful(p69). neither_mental_state(p69). -benefit_victim(p69,v0). -severity_harm(p69,v1). +NOT benefit_victim(p69). +severity_harm(p69). NOT achieve_goal(p69). foresee_intervention(p69). low_foreseeability(p69). @@ -1855,8 +1853,8 @@ NOT achieve_goal(p70). NOT careful(p70). negligent_mental_state(p70). -benefit_victim(p70,v0). -severity_harm(p70,v1). +NOT benefit_victim(p70). +severity_harm(p70). goal_achieveable_less_harmful(p70). foresee_intervention(p70). low_foreseeability(p70). @@ -1879,8 +1877,8 @@ NOT achieve_goal(p71). careful(p71). neither_mental_state(p71). -benefit_victim(p71,v0). -severity_harm(p71,v1). +NOT benefit_victim(p71). +severity_harm(p71). goal_achieveable_less_harmful(p71). foresee_intervention(p71). low_foreseeability(p71). @@ -1903,8 +1901,8 @@ NOT control_perpetrator(p72). NOT careful(p72). reckless_mental_state(p72). -benefit_victim(p72,v0). -severity_harm(p72,v1). +NOT benefit_victim(p72). +severity_harm(p72). NOT achieve_goal(p72). foresee_intervention(p72). high_foreseeability(p72). @@ -1927,8 +1925,8 @@ achieve_goal(p73). careful(p73). neither_mental_state(p73). -benefit_victim(p73,v0). -severity_harm(p73,v1). +NOT benefit_victim(p73). +severity_harm(p73). NOT goal_outweigh_harm(p73). NOT intervening_contribution(p73). high_foreseeability(p73). @@ -1951,8 +1949,8 @@ NOT achieve_goal(p74). NOT careful(p74). negligent_mental_state(p74). -benefit_victim(p74,v0). -severity_harm(p74,v1). +NOT benefit_victim(p74). +severity_harm(p74). NOT goal_outweigh_harm(p74). NOT intervening_contribution(p74). high_foreseeability(p74). @@ -1975,8 +1973,8 @@ control_perpetrator(p75). NOT careful(p75). reckless_mental_state(p75). -benefit_victim(p75,v0). -severity_harm(p75,v1). +NOT benefit_victim(p75). +severity_harm(p75). NOT achieve_goal(p75). NOT intervening_contribution(p75). high_foreseeability(p75). @@ -1999,8 +1997,8 @@ achieve_goal(p76). NOT careful(p76). negligent_mental_state(p76). -benefit_victim(p76,v0). -severity_harm(p76,v1). +NOT benefit_victim(p76). +severity_harm(p76). NOT goal_outweigh_harm(p76). NOT intervening_contribution(p76). high_foreseeability(p76). @@ -2023,8 +2021,8 @@ control_perpetrator(p77). NOT careful(p77). reckless_mental_state(p77). -benefit_victim(p77,v0). -severity_harm(p77,v1). +NOT benefit_victim(p77). +severity_harm(p77). NOT achieve_goal(p77). foresee_intervention(p77). high_foreseeability(p77). @@ -2047,8 +2045,8 @@ achieve_goal(p78). NOT careful(p78). reckless_mental_state(p78). -benefit_victim(p78,v0). -severity_harm(p78,v1). +NOT benefit_victim(p78). +severity_harm(p78). NOT goal_outweigh_harm(p78). foresee_intervention(p78). low_foreseeability(p78). @@ -2071,8 +2069,8 @@ NOT achieve_goal(p79). NOT careful(p79). neither_mental_state(p79). -benefit_victim(p79,v0). -severity_harm(p79,v1). +NOT benefit_victim(p79). +severity_harm(p79). goal_achieveable_less_harmful(p79). NOT intervening_contribution(p79). low_foreseeability(p79). @@ -2095,8 +2093,8 @@ NOT achieve_goal(p80). careful(p80). neither_mental_state(p80). -benefit_victim(p80,v0). -severity_harm(p80,v1). +NOT benefit_victim(p80). +severity_harm(p80). goal_achieveable_less_harmful(p80). foresee_intervention(p80). low_foreseeability(p80). @@ -2119,8 +2117,8 @@ NOT control_perpetrator(p81). NOT careful(p81). reckless_mental_state(p81). -benefit_victim(p81,v0). -severity_harm(p81,v1). +NOT benefit_victim(p81). +severity_harm(p81). NOT achieve_goal(p81). foresee_intervention(p81). low_foreseeability(p81). @@ -2143,8 +2141,8 @@ NOT achieve_goal(p82). NOT careful(p82). negligent_mental_state(p82). -benefit_victim(p82,v0). -severity_harm(p82,v1). +NOT benefit_victim(p82). +severity_harm(p82). NOT goal_outweigh_harm(p82). foresee_intervention(p82). low_foreseeability(p82). @@ -2167,8 +2165,8 @@ achieve_goal(p83). NOT careful(p83). neither_mental_state(p83). -benefit_victim(p83,v0). -severity_harm(p83,v1). +NOT benefit_victim(p83). +severity_harm(p83). NOT goal_outweigh_harm(p83). NOT intervening_contribution(p83). low_foreseeability(p83). @@ -2191,8 +2189,8 @@ achieve_goal(p84). NOT careful(p84). negligent_mental_state(p84). -benefit_victim(p84,v0). -severity_harm(p84,v1). +NOT benefit_victim(p84). +severity_harm(p84). NOT goal_outweigh_harm(p84). foresee_intervention(p84). high_foreseeability(p84). @@ -2215,8 +2213,8 @@ benefit_protagonist(p85). NOT careful(p85). reckless_mental_state(p85). -benefit_victim(p85,v0). -severity_harm(p85,v1). +NOT benefit_victim(p85). +severity_harm(p85). NOT achieve_goal(p85). foresee_intervention(p85). high_foreseeability(p85). @@ -2239,8 +2237,8 @@ NOT achieve_goal(p86). careful(p86). neither_mental_state(p86). -benefit_victim(p86,v0). -severity_harm(p86,v1). +NOT benefit_victim(p86). +severity_harm(p86). NOT goal_outweigh_harm(p86). NOT intervening_contribution(p86). high_foreseeability(p86). @@ -2263,8 +2261,8 @@ benefit_protagonist(p87). careful(p87). reckless_mental_state(p87). -benefit_victim(p87,v0). -severity_harm(p87,v1). +NOT benefit_victim(p87). +severity_harm(p87). NOT achieve_goal(p87). NOT intervening_contribution(p87). high_foreseeability(p87). @@ -2287,8 +2285,8 @@ NOT achieve_goal(p88). careful(p88). neither_mental_state(p88). -benefit_victim(p88,v0). -severity_harm(p88,v1). +NOT benefit_victim(p88). +severity_harm(p88). goal_achieveable_less_harmful(p88). foresee_intervention(p88). high_foreseeability(p88). @@ -2311,17 +2309,17 @@ benefit_protagonist(p89). careful(p89). neither_mental_state(p89). -benefit_victim(p89,v0). -severity_harm(p89,v1). +NOT benefit_victim(p89). +severity_harm(p89). 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). @@ -2337,8 +2335,8 @@ NOT achieve_goal(p90). NOT careful(p90). neither_mental_state(p90). -benefit_victim(p90,v0). -severity_harm(p90,v1). +NOT benefit_victim(p90). +severity_harm(p90). goal_achieveable_less_harmful(p90). NOT intervening_contribution(p90). low_foreseeability(p90). @@ -2361,8 +2359,8 @@ benefit_protagonist(p91). careful(p91). negligent_mental_state(p91). -benefit_victim(p91,v0). -severity_harm(p91,v1). +NOT benefit_victim(p91). +severity_harm(p91). NOT achieve_goal(p91). foresee_intervention(p91). low_foreseeability(p91). @@ -2385,8 +2383,8 @@ NOT benefit_protagonist(p92). careful(p92). neither_mental_state(p92). -benefit_victim(p92,v0). -severity_harm(p92,v1). +NOT benefit_victim(p92). +severity_harm(p92). NOT achieve_goal(p92). foresee_intervention(p92). low_foreseeability(p92). @@ -2409,8 +2407,8 @@ benefit_protagonist(p93). NOT careful(p93). neither_mental_state(p93). -benefit_victim(p93,v0). -severity_harm(p93,v1). +NOT benefit_victim(p93). +severity_harm(p93). NOT achieve_goal(p93). NOT intervening_contribution(p93). low_foreseeability(p93). @@ -2433,8 +2431,8 @@ NOT benefit_protagonist(p94). careful(p94). negligent_mental_state(p94). -benefit_victim(p94,v0). -severity_harm(p94,v1). +NOT benefit_victim(p94). +severity_harm(p94). NOT achieve_goal(p94). foresee_intervention(p94). low_foreseeability(p94). @@ -2457,8 +2455,8 @@ achieve_goal(p95). NOT careful(p95). reckless_mental_state(p95). -benefit_victim(p95,v0). -severity_harm(p95,v1). +NOT benefit_victim(p95). +severity_harm(p95). goal_achieveable_less_harmful(p95). foresee_intervention(p95). low_foreseeability(p95). @@ -2483,8 +2481,8 @@ careful(p96). reckless_mental_state(p96). low_foreseeability(p96). -benefit_victim(p96,v0). -severity_harm(p96,v1). +NOT benefit_victim(p96). +severity_harm(p96). goal_achieveable_less_harmful(p96). control_perpetrator(p96). outrank_perpetrator(p96). @@ -2507,8 +2505,8 @@ careful(p97). negligent_mental_state(p97). no_foreseeability(p97). -benefit_victim(p97,v0). -severity_harm(p97,v1). +NOT benefit_victim(p97). +severity_harm(p97). goal_achieveable_less_harmful(p97). control_perpetrator(p97). outrank_perpetrator(p97). @@ -2531,8 +2529,8 @@ NOT careful(p98). negligent_mental_state(p98). high_foreseeability(p98). -benefit_victim(p98,v0). -severity_harm(p98,v1). +NOT benefit_victim(p98). +severity_harm(p98). goal_achieveable_less_harmful(p98). control_perpetrator(p98). outrank_perpetrator(p98). @@ -2555,8 +2553,8 @@ careful(p99). reckless_mental_state(p99). low_foreseeability(p99). -benefit_victim(p99,v0). -severity_harm(p99,v1). +NOT benefit_victim(p99). +severity_harm(p99). NOT achieve_goal(p99). control_perpetrator(p99). outrank_perpetrator(p99). @@ -2579,8 +2577,8 @@ NOT careful(p100). reckless_mental_state(p100). no_foreseeability(p100). -benefit_victim(p100,v0). -severity_harm(p100,v1). +NOT benefit_victim(p100). +severity_harm(p100). goal_achieveable_less_harmful(p100). control_perpetrator(p100). outrank_perpetrator(p100). @@ -2603,8 +2601,8 @@ NOT careful(p101). negligent_mental_state(p101). low_foreseeability(p101). -benefit_victim(p101,v0). -severity_harm(p101,v1). +NOT benefit_victim(p101). +severity_harm(p101). goal_achieveable_less_harmful(p101). control_perpetrator(p101). outrank_perpetrator(p101). @@ -2630,8 +2628,8 @@ plan_known(n0). produce_harm(n0). NOT sufficient_for_harm(n0). -severity_harm(n0,v0). -benefit_victim(n0,v0). +NOT severity_harm(n0). +NOT benefit_victim(n0). reckless_mental_state(n0). NOT achieve_goal(n1). @@ -2654,8 +2652,8 @@ plan_known(n1). NOT produce_harm(n1). NOT sufficient_for_harm(n1). -severity_harm(n1,v0). -benefit_victim(n1,v1). +NOT severity_harm(n1). +benefit_victim(n1). neither_mental_state(n1). NOT achieve_goal(n2). @@ -2678,8 +2676,8 @@ plan_known(n2). produce_harm(n2). NOT sufficient_for_harm(n2). -severity_harm(n2,v1). -benefit_victim(n2,v1). +severity_harm(n2). +benefit_victim(n2). neither_mental_state(n2). NOT achieve_goal(n3). @@ -2702,12 +2700,12 @@ plan_known(n3). NOT produce_harm(n3). NOT sufficient_for_harm(n3). -severity_harm(n3,v0). -benefit_victim(n3,v1). +NOT severity_harm(n3). +benefit_victim(n3). neither_mental_state(n3). -/* -achieve_goal(n4). + +/*achieve_goal(n4). NOT benefit_protagonist(n4). NOT careful(n4). NOT control_perpetrator(n4). @@ -2727,8 +2725,8 @@ plan_known(n4). produce_harm(n4). NOT sufficient_for_harm(n4). -severity_harm(n4,v0). -benefit_victim(n4,v0). +NOT severity_harm(n4). +NOT benefit_victim(n4). reckless_mental_state(n4). */ @@ -2752,8 +2750,8 @@ plan_known(n5). produce_harm(n5). sufficient_for_harm(n5). -severity_harm(n5,v1). -benefit_victim(n5,v1). +severity_harm(n5). +benefit_victim(n5). neither_mental_state(n5). achieve_goal(n6). @@ -2776,8 +2774,8 @@ plan_known(n6). produce_harm(n6). sufficient_for_harm(n6). -severity_harm(n6,v1). -benefit_victim(n6,v0). +severity_harm(n6). +NOT benefit_victim(n6). neither_mental_state(n6). NOT achieve_goal(n7). @@ -2800,8 +2798,8 @@ plan_known(n7). produce_harm(n7). sufficient_for_harm(n7). -severity_harm(n7,v1). -benefit_victim(n7,v1). +severity_harm(n7). +benefit_victim(n7). reckless_mental_state(n7). achieve_goal(n8). @@ -2824,8 +2822,8 @@ NOT plan_known(n8). NOT produce_harm(n8). sufficient_for_harm(n8). -severity_harm(n8,v1). -benefit_victim(n8,v1). +severity_harm(n8). +benefit_victim(n8). reckless_mental_state(n8). NOT achieve_goal(n9). @@ -2848,8 +2846,8 @@ plan_known(n9). NOT produce_harm(n9). NOT sufficient_for_harm(n9). -severity_harm(n9,v0). -benefit_victim(n9,v0). +NOT severity_harm(n9). +NOT benefit_victim(n9). negligent_mental_state(n9). achieve_goal(n10). @@ -2872,8 +2870,8 @@ plan_known(n10). NOT produce_harm(n10). sufficient_for_harm(n10). -severity_harm(n10,v0). -benefit_victim(n10,v0). +NOT severity_harm(n10). +NOT benefit_victim(n10). negligent_mental_state(n10). /* @@ -2897,8 +2895,8 @@ NOT plan_known(n11). produce_harm(n11). NOT sufficient_for_harm(n11). -severity_harm(n11,v1). -benefit_victim(n11,v0). +severity_harm(n11). +NOT benefit_victim(n11). negligent_mental_state(n11). NOT achieve_goal(n12). @@ -2921,8 +2919,8 @@ plan_known(n12). produce_harm(n12). NOT sufficient_for_harm(n12). -severity_harm(n12,v0). -benefit_victim(n12,v1). +NOT severity_harm(n12). +benefit_victim(n12). negligent_mental_state(n12). achieve_goal(n13). @@ -2945,8 +2943,8 @@ NOT plan_known(n13). NOT produce_harm(n13). sufficient_for_harm(n13). -severity_harm(n13,v1). -benefit_victim(n13,v0). +severity_harm(n13). +NOT benefit_victim(n13). reckless_mental_state(n13). achieve_goal(n14). @@ -2969,8 +2967,8 @@ plan_known(n14). produce_harm(n14). sufficient_for_harm(n14). -severity_harm(n14,v1). -benefit_victim(n14,v1). +severity_harm(n14). +benefit_victim(n14). reckless_mental_state(n14). NOT achieve_goal(n15). @@ -2993,8 +2991,8 @@ plan_known(n15). produce_harm(n15). sufficient_for_harm(n15). -severity_harm(n15,v0). -benefit_victim(n15,v0). +NOT severity_harm(n15). +NOT benefit_victim(n15). reckless_mental_state(n15). NOT achieve_goal(n16). @@ -3017,8 +3015,8 @@ NOT plan_known(n16). NOT produce_harm(n16). sufficient_for_harm(n16). -severity_harm(n16,v0). -benefit_victim(n16,v0). +NOT severity_harm(n16). +NOT benefit_victim(n16). neither_mental_state(n16). NOT achieve_goal(n17). @@ -3041,8 +3039,8 @@ plan_known(n17). NOT produce_harm(n17). sufficient_for_harm(n17). -severity_harm(n17,v1). -benefit_victim(n17,v0). +severity_harm(n17). +NOT benefit_victim(n17). negligent_mental_state(n17). NOT achieve_goal(n18). @@ -3065,8 +3063,8 @@ plan_known(n18). produce_harm(n18). sufficient_for_harm(n18). -severity_harm(n18,v1). -benefit_victim(n18,v1). +severity_harm(n18). +benefit_victim(n18). negligent_mental_state(n18). achieve_goal(n19). @@ -3089,8 +3087,8 @@ plan_known(n19). NOT produce_harm(n19). sufficient_for_harm(n19). -severity_harm(n19,v0). -benefit_victim(n19,v1). +NOT severity_harm(n19). +benefit_victim(n19). negligent_mental_state(n19). achieve_goal(n20). @@ -3113,10 +3111,10 @@ plan_known(n20). NOT produce_harm(n20). sufficient_for_harm(n20). -severity_harm(n20,v1). -benefit_victim(n20,v1). +severity_harm(n20). +benefit_victim(n20). negligent_mental_state(n20). -/* + achieve_goal(n21). benefit_protagonist(n21). NOT careful(n21). @@ -3137,8 +3135,8 @@ plan_known(n21). NOT produce_harm(n21). NOT sufficient_for_harm(n21). -severity_harm(n21,v0). -benefit_victim(n21,v1). +NOT severity_harm(n21). +benefit_victim(n21). neither_mental_state(n21). achieve_goal(n22). @@ -3161,8 +3159,8 @@ plan_known(n22). NOT produce_harm(n22). NOT sufficient_for_harm(n22). -severity_harm(n22,v0). -benefit_victim(n22,v0). +NOT severity_harm(n22). +NOT benefit_victim(n22). neither_mental_state(n22). achieve_goal(n23). @@ -3185,8 +3183,8 @@ NOT plan_known(n23). NOT produce_harm(n23). sufficient_for_harm(n23). -severity_harm(n23,v1). -benefit_victim(n23,v1). +severity_harm(n23). +benefit_victim(n23). negligent_mental_state(n23). NOT achieve_goal(n24). @@ -3209,8 +3207,8 @@ plan_known(n24). produce_harm(n24). NOT sufficient_for_harm(n24). -severity_harm(n24,v0). -benefit_victim(n24,v0). +NOT severity_harm(n24). +NOT benefit_victim(n24). neither_mental_state(n24). achieve_goal(n25). @@ -3233,8 +3231,8 @@ NOT plan_known(n25). NOT produce_harm(n25). sufficient_for_harm(n25). -severity_harm(n25,v0). -benefit_victim(n25,v1). +NOT severity_harm(n25). +benefit_victim(n25). neither_mental_state(n25). achieve_goal(n26). @@ -3257,8 +3255,8 @@ plan_known(n26). produce_harm(n26). sufficient_for_harm(n26). -severity_harm(n26,v0). -benefit_victim(n26,v1). +NOT severity_harm(n26). +benefit_victim(n26). reckless_mental_state(n26). NOT achieve_goal(n27). @@ -3281,8 +3279,8 @@ NOT plan_known(n27). NOT produce_harm(n27). sufficient_for_harm(n27). -severity_harm(n27,v0). -benefit_victim(n27,v0). +NOT severity_harm(n27). +NOT benefit_victim(n27). neither_mental_state(n27). NOT achieve_goal(n28). @@ -3305,8 +3303,8 @@ NOT plan_known(n28). produce_harm(n28). sufficient_for_harm(n28). -severity_harm(n28,v1). -benefit_victim(n28,v0). +severity_harm(n28). +NOT benefit_victim(n28). negligent_mental_state(n28). NOT achieve_goal(n29). @@ -3329,11 +3327,11 @@ NOT plan_known(n29). produce_harm(n29). sufficient_for_harm(n29). -severity_harm(n29,v0). -benefit_victim(n29,v0). +NOT severity_harm(n29). +NOT benefit_victim(n29). reckless_mental_state(n29). -/* + achieve_goal(n30). benefit_protagonist(n30). careful(n30). @@ -3354,8 +3352,8 @@ NOT plan_known(n30). produce_harm(n30). sufficient_for_harm(n30). -severity_harm(n30,v0). -benefit_victim(n30,v1). +NOT severity_harm(n30). +benefit_victim(n30). neither_mental_state(n30). achieve_goal(n31). @@ -3378,8 +3376,8 @@ plan_known(n31). produce_harm(n31). NOT sufficient_for_harm(n31). -severity_harm(n31,v1). -benefit_victim(n31,v1). +severity_harm(n31). +benefit_victim(n31). reckless_mental_state(n31). achieve_goal(n32). @@ -3402,8 +3400,8 @@ NOT plan_known(n32). produce_harm(n32). sufficient_for_harm(n32). -severity_harm(n32,v0). -benefit_victim(n32,v0). +NOT severity_harm(n32). +NOT benefit_victim(n32). neither_mental_state(n32). NOT achieve_goal(n33). @@ -3426,8 +3424,8 @@ plan_known(n33). produce_harm(n33). sufficient_for_harm(n33). -severity_harm(n33,v1). -benefit_victim(n33,v1). +severity_harm(n33). +benefit_victim(n33). reckless_mental_state(n33). achieve_goal(n34). @@ -3450,8 +3448,8 @@ plan_known(n34). produce_harm(n34). NOT sufficient_for_harm(n34). -severity_harm(n34,v1). -benefit_victim(n34,v0). +severity_harm(n34). +NOT benefit_victim(n34). neither_mental_state(n34). NOT achieve_goal(n35). @@ -3474,8 +3472,8 @@ NOT plan_known(n35). produce_harm(n35). sufficient_for_harm(n35). -severity_harm(n35,v1). -benefit_victim(n35,v0). +severity_harm(n35). +NOT benefit_victim(n35). negligent_mental_state(n35). NOT achieve_goal(n36). @@ -3498,8 +3496,8 @@ plan_known(n36). NOT produce_harm(n36). NOT sufficient_for_harm(n36). -severity_harm(n36,v0). -benefit_victim(n36,v0). +NOT severity_harm(n36). +NOT benefit_victim(n36). neither_mental_state(n36). achieve_goal(n37). @@ -3522,8 +3520,8 @@ NOT plan_known(n37). produce_harm(n37). sufficient_for_harm(n37). -severity_harm(n37,v1). -benefit_victim(n37,v0). +severity_harm(n37). +NOT benefit_victim(n37). neither_mental_state(n37). NOT achieve_goal(n38). @@ -3546,8 +3544,8 @@ NOT plan_known(n38). produce_harm(n38). NOT sufficient_for_harm(n38). -severity_harm(n38,v0). -benefit_victim(n38,v0). +NOT severity_harm(n38). +NOT benefit_victim(n38). negligent_mental_state(n38). NOT achieve_goal(n39). @@ -3570,8 +3568,8 @@ NOT plan_known(n39). produce_harm(n39). sufficient_for_harm(n39). -severity_harm(n39,v0). -benefit_victim(n39,v0). +NOT severity_harm(n39). +NOT benefit_victim(n39). negligent_mental_state(n39). NOT achieve_goal(n40). @@ -3594,8 +3592,8 @@ plan_known(n40). NOT produce_harm(n40). sufficient_for_harm(n40). -severity_harm(n40,v0). -benefit_victim(n40,v1). +NOT severity_harm(n40). +benefit_victim(n40). reckless_mental_state(n40). achieve_goal(n41). @@ -3618,8 +3616,8 @@ NOT plan_known(n41). NOT produce_harm(n41). NOT sufficient_for_harm(n41). -severity_harm(n41,v0). -benefit_victim(n41,v0). +NOT severity_harm(n41). +NOT benefit_victim(n41). neither_mental_state(n41). NOT achieve_goal(n42). @@ -3642,8 +3640,8 @@ NOT plan_known(n42). NOT produce_harm(n42). NOT sufficient_for_harm(n42). -severity_harm(n42,v0). -benefit_victim(n42,v1). +NOT severity_harm(n42). +benefit_victim(n42). negligent_mental_state(n42). NOT achieve_goal(n43). @@ -3666,8 +3664,8 @@ plan_known(n43). produce_harm(n43). sufficient_for_harm(n43). -severity_harm(n43,v1). -benefit_victim(n43,v1). +severity_harm(n43). +benefit_victim(n43). reckless_mental_state(n43). achieve_goal(n44). @@ -3690,8 +3688,8 @@ plan_known(n44). NOT produce_harm(n44). sufficient_for_harm(n44). -severity_harm(n44,v0). -benefit_victim(n44,v0). +NOT severity_harm(n44). +NOT benefit_victim(n44). negligent_mental_state(n44). NOT achieve_goal(n45). @@ -3714,8 +3712,8 @@ plan_known(n45). NOT produce_harm(n45). sufficient_for_harm(n45). -severity_harm(n45,v1). -benefit_victim(n45,v1). +severity_harm(n45). +benefit_victim(n45). neither_mental_state(n45). achieve_goal(n46). @@ -3738,8 +3736,8 @@ NOT plan_known(n46). NOT produce_harm(n46). NOT sufficient_for_harm(n46). -severity_harm(n46,v0). -benefit_victim(n46,v0). +NOT severity_harm(n46). +NOT benefit_victim(n46). negligent_mental_state(n46). NOT achieve_goal(n47). @@ -3762,8 +3760,8 @@ plan_known(n47). NOT produce_harm(n47). sufficient_for_harm(n47). -severity_harm(n47,v0). -benefit_victim(n47,v1). +NOT severity_harm(n47). +benefit_victim(n47). negligent_mental_state(n47). NOT achieve_goal(n48). @@ -3786,8 +3784,8 @@ NOT plan_known(n48). produce_harm(n48). sufficient_for_harm(n48). -severity_harm(n48,v1). -benefit_victim(n48,v1). +severity_harm(n48). +benefit_victim(n48). negligent_mental_state(n48). NOT achieve_goal(n49). @@ -3810,8 +3808,8 @@ plan_known(n49). NOT produce_harm(n49). sufficient_for_harm(n49). -severity_harm(n49,v0). -benefit_victim(n49,v0). +NOT severity_harm(n49). +NOT benefit_victim(n49). neither_mental_state(n49). achieve_goal(n50). @@ -3834,8 +3832,8 @@ plan_known(n50). produce_harm(n50). sufficient_for_harm(n50). -severity_harm(n50,v1). -benefit_victim(n50,v1). +severity_harm(n50). +benefit_victim(n50). negligent_mental_state(n50). NOT achieve_goal(n51). @@ -3858,8 +3856,8 @@ plan_known(n51). produce_harm(n51). sufficient_for_harm(n51). -severity_harm(n51,v0). -benefit_victim(n51,v0). +NOT severity_harm(n51). +NOT benefit_victim(n51). reckless_mental_state(n51). NOT achieve_goal(n52). @@ -3882,8 +3880,8 @@ plan_known(n52). NOT produce_harm(n52). NOT sufficient_for_harm(n52). -severity_harm(n52,v0). -benefit_victim(n52,v0). +NOT severity_harm(n52). +NOT benefit_victim(n52). neither_mental_state(n52). NOT achieve_goal(n53). @@ -3906,8 +3904,8 @@ NOT plan_known(n53). produce_harm(n53). NOT sufficient_for_harm(n53). -severity_harm(n53,v0). -benefit_victim(n53,v0). +NOT severity_harm(n53). +NOT benefit_victim(n53). negligent_mental_state(n53). achieve_goal(n54). @@ -3930,8 +3928,8 @@ NOT plan_known(n54). NOT produce_harm(n54). NOT sufficient_for_harm(n54). -severity_harm(n54,v0). -benefit_victim(n54,v0). +NOT severity_harm(n54). +NOT benefit_victim(n54). neither_mental_state(n54). achieve_goal(n55). @@ -3954,8 +3952,8 @@ plan_known(n55). produce_harm(n55). NOT sufficient_for_harm(n55). -severity_harm(n55,v0). -benefit_victim(n55,v0). +NOT severity_harm(n55). +NOT benefit_victim(n55). reckless_mental_state(n55). NOT achieve_goal(n56). @@ -3978,8 +3976,8 @@ NOT plan_known(n56). produce_harm(n56). NOT sufficient_for_harm(n56). -severity_harm(n56,v1). -benefit_victim(n56,v1). +severity_harm(n56). +benefit_victim(n56). reckless_mental_state(n56). NOT achieve_goal(n57). @@ -4002,8 +4000,8 @@ plan_known(n57). NOT produce_harm(n57). NOT sufficient_for_harm(n57). -severity_harm(n57,v1). -benefit_victim(n57,v0). +severity_harm(n57). +NOT benefit_victim(n57). neither_mental_state(n57). NOT achieve_goal(n58). @@ -4026,8 +4024,8 @@ plan_known(n58). produce_harm(n58). sufficient_for_harm(n58). -severity_harm(n58,v0). -benefit_victim(n58,v1). +NOT severity_harm(n58). +benefit_victim(n58). negligent_mental_state(n58). achieve_goal(n59). @@ -4050,8 +4048,8 @@ plan_known(n59). produce_harm(n59). NOT sufficient_for_harm(n59). -severity_harm(n59,v0). -benefit_victim(n59,v0). +NOT severity_harm(n59). +NOT benefit_victim(n59). neither_mental_state(n59). NOT achieve_goal(n60). @@ -4074,8 +4072,8 @@ plan_known(n60). produce_harm(n60). NOT sufficient_for_harm(n60). -severity_harm(n60,v0). -benefit_victim(n60,v1). +NOT severity_harm(n60). +benefit_victim(n60). neither_mental_state(n60). NOT achieve_goal(n61). @@ -4098,8 +4096,8 @@ NOT plan_known(n61). NOT produce_harm(n61). NOT sufficient_for_harm(n61). -severity_harm(n61,v0). -benefit_victim(n61,v1). +NOT severity_harm(n61). +benefit_victim(n61). reckless_mental_state(n61). achieve_goal(n62). @@ -4122,8 +4120,8 @@ NOT plan_known(n62). NOT produce_harm(n62). sufficient_for_harm(n62). -severity_harm(n62,v0). -benefit_victim(n62,v0). +NOT severity_harm(n62). +NOT benefit_victim(n62). reckless_mental_state(n62). achieve_goal(n63). @@ -4146,8 +4144,8 @@ plan_known(n63). produce_harm(n63). NOT sufficient_for_harm(n63). -severity_harm(n63,v0). -benefit_victim(n63,v0). +NOT severity_harm(n63). +NOT benefit_victim(n63). neither_mental_state(n63). NOT achieve_goal(n64). @@ -4170,8 +4168,8 @@ NOT plan_known(n64). NOT produce_harm(n64). sufficient_for_harm(n64). -severity_harm(n64,v0). -benefit_victim(n64,v0). +NOT severity_harm(n64). +NOT benefit_victim(n64). negligent_mental_state(n64). NOT achieve_goal(n65). @@ -4194,8 +4192,8 @@ NOT plan_known(n65). produce_harm(n65). NOT sufficient_for_harm(n65). -severity_harm(n65,v1). -benefit_victim(n65,v0). +severity_harm(n65). +NOT benefit_victim(n65). negligent_mental_state(n65). NOT achieve_goal(n66). @@ -4218,8 +4216,8 @@ NOT plan_known(n66). NOT produce_harm(n66). NOT sufficient_for_harm(n66). -severity_harm(n66,v1). -benefit_victim(n66,v0). +severity_harm(n66). +NOT benefit_victim(n66). negligent_mental_state(n66). NOT achieve_goal(n67). @@ -4242,8 +4240,8 @@ NOT plan_known(n67). NOT produce_harm(n67). sufficient_for_harm(n67). -severity_harm(n67,v1). -benefit_victim(n67,v0). +severity_harm(n67). +NOT benefit_victim(n67). neither_mental_state(n67). achieve_goal(n68). @@ -4266,8 +4264,8 @@ plan_known(n68). NOT produce_harm(n68). NOT sufficient_for_harm(n68). -severity_harm(n68,v0). -benefit_victim(n68,v0). +NOT severity_harm(n68). +NOT benefit_victim(n68). negligent_mental_state(n68). NOT achieve_goal(n69). @@ -4290,8 +4288,8 @@ plan_known(n69). produce_harm(n69). NOT sufficient_for_harm(n69). -severity_harm(n69,v0). -benefit_victim(n69,v0). +NOT severity_harm(n69). +NOT benefit_victim(n69). reckless_mental_state(n69). achieve_goal(n70). @@ -4314,8 +4312,8 @@ NOT plan_known(n70). produce_harm(n70). NOT sufficient_for_harm(n70). -severity_harm(n70,v0). -benefit_victim(n70,v0). +NOT severity_harm(n70). +NOT benefit_victim(n70). negligent_mental_state(n70). NOT achieve_goal(n71). @@ -4338,8 +4336,8 @@ NOT plan_known(n71). produce_harm(n71). NOT sufficient_for_harm(n71). -severity_harm(n71,v0). -benefit_victim(n71,v1). +NOT severity_harm(n71). +benefit_victim(n71). neither_mental_state(n71). NOT achieve_goal(n72). @@ -4362,8 +4360,8 @@ NOT plan_known(n72). NOT produce_harm(n72). sufficient_for_harm(n72). -severity_harm(n72,v1). -benefit_victim(n72,v0). +severity_harm(n72). +NOT benefit_victim(n72). neither_mental_state(n72). NOT achieve_goal(n73). @@ -4386,8 +4384,8 @@ plan_known(n73). produce_harm(n73). NOT sufficient_for_harm(n73). -severity_harm(n73,v1). -benefit_victim(n73,v0). +severity_harm(n73). +NOT benefit_victim(n73). neither_mental_state(n73). NOT achieve_goal(n74). @@ -4410,8 +4408,8 @@ NOT plan_known(n74). NOT produce_harm(n74). NOT sufficient_for_harm(n74). -severity_harm(n74,v0). -benefit_victim(n74,v0). +NOT severity_harm(n74). +NOT benefit_victim(n74). reckless_mental_state(n74). NOT achieve_goal(n75). @@ -4434,8 +4432,8 @@ NOT plan_known(n75). NOT produce_harm(n75). NOT sufficient_for_harm(n75). -severity_harm(n75,v1). -benefit_victim(n75,v0). +severity_harm(n75). +NOT benefit_victim(n75). neither_mental_state(n75). achieve_goal(n76). @@ -4458,8 +4456,8 @@ plan_known(n76). produce_harm(n76). NOT sufficient_for_harm(n76). -severity_harm(n76,v1). -benefit_victim(n76,v1). +severity_harm(n76). +benefit_victim(n76). neither_mental_state(n76). achieve_goal(n77). @@ -4482,8 +4480,8 @@ plan_known(n77). NOT produce_harm(n77). NOT sufficient_for_harm(n77). -severity_harm(n77,v0). -benefit_victim(n77,v0). +NOT severity_harm(n77). +NOT benefit_victim(n77). reckless_mental_state(n77). achieve_goal(n78). @@ -4506,8 +4504,8 @@ plan_known(n78). NOT produce_harm(n78). NOT sufficient_for_harm(n78). -severity_harm(n78,v1). -benefit_victim(n78,v1). +severity_harm(n78). +benefit_victim(n78). neither_mental_state(n78). achieve_goal(n79). @@ -4530,8 +4528,8 @@ plan_known(n79). produce_harm(n79). NOT sufficient_for_harm(n79). -severity_harm(n79,v0). -benefit_victim(n79,v1). +NOT severity_harm(n79). +benefit_victim(n79). reckless_mental_state(n79). achieve_goal(n80). @@ -4554,8 +4552,8 @@ plan_known(n80). NOT produce_harm(n80). NOT sufficient_for_harm(n80). -severity_harm(n80,v1). -benefit_victim(n80,v1). +severity_harm(n80). +benefit_victim(n80). reckless_mental_state(n80). achieve_goal(n81). @@ -4578,8 +4576,8 @@ plan_known(n81). NOT produce_harm(n81). NOT sufficient_for_harm(n81). -severity_harm(n81,v1). -benefit_victim(n81,v1). +severity_harm(n81). +benefit_victim(n81). neither_mental_state(n81). achieve_goal(n82). @@ -4602,8 +4600,8 @@ plan_known(n82). produce_harm(n82). NOT sufficient_for_harm(n82). -severity_harm(n82,v0). -benefit_victim(n82,v1). +NOT severity_harm(n82). +benefit_victim(n82). negligent_mental_state(n82). achieve_goal(n83). @@ -4626,8 +4624,8 @@ plan_known(n83). produce_harm(n83). sufficient_for_harm(n83). -severity_harm(n83,v1). -benefit_victim(n83,v1). +severity_harm(n83). +benefit_victim(n83). reckless_mental_state(n83). NOT achieve_goal(n84). @@ -4650,8 +4648,8 @@ NOT plan_known(n84). NOT produce_harm(n84). NOT sufficient_for_harm(n84). -severity_harm(n84,v1). -benefit_victim(n84,v0). +severity_harm(n84). +NOT benefit_victim(n84). reckless_mental_state(n84). achieve_goal(n85). @@ -4674,8 +4672,8 @@ plan_known(n85). produce_harm(n85). sufficient_for_harm(n85). -severity_harm(n85,v0). -benefit_victim(n85,v1). +NOT severity_harm(n85). +benefit_victim(n85). neither_mental_state(n85). achieve_goal(n86). @@ -4698,8 +4696,8 @@ plan_known(n86). NOT produce_harm(n86). sufficient_for_harm(n86). -severity_harm(n86,v1). -benefit_victim(n86,v1). +severity_harm(n86). +benefit_victim(n86). neither_mental_state(n86). achieve_goal(n87). @@ -4722,8 +4720,8 @@ plan_known(n87). NOT produce_harm(n87). NOT sufficient_for_harm(n87). -severity_harm(n87,v1). -benefit_victim(n87,v0). +severity_harm(n87). +NOT benefit_victim(n87). reckless_mental_state(n87). NOT achieve_goal(n88). @@ -4746,8 +4744,8 @@ plan_known(n88). produce_harm(n88). NOT sufficient_for_harm(n88). -severity_harm(n88,v0). -benefit_victim(n88,v0). +NOT severity_harm(n88). +NOT benefit_victim(n88). reckless_mental_state(n88). achieve_goal(n89). @@ -4770,10 +4768,11 @@ NOT plan_known(n89). NOT produce_harm(n89). sufficient_for_harm(n89). -severity_harm(n89,v1). -benefit_victim(n89,v0). +severity_harm(n89). +NOT benefit_victim(n89). negligent_mental_state(n89). */ + NOT achieve_goal(n90). NOT benefit_protagonist(n90). NOT careful(n90). @@ -4794,8 +4793,8 @@ plan_known(n90). produce_harm(n90). NOT sufficient_for_harm(n90). -severity_harm(n90,v1). -benefit_victim(n90,v0). +severity_harm(n90). +NOT benefit_victim(n90). neither_mental_state(n90). achieve_goal(n91). @@ -4818,8 +4817,8 @@ plan_known(n91). NOT produce_harm(n91). sufficient_for_harm(n91). -severity_harm(n91,v1). -benefit_victim(n91,v1). +severity_harm(n91). +benefit_victim(n91). negligent_mental_state(n91). achieve_goal(n92). @@ -4842,8 +4841,8 @@ plan_known(n92). NOT produce_harm(n92). NOT sufficient_for_harm(n92). -severity_harm(n92,v0). -benefit_victim(n92,v0). +NOT severity_harm(n92). +NOT benefit_victim(n92). neither_mental_state(n92). achieve_goal(n93). @@ -4866,8 +4865,8 @@ NOT plan_known(n93). NOT produce_harm(n93). sufficient_for_harm(n93). -severity_harm(n93,v0). -benefit_victim(n93,v0). +NOT severity_harm(n93). +NOT benefit_victim(n93). negligent_mental_state(n93). achieve_goal(n94). @@ -4890,8 +4889,8 @@ NOT plan_known(n94). produce_harm(n94). sufficient_for_harm(n94). -severity_harm(n94,v1). -benefit_victim(n94,v1). +severity_harm(n94). +benefit_victim(n94). neither_mental_state(n94). NOT achieve_goal(n95). @@ -4914,8 +4913,8 @@ plan_known(n95). NOT produce_harm(n95). sufficient_for_harm(n95). -severi... [truncated message content] |
From: <ku...@us...> - 2007-09-07 04:41:19
|
Revision: 139 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=139&view=rev Author: kurzum Date: 2007-09-06 21:39:51 -0700 (Thu, 06 Sep 2007) Log Message: ----------- delete some old files Removed Paths: ------------- trunk/examples/moral_reasoner/moral_43examples.conf trunk/examples/moral_reasoner/moral_43examples_owl.conf trunk/examples/moral_reasoner/moral_all_examples.conf Deleted: trunk/examples/moral_reasoner/moral_43examples.conf =================================================================== --- trunk/examples/moral_reasoner/moral_43examples.conf 2007-09-07 04:38:46 UTC (rev 138) +++ trunk/examples/moral_reasoner/moral_43examples.conf 2007-09-07 04:39:51 UTC (rev 139) @@ -1,5214 +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; -//export("moral_43instances.owl"); - -writeDIGProtocol = true; -digProtocolFile = "log/moral43_simple_dig.log"; - -/** 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_... [truncated message content] |
From: <jen...@us...> - 2007-09-05 21:30:49
|
Revision: 137 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=137&view=rev Author: jenslehmann Date: 2007-09-05 14:30:47 -0700 (Wed, 05 Sep 2007) Log Message: ----------- fixed import path Modified Paths: -------------- trunk/examples/moral_reasoner/moral_43examples_complex_owl.conf Modified: trunk/examples/moral_reasoner/moral_43examples_complex_owl.conf =================================================================== --- trunk/examples/moral_reasoner/moral_43examples_complex_owl.conf 2007-09-05 17:27:52 UTC (rev 136) +++ trunk/examples/moral_reasoner/moral_43examples_complex_owl.conf 2007-09-05 21:30:47 UTC (rev 137) @@ -32,7 +32,7 @@ showRoles = true; showInternalKB = false; showSubsumptionHierarchy = true; -import("moral_43instances_complex_new.owl"); +import("moral_43instances_complex.owl"); //hidePrefix("http://localhost/foo#"); /** background knowledge **/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-09-05 17:27:54
|
Revision: 136 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=136&view=rev Author: jenslehmann Date: 2007-09-05 10:27:52 -0700 (Wed, 05 Sep 2007) Log Message: ----------- deleted fixed directory Removed Paths: ------------- trunk/examples/moral_reasoner/fixed/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-09-05 17:26:36
|
Revision: 135 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=135&view=rev Author: jenslehmann Date: 2007-09-05 10:26:31 -0700 (Wed, 05 Sep 2007) Log Message: ----------- updated moral reasoner examples with fixed versions Modified Paths: -------------- trunk/examples/moral_reasoner/moral.owl trunk/examples/moral_reasoner/moral_43examples.conf trunk/examples/moral_reasoner/moral_43examples_complex_owl.conf trunk/examples/moral_reasoner/moral_43instances.owl trunk/examples/moral_reasoner/moral_43instances_complex.owl Added Paths: ----------- trunk/examples/moral_reasoner/moral_all_examples.conf trunk/examples/moral_reasoner/moral_all_examples_complex.conf Modified: trunk/examples/moral_reasoner/moral.owl =================================================================== --- trunk/examples/moral_reasoner/moral.owl 2007-09-05 15:44:09 UTC (rev 134) +++ trunk/examples/moral_reasoner/moral.owl 2007-09-05 17:26:31 UTC (rev 135) @@ -19,28 +19,16 @@ <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 rdf:about="#severity_harm"/> <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="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#justified"/> </owl:complementOf> </owl:Class> @@ -397,28 +385,16 @@ <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 rdf:about="#severity_harm"/> <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="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#justified"/> </owl:complementOf> </owl:Class> @@ -501,6 +477,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -543,6 +526,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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> @@ -554,11 +544,10 @@ </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"> +<a:benefit_victim rdf:ID="n1"> + <rdf:type rdf:resource="#control_perpetrator"/> <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> <rdf:type rdf:resource="#goal_outweigh_harm"/> <rdf:type rdf:resource="#intervening_contribution"/> @@ -640,6 +629,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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> @@ -651,9 +647,7 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v0"/> -</a:control_perpetrator> +</a:benefit_victim> <a:achieve_goal rdf:ID="n10"> <rdf:type rdf:resource="#foresee_intervention"/> @@ -676,6 +670,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -736,8 +737,13 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v0"/> - <a:severity_harm rdf:resource="#v0"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#severity_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> </a:achieve_goal> <a:benefit_protagonist rdf:ID="n11"> @@ -750,6 +756,7 @@ <rdf:type rdf:resource="#monitor"/> <rdf:type rdf:resource="#negligent_mental_state"/> <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#someone_else_cause_harm"/> <rdf:type> <owl:Class> @@ -761,6 +768,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#external_cause"/> </owl:complementOf> </owl:Class> @@ -821,11 +835,10 @@ </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"> +<a:benefit_victim rdf:ID="n12"> + <rdf:type rdf:resource="#external_cause"/> <rdf:type rdf:resource="#foresee_intervention"/> <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> <rdf:type rdf:resource="#goal_outweigh_harm"/> @@ -901,6 +914,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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> @@ -912,9 +932,7 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v0"/> -</a:external_cause> +</a:benefit_victim> <a:achieve_goal rdf:ID="n13"> <rdf:type rdf:resource="#benefit_protagonist"/> @@ -928,10 +946,18 @@ <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="#severity_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -985,12 +1011,11 @@ </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="#benefit_victim"/> <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#control_perpetrator"/> <rdf:type rdf:resource="#external_cause"/> @@ -1003,6 +1028,7 @@ <rdf:type rdf:resource="#plan_known"/> <rdf:type rdf:resource="#produce_harm"/> <rdf:type rdf:resource="#reckless_mental_state"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> <owl:Class> @@ -1046,8 +1072,6 @@ </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"> @@ -1072,6 +1096,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#external_cause"/> </owl:complementOf> </owl:Class> @@ -1121,12 +1152,17 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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"> @@ -1150,6 +1186,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -1210,8 +1253,13 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v0"/> - <a:severity_harm rdf:resource="#v0"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#severity_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> </a:benefit_protagonist> <a:careful rdf:ID="n17"> @@ -1226,6 +1274,7 @@ <rdf:type rdf:resource="#negligent_mental_state"/> <rdf:type rdf:resource="#plan_include_harm"/> <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> <owl:Class> @@ -1244,6 +1293,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#control_perpetrator"/> </owl:complementOf> </owl:Class> @@ -1283,11 +1339,10 @@ </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"> +<a:benefit_victim rdf:ID="n18"> + <rdf:type rdf:resource="#control_perpetrator"/> <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> <rdf:type rdf:resource="#goal_outweigh_harm"/> <rdf:type rdf:resource="#high_foreseeability"/> @@ -1297,6 +1352,7 @@ <rdf:type rdf:resource="#plan_include_harm"/> <rdf:type rdf:resource="#plan_known"/> <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> <owl:Class> @@ -1368,11 +1424,10 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v1"/> -</a:control_perpetrator> +</a:benefit_victim> <a:achieve_goal rdf:ID="n19"> + <rdf:type rdf:resource="#benefit_victim"/> <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#control_perpetrator"/> <rdf:type rdf:resource="#foresee_intervention"/> @@ -1447,11 +1502,17 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v0"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#severity_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> </a:achieve_goal> <a:benefit_protagonist rdf:ID="n2"> + <rdf:type rdf:resource="#benefit_victim"/> <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#external_cause"/> <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> @@ -1466,6 +1527,7 @@ <rdf:type rdf:resource="#plan_include_harm"/> <rdf:type rdf:resource="#plan_known"/> <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type> <owl:Class> <owl:complementOf> @@ -1508,12 +1570,11 @@ </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="#benefit_victim"/> <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#harm_caused_as_planned"/> <rdf:type rdf:resource="#high_foreseeability"/> @@ -1522,6 +1583,7 @@ <rdf:type rdf:resource="#negligent_mental_state"/> <rdf:type rdf:resource="#outrank_perpetrator"/> <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> <owl:Class> @@ -1593,12 +1655,11 @@ </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="#benefit_victim"/> <rdf:type rdf:resource="#external_cause"/> <rdf:type rdf:resource="#foresee_intervention"/> <rdf:type rdf:resource="#harm_caused_as_planned"/> @@ -1674,12 +1735,17 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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:achieve_goal> <a:achieve_goal rdf:ID="n22"> @@ -1702,6 +1768,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -1765,15 +1838,21 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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="n23"> + <rdf:type rdf:resource="#benefit_victim"/> <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#control_perpetrator"/> <rdf:type rdf:resource="#external_cause"/> @@ -1783,6 +1862,7 @@ <rdf:type rdf:resource="#intervening_contribution"/> <rdf:type rdf:resource="#necessary_for_harm"/> <rdf:type rdf:resource="#negligent_mental_state"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> <owl:Class> @@ -1854,8 +1934,6 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v1"/> </a:achieve_goal> <a:careful rdf:ID="n24"> @@ -1889,6 +1967,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#external_force"/> </owl:complementOf> </owl:Class> @@ -1917,16 +2002,22 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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:careful> <a:achieve_goal rdf:ID="n25"> <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#benefit_victim"/> <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#external_cause"/> <rdf:type rdf:resource="#external_force"/> @@ -1990,15 +2081,21 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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="#v0"/> </a:achieve_goal> <a:achieve_goal rdf:ID="n26"> + <rdf:type rdf:resource="#benefit_victim"/> <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#control_perpetrator"/> <rdf:type rdf:resource="#external_cause"/> @@ -2067,8 +2164,13 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v0"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#severity_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> </a:achieve_goal> <a:control_perpetrator rdf:ID="n27"> @@ -2099,6 +2201,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -2148,12 +2257,17 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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:control_perpetrator> <a:benefit_protagonist rdf:ID="n28"> @@ -2168,6 +2282,7 @@ <rdf:type rdf:resource="#outrank_perpetrator"/> <rdf:type rdf:resource="#plan_include_harm"/> <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#someone_else_cause_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> @@ -2180,6 +2295,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#control_perpetrator"/> </owl:complementOf> </owl:Class> @@ -2219,8 +2341,6 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v0"/> - <a:severity_harm rdf:resource="#v1"/> </a:benefit_protagonist> <a:careful rdf:ID="n29"> @@ -2253,6 +2373,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#foresee_intervention"/> </owl:complementOf> </owl:Class> @@ -2288,15 +2415,21 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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:careful> -<a:careful rdf:ID="n3"> +<a:benefit_victim rdf:ID="n3"> + <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#external_cause"/> <rdf:type rdf:resource="#foresee_intervention"/> <rdf:type rdf:resource="#intervening_contribution"/> @@ -2384,6 +2517,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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> @@ -2395,12 +2535,11 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v0"/> -</a:careful> +</a:benefit_victim> <a:achieve_goal rdf:ID="n30"> <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#benefit_victim"/> <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#foresee_intervention"/> <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> @@ -2464,16 +2603,22 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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="#v0"/> </a:achieve_goal> <a:achieve_goal rdf:ID="n31"> <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#benefit_victim"/> <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#foresee_intervention"/> <rdf:type rdf:resource="#goal_outweigh_harm"/> @@ -2484,6 +2629,7 @@ <rdf:type rdf:resource="#plan_known"/> <rdf:type rdf:resource="#produce_harm"/> <rdf:type rdf:resource="#reckless_mental_state"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type> <owl:Class> <owl:complementOf> @@ -2547,8 +2693,6 @@ </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="n32"> @@ -2566,6 +2710,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#control_perpetrator"/> </owl:complementOf> </owl:Class> @@ -2622,15 +2773,21 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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:achieve_goal> <a:benefit_protagonist rdf:ID="n33"> + <rdf:type rdf:resource="#benefit_victim"/> <rdf:type rdf:resource="#external_force"/> <rdf:type rdf:resource="#foresee_intervention"/> <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> @@ -2641,6 +2798,7 @@ <rdf:type rdf:resource="#plan_known"/> <rdf:type rdf:resource="#produce_harm"/> <rdf:type rdf:resource="#reckless_mental_state"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#someone_else_cause_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> @@ -2699,8 +2857,6 @@ </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="n34"> @@ -2717,9 +2873,17 @@ <rdf:type rdf:resource="#plan_include_harm"/> <rdf:type rdf:resource="#plan_known"/> <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#control_perpetrator"/> </owl:complementOf> </owl:Class> @@ -2766,8 +2930,6 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v0"/> - <a:severity_harm rdf:resource="#v1"/> </a:achieve_goal> <a:careful rdf:ID="n35"> @@ -2781,6 +2943,7 @@ <rdf:type rdf:resource="#monitor"/> <rdf:type rdf:resource="#negligent_mental_state"/> <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> <owl:Class> @@ -2799,6 +2962,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#control_perpetrator"/> </owl:complementOf> </owl:Class> @@ -2845,8 +3015,6 @@ </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="n36"> @@ -2875,6 +3043,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -2938,12 +3113,17 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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:control_perpetrator> <a:achieve_goal rdf:ID="n37"> @@ -2957,6 +3137,7 @@ <rdf:type rdf:resource="#neither_mental_state"/> <rdf:type rdf:resource="#outrank_perpetrator"/> <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> <owl:Class> @@ -2968,6 +3149,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -3021,8 +3209,6 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v0"/> - <a:severity_harm rdf:resource="#v1"/> </a:achieve_goal> <a:external_force rdf:ID="n38"> @@ -3050,6 +3236,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -3113,6 +3306,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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> @@ -3124,8 +3324,6 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v0"/> - <a:severity_harm rdf:resource="#v0"/> </a:external_force> <a:benefit_protagonist rdf:ID="n39"> @@ -3149,6 +3347,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#external_cause"/> </owl:complementOf> </owl:Class> @@ -3205,12 +3410,17 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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:achieve_goal rdf:ID="n4"> @@ -3232,6 +3442,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -3295,6 +3512,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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> @@ -3306,11 +3530,10 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v0"/> - <a:severity_harm rdf:resource="#v0"/> </a:achieve_goal> -<a:external_cause rdf:ID="n40"> +<a:benefit_victim rdf:ID="n40"> + <rdf:type rdf:resource="#external_cause"/> <rdf:type rdf:resource="#foresee_intervention"/> <rdf:type rdf:resource="#harm_caused_as_planned"/> <rdf:type rdf:resource="#intervening_contribution"/> @@ -3391,9 +3614,14 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v0"/> -</a:external_cause> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#severity_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> +</a:benefit_victim> <a:achieve_goal rdf:ID="n41"> <rdf:type rdf:resource="#careful"/> @@ -3413,6 +3641,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#external_cause"/> </owl:complementOf> </owl:Class> @@ -3483,6 +3718,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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> @@ -3494,11 +3736,10 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v0"/> - <a:severity_harm rdf:resource="#v0"/> </a:achieve_goal> -<a:careful rdf:ID="n42"> +<a:benefit_victim rdf:ID="n42"> + <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#external_force"/> <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> <rdf:type rdf:resource="#harm_caused_as_planned"/> @@ -3575,15 +3816,21 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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:benefit_victim> <a:benefit_protagonist rdf:ID="n43"> + <rdf:type rdf:resource="#benefit_victim"/> <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#external_cause"/> <rdf:type rdf:resource="#external_force"/> @@ -3598,6 +3845,7 @@ <rdf:type rdf:resource="#plan_known"/> <rdf:type rdf:resource="#produce_harm"/> <rdf:type rdf:resource="#reckless_mental_state"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> <owl:Class> @@ -3634,8 +3882,6 @@ </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="n44"> @@ -3652,6 +3898,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -3719,11 +3972,17 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v0"/> - <a:severity_harm rdf:resource="#v0"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#severity_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> </a:achieve_goal> -<a:control_perpetrator rdf:ID="n45"> +<a:benefit_victim rdf:ID="n45"> + <rdf:type rdf:resource="#control_perpetrator"/> <rdf:type rdf:resource="#external_cause"/> <rdf:type rdf:resource="#external_force"/> <rdf:type rdf:resource="#foresee_intervention"/> @@ -3733,6 +3992,7 @@ <rdf:type rdf:resource="#monitor"/> <rdf:type rdf:resource="#neither_mental_state"/> <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#someone_else_cause_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> @@ -3798,9 +4058,7 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v1"/> -</a:control_perpetrator> +</a:benefit_victim> <a:achieve_goal rdf:ID="n46"> <rdf:type rdf:resource="#benefit_protagonist"/> @@ -3814,6 +4072,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -3884,6 +4149,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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> @@ -3895,11 +4167,10 @@ </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="n47"> + <rdf:type rdf:resource="#benefit_victim"/> <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#control_perpetrator"/> <rdf:type rdf:resource="#external_cause"/> @@ -3952,15 +4223,21 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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="#v0"/> </a:benefit_protagonist> <a:benefit_protagonist rdf:ID="n48"> + <rdf:type rdf:resource="#benefit_victim"/> <rdf:type rdf:resource="#external_cause"/> <rdf:type rdf:resource="#foresee_intervention"/> <rdf:type rdf:resource="#goal_achieveable_less_harmful"/> @@ -3972,6 +4249,7 @@ <rdf:type rdf:resource="#negligent_mental_state"/> <rdf:type rdf:resource="#outrank_perpetrator"/> <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#someone_else_cause_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> @@ -4023,8 +4301,6 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v1"/> </a:benefit_protagonist> <a:external_cause rdf:ID="n49"> @@ -4054,6 +4330,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -4114,11 +4397,17 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v0"/> - <a:severity_harm rdf:resource="#v0"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#severity_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> </a:external_cause> -<a:careful rdf:ID="n5"> +<a:benefit_victim rdf:ID="n5"> + <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#external_force"/> <rdf:type rdf:resource="#foresee_intervention"/> <rdf:type rdf:resource="#harm_caused_as_planned"/> @@ -4130,6 +4419,7 @@ <rdf:type rdf:resource="#plan_include_harm"/> <rdf:type rdf:resource="#plan_known"/> <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#someone_else_cause_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> @@ -4181,11 +4471,10 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v1"/> -</a:careful> +</a:benefit_victim> <a:achieve_goal rdf:ID="n50"> + <rdf:type rdf:resource="#benefit_victim"/> <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#goal_outweigh_harm"/> <rdf:type rdf:resource="#high_foreseeability"/> @@ -4195,6 +4484,7 @@ <rdf:type rdf:resource="#plan_include_harm"/> <rdf:type rdf:resource="#plan_known"/> <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> <owl:Class> @@ -4266,8 +4556,6 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v1"/> </a:achieve_goal> <a:control_perpetrator rdf:ID="n51"> @@ -4299,6 +4587,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -4345,8 +4640,13 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v0"/> - <a:severity_harm rdf:resource="#v0"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#severity_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> </a:control_perpetrator> <a:benefit_protagonist rdf:ID="n52"> @@ -4370,6 +4670,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -4419,6 +4726,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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> @@ -4430,8 +4744,6 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v0"/> - <a:severity_harm rdf:resource="#v0"/> </a:benefit_protagonist> <a:control_perpetrator rdf:ID="n53"> @@ -4460,6 +4772,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -4523,12 +4842,17 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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:control_perpetrator> <a:achieve_goal rdf:ID="n54"> @@ -4552,6 +4876,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#external_cause"/> </owl:complementOf> </owl:Class> @@ -4608,12 +4939,17 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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="n55"> @@ -4639,6 +4975,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#external_cause"/> </owl:complementOf> </owl:Class> @@ -4674,6 +5017,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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> @@ -4685,11 +5035,10 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v0"/> - <a:severity_harm rdf:resource="#v0"/> </a:achieve_goal> -<a:external_cause rdf:ID="n56"> +<a:benefit_victim rdf:ID="n56"> + <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"/> @@ -4699,6 +5048,7 @@ <rdf:type rdf:resource="#outrank_perpetrator"/> <rdf:type rdf:resource="#produce_harm"/> <rdf:type rdf:resource="#reckless_mental_state"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type> <owl:Class> <owl:complementOf> @@ -4776,9 +5126,7 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v1"/> -</a:external_cause> +</a:benefit_victim> <a:careful rdf:ID="n57"> <rdf:type rdf:resource="#control_perpetrator"/> @@ -4791,6 +5139,7 @@ <rdf:type rdf:resource="#neither_mental_state"/> <rdf:type rdf:resource="#plan_include_harm"/> <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type> <owl:Class> <owl:complementOf> @@ -4808,6 +5157,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#goal_outweigh_harm"/> </owl:complementOf> </owl:Class> @@ -4861,11 +5217,10 @@ </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="n58"> +<a:benefit_victim rdf:ID="n58"> + <rdf:type rdf:resource="#control_perpetrator"/> <rdf:type rdf:resource="#external_cause"/> <rdf:type rdf:resource="#low_foreseeability"/> <rdf:type rdf:resource="#monitor"/> @@ -4954,13 +5309,18 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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="#v0"/> -</a:control_perpetrator> +</a:benefit_victim> <a:achieve_goal rdf:ID="n59"> <rdf:type rdf:resource="#control_perpetrator"/> @@ -4985,6 +5345,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -5027,12 +5394,17 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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="n6"> @@ -5051,10 +5423,18 @@ <rdf:type rdf:resource="#outrank_perpetrator"/> <rdf:type rdf:resource="#plan_known"/> <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#sufficient_for_harm"/> <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#external_cause"/> </owl:complementOf> </owl:Class> @@ -5080,11 +5460,10 @@ </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="n60"> + <rdf:type rdf:resource="#benefit_victim"/> <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#control_perpetrator"/> <rdf:type rdf:resource="#external_cause"/> @@ -5148,6 +5527,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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> @@ -5159,11 +5545,10 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v0"/> </a:benefit_protagonist> <a:benefit_protagonist rdf:ID="n61"> + <rdf:type rdf:resource="#benefit_victim"/> <rdf:type rdf:resource="#careful"/> <rdf:type rdf:resource="#external_force"/> <rdf:type rdf:resource="#goal_outweigh_harm"/> @@ -5239,6 +5624,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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> @@ -5250,8 +5642,6 @@ </owl:complementOf> </owl:Class> </rdf:type> - <a:benefit_victim rdf:resource="#v1"/> - <a:severity_harm rdf:resource="#v0"/> </a:benefit_protagonist> <a:achieve_goal rdf:ID="n62"> @@ -5273,6 +5663,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#control_perpetrator"/> </owl:complementOf> </owl:Class> @@ -5343,12 +5740,17 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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:achieve_goal> <a:achieve_goal rdf:ID="n63"> @@ -5368,6 +5770,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -5410,12 +5819,17 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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="n64"> @@ -5444,6 +5858,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl:Class> + <owl:complementOf> <owl:Class rdf:about="#careful"/> </owl:complementOf> </owl:Class> @@ -5507,12 +5928,17 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#severity_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:control_perpetrator> <a:careful rdf:ID="n65"> @@ -5525,6 +5951,7 @@ <rdf:type rdf:resource="#negligent_mental_state"/> <rdf:type rdf:resource="#plan_include_harm"/> <rdf:type rdf:resource="#produce_harm"/> + <rdf:type rdf:resource="#severity_harm"/> <rdf:type rdf:resource="#someone_else_cause_harm"/> <rdf:type> <owl:Class> @@ -5543,6 +5970,13 @@ <rdf:type> <owl:Class> <owl:complementOf> + <owl:Class rdf:about="#benefit_vic... [truncated message content] |
From: <ku...@us...> - 2007-09-05 15:44:15
|
Revision: 134 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=134&view=rev Author: kurzum Date: 2007-09-05 08:44:09 -0700 (Wed, 05 Sep 2007) Log Message: ----------- Added Paths: ----------- trunk/examples/moral_reasoner/fixed/moral_43instances_complex_new.owl trunk/examples/moral_reasoner/fixed/moral_43instances_simple_new.owl Added: trunk/examples/moral_reasoner/fixed/moral_43instances_complex_new.owl =================================================================== --- trunk/examples/moral_reasoner/fixed/moral_43instances_complex_new.owl (rev 0) +++ trunk/examples/moral_reasoner/fixed/moral_43instances_complex_new.owl 2007-09-05 15:44:09 UTC (rev 134) @@ -0,0 +1,3158 @@ @@ Diff output truncated at 100000 characters. @@ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ku...@us...> - 2007-09-05 13:23:27
|
Revision: 133 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=133&view=rev Author: kurzum Date: 2007-09-05 06:23:24 -0700 (Wed, 05 Sep 2007) Log Message: ----------- 43 examples Added Paths: ----------- trunk/examples/moral_reasoner/fixed/moral_43_examples_complex_owl.conf trunk/examples/moral_reasoner/fixed/moral_43_examples_owl.conf trunk/examples/moral_reasoner/fixed/moral_43instances.owl trunk/examples/moral_reasoner/fixed/moral_43instances_complex.owl Added: trunk/examples/moral_reasoner/fixed/moral_43_examples_complex_owl.conf =================================================================== --- trunk/examples/moral_reasoner/fixed/moral_43_examples_complex_owl.conf (rev 0) +++ trunk/examples/moral_reasoner/fixed/moral_43_examples_complex_owl.conf 2007-09-05 13:23:24 UTC (rev 133) @@ -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_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). 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/fixed/moral_43_examples_owl.conf =================================================================== --- trunk/examples/moral_reasoner/fixed/moral_43_examples_owl.conf (rev 0) +++ trunk/examples/moral_reasoner/fixed/moral_43_examples_owl.conf 2007-09-05 13:23:24 UTC (rev 133) @@ -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). Added: trunk/examples/moral_reasoner/fixed/moral_43instances.owl =================================================================== --- trunk/examples/moral_reasoner/fixed/moral_43instances.owl (rev 0) +++ trunk/examples/moral_reasoner/fixed/moral_43instances.owl 2007-09-05 13:23:24 UTC (rev 133) @@ -0,0 +1,4186 @@ +<?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:Class rdf:about="#severity_harm"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + <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="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:Class rdf:about="#severity_harm"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + <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="#benefit_victim"/> + </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="#severity_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:achieve_goal> + +<a:benefit_victim rdf:ID="n1"> + <rdf:type rdf:resource="#control_perpetrator"/> + <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="#severity_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> + +<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="#benefit_victim"/> + </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> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#severity_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> +</a:achieve_goal> + +<a:benefit_protagonist rdf:ID="n2"> + <rdf:type rdf:resource="#benefit_victim"/> + <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 rdf:resource="#severity_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_protagonist> + +<a:benefit_victim rdf:ID="n3"> + <rdf:type rdf:resource="#careful"/> + <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="#severity_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> + +<a:benefit_victim rdf:ID="n5"> + <rdf:type rdf:resource="#careful"/> + <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="#severity_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> + +<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="#severity_harm"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </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="#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:achieve_goal> + +<a:benefit_protagonist rdf:ID="n7"> + <rdf:type rdf:resource="#benefit_victim"/> + <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="#severity_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="#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_protagonist> + +<a:achieve_goal rdf:ID="n8"> + <rdf:type rdf:resource="#benefit_victim"/> + <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="#severity_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="#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: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="#benefit_victim"/> + </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="#severity_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_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="#severity_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="#benefit_victim"/> + </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:external_force> + +<a:achieve_goal rdf:ID="n91"> + <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#benefit_victim"/> + <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="#severity_harm"/> + <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: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="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + </rdf:type> + <rdf:type> + <owl... [truncated message content] |
From: <ku...@us...> - 2007-09-05 13:12:28
|
Revision: 132 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=132&view=rev Author: kurzum Date: 2007-09-05 06:12:25 -0700 (Wed, 05 Sep 2007) Log Message: ----------- moral example fix Added Paths: ----------- trunk/examples/moral_reasoner/fixed/ trunk/examples/moral_reasoner/fixed/moral.owl trunk/examples/moral_reasoner/fixed/moral_all_examples.conf trunk/examples/moral_reasoner/fixed/moral_all_examples_complex.conf trunk/examples/moral_reasoner/fixed/moral_all_examples_complex_owl.conf trunk/examples/moral_reasoner/fixed/moral_all_examples_owl.conf Added: trunk/examples/moral_reasoner/fixed/moral.owl =================================================================== --- trunk/examples/moral_reasoner/fixed/moral.owl (rev 0) +++ trunk/examples/moral_reasoner/fixed/moral.owl 2007-09-05 13:12:25 UTC (rev 132) @@ -0,0 +1,18216 @@ +<?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:Class rdf:about="#severity_harm"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + <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:Class rdf:about="#severity_harm"/> + <owl:Class> + <owl:intersectionOf rdf:parseType="Collection"> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </owl:complementOf> + </owl:Class> + <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="#benefit_victim"/> + </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="#severity_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:achieve_goal> + +<a:benefit_victim rdf:ID="n1"> + <rdf:type rdf:resource="#control_perpetrator"/> + <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="#severity_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> + +<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="#benefit_victim"/> + </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> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#severity_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> +</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="#severity_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_victim"/> + </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_protagonist> + +<a:benefit_victim rdf:ID="n12"> + <rdf:type rdf:resource="#external_cause"/> + <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="#severity_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> + +<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="#severity_harm"/> + <rdf:type rdf:resource="#sufficient_for_harm"/> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#benefit_victim"/> + </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="#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:achieve_goal> + +<a:achieve_goal rdf:ID="n14"> + <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#benefit_victim"/> + <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="#severity_harm"/> + <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: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="#benefit_victim"/> + </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="#severity_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_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="#benefit_victim"/> + </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> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#severity_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> +</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="#severity_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="#benefit_victim"/> + </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:careful> + +<a:benefit_victim rdf:ID="n18"> + <rdf:type rdf:resource="#control_perpetrator"/> + <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="#severity_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> + +<a:achieve_goal rdf:ID="n19"> + <rdf:type rdf:resource="#benefit_victim"/> + <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> + <rdf:type> + <owl:Class> + <owl:complementOf> + <owl:Class rdf:about="#severity_harm"/> + </owl:complementOf> + </owl:Class> + </rdf:type> +</a:achieve_goal> + +<a:benefit_protagonist rdf:ID="n2"> + <rdf:type rdf:resource="#benefit_victim"/> + <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 rdf:resource="#severity_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_protagonist> + +<a:achieve_goal rdf:ID="n20"> + <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#benefit_victim"/> + <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="#severity_harm"/> + <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:achieve_goal> + +<a:achieve_goal rdf:ID="n21"> + <rdf:type rdf:resource="#benefit_protagonist"/> + <rdf:type rdf:resource="#benefit_victim"/> + <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="#severity_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:achieve_goal> + +<a:achieve_goal rdf:ID="n22"> + <rdf:type rdf:resource="#external_cause"/> + <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="#neither_mental_state"/> + <rdf:type rdf:resource="#plan_known"/> + <rdf:type rdf:resource... [truncated message content] |
From: <ku...@us...> - 2007-09-05 11:34:29
|
Revision: 131 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=131&view=rev Author: kurzum Date: 2007-09-05 04:34:25 -0700 (Wed, 05 Sep 2007) Log Message: ----------- updated all comments for javadoc Modified Paths: -------------- 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 Modified: trunk/src/dl-learner/org/dllearner/modules/sparql/Cache.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/Cache.java 2007-09-05 09:59:01 UTC (rev 130) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/Cache.java 2007-09-05 11:34:25 UTC (rev 131) @@ -1,3 +1,22 @@ +/** + * Copyright (C) 2007, Sebastian Hellmann + * + * 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.modules.sparql; import java.io.File; @@ -7,11 +26,23 @@ import java.io.ObjectOutputStream; import java.io.Serializable; import java.net.URLEncoder; - +/** + * + * This is a primitive cache. + * The objects of this class can be either the cache itself or just on entry in the cache + * + * the cache remembers: a timestamp, the original sparql-query, the result + * key is the subject http://dbpedia.org/resource/Angela_Merkel which is first urlencoded + * and so serves as the hash for the filename. + * Cache validates if timestamp too old and Sparql-Query the same + * before returning the SPARQL xml-result + * + * @author Sebastian Hellmann + * + */ 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"; @@ -21,7 +52,13 @@ long multiplier=24*60*60*1000;//h m s ms String sparqlquery=""; - //constructor for the cache itself + + /** + * Constructor for the cache itself. + * Called once at the beginning + * + * @param path Where the base path to the cache is + */ public Cache(String path){ this.basedir=path+File.separator; if(!new File(path).exists()) @@ -29,14 +66,28 @@ } -// constructor for single cache object(one entry) - public Cache(String c, String sparql){ - this.content=c; +// + /** + * Constructor for single cache object(one entry) + * + * @param content the sparql xml result + * @param sparql the sparql query + */ + public Cache(String content, String sparql){ + this.content=content; this.sparqlquery=sparql; this.timestamp=System.currentTimeMillis(); } + + /** + * use only on the cache object describing the cache itself + * + * @param key the individual + * @param sparql the sparql query + * @return the cached sparql result or null + */ public String get(String key, String sparql){ //System.out.println("get From "+key); String ret=null; @@ -51,7 +102,16 @@ ret=c.content; }catch (Exception e) {e.printStackTrace();} return ret; - }; + } + + /** + * + * constructor for single cache object(one entry) + * + * @param key the individual + * @param content the sparql result + * @param sparql the sparql query + */ public void put(String key, String content, String sparql){ //System.out.println("put into "+key); Cache c=new Cache(content,sparql); @@ -59,6 +119,12 @@ } + /** + * to normalize the filenames + * + * @param key + * @return + */ String makeFilename(String key){ String ret=""; try{ @@ -66,12 +132,24 @@ }catch (Exception e) {e.printStackTrace();} return ret; } + + /** + * how old is the result + * @return + */ boolean checkFreshness(){ if((System.currentTimeMillis()-this.timestamp)<=(daysoffreshness*multiplier)) //fresh return true; else return false; } + + + /** + * some sparql query + * @param sparql + * @return + */ boolean validate(String sparql){ if(this.sparqlquery.equals(sparql)) //valid @@ -79,6 +157,10 @@ else return false; } + /** + * makes a new file if none exists + * @param Filename + */ public void checkFile(String Filename){ if(!new File(Filename).exists()){ try{ @@ -89,6 +171,13 @@ } + /** + * internal saving function + * puts a cache object into a file + * + * @param Filename + * @param content + */ public void putIntoFile(String Filename,Cache content){ try{ //FileWriter fw=new FileWriter(new File(Filename),true); @@ -100,6 +189,12 @@ }catch (Exception e) {System.out.println("Not in cache creating: "+Filename);} } + /** + * internal retrieval function + * + * @param Filename + * @return one entry object + */ public Cache readFromFile(String Filename){ Cache content=null; try{ Modified: trunk/src/dl-learner/org/dllearner/modules/sparql/OntologyCollector.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/OntologyCollector.java 2007-09-05 09:59:01 UTC (rev 130) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/OntologyCollector.java 2007-09-05 11:34:25 UTC (rev 131) @@ -1,3 +1,22 @@ +/** + * Copyright (C) 2007, Sebastian Hellmann + * + * 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.modules.sparql; import java.net.InetAddress; @@ -5,6 +24,14 @@ import java.util.HashSet; import java.util.Iterator; +/** + * This class collects the ontology from dbpedia, + * everything is saved in hashsets, so the doublettes are taken care of + * + * + * @author Sebastian Hellmann + * + */ public class OntologyCollector { boolean print_flag=false; @@ -20,6 +47,7 @@ HashSet<String> instances; HashSet<String> triples; + // some namespaces 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"; @@ -35,6 +63,16 @@ "http://dbpedia.org/class/"}; //TODO FEHLER hier fehlt yago + /** + * + * + * @param subjectList + * @param numberOfRecursions + * @param filterMode + * @param FilterPredList + * @param FilterObjList + * @param defClasses + */ public OntologyCollector(String[] subjectList,int numberOfRecursions, int filterMode, String[] FilterPredList,String[] FilterObjList,String[] defClasses){ this.subjectList=subjectList; @@ -59,6 +97,12 @@ }catch (Exception e) {e.printStackTrace();} } + /** + * first collects the ontology + * then types everything so it becomes owl-dl + * + * @return all triples in n-triple format + */ public String collectOntology(){ getRecursiveList(subjectList, numberOfRecursions); finalize(); @@ -70,6 +114,11 @@ return ret; } + /** + * calls getRecursive for each subject in list + * @param subjects + * @param NumberofRecursions + */ public void getRecursiveList(String[] subjects,int NumberofRecursions){ for (int i = 0; i < subjects.length; i++) { getRecursive(subjects[i], NumberofRecursions); @@ -78,6 +127,12 @@ } + /** + * gets all triples until numberofrecursion-- gets 0 + * + * @param StartingSubject + * @param NumberofRecursions + */ public void getRecursive(String StartingSubject,int NumberofRecursions){ System.out.print("SparqlModul: Depth: "+NumberofRecursions+" @ "+StartingSubject+" "); if(NumberofRecursions<=0) @@ -90,8 +145,10 @@ String sparql=q.makeQueryFilter(StartingSubject,this.sf); p(sparql); p("*******************"); + // checks cache String FromCache=c.get(StartingSubject, sparql); String xml; + // if not in cache get it from dbpedia if(FromCache==null){ xml=s.sendAndReceive(ia, 8890, sparql); c.put(StartingSubject, xml, sparql); @@ -103,6 +160,7 @@ } p(xml); p("***********************"); + // get new Subjects String[] newSubjects=processResult(StartingSubject,xml); for (int i = 0; (i < newSubjects.length)&& NumberofRecursions!=0; i++) { @@ -114,6 +172,14 @@ } + /** + * process the sparql result xml in a simple manner + * + * + * @param subject + * @param xml + * @return list of new individuals + */ public String[] processResult(String subject,String xml){ //TODO if result is empty, catch exceptions String one="<binding name=\"predicate\"><uri>"; @@ -131,12 +197,14 @@ xml=xml.substring(xml.indexOf(two)+two.length()); objtmp=xml.substring(0,xml.indexOf(end)); - + // writes the triples and resources in the hashsets + // also fills the arraylist al processTriples(subject, predtmp, objtmp,al); //System.out.println(al.size()); } + // convert al to list Object[] o=al.toArray(); String[] ret=new String[o.length]; for (int i = 0; i < o.length; i++) { @@ -146,7 +214,20 @@ //return (String[])al.toArray(); //System.out.println(xml); } - public void processTriples(String s,String p, String o,ArrayList<String> al){ + + + + /** + * + * writes the triples and resources in the hashsets + * also fills the arraylist al with new individals for further processing + * @param s + * @param p + * @param o + * @param al + */ + public void processTriples(String s,String p, String o,ArrayList<String> al){ + // the next two lines bump out some inconsistencies within dbpedia String t="/Category"; if(s.equals(t) || o.equals(t))return ; @@ -169,6 +250,7 @@ //save for further processing al.add(o); + // type classes if(isClass(o)){ classes.add(o); if(isClass(s))p=subclass; @@ -190,7 +272,15 @@ return; } -// also makes subclass property between classes +// + /** + * also makes subclass property between classes + * + * @param s + * @param p + * @param o + * @return triple in the n triple notation + */ public String makeTriples(String s,String p, String o){ //s=replaceNamespace(s); //p=replaceNamespace(p); @@ -200,6 +290,12 @@ return ret; } + /** + * decides if an object is treated as a class + * + * @param obj + * @return true if obj is in the defaultClassesList + */ public boolean isClass(String obj){ boolean retval=false; @@ -209,7 +305,10 @@ return retval; } - + + /** + * @see java.lang.Object#finalize() + */ @Override public void finalize(){ typeProperties(); @@ -253,6 +352,10 @@ } } + /** + * debug print turn on print_flag + * @param s + */ public void p(String s){ if(print_flag) System.out.println(s); Modified: trunk/src/dl-learner/org/dllearner/modules/sparql/PartialOntology.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/PartialOntology.java 2007-09-05 09:59:01 UTC (rev 130) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/PartialOntology.java 2007-09-05 11:34:25 UTC (rev 131) @@ -1,3 +1,22 @@ +/** + * Copyright (C) 2007, Sebastian Hellmann + * + * 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.modules.sparql; import java.io.File; @@ -17,6 +36,13 @@ import org.dllearner.modules.PreprocessingModule; +/** + * + * old class, originally thought to extract just the owl-dl ontology from dbpedia + * + * @author Sebastian Hellmann + * + */ public class PartialOntology implements PreprocessingModule { SimpleHTTPRequest s; QueryMaker q; Modified: trunk/src/dl-learner/org/dllearner/modules/sparql/QueryMaker.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/QueryMaker.java 2007-09-05 09:59:01 UTC (rev 130) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/QueryMaker.java 2007-09-05 11:34:25 UTC (rev 131) @@ -1,5 +1,31 @@ +/** + * Copyright (C) 2007, Sebastian Hellmann + * + * 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.modules.sparql; +/** + * + * This class produces sparql queries + * + * @author Sebastian Hellmann + * + */ public class QueryMaker { //Good /*public static String owl ="http://www.w3.org/2002/07/owl#"; @@ -19,13 +45,14 @@ public static String sameAs="http://www.w3.org/2002/07/owl#sameAs"; public static String reference="http://dbpedia.org/property/reference";*/ - - int tempyago=0; - - - + /** + * reads all the options and makes the sparql query accordingly + * @param subject + * @param sf special object encapsulating all options + * @return sparql query + */ public String makeQueryFilter(String subject, SparqlFilter sf){ @@ -75,9 +102,21 @@ return ret; }*/ + /** + * add a new object filter + * (objects are filtered out of sparql result) + * @param ns namespace + * @return + */ public String filterObject(String ns){ return "&&( !regex((?object), '"+ns+"') )"; } + /** + * add a new object filter + * (objects are filtered out of sparql result) + * @param ns namespace + * * @return + */ public String filterPredicate(String ns){ return "&&( !regex(str(?predicate), '"+ns+"') )"; } Modified: trunk/src/dl-learner/org/dllearner/modules/sparql/SimpleHTTPRequest.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/SimpleHTTPRequest.java 2007-09-05 09:59:01 UTC (rev 130) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/SimpleHTTPRequest.java 2007-09-05 11:34:25 UTC (rev 131) @@ -1,3 +1,22 @@ +/** + * Copyright (C) 2007, Sebastian Hellmann + * + * 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.modules.sparql; import java.io.BufferedInputStream; @@ -9,6 +28,15 @@ +/** + * + * This class makes a simple http request + * the dbpedia url is hardcoded + * + * @author Sebastian Hellmann + * + * + */ public class SimpleHTTPRequest { static final char value[]={13,10}; static final String cut=new String(value); Modified: trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlFilter.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlFilter.java 2007-09-05 09:59:01 UTC (rev 130) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlFilter.java 2007-09-05 11:34:25 UTC (rev 131) @@ -1,5 +1,33 @@ +/** + * Copyright (C) 2007, Sebastian Hellmann + * + * 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.modules.sparql; +/** + * + * + * encapsulates all the options + * see the documentation for more help + * + * @author Sebastian Hellmann + * + */ public class SparqlFilter { public int mode=0; // 0 yago, 1 only cat, 2 skos+cat @@ -63,7 +91,7 @@ ObjFilter=onlyCatObjFilterDefault; PredFilter=onlyCatPredFilterDefault; break; - case 2: + case 2: // there are some other changes to, which are made directly in other functions ObjFilter=skosObjFilterDefault; PredFilter=skosPredFilterDefault; break; Modified: trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlModule.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlModule.java 2007-09-05 09:59:01 UTC (rev 130) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/SparqlModule.java 2007-09-05 11:34:25 UTC (rev 131) @@ -1,3 +1,22 @@ +/** + * Copyright (C) 2007, Sebastian Hellmann + * + * 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.modules.sparql; import java.io.File; @@ -17,6 +36,13 @@ import org.dllearner.modules.PreprocessingModule; +/** + * implements the module + * like a main function + * + * @author Sebastian Hellmann + * + */ public class SparqlModule implements PreprocessingModule { FileWriter fw; @@ -27,10 +53,19 @@ +/** +* @return current version + */ public String getModuleName(){ return "Sparql Module v0.3"; } + /** + * + * implements the required function + * sets up everything, reads the option collects the ontology, writes it to a file + * + */ public void preprocess(KB kb, Map<AtomicConcept, SortedSet<Individual>> positiveExamples, Map<AtomicConcept, SortedSet<Individual>> negativeExamples, @@ -93,7 +128,7 @@ } }// end for System.out.println("SparqlModul: Processing finished"); - // subject for which information is drafted from wikipedia + // subjects for which information is drafted from wikipedia String[] subjectList=makeSubjectList(prefix, positiveExamples, negativeExamples); Modified: trunk/src/dl-learner/org/dllearner/modules/sparql/Util.java =================================================================== --- trunk/src/dl-learner/org/dllearner/modules/sparql/Util.java 2007-09-05 09:59:01 UTC (rev 130) +++ trunk/src/dl-learner/org/dllearner/modules/sparql/Util.java 2007-09-05 11:34:25 UTC (rev 131) @@ -1,3 +1,22 @@ +/** + * Copyright (C) 2007, Sebastian Hellmann + * + * 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.modules.sparql; import java.util.HashSet; @@ -4,9 +23,21 @@ import java.util.Iterator; import java.util.Set; +/** + * mainly converts datatypes + * + * @author Sebastian Hellmann + * + */ public class Util { + /** + * easy conversion + * + * @param s + * @return + */ public static String[] setToArray(Set<String> s){ if(s==null)return null; String[] ret=new String[s.size()]; @@ -20,6 +51,11 @@ } + /** + * Warning use only for visualization + * @param s + * @return String without certain namespaces + */ public static String replaceNamespace(String s){ s=s.replace("http://dbpedia.org/class/yago/", "yago:"); s=s.replace("http://dbpedia.org/class/", "yago2:"); @@ -32,6 +68,10 @@ return s; } + /** + * prints a hashset to stdout + * @param h + */ public static void printHashSet(HashSet<String> h){ Iterator<String> it=h.iterator(); String current=""; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ku...@us...> - 2007-09-05 09:59:04
|
Revision: 130 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=130&view=rev Author: kurzum Date: 2007-09-05 02:59:01 -0700 (Wed, 05 Sep 2007) Log Message: ----------- windows script Added Paths: ----------- trunk/examples/yinyang_files/run.bat Added: trunk/examples/yinyang_files/run.bat =================================================================== --- trunk/examples/yinyang_files/run.bat (rev 0) +++ trunk/examples/yinyang_files/run.bat 2007-09-05 09:59:01 UTC (rev 130) @@ -0,0 +1,2 @@ +SET YINYANG_BINARY_PATH=../../../../software/yinyang/binaries +java -cp %YINYANG_BINARY_PATH%/yinyang.jar;%YINYANG_BINARY_PATH%/rdf2kb.jar;%YINYANG_BINARY_PATH%/abstraction.jar;%YINYANG_BINARY_PATH%/kb.jar;%YINYANG_BINARY_PATH%/learningProblem.jar;%YINYANG_BINARY_PATH%/logger.jar;%YINYANG_BINARY_PATH%/dig1.1-reasoners.jar;%YINYANG_BINARY_PATH%/dig1.1-xmlbeans.jar;%YINYANG_BINARY_PATH%/jaxen-1.1-beta-2.jar;%YINYANG_BINARY_PATH%/xbean.jar;%YINYANG_BINARY_PATH%/xbean_xpath.jar;%YINYANG_BINARY_PATH%/antlr-2.7.5.jar;%YINYANG_BINARY_PATH%/commons-logging.jar;%YINYANG_BINARY_PATH%/concurrent.jar;%YINYANG_BINARY_PATH%/icu4j_3_4.jar;%YINYANG_BINARY_PATH%/iri.jar;%YINYANG_BINARY_PATH%/jena.jar;%YINYANG_BINARY_PATH%/json.jar;%YINYANG_BINARY_PATH%/junit.jar;%YINYANG_BINARY_PATH%/log4j-1.2.12.jar;%YINYANG_BINARY_PATH%/xercesImpl.jar;%YINYANG_BINARY_PATH%/xml-apis.jar it.uniba.di.dl.learningsystems.control.LearningController %* %* \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-09-05 09:27:29
|
Revision: 129 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=129&view=rev Author: jenslehmann Date: 2007-09-05 02:27:23 -0700 (Wed, 05 Sep 2007) Log Message: ----------- added moral reasoner files for YinYang Added Paths: ----------- trunk/examples/yinyang_files/moralComplexLearningProblem.xml trunk/examples/yinyang_files/moralNegatives.txt trunk/examples/yinyang_files/moralPositives.txt trunk/examples/yinyang_files/moralSimpleLearningProblem.xml Added: trunk/examples/yinyang_files/moralComplexLearningProblem.xml =================================================================== --- trunk/examples/yinyang_files/moralComplexLearningProblem.xml (rev 0) +++ trunk/examples/yinyang_files/moralComplexLearningProblem.xml 2007-09-05 09:27:23 UTC (rev 129) @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> + + +<LearningProblem + +xmlns="http://www.di.uniba.it/learning" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +xsi:schemaLocation="http://www.di.uniba.it/learning/../LearningProblem.xsd" + +knowledgeBase="file:../moral_reasoner/moral_43instances_complex.owl" +positiveExampleSource="moralPositives.txt" +negativeExampleSource="moralNegatives.txt" +abstractionClass="it.uniba.di.dl.abstraction.KBoundMSCApproximatorRefinement" +learn="true" +normalize="true" +consistencyCheck="false" +reasonerURL ="http://localhost:8081" + + +> + +<Experiments/> +<Namespaces> + <Namespace uri="http://localhost/foo#"></Namespace> +</Namespaces> + +</LearningProblem> Added: trunk/examples/yinyang_files/moralNegatives.txt =================================================================== --- trunk/examples/yinyang_files/moralNegatives.txt (rev 0) +++ trunk/examples/yinyang_files/moralNegatives.txt 2007-09-05 09:27:23 UTC (rev 129) @@ -0,0 +1,20 @@ +http://localhost/foo#n0 +http://localhost/foo#n1 +http://localhost/foo#n2 +http://localhost/foo#n3 +http://localhost/foo#n5 +http://localhost/foo#n6 +http://localhost/foo#n7 +http://localhost/foo#n8 +http://localhost/foo#n9 +http://localhost/foo#n10 +http://localhost/foo#n90 +http://localhost/foo#n91 +http://localhost/foo#n92 +http://localhost/foo#n93 +http://localhost/foo#n94 +http://localhost/foo#n95 +http://localhost/foo#n96 +http://localhost/foo#n97 +http://localhost/foo#n98 +http://localhost/foo#n99 Added: trunk/examples/yinyang_files/moralPositives.txt =================================================================== --- trunk/examples/yinyang_files/moralPositives.txt (rev 0) +++ trunk/examples/yinyang_files/moralPositives.txt 2007-09-05 09:27:23 UTC (rev 129) @@ -0,0 +1,23 @@ +http://localhost/foo#p0 +http://localhost/foo#p1 +http://localhost/foo#p2 +http://localhost/foo#p3 +http://localhost/foo#p4 +http://localhost/foo#p5 +http://localhost/foo#p6 +http://localhost/foo#p7 +http://localhost/foo#p8 +http://localhost/foo#p9 +http://localhost/foo#p10 +http://localhost/foo#p90 +http://localhost/foo#p91 +http://localhost/foo#p92 +http://localhost/foo#p93 +http://localhost/foo#p94 +http://localhost/foo#p95 +http://localhost/foo#p96 +http://localhost/foo#p97 +http://localhost/foo#p98 +http://localhost/foo#p99 +http://localhost/foo#p100 +http://localhost/foo#p101 Added: trunk/examples/yinyang_files/moralSimpleLearningProblem.xml =================================================================== --- trunk/examples/yinyang_files/moralSimpleLearningProblem.xml (rev 0) +++ trunk/examples/yinyang_files/moralSimpleLearningProblem.xml 2007-09-05 09:27:23 UTC (rev 129) @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> + + +<LearningProblem + +xmlns="http://www.di.uniba.it/learning" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +xsi:schemaLocation="http://www.di.uniba.it/learning/../LearningProblem.xsd" + +knowledgeBase="file:../moral_reasoner/moral_43instances.owl" +positiveExampleSource="moralPositives.txt" +negativeExampleSource="moralNegatives.txt" +abstractionClass="it.uniba.di.dl.abstraction.KBoundMSCApproximatorRefinement" +learn="true" +normalize="true" +consistencyCheck="false" +reasonerURL ="http://localhost:8081" + + +> + +<Experiments/> +<Namespaces> + <Namespace uri="http://localhost/foo#"></Namespace> +</Namespaces> + +</LearningProblem> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jen...@us...> - 2007-09-05 09:17:19
|
Revision: 127 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=127&view=rev Author: jenslehmann Date: 2007-09-05 01:53:46 -0700 (Wed, 05 Sep 2007) Log Message: ----------- added bash script for running YinYang examples added trains YinYang example Added Paths: ----------- trunk/examples/yinyang_files/run trunk/examples/yinyang_files/trainsLearningProblem.xml trunk/examples/yinyang_files/trainsNegatives.txt trunk/examples/yinyang_files/trainsPositives.txt Added: trunk/examples/yinyang_files/run =================================================================== --- trunk/examples/yinyang_files/run (rev 0) +++ trunk/examples/yinyang_files/run 2007-09-05 08:53:46 UTC (rev 127) @@ -0,0 +1,3 @@ +#!/bin/bash +YINYANG_BINARY_PATH=../../../../software/yinyang/binaries +java -cp $YINYANG_BINARY_PATH/yinyang.jar:$YINYANG_BINARY_PATH/rdf2kb.jar:$YINYANG_BINARY_PATH/abstraction.jar:$YINYANG_BINARY_PATH/kb.jar:$YINYANG_BINARY_PATH/learningProblem.jar:$YINYANG_BINARY_PATH/logger.jar:$YINYANG_BINARY_PATH/dig1.1-reasoners.jar:$YINYANG_BINARY_PATH/dig1.1-xmlbeans.jar:$YINYANG_BINARY_PATH/jaxen-1.1-beta-2.jar:$YINYANG_BINARY_PATH/xbean.jar:$YINYANG_BINARY_PATH/xbean_xpath.jar:$YINYANG_BINARY_PATH/antlr-2.7.5.jar:$YINYANG_BINARY_PATH/commons-logging.jar:$YINYANG_BINARY_PATH/concurrent.jar:$YINYANG_BINARY_PATH/icu4j_3_4.jar:$YINYANG_BINARY_PATH/iri.jar:$YINYANG_BINARY_PATH/jena.jar:$YINYANG_BINARY_PATH/json.jar:$YINYANG_BINARY_PATH/junit.jar:$YINYANG_BINARY_PATH/log4j-1.2.12.jar:$YINYANG_BINARY_PATH/xercesImpl.jar:$YINYANG_BINARY_PATH/xml-apis.jar it.uniba.di.dl.learningsystems.control.LearningController $1 $2 \ No newline at end of file Property changes on: trunk/examples/yinyang_files/run ___________________________________________________________________ Name: svn:executable + * Added: trunk/examples/yinyang_files/trainsLearningProblem.xml =================================================================== --- trunk/examples/yinyang_files/trainsLearningProblem.xml (rev 0) +++ trunk/examples/yinyang_files/trainsLearningProblem.xml 2007-09-05 08:53:46 UTC (rev 127) @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<LearningProblem + + xmlns="http://www.di.uniba.it/learning" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.di.uniba.it/learning/ ../LearningProblem.xsd" + + knowledgeBase="file:../trains/trains.owl" + positiveExampleSource="trainsPositives.txt" + negativeExampleSource="trainsNegatives.txt" + abstractionClass="it.uniba.di.dl.abstraction.KBoundMSCApproximatorRefinement" + learn="true" + normalize="true" + consistencyCheck="true" + reasonerURL ="http://localhost:8081" > + <Experiments/> + <Namespaces> + <Namespace uri="http://example.com/foo#"></Namespace> + </Namespaces> + +</LearningProblem> Added: trunk/examples/yinyang_files/trainsNegatives.txt =================================================================== --- trunk/examples/yinyang_files/trainsNegatives.txt (rev 0) +++ trunk/examples/yinyang_files/trainsNegatives.txt 2007-09-05 08:53:46 UTC (rev 127) @@ -0,0 +1,5 @@ +http://example.com/foo#west6 +http://example.com/foo#west7 +http://example.com/foo#west8 +http://example.com/foo#west9 +http://example.com/foo#west10 \ No newline at end of file Added: trunk/examples/yinyang_files/trainsPositives.txt =================================================================== --- trunk/examples/yinyang_files/trainsPositives.txt (rev 0) +++ trunk/examples/yinyang_files/trainsPositives.txt 2007-09-05 08:53:46 UTC (rev 127) @@ -0,0 +1,5 @@ +http://example.com/foo#east1 +http://example.com/foo#east2 +http://example.com/foo#east3 +http://example.com/foo#east4 +http://example.com/foo#east5 \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |