--- /dev/null
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2018.09.13 at 10:18:53 AM BST
+//
+
+
+package jalview.xml.binding.uniprot;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Describes different types of sequence annotations.
+ * Equivalent to the flat file FT-line.
+ *
+ * <p>Java class for featureType complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="featureType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="original" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ * <element name="variation" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
+ * <element name="location" type="{http://uniprot.org/uniprot}locationType"/>
+ * </sequence>
+ * <attribute name="type" use="required">
+ * <simpleType>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}string">
+ * <enumeration value="active site"/>
+ * <enumeration value="binding site"/>
+ * <enumeration value="calcium-binding region"/>
+ * <enumeration value="chain"/>
+ * <enumeration value="coiled-coil region"/>
+ * <enumeration value="compositionally biased region"/>
+ * <enumeration value="cross-link"/>
+ * <enumeration value="disulfide bond"/>
+ * <enumeration value="DNA-binding region"/>
+ * <enumeration value="domain"/>
+ * <enumeration value="glycosylation site"/>
+ * <enumeration value="helix"/>
+ * <enumeration value="initiator methionine"/>
+ * <enumeration value="lipid moiety-binding region"/>
+ * <enumeration value="metal ion-binding site"/>
+ * <enumeration value="modified residue"/>
+ * <enumeration value="mutagenesis site"/>
+ * <enumeration value="non-consecutive residues"/>
+ * <enumeration value="non-terminal residue"/>
+ * <enumeration value="nucleotide phosphate-binding region"/>
+ * <enumeration value="peptide"/>
+ * <enumeration value="propeptide"/>
+ * <enumeration value="region of interest"/>
+ * <enumeration value="repeat"/>
+ * <enumeration value="non-standard amino acid"/>
+ * <enumeration value="sequence conflict"/>
+ * <enumeration value="sequence variant"/>
+ * <enumeration value="short sequence motif"/>
+ * <enumeration value="signal peptide"/>
+ * <enumeration value="site"/>
+ * <enumeration value="splice variant"/>
+ * <enumeration value="strand"/>
+ * <enumeration value="topological domain"/>
+ * <enumeration value="transit peptide"/>
+ * <enumeration value="transmembrane region"/>
+ * <enumeration value="turn"/>
+ * <enumeration value="unsure residue"/>
+ * <enumeration value="zinc finger region"/>
+ * <enumeration value="intramembrane region"/>
+ * </restriction>
+ * </simpleType>
+ * </attribute>
+ * <attribute name="status">
+ * <simpleType>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}string">
+ * <enumeration value="by similarity"/>
+ * <enumeration value="probable"/>
+ * <enumeration value="potential"/>
+ * </restriction>
+ * </simpleType>
+ * </attribute>
+ * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * <attribute name="description" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * <attribute name="evidence" type="{http://uniprot.org/uniprot}intListType" />
+ * <attribute name="ref" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "featureType", propOrder = {
+ "original",
+ "variation",
+ "location"
+})
+public class FeatureType {
+
+ protected String original;
+ protected List<String> variation;
+ @XmlElement(required = true)
+ protected LocationType location;
+ @XmlAttribute(name = "type", required = true)
+ protected String type;
+ @XmlAttribute(name = "status")
+ protected String status;
+ @XmlAttribute(name = "id")
+ protected String id;
+ @XmlAttribute(name = "description")
+ protected String description;
+ @XmlAttribute(name = "evidence")
+ protected List<Integer> evidence;
+ @XmlAttribute(name = "ref")
+ protected String ref;
+
+ /**
+ * Gets the value of the original property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getOriginal() {
+ return original;
+ }
+
+ /**
+ * Sets the value of the original property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setOriginal(String value) {
+ this.original = value;
+ }
+
+ /**
+ * Gets the value of the variation property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the variation property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getVariation().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link String }
+ *
+ *
+ */
+ public List<String> getVariation() {
+ if (variation == null) {
+ variation = new ArrayList<String>();
+ }
+ return this.variation;
+ }
+
+ /**
+ * Gets the value of the location property.
+ *
+ * @return
+ * possible object is
+ * {@link LocationType }
+ *
+ */
+ public LocationType getLocation() {
+ return location;
+ }
+
+ /**
+ * Sets the value of the location property.
+ *
+ * @param value
+ * allowed object is
+ * {@link LocationType }
+ *
+ */
+ public void setLocation(LocationType value) {
+ this.location = value;
+ }
+
+ /**
+ * Gets the value of the type property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getType() {
+ return type;
+ }
+
+ /**
+ * Sets the value of the type property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setType(String value) {
+ this.type = value;
+ }
+
+ /**
+ * Gets the value of the status property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getStatus() {
+ return status;
+ }
+
+ /**
+ * Sets the value of the status property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setStatus(String value) {
+ this.status = value;
+ }
+
+ /**
+ * Gets the value of the id property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getId() {
+ return id;
+ }
+
+ /**
+ * Sets the value of the id property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setId(String value) {
+ this.id = value;
+ }
+
+ /**
+ * Gets the value of the description property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getDescription() {
+ return description;
+ }
+
+ /**
+ * Sets the value of the description property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setDescription(String value) {
+ this.description = value;
+ }
+
+ /**
+ * Gets the value of the evidence property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the evidence property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getEvidence().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link Integer }
+ *
+ *
+ */
+ public List<Integer> getEvidence() {
+ if (evidence == null) {
+ evidence = new ArrayList<Integer>();
+ }
+ return this.evidence;
+ }
+
+ /**
+ * Gets the value of the ref property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getRef() {
+ return ref;
+ }
+
+ /**
+ * Sets the value of the ref property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setRef(String value) {
+ this.ref = value;
+ }
+
+}