[mapserver-dev] WCS 2.0 support and time slicing

Stephan Meißl stephan at meissl.name
Mon Aug 10 12:32:25 PDT 2015


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 08/10/2015 08:02 PM, Even Rouault wrote:
> Le vendredi 07 août 2015 12:33:00, Even Rouault a écrit :
>> Hi,
>>
>> Looking at msWCSGetCoverage20(), it is my impression that the time
>> dimension is not supported currently.
>>
>>   /* iterate over all subsets and check if they are valid*/
>>   for(i = 0; i < params->numaxes; ++i) {
>>     if(params->axes[i]->subset != NULL) {
>>       if(params->axes[i]->subset->timeOrScalar == MS_WCS20_TIME_VALUE) {
>>         msSetError(MS_WCSERR, "Time values for subsets are not supported.
>> ", "msWCSGetCoverage20()");
>>         return msWCSException(map, "InvalidSubsetting", "subset", params-
>>
>>> version);
>>
>>       }
>>       if(params->axes[i]->subset->operation == MS_WCS20_SLICE) {
>>         msSetError(MS_WCSERR, "Subset operation 'slice' is not supported.",
>>                    "msWCSGetCoverage20()");
>>         return msWCSException(map, "InvalidSubsetting", "subset", params-
>>
>>> version);
>>
>>       }
>>     }
>>   }
>>
>> Of course trimming, especially through time dimension, would be hard given
>> MapServer architecture, but I guess that time slicing could be implemented,
>> similarly to the TIME= support in earlier WCS versions, by using
>> msLayerSetTimeFilter() ?
>> I guess another impact would be to declare time bounds in GetCoverage
>> response.
> 
> Answering to myself. I discovered the existence of "OGC® WCS Interface 
> Standard - Earth Observation Application Profile, version 1.0.0 " extension ( 
> https://portal.opengeospatial.org/files/42722) which is supposed to address the 
> temporal dimension.
> 
> I also noticed that Rasdaman seems to use in one of its demo the approach I 
> had in mind, that is defined a custom CRS where one of the axis is the temporal 
> axis (but this makes it somewhat difficult to interpret this CRS for 
> applications). This http://www.earthlook.org/demo/geo-service/wcs.php with 
> OIL_SPILL_MONTEREY_BAY coverage where the first axis is supposed to be 
> temporal.
> 
> 
>>
>> Even
> 

Hi Even,

you're right, some simple support for a time dimension in WCS 2.0 might
be feasible inside of MapServer but is not currently supported. The
corresponding coverage would have to be properly declared as full 3D
coverage in GetCapabilities and DescribeCoverage responses.

For some more complex time dimension support there is EO-WCS as you
found out. There is an implementation available on top of MapServer
using Python MapScript called EOxServer [1]. Let me know if you have any
questions about it.

cu
Stephan

[1] https://github.com/EOxServer/eoxserver

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBAgAGBQJVyPxJAAoJEKNQXeNWi+qt61MP+QF1mbwpXtxjmft3geEUwbbD
7o2LwaHiopglFz/fv/vQxh37dsLgUvDJC6xJGxitotJ+9vWeDNnSct0P59bHXzIp
riXmgwIBlv5vztC+1uP0nBsBhmzzxPjUyBkWtdQNZRzQgHNWrkkwWDhB3oTneEiY
C0VvujHG9UUUH3ZTBxwRwagWisf18Z1Hc6BhnmBlUt0Hl0pquN+7Pj2YG+BjiFdg
deIP42AQ7bC3lE2lPee1Ljw7ez+bRvQrBoUjYtiHxvUWns6VVBPhLXsAYfPDlkF/
egIlNNPGvzRswkMvVppD9z/YgPCfXMp6quLE44NNm+1q77e/py68xmR5Jfp/EgaV
Y9npg+E/WcyWIKUYDKer4shFhzsBIlH3eeCcGALqexoy1rFFEjNLZOnXM+j1B/85
dkNnisQYtnHZ2YYnB7VCDXKxrg/8N/SGjFKtpmc49/tnoY/dPIIL1I2vptgOeDcn
5P3lDFNVWSg9ccWT6qhqU1GSa5SbfHyQOxNt5O/XHbsWcu/nzpvwUhyzBqJ4ORnk
esCEuy3nEhoRVROE8q2bYvkyZyyE8zHpLnX4uvJzLWHeJsmtXmMcXmhQh054yIf6
XjDyxSgYzvjsSJE/m0ycPDYKJRgH1PwTXttNEWyQl/P6dLQQP++u/PqFpT1p/c0/
TJUvgHW0HplT4GYKc8hk
=fGkj
-----END PGP SIGNATURE-----


More information about the mapserver-dev mailing list