The ArcSDE topology engine is quite mature. It uses Clementini's topology rules, which includes the definition of a simple line. All polygon rings must adhere to simple line restrictions, and this line overlaps itself (linear intersection, not point). C:\>sdequery -l testshape2,shape -F1 SM_II:line:531404.44,104177.02,531401.59,104168.47 -v
ArcSDE 9.3 Generic Query Tool Thu Dec 30 08:53:42 2010
------------------------------------------------------------------------
1
objectid: 5
shape: Line shape (1 part, 2 vertices)
1 531404.440000, 104177.020000
2 531401.590000, 104168.470000
2
objectid: 6
shape: Line shape (1 part, 2 vertices)
1 531401.590000, 104168.470000
2 531401.600000, 104168.500000
2 rows found in 31.00 ms
C:\>sdequery -l testshape2,shape -F1 SM_II:line:531401.59,104168.47,531401.60,104168.50 -v
ArcSDE 9.3 Generic Query Tool Thu Dec 30 08:53:42 2010
------------------------------------------------------------------------
1
objectid: 5
shape: Line shape (1 part, 2 vertices)
1 531404.440000, 104177.020000
2 531401.590000, 104168.470000
2
objectid: 6
shape: Line shape (1 part, 2 vertices)
1 531401.590000, 104168.470000
2 531401.600000, 104168.500000
2 rows found in 47.00 ms
If you do the math, you'll see that segments 5 & 6 have reciprocal slopes;since they share a vertex, they overlap. In order for vertex #6 to be included, several points would need to be added,including a point to make a polygon of the deformed interior polygon ring, a vertex for the interior ring to touch, and vertices to open and close the interiorring. - V