Specify positions and/or regions on the principle dimension of some associated vamsas object TODO: this is abstract. should provide context to scope the range of ids for each use Keeping to jaxb-1.0 specification for the moment - this choice should become a substitution group when we use jaxb-2.0 capable bindings a position within the associated object's coordinate system a region from start to end, with flag for inclusivity of terminii when false, a consecutive range like 'start=1, end=2' means the region lying after position 1 and before position 2 contains unassociated trees and a number of analysis sets Primary Key for vamsas object referencing objects with modifiable=false will not be modified by a vamsas client update Properties. Generally, these are mutable so an application should check them each time. This may change depending on the context of the property Contains a named collection of trees TODO: define way of referencing leaves of global tree for any sequence/alignment object Primary Key for vamsas object referencing objects with modifiable=false will not be modified by a vamsas client update Primary Key for vamsas object referencing objects with modifiable=false will not be modified by a vamsas client update Named and typed property string The type specifies how the property will be parsed. Empty property strings are allowed, and can be used to prototype the input to a document. TODO: specify allowed types provenance contains source of annotation polymorphism for having collection of single points, or ordered set of regions with polarity (start.lt.end or end.lt.start) Note:These are mutable so an application should check them each time. Primary Key for vamsas object referencing objects with modifiable=false will not be modified by a vamsas client update Annotation with the same non-empty group name are grouped together Specifies a named and typed value used to perform some data transformation. LATER: experiment with xml validation of property set prototypes for services Named and typed property string The type specifies how the property will be parsed. Empty property strings are allowed, and can be used to prototype the input to a document. TODO: specify allowed types Selects all or part of a collection of vamsas objects as a named input to some transformation process. Reference Frame for rangeType specfication Defines the origin and series of operations applied directly to the object that references it. Who With which application Did what When additional information parameter for the action bioinformatic objects input to action Primary Key for vamsas object referencing A collection of sequences, alignments, trees and other things. a primary or secondary sequence record from which all other sequences may be derived Primary Key for vamsas object referencing Primary Key for vamsas object referencing symbol class for sequence Annotate over positions and regions of dataset sequences annotation may be associated with a particular sequence lying within the same reference frame as the rangeType's objRef Annotate over positions and regions of the alignment annotation may be associated with a particular sequence lying within the same reference frame as the rangeType's objRef TODO: hard to distinguish this from the alignment features element. Do we merge them and leave the applications Primary Key for vamsas object referencing Annotate over positions and regions of the ungapped sequences in the alignment TODO: have to remove id rangeSpec or require it to be the same as dataset sequence reference Primary Key for vamsas object referencing Dataset Sequence from which this alignment sequence is taken from typical properties may be alignment score objects Primary Key for vamsas object referencing objects with modifiable=false will not be modified by a vamsas client update Primary Key for vamsas object referencing per-site symbolic and/or quantitative annotation SecondaryStructure and display character (from Jalview) have been subsumed into the glyph element Free text at this position Discrete symbol - possibly graphically represented specifies the symbol dictionary for this glyph - eg utf8 (the default), aasecstr_3 or kd_hydrophobicity - the content is not validated so applications must ensure they gracefully deal with invalid entries here TODO: specify a minimum list of glyph dictionaries to get us started and provide a way for the vamsasClient to validate their content if regexes are specified Ordered set of float values - an application may treat the values together as a vector with common support for a set of annotation elements - but this is, again, not validated so applications should deal gracefully with varying numbers of dimensions position with respect to the coordinate frame defined by a rangeType specification true means the annotation element appears between the specified position and the next Primary Key for vamsas object referencing additional typed properties Data specific to a particular type and version of vamsas application Data available to just a particular user Data available to just a specific instance of the application VAMSAS/Pierre: Is this data volatile ? Application instances may not be accessible after the session has closed - the user may have to be presented with the option of picking up the data in that instance General data container to attach a typed data object to any vamsas object true implies data will be decompresses with Zip before presenting to application Type of arbitrary data - TODO: decide format - use (extended) MIME types ? Object the arbitrary data is associated with Primary Key for vamsas object referencing