<!-- ************************************************** * dna_single_integrate.xsd * * Authors: The DNA posse, http://www.dna.ac.uk * Maintained by: G.Winter@dl.ac.uk * * An attempt to unscramble the mess which is * integration. * * * * Version: SId: dna_single_integrate.xsd,v 1.6 2003/03/03 16:54:53 gwin Exp S ************************************************** An example <?xml version="1.0"?> <single_integrate_response> <status> <code>ok</code> </status> <bin> <measured_spots_profile> <full> <signal>87440</signal> <noise>1322</noise> <signal_to_noise>62.8</signal_to_noise> <spot_count>25</spot_count> </full> <partial> <signal>52711</signal> <noise>715</noise> <signal_to_noise>54.2</signal_to_noise> <spot_count>409</spot_count> </partial> </measured_spots_profile> <resolution> <upper> <isotropic>3.60</isotropic> </upper> <lower> <isotropic>inf</isotropic> </lower> </resolution> <number>1</number> <measured_spots_summation> <full> <signal>83140</signal> <noise>1116</noise> <signal_to_noise>62.8</signal_to_noise> <spot_count>25</spot_count> </full> <partial> <signal>49771</signal> <noise>715</noise> <signal_to_noise>50.8</signal_to_noise> <spot_count>409</spot_count> </partial> </measured_spots_summation> </bin> ... et cetera ... </single_integrate_response> --> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:dna="http://www.dna.ac.uk/DNA_XMLSchema"> <xsd:include schemaLocation="dna_common.xsd"/> <xsd:complexType name="single_integrate_response"> <xsd:sequence> <xsd:element name="status" minOccurs="1" maxOccurs="1" type="status"/> <xsd:element name="spot_profile" minOccurs="0" maxOccurs="1" type="spot_profile"/> <xsd:element name="bin" minOccurs="1" maxOccurs="unbounded" type="integration_bin"/> </xsd:sequence> </xsd:complexType> <!-- next need to define the types which I use here --> <xsd:complexType name="spot_profile"> <xsd:sequence> <xsd:element name="width" minOccurs="1" maxOccurs="1" type="xsd:integer"/> <xsd:element name="height" minOccurs="1" maxOccurs="1" type="xsd:integer"/> <xsd:element name="profile" minOccurs="1" maxOccurs="1" type="xsd:string"/> <xsd:element name="mask" minOccurs="1" maxOccurs="1" type="xsd:string"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="integration_bin"> <xsd:sequence> <!-- this has type xsd:string to allow for bin number="overall" --> <xsd:element name="number" minOccurs="1" maxOccues="1" type="xsd:string"/> <xsd:element name="resolution" minOccurs="1" maxOccues="1" type="resolution_limits"/> <xsd:element name="measured_spots_profile" minOccurs="1" maxOccurs="1" type="measured_spot_summary"/> <xsd:element name="measured_spots_summation" minOccurs="1" maxOccurs="1" type="measured_spot_summary"/> </xsd:sequence> </xsd:complexType> <!-- this needs some interaction with Olof --> <xsd:complexType name="resolution_limits"> <xsd:sequence> <xsd:element name="lower" minOccurs="1" maxOccurs="1" type="resolution_limit"/> <xsd:element name="upper" minOccurs="1" maxOccurs="1" type="resolution_limit"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="resolution_limit"> <xsd:sequence> <!-- this type is "string" because we have to allow for Infinity --> <xsd:element name="isotropic" minOccurs="0" maxOccurs="1" type="xsd:string"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="measured_spot_summary"> <xsd:sequence> <xsd:element name="full" minOccurs="1" maxOccurs="1" type="spot_summary_element"/> <xsd:element name="partial" minOccurs="1" maxOccurs="1" type="spot_summary_element"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="spot_summary_element"> <xsd:sequence> <xsd:element name="spot_count" minOccurs="0" maxOccurs="1" type="xsd:integer"/> <xsd:element name="signal" minOccurs="1" maxOccurs="1" type="xsd:double"/> <xsd:element name="noise" minOccurs="1" maxOccurs="1" type="xsd:double"/> <xsd:element name="signal_to_noise" minOccurs="1" maxOccurs="1" type="xsd:double"/> </xsd:sequence> </xsd:complexType> </xsd:schema>