﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
9566	GeoJSON regexes doesn't accept leading and trailing whitespace or GeometryCollections	jbronn	jbronn	"{{{
#!python
from django.contrib.gis import gdal

json1 = '{ ""type"": ""MultiPolygon"", ""coordinates"": [ [ [ [ 102.000000, 2.000000 ], [ 103.000000, 2.000000 ], [ 103.000000, 3.000000 ], [ 102.000000, 3.000000 ], [ 102.000000, 2.000000 ] ] ], [ [ [ 100.000000, 0.000000 ], [ 101.000000, 0.000000 ], [ 101.000000, 1.000000 ], [ 100.000000, 1.000000 ], [ 100.000000, 0.000000 ] ], [ [ 100.200000, 0.200000 ], [ 100.800000, 0.200000 ], [ 100.800000, 0.800000 ], [ 100.200000, 0.800000 ], [ 100.200000, 0.200000 ] ] ] ] }'

json2 = """"""

{ ""type"": ""MultiPolygon"",
  ""coordinates"": [
    [[[102.0, 2.0], [103.0, 2.0], [103.0, 3.0], [102.0, 3.0], [102.0, 2.0]]],
    [[[100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0]],
     [[100.2, 0.2], [100.8, 0.2], [100.8, 0.8], [100.2, 0.8], [100.2, 0.2]]]
    ]
  }

""""""

g1 = gdal.OGRGeometry(json1)
g2 = gdal.OGRGeometry(json2)
}}}

Trying to execute this raises this:
{{{
Traceback (most recent call last):
  File ""geojson_regex.py"", line 18, in <module>
    g2 = gdal.OGRGeometry(json2)
  File ""/Users/jbronn/django/1.0.X/django/contrib/gis/gdal/geometries.py"", line 106, in __init__
    ogr_t = OGRGeomType(geom_input)
  File ""/Users/jbronn/django/1.0.X/django/contrib/gis/gdal/geomtype.py"", line 29, in __init__
    raise OGRException('Invalid OGR String Type ""%s""' % type_input)
django.contrib.gis.gdal.error.OGRException: Invalid OGR String Type ""

{ ""type"": ""MultiPolygon"",
  ""coordinates"": [
    [[[102.0, 2.0], [103.0, 2.0], [103.0, 3.0], [102.0, 3.0], [102.0, 2.0]]],
    [[[100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0]],
     [[100.2, 0.2], [100.8, 0.2], [100.8, 0.8], [100.2, 0.8], [100.2, 0.2]]]
    ]
  }

""
}}}

Oh, and did I mention because the `{` and `}` characters aren't accepted, it can't parse the GeoJSON of geometry collections.

Attached is patch that improves the GeoJSON regex situation in the GDAL and GEOS libraries."		closed	GIS	1.0		fixed	gis geojson gdal		Accepted	1	0	1	0	0	0
