source: TI07-MOLES/tags/Schemae/ndgmetadata1.2.3.xsd @ 811

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/TI07-MOLES/tags/Schemae/ndgmetadata1.2.3.xsd@811
Revision 811, 45.6 KB checked in by ko23, 14 years ago (diff)

Modifications from 1.02.03:

addition of Citation data type;
addition of dgPolygon2DType;
addition of dgCourse2DType;
addition of dgPoint2DType;
addition of dgDataQuality to dgDataSummary;
addition of dgDataUseNotice to dgDataQuality;
addition of dgPolygon2D to dgSpatialCoverage;
addition of dgCourse2D to dgSpatialCoverage/dgCourse;
extension of dgSecurityConditionType to allow plain English explanatory text.
requirement for a deployment to have an end date removed;
correct spelling of "principal";
correct spelling of "DataProvenance?" to "dgMetadataProvenance".

Will be tagged in a week's time (20060428) to allow time for comment.

Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!-- edited with XMLSpy v2005 rel. 3 U (http://www.altova.com) by K O'Neill (CCLRC e-Science Centre) -->
3<xs:schema xmlns="http://ndg.nerc.ac.uk/moles" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ndg.nerc.ac.uk/moles" elementFormDefault="unqualified" attributeFormDefault="unqualified">
4        <!--version 1.02.03 of NDG metadata schema.-->
5        <xs:element name="dgMetadata">
6                <xs:annotation>
7                        <xs:documentation>Root element of schema</xs:documentation>
8                </xs:annotation>
9                <xs:complexType>
10                        <xs:sequence minOccurs="0">
11                                <xs:element name="dgMetadataRecord" minOccurs="0" maxOccurs="unbounded">
12                                        <xs:complexType>
13                                                <xs:sequence>
14                                                        <xs:element ref="dgMetadataID"/>
15                                                        <xs:element name="dgMetadataDescription" type="dgMetadataDescriptionType"/>
16                                                        <xs:element name="name" type="xs:string"/>
17                                                        <xs:element name="abbreviation" type="xs:string">
18                                                                <xs:annotation>
19                                                                        <xs:documentation>Software should default name and abbreviation to (at least a truncated version of) the other, if only one is filled in.</xs:documentation>
20                                                                </xs:annotation>
21                                                        </xs:element>
22                                                        <xs:choice>
23                                                                <xs:element name="dgActivity">
24                                                                        <xs:complexType>
25                                                                                <xs:sequence>
26                                                                                        <xs:element name="relatedActivity" minOccurs="0" maxOccurs="unbounded">
27                                                                                                <xs:complexType>
28                                                                                                        <xs:sequence>
29                                                                                                                <xs:element name="activityRelation" type="dgStructuredKeywordType"/>
30                                                                                                                <xs:element name="relatedActivityID" type="dgMetadataIDType"/>
31                                                                                                        </xs:sequence>
32                                                                                                </xs:complexType>
33                                                                                        </xs:element>
34                                                                                        <xs:choice maxOccurs="unbounded">
35                                                                                                <xs:element name="dgActivityDataCollection"/>
36                                                                                                <xs:element name="dgActivityDataProject"/>
37                                                                                                <xs:element name="dgActivityDataCampaign"/>
38                                                                                                <xs:element name="dgActivityDataInvestigation">
39                                                                                                        <xs:complexType>
40                                                                                                                <xs:choice>
41                                                                                                                        <xs:element name="dgFlight"/>
42                                                                                                                        <xs:element name="dgCruise"/>
43                                                                                                                </xs:choice>
44                                                                                                        </xs:complexType>
45                                                                                                </xs:element>
46                                                                                        </xs:choice>
47                                                                                        <xs:element name="dgActivityRole">
48                                                                                                <xs:annotation>
49                                                                                                        <xs:documentation>Note that this is a part of the "abstract class" dgRoles</xs:documentation>
50                                                                                                </xs:annotation>
51                                                                                                <xs:complexType>
52                                                                                                        <xs:sequence>
53                                                                                                                <xs:element name="dgInvestigator">
54                                                                                                                        <xs:complexType>
55                                                                                                                                <xs:sequence>
56                                                                                                                                        <xs:element name="dgPrincipalInvestigator" type="dgRoleType" maxOccurs="unbounded"/>
57                                                                                                                                        <xs:element name="dgCoInvestigator" type="dgRoleType" minOccurs="0" maxOccurs="unbounded"/>
58                                                                                                                                </xs:sequence>
59                                                                                                                        </xs:complexType>
60                                                                                                                </xs:element>
61                                                                                                                <xs:element name="dgTechnicalContact" type="dgRoleType" minOccurs="0"/>
62                                                                                                                <xs:element name="dgProjectManager" type="dgRoleType" minOccurs="0"/>
63                                                                                                        </xs:sequence>
64                                                                                                </xs:complexType>
65                                                                                        </xs:element>
66                                                                                        <xs:element name="ActivityDeployment" type="dgDeploymentType" minOccurs="0" maxOccurs="unbounded"/>
67                                                                                        <xs:element name="dgActivityCoverage" type="dgCoverageType" minOccurs="0"/>
68                                                                                        <xs:element name="ActivityDuration" minOccurs="0">
69                                                                                                <xs:complexType>
70                                                                                                        <xs:sequence>
71                                                                                                                <xs:element name="startDate" type="xs:date"/>
72                                                                                                                <xs:element name="endDate" type="xs:date" minOccurs="0"/>
73                                                                                                        </xs:sequence>
74                                                                                                </xs:complexType>
75                                                                                        </xs:element>
76                                                                                </xs:sequence>
77                                                                        </xs:complexType>
78                                                                </xs:element>
79                                                                <xs:element name="dgDataEntity">
80                                                                        <xs:complexType>
81                                                                                <xs:sequence>
82                                                                                        <xs:element name="dgDataSetType">
83                                                                                                <xs:annotation>
84                                                                                                        <xs:documentation>Simulation, analysis, or measurement</xs:documentation>
85                                                                                                </xs:annotation>
86                                                                                                <xs:complexType>
87                                                                                                        <xs:choice>
88                                                                                                                <xs:element name="dgSimulation"/>
89                                                                                                                <xs:element name="dgAnalysis"/>
90                                                                                                                <xs:element name="dgMeasurement"/>
91                                                                                                        </xs:choice>
92                                                                                                </xs:complexType>
93                                                                                        </xs:element>
94                                                                                        <xs:element name="dgDataObjectType">
95                                                                                                <xs:annotation>
96                                                                                                        <xs:documentation>Profile etc. </xs:documentation>
97                                                                                                </xs:annotation>
98                                                                                                <xs:complexType>
99                                                                                                        <xs:choice>
100                                                                                                                <xs:element name="dgBasicData">
101                                                                                                                        <xs:complexType>
102                                                                                                                                <xs:choice>
103                                                                                                                                        <xs:element name="dgEnsemble"/>
104                                                                                                                                        <xs:element name="dgLaGrangianPath"/>
105                                                                                                                                        <xs:element name="dgN-DimensionalDataset"/>
106                                                                                                                                        <xs:element name="dgSample"/>
107                                                                                                                                        <xs:element name="dgProfile"/>
108                                                                                                                                        <xs:element name="dgSection"/>
109                                                                                                                                </xs:choice>
110                                                                                                                        </xs:complexType>
111                                                                                                                </xs:element>
112                                                                                                                <xs:element name="dgDerivedData">
113                                                                                                                        <xs:complexType>
114                                                                                                                                <xs:sequence>
115                                                                                                                                        <xs:element name="dgInputDataGranuleID" type="dgMetadataIDType" maxOccurs="unbounded">
116                                                                                                                                                <xs:annotation>
117                                                                                                                                                        <xs:documentation>Existence of these indicates a derived datatype, although I suppose a "unknown" DE will have to be registered...</xs:documentation>
118                                                                                                                                                </xs:annotation>
119                                                                                                                                        </xs:element>
120                                                                                                                                        <xs:choice>
121                                                                                                                                                <xs:element name="dgClimatology"/>
122                                                                                                                                                <xs:element name="dgTimeSeries"/>
123                                                                                                                                                <xs:element name="dgIntegration"/>
124                                                                                                                                        </xs:choice>
125                                                                                                                                </xs:sequence>
126                                                                                                                        </xs:complexType>
127                                                                                                                </xs:element>
128                                                                                                        </xs:choice>
129                                                                                                </xs:complexType>
130                                                                                        </xs:element>
131                                                                                        <xs:element name="dgDataGranule" maxOccurs="unbounded">
132                                                                                                <xs:annotation>
133                                                                                                        <xs:documentation>Link to DataModel. Could also hold summary of Andrew's "data descriptor"</xs:documentation>
134                                                                                                </xs:annotation>
135                                                                                                <xs:complexType>
136                                                                                                        <xs:sequence>
137                                                                                                                <xs:element name="dataModelID" type="dgMetadataIDType">
138                                                                                                                        <xs:annotation>
139                                                                                                                                <xs:documentation>See IDIssues page on Wiki</xs:documentation>
140                                                                                                                        </xs:annotation>
141                                                                                                                </xs:element>
142                                                                                                                <xs:element name="instance" minOccurs="0" maxOccurs="unbounded">
143                                                                                                                        <xs:complexType>
144                                                                                                                                <xs:sequence>
145                                                                                                                                        <xs:element name="URI" type="xs:anyURI"/>
146                                                                                                                                        <xs:element name="format" type="xs:string">
147                                                                                                                                                <xs:annotation>
148                                                                                                                                                        <xs:documentation>Should be from a "supported formats" list IDC</xs:documentation>
149                                                                                                                                                </xs:annotation>
150                                                                                                                                        </xs:element>
151                                                                                                                                </xs:sequence>
152                                                                                                                        </xs:complexType>
153                                                                                                                </xs:element>
154                                                                                                                <xs:element name="accessControlPolicy" minOccurs="0">
155                                                                                                                        <xs:annotation>
156                                                                                                                                <xs:documentation>Contains either a text file giving the access control policy to the actual data granule, or a URL that points to such a document. In the long run, this is likely to be an XACML document. Note the assumption that there will be only one definitive source for such a policy.</xs:documentation>
157                                                                                                                        </xs:annotation>
158                                                                                                                        <xs:complexType>
159                                                                                                                                <xs:choice>
160                                                                                                                                        <xs:element name="accessControlPolicyURL" type="xs:anyURI"/>
161                                                                                                                                        <xs:element name="accessControlPolicyText" type="xs:string"/>
162                                                                                                                                        <xs:element name="accessControlPolicyConditions">
163                                                                                                                                                <xs:complexType>
164                                                                                                                                                        <xs:sequence maxOccurs="unbounded">
165                                                                                                                                                                <xs:element name="accessControlCondition" type="dgSecurityConditionType"/>
166                                                                                                                                                        </xs:sequence>
167                                                                                                                                                </xs:complexType>
168                                                                                                                                        </xs:element>
169                                                                                                                                </xs:choice>
170                                                                                                                        </xs:complexType>
171                                                                                                                </xs:element>
172                                                                                                        </xs:sequence>
173                                                                                                </xs:complexType>
174                                                                                        </xs:element>
175                                                                                        <xs:element name="dgDataSummary">
176                                                                                                <xs:complexType>
177                                                                                                        <xs:sequence>
178                                                                                                                <xs:element name="dgParameterSummary" type="dgParameterType" maxOccurs="unbounded"/>
179                                                                                                                <xs:element name="dgDataCoverage" type="dgCoverageType" minOccurs="0"/>
180                                                                                                                <xs:element name="dgDatasetStatus" minOccurs="0">
181                                                                                                                        <xs:complexType>
182                                                                                                                                <xs:sequence>
183                                                                                                                                        <xs:element name="dgDatasetClosure">
184                                                                                                                                                <xs:simpleType>
185                                                                                                                                                        <xs:restriction base="xs:string">
186                                                                                                                                                                <xs:enumeration value="no_data"/>
187                                                                                                                                                                <xs:enumeration value="complete"/>
188                                                                                                                                                                <xs:enumeration value="updating"/>
189                                                                                                                                                                <xs:enumeration value="incomplete"/>
190                                                                                                                                                        </xs:restriction>
191                                                                                                                                                </xs:simpleType>
192                                                                                                                                        </xs:element>
193                                                                                                                                        <xs:element name="dgUpdateFrequency" type="dgStructuredKeywordType" minOccurs="0"/>
194                                                                                                                                </xs:sequence>
195                                                                                                                        </xs:complexType>
196                                                                                                                </xs:element>
197                                                                                                                <xs:element name="dgDatasetProvenance" minOccurs="0">
198                                                                                                                        <xs:annotation>
199                                                                                                                                <xs:documentation>Another placeholder for when the data provenance issue has been addressed</xs:documentation>
200                                                                                                                        </xs:annotation>
201                                                                                                                </xs:element>
202                                                                                                        </xs:sequence>
203                                                                                                </xs:complexType>
204                                                                                        </xs:element>
205                                                                                        <xs:element name="dgDataRoles">
206                                                                                                <xs:annotation>
207                                                                                                        <xs:documentation>Note that this is a part of the "abstract and unimplemented class" dgRoles</xs:documentation>
208                                                                                                </xs:annotation>
209                                                                                                <xs:complexType>
210                                                                                                        <xs:sequence>
211                                                                                                                <xs:element name="dgDataCreator" type="dgRoleType" minOccurs="0"/>
212                                                                                                                <xs:element name="dgDataCurator" type="dgRoleType"/>
213                                                                                                                <xs:element name="dgDataOtherRoles" type="dgRoleType" minOccurs="0" maxOccurs="unbounded"/>
214                                                                                                        </xs:sequence>
215                                                                                                </xs:complexType>
216                                                                                        </xs:element>
217                                                                                        <xs:element name="RelatedDeployment" type="dgDeploymentType" minOccurs="0" maxOccurs="unbounded"/>
218                                                                                        <xs:element name="dgRelatedDataGranuleID" minOccurs="0" maxOccurs="unbounded">
219                                                                                                <xs:annotation>
220                                                                                                        <xs:documentation>Relations other than Input...</xs:documentation>
221                                                                                                </xs:annotation>
222                                                                                                <xs:complexType>
223                                                                                                        <xs:sequence>
224                                                                                                                <xs:element name="RelatedDataGranuleID" type="dgMetadataIDType"/>
225                                                                                                                <xs:element name="RelationID" type="dgStructuredKeywordType"/>
226                                                                                                        </xs:sequence>
227                                                                                                </xs:complexType>
228                                                                                        </xs:element>
229                                                                                </xs:sequence>
230                                                                        </xs:complexType>
231                                                                </xs:element>
232                                                                <xs:element name="dgDataProductionTool">
233                                                                        <xs:annotation>
234                                                                                <xs:documentation>Needs a link to a "Capabilities" list. OGC capabilities is the place to start? Note that knowledge of the instrument or model used can  influence the intepretation of the data produced.</xs:documentation>
235                                                                        </xs:annotation>
236                                                                        <xs:complexType>
237                                                                                <xs:sequence>
238                                                                                        <xs:element name="contactDetails" type="dgContactDetailType"/>
239                                                                                        <xs:choice>
240                                                                                                <xs:element name="dgModel">
241                                                                                                        <xs:complexType/>
242                                                                                                </xs:element>
243                                                                                                <xs:element name="dgInstrument">
244                                                                                                        <xs:annotation>
245                                                                                                                <xs:documentation>This is a "starter set" and will change radically and often as the domain specialists conrtibute.</xs:documentation>
246                                                                                                        </xs:annotation>
247                                                                                                        <xs:complexType>
248                                                                                                                <xs:sequence>
249                                                                                                                        <xs:element name="dgInstrumentComponentID" type="dgMetadataIDType" minOccurs="0" maxOccurs="unbounded">
250                                                                                                                                <xs:annotation>
251                                                                                                                                        <xs:documentation>References to significant sub-parts of an instrument</xs:documentation>
252                                                                                                                                </xs:annotation>
253                                                                                                                        </xs:element>
254                                                                                                                        <xs:choice>
255                                                                                                                                <xs:element name="dgObserver">
256                                                                                                                                        <xs:complexType>
257                                                                                                                                                <xs:choice>
258                                                                                                                                                        <xs:element ref="dgOrganisation"/>
259                                                                                                                                                        <xs:element ref="dgPerson"/>
260                                                                                                                                                </xs:choice>
261                                                                                                                                        </xs:complexType>
262                                                                                                                                </xs:element>
263                                                                                                                                <xs:element name="dgLidar" type="xs:anySimpleType"/>
264                                                                                                                                <xs:element name="dgRadar" type="xs:anySimpleType"/>
265                                                                                                                                <xs:element name="dgSonde" type="xs:anySimpleType"/>
266                                                                                                                                <xs:element name="dgNavigation" type="xs:anySimpleType"/>
267                                                                                                                                <xs:element name="dgGasChromatograph" type="xs:anySimpleType"/>
268                                                                                                                                <xs:element name="dgSpectrometer" type="xs:anySimpleType"/>
269                                                                                                                                <xs:element name="dgMassSpectrometer" type="xs:anySimpleType"/>
270                                                                                                                                <xs:element name="dgMetSensor" type="xs:anySimpleType"/>
271                                                                                                                                <xs:element name="dgDOAS" type="xs:anySimpleType"/>
272                                                                                                                                <xs:element name="dgASOZ" type="xs:anySimpleType"/>
273                                                                                                                                <xs:element name="dgRadiometer" type="xs:anySimpleType"/>
274                                                                                                                                <xs:element name="dgFAGE" type="xs:anySimpleType"/>
275                                                                                                                                <xs:element name="dgImager" type="xs:anySimpleType"/>
276                                                                                                                                <xs:element name="dgFilter" type="xs:anySimpleType"/>
277                                                                                                                                <xs:element name="dgParticleCounter" type="xs:anySimpleType"/>
278                                                                                                                                <xs:element name="dgSampler" type="xs:anySimpleType"/>
279                                                                                                                                <xs:element name="dgOtherInstrumentType" type="xs:anySimpleType"/>
280                                                                                                                        </xs:choice>
281                                                                                                                </xs:sequence>
282                                                                                                        </xs:complexType>
283                                                                                                </xs:element>
284                                                                                        </xs:choice>
285                                                                                        <xs:element name="dgDPTRoles" minOccurs="0">
286                                                                                                <xs:annotation>
287                                                                                                        <xs:documentation>DPT = Data Production Tool</xs:documentation>
288                                                                                                </xs:annotation>
289                                                                                                <xs:complexType>
290                                                                                                        <xs:complexContent>
291                                                                                                                <xs:extension base="dgRoleType">
292                                                                                                                        <xs:sequence>
293                                                                                                                                <xs:element name="dgDPTOperationTeam">
294                                                                                                                                        <xs:annotation>
295                                                                                                                                                <xs:documentation>OK, this is another placeholder and an example of the kind of role hierarchies that exist.</xs:documentation>
296                                                                                                                                        </xs:annotation>
297                                                                                                                                </xs:element>
298                                                                                                                                <xs:element name="dgDPTOtherRoles" type="dgRoleType" minOccurs="0"/>
299                                                                                                                        </xs:sequence>
300                                                                                                                </xs:extension>
301                                                                                                        </xs:complexContent>
302                                                                                                </xs:complexType>
303                                                                                        </xs:element>
304                                                                                        <xs:element name="DPTDeployment" type="dgDeploymentType" minOccurs="0" maxOccurs="unbounded"/>
305                                                                                </xs:sequence>
306                                                                        </xs:complexType>
307                                                                </xs:element>
308                                                                <xs:element name="dgObservationStation">
309                                                                        <xs:annotation>
310                                                                                <xs:documentation>IDC, may want to add info about the type and number of instruments that can be deployed... Also, really don't like the name "ObservationStation...</xs:documentation>
311                                                                        </xs:annotation>
312                                                                        <xs:complexType>
313                                                                                <xs:sequence>
314                                                                                        <xs:element name="contactDetails" type="dgContactDetailType"/>
315                                                                                        <xs:choice>
316                                                                                                <xs:element name="dgStationaryPlatform">
317                                                                                                        <xs:complexType>
318                                                                                                                <xs:sequence>
319                                                                                                                        <xs:element name="position">
320                                                                                                                                <xs:complexType>
321                                                                                                                                        <xs:sequence>
322                                                                                                                                                <xs:element name="positionLatitude" type="xs:decimal">
323                                                                                                                                                        <xs:annotation>
324                                                                                                                                                                <xs:documentation>North is positive ;-)</xs:documentation>
325                                                                                                                                                        </xs:annotation>
326                                                                                                                                                </xs:element>
327                                                                                                                                                <xs:element name="positionLongitude" type="xs:decimal">
328                                                                                                                                                        <xs:annotation>
329                                                                                                                                                                <xs:documentation>East is positive</xs:documentation>
330                                                                                                                                                        </xs:annotation>
331                                                                                                                                                </xs:element>
332                                                                                                                                        </xs:sequence>
333                                                                                                                                </xs:complexType>
334                                                                                                                        </xs:element>
335                                                                                                                        <xs:choice>
336                                                                                                                                <xs:element name="dgLandStation"/>
337                                                                                                                                <xs:element name="dgMooring">
338                                                                                                                                        <xs:complexType>
339                                                                                                                                                <xs:sequence>
340                                                                                                                                                        <xs:element name="dateStart" type="xs:date"/>
341                                                                                                                                                        <xs:element name="dateEnd" type="xs:date"/>
342                                                                                                                                                        <xs:element name="deployingCruise" type="dgMetadataIDType">
343                                                                                                                                                                <xs:annotation>
344                                                                                                                                                                        <xs:documentation>Pointer to cruise that deployed the platform</xs:documentation>
345                                                                                                                                                                </xs:annotation>
346                                                                                                                                                        </xs:element>
347                                                                                                                                                        <xs:element name="dgStationGrouping" type="dgMetadataIDType" minOccurs="0">
348                                                                                                                                                                <xs:annotation>
349                                                                                                                                                                        <xs:documentation>Pointer to the OS of type dgStationGroup at which the mooring was deployed, if any.</xs:documentation>
350                                                                                                                                                                </xs:annotation>
351                                                                                                                                                        </xs:element>
352                                                                                                                                                </xs:sequence>
353                                                                                                                                        </xs:complexType>
354                                                                                                                                </xs:element>
355                                                                                                                                <xs:element name="dgStationGroup">
356                                                                                                                                        <xs:annotation>
357                                                                                                                                                <xs:documentation>The solution to the Great Station Controvesy! This is a known and defined location at which temporary observation stations, such as moorings, can be located. Note that current thinking is that it can't have data of its own.</xs:documentation>
358                                                                                                                                        </xs:annotation>
359                                                                                                                                        <xs:complexType>
360                                                                                                                                                <xs:sequence>
361                                                                                                                                                        <xs:element name="dgGroupedStations">
362                                                                                                                                                                <xs:complexType>
363                                                                                                                                                                        <xs:sequence>
364                                                                                                                                                                                <xs:element name="dgGroupedStation" type="dgMetadataIDType" minOccurs="0" maxOccurs="unbounded">
365                                                                                                                                                                                        <xs:annotation>
366                                                                                                                                                                                                <xs:documentation>Pointer to mooring or similar at this location.</xs:documentation>
367                                                                                                                                                                                        </xs:annotation>
368                                                                                                                                                                                </xs:element>
369                                                                                                                                                                        </xs:sequence>
370                                                                                                                                                                </xs:complexType>
371                                                                                                                                                        </xs:element>
372                                                                                                                                                </xs:sequence>
373                                                                                                                                        </xs:complexType>
374                                                                                                                                </xs:element>
375                                                                                                                        </xs:choice>
376                                                                                                                </xs:sequence>
377                                                                                                        </xs:complexType>
378                                                                                                </xs:element>
379                                                                                                <xs:element name="dgMovingPlatform">
380                                                                                                        <xs:annotation>
381                                                                                                                <xs:documentation>Used to contain "trajectory", this has been replaced by the "Coverage" element of a deployment. However, adding a "history" element may well be useful, to include trips not linked to data etc.</xs:documentation>
382                                                                                                        </xs:annotation>
383                                                                                                        <xs:complexType>
384                                                                                                                <xs:sequence>
385                                                                                                                        <xs:choice>
386                                                                                                                                <xs:element name="dgShip">
387                                                                                                                                        <xs:complexType>
388                                                                                                                                                <xs:sequence>
389                                                                                                                                                        <xs:element name="callSign" type="xs:string" minOccurs="0"/>
390                                                                                                                                                        <xs:element name="operatingCountry" type="xs:string">
391                                                                                                                                                                <xs:annotation>
392                                                                                                                                                                        <xs:documentation>Contents ISO 3166-1 and 3166-3, using 2 character code as key</xs:documentation>
393                                                                                                                                                                </xs:annotation>
394                                                                                                                                                        </xs:element>
395                                                                                                                                                        <xs:element name="vesselType" type="xs:string">
396                                                                                                                                                                <xs:annotation>
397                                                                                                                                                                        <xs:documentation>Values from WMO vocabulary at http://www.wmo.int/web/www/ois/pub47/pub47-home.htm</xs:documentation>
398                                                                                                                                                                </xs:annotation>
399                                                                                                                                                        </xs:element>
400                                                                                                                                                </xs:sequence>
401                                                                                                                                        </xs:complexType>
402                                                                                                                                </xs:element>
403                                                                                                                                <xs:element name="dgAircraft"/>
404                                                                                                                                <xs:element name="dgSatellite"/>
405                                                                                                                        </xs:choice>
406                                                                                                                </xs:sequence>
407                                                                                                        </xs:complexType>
408                                                                                                </xs:element>
409                                                                                        </xs:choice>
410                                                                                        <xs:element name="ObsStationDeployment" type="dgDeploymentType" minOccurs="0" maxOccurs="unbounded"/>
411                                                                                </xs:sequence>
412                                                                        </xs:complexType>
413                                                                </xs:element>
414                                                        </xs:choice>
415                                                        <xs:element ref="dgStructuredKeyword" maxOccurs="unbounded"/>
416                                                        <xs:element name="DataProvenance" minOccurs="0">
417                                                                <xs:complexType>
418                                                                        <xs:sequence>
419                                                                                <xs:element name="RecordCreation">
420                                                                                        <xs:complexType>
421                                                                                                <xs:sequence>
422                                                                                                        <xs:element name="CreatedDate" type="xs:date"/>
423                                                                                                        <xs:element name="CreatedBy" type="xs:string"/>
424                                                                                                </xs:sequence>
425                                                                                        </xs:complexType>
426                                                                                </xs:element>
427                                                                                <xs:element name="RecordUpdate" minOccurs="0" maxOccurs="unbounded">
428                                                                                        <xs:complexType>
429                                                                                                <xs:sequence>
430                                                                                                        <xs:element name="UpdateDate" type="xs:date"/>
431                                                                                                        <xs:element name="UpdatedBy" type="xs:string"/>
432                                                                                                        <xs:element name="UpdateSummary" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
433                                                                                                </xs:sequence>
434                                                                                        </xs:complexType>
435                                                                                </xs:element>
436                                                                                <xs:element name="RecordReview" minOccurs="0">
437                                                                                        <xs:complexType>
438                                                                                                <xs:sequence>
439                                                                                                        <xs:element name="ReviewDate" type="xs:date"/>
440                                                                                                        <xs:element name="ReviewContact" type="xs:string" minOccurs="0"/>
441                                                                                                </xs:sequence>
442                                                                                        </xs:complexType>
443                                                                                </xs:element>
444                                                                        </xs:sequence>
445                                                                </xs:complexType>
446                                                        </xs:element>
447                                                        <xs:element name="dgMetadataSecurity" minOccurs="0">
448                                                                <xs:annotation>
449                                                                        <xs:documentation>Indicates security applied, if any, to the metadata record itself</xs:documentation>
450                                                                </xs:annotation>
451                                                                <xs:complexType>
452                                                                        <xs:sequence>
453                                                                                <xs:element name="dgSecurityCondition" type="dgSecurityConditionType" maxOccurs="unbounded"/>
454                                                                        </xs:sequence>
455                                                                </xs:complexType>
456                                                        </xs:element>
457                                                </xs:sequence>
458                                        </xs:complexType>
459                                </xs:element>
460                                <xs:element ref="dgPerson" minOccurs="0" maxOccurs="unbounded"/>
461                                <xs:element ref="dgOrganisation" minOccurs="0" maxOccurs="unbounded"/>
462                        </xs:sequence>
463                        <xs:attribute name="version" type="xs:string" default="1.02.02"/>
464                </xs:complexType>
465        </xs:element>
466        <xs:element name="dgStructuredKeywordList">
467                <xs:annotation>
468                        <xs:documentation>Generic hierarchic term list. This is actually a description of an separate and external entity, placed here to give context. This implies that term lists such as the BODC parameter dictionary and the GCMD valids are available in a manner complianrt to this "schema" and that there is a suitable instantiation.</xs:documentation>
469                </xs:annotation>
470                <xs:complexType>
471                        <xs:sequence>
472                                <xs:element name="NamespaceURI" type="xs:string">
473                                        <xs:annotation>
474                                                <xs:documentation>This is the primary key for the keywords lists.</xs:documentation>
475                                        </xs:annotation>
476                                </xs:element>
477                                <xs:element ref="dgStructuredKeyword" maxOccurs="unbounded"/>
478                                <xs:element name="name" type="xs:string"/>
479                                <xs:element name="abbreviation" type="xs:string"/>
480                                <xs:element name="dgMetadataDescription" type="dgMetadataDescriptionType"/>
481                                <xs:element ref="dgDisciplineListTerm" maxOccurs="unbounded"/>
482                        </xs:sequence>
483                </xs:complexType>
484        </xs:element>
485        <xs:element name="dgStructuredKeyword" type="dgStructuredKeywordType">
486                <xs:annotation>
487                        <xs:documentation>An entry in a structured keyword list. This, and the STL will move to a separate file. Indeed, once I've digested the ISO standard, it may change...</xs:documentation>
488                </xs:annotation>
489        </xs:element>
490        <xs:complexType name="dgStructuredKeywordType">
491                <xs:sequence>
492                        <xs:element name="dgValidTerm" type="xs:string"/>
493                        <xs:element name="dgValidTermID" type="dgValidTermIDType"/>
494                        <xs:element name="dgValidTermAbbrev" type="xs:string" minOccurs="0">
495                                <xs:annotation>
496                                        <xs:documentation>We'll avoid synonyms for now...</xs:documentation>
497                                </xs:annotation>
498                        </xs:element>
499                        <xs:element name="dgValidTermParentID" type="dgValidTermIDType" minOccurs="0"/>
500                        <xs:element name="dgValidSubterm" type="dgStructuredKeywordType" minOccurs="0" maxOccurs="unbounded"/>
501                        <xs:element name="ListLevel" type="xs:integer" minOccurs="0">
502                                <xs:annotation>
503                                        <xs:documentation>Zero is root, and add one as you go down...</xs:documentation>
504                                </xs:annotation>
505                        </xs:element>
506                        <xs:element name="Definition" type="xs:string" minOccurs="0"/>
507                </xs:sequence>
508        </xs:complexType>
509        <xs:element name="dgDisciplineList">
510                <xs:annotation>
511                        <xs:documentation>Reference list for system. The metadataID </xs:documentation>
512                </xs:annotation>
513                <xs:complexType>
514                        <xs:sequence>
515                                <xs:element ref="dgDisciplineListTerm"/>
516                                <xs:element ref="dgMetadataID"/>
517                        </xs:sequence>
518                </xs:complexType>
519        </xs:element>
520        <xs:element name="dgDisciplineListTerm" type="dgStructuredKeywordType">
521                <xs:annotation>
522                        <xs:documentation>Defines the discipline, maintained in a "system list" that the vocabulary applies to.</xs:documentation>
523                </xs:annotation>
524        </xs:element>
525        <xs:complexType name="dgDeploymentType">
526                <xs:sequence>
527                        <xs:element name="DateStart" type="xs:date"/>
528                        <xs:element name="DateEnd" type="xs:date"/>
529                        <xs:element ref="dgMetadataID"/>
530                        <xs:element name="ActivityID" type="dgMetadataIDType"/>
531                        <xs:element name="DataProductionToolID" type="dgMetadataIDType"/>
532                        <xs:element name="ObservationStationID" type="dgMetadataIDType"/>
533                        <xs:element name="Coverage" type="dgCoverageType" minOccurs="0"/>
534                </xs:sequence>
535        </xs:complexType>
536        <xs:element name="dgMetadataID" type="dgMetadataIDType">
537                <xs:annotation>
538                        <xs:documentation>Intended to be globally unique, yet allow local repositories to carry on as normal</xs:documentation>
539                </xs:annotation>
540        </xs:element>
541        <xs:complexType name="dgMetadataIDType">
542                <xs:annotation>
543                        <xs:documentation>ObjectID for all metadata objects</xs:documentation>
544                </xs:annotation>
545                <xs:sequence>
546                        <xs:element name="schemeIdentifier">
547                                <xs:simpleType>
548                                        <xs:restriction base="xs:string">
549                                                <xs:enumeration value="URI"/>
550                                                <xs:enumeration value="NDG-A0"/>
551                                                <xs:enumeration value="NDG-B0"/>
552                                                <xs:enumeration value="NDG-B1"/>
553                                                <xs:enumeration value="CDML-0"/>
554                                                <xs:enumeration value="DIF"/>
555                                                <xs:enumeration value="ISO19115"/>
556                                        </xs:restriction>
557                                </xs:simpleType>
558                        </xs:element>
559                        <xs:element name="repositoryIdentifier">
560                                <xs:simpleType>
561                                        <xs:restriction base="xs:string">
562                                                <xs:pattern value="[a-zA-Z][a-zA-Z0-9.\-/_]*"/>
563                                        </xs:restriction>
564                                </xs:simpleType>
565                        </xs:element>
566                        <xs:element name="localIdentifier">
567                                <xs:simpleType>
568                                        <xs:restriction base="xs:string">
569                                                <xs:pattern value="[a-zA-Z][a-zA-Z0-9.\-/_]*"/>
570                                        </xs:restriction>
571                                </xs:simpleType>
572                        </xs:element>
573                </xs:sequence>
574        </xs:complexType>
575        <xs:complexType name="dgRoleType">
576                <xs:sequence>
577                        <xs:element ref="dgMetadataID"/>
578                        <xs:element name="roleName" type="xs:string">
579                                <xs:annotation>
580                                        <xs:documentation>Standard name of the role throughout the NDG</xs:documentation>
581                                </xs:annotation>
582                        </xs:element>
583                        <xs:element name="abbreviation" type="xs:string"/>
584                        <xs:element name="dgRoleHolder" maxOccurs="unbounded">
585                                <xs:annotation>
586                                        <xs:documentation>Key is the holder and start date</xs:documentation>
587                                </xs:annotation>
588                                <xs:complexType>
589                                        <xs:sequence>
590                                                <xs:choice>
591                                                        <xs:element name="dgOrganisationID" type="dgMetadataIDType"/>
592                                                        <xs:element name="dgPersonID" type="dgMetadataIDType"/>
593                                                        <xs:element name="dgRoleID" type="dgMetadataIDType">
594                                                                <xs:annotation>
595                                                                        <xs:documentation>Pointer to another role that must be stored within the system somewhere</xs:documentation>
596                                                                </xs:annotation>
597                                                        </xs:element>
598                                                </xs:choice>
599                                                <xs:element name="startDate" type="xs:date"/>
600                                                <xs:element name="endDate" type="xs:date" minOccurs="0"/>
601                                                <xs:element name="localName" type="xs:string" minOccurs="0">
602                                                        <xs:annotation>
603                                                                <xs:documentation>Title under which the role is being executed, with a default to the standard name</xs:documentation>
604                                                        </xs:annotation>
605                                                </xs:element>
606                                        </xs:sequence>
607                                </xs:complexType>
608                        </xs:element>
609                        <xs:element name="contactDetails" type="dgContactDetailType" minOccurs="0"/>
610                </xs:sequence>
611        </xs:complexType>
612        <xs:complexType name="dgContactDetailType">
613                <xs:sequence>
614                        <xs:element name="eMail" type="xs:string" minOccurs="0"/>
615                        <xs:element name="fax" type="xs:string" minOccurs="0"/>
616                        <xs:element name="telephone" type="xs:string" minOccurs="0"/>
617                        <xs:element name="address" type="dgAddressType" minOccurs="0"/>
618                        <xs:element name="URI" type="xs:anyURI" minOccurs="0"/>
619                </xs:sequence>
620        </xs:complexType>
621        <xs:complexType name="dgAddressType">
622                <xs:sequence>
623                        <xs:element name="addressline" type="xs:string" maxOccurs="unbounded"/>
624                        <xs:element name="city" type="xs:string"/>
625                        <xs:element name="postcode" type="xs:string" minOccurs="0"/>
626                        <xs:element name="country" type="xs:string"/>
627                </xs:sequence>
628        </xs:complexType>
629        <xs:complexType name="dgPersonalNameType">
630                <xs:sequence>
631                        <xs:element name="title" type="xs:string" minOccurs="0"/>
632                        <xs:element name="knownAs" type="xs:string" minOccurs="0"/>
633                        <xs:element name="personalName" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
634                        <xs:element name="initials" type="xs:string"/>
635                        <xs:element name="familyName" type="xs:string"/>
636                        <xs:element name="nameOrder" default="L2R">
637                                <xs:annotation>
638                                        <xs:documentation>order of names to allow for east/west difference</xs:documentation>
639                                </xs:annotation>
640                                <xs:simpleType>
641                                        <xs:restriction base="xs:string">
642                                                <xs:enumeration value="L2R"/>
643                                                <xs:enumeration value="R2L"/>
644                                        </xs:restriction>
645                                </xs:simpleType>
646                        </xs:element>
647                </xs:sequence>
648        </xs:complexType>
649        <xs:complexType name="dgCoverageType">
650                <xs:annotation>
651                        <xs:documentation>This is to allow the statement of the coverage. We will start minimally, and extend as required.</xs:documentation>
652                </xs:annotation>
653                <xs:sequence>
654                        <xs:element ref="dgSpatialCoverage" minOccurs="0"/>
655                        <xs:element ref="dgTemporalCoverage" minOccurs="0"/>
656                        <xs:element name="dgSpatioTemporalCoverage" minOccurs="0">
657                                <xs:annotation>
658                                        <xs:documentation>Where there is a connection between spatial and temporal elements</xs:documentation>
659                                        <xs:documentation>Where there is a connection between spatial and temporal elements</xs:documentation>
660                                </xs:annotation>
661                                <xs:complexType>
662                                        <xs:sequence maxOccurs="unbounded">
663                                                <xs:element name="dgSpatioTemporalRange">
664                                                        <xs:complexType>
665                                                                <xs:sequence>
666                                                                        <xs:element ref="dgSpatialCoverage"/>
667                                                                        <xs:element ref="dgTemporalCoverage"/>
668                                                                </xs:sequence>
669                                                        </xs:complexType>
670                                                </xs:element>
671                                        </xs:sequence>
672                                </xs:complexType>
673                        </xs:element>
674                </xs:sequence>
675        </xs:complexType>
676        <xs:complexType name="dgUnitType">
677                <xs:annotation>
678                        <xs:documentation>Restriction of a term to allow a pointer to the definitive list (which will be "hard-wired" when it is fully agreed and set up)</xs:documentation>
679                </xs:annotation>
680                <xs:complexContent>
681                        <xs:restriction base="dgStructuredKeywordType">
682                                <xs:sequence>
683                                        <xs:element name="dgValidTerm" type="xs:string"/>
684                                        <xs:element name="dgValidTermID" type="dgValidTermIDType"/>
685                                        <xs:element name="dgValidTermAbbrev" type="xs:string" minOccurs="0">
686                                                <xs:annotation>
687                                                        <xs:documentation>We'll avoid synonyms for now...</xs:documentation>
688                                                </xs:annotation>
689                                        </xs:element>
690                                </xs:sequence>
691                        </xs:restriction>
692                </xs:complexContent>
693        </xs:complexType>
694        <xs:complexType name="dgOrganisationType">
695                <xs:sequence>
696                        <xs:element ref="dgMetadataID"/>
697                        <xs:element name="name"/>
698                        <xs:element name="abbreviation"/>
699                        <xs:element name="contactDetails" type="dgContactDetailType"/>
700                        <xs:element name="dgOrganisationRole" type="dgRoleType" minOccurs="0" maxOccurs="unbounded"/>
701                </xs:sequence>
702        </xs:complexType>
703        <xs:complexType name="dgPersonType">
704                <xs:sequence>
705                        <xs:element name="name" type="dgPersonalNameType"/>
706                        <xs:element name="contactDetails" type="dgContactDetailType"/>
707                        <xs:element ref="dgMetadataID"/>
708                </xs:sequence>
709        </xs:complexType>
710        <xs:element name="dgPerson" type="dgPersonType"/>
711        <xs:element name="dgOrganisation" type="dgOrganisationType"/>
712        <xs:complexType name="dgMetadataDescriptionType">
713                <xs:sequence>
714                        <xs:element name="metadataDescriptionID" type="dgMetadataIDType"/>
715                        <xs:element name="metadataDescriptionLastUpdated" type="xs:dateTime"/>
716                        <xs:element name="abstract">
717                                <xs:annotation>
718                                        <xs:documentation>This is really the "NDG definitive" description.</xs:documentation>
719                                </xs:annotation>
720                                <xs:complexType>
721                                        <xs:sequence>
722                                                <xs:sequence>
723                                                        <xs:element name="abstractText" type="xs:string"/>
724                                                        <xs:element ref="contentType" minOccurs="0"/>
725                                                </xs:sequence>
726                                                <xs:element name="abstractOnlineReference" minOccurs="0" maxOccurs="unbounded">
727                                                        <xs:complexType>
728                                                                <xs:complexContent>
729                                                                        <xs:restriction base="dgOnlineReferenceType">
730                                                                                <xs:sequence>
731                                                                                        <xs:annotation>
732                                                                                                <xs:documentation>There is only a URI reference here at the moment, but one could see the need to include other online reference pointer schemes' pointers to the same object IDC</xs:documentation>
733                                                                                        </xs:annotation>
734                                                                                        <xs:element name="name" default="abstractOnlineReferenceEntry">
735                                                                                                <xs:simpleType>
736                                                                                                        <xs:restriction base="xs:string">
737                                                                                                                <xs:enumeration value="abstractOnlineReferenceEntry"/>
738                                                                                                        </xs:restriction>
739                                                                                                </xs:simpleType>
740                                                                                        </xs:element>
741                                                                                        <xs:element name="URI" type="xs:anyURI"/>
742                                                                                        <xs:element name="notes" type="xs:string" minOccurs="0"/>
743                                                                                </xs:sequence>
744                                                                        </xs:restriction>
745                                                                </xs:complexContent>
746                                                        </xs:complexType>
747                                                </xs:element>
748                                        </xs:sequence>
749                                </xs:complexType>
750                        </xs:element>
751                        <xs:element name="descriptionSection" minOccurs="0">
752                                <xs:complexType>
753                                        <xs:choice maxOccurs="unbounded">
754                                                <xs:sequence>
755                                                        <xs:element name="descriptionText" type="xs:string"/>
756                                                        <xs:element ref="contentType" minOccurs="0"/>
757                                                </xs:sequence>
758                                                <xs:element name="descriptionOnlineReference" type="dgOnlineReferenceType"/>
759                                        </xs:choice>
760                                </xs:complexType>
761                        </xs:element>
762                </xs:sequence>
763        </xs:complexType>
764        <xs:complexType name="dgOnlineReferenceType">
765                <xs:annotation>
766                        <xs:documentation>Type for online references to URIs. Could embrace "non-URI" references later. Name attribute is the key to sub-classing later, as particular vocabularies limit the values that will constrain and define a sub-class</xs:documentation>
767                </xs:annotation>
768                <xs:sequence>
769                        <xs:annotation>
770                                <xs:documentation>There is only a URI reference here at the moment, but one could see the need to include other online reference pointer schemes' pointers to the same object IDC</xs:documentation>
771                        </xs:annotation>
772                        <xs:element name="name" type="xs:string"/>
773                        <xs:element name="URI" type="xs:anyURI"/>
774                        <xs:element name="notes" type="xs:string" minOccurs="0"/>
775                </xs:sequence>
776        </xs:complexType>
777        <xs:complexType name="dgSpatialCoverageType">
778                <xs:sequence>
779                        <xs:sequence>
780                                <xs:element name="BoundingBox" minOccurs="0" maxOccurs="unbounded">
781                                        <xs:annotation>
782                                                <xs:documentation>Limits are in terms of lat/long..</xs:documentation>
783                                        </xs:annotation>
784                                        <xs:complexType>
785                                                <xs:sequence>
786                                                        <xs:element name="LimitNorth" type="xs:decimal">
787                                                                <xs:annotation>
788                                                                        <xs:documentation>Northern-most coordinate of the limit of the extent, expressed in latitude in decimal degrees (positive north).</xs:documentation>
789                                                                </xs:annotation>
790                                                        </xs:element>
791                                                        <xs:element name="LimitSouth" type="xs:decimal">
792                                                                <xs:annotation>
793                                                                        <xs:documentation>Southern-most coordinate of the limit of the extent, expressed in latitude in decimal degrees (positive north).</xs:documentation>
794                                                                </xs:annotation>
795                                                        </xs:element>
796                                                        <xs:element name="LimitWest" type="xs:decimal">
797                                                                <xs:annotation>
798                                                                        <xs:documentation>Western-most coordinate of the limit of the extent, expressed in longitude in decimal degrees (positive east)</xs:documentation>
799                                                                </xs:annotation>
800                                                        </xs:element>
801                                                        <xs:element name="LimitEast" type="xs:decimal">
802                                                                <xs:annotation>
803                                                                        <xs:documentation>Eastern-most coordinate of the limit of the extent, expressed in longitude in decimal degrees (positive east).</xs:documentation>
804                                                                </xs:annotation>
805                                                        </xs:element>
806                                                </xs:sequence>
807                                        </xs:complexType>
808                                </xs:element>
809                                <xs:element name="dgArea" type="dgStructuredKeywordType" minOccurs="0" maxOccurs="unbounded">
810                                        <xs:annotation>
811                                                <xs:documentation>A geographical area as defined by a controlled vocabulary</xs:documentation>
812                                        </xs:annotation>
813                                </xs:element>
814                                <xs:element name="dgCourse" minOccurs="0" maxOccurs="unbounded">
815                                        <xs:annotation>
816                                                <xs:documentation>Placeholder for things like trajectory, orbit, when we have a way to express them</xs:documentation>
817                                        </xs:annotation>
818                                </xs:element>
819                        </xs:sequence>
820                        <xs:element name="dgVerticalExtent" minOccurs="0">
821                                <xs:complexType>
822                                        <xs:sequence>
823                                                <xs:element name="dgVerticalExtentBaseRef" type="dgStructuredKeywordType">
824                                                        <xs:annotation>
825                                                                <xs:documentation>Statement of where the "zero-point" is from, would you believe it, a vocab</xs:documentation>
826                                                        </xs:annotation>
827                                                </xs:element>
828                                                <xs:choice>
829                                                        <xs:annotation>
830                                                                <xs:documentation>All values, except verticalExtentText, are assumed to be in metres unless otherwise stated</xs:documentation>
831                                                        </xs:annotation>
832                                                        <xs:element name="dgVerticalExtentLevel" maxOccurs="unbounded">
833                                                                <xs:complexType>
834                                                                        <xs:sequence>
835                                                                                <xs:element name="verticalExtentLevelValue"/>
836                                                                                <xs:element name="verticalExtentLevelUnit" type="dgUnitType" minOccurs="0"/>
837                                                                        </xs:sequence>
838                                                                </xs:complexType>
839                                                        </xs:element>
840                                                        <xs:element name="dgVerticalExtentRange" maxOccurs="unbounded">
841                                                                <xs:complexType>
842                                                                        <xs:sequence>
843                                                                                <xs:element name="verticalExtentRangeMin" type="xs:decimal"/>
844                                                                                <xs:element name="verticalExtentRangeMax" type="xs:decimal"/>
845                                                                                <xs:element name="verticalExtentRangeUnit" type="dgUnitType" minOccurs="0"/>
846                                                                        </xs:sequence>
847                                                                </xs:complexType>
848                                                        </xs:element>
849                                                        <xs:element name="dgVerticalExtentText" type="dgStructuredKeywordType" maxOccurs="unbounded">
850                                                                <xs:annotation>
851                                                                        <xs:documentation>Note that these terms should all be from the same vocab.</xs:documentation>
852                                                                </xs:annotation>
853                                                        </xs:element>
854                                                </xs:choice>
855                                        </xs:sequence>
856                                </xs:complexType>
857                        </xs:element>
858                        <xs:element name="dgSpatialResolution" minOccurs="0">
859                                <xs:complexType>
860                                        <xs:sequence>
861                                                <xs:element name="xResolution" type="dgResolutionType"/>
862                                                <xs:element name="yResolution" type="dgResolutionType"/>
863                                                <xs:element name="zResolution" type="dgResolutionType"/>
864                                        </xs:sequence>
865                                </xs:complexType>
866                        </xs:element>
867                </xs:sequence>
868        </xs:complexType>
869        <xs:element name="dgSpatialCoverage" type="dgSpatialCoverageType"/>
870        <xs:element name="dgTemporalCoverage" type="dgTemporalCoverageType"/>
871        <xs:complexType name="dgValidTermIDType">
872                <xs:sequence>
873                        <xs:element name="ParentListID" type="xs:anyURI">
874                                <xs:annotation>
875                                        <xs:documentation>Reference to location of the defining list to which the term belongs</xs:documentation>
876                                </xs:annotation>
877                        </xs:element>
878                        <xs:element name="TermID" type="xs:string">
879                                <xs:annotation>
880                                        <xs:documentation>Value assigned, unique  within a particular term list</xs:documentation>
881                                </xs:annotation>
882                        </xs:element>
883                </xs:sequence>
884        </xs:complexType>
885        <xs:complexType name="dgTemporalCoverageType">
886                <xs:sequence>
887                        <xs:choice>
888                                <xs:element name="DateRange" maxOccurs="unbounded">
889                                        <xs:annotation>
890                                                <xs:documentation>Note that a single year/month will be dealt with as a date range</xs:documentation>
891                                        </xs:annotation>
892                                        <xs:complexType>
893                                                <xs:sequence>
894                                                        <xs:element name="DateRangeStart" type="xs:date"/>
895                                                        <xs:element name="DateRangeEnd" type="xs:date"/>
896                                                </xs:sequence>
897                                        </xs:complexType>
898                                </xs:element>
899                                <xs:element name="DateSingle" type="xs:date" maxOccurs="unbounded"/>
900                                <xs:element name="dgChronostratigraphicTerm" type="dgStructuredKeywordType" maxOccurs="unbounded">
901                                        <xs:annotation>
902                                                <xs:documentation>Keyword for palaeo temporal eras covered by data. Will be from a specific vocab</xs:documentation>
903                                        </xs:annotation>
904                                </xs:element>
905                        </xs:choice>
906                        <xs:element name="dgTemporalResolution" type="dgResolutionType" minOccurs="0"/>
907                </xs:sequence>
908        </xs:complexType>
909        <xs:complexType name="dgParameterType">
910                <xs:sequence>
911                        <xs:element name="IsOutput" type="xs:boolean">
912                                <xs:annotation>
913                                        <xs:documentation>Whether the parameter described was "fixed" or generated by the measurement.</xs:documentation>
914                                </xs:annotation>
915                        </xs:element>
916                        <xs:choice>
917                                <xs:element name="dgValueDataParameter">
918                                        <xs:complexType>
919                                                <xs:sequence>
920                                                        <xs:element name="Value" type="xs:anySimpleType"/>
921                                                        <xs:element name="dgStandardUnit" type="dgUnitType">
922                                                                <xs:annotation>
923                                                                        <xs:documentation>To allow proper searching, we will need a set of reference units</xs:documentation>
924                                                                </xs:annotation>
925                                                        </xs:element>
926                                                        <xs:element name="dgOriginalUnit" type="dgUnitType" minOccurs="0">
927                                                                <xs:annotation>
928                                                                        <xs:documentation>If we keep a reference to the units of the original measurements, if known, then it will be useful.</xs:documentation>
929                                                                </xs:annotation>
930                                                        </xs:element>
931                                                </xs:sequence>
932                                        </xs:complexType>
933                                </xs:element>
934                                <xs:element name="dgRangeDataParameter">
935                                        <xs:complexType>
936                                                <xs:sequence>
937                                                        <xs:element name="HighValue" type="xs:anySimpleType"/>
938                                                        <xs:element name="LowValue" type="xs:anySimpleType"/>
939                                                        <xs:element name="dgStandardUnit" type="dgUnitType">
940                                                                <xs:annotation>
941                                                                        <xs:documentation>To allow proper searching, we will need a set of reference units</xs:documentation>
942                                                                </xs:annotation>
943                                                        </xs:element>
944                                                        <xs:element name="dgOriginalUnit" type="dgUnitType" minOccurs="0">
945                                                                <xs:annotation>
946                                                                        <xs:documentation>If we keep a reference to the units of the original measurements, if known, then it will be useful.</xs:documentation>
947                                                                </xs:annotation>
948                                                        </xs:element>
949                                                </xs:sequence>
950                                        </xs:complexType>
951                                </xs:element>
952                                <xs:element name="dgEnumerationParameter">
953                                        <xs:complexType>
954                                                <xs:sequence>
955                                                        <xs:element name="Value" type="xs:anySimpleType" maxOccurs="unbounded"/>
956                                                        <xs:element name="dgStandardUnit" type="dgUnitType">
957                                                                <xs:annotation>
958                                                                        <xs:documentation>To allow proper searching, we will need a set of reference units</xs:documentation>
959                                                                </xs:annotation>
960                                                        </xs:element>
961                                                        <xs:element name="dgOriginalUnit" type="dgUnitType" minOccurs="0">
962                                                                <xs:annotation>
963                                                                        <xs:documentation>If we keep a reference to the units of the original measurements, if known, then it will be useful.</xs:documentation>
964                                                                </xs:annotation>
965                                                        </xs:element>
966                                                </xs:sequence>
967                                        </xs:complexType>
968                                </xs:element>
969                                <xs:element name="dgParameterGroup">
970                                        <xs:complexType>
971                                                <xs:sequence>
972                                                        <xs:element name="dgComponentParameter" type="dgParameterType" minOccurs="2" maxOccurs="unbounded"/>
973                                                </xs:sequence>
974                                        </xs:complexType>
975                                </xs:element>
976                        </xs:choice>
977                        <xs:element name="dgStdParameterMeasured" type="dgStructuredKeywordType" maxOccurs="unbounded">
978                                <xs:annotation>
979                                        <xs:documentation>I REALLY like the idea of a standard name for the various things being measured, but I think this needs to be discussed first. The DIF "science valids" list might be the place to start</xs:documentation>
980                                </xs:annotation>
981                        </xs:element>
982                        <xs:element name="ParameterName" type="xs:string"/>
983                        <xs:element name="ParameterAbbreviation" type="xs:string"/>
984                        <xs:element name="ParameterLevel" type="xs:integer" default="0" minOccurs="0">
985                                <xs:annotation>
986                                        <xs:documentation>This is to allow you to know  how far down the potential parameter tree you are, to help with parameter groups. Top level is level 0 (the default)</xs:documentation>
987                                </xs:annotation>
988                        </xs:element>
989                </xs:sequence>
990        </xs:complexType>
991        <xs:element name="contentType">
992                <xs:annotation>
993                        <xs:documentation>This can only contain values from the official MIME list. See http://www.iana.org/assignments/media-types and be limited to: application/xhtml+xml; text/plain.</xs:documentation>
994                </xs:annotation>
995                <xs:simpleType>
996                        <xs:restriction base="xs:string">
997                                <xs:enumeration value="text/plain"/>
998                                <xs:enumeration value="application/xhtml+xml"/>
999                        </xs:restriction>
1000                </xs:simpleType>
1001        </xs:element>
1002        <xs:complexType name="dgResolutionType">
1003                <xs:choice>
1004                        <xs:element name="resolutionTerm" type="dgStructuredKeywordType"/>
1005                        <xs:element name="resolutionValue">
1006                                <xs:complexType>
1007                                        <xs:sequence>
1008                                                <xs:element name="resolutionDistance" type="xs:decimal"/>
1009                                                <xs:element name="resolutionUnit" type="dgUnitType"/>
1010                                        </xs:sequence>
1011                                </xs:complexType>
1012                        </xs:element>
1013                        <xs:element name="resolutionScaleDenominator" type="xs:decimal"/>
1014                </xs:choice>
1015        </xs:complexType>
1016        <xs:complexType name="dgSecurityConditionType">
1017                <xs:sequence>
1018                        <xs:element name="effect">
1019                                <xs:simpleType>
1020                                        <xs:restriction base="xs:string">
1021                                                <xs:enumeration value="allow"/>
1022                                                <xs:enumeration value="deny"/>
1023                                        </xs:restriction>
1024                                </xs:simpleType>
1025                        </xs:element>
1026                        <xs:choice>
1027                                <xs:element name="simpleCondition">
1028                                        <xs:complexType>
1029                                                <xs:sequence>
1030                                                        <xs:element name="dgAttributeAuthority" type="xs:string"/>
1031                                                        <xs:element name="attrauthRole" type="xs:string"/>
1032                                                </xs:sequence>
1033                                        </xs:complexType>
1034                                </xs:element>
1035                                <xs:element name="complexCondition">
1036                                        <xs:annotation>
1037                                                <xs:documentation>Place holder for when complex conditions arise</xs:documentation>
1038                                        </xs:annotation>
1039                                </xs:element>
1040                        </xs:choice>
1041                </xs:sequence>
1042        </xs:complexType>
1043</xs:schema>
Note: See TracBrowser for help on using the repository browser.