source: TI01-discovery/trunk/schema/numsim/tags/NumSimV006/NumSim.xsd @ 700

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/TI01-discovery/trunk/schema/numsim/tags/NumSimV006/NumSim.xsd@700
Revision 700, 8.8 KB checked in by lawrence, 14 years ago (diff)

Tagging NumSimV006 into subversion (this is hopefully the cvs version
with all binary problems sorted).

Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
3    <xs:complexType name="NS_RelatedTo">
4        <xs:sequence>
5            <xs:element name="NS_URI" type="xs:anyURI"/>
6            <xs:element name="NS_Relationship" type="xs:string"/>
7        </xs:sequence>
8    </xs:complexType>
9    <xs:complexType name="NS_Description" mixed="true">
10        <xs:sequence>
11            <xs:element name="NS_RelatedURI" type="NS_RelatedTo" minOccurs="0" maxOccurs="unbounded"
12            />
13        </xs:sequence>
14    </xs:complexType>
15    <xs:complexType name="NS_ReferenceList">
16        <xs:sequence>
17            <xs:element name="NS_Reference" type="xs:string" minOccurs="1" maxOccurs="unbounded"/>
18        </xs:sequence>
19    </xs:complexType>
20    <xs:complexType name="NS_ControlledParameters">
21        <xs:sequence>
22            <xs:element name="NS_NamespaceURI" type="xs:anyURI">
23                <xs:annotation>
24                    <xs:documentation>Rather than rely on including xml namespaces, which can be
25                        done in the element values below, we've also allowed an explicitly labelled
26                        link to such namespaces, and to namespaces which are not XML
27                    namespaces.</xs:documentation>
28                </xs:annotation>
29            </xs:element>
30            <xs:element name="NS_Value" type="xs:string" minOccurs="1" maxOccurs="unbounded"/>
31        </xs:sequence>
32    </xs:complexType>
33    <xs:simpleType name="NS_InitialConditionTypes">
34        <xs:restriction base="xs:string">
35            <xs:enumeration value="Objective Analysis"/>
36            <xs:enumeration value="Assimilation Analysis"/>
37            <xs:enumeration value="Unknown"/>
38            <xs:enumeration value="Climatology"/>
39            <xs:enumeration value="Random"/>
40        </xs:restriction>
41    </xs:simpleType>
42    <xs:simpleType name="NS_ModelComponents">
43        <xs:annotation>
44            <xs:documentation>This the controlled vocabulary for the various model sub components
45                which might be able to run independently but could be coupled</xs:documentation>
46        </xs:annotation>
47        <xs:restriction base="xs:string">
48            <xs:enumeration value="Atmosphere"/>
49            <xs:enumeration value="Ocean"/>
50            <xs:enumeration value="Cryosphere"/>
51            <xs:enumeration value="LandSurface"/>
52            <xs:enumeration value="Chemistry"/>
53            <xs:enumeration value="Aerosol"/>
54            <xs:enumeration value="Coupler"/>
55        </xs:restriction>
56    </xs:simpleType>
57    <xs:simpleType name="NS_ModelCategories">
58        <xs:annotation>
59            <xs:documentation>This the controlled vocabulary that categorises how the model is set
60                up</xs:documentation>
61        </xs:annotation>
62        <xs:restriction base="xs:string">
63            <xs:enumeration value="GCM"/>
64            <xs:enumeration value="Standalone"/>
65            <xs:enumeration value="Idealised"/>
66            <xs:enumeration value="Energy Balance"/>
67            <xs:enumeration value="Assimilation"/>
68            <xs:enumeration value="Beta-plane"/>
69            <xs:enumeration value="Aqua-planet"/>
70            <xs:enumeration value="Column Mean"/>
71            <xs:enumeration value="Slab"/>
72            <xs:enumeration value="Trajectory"/>
73        </xs:restriction>
74    </xs:simpleType>
75    <xs:simpleType name="NS_BoundaryConditionNames">
76        <xs:annotation>
77            <xs:documentation>This the controlled vocabulary for Forcing
78            Specifications</xs:documentation>
79        </xs:annotation>
80        <xs:restriction base="xs:string">
81            <xs:enumeration value="IPCC SRES A1"/>
82            <xs:enumeration value="IPCC SRES A2"/>
83            <xs:enumeration value="IPCC SRES B1"/>
84            <xs:enumeration value="IPCC SRES B2"/>
85            <xs:enumeration value="IS92A"/>
86            <xs:enumeration value="Preindustrial"/>
87            <xs:enumeration value="Present Day"/>
88            <xs:enumeration value="Double Preindustrial"/>
89            <xs:enumeration value="Double Present Day"/>
90            <xs:enumeration value="Background"/>
91            <xs:enumeration value="Historical"/>
92            <xs:enumeration value="% per annum increase"/>
93            <xs:enumeration value="Lateral Boundary Global Model"/>
94            <xs:enumeration value="User Specified"/>
95        </xs:restriction>
96    </xs:simpleType>
97    <xs:simpleType name="NS_EnsembleTypes">
98        <xs:annotation>
99            <xs:documentation>This the controlled vocabulary for the types of ensemble. Note that a
100                Grand ensemble is a combination of two or more other ensemble
101            types.</xs:documentation>
102        </xs:annotation>
103        <xs:restriction base="xs:string">
104            <xs:enumeration value="Initial Condition"/>
105            <xs:enumeration value="Perturbed Physics"/>
106            <xs:enumeration value="Arbitrary Collection"/>
107            <xs:enumeration value="Single Model"/>
108            <xs:enumeration value="Multiple Model"/>
109            <xs:enumeration value="Multiple Forcing"/>
110            <xs:enumeration value="Grand"/>
111        </xs:restriction>
112    </xs:simpleType>
113    <xs:complexType name="NS_InitialCondition" mixed="false">
114        <xs:sequence>
115            <xs:element name="NS_Description" type="NS_Description" minOccurs="0" maxOccurs="1"/>
116            <xs:element name="NS_ControlledParameters" type="NS_ControlledParameters" minOccurs="0"
117                maxOccurs="unbounded"/>
118        </xs:sequence>
119        <xs:attribute name="NS_type" type="NS_InitialConditionTypes"/>
120        <xs:attribute name="NS_perturbed" type="xs:boolean"/>
121    </xs:complexType>
122    <xs:complexType name="NS_BoundaryCondition">
123        <xs:sequence>
124            <xs:element name="NS_Description" type="NS_Description" minOccurs="1"/>
125            <xs:element name="NS_ControlledParameters" type="NS_ControlledParameters" minOccurs="0"
126                maxOccurs="unbounded"/>
127            <xs:element name="NS_References" type="NS_ReferenceList" minOccurs="0" maxOccurs="1"/>
128            <xs:element name="NS_BoundaryDataset" type="NS_RelatedTo" minOccurs="0" maxOccurs="1"/>
129        </xs:sequence>
130        <xs:attribute name="NS_type" type="NS_BoundaryConditionNames"/>
131    </xs:complexType>
132    <xs:complexType name="NS_EnsembleDetails">
133        <xs:annotation>
134            <xs:documentation>Should only appear if the simulated data is from an ensemble of
135                simulations. Statistics should be set true if the original individual simulations
136                are not available. </xs:documentation>
137        </xs:annotation>
138        <xs:sequence>
139            <xs:element name="NS_EnsembleDescription" type="NS_Description" minOccurs="0" maxOccurs="1"/>
140            <xs:element name="NS_EnsembleType" type="NS_EnsembleTypes" minOccurs="1"
141                maxOccurs="unbounded"/>
142        </xs:sequence>
143        <xs:attribute name="NS_EnsembleStatistics" type="xs:boolean" default="0"/>
144    </xs:complexType>
145    <xs:complexType name="NS_Model">
146        <xs:sequence>
147            <xs:element name="NS_Name" type="xs:string" minOccurs="1" maxOccurs="1"/>
148            <xs:element name="NS_Category" type="NS_ModelCategories" minOccurs="0"
149                maxOccurs="unbounded"/>
150            <xs:element name="NS_ComponentType" type="NS_ModelComponents" minOccurs="0"
151                maxOccurs="unbounded"/>
152            <xs:element name="NS_Description" type="NS_Description" minOccurs="0" maxOccurs="1"/>
153            <xs:element name="NS_RelatedModel" type="NS_RelatedTo" minOccurs="0" maxOccurs="1"/>
154            <xs:element name="NS_References" type="NS_ReferenceList" minOccurs="0" maxOccurs="1"/>
155            <xs:element name="NS_Component" type="NS_Model" minOccurs="0" maxOccurs="unbounded"/>
156        </xs:sequence>
157    </xs:complexType>
158    <xs:complexType name="NS_NumSim">
159        <xs:sequence>
160            <xs:element name="NS_Description" type="NS_Description"/>
161            <xs:element name="NS_Model" type="NS_Model" minOccurs="0" maxOccurs="unbounded"/>
162            <xs:element name="NS_BoundaryCondition" type="NS_BoundaryCondition" minOccurs="0"
163                maxOccurs="unbounded"/>
164            <xs:element name="NS_InitialCondition" type="NS_InitialCondition" minOccurs="0"
165                maxOccurs="unbounded"/>
166            <xs:element name="NS_Ensemble" type="NS_EnsembleDetails" minOccurs="0" maxOccurs="1"/>
167            <xs:element name="NS_ParentEnsemble" type="NS_RelatedTo" minOccurs="0"
168                maxOccurs="unbounded">
169                <xs:annotation>
170                    <xs:documentation>When an integration is available as in independant dataset
171                        this can be used to point back to the parent ensemble
172                    dataset.</xs:documentation>
173                </xs:annotation>
174            </xs:element>
175        </xs:sequence>
176    </xs:complexType>
177    <xs:element name="NS_Simulated" type="NS_NumSim"/>
178</xs:schema>
Note: See TracBrowser for help on using the repository browser.