[geos-devel] Binary Predicate Bug - Even Worse!

Paul Ramsey pramsey at refractions.net
Tue Jun 12 11:42:14 EDT 2007

The OGC SFSQL document says that

A.Within(B) implies Insersection(A,B) == A

And Contains is just defined for commutative purposes against Within():

A.Within(B) implies B.Contains(A).

So, you might not like the semantics, but they are implemented as 
defined by the standards body.


Todd Jellett wrote:
> It turns out that this is also the case for identical geometries!
> If you take just GeomA and run all the listed binary predicates (below) 
> against itself, you get exactly the same as below.
> Running GeomA->GeomA I get:
> Disjoint    False
> Equal       True
> Touch      False
> Contain    True
> Within      True
> Overlap    False
> Running a simple geometry against itself should return True for Equals 
> *only*. It is ambiguous to be also contained and within.
> Todd


   Paul Ramsey
   Refractions Research
   pramsey at refractions.net
   Phone: 250-383-3022
   Cell: 250-885-0632

More information about the geos-devel mailing list