Class RuleDerivation

java.lang.Object
org.apache.jena.reasoner.rulesys.RuleDerivation
All Implemented Interfaces:
Derivation

public class RuleDerivation extends Object implements Derivation
Derivation records are used to determine how an inferred triple was derived from a set of source triples and a reasoner. SubClasses provide more specific information.
  • Constructor Details

    • RuleDerivation

      public RuleDerivation(Rule rule, Triple conclusion, List<Triple> matches, InfGraph infGraph)
      Constructor
      Parameters:
      rule - the rule which created this derivation
      conclusion - the triple which the rule created
      matches - a list of matching Triples corresponding to the rule body patterns
      infGraph - the parent infGraph which was controlling the derivation
  • Method Details

    • toString

      public String toString()
      Return a short-form description of this derivation.
      Specified by:
      toString in interface Derivation
      Overrides:
      toString in class Object
    • printTrace

      public void printTrace(PrintWriter out, boolean bindings)
      Print a deep traceback of this derivation back to axioms and source assertions.
      Specified by:
      printTrace in interface Derivation
      Parameters:
      out - the stream to print the trace out to
      bindings - set to true to print intermediate variable bindings for each stage in the derivation
    • getConclusion

      public Triple getConclusion()
      Returns:
      the triple concluded by the derivation
    • getMatches

      public List<Triple> getMatches()
      Returns:
      the set of triples which were used in firing this rule derivation
    • getRule

      public Rule getRule()
      Returns:
      the rule which fired to create this derivation
    • equals

      public boolean equals(Object other)
      Compare two derivations. This is a shallow comparison, two derivations are the same if they contain the same conclusion, rule and match list. They do not need to be derived from the same (or any) infGraph.
      Overrides:
      equals in class Object