<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.cansas.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=122.104.184.195</id>
	<title>canSAS - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.cansas.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=122.104.184.195"/>
	<link rel="alternate" type="text/html" href="https://wiki.cansas.org/index.php?title=Special:Contributions/122.104.184.195"/>
	<updated>2026-05-06T16:57:26Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.4</generator>
	<entry>
		<id>https://wiki.cansas.org/index.php?title=cansas1d_documentation&amp;diff=413</id>
		<title>cansas1d documentation</title>
		<link rel="alternate" type="text/html" href="https://wiki.cansas.org/index.php?title=cansas1d_documentation&amp;diff=413"/>
		<updated>2008-05-12T22:05:12Z</updated>

		<summary type="html">&lt;p&gt;122.104.184.195: /* Usage Notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Disclaimer =&lt;br /&gt;
&lt;br /&gt;
This description is meant to inform the community how to layout&lt;br /&gt;
the information within the XML files.  However, should the&lt;br /&gt;
information in this document and the [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xsd cansas1d/1.0 SAS XML Schema]&lt;br /&gt;
differ, the XML Schema will be deemed to have the most correct description&lt;br /&gt;
of the standard.&lt;br /&gt;
&lt;br /&gt;
= General Layout of the XML Data =&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
[[Image:cansas1d-v1-10-minimum.png|thumb|block diagram of minimum elements required for cansas1d/1.0 standard]]&lt;br /&gt;
&lt;br /&gt;
The basic elements of the cansas1d/1.0 standard are shown in the following table.&lt;br /&gt;
After an XML header, the root element of the file is [[cansas1d_SASroot | SASroot]] which &lt;br /&gt;
contains one or more [[cansas1d_SASentry | SASentry]] elements, each of which describes&lt;br /&gt;
a single experiment (data set, time-slice, step in a series, new &lt;br /&gt;
sample, etc.).  Details of the [[cansas1d_SASentry | SASentry]] element are also&lt;br /&gt;
shown in the next figure.  Refer to the [[cansas1d_block_diagrams | block diagrams]] &lt;br /&gt;
for alternative depictions.  See [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xml cansas1d.xml] for an example XML file.&lt;br /&gt;
Examples, Case Studies, and other background information are below.  More discussion can be found on the [[1D_Data_Formats_Working_Group|canSAS 1D Data Formats Working Group]] page and its [[Talk:1D_Data_Formats_Working_Group|discussion]] page.  Details about &lt;br /&gt;
each specific field (XPath string, XML elements and attributes) are described &lt;br /&gt;
on the [[cansas1d_definition_of_terms]] page.&lt;br /&gt;
&lt;br /&gt;
* [[cansas1d_SASroot | &#039;&#039;&#039;SASroot&#039;&#039;&#039;: the root element of the file (after the XML header)]]&lt;br /&gt;
* [[cansas1d_SASentry | &#039;&#039;&#039;SASentry&#039;&#039;&#039;: describes a single experiment (data set, time-slice, step in a series, new sample, etc.)]]&lt;br /&gt;
* [[cansas1d_block_diagrams | block diagrams]]&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xml cansas1d.xml] example XML file&lt;br /&gt;
* discussion of this format: [[1D_Data_Formats_Working_Group | basic]] [[Talk:1D_Data_Formats_Working_Group | more]]&lt;br /&gt;
* [[# Help_for_XML | Seek outside help for XML]]&lt;br /&gt;
* [[cansas1d_definition_of_terms | &#039;&#039;&#039;Definition of terms&#039;&#039;&#039;: Details about each specific field (XPath string, XML elements and attributes)]]&lt;br /&gt;
&lt;br /&gt;
=== Basic elements of the cansas1d/1.0 standard ===&lt;br /&gt;
&lt;br /&gt;
{| &lt;br /&gt;
|-&lt;br /&gt;
! {{Headcellstyle}} | element&lt;br /&gt;
|| &amp;amp;nbsp;&lt;br /&gt;
! {{Headcellstyle}} | description&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
[[cansas1d_XML_header | XML header]]&lt;br /&gt;
||&lt;br /&gt;
||descriptive info required at the start of every XML file&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:[[cansas1d_SASroot | SASroot]]&lt;br /&gt;
||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::[[cansas1d_SASentry | SASentry]]&lt;br /&gt;
||&lt;br /&gt;
||data set, time-slice, step in a series, new sample, etc.&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::Title&lt;br /&gt;
||&lt;br /&gt;
||for this particular SASentry&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::Run&lt;br /&gt;
||&lt;br /&gt;
||run number or ID number of experiment&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_any | {any}]]&lt;br /&gt;
||&lt;br /&gt;
||any non-cansas1d/1.0 element can be used at this point&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASdata | SASdata]]&lt;br /&gt;
||&lt;br /&gt;
||this is where the reduced 1-D SAS data is stored&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::::[[cansas1d_SASdata | Idata]]&lt;br /&gt;
||&lt;br /&gt;
||a single data point in the dataset&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_any | {any}]]&lt;br /&gt;
||&lt;br /&gt;
||any non-cansas1d/1.0 element can be used at this point&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASsample | SASsample]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the sample&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASinstrument | SASinstrument]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the instrument&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::::[[cansas1d_SASsource | SASsource]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the source&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::::[[cansas1d_SAScollimation | SAScollimation]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the collimation&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::::[[cansas1d_SASdetector | SASdetector]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the detector&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASprocess | SASprocess]]&lt;br /&gt;
||&lt;br /&gt;
||for each processing or analysis step&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASnote | SASnote]]&lt;br /&gt;
||&lt;br /&gt;
||anything at all&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Required XML file header ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;?xml-stylesheet type=&amp;quot;text/xsl&amp;quot; href=&amp;quot;example.xsl&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;SASroot version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
    xmlns=&amp;quot;cansas1d/1.0&amp;quot;&lt;br /&gt;
    xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&lt;br /&gt;
    xsi:schemaLocation=&amp;quot;cansas1d/1.0 http://svn.smallangles.net/svn/canSAS/1dwg/trunk/cansas1d.xsd&amp;quot;&lt;br /&gt;
    &amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Rules ==&lt;br /&gt;
&lt;br /&gt;
[[Image:Q-geometry.jpg|thumb|definition of Q geometry for small-angle scattering]]&lt;br /&gt;
&lt;br /&gt;
[[Image:Translation-orientation-geometry-2.jpg|thumb|definition of translation and orientation geometry]]&lt;br /&gt;
&lt;br /&gt;
# canSAS1d/1.0 XML data files will adhere to the standard if they can successfully [[cansas1d_documentation#Validation_of_XML_against_the_Schema | validate]] against the established XML Schema ([http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xsd cansas1d.xsd])&lt;br /&gt;
# Q=(4 &amp;amp;pi; / &amp;amp;lambda;) sin(&amp;amp;theta;) &amp;lt;br&amp;gt; where &amp;amp;lambda; is the wavelength of the radiation and 2&amp;amp;theta; is the angle through which the detected radiation has been scattered.&lt;br /&gt;
# units to be given in standard SI abbreviations (eg, m, cm, mm, nm, K) with the following exceptions: &lt;br /&gt;
##um=micrometres&lt;br /&gt;
##C=celsius&lt;br /&gt;
##A=Angstroms&lt;br /&gt;
##percent=%.&lt;br /&gt;
##fraction&lt;br /&gt;
##a.u.=arbitrary units&lt;br /&gt;
##none=no units are relevant (such as dimensionless)&lt;br /&gt;
# where reciprocal units need to be quoted the format shall be &amp;quot;1/abbreviation&amp;quot;&lt;br /&gt;
# when raised to a power, use similar to &amp;quot;A^3&amp;quot; or &amp;quot;1/m^4&amp;quot; (and not &amp;quot;A3&amp;quot; or &amp;quot;m-4&amp;quot;)&lt;br /&gt;
# axes:&lt;br /&gt;
##z is along the flight path (positive value in the direction of the detector)&lt;br /&gt;
##x is orthogonal to z in the horizontal plane (positive values increase to the right when viewed towards the incoming radiation)&lt;br /&gt;
##y is orthogonal to z and x in the vertical plane (positive values increase upwards)&lt;br /&gt;
#orientation (angles): &lt;br /&gt;
##roll is about z&lt;br /&gt;
##pitch is about x&lt;br /&gt;
##yaw is about y&lt;br /&gt;
# Unicode characters MUST NOT be used&lt;br /&gt;
# Binary data is not supported&lt;br /&gt;
&lt;br /&gt;
=== Compatibility of Geometry Definitions ===&lt;br /&gt;
&lt;br /&gt;
Note:  translation and orientation geometry used by canSAS are consistent with:&lt;br /&gt;
#http://en.wikipedia.org/wiki/Cartesian_coordinate_system&lt;br /&gt;
#http://en.wikipedia.org/wiki/Right-hand_rule&lt;br /&gt;
#http://www.nexusformat.org/Coordinate_Systems&lt;br /&gt;
#http://mcstas.risoe.dk/documentation/tutorial/node6.html&lt;br /&gt;
#http://webhost5.nts.jhu.edu/reza/book/kinematics/kinematics.htm&lt;br /&gt;
&lt;br /&gt;
The translation and orientation geometry definitions used &lt;br /&gt;
here are different than those used by&lt;br /&gt;
&#039;&#039;&#039;SHADOW&#039;&#039;&#039; ([http://www.nanotech.wisc.edu/shadow/ http://www.nanotech.wisc.edu/shadow/]) &lt;br /&gt;
where the &#039;&#039;y&#039;&#039; and &#039;&#039;z&#039;&#039; axes are swapped &lt;br /&gt;
and the direction of &#039;&#039;x&#039;&#039; is changed.&lt;br /&gt;
&lt;br /&gt;
= Documentation and Definitions =&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Documentation&#039;&#039;&#039;: [[cansas1d_documentation]]  (this page)&lt;br /&gt;
* &#039;&#039;&#039;Definitions&#039;&#039;&#039;:   [[cansas1d_definition_of_terms]]&lt;br /&gt;
* &#039;&#039;&#039;Block diagrams&#039;&#039;&#039;: [[cansas1d_block_diagrams]]&lt;br /&gt;
&lt;br /&gt;
== XML Schema ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;XML Schema&#039;&#039;&#039;: The [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xsd cansas1d.xsd] [http://www.w3schools.com/xsd XML Schema] defines the rules for the XML file format ([http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xsd TRAC], [http://svn.smallangles.net/svn/canSAS/1dwg/trunk/cansas1d.xsd SVN]) and is used to validate&lt;br /&gt;
any XML file for adherence to the format.&lt;br /&gt;
&lt;br /&gt;
== XML Stylesheets ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;example.xsl&#039;&#039;&#039;: [http://www.w3schools.com/xsl/ XSLT stylesheets] can be used to extract metadata or to convert into another file format.  The default canSAS stylesheet [[http://svn.smallangles.net/svn/canSAS/1dwg/trunk/example.xsl | example.xsl]] should be copied into the each folder with canSAS XML data file(s).   It can be used to display the data in a supporting WWW browser (such as Firefox or Internet Explorer) or to import into Microsoft Excel (with the added XML support in Excel).   By default, MS Windows binds &#039;&#039;&#039;*.xml&#039;&#039;&#039; files to start Internet Explorer.  Double-clicking on a canSAS XML data file with the [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/example.xsl &#039;&#039;&#039;example.xsl&#039;&#039;&#039;] stylesheet in the same directory will produce a WWW page with the SAS data and selected metadata.&lt;br /&gt;
&lt;br /&gt;
== Examples and Case Studies ==&lt;br /&gt;
&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xml cansas1d.xml] basic example: Note that, for clarity, only one row of data is shown.  This is probably a very good example to use as a starting point for creating XML files with a text editor.&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/bimodal-test1.xml bimodal-test1.xml]: Simulated SAS data to test size distribution calculation routines.&lt;br /&gt;
* [[cansas1d_casestudy_collagen | dry chick collagen]]: illustrates the minimum information necessary to meet the requirements of the standard format&lt;br /&gt;
* [[cansas1d_casestudy_af1410 | AF1410 steel]]: SANS study using magnetic contrast variation (with multiple samples and multiple data sets for each sample), the files can be viewed from TRAC (no description yet):  [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/examples/af1410/ http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/examples/af1410/]&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d-template.xml cansas1d-template.xml]: This is used to test all the rules in the XML Schema.  This is probably not a very good example to use as a starting point for creating XML files with a text editor since it tests many of the special-case rules.&lt;br /&gt;
&lt;br /&gt;
=== XML layout for multiple experiments ===&lt;br /&gt;
&lt;br /&gt;
Each experiment is described with a single &#039;&#039;&#039;SASentry&#039;&#039;&#039; element.&lt;br /&gt;
The fragment below shows how multiple experiments can be included &lt;br /&gt;
in a single XML file.  Full examples of canSAS XML files with multiple experiments include:&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/W1W2.XML ISIS LOQ SANS instrument]&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cs_af1410.xml NIST SANS data]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;?xml-stylesheet type=&amp;quot;text/xsl&amp;quot; href=&amp;quot;example.xsl&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;SASroot version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
    xmlns=&amp;quot;cansas1d/1.0&amp;quot;&lt;br /&gt;
    xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&lt;br /&gt;
    xsi:schemaLocation=&amp;quot;cansas1d/1.0 http://svn.smallangles.net/svn/canSAS/1dwg/trunk/cansas1d.xsd&amp;quot;&lt;br /&gt;
    &amp;gt;&lt;br /&gt;
  &amp;lt;SASentry name=&amp;quot;071121.dat#S22&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;!-- contents of the first experiment in the file go here --&amp;gt;&lt;br /&gt;
  &amp;lt;/SASentry&amp;gt;&lt;br /&gt;
  &amp;lt;SASentry name=&amp;quot;example temperature series&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;!-- example with two SAS data sets related to the same sample --&amp;gt;&lt;br /&gt;
    &amp;lt;Title&amp;gt;title of this series&amp;lt;/Title&amp;gt;&lt;br /&gt;
    &amp;lt;Run name=&amp;quot;run1&amp;quot;&amp;gt;42-001&amp;lt;/Run&amp;gt;&lt;br /&gt;
    &amp;lt;Run name=&amp;quot;run2&amp;quot;&amp;gt;42-002&amp;lt;/Run&amp;gt;&lt;br /&gt;
    &amp;lt;SASdata name=&amp;quot;run1&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;!-- data from 42-001 run comes here --&amp;gt;&lt;br /&gt;
    &amp;lt;/SASdata&amp;gt;&lt;br /&gt;
    &amp;lt;SASdata name=&amp;quot;run2&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;!-- data from 42-002 run comes here --&amp;gt;&lt;br /&gt;
    &amp;lt;/SASdata&amp;gt;&lt;br /&gt;
    &amp;lt;!-- other elements come here for this entry --&amp;gt;&lt;br /&gt;
  &amp;lt;/SASentry&amp;gt;&lt;br /&gt;
  &amp;lt;SASentry name=&amp;quot;other sample&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;!-- any number of additional experiments can be included, as desired --&amp;gt;&lt;br /&gt;
    &amp;lt;!-- SASentry elements in the same XML file do not have to be related --&amp;gt;&lt;br /&gt;
  &amp;lt;/SASentry&amp;gt;&lt;br /&gt;
&amp;lt;/SASroot&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Foreign Elements ==&lt;br /&gt;
&lt;br /&gt;
To allow for inclusion of elements that are not defined by the cansas1d.xsd XML Schema, &lt;br /&gt;
XML &#039;&#039;foreign elements&#039;&#039; are permitted at select locations in the cansas1d/1.0 format.&lt;br /&gt;
Please refer to the references (and others) [[#Help_for_XML | below]] for deeper discussions on foreign elements.&lt;br /&gt;
&lt;br /&gt;
An example of the use of foreign elements in the cansas1d/1.0 format is given by&lt;br /&gt;
* http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/xg009036_001.xml&lt;br /&gt;
&lt;br /&gt;
== Support tools for Visualization &amp;amp; Analysis software ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;(under development as of May 2008)&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== IgorPro ===&lt;br /&gt;
&lt;br /&gt;
An import/export tool for [http://www.wavemetrics.com/ IgorPro] has been created&lt;br /&gt;
([http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/IgorPro/cansasXML.ipf cansasXML.ipf]).&lt;br /&gt;
You can check out the &amp;lt;nowiki&amp;gt;IgorPro&amp;lt;/nowiki&amp;gt; working directory from the SVN server (see below).&lt;br /&gt;
&lt;br /&gt;
As of 2008-03-14, &lt;br /&gt;
* test suite of XML files developed&lt;br /&gt;
* the support can import the XML files into IgorPro&lt;br /&gt;
* Development of a GUI (to support the [http://usaxs.xor.aps.anl.gov/staff/ilavsky/irena.html Irena] package) has begun&lt;br /&gt;
* Development to add export capabilities (from IgorPro) back to the cansas1d/1.0 format has begun&lt;br /&gt;
&lt;br /&gt;
====Usage Notes====&lt;br /&gt;
#To use the canSASxml.ipf procedure you must have the XMLutils.XOP IGOR plugin installed.  This may be downloaded from the [http://www.igorexchange.com/project/XMLutils IgorExchange Project] site. There are installer executables contained in the download that will do all the installation for you.  They will place the XOP in the folder &#039;&#039;/User Procedures/motofit/XMLutils&#039;&#039;, and create a shortcut/alias to the plugin in /Igor Extensions.&lt;br /&gt;
Packages from other facilities should place the XOP there as well.&lt;br /&gt;
&lt;br /&gt;
== Software repositories ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;TRAC&#039;&#039;&#039;:       [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk]&lt;br /&gt;
* &#039;&#039;&#039;Subversion&#039;&#039;&#039;: [http://svn.smallangles.net/svn/canSAS/1dwg http://svn.smallangles.net/svn/canSAS/1dwg]  &amp;lt;br /&amp;gt;(&amp;lt;nowiki&amp;gt;svn checkout http://svn.smallangles.net/svn/canSAS/1dwg/trunk/ cansas-1dwg&amp;lt;/nowiki&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
= Validation of XML against the Schema =&lt;br /&gt;
# open browser to:   http://www.xmlvalidation.com/&lt;br /&gt;
# paste content of candidate XML file (with reference in the header to the XML Schema as shown above) into the form&lt;br /&gt;
# press &amp;lt;validate&amp;gt;&lt;br /&gt;
# paste content of [http://svn.smallangles.net/svn/canSAS/1dwg/trunk/cansas1d.xsd cansas1d.xsd] XSD file into form and press &amp;lt;continue validation&amp;gt;&lt;br /&gt;
# check the results&lt;br /&gt;
&lt;br /&gt;
= Help for XML =&lt;br /&gt;
; XML: EXtensible Markup Language &amp;lt;br /&amp;gt; http://www.w3schools.com/xml/ &amp;lt;br /&amp;gt; http://www.w3.org/XML/ &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XML &amp;lt;br /&amp;gt; http://www.zvon.org/xxl/XPathTutorial/General/examples.html&lt;br /&gt;
; XSL (or XSLT): EXtensible Stylesheet Language &amp;lt;br /&amp;gt; http://www.w3schools.com/xsl/ &amp;lt;br /&amp;gt; http://www.w3.org/Style/XSL/ &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/Extensible_Stylesheet_Language &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XSLT&lt;br /&gt;
; XPath: XPath is a language for finding information in an XML document. &amp;lt;br /&amp;gt; http://www.w3schools.com/xpath/ &amp;lt;br /&amp;gt; http://www.w3.org/Style/XSL/ &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XPath&lt;br /&gt;
; Schema: An XML Schema describes the structure of an XML document. &amp;lt;br /&amp;gt; http://www.w3schools.com/schema/ &amp;lt;br /&amp;gt; http://www.w3.org/XML/Schema &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XSD&lt;br /&gt;
; XML Namespaces: XML namespaces are used for providing uniquely named elements and attributes in an XML instance. &amp;lt;br /&amp;gt; http://www.zvon.org/xxl/NamespaceTutorial/Output &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XML_namespaces &amp;lt;br /&amp;gt; http://www.w3schools.com/XML/xml_namespaces.asp&lt;br /&gt;
; XML Foreign Elements: Inclusion of elements, at select locations, that are not defined by the cansas1d.xsd XML Schema &amp;lt;br /&amp;gt; http://books.xmlschemata.org/relaxng/relax-CHP-11-SECT-4.html &amp;lt;br /&amp;gt; http://www.w3.org/TR/SVG/extend.html &amp;lt;br /&amp;gt; http://www.google.com/search?q=XML+foreign+elements&lt;/div&gt;</summary>
		<author><name>122.104.184.195</name></author>
	</entry>
	<entry>
		<id>https://wiki.cansas.org/index.php?title=cansas1d_documentation&amp;diff=412</id>
		<title>cansas1d documentation</title>
		<link rel="alternate" type="text/html" href="https://wiki.cansas.org/index.php?title=cansas1d_documentation&amp;diff=412"/>
		<updated>2008-05-12T22:04:45Z</updated>

		<summary type="html">&lt;p&gt;122.104.184.195: /* Usage Notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Disclaimer =&lt;br /&gt;
&lt;br /&gt;
This description is meant to inform the community how to layout&lt;br /&gt;
the information within the XML files.  However, should the&lt;br /&gt;
information in this document and the [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xsd cansas1d/1.0 SAS XML Schema]&lt;br /&gt;
differ, the XML Schema will be deemed to have the most correct description&lt;br /&gt;
of the standard.&lt;br /&gt;
&lt;br /&gt;
= General Layout of the XML Data =&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
[[Image:cansas1d-v1-10-minimum.png|thumb|block diagram of minimum elements required for cansas1d/1.0 standard]]&lt;br /&gt;
&lt;br /&gt;
The basic elements of the cansas1d/1.0 standard are shown in the following table.&lt;br /&gt;
After an XML header, the root element of the file is [[cansas1d_SASroot | SASroot]] which &lt;br /&gt;
contains one or more [[cansas1d_SASentry | SASentry]] elements, each of which describes&lt;br /&gt;
a single experiment (data set, time-slice, step in a series, new &lt;br /&gt;
sample, etc.).  Details of the [[cansas1d_SASentry | SASentry]] element are also&lt;br /&gt;
shown in the next figure.  Refer to the [[cansas1d_block_diagrams | block diagrams]] &lt;br /&gt;
for alternative depictions.  See [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xml cansas1d.xml] for an example XML file.&lt;br /&gt;
Examples, Case Studies, and other background information are below.  More discussion can be found on the [[1D_Data_Formats_Working_Group|canSAS 1D Data Formats Working Group]] page and its [[Talk:1D_Data_Formats_Working_Group|discussion]] page.  Details about &lt;br /&gt;
each specific field (XPath string, XML elements and attributes) are described &lt;br /&gt;
on the [[cansas1d_definition_of_terms]] page.&lt;br /&gt;
&lt;br /&gt;
* [[cansas1d_SASroot | &#039;&#039;&#039;SASroot&#039;&#039;&#039;: the root element of the file (after the XML header)]]&lt;br /&gt;
* [[cansas1d_SASentry | &#039;&#039;&#039;SASentry&#039;&#039;&#039;: describes a single experiment (data set, time-slice, step in a series, new sample, etc.)]]&lt;br /&gt;
* [[cansas1d_block_diagrams | block diagrams]]&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xml cansas1d.xml] example XML file&lt;br /&gt;
* discussion of this format: [[1D_Data_Formats_Working_Group | basic]] [[Talk:1D_Data_Formats_Working_Group | more]]&lt;br /&gt;
* [[# Help_for_XML | Seek outside help for XML]]&lt;br /&gt;
* [[cansas1d_definition_of_terms | &#039;&#039;&#039;Definition of terms&#039;&#039;&#039;: Details about each specific field (XPath string, XML elements and attributes)]]&lt;br /&gt;
&lt;br /&gt;
=== Basic elements of the cansas1d/1.0 standard ===&lt;br /&gt;
&lt;br /&gt;
{| &lt;br /&gt;
|-&lt;br /&gt;
! {{Headcellstyle}} | element&lt;br /&gt;
|| &amp;amp;nbsp;&lt;br /&gt;
! {{Headcellstyle}} | description&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
[[cansas1d_XML_header | XML header]]&lt;br /&gt;
||&lt;br /&gt;
||descriptive info required at the start of every XML file&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:[[cansas1d_SASroot | SASroot]]&lt;br /&gt;
||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::[[cansas1d_SASentry | SASentry]]&lt;br /&gt;
||&lt;br /&gt;
||data set, time-slice, step in a series, new sample, etc.&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::Title&lt;br /&gt;
||&lt;br /&gt;
||for this particular SASentry&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::Run&lt;br /&gt;
||&lt;br /&gt;
||run number or ID number of experiment&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_any | {any}]]&lt;br /&gt;
||&lt;br /&gt;
||any non-cansas1d/1.0 element can be used at this point&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASdata | SASdata]]&lt;br /&gt;
||&lt;br /&gt;
||this is where the reduced 1-D SAS data is stored&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::::[[cansas1d_SASdata | Idata]]&lt;br /&gt;
||&lt;br /&gt;
||a single data point in the dataset&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_any | {any}]]&lt;br /&gt;
||&lt;br /&gt;
||any non-cansas1d/1.0 element can be used at this point&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASsample | SASsample]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the sample&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASinstrument | SASinstrument]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the instrument&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::::[[cansas1d_SASsource | SASsource]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the source&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::::[[cansas1d_SAScollimation | SAScollimation]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the collimation&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::::[[cansas1d_SASdetector | SASdetector]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the detector&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASprocess | SASprocess]]&lt;br /&gt;
||&lt;br /&gt;
||for each processing or analysis step&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASnote | SASnote]]&lt;br /&gt;
||&lt;br /&gt;
||anything at all&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Required XML file header ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;?xml-stylesheet type=&amp;quot;text/xsl&amp;quot; href=&amp;quot;example.xsl&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;SASroot version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
    xmlns=&amp;quot;cansas1d/1.0&amp;quot;&lt;br /&gt;
    xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&lt;br /&gt;
    xsi:schemaLocation=&amp;quot;cansas1d/1.0 http://svn.smallangles.net/svn/canSAS/1dwg/trunk/cansas1d.xsd&amp;quot;&lt;br /&gt;
    &amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Rules ==&lt;br /&gt;
&lt;br /&gt;
[[Image:Q-geometry.jpg|thumb|definition of Q geometry for small-angle scattering]]&lt;br /&gt;
&lt;br /&gt;
[[Image:Translation-orientation-geometry-2.jpg|thumb|definition of translation and orientation geometry]]&lt;br /&gt;
&lt;br /&gt;
# canSAS1d/1.0 XML data files will adhere to the standard if they can successfully [[cansas1d_documentation#Validation_of_XML_against_the_Schema | validate]] against the established XML Schema ([http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xsd cansas1d.xsd])&lt;br /&gt;
# Q=(4 &amp;amp;pi; / &amp;amp;lambda;) sin(&amp;amp;theta;) &amp;lt;br&amp;gt; where &amp;amp;lambda; is the wavelength of the radiation and 2&amp;amp;theta; is the angle through which the detected radiation has been scattered.&lt;br /&gt;
# units to be given in standard SI abbreviations (eg, m, cm, mm, nm, K) with the following exceptions: &lt;br /&gt;
##um=micrometres&lt;br /&gt;
##C=celsius&lt;br /&gt;
##A=Angstroms&lt;br /&gt;
##percent=%.&lt;br /&gt;
##fraction&lt;br /&gt;
##a.u.=arbitrary units&lt;br /&gt;
##none=no units are relevant (such as dimensionless)&lt;br /&gt;
# where reciprocal units need to be quoted the format shall be &amp;quot;1/abbreviation&amp;quot;&lt;br /&gt;
# when raised to a power, use similar to &amp;quot;A^3&amp;quot; or &amp;quot;1/m^4&amp;quot; (and not &amp;quot;A3&amp;quot; or &amp;quot;m-4&amp;quot;)&lt;br /&gt;
# axes:&lt;br /&gt;
##z is along the flight path (positive value in the direction of the detector)&lt;br /&gt;
##x is orthogonal to z in the horizontal plane (positive values increase to the right when viewed towards the incoming radiation)&lt;br /&gt;
##y is orthogonal to z and x in the vertical plane (positive values increase upwards)&lt;br /&gt;
#orientation (angles): &lt;br /&gt;
##roll is about z&lt;br /&gt;
##pitch is about x&lt;br /&gt;
##yaw is about y&lt;br /&gt;
# Unicode characters MUST NOT be used&lt;br /&gt;
# Binary data is not supported&lt;br /&gt;
&lt;br /&gt;
=== Compatibility of Geometry Definitions ===&lt;br /&gt;
&lt;br /&gt;
Note:  translation and orientation geometry used by canSAS are consistent with:&lt;br /&gt;
#http://en.wikipedia.org/wiki/Cartesian_coordinate_system&lt;br /&gt;
#http://en.wikipedia.org/wiki/Right-hand_rule&lt;br /&gt;
#http://www.nexusformat.org/Coordinate_Systems&lt;br /&gt;
#http://mcstas.risoe.dk/documentation/tutorial/node6.html&lt;br /&gt;
#http://webhost5.nts.jhu.edu/reza/book/kinematics/kinematics.htm&lt;br /&gt;
&lt;br /&gt;
The translation and orientation geometry definitions used &lt;br /&gt;
here are different than those used by&lt;br /&gt;
&#039;&#039;&#039;SHADOW&#039;&#039;&#039; ([http://www.nanotech.wisc.edu/shadow/ http://www.nanotech.wisc.edu/shadow/]) &lt;br /&gt;
where the &#039;&#039;y&#039;&#039; and &#039;&#039;z&#039;&#039; axes are swapped &lt;br /&gt;
and the direction of &#039;&#039;x&#039;&#039; is changed.&lt;br /&gt;
&lt;br /&gt;
= Documentation and Definitions =&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Documentation&#039;&#039;&#039;: [[cansas1d_documentation]]  (this page)&lt;br /&gt;
* &#039;&#039;&#039;Definitions&#039;&#039;&#039;:   [[cansas1d_definition_of_terms]]&lt;br /&gt;
* &#039;&#039;&#039;Block diagrams&#039;&#039;&#039;: [[cansas1d_block_diagrams]]&lt;br /&gt;
&lt;br /&gt;
== XML Schema ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;XML Schema&#039;&#039;&#039;: The [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xsd cansas1d.xsd] [http://www.w3schools.com/xsd XML Schema] defines the rules for the XML file format ([http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xsd TRAC], [http://svn.smallangles.net/svn/canSAS/1dwg/trunk/cansas1d.xsd SVN]) and is used to validate&lt;br /&gt;
any XML file for adherence to the format.&lt;br /&gt;
&lt;br /&gt;
== XML Stylesheets ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;example.xsl&#039;&#039;&#039;: [http://www.w3schools.com/xsl/ XSLT stylesheets] can be used to extract metadata or to convert into another file format.  The default canSAS stylesheet [[http://svn.smallangles.net/svn/canSAS/1dwg/trunk/example.xsl | example.xsl]] should be copied into the each folder with canSAS XML data file(s).   It can be used to display the data in a supporting WWW browser (such as Firefox or Internet Explorer) or to import into Microsoft Excel (with the added XML support in Excel).   By default, MS Windows binds &#039;&#039;&#039;*.xml&#039;&#039;&#039; files to start Internet Explorer.  Double-clicking on a canSAS XML data file with the [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/example.xsl &#039;&#039;&#039;example.xsl&#039;&#039;&#039;] stylesheet in the same directory will produce a WWW page with the SAS data and selected metadata.&lt;br /&gt;
&lt;br /&gt;
== Examples and Case Studies ==&lt;br /&gt;
&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xml cansas1d.xml] basic example: Note that, for clarity, only one row of data is shown.  This is probably a very good example to use as a starting point for creating XML files with a text editor.&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/bimodal-test1.xml bimodal-test1.xml]: Simulated SAS data to test size distribution calculation routines.&lt;br /&gt;
* [[cansas1d_casestudy_collagen | dry chick collagen]]: illustrates the minimum information necessary to meet the requirements of the standard format&lt;br /&gt;
* [[cansas1d_casestudy_af1410 | AF1410 steel]]: SANS study using magnetic contrast variation (with multiple samples and multiple data sets for each sample), the files can be viewed from TRAC (no description yet):  [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/examples/af1410/ http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/examples/af1410/]&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d-template.xml cansas1d-template.xml]: This is used to test all the rules in the XML Schema.  This is probably not a very good example to use as a starting point for creating XML files with a text editor since it tests many of the special-case rules.&lt;br /&gt;
&lt;br /&gt;
=== XML layout for multiple experiments ===&lt;br /&gt;
&lt;br /&gt;
Each experiment is described with a single &#039;&#039;&#039;SASentry&#039;&#039;&#039; element.&lt;br /&gt;
The fragment below shows how multiple experiments can be included &lt;br /&gt;
in a single XML file.  Full examples of canSAS XML files with multiple experiments include:&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/W1W2.XML ISIS LOQ SANS instrument]&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cs_af1410.xml NIST SANS data]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;?xml-stylesheet type=&amp;quot;text/xsl&amp;quot; href=&amp;quot;example.xsl&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;SASroot version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
    xmlns=&amp;quot;cansas1d/1.0&amp;quot;&lt;br /&gt;
    xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&lt;br /&gt;
    xsi:schemaLocation=&amp;quot;cansas1d/1.0 http://svn.smallangles.net/svn/canSAS/1dwg/trunk/cansas1d.xsd&amp;quot;&lt;br /&gt;
    &amp;gt;&lt;br /&gt;
  &amp;lt;SASentry name=&amp;quot;071121.dat#S22&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;!-- contents of the first experiment in the file go here --&amp;gt;&lt;br /&gt;
  &amp;lt;/SASentry&amp;gt;&lt;br /&gt;
  &amp;lt;SASentry name=&amp;quot;example temperature series&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;!-- example with two SAS data sets related to the same sample --&amp;gt;&lt;br /&gt;
    &amp;lt;Title&amp;gt;title of this series&amp;lt;/Title&amp;gt;&lt;br /&gt;
    &amp;lt;Run name=&amp;quot;run1&amp;quot;&amp;gt;42-001&amp;lt;/Run&amp;gt;&lt;br /&gt;
    &amp;lt;Run name=&amp;quot;run2&amp;quot;&amp;gt;42-002&amp;lt;/Run&amp;gt;&lt;br /&gt;
    &amp;lt;SASdata name=&amp;quot;run1&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;!-- data from 42-001 run comes here --&amp;gt;&lt;br /&gt;
    &amp;lt;/SASdata&amp;gt;&lt;br /&gt;
    &amp;lt;SASdata name=&amp;quot;run2&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;!-- data from 42-002 run comes here --&amp;gt;&lt;br /&gt;
    &amp;lt;/SASdata&amp;gt;&lt;br /&gt;
    &amp;lt;!-- other elements come here for this entry --&amp;gt;&lt;br /&gt;
  &amp;lt;/SASentry&amp;gt;&lt;br /&gt;
  &amp;lt;SASentry name=&amp;quot;other sample&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;!-- any number of additional experiments can be included, as desired --&amp;gt;&lt;br /&gt;
    &amp;lt;!-- SASentry elements in the same XML file do not have to be related --&amp;gt;&lt;br /&gt;
  &amp;lt;/SASentry&amp;gt;&lt;br /&gt;
&amp;lt;/SASroot&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Foreign Elements ==&lt;br /&gt;
&lt;br /&gt;
To allow for inclusion of elements that are not defined by the cansas1d.xsd XML Schema, &lt;br /&gt;
XML &#039;&#039;foreign elements&#039;&#039; are permitted at select locations in the cansas1d/1.0 format.&lt;br /&gt;
Please refer to the references (and others) [[#Help_for_XML | below]] for deeper discussions on foreign elements.&lt;br /&gt;
&lt;br /&gt;
An example of the use of foreign elements in the cansas1d/1.0 format is given by&lt;br /&gt;
* http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/xg009036_001.xml&lt;br /&gt;
&lt;br /&gt;
== Support tools for Visualization &amp;amp; Analysis software ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;(under development as of May 2008)&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== IgorPro ===&lt;br /&gt;
&lt;br /&gt;
An import/export tool for [http://www.wavemetrics.com/ IgorPro] has been created&lt;br /&gt;
([http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/IgorPro/cansasXML.ipf cansasXML.ipf]).&lt;br /&gt;
You can check out the &amp;lt;nowiki&amp;gt;IgorPro&amp;lt;/nowiki&amp;gt; working directory from the SVN server (see below).&lt;br /&gt;
&lt;br /&gt;
As of 2008-03-14, &lt;br /&gt;
* test suite of XML files developed&lt;br /&gt;
* the support can import the XML files into IgorPro&lt;br /&gt;
* Development of a GUI (to support the [http://usaxs.xor.aps.anl.gov/staff/ilavsky/irena.html Irena] package) has begun&lt;br /&gt;
* Development to add export capabilities (from IgorPro) back to the cansas1d/1.0 format has begun&lt;br /&gt;
&lt;br /&gt;
====Usage Notes====&lt;br /&gt;
#To use the canSASxml.ipf procedure you must have the XMLutils.XOP IGOR plugin installed.  This may be downloaded from the [http://www.igorexchange.com/project/XMLutils IgorExchange Project] site. There are installer executables contained in the download that will do all the installation for you.  They will place the XOP in the folder &#039;&#039;/User Procedures/motofit/XMLutils&#039;&#039;, and create a shortcut/alias to the plugin in /Igor Extension.&lt;br /&gt;
Packages from other facilities should place the XOP there as well.&lt;br /&gt;
&lt;br /&gt;
== Software repositories ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;TRAC&#039;&#039;&#039;:       [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk]&lt;br /&gt;
* &#039;&#039;&#039;Subversion&#039;&#039;&#039;: [http://svn.smallangles.net/svn/canSAS/1dwg http://svn.smallangles.net/svn/canSAS/1dwg]  &amp;lt;br /&amp;gt;(&amp;lt;nowiki&amp;gt;svn checkout http://svn.smallangles.net/svn/canSAS/1dwg/trunk/ cansas-1dwg&amp;lt;/nowiki&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
= Validation of XML against the Schema =&lt;br /&gt;
# open browser to:   http://www.xmlvalidation.com/&lt;br /&gt;
# paste content of candidate XML file (with reference in the header to the XML Schema as shown above) into the form&lt;br /&gt;
# press &amp;lt;validate&amp;gt;&lt;br /&gt;
# paste content of [http://svn.smallangles.net/svn/canSAS/1dwg/trunk/cansas1d.xsd cansas1d.xsd] XSD file into form and press &amp;lt;continue validation&amp;gt;&lt;br /&gt;
# check the results&lt;br /&gt;
&lt;br /&gt;
= Help for XML =&lt;br /&gt;
; XML: EXtensible Markup Language &amp;lt;br /&amp;gt; http://www.w3schools.com/xml/ &amp;lt;br /&amp;gt; http://www.w3.org/XML/ &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XML &amp;lt;br /&amp;gt; http://www.zvon.org/xxl/XPathTutorial/General/examples.html&lt;br /&gt;
; XSL (or XSLT): EXtensible Stylesheet Language &amp;lt;br /&amp;gt; http://www.w3schools.com/xsl/ &amp;lt;br /&amp;gt; http://www.w3.org/Style/XSL/ &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/Extensible_Stylesheet_Language &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XSLT&lt;br /&gt;
; XPath: XPath is a language for finding information in an XML document. &amp;lt;br /&amp;gt; http://www.w3schools.com/xpath/ &amp;lt;br /&amp;gt; http://www.w3.org/Style/XSL/ &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XPath&lt;br /&gt;
; Schema: An XML Schema describes the structure of an XML document. &amp;lt;br /&amp;gt; http://www.w3schools.com/schema/ &amp;lt;br /&amp;gt; http://www.w3.org/XML/Schema &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XSD&lt;br /&gt;
; XML Namespaces: XML namespaces are used for providing uniquely named elements and attributes in an XML instance. &amp;lt;br /&amp;gt; http://www.zvon.org/xxl/NamespaceTutorial/Output &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XML_namespaces &amp;lt;br /&amp;gt; http://www.w3schools.com/XML/xml_namespaces.asp&lt;br /&gt;
; XML Foreign Elements: Inclusion of elements, at select locations, that are not defined by the cansas1d.xsd XML Schema &amp;lt;br /&amp;gt; http://books.xmlschemata.org/relaxng/relax-CHP-11-SECT-4.html &amp;lt;br /&amp;gt; http://www.w3.org/TR/SVG/extend.html &amp;lt;br /&amp;gt; http://www.google.com/search?q=XML+foreign+elements&lt;/div&gt;</summary>
		<author><name>122.104.184.195</name></author>
	</entry>
	<entry>
		<id>https://wiki.cansas.org/index.php?title=cansas1d_documentation&amp;diff=411</id>
		<title>cansas1d documentation</title>
		<link rel="alternate" type="text/html" href="https://wiki.cansas.org/index.php?title=cansas1d_documentation&amp;diff=411"/>
		<updated>2008-05-12T22:03:59Z</updated>

		<summary type="html">&lt;p&gt;122.104.184.195: /* IgorPro */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Disclaimer =&lt;br /&gt;
&lt;br /&gt;
This description is meant to inform the community how to layout&lt;br /&gt;
the information within the XML files.  However, should the&lt;br /&gt;
information in this document and the [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xsd cansas1d/1.0 SAS XML Schema]&lt;br /&gt;
differ, the XML Schema will be deemed to have the most correct description&lt;br /&gt;
of the standard.&lt;br /&gt;
&lt;br /&gt;
= General Layout of the XML Data =&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
[[Image:cansas1d-v1-10-minimum.png|thumb|block diagram of minimum elements required for cansas1d/1.0 standard]]&lt;br /&gt;
&lt;br /&gt;
The basic elements of the cansas1d/1.0 standard are shown in the following table.&lt;br /&gt;
After an XML header, the root element of the file is [[cansas1d_SASroot | SASroot]] which &lt;br /&gt;
contains one or more [[cansas1d_SASentry | SASentry]] elements, each of which describes&lt;br /&gt;
a single experiment (data set, time-slice, step in a series, new &lt;br /&gt;
sample, etc.).  Details of the [[cansas1d_SASentry | SASentry]] element are also&lt;br /&gt;
shown in the next figure.  Refer to the [[cansas1d_block_diagrams | block diagrams]] &lt;br /&gt;
for alternative depictions.  See [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xml cansas1d.xml] for an example XML file.&lt;br /&gt;
Examples, Case Studies, and other background information are below.  More discussion can be found on the [[1D_Data_Formats_Working_Group|canSAS 1D Data Formats Working Group]] page and its [[Talk:1D_Data_Formats_Working_Group|discussion]] page.  Details about &lt;br /&gt;
each specific field (XPath string, XML elements and attributes) are described &lt;br /&gt;
on the [[cansas1d_definition_of_terms]] page.&lt;br /&gt;
&lt;br /&gt;
* [[cansas1d_SASroot | &#039;&#039;&#039;SASroot&#039;&#039;&#039;: the root element of the file (after the XML header)]]&lt;br /&gt;
* [[cansas1d_SASentry | &#039;&#039;&#039;SASentry&#039;&#039;&#039;: describes a single experiment (data set, time-slice, step in a series, new sample, etc.)]]&lt;br /&gt;
* [[cansas1d_block_diagrams | block diagrams]]&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xml cansas1d.xml] example XML file&lt;br /&gt;
* discussion of this format: [[1D_Data_Formats_Working_Group | basic]] [[Talk:1D_Data_Formats_Working_Group | more]]&lt;br /&gt;
* [[# Help_for_XML | Seek outside help for XML]]&lt;br /&gt;
* [[cansas1d_definition_of_terms | &#039;&#039;&#039;Definition of terms&#039;&#039;&#039;: Details about each specific field (XPath string, XML elements and attributes)]]&lt;br /&gt;
&lt;br /&gt;
=== Basic elements of the cansas1d/1.0 standard ===&lt;br /&gt;
&lt;br /&gt;
{| &lt;br /&gt;
|-&lt;br /&gt;
! {{Headcellstyle}} | element&lt;br /&gt;
|| &amp;amp;nbsp;&lt;br /&gt;
! {{Headcellstyle}} | description&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
[[cansas1d_XML_header | XML header]]&lt;br /&gt;
||&lt;br /&gt;
||descriptive info required at the start of every XML file&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:[[cansas1d_SASroot | SASroot]]&lt;br /&gt;
||&lt;br /&gt;
||&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::[[cansas1d_SASentry | SASentry]]&lt;br /&gt;
||&lt;br /&gt;
||data set, time-slice, step in a series, new sample, etc.&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::Title&lt;br /&gt;
||&lt;br /&gt;
||for this particular SASentry&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::Run&lt;br /&gt;
||&lt;br /&gt;
||run number or ID number of experiment&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_any | {any}]]&lt;br /&gt;
||&lt;br /&gt;
||any non-cansas1d/1.0 element can be used at this point&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASdata | SASdata]]&lt;br /&gt;
||&lt;br /&gt;
||this is where the reduced 1-D SAS data is stored&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::::[[cansas1d_SASdata | Idata]]&lt;br /&gt;
||&lt;br /&gt;
||a single data point in the dataset&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_any | {any}]]&lt;br /&gt;
||&lt;br /&gt;
||any non-cansas1d/1.0 element can be used at this point&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASsample | SASsample]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the sample&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASinstrument | SASinstrument]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the instrument&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::::[[cansas1d_SASsource | SASsource]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the source&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::::[[cansas1d_SAScollimation | SAScollimation]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the collimation&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
::::[[cansas1d_SASdetector | SASdetector]]&lt;br /&gt;
||&lt;br /&gt;
|| description of the detector&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASprocess | SASprocess]]&lt;br /&gt;
||&lt;br /&gt;
||for each processing or analysis step&lt;br /&gt;
|-&lt;br /&gt;
||&lt;br /&gt;
:::[[cansas1d_SASnote | SASnote]]&lt;br /&gt;
||&lt;br /&gt;
||anything at all&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Required XML file header ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;?xml-stylesheet type=&amp;quot;text/xsl&amp;quot; href=&amp;quot;example.xsl&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;SASroot version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
    xmlns=&amp;quot;cansas1d/1.0&amp;quot;&lt;br /&gt;
    xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&lt;br /&gt;
    xsi:schemaLocation=&amp;quot;cansas1d/1.0 http://svn.smallangles.net/svn/canSAS/1dwg/trunk/cansas1d.xsd&amp;quot;&lt;br /&gt;
    &amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Rules ==&lt;br /&gt;
&lt;br /&gt;
[[Image:Q-geometry.jpg|thumb|definition of Q geometry for small-angle scattering]]&lt;br /&gt;
&lt;br /&gt;
[[Image:Translation-orientation-geometry-2.jpg|thumb|definition of translation and orientation geometry]]&lt;br /&gt;
&lt;br /&gt;
# canSAS1d/1.0 XML data files will adhere to the standard if they can successfully [[cansas1d_documentation#Validation_of_XML_against_the_Schema | validate]] against the established XML Schema ([http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xsd cansas1d.xsd])&lt;br /&gt;
# Q=(4 &amp;amp;pi; / &amp;amp;lambda;) sin(&amp;amp;theta;) &amp;lt;br&amp;gt; where &amp;amp;lambda; is the wavelength of the radiation and 2&amp;amp;theta; is the angle through which the detected radiation has been scattered.&lt;br /&gt;
# units to be given in standard SI abbreviations (eg, m, cm, mm, nm, K) with the following exceptions: &lt;br /&gt;
##um=micrometres&lt;br /&gt;
##C=celsius&lt;br /&gt;
##A=Angstroms&lt;br /&gt;
##percent=%.&lt;br /&gt;
##fraction&lt;br /&gt;
##a.u.=arbitrary units&lt;br /&gt;
##none=no units are relevant (such as dimensionless)&lt;br /&gt;
# where reciprocal units need to be quoted the format shall be &amp;quot;1/abbreviation&amp;quot;&lt;br /&gt;
# when raised to a power, use similar to &amp;quot;A^3&amp;quot; or &amp;quot;1/m^4&amp;quot; (and not &amp;quot;A3&amp;quot; or &amp;quot;m-4&amp;quot;)&lt;br /&gt;
# axes:&lt;br /&gt;
##z is along the flight path (positive value in the direction of the detector)&lt;br /&gt;
##x is orthogonal to z in the horizontal plane (positive values increase to the right when viewed towards the incoming radiation)&lt;br /&gt;
##y is orthogonal to z and x in the vertical plane (positive values increase upwards)&lt;br /&gt;
#orientation (angles): &lt;br /&gt;
##roll is about z&lt;br /&gt;
##pitch is about x&lt;br /&gt;
##yaw is about y&lt;br /&gt;
# Unicode characters MUST NOT be used&lt;br /&gt;
# Binary data is not supported&lt;br /&gt;
&lt;br /&gt;
=== Compatibility of Geometry Definitions ===&lt;br /&gt;
&lt;br /&gt;
Note:  translation and orientation geometry used by canSAS are consistent with:&lt;br /&gt;
#http://en.wikipedia.org/wiki/Cartesian_coordinate_system&lt;br /&gt;
#http://en.wikipedia.org/wiki/Right-hand_rule&lt;br /&gt;
#http://www.nexusformat.org/Coordinate_Systems&lt;br /&gt;
#http://mcstas.risoe.dk/documentation/tutorial/node6.html&lt;br /&gt;
#http://webhost5.nts.jhu.edu/reza/book/kinematics/kinematics.htm&lt;br /&gt;
&lt;br /&gt;
The translation and orientation geometry definitions used &lt;br /&gt;
here are different than those used by&lt;br /&gt;
&#039;&#039;&#039;SHADOW&#039;&#039;&#039; ([http://www.nanotech.wisc.edu/shadow/ http://www.nanotech.wisc.edu/shadow/]) &lt;br /&gt;
where the &#039;&#039;y&#039;&#039; and &#039;&#039;z&#039;&#039; axes are swapped &lt;br /&gt;
and the direction of &#039;&#039;x&#039;&#039; is changed.&lt;br /&gt;
&lt;br /&gt;
= Documentation and Definitions =&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Documentation&#039;&#039;&#039;: [[cansas1d_documentation]]  (this page)&lt;br /&gt;
* &#039;&#039;&#039;Definitions&#039;&#039;&#039;:   [[cansas1d_definition_of_terms]]&lt;br /&gt;
* &#039;&#039;&#039;Block diagrams&#039;&#039;&#039;: [[cansas1d_block_diagrams]]&lt;br /&gt;
&lt;br /&gt;
== XML Schema ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;XML Schema&#039;&#039;&#039;: The [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xsd cansas1d.xsd] [http://www.w3schools.com/xsd XML Schema] defines the rules for the XML file format ([http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xsd TRAC], [http://svn.smallangles.net/svn/canSAS/1dwg/trunk/cansas1d.xsd SVN]) and is used to validate&lt;br /&gt;
any XML file for adherence to the format.&lt;br /&gt;
&lt;br /&gt;
== XML Stylesheets ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;example.xsl&#039;&#039;&#039;: [http://www.w3schools.com/xsl/ XSLT stylesheets] can be used to extract metadata or to convert into another file format.  The default canSAS stylesheet [[http://svn.smallangles.net/svn/canSAS/1dwg/trunk/example.xsl | example.xsl]] should be copied into the each folder with canSAS XML data file(s).   It can be used to display the data in a supporting WWW browser (such as Firefox or Internet Explorer) or to import into Microsoft Excel (with the added XML support in Excel).   By default, MS Windows binds &#039;&#039;&#039;*.xml&#039;&#039;&#039; files to start Internet Explorer.  Double-clicking on a canSAS XML data file with the [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/example.xsl &#039;&#039;&#039;example.xsl&#039;&#039;&#039;] stylesheet in the same directory will produce a WWW page with the SAS data and selected metadata.&lt;br /&gt;
&lt;br /&gt;
== Examples and Case Studies ==&lt;br /&gt;
&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d.xml cansas1d.xml] basic example: Note that, for clarity, only one row of data is shown.  This is probably a very good example to use as a starting point for creating XML files with a text editor.&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/bimodal-test1.xml bimodal-test1.xml]: Simulated SAS data to test size distribution calculation routines.&lt;br /&gt;
* [[cansas1d_casestudy_collagen | dry chick collagen]]: illustrates the minimum information necessary to meet the requirements of the standard format&lt;br /&gt;
* [[cansas1d_casestudy_af1410 | AF1410 steel]]: SANS study using magnetic contrast variation (with multiple samples and multiple data sets for each sample), the files can be viewed from TRAC (no description yet):  [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/examples/af1410/ http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/examples/af1410/]&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cansas1d-template.xml cansas1d-template.xml]: This is used to test all the rules in the XML Schema.  This is probably not a very good example to use as a starting point for creating XML files with a text editor since it tests many of the special-case rules.&lt;br /&gt;
&lt;br /&gt;
=== XML layout for multiple experiments ===&lt;br /&gt;
&lt;br /&gt;
Each experiment is described with a single &#039;&#039;&#039;SASentry&#039;&#039;&#039; element.&lt;br /&gt;
The fragment below shows how multiple experiments can be included &lt;br /&gt;
in a single XML file.  Full examples of canSAS XML files with multiple experiments include:&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/W1W2.XML ISIS LOQ SANS instrument]&lt;br /&gt;
* [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/cs_af1410.xml NIST SANS data]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;?xml-stylesheet type=&amp;quot;text/xsl&amp;quot; href=&amp;quot;example.xsl&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;SASroot version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
    xmlns=&amp;quot;cansas1d/1.0&amp;quot;&lt;br /&gt;
    xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&lt;br /&gt;
    xsi:schemaLocation=&amp;quot;cansas1d/1.0 http://svn.smallangles.net/svn/canSAS/1dwg/trunk/cansas1d.xsd&amp;quot;&lt;br /&gt;
    &amp;gt;&lt;br /&gt;
  &amp;lt;SASentry name=&amp;quot;071121.dat#S22&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;!-- contents of the first experiment in the file go here --&amp;gt;&lt;br /&gt;
  &amp;lt;/SASentry&amp;gt;&lt;br /&gt;
  &amp;lt;SASentry name=&amp;quot;example temperature series&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;!-- example with two SAS data sets related to the same sample --&amp;gt;&lt;br /&gt;
    &amp;lt;Title&amp;gt;title of this series&amp;lt;/Title&amp;gt;&lt;br /&gt;
    &amp;lt;Run name=&amp;quot;run1&amp;quot;&amp;gt;42-001&amp;lt;/Run&amp;gt;&lt;br /&gt;
    &amp;lt;Run name=&amp;quot;run2&amp;quot;&amp;gt;42-002&amp;lt;/Run&amp;gt;&lt;br /&gt;
    &amp;lt;SASdata name=&amp;quot;run1&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;!-- data from 42-001 run comes here --&amp;gt;&lt;br /&gt;
    &amp;lt;/SASdata&amp;gt;&lt;br /&gt;
    &amp;lt;SASdata name=&amp;quot;run2&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;!-- data from 42-002 run comes here --&amp;gt;&lt;br /&gt;
    &amp;lt;/SASdata&amp;gt;&lt;br /&gt;
    &amp;lt;!-- other elements come here for this entry --&amp;gt;&lt;br /&gt;
  &amp;lt;/SASentry&amp;gt;&lt;br /&gt;
  &amp;lt;SASentry name=&amp;quot;other sample&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;!-- any number of additional experiments can be included, as desired --&amp;gt;&lt;br /&gt;
    &amp;lt;!-- SASentry elements in the same XML file do not have to be related --&amp;gt;&lt;br /&gt;
  &amp;lt;/SASentry&amp;gt;&lt;br /&gt;
&amp;lt;/SASroot&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Foreign Elements ==&lt;br /&gt;
&lt;br /&gt;
To allow for inclusion of elements that are not defined by the cansas1d.xsd XML Schema, &lt;br /&gt;
XML &#039;&#039;foreign elements&#039;&#039; are permitted at select locations in the cansas1d/1.0 format.&lt;br /&gt;
Please refer to the references (and others) [[#Help_for_XML | below]] for deeper discussions on foreign elements.&lt;br /&gt;
&lt;br /&gt;
An example of the use of foreign elements in the cansas1d/1.0 format is given by&lt;br /&gt;
* http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/xg009036_001.xml&lt;br /&gt;
&lt;br /&gt;
== Support tools for Visualization &amp;amp; Analysis software ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;(under development as of May 2008)&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== IgorPro ===&lt;br /&gt;
&lt;br /&gt;
An import/export tool for [http://www.wavemetrics.com/ IgorPro] has been created&lt;br /&gt;
([http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk/IgorPro/cansasXML.ipf cansasXML.ipf]).&lt;br /&gt;
You can check out the &amp;lt;nowiki&amp;gt;IgorPro&amp;lt;/nowiki&amp;gt; working directory from the SVN server (see below).&lt;br /&gt;
&lt;br /&gt;
As of 2008-03-14, &lt;br /&gt;
* test suite of XML files developed&lt;br /&gt;
* the support can import the XML files into IgorPro&lt;br /&gt;
* Development of a GUI (to support the [http://usaxs.xor.aps.anl.gov/staff/ilavsky/irena.html Irena] package) has begun&lt;br /&gt;
* Development to add export capabilities (from IgorPro) back to the cansas1d/1.0 format has begun&lt;br /&gt;
&lt;br /&gt;
====Usage Notes====&lt;br /&gt;
#To use the canSASxml.ipf procedure you must have the XMLutils.XOP IGOR plugin installed.  This may be downloaded from the [http://www.igorexchange.com/project/XMLutils IgorExchange Project] site. There are installer executables contained in the download that will do all the installation for you.  They will place the XOP in the folder &#039;&#039;&#039;/User Procedures/motofit/XMLutil&#039;&#039;&#039;, and create a shortcut/alias to the plugin in /Igor Extension.&lt;br /&gt;
Packages from other facilities should place the XOP there as well.&lt;br /&gt;
&lt;br /&gt;
== Software repositories ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;TRAC&#039;&#039;&#039;:       [http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk http://svn.smallangles.net/trac/canSAS/browser/1dwg/trunk]&lt;br /&gt;
* &#039;&#039;&#039;Subversion&#039;&#039;&#039;: [http://svn.smallangles.net/svn/canSAS/1dwg http://svn.smallangles.net/svn/canSAS/1dwg]  &amp;lt;br /&amp;gt;(&amp;lt;nowiki&amp;gt;svn checkout http://svn.smallangles.net/svn/canSAS/1dwg/trunk/ cansas-1dwg&amp;lt;/nowiki&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
= Validation of XML against the Schema =&lt;br /&gt;
# open browser to:   http://www.xmlvalidation.com/&lt;br /&gt;
# paste content of candidate XML file (with reference in the header to the XML Schema as shown above) into the form&lt;br /&gt;
# press &amp;lt;validate&amp;gt;&lt;br /&gt;
# paste content of [http://svn.smallangles.net/svn/canSAS/1dwg/trunk/cansas1d.xsd cansas1d.xsd] XSD file into form and press &amp;lt;continue validation&amp;gt;&lt;br /&gt;
# check the results&lt;br /&gt;
&lt;br /&gt;
= Help for XML =&lt;br /&gt;
; XML: EXtensible Markup Language &amp;lt;br /&amp;gt; http://www.w3schools.com/xml/ &amp;lt;br /&amp;gt; http://www.w3.org/XML/ &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XML &amp;lt;br /&amp;gt; http://www.zvon.org/xxl/XPathTutorial/General/examples.html&lt;br /&gt;
; XSL (or XSLT): EXtensible Stylesheet Language &amp;lt;br /&amp;gt; http://www.w3schools.com/xsl/ &amp;lt;br /&amp;gt; http://www.w3.org/Style/XSL/ &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/Extensible_Stylesheet_Language &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XSLT&lt;br /&gt;
; XPath: XPath is a language for finding information in an XML document. &amp;lt;br /&amp;gt; http://www.w3schools.com/xpath/ &amp;lt;br /&amp;gt; http://www.w3.org/Style/XSL/ &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XPath&lt;br /&gt;
; Schema: An XML Schema describes the structure of an XML document. &amp;lt;br /&amp;gt; http://www.w3schools.com/schema/ &amp;lt;br /&amp;gt; http://www.w3.org/XML/Schema &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XSD&lt;br /&gt;
; XML Namespaces: XML namespaces are used for providing uniquely named elements and attributes in an XML instance. &amp;lt;br /&amp;gt; http://www.zvon.org/xxl/NamespaceTutorial/Output &amp;lt;br /&amp;gt; http://en.wikipedia.org/wiki/XML_namespaces &amp;lt;br /&amp;gt; http://www.w3schools.com/XML/xml_namespaces.asp&lt;br /&gt;
; XML Foreign Elements: Inclusion of elements, at select locations, that are not defined by the cansas1d.xsd XML Schema &amp;lt;br /&amp;gt; http://books.xmlschemata.org/relaxng/relax-CHP-11-SECT-4.html &amp;lt;br /&amp;gt; http://www.w3.org/TR/SVG/extend.html &amp;lt;br /&amp;gt; http://www.google.com/search?q=XML+foreign+elements&lt;/div&gt;</summary>
		<author><name>122.104.184.195</name></author>
	</entry>
</feed>