Re: [mapserver-users] invalid schema location?

Roy Braam roybraam at b3partners.nl
Tue May 4 04:41:11 EDT 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&amp;VERSION=1.1.0&amp;REQUEST=DescribeFeatureType&amp;TYPENAME=LL&amp;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-0001.html


More information about the mapserver-users mailing list