latestish vamsas schema
[vamsas.git] / schemas / vamsas15_9.xsd
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- edited with XMLSPY v5 rel. 4 U (http://www.xmlspy.com) by MSD (EMBL OUTSTATION THE EBI WELLCOME TRUST GENOME CAMPUS) -->
3 <!-- edited with XMLSpy v2005 rel. 3 U (http://www.altova.com) by lj (jl) -->
4 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:vamsas="http://www.vamsas.org" targetNamespace="http://www.vamsas.org" elementFormDefault="qualified" attributeFormDefault="unqualified">
5         <xs:element name="Version" type="xs:string"/>
6         <xs:complexType name="LockFile">
7                 <xs:simpleContent>
8                         <xs:extension base="xs:string"/>
9                 </xs:simpleContent>
10         </xs:complexType>
11         <xs:complexType name="VAMSAS">
12                 <xs:sequence>
13                         <xs:element name="Tree" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
14                         <xs:element ref="vamsas:SequenceSet" minOccurs="0" maxOccurs="unbounded"/>
15                 </xs:sequence>
16         </xs:complexType>
17         <xs:element name="Provenance">
18                 <xs:complexType>
19                         <xs:sequence maxOccurs="unbounded">
20                                 <xs:element name="entry">
21                                         <xs:complexType>
22                                                 <xs:sequence>
23                                                         <xs:element name="User" type="xs:string"/>
24                                                         <xs:element name="Action" type="xs:string"/>
25                                                         <xs:element name="Date" type="xs:date"/>
26                                                 </xs:sequence>
27                                         </xs:complexType>
28                                 </xs:element>
29                         </xs:sequence>
30                 </xs:complexType>
31         </xs:element>
32         <xs:element name="SequenceSet">
33                 <xs:complexType>
34                         <xs:sequence>
35                                 <xs:element name="Sequence" maxOccurs="unbounded">
36                                         <xs:complexType>
37                                                 <xs:complexContent>
38                                                         <xs:extension base="vamsas:SequenceType">
39                                                                 <xs:attribute name="dictionary" type="xs:string"/>
40                                                                 <xs:attribute name="id" type="xs:ID" use="required"/>
41                                                         </xs:extension>
42                                                 </xs:complexContent>
43                                         </xs:complexType>
44                                 </xs:element>
45                                 <xs:element name="SequenceSetAnnotations" minOccurs="0" maxOccurs="unbounded">
46                                         <xs:complexType>
47                                                 <xs:sequence>
48                                                         <xs:element name="description" type="xs:string" minOccurs="0"/>
49                                                         <xs:element name="status" type="xs:string" minOccurs="0"/>
50                                                         <xs:element ref="vamsas:annotationElement" minOccurs="0" maxOccurs="unbounded"/>
51                                                         <xs:element ref="vamsas:Provenance"/>
52                                                 </xs:sequence>
53                                                 <xs:attribute name="type" type="xs:string" use="required"/>
54                                                 <xs:attribute name="end" type="xs:string" use="required"/>
55                                                 <xs:attribute name="begin" type="xs:string" use="required"/>
56                                                 <xs:attribute name="seqRef" type="xs:IDREF" use="required"/>
57                                         </xs:complexType>
58                                 </xs:element>
59                                 <xs:element name="Alignment" minOccurs="0" maxOccurs="unbounded">
60                                         <xs:complexType>
61                                                 <xs:sequence>
62                                                         <xs:element name="AlignmentAnnotations" minOccurs="0">
63                                                                 <xs:complexType>
64                                                                         <xs:sequence>
65                                                                                 <xs:element ref="vamsas:annotationElement" maxOccurs="unbounded"/>
66                                                                                 <xs:element name="label" type="xs:string"/>
67                                                                                 <xs:element name="description" type="xs:string"/>
68                                                                                 <xs:element ref="vamsas:Provenance"/>
69                                                                         </xs:sequence>
70                                                                         <xs:attribute name="graph" type="xs:boolean" use="required"/>
71                                                                 </xs:complexType>
72                                                         </xs:element>
73                                                         <xs:element name="tree" minOccurs="0" maxOccurs="unbounded">
74                                                                 <xs:complexType>
75                                                                         <xs:sequence>
76                                                                                 <xs:element ref="vamsas:Provenance"/>
77                                                                                 <xs:element name="newickFormat" type="xs:string"/>
78                                                                         </xs:sequence>
79                                                                 </xs:complexType>
80                                                         </xs:element>
81                                                         <xs:element name="alignmentSequence" minOccurs="2" maxOccurs="unbounded">
82                                                                 <xs:complexType>
83                                                                         <xs:complexContent>
84                                                                                 <xs:extension base="vamsas:SequenceType">
85                                                                                         <xs:attribute name="id" type="xs:IDREF" use="required"/>
86                                                                                 </xs:extension>
87                                                                         </xs:complexContent>
88                                                                 </xs:complexType>
89                                                         </xs:element>
90                                                         <xs:element ref="vamsas:Provenance"/>
91                                                 </xs:sequence>
92                                         </xs:complexType>
93                                 </xs:element>
94                                 <xs:element name="tree">
95                                         <xs:complexType>
96                                                 <xs:sequence>
97                                                         <xs:element ref="vamsas:Provenance"/>
98                                                         <xs:element name="newickFormat" type="xs:string"/>
99                                                 </xs:sequence>
100                                         </xs:complexType>
101                                 </xs:element>
102                                 <xs:element ref="vamsas:Provenance"/>
103                         </xs:sequence>
104                         <xs:attribute name="gapChar" type="xs:string" use="required"/>
105                         <xs:attribute name="aligned" type="xs:boolean" use="optional"/>
106                 </xs:complexType>
107         </xs:element>
108         <xs:element name="annotationElement">
109                 <xs:complexType>
110                         <xs:sequence>
111                                 <xs:element name="displayCharacter" type="xs:string"/>
112                                 <xs:element name="description" type="xs:string"/>
113                                 <xs:element name="secondaryStructure">
114                                         <xs:simpleType>
115                                                 <xs:restriction base="xs:string">
116                                                         <xs:length value="1"/>
117                                                 </xs:restriction>
118                                         </xs:simpleType>
119                                 </xs:element>
120                                 <xs:element name="value" type="xs:float"/>
121                         </xs:sequence>
122                         <xs:attribute name="position" type="xs:int" use="required"/>
123                 </xs:complexType>
124         </xs:element>
125         <xs:complexType name="SequenceType">
126                 <xs:sequence>
127                         <xs:element name="sequence" type="xs:string"/>
128                         <xs:element name="name" type="xs:string"/>
129                         <xs:element name="dbRef" minOccurs="0" maxOccurs="unbounded">
130                                 <xs:complexType>
131                                         <xs:attribute name="source"/>
132                                         <xs:attribute name="version"/>
133                                         <xs:attribute name="accessionId"/>
134                                 </xs:complexType>
135                         </xs:element>
136                 </xs:sequence>
137                 <xs:attribute name="start" type="xs:int" use="required"/>
138                 <xs:attribute name="end" type="xs:int" use="required"/>
139         </xs:complexType>
140         <xs:complexType name="ApplicationData">
141                 <xs:sequence>
142                         <xs:element name="Application">
143                                 <xs:complexType>
144                                         <xs:attribute name="version"/>
145                                         <xs:attribute name="name"/>
146                                 </xs:complexType>
147                         </xs:element>
148                 </xs:sequence>
149         </xs:complexType>
150 </xs:schema>