deegree / deegree3

Official deegree repository providing geospatial core libraries, data access and advanced OGC web service implementations
https://www.deegree.org
GNU Lesser General Public License v2.1
146 stars 99 forks source link

WFS capabilities for INSPIRE service contains many more feature types than expected #227

Closed ghost closed 10 years ago

ghost commented 10 years ago

Currently the WFS capabilities contains a list of all feature types that the configured feature store(s) report to provide. The SQL feature store currently always claims to provide all feature types defined in the configured GML application schema. It is not possible to explicitly configure which feature types the SQL feature store should report back to the service. This is probably not that difficult to implement if you really need this. Could this be implemented in a new version?

gu-LGB commented 10 years ago

Exactly this functionality I need as well. Is an implementation possible?

MrSnyder commented 10 years ago

Please note that the official tracker for feature requests is:

http://tracker.deegree.org/deegree-services

I already entered a ticket for your request:

http://tracker.deegree.org/deegree-services/ticket/619

An implementation should be very simple.

gu-LGB commented 10 years ago

Thanks for the information and create the ticket!

MrSnyder commented 10 years ago

P.S.: Note that it's always possible to modify the schemas in such a way that feature types will not be reported in the GetCapabilities response. The WFS will only report concrete feature types, so you could set the respective element declarations to abstract (abstract="true").

gu-LGB commented 10 years ago

I think it is not possible:

[11:36:03] INFO: [AbstractResourceManager] Setting up feature stores 'dog_2_0' from file 'dog_2_0.xml'... class org.deegree.commons.xml.XMLProcessingException: Severe error in schema document (systemId: file:/var/lib/tomcat6-1/webapps/dog_lgb200_bebb_deeg3/WEB-INF/workspace/appschemas/iso19112.xsd, line: 14, column: 74) s4s-att-not-allowed: Attribute 'abstract' cannot appear in element 'element'. << is empty >>

Von: Markus Schneider [mailto:notifications@github.com] Gesendet: Dienstag, 25. Februar 2014 11:18 An: deegree/deegree3 Cc: Ulbrich, Georg Betreff: Re: [deegree3] WFS capabilities for INSPIRE service contains many more feature types than expected (#227)

P.S.: Note that it's always possible to modify the schemas in such a way that feature types will not be reported in the GetCapabilities response. The WFS will only report concrete feature types, so you could set the respective element declarations to abstract (abstract="true"). — Reply to this email directly or view it on GitHub.

MrSnyder commented 10 years ago

Really? Can you provide the changed element declaration, please?

gu-LGB commented 10 years ago

First test was in Line 1:

--> No reaction.

Second ' abstract="true" ' in all ' <element name ... > ' - Tags. --> Show the error message.


<complexType name="SI_LocationInstanceType">
    <complexContent>
        <extension base="gml:AbstractFeatureType">
            <sequence>
                <element name="geographicIdentifier" type="string"/>
                <element name="alternativeGeographicIdentifier" type="string" minOccurs="0" maxOccurs="unbounded"/>
                <element name="geographicExtent" minOccurs="0">
                    <complexType>
                        <sequence minOccurs="0">
                            <!--element ref="gmd:EX_GeographicExtent_PropertyType"/-->
                            <element ref="gmd:EX_BoundingPolygon"/>
                        </sequence>
                        <attributeGroup ref="gml:AssociationAttributeGroup"/>
                    </complexType>
                </element>
                <element name="temporalExtent" minOccurs="0">
                    <complexType>
                        <sequence minOccurs="0">
                            <!--element ref="gmd:EX_TemporalExtent_PropertyType"/-->
                            <element ref="gmd:EX_Extent"/>
                        </sequence>
                        <attributeGroup ref="gml:AssociationAttributeGroup"/>
                    </complexType>
                </element>
                     <element name="position" type="gml:PointPropertyType" minOccurs="0"/>
                     <element name="gazetteer" type="iso19112:SI_GazetteerPropertyType" minOccurs="0"/>
                <element name="locationType" type="iso19112:SI_LocationTypePropertyType"/>
                <element name="parent" type="string" minOccurs="0" maxOccurs="unbounded"/>
            </sequence>
        </extension>
    </complexContent>
MrSnyder commented 10 years ago

Well, the first line is correct and should be enough, IMHO. Can you please double-check:

  1. Start with the unmodified schema. Check that the (unwanted) feature type is reported in the GetCapabilities.
  2. Modified the schema file. Just add abstract="true" for the unwanted feature type element.
  3. Reload the workspace
  4. Check whether the (unwanted) feature type is reported in the GetCapabilities.
gu-LGB commented 10 years ago

Ok, I tested it again. Unfortunately, without success. Now I have not enough time for further tests. Nevertheless, many thanks for your help and the idea!

ghost commented 10 years ago

Hello, thanks both for all this help, trying to solve the issue :-)

tfr42 commented 10 years ago

The issue tracker here at github is used for pull requests only! When you think you've identified an error in the deegree implementation or if you want to request some improvement or a new feature please use our trac system: http://tracker.deegree.org/deegree-services