X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=schemas%2Fvamsas.xsd;h=94b78ab962ea3408bff5a3f0be353ac1416c8524;hb=1eea4b639911330e7cd65e17c5421cc584f0d22e;hp=4511438d4cbe7ecaf9bb5104592f050340e31098;hpb=0d67cba71afead29b0922ab0eb0412500b7b86fc;p=vamsas.git diff --git a/schemas/vamsas.xsd b/schemas/vamsas.xsd index 4511438..94b78ab 100644 --- a/schemas/vamsas.xsd +++ b/schemas/vamsas.xsd @@ -1,18 +1,69 @@ + - - + + + + Vorba ID - Vamsas Object Request Broker Address ID (name needs to be + worked on): Suggest it could be of the form documentRoot/datasetName/SequenceUID for a + dataset sequence. Alignment sequence: documentRoot/datasetName/AlignmentId/SequenceUID + for an aligned form of a dataset sequence + + + contains unassociated trees and a number of analysis sets + + - + + + Primary Key for vamsas object referencing + + + + + 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. SUggestion 1: Each named tree leafnode has a unique + id (which may be unique in combination with trees own vorba ID). Dataset + sequences can be tagged with a property "vamsas:tree_leaf" + @@ -20,27 +71,362 @@ - + + + Primary Key for vamsas object referencing + + + + + + + node identity and mapping data between tree + representations and vamsas document objects + + + + + + + reference to one or more trees containing + the node being described. + + + + + String uniquely identifying a particular + node in the referenced tree according to the format of + the tree representation that is referenced. + + + + + + + + + - + + + Primary Key for vamsas object referencing + + + + + + + + base type for citing arbitrary links between vamsas objects + + + + + + Optional human readable description of the relationship + + + + + Primary Key for vamsas object referencing + + + + + + List of one or more vamsas object + references + + + + + + + + + + Short name for this node + + + + + Descriptive text for this node + + + + + Direct associations between this node and any vamsas + objects + + + + + + + Primary Key for vamsas object referencing + + + + + + + + + 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 + + + + + + + + + + Primitive labelled URI object + + + + + + The URI + + + + + + + + + Specify an ordered set of positions and/or regions on the principle + dimension of some associated vamsas object + 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 + + + + + + + + + + + Annotation for a rangeSpec - values can be attached for the whole + specification, and to each position within the spec. following the orientation + specified by the ordered set of rangeSpec (pos, seg) elements. + + + + + + + Short, meaningful name for the annotation - if this + is absent, then the type string should be used in its place. + + + + + + Human readable description of the annotation + + + + + + TODO: specify this - we have considered taking the GO + evidence codes as a model for assessing a measure of quality to an + annotation. + + + + + Annotation Element position maps to ordered positions + defined by the sequence of rangeType pos positions or concatenated + seg start/end segments. + + + + + Ordered set of optionally named float values for the + whole annotation + + + + + + + + + + + + + Note:These are mutable so an application should check + them each time. + + + + + + Primary Key for vamsas object referencing + + + + + + + Annotation with the same non-empty group name are grouped + together + + + + + A Das Feature has both a type and a Type ID. We go the + route of requiring the type string to be taken from a controlled + vocabulary if an application expects others to make sense of it. The + type may qualified - so uniprot:CHAIN is a valid type name, and + considered distinct from someotherDB:CHAIN + + + + + + + + + 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. Many inputs with the same name imply a + group input (such as a collection of sequences) + + + + + + + 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 + + + @@ -48,55 +434,210 @@ + + A collection of sequences, alignments, trees and other things. + TODO: Add a title field and properties for programs that can + present the user with different distinct datasets For the moment, the program + just presents them as a list and perhaps lets the user work out which dataset it + wants based on the alignments that it contains. (Dominik and Jim 7th June 2007) + + + + a primary or secondary sequence record from which all + other sequences may be derived + + + Store a list of database references + for this sequence record - with optional mapping + from database sequence to the given sequence record + + + - - - - + + + + + the local mapType maps from the parent + sequence coordinate frame to the reference + frame defined by the dbRef element. + The mapped mapType is the mapped range defined + on the dbRef element's reference frame. + Conventionally, the unit attribute defaults to 1, or + will be inferred from the local sequence's + dictionary type and any dictionary type associated + with the database being mapped to. + However, it may be used to avoid ambiguity. + + + + + + + + + + + + + + + + TODO Database Naming + Convention: either start using LSID (so + change type to URI) or leave this as an + uncontrolled/unspecified string ID + + + + + + Version must be specified - + + + + + + TODO: make some specification + of the database field from which this + accessionId is taken from - should that be a + special property of the dbRef object ? + + + + + + Primary Key for vamsas object + referencing + + + + + explicitly named cross reference to + other objects in the document. + + + + + + Primary Key for vamsas object referencing + + + + + + symbol class for sequence + + + + + + + + + + + + A mapping between the specified 'local' and 'mapped' sequence coordinate frames. + The step size between each coordinate frame depends on the sequence + dictionary types, or alternatively specified in the optional unit + attribute on each range element. + + + + + - - + + + Object on which the local + range is defined. + + + + + Object on which the mapped + range is defined. + + + - - - - - - - - - - - + + Annotate over positions and regions of a dataset + sequence + + + + + + + + + annotation is associated with a + particular dataset sequence + + + + - + + + This is annotation over the coordinate frame + defined by all the columns in the alignment. + + - - - - - - - - + + + + + + + + TODO: decide if this flag is + redundant - when true it would suggest that + the annotationElement values together form a + graph + + + + + annotation is associated with + a range on a particular group of alignment + sequences + + + + + @@ -104,70 +645,279 @@ - - + + + + + Annotate over + positions and regions of the + ungapped sequence in the context of + the alignment + + + + + + + + + + TODO: + decide if this flag is + redundant - when true it + would suggest that the + annotationElement values + together form a graph + + + + + + + + + + + + Primary Key for vamsas object + referencing + + + + + Dataset Sequence from which + this alignment sequence is taken from + + + + + + typical properties may be additional + alignment score objects + + - + + + Primary Key for vamsas object referencing + + + + - + + + 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 + + - - - + + + Version string describing the application specific + data storage version used + + + + + Canonical name of application + + + + + + + + + + + + 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 + + + @@ -178,4 +928,54 @@ + + + Two sets of ranges defined between objects - usually sequences, indicating which + regions on each are mapped. + + + + + + + + + + + + + + + + + + + + + + + + + number of dictionary symbol widths involved in each + mapped position on this sequence (for example, 3 for a dna sequence exon + region that is being mapped to a protein sequence). This is optional, + since the unit can be usually be inferred from the dictionary type of + each sequence involved in the mapping. + + + + + + + + + Contains lock information: locktype:ApplicationHandle locktype is + 'local' or 'full' A lock is only valid if the ApplicationHandle resolves to a living + application in the vamsas session. A local lock means that the application has + locked changes to all local properties on the object. A full lock means that the + application has locked changes to all properties on the object, and any objects that + it holds references to. + + +