| Package | Description |
|---|---|
| org.aksw.sparqlify.core.algorithms | |
| org.aksw.sparqlify.core.domain.input | |
| org.aksw.sparqlify.core.interfaces |
| Modifier and Type | Method and Description |
|---|---|
static Mapping |
MappingRefactor.applyAggregators(Mapping mapping,
List<com.hp.hpl.jena.sparql.expr.ExprAggregator> aggregators,
com.hp.hpl.jena.sdb.core.Generator generator,
TypeSystem typeSystem,
SqlTranslator sqlTranslator) |
Mapping |
CandidateViewSelectorImpl.createContext(Mapping baseMapping,
ViewInstance<ViewDefinition> viewInstance)
Create a new context based on the baseContext and the current candidate viewInstance
if null is returned, the candidateViewInstance becomes rejected, otherwise, the new context
will be passed to this function together with all sub candidate viewInstances.
|
static Mapping |
MappingOpsImpl.createEmptyMapping() |
static Mapping |
MappingOpsImpl.createEmptyMapping(ViewInstance<ViewDefinition> viewInstance) |
Mapping |
MappingOpsImpl.createMapping(ViewInstance<ViewDefinition> viewInstance)
Creates a mapping from a view instance:
- For every binding variable, that maps to multiple things (contants + variables),
we need to equate all these things being mapped to
Schematically, we need to transform the binding to variable definitions from the original structure
(query view definition)
q v d
/ dx1
?x
/ \ dxn
?s
\ / dy1
?y
\ dyn
to conceptually a CNF:
(dx1 = dy1 OR ...
|
Mapping |
MappingOpsImpl.distinct(Mapping a) |
Mapping |
MappingOpsImpl.doJoinRename(Mapping a,
Mapping b,
com.hp.hpl.jena.sdb.core.Generator gen)
Returns a new mapping for b:
All column names that a and b have in commons are renamed in b.
|
Mapping |
MappingOpsImpl.extend(Mapping a,
VarDefinition varDef)
Extends a mapping with additional variable definitions.
|
Mapping |
MappingOpsImpl.filter(Mapping a,
com.hp.hpl.jena.sparql.expr.ExprList exprs) |
Mapping |
OpMapping.getMapping() |
Mapping |
MappingOpsImpl.groupBy(Mapping a,
com.hp.hpl.jena.sparql.core.VarExprList groupVars,
List<com.hp.hpl.jena.sparql.expr.ExprAggregator> aggregators)
GroupBy
|
Mapping |
MappingOpsImpl.groupByOld(Mapping a,
com.hp.hpl.jena.sparql.core.VarExprList groupVars,
List<com.hp.hpl.jena.sparql.expr.ExprAggregator> aggregators) |
Mapping |
MappingOpsImpl.join(Mapping a,
Mapping b) |
Mapping |
OpMappingRewriterImpl.join(com.hp.hpl.jena.sparql.algebra.Op a,
com.hp.hpl.jena.sparql.algebra.Op b) |
Mapping |
MappingOpsImpl.joinCommon(Mapping a,
Mapping initB,
boolean isLeftJoin,
com.hp.hpl.jena.sparql.expr.ExprList joinExprs) |
Mapping |
MappingOpsImpl.leftJoin(Mapping a,
Mapping b,
com.hp.hpl.jena.sparql.expr.ExprList exprs) |
Mapping |
MappingOpsImpl.order(Mapping a,
List<com.hp.hpl.jena.query.SortCondition> sortConditions)
FIXME The var definitions should not be lists rather than sets in order
to ensure deterministic behaviour!
1.
|
Mapping |
MappingOpsImpl.project(Mapping a,
List<com.hp.hpl.jena.sparql.core.Var> vars)
Removes variables from the definitions.
|
static Mapping |
MappingOpsImpl.pushConstants(Mapping mapping)
Pushes all constants of a given mapping's varDefinition into the SQL.
|
Mapping |
MappingOpsImpl.rename(Mapping a,
Map<String,String> rename) |
Mapping |
OpMappingRewriterImpl.rewrite(com.hp.hpl.jena.sparql.algebra.Op op) |
Mapping |
OpMappingRewriterImpl.rewrite(com.hp.hpl.jena.sparql.algebra.op.OpAssign op) |
Mapping |
OpMappingRewriterImpl.rewrite(com.hp.hpl.jena.sparql.algebra.op.OpConditional op) |
Mapping |
OpMappingRewriterImpl.rewrite(com.hp.hpl.jena.sparql.algebra.op.OpDisjunction op) |
Mapping |
OpMappingRewriterImpl.rewrite(com.hp.hpl.jena.sparql.algebra.op.OpDistinct op) |
Mapping |
OpMappingRewriterImpl.rewrite(com.hp.hpl.jena.sparql.algebra.op.OpExtend op) |
Mapping |
OpMappingRewriterImpl.rewrite(OpFilterIndexed op) |
Mapping |
OpMappingRewriterImpl.rewrite(com.hp.hpl.jena.sparql.algebra.op.OpGroup op)
The aggregators need to be wrapped with an appropriate term ctor.
|
Mapping |
OpMappingRewriterImpl.rewrite(com.hp.hpl.jena.sparql.algebra.op.OpJoin op) |
Mapping |
OpMappingRewriterImpl.rewrite(com.hp.hpl.jena.sparql.algebra.op.OpLeftJoin op) |
Mapping |
OpMappingRewriterImpl.rewrite(OpMapping op) |
Mapping |
OpMappingRewriterImpl.rewrite(com.hp.hpl.jena.sparql.algebra.op.OpOrder op) |
Mapping |
OpMappingRewriterImpl.rewrite(com.hp.hpl.jena.sparql.algebra.op.OpProject op) |
Mapping |
OpMappingRewriterImpl.rewrite(com.hp.hpl.jena.sparql.algebra.op.OpSequence op) |
Mapping |
OpMappingRewriterImpl.rewrite(com.hp.hpl.jena.sparql.algebra.op.OpSlice op) |
Mapping |
OpMappingRewriterImpl.rewrite(com.hp.hpl.jena.sparql.algebra.op.OpTopN op) |
Mapping |
OpMappingRewriterImpl.rewrite(OpViewInstanceJoin op) |
Mapping |
MappingOpsImpl.slice(Mapping a,
Long limit,
Long offset) |
Mapping |
MappingOpsImpl.union(List<Mapping> members)
[ null, h: int, i: string, null ]
[ a: int null, null, x: geo ]
?s = uri(concat("http://...", ?c1, ?c2));
?s -> [c1: string, c2: int] with expr foo and restriction bar.
|
Mapping |
MappingOpsImpl.unionIfNeeded(List<Mapping> members) |
| Modifier and Type | Method and Description |
|---|---|
static com.google.common.collect.ListMultimap<String,Mapping> |
MappingRefactor.groupBy(List<Mapping> ms,
com.hp.hpl.jena.sparql.expr.Expr groupExpr) |
static com.google.common.collect.ListMultimap<String,Mapping> |
MappingRefactor.groupBy(List<Mapping> ms,
List<com.hp.hpl.jena.sparql.expr.Expr> groupExprs) |
static com.google.common.collect.ListMultimap<String,Mapping> |
MappingRefactor.groupByOld(ExprDatatypeNorm exprNormalizer,
List<Mapping> ms,
List<com.hp.hpl.jena.sparql.core.Var> vars)
Given a list of mappings, create groups of them with the following properties:
All members of a group must have the same datatypes for their term constructor args
e.g.
|
static List<Mapping> |
MappingOpsImpl.pushConstants(List<Mapping> mappings) |
static List<Mapping> |
MappingRefactor.refactorToUnion(Mapping m,
List<com.hp.hpl.jena.sparql.core.Var> tmpVars)
If there are multiple definitions for any of the specified variables,
each definition results in a new mapping.
|
static List<Mapping> |
MappingOpsImpl.removeEmptyMembers(List<Mapping> mappings) |
List<Mapping> |
OpMappingRewriterImpl.rewriteList(List<com.hp.hpl.jena.sparql.algebra.Op> ops) |
| Modifier and Type | Method and Description |
|---|---|
static Mapping |
MappingRefactor.applyAggregators(Mapping mapping,
List<com.hp.hpl.jena.sparql.expr.ExprAggregator> aggregators,
com.hp.hpl.jena.sdb.core.Generator generator,
TypeSystem typeSystem,
SqlTranslator sqlTranslator) |
Mapping |
CandidateViewSelectorImpl.createContext(Mapping baseMapping,
ViewInstance<ViewDefinition> viewInstance)
Create a new context based on the baseContext and the current candidate viewInstance
if null is returned, the candidateViewInstance becomes rejected, otherwise, the new context
will be passed to this function together with all sub candidate viewInstances.
|
List<org.aksw.sparqlify.core.algorithms.SqlExprContext> |
MappingOpsImpl.createExprContexts(com.hp.hpl.jena.sparql.expr.Expr e,
Mapping source) |
static List<org.aksw.sparqlify.core.algorithms.SqlExprContext> |
MappingOpsImpl.createExprSqlRewrites(com.hp.hpl.jena.sparql.expr.Expr condition,
Mapping m,
SqlTranslator sqlTranslator) |
Mapping |
MappingOpsImpl.distinct(Mapping a) |
Mapping |
MappingOpsImpl.doJoinRename(Mapping a,
Mapping b,
com.hp.hpl.jena.sdb.core.Generator gen)
Returns a new mapping for b:
All column names that a and b have in commons are renamed in b.
|
Mapping |
MappingOpsImpl.extend(Mapping a,
VarDefinition varDef)
Extends a mapping with additional variable definitions.
|
Mapping |
MappingOpsImpl.filter(Mapping a,
com.hp.hpl.jena.sparql.expr.ExprList exprs) |
void |
CandidateViewSelectorImplUseTheGenericImplInstead.getApplicableViewsRec2(int index,
List<com.hp.hpl.jena.sparql.core.Quad> quadOrder,
Set<ViewQuad> viewQuads,
Map<com.hp.hpl.jena.sparql.core.Quad,Set<ViewQuad>> candidates,
RestrictionManagerImpl restrictions,
NestedStack<ViewInstance> instances,
List<ViewInstanceJoin> result,
Mapping baseMapping) |
Mapping |
MappingOpsImpl.groupBy(Mapping a,
com.hp.hpl.jena.sparql.core.VarExprList groupVars,
List<com.hp.hpl.jena.sparql.expr.ExprAggregator> aggregators)
GroupBy
|
static MappingUnion |
MappingRefactor.groupBy(Mapping m,
com.hp.hpl.jena.sparql.core.VarExprList groupVars,
List<com.hp.hpl.jena.sparql.expr.ExprAggregator> aggregators,
SqlTranslator sqlTranslator,
TypeSystem typeSystem,
ExprDatatypeNorm exprNormalizer) |
Mapping |
MappingOpsImpl.groupByOld(Mapping a,
com.hp.hpl.jena.sparql.core.VarExprList groupVars,
List<com.hp.hpl.jena.sparql.expr.ExprAggregator> aggregators) |
static MappingUnion |
MappingRefactor.groupByWithExprs(Mapping m,
com.hp.hpl.jena.sparql.core.VarExprList groupVars,
List<com.hp.hpl.jena.sparql.expr.ExprAggregator> aggregators,
SqlTranslator sqlTranslator,
TypeSystem typeSystem,
ExprDatatypeNorm exprNormalizer) |
Mapping |
MappingOpsImpl.join(Mapping a,
Mapping b) |
Mapping |
MappingOpsImpl.joinCommon(Mapping a,
Mapping initB,
boolean isLeftJoin,
com.hp.hpl.jena.sparql.expr.ExprList joinExprs) |
Mapping |
MappingOpsImpl.leftJoin(Mapping a,
Mapping b,
com.hp.hpl.jena.sparql.expr.ExprList exprs) |
Mapping |
MappingOpsImpl.order(Mapping a,
List<com.hp.hpl.jena.query.SortCondition> sortConditions)
FIXME The var definitions should not be lists rather than sets in order
to ensure deterministic behaviour!
1.
|
Mapping |
MappingOpsImpl.project(Mapping a,
List<com.hp.hpl.jena.sparql.core.Var> vars)
Removes variables from the definitions.
|
static Mapping |
MappingOpsImpl.pushConstants(Mapping mapping)
Pushes all constants of a given mapping's varDefinition into the SQL.
|
static List<Mapping> |
MappingRefactor.refactorToUnion(Mapping m,
List<com.hp.hpl.jena.sparql.core.Var> tmpVars)
If there are multiple definitions for any of the specified variables,
each definition results in a new mapping.
|
Mapping |
MappingOpsImpl.rename(Mapping a,
Map<String,String> rename) |
static ExprSqlRewrite |
MappingOpsImpl.rewrite(Mapping mapping,
com.hp.hpl.jena.sparql.expr.aggregate.Aggregator agg,
com.hp.hpl.jena.sdb.core.Generator generator,
TypeSystem typeSystem,
SqlTranslator sqlTranslator)
TODO: Without the toDouble coercion, SUM(int) will be discarded
even after already been found out as a candidate.
|
Mapping |
MappingOpsImpl.slice(Mapping a,
Long limit,
Long offset) |
ExprSqlRewrite |
MappingOpsImpl.unifyAlternatives(com.hp.hpl.jena.sparql.expr.Expr e,
Mapping source)
Two variants:
- create a case-block for each expression
- create a union - but with the union we would eval the expression over and over again
- so we go with the case block
|
| Modifier and Type | Method and Description |
|---|---|
com.hp.hpl.jena.sparql.algebra.Op |
CandidateViewSelectorImpl.createOp(OpQuadPattern2 opQuadPattern,
List<RecursionResult<ViewDefinition,Mapping>> conjunctions) |
com.hp.hpl.jena.sparql.algebra.Op |
CandidateViewSelectorImpl.createOpOldButWorking(OpQuadPattern2 opQuadPattern,
List<RecursionResult<ViewDefinition,Mapping>> conjunctions) |
static Set<String> |
MappingOpsImpl.getReferencedColumnNames(List<Mapping> mappings) |
static com.google.common.collect.ListMultimap<String,Mapping> |
MappingRefactor.groupBy(List<Mapping> ms,
com.hp.hpl.jena.sparql.expr.Expr groupExpr) |
static com.google.common.collect.ListMultimap<String,Mapping> |
MappingRefactor.groupBy(List<Mapping> ms,
List<com.hp.hpl.jena.sparql.expr.Expr> groupExprs) |
static com.google.common.collect.ListMultimap<String,Mapping> |
MappingRefactor.groupByOld(ExprDatatypeNorm exprNormalizer,
List<Mapping> ms,
List<com.hp.hpl.jena.sparql.core.Var> vars)
Given a list of mappings, create groups of them with the following properties:
All members of a group must have the same datatypes for their term constructor args
e.g.
|
static List<Mapping> |
MappingOpsImpl.pushConstants(List<Mapping> mappings) |
static List<Mapping> |
MappingOpsImpl.removeEmptyMembers(List<Mapping> mappings) |
Mapping |
MappingOpsImpl.union(List<Mapping> members)
[ null, h: int, i: string, null ]
[ a: int null, null, x: geo ]
?s = uri(concat("http://...", ?c1, ?c2));
?s -> [c1: string, c2: int] with expr foo and restriction bar.
|
Mapping |
MappingOpsImpl.unionIfNeeded(List<Mapping> members) |
| Constructor and Description |
|---|
OpMapping(Mapping mapping,
RestrictionManagerImpl restrictions) |
| Modifier and Type | Method and Description |
|---|---|
Mapping |
ViewDefinition.getMapping() |
| Modifier and Type | Method and Description |
|---|---|
List<Mapping> |
MappingUnion.getMappings() |
| Modifier and Type | Method and Description |
|---|---|
void |
MappingUnion.add(Mapping mapping) |
| Constructor and Description |
|---|
ViewDefinition(String name,
com.hp.hpl.jena.sparql.core.QuadPattern template,
Map<String,ViewReference> viewReferences,
Mapping mapping,
Object source) |
ViewDefinition(String name,
com.hp.hpl.jena.sparql.core.QuadPattern template,
Map<String,ViewReference> viewReferences,
Mapping mapping,
RestrictionManagerImpl varRestrictions,
Object source) |
| Constructor and Description |
|---|
MappingUnion(List<Mapping> mappings) |
| Modifier and Type | Method and Description |
|---|---|
Mapping |
MappingOps.createMapping(ViewInstance<ViewDefinition> viewInstance) |
Mapping |
MappingOps.distinct(Mapping a) |
Mapping |
MappingOps.extend(Mapping a,
VarDefinition varDef) |
Mapping |
MappingOps.filter(Mapping a,
com.hp.hpl.jena.sparql.expr.ExprList exprs) |
Mapping |
MappingOps.groupBy(Mapping a,
com.hp.hpl.jena.sparql.core.VarExprList groupVars,
List<com.hp.hpl.jena.sparql.expr.ExprAggregator> aggregators) |
Mapping |
MappingOps.join(Mapping a,
Mapping b) |
Mapping |
MappingOps.leftJoin(Mapping a,
Mapping b,
com.hp.hpl.jena.sparql.expr.ExprList exprs) |
Mapping |
MappingOps.order(Mapping a,
List<com.hp.hpl.jena.query.SortCondition> sortConditions) |
Mapping |
MappingOps.project(Mapping a,
List<com.hp.hpl.jena.sparql.core.Var> vars) |
Mapping |
MappingOps.rename(Mapping a,
Map<String,String> columnRenames)
Creates a new mapping with all column references
in the variable definition renamed, and injects an
approprate SqlProjection into the logical table
|
Mapping |
OpMappingRewriter.rewrite(com.hp.hpl.jena.sparql.algebra.Op op) |
Mapping |
MappingOps.slice(Mapping a,
Long limit,
Long offset) |
Mapping |
MappingOps.union(List<Mapping> members) |
| Modifier and Type | Method and Description |
|---|---|
Mapping |
MappingOps.distinct(Mapping a) |
Mapping |
MappingOps.extend(Mapping a,
VarDefinition varDef) |
Mapping |
MappingOps.filter(Mapping a,
com.hp.hpl.jena.sparql.expr.ExprList exprs) |
Mapping |
MappingOps.groupBy(Mapping a,
com.hp.hpl.jena.sparql.core.VarExprList groupVars,
List<com.hp.hpl.jena.sparql.expr.ExprAggregator> aggregators) |
Mapping |
MappingOps.join(Mapping a,
Mapping b) |
MappingUnion |
MappingUnionOpsImpl.join(MappingUnion a,
Mapping b) |
MappingUnion |
MappingUnionOps.join(MappingUnion a,
Mapping b) |
Mapping |
MappingOps.leftJoin(Mapping a,
Mapping b,
com.hp.hpl.jena.sparql.expr.ExprList exprs) |
MappingUnion |
MappingUnionOpsImpl.leftJoin(MappingUnion a,
Mapping b) |
MappingUnion |
MappingUnionOps.leftJoin(MappingUnion a,
Mapping b) |
Mapping |
MappingOps.order(Mapping a,
List<com.hp.hpl.jena.query.SortCondition> sortConditions) |
Mapping |
MappingOps.project(Mapping a,
List<com.hp.hpl.jena.sparql.core.Var> vars) |
Mapping |
MappingOps.rename(Mapping a,
Map<String,String> columnRenames)
Creates a new mapping with all column references
in the variable definition renamed, and injects an
approprate SqlProjection into the logical table
|
Mapping |
MappingOps.slice(Mapping a,
Long limit,
Long offset) |
| Modifier and Type | Method and Description |
|---|---|
Mapping |
MappingOps.union(List<Mapping> members) |
Copyright © 2014. All rights reserved.