Re: [mapserver-users] invalid schema location?
Roy Braam
roybraam at b3partners.nl
Tue May 4 01:41:11 PDT 2010
Thanks,
I tested it, but with a post message and a GetFeature as xml body mapserver keeps responding with a invalid schema (with spaces).
Even without a outputformat in the getFeature.
Is this bug going to be solved in a next version of mapserver?
Roy
_____
From: Rahkonen Jukka [mailto:Jukka.Rahkonen at mmmtike.fi]
To: Roy Braam [mailto:roybraam at b3partners.nl], mapserver-users at lists.osgeo.org
Sent: Mon, 26 Apr 2010 15:27:48 +0200
Subject: Re: [mapserver-users] invalid schema location?
Hi,
I inspired to compare how Mapserver and Geoserver are handling this thing. At least I can say that they are doing thing in a bit different way, and Geoserver is creating alwayd the DescribeFeatureType URL in the GetFeature output without OUTPUTFORMAT.
GEOSERVER
==========
- GetFeature with WFS version 1.1.0 and outputformat=gml2
-> RESULT schema location contains "...geoserver/wfs?service=WFS&version=1.0.0&request=DescribeFeatureType&typeName=..."
So the GetFeature was done with version 1.1.0 but the URL to schema location is containing "version=1.0.0", and because WFS 1.0.0 default is gml2 this is giving a correct schema.
- GetFeature with WFS version 1.1.0 and outputformat=text/xml; subtype=gml/3.1.1
-> RESULT schema location contains "...geoserver/wfs?service=WFS&version=1.1.0&request=DescribeFeatureType&typeName=..."
Now the schema location URL is using "version=1.1.0" which defaults to gml3.1.1 and schema is correct.
MAPSERVER
==========
On the other hand, Mapserver version 5.2.1 behaves this way
GetFeature request wioth WFS version 1.1.0 and outputformat=gml2
(here is part of my test request literally: &service=wfs&version=1.1.0&request=getfeature&typeName=test&maxfeatures=2&OUTPUTFORMAT=gml2)
-> RESULT schema location contains
/cgi-bin/wfstest?SERVICE=WFS&VERSION=1.1.0&REQUEST=DescribeFeatureType&TYPENAME=test&OUTPUTFORMAT=XMLSCHEMA">
Running this DescribeFeatureType query returns schema with reference to "http://schemas.opengis.net/gml/2.1.2/feature.xsd"
Features in the GetFeature are in gml2 format.
I suppose this is working OK.
Request WFS version 1.1.0 and outputformat=text/xml; subtype=gml/3.1.1
(&service=wfs&version=1.1.0&request=getfeature&typeName=test&maxfeatures=2&OUTPUTFORMAT=text/xml; subtype=gml/3.1.1)
This does not work at all for me. Mapserver is returning features in gml2 format with this parameter, even if I am specially asking for gml3.1.1
Request WFS version 1.1.0 and without using outputformat at all (WFS 1.1.0 default is text/xml; subtype=gml/3.1.1)
- > schema location contains
cgi-bin/wfstest?SERVICE=WFS&VERSION=1.1.0&REQUEST=DescribeFeatureType&TYPENAME=test&OUTPUTFORMAT=text/xml; subtype=gml/3.1.1
Running this query returns schema with reference to "http://schemas.opengis.net/gml/3.1.1/base/gml.xsd"
Features in the GetFeature are in gml 3.1.1. format.
I suppose this is working OK. However, Mapserver does not need OUTPUTFORMAT parameter here but the result is the same even if I leave it out.
-Jukka Rahkonen-
_____
Lähettäjä: mapserver-users-bounces at lists.osgeo.org [mailto:mapserver-users-bounces at lists.osgeo.org] Puolesta Roy Braam
Lähetetty: 26. huhtikuuta 2010 14:26
Vastaanottaja: mapserver-users at lists.osgeo.org
Aihe: [mapserver-users] invalid schema location?
Hello List,
When i do a WFS getFeature request mapserver returns a xml that starts with:
<?xml version='1.0' encoding="ISO-8859-1" ?>
<wfs:FeatureCollection
xmlns:ms="http://mapserver.gis.umn.edu/mapserver"
xmlns:gml="http://www.opengis.net/gml"
xmlns:wfs="http://www.opengis.net/wfs"
xmlns:ogc="http://www.opengis.net/ogc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://mapserver.gis.umn.edu/mapserver http://server.nl/geoservices/aankoopgebieden?SERVICE=WFS&VERSION=1.1.0&REQUEST=DescribeFeatureType&TYPENAME=LL&OUTPUTFORMAT=text/xml; subtype=gml/3.1.1 http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/wfs.xsd" numberOfFeatures="16">
<gml:boundedBy>
If i read this site:
http://www.w3.org/TR/xmlschema-0/#schemaLocation
the schema locations needs to be "pairs of URI references, separated by white space".
Because the OUTPUTFORMAT="text/xml; subtype=gml/3.1.1" a space is in the url of the first pair in my example.
1) spaces are not valid in URLS??
2) you don't have pairs anymore. You have a odd number of values if you separate by space...
So, is mapserver generating a invalid XML?? Or i'm doing something wrong....
Version of mapserver = 5.6.3
Roy
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/mapserver-users/attachments/20100504/a99f6a4d/attachment.htm>
More information about the MapServer-users
mailing list