Statistics
| Revision:

root / branches / Mobile1.0 / org.gvsig.gpe.gml / testdata / schemas / 3.1.1 / base / temporalReferenceSystems.xsd @ 79

History | View | Annotate | Download (12.8 KB)

1
<?xml version="1.0" encoding="UTF-8"?>
2
<schema targetNamespace="http://www.opengis.net/gml" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml" elementFormDefault="qualified" version="3.1.1">
3
	<annotation>
4
		<appinfo source="urn:opengis:specification:gml:schema-xsd:temporalReferenceSystems:3.1.1"/>
5
		<documentation xml:lang="en">The Temporal Reference Systems schema for GML 3.1 provides constructs for handling various styles of temporal reference system. 
6
    This schema reflects a partial implementation of the model described in ISO 19108:2002. 
7
    Copyright (c) 2002-2005 OGC, All Rights Reserved.
8
	For conditions, see OGC Software Notice http://www.opengeospatial.org/about/?page=ipr</documentation>
9
	</annotation>
10
	<!-- ================================================================== -->
11
	<include schemaLocation="temporalTopology.xsd"/>
12
	<include schemaLocation="dictionary.xsd"/>
13
	<!-- ================================================================== -->
14
	<!-- == Time Reference System == -->
15
	<!-- ================================================================== -->
16
	<element name="_TimeReferenceSystem" type="gml:AbstractTimeReferenceSystemType" abstract="true" substitutionGroup="gml:Definition">
17
		<annotation>
18
			<documentation>Abstract element serves primarily as the head of a substitution group for temporal reference systems.</documentation>
19
		</annotation>
20
	</element>
21
	<!-- ===================================== -->
22
	<complexType name="AbstractTimeReferenceSystemType" abstract="true">
23
		<annotation>
24
			<documentation xml:lang="en">A value in the time domain is measured relative to a temporal reference system. Common 
25
        types of reference systems include calendars, ordinal temporal reference systems, and 
26
        temporal coordinate systems (time elapsed since some epoch, e.g. UNIX time).</documentation>
27
		</annotation>
28
		<complexContent>
29
			<extension base="gml:DefinitionType">
30
				<sequence>
31
					<element name="domainOfValidity" type="string" minOccurs="0"/>
32
				</sequence>
33
			</extension>
34
		</complexContent>
35
	</complexType>
36
	<!-- ================================================================== -->
37
	<!-- == Time Coordinate System == -->
38
	<!-- ================================================================== -->
39
	<element name="TimeCoordinateSystem" type="gml:TimeCoordinateSystemType" substitutionGroup="gml:_TimeReferenceSystem"/>
40
	<!-- ===================================== -->
41
	<complexType name="TimeCoordinateSystemType">
42
		<annotation>
43
			<documentation xml:lang="en">A temporal coordinate system is based on a continuous interval scale defined in terms of a single time interval.</documentation>
44
		</annotation>
45
		<complexContent>
46
			<extension base="gml:AbstractTimeReferenceSystemType">
47
				<sequence>
48
					<choice>
49
						<element name="originPosition" type="gml:TimePositionType"/>
50
						<element name="origin" type="gml:TimeInstantPropertyType"/>
51
					</choice>
52
					<element name="interval" type="gml:TimeIntervalLengthType"/>
53
				</sequence>
54
			</extension>
55
		</complexContent>
56
	</complexType>
57
	<!-- ================================================================== -->
58
	<!-- == Time Ordinal System == -->
59
	<!-- ================================================================== -->
60
	<element name="TimeOrdinalReferenceSystem" type="gml:TimeOrdinalReferenceSystemType" substitutionGroup="gml:_TimeReferenceSystem"/>
61
	<!-- ===================================== -->
62
	<complexType name="TimeOrdinalReferenceSystemType">
63
		<annotation>
64
			<documentation xml:lang="en">In an ordinal reference system the order of events in time can be well 
65
      established, but the magnitude of the intervals between them can not be 
66
      accurately determined (e.g. a stratigraphic sequence).</documentation>
67
		</annotation>
68
		<complexContent>
69
			<extension base="gml:AbstractTimeReferenceSystemType">
70
				<sequence>
71
					<element name="component" type="gml:TimeOrdinalEraPropertyType" maxOccurs="unbounded"/>
72
				</sequence>
73
			</extension>
74
		</complexContent>
75
	</complexType>
76
	<!-- ================================================================== -->
77
	<element name="TimeOrdinalEra" type="gml:TimeOrdinalEraType"/>
78
	<!-- ===================================== -->
79
	<complexType name="TimeOrdinalEraType">
80
		<annotation>
81
			<documentation xml:lang="en">Ordinal temporal reference systems are often hierarchically structured 
82
      such that an ordinal era at a given level of the hierarchy includes a 
83
      sequence of shorter, coterminous ordinal eras. This captured using the member/group properties.  
84
      
85
      Note that in this schema, TIme Ordinal Era is patterned on TimeEdge, which is a variation from ISO 19108.  
86
      This is in order to fulfill the requirements of ordinal reference systems based on eras delimited by 
87
      named points or nodes, which are common in geology, archeology, etc.  
88
      
89
      This change is subject of a change proposal to ISO</documentation>
90
		</annotation>
91
		<complexContent>
92
			<extension base="gml:DefinitionType">
93
				<sequence>
94
					<element name="relatedTime" type="gml:RelatedTimeType" minOccurs="0" maxOccurs="unbounded"/>
95
					<element name="start" type="gml:TimeNodePropertyType"/>
96
					<element name="end" type="gml:TimeNodePropertyType"/>
97
					<element name="extent" type="gml:TimePeriodPropertyType" minOccurs="0"/>
98
					<element name="member" type="gml:TimeOrdinalEraPropertyType" minOccurs="0" maxOccurs="unbounded">
99
						<annotation>
100
							<documentation>An Era may be composed of several member Eras. The "member" element implements the association to the Era at the next level down the hierarchy.  "member" follows the standard GML property pattern whereby its (complex) value may be either described fully inline, or may be the target of a link carried on the member element and described fully elsewhere, either in the same document or from another service.</documentation>
101
						</annotation>
102
					</element>
103
					<element name="group" type="gml:ReferenceType" minOccurs="0">
104
						<annotation>
105
							<documentation>In a particular Time System, an Era may be a member of a group.  The "group" element implements the back-pointer to the Era at the next level up in the hierarchy. 
106

    
107
If the hierarchy is represented by describing the nested components fully in the their nested position inside "member" elements, then the parent can be easily inferred, so the group property is unnecessary.  
108

    
109
However, if the hierarchy is represented by links carried on the "member" property elements, pointing to Eras described fully elsewhere, then it may be useful for a child (member) era to carry an explicit pointer back to its parent (group) Era.</documentation>
110
						</annotation>
111
					</element>
112
				</sequence>
113
			</extension>
114
		</complexContent>
115
	</complexType>
116
	<!-- ================================================================== -->
117
	<complexType name="TimeOrdinalEraPropertyType">
118
		<sequence minOccurs="0">
119
			<element ref="gml:TimeOrdinalEra"/>
120
		</sequence>
121
		<attributeGroup ref="gml:AssociationAttributeGroup"/>
122
	</complexType>
123
	<!-- ================================================================== -->
124
	<!-- == Calendar == -->
125
	<!-- ================================================================== -->
126
	<element name="TimeCalendar" type="gml:TimeCalendarType" substitutionGroup="gml:_TimeReferenceSystem"/>
127
	<!-- ===================================== -->
128
	<complexType name="TimeCalendarType">
129
		<annotation>
130
			<documentation xml:lang="en">A calendar is a discrete temporal reference system 
131
      that provides a basis for defining temporal position to a resolution of one day. 
132
      A single calendar may reference more than one calendar era.</documentation>
133
		</annotation>
134
		<complexContent>
135
			<extension base="gml:AbstractTimeReferenceSystemType">
136
				<sequence>
137
					<element name="referenceFrame" type="gml:TimeCalendarEraPropertyType" maxOccurs="unbounded">
138
						<annotation>
139
							<documentation>Link to the CalendarEras that it uses as a reference for dating.</documentation>
140
						</annotation>
141
					</element>
142
				</sequence>
143
			</extension>
144
		</complexContent>
145
	</complexType>
146
	<!-- ================================================================== -->
147
	<complexType name="TimeCalendarPropertyType">
148
		<sequence minOccurs="0">
149
			<element ref="gml:TimeCalendar"/>
150
		</sequence>
151
		<attributeGroup ref="gml:AssociationAttributeGroup"/>
152
	</complexType>
153
	<!-- ================================================================== -->
154
	<element name="TimeCalendarEra" type="gml:TimeCalendarEraType" substitutionGroup="gml:Definition"/>
155
	<!-- ===================================== -->
156
	<complexType name="TimeCalendarEraType">
157
		<annotation>
158
			<documentation xml:lang="en">In every calendar, years are numbered relative to the date of a 
159
      reference event that defines a calendar era. 
160
      In this implementation, we omit the back-pointer "datingSystem".</documentation>
161
		</annotation>
162
		<complexContent>
163
			<extension base="gml:DefinitionType">
164
				<sequence>
165
					<element name="referenceEvent" type="gml:StringOrRefType">
166
						<annotation>
167
							<documentation>Name or description of a mythical or historic event which fixes the position of the base scale of the calendar era.</documentation>
168
						</annotation>
169
					</element>
170
					<element name="referenceDate" type="date" default="0001-01-01" minOccurs="0">
171
						<annotation>
172
							<documentation>Date of the referenceEvent expressed as a date in the given calendar. 
173
              In most calendars, this date is the origin (i.e., the first day) of the scale, but this is not always true.</documentation>
174
						</annotation>
175
					</element>
176
					<element name="julianReference" type="decimal">
177
						<annotation>
178
							<documentation>Julian date that corresponds to the reference date.  
179
              The Julian day numbering system is a temporal coordinate system that has an 
180
              origin earlier than any known calendar, 
181
              at noon on 1 January 4713 BC in the Julian proleptic calendar.  
182
              The Julian day number is an integer value; 
183
              the Julian date is a decimal value that allows greater resolution. 
184
              Transforming calendar dates to and from Julian dates provides a 
185
              relatively simple basis for transforming dates from one calendar to another.</documentation>
186
						</annotation>
187
					</element>
188
					<element name="epochOfUse" type="gml:TimePeriodPropertyType">
189
						<annotation>
190
							<documentation>Period for which the calendar era was used as a basis for dating.</documentation>
191
						</annotation>
192
					</element>
193
				</sequence>
194
			</extension>
195
		</complexContent>
196
	</complexType>
197
	<!-- ================================================================== -->
198
	<complexType name="TimeCalendarEraPropertyType">
199
		<sequence minOccurs="0">
200
			<element ref="gml:TimeCalendarEra"/>
201
		</sequence>
202
		<attributeGroup ref="gml:AssociationAttributeGroup"/>
203
	</complexType>
204
	<!-- ================================================================== -->
205
	<!-- == Clock == -->
206
	<!-- ================================================================== -->
207
	<element name="TimeClock" type="gml:TimeClockType" substitutionGroup="gml:_TimeReferenceSystem"/>
208
	<!-- ===================================== -->
209
	<complexType name="TimeClockType" final="#all">
210
		<annotation>
211
			<documentation xml:lang="en">A clock provides a basis for defining temporal position within a day. 
212
      A clock must be used with a calendar in order to provide a complete description of a temporal position 
213
      within a specific day.</documentation>
214
		</annotation>
215
		<complexContent>
216
			<extension base="gml:AbstractTimeReferenceSystemType">
217
				<sequence>
218
					<element name="referenceEvent" type="gml:StringOrRefType">
219
						<annotation>
220
							<documentation>Name or description of an event, such as solar noon or sunrise, 
221
              which fixes the position of the base scale of the clock.</documentation>
222
						</annotation>
223
					</element>
224
					<element name="referenceTime" type="time">
225
						<annotation>
226
							<documentation>time of day associated with the reference event expressed as 
227
              a time of day in the given clock. The reference time is usually the origin of the clock scale.</documentation>
228
						</annotation>
229
					</element>
230
					<element name="utcReference" type="time">
231
						<annotation>
232
							<documentation>24 hour local or UTC time that corresponds to the reference time.</documentation>
233
						</annotation>
234
					</element>
235
					<element name="dateBasis" type="gml:TimeCalendarPropertyType" minOccurs="0" maxOccurs="unbounded"/>
236
				</sequence>
237
			</extension>
238
		</complexContent>
239
	</complexType>
240
	<!-- ================================================================== -->
241
	<complexType name="TimeClockPropertyType">
242
		<sequence minOccurs="0">
243
			<element ref="gml:TimeClock"/>
244
		</sequence>
245
		<attributeGroup ref="gml:AssociationAttributeGroup"/>
246
	</complexType>
247
	<!-- ================================================================== -->
248
</schema>