Thanks for your help!  I can always count on the pros at DM.  :)<br><br>I'm still a bit unclear about how the 3-D rasters (lat,lon,time) should be set up in the mapfile.  Is there a way to define a 3-D layer in the mapfile?  Or should I do something similar to what I would to set up the n-D WMS (with a tile-index)?  
<br><br>Thanks!<br><br>Sam<br><br><br><br><div><span class="gmail_quote">On 10/24/07, <b class="gmail_sendername">Yewondwossen Assefa</b> <<a href="mailto:assefa@dmsolutions.ca">assefa@dmsolutions.ca</a>> wrote:</span>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Samuel Hiatt wrote:<br>> Can anyone help with this last question?  I'm hesitant to start hacking
<br>> at this 'cause I don't really feel like re-inventing the wheel...<br>> again.  Is anyone familiar with the mechanism that is used when<br>> mapserver gets a WMS request with a TIME parameter?  Maybe the solution
<br>> lies there.<br>><br><br>> The metadata tags required to make 4D WMS layers work all have "wms_<br>> ..." at the beginning.  I imagine that extending this functionality to<br>> any type of mapserver request (WMS, mapscript, CGI) would be very
<br>> valuable (if it doesn't exist already).<br>><br><br>  As explained earlier, the wms will take the time parameter and<br>transform it to a valid time expression and set the FILTER element of<br>the layer with that expression.
<br><br>  wms_xxx tags are there to hold information so that this tarnsformation<br>can be done (hold information such as which is the time field on the<br>layer, extents of valid time, default valid time ...). Most of these
<br>things are specific to the wms specification<br><br>  In you case, if you are using scripting, you should do the same<br>operation of transforming the time parameter to a valid time filter and<br>set it on the layer (time parameter like 2004-10-12 could be transformed
<br>to (`[time_field]` eq `2004-10-12).  Although the underlying code exists<br>in MapsServer to parse different kind of time values, there are no<br>currently mapscript functions that would do that for you so you need to
<br>write your functions.<br>  You map file does not need to have any wms_xxx parameters. It is a<br>regular map file and the time is just another type of expression that<br>can be used on the FILTER element of the layer (or on the class object)
<br><br>Hope this helps.<br><br>Best Regards,<br><br>> Thanks for your help.<br>><br>> Sam<br>><br>><br>><br>><br>> On 10/12/07, *Samuel Hiatt* <<a href="mailto:samhiatt@gmail.com">samhiatt@gmail.com
</a><br>> <mailto:<a href="mailto:samhiatt@gmail.com">samhiatt@gmail.com</a>>> wrote:<br>><br>>     Thanks for the help.<br>><br>>     It should be very easy to filter my files for time.  What should my
<br>>     mapfile look like for the 4D layer?  The same thing as for a 4D wms<br>>     layer, with the tile index and wms_* metadata tags but I would use<br>>     mapscript to screen the files?  Do you know of a way I might reuse
<br>>     the screening code that is used for 4D WMS?<br>><br>>     Thanks!<br>>     Sam<br>><br>><br>><br>><br>>     On 10/12/07, *Yewondwossen Assefa* < <a href="mailto:assefa@dmsolutions.ca">
assefa@dmsolutions.ca</a><br>>     <mailto:<a href="mailto:assefa@dmsolutions.ca">assefa@dmsolutions.ca</a>>> wrote:<br>><br>>         Samuel Hiatt wrote:<br>>         >  Hi!  Thanks for the reply.
<br>>         ><br>>         >  So I suppose when I make a WMS request with TIME Mapserver<br>>         applies the<br>>         >  filter behind the scenes, finding which feature in my<br>>         tile_index.shp
<br>>         >  represents the correct time and then processes the raster<br>>         pointed to by<br>>         >  that feature?  So if I want to implement the same kind of<br>>         thing with<br>
>         >  mapscript I'd have to write the filter myself?<br>>         ><br>>           That is correct : assuming that the underlying data can be<br>>         filtered<br>>         using a time field, you need to know the attribute and build the
<br>>         time<br>>         expression and set it using mapscript.<br>><br>>         >  The reason I am interested in doing this is to extend temporal<br>>         >  functionality to ka-map.  I may end up abandoning that
<br>>         approach and<br>>         >  moving to a javascript WMS client (like OpenLayers of<br>>         MapBuilder) instead.<br>>         ><br>>         >  Thanks for your help.<br>>         >
<br>>         >  Sam<br>>         ><br>>         ><br>>         ><br>>         >  On 10/11/07, *Yewondwossen Assefa* <<a href="mailto:assefa@dmsolutions.ca">assefa@dmsolutions.ca</a><br>>         <mailto:
<a href="mailto:assefa@dmsolutions.ca">assefa@dmsolutions.ca</a>><br>>         >  <mailto: <a href="mailto:assefa@dmsolutions.ca">assefa@dmsolutions.ca</a><br>>         <mailto:<a href="mailto:assefa@dmsolutions.ca">
assefa@dmsolutions.ca</a>>>> wrote:<br>>         ><br>>         >     Hi there,<br>>         ><br>>         >       The Time parameter that is sent with a WMS request is simply<br>>         >     converted
<br>>         >     to a time expression and set on the filter object of the<br>>         layer. In the<br>>         >     case of wms. the metadata wms_timeitem will be used for the<br>>         >     attribute name.
<br>>         >       if you are using mapscript, you would need to build the time<br>>         >     expression manually and set the filter parameter. Please<br>>         refer to<br>>         >     
<a href="http://mapserver.gis.umn.edu/docs/howto/wms_time_support">http://mapserver.gis.umn.edu/docs/howto/wms_time_support</a><br>>         (section 2.5)<br>>         >     to see how time parameters are interpreted.
<br>>         ><br>>         >     Best Regards,<br>>         ><br>>         ><br>>         >     Samuel Hiatt wrote:<br>>         >      > I am excited to see that Mapserver supports 4D raster
<br>>         layers for WMS,<br>>         >      > but I am curious if this functionality can be extended<br>>         to mapscript<br>>         >      > calls as well?  For example, if I set up a raster layer
<br>>         with a TIME<br>>         >      > dimension then will it be possible for me to request an<br>>         image for a<br>>         >      > specific time with mapscript?  Or would I have to do
<br>>         this with a<br>>         >     WMS call?<br>>         >      ><br>>         >      > Thanks!<br>>         >      ><br>>         >      > Sam<br>>         ><br>
>         ><br>>         >     --<br>>         ><br>>         ----------------------------------------------------------------<br>>         >     Assefa Yewondwossen<br>>         >     Software Analyst
<br>>         ><br>>         >     Email: <a href="mailto:assefa@dmsolutions.ca">assefa@dmsolutions.ca</a> <mailto:<a href="mailto:assefa@dmsolutions.ca">assefa@dmsolutions.ca</a>><br>>         <mailto: 
<a href="mailto:assefa@dmsolutions.ca">assefa@dmsolutions.ca</a> <mailto:<a href="mailto:assefa@dmsolutions.ca">assefa@dmsolutions.ca</a>>><br>>         >     <a href="http://www.dmsolutions.ca/">http://www.dmsolutions.ca/
</a><br>>         ><br>>         >     Phone: (613) 565-5056 (ext 14)<br>>         >     Fax:   (613) 565-0925<br>>         ><br>>         ----------------------------------------------------------------
<br>>         ><br>>         ><br>><br>><br>>         --<br>>         ----------------------------------------------------------------<br>>         Assefa Yewondwossen<br>>         Software Analyst
<br>><br>>         Email: <a href="mailto:assefa@dmsolutions.ca">assefa@dmsolutions.ca</a> <mailto:<a href="mailto:assefa@dmsolutions.ca">assefa@dmsolutions.ca</a>><br>>         <a href="http://www.dmsolutions.ca/">
http://www.dmsolutions.ca/</a><br>><br>>         Phone: (613) 565-5056 (ext 14)<br>>         Fax:   (613) 565-0925<br>>         ----------------------------------------------------------------<br>><br>><br>
><br><br><br>--<br>----------------------------------------------------------------<br>Assefa Yewondwossen<br>Software Analyst<br><br>Email: <a href="mailto:assefa@dmsolutions.ca">assefa@dmsolutions.ca</a><br><a href="http://www.dmsolutions.ca/">
http://www.dmsolutions.ca/</a><br><br>Phone: (613) 565-5056 (ext 14)<br>Fax:   (613) 565-0925<br>----------------------------------------------------------------<br><br></blockquote></div><br>