rebult for castor-1.1(vamsas version)
[vamsas.git] / src / uk / ac / vamsas / objects / core / RangeAnnotation.java
index f36bbfb..869c4f5 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
  * This class was automatically generated with \r
- * <a href="http://www.castor.org">Castor 0.9.9M2</a>, using an XML\r
+ * <a href="http://www.castor.org">Castor 1.1</a>, using an XML\r
  * Schema.\r
  * $Id$\r
  */\r
@@ -11,17 +11,8 @@ package uk.ac.vamsas.objects.core;
  //- Imported classes and packages -/\r
 //---------------------------------/\r
 \r
-import java.io.IOException;\r
-import java.io.Reader;\r
-import java.io.Serializable;\r
-import java.io.Writer;\r
-import java.util.Enumeration;\r
-import java.util.Vector;\r
-import org.exolab.castor.xml.MarshalException;\r
 import org.exolab.castor.xml.Marshaller;\r
 import org.exolab.castor.xml.Unmarshaller;\r
-import org.exolab.castor.xml.ValidationException;\r
-import org.xml.sax.ContentHandler;\r
 \r
 /**\r
  * Annotation for a rangeSpec - values can be attached for the\r
@@ -48,7 +39,7 @@ implements java.io.Serializable
     private java.lang.String _id;\r
 \r
     /**\r
-     * Field _modifiable\r
+     * Field _modifiable.\r
      */\r
     private java.lang.String _modifiable;\r
 \r
@@ -107,7 +98,7 @@ implements java.io.Serializable
     private java.util.Vector _scoreList;\r
 \r
     /**\r
-     * Field _linkList\r
+     * Field _linkList.\r
      */\r
     private java.util.Vector _linkList;\r
 \r
@@ -122,15 +113,14 @@ implements java.io.Serializable
      //- Constructors -/\r
     //----------------/\r
 \r
-    public RangeAnnotation() \r
-     {\r
+    public RangeAnnotation() {\r
         super();\r
         setGroup("");\r
-        _annotationElementList = new Vector();\r
-        _scoreList = new Vector();\r
-        _linkList = new Vector();\r
-        _propertyList = new Vector();\r
-    } //-- uk.ac.vamsas.objects.core.RangeAnnotation()\r
+        this._annotationElementList = new java.util.Vector();\r
+        this._scoreList = new java.util.Vector();\r
+        this._linkList = new java.util.Vector();\r
+        this._propertyList = new java.util.Vector();\r
+    }\r
 \r
 \r
       //-----------/\r
@@ -138,169 +128,169 @@ implements java.io.Serializable
     //-----------/\r
 \r
     /**\r
-     * Method addAnnotationElement\r
-     * \r
      * \r
      * \r
      * @param vAnnotationElement\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
      */\r
-    public void addAnnotationElement(uk.ac.vamsas.objects.core.AnnotationElement vAnnotationElement)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        _annotationElementList.addElement(vAnnotationElement);\r
-    } //-- void addAnnotationElement(uk.ac.vamsas.objects.core.AnnotationElement) \r
+    public void addAnnotationElement(\r
+            final uk.ac.vamsas.objects.core.AnnotationElement vAnnotationElement)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        this._annotationElementList.addElement(vAnnotationElement);\r
+    }\r
 \r
     /**\r
-     * Method addAnnotationElement\r
-     * \r
      * \r
      * \r
      * @param index\r
      * @param vAnnotationElement\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
      */\r
-    public void addAnnotationElement(int index, uk.ac.vamsas.objects.core.AnnotationElement vAnnotationElement)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        _annotationElementList.insertElementAt(vAnnotationElement, index);\r
-    } //-- void addAnnotationElement(int, uk.ac.vamsas.objects.core.AnnotationElement) \r
+    public void addAnnotationElement(\r
+            final int index,\r
+            final uk.ac.vamsas.objects.core.AnnotationElement vAnnotationElement)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        this._annotationElementList.add(index, vAnnotationElement);\r
+    }\r
 \r
     /**\r
-     * Method addLink\r
-     * \r
      * \r
      * \r
      * @param vLink\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
      */\r
-    public void addLink(uk.ac.vamsas.objects.core.Link vLink)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        _linkList.addElement(vLink);\r
-    } //-- void addLink(uk.ac.vamsas.objects.core.Link) \r
+    public void addLink(\r
+            final uk.ac.vamsas.objects.core.Link vLink)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        this._linkList.addElement(vLink);\r
+    }\r
 \r
     /**\r
-     * Method addLink\r
-     * \r
      * \r
      * \r
      * @param index\r
      * @param vLink\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
      */\r
-    public void addLink(int index, uk.ac.vamsas.objects.core.Link vLink)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        _linkList.insertElementAt(vLink, index);\r
-    } //-- void addLink(int, uk.ac.vamsas.objects.core.Link) \r
+    public void addLink(\r
+            final int index,\r
+            final uk.ac.vamsas.objects.core.Link vLink)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        this._linkList.add(index, vLink);\r
+    }\r
 \r
     /**\r
-     * Method addProperty\r
-     * \r
      * \r
      * \r
      * @param vProperty\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
      */\r
-    public void addProperty(uk.ac.vamsas.objects.core.Property vProperty)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        _propertyList.addElement(vProperty);\r
-    } //-- void addProperty(uk.ac.vamsas.objects.core.Property) \r
+    public void addProperty(\r
+            final uk.ac.vamsas.objects.core.Property vProperty)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        this._propertyList.addElement(vProperty);\r
+    }\r
 \r
     /**\r
-     * Method addProperty\r
-     * \r
      * \r
      * \r
      * @param index\r
      * @param vProperty\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
      */\r
-    public void addProperty(int index, uk.ac.vamsas.objects.core.Property vProperty)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        _propertyList.insertElementAt(vProperty, index);\r
-    } //-- void addProperty(int, uk.ac.vamsas.objects.core.Property) \r
+    public void addProperty(\r
+            final int index,\r
+            final uk.ac.vamsas.objects.core.Property vProperty)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        this._propertyList.add(index, vProperty);\r
+    }\r
 \r
     /**\r
-     * Method addScore\r
-     * \r
      * \r
      * \r
      * @param vScore\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
      */\r
-    public void addScore(uk.ac.vamsas.objects.core.Score vScore)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        _scoreList.addElement(vScore);\r
-    } //-- void addScore(uk.ac.vamsas.objects.core.Score) \r
+    public void addScore(\r
+            final uk.ac.vamsas.objects.core.Score vScore)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        this._scoreList.addElement(vScore);\r
+    }\r
 \r
     /**\r
-     * Method addScore\r
-     * \r
      * \r
      * \r
      * @param index\r
      * @param vScore\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
      */\r
-    public void addScore(int index, uk.ac.vamsas.objects.core.Score vScore)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        _scoreList.insertElementAt(vScore, index);\r
-    } //-- void addScore(int, uk.ac.vamsas.objects.core.Score) \r
+    public void addScore(\r
+            final int index,\r
+            final uk.ac.vamsas.objects.core.Score vScore)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        this._scoreList.add(index, vScore);\r
+    }\r
 \r
     /**\r
-     * Method enumerateAnnotationElement\r
-     * \r
-     * \r
+     * Method enumerateAnnotationElement.\r
      * \r
-     * @return Enumeration\r
+     * @return an Enumeration over all\r
+     * uk.ac.vamsas.objects.core.AnnotationElement elements\r
      */\r
-    public java.util.Enumeration enumerateAnnotationElement()\r
-    {\r
-        return _annotationElementList.elements();\r
-    } //-- java.util.Enumeration enumerateAnnotationElement() \r
+    public java.util.Enumeration enumerateAnnotationElement(\r
+    ) {\r
+        return this._annotationElementList.elements();\r
+    }\r
 \r
     /**\r
-     * Method enumerateLink\r
+     * Method enumerateLink.\r
      * \r
-     * \r
-     * \r
-     * @return Enumeration\r
+     * @return an Enumeration over all\r
+     * uk.ac.vamsas.objects.core.Link elements\r
      */\r
-    public java.util.Enumeration enumerateLink()\r
-    {\r
-        return _linkList.elements();\r
-    } //-- java.util.Enumeration enumerateLink() \r
+    public java.util.Enumeration enumerateLink(\r
+    ) {\r
+        return this._linkList.elements();\r
+    }\r
 \r
     /**\r
-     * Method enumerateProperty\r
-     * \r
+     * Method enumerateProperty.\r
      * \r
-     * \r
-     * @return Enumeration\r
+     * @return an Enumeration over all\r
+     * uk.ac.vamsas.objects.core.Property elements\r
      */\r
-    public java.util.Enumeration enumerateProperty()\r
-    {\r
-        return _propertyList.elements();\r
-    } //-- java.util.Enumeration enumerateProperty() \r
+    public java.util.Enumeration enumerateProperty(\r
+    ) {\r
+        return this._propertyList.elements();\r
+    }\r
 \r
     /**\r
-     * Method enumerateScore\r
-     * \r
+     * Method enumerateScore.\r
      * \r
-     * \r
-     * @return Enumeration\r
+     * @return an Enumeration over all\r
+     * uk.ac.vamsas.objects.core.Score elements\r
      */\r
-    public java.util.Enumeration enumerateScore()\r
-    {\r
-        return _scoreList.elements();\r
-    } //-- java.util.Enumeration enumerateScore() \r
+    public java.util.Enumeration enumerateScore(\r
+    ) {\r
+        return this._scoreList.elements();\r
+    }\r
 \r
     /**\r
-     * Note: hashCode() has not been overriden\r
+     * Overrides the java.lang.Object.equals method.\r
      * \r
      * @param obj\r
-     * @return boolean\r
+     * @return true if the objects are equal.\r
      */\r
-    public boolean equals(java.lang.Object obj)\r
-    {\r
+    public boolean equals(\r
+            final java.lang.Object obj) {\r
         if ( this == obj )\r
             return true;\r
         \r
@@ -390,55 +380,65 @@ implements java.io.Serializable
             return true;\r
         }\r
         return false;\r
-    } //-- boolean equals(java.lang.Object) \r
+    }\r
 \r
     /**\r
-     * Method getAnnotationElement\r
-     * \r
-     * \r
+     * Method getAnnotationElement.\r
      * \r
      * @param index\r
-     * @return AnnotationElement\r
-     */\r
-    public uk.ac.vamsas.objects.core.AnnotationElement getAnnotationElement(int index)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        //-- check bounds for index\r
-        if ((index < 0) || (index > _annotationElementList.size())) {\r
-            throw new IndexOutOfBoundsException("getAnnotationElement: Index value '"+index+"' not in range [0.."+_annotationElementList.size()+ "]");\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
+     * @return the value of the\r
+     * uk.ac.vamsas.objects.core.AnnotationElement at the given inde\r
+     */\r
+    public uk.ac.vamsas.objects.core.AnnotationElement getAnnotationElement(\r
+            final int index)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        // check bounds for index\r
+        if (index < 0 || index >= this._annotationElementList.size()) {\r
+            throw new IndexOutOfBoundsException("getAnnotationElement: Index value '" + index + "' not in range [0.." + (this._annotationElementList.size() - 1) + "]");\r
         }\r
         \r
-        return (uk.ac.vamsas.objects.core.AnnotationElement) _annotationElementList.elementAt(index);\r
-    } //-- uk.ac.vamsas.objects.core.AnnotationElement getAnnotationElement(int) \r
+        return (uk.ac.vamsas.objects.core.AnnotationElement) _annotationElementList.get(index);\r
+    }\r
 \r
     /**\r
-     * Method getAnnotationElement\r
-     * \r
-     * \r
+     * Method getAnnotationElement.Returns the contents of the\r
+     * collection in an Array.  <p>Note:  Just in case the\r
+     * collection contents are changing in another thread, we pass\r
+     * a 0-length Array of the correct type into the API call. \r
+     * This way we <i>know</i> that the Array returned is of\r
+     * exactly the correct length.\r
      * \r
-     * @return AnnotationElement\r
+     * @return this collection as an Array\r
      */\r
-    public uk.ac.vamsas.objects.core.AnnotationElement[] getAnnotationElement()\r
-    {\r
-        int size = _annotationElementList.size();\r
-        uk.ac.vamsas.objects.core.AnnotationElement[] mArray = new uk.ac.vamsas.objects.core.AnnotationElement[size];\r
-        for (int index = 0; index < size; index++) {\r
-            mArray[index] = (uk.ac.vamsas.objects.core.AnnotationElement) _annotationElementList.elementAt(index);\r
-        }\r
-        return mArray;\r
-    } //-- uk.ac.vamsas.objects.core.AnnotationElement[] getAnnotationElement() \r
+    public uk.ac.vamsas.objects.core.AnnotationElement[] getAnnotationElement(\r
+    ) {\r
+        uk.ac.vamsas.objects.core.AnnotationElement[] array = new uk.ac.vamsas.objects.core.AnnotationElement[0];\r
+        return (uk.ac.vamsas.objects.core.AnnotationElement[]) this._annotationElementList.toArray(array);\r
+    }\r
 \r
     /**\r
-     * Method getAnnotationElementCount\r
-     * \r
+     * Method getAnnotationElementAsReference.Returns a reference\r
+     * to '_annotationElementList'. No type checking is performed\r
+     * on any modifications to the Vector.\r
      * \r
+     * @return a reference to the Vector backing this class\r
+     */\r
+    public java.util.Vector getAnnotationElementAsReference(\r
+    ) {\r
+        return this._annotationElementList;\r
+    }\r
+\r
+    /**\r
+     * Method getAnnotationElementCount.\r
      * \r
-     * @return int\r
+     * @return the size of this collection\r
      */\r
-    public int getAnnotationElementCount()\r
-    {\r
-        return _annotationElementList.size();\r
-    } //-- int getAnnotationElementCount() \r
+    public int getAnnotationElementCount(\r
+    ) {\r
+        return this._annotationElementList.size();\r
+    }\r
 \r
     /**\r
      * Returns the value of field 'description'. The field\r
@@ -446,13 +446,12 @@ implements java.io.Serializable
      * description of the annotation\r
      *  \r
      * \r
-     * @return String\r
-     * @return the value of field 'description'.\r
+     * @return the value of field 'Description'.\r
      */\r
-    public java.lang.String getDescription()\r
-    {\r
+    public java.lang.String getDescription(\r
+    ) {\r
         return this._description;\r
-    } //-- java.lang.String getDescription() \r
+    }\r
 \r
     /**\r
      * Returns the value of field 'group'. The field 'group' has\r
@@ -460,13 +459,12 @@ implements java.io.Serializable
      * non-empty group name are grouped\r
      *  together \r
      * \r
-     * @return String\r
-     * @return the value of field 'group'.\r
+     * @return the value of field 'Group'.\r
      */\r
-    public java.lang.String getGroup()\r
-    {\r
+    public java.lang.String getGroup(\r
+    ) {\r
         return this._group;\r
-    } //-- java.lang.String getGroup() \r
+    }\r
 \r
     /**\r
      * Returns the value of field 'id'. The field 'id' has the\r
@@ -474,13 +472,12 @@ implements java.io.Serializable
      * referencing\r
      *  \r
      * \r
-     * @return String\r
-     * @return the value of field 'id'.\r
+     * @return the value of field 'Id'.\r
      */\r
-    public java.lang.String getId()\r
-    {\r
+    public java.lang.String getId(\r
+    ) {\r
         return this._id;\r
-    } //-- java.lang.String getId() \r
+    }\r
 \r
     /**\r
      * Returns the value of field 'label'. The field 'label' has\r
@@ -490,168 +487,193 @@ implements java.io.Serializable
      * place.\r
      *  \r
      * \r
-     * @return String\r
-     * @return the value of field 'label'.\r
+     * @return the value of field 'Label'.\r
      */\r
-    public java.lang.String getLabel()\r
-    {\r
+    public java.lang.String getLabel(\r
+    ) {\r
         return this._label;\r
-    } //-- java.lang.String getLabel() \r
+    }\r
 \r
     /**\r
-     * Method getLink\r
-     * \r
-     * \r
+     * Method getLink.\r
      * \r
      * @param index\r
-     * @return Link\r
-     */\r
-    public uk.ac.vamsas.objects.core.Link getLink(int index)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        //-- check bounds for index\r
-        if ((index < 0) || (index > _linkList.size())) {\r
-            throw new IndexOutOfBoundsException("getLink: Index value '"+index+"' not in range [0.."+_linkList.size()+ "]");\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
+     * @return the value of the uk.ac.vamsas.objects.core.Link at\r
+     * the given index\r
+     */\r
+    public uk.ac.vamsas.objects.core.Link getLink(\r
+            final int index)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        // check bounds for index\r
+        if (index < 0 || index >= this._linkList.size()) {\r
+            throw new IndexOutOfBoundsException("getLink: Index value '" + index + "' not in range [0.." + (this._linkList.size() - 1) + "]");\r
         }\r
         \r
-        return (uk.ac.vamsas.objects.core.Link) _linkList.elementAt(index);\r
-    } //-- uk.ac.vamsas.objects.core.Link getLink(int) \r
+        return (uk.ac.vamsas.objects.core.Link) _linkList.get(index);\r
+    }\r
 \r
     /**\r
-     * Method getLink\r
-     * \r
+     * Method getLink.Returns the contents of the collection in an\r
+     * Array.  <p>Note:  Just in case the collection contents are\r
+     * changing in another thread, we pass a 0-length Array of the\r
+     * correct type into the API call.  This way we <i>know</i>\r
+     * that the Array returned is of exactly the correct length.\r
      * \r
-     * \r
-     * @return Link\r
+     * @return this collection as an Array\r
      */\r
-    public uk.ac.vamsas.objects.core.Link[] getLink()\r
-    {\r
-        int size = _linkList.size();\r
-        uk.ac.vamsas.objects.core.Link[] mArray = new uk.ac.vamsas.objects.core.Link[size];\r
-        for (int index = 0; index < size; index++) {\r
-            mArray[index] = (uk.ac.vamsas.objects.core.Link) _linkList.elementAt(index);\r
-        }\r
-        return mArray;\r
-    } //-- uk.ac.vamsas.objects.core.Link[] getLink() \r
+    public uk.ac.vamsas.objects.core.Link[] getLink(\r
+    ) {\r
+        uk.ac.vamsas.objects.core.Link[] array = new uk.ac.vamsas.objects.core.Link[0];\r
+        return (uk.ac.vamsas.objects.core.Link[]) this._linkList.toArray(array);\r
+    }\r
 \r
     /**\r
-     * Method getLinkCount\r
-     * \r
+     * Method getLinkAsReference.Returns a reference to\r
+     * '_linkList'. No type checking is performed on any\r
+     * modifications to the Vector.\r
      * \r
+     * @return a reference to the Vector backing this class\r
+     */\r
+    public java.util.Vector getLinkAsReference(\r
+    ) {\r
+        return this._linkList;\r
+    }\r
+\r
+    /**\r
+     * Method getLinkCount.\r
      * \r
-     * @return int\r
+     * @return the size of this collection\r
      */\r
-    public int getLinkCount()\r
-    {\r
-        return _linkList.size();\r
-    } //-- int getLinkCount() \r
+    public int getLinkCount(\r
+    ) {\r
+        return this._linkList.size();\r
+    }\r
 \r
     /**\r
      * Returns the value of field 'modifiable'.\r
      * \r
-     * @return String\r
-     * @return the value of field 'modifiable'.\r
+     * @return the value of field 'Modifiable'.\r
      */\r
-    public java.lang.String getModifiable()\r
-    {\r
+    public java.lang.String getModifiable(\r
+    ) {\r
         return this._modifiable;\r
-    } //-- java.lang.String getModifiable() \r
+    }\r
 \r
     /**\r
-     * Method getProperty\r
-     * \r
-     * \r
+     * Method getProperty.\r
      * \r
      * @param index\r
-     * @return Property\r
-     */\r
-    public uk.ac.vamsas.objects.core.Property getProperty(int index)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        //-- check bounds for index\r
-        if ((index < 0) || (index > _propertyList.size())) {\r
-            throw new IndexOutOfBoundsException("getProperty: Index value '"+index+"' not in range [0.."+_propertyList.size()+ "]");\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
+     * @return the value of the uk.ac.vamsas.objects.core.Property\r
+     * at the given index\r
+     */\r
+    public uk.ac.vamsas.objects.core.Property getProperty(\r
+            final int index)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        // check bounds for index\r
+        if (index < 0 || index >= this._propertyList.size()) {\r
+            throw new IndexOutOfBoundsException("getProperty: Index value '" + index + "' not in range [0.." + (this._propertyList.size() - 1) + "]");\r
         }\r
         \r
-        return (uk.ac.vamsas.objects.core.Property) _propertyList.elementAt(index);\r
-    } //-- uk.ac.vamsas.objects.core.Property getProperty(int) \r
+        return (uk.ac.vamsas.objects.core.Property) _propertyList.get(index);\r
+    }\r
 \r
     /**\r
-     * Method getProperty\r
-     * \r
-     * \r
+     * Method getProperty.Returns the contents of the collection in\r
+     * an Array.  <p>Note:  Just in case the collection contents\r
+     * are changing in another thread, we pass a 0-length Array of\r
+     * the correct type into the API call.  This way we <i>know</i>\r
+     * that the Array returned is of exactly the correct length.\r
      * \r
-     * @return Property\r
+     * @return this collection as an Array\r
      */\r
-    public uk.ac.vamsas.objects.core.Property[] getProperty()\r
-    {\r
-        int size = _propertyList.size();\r
-        uk.ac.vamsas.objects.core.Property[] mArray = new uk.ac.vamsas.objects.core.Property[size];\r
-        for (int index = 0; index < size; index++) {\r
-            mArray[index] = (uk.ac.vamsas.objects.core.Property) _propertyList.elementAt(index);\r
-        }\r
-        return mArray;\r
-    } //-- uk.ac.vamsas.objects.core.Property[] getProperty() \r
+    public uk.ac.vamsas.objects.core.Property[] getProperty(\r
+    ) {\r
+        uk.ac.vamsas.objects.core.Property[] array = new uk.ac.vamsas.objects.core.Property[0];\r
+        return (uk.ac.vamsas.objects.core.Property[]) this._propertyList.toArray(array);\r
+    }\r
 \r
     /**\r
-     * Method getPropertyCount\r
-     * \r
+     * Method getPropertyAsReference.Returns a reference to\r
+     * '_propertyList'. No type checking is performed on any\r
+     * modifications to the Vector.\r
      * \r
-     * \r
-     * @return int\r
+     * @return a reference to the Vector backing this class\r
      */\r
-    public int getPropertyCount()\r
-    {\r
-        return _propertyList.size();\r
-    } //-- int getPropertyCount() \r
+    public java.util.Vector getPropertyAsReference(\r
+    ) {\r
+        return this._propertyList;\r
+    }\r
 \r
     /**\r
-     * Method getScore\r
-     * \r
+     * Method getPropertyCount.\r
      * \r
+     * @return the size of this collection\r
+     */\r
+    public int getPropertyCount(\r
+    ) {\r
+        return this._propertyList.size();\r
+    }\r
+\r
+    /**\r
+     * Method getScore.\r
      * \r
      * @param index\r
-     * @return Score\r
-     */\r
-    public uk.ac.vamsas.objects.core.Score getScore(int index)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        //-- check bounds for index\r
-        if ((index < 0) || (index > _scoreList.size())) {\r
-            throw new IndexOutOfBoundsException("getScore: Index value '"+index+"' not in range [0.."+_scoreList.size()+ "]");\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
+     * @return the value of the uk.ac.vamsas.objects.core.Score at\r
+     * the given index\r
+     */\r
+    public uk.ac.vamsas.objects.core.Score getScore(\r
+            final int index)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        // check bounds for index\r
+        if (index < 0 || index >= this._scoreList.size()) {\r
+            throw new IndexOutOfBoundsException("getScore: Index value '" + index + "' not in range [0.." + (this._scoreList.size() - 1) + "]");\r
         }\r
         \r
-        return (uk.ac.vamsas.objects.core.Score) _scoreList.elementAt(index);\r
-    } //-- uk.ac.vamsas.objects.core.Score getScore(int) \r
+        return (uk.ac.vamsas.objects.core.Score) _scoreList.get(index);\r
+    }\r
 \r
     /**\r
-     * Method getScore\r
+     * Method getScore.Returns the contents of the collection in an\r
+     * Array.  <p>Note:  Just in case the collection contents are\r
+     * changing in another thread, we pass a 0-length Array of the\r
+     * correct type into the API call.  This way we <i>know</i>\r
+     * that the Array returned is of exactly the correct length.\r
      * \r
-     * \r
-     * \r
-     * @return Score\r
+     * @return this collection as an Array\r
      */\r
-    public uk.ac.vamsas.objects.core.Score[] getScore()\r
-    {\r
-        int size = _scoreList.size();\r
-        uk.ac.vamsas.objects.core.Score[] mArray = new uk.ac.vamsas.objects.core.Score[size];\r
-        for (int index = 0; index < size; index++) {\r
-            mArray[index] = (uk.ac.vamsas.objects.core.Score) _scoreList.elementAt(index);\r
-        }\r
-        return mArray;\r
-    } //-- uk.ac.vamsas.objects.core.Score[] getScore() \r
+    public uk.ac.vamsas.objects.core.Score[] getScore(\r
+    ) {\r
+        uk.ac.vamsas.objects.core.Score[] array = new uk.ac.vamsas.objects.core.Score[0];\r
+        return (uk.ac.vamsas.objects.core.Score[]) this._scoreList.toArray(array);\r
+    }\r
 \r
     /**\r
-     * Method getScoreCount\r
-     * \r
+     * Method getScoreAsReference.Returns a reference to\r
+     * '_scoreList'. No type checking is performed on any\r
+     * modifications to the Vector.\r
      * \r
+     * @return a reference to the Vector backing this class\r
+     */\r
+    public java.util.Vector getScoreAsReference(\r
+    ) {\r
+        return this._scoreList;\r
+    }\r
+\r
+    /**\r
+     * Method getScoreCount.\r
      * \r
-     * @return int\r
+     * @return the size of this collection\r
      */\r
-    public int getScoreCount()\r
-    {\r
-        return _scoreList.size();\r
-    } //-- int getScoreCount() \r
+    public int getScoreCount(\r
+    ) {\r
+        return this._scoreList.size();\r
+    }\r
 \r
     /**\r
      * Returns the value of field 'status'. The field 'status' has\r
@@ -661,13 +683,12 @@ implements java.io.Serializable
      * quality to an\r
      *  annotation. \r
      * \r
-     * @return String\r
-     * @return the value of field 'status'.\r
+     * @return the value of field 'Status'.\r
      */\r
-    public java.lang.String getStatus()\r
-    {\r
+    public java.lang.String getStatus(\r
+    ) {\r
         return this._status;\r
-    } //-- java.lang.String getStatus() \r
+    }\r
 \r
     /**\r
      * Returns the value of field 'type'. The field 'type' has the\r
@@ -681,189 +702,294 @@ implements java.io.Serializable
      * and\r
      *  considered distinct from someotherDB:CHAIN \r
      * \r
-     * @return String\r
-     * @return the value of field 'type'.\r
+     * @return the value of field 'Type'.\r
      */\r
-    public java.lang.String getType()\r
-    {\r
+    public java.lang.String getType(\r
+    ) {\r
         return this._type;\r
-    } //-- java.lang.String getType() \r
+    }\r
 \r
     /**\r
-     * Method isValid\r
-     * \r
+     * Overrides the java.lang.Object.hashCode method.\r
+     * <p>\r
+     * The following steps came from <b>Effective Java Programming\r
+     * Language Guide</b> by Joshua Bloch, Chapter 3\r
      * \r
+     * @return a hash code value for the object.\r
+     */\r
+    public int hashCode(\r
+    ) {\r
+        int result = super.hashCode();\r
+        \r
+        long tmp;\r
+        if (_id != null) {\r
+           result = 37 * result + _id.hashCode();\r
+        }\r
+        if (_modifiable != null) {\r
+           result = 37 * result + _modifiable.hashCode();\r
+        }\r
+        if (_group != null) {\r
+           result = 37 * result + _group.hashCode();\r
+        }\r
+        if (_type != null) {\r
+           result = 37 * result + _type.hashCode();\r
+        }\r
+        if (_label != null) {\r
+           result = 37 * result + _label.hashCode();\r
+        }\r
+        if (_description != null) {\r
+           result = 37 * result + _description.hashCode();\r
+        }\r
+        if (_status != null) {\r
+           result = 37 * result + _status.hashCode();\r
+        }\r
+        if (_annotationElementList != null) {\r
+           result = 37 * result + _annotationElementList.hashCode();\r
+        }\r
+        if (_scoreList != null) {\r
+           result = 37 * result + _scoreList.hashCode();\r
+        }\r
+        if (_linkList != null) {\r
+           result = 37 * result + _linkList.hashCode();\r
+        }\r
+        if (_propertyList != null) {\r
+           result = 37 * result + _propertyList.hashCode();\r
+        }\r
+        \r
+        return result;\r
+    }\r
+\r
+    /**\r
+     * Method isValid.\r
      * \r
-     * @return boolean\r
+     * @return true if this object is valid according to the schema\r
      */\r
-    public boolean isValid()\r
-    {\r
+    public boolean isValid(\r
+    ) {\r
         try {\r
             validate();\r
-        }\r
-        catch (org.exolab.castor.xml.ValidationException vex) {\r
+        } catch (org.exolab.castor.xml.ValidationException vex) {\r
             return false;\r
         }\r
         return true;\r
-    } //-- boolean isValid() \r
+    }\r
 \r
     /**\r
-     * Method marshal\r
-     * \r
      * \r
      * \r
      * @param out\r
-     */\r
-    public void marshal(java.io.Writer out)\r
-        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
-    {\r
-        \r
+     * @throws org.exolab.castor.xml.MarshalException if object is\r
+     * null or if any SAXException is thrown during marshaling\r
+     * @throws org.exolab.castor.xml.ValidationException if this\r
+     * object is an invalid instance according to the schema\r
+     */\r
+    public void marshal(\r
+            final java.io.Writer out)\r
+    throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {\r
         Marshaller.marshal(this, out);\r
-    } //-- void marshal(java.io.Writer) \r
+    }\r
 \r
     /**\r
-     * Method marshal\r
-     * \r
      * \r
      * \r
      * @param handler\r
-     */\r
-    public void marshal(org.xml.sax.ContentHandler handler)\r
-        throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
-    {\r
-        \r
+     * @throws java.io.IOException if an IOException occurs during\r
+     * marshaling\r
+     * @throws org.exolab.castor.xml.ValidationException if this\r
+     * object is an invalid instance according to the schema\r
+     * @throws org.exolab.castor.xml.MarshalException if object is\r
+     * null or if any SAXException is thrown during marshaling\r
+     */\r
+    public void marshal(\r
+            final org.xml.sax.ContentHandler handler)\r
+    throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {\r
         Marshaller.marshal(this, handler);\r
-    } //-- void marshal(org.xml.sax.ContentHandler) \r
+    }\r
 \r
     /**\r
-     * Method removeAllAnnotationElement\r
-     * \r
      */\r
-    public void removeAllAnnotationElement()\r
-    {\r
-        _annotationElementList.removeAllElements();\r
-    } //-- void removeAllAnnotationElement() \r
+    public void removeAllAnnotationElement(\r
+    ) {\r
+        this._annotationElementList.clear();\r
+    }\r
 \r
     /**\r
-     * Method removeAllLink\r
-     * \r
      */\r
-    public void removeAllLink()\r
-    {\r
-        _linkList.removeAllElements();\r
-    } //-- void removeAllLink() \r
+    public void removeAllLink(\r
+    ) {\r
+        this._linkList.clear();\r
+    }\r
 \r
     /**\r
-     * Method removeAllProperty\r
-     * \r
      */\r
-    public void removeAllProperty()\r
-    {\r
-        _propertyList.removeAllElements();\r
-    } //-- void removeAllProperty() \r
+    public void removeAllProperty(\r
+    ) {\r
+        this._propertyList.clear();\r
+    }\r
 \r
     /**\r
-     * Method removeAllScore\r
-     * \r
      */\r
-    public void removeAllScore()\r
-    {\r
-        _scoreList.removeAllElements();\r
-    } //-- void removeAllScore() \r
+    public void removeAllScore(\r
+    ) {\r
+        this._scoreList.clear();\r
+    }\r
 \r
     /**\r
-     * Method removeAnnotationElement\r
-     * \r
+     * Method removeAnnotationElement.\r
      * \r
+     * @param vAnnotationElement\r
+     * @return true if the object was removed from the collection.\r
+     */\r
+    public boolean removeAnnotationElement(\r
+            final uk.ac.vamsas.objects.core.AnnotationElement vAnnotationElement) {\r
+        boolean removed = _annotationElementList.remove(vAnnotationElement);\r
+        return removed;\r
+    }\r
+\r
+    /**\r
+     * Method removeAnnotationElementAt.\r
      * \r
      * @param index\r
-     * @return AnnotationElement\r
+     * @return the element removed from the collection\r
      */\r
-    public uk.ac.vamsas.objects.core.AnnotationElement removeAnnotationElement(int index)\r
-    {\r
-        java.lang.Object obj = _annotationElementList.elementAt(index);\r
-        _annotationElementList.removeElementAt(index);\r
+    public uk.ac.vamsas.objects.core.AnnotationElement removeAnnotationElementAt(\r
+            final int index) {\r
+        java.lang.Object obj = this._annotationElementList.remove(index);\r
         return (uk.ac.vamsas.objects.core.AnnotationElement) obj;\r
-    } //-- uk.ac.vamsas.objects.core.AnnotationElement removeAnnotationElement(int) \r
+    }\r
 \r
     /**\r
-     * Method removeLink\r
-     * \r
+     * Method removeLink.\r
      * \r
+     * @param vLink\r
+     * @return true if the object was removed from the collection.\r
+     */\r
+    public boolean removeLink(\r
+            final uk.ac.vamsas.objects.core.Link vLink) {\r
+        boolean removed = _linkList.remove(vLink);\r
+        return removed;\r
+    }\r
+\r
+    /**\r
+     * Method removeLinkAt.\r
      * \r
      * @param index\r
-     * @return Link\r
+     * @return the element removed from the collection\r
      */\r
-    public uk.ac.vamsas.objects.core.Link removeLink(int index)\r
-    {\r
-        java.lang.Object obj = _linkList.elementAt(index);\r
-        _linkList.removeElementAt(index);\r
+    public uk.ac.vamsas.objects.core.Link removeLinkAt(\r
+            final int index) {\r
+        java.lang.Object obj = this._linkList.remove(index);\r
         return (uk.ac.vamsas.objects.core.Link) obj;\r
-    } //-- uk.ac.vamsas.objects.core.Link removeLink(int) \r
+    }\r
 \r
     /**\r
-     * Method removeProperty\r
-     * \r
+     * Method removeProperty.\r
      * \r
+     * @param vProperty\r
+     * @return true if the object was removed from the collection.\r
+     */\r
+    public boolean removeProperty(\r
+            final uk.ac.vamsas.objects.core.Property vProperty) {\r
+        boolean removed = _propertyList.remove(vProperty);\r
+        return removed;\r
+    }\r
+\r
+    /**\r
+     * Method removePropertyAt.\r
      * \r
      * @param index\r
-     * @return Property\r
+     * @return the element removed from the collection\r
      */\r
-    public uk.ac.vamsas.objects.core.Property removeProperty(int index)\r
-    {\r
-        java.lang.Object obj = _propertyList.elementAt(index);\r
-        _propertyList.removeElementAt(index);\r
+    public uk.ac.vamsas.objects.core.Property removePropertyAt(\r
+            final int index) {\r
+        java.lang.Object obj = this._propertyList.remove(index);\r
         return (uk.ac.vamsas.objects.core.Property) obj;\r
-    } //-- uk.ac.vamsas.objects.core.Property removeProperty(int) \r
+    }\r
 \r
     /**\r
-     * Method removeScore\r
-     * \r
+     * Method removeScore.\r
      * \r
+     * @param vScore\r
+     * @return true if the object was removed from the collection.\r
+     */\r
+    public boolean removeScore(\r
+            final uk.ac.vamsas.objects.core.Score vScore) {\r
+        boolean removed = _scoreList.remove(vScore);\r
+        return removed;\r
+    }\r
+\r
+    /**\r
+     * Method removeScoreAt.\r
      * \r
      * @param index\r
-     * @return Score\r
+     * @return the element removed from the collection\r
      */\r
-    public uk.ac.vamsas.objects.core.Score removeScore(int index)\r
-    {\r
-        java.lang.Object obj = _scoreList.elementAt(index);\r
-        _scoreList.removeElementAt(index);\r
+    public uk.ac.vamsas.objects.core.Score removeScoreAt(\r
+            final int index) {\r
+        java.lang.Object obj = this._scoreList.remove(index);\r
         return (uk.ac.vamsas.objects.core.Score) obj;\r
-    } //-- uk.ac.vamsas.objects.core.Score removeScore(int) \r
+    }\r
 \r
     /**\r
-     * Method setAnnotationElement\r
-     * \r
      * \r
      * \r
      * @param index\r
      * @param vAnnotationElement\r
-     */\r
-    public void setAnnotationElement(int index, uk.ac.vamsas.objects.core.AnnotationElement vAnnotationElement)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        //-- check bounds for index\r
-        if ((index < 0) || (index > _annotationElementList.size())) {\r
-            throw new IndexOutOfBoundsException("setAnnotationElement: Index value '"+index+"' not in range [0.."+_annotationElementList.size()+ "]");\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
+     */\r
+    public void setAnnotationElement(\r
+            final int index,\r
+            final uk.ac.vamsas.objects.core.AnnotationElement vAnnotationElement)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        // check bounds for index\r
+        if (index < 0 || index >= this._annotationElementList.size()) {\r
+            throw new IndexOutOfBoundsException("setAnnotationElement: Index value '" + index + "' not in range [0.." + (this._annotationElementList.size() - 1) + "]");\r
         }\r
-        _annotationElementList.setElementAt(vAnnotationElement, index);\r
-    } //-- void setAnnotationElement(int, uk.ac.vamsas.objects.core.AnnotationElement) \r
+        \r
+        this._annotationElementList.set(index, vAnnotationElement);\r
+    }\r
 \r
     /**\r
-     * Method setAnnotationElement\r
-     * \r
      * \r
      * \r
-     * @param annotationElementArray\r
+     * @param vAnnotationElementArray\r
      */\r
-    public void setAnnotationElement(uk.ac.vamsas.objects.core.AnnotationElement[] annotationElementArray)\r
-    {\r
+    public void setAnnotationElement(\r
+            final uk.ac.vamsas.objects.core.AnnotationElement[] vAnnotationElementArray) {\r
         //-- copy array\r
-        _annotationElementList.removeAllElements();\r
-        for (int i = 0; i < annotationElementArray.length; i++) {\r
-            _annotationElementList.addElement(annotationElementArray[i]);\r
+        _annotationElementList.clear();\r
+        \r
+        for (int i = 0; i < vAnnotationElementArray.length; i++) {\r
+                this._annotationElementList.add(vAnnotationElementArray[i]);\r
         }\r
-    } //-- void setAnnotationElement(uk.ac.vamsas.objects.core.AnnotationElement) \r
+    }\r
+\r
+    /**\r
+     * Sets the value of '_annotationElementList' by copying the\r
+     * given Vector. All elements will be checked for type safety.\r
+     * \r
+     * @param vAnnotationElementList the Vector to copy.\r
+     */\r
+    public void setAnnotationElement(\r
+            final java.util.Vector vAnnotationElementList) {\r
+        // copy vector\r
+        this._annotationElementList.clear();\r
+        \r
+        this._annotationElementList.addAll(vAnnotationElementList);\r
+    }\r
+\r
+    /**\r
+     * Sets the value of '_annotationElementList' by setting it to\r
+     * the given Vector. No type checking is performed.\r
+     * @deprecated\r
+     * \r
+     * @param annotationElementVector the Vector to set.\r
+     */\r
+    public void setAnnotationElementAsReference(\r
+            final java.util.Vector annotationElementVector) {\r
+        this._annotationElementList = annotationElementVector;\r
+    }\r
 \r
     /**\r
      * Sets the value of field 'description'. The field\r
@@ -873,10 +999,10 @@ implements java.io.Serializable
      * \r
      * @param description the value of field 'description'.\r
      */\r
-    public void setDescription(java.lang.String description)\r
-    {\r
+    public void setDescription(\r
+            final java.lang.String description) {\r
         this._description = description;\r
-    } //-- void setDescription(java.lang.String) \r
+    }\r
 \r
     /**\r
      * Sets the value of field 'group'. The field 'group' has the\r
@@ -886,10 +1012,10 @@ implements java.io.Serializable
      * \r
      * @param group the value of field 'group'.\r
      */\r
-    public void setGroup(java.lang.String group)\r
-    {\r
+    public void setGroup(\r
+            final java.lang.String group) {\r
         this._group = group;\r
-    } //-- void setGroup(java.lang.String) \r
+    }\r
 \r
     /**\r
      * Sets the value of field 'id'. The field 'id' has the\r
@@ -899,10 +1025,10 @@ implements java.io.Serializable
      * \r
      * @param id the value of field 'id'.\r
      */\r
-    public void setId(java.lang.String id)\r
-    {\r
+    public void setId(\r
+            final java.lang.String id) {\r
         this._id = id;\r
-    } //-- void setId(java.lang.String) \r
+    }\r
 \r
     /**\r
      * Sets the value of field 'label'. The field 'label' has the\r
@@ -914,122 +1040,203 @@ implements java.io.Serializable
      * \r
      * @param label the value of field 'label'.\r
      */\r
-    public void setLabel(java.lang.String label)\r
-    {\r
+    public void setLabel(\r
+            final java.lang.String label) {\r
         this._label = label;\r
-    } //-- void setLabel(java.lang.String) \r
+    }\r
 \r
     /**\r
-     * Method setLink\r
-     * \r
      * \r
      * \r
      * @param index\r
      * @param vLink\r
-     */\r
-    public void setLink(int index, uk.ac.vamsas.objects.core.Link vLink)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        //-- check bounds for index\r
-        if ((index < 0) || (index > _linkList.size())) {\r
-            throw new IndexOutOfBoundsException("setLink: Index value '"+index+"' not in range [0.."+_linkList.size()+ "]");\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
+     */\r
+    public void setLink(\r
+            final int index,\r
+            final uk.ac.vamsas.objects.core.Link vLink)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        // check bounds for index\r
+        if (index < 0 || index >= this._linkList.size()) {\r
+            throw new IndexOutOfBoundsException("setLink: Index value '" + index + "' not in range [0.." + (this._linkList.size() - 1) + "]");\r
         }\r
-        _linkList.setElementAt(vLink, index);\r
-    } //-- void setLink(int, uk.ac.vamsas.objects.core.Link) \r
+        \r
+        this._linkList.set(index, vLink);\r
+    }\r
 \r
     /**\r
-     * Method setLink\r
-     * \r
      * \r
      * \r
-     * @param linkArray\r
+     * @param vLinkArray\r
      */\r
-    public void setLink(uk.ac.vamsas.objects.core.Link[] linkArray)\r
-    {\r
+    public void setLink(\r
+            final uk.ac.vamsas.objects.core.Link[] vLinkArray) {\r
         //-- copy array\r
-        _linkList.removeAllElements();\r
-        for (int i = 0; i < linkArray.length; i++) {\r
-            _linkList.addElement(linkArray[i]);\r
+        _linkList.clear();\r
+        \r
+        for (int i = 0; i < vLinkArray.length; i++) {\r
+                this._linkList.add(vLinkArray[i]);\r
         }\r
-    } //-- void setLink(uk.ac.vamsas.objects.core.Link) \r
+    }\r
+\r
+    /**\r
+     * Sets the value of '_linkList' by copying the given Vector.\r
+     * All elements will be checked for type safety.\r
+     * \r
+     * @param vLinkList the Vector to copy.\r
+     */\r
+    public void setLink(\r
+            final java.util.Vector vLinkList) {\r
+        // copy vector\r
+        this._linkList.clear();\r
+        \r
+        this._linkList.addAll(vLinkList);\r
+    }\r
+\r
+    /**\r
+     * Sets the value of '_linkList' by setting it to the given\r
+     * Vector. No type checking is performed.\r
+     * @deprecated\r
+     * \r
+     * @param linkVector the Vector to set.\r
+     */\r
+    public void setLinkAsReference(\r
+            final java.util.Vector linkVector) {\r
+        this._linkList = linkVector;\r
+    }\r
 \r
     /**\r
      * Sets the value of field 'modifiable'.\r
      * \r
      * @param modifiable the value of field 'modifiable'.\r
      */\r
-    public void setModifiable(java.lang.String modifiable)\r
-    {\r
+    public void setModifiable(\r
+            final java.lang.String modifiable) {\r
         this._modifiable = modifiable;\r
-    } //-- void setModifiable(java.lang.String) \r
+    }\r
 \r
     /**\r
-     * Method setProperty\r
-     * \r
      * \r
      * \r
      * @param index\r
      * @param vProperty\r
-     */\r
-    public void setProperty(int index, uk.ac.vamsas.objects.core.Property vProperty)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        //-- check bounds for index\r
-        if ((index < 0) || (index > _propertyList.size())) {\r
-            throw new IndexOutOfBoundsException("setProperty: Index value '"+index+"' not in range [0.."+_propertyList.size()+ "]");\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
+     */\r
+    public void setProperty(\r
+            final int index,\r
+            final uk.ac.vamsas.objects.core.Property vProperty)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        // check bounds for index\r
+        if (index < 0 || index >= this._propertyList.size()) {\r
+            throw new IndexOutOfBoundsException("setProperty: Index value '" + index + "' not in range [0.." + (this._propertyList.size() - 1) + "]");\r
         }\r
-        _propertyList.setElementAt(vProperty, index);\r
-    } //-- void setProperty(int, uk.ac.vamsas.objects.core.Property) \r
+        \r
+        this._propertyList.set(index, vProperty);\r
+    }\r
 \r
     /**\r
-     * Method setProperty\r
      * \r
      * \r
-     * \r
-     * @param propertyArray\r
+     * @param vPropertyArray\r
      */\r
-    public void setProperty(uk.ac.vamsas.objects.core.Property[] propertyArray)\r
-    {\r
+    public void setProperty(\r
+            final uk.ac.vamsas.objects.core.Property[] vPropertyArray) {\r
         //-- copy array\r
-        _propertyList.removeAllElements();\r
-        for (int i = 0; i < propertyArray.length; i++) {\r
-            _propertyList.addElement(propertyArray[i]);\r
+        _propertyList.clear();\r
+        \r
+        for (int i = 0; i < vPropertyArray.length; i++) {\r
+                this._propertyList.add(vPropertyArray[i]);\r
         }\r
-    } //-- void setProperty(uk.ac.vamsas.objects.core.Property) \r
+    }\r
 \r
     /**\r
-     * Method setScore\r
+     * Sets the value of '_propertyList' by copying the given\r
+     * Vector. All elements will be checked for type safety.\r
      * \r
+     * @param vPropertyList the Vector to copy.\r
+     */\r
+    public void setProperty(\r
+            final java.util.Vector vPropertyList) {\r
+        // copy vector\r
+        this._propertyList.clear();\r
+        \r
+        this._propertyList.addAll(vPropertyList);\r
+    }\r
+\r
+    /**\r
+     * Sets the value of '_propertyList' by setting it to the given\r
+     * Vector. No type checking is performed.\r
+     * @deprecated\r
+     * \r
+     * @param propertyVector the Vector to set.\r
+     */\r
+    public void setPropertyAsReference(\r
+            final java.util.Vector propertyVector) {\r
+        this._propertyList = propertyVector;\r
+    }\r
+\r
+    /**\r
      * \r
      * \r
      * @param index\r
      * @param vScore\r
-     */\r
-    public void setScore(int index, uk.ac.vamsas.objects.core.Score vScore)\r
-        throws java.lang.IndexOutOfBoundsException\r
-    {\r
-        //-- check bounds for index\r
-        if ((index < 0) || (index > _scoreList.size())) {\r
-            throw new IndexOutOfBoundsException("setScore: Index value '"+index+"' not in range [0.."+_scoreList.size()+ "]");\r
+     * @throws java.lang.IndexOutOfBoundsException if the index\r
+     * given is outside the bounds of the collection\r
+     */\r
+    public void setScore(\r
+            final int index,\r
+            final uk.ac.vamsas.objects.core.Score vScore)\r
+    throws java.lang.IndexOutOfBoundsException {\r
+        // check bounds for index\r
+        if (index < 0 || index >= this._scoreList.size()) {\r
+            throw new IndexOutOfBoundsException("setScore: Index value '" + index + "' not in range [0.." + (this._scoreList.size() - 1) + "]");\r
         }\r
-        _scoreList.setElementAt(vScore, index);\r
-    } //-- void setScore(int, uk.ac.vamsas.objects.core.Score) \r
+        \r
+        this._scoreList.set(index, vScore);\r
+    }\r
 \r
     /**\r
-     * Method setScore\r
      * \r
      * \r
-     * \r
-     * @param scoreArray\r
+     * @param vScoreArray\r
      */\r
-    public void setScore(uk.ac.vamsas.objects.core.Score[] scoreArray)\r
-    {\r
+    public void setScore(\r
+            final uk.ac.vamsas.objects.core.Score[] vScoreArray) {\r
         //-- copy array\r
-        _scoreList.removeAllElements();\r
-        for (int i = 0; i < scoreArray.length; i++) {\r
-            _scoreList.addElement(scoreArray[i]);\r
+        _scoreList.clear();\r
+        \r
+        for (int i = 0; i < vScoreArray.length; i++) {\r
+                this._scoreList.add(vScoreArray[i]);\r
         }\r
-    } //-- void setScore(uk.ac.vamsas.objects.core.Score) \r
+    }\r
+\r
+    /**\r
+     * Sets the value of '_scoreList' by copying the given Vector.\r
+     * All elements will be checked for type safety.\r
+     * \r
+     * @param vScoreList the Vector to copy.\r
+     */\r
+    public void setScore(\r
+            final java.util.Vector vScoreList) {\r
+        // copy vector\r
+        this._scoreList.clear();\r
+        \r
+        this._scoreList.addAll(vScoreList);\r
+    }\r
+\r
+    /**\r
+     * Sets the value of '_scoreList' by setting it to the given\r
+     * Vector. No type checking is performed.\r
+     * @deprecated\r
+     * \r
+     * @param scoreVector the Vector to set.\r
+     */\r
+    public void setScoreAsReference(\r
+            final java.util.Vector scoreVector) {\r
+        this._scoreList = scoreVector;\r
+    }\r
 \r
     /**\r
      * Sets the value of field 'status'. The field 'status' has the\r
@@ -1041,10 +1248,10 @@ implements java.io.Serializable
      * \r
      * @param status the value of field 'status'.\r
      */\r
-    public void setStatus(java.lang.String status)\r
-    {\r
+    public void setStatus(\r
+            final java.lang.String status) {\r
         this._status = status;\r
-    } //-- void setStatus(java.lang.String) \r
+    }\r
 \r
     /**\r
      * Sets the value of field 'type'. The field 'type' has the\r
@@ -1060,34 +1267,38 @@ implements java.io.Serializable
      * \r
      * @param type the value of field 'type'.\r
      */\r
-    public void setType(java.lang.String type)\r
-    {\r
+    public void setType(\r
+            final java.lang.String type) {\r
         this._type = type;\r
-    } //-- void setType(java.lang.String) \r
+    }\r
 \r
     /**\r
-     * Method unmarshal\r
-     * \r
-     * \r
+     * Method unmarshal.\r
      * \r
      * @param reader\r
-     * @return RangeType\r
+     * @throws org.exolab.castor.xml.MarshalException if object is\r
+     * null or if any SAXException is thrown during marshaling\r
+     * @throws org.exolab.castor.xml.ValidationException if this\r
+     * object is an invalid instance according to the schema\r
+     * @return the unmarshaled uk.ac.vamsas.objects.core.RangeType\r
      */\r
-    public static uk.ac.vamsas.objects.core.RangeType unmarshal(java.io.Reader reader)\r
-        throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException\r
-    {\r
-        return (uk.ac.vamsas.objects.core.RangeAnnotation) Unmarshaller.unmarshal(uk.ac.vamsas.objects.core.RangeAnnotation.class, reader);\r
-    } //-- uk.ac.vamsas.objects.core.RangeType unmarshal(java.io.Reader) \r
+    public static uk.ac.vamsas.objects.core.RangeType unmarshal(\r
+            final java.io.Reader reader)\r
+    throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {\r
+        return (uk.ac.vamsas.objects.core.RangeType) Unmarshaller.unmarshal(uk.ac.vamsas.objects.core.RangeAnnotation.class, reader);\r
+    }\r
 \r
     /**\r
-     * Method validate\r
      * \r
+     * \r
+     * @throws org.exolab.castor.xml.ValidationException if this\r
+     * object is an invalid instance according to the schema\r
      */\r
-    public void validate()\r
-        throws org.exolab.castor.xml.ValidationException\r
-    {\r
+    public void validate(\r
+    )\r
+    throws org.exolab.castor.xml.ValidationException {\r
         org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();\r
         validator.validate(this);\r
-    } //-- void validate() \r
+    }\r
 \r
 }\r