[gdal-dev] Re: WFS and -where with non-ASCII characters
Mateusz Łoskot
mateusz at loskot.net
Tue Jan 3 07:45:15 EST 2012
On 3 January 2012 11:07, Jukka Rahkonen <jukka.rahkonen at mmmtike.fi> wrote:
> I took the successful query sent by Ari from the TinyOWS log and copied it
> literally into Windows and this way it works:
>
> -where name='Hämeenkylä'
Windows Command Prompt can work with UTF-8 characters if you change
codepage to UTF-8:
0) Open new prompt (cmd.exe)
1) Change font to Lucida Concole
3) chcp 65001
And OGR can consume filter without problems:
-where "name=\"Hämeenkylä\""
Note, the \"\" is needed to not to confuse OGR SQL compilers,
otherwise value Hämeenkylä
will be parsed as OGR SQL type SNT_COLUMN instead of SNT_CONSTANT for
field value.
However, I think the problem may be with TinyOWS. It throws error;
<ows:ExceptionText>QUERY_STRING contains forbidden
characters</ows:ExceptionText>
which is generated by TinyOWS:
http://www.tinyows.org/trac/browser/trunk/src/struct/cgi_request.c?rev=525#L208
where TinyOWS simply tests characters passed in request against fixed
range: A-Za-zà-ÿ
Comparing extended ASII codes, the value 'ä' is outside of this range anyway.
I get no WFS exception no OGR error when querying with some (not all)
Polish diacritics:
ogrinfo WFS:http://hip.latuviitta.org/cgi-bin/tinyows
lv:pks_tilastoalue_piste -where "name=\"ąęśćł\""
Certainly, it gives empty resultset.
I think it would be a good idea to try against different WFS server.
Best regards,
--
Mateusz Loskot, http://mateusz.loskot.net
More information about the gdal-dev
mailing list