DescribeFeatureType response |
When WFS is responding the request of the DescribeFeatureType operation, outputFormat is set to ML Schema by default. XML Schema has the request feature types defined.
WFS supports multiple Namespaces. However, a XML Schema document can only describe elements in a single namespace. Therfore, a WFS service cannot describe multiple namespaces through one XML Schema document. To solve this problem, it is designed that WFS can generate an XML Schema document, a wrapper Schema to which different namespaces can be imported.
For example, if we have the following request:
<?xmlversion="1.0"?>
<DescribeFeatureType
version="1.0.0"
service="WFS"
xmlns="http://www.opengis.net/wfs"
xmlns:ns01="http://www.server01.com/ns01"
xmlns:ns02="http://www.server02.com/ns02"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.opengis.net/wfs../wfs/1.0.0/WFS-basic.xsd">
<TypeName>ns01:TREESA_1M</TypeName>
<TypeName>ns02:ROADL_1M</TypeName>
</DescribeFeatureType>
We'll get the following results:
<?xmlversion="1.0"?>
<schema
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<import namespace="http://www.server01.com/ns01"
schemaLocation="http://www.myserver.com/wfs.cgi?
request=DescribeFeatureType&typeName=ns01:TREESA_1M"/>
<import namespace="http://www.server02.com/ns02"
schemaLocation="http://www.yourserver.com/wfs.cgi?
request=DescribeFeatureType&typeName=ns02:ROADL_1M"/>
</schema>
The response of the Request example is as follows: