Package org.aksw.r2rml.jena.arq.lib
Class R2rmlLib
java.lang.Object
org.aksw.r2rml.jena.arq.lib.R2rmlLib
Move to a dedicated utils package?
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <T extends Collection<org.apache.jena.sparql.core.Var>>
TcollectReferencedColumns(T out, org.aksw.rmltk.model.backbone.common.ITermMap termMap) Return the set of columns (as Vars) referenced within a term mapstatic <T extends org.apache.jena.rdf.model.Resource>
TcopyProperties(Supplier<T> targetSupplier, org.apache.jena.rdf.model.Resource source) Copy outgoing properties of a non-null source to a target.static <T extends org.apache.jena.rdf.model.Resource>
TcopyResource(T target, org.apache.jena.rdf.model.Resource source) static StringcreateJointSqlQuery(org.aksw.rmltk.model.backbone.common.IRefObjectMap rom, Set<org.apache.jena.sparql.core.Var> childVars, Set<org.apache.jena.sparql.core.Var> parentVars, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var> parentRemap, org.aksw.rmltk.model.backbone.r2rml.ILogicalTableR2rml childTable, org.aksw.rmltk.model.backbone.r2rml.ILogicalTableR2rml parentTable) static voidDecompose triples maps such that they become triple (singular!)static Map<org.aksw.rmltk.model.backbone.common.IRefObjectMap, org.aksw.rmltk.model.backbone.common.ITriplesMap> expandRefObjectMaps(Class<? extends org.aksw.rmltk.model.backbone.common.ITriplesMap> triplesMapClass, org.apache.jena.rdf.model.Model outModel, org.aksw.rmltk.model.backbone.common.ITriplesMap tm, org.aksw.commons.sql.codec.api.SqlCodec sqlCodec) Create a new triples map where any ref object map has been turned into a new TriplesMap whose logical table is an SQL query string with the appropriate join.static Map<org.aksw.rmltk.model.backbone.common.IRefObjectMap, org.aksw.rmltk.model.backbone.common.ITriplesMap> expandRefObjectMapsInPlace(Class<? extends org.aksw.rmltk.model.backbone.common.ITriplesMap> triplesMapClass, org.aksw.rmltk.model.backbone.common.ITriplesMap triplesMap, org.aksw.commons.sql.codec.api.SqlCodec sqlCodec) Create a new TriplesMap for each RefObjectMap.static voidexpandShortcuts(org.aksw.rmltk.model.backbone.common.ITriplesMap tm) Expands rr:class, rr:subject, rr:predicate, rr:object and rr:graph to term maps in order to allow for uniform processingstatic voidrenameVariables(org.aksw.rmltk.model.backbone.common.ITermMap termMap, org.apache.jena.sparql.graph.NodeTransform nodeTransform) static Stream<org.aksw.rmltk.model.r2rml.TriplesMap> streamTriplesMaps(org.apache.jena.rdf.model.Model model) Stream all TriplesMaps in a model (based on the rr:logicalTable predicate)static StringtoSqlString(org.aksw.rmltk.model.backbone.r2rml.ILogicalTableR2rml logicalTable)
-
Constructor Details
-
R2rmlLib
public R2rmlLib()
-
-
Method Details
-
streamTriplesMaps
public static Stream<org.aksw.rmltk.model.r2rml.TriplesMap> streamTriplesMaps(org.apache.jena.rdf.model.Model model) Stream all TriplesMaps in a model (based on the rr:logicalTable predicate) -
expandRefObjectMapsInPlace
public static Map<org.aksw.rmltk.model.backbone.common.IRefObjectMap,org.aksw.rmltk.model.backbone.common.ITriplesMap> expandRefObjectMapsInPlace(Class<? extends org.aksw.rmltk.model.backbone.common.ITriplesMap> triplesMapClass, org.aksw.rmltk.model.backbone.common.ITriplesMap triplesMap, org.aksw.commons.sql.codec.api.SqlCodec sqlCodec) Create a new TriplesMap for each RefObjectMap. The new TriplesMap will have a generated SQL query string that performs the appropriate join. -
expandRefObjectMaps
public static Map<org.aksw.rmltk.model.backbone.common.IRefObjectMap,org.aksw.rmltk.model.backbone.common.ITriplesMap> expandRefObjectMaps(Class<? extends org.aksw.rmltk.model.backbone.common.ITriplesMap> triplesMapClass, org.apache.jena.rdf.model.Model outModel, org.aksw.rmltk.model.backbone.common.ITriplesMap tm, org.aksw.commons.sql.codec.api.SqlCodec sqlCodec) Create a new triples map where any ref object map has been turned into a new TriplesMap whose logical table is an SQL query string with the appropriate join.- Parameters:
The- model into which to append the expanded TriplesMapsThe- TriplesMaps whose RefObjectMaps to expandSqlCodec- sqlCodec for encoding/decoding column names- Returns:
- A map from any encountered RefObjectMap (in the given TriplesMap) to the TriplesMap it was expanded to.
-
collectReferencedColumns
public static <T extends Collection<org.apache.jena.sparql.core.Var>> T collectReferencedColumns(T out, org.aksw.rmltk.model.backbone.common.ITermMap termMap) Return the set of columns (as Vars) referenced within a term map -
renameVariables
public static void renameVariables(org.aksw.rmltk.model.backbone.common.ITermMap termMap, org.apache.jena.sparql.graph.NodeTransform nodeTransform) -
decompose
public static void decompose()Decompose triples maps such that they become triple (singular!) maps: I.e. one triple maps for every triple that gets generated or in other words just one subjectMap, one predicteObjectMap, one predicateMap and one objectMap -
createJointSqlQuery
public static String createJointSqlQuery(org.aksw.rmltk.model.backbone.common.IRefObjectMap rom, Set<org.apache.jena.sparql.core.Var> childVars, Set<org.apache.jena.sparql.core.Var> parentVars, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var> parentRemap, org.aksw.rmltk.model.backbone.r2rml.ILogicalTableR2rml childTable, org.aksw.rmltk.model.backbone.r2rml.ILogicalTableR2rml parentTable) -
toSqlString
public static String toSqlString(org.aksw.rmltk.model.backbone.r2rml.ILogicalTableR2rml logicalTable) -
copyProperties
public static <T extends org.apache.jena.rdf.model.Resource> T copyProperties(Supplier<T> targetSupplier, org.apache.jena.rdf.model.Resource source) Copy outgoing properties of a non-null source to a target. Used to copy term maps -
copyResource
public static <T extends org.apache.jena.rdf.model.Resource> T copyResource(T target, org.apache.jena.rdf.model.Resource source) -
expandShortcuts
public static void expandShortcuts(org.aksw.rmltk.model.backbone.common.ITriplesMap tm) Expands rr:class, rr:subject, rr:predicate, rr:object and rr:graph to term maps in order to allow for uniform processing- Parameters:
tm- The triple map for which to expand all mentioned short cuts
-