jalview 2.0 XML schema versions for backwards compatibility in future castor upgrades
[jalview.git] / schemas / vamsas.xsd
index 2143830..847c903 100755 (executable)
@@ -1,75 +1,91 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<!-- edited with XMLSpy v2006 sp1 U (http://www.altova.com) by ioh[ (o[ih[oh) -->\r
-<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:vamsas="www.vamsas.org" targetNamespace="www.vamsas.org" elementFormDefault="qualified" attributeFormDefault="unqualified">\r
-       <xs:complexType name="VAMSAS">\r
-               <xs:sequence>\r
-                       <xs:element name="Alignment" minOccurs="0" maxOccurs="unbounded">\r
-                               <xs:complexType>\r
-                                       <xs:sequence>\r
-                                               <xs:element name="Annotation" minOccurs="0">\r
-                                                       <xs:complexType>\r
-                                                               <xs:sequence>\r
-                                                                       <xs:element ref="vamsas:annotationElement" maxOccurs="unbounded"/>\r
-                                                                       <xs:element name="label" type="xs:string"/>\r
-                                                                       <xs:element name="description" type="xs:string"/>\r
-                                                               </xs:sequence>\r
-                                                               <xs:attribute name="graph" type="xs:boolean" use="required"/>\r
-                                                               <xs:attribute name="graphType" type="xs:int" use="optional"/>\r
-                                                       </xs:complexType>\r
-                                               </xs:element>\r
-                                               <xs:element ref="vamsas:SequenceSet"/>\r
-                                       </xs:sequence>\r
-                               </xs:complexType>\r
-                       </xs:element>\r
-                       <xs:element name="Tree" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
-                       <xs:element ref="vamsas:SequenceSet" minOccurs="0" maxOccurs="unbounded"/>\r
-               </xs:sequence>\r
-       </xs:complexType>\r
-       <xs:element name="SequenceSet">\r
-               <xs:complexType>\r
-                       <xs:sequence>\r
-                               <xs:element name="Sequence" type="vamsas:SequenceType" maxOccurs="unbounded"/>\r
-                               <xs:element name="Annotation" minOccurs="0" maxOccurs="unbounded">\r
-                                       <xs:complexType>\r
-                                               <xs:sequence>\r
-                                                       <xs:element name="description" type="xs:string" minOccurs="0"/>\r
-                                                       <xs:element name="status" type="xs:string" minOccurs="0"/>\r
-                                                       <xs:element ref="vamsas:annotationElement" minOccurs="0" maxOccurs="unbounded"/>\r
-                                               </xs:sequence>\r
-                                               <xs:attribute name="type" type="xs:string" use="required"/>\r
-                                               <xs:attribute name="end" type="xs:string" use="required"/>\r
-                                               <xs:attribute name="begin" type="xs:string" use="required"/>\r
-                                               <xs:attribute name="seqRef" type="xs:string" use="required"/>\r
-                                       </xs:complexType>\r
-                               </xs:element>\r
-                       </xs:sequence>\r
-                       <xs:attribute name="gapChar" type="xs:string" use="required"/>\r
-                       <xs:attribute name="aligned" type="xs:boolean" use="optional"/>\r
-               </xs:complexType>\r
-       </xs:element>\r
-       <xs:element name="annotationElement">\r
-               <xs:complexType>\r
-                       <xs:sequence>\r
-                               <xs:element name="displayCharacter" type="xs:string"/>\r
-                               <xs:element name="description" type="xs:string"/>\r
-                               <xs:element name="secondaryStructure">\r
-                                       <xs:simpleType>\r
-                                               <xs:restriction base="xs:string">\r
-                                                       <xs:length value="1"/>\r
-                                               </xs:restriction>\r
-                                       </xs:simpleType>\r
-                               </xs:element>\r
-                               <xs:element name="value" type="xs:float"/>\r
-                       </xs:sequence>\r
-                       <xs:attribute name="position" type="xs:int" use="required"/>\r
-               </xs:complexType>\r
-       </xs:element>\r
-       <xs:complexType name="SequenceType">\r
-               <xs:sequence>\r
-                       <xs:element name="sequence" type="xs:string"/>\r
-                       <xs:element name="name" type="xs:string"/>\r
-               </xs:sequence>\r
-               <xs:attribute name="id" type="xs:string"/>\r
-               <xs:attribute name="description" type="xs:string"/>\r
-       </xs:complexType>\r
-</xs:schema>\r
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- edited with XMLSpy v2006 sp1 U (http://www.altova.com) by ioh[ (o[ih[oh) -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:vamsas="www.vamsas.ac.uk/jalview/version2" targetNamespace="www.vamsas.ac.uk/jalview/version2" elementFormDefault="qualified" attributeFormDefault="unqualified">
+       <xs:complexType name="VAMSAS">
+               <xs:sequence>
+                       <xs:element name="Tree" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
+                       <xs:element ref="vamsas:SequenceSet" minOccurs="0" maxOccurs="unbounded"/>
+               </xs:sequence>
+       </xs:complexType>
+       <xs:element name="SequenceSet">
+               <xs:complexType>
+                       <xs:sequence>
+                               <xs:element name="Sequence" minOccurs="0" maxOccurs="unbounded">
+                                       <xs:complexType>
+                                               <xs:complexContent>
+                                                       <xs:extension base="vamsas:SequenceType">
+                                                               <xs:sequence>
+                                                                       <xs:element name="DBRef" minOccurs="0" maxOccurs="unbounded">
+                                                                               <xs:complexType>
+                                                                                       <xs:attribute name="source" type="xs:string"/>
+                                                                                       <xs:attribute name="version" type="xs:string"/>
+                                                                                       <xs:attribute name="accessionId" type="xs:string"/>
+                                                                               </xs:complexType>
+                                                                       </xs:element>
+                                                               </xs:sequence>
+                                                       </xs:extension>
+                                               </xs:complexContent>
+                                       </xs:complexType>
+                               </xs:element>
+                               <xs:element name="Annotation" minOccurs="0" maxOccurs="unbounded">
+                                       <xs:complexType>
+                                               <xs:sequence>
+                                                       <xs:element ref="vamsas:annotationElement" minOccurs="0" maxOccurs="unbounded"/>
+                                                       <xs:element name="label" type="xs:string"/>
+                                                       <xs:element name="description" type="xs:string" minOccurs="0"/>
+                                                       <xs:element name="thresholdLine" minOccurs="0">
+                                                               <xs:complexType>
+                                                                       <xs:attribute name="label" type="xs:string"/>
+                                                                       <xs:attribute name="value" type="xs:float"/>
+                                                                       <xs:attribute name="colour" type="xs:int"/>
+                                                               </xs:complexType>
+                                                       </xs:element>
+                                               </xs:sequence>
+                                               <xs:attribute name="graph" type="xs:boolean" use="required"/>
+                                               <xs:attribute name="graphType" type="xs:int" use="optional"/>
+                                               <xs:attribute name="sequenceRef" type="xs:string" use="optional"/>
+                                               <xs:attribute name="graphColour" type="xs:int" use="optional"/>
+                                               <xs:attribute name="graphGroup" type="xs:int" use="optional"/>
+                                               <xs:attribute name="id" type="xs:string" use="optional"/>
+                                               <xs:attribute name="scoreOnly" type="xs:boolean" use="optional" default="false"/>
+                                               <xs:attribute name="score" type="xs:double" use="optional"/>
+                                               <xs:attribute name="visible" type="xs:boolean" use="optional"/>
+                                       </xs:complexType>
+                               </xs:element>
+                               <xs:element name="sequenceSetProperties" minOccurs="0" maxOccurs="unbounded">
+                                       <xs:complexType>
+                                               <xs:attribute name="key" type="xs:string"/>
+                                               <xs:attribute name="value" type="xs:string"/>
+                                       </xs:complexType>
+                               </xs:element>
+                       </xs:sequence>
+                       <xs:attribute name="gapChar" type="xs:string" use="required"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:element name="annotationElement">
+               <xs:complexType>
+                       <xs:sequence>
+                               <xs:element name="displayCharacter" type="xs:string" minOccurs="0"/>
+                               <xs:element name="description" type="xs:string" minOccurs="0"/>
+                               <xs:element name="secondaryStructure" minOccurs="0">
+                                       <xs:simpleType>
+                                               <xs:restriction base="xs:string">
+                                                       <xs:length value="1"/>
+                                               </xs:restriction>
+                                       </xs:simpleType>
+                               </xs:element>
+                               <xs:element name="value" type="xs:float" minOccurs="0"/>
+                       </xs:sequence>
+                       <xs:attribute name="position" type="xs:int" use="required"/>
+                       <xs:attribute name="colour" type="xs:int" use="optional"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:complexType name="SequenceType">
+               <xs:sequence>
+                       <xs:element name="sequence" type="xs:string" minOccurs="0"/>
+                       <xs:element name="name" type="xs:string" minOccurs="0"/>
+               </xs:sequence>
+               <xs:attribute name="id" type="xs:string"/>
+               <xs:attribute name="description" type="xs:string"/>
+       </xs:complexType>
+</xs:schema>