Package org.aksw.r2rml.jena.arq.impl
Class TriplesMapProcessorR2rml
java.lang.Object
org.aksw.r2rml.jena.arq.impl.TriplesMapProcessorR2rml
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Stringprotected MappingCxtThe context for *this* triple maps.static final org.apache.jena.rdf.model.PropertySomewhat custom extension of R2RML which lacks the feature to use a column as a source for language tags.protected org.apache.jena.sparql.core.VarAllocVarAlloc for generating variables that represent the set of records of a logical sourceprotected org.aksw.rmltk.model.backbone.common.ITriplesMap -
Constructor Summary
ConstructorsConstructorDescriptionTriplesMapProcessorR2rml(org.aksw.rmltk.model.backbone.common.ITriplesMap triplesMap, String baseIri) -
Method Summary
Modifier and TypeMethodDescriptionprotected org.apache.jena.graph.NodeallocateVar(MappingCxt cxt, org.aksw.rmltk.model.backbone.common.ITermMap tm, org.apache.jena.rdf.model.Resource fallbackTermType) Allocates a variable for a given term map.protected org.apache.jena.graph.NodeallocateVarForExpr(MappingCxt cxt, org.apache.jena.sparql.expr.Expr expr) protected org.apache.jena.graph.NodeallocateVarTracked(MappingCxt cxt, org.aksw.rmltk.model.backbone.common.ITermMap tm, org.apache.jena.rdf.model.Resource fallbackTermType) Callsinvalid reference
invalid input: 'and tracks the result in the #termMapToVar If a variable maps to a constant expression then no entry is made to nodeToExpr.'call()protected org.apache.jena.sparql.core.QuadcreateQuad(org.apache.jena.graph.Node g, org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.apache.jena.graph.Node o) protected org.apache.jena.sparql.expr.ExprgetDatatypeExpr(MappingCxt cxt, org.aksw.rmltk.model.backbone.common.ITermMap tm) protected StringgetLanguageColumn(org.aksw.rmltk.model.backbone.common.ITermMap tm) protected ObjectgetSourceIdentity(MappingCxt cxt, org.aksw.rmltk.model.backbone.common.ITriplesMap tm) voidinitResolvers(MappingCxt cxt) protected booleanisDefaultGraph(org.apache.jena.graph.Node g) Return an object that represents the identity of a triplesmaps' source.protected voidprocessRefObjectMap(org.apache.jena.graph.Node g, org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.aksw.rmltk.model.backbone.common.IRefObjectMap rom) protected final org.apache.jena.sparql.expr.ExprreferenceToExpr(MappingCxt cxt, String colName) Extension point for resolving RML references.protected org.apache.jena.sparql.expr.ExprresolveColumnLikeTermMap(MappingCxt cxt, org.aksw.rmltk.model.backbone.common.ITermMap tm, org.apache.jena.rdf.model.Resource fallbackTermType) Column like term maps include RML references and custom function invocations.protected org.apache.jena.sparql.expr.ExprresolveColumnReferences(MappingCxt cxt, org.apache.jena.sparql.expr.Expr columnExpr) Transform references from rr:template or rr:column or rr:langColumnstatic org.apache.jena.sparql.expr.ExprresolveR2rmlReference(String colName) protected org.apache.jena.sparql.expr.ExprtermMapToExpr(MappingCxt cxt, org.aksw.rmltk.model.backbone.common.ITermMap tm, org.apache.jena.rdf.model.Resource fallbackTermType) Convert a term map into a corresponding SPARQL expression
-
Field Details
-
languageColumn
public static final org.apache.jena.rdf.model.Property languageColumnSomewhat custom extension of R2RML which lacks the feature to use a column as a source for language tags. This constant is not part of the standard R2RML terms but it is supported by this processor. A property for this will become part of the new RML spec ~ 2023-06-07 -
triplesMap
protected org.aksw.rmltk.model.backbone.common.ITriplesMap triplesMap -
baseIri
-
sourceVarGen
protected org.apache.jena.sparql.core.VarAlloc sourceVarGenVarAlloc for generating variables that represent the set of records of a logical source -
childCxt
The context for *this* triple maps. Parent contexts are created when there are joins.
-
-
Constructor Details
-
TriplesMapProcessorR2rml
public TriplesMapProcessorR2rml(org.aksw.rmltk.model.backbone.common.ITriplesMap triplesMap, String baseIri)
-
-
Method Details
-
resolveR2rmlReference
-
initResolvers
-
call
- Parameters:
processPoms- Whether to process predicate object maps. If false then only the subject map will be processed which is useful to process the parent side of a join.- Returns:
-
allocateVarTracked
protected org.apache.jena.graph.Node allocateVarTracked(MappingCxt cxt, org.aksw.rmltk.model.backbone.common.ITermMap tm, org.apache.jena.rdf.model.Resource fallbackTermType) Callsinvalid reference
invalid input: 'and tracks the result in the #termMapToVar If a variable maps to a constant expression then no entry is made to nodeToExpr.' -
allocateVar
protected org.apache.jena.graph.Node allocateVar(MappingCxt cxt, org.aksw.rmltk.model.backbone.common.ITermMap tm, org.apache.jena.rdf.model.Resource fallbackTermType) Allocates a variable for a given term map. -
allocateVarForExpr
protected org.apache.jena.graph.Node allocateVarForExpr(MappingCxt cxt, org.apache.jena.sparql.expr.Expr expr) -
getLanguageColumn
-
getDatatypeExpr
protected org.apache.jena.sparql.expr.Expr getDatatypeExpr(MappingCxt cxt, org.aksw.rmltk.model.backbone.common.ITermMap tm) -
termMapToExpr
protected org.apache.jena.sparql.expr.Expr termMapToExpr(MappingCxt cxt, org.aksw.rmltk.model.backbone.common.ITermMap tm, org.apache.jena.rdf.model.Resource fallbackTermType) Convert a term map into a corresponding SPARQL expression- Parameters:
tm-- Returns:
-
resolveColumnReferences
protected org.apache.jena.sparql.expr.Expr resolveColumnReferences(MappingCxt cxt, org.apache.jena.sparql.expr.Expr columnExpr) Transform references from rr:template or rr:column or rr:langColumn -
resolveColumnLikeTermMap
protected org.apache.jena.sparql.expr.Expr resolveColumnLikeTermMap(MappingCxt cxt, org.aksw.rmltk.model.backbone.common.ITermMap tm, org.apache.jena.rdf.model.Resource fallbackTermType) Column like term maps include RML references and custom function invocations. Override this method for RML termMap and references -
processRefObjectMap
protected void processRefObjectMap(org.apache.jena.graph.Node g, org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.aksw.rmltk.model.backbone.common.IRefObjectMap rom) -
isDefaultGraph
protected boolean isDefaultGraph(org.apache.jena.graph.Node g) Return an object that represents the identity of a triplesmaps' source. Used for self-join elimination. By default the triples map is returned as representing it's source. This way however misses optimization oppor, two triples maps with the same logical source will -
createQuad
protected org.apache.jena.sparql.core.Quad createQuad(org.apache.jena.graph.Node g, org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.apache.jena.graph.Node o) -
referenceToExpr
Extension point for resolving RML references. The R2RML processor ignores the source. Important: The returned expression should not be factorized against the cxt's dag. The processor will take care of that.- Parameters:
colName- A column name or more generally a reference expression string.source- A variable that is bound to the source records and thus represents the source.- Returns:
-
getSourceIdentity
protected Object getSourceIdentity(MappingCxt cxt, org.aksw.rmltk.model.backbone.common.ITriplesMap tm)
-