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