}
} else {
// Non literal properties.
- if (comparator.compare(g, s1.getObject(), s2.getObject()) != ResourceComparator.NO_MATCH) {
+ int comp = comparator.compare(g, s1.getObject(), s2.getObject());
+ if (comp == ResourceComparator.NO_MATCH) {
+ addModification(r1,s1,r2,s2);
+ } else if (comp != ResourceComparator.EXACT_MATCH) {
if (!s1.getObject().equals(s1.getSubject()) && !s2.getObject().equals(s2.getSubject())) {
if (!a1 && !a2) {
// compare props matches objects, so we can call that only for non asserted statements
addModification(r1,s1,r2,s2);
}
} else {
- addModification(r1,s1,r2,s2);
+ // Exact match, nothing to do.
}
}
} else {
}
case -1:{
if (DEBUG) System.out.println("Compare Prop diff1s " + printStatement(g,s1));
- addDeletion(s1);
+ // Use modification, since deletions do not support asserted statements
+ addModification(r1,s1,r2,null);
+ //addDeletion(s1);
i1++;
break;
}
case 1:{
if (DEBUG) System.out.println("Compare Prop diff2s " + printStatement(g,s2));
- addAddition(s2);
+ // Use modification, since additions do not support asserted statements
+ addModification(r1,null,r2,s2);
+ //addAddition(s2);
i2++;
break;
}