+ let height_of_ref = function
+ | NReference.Def h -> h
+ | NReference.Fix(_,_,h) -> h
+ | _ -> 0
+
+ let compare_refs (NReference.Ref (u1,r1)) (NReference.Ref (u2,r2)) =
+ let x = height_of_ref r2 - height_of_ref r1 in
+ if x = 0 then
+ Hashtbl.hash (NUri.string_of_uri u1,r1) -
+ Hashtbl.hash (NUri.string_of_uri u2,r2)
+ else x
+