source: sasview/src/sas/sascalc/dataloader/readers/schema/cansas1d_invalid.xsd @ ef51b63

ESS_GUIESS_GUI_DocsESS_GUI_batch_fittingESS_GUI_bumps_abstractionESS_GUI_iss1116ESS_GUI_iss879ESS_GUI_iss959ESS_GUI_openclESS_GUI_orderingESS_GUI_sync_sascalc
Last change on this file since ef51b63 was ef51b63, checked in by Piotr Rozyczko <rozyczko@…>, 8 years ago

Modified Cansas XML reader to attempt to load data that doesn't fully meet the cansas format.

  • Property mode set to 100644
File size: 11.1 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<?xml-stylesheet type="text/xsl" href="xsd-documentation.xsl" ?>
3<schema xmlns="http://www.w3.org/2001/XMLSchema"
4        xmlns:xsd="http://www.w3.org/2001/XMLSchema"
5        xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"  jaxb:version="2.0"
6        targetNamespace="urn:cansas1d:1.1" xmlns:tns="urn:cansas1d:1.1"
7        elementFormDefault="qualified">
8
9<!--
10Copyright (c) 2013, UChicago Argonne, LLC
11This file is distributed subject to a Software License Agreement found
12in the file LICENSE that is included with this distribution.
13 -->
14 
15<!-- JAXB: http://java.sun.com/developer/technicalArticles/WebServices/jaxb/ -->
16
17        <complexType name="floatUnitType">
18                <simpleContent>
19                        <extension base="float">
20                                <attribute name="unit" type="string" use="required" />
21                        </extension>
22                </simpleContent>
23        </complexType>
24
25        <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
26
27        <group name="positionGroup">
28                <sequence>
29                        <element name="x" type="tns:floatUnitType" minOccurs="0" maxOccurs="1" />
30                        <element name="y" type="tns:floatUnitType" minOccurs="0" maxOccurs="1" />
31                        <element name="z" type="tns:floatUnitType" minOccurs="0" maxOccurs="1" />
32                </sequence>
33        </group>
34
35        <complexType name="positionType">
36                <group ref="tns:positionGroup" />
37                <attribute name="name" type="string" use="optional" default="" />
38        </complexType>
39
40        <group name="orientationGroup">
41                <sequence>
42                        <element name="roll" type="tns:floatUnitType" minOccurs="0"  maxOccurs="1" />
43                        <element name="pitch" type="tns:floatUnitType" minOccurs="0" maxOccurs="1" />
44                        <element name="yaw" type="tns:floatUnitType" minOccurs="0"   maxOccurs="1" />
45                </sequence>
46        </group>
47
48        <complexType name="orientationType">
49                <group ref="tns:orientationGroup" />
50                <attribute name="name" type="string" use="optional" default="" />
51        </complexType>
52
53        <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
54       
55        <complexType name="IdataType">
56                <sequence>
57                        <element name="Q" minOccurs="1" maxOccurs="1"    type="tns:floatUnitType" />
58                        <element name="I" minOccurs="1" maxOccurs="1"    type="tns:floatUnitType" />
59                        <element name="Idev" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" default="0" />
60                        <xsd:choice>
61                                <!-- [ [Qdev] | [[dQw] | [dQl]] ] -->
62                                <element name="Qdev" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" default="0" />
63                                <xsd:sequence>
64                                        <element name="dQw" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" default="0" />
65                                        <element name="dQl" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" default="0" />
66                                </xsd:sequence>
67                        </xsd:choice>
68                        <element name="Qmean" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" default="0" />
69                        <element name="Shadowfactor" minOccurs="0" maxOccurs="1" type="float" default="1.0" />
70                        <xsd:any minOccurs="0" maxOccurs="unbounded" processContents="skip" namespace="##other" />
71                </sequence>
72        </complexType>
73       
74        <complexType name="SASdataType">
75                <sequence minOccurs="1" maxOccurs="1">  <!-- http://svn.cansas.org/trac/ticket/21 -->
76                        <sequence>
77                                <element name="Idata" minOccurs="1" maxOccurs="unbounded" type="tns:IdataType" />
78                        </sequence>
79                        <xsd:any minOccurs="0" maxOccurs="unbounded" processContents="skip" namespace="##other" />
80                </sequence>
81                <attribute name="name" type="string" use="optional" default="" />
82                <attribute name="timestamp" type="dateTime" use="optional" />
83        </complexType>
84       
85        <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
86       
87        <complexType name="TdataType">
88                        <sequence>
89                                <element name="Lambda" minOccurs="0" maxOccurs="1"    type="tns:floatUnitType" />
90                                <element name="T" minOccurs="0" maxOccurs="1"    type="tns:floatUnitType" />
91                                <element name="Tdev" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" default="0" />
92                                <xsd:any minOccurs="0" maxOccurs="unbounded" processContents="skip" namespace="##other" />
93                </sequence>
94        </complexType>
95       
96        <complexType name="SAStransmission_spectrumType">
97                <sequence minOccurs="0" maxOccurs="1">
98                        <sequence minOccurs="0" maxOccurs="1">
99                                <element name="Tdata" minOccurs="0" maxOccurs="unbounded" type="tns:TdataType" />
100                        </sequence>
101                        <xsd:any minOccurs="0" maxOccurs="unbounded" processContents="skip" namespace="##other" />
102                </sequence>
103                <attribute name="name" type="string" use="optional" default="" />
104                <attribute name="timestamp" type="dateTime" use="optional" />
105        </complexType>
106       
107        <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
108
109        <complexType name="SASsampleType">
110                <sequence>
111                        <element name="ID" minOccurs="0" maxOccurs="1" type="string" />
112                        <element name="thickness" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" />
113                        <element name="transmission" minOccurs="0" maxOccurs="1" type="float" />
114                        <element name="temperature" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" />
115                        <element name="position" minOccurs="0" maxOccurs="1" type="tns:positionType" />
116                        <element name="orientation" minOccurs="0" maxOccurs="1" type="tns:orientationType" />
117                        <element name="details" minOccurs="0" maxOccurs="unbounded" />
118                        <xsd:any minOccurs="0" maxOccurs="unbounded" processContents="skip" namespace="##other" />
119                </sequence>
120                <attribute name="name" type="string" use="optional" default="" />
121        </complexType>
122
123        <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
124
125        <complexType name="termType">
126                <simpleContent>
127                        <extension base="string">
128                                <attribute name="name" type="string" use="optional" default="" />
129                                <attribute name="unit" type="string" use="optional"/>
130                        </extension>
131                </simpleContent>
132        </complexType>
133
134        <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
135
136        <complexType name="SASprocessType">
137                <annotation>
138                        <appinfo>
139                                <!-- JAXB: simplify class name -->
140                                <jaxb:property name="SASprocess" />
141                        </appinfo>
142                </annotation>
143                <sequence>
144                        <element name="name" minOccurs="0" maxOccurs="1" type="string" default="">
145                                <annotation>
146                                        <appinfo>
147                                                <!-- Remap collision of Name when using JAXB -->
148                                                <jaxb:property name="SASprocessName" />
149                                        </appinfo>
150                                </annotation>
151                        </element>
152                        <element name="date" minOccurs="0" maxOccurs="1" type="string" />
153                        <element name="description" minOccurs="0" maxOccurs="1" />
154                        <element name="term" minOccurs="0" maxOccurs="unbounded" type="tns:termType" />
155                        <element name="SASprocessnote" minOccurs="0" maxOccurs="unbounded" />
156                        <xsd:any minOccurs="0" maxOccurs="unbounded" processContents="skip" namespace="##other" />
157                </sequence>
158                <attribute name="name" type="string" use="optional" default="">
159                        <annotation>
160                                <appinfo>
161                                        <!-- Remap collision of Name when using JAXB -->
162                                        <jaxb:property name="SASprocessNameAttr" />
163                                </appinfo>
164                        </annotation>
165                </attribute>
166        </complexType>
167
168        <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
169
170        <complexType name="SASsourceType">
171                <sequence>
172                        <element name="radiation" minOccurs="0" maxOccurs="1" type="string" />
173                        <element name="beam_size" minOccurs="0" maxOccurs="1" type="tns:positionType" />
174                        <element name="beam_shape" minOccurs="0" maxOccurs="1" type="string" />
175                        <element name="wavelength" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" />
176                        <element name="wavelength_min" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" />
177                        <element name="wavelength_max" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" />
178                        <element name="wavelength_spread" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" />
179                </sequence>
180                <attribute name="name" type="string" use="optional" default="" />
181        </complexType>
182
183        <complexType name="SAScollimationType">
184                <sequence>
185                        <element name="length" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" />
186                        <element name="aperture" minOccurs="0" maxOccurs="unbounded">
187                                <complexType>
188                                        <sequence>
189                                                <element name="size" minOccurs="0" maxOccurs="1" type="tns:positionType" />
190                                                <element name="distance" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" />
191                                        </sequence>
192                                        <attribute name="name" type="string" use="optional" default="" />
193                                        <attribute name="type" type="string" use="optional" default="" />
194                                </complexType>
195                        </element>
196                </sequence>
197                <attribute name="name" type="string" use="optional" default="" />
198        </complexType>
199
200        <complexType name="SASdetectorType">
201                <sequence>
202                        <element name="name" minOccurs="0" maxOccurs="1" type="string" default=""/>
203                        <element name="SDD" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" />
204                        <element name="offset" minOccurs="0" maxOccurs="1" type="tns:positionType" />
205                        <element name="orientation" minOccurs="0" maxOccurs="1" type="tns:orientationType" />
206                        <element name="beam_center" minOccurs="0" maxOccurs="1" type="tns:positionType" />
207                        <element name="pixel_size" minOccurs="0" maxOccurs="1" type="tns:positionType" />
208                        <element name="slit_length" minOccurs="0" maxOccurs="1" type="tns:floatUnitType" />
209                </sequence>
210        </complexType>
211
212        <complexType name="SASinstrumentType">
213                <sequence>
214                        <element name="name" type="string" minOccurs="0" maxOccurs="1" default="" />
215                        <element name="SASsource" type="tns:SASsourceType" minOccurs="0" maxOccurs="1" />
216                        <element name="SAScollimation" type="tns:SAScollimationType" minOccurs="0" maxOccurs="unbounded" />
217                        <element name="SASdetector" type="tns:SASdetectorType" minOccurs="0" maxOccurs="unbounded" />
218                </sequence>
219        </complexType>
220
221        <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
222
223        <complexType name="SASentryType">
224                <sequence>
225                        <element name="Title" minOccurs="0" maxOccurs="1" type="string" />
226                        <element name="Run" minOccurs="0" maxOccurs="unbounded">
227                                <xsd:complexType>
228                                        <simpleContent>
229                                                <extension base="string">
230                                                        <attribute name="name" type="string" use="optional" default="" />
231                                                </extension>
232                                        </simpleContent>
233                                </xsd:complexType>
234                        </element>
235                        <xsd:any minOccurs="0" maxOccurs="unbounded" processContents="skip" namespace="##other" />
236                        <element name="SASdata" minOccurs="1" maxOccurs="unbounded" type="tns:SASdataType" />
237                        <element name="SAStransmission_spectrum" minOccurs="0" maxOccurs="unbounded" type="tns:SAStransmission_spectrumType"/>
238                        <xsd:any minOccurs="0" maxOccurs="unbounded" processContents="skip" namespace="##other">
239                                <!-- Is a second *any* element needed here? -->
240                                <annotation>
241                                        <appinfo>
242                                                <!-- Remap collision of Any when using JAXB --> 
243                                                <jaxb:property name="SASentryAny2" />
244                                        </appinfo>
245                                </annotation>
246                        </xsd:any>
247                        <element name="SASsample" type="tns:SASsampleType" />
248                        <element name="SASinstrument" type="tns:SASinstrumentType" minOccurs="0" maxOccurs="1" />
249                        <element name="SASprocess" type="tns:SASprocessType" minOccurs="0" maxOccurs="unbounded" />
250                        <element name="SASnote" minOccurs="0" maxOccurs="unbounded" />
251                                <!-- SASnote is a free-form element.
252                                        Do not define any content for it or it will become restrictive.
253                                -->
254                </sequence>
255                <attribute name="name" type="string" use="optional" default="" />
256        </complexType>
257
258        <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
259
260        <complexType name="SASrootType">
261                <sequence>
262                        <element name="SASentry" minOccurs="1" maxOccurs="unbounded" type="tns:SASentryType" />
263                </sequence>
264                <attribute name="version" type="string" fixed="1.1" use="optional" />
265        </complexType>
266
267        <element name="SASroot" type="tns:SASrootType" />
268
269</schema>
Note: See TracBrowser for help on using the repository browser.