Opened 16 years ago
Closed 16 years ago
#2215 closed defect (fixed)
GML driver having trouble detecting geometries when same name but different cased properties exist
Reported by: | hobu | Owned by: | warmerdam |
---|---|---|---|
Priority: | normal | Milestone: | 1.5.1 |
Component: | OGR_SF | Version: | unspecified |
Severity: | normal | Keywords: | gml |
Cc: |
Description
http://iowa.hobu.biz/wfs.response.txt
with the latest trunk, ogrinfo on this file reports the attributes, but it does not report geometries.
Chris Schmidt reports that it also doesn't work (no geometries) with 1.4.0, but it *does* work with 1.3.2.
Change History (3)
comment:1 by , 16 years ago
Component: | default → OGR_SF |
---|---|
Keywords: | gml added |
comment:2 by , 16 years ago
Milestone: | 1.6.0 → 1.5.1 |
---|---|
Status: | new → assigned |
On reflection, I've decided that GMLHandler::IsGeometryElement() really ought to do a case sensitive test of the element name which will help avoid this sort of false positive situation. I have applied this change in trunk (r13760) and 1.5 branch (r13761) and it fixes this particular problem.
comment:3 by , 16 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Summary: | GML driver having trouble with large multipolygon geometries from MapServer 4.10 → GML driver having trouble detecting geometries when same name but different cased properties exist |
confirmed that this fixes it.
The problem is that naming the geometry property ms:multipolygon is confusing the GML parser. It ends up passing that element down as the geometry instead of just the gml:MultiPolygon element and down as it ought. The file features look like:
I was able to get the file working properly by doing a search and replace of ms:multipolygon to ms:mpgeometry.
Ideally the GML parser would be much smarter. But that is hard to do, so a work around would be to modify MapServer to avoid using the same names for properties as are element names in GML.