Class ResultSetCompare

java.lang.Object
org.apache.jena.sparql.resultset.ResultSetCompare

public class ResultSetCompare extends Object
Comparison of ResultSets. Note that reading ResultSets is destructive so consider using ResultSetRewindable from ResultSetFactory.makeRewindable(org.apache.jena.rdf.model.Model)
  • Constructor Details

    • ResultSetCompare

      public ResultSetCompare()
  • Method Details

    • equalsByValue

      public static boolean equalsByValue(ResultSet rs1, ResultSet rs2)
      Compare two result sets for equivalence. Equivalence means: A row rs1 has one matching row in rs2, and vice versa. A row is only matched once. Rows match if they have the same variables with the same values. bNodes must map to a consistent other bNodes. Value comparisons of nodes. Destructive - rs1 and rs2 are both read, possibly to exhaustion.
      Parameters:
      rs1 -
      rs2 -
      Returns:
      true if they are equivalent
    • equalsByValue

      public static boolean equalsByValue(RowSet rs1, RowSet rs2)
    • equalsByTest

      public static boolean equalsByTest(Collection<Binding> b1, Collection<Binding> b2, EqualityTest match)
    • equalsByTerm

      public static boolean equalsByTerm(ResultSet rs1, ResultSet rs2)
      compare two result sets for equivalence. Equivalence means: A row rs1 has one matching row in rs2, and vice versa. A row is only matched once. Rows match if they have the same variables with the same values, bNodes must map to a consistent other bNodes. Term comparisons of nodes. Destructive - rs1 and rs2 are both read, possibly to exhaustion.
      Parameters:
      rs1 -
      rs2 -
      Returns:
      true if they are equivalent
    • equalsByTerm

      public static boolean equalsByTerm(RowSet rs1, RowSet rs2)
    • equalsByValueAndOrder

      public static boolean equalsByValueAndOrder(ResultSet rs1, ResultSet rs2)
      Compare two result sets for equivalence. Equivalence means: Each row in rs1 matches the same index row in rs2. Rows match if they have the same variables with the same values, bNodes must map to a consistent other bNodes. Value comparisons of nodes. Destructive - rs1 and rs2 are both read, possibly to exhaustion.
      Parameters:
      rs1 -
      rs2 -
      Returns:
      true if they are equivalent
    • equalsByValueAndOrder

      public static boolean equalsByValueAndOrder(RowSet rs1, RowSet rs2)
    • equalsByTermAndOrder

      public static boolean equalsByTermAndOrder(ResultSet rs1, ResultSet rs2)
      compare two result sets for equivalence. Equivalence means: Each row in rs1 matches the same index row in rs2. Rows match if they have the same variables with the same values, bNodes must map to a consistent other bNodes. RDF term comparisons of nodes. Destructive - rs1 and rs2 are both read, possibly to exhaustion.
      Parameters:
      rs1 -
      rs2 -
      Returns:
      true if they are equivalent
    • equalsByTermAndOrder

      public static boolean equalsByTermAndOrder(RowSet rs1, RowSet rs2)
    • equalsExact

      public static boolean equalsExact(ResultSet rs1, ResultSet rs2)
      compare two result sets for exact equality equivalence. Exact equalitymeans: Each row in rs1 matches the same index row in rs2. Rows match if they have the same variables with the same values, bNodes must have same labels Destructive - rs1 and rs2 are both read, possibly to exhaustion.
      Parameters:
      rs1 -
      rs2 -
      Returns:
      true if they are equivalent
    • equalsExact

      public static boolean equalsExact(RowSet rs1, RowSet rs2)
    • isomorphic

      public static boolean isomorphic(ResultSet rs1, ResultSet rs2)
      Compare two result sets for bNode isomorphism equivalence. Only does RDF term comparison.
    • isomorphic

      public static boolean isomorphic(RowSet rs1, RowSet rs2)
    • equal

      public static boolean equal(Binding bind1, Binding bind2, EqualityTest test)
      Compare two bindings, use the node equality test provided