> so which ones are remaining, following the clarification you mention below?
Hi Peter, thanks for the clarifications. To be honest, my main reluctance to GML-based standards is that they are very rich, and thus difficult to understand and implement. A rather large chain of depending standards : GMLJP2 refers to GMLCov which refers to GML which refers to etc.... And generally there are many ways in GML to express the same thing, which makes it difficult to implement the reading part. I had some fun a few weeks ago with that with polygons : http://erouault.blogspot.fr/2014/04/gml- madness.html ... To come back to more concrete considerations, the axis order issue, as confirmed by Jukka, is something that we constantly have to face and have troubles to get right. Jukka, in his review of the new proposed GMLJP2 ( http://lists.opengeospatial.org/pipermail/requests/2014-March/000220.html ), also raised an interesting question about all the different forms of urn/uri that might be found to express SRS. Another related point is: how do you encode a SRS that is not in the EPSG database ? In GDAL's code related to generation of GMLJP2, I see that when we write a GMLJP2 with a SRS that is not linked to an EPSG code, we build a local GML definition of the SRS, put it in a CRSDictionary.gml JP2 box and link to it with "gmljp2://xml/CRSDictionary.gml#ogrcrs1" in the GMLJP2 box. So, to use GMLCov in PNG/JPEG/etc... we would likely need both a GMLCov "box" and a CRS "box". Not very convenient. And for fun, you'll find below in [1] how the proj.4 string "+proj=utm +zone=36 +ellps=WGS84" is translated into GML... Another practical issue is that the current export/import code in GDAL from/into the GML definition is limited to Transverse Mercator and Lambert Conformal Conic. No fundamental reason that it couldn't be improved, but someone would have to do it. Besides, I'm not sure if many other software packages implement that GML definition of SRS either. For example, it looks like GeoTools doesn't : http://osgeo-org.1560.x6.nabble.com/Parsing-GML-CRS-definitions-td4963620.html I agree with Frank that it is difficult to get excited by GeoTIFF either. The main advantages I can see is that : * it is already rather well supported by most geo-enabled software due to its long existence and maturity. So basing something on it shouldn't involve a lot of work. * its binary form makes it rather compact, which is good for example if you want to add georeferencing to small PNG/JPEG tiles. Best regards, Even [1] <gml:ProjectedCRS gml:id="ogrcrs1"> <gml:srsName>UTM Zone 36, Northern Hemisphere</gml:srsName> <gml:baseCRS> <gml:GeographicCRS gml:id="ogrcrs2"> <gml:srsName>WGS 84</gml:srsName> <gml:usesEllipsoidalCS> <gml:EllipsoidalCS gml:id="ogrcrs3"> <gml:csName>ellipsoidal</gml:csName> <gml:csID> <gml:name gml:codeSpace="urn:ogc:def:cs:EPSG::">6402</gml:name> </gml:csID> <gml:usesAxis> <gml:CoordinateSystemAxis gml:id="ogrcrs4" gml:uom="urn:ogc:def:uom:EPSG::9102"> <gml:name>Geodetic latitude</gml:name> <gml:axisID> <gml:name gml:codeSpace="urn:ogc:def:axis:EPSG::">9901</gml:name> </gml:axisID> <gml:axisAbbrev>Lat</gml:axisAbbrev> <gml:axisDirection>north</gml:axisDirection> </gml:CoordinateSystemAxis> </gml:usesAxis> <gml:usesAxis> <gml:CoordinateSystemAxis gml:id="ogrcrs5" gml:uom="urn:ogc:def:uom:EPSG::9102"> <gml:name>Geodetic longitude</gml:name> <gml:axisID> <gml:name gml:codeSpace="urn:ogc:def:axis:EPSG::">9902</gml:name> </gml:axisID> <gml:axisAbbrev>Lon</gml:axisAbbrev> <gml:axisDirection>east</gml:axisDirection> </gml:CoordinateSystemAxis> </gml:usesAxis> </gml:EllipsoidalCS> </gml:usesEllipsoidalCS> <gml:usesGeodeticDatum> <gml:GeodeticDatum gml:id="ogrcrs6"> <gml:datumName>unknown</gml:datumName> <gml:usesPrimeMeridian> <gml:PrimeMeridian gml:id="ogrcrs7"> <gml:meridianName>Greenwich</gml:meridianName> <gml:greenwichLongitude> <gml:angle gml:uom="urn:ogc:def:uom:EPSG::9102">0</gml:angle> </gml:greenwichLongitude> </gml:PrimeMeridian> </gml:usesPrimeMeridian> <gml:usesEllipsoid> <gml:Ellipsoid gml:id="ogrcrs8"> <gml:ellipsoidName>WGS84</gml:ellipsoidName> <gml:semiMajorAxis gml:uom="urn:ogc:def:uom:EPSG::9001">6378137</gml:semiMajorAxis> <gml:secondDefiningParameter> <gml:inverseFlattening gml:uom="urn:ogc:def:uom:EPSG::9201">298.257223563</gml:inverseFlattening> </gml:secondDefiningParameter> </gml:Ellipsoid> </gml:usesEllipsoid> </gml:GeodeticDatum> </gml:usesGeodeticDatum> </gml:GeographicCRS> </gml:baseCRS> <gml:definedByConversion> <gml:Conversion gml:id="ogrcrs9"> <gml:usesMethod xlink:href="urn:ogc:def:method:EPSG::9807" /> <gml:usesParameterValue> <gml:value gml:uom="urn:ogc:def:uom:EPSG::9102">0</gml:value> <gml:valueOfParameter xlink:href="urn:ogc:def:parameter:EPSG::8801" /> </gml:usesParameterValue> <gml:usesParameterValue> <gml:value gml:uom="urn:ogc:def:uom:EPSG::9102">33</gml:value> <gml:valueOfParameter xlink:href="urn:ogc:def:parameter:EPSG::8802" /> </gml:usesParameterValue> <gml:usesParameterValue> <gml:value gml:uom="urn:ogc:def:uom:EPSG::9001">0.9996</gml:value> <gml:valueOfParameter xlink:href="urn:ogc:def:parameter:EPSG::8805" /> </gml:usesParameterValue> <gml:usesParameterValue> <gml:value gml:uom="urn:ogc:def:uom:EPSG::9001">500000</gml:value> <gml:valueOfParameter xlink:href="urn:ogc:def:parameter:EPSG::8806" /> </gml:usesParameterValue> <gml:usesParameterValue> <gml:value gml:uom="urn:ogc:def:uom:EPSG::9001">0</gml:value> <gml:valueOfParameter xlink:href="urn:ogc:def:parameter:EPSG::8807" /> </gml:usesParameterValue> </gml:Conversion> </gml:definedByConversion> <gml:usesCartesianCS> <gml:CartesianCS gml:id="ogrcrs10"> <gml:csName>Cartesian</gml:csName> <gml:csID> <gml:name gml:codeSpace="urn:ogc:def:cs:EPSG::">4400</gml:name> </gml:csID> <gml:usesAxis> <gml:CoordinateSystemAxis gml:id="ogrcrs11" gml:uom="urn:ogc:def:uom:EPSG::9001"> <gml:name>Easting</gml:name> <gml:axisID> <gml:name gml:codeSpace="urn:ogc:def:axis:EPSG::">9906</gml:name> </gml:axisID> <gml:axisAbbrev>E</gml:axisAbbrev> <gml:axisDirection>east</gml:axisDirection> </gml:CoordinateSystemAxis> </gml:usesAxis> <gml:usesAxis> <gml:CoordinateSystemAxis gml:id="ogrcrs12" gml:uom="urn:ogc:def:uom:EPSG::9001"> <gml:name>Northing</gml:name> <gml:axisID> <gml:name gml:codeSpace="urn:ogc:def:axis:EPSG::">9907</gml:name> </gml:axisID> <gml:axisAbbrev>N</gml:axisAbbrev> <gml:axisDirection>north</gml:axisDirection> </gml:CoordinateSystemAxis> </gml:usesAxis> </gml:CartesianCS> </gml:usesCartesianCS> </gml:ProjectedCRS> -- Geospatial professional services http://even.rouault.free.fr/services.html _______________________________________________ gdal-dev mailing list gdal-dev@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/gdal-dev