apply version 2.7 copyright
[jalview.git] / schemas / jalview.xsd
index bc2ad4a..431fad5 100755 (executable)
@@ -1,23 +1,21 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
-  Jalview - A Sequence Alignment Editor and Viewer (Development Version 2.4.1)
-  Copyright (C) 2009 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle
-  
-  This program is free software; you can redistribute it and/or
-  modify it under the terms of the GNU General Public License
-  as published by the Free Software Foundation; either version 2
-  of the License, or (at your option) any later version.
-  
-  This program is distributed in the hope that it will be useful,
-  but WITHOUT ANY WARRANTY; without even the implied warranty of
-  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  GNU General Public License for more details.
-  
-  You should have received a copy of the GNU General Public License
-  along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)
+ * Copyright (C) 2011 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * 
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
 -->
-
 <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" targetNamespace="www.jalview.org" elementFormDefault="qualified" attributeFormDefault="unqualified">
                <xs:import namespace="www.vamsas.ac.uk/jalview/version2" schemaLocation="vamsas.xsd"/>
        <xs:import namespace="www.jalview.org/colours" schemaLocation="JalviewUserColours.xsd"/>
                                                                                                <xs:element name="structureState" minOccurs="0" maxOccurs="unbounded">
                                                                                                        <xs:complexType>
                                                                                                                <xs:simpleContent>
-                                                                                                                       <xs:extension base="xs:string">
+                                                                                                               <xs:extension base="xs:string">
+                                                                                                               <xs:attributeGroup ref="jv:swingwindow"/>
                                                                                                                                <xs:attribute name="visible" type="xs:boolean"/>
-                                                                                                                               <xs:attribute name="xpos" type="xs:int"/>
-                                                                                                                               <xs:attribute name="ypos" type="xs:int"/>
-                                                                                                                               <xs:attribute name="width" type="xs:int"/>
-                                                                                                                               <xs:attribute name="height" type="xs:int"/>
                                                                                                                                <xs:attribute name="viewId" type="xs:string" use="optional">
                                                                                                                                        <xs:annotation>
                                                                                                                                                <xs:documentation>additional identifier which properly disambiguates
                                                                                                                                                viewId will appear for each instance.</xs:documentation>
                                                                                                                                        </xs:annotation>
                                                                                                                                </xs:attribute>
-                                                                                                                                       
+                                                                                                                               <xs:attribute name="alignwithAlignPanel" type="xs:boolean" use="optional" default="true">
+                                                                                                                               <xs:annotation>
+                                                                                                                               <xs:documentation>
+                                                                                                                                       Flag set if the alignment panel containing this JSeq should be included in those used to perform a structure superposition (since Jalview 2.7).
+                                                                                                                               </xs:documentation>
+                                                                                                                               </xs:annotation>
+                                                                                                                               </xs:attribute>
+                                                                                                                               <xs:attribute name="colourwithAlignPanel" type="xs:boolean" use="optional" default="false">
+                                                                                                                               <xs:annotation>
+                                                                                                                               <xs:documentation>
+                                                                                                                                       Flag set if the alignment panel containing this JSeq should be included in those used to colour its associated sequences in this structureState(since Jalview 2.7).
+                                                                                                                               </xs:documentation>
+                                                                                                                               </xs:annotation>
+                                                                                                                               </xs:attribute>
+                                                                                                                               <xs:attribute name="colourByJmol" type="xs:boolean" use="optional" default="true">
+                                                                                                                               <xs:annotation><xs:documentation>
+                                                                                                                                 Flag set if the structure display is coloured by the Jmol state, rather than by one or more linked alignment views.
+                                                                                                                               </xs:documentation></xs:annotation></xs:attribute>      
                                                                                                                                
                                                                                                                        </xs:extension>
-                                                                                                               </xs:simpleContent>
+                                                                                                   </xs:simpleContent>
                                                                                                        </xs:complexType>
                                                                                                </xs:element>
                                                                                        </xs:sequence>
                                                                </xs:complexType>
                                                        </xs:element>
                                                </xs:sequence>
+                                               <xs:attributeGroup ref="jv:swingwindow"/>
                                                <xs:attribute name="conservationSelected" type="xs:boolean"/>
                                                <xs:attribute name="pidSelected" type="xs:boolean"/>
                                                <xs:attribute name="bgColour" type="xs:string"/>
                                                <xs:attribute name="showSequenceLogo" type="xs:boolean" use="optional" default="false"/>
                                                <xs:attribute name="ignoreGapsinConsensus" type="xs:boolean" use="optional" default="true"/>
                                                
-                                               <xs:attribute name="xpos" type="xs:int"/>
-                                               <xs:attribute name="ypos" type="xs:int"/>
-                                               <xs:attribute name="width" type="xs:int"/>
-                                               <xs:attribute name="height" type="xs:int"/>
                                                <xs:attribute name="startRes" type="xs:int"/>
                                                <xs:attribute name="startSeq" type="xs:int"/>
                                                <xs:attribute name="fontName" type="xs:string"/>
                                                                </xs:documentation>
                                                        </xs:annotation>
                                                </xs:attribute>
-                                       </xs:complexType>
+          </xs:complexType>
                                </xs:element>
                                <xs:element name="UserColours" minOccurs="0" maxOccurs="unbounded">
                                        <xs:complexType>
                                </xs:element>
                                <xs:element name="tree" minOccurs="0" maxOccurs="unbounded">
                                        <xs:complexType>
-                                               <xs:sequence minOccurs="0">
-                                                       <xs:element name="title" type="xs:string"/>
-                                                       <xs:element name="newick" type="xs:string"/>
-                                               </xs:sequence>
-                                               <xs:attribute name="width" type="xs:int"/>
-                                               <xs:attribute name="height" type="xs:int"/>
-                                               <xs:attribute name="xpos" type="xs:int"/>
-                                               <xs:attribute name="ypos" type="xs:int"/>
-                                               <xs:attribute name="fontName" type="xs:string"/>
-                                               <xs:attribute name="fontSize" type="xs:int"/>
-                                               <xs:attribute name="fontStyle" type="xs:int"/>
-                                               <xs:attribute name="threshold" type="xs:float"/>
-                                               <xs:attribute name="showBootstrap" type="xs:boolean"/>
-                                               <xs:attribute name="showDistances" type="xs:boolean"/>
-                                               <xs:attribute name="markUnlinked" type="xs:boolean"/>
-                                               <xs:attribute name="fitToWindow" type="xs:boolean"/>
-                                               <xs:attribute name="currentTree" type="xs:boolean"/>
-                                               <xs:attribute name="id" type="xs:ID" use="optional">
-                                                       <xs:annotation><xs:documentation>Tree ID added for binding tree visualization settings to vamsas document trees in jalview 2.4.1</xs:documentation></xs:annotation>
-                                               </xs:attribute>
-                                       </xs:complexType>
+                                        <xs:sequence minOccurs="0">
+              <xs:element name="title" type="xs:string"/>
+              <xs:element name="newick" type="xs:string"/>
+            </xs:sequence>
+            <xs:attribute name="fontName" type="xs:string"/>
+            <xs:attribute name="fontSize" type="xs:int"/>
+            <xs:attribute name="fontStyle" type="xs:int"/>
+            <xs:attribute name="threshold" type="xs:float"/>
+            <xs:attribute name="showBootstrap" type="xs:boolean"/>
+            <xs:attribute name="showDistances" type="xs:boolean"/>
+            <xs:attribute name="markUnlinked" type="xs:boolean"/>
+            <xs:attribute name="fitToWindow" type="xs:boolean"/>
+            <xs:attribute name="currentTree" type="xs:boolean"/>
+            <xs:attribute name="id" type="xs:ID" use="optional">
+              <xs:annotation><xs:documentation>Tree ID added for binding tree visualization settings to vamsas document trees in jalview 2.4.1</xs:documentation></xs:annotation>
+            </xs:attribute>
+          <xs:attributeGroup ref="jv:swingwindow"/>
+          </xs:complexType>
                                </xs:element>
                                <xs:element name="FeatureSettings" minOccurs="0">
                                        <xs:complexType>
                <xs:attribute name="type" type="xs:string" use="optional"/>
                <xs:attribute name="file" type="xs:string"/>
        </xs:complexType>
+       <!-- 
+       <xs:complexType name="reportWindow">
+       <xs:annotation>
+       <xs:documentation>Generic type for windows containing mime-typed data associated with other jalview windows</xs:documentation>
+       </xs:annotation>
+       <xs:sequence>
+       </xs:sequence>
+    <xs:attribute name="id" type="xs:string" use="required"/>
+    <xs:attribute name="type" type="xs:string" use="optional"/>
+    <xs:attribute name="file" type="xs:string" use="optional"/>
+       </xs:complexType>
+ -->
+    <xs:attributeGroup name="swingwindow">
+    <xs:annotation>
+    <xs:documentation>
+      base attributes for windows displayed in Jalview desktop.
+    </xs:documentation>
+    </xs:annotation>
+      <xs:attribute name="width" type="xs:int"/>
+      <xs:attribute name="height" type="xs:int"/>
+      <xs:attribute name="xpos" type="xs:int"/>
+      <xs:attribute name="ypos" type="xs:int"/>
+    </xs:attributeGroup>
 </xs:schema>