Skip to content
This repository was archived by the owner on Oct 8, 2020. It is now read-only.

Commit 6f7a29d

Browse files
Refactoring for axiom-based forward chaining
1 parent 3dacfa1 commit 6f7a29d

18 files changed

Lines changed: 66 additions & 78 deletions

sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/RDFGraphMaterializer.scala

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,14 @@ package net.sansa_stack.inference.spark
22

33
import java.net.URI
44

5-
import org.apache.jena.graph.{Node, NodeFactory}
6-
import org.apache.spark.SparkConf
7-
import org.apache.spark.sql.SparkSession
8-
9-
import net.sansa_stack.inference.data.RDFTriple
105
import net.sansa_stack.inference.rules.ReasoningProfile._
116
import net.sansa_stack.inference.rules.{RDFSLevel, ReasoningProfile}
127
import net.sansa_stack.inference.spark.data.loader.RDFGraphLoader
138
import net.sansa_stack.inference.spark.data.writer.RDFGraphWriter
14-
import net.sansa_stack.inference.spark.forwardchaining.{ForwardRuleReasonerOWLHorst, ForwardRuleReasonerRDFS, TransitiveReasoner}
9+
import net.sansa_stack.inference.spark.forwardchaining.triples.{ForwardRuleReasonerOWLHorst, ForwardRuleReasonerRDFS, TransitiveReasoner}
10+
import org.apache.jena.graph.{Node, NodeFactory}
11+
import org.apache.spark.SparkConf
12+
import org.apache.spark.sql.SparkSession
1513

1614
/**
1715
* The main entry class to compute the materialization on an RDF graph.

sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/AbstractForwardRuleReasoner.scala renamed to sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/triples/AbstractForwardRuleReasoner.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package net.sansa_stack.inference.spark.forwardchaining
1+
package net.sansa_stack.inference.spark.forwardchaining.triples
22

33
import net.sansa_stack.inference.data.RDF
44
import net.sansa_stack.inference.spark.data.model.AbstractRDFGraphSpark

sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/AbstractForwardRuleReasonerRDFS.scala renamed to sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/triples/AbstractForwardRuleReasonerRDFS.scala

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
package net.sansa_stack.inference.spark.forwardchaining
1+
package net.sansa_stack.inference.spark.forwardchaining.triples
22

3-
import org.apache.spark.sql.SparkSession
4-
import org.slf4j.LoggerFactory
53
import net.sansa_stack.inference.data.{RDF, RDFOps, RDFVocab}
64
import net.sansa_stack.inference.rules.RDFSLevel._
75
import net.sansa_stack.inference.spark.data.model.AbstractRDFGraphSpark
6+
import org.apache.spark.sql.SparkSession
7+
import org.slf4j.LoggerFactory
88

99
/**
1010
* A forward chaining implementation of the RDFS entailment regime.

sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/FixpointIteration.scala renamed to sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/triples/FixpointIteration.scala

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
package net.sansa_stack.inference.spark.forwardchaining
2-
3-
import scala.reflect.ClassTag
1+
package net.sansa_stack.inference.spark.forwardchaining.triples
42

3+
import net.sansa_stack.inference.utils.Logging
54
import org.apache.spark.rdd.RDD
65

7-
import net.sansa_stack.inference.utils.Logging
6+
import scala.reflect.ClassTag
87

98
/**
109
* Creates a new RDD by performing bulk iterations using the given step function. The first

sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/ForwardRuleReasoner.scala renamed to sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/triples/ForwardRuleReasoner.scala

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
1-
package net.sansa_stack.inference.spark.forwardchaining
2-
3-
import scala.collection.mutable
4-
5-
import org.apache.jena.graph.{Node, Triple}
6-
import org.apache.spark.rdd.RDD
1+
package net.sansa_stack.inference.spark.forwardchaining.triples
72

83
import net.sansa_stack.inference.spark.data.model.RDFGraph
94
import net.sansa_stack.inference.spark.data.model.TripleUtils._
105
import net.sansa_stack.inference.utils.Profiler
6+
import org.apache.jena.graph.{Node, Triple}
7+
import org.apache.spark.rdd.RDD
8+
9+
import scala.collection.mutable
1110

1211
/**
1312
* A forward chaining based reasoner.

sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/ForwardRuleReasonerNaive.scala renamed to sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/triples/ForwardRuleReasonerNaive.scala

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
package net.sansa_stack.inference.spark.forwardchaining
1+
package net.sansa_stack.inference.spark.forwardchaining.triples
22

3-
import scala.language.{existentials, implicitConversions}
3+
import net.sansa_stack.inference.data.Jena
4+
import net.sansa_stack.inference.spark.data.model.RDFGraphNative
5+
import net.sansa_stack.inference.spark.rules.RuleExecutorNative
6+
import org.apache.jena.graph.Triple
47
import org.apache.jena.reasoner.rulesys.Rule
58
import org.apache.spark.SparkContext
69
import org.apache.spark.rdd.RDD
710
import org.slf4j.LoggerFactory
8-
import net.sansa_stack.inference.data.{Jena}
9-
import net.sansa_stack.inference.spark.data.model.RDFGraphNative
10-
import net.sansa_stack.inference.spark.rules.RuleExecutorNative
1111

12-
import org.apache.jena.graph.{Node, Triple}
12+
import scala.language.{existentials, implicitConversions}
1313

1414
/**
1515
* A naive implementation of the forward chaining based reasoner that does fix-point iteration, i.e. it applies

sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/ForwardRuleReasonerOWLHorst.scala renamed to sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/triples/ForwardRuleReasonerOWLHorst.scala

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
1-
package net.sansa_stack.inference.spark.forwardchaining
1+
package net.sansa_stack.inference.spark.forwardchaining.triples
22

3+
import net.sansa_stack.inference.spark.data.model.RDFGraph
4+
import net.sansa_stack.inference.spark.data.model.TripleUtils._
5+
import net.sansa_stack.inference.utils.CollectionUtils
36
import org.apache.jena.graph.{Node, Triple}
47
import org.apache.jena.vocabulary.{OWL2, RDF, RDFS}
58
import org.apache.spark.SparkContext
69
import org.apache.spark.rdd.{RDD, UnionRDD}
710
import org.slf4j.LoggerFactory
811

9-
import net.sansa_stack.inference.spark.data.model.RDFGraph
10-
import net.sansa_stack.inference.spark.data.model.TripleUtils._
11-
import net.sansa_stack.inference.utils.CollectionUtils
12-
1312
/**
1413
* A forward chaining implementation of the OWL Horst entailment regime.
1514
*

sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/ForwardRuleReasonerOptimized.scala renamed to sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/triples/ForwardRuleReasonerOptimized.scala

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
1-
package net.sansa_stack.inference.spark.forwardchaining
2-
3-
import scala.language.{existentials, implicitConversions}
4-
5-
import org.apache.jena.reasoner.rulesys.Rule
6-
import org.apache.spark.sql.SparkSession
7-
import org.slf4j.LoggerFactory
1+
package net.sansa_stack.inference.spark.forwardchaining.triples
82

93
import net.sansa_stack.inference.data.RDF
104
import net.sansa_stack.inference.rules.{HighLevelRuleDependencyGraphGenerator, RuleDependencyGraph, RuleDependencyGraphGenerator}
115
import net.sansa_stack.inference.spark.data.model.AbstractRDFGraphSpark
126
import net.sansa_stack.inference.spark.rules.RuleExecutor
7+
import org.apache.jena.reasoner.rulesys.Rule
8+
import org.apache.spark.sql.SparkSession
9+
import org.slf4j.LoggerFactory
10+
11+
import scala.language.{existentials, implicitConversions}
1312

1413
/**
1514
* An optimized implementation of the forward chaining based reasoner.

sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/ForwardRuleReasonerOptimizedNative.scala renamed to sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/triples/ForwardRuleReasonerOptimizedNative.scala

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1-
package net.sansa_stack.inference.spark.forwardchaining
1+
package net.sansa_stack.inference.spark.forwardchaining.triples
22

33
import net.sansa_stack.inference.data.Jena
4-
5-
import scala.language.{existentials, implicitConversions}
4+
import net.sansa_stack.inference.spark.data.model.RDFGraphNative
5+
import net.sansa_stack.inference.spark.rules.RuleExecutorNative
66
import org.apache.jena.graph.{Node, Triple}
77
import org.apache.jena.reasoner.rulesys.Rule
88
import org.apache.spark.rdd.RDD
99
import org.apache.spark.sql.SparkSession
10-
import net.sansa_stack.inference.spark.data.model.RDFGraphNative
11-
import net.sansa_stack.inference.spark.rules.RuleExecutorNative
10+
11+
import scala.language.{existentials, implicitConversions}
1212

1313
/**
1414
* An optimized implementation of the forward chaining based reasoner using Spark data structures and operations.

sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/ForwardRuleReasonerRDFS.scala renamed to sansa-inference-spark/src/main/scala/net/sansa_stack/inference/spark/forwardchaining/triples/ForwardRuleReasonerRDFS.scala

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,17 @@
1-
package net.sansa_stack.inference.spark.forwardchaining
2-
3-
import scala.collection.mutable
4-
5-
import org.apache.jena.graph.Triple
6-
import org.apache.jena.vocabulary.{RDF, RDFS}
7-
import org.apache.spark.SparkContext
8-
import org.slf4j.LoggerFactory
1+
package net.sansa_stack.inference.spark.forwardchaining.triples
92

103
import net.sansa_stack.inference.rules.RDFSLevel._
114
import net.sansa_stack.inference.spark.data.model.RDFGraph
125
import net.sansa_stack.inference.spark.data.model.TripleUtils._
136
import net.sansa_stack.inference.spark.utils.RDDUtils.RDDOps
147
import net.sansa_stack.inference.spark.utils.RDFSSchemaExtractor
158
import net.sansa_stack.inference.utils.CollectionUtils
9+
import org.apache.jena.graph.Triple
10+
import org.apache.jena.vocabulary.{RDF, RDFS}
11+
import org.apache.spark.SparkContext
12+
import org.slf4j.LoggerFactory
13+
14+
import scala.collection.mutable
1615

1716
/**
1817
* A forward chaining implementation of the RDFS entailment regime.

0 commit comments

Comments
 (0)