source: TI02-CSML/trunk/newparser/example.xml @ 831

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/TI02-CSML/trunk/newparser/example.xml@831
Revision 831, 15.4 KB checked in by domlowe, 14 years ago (diff)

added csmlio.py to provide easy wrapper to parser, also ioDemo.py to show how to make calls. Neither are complete

Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<Dataset xmlns="http://ndg.nerc.ac.uk/csml" xmlns:gml="http://www.opengis.net/gml" xmlns:om="http://www.opengis.net/om" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://ndg.nerc.ac.uk/csml
3XMLSchemas/CSMLAppSchema.xsd" gml:id="TestDataset">
4        <gml:metaDataProperty xlink:href="http://ndg.nerc.ac.uk/Metadata/TestDataset"/>
5        <gml:description>Test CSML Dataset.</gml:description>
6        <gml:name codeSpace="http://ndg.nerc.ac.uk/NDGData">DataEntity0000001</gml:name>
7        <!--===================================================================-->
8        <!--===== Local unit definitions. =====-->
9        <!--===================================================================-->
10        <UnitDefinitions gml:id="UnitDefs">
11                <gml:name codeSpace="http://ndg.nerc.ac.uk">TestDatasetUnitDefs</gml:name>
12                <gml:definitionMember>
13                        <gml:UnitDefinition gml:id="psu">
14                                <gml:description>Conventional practical salinity units.</gml:description>
15                                <gml:name>practical salinity units</gml:name>
16                                <gml:quantityType>sea water salinity</gml:quantityType>
17                                <gml:catalogSymbol codeSpace="http://ndg.nerc.ac.uk/units">psu</gml:catalogSymbol>
18                        </gml:UnitDefinition>
19                </gml:definitionMember>
20        </UnitDefinitions>
21        <!--===================================================================-->
22        <!--===== Local reference system definitions. =====-->
23        <!--===================================================================-->
24        <ReferenceSystemDefinitions gml:id="RefSysDefs">
25                <gml:name codeSpace="http://ndg.nerc.ac.uk">TestDatasetRefSysDefs</gml:name>
26                <gml:definitionMember>
27                        <TimeCoordinateSystem gml:id="RefSys01">
28                                <gml:description>Temporal reference system representing hours since midnight January 1, 2000.</gml:description>
29                                <gml:name>RaingaugeTimeRefSys</gml:name>
30                                <gml:originPosition>2001-01-01T00:00:00</gml:originPosition>
31                                <gml:interval unit="hour">1</gml:interval>
32                        </TimeCoordinateSystem>
33                </gml:definitionMember>
34                <gml:definitionMember>
35                        <gml:EngineeringCRS gml:id="RefSys02">
36                                <gml:remarks>A reference system representing linear distance in metres along some path.</gml:remarks>
37                                <gml:srsName>RangeRefSys</gml:srsName>
38                                <gml:usesCS>
39                                        <gml:LinearCS gml:id="RefSys02Coords">
40                                                <gml:remarks>The coordinate system is linear with a single axis.</gml:remarks>
41                                                <gml:csName>RangeCoords</gml:csName>
42                                                <gml:usesAxis>
43                                                        <gml:CoordinateSystemAxis gml:id="RefSys02CoordAxis1" gml:uom="udunits.xml#m">
44                                                                <gml:axisName>range</gml:axisName>
45                                                                <gml:axisAbbrev>r</gml:axisAbbrev>
46                                                                <gml:axisDirection>Positive away from origin.</gml:axisDirection>
47                                                        </gml:CoordinateSystemAxis>
48                                                </gml:usesAxis>
49                                        </gml:LinearCS>
50                                </gml:usesCS>
51                                <gml:usesEngineeringDatum>
52                                        <gml:EngineeringDatum gml:id="RefSys02Datum">
53                                                <gml:remarks>Defines positions along profile relative to origin of profiling instrument (radar, CTD, etc).</gml:remarks>
54                                                <gml:datumName>Profiler origin</gml:datumName>
55                                        </gml:EngineeringDatum>
56                                </gml:usesEngineeringDatum>
57                        </gml:EngineeringCRS>
58                </gml:definitionMember>
59                <gml:definitionMember>
60                        <TimeCoordinateSystem gml:id="RefSys03">
61                                <gml:description>Temporal reference system representing five minute intervals since 08:30, 2 June, 2001.</gml:description>
62                                <gml:name>RadarTimeRefSys</gml:name>
63                                <gml:originPosition>2001-06-02T08:30:00</gml:originPosition>
64                                <gml:interval unit="minute">5</gml:interval>
65                        </TimeCoordinateSystem>
66                </gml:definitionMember>
67                <gml:definitionMember>
68                        <TimeCoordinateSystem gml:id="RefSys04">
69                                <gml:description>Temporal reference system representing day fractions since 12 May, 1999.</gml:description>
70                                <gml:name>CruiseTimeRefSys</gml:name>
71                                <gml:originPosition>1999-05-12</gml:originPosition>
72                                <gml:interval unit="day">1</gml:interval>
73                        </TimeCoordinateSystem>
74                </gml:definitionMember>
75                <gml:definitionMember>
76                        <gml:EngineeringCRS gml:id="RefSys05">
77                                <gml:remarks>A reference system representing depth pressures in decibar</gml:remarks>
78                                <gml:srsName>OceanPressureRefSys</gml:srsName>
79                                <gml:usesCS>
80                                        <gml:LinearCS gml:id="RefSys05Coords">
81                                                <gml:remarks>The coordinate system is linear with a single axis.</gml:remarks>
82                                                <gml:csName>DepthCoords</gml:csName>
83                                                <gml:usesAxis>
84                                                        <gml:CoordinateSystemAxis gml:id="RefSys05CoordAxis1" gml:uom="udunits.xml#dbar">
85                                                                <gml:axisName>depth</gml:axisName>
86                                                                <gml:axisAbbrev>r</gml:axisAbbrev>
87                                                                <gml:axisDirection>Positive downwards.</gml:axisDirection>
88                                                        </gml:CoordinateSystemAxis>
89                                                </gml:usesAxis>
90                                        </gml:LinearCS>
91                                </gml:usesCS>
92                                <gml:usesEngineeringDatum>
93                                        <gml:EngineeringDatum gml:id="RefSys05Datum">
94                                                <gml:remarks>Defines depths in pressure units from sea surface.</gml:remarks>
95                                                <gml:datumName>Sea surface</gml:datumName>
96                                                <gml:anchorPoint>0</gml:anchorPoint>
97                                        </gml:EngineeringDatum>
98                                </gml:usesEngineeringDatum>
99                        </gml:EngineeringCRS>
100                </gml:definitionMember>
101        </ReferenceSystemDefinitions>
102        <!--===================================================================-->
103        <!--===== Local phenomenon definitions. =====-->
104        <!--===================================================================-->
105        <PhenomenonDefinitions gml:id="PhenDefs">
106                <gml:name>TestDatasetPhenDefs</gml:name>
107                <gml:definitionMember>
108                        <om:Phenomenon gml:id="rainfall">
109                                <gml:description>Liquid precipitation measured with raingauge.</gml:description>
110                                <gml:name codeSpace="http://ndg.nerc.ac.uk">rainfall</gml:name>
111                        </om:Phenomenon>
112                </gml:definitionMember>
113    </PhenomenonDefinitions>
114        <!--===================================================================-->
115        <!--===== Indirect value array definitions. =====-->
116        <!--===================================================================-->
117        <NetCDFExtract gml:id="feat04times">
118                <arraySize>10000</arraySize>
119                <fileName>radar_data.nc</fileName>
120                <variableName>time</variableName>
121        </NetCDFExtract>
122        <NetCDFExtract gml:id="feat04azimuth">
123                <arraySize>10000</arraySize>
124                <fileName>radar_data.nc</fileName>
125                <variableName>az</variableName>
126        </NetCDFExtract>
127        <AggregatedArray gml:id="feat05cruisetrack">
128                <arraySize>2 50</arraySize>
129                <aggType>new</aggType>
130                <aggIndex>1</aggIndex>
131                <component>
132                        <NetCDFExtract>
133                                <arraySize>50</arraySize>
134                                <fileName>cruisetrack.nc</fileName>
135                                <variableName>alat</variableName>
136                        </NetCDFExtract>
137                </component>
138                <component>
139                        <NetCDFExtract>
140                                <arraySize>50</arraySize>
141                                <fileName>cruisetrack.nc</fileName>
142                                <variableName>alon</variableName>
143                        </NetCDFExtract>
144                </component>
145        </AggregatedArray>
146        <NetCDFExtract gml:id="feat05times">
147                <arraySize>50</arraySize>
148                <fileName>cruisetrack.nc</fileName>
149                <variableName>atime</variableName>
150        </NetCDFExtract>
151        <ArrayGenerator gml:id="feat05depths">
152                <arraySize>3001</arraySize>
153                <expression>0:2:6000</expression>
154        </ArrayGenerator>
155        <!--===================================================================-->
156        <!--===== Feature instances =====-->
157        <!--===================================================================-->
158        <gml:FeatureCollection>
159                <gml:boundedBy>
160                        <gml:EnvelopeWithTimePeriod srsName="urn:EPSG:geographicCRS:4326">
161                                <gml:lowerCorner>-10 15</gml:lowerCorner>
162                                <gml:upperCorner>30 65</gml:upperCorner>
163                                <gml:timePosition>1998-01-01</gml:timePosition>
164                                <gml:timePosition>2003-12-31</gml:timePosition>
165                        </gml:EnvelopeWithTimePeriod>
166                </gml:boundedBy>
167                <gml:featureMember>
168                        <PointFeature gml:id="feat01">
169                                <gml:description>Temperature reading from thermometer.</gml:description>
170                                <PointDomain>
171                                        <domainReference>
172                                                <Position  srsName="urn:EPSG:geographicCRS:4979" axisLabels="Lat Long h" uomLabels="degree degree m'">
173                                                        <location>0.1 1.5 25</location>
174                                                        <time>2000-08-13T13:51:10</time>
175                                                </Position>
176                                        </domainReference>
177                                </PointDomain>
178                                <gml:rangeSet>
179                                        <gml:QuantityList uom="udunits.xml#degreesC">10</gml:QuantityList>
180                                </gml:rangeSet>
181                                <parameter  xlink:href="CFStandardNames.xml#air_temperature"/>
182                        </PointFeature>
183                </gml:featureMember>
184                <gml:featureMember>
185                        <PointSeriesFeature gml:id="feat02">
186                                <gml:description>January timeseries of raingauge measurements</gml:description>
187                                <PointSeriesDomain>
188                                        <domainReference>
189                                                <Trajectory srsName="urn:EPSG:geographicCRS:4979">
190                                                        <locations>0.1 1.5 25</locations>
191                                                        <times frame="#RefSys01">0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 2 26 27 28 29 30 31</times>
192                                                </Trajectory>
193                                        </domainReference>
194                                </PointSeriesDomain>
195                                <gml:rangeSet>
196                                        <gml:QuantityList uom="udunits.xml#mm">5 3 10 1 2 8 10 2 5 10 20 21 12 3 5 19 12 23 32 10 8 8 2 0 0 1 5 6 10 17 20</gml:QuantityList>
197                                </gml:rangeSet>
198                                <parameter xlink:href="#rainfall"/>
199                        </PointSeriesFeature>
200                </gml:featureMember>
201                <gml:featureMember>
202                        <ProfileFeature gml:id="feat03">
203                                <gml:description>Vertical wInd profile</gml:description>
204                                <ProfileDomain>
205                                        <domainReference>
206                                                <OrientedPosition srsName="urn:EPSG:geographicCRS:4326">
207                                                        <location>-1 3</location>
208                                                        <time>1999-07-21T10:00:00</time>
209                                                        <direction>
210                                                                <gml:horizontalAngle uom="udunits.xml#degrees">0</gml:horizontalAngle>
211                                                                <gml:verticalAngle uom="udunits.xml#degrees">90</gml:verticalAngle>
212                                                        </direction>
213                                                </OrientedPosition>
214                                        </domainReference>
215                                        <domainComplement>
216                                                <DirectPositionList srsName="#RefSys02">10 20 30 40 50 60 70 80 90 100</DirectPositionList>
217                                        </domainComplement>
218                                </ProfileDomain>
219                                <gml:rangeSet>
220                                        <gml:DataBlock>
221                                                <gml:rangeParameters>
222                                                        <gml:CompositeValue>
223                                                                <gml:valueComponents>
224                                                                        <gml:measure uom="udunits.xml#ms-1"/>
225                                                                        <gml:measure uom="udunits.xml#ms-1"/>
226                                                                </gml:valueComponents>
227                                                        </gml:CompositeValue>
228                                                </gml:rangeParameters>
229                                                <gml:doubleOrNullTupleList>2.0 1.1 2.4 0.8 3.3 0.1 2.6 -0.2 5.6 0.1 4.5 1.3 6.3 0.1 5.7 0.9 4.2 1.1 3.2 -0.1</gml:doubleOrNullTupleList>
230                                        </gml:DataBlock>
231                                </gml:rangeSet>
232                                <parameter>
233                                        <om:CompositePhenomenon gml:id="wind">
234                                                <gml:name>Vector wind</gml:name>
235                                                <om:componentPhenomenon xlink:href="CFStandardNames.xml#eastward_wind"/>
236                                                <om:componentPhenomenon xlink:href="CFStandardNames.xml#northward_wind"/>
237                                        </om:CompositePhenomenon>
238                                </parameter>
239                        </ProfileFeature>
240                </gml:featureMember>
241                <gml:featureMember>
242                        <ProfileSeriesFeature gml:id="feat04">
243                                <gml:description>Scanning radar timeseries.</gml:description>
244                                <ProfileSeriesDomain>
245                                        <domainReference>
246                                                <OrientedTrajectory srsName="urn:EPSG:geographicCRS:4326">
247                                                        <locations>-0.5 2.1</locations>
248                                                        <times xlink:href="#feat04times" frame="#RefSys03"/>
249                                                        <directions>
250                                                                <horizontalAngles uom="udunits.xml#degree" xlink:href="#feat04azimuth"/>
251                                                                <verticalAngles uom="udunits.xml#degree">23</verticalAngles>
252                                                        </directions>
253                                                </OrientedTrajectory>
254                                        </domainReference>
255                                        <domainComplement>
256                                                <DirectPositionList srsName="#RefSys02">100 200 300 400 500 600 700 800 900 1000</DirectPositionList>
257                                        </domainComplement>
258                                </ProfileSeriesDomain>
259                                <gml:rangeSet>
260                                        <NetCDFExtract>
261                                                <arraySize>10 10000</arraySize>
262                                                <uom>udunits.xml#percent</uom>
263                                                <fileName>radar_data.nc</fileName>
264                                                <variableName>hum</variableName>
265                                        </NetCDFExtract>
266                                </gml:rangeSet>
267                                <gml:coverageFunction>
268                                        <MappingRule scanOrder="+gridI +series"/>
269                                </gml:coverageFunction>
270                                <parameter xlink:href="XFStandardNames.xml#relative_humidity"/>
271                        </ProfileSeriesFeature>
272                </gml:featureMember>
273                <gml:featureMember>
274                        <ProfileSeriesFeature gml:id="feat05">
275                                <gml:description>Cruise CTD salinity</gml:description>
276                                <ProfileSeriesDomain>
277                                        <domainReference>
278                                                <OrientedTrajectory srsName="urn:EPSG:geographicCRS:4326">
279                                                        <locations order="byCoords" xlink:href="#feat05cruisetrack"/>
280                                                        <times xlink:href="#feat05times" frame="#RefSys04"/>
281                                                        <directions>
282                                                                <horizontalAngles uom="udunits.xml#degree">0</horizontalAngles>
283                                                                <verticalAngles uom="udunits.xml#degree">-90</verticalAngles>
284                                                        </directions>
285                                                </OrientedTrajectory>
286                                        </domainReference>
287                                        <domainComplement>
288                                                <DirectPositionList srsName="#RefSys05" xlink:href="#feat05depths"/>
289                                        </domainComplement>
290                                </ProfileSeriesDomain>
291                                <gml:rangeSet>
292                                        <AggregatedArray>
293                                                <arraySize>3001 50</arraySize>
294                                                <uom>#psu</uom>
295                                                <aggType>new</aggType>
296                                                <aggIndex>1</aggIndex>
297                                                <component>
298                                                        <NetCDFExtract>
299                                                                <arraySize>50</arraySize>
300                                                                <fileName>cruisestation0??.nc</fileName>
301                                                                <variableName>ctdsal</variableName>
302                                                        </NetCDFExtract>
303                                                </component>
304                                        </AggregatedArray>
305                                </gml:rangeSet>
306                                <gml:coverageFunction>
307                                        <MappingRule scanOrder="+gridI +series"/>
308                                </gml:coverageFunction>
309                                <parameter xlink:href="http://bodc.ac.uk/PSAL"/>
310                        </ProfileSeriesFeature>
311                </gml:featureMember>
312                                <gml:featureMember>
313                        <GridFeature gml:id='feat06'>
314                                <GridDomain>
315                                        <domainReference>
316                                                <gml:TimeInstant>
317                                                        <gml:timePosition>2004-01-01T00:00:00</gml:timePosition>
318                                                </gml:TimeInstant>
319                                        </domainReference>
320                                        <domainComplement>
321                                                <Grid srsName="urn:EPSG:geographicCRS:23031" srsDimension="2" dimension="2">
322                                                        <gml:limits>
323                                                                <gml:GridEnvelope>
324                                                                        <gml:low>1 5</gml:low>
325                                                                        <gml:high>1 3</gml:high>
326                                                                </gml:GridEnvelope>
327                                                        </gml:limits>
328                                                        <gml:axisName>gridI</gml:axisName>
329                                                        <gml:axisName>gridJ</gml:axisName>
330                                                        <ordinate>
331                                                                <gridAxesSpanned>gridI</gridAxesSpanned>
332                                                                <sequenceRule>Linear</sequenceRule>
333                                                                <definesAxis xlink:href="#eastingUTM"/>
334                                                                <axisValues>100000 100025 100050 100075 100100</axisValues>
335                                                        </ordinate>
336                                                        <ordinate>
337                                                                <gridAxesSpanned>gridJ</gridAxesSpanned>
338                                                                <sequenceRule>Linear</sequenceRule>
339                                                                <definesAxis xlink:href="#northingUTM"/>
340                                                                <axisValues>2000500 2000525 2000550</axisValues>
341                                                        </ordinate>
342                                                </Grid>
343                                        </domainComplement>
344                                </GridDomain>
345                                <gml:rangeSet>
346                                        <gml:QuantityList uom="udunits.xml#m">10 9 9 8 9 10 8 9 8 7 9 10 11 10 10</gml:QuantityList>
347                                </gml:rangeSet>
348                                <parameter>
349                                        <om:ParameterisedPhenomenon gml:id="sea_floor_depth_below_mean_sea_level">
350                                                <gml:name codeSpace="http://ndg.nerc.ac.uk/parameterDictionary">sea_floor_depth_below_mean_sea_level</gml:name>
351                                                <om:basePhenomenon xlink:href="CFStandardNames.xml#sea_floor_depth"/>
352                                                <om:constraint>
353                                                        <om:TypedCategory axis="#referenceCRS" codeSpace="http://ndg.nerc.ac.uk/parameterDictionary">Mean Sea Level</om:TypedCategory>
354                                                </om:constraint>
355                                        </om:ParameterisedPhenomenon>
356                                </parameter>
357                        </GridFeature>
358                </gml:featureMember>
359        <gml:featureMember>
360            <TrajectoryFeature gml:id="testtraj">
361                <track>
362                    <Trajectory srsName="urn:EPSG:geographicCRS:4326"></Trajectory>
363                    <locations order="byCoords">   41.4905 10.541 41.5012 9.4343 42.4344 9.5433     </locations>
364                    <times>1997-08-10T31:05 1997-08-10T34:84 1997-08-10T52:00                 </times>
365                </track>
366            </TrajectoryFeature>
367        </gml:featureMember>
368        </gml:FeatureCollection>
369</Dataset>
Note: See TracBrowser for help on using the repository browser.