source: TI01-discovery/trunk/schema/numsim/NMM/higem/NMMModel_v_09k.xsd @ 805

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/TI01-discovery/trunk/schema/numsim/NMM/higem/NMMModel_v_09k.xsd@1169
Revision 805, 33.9 KB checked in by lawrence, 14 years ago (diff)

Corrections to use fundamental schema from Katherine and to make
codebase for higem validate.

Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!-- edited with XMLSpy v2006 sp1 U (http://www.altova.com) by K Bouton (University of Reading) -->
3<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
4        <xs:element name="NMMModel">
5                <xs:annotation>
6                        <xs:documentation>Comment describing your root element</xs:documentation>
7                </xs:annotation>
8                <xs:complexType>
9                        <xs:sequence>
10                                <xs:element name="NMMModel_ID" type="MetadataIDType">
11                                        <xs:annotation>
12                                                <xs:documentation>unique ID format schemaid:repositoryid:localid.</xs:documentation>
13                                        </xs:annotation>
14                                </xs:element>
15                                <xs:element name="Information">
16                                        <xs:annotation>
17                                                <xs:documentation>model project or experiment information</xs:documentation>
18                                        </xs:annotation>
19                                        <xs:complexType>
20                                                <xs:sequence>
21                                                        <xs:element name="localName" type="xs:string" minOccurs="0"/>
22                                                        <xs:element name="longName" type="xs:string"/>
23                                                        <xs:element name="description" type="xs:string" minOccurs="0"/>
24                                                        <xs:element name="changeHistory" type="changeHistoryType" minOccurs="0"/>
25                                                        <xs:element name="contacts" type="pointOfContactType" minOccurs="0"/>
26                                                        <xs:element name="references" type="referenceType" minOccurs="0"/>
27                                                        <xs:element name="resourceConstraints" type="resourceConstraintsType" minOccurs="0"/>
28                                                        <xs:element name="descriptiveKeywords" type="descriptiveKeywordsType" minOccurs="0"/>
29                                                        <xs:element name="browseGraphics" minOccurs="0">
30                                                                <xs:complexType>
31                                                                        <xs:sequence>
32                                                                                <xs:element name="graphicFile" type="fileType" maxOccurs="unbounded"/>
33                                                                        </xs:sequence>
34                                                                </xs:complexType>
35                                                        </xs:element>
36                                                </xs:sequence>
37                                        </xs:complexType>
38                                </xs:element>
39                                <xs:element name="ComponentConfiguration" maxOccurs="unbounded">
40                                        <xs:annotation>
41                                                <xs:documentation>One of these trees setting the values of parameters in every component used in the project/simulation/ experiment.</xs:documentation>
42                                        </xs:annotation>
43                                        <xs:complexType>
44                                                <xs:sequence>
45                                                        <xs:element name="NMMCodebase_ID" type="MetadataIDType">
46                                                                <xs:annotation>
47                                                                        <xs:documentation>ID for codebase used</xs:documentation>
48                                                                </xs:annotation>
49                                                        </xs:element>
50                                                        <xs:element name="NMMComponent_ID" type="MetadataIDType">
51                                                                <xs:annotation>
52                                                                        <xs:documentation>ID of component used</xs:documentation>
53                                                                </xs:annotation>
54                                                        </xs:element>
55                                                        <xs:element name="TechnicalProperties">
56                                                                <xs:annotation>
57                                                                        <xs:documentation>technical properties set in model</xs:documentation>
58                                                                </xs:annotation>
59                                                                <xs:complexType>
60                                                                        <xs:sequence>
61                                                                                <xs:element name="machine" type="machineType" minOccurs="0">
62                                                                                        <xs:annotation>
63                                                                                                <xs:documentation>what machine can the model was run on</xs:documentation>
64                                                                                        </xs:annotation>
65                                                                                </xs:element>
66                                                                                <xs:element name="environmentVariables" minOccurs="0" maxOccurs="unbounded">
67                                                                                        <xs:complexType>
68                                                                                                <xs:sequence>
69                                                                                                        <xs:element name="environmentVariable" type="variableType" minOccurs="0" maxOccurs="unbounded"/>
70                                                                                                </xs:sequence>
71                                                                                        </xs:complexType>
72                                                                                </xs:element>
73                                                                                <xs:element name="codeParallelisation" minOccurs="0">
74                                                                                        <xs:complexType>
75                                                                                                <xs:sequence>
76                                                                                                        <xs:element name="processorsUsed" type="xs:string">
77                                                                                                                <xs:annotation>
78                                                                                                                        <xs:documentation>serial=1 1d=4 2D=4x4 lat long</xs:documentation>
79                                                                                                                </xs:annotation>
80                                                                                                        </xs:element>
81                                                                                                        <xs:element name="haloSize" type="xs:string"/>
82                                                                                                </xs:sequence>
83                                                                                        </xs:complexType>
84                                                                                </xs:element>
85                                                                        </xs:sequence>
86                                                                </xs:complexType>
87                                                        </xs:element>
88                                                        <xs:element name="NumericalProperties">
89                                                                <xs:annotation>
90                                                                        <xs:documentation>numerical property setting values of experiment</xs:documentation>
91                                                                </xs:annotation>
92                                                                <xs:complexType>
93                                                                        <xs:sequence>
94                                                                                <xs:element name="horizontalRepresentation">
95                                                                                        <xs:complexType>
96                                                                                                <xs:sequence>
97                                                                                                        <xs:element name="horizontalRepresentation_ID" type="MetadataIDType" minOccurs="0">
98                                                                                                                <xs:annotation>
99                                                                                                                        <xs:documentation>unique ID of scheme used</xs:documentation>
100                                                                                                                </xs:annotation>
101                                                                                                        </xs:element>
102                                                                                                        <xs:element name="scheme">
103                                                                                                                <xs:annotation>
104                                                                                                                        <xs:documentation>type of horizontal scheme used -spectral grid mixed etc. Also descriptions</xs:documentation>
105                                                                                                                </xs:annotation>
106                                                                                                                <xs:complexType>
107                                                                                                                        <xs:choice>
108                                                                                                                                <xs:element name="spectral" type="spectralType" minOccurs="0"/>
109                                                                                                                                <xs:element name="grid" type="gridType" minOccurs="0"/>
110                                                                                                                                <xs:element name="mixed" minOccurs="0">
111                                                                                                                                        <xs:complexType>
112                                                                                                                                                <xs:sequence>
113                                                                                                                                                        <xs:element name="spectral" type="spectralType"/>
114                                                                                                                                                        <xs:element name="grid" type="gridType"/>
115                                                                                                                                                </xs:sequence>
116                                                                                                                                        </xs:complexType>
117                                                                                                                                </xs:element>
118                                                                                                                                <xs:element name="isosohedral" type="gridType" minOccurs="0"/>
119                                                                                                                                <xs:element name="other" type="gridType" minOccurs="0"/>
120                                                                                                                        </xs:choice>
121                                                                                                                </xs:complexType>
122                                                                                                        </xs:element>
123                                                                                                        <xs:element name="coverage" minOccurs="0">
124                                                                                                                <xs:annotation>
125                                                                                                                        <xs:documentation>global, limited, between A and B etc</xs:documentation>
126                                                                                                                </xs:annotation>
127                                                                                                                <xs:complexType>
128                                                                                                                        <xs:simpleContent>
129                                                                                                                                <xs:extension base="xs:string">
130                                                                                                                                        <xs:attribute name="ISO19112geographicIdentifier" type="xs:string"/>
131                                                                                                                                </xs:extension>
132                                                                                                                        </xs:simpleContent>
133                                                                                                                </xs:complexType>
134                                                                                                        </xs:element>
135                                                                                                        <xs:element name="northPole" type="xs:string" minOccurs="0"/>
136                                                                                                        <xs:element name="changeHistory" type="changeHistoryType" minOccurs="0" maxOccurs="unbounded"/>
137                                                                                                </xs:sequence>
138                                                                                        </xs:complexType>
139                                                                                </xs:element>
140                                                                                <xs:element name="verticalRepresentation">
141                                                                                        <xs:complexType>
142                                                                                                <xs:sequence>
143                                                                                                        <xs:element name="verticalRepresentation_ID" type="MetadataIDType" minOccurs="0">
144                                                                                                                <xs:annotation>
145                                                                                                                        <xs:documentation>unique ID of vertical used</xs:documentation>
146                                                                                                                </xs:annotation>
147                                                                                                        </xs:element>
148                                                                                                        <xs:element name="resolution">
149                                                                                                                <xs:complexType>
150                                                                                                                        <xs:sequence>
151                                                                                                                                <xs:element name="numberOfLevels" type="xs:string"/>
152                                                                                                                        </xs:sequence>
153                                                                                                                </xs:complexType>
154                                                                                                        </xs:element>
155                                                                                                        <xs:element name="coverage" type="xs:string" minOccurs="0">
156                                                                                                                <xs:annotation>
157                                                                                                                        <xs:documentation>global, limited</xs:documentation>
158                                                                                                                </xs:annotation>
159                                                                                                        </xs:element>
160                                                                                                        <xs:element name="extent" type="xs:string" minOccurs="0"/>
161                                                                                                        <xs:element name="formulaValues" type="xs:string" minOccurs="0"/>
162                                                                                                        <xs:element name="changeHistory" type="changeHistoryType" minOccurs="0" maxOccurs="unbounded"/>
163                                                                                                </xs:sequence>
164                                                                                        </xs:complexType>
165                                                                                </xs:element>
166                                                                                <xs:element name="timeIntegration">
167                                                                                        <xs:complexType>
168                                                                                                <xs:sequence>
169                                                                                                        <xs:element name="timeIntegration_ID" type="MetadataIDType">
170                                                                                                                <xs:annotation>
171                                                                                                                        <xs:documentation>unique ID of time scheme used</xs:documentation>
172                                                                                                                </xs:annotation>
173                                                                                                        </xs:element>
174                                                                                                        <xs:element name="resolution">
175                                                                                                                <xs:complexType>
176                                                                                                                        <xs:sequence>
177                                                                                                                                <xs:element name="timeStepsPerDay" type="xs:string"/>
178                                                                                                                        </xs:sequence>
179                                                                                                                </xs:complexType>
180                                                                                                        </xs:element>
181                                                                                                        <xs:element name="changeHistory" type="changeHistoryType" minOccurs="0" maxOccurs="unbounded"/>
182                                                                                                </xs:sequence>
183                                                                                        </xs:complexType>
184                                                                                </xs:element>
185                                                                        </xs:sequence>
186                                                                </xs:complexType>
187                                                        </xs:element>
188                                                        <xs:element name="ScienceProperties">
189                                                                <xs:annotation>
190                                                                        <xs:documentation>the values of the science properties</xs:documentation>
191                                                                </xs:annotation>
192                                                                <xs:complexType>
193                                                                        <xs:sequence>
194                                                                                <xs:element name="scienceProperty" type="SciencePropertyType" maxOccurs="unbounded"/>
195                                                                        </xs:sequence>
196                                                                </xs:complexType>
197                                                        </xs:element>
198                                                        <xs:element name="InputOutputs">
199                                                                <xs:annotation>
200                                                                        <xs:documentation>input and output values of experiment</xs:documentation>
201                                                                </xs:annotation>
202                                                                <xs:complexType>
203                                                                        <xs:sequence>
204                                                                                <xs:element name="inputs">
205                                                                                        <xs:complexType>
206                                                                                                <xs:sequence>
207                                                                                                        <xs:element name="input" maxOccurs="unbounded">
208                                                                                                                <xs:complexType>
209                                                                                                                        <xs:sequence>
210                                                                                                                                <xs:element name="initialCondition" maxOccurs="unbounded">
211                                                                                                                                        <xs:annotation>
212                                                                                                                                                <xs:documentation>initial or restart file</xs:documentation>
213                                                                                                                                        </xs:annotation>
214                                                                                                                                        <xs:complexType>
215                                                                                                                                                <xs:sequence>
216                                                                                                                                                        <xs:element name="origin" type="originType">
217                                                                                                                                                                <xs:annotation>
218                                                                                                                                                                        <xs:documentation>internal to the code, external to the code or another component</xs:documentation>
219                                                                                                                                                                </xs:annotation>
220                                                                                                                                                        </xs:element>
221                                                                                                                                                        <xs:element name="description" type="xs:string">
222                                                                                                                                                                <xs:annotation>
223                                                                                                                                                                        <xs:documentation>a description of what is provided in the file</xs:documentation>
224                                                                                                                                                                </xs:annotation>
225                                                                                                                                                        </xs:element>
226                                                                                                                                                        <xs:element name="initialConditionType" type="initialConditionTypes" minOccurs="0">
227                                                                                                                                                                <xs:annotation>
228                                                                                                                                                                        <xs:documentation>controlled vocabulary of objective analysis, assimilation analysis, climatology, random, unknown etc</xs:documentation>
229                                                                                                                                                                </xs:annotation>
230                                                                                                                                                        </xs:element>
231                                                                                                                                                        <xs:element name="perturbed" type="xs:boolean" minOccurs="0"/>
232                                                                                                                                                        <xs:element name="changeHistory" type="changeHistoryType" minOccurs="0" maxOccurs="unbounded"/>
233                                                                                                                                                        <xs:element name="references" minOccurs="0">
234                                                                                                                                                                <xs:annotation>
235                                                                                                                                                                        <xs:documentation>any relevant citations documentation for the codebase such as manuals references websites. </xs:documentation>
236                                                                                                                                                                </xs:annotation>
237                                                                                                                                                                <xs:complexType>
238                                                                                                                                                                        <xs:sequence>
239                                                                                                                                                                                <xs:element name="reference" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
240                                                                                                                                                                        </xs:sequence>
241                                                                                                                                                                </xs:complexType>
242                                                                                                                                                        </xs:element>
243                                                                                                                                                </xs:sequence>
244                                                                                                                                                <xs:attribute name="initial_or_restart" type="xs:string"/>
245                                                                                                                                        </xs:complexType>
246                                                                                                                                </xs:element>
247                                                                                                                                <xs:element name="physicalConstants" type="PhysicalConstantType" minOccurs="0"/>
248                                                                                                                                <xs:element name="boundaryConditions" type="boundaryCondition" minOccurs="0" maxOccurs="unbounded"/>
249                                                                                                                        </xs:sequence>
250                                                                                                                </xs:complexType>
251                                                                                                        </xs:element>
252                                                                                                </xs:sequence>
253                                                                                        </xs:complexType>
254                                                                                </xs:element>
255                                                                                <xs:element name="couplingRequirements">
256                                                                                        <xs:complexType>
257                                                                                                <xs:sequence>
258                                                                                                        <xs:element name="PMIOD"/>
259                                                                                                        <xs:element name="changeHistory" type="changeHistoryType" minOccurs="0"/>
260                                                                                                </xs:sequence>
261                                                                                        </xs:complexType>
262                                                                                </xs:element>
263                                                                                <xs:element name="outputs">
264                                                                                        <xs:annotation>
265                                                                                                <xs:documentation>most of the metadata for output files will come from the output file themselves eg CF metadata</xs:documentation>
266                                                                                        </xs:annotation>
267                                                                                        <xs:complexType>
268                                                                                                <xs:sequence>
269                                                                                                        <xs:element name="output" maxOccurs="unbounded">
270                                                                                                                <xs:complexType>
271                                                                                                                        <xs:sequence>
272                                                                                                                                <xs:element name="outputFile_ID" type="MetadataIDType">
273                                                                                                                                        <xs:annotation>
274                                                                                                                                                <xs:documentation>unique ID for output dataset which will be referred to by datacenters - this allows hook from dataset to NMM</xs:documentation>
275                                                                                                                                        </xs:annotation>
276                                                                                                                                </xs:element>
277                                                                                                                                <xs:element name="outputFileFormat" type="xs:string">
278                                                                                                                                        <xs:annotation>
279                                                                                                                                                <xs:documentation>PP file? netcdf file?</xs:documentation>
280                                                                                                                                        </xs:annotation>
281                                                                                                                                </xs:element>
282                                                                                                                                <xs:element name="description" type="xs:string">
283                                                                                                                                        <xs:annotation>
284                                                                                                                                                <xs:documentation>a description of the output file - was it converted etc</xs:documentation>
285                                                                                                                                        </xs:annotation>
286                                                                                                                                </xs:element>
287                                                                                                                                <xs:element name="changeHistory" type="changeHistoryType" minOccurs="0" maxOccurs="unbounded"/>
288                                                                                                                                <xs:element name="references" minOccurs="0">
289                                                                                                                                        <xs:complexType>
290                                                                                                                                                <xs:sequence>
291                                                                                                                                                        <xs:element name="reference" type="xs:string" minOccurs="0" maxOccurs="unbounded">
292                                                                                                                                                                <xs:annotation>
293                                                                                                                                                                        <xs:documentation>documentation</xs:documentation>
294                                                                                                                                                                </xs:annotation>
295                                                                                                                                                        </xs:element>
296                                                                                                                                                </xs:sequence>
297                                                                                                                                        </xs:complexType>
298                                                                                                                                </xs:element>
299                                                                                                                        </xs:sequence>
300                                                                                                                </xs:complexType>
301                                                                                                        </xs:element>
302                                                                                                </xs:sequence>
303                                                                                        </xs:complexType>
304                                                                                </xs:element>
305                                                                        </xs:sequence>
306                                                                </xs:complexType>
307                                                        </xs:element>
308                                                </xs:sequence>
309                                        </xs:complexType>
310                                </xs:element>
311                        </xs:sequence>
312                        <xs:attribute ref="NMMVersionUsed" use="required"/>
313                        <xs:attribute ref="NMMCreationDate" use="required"/>
314                        <xs:attribute ref="NMMAuthor" use="required"/>
315                </xs:complexType>
316        </xs:element>
317        <xs:attribute name="NMMVersionUsed" type="xs:string">
318                <xs:annotation>
319                        <xs:documentation>The version of the metadata xsd being used</xs:documentation>
320                </xs:annotation>
321        </xs:attribute>
322        <xs:attribute name="NMMCreationDate" type="xs:dateTime">
323                <xs:annotation>
324                        <xs:documentation>the date of the creation of the metadatafile</xs:documentation>
325                </xs:annotation>
326        </xs:attribute>
327        <xs:attribute name="NMMAuthor" type="xs:string">
328                <xs:annotation>
329                        <xs:documentation>the author of the metadata file</xs:documentation>
330                </xs:annotation>
331        </xs:attribute>
332        <xs:complexType name="fileType">
333                <xs:sequence>
334                        <xs:element name="file_ID" type="MetadataIDType" minOccurs="0">
335                                <xs:annotation>
336                                        <xs:documentation>the file format of the input file ef pp, netcdf</xs:documentation>
337                                </xs:annotation>
338                        </xs:element>
339                        <xs:element name="filename" type="xs:string">
340                                <xs:annotation>
341                                        <xs:documentation>filename of the input file</xs:documentation>
342                                </xs:annotation>
343                        </xs:element>
344                        <xs:element name="pathname" type="xs:string">
345                                <xs:annotation>
346                                        <xs:documentation>the path to the input file</xs:documentation>
347                                </xs:annotation>
348                        </xs:element>
349                        <xs:element name="fileDescription" type="xs:string" minOccurs="0">
350                                <xs:annotation>
351                                        <xs:documentation>date file created</xs:documentation>
352                                </xs:annotation>
353                        </xs:element>
354                        <xs:element name="fileFormat" type="xs:string">
355                                <xs:annotation>
356                                        <xs:documentation>the file format of the input file ef pp, netcdf</xs:documentation>
357                                </xs:annotation>
358                        </xs:element>
359                        <xs:element name="fileDate" type="customDate" minOccurs="0">
360                                <xs:annotation>
361                                        <xs:documentation>date file created</xs:documentation>
362                                </xs:annotation>
363                        </xs:element>
364                        <xs:element name="fileCreator" type="pointOfContactType" minOccurs="0">
365                                <xs:annotation>
366                                        <xs:documentation>who created the file</xs:documentation>
367                                </xs:annotation>
368                        </xs:element>
369                </xs:sequence>
370        </xs:complexType>
371        <xs:complexType name="machineType">
372                <xs:sequence>
373                        <xs:element name="machineName" type="xs:string"/>
374                        <xs:element name="description" type="xs:string" minOccurs="0"/>
375                        <xs:element name="compiler" type="compilerType" minOccurs="0"/>
376                        <xs:element name="changeHistory" type="changeHistoryType" minOccurs="0" maxOccurs="unbounded"/>
377                </xs:sequence>
378        </xs:complexType>
379        <xs:complexType name="MetadataIDType">
380                <xs:annotation>
381                        <xs:documentation>ObjectID for all metadata objects</xs:documentation>
382                </xs:annotation>
383                <xs:sequence>
384                        <xs:element name="repositoryIdentifier">
385                                <xs:simpleType>
386                                        <xs:restriction base="xs:string"/>
387                                </xs:simpleType>
388                        </xs:element>
389                        <xs:element name="schemeIdentifier">
390                                <xs:simpleType>
391                                        <xs:restriction base="xs:string"/>
392                                </xs:simpleType>
393                        </xs:element>
394                        <xs:element name="localIdentifier">
395                                <xs:simpleType>
396                                        <xs:restriction base="xs:string"/>
397                                </xs:simpleType>
398                        </xs:element>
399                </xs:sequence>
400        </xs:complexType>
401        <xs:complexType name="SciencePropertyType">
402                <xs:annotation>
403                        <xs:documentation>Parameter definitions for Component</xs:documentation>
404                </xs:annotation>
405                <xs:sequence>
406                        <xs:element name="standardName" minOccurs="0">
407                                <xs:annotation>
408                                        <xs:documentation>This is a valid term which may be a community agreed upon standard name like advection, convection or gravity wave drag</xs:documentation>
409                                </xs:annotation>
410                                <xs:complexType>
411                                        <xs:simpleContent>
412                                                <xs:extension base="xs:string">
413                                                        <xs:attribute name="parentList" type="xs:string"/>
414                                                </xs:extension>
415                                        </xs:simpleContent>
416                                </xs:complexType>
417                        </xs:element>
418                        <xs:element name="localName" type="xs:string">
419                                <xs:annotation>
420                                        <xs:documentation>local name</xs:documentation>
421                                </xs:annotation>
422                        </xs:element>
423                        <xs:element name="definition" type="xs:string" minOccurs="0"/>
424                        <xs:element name="modifiedFromStandard" type="modifiedType">
425                                <xs:annotation>
426                                        <xs:documentation>In the experiment has this been modified from standard scheme</xs:documentation>
427                                </xs:annotation>
428                        </xs:element>
429                        <xs:element name="references" minOccurs="0">
430                                <xs:annotation>
431                                        <xs:documentation>any relevant citations documentation for the codebase such as manuals references websites. </xs:documentation>
432                                </xs:annotation>
433                                <xs:complexType>
434                                        <xs:sequence>
435                                                <xs:element name="reference" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
436                                        </xs:sequence>
437                                </xs:complexType>
438                        </xs:element>
439                        <xs:sequence maxOccurs="unbounded">
440                                <xs:element name="parameters" type="parameterType" minOccurs="0" maxOccurs="unbounded">
441                                        <xs:annotation>
442                                                <xs:documentation>the science parameter values  of the experiment</xs:documentation>
443                                        </xs:annotation>
444                                </xs:element>
445                        </xs:sequence>
446                        <xs:element name="forcing" type="originType" minOccurs="0" maxOccurs="unbounded"/>
447                        <xs:element name="changeHistory" type="changeHistoryType" minOccurs="0" maxOccurs="unbounded"/>
448                </xs:sequence>
449        </xs:complexType>
450        <xs:complexType name="PhysicalConstantType">
451                <xs:sequence>
452                        <xs:element name="physicalConstant" maxOccurs="unbounded">
453                                <xs:annotation>
454                                        <xs:documentation>A list of standard names of physical constants</xs:documentation>
455                                </xs:annotation>
456                                <xs:complexType>
457                                        <xs:sequence>
458                                                <xs:element name="standardName">
459                                                        <xs:annotation>
460                                                                <xs:documentation>A list of standard names of physical constants</xs:documentation>
461                                                        </xs:annotation>
462                                                        <xs:complexType>
463                                                                <xs:simpleContent>
464                                                                        <xs:extension base="xs:string">
465                                                                                <xs:attribute name="parentList" type="xs:string"/>
466                                                                        </xs:extension>
467                                                                </xs:simpleContent>
468                                                        </xs:complexType>
469                                                </xs:element>
470                                                <xs:element name="localName" type="xs:string">
471                                                        <xs:annotation>
472                                                                <xs:documentation>the local name</xs:documentation>
473                                                        </xs:annotation>
474                                                </xs:element>
475                                                <xs:element name="value" type="xs:string">
476                                                        <xs:annotation>
477                                                                <xs:documentation>the value eg 9.826 meters/second</xs:documentation>
478                                                        </xs:annotation>
479                                                </xs:element>
480                                                <xs:element name="references" minOccurs="0">
481                                                        <xs:annotation>
482                                                                <xs:documentation>any relevant citations documentation for the codebase such as manuals references websites. </xs:documentation>
483                                                        </xs:annotation>
484                                                        <xs:complexType>
485                                                                <xs:sequence>
486                                                                        <xs:element name="reference" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
487                                                                </xs:sequence>
488                                                        </xs:complexType>
489                                                </xs:element>
490                                        </xs:sequence>
491                                </xs:complexType>
492                        </xs:element>
493                </xs:sequence>
494        </xs:complexType>
495        <xs:complexType name="changeHistoryType">
496                <xs:sequence>
497                        <xs:element name="history" minOccurs="0" maxOccurs="unbounded">
498                                <xs:complexType>
499                                        <xs:sequence>
500                                                <xs:element name="change" type="xs:string" minOccurs="0"/>
501                                                <xs:element name="changeDate" type="customDate" minOccurs="0"/>
502                                                <xs:element name="reasonForChange" type="xs:string" minOccurs="0"/>
503                                        </xs:sequence>
504                                </xs:complexType>
505                        </xs:element>
506                </xs:sequence>
507        </xs:complexType>
508        <xs:complexType name="pointOfContactType">
509                <xs:sequence>
510                        <xs:element name="pointOfContact" minOccurs="0" maxOccurs="unbounded">
511                                <xs:complexType>
512                                        <xs:sequence>
513                                                <xs:element name="individualName" type="xs:string" minOccurs="0">
514                                                        <xs:annotation>
515                                                                <xs:documentation>name of the contact person</xs:documentation>
516                                                        </xs:annotation>
517                                                </xs:element>
518                                                <xs:element name="organisationName" type="xs:string" minOccurs="0">
519                                                        <xs:annotation>
520                                                                <xs:documentation>name of the contact organization</xs:documentation>
521                                                        </xs:annotation>
522                                                </xs:element>
523                                                <xs:element name="positionName" type="xs:string" minOccurs="0">
524                                                        <xs:annotation>
525                                                                <xs:documentation>role or position of the contact person</xs:documentation>
526                                                        </xs:annotation>
527                                                </xs:element>
528                                                <xs:element name="responsibility" minOccurs="0">
529                                                        <xs:annotation>
530                                                                <xs:documentation>function performed by the responsible person eg responsible for data, for model upkeep</xs:documentation>
531                                                        </xs:annotation>
532                                                        <xs:complexType>
533                                                                <xs:simpleContent>
534                                                                        <xs:extension base="xs:string">
535                                                                                <xs:attribute name="function">
536                                                                                        <xs:simpleType>
537                                                                                                <xs:restriction base="xs:string">
538                                                                                                        <xs:enumeration value="resourceProvider"/>
539                                                                                                        <xs:enumeration value="custodian"/>
540                                                                                                        <xs:enumeration value="owner"/>
541                                                                                                        <xs:enumeration value="user"/>
542                                                                                                        <xs:enumeration value="distributor"/>
543                                                                                                        <xs:enumeration value="originator"/>
544                                                                                                        <xs:enumeration value="pointOfContact"/>
545                                                                                                        <xs:enumeration value="principalInvestigator"/>
546                                                                                                        <xs:enumeration value="processor"/>
547                                                                                                        <xs:enumeration value="publisher"/>
548                                                                                                        <xs:enumeration value="author"/>
549                                                                                                </xs:restriction>
550                                                                                        </xs:simpleType>
551                                                                                </xs:attribute>
552                                                                        </xs:extension>
553                                                                </xs:simpleContent>
554                                                        </xs:complexType>
555                                                </xs:element>
556                                                <xs:element name="contactInfo" type="contactInfoType" minOccurs="0">
557                                                        <xs:annotation>
558                                                                <xs:documentation>contact information</xs:documentation>
559                                                        </xs:annotation>
560                                                </xs:element>
561                                        </xs:sequence>
562                                </xs:complexType>
563                        </xs:element>
564                </xs:sequence>
565        </xs:complexType>
566        <xs:complexType name="contactInfoType">
567                <xs:sequence>
568                        <xs:element name="phone" type="phoneType" minOccurs="0"/>
569                        <xs:element name="address" type="addressType" minOccurs="0"/>
570                        <xs:element name="hoursOfService" type="xs:string" minOccurs="0"/>
571                        <xs:element name="contactInstructions" type="xs:string" minOccurs="0"/>
572                </xs:sequence>
573        </xs:complexType>
574        <xs:complexType name="addressType">
575                <xs:sequence>
576                        <xs:element name="deliveryPoint" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
577                        <xs:element name="city" type="xs:string" minOccurs="0"/>
578                        <xs:element name="administrativeArea" type="xs:string" minOccurs="0"/>
579                        <xs:element name="postalCode" type="xs:string" minOccurs="0"/>
580                        <xs:element name="country" type="xs:string" minOccurs="0"/>
581                        <xs:element name="electronicMailAddress" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
582                </xs:sequence>
583        </xs:complexType>
584        <xs:complexType name="phoneType">
585                <xs:sequence>
586                        <xs:element name="voice" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
587                        <xs:element name="facsimile" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
588                </xs:sequence>
589        </xs:complexType>
590        <xs:complexType name="resourceConstraintsType">
591                <xs:sequence>
592                        <xs:element name="useLimitation" type="xs:string" maxOccurs="unbounded"/>
593                </xs:sequence>
594        </xs:complexType>
595        <xs:complexType name="descriptiveKeywordsType">
596                <xs:sequence>
597                        <xs:element name="keyword" type="xs:string" maxOccurs="unbounded"/>
598                </xs:sequence>
599        </xs:complexType>
600        <xs:complexType name="compilerType">
601                <xs:sequence>
602                        <xs:element name="name" type="xs:string"/>
603                        <xs:element name="version" type="xs:string"/>
604                        <xs:element name="description" type="xs:string" minOccurs="0"/>
605                        <xs:element name="options" minOccurs="0" maxOccurs="unbounded">
606                                <xs:complexType>
607                                        <xs:sequence>
608                                                <xs:element name="option" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
609                                        </xs:sequence>
610                                </xs:complexType>
611                        </xs:element>
612                        <xs:element name="optimization" type="xs:string" minOccurs="0"/>
613                        <xs:element name="libraries" minOccurs="0" maxOccurs="unbounded">
614                                <xs:complexType>
615                                        <xs:sequence>
616                                                <xs:element name="library" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
617                                        </xs:sequence>
618                                </xs:complexType>
619                        </xs:element>
620                        <xs:element name="dateCompiled" type="xs:date" minOccurs="0">
621                                <xs:annotation>
622                                        <xs:documentation>when was the model compiled</xs:documentation>
623                                </xs:annotation>
624                        </xs:element>
625                </xs:sequence>
626        </xs:complexType>
627        <xs:complexType name="variableType">
628                <xs:sequence>
629                        <xs:element name="name" type="xs:string"/>
630                        <xs:element name="value" type="xs:string"/>
631                </xs:sequence>
632        </xs:complexType>
633        <xs:complexType name="longitudeType">
634                <xs:sequence>
635                        <xs:element name="longitudeDegrees" type="xs:string">
636                                <xs:annotation>
637                                        <xs:documentation>E-W degrees or gridpoints</xs:documentation>
638                                </xs:annotation>
639                        </xs:element>
640                        <xs:element name="extent" type="xs:string" minOccurs="0"/>
641                        <xs:element name="description" type="xs:string" minOccurs="0">
642                                <xs:annotation>
643                                        <xs:documentation>enhanced between resolution A-B or at some resolution</xs:documentation>
644                                </xs:annotation>
645                        </xs:element>
646                </xs:sequence>
647        </xs:complexType>
648        <xs:complexType name="latitudeType">
649                <xs:sequence>
650                        <xs:element name="latitudeDegrees" type="xs:string"/>
651                        <xs:element name="extent" type="xs:string" minOccurs="0"/>
652                        <xs:element name="description" type="xs:string" minOccurs="0">
653                                <xs:annotation>
654                                        <xs:documentation>enhanced between resolution A-B or at some resolution</xs:documentation>
655                                </xs:annotation>
656                        </xs:element>
657                </xs:sequence>
658        </xs:complexType>
659        <xs:complexType name="parameterType">
660                <xs:sequence>
661                        <xs:element name="parameter" maxOccurs="unbounded">
662                                <xs:complexType>
663                                        <xs:sequence>
664                                                <xs:element name="localName" type="xs:string">
665                                                        <xs:annotation>
666                                                                <xs:documentation>name parameter setting</xs:documentation>
667                                                        </xs:annotation>
668                                                </xs:element>
669                                                <xs:element name="value" type="xs:string">
670                                                        <xs:annotation>
671                                                                <xs:documentation>the value of the science parameter setting in this configuration</xs:documentation>
672                                                        </xs:annotation>
673                                                </xs:element>
674                                                <xs:element name="perturbed" type="xs:boolean" minOccurs="0"/>
675                                                <xs:sequence>
676                                                        <xs:element name="modified" type="modifiedType" minOccurs="0" maxOccurs="unbounded">
677                                                                <xs:annotation>
678                                                                        <xs:documentation>if modifed - with what and why</xs:documentation>
679                                                                </xs:annotation>
680                                                        </xs:element>
681                                                </xs:sequence>
682                                        </xs:sequence>
683                                </xs:complexType>
684                        </xs:element>
685                </xs:sequence>
686        </xs:complexType>
687        <xs:complexType name="spectralType">
688                <xs:sequence>
689                        <xs:element name="resolution" type="xs:string">
690                                <xs:annotation>
691                                        <xs:documentation>truncation eg T63</xs:documentation>
692                                </xs:annotation>
693                        </xs:element>
694                        <xs:element name="extent" type="xs:string" minOccurs="0"/>
695                        <xs:element name="description" type="xs:string" minOccurs="0"/>
696                        <xs:element name="gridSpecFile" type="fileType" minOccurs="0"/>
697                </xs:sequence>
698        </xs:complexType>
699        <xs:complexType name="gridType">
700                <xs:sequence>
701                        <xs:element name="resolution">
702                                <xs:complexType>
703                                        <xs:sequence>
704                                                <xs:element name="longitude" type="longitudeType"/>
705                                                <xs:element name="latitude" type="latitudeType"/>
706                                        </xs:sequence>
707                                </xs:complexType>
708                        </xs:element>
709                        <xs:element name="gridSpecFile" type="fileType" minOccurs="0"/>
710                </xs:sequence>
711        </xs:complexType>
712        <xs:complexType name="originType">
713                <xs:choice>
714                        <xs:element name="internal" type="xs:string"/>
715                        <xs:element name="external" type="fileType"/>
716                        <xs:element name="component">
717                                <xs:complexType>
718                                        <xs:sequence>
719                                                <xs:element name="NMMComponent_ID" type="MetadataIDType"/>
720                                                <xs:element name="componentOutputFile" type="fileType"/>
721                                        </xs:sequence>
722                                </xs:complexType>
723                        </xs:element>
724                </xs:choice>
725        </xs:complexType>
726        <xs:simpleType name="initialConditionTypes">
727                <xs:restriction base="xs:string">
728                        <xs:enumeration value="Objective Analysis"/>
729                        <xs:enumeration value="Assimilation Analysis"/>
730                        <xs:enumeration value="Unknown"/>
731                        <xs:enumeration value="Climatology"/>
732                        <xs:enumeration value="Random"/>
733                </xs:restriction>
734        </xs:simpleType>
735        <xs:complexType name="referenceType">
736                <xs:sequence>
737                        <xs:element name="reference" type="xs:string" maxOccurs="unbounded"/>
738                </xs:sequence>
739        </xs:complexType>
740        <xs:simpleType name="citationType">
741                <xs:restriction base="xs:string">
742                        <xs:enumeration value="Article"/>
743                        <xs:enumeration value="Book"/>
744                        <xs:enumeration value="Conference"/>
745                        <xs:enumeration value="In Book"/>
746                        <xs:enumeration value="In Collection"/>
747                        <xs:enumeration value="In Proceedings"/>
748                        <xs:enumeration value="Journal"/>
749                        <xs:enumeration value="Manual"/>
750                        <xs:enumeration value="Masters Thesis"/>
751                        <xs:enumeration value="Misc"/>
752                        <xs:enumeration value="Phd Thesis"/>
753                        <xs:enumeration value="Tech Report"/>
754                        <xs:enumeration value="Unpublished"/>
755                        <xs:enumeration value="Email"/>
756                        <xs:enumeration value="WWW"/>
757                </xs:restriction>
758        </xs:simpleType>
759        <xs:complexType name="boundaryCondition">
760                <xs:sequence>
761                        <xs:element name="boundaryCondition" maxOccurs="unbounded">
762                                <xs:complexType>
763                                        <xs:sequence>
764                                                <xs:element name="description" type="xs:string"/>
765                                                <xs:element name="boundaryConditionType" type="boundaryConditionTypes" minOccurs="0">
766                                                        <xs:annotation>
767                                                                <xs:documentation>controlled vocabulary of IPCC SRES A!, A2, B1, B2, IS92, Preindustrial, Present Day, user specified etc</xs:documentation>
768                                                        </xs:annotation>
769                                                </xs:element>
770                                                <xs:element name="references" minOccurs="0">
771                                                        <xs:annotation>
772                                                                <xs:documentation>any relevant citations documentation for the codebase such as manuals references websites. </xs:documentation>
773                                                        </xs:annotation>
774                                                        <xs:complexType>
775                                                                <xs:sequence>
776                                                                        <xs:element name="reference" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
777                                                                </xs:sequence>
778                                                        </xs:complexType>
779                                                </xs:element>
780                                                <xs:element name="boundaryDataset" type="fileType" minOccurs="0"/>
781                                        </xs:sequence>
782                                </xs:complexType>
783                        </xs:element>
784                </xs:sequence>
785        </xs:complexType>
786        <xs:simpleType name="boundaryConditionTypes">
787                <xs:annotation>
788                        <xs:documentation>This the controlled vocabulary for Forcing
789            Specifications</xs:documentation>
790                </xs:annotation>
791                <xs:restriction base="xs:string">
792                        <xs:enumeration value="IPCC SRES A1"/>
793                        <xs:enumeration value="IPCC SRES A2"/>
794                        <xs:enumeration value="IPCC SRES B1"/>
795                        <xs:enumeration value="IPCC SRES B2"/>
796                        <xs:enumeration value="IS92A"/>
797                        <xs:enumeration value="Preindustrial"/>
798                        <xs:enumeration value="Present Day"/>
799                        <xs:enumeration value="Double Preindustrial"/>
800                        <xs:enumeration value="Double Present Day"/>
801                        <xs:enumeration value="Background"/>
802                        <xs:enumeration value="Historical"/>
803                        <xs:enumeration value="% per annum increase"/>
804                        <xs:enumeration value="Lateral Boundary Global Model"/>
805                        <xs:enumeration value="User Specified"/>
806                </xs:restriction>
807        </xs:simpleType>
808        <xs:complexType name="modifiedType">
809                <xs:sequence>
810                        <xs:element name="modificationFilename" type="xs:string" minOccurs="0">
811                                <xs:annotation>
812                                        <xs:documentation>the filename of the modificationfile</xs:documentation>
813                                </xs:annotation>
814                        </xs:element>
815                        <xs:element name="modificationReason" type="xs:string">
816                                <xs:annotation>
817                                        <xs:documentation>a descriptive reason why science parameter was modified from the codebase</xs:documentation>
818                                </xs:annotation>
819                        </xs:element>
820                </xs:sequence>
821        </xs:complexType>
822        <xs:simpleType name="customDate">
823                <xs:union memberTypes="xs:date xs:string">
824                        <xs:simpleType>
825                                <xs:restriction base="xs:string">
826                                        <xs:enumeration value=""/>
827                                </xs:restriction>
828                        </xs:simpleType>
829                </xs:union>
830        </xs:simpleType>
831</xs:schema>
Note: See TracBrowser for help on using the repository browser.