WFS Inline Schema

Simpson asimpson at I-55.COM
Tue Nov 8 16:34:37 EST 2005


Something along the lines of below xml.

When the namespace http://www.ttt.org/myns points to a URL back on the
server it came from, the XML parser in GeoTools tries to GET the document
but can't since I have basic auth running on the server and the XML parser
doesn't know how to authenticate.  Getting the main WFS calls
(getcapabilities, getfeature, etc) to authenticate is fairly straight
forward (somebody gave me the code :) ), but the XML parser is deep in the
call stack and running in a thread, so am a little apprehensive about
digging into it.

Unfortunately, my bodged up XML below doesn't validate saying:

java.io.IOException: org.xml.sax.SAXException: Could not find element
handler for http://www.w3.org/2001/XMLSchema : schema as a child of
FeatureCollectionType

I am XML challenged and am currently fumbling around trying to get an
example schema inlined and validated.

Not sure if it is even possible?  If it was, I figured the Mapserver crew
had probably already done that and been there.

Thanks for any suggestions,
Drew.



<?xml version='1.0' encoding="ISO-8859-1" ?>
<wfs:FeatureCollection
   xmlns:myns="http://www.ttt.org/myns"
   xmlns:wfs="http://www.opengis.net/wfs"
   xmlns:gml="http://www.opengis.net/gml"
   xmlns:ogc="http://www.opengis.net/ogc"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://www.opengis.net/wfs
http://ogc.dmsolutions.ca/wfs/1.0.0/WFS-basic.xsd
">


<schema
   targetNamespace="http://www.ttt.org/myns"
   xmlns:myns="http://www.ttt.org/myns"
   xmlns:ogc="http://www.opengis.net/ogc"
   xmlns:xsd="http://www.w3.org/2001/XMLSchema"
   xmlns="http://www.w3.org/2001/XMLSchema"
   xmlns:gml="http://www.opengis.net/gml"
   elementFormDefault="qualified" version="0.1" >

  <import namespace="http://www.opengis.net/gml"
          schemaLocation="http://ogc.dmsolutions.ca/gml/2.1.2/feature.xsd"
/>

  <element name="eden_isles"
           type="myns:eden_islesType"
           substitutionGroup="gml:_Feature" />

  <complexType name="eden_islesType">
    <complexContent>
      <extension base="gml:AbstractFeatureType">
        <sequence>
          <element name="msGeometry" type="gml:GeometryPropertyType"
minOccurs="0" maxOccurs="1"/>
          <element name="gid" type="string"/>
          <element name="namex" type="string"/>
          <element name="descr" type="string"/>
        </sequence>
      </extension>
    </complexContent>
  </complexType>

</schema>




      <gml:boundedBy>
      	<gml:Box srsName="EPSG:32615">
      		<gml:coordinates>808464.020638,3346885.074396
809738.167216,3347815.170807</gml:coordinates>
      	</gml:Box>
      </gml:boundedBy>
    <gml:featureMember>
      <myns:eden_isles>
        <gml:boundedBy>
        	<gml:Box srsName="EPSG:32615">
        		<gml:coordinates>808464.020638,3346885.074396
809022.080755,3347464.191029</gml:coordinates>
        	</gml:Box>
        </gml:boundedBy>
        <myns:msGeometry>
        <gml:Polygon srsName="EPSG:32615">
          <gml:outerBoundaryIs>
            <gml:LinearRing>
              <gml:coordinates>808713.217294,3347464.191029
809022.080755,3347334.328511 808621.962181,3346885.074396
808506.138383,3346927.191969 808502.628571,3346993.878127
808464.020638,3347169.368016 808657.060301,3347443.132243
808713.217294,3347464.191029 </gml:coordinates>
            </gml:LinearRing>
          </gml:outerBoundaryIs>
        </gml:Polygon>
        </myns:msGeometry>
        <myns:gid>1</myns:gid>
        <myns:namex>xxx</myns:namex>
        <myns:descr>ddddddddd</myns:descr>
      </myns:eden_isles>
    </gml:featureMember>
    <gml:featureMember>
      <myns:eden_isles>
        <gml:boundedBy>
        	<gml:Box srsName="EPSG:32615">
        		<gml:coordinates>809130.884929,3347173.046875
809738.167216,3347815.170807</gml:coordinates>
        	</gml:Box>
        </gml:boundedBy>
        <myns:msGeometry>
        <gml:Polygon srsName="EPSG:32615">
          <gml:outerBoundaryIs>
            <gml:LinearRing>
              <gml:coordinates>809130.884929,3347815.170807
809569.611437,3347815.170807 809696.331720,3347639.969565
809729.800117,3347459.824281 809738.167216,3347346.709801
809390.920516,3347173.046875 809130.884929,3347309.759927
809130.884929,3347815.170807 </gml:coordinates>
            </gml:LinearRing>
          </gml:outerBoundaryIs>
        </gml:Polygon>
        </myns:msGeometry>
        <myns:gid>2</myns:gid>
        <myns:namex>yyyy</myns:namex>
        <myns:descr>sdfasdfasdfd</myns:descr>
      </myns:eden_isles>
    </gml:featureMember>
</wfs:FeatureCollection>


-----Original Message-----
From: UMN MapServer Users List [mailto:MAPSERVER-USERS at LISTS.UMN.EDU]On
Behalf Of Steve Lime
Sent: Tuesday, November 08, 2005 2:57 PM
To: MAPSERVER-USERS at LISTS.UMN.EDU
Subject: Re: [UMN_MAPSERVER-USERS] WFS Inline Schema


Drew: I guess I'm not sure exactly what you're asking. Do you mean changing
the schemaLocation to point to a fixed document rather than the schema
generated by the WFS server?

Steve

>>> Simpson <asimpson at I-55.COM> 11/08/05 12:24 PM >>>
Hello,

Is it possible to inline the schema in the response from a getFeature rather
than the normal xsi:schemaLocation?

I am trying to avoid re-writing a bunch of GeoTools to include basic
authentication when parsing the getFeature.

Thanks,
Drew.



More information about the mapserver-users mailing list