Class CanonicalPlanner
- java.lang.Object
-
- org.aksw.limes.core.execution.planning.planner.Planner
-
- org.aksw.limes.core.execution.planning.planner.CanonicalPlanner
-
- All Implemented Interfaces:
IPlanner
public class CanonicalPlanner extends Planner
Implements the Canonical planner class. It receives a link specification as input and generates an immutable NestedPlan.- Version:
- 1.0
- Author:
- Axel-C. Ngonga Ngomo (ngonga@informatik.uni-leipzig.de), Kleanthi Georgala (georgala@informatik.uni-leipzig.de)
-
-
Constructor Summary
Constructors Constructor Description CanonicalPlanner()Constructor of the CanonicalPlanner class.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanisStatic()Returns the status of the planner.LinkSpecificationnormalize(LinkSpecification spec)Normalization of input link specification.NestedPlanplan(LinkSpecification spec)Generates a NestedPlan for a link specification.
-
-
-
Method Detail
-
plan
public NestedPlan plan(LinkSpecification spec)
Generates a NestedPlan for a link specification. If the link specification is null or empty it returns an empty plan. If the link specification is atomic, the planner generates a simple plan that consists of one RUN instruction. If the link specification is complex, firstly it generates a plan for each of the children specifications and sets them as subPlans. Then, it assigns to the plan the corresponding command based on the link specification operator and finally creates a filtering instruction using the filtering expression and threshold of the input link specification.- Parameters:
spec- Input link specification- Returns:
- a NestedPlan of the input link specification
-
isStatic
public boolean isStatic()
Returns the status of the planner.- Returns:
- true
-
normalize
public LinkSpecification normalize(LinkSpecification spec)
Normalization of input link specification.- Parameters:
spec- The input link specification- Returns:
- the normalized link specification
-
-