[mapserver-users] [EXTERNAL] Re: Mapserver 7+oracle - wfs getFeature with filter on numeric field

Rahkonen Jukka (MML) jukka.rahkonen at maanmittauslaitos.fi
Tue May 19 15:16:32 PDT 2015


Hi,

By reading the GML 3 standard it for example defines that Real and Number are of type xsd:double, and following that path to
http://books.xmlschemata.org/relaxng/ch19-77065.html

Restrictions
The decimal separator is always a point (.), and no thousands separator may be used.
Same restrictions to xsd:decimal http://books.xmlschemata.org/relaxng/ch19-77057.html

So at least in WFS 1.1.0 with GML 3 numbers with comma as decimal separator are wrong and if Mapserver ever generates such GML it feels like a bug for me.


-Jukka Rahkonen-


Smith, Michael ERDC-RDE-CRREL-NH wrote:

Jukka,

The issue is not only the NLS format, which would govern the output and how the sql is interpreted, but there is also the issue of the lexer which is reading the xml request. And that would have to change also.

Its also unclear to me if XML / WFS allows other characters as a decimal character. I've yet to find any xsd or guide docs that indicate one way or the other.

Mike
----
Michael Smith
US Army Corps
Remote Sensing GIS/Center
michael.smith at usace.army.mil<mailto:michael.smith at usace.army.mil>


From: "Rahkonen Jukka (MML)" <jukka.rahkonen at maanmittauslaitos.fi<mailto:jukka.rahkonen at maanmittauslaitos.fi>>
Date: Tuesday, May 19, 2015 at 5:08 PM
To: "Lime, Steve D (MNIT)" <Steve.Lime at state.mn.us<mailto:Steve.Lime at state.mn.us>>, "Steve.Toutant at inspq.qc.ca<mailto:Steve.Toutant at inspq.qc.ca>" <Steve.Toutant at inspq.qc.ca<mailto:Steve.Toutant at inspq.qc.ca>>, MapserverList OSGEO <mapserver-users at lists.osgeo.org<mailto:mapserver-users at lists.osgeo.org>>
Cc: "Michael.Smith at erdc.dren.mi<mailto:Michael.Smith at erdc.dren.mi>" <Michael.Smith at erdc.dren.mi<mailto:Michael.Smith at erdc.dren.mi>>
Subject: Re: [mapserver-users] [EXTERNAL] Re: Mapserver 7+oracle - wfs getFeature with filter on numeric field
Resent-From: Michael Smith <michael.smith at usace.army.mil<mailto:michael.smith at usace.army.mil>>

Hi,

Without being a programmer I would like to see what would happen if this source file

https://github.com/mapserver/mapserver/blob/branch-7-0/maporaclespatial.c

would be edited around line 571-573:
cmd = "alter session set NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss'";

by adding a new block for setting the decimal and thousands separators for output

cmd = "alter session set NLS_NUMERIC_CHARACTERS='. '";

I am not sure of the right syntax. This one works with SQL*Plus and set decimal points and space for thousands separator. I think that thousands should be without separators but the command seems to require two inputs.

-Jukka Rahkonen-




Lähettäjä: mapserver-users-bounces at lists.osgeo.org<mailto:mapserver-users-bounces at lists.osgeo.org> [mailto:mapserver-users-bounces at lists.osgeo.org] Puolesta Lime, Steve D (MNIT)
Lähetetty: 19. toukokuuta 2015 22:12
Vastaanottaja: Steve.Toutant at inspq.qc.ca<mailto:Steve.Toutant at inspq.qc.ca>; MapserverList OSGEO
Kopio: Michael.Smith at erdc.dren.mi<mailto:Michael.Smith at erdc.dren.mi>
Aihe: Re: [mapserver-users] [EXTERNAL] Re: Mapserver 7+oracle - wfs getFeature with filter on numeric field

Is there somewhere in the capabilities response where a user would declare what decimal separators are supported?

From:mapserver-users-bounces at lists.osgeo.org<mailto:mapserver-users-bounces at lists.osgeo.org> [mailto:mapserver-users-bounces at lists.osgeo.org] On Behalf Of Steve.Toutant at inspq.qc.ca<mailto:Steve.Toutant at inspq.qc.ca>
Sent: Tuesday, May 19, 2015 2:06 PM
To: MapserverList OSGEO
Cc: Michael.Smith at erdc.dren.mi<mailto:Michael.Smith at erdc.dren.mi>
Subject: Re: [mapserver-users] [EXTERNAL] Re: Mapserver 7+oracle - wfs getFeature with filter on numeric field

It seems to be a bug isn't?
Do you want me to open an issue?
"Smith, Michael ERDC-RDE-CRREL-NH" <Michael.Smith at erdc.dren.mil<mailto:Michael.Smith at erdc.dren.mil>>

2015-05-19 12:24

A

"Steve.Toutant at inspq.qc.ca<mailto:Steve.Toutant at inspq.qc.ca>" <Steve.Toutant at inspq.qc.ca<mailto:Steve.Toutant at inspq.qc.ca>>

cc

"Rahkonen Jukka (MML)" <jukka.rahkonen at maanmittauslaitos.fi<mailto:jukka.rahkonen at maanmittauslaitos.fi>>, MapserverList OSGEO <mapserver-users at lists.osgeo.org<mailto:mapserver-users at lists.osgeo.org>>

Objet

Re: [mapserver-users] [EXTERNAL] Re: Mapserver 7+oracle - wfs getFeature with filter on numeric field







It looks like whats happening is that's being converted into 3 Tokens and the oracle driver converts it into a number + comma + number.

The tokenizer is not treating that value as a single value.

Mike

From: "Steve.Toutant at inspq.qc.ca<mailto:Steve.Toutant at inspq.qc.ca>" <Steve.Toutant at inspq.qc.ca<mailto:Steve.Toutant at inspq.qc.ca>>
Date: Tuesday, May 19, 2015 at 11:44 AM
To: Michael Smith <michael.smith at erdc.dren.mil<mailto:michael.smith at erdc.dren.mil>>
Cc: "Rahkonen Jukka (MML)" <jukka.rahkonen at maanmittauslaitos.fi<mailto:jukka.rahkonen at maanmittauslaitos.fi>>, MapserverList OSGEO <mapserver-users at lists.osgeo.org<mailto:mapserver-users at lists.osgeo.org>>
Subject: Re: [mapserver-users] [EXTERNAL] Re: Mapserver 7+oracle - wfs getFeature with filter on numeric field

here is the mapserver log with <ogc:PropertyIsEqualTo matchCase="true"><ogc:PropertyName>LONG_STAT</ogc:PropertyName><ogc:Literal>-61,8031</ogc:Literal></ogc:PropertyIsEqualTo>

msOracleSpatialLayerWhichShapes. Using this Sql to retrieve the data: SELECT ID, NO_STAT_CLIM, NO_STAT_FADQ, NOM_STAT, LATI_STAT, LONG_STAT, ALTI_STAT, D_DEB, D_FIN, TIMB_MAJ, USAG_MAJ, rownum, GEOM_POIN FROM (select * FROM SMDVDP_STAT_METE WHERE EXTRACT(YEAR FROM D_DEB) = 2014) WHERE  ( LONG_STAT = -61.000000,8031.000000 )  AND SDO_FILTER( GEOM_POIN, MDSYS.SDO_GEOMETRY(2003, :srid, NULL,MDSYS.SDO_ELEM_INFO_ARRAY(1,1003,3),:ordinates ),'querytype=window') = 'TRUE'


The problem is
WHERE  ( LONG_STAT = -61.000000,8031.000000 )
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/mapserver-users/attachments/20150519/da23709d/attachment-0001.html>


More information about the mapserver-users mailing list