Hi Marcus,

It would be good to see the configuration mapping files to investigate the 
empty <gsmlgu:GeologicUnit/>.
It's strange that there's a child inside an xlink:href. Also, I'm not able to 
access your links. 

Re: the 2nd issue (ValueReference filter). This is WFS 2.0 filter syntax and 
not supported in app-schema.
You can raise a bug but we haven't scheduled a plan to improve WFS 2.0 support 
for app-schema yet.

Cheers
Rini
 
-------- Original Message --------
Subject: [Geoserver-users] Some GeoServer 2.3.x app-schema GeoSciML v3 (GML 3.2 
application schema) tests
Date: Thu, 21 Feb 2013 19:43:56 +0800
From: Sen, Marcus A. <[email protected]>
To: [email protected]
<[email protected]>

I've been doing some test queries using complex features and the GeoSciML v3.0 
(www.geosciml.org) application schemas which are based on GML 3.2.1.

I couldn't test with 2.3-beta1 because of
http://jira.codehaus.org/browse/GEOS-5496 so I've used a later nightly build; 
namely 
http://gridlock.opengeo.org/geoserver/2.3.x/geoserver-2.3.x-2013-02-14-war.zip
and
http://gridlock.opengeo.org/geoserver/2.3.x/ext-2013-02-14/geoserver-2.3-SNAPSHOT-app-schema-plugin.zip
running in Apache Tomcat 6.

I'm using a PostGIS backend with the data loaded from the scripts at 
https://www.seegrid.csiro.au/subversion/GeoSciML/cgi-reference-dataset/tags/2013-02-20/data/database/cgi-reference-postgis.sql
and the GeoServer data directory at
https://www.seegrid.csiro.au/subversion/GeoSciML/cgi-reference-dataset/tags/2013-02-20/services/geoserver/postgis/data/
.

I have tested a number of queries which give errors as follows:

Example 1
---------
A simple GetFeature request with no filtering criteria:

http://ogcdev.bgs.ac.uk:8082/geoserver-2.3.x-2013-02-14/ows?service=WFS&version=2.0.0&request=GetFeature&typename=gsmlgu:GeologicUnit&count=100&;

or WFS 1.1.0 equivalent:

http://ogcdev.bgs.ac.uk:8082/geoserver-2.3.x-2013-02-14/ows?service=WFS&version=1.1.0&request=GetFeature&typename=gsmlgu:GeologicUnit&maxfeatures=100&outputFormat=gml32&;

both give the same results with all 35 gsmlgu:GeologicUnit's in the database 
but also two extra spurious empty gsmlgu:GeologicUnit elements:

<wfs:member
xlink:href="#gsmlgu.geologicunit.ref-16777549126931119"><gsmlgu:GeologicUnit/></wfs:member>

and

<wfs:member
xlink:href="#gsmlgu.geologicunit.ref-16777549126932875"><gsmlgu:GeologicUnit/></wfs:member>


Example 2
---------
A filter query  on a simple property works correctly,

E.g. POSTing the query below to 
http://ogcdev.bgs.ac.uk:8082/geoserver-2.3.x-2013-02-14/ows retrieves 
the correct single gsmlgu:GeologicUnit feature:

---
<?xml version="1.0" encoding="UTF-8"?>
<GetFeature version="2.0.0" service="WFS" 
xmlns="http://www.opengis.net/wfs/2.0";
     xmlns:fes="http://www.opengis.net/fes/2.0"; 
xmlns:xlink="http://www.w3.org/1999/xlink";
     xmlns:gml="http://www.opengis.net/gml/3.2"; 
xmlns:swe="http://www.opengis.net/swe/2.0";
     xmlns:gsml="http://xmlns.geosciml.org/GeoSciML-Core/3.0";
     xmlns:gsmlgu="http://xmlns.geosciml.org/GeologicUnit/3.0";
     xmlns:gsmlga="http://xmlns.geosciml.org/GeologicAge/3.0";
     count="100">
     <Query typeNames="gsmlgu:GeologicUnit">
         <fes:Filter>
             <fes:PropertyIsEqualTo>
                 <fes:ValueReference>gml:name</fes:ValueReference>
                 <fes:Literal>mullock heaps (Qhm)</fes:Literal>
             </fes:PropertyIsEqualTo>
         </fes:Filter>
     </Query>
</GetFeature>
---

but a query on a nested complex property such as below incorrectly 
retrieves all 35 features in the database rather than the 2 matching 
ones (and also includes the two extra spurious empty gsmlgu:GeologicUnit 
elements as with the unfiltered query in Example 1).

---
<?xml version="1.0" encoding="UTF-8"?>
<GetFeature version="2.0.0" service="WFS" 
xmlns="http://www.opengis.net/wfs/2.0";
     xmlns:fes="http://www.opengis.net/fes/2.0"; 
xmlns:xlink="http://www.w3.org/1999/xlink";
     xmlns:gml="http://www.opengis.net/gml/3.2"; 
xmlns:swe="http://www.opengis.net/swe/2.0";
     xmlns:gsml="http://xmlns.geosciml.org/GeoSciML-Core/3.0";
     xmlns:gsmlgu="http://xmlns.geosciml.org/GeologicUnit/3.0";
     xmlns:gsmlga="http://xmlns.geosciml.org/GeologicAge/3.0";
     count="100">
     <Query typeNames="gsmlgu:GeologicUnit">
         <fes:Filter>
             <fes:PropertyIsEqualTo>
 
<fes:ValueReference>gsml:relatedFeature/gsmlga:GeologicHistory/gsml:relatedFeature/gsmlga:GeologicEvent/gsmlga:eventEnvironment/swe:Category/swe:label</fes:ValueReference>
                 <fes:Literal>terrestrial setting</fes:Literal>
             </fes:PropertyIsEqualTo>
         </fes:Filter>
     </Query>
</GetFeature>
---

Should I file bug reports about these results?

Marcus Sen

This message (and any attachments) is for the recipient only. NERC is 
subject to the Freedom of Information Act 2000 and the contents of this 
email and any reply you make may be disclosed by NERC unless it is 
exempt from release under the Act. Any material supplied to NERC may be 
stored in an electronic records management system.
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
Geoserver-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users


-- 
Ben Caradoc-Davies <[email protected]>
Software Engineer
CSIRO Earth Science and Resource Engineering
Australian Resources Research Centre
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
Geoserver-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Reply via email to