Class ElementTransformVirtualPredicates

java.lang.Object
org.apache.jena.sparql.syntax.syntaxtransform.ElementTransformCopyBase
org.aksw.jena_sparql_api.transform.ElementTransformVirtualPredicates
All Implemented Interfaces:
org.apache.jena.sparql.syntax.syntaxtransform.ElementTransform

public class ElementTransformVirtualPredicates extends org.apache.jena.sparql.syntax.syntaxtransform.ElementTransformCopyBase
Virtual properties map to SPARQL binary relations ?s ?o | arbitrarySparqlElementMentioningSAndO Triple pattern: ?s ?p ?o are replaced by a union of all virtual properties -> { ?s ?p ?o } Union { Select ( As ?p) { arbitrarySparqlElementMentioningSAndO } If ?p is a constant, we can directly replace it with the virtual property
Author:
raven
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var>
     
    protected Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2>
     

    Fields inherited from class org.apache.jena.sparql.syntax.syntaxtransform.ElementTransformCopyBase

    alwaysCopy
  • Constructor Summary

    Constructors
    Constructor
    Description
     
    ElementTransformVirtualPredicates(Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates)
     
    ElementTransformVirtualPredicates(Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates, org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> varGen)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static org.apache.jena.sparql.syntax.Element
    applyTransform(org.apache.jena.graph.Triple triple, Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates, org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> varGen)
    Returns null if no transformation needed to be applied
    static org.apache.jena.sparql.syntax.Element
    applyTransform(org.apache.jena.sparql.syntax.ElementPathBlock el, Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates, org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> rootVarGen)
     
    static org.apache.jena.sparql.syntax.Element
    applyTransform(org.apache.jena.sparql.syntax.ElementTriplesBlock el, Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates, org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> rootVarGen)
     
    static org.apache.jena.sparql.syntax.Element
    createElementForConcretePredicate(org.apache.jena.sparql.core.Var pVar, org.apache.jena.graph.Node pRef, org.apache.jena.graph.Node s, org.apache.jena.graph.Node o, org.aksw.jenax.sparql.fragment.api.Fragment2 relation, org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> varGen)
     
    static org.apache.jena.sparql.syntax.Element
    createElementForVariablePredicate(org.apache.jena.sparql.core.Var pVar, org.apache.jena.graph.Node s, org.apache.jena.graph.Node o, Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates, org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> varGen)
     
    static org.apache.jena.query.Query
    transform(org.apache.jena.query.Query query, Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates, boolean cloneOnChange)
     
    org.apache.jena.sparql.syntax.Element
    transform(org.apache.jena.sparql.syntax.ElementPathBlock el)
     
    static org.apache.jena.sparql.syntax.Element
    transform(org.apache.jena.sparql.syntax.Element element, Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates)
     
    org.apache.jena.sparql.syntax.Element
    transform(org.apache.jena.sparql.syntax.ElementTriplesBlock el)
     

    Methods inherited from class org.apache.jena.sparql.syntax.syntaxtransform.ElementTransformCopyBase

    transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • virtualPredicates

      protected Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates
    • varGen

      protected org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> varGen
  • Constructor Details

    • ElementTransformVirtualPredicates

      public ElementTransformVirtualPredicates()
    • ElementTransformVirtualPredicates

      public ElementTransformVirtualPredicates(Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates)
    • ElementTransformVirtualPredicates

      public ElementTransformVirtualPredicates(Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates, org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> varGen)
  • Method Details

    • transform

      public org.apache.jena.sparql.syntax.Element transform(org.apache.jena.sparql.syntax.ElementTriplesBlock el)
      Specified by:
      transform in interface org.apache.jena.sparql.syntax.syntaxtransform.ElementTransform
      Overrides:
      transform in class org.apache.jena.sparql.syntax.syntaxtransform.ElementTransformCopyBase
    • transform

      public org.apache.jena.sparql.syntax.Element transform(org.apache.jena.sparql.syntax.ElementPathBlock el)
      Specified by:
      transform in interface org.apache.jena.sparql.syntax.syntaxtransform.ElementTransform
      Overrides:
      transform in class org.apache.jena.sparql.syntax.syntaxtransform.ElementTransformCopyBase
    • applyTransform

      public static org.apache.jena.sparql.syntax.Element applyTransform(org.apache.jena.sparql.syntax.ElementTriplesBlock el, Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates, org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> rootVarGen)
    • applyTransform

      public static org.apache.jena.sparql.syntax.Element applyTransform(org.apache.jena.sparql.syntax.ElementPathBlock el, Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates, org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> rootVarGen)
    • applyTransform

      public static org.apache.jena.sparql.syntax.Element applyTransform(org.apache.jena.graph.Triple triple, Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates, org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> varGen)
      Returns null if no transformation needed to be applied
      Parameters:
      triple -
      virtualPredicates -
      varGen -
      Returns:
    • createElementForVariablePredicate

      public static org.apache.jena.sparql.syntax.Element createElementForVariablePredicate(org.apache.jena.sparql.core.Var pVar, org.apache.jena.graph.Node s, org.apache.jena.graph.Node o, Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates, org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> varGen)
    • createElementForConcretePredicate

      public static org.apache.jena.sparql.syntax.Element createElementForConcretePredicate(org.apache.jena.sparql.core.Var pVar, org.apache.jena.graph.Node pRef, org.apache.jena.graph.Node s, org.apache.jena.graph.Node o, org.aksw.jenax.sparql.fragment.api.Fragment2 relation, org.aksw.commons.collections.generator.Generator<org.apache.jena.sparql.core.Var> varGen)
      Parameters:
      p - a concrete predicate
      s -
      o -
      virtualPredicates -
    • transform

      public static org.apache.jena.query.Query transform(org.apache.jena.query.Query query, Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates, boolean cloneOnChange)
    • transform

      public static org.apache.jena.sparql.syntax.Element transform(org.apache.jena.sparql.syntax.Element element, Map<org.apache.jena.graph.Node,org.aksw.jenax.sparql.fragment.api.Fragment2> virtualPredicates)