Hi,

Cas compares are very difficult to get to work over general CAS structures, due
to the ability of a CAS to contain various kinds of circularity in the
structures, and the fact that two CASs could be equal, but have the FSs in
different order.

The CasCompares that are embedded into v2 are "quick and dirty" approximations
to complete cas compares; these were used in test cases to give a (not 100%
sure) measure of confidence.

For v3, it was important to be able to more completely compare the CASs produced
by v2 vs v3, so more work was put into a more complete (but it's still not quite
100%, but much closer) CAS comparison utility - this is
org.apache.uima.cas.impl.CasCompare.  It has a rather big Javadoc at the
beginning describing how to use it.

The XmiCompare wasn't intended to be part of the UIMA-SDK, because it was
written for a very specialized testing scenario, with specific "conventions"
where it was desired to compare two directories full of xmi Cas representations,
plus a type system descriptor named (by convention, exactly)
"CAS_typeSystem_desc.xml". I wrote this when doing large-scale testing of v3 vs
v2 on one project where it had sets of results in this kind of format.

It would need work to make it more generally usable.

I agree it's not trivial to backport the "improved" CasCompare from v3 to v2; so
it's not on anyone's todo list at the moment (that I know of).

-Marshall

On 10/23/2017 5:39 AM, Richard Eckart de Castilho wrote:
> Hi all,
>
> I noticed that there is a CasCompare and XmiCompare in UIMA v3, but
> it doesn't seem to be easily back-portable to UIMA v2 (using copy/paste
> and updating imports). 
>
> Is there something similar available in UIMA v2?
>
> There seems to be a CasCompare embedded into BinaryCasSerDes4... I didn't
> find an XmiCompare though.
>
> Cheers,
>
> -- Richard
>

Reply via email to