Class ComparableNode

java.lang.Object
org.aksw.jenax.arq.util.node.ComparableNode
All Implemented Interfaces:
Serializable, Comparable<ComparableNode>

public class ComparableNode extends Object implements Comparable<ComparableNode>, Serializable
A wrapper that makes Nodes comparable by rdf term equivalence. For example, "5"^^xsd:int DOES NOT equal "5"^^xsd:double. Allows for use in guava's RangeSet.
Author:
raven
See Also:
  • Field Details

    • node

      protected org.apache.jena.graph.Node node
  • Constructor Details

    • ComparableNode

      protected ComparableNode(org.apache.jena.graph.Node node)
  • Method Details

    • getNode

      public org.apache.jena.graph.Node getNode()
    • wrap

      public static ComparableNode wrap(org.apache.jena.graph.Node node)
    • compareTo

      public int compareTo(ComparableNode that)
      Compare strictly by value if possible. Comparing 5 (int) to to 5.0 (double) can thus yield 0. In contrast, NodeValue.compareAlways(NodeValue, NodeValue) discriminates equal values further by the rdf term. fallback to lexical comparison
      Specified by:
      compareTo in interface Comparable<ComparableNode>
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object