opengeospatial / ets-wfs20

Executable Test Suite for WFS 2.0
Other
8 stars 11 forks source link

Closes #224 #240

Closed bpross-52n closed 1 year ago

bpross-52n commented 1 year ago

Closes #224

dstenger commented 1 year ago

Decision during CITE meeting 2022-11-03: One day is added to the filter to make sure that a feature is always returned.

bpross-52n commented 1 year ago

The following request to the reference implementation returns no features:

<wfs:GetFeature xmlns:wfs="http://www.opengis.net/wfs/2.0" count="10" service="WFS"
                version="2.0.0">
   <wfs:Query xmlns:ns79="urn:x-inspire:specification:gmlas:ProtectedSites:3.0"
              typeNames="ns79:ProtectedSite">
      <Filter xmlns="http://www.opengis.net/fes/2.0">
         <PropertyIsLessThan matchAction="All" matchCase="true">
            <Literal>2012-05-13T00:00:00</Literal>
            <ValueReference xmlns:tns="urn:x-inspire:specification:gmlas:ProtectedSites:3.0">tns:legalFoundationDate</ValueReference>
         </PropertyIsLessThan>
      </Filter>
   </wfs:Query>
</wfs:GetFeature>

All the features have a legalFoundationDate of 2012-05-11T00:00:00, so that the features should IMHO be returned. You can check this using the following request:

<wfs:GetFeature xmlns:wfs="http://www.opengis.net/wfs/2.0" count="20" service="WFS"
                version="2.0.0">
   <wfs:Query xmlns:ns79="urn:x-inspire:specification:gmlas:ProtectedSites:3.0"
              typeNames="ns79:ProtectedSite">
   </wfs:Query>
</wfs:GetFeature>
dstenger commented 1 year ago

Compared test with specs:

Failing test references FilterEncoding spec: ISO 19143: 7.7

When checking the ATS of the WFS 2.0 spec, this test case should be part of test requirement A.2.13 Predicate encoding which is quite generic.

The FilterEncoding spec describes in chapter 7.7 Comparison operators the different types of operators. PropertyIsLessThan is part of the binary comparisons. On the other hand, temporal operators are defined in chapter 7.9 Temporal operators. As chapter 7.7 just contains mathematical comparisons, temporal comparisons should, as far as I see, not be supported here.

Thus, my conclusion is that PropertyIsLessThan should not work for temporal values.

dstenger commented 1 year ago

@bpross-52n Can you please check if this PR can be closed as the corresponding issue is already closed?

dstenger commented 1 year ago

See https://github.com/opengeospatial/ets-wfs20/issues/224#issuecomment-1311672294 for reason.