Hi Jesse,

as Zachary thankfully pointed out, our implementation only supports GML 2.0. It is based on the JTS library [1], which seems to return a NullPointerException for geo elements that do not comply with 2.0. I’ve slightly updated the error message [2] to make clearer what’s going on.

Best,
Christian

[1] http://www.vividsolutions.com/jts/JTSHome.htm
________________________________________________

On Wed, Mar 26, 2014 at 10:49 PM, Jesse Clark <jesse@corengi.com> wrote:
Hi All,

I am writing a feature that will rely on geo:distance to give me the distance between two points of latitude and longitude.

I am a total n00b to GIS and GML so I may have messed this up, but based on a bit of research to figure out how to define the coordinate system and based on the example query from the BaseX docs I came up with the following query as a test:

import module namespace geo = "http://expath.org/ns/geo";
declare namespace gml='http://www.opengis.net/gml';

let $vancouver := <gml:Point srsDimension="2" srsName="http://www.opengis.net/def/crs/EPSG/0/4326">
                    <gml:pos>49.40 -123.26</gml:pos>
                  </gml:Point>

let $seattle := <gml:Point srsDimension="2" srsName="http://www.opengis.net/def/crs/EPSG/0/4326">
                  <gml:pos>47.68 -122.37</gml:pos>
                </gml:Point>

return geo:distance($vancouver, $seattle)

I have this in a file and am trying to execute it from the CLI with: 'RUN [/path/to/file]'

It pukes with this error:

Stopped at  [/path/to/file], 12/21:
[GEO:GEO0002] java.lang.NullPointerException

I am running off of the zip distribution of BaseX so I believe the geo module should be included.

Any guidance would be greatly appreciated.

Best,
-Jesse

_______________________________________________
BaseX-Talk mailing list
BaseX-Talk@mailman.uni-konstanz.de
https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk