地理服务器WMS中的时间支持¶
geoserver支持 TIME
对于正确配置了时间维度的层,getmap请求中的属性。这用于指定渲染的时间子集。
例如,您可能有一个数据集,其中包含随时间收集的天气观测,并选择绘制一天的观测值。
要在其中使用的属性 TIME
可以通过地理服务器Web界面通过导航到 .
指定时间¶
用于在WMS时间参数中指定时间的格式基于 ISO-8601 .指定的时间精度可以达到1毫秒;geoserver不表示比此精度更高的时间查询。
参数为:
TIME=<timestring>
时间遵循一般格式:
yyyy-MM-ddThh:mm:ss.SSSZ
在哪里?
yyyy
:4位数年份MM
:2位月dd
:2位数的一天hh
:2位数小时mm
:2位数分钟ss
:2位秒SSS
:3位毫秒
日值和日内值用大写字母分隔 T
整件事的后缀是 Z
,指示 UTC 对于时区。(WMS规范未规定其他时区。)
geoserver将应用 TIME
中所有临时启用的层的值 LAYERS
GetMap请求的参数。没有时间组件的层将被正常服务,允许客户机包括参考信息,如政治边界和时间数据。
描述 |
时间规范 |
---|---|
2001年12月12日下午6:00 |
|
1993年5月5日下午11:34 |
|
指定绝对间隔¶
客户机可以通过指定开始时间和结束时间(用一个 /
性格。
在这个场景中,开始和结束是 包容的 ;也就是说,来自指定范围的端点的样本将包含在渲染图块中。
描述 |
时间规范 |
---|---|
2002年9月 |
|
2010年12月25日 |
|
指定相对间隔¶
客户机可以通过指定具有相关持续时间的开始或结束时间(由 /
性格。
间隔的一端必须是时间值,但另一端可以是ISO 8601标准定义的持续时间值。特殊关键字 PRESENT
可用于指定相对于当前服务器时间的时间。
描述 |
时间规范 |
---|---|
2002年9月 |
|
2010年12月25日 |
|
2010年12月25日前一整天 |
|
当前时间前36小时 |
|
备注
最后一个示例可以与kml服务配对,以提供 谷歌地球 网络链接,它总是用最近36小时的数据进行更新。
减少精度时间¶
WMS规范还允许通过省略一些时间字符串来截断时间规范。在这种情况下,geoserver将时间视为长度等于 指定的最精确单位 在时间字符串中。
例如,如果时间规范省略了除“年”之外的所有字段,那么它将标识一个从该年年初开始为期一年的范围。
备注
geoserver通过添加适当的单位,然后减去1毫秒来实现这一点。当使用与数据实际采样频率一致的间隔时,这避免了令人惊讶的结果-例如,如果年度数据与2001-01-01T00:00:00.0Z、2002-01-01T00:00:00Z等日期一起本地存储,则2001年的请求将包括2001年和20年的样本。02,这是不需要的。
描述 |
缩短精度时间 |
等效范围 |
---|---|---|
2002年9月 |
|
|
2010年12月25日 |
|
|
减少精度时间和范围¶
在指定范围时,也允许减少精度时间。在这种情况下,geoserver有效地扩展了上面描述的开始和结束时间,然后包括开始间隔开始之后和结束间隔结束之前的所有样本。
备注
同样,范围也是包含的。
描述 |
缩短精度时间 |
等效范围 |
---|---|---|
2002年9月至12月 |
|
|
2010年12月25日下午12点至6点 |
|
|
备注
在上一个示例中,请注意,结果可能不直观,因为它包括从下午6点到下午6:59的所有时间。
指定时间列表¶
Geoserver还可以接受离散时间值列表。这对于某些应用程序很有用,例如动画,在这些应用程序中,一次等于一帧。
列表的元素用逗号分隔。
备注
geoserver目前不支持范围列表,因此所有列表查询的有效分辨率为1毫秒。如果在指定范围时使用低精度表示法,则每个范围都将自动转换为范围开始时的即时值。
如果列表间距均匀(例如,每天或每小时采样),则可以使用斜线分隔的开始时间、结束时间和期间,将列表指定为一个范围。
描述 |
列表符号 |
等效范围表示法 |
---|---|---|
2012年8月12日至14日每天中午 |
|
|
1999年9月1日、10月1日和11月1日午夜 |
|
|
指定周期性¶
周期性也以ISO-8601格式规定:大写P后跟一个或多个间隔长度,每个间隔长度由一个数字和一个字母组成,用于标识时间单位:
单位 |
缩写 |
---|---|
年 |
|
月 |
|
天 |
|
小时 |
|
分钟 |
|
秒 |
|
值的年/月/日组必须与小时/分钟/秒组分隔 T
性格。如果省略小时、分钟和秒,则T本身可以省略。此外,可以完全忽略包含0的字段。
允许使用分数值,但仅限于包含的最具体值。
备注
期间必须平均划分为由开始/结束时间定义的间隔。因此,如果开始/结束时间表示12小时,则允许1小时,但5小时不会。
例如,下面列出的多个表示都是等效的。
一小时:
P0Y0M0DT1H0M0S PT1H0M0S PT1H
90分钟:
P0Y0M0DT1H30M0S PT1H30M P90M
18个月:
P1Y6M0DT0H0M0S P1Y6M0D P0Y18M0DT0H0M0S P18M
备注
P1.25Y3M
这是不可接受的,因为分数值只在给出的最具体的值中被允许,在这种情况下是几个月。