Hi Ben,
Yes, this was a cut and paste issue after trying various attempts to have Geoserver encode the gml:ids automatically, not in the original configuration.
<OCQL>SPECIMEN_POINT_GML_ID</OCQL>-->
Cheers
Bruce Simons
Information Modeller
CSIRO Land and Water/ Environmental Information Infrastructures
E: bruce.simons@...367... T: +61 3 9252 6514 M: +61 475 954 391
PO Box 56, Highett, Victoria, 3190
-----Original Message-----
From: Ben Caradoc-Davies [mailto:ben@…6881…]
Sent: Wednesday, 25 November 2015 2:02 PM
To: Simons, Bruce (L&W, Clayton) <Bruce.Simons@...367...>; geoserver-users@lists.sourceforge.net
Subject: Re: [Geoserver-users] app-schema location gml:id href
Bruce,
that looks like a bug to me. Even without the COUNT (all >14000 features), I still see no id specimen.199.CAN.C502.1.location in the response, making the xlink:href invalid. xlinks should only inserted by the encoder at the last moment, when encoding a response and the id has already been seen, so COUNT should not make a difference.
You also have a trailing closing comment ("-->") in your mapping making your mapping file malformed:
<OCQL>SPECIMEN_POINT_GML_ID</OCQL>-->
Please remove this trailing closing comment and re-test.
You have already performed the best test: leaving out the mapping for idExpression. The fact that this succeeded suggests that your data source is fine.
Kind regards,
Ben.
On 25/11/15 10:44, Bruce.Simons@...367... wrote:
Hi,
I'm getting some strange behaviour when I attempt to encode SF_Specimen/samplingLocation.
The first samplingLocation/gml:Point is being correctly encoded, but all subsequent locations, whether at that location or a different one, are # xlink:refs.
For example:
http://nssc-soilml-vc.nexus.csiro.au:8080/geoserver/wfs?SERVICE=WFS&VE
RSION=2.0.0&REQUEST=GetFeature&TYPENAME=spec:SF_Specimen&COUNT=100&OUT
PUTFORMAT=gml32
returns:
<snip>
<spec:samplingLocation>
<gml:Point gml:id="specimen.199.CAN.C410.1.location" srsDimension="2" srsName="urn:ogc:def:crs:EPSG::4326">
<gml:pos>-34.79847 146.067917</gml:pos>
</gml:Point>
</spec:samplingLocation>
<snip>
spec:samplingLocation xlink:href="#specimen.199.CAN.C410.1.location"
/> <-- this is correct <snip> <spec:samplingLocation
xlink:href="#specimen.199.CAN.C502.1.location" /> <-- there is no
gml:Point in the returned file for this location <snip>
<spec:samplingLocation xlink:href="#specimen.199.CAN.C503.1.location"
/> <-- there is no gml:Point in the returned file for this location
<...>
With no actual gml:Point for specimen.199.CAN.C502.1.location, specimen.199.CAN.C503.1.location etc.
The configuration file for the spec:samplingLocation has:
<AttributeMapping>
<targetAttribute>spec:samplingLocation</targetAttribute>
<idExpression>
<OCQL>SPECIMEN_POINT_GML_ID</OCQL>-->
</idExpression>
<sourceExpression>
<OCQL>SPECIMEN_POINT</OCQL>
</sourceExpression>
</AttributeMapping>
I've tried leaving the idExpression off (returns all the gml:Points but is invalid as it leaves the gml:id off).
Thoughts?
Cheers
Bruce Simons
Information Modeller
CSIRO Land and Water/ Environmental Information Infrastructures
E: bruce.simons@...367...<mailto:bruce.simons@…367…> T: +61 3 9252
6514 M: +61 475 954 391 PO Box 56, Highett, Victoria, 3190
----------------------------------------------------------------------
-------- Go from Idea to Many App Stores Faster with Intel(R) XDK Give
your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741551&iu=/4140
_______________________________________________
Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users
--
Ben Caradoc-Davies <ben@...6881...>
Director
Transient Software Limited <http://transient.nz/> New Zealand