eab650040cef4637326cf1ceb361470e87bfdd24
[jalview.git] / schemas / jalview.xsd
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
4  * Copyright (C) $$Year-Rel$$ The Jalview Authors
5  * 
6  * This file is part of Jalview.
7  * 
8  * Jalview is free software: you can redistribute it and/or
9  * modify it under the terms of the GNU General Public License 
10  * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
11  *  
12  * Jalview is distributed in the hope that it will be useful, but 
13  * WITHOUT ANY WARRANTY; without even the implied warranty 
14  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
15  * PURPOSE.  See the GNU General Public License for more details.
16  * 
17  * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
18  * The Jalview Authors are detailed in the 'AUTHORS' file.
19 -->
20 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:vamsas="www.vamsas.ac.uk/jalview/version2" xmlns:jalview="www.jalview.org/colours" xmlns:jv="www.jalview.org" xmlns:jvws="www.jalview.org/xml/wsparamset" targetNamespace="www.jalview.org" elementFormDefault="qualified" attributeFormDefault="unqualified">
21                 <xs:import namespace="www.vamsas.ac.uk/jalview/version2" schemaLocation="vamsas.xsd"/>
22         <xs:import namespace="www.jalview.org/colours" schemaLocation="JalviewUserColours.xsd"/>
23         <xs:import namespace="www.jalview.org/xml/wsparamset" schemaLocation="JalviewWsParamSet.xsd"/>
24         <xs:complexType name="JalviewModel">
25                 <xs:sequence>
26                         <xs:element name="creationDate" type="xs:dateTime" />
27                         <xs:element name="version" type="xs:string" />
28                         <xs:element name="vamsasModel" type="vamsas:VAMSAS" />
29                         <xs:sequence>
30                                 <xs:element name="JSeq" maxOccurs="unbounded" minOccurs="0">
31                                         <xs:complexType>
32                                                 <xs:sequence>
33                                                         <xs:element name="features"
34                                                                 type="jv:feature" minOccurs="0" maxOccurs="unbounded" />
35                                                         <xs:element name="pdbids" minOccurs="0"
36                                                                 maxOccurs="unbounded">
37                                                                 <xs:complexType>
38                                                                         <xs:complexContent>
39                                                                                 <xs:extension
40                                                                                         base="jv:pdbentry">
41                                                                                         <xs:sequence>
42                                                                                                 <xs:element
43                                                                                                         name="structureState" minOccurs="0"
44                                                                                                         maxOccurs="unbounded">
45                                                                                                         <xs:complexType>
46                                                                                                                 <xs:simpleContent>
47                                                                                                                         <xs:extension
48                                                                                                                                 base="xs:string">
49                                                                                                                                 <xs:attributeGroup
50                                                                                                                                         ref="jv:swingwindow" />
51                                                                                                                                 <xs:attribute
52                                                                                                                                         name="visible" type="xs:boolean" />
53                                                                                                                                 <xs:attribute
54                                                                                                                                         name="viewId" type="xs:string" use="optional">
55                                                                                                                                         <xs:annotation>
56                                                                                                                                                 <xs:documentation>
57                                                                                                                                                         additional
58                                                                                                                                                         identifier
59                                                                                                                                                         which
60                                                                                                                                                         properly
61                                                                                                                                                         disambiguates
62                                                                                                                                                         the
63                                                                                                                                                         structure
64                                                                                                                                                         view
65                                                                                                                                                         from
66                                                                                                                                                         any
67                                                                                                                                                         other
68                                                                                                                                                         view
69                                                                                                                                                         with
70                                                                                                                                                         the
71                                                                                                                                                         same
72                                                                                                                                                         attributes.
73                                                                                                                                                         This
74                                                                                                                                                         is
75                                                                                                                                                         not
76                                                                                                                                                         an
77                                                                                                                                                         ID,
78                                                                                                                                                         because
79                                                                                                                                                         it
80                                                                                                                                                         is
81                                                                                                                                                         possible
82                                                                                                                                                         to
83                                                                                                                                                         have
84                                                                                                                                                         many
85                                                                                                                                                         references
86                                                                                                                                                         to
87                                                                                                                                                         the
88                                                                                                                                                         same
89                                                                                                                                                         physical
90                                                                                                                                                         structure
91                                                                                                                                                         view
92                                                                                                                                                         from
93                                                                                                                                                         different
94                                                                                                                                                         sequences
95                                                                                                                                                         in
96                                                                                                                                                         an
97                                                                                                                                                         alignment.
98                                                                                                                                                         A
99                                                                                                                                                         structureState
100                                                                                                                                                         element
101                                                                                                                                                         citing
102                                                                                                                                                         the
103                                                                                                                                                         same
104                                                                                                                                                         viewId
105                                                                                                                                                         will
106                                                                                                                                                         appear
107                                                                                                                                                         for
108                                                                                                                                                         each
109                                                                                                                                                         instance.
110                                                                                                                                                 </xs:documentation>
111                                                                                                                                         </xs:annotation>
112                                                                                                                                 </xs:attribute>
113                                                                                                                                 <xs:attribute
114                                                                                                                                         name="alignwithAlignPanel" type="xs:boolean"
115                                                                                                                                         use="optional" default="true">
116                                                                                                                                         <xs:annotation>
117                                                                                                                                                 <xs:documentation>
118                                                                                                                                                         Flag
119                                                                                                                                                         set
120                                                                                                                                                         if
121                                                                                                                                                         the
122                                                                                                                                                         alignment
123                                                                                                                                                         panel
124                                                                                                                                                         containing
125                                                                                                                                                         this
126                                                                                                                                                         JSeq
127                                                                                                                                                         should
128                                                                                                                                                         be
129                                                                                                                                                         included
130                                                                                                                                                         in
131                                                                                                                                                         those
132                                                                                                                                                         used
133                                                                                                                                                         to
134                                                                                                                                                         perform
135                                                                                                                                                         a
136                                                                                                                                                         structure
137                                                                                                                                                         superposition
138                                                                                                                                                         (since
139                                                                                                                                                         Jalview
140                                                                                                                                                         2.7).
141                                                                                                                                                 </xs:documentation>
142                                                                                                                                         </xs:annotation>
143                                                                                                                                 </xs:attribute>
144                                                                                                                                 <xs:attribute
145                                                                                                                                         name="colourwithAlignPanel" type="xs:boolean"
146                                                                                                                                         use="optional" default="false">
147                                                                                                                                         <xs:annotation>
148                                                                                                                                                 <xs:documentation>
149                                                                                                                                                         Flag
150                                                                                                                                                         set
151                                                                                                                                                         if
152                                                                                                                                                         the
153                                                                                                                                                         alignment
154                                                                                                                                                         panel
155                                                                                                                                                         containing
156                                                                                                                                                         this
157                                                                                                                                                         JSeq
158                                                                                                                                                         should
159                                                                                                                                                         be
160                                                                                                                                                         included
161                                                                                                                                                         in
162                                                                                                                                                         those
163                                                                                                                                                         used
164                                                                                                                                                         to
165                                                                                                                                                         colour
166                                                                                                                                                         its
167                                                                                                                                                         associated
168                                                                                                                                                         sequences
169                                                                                                                                                         in
170                                                                                                                                                         this
171                                                                                                                                                         structureState(since
172                                                                                                                                                         Jalview
173                                                                                                                                                         2.7).
174                                                                                                                                                 </xs:documentation>
175                                                                                                                                         </xs:annotation>
176                                                                                                                                 </xs:attribute>
177                                                                                                                                 <xs:attribute
178                                                                                                                                         name="colourByJmol" type="xs:boolean" use="optional"
179                                                                                                                                         default="true">
180                                                                                                                                         <xs:annotation>
181                                                                                                                                                 <xs:documentation>
182                                                                                                                                                         Flag
183                                                                                                                                                         set
184                                                                                                                                                         if
185                                                                                                                                                         the
186                                                                                                                                                         structure
187                                                                                                                                                         display
188                                                                                                                                                         is
189                                                                                                                                                         coloured
190                                                                                                                                                         by
191                                                                                                                                                         the
192                                                                                                                                                         Jmol
193                                                                                                                                                         state,
194                                                                                                                                                         rather
195                                                                                                                                                         than
196                                                                                                                                                         by
197                                                                                                                                                         one
198                                                                                                                                                         or
199                                                                                                                                                         more
200                                                                                                                                                         linked
201                                                                                                                                                         alignment
202                                                                                                                                                         views.
203                                                                                                                                                 </xs:documentation>
204                                                                                                                                         </xs:annotation>
205                                                                                                                                 </xs:attribute>
206                                                                                                                                 <xs:attribute name="type" type="xs:string"
207                                                                                                                                         use="optional">
208                                                                                                                                         <xs:annotation>
209                                                                                                                                                 <xs:documentation>
210                                                                                                                                                         An identifier for the viewer type, currently either
211                                                                                                                                                         JMOL or CHIMERA
212                                                                                                                                                 </xs:documentation>
213                                                                                                                                         </xs:annotation>
214                                                                                                                                 </xs:attribute>
215
216                                                                                                                         </xs:extension>
217                                                                                                                 </xs:simpleContent>
218                                                                                                         </xs:complexType>
219                                                                                                 </xs:element>
220                                                                                         </xs:sequence>
221                                                                                 </xs:extension>
222                                                                         </xs:complexContent>
223                                                                 </xs:complexType>
224                                                         </xs:element>
225                                                         <xs:element name="hiddenSequences"
226                                                                 type="xs:int" minOccurs="0" maxOccurs="unbounded" />
227                                                 </xs:sequence>
228                                                 <xs:attribute name="colour" type="xs:int"
229                                                         use="optional" />
230                                                 <xs:attribute name="start" type="xs:int"
231                                                         use="required" />
232                                                 <xs:attribute name="end" type="xs:int"
233                                                         use="required" />
234                                                 <xs:attribute name="id" type="xs:string"
235                                                         use="required" />
236                                                 <xs:attribute name="hidden" type="xs:boolean" />
237                                         </xs:complexType>
238                                 </xs:element>
239                                 <xs:element name="JGroup" minOccurs="0"
240                                         maxOccurs="unbounded">
241                                         <xs:complexType>
242             <xs:sequence>
243                                                         <xs:element name="seq" type="xs:string" maxOccurs="unbounded" />
244                                                         <xs:element name="annotationColours" type="jv:AnnotationColourScheme"
245                                                                 minOccurs="0" maxOccurs="1" />
246                                                 </xs:sequence>
247                                                 <xs:attribute name="start" type="xs:int" />
248                                                 <xs:attribute name="end" type="xs:int" />
249                                                 <xs:attribute name="name" type="xs:string" />
250                                                 <xs:attribute name="colour" type="xs:string" />
251                                                 <xs:attribute name="consThreshold"
252                                                         type="xs:int" />
253                                                 <xs:attribute name="pidThreshold" type="xs:int" />
254                                                 <xs:attribute name="outlineColour"
255                                                         type="xs:int" />
256                                                 <xs:attribute name="displayBoxes"
257                                                         type="xs:boolean" />
258                                                 <xs:attribute name="displayText"
259                                                         type="xs:boolean" />
260                                                 <xs:attribute name="colourText"
261                                                         type="xs:boolean" />
262                                                 <xs:attribute name="textCol1" type="xs:int" />
263                                                 <xs:attribute name="textCol2" type="xs:int" />
264                                                 <xs:attribute name="textColThreshold"
265                                                         type="xs:int" />
266                                                 <xs:attribute name="showUnconserved"
267                                                         type="xs:boolean" use="optional" />
268                                                 <xs:attribute name="ignoreGapsinConsensus"
269                                                         type="xs:boolean" use="optional" default="true" />
270                                                 <xs:attribute name="showConsensusHistogram"
271                                                         type="xs:boolean" use="optional" default="true" />
272                                                 <xs:attribute name="showSequenceLogo"
273                                                         type="xs:boolean" use="optional" default="false" />
274                                                 <xs:attribute name="normaliseSequenceLogo"
275               type="xs:boolean" use="optional" default="false" />
276             <xs:attribute name="id" type="xs:string"
277                                                         use="optional">
278                                                         <xs:annotation>
279                                                                 <xs:documentation>
280                                                                         Optional sequence group ID (only
281                                                                         needs to be unique for this
282                                                                         alignment)
283                                                                 </xs:documentation>
284                                                         </xs:annotation>
285                                                 </xs:attribute>
286                                         </xs:complexType>
287                                 </xs:element>
288                                 <xs:element name="Viewport" maxOccurs="unbounded" minOccurs="0">
289                                         <xs:complexType>
290                                                 <xs:sequence>
291                                                         <xs:element name="AnnotationColours" type="jv:AnnotationColourScheme" 
292                                                                 minOccurs="0" maxOccurs="1">
293                                                         </xs:element>
294                                                         <xs:element name="hiddenColumns"
295                                                                 minOccurs="0" maxOccurs="unbounded">
296                                                                 <xs:complexType>
297                                                                         <xs:attribute name="start"
298                                                                                 type="xs:int" />
299                                                                         <xs:attribute name="end"
300                                                                                 type="xs:int" />
301                                                                 </xs:complexType>
302                                                         </xs:element>
303                                                         <xs:element name="calcIdParam" 
304                                                          
305                                                         minOccurs="0" maxOccurs="unbounded">
306                                                         <xs:complexType>
307                                                         <xs:complexContent>
308                                                         <xs:extension base="jvws:WebServiceParameterSet">
309                                                         <xs:attribute name="calcId" type="xs:string" use="required">
310                                                         <xs:annotation>
311                                                         <xs:documentation>handle for the calculation which uses this parameter set</xs:documentation></xs:annotation>
312                                                         </xs:attribute>
313                                                         <xs:attribute name="needsUpdate" type="xs:boolean" use="optional" default="false">
314                                                         <xs:annotation><xs:documentation>should the calculation be performed immediately after loading in order to refresh results</xs:documentation></xs:annotation>
315                                                         </xs:attribute>
316                                                         <xs:attribute name="autoUpdate" type="xs:boolean" use="required">
317                                                         <xs:annotation><xs:documentation>should the calculation be automatically performed on edits</xs:documentation></xs:annotation>
318                                                         </xs:attribute>
319                                                         </xs:extension>
320                                                         </xs:complexContent>
321                                                         </xs:complexType>
322                                                         </xs:element>
323                                                 </xs:sequence>
324                                                 <xs:attributeGroup ref="jv:swingwindow" />
325                                                 <xs:attribute name="conservationSelected"
326                                                         type="xs:boolean" />
327                                                 <xs:attribute name="pidSelected"
328                                                         type="xs:boolean" />
329                                                 <xs:attribute name="bgColour" type="xs:string" />
330                                                 <xs:attribute name="consThreshold"
331                                                         type="xs:int" />
332                                                 <xs:attribute name="pidThreshold" type="xs:int" />
333                                                 <xs:attribute name="title" type="xs:string" />
334                                                 <xs:attribute name="showFullId"
335                                                         type="xs:boolean" />
336                                                 <xs:attribute name="rightAlignIds"
337                                                         type="xs:boolean" />
338                                                 <xs:attribute name="showText" type="xs:boolean" />
339                                                 <xs:attribute name="showColourText"
340                                                         type="xs:boolean" />
341                                                 <xs:attribute name="showUnconserved"
342                                                         type="xs:boolean" use="optional" default="false" />
343                                                 <xs:attribute name="showBoxes"
344                                                         type="xs:boolean" />
345                                                 <xs:attribute name="wrapAlignment"
346                                                         type="xs:boolean" />
347                                                 <xs:attribute name="renderGaps"
348                                                         type="xs:boolean" />
349                                                 <xs:attribute name="showSequenceFeatures"
350                                                         type="xs:boolean" />
351                                                 <xs:attribute name="showNPfeatureTooltip"
352                                                         type="xs:boolean" use="optional" />
353                                                 <xs:attribute name="showDbRefTooltip"
354                                                         type="xs:boolean" use="optional" />
355                                                 <xs:attribute name="followHighlight"
356                                                         type="xs:boolean" use="optional" default="true" />
357                                                 <xs:attribute name="followSelection"
358                                                         type="xs:boolean" use="optional" default="true" />
359                                                 <xs:attribute name="showAnnotation"
360                                                         type="xs:boolean" />
361                                                 <xs:attribute name="centreColumnLabels"
362                                                         type="xs:boolean" use="optional" default="false" />
363                                                 <xs:attribute name="showGroupConservation"
364                                                         type="xs:boolean" use="optional" default="false" />
365                                                 <xs:attribute name="showGroupConsensus"
366                                                         type="xs:boolean" use="optional" default="false" />
367                                                 <xs:attribute name="showConsensusHistogram"
368                                                         type="xs:boolean" use="optional" default="true" />
369                                                 <xs:attribute name="showSequenceLogo"
370                                                         type="xs:boolean" use="optional" default="false" />
371                                     <xs:attribute name="normaliseSequenceLogo"
372                                       type="xs:boolean" use="optional" default="false" />
373                                                 <xs:attribute name="ignoreGapsinConsensus"
374                                                         type="xs:boolean" use="optional" default="true" />
375                                                         <xs:attribute name="startRes" type="xs:int" />
376                                                 <xs:attribute name="startSeq" type="xs:int" />
377                                                 <xs:attribute name="fontName" type="xs:string" />
378                                                 <xs:attribute name="fontSize" type="xs:int" />
379                                                 <xs:attribute name="fontStyle" type="xs:int" />
380                                                 <xs:attribute name="viewName" type="xs:string" />
381                                                 <xs:attribute name="sequenceSetId"
382                                                         type="xs:string" />
383                                                 <xs:attribute name="gatheredViews"
384                                                         type="xs:boolean" />
385                                                 <xs:attribute name="textCol1" type="xs:int" />
386                                                 <xs:attribute name="textCol2" type="xs:int" />
387                                                 <xs:attribute name="textColThreshold"
388                                                         type="xs:int" />
389                                                 <xs:attribute name="id" type="xs:ID"
390                                                         use="optional">
391                                                         <xs:annotation>
392                                                                 <xs:documentation>
393                                                                         unique id used by jalview to
394                                                                         synchronize between stored and
395                                                                         instantiated views
396                                                                 </xs:documentation>
397                                                         </xs:annotation>
398                                                 </xs:attribute>
399                                                 <xs:attribute name="complementId" type="xs:string"
400                                                         use="optional">
401                                                         <xs:annotation>
402                                                                 <xs:documentation>
403                                                                         The viewport id of this viewport's (cdna/protein) coding complement, if any
404                                                                 </xs:documentation>
405                                                         </xs:annotation>
406                                                 </xs:attribute>
407                                         </xs:complexType>
408                                 </xs:element>
409                                 <xs:element name="UserColours" minOccurs="0"
410                                         maxOccurs="unbounded">
411                                         <xs:complexType>
412                                                 <xs:sequence>
413                                                         <xs:element name="UserColourScheme"
414                                                                 type="jalview:JalviewUserColours" />
415                                                 </xs:sequence>
416                                                 <xs:attribute name="id" type="xs:string" />
417                                         </xs:complexType>
418                                 </xs:element>
419                                 <xs:element name="tree" minOccurs="0"
420                                         maxOccurs="unbounded">
421                                         <xs:complexType>
422                                                 <xs:sequence minOccurs="0">
423                                                         <xs:element name="title" type="xs:string" />
424                                                         <xs:element name="newick" type="xs:string" />
425                                                 </xs:sequence>
426                                                 <xs:attribute name="fontName" type="xs:string" />
427                                                 <xs:attribute name="fontSize" type="xs:int" />
428                                                 <xs:attribute name="fontStyle" type="xs:int" />
429                                                 <xs:attribute name="threshold" type="xs:float" />
430                                                 <xs:attribute name="showBootstrap"
431                                                         type="xs:boolean" />
432                                                 <xs:attribute name="showDistances"
433                                                         type="xs:boolean" />
434                                                 <xs:attribute name="markUnlinked"
435                                                         type="xs:boolean" />
436                                                 <xs:attribute name="fitToWindow"
437                                                         type="xs:boolean" />
438                                                 <xs:attribute name="currentTree"
439                                                         type="xs:boolean" />
440                                                 <xs:attribute name="id" type="xs:ID"
441                                                         use="optional">
442                                                         <xs:annotation>
443                                                                 <xs:documentation>
444                                                                         Tree ID added for binding tree
445                                                                         visualization settings to vamsas
446                                                                         document trees in jalview 2.4.1
447                                                                 </xs:documentation>
448                                                         </xs:annotation>
449                                                 </xs:attribute>
450                                                 <xs:attributeGroup ref="jv:swingwindow" />
451                                         </xs:complexType>
452                                 </xs:element>
453                                 <xs:element name="FeatureSettings" minOccurs="0">
454                                         <xs:complexType>
455                                                 <xs:sequence>
456                                                         <xs:element name="setting" minOccurs="0"
457                                                                 maxOccurs="unbounded">
458                                                                 <xs:complexType>
459                                                                         <xs:attribute name="type"
460                                                                                 type="xs:string" use="required" />
461                                                                         <xs:attribute name="colour"
462                                                                                 type="xs:int" use="required" />
463                                                                         <xs:attribute name="display"
464                                                                                 type="xs:boolean" use="required" />
465                                                                         <xs:attribute name="order"
466                                                                                 type="xs:float" use="optional" />
467                                                                         <xs:attribute name="mincolour"
468                                                                                 type="xs:int" use="optional">
469                                                                                 <xs:annotation>
470                                                                                         <xs:documentation>
471                                                                                                 Optional minimum colour
472                                                                                                 for graduated feature
473                                                                                                 colour
474                                                                                         </xs:documentation>
475                                                                                 </xs:annotation>
476                                                                         </xs:attribute>
477                                                                         <xs:attribute name="threshold"
478                                                                                 type="xs:float" use="optional">
479                                                                                 <xs:annotation>
480                                                                                         <xs:documentation>
481                                                                                                 threshold value for
482                                                                                                 graduated feature colour
483                                                                                         </xs:documentation>
484                                                                                 </xs:annotation>
485                                                                         </xs:attribute>
486                                                                         <xs:attribute name="threshstate"
487                                                                                 type="xs:int" use="optional">
488                                                                                 <xs:annotation>
489                                                                                         <xs:documentation>
490                                                                                                 threshold type for
491                                                                                                 graduated feature colour
492                                                                                         </xs:documentation>
493                                                                                 </xs:annotation>
494                                                                         </xs:attribute>
495                                                                         <xs:attribute name="max"
496                                                                                 type="xs:float" use="optional" />
497                                                                         <xs:attribute name="min"
498                                                                                 type="xs:float" use="optional" />
499                                                                         <xs:attribute name="colourByLabel"
500                                                                                 type="xs:boolean" use="optional" />
501                                                                         <xs:attribute name="autoScale"
502                                                                                 type="xs:boolean" use="optional" />
503                                                                 </xs:complexType>
504                                                         </xs:element>
505                                                         <xs:element name="group" minOccurs="0"
506                                                                 maxOccurs="unbounded">
507                                                                 <xs:complexType>
508                                                                         <xs:attribute name="name"
509                                                                                 type="xs:string" use="required" />
510                                                                         <xs:attribute name="display"
511                                                                                 type="xs:boolean" use="required" />
512                                                                 </xs:complexType>
513                                                         </xs:element>
514                                                 </xs:sequence>
515                                         </xs:complexType>
516                                 </xs:element>
517                         </xs:sequence>
518                 </xs:sequence>
519         </xs:complexType>
520         <xs:complexType name="feature">
521                 <xs:sequence>
522                         <xs:element name="otherData" minOccurs="0" maxOccurs="unbounded">
523                                 <xs:complexType>
524                                         <xs:attribute name="key" type="xs:string" use="required"/>
525                                         <xs:attribute name="value" type="xs:string" use="required"/>
526                                 </xs:complexType>
527                         </xs:element>
528                 </xs:sequence>
529                 <xs:attribute name="begin" type="xs:int" use="required"/>
530                 <xs:attribute name="end" type="xs:int" use="required"/>
531                 <xs:attribute name="type" type="xs:string" use="required"/>
532                 <xs:attribute name="description" type="xs:string" use="optional"/>
533                 <xs:attribute name="status" type="xs:string" use="optional"/>
534                 <xs:attribute name="featureGroup" type="xs:string" use="optional"/>
535                 <xs:attribute name="score" type="xs:float" use="optional"/>
536         </xs:complexType>
537         <xs:complexType name="pdbentry">
538                 <xs:sequence minOccurs="0" maxOccurs="unbounded">
539                         <xs:element name="property" minOccurs="0" maxOccurs="unbounded">
540                                 <xs:complexType>
541                                         <xs:attribute name="name" type="xs:string" use="required"/>
542                                         <xs:attribute name="value" type="xs:string" use="required"/>
543                                 </xs:complexType>
544                         </xs:element>
545                 </xs:sequence>
546                 <xs:attribute name="id" type="xs:string" use="required"/>
547                 <xs:attribute name="type" type="xs:string" use="optional"/>
548                 <xs:attribute name="file" type="xs:string"/>
549         </xs:complexType>
550         <!-- 
551         <xs:complexType name="reportWindow">
552         <xs:annotation>
553         <xs:documentation>Generic type for windows containing mime-typed data associated with other jalview windows</xs:documentation>
554         </xs:annotation>
555         <xs:sequence>
556         </xs:sequence>
557     <xs:attribute name="id" type="xs:string" use="required"/>
558     <xs:attribute name="type" type="xs:string" use="optional"/>
559     <xs:attribute name="file" type="xs:string" use="optional"/>
560         </xs:complexType>
561  -->
562     <xs:attributeGroup name="swingwindow">
563     <xs:annotation>
564     <xs:documentation>
565       base attributes for windows displayed in Jalview desktop.
566     </xs:documentation>
567     </xs:annotation>
568       <xs:attribute name="width" type="xs:int"/>
569       <xs:attribute name="height" type="xs:int"/>
570       <xs:attribute name="xpos" type="xs:int"/>
571       <xs:attribute name="ypos" type="xs:int"/>
572     </xs:attributeGroup>
573   <xs:complexType name="AnnotationColourScheme">
574         <xs:attribute name="aboveThreshold" type="xs:int" />
575         <xs:attribute name="annotation" type="xs:string" />
576         <xs:attribute name="minColour" type="xs:int" />
577         <xs:attribute name="maxColour" type="xs:int" />
578         <xs:attribute name="colourScheme" type="xs:string" />
579         <xs:attribute name="threshold" type="xs:float" />
580         <xs:attribute name="perSequence" type="xs:boolean" use="optional" />
581         <xs:attribute name="predefinedColours" type="xs:boolean"
582                 use="optional" />
583   </xs:complexType>
584   
585 </xs:schema>