3

I'm having a problem using WFS XML filter. I'm trying to read only 6 features from entire dataset and I get the following error: Error I wrote query in SQL and need to convert it to XML:

"SAV_ID" IN (21,23,25,55,56,88)

Interestingly when I'm quering only 2 of thoses features, I get no errors. XML filter (working one) for 2 features is:

    <ogc:Filter>
    <ogc:Or>
        <ogc:PropertyIsEqualTo>
            <ogc:PropertyName>SAV_ID</ogc:PropertyName>
            <ogc:Literal>21</ogc:Literal>
        </ogc:PropertyIsEqualTo>
        <ogc:PropertyIsEqualTo>
            <ogc:PropertyName>SAV_ID</ogc:PropertyName>
            <ogc:Literal>23</ogc:Literal>
        </ogc:PropertyIsEqualTo>
    </ogc:Or>
</ogc:Filter>

I tried the following variants (for more than 2 features):

(1) (gives error)

    <ogc:Filter>
    <ogc:Or>
        <ogc:PropertyIsEqualTo>
            <ogc:PropertyName>SAV_ID</ogc:PropertyName>
            <ogc:Literal>21</ogc:Literal>
        </ogc:PropertyIsEqualTo>
        <ogc:PropertyIsEqualTo>
            <ogc:PropertyName>SAV_ID</ogc:PropertyName>
            <ogc:Literal>23</ogc:Literal>
        </ogc:PropertyIsEqualTo>
        <ogc:PropertyIsEqualTo>
            <ogc:PropertyName>SAV_ID</ogc:PropertyName>
            <ogc:Literal>25</ogc:Literal>
        </ogc:PropertyIsEqualTo>
        <ogc:PropertyIsEqualTo>
            <ogc:PropertyName>SAV_ID</ogc:PropertyName>
            <ogc:Literal>55</ogc:Literal>
        </ogc:PropertyIsEqualTo>
    </ogc:Or>
</ogc:Filter>

(2) (gives error)

    <ogc:Filter>
    <ogc:Or>
        <ogc:PropertyIsEqualTo>
            <ogc:PropertyName>SAV_ID</ogc:PropertyName>
            <ogc:Literal>21</ogc:Literal>
        </ogc:PropertyIsEqualTo>
        <ogc:PropertyIsEqualTo>
            <ogc:PropertyName>SAV_ID</ogc:PropertyName>
            <ogc:Literal>23</ogc:Literal>
        </ogc:PropertyIsEqualTo>
        <ogc:PropertyIsEqualTo>
    </ogc:Or>
    <ogc:Or>
            <ogc:PropertyName>SAV_ID</ogc:PropertyName>
            <ogc:Literal>25</ogc:Literal>
        </ogc:PropertyIsEqualTo>
        <ogc:PropertyIsEqualTo>
            <ogc:PropertyName>SAV_ID</ogc:PropertyName>
            <ogc:Literal>55</ogc:Literal>
        </ogc:PropertyIsEqualTo>
    </ogc:Or>
</ogc:Filter>

(3)

    <ogc:Filter>
        <ogc:PropertyIsEqualTo>
        <ogc:Function name "in">
            <ogc:PropertyName>SAV_ID</ogc:PropertyName>
            <ogc:Literal>21</ogc:Literal>
            <ogc:Literal>23</ogc:Literal>
            <ogc:Literal>25</ogc:Literal>
            <ogc:Literal>55</ogc:Literal>
        </ogc:Function name "in">
        </ogc:PropertyIsEqualTo>
</ogc:Filter>

Last one (3) downloads all the features. Any help on that?

  • You have a tag for FME but make no mention in your question body as to whether you are using that software. – PolyGeo Feb 5 at 22:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.