在GML3中已经可以表达时态信息。GML3中的时间模式对GML的核心元素进行了扩展,使其包括了可以对地理数据的时间特征进行描述的元素。其目的是描述和定义构成一门语言的结构,即提供一种用来描述一个动态的、基于要素的时间模式的历史的方法,用XML模式或一个要素集合的生命周期来表达这些结构。基本的时空模型致力与调节要素层和属性层的时间戳,并且支持对移动目标的跟踪。
时态模式由temporal.xsd,temporalComplexes.xsd两个模式文档组成,它们通过<include>元素引人了复合单位模式units.xsd中的定义和声明。
GML时态模式包括描述几何和拓扑、时态参考系统和地理数据时态特征的组件。表示的模型构成了概念模式的专用标准。基本的时空模型致力于提供要素层(feature-level)和属性层(attribute-level)的时间戳(time stamping),并且支持跟踪移动目标。
度量时间(Time)有两种类型的尺度:间隔和次序。间隔尺度为测量时间的持续性提供了基础;次序尺度提供了时间的相对位置信息(例如,一个地层次序或地质时间尺度)。
其它两个与描述时态对象有关的ISO标准是:ISO 8601,将时刻(time instants)和时段(time periods)描述成具有特殊结构和标点的文本串的编码。ISO 11404,详细描述了时距(time intervals),作为一种独立于语言的数据类型的一般讨论的一部分。
时态模式由两个相关的主题组成:三个模式文档提供了表示时刻、时段、时态拓扑和参考系统的基本元素;一个更为专门化的用于表示动态要素的模式文档组件。下图是GML中时态模式的层次结构。
<!--[if mso & !supportInlineShapes & supportFields]><span
lang=EN-US><span style='mso-element:field-begin;mso-field-lock:yes'></span><span
style='mso-spacerun:yes'> </span>SHAPE<span style='mso-spacerun:yes'> </span>\*
MERGEFORMAT <span style='mso-element:field-separator'></span></span><![endif]--><!--[if gte vml 1]><v:group id="_x0000_s1026" editas="canvas"
style='width:353.2pt;height:201.75pt;mso-position-horizontal-relative:char;
mso-position-vertical-relative:line' coordorigin="1613,1211" coordsize="7200,4250">
<o:lock v:ext="edit" aspectratio="t" />
<v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75"
o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
<v:stroke joinstyle="miter" />
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0" />
<v:f eqn="sum @0 1 0" />
<v:f eqn="sum 0 0 @1" />
<v:f eqn="prod @2 1 2" />
<v:f eqn="prod @3 21600 pixelWidth" />
<v:f eqn="prod @3 21600 pixelHeight" />
<v:f eqn="sum @0 0 1" />
<v:f eqn="prod @6 1 2" />
<v:f eqn="prod @7 21600 pixelWidth" />
<v:f eqn="sum @8 21600 0" />
<v:f eqn="prod @7 21600 pixelHeight" />
<v:f eqn="sum @10 21600 0" />
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" />
<o:lock v:ext="edit" aspectratio="t" />
</v:shapetype><v:shape id="_x0000_s1027" type="#_x0000_t75" style='position:absolute;
left:1613;top:1211;width:7200;height:4250' o:preferrelative="f">
<v:fill o:detectmouseclick="t" />
<v:path o:extrusionok="t" o:connecttype="none" />
<o:lock v:ext="edit" text="t" />
</v:shape><v:rect id="_x0000_s1028" style='position:absolute;left:4748;top:1211;
width:930;height:510'>
<v:textbox style='mso-next-textbox:#_x0000_s1028' inset="6.84pt,3.42pt,6.84pt,3.42pt">
<![if !mso]>
<table cellpadding=0 cellspacing=0 width="100%">
<tr>
<td><![endif]>
<div>
<p class=MsoNormal><i style='mso-bidi-font-style:normal'><span lang=EN-US
style='font-size:8.5pt;mso-bidi-font-size:9.0pt'>_GML<o:p></o:p></span></i></p>
</div>
<![if !mso]></td>
</tr>
</table>
<![endif]></v:textbox>
</v:rect><v:shapetype id="_x0000_t5" coordsize="21600,21600" o:spt="5" adj="10800"
path="m@0,l,21600r21600,xe">
<v:stroke joinstyle="miter" />
<v:formulas>
<v:f eqn="val #0" />
<v:f eqn="prod #0 1 2" />
<v:f eqn="sum @1 10800 0" />
</v:formulas>
<v:path gradientshapeok="t" o:connecttype="custom" o:connectlocs="@0,0;@1,10800;0,21600;10800,21600;21600,21600;@2,10800"
textboxrect="0,10800,10800,18000;5400,10800,16200,18000;10800,10800,21600,18000;0,7200,7200,21600;7200,7200,14400,21600;14400,7200,21600,21600" />
<v:handles>
<v:h position="#0,topLeft" xrange="0,21600" />
</v:handles>
</v:shapetype><v:shape id="_x0000_s1029" type="#_x0000_t5" style='position:absolute;
left:5097;top:1721;width:232;height:170' />
<v:line id="_x0000_s1030" style='position:absolute' from="5213,1891" to="5213,2061" />
<v:line id="_x0000_s1031" style='position:absolute' from="2774,2061" to="7652,2062" />
<v:rect id="_x0000_s1032" style='position:absolute;left:4168;top:2231;width:1974;
height:510'>
<v:textbox style='mso-next-textbox:#_x0000_s1032' inset="6.84pt,3.42pt,6.84pt,3.42pt">
<![if !mso]>
<table cellpadding=0 cellspacing=0 width="100%">
<tr>
<td><![endif]>
<div>
<p class=MsoNormal><span lang=EN-US style='font-size:8.5pt;mso-bidi-font-size:
9.0pt'>TimeReferenceSystem<o:p></o:p></span></p>
</div>
<![if !mso]></td>
</tr>
</table>
<![endif]></v:textbox>
</v:rect><v:rect id="_x0000_s1033" style='position:absolute;left:2194;top:2231;
width:1277;height:510'>
<v:textbox style='mso-next-textbox:#_x0000_s1033' inset="6.84pt,3.42pt,6.84pt,3.42pt">
<![if !mso]>
<table cellpadding=0 cellspacing=0 width="100%">
<tr>
<td><![endif]>
<div>
<p class=MsoNormal><i style='mso-bidi-font-style:normal'><span lang=EN-US
style='font-size:8.5pt;mso-bidi-font-size:9.0pt'>_TimeObject<o:p></o:p></span></i></p>
</div>
<![if !mso]></td>
</tr>
</table>
<![endif]></v:textbox>
</v:rect><v:rect id="_x0000_s1034" style='position:absolute;left:6955;top:2231;
width:1510;height:510'>
<v:textbox style='mso-next-textbox:#_x0000_s1034' inset="6.84pt,3.42pt,6.84pt,3.42pt">
<![if !mso]>
<table cellpadding=0 cellspacing=0 width="100%">
<tr>
<td><![endif]>
<div>
<p class=MsoNormal><span lang=EN-US style='font-size:8.5pt;mso-bidi-font-size:
9.0pt'>TimeOrdinalEra<o:p></o:p></span></p>
</div>
<![if !mso]></td>
</tr>
</table>
<![endif]></v:textbox>
</v:rect><v:line id="_x0000_s1035" style='position:absolute' from="2774,2061"
to="2774,2231" />
<v:line id="_x0000_s1036" style='position:absolute' from="5213,2061" to="5213,2231" />
<v:line id="_x0000_s1037" style='position:absolute' from="7652,2061" to="7652,2231" />
<v:shape id="_x0000_s1038" type="#_x0000_t5" style='position:absolute;left:2658;
top:2741;width:232;height:170' />
<v:line id="_x0000_s1039" style='position:absolute' from="2774,2911" to="2775,3081" />
<v:shape id="_x0000_s1040" type="#_x0000_t5" style='position:absolute;left:5097;
top:2741;width:232;height:170' />
<v:line id="_x0000_s1041" style='position:absolute' from="5213,2911" to="5215,3081" />
<v:line id="_x0000_s1042" style='position:absolute' from="4748,3081" to="7419,3081" />
<v:rect id="_x0000_s1043" style='position:absolute;left:4052;top:3251;width:2438;
height:510'>
<v:textbox style='mso-next-textbox:#_x0000_s1043' inset="6.84pt,3.42pt,6.84pt,3.42pt">
<![if !mso]>
<table cellpadding=0 cellspacing=0 width="100%">
<tr>
<td><![endif]>
<div>
<p class=MsoNormal><span lang=EN-US style='font-size:8.5pt;mso-bidi-font-size:
9.0pt'>TimeOrdinalReferenceSystem<o:p></o:p></span></p>
</div>
<![if !mso]></td>
</tr>
</table>
<![endif]></v:textbox>
</v:rect><v:rect id="_x0000_s1044" style='position:absolute;left:6723;top:3251;
width:1974;height:510'>
<v:textbox style='mso-next-textbox:#_x0000_s1044' inset="6.84pt,3.42pt,6.84pt,3.42pt">
<![if !mso]>
<table cellpadding=0 cellspacing=0 width="100%">
<tr>
<td><![endif]>
<div>
<p class=MsoNormal><span lang=EN-US style='font-size:8.5pt;mso-bidi-font-size:
9.0pt'>TimeCoordinateSystem<o:p></o:p></span></p>
</div>
<![if !mso]></td>
</tr>
</table>
<![endif]></v:textbox>
</v:rect><v:line id="_x0000_s1045" style='position:absolute' from="4748,3081"
to="4748,3251" />
<v:line id="_x0000_s1046" style='position:absolute' from="7419,3081" to="7419,3251" />
<v:rect id="_x0000_s1047" style='position:absolute;left:2078;top:3081;width:1393;
height:510'>
<v:textbox style='mso-next-textbox:#_x0000_s1047' inset="6.84pt,3.42pt,6.84pt,3.42pt">
<![if !mso]>
<table cellpadding=0 cellspacing=0 width="100%">
<tr>
<td><![endif]>
<div>
<p class=MsoNormal><i style='mso-bidi-font-style:normal'><span lang=EN-US
style='font-size:8.5pt;mso-bidi-font-size:9.0pt'>_TimePrimitive<o:p></o:p></span></i></p>
</div>
<![if !mso]></td>
</tr>
</table>
<![endif]></v:textbox>
</v:rect><v:shape id="_x0000_s1048" type="#_x0000_t5" style='position:absolute;
left:2658;top:3591;width:232;height:170' />
<v:line id="_x0000_s1049" style='position:absolute' from="2774,3761" to="2776,3931" />
<v:line id="_x0000_s1050" style='position:absolute' from="2310,3931" to="3587,3932" />
<v:rect id="_x0000_s1051" style='position:absolute;left:3007;top:4101;width:1161;
height:510'>
<v:textbox style='mso-next-textbox:#_x0000_s1051' inset="6.84pt,3.42pt,6.84pt,3.42pt">
<![if !mso]>
<table cellpadding=0 cellspacing=0 width="100%">
<tr>
<td><![endif]>
<div>
<p class=MsoNormal><span lang=EN-US style='font-size:8.5pt;mso-bidi-font-size:
9.0pt'>TimeInstant<o:p></o:p></span></p>
</div>
<![if !mso]></td>
</tr>
</table>
<![endif]></v:textbox>
</v:rect><v:rect id="_x0000_s1052" style='position:absolute;left:1729;top:4101;
width:1161;height:510'>
<v:textbox style='mso-next-textbox:#_x0000_s1052' inset="6.84pt,3.42pt,6.84pt,3.42pt">
<![if !mso]>
<table cellpadding=0 cellspacing=0 width="100%">
<tr>
<td><![endif]>
<div>
<p class=MsoNormal><span lang=EN-US style='font-size:8.5pt;mso-bidi-font-size:
9.0pt'>TimePeriod<o:p></o:p></span></p>
</div>
<![if !mso]></td>
</tr>
</table>
<![endif]></v:textbox>
</v:rect><v:line id="_x0000_s1053" style='position:absolute' from="2310,3931"
to="2310,4101" />
<v:line id="_x0000_s1054" style='position:absolute' from="3587,3931" to="3587,4101" />
<v:rect id="_x0000_s1055" style='position:absolute;left:4748;top:3931;width:1394;
height:510'>
<v:textbox style='mso-next-textbox:#_x0000_s1055' inset="6.84pt,3.42pt,6.84pt,3.42pt">
<![if !mso]>
<table cellpadding=0 cellspacing=0 width="100%">
<tr>
<td><![endif]>
<div>
<p class=MsoNormal><span lang=EN-US style='font-size:8.5pt;mso-bidi-font-size:
9.0pt'>TimeDuration<o:p></o:p></span></p>
</div>
<![if !mso]></td>
</tr>
</table>
<![endif]></v:textbox>
</v:rect><v:rect id="_x0000_s1056" style='position:absolute;left:6839;top:3931;
width:1626;height:510'>
<v:textbox style='mso-next-textbox:#_x0000_s1056' inset="6.84pt,3.42pt,6.84pt,3.42pt">
<![if !mso]>
<table cellpadding=0 cellspacing=0 width="100%">
<tr>
<td><![endif]>
<div>
<p class=MsoNormal><span lang=EN-US style='font-size:8.5pt;mso-bidi-font-size:
9.0pt'>TemporalPosition<o:p></o:p></span></p>
</div>
<![if !mso]></td>
</tr>
</table>
<![endif]></v:textbox>
</v:rect><v:shape id="_x0000_s1057" type="#_x0000_t5" style='position:absolute;
left:5329;top:4441;width:232;height:170' />
<v:line id="_x0000_s1058" style='position:absolute' from="5445,4611" to="5447,4781" />
<v:shape id="_x0000_s1059" type="#_x0000_t5" style='position:absolute;left:7536;
top:4441;width:232;height:170' />
<v:line id="_x0000_s1060" style='position:absolute' from="7653,4611" to="7654,4781" />
<v:rect id="_x0000_s1061" style='position:absolute;left:4632;top:4781;width:1742;
height:510'>
<v:textbox style='mso-next-textbox:#_x0000_s1061' inset="6.84pt,3.42pt,6.84pt,3.42pt">
<![if !mso]>
<table cellpadding=0 cellspacing=0 width="100%">
<tr>
<td><![endif]>
<div>
<p class=MsoNormal><span lang=EN-US style='font-size:8.5pt;mso-bidi-font-size:
9.0pt'>TimeIntervalLength<o:p></o:p></span></p>
</div>
<![if !mso]></td>
</tr>
</table>
<![endif]></v:textbox>
</v:rect><v:rect id="_x0000_s1062" style='position:absolute;left:7071;top:4781;
width:1277;height:510'>
<v:textbox style='mso-next-textbox:#_x0000_s1062' inset="6.84pt,3.42pt,6.84pt,3.42pt">
<![if !mso]>
<table cellpadding=0 cellspacing=0 width="100%">
<tr>
<td><![endif]>
<div>
<p class=MsoNormal><span lang=EN-US style='font-size:8.5pt;mso-bidi-font-size:
9.0pt'>TimePosition<o:p></o:p></span></p>
</div>
<![if !mso]></td>
</tr>
</table>
<![endif]></v:textbox>
</v:rect><v:rect id="_x0000_s1063" style='position:absolute;left:1961;top:4781;
width:2091;height:510'>
<v:textbox style='mso-next-textbox:#_x0000_s1063' inset="6.84pt,3.42pt,6.84pt,3.42pt">
<![if !mso]>
<table cellpadding=0 cellspacing=0 width="100%">
<tr>
<td><![endif]>
<div>
<p class=MsoNormal><span lang=EN-US style='font-size:8.5pt;mso-bidi-font-size:
9.0pt'>TimeIndeterminateValue<o:p></o:p></span></p>
</div>
<![if !mso]></td>
</tr>
</table>
<![endif]></v:textbox>
</v:rect><w:wrap type="none" />
<w:anchorlock />
</v:group><![endif]--><!--[if mso & !supportInlineShapes & supportFields]><span
lang=EN-US><v:shape id="_x0000_i1025" type="#_x0000_t75" style='width:353.2pt;
height:201.75pt'>
<v:imagedata croptop="-65520f" cropbottom="65520f" />
</v:shape><span style='mso-element:field-end'></span></span><![endif]-->