WMS server time tests and issues

Kralidis,Tom [Burlington] Tom.Kralidis at EC.GC.CA
Tue Nov 9 07:37:21 EST 2004


> -----Original Message-----
> From: UMN MapServer Developers List 
> [mailto:MAPSERVER-DEV at LISTS.UMN.EDU] On Behalf Of Havard Tveite
> Sent: Tuesday, 09 November, 2004 05:48
> To: MAPSERVER-DEV at LISTS.UMN.EDU
> Subject: Re: [UMN_MAPSERVER-DEV] WMS server time tests and issues
> 
> 
> Yewondwossen Assefa wrote:
> > Kralidis,Tom [Burlington] wrote:
> >
> >> Hi,
> >>
> >> I've been testing this out on latest CVS.  Observations:
> >>
> >> - OS: FC2
> >> Linux devgeo.cciw.ca 2.6.5-1.358smp #1 SMP Sat May 8 09:25:36 EDT 
> >> 2004 i686 i686 i386 GNU/Linux
> >> - httpd: Apache 2.0.49
> >>
> >> I constructed a dummy .shp/.shx/.dbf with 4 columns 3 
> records with a 
> >> timefield.
> >>
> >> Here's a dump of what the shapefile is:
> >>
> >> stid | lat          | lon        | obsdate
> >> ----------------------------------------------
> >> tom  | 45.412766    | -71.920082 | 2004-10-12
> >> bob  | 45.399400    | -75.704200 | 2003-09-30
> >> joe  | 55.399400    | -95.704200 | 2002-03-17
> >>
> >>
> >> ...and here's the time defines in LAYER/METADATA in mapfile:
> >>
> >>    "wms_timeextent" "2002-03-17/2004-10-12"
> >>    "wms_timedefault" "2003-09-30"
> >>    "wms_timeitem" "obsdate"
> >>
> >>
> >> ...and here's my tests:
> >>
> >> Single value:
> >>
> >> 
> http://devgeo.cciw.ca/cgi-bin/mapserv/ecows?version=1.1.1&service=WMS
> >> &re
> >> 
> quest=GetMap&layers=obs&format=image/gif&srs=EPSG:4326&transpa
> rent=TRUE&
> >> 
> exceptions=application%2Fvnd.ogc.se_inimage&bbox=-140.243500,2
8.606653,-
> >> 
> 51.243500,81.998653&width=500&height=300&time=2004-10-12-T00:0
> 0:00&style
> >> s=default
> >>
> >> Result: no problem, as expected
> >>
> >> Multple value:
> >>
> >> 
> http://devgeo.cciw.ca/cgi-bin/mapserv/ecows?version=1.1.1&service=WMS
> >> &re
> >> 
> quest=GetMap&layers=obs&format=image/gif&srs=EPSG:4326&transpa
> rent=TRUE&
> >> 
> exceptions=application%2Fvnd.ogc.se_inimage&bbox=-140.243500,2
8.606653,-
> >> 
> 51.243500,81.998653&width=500&height=300&time=2004-10-12-T00:0
> 0:00,2003-
> >> 09-30-T00:00:00&styles=default
> >>
> >> Result: no problem, as expected
> >>
> >> Single range:
> >>
> >> 
> http://devgeo.cciw.ca/cgi-bin/mapserv/ecows?version=1.1.1&service=WMS
> >> &re
> >> 
> quest=GetMap&layers=obs&format=image/gif&srs=EPSG:4326&transpa
> rent=TRUE&
> >> 
> exceptions=application%2Fvnd.ogc.se_inimage&bbox=-140.243500,2
8.606653,-
> >> 
> 51.243500,81.998653&width=500&height=300&time=2002-03-17-T00:0
> 0:00/2004-
> >> 10-12-T00:00:00&styles=default
> >>
> >>
> >> Result: when the start time or end time is out of range of the 
> >> default. For example, if you change the start year to 
> 2001, only one 
> >> point shows
> >> up:
> >>
> >> 
> http://devgeo.cciw.ca/cgi-bin/mapserv/ecows?version=1.1.1&service=WMS
> >> &re
> >> 
> quest=GetMap&layers=obs&format=image/gif&srs=EPSG:4326&transpa
> rent=TRUE&
> >> 
> exceptions=application%2Fvnd.ogc.se_inimage&bbox=-140.243500,2
8.606653,-
> >> 
> 51.243500,81.998653&width=500&height=300&time=2001-03-17-T00:0
> 0:00/2004-
> >> 10-12-T00:00:00&styles=default
> >>
> >> ...so it looks like the default is returned when the range 
> given is 
> >> outside the range defined in "wms_timeextent".
> >>
> >> Is this the expected behaviour?  As a WMS client, I would 
> expect that 
> >> temporal queries would return everything inside two given 
> dates, just 
> >> like a spatial query does.
> >>
> >> ..Tom
> >>
> >>
> > I think that the specs indicates that if the given values are 
> > "incorrect" the server would return values for the default 
> declared :
> >
> > Section C5.1 (Annexe C wms 1.1.1 ):
> > " ...An OGC Web Service may declare a default for any dimension. A 
> > 'default' is optional but recommended. If a request does 
> not include a 
> > value along this dimension, and a default has been 
> declared, then the 
> > server shall send the default value..."
> 
> I read the specifications as follows:
> If a request does not specify a value for a dimension, and 
> there is a default declared, the declared should be used. The 
> spec also says that if a default is not declared, such a 
> request *shall* result in an exception being thrown.
> 
> I thought that Tom *had* specified a value (range) for the 
> dimension, and hence this rule should not apply. If the 
> interval specified is out of the wms_timeextent range, I 
> would guess an exception should be returned, but I could not 
> find it documented in the WMS 1.1.1 spec.
> 
> If an interval *is* specified on the dimension, and the the 
> interval overlaps the range of "valid" times 
> (wms_timeextent), I would, as Tom, expect all the data within 
> the overlapping range to be returned. (C.3 - the value of 
> "multipleValues" is also relevant.)
> 

This makes sense.

Keep in mind Dimensions and Extents in WMS cover much more than just time.  So let's take another example:

If I have a Dimension defined "elevation", and an extent of 1000 - 3000 (in units metres), and if I query with an extent of 500-2000, then I should have data returned, no?

At any rate, I've queried wms-dev, and will come back to this list with an answer to this.

..Tom



> --
> Håvard Tveite
> Department of Mathematical Sciences and Technology
> Agricultural University of Norway
> Drøbakveien 14, POBox 5003, N-1432 Ås, NORWAY
> Phone: +47 64948857 Fax: +47 64948810 http://www.nlh.no/imt
> 



More information about the mapserver-dev mailing list