cansas1d documentation: Difference between revisions

From canSAS
(added artwork to show Q and axes definitions)
(rearranged items, promoted overview to come first)
Line 8: Line 8:


==General Layout of the XML Data==
==General Layout of the XML Data==
===overview===
After an XML header, the root element of the file is SASroot which
contains one or more SASentry elements, each of which describes
a single experiment (data set, time-slice, step in a series, new
sample, etc.).  Details of the SASentry element are also
shown in the next figure.  Refer to the '''block diagram at SASroot level'''
for an alternative depiction.  See [[cansas1d.xml]] for an example XML file.
[[Image:cansas1d-v1-1-SASroot.png|thumb|block diagram at SASroot level]]
===block diagrams===
There are block diagrams available to describe the standard:
*[[media:cansas1d-v1-1-SASroot.png | SASroot]]
** SASentry (data set, time-slice, step in a series, new sample, etc.)
***Title (for this particular SASentry)
***Run (run number or ID number of experiment)
***[[media:cansas1d-v1-2-SASdata.png | SASdata]] (this is where the reduced 1-D SAS data is stored)
***[[media:cansas1d-v1-3-SASsample.png | SASsample]]
***[[media:cansas1d-v1-4-SASinstrument.png | SASinstrument]]
****[[media:cansas1d-v1-5-SASsource.png | SASsource]]
****[[media:cansas1d-v1-6-SAScollimation.png | SAScollimation]]
****[[media:cansas1d-v1-7-SASdetector.png | SASdetector]]
***[[media:cansas1d-v1-8-SASprocess.png | SASprocess]] (for each processing or analysis step)
*** SASnote (anything at all)
* [[media:cansas1d-v1-9-full.png | full block diagram]]


===required XML file header===
===required XML file header===
Line 32: Line 59:
</pre>
</pre>


===overall file: layout of SASroot===
===XML layout for multiple experiments===
 
After the XML header, the root element of the file is SASroot which
contains one or more SASentry elements, each of which describes
a single experiment (data set, time-slice, step in a series, new
sample, etc.).  Details of the SASentry element are also
shown in the next figure.  Refer to the '''block diagram at SASroot level'''
for an alternative depiction.
[[Image:cansas1d-v1-1-SASroot.png|100px|none|thumb|block diagram at SASroot level]]


Each experiment is described with a single '''SASentry''' element.
The brief example below shows how multiple experiments can be included
in a single XML file.  (For the sake of brevity, the data for each experiment
has been omitted from the example below.)


<pre>
<pre>
Line 59: Line 82:
</SASroot>
</SASroot>
</pre>
</pre>
===block diagrams===
There are block diagrams available to describe the standard:
*[[media:cansas1d-v1-1-SASroot.png | SASroot]]
** SASentry (data set, time-slice, step in a series, new sample, etc.)
***Title (for this particular SASentry)
***Run (run number or ID number of experiment)
***[[media:cansas1d-v1-2-SASdata.png | SASdata]] (this is where the reduced 1-D SAS data is stored)
**[[media:cansas1d-v1-3-SASsample.png | SASsample]]
**[[media:cansas1d-v1-4-SASinstrument.png | SASinstrument]]
***[[media:cansas1d-v1-5-SASsource.png | SASsource]]
***[[media:cansas1d-v1-6-SAScollimation.png | SAScollimation]]
***[[media:cansas1d-v1-7-SASdetector.png | SASdetector]]
**[[media:cansas1d-v1-8-SASprocess.png | SASprocess]] (for each processing or analysis step)
** SASnote (anything at all)
* [[media:cansas1d-v1-9-full.png | full block diagram]]





Revision as of 23:16, 21 February 2008

Disclaimer

This description is meant to inform the community how to layout the information within the XML files. However, should the information in this document and the canSAS 1D SAS XML Schema differ, the XML Schema will be deemed to have the most correct description of the standard.

General Layout of the XML Data

overview

After an XML header, the root element of the file is SASroot which contains one or more SASentry elements, each of which describes a single experiment (data set, time-slice, step in a series, new sample, etc.). Details of the SASentry element are also shown in the next figure. Refer to the block diagram at SASroot level for an alternative depiction. See cansas1d.xml for an example XML file.

block diagram at SASroot level

block diagrams

There are block diagrams available to describe the standard:


required XML file header

<?xml version="1.0"?>
<SASroot version="1.0"
	xmlns="http://www.smallangles.net/cansas1d"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.smallangles.net/cansas1d/ 
	                    http://www.smallangles.net/cansas1d/1.0/cansas1d.xsd"
	>

alternative XML file header (referencing a stylesheet)

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="example.xsl" ?>
<SASroot version="1.0"
	xmlns="http://www.smallangles.net/cansas1d"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.smallangles.net/cansas1d/ 
	                    http://www.smallangles.net/cansas1d/1.0/cansas1d.xsd"
	>

XML layout for multiple experiments

Each experiment is described with a single SASentry element. The brief example below shows how multiple experiments can be included in a single XML file. (For the sake of brevity, the data for each experiment has been omitted from the example below.)

<?xml version="1.0"?>
<SASroot version="1.0"
	xmlns="http://www.smallangles.net/cansas1d"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.smallangles.net/cansas1d/ 
	                    http://www.smallangles.net/cansas1d/1.0/cansas1d.xsd"
	>
  <SASentry name="071121.dat#S22">
    <!-- contents of the first experiment in the file go here -->
  </SASentry>
  <SASentry name="name attribute is optional">
    <!-- any number of additional experiments can be included, as desired -->
  </SASentry>
</SASroot>


Definition of terms

See cansas1d_definition_of_terms for the complete list of terms (XML elements and XML attributes) in the canSAS 1-D standard.

Rules

definition of Q geometry for small-angle scattering
definition of translation and orientation geometry
  1. Q=(4 π / λ) sin(θ)
    where λ is the wavelength of the radiation and 2θ is the angle through which the detected radiation has been scattered.
  2. units to be given in standard SI abbreviations (eg, m, cm, mm, nm, K) with the following exceptions:
    1. um=micrometres
    2. C=celsius
    3. A=Angstroms
    4. percent=%.
    5. fraction
    6. a.u.=arbitrary units
    7. none=no units are relevant (such as dimensionless)
  3. where reciprocal units need to be quoted the format shall be "1/abbreviation"
  4. Unicode characters MUST NOT be used
  5. axes:
    1. z is along the flight path (positive value in the direction of the detector)
    2. x is orthogonal to z in the horizontal plane (positive values increase to the right when viewed towards the incoming radiation)
    3. y is orthogonal to z and x in the vertical plane (positive values increase upwards)
  6. orientation (angles):
    1. roll is about z
    2. pitch is about x
    3. yaw is about y

Note: translation and orientation geometry used by canSAS are consistent with:

  1. http://en.wikipedia.org/wiki/Cartesian_coordinate_system
  2. http://en.wikipedia.org/wiki/Right-hand_rule
  3. http://webhost5.nts.jhu.edu/reza/book/kinematics/kinematics.htm

Validation of XML against the Schema

  1. open browser to: http://www.xmlvalidation.com/
  2. paste content of candidate XML file (with reference in the header to the XML Schema as shown above) into the form
  3. press <validate>
  4. paste content of cansas1d.xsd XSD file into form and press <continue validation>
  5. check the results