Current OGC policy is for srsName to be encoded as an HTTP URI:
http://www.opengis.net/def/crs/EPSG/0/4326

We currently support parsing HTTP srsNames in the GML 2 form:
http://www.opengis.net/gml/srs/epsg.xml#4326

This is done by HTTP_AuthorityFactory. The authority for this form, set 
in Citations.HTTP_OGC, is "http://www.opengis.net";.

The problem is that ManyAuthoritiesFactory assumes that the correct 
factory for an srsName can be found by matching the start of the srsName 
against the authority for the factory. This assumption prevents me from 
adding a second factory for "http://www.opengis.net/def/crs/"; because 
these URIs will also be matched by HTTP_AuthorityFactory.

I can either:
(1) Change the authority of Citations.HTTP_OGC from 
"http://www.opengis.net"; to "http://www.opengis.net/gml/srs/"; so that I 
can add a new factory with authority "http://www.opengis.net/def/crs/";, or
(2) Hack HTTP_AuthorityFactory to support the new form.

Option (1) appears to be the cleanest because it preserves the 
one-factory-per-form pattern. However, it will break any third-party 
code that depends on the authority identifier, making it a 
backwards-incompatible change.

Option (2) would be quite straightforward, but I am worried about hidden 
magic axis-order behaviour. For historical reasons (we can still see the 
scars), the GML 2 form is treated as having longitude/latitude  axis 
order by applications such as GeoServer:
http://docs.geoserver.org/latest/en/user/services/wfs/basics.html#axis-ordering

I do not know where this conversion occurs. Does anyone know of using 
HTTP_AuthorityFactory to parse the new HTTP URI form 
http://www.opengis.net/def/crs/EPSG/0/4326 would cause the resulting CRS 
it to have longitude/latitude axis order? (It is meant to have 
latitude/longitude axis order.) There is some code in 
HTTP_AuthorityFactory.defaultAxisOrderHints, but I do not understand 
what it does nor how it is used.

I will be writing unit tests to gather evidence.

For more discussion on why we need HTTP URIs, see:
https://jira.codehaus.org/browse/GEOT-4160

Kind regards,

-- 
Ben Caradoc-Davies <ben.caradoc-dav...@csiro.au>
Software Engineer
CSIRO Earth Science and Resource Engineering
Australian Resources Research Centre


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to