[OpenLayers-Users] hardcoded gml:featureMemeber of WFS layer in
openlayers ?
Guðmundur Jökulsson
gudmundur.jokulsson at ksat.no
Tue Jul 6 08:37:38 EDT 2010
hi everyone,
I have a problem adding a WFS request as overlay on the openlayers map.
Is there a way to tell it to search for other featureProperty elements
then the basic "gml:featureMember" ?
Is it realy hard-coded into the parser source that the featureProperty
name shall be "gml:featureMember" ?
The WFS service is set up with a GML Application Profile which defines
its "FeaturePropertyType" as a restriction of the generic
gml:FeaturePropertyType (and similar for the FeatureCollectionType).
This means that the structure of the GML returned from the WFS request is:
<wfsos:featureCollection
xmlns:wfsos="http://cweb.ksat.no/cweb/schema/geoweb/oil" ...
schemaLocation="http://cweb.ksat.no/cweb/schema/geoweb/oil ...>
<wfsos:featureMember>
<wfsos:feature>
<wfsos:oilSpill>
<gml:Polygon srsName="EPSG:4326"> ........
It seems that the featureCollection level is ignored (as well as the
schema location - since the schema is not loaded), so that one is not
the problem.
I can set the name space prefix, and element name for the "feature"
level and the geometry, but can't find any way to do this for the
featureMember level!
If I run this from a file, and change the wfsos:featureMember into
gml:featureMember it works fine (even if it violates the schema).
To repeat the question: Is there any way to instruct openlayers to look
for wfsos:featureMember instead ?
PS:
Here is the code for the WFS request linkage:
wfs_ksat = new OpenLayers.Layer.Vector(id, {
strategies: [new OpenLayers.Strategy.BBOX()],
projection: new OpenLayers.Projection("EPSG:4326"),
protocol: new OpenLayers.Protocol.WFS.v1_0_0({
url: ksatWFSuri,
featureType: "feature",
featureNS: "http://cweb.ksat.no/cweb/schema/geoweb/oil",
featurePrefix: "wfsos",
geometryName: "oilSpill",
srsName: "EPSG:4326",
readFormat: new OpenLayers.Format.GML(),
outputFormat: "GML2"
}),
styleMap: styleMap
});
More information about the Users
mailing list