graphColour, graphGroup, more relaxed annotation requirements
[jalview.git] / schemas / vamsas.xsd
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <!-- edited with XMLSpy v2006 sp1 U (http://www.altova.com) by ioh[ (o[ih[oh) -->\r
3 <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">\r
4         <xs:complexType name="VAMSAS">\r
5                 <xs:sequence>\r
6                         <xs:element name="Alignment" minOccurs="0" maxOccurs="unbounded">\r
7                                 <xs:complexType>\r
8                                         <xs:sequence>\r
9                                                 <xs:element name="Annotation" minOccurs="0">\r
10                                                         <xs:complexType>\r
11                                                                 <xs:sequence>\r
12                                                                         <xs:element ref="vamsas:annotationElement" minOccurs="0" maxOccurs="unbounded"/>\r
13                                                                         <xs:element name="label" type="xs:string"/>\r
14                                                                         <xs:element name="description" type="xs:string" minOccurs="0"/>\r
15                                                                         <xs:element name="thresholdLine" minOccurs="0">\r
16                                                                                 <xs:complexType>\r
17                                                                                         <xs:attribute name="label" type="xs:string"/>\r
18                                                                                         <xs:attribute name="value" type="xs:float"/>\r
19                                                                                         <xs:attribute name="colour" type="xs:int"/>\r
20                                                                                 </xs:complexType>\r
21                                                                         </xs:element>\r
22                                                                 </xs:sequence>\r
23                                                                 <xs:attribute name="graph" type="xs:boolean" use="required"/>\r
24                                                                 <xs:attribute name="graphType" type="xs:int" use="optional"/>\r
25                                                                 <xs:attribute name="sequenceRef" type="xs:string" use="optional"/>\r
26                                                                 <xs:attribute name="graphColour" type="xs:int" use="optional"/>\r
27                                                                 <xs:attribute name="graphGroup" type="xs:int" use="optional"/>\r
28                                                         </xs:complexType>\r
29                                                 </xs:element>\r
30                                                 <xs:element ref="vamsas:SequenceSet"/>\r
31                                         </xs:sequence>\r
32                                 </xs:complexType>\r
33                         </xs:element>\r
34                         <xs:element name="Tree" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>\r
35                         <xs:element ref="vamsas:SequenceSet" minOccurs="0" maxOccurs="unbounded"/>\r
36                 </xs:sequence>\r
37         </xs:complexType>\r
38         <xs:element name="SequenceSet">\r
39                 <xs:complexType>\r
40                         <xs:sequence>\r
41                                 <xs:element name="Sequence" type="vamsas:SequenceType" maxOccurs="unbounded"/>\r
42                                 <xs:element name="Annotation" minOccurs="0" maxOccurs="unbounded">\r
43                                         <xs:complexType>\r
44                                                 <xs:sequence>\r
45                                                         <xs:element name="description" type="xs:string" minOccurs="0"/>\r
46                                                         <xs:element name="status" type="xs:string" minOccurs="0"/>\r
47                                                         <xs:element ref="vamsas:annotationElement" minOccurs="0" maxOccurs="unbounded"/>\r
48                                                 </xs:sequence>\r
49                                                 <xs:attribute name="type" type="xs:string" use="required"/>\r
50                                                 <xs:attribute name="end" type="xs:string" use="required"/>\r
51                                                 <xs:attribute name="begin" type="xs:string" use="required"/>\r
52                                                 <xs:attribute name="seqRef" type="xs:string" use="required"/>\r
53                                         </xs:complexType>\r
54                                 </xs:element>\r
55                         </xs:sequence>\r
56                         <xs:attribute name="gapChar" type="xs:string" use="required"/>\r
57                         <xs:attribute name="aligned" type="xs:boolean" use="optional"/>\r
58                 </xs:complexType>\r
59         </xs:element>\r
60         <xs:element name="annotationElement">\r
61                 <xs:complexType>\r
62                         <xs:sequence>\r
63                                 <xs:element name="displayCharacter" type="xs:string" minOccurs="0"/>\r
64                                 <xs:element name="description" type="xs:string" minOccurs="0"/>\r
65                                 <xs:element name="secondaryStructure" minOccurs="0">\r
66                                         <xs:simpleType>\r
67                                                 <xs:restriction base="xs:string">\r
68                                                         <xs:length value="1"/>\r
69                                                 </xs:restriction>\r
70                                         </xs:simpleType>\r
71                                 </xs:element>\r
72                                 <xs:element name="value" type="xs:float" minOccurs="0"/>\r
73                         </xs:sequence>\r
74                         <xs:attribute name="position" type="xs:int" use="required"/>\r
75                         <xs:attribute name="colour" type="xs:int" use="optional"/>\r
76                 </xs:complexType>\r
77         </xs:element>\r
78         <xs:complexType name="SequenceType">\r
79                 <xs:sequence>\r
80                         <xs:element name="sequence" type="xs:string"/>\r
81                         <xs:element name="name" type="xs:string"/>\r
82                 </xs:sequence>\r
83                 <xs:attribute name="id" type="xs:string"/>\r
84                 <xs:attribute name="description" type="xs:string"/>\r
85         </xs:complexType>\r
86 </xs:schema>\r