Biomolecular Sequence Analysis Avatar
  1. OMG Specification

Biomolecular Sequence Analysis — All Issues

  • Acronym: BSA
  • Issues Count: 55
  • Description: All Issues
Closed All
All Issues

Issues Summary

Key Issue Reported Fixed Disposition Status
BSA-50 SeqRegionInvalid not just for wrong StrandTypes BSA 1.0b1 BSA 1.0 Resolved closed
BSA-52 clarification of SeqRegionOperator.ORDER BSA 1.0b1 BSA 1.0 Resolved closed
BSA-51 clarification of strand_type and CompositeSeqRegions BSA 1.0b1 BSA 1.0 Resolved closed
BSA-53 OutOfBounds exceptions for circular sequences if start = 0 BSA 1.0b1 BSA 1.0 Resolved closed
BSA-55 use key in Alignment's get_seq_region() BSA 1.0b1 BSA 1.0 Resolved closed
BSA-54 add BioSequence.get_annotations_by_name()? BSA 1.0b1 BSA 1.0 Resolved closed
BSA-47 module DsLSRAnalysis issue BSA 1.0b1 BSA 1.0 Resolved closed
BSA-46 inheritance in annotation iterators BSA 1.0b1 BSA 1.0 Resolved closed
BSA-36 section 2.1.9 (p. 2-25) BioSequence BSA 1.0b1 BSA 1.0 Resolved closed
BSA-35 section 2.1.9 (p. 2-24) BioSequence BSA 1.0b1 BSA 1.0 Resolved closed
BSA-39 section 2.1.15 (p. 2-44) Alignment BSA 1.0b1 BSA 1.0 Resolved closed
BSA-38 section 2.1.10 (p. 2-30) NucleotideSequence BSA 1.0b1 BSA 1.0 Resolved closed
BSA-45 add an Identifier to SeqRegion BSA 1.0b1 BSA 1.0 Resolved closed
BSA-44 Separate the Alignment interface into more managable pieces BSA 1.0b1 BSA 1.0 Resolved closed
BSA-43 IntervalList get_gaps(in AlignmentElement element, in Interval the_interval BSA 1.0b1 BSA 1.0 Resolved closed
BSA-42 typedef sequence IntervalList; is missing from the spec BSA 1.0b1 BSA 1.0 Resolved closed
BSA-41 section 2.1.25 (p. 2-71) GeneticCodeFactory BSA 1.0b1 BSA 1.0 Resolved closed
BSA-34 section 2.1.9 (p. 2-24) BioSequence BSA 1.0b1 BSA 1.0 Resolved closed
BSA-37 section 2.1.10 (p. 2-28) NucleotideSequence BSA 1.0b1 BSA 1.0 Resolved closed
BSA-40 section 2.1.22 (p. 2-63) SeqAnnotationOutOfBounds BSA 1.0b1 BSA 1.0 Resolved closed
BSA-16 why does SimilaritySearchHit contain a list of Alignments BSA 1.0b1 BSA 1.0 Resolved closed
BSA-15 Life cycle of an AnalysisInstance BSA 1.0b1 BSA 1.0 Resolved closed
BSA-19 do we have to be more strict about the contents of attributes BSA 1.0b1 BSA 1.0 Resolved closed
BSA-18 DsLSRBioObjects issue BSA 1.0b1 BSA 1.0 Resolved closed
BSA-17 using Time Service BSA 1.0b1 BSA 1.0 Resolved closed
BSA-11 time stamps in section 2.2.9 BSA 1.0b1 BSA 1.0 Resolved closed
BSA-10 method 'result()' of an AnalysisInstance object BSA 1.0b1 BSA 1.0 Resolved closed
BSA-14 Precise definition needed BSA 1.0b1 BSA 1.0 Resolved closed
BSA-13 2.2.10 about last_event BSA 1.0b1 BSA 1.0 Resolved closed
BSA-12 Exception NotRunning() is raised by terminate() only BSA 1.0b1 BSA 1.0 Resolved closed
BSA-8 2.2.10 input Properties BSA 1.0b1 BSA 1.0 Resolved closed
BSA-7 2.2.10 has a bullet "an AnalysisType" which is no more valid BSA 1.0b1 BSA 1.0 Resolved closed
BSA-9 2.2.10 the second paragraph is a bit confusing BSA 1.0b1 BSA 1.0 Resolved closed
BSA-6 Editorial issue in section 2.2.10 BSA 1.0b1 BSA 1.0 Resolved closed
BSA-49 Second issue - How to specify "repetitive" inputs BSA 1.0b1 BSA 1.0 Resolved closed
BSA-48 How to stringified CORBA TypeCodes BSA 1.0b1 BSA 1.0 Resolved closed
BSA-2 truncatable valuetypes BSA 1.0b1 BSA 1.0 Resolved closed
BSA-1 how to extend BSA DTF? BSA 1.0b1 BSA 1.0 Resolved closed
BSA-5 Ambiguous wording in section 2.2.10 BSA 1.0b1 BSA 1.0 Resolved closed
BSA-4 MultipleExceptions BSA 1.0b1 BSA 1.0 Resolved closed
BSA-3 Biomolecular FTF issue: orb.idl BSA 1.0b1 BSA 1.0 Resolved closed
BSA-27 proposed DsLSRBioObjects changes (04) BSA 1.0b1 BSA 1.0 Resolved closed
BSA-26 proposed DsLSRBioObjects changes (03) BSA 1.0b1 BSA 1.0 Resolved closed
BSA-30 section 2.1.5 (p. 2-7) - CompositeSeqRegion BSA 1.0b1 BSA 1.0 Resolved closed
BSA-29 why no CosLifeCycle::LifeCycleObject for BioSequence ? BSA 1.0b1 BSA 1.0 Resolved closed
BSA-21 Metadata for properties necessary? BSA 1.0b1 BSA 1.0 Resolved closed
BSA-20 BASIS_NOT_APPLICABLE BSA 1.0b1 BSA 1.0 Resolved closed
BSA-22 The spec mentions IUPAC-IUB single letter codes BSA 1.0b1 BSA 1.0 Resolved closed
BSA-33 section 2.1.9 (p. 2-24) BioSequence BSA 1.0b1 BSA 1.0 Resolved closed
BSA-32 section 2.1.9 (p. 2-22) SeqRegionInvalid BSA 1.0b1 BSA 1.0 Resolved closed
BSA-24 proposed DsLSRBioObjects changes (01) BSA 1.0b1 BSA 1.0 Resolved closed
BSA-23 DNASequence and RNASequence BSA 1.0b1 BSA 1.0 Resolved closed
BSA-28 proposed DsLSRBioObjects changes (05) BSA 1.0b1 BSA 1.0 Resolved closed
BSA-31 section 2.1.9 (p. 2-21) - IntervalOutOfBounds and SeqRegionOutOfBounds BSA 1.0b1 BSA 1.0 Resolved closed
BSA-25 proposed DsLSRBioObjects changes (02) BSA 1.0b1 BSA 1.0 Resolved closed

Issues Descriptions

SeqRegionInvalid not just for wrong StrandTypes

  • Key: BSA-50
  • Legacy Issue Number: 3961
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    Many methods have an Interval as an input parameter (directly, or indirectly
    as part of a SeqAnnotation)

    Since Interval can-be-a [Composite]SeqRegion, it would seem logical that all
    these methods can raise SeqRegionInvalid as well.

    Currently, SeqRegionInvalid can only be raised if the StrandType isn't
    appropriate; we think that it's natural to also raise it for wrong
    CompositeSeqRegion (e.g., when the CompositeSeqRegion has internal overlaps
    in cases wher this does not make sense).

    So the issue is 1) allow raising SeqRegionInvalid for reasons other than
    wrong strandtype and 2) add this exception to the relevant methods, which
    are:

    BioSequence

    • add_annotation
    • seq_interval
      NucleotideSequence
    • reverse_complement_interval

    Alignment

    • get_seq_region

    SingleCharacterAlignmentEncode

    • get_row_column_interval
    • get_row_interval

    AnnotationFactory

    • create_seq_annotation
      (this one also needs SeqRegionOutOfBounds)
  • Reported: BSA 1.0b1 — Tue, 17 Oct 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    Accepted. The text changes were pervasive, but minor.

  • Updated: Fri, 6 Mar 2015 20:57 GMT

clarification of SeqRegionOperator.ORDER

  • Key: BSA-52
  • Legacy Issue Number: 3963
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    The usage of the region_operator==ORDER can be clarified. I did not know this,
    but it turns out that ORDER is typically used for describing regions that
    don't as such get translated or transcribed as a contiguous stretch of
    biopolymers like exons are. Instead, they are often used for the location of
    descriptive annotations, such as 'histone binding region' or 'regulatory
    elements', or 'homology with mouse p53'.

    therefore, I propose to replace the text under ORDER of the enum
    SeqRegionOperator box to:

    ORDER should be used when the sub-regions are to be taken as an (ordered)
    set of sub-regions. Typically, it is used to represent a discontinuous region
    to which a descriptive annotation pertains.

  • Reported: BSA 1.0b1 — Tue, 17 Oct 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

clarification of strand_type and CompositeSeqRegions

  • Key: BSA-51
  • Legacy Issue Number: 3962
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    The methods

    BioSequence.seq_interval(in Interval the_interval),
    NucleotideSequence.translate_seq_region(in SeqRegion seq_region, ...)
    NucleotideSequence.reverse_complement_interval(in Interval the_interval)

    may all be called using a SeqRegion. In this case, the StrandType may be
    minus, and if that is the case, the string returned (for seq_interval) or the
    string 'transformed' (the other cases) should be taken as
    reverse-complemented. In the last case, this will result in a no-op,
    i.e. the strand_type leads to reverse-complementing, which is then
    reverse-complementing due to the semantics of the method, ending up in the
    same string that wouuld be had from seq_interval().

    We suggest adding verbiage to explain these semantics (if, of course, everyone
    agrees that this is the expected behaviour!)

    Similar to this issue is that all CompositeSeqRegions are expected to be
    translated in a depth-first traversal, along each node of the tree
    represented by the CompositeSeqRegions. This includes those nodes that have
    region_operator == JOIN or ORDER.

  • Reported: BSA 1.0b1 — Tue, 17 Oct 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

OutOfBounds exceptions for circular sequences if start = 0

  • Key: BSA-53
  • Legacy Issue Number: 3964
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    We propose to throw an OutOfBounds exception on circular sequences also if
    start=0.

  • Reported: BSA 1.0b1 — Tue, 17 Oct 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

use key in Alignment's get_seq_region()

  • Key: BSA-55
  • Legacy Issue Number: 3968
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    Problem: In section 2.1.15 Alignment's get_seq_region() method has
    AlignmentElement as an argument rather than the AlignmentElement's key.

    Proposed resolution: Change the IDL on p. 2-43, the method description
    on p. 2-46, and the IDL in appendix C.1.

  • Reported: BSA 1.0b1 — Wed, 18 Oct 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    Change the IDL on p. 2-43, the method description on p. 2-46, and the IDL in appendix C.1.

  • Updated: Fri, 6 Mar 2015 20:57 GMT

add BioSequence.get_annotations_by_name()?

  • Key: BSA-54
  • Legacy Issue Number: 3965
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    Given the wealth of annotations in many databases, we see the need for the
    addition of a method

    BioSequence.get_annotations_by_name(in string name);

    so that annotations can be retrieved more selectively.

  • Reported: BSA 1.0b1 — Tue, 17 Oct 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    rejected, see above

  • Updated: Fri, 6 Mar 2015 20:57 GMT

module DsLSRAnalysis issue

  • Key: BSA-47
  • Legacy Issue Number: 3924
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    During implementation of BSA we found that some analysis can return
    huge strings (not a big surprise ). Of course, the preferable way how
    to deal with them is to convert the string(s) to a BioObject and use an
    iterator defined for such object. However, because module DsLSRAnalysis is
    designed for general usage, it should be prepared also for dealing with
    long strings without any conversion (and let the client to do whatever
    needed and wanted).
    Therefore we are proposing to add an Iterator allowing to split long
    strings into manageable pieces (and it would work on sequences of octets
    as well). The remarks for such iterator:

    • It does not raise any exception (such as InvalidIterator) because the
      "iterated object" is considered unmutable.
    • It uses sequence of octets so it can be used for binary data as well
      (imagine transferring picture data - they may quite easily be results of
      an analysis).
    • It does not have method "next()" because it does not seem to be
      necessary to ask just for one single octet.
    • The parameter 'how_many' contains the maximal length of the returned
      sequence of octets in the out parameter.

    Proposed resolution:
    --------------------
    We propose to add the following into DsLSRAnalysis module (we will
    suggest what describing text to be added into the document only after we
    see a concensus on this issue, but basically the text will follow comments
    raised in the summary above):

    interface OctetIterator

    { boolean next_n(in unsigned long how_many, out CORBA::OctetSeq octets); void reset(); void destroy(); }

    ;

  • Reported: BSA 1.0b1 — Mon, 2 Oct 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    Rejected as out of scope for the FTF. The vote was 1 YES, 3 NO, and 1 ABSTAIN.

  • Updated: Fri, 6 Mar 2015 20:57 GMT

inheritance in annotation iterators

  • Key: BSA-46
  • Legacy Issue Number: 3875
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    During BSA implementation we have found that SeqAnnotationIterator does
    not inherit from AnnotationIterator, and that SeqAnnotationIterator is
    not used explicitly anywhere in the spec. Please can you remind me why it
    is like that, or confirm my feeling that something is missing there?

    I see several possible solutions of this issue - ca we discuss them
    briefly before going to the "resolution?

    1) Nothing is wrong in current spec, I have just missed something.

    2) The SeqAnnotationIterator will inherit from AnnotationIterator and its
    next() and next_n() methods will be renamed to something
    like next_seq_anno() and next_n_seq_anno(). Obviously, there would have be
    explanation that methods next() and next_seq_anno() should behave the
    same. Not too nice, and not too OO.

    3) The SeqAnnotationIterator will inherit from AnnotationIterator but will
    remain empty. Does this bring "more type safety" - that is the claimed
    reason why we have SeqAnnotationIterator at the first place.

    4) The SeqAnnotationIterator will be removed completely.

    5) BioSequence interface will get an addition method get_seq_annotations
    returning in out parameter a SeqAnnotationIterator (no inheritance between
    iterators needed).

    To be honest I cannot make my mind which solution I would prefer at the
    moment. Probably the ad 1).

  • Reported: BSA 1.0b1 — Tue, 26 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

section 2.1.9 (p. 2-25) BioSequence

  • Key: BSA-36
  • Legacy Issue Number: 3811
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    section 2.1.9 (p. 2-25) BioSequence
    The descriptions for both get_annotations() and num_annotations() need
    to be made more precise.

    Change

    Only the SeqAnnotations that overlap seq_region will be returned.

    to

    Only the SeqAnnotations that overlap seq_region and have compatible
    StrandTypes will be returned.

    Add the following tables.

    BioSequence Type Valid StrandTypes
    BioSequence STRAND_NOT_KNOWN
    NucleotideSequence STRAND_NOT_KNOWN,STRAND_PLUS,STRAND_MINUS,
    STRAND_BOTH
    AminoAcidSequence STRAND_NOT_APPLICABLE

    StrandType Matching StrandTypes
    STRAND_NOT_KNOWN STRAND_NOT_KNOWN, STRAND_PLUS, STRAND_MINUS,
    STRAND_BOTH
    STRAND_NOT_APPLICABLE STRAND_NOT_APPLICABLE
    STRAND_PLUS STRAND_NOT_KNOWN, STRAND_PLUS, STRAND_BOTH
    STRAND_MINUS STRAND_NOT_KNOWN, STRAND_MINUS, STRAND_BOTH
    STRAND_BOTH STRAND_NOT_KNOWN, STRAND_PLUS, STRAND_MINUS,
    STRAND_BOTH

  • Reported: BSA 1.0b1 — Thu, 7 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

section 2.1.9 (p. 2-24) BioSequence

  • Key: BSA-35
  • Legacy Issue Number: 3810
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    section 2.1.9 (p. 2-24) BioSequence
    seq_intervals()'s lone exception IntervalOutOfBounds is insufficient to
    handle cases where the Interval is actually a SeqRegion that has an
    invalid StrandType or SeqRegionOperator.

    I suggest adding SeqRegionInvalid to cover this case. I don't think we
    need to add SeqRegionOutOfBounds; IntervalOutOfBounds seems sufficient
    for coordinate problems.

  • Reported: BSA 1.0b1 — Thu, 7 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

section 2.1.15 (p. 2-44) Alignment

  • Key: BSA-39
  • Legacy Issue Number: 3814
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    section 2.1.15 (p. 2-44) Alignment
    In the description of the AlignType constants change

    However, more complex regions (e.g., a transmembrane spanning protein
    sequence segment, are entirely possible).

    to

    However, more complex regions, e.g., a transmembrane protein sequence
    segment, are entirely possible.

  • Reported: BSA 1.0b1 — Thu, 7 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

section 2.1.10 (p. 2-30) NucleotideSequence

  • Key: BSA-38
  • Legacy Issue Number: 3813
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    section 2.1.10 (p. 2-30) NucleotideSequence
    Under Exceptions for translate_seq_region() change

    If a NucleotideSequence represents circular DNA, then this exception
    should not be raised.

    to

    If a NucleotideSequence represents circular DNA, then this exception
    should be raised only if the length field of the SeqRegion input
    parameter is greater than that of the NucleotideSequence.

  • Reported: BSA 1.0b1 — Thu, 7 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

add an Identifier to SeqRegion

  • Key: BSA-45
  • Legacy Issue Number: 3874
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    Please add an Identifier to SeqRegion so that a CompositeSeqRegion can span multiple BioSequences.

  • Reported: BSA 1.0b1 — Mon, 25 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

Separate the Alignment interface into more managable pieces

  • Key: BSA-44
  • Legacy Issue Number: 3872
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    Separate the Alignment interface into more managable pieces as
    follows:

    interface SimpleAlignment : CosLifeCycle::LifeCycleObject

    { // ... // here, everything BUT get_seq_region() // ... }

    interface Alignment : SimpleAlignment

    { SeqRegion get_seq_region( in AlignmentElement element, in Interval the_interval) raises(ElementNotInAlignment, IntervalOutOfBounds); }

  • Reported: BSA 1.0b1 — Tue, 19 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    rejected, see above

  • Updated: Fri, 6 Mar 2015 20:57 GMT

IntervalList get_gaps(in AlignmentElement element, in Interval the_interval

  • Key: BSA-43
  • Legacy Issue Number: 3871
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    add an operation
    >
    > IntervalList get_gaps(in AlignmentElement element, in Interval the_interval);
    >
    > to the interface Alignment. It's job is to simply return all the gaps of a
    > particular sequence in a particular alignment. For symmetry with
    > get_seq_region(), the_interval is also given, thus limiting the gaps to those
    > that you're interested in.

  • Reported: BSA 1.0b1 — Tue, 19 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    Accepted. Changed the operation signature slightly from the above suggestion.

  • Updated: Fri, 6 Mar 2015 20:57 GMT

typedef sequence IntervalList; is missing from the spec

  • Key: BSA-42
  • Legacy Issue Number: 3870
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    typedef sequence<Interval> IntervalList; is missing from the spec. First sub issue of issue # 3687

  • Reported: BSA 1.0b1 — Tue, 19 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    Rejected. No change. CompositeSeqRegion already has this behavior.

  • Updated: Fri, 6 Mar 2015 20:57 GMT

section 2.1.25 (p. 2-71) GeneticCodeFactory

  • Key: BSA-41
  • Legacy Issue Number: 3816
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    section 2.1.25 (p. 2-71) GeneticCodeFactory
    The desription of the return value for the genetic_code_names atttribute
    is incorrect. Change

    Returns a GeneticCodeName.

    to

    Returns a GeneticCodeNameList.

  • Reported: BSA 1.0b1 — Thu, 7 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

section 2.1.9 (p. 2-24) BioSequence

  • Key: BSA-34
  • Legacy Issue Number: 3809
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    section 2.1.9 (p. 2-24) BioSequence
    Under Exceptions for seq_interval(), the text is not entirely accurate.
    If the length field of the Interval input parameter is greater than that
    of the BioSequence, IntervalOutOfBounds should be raised irrespective of
    circularity.

    Change

    If a BioSequence represents circular DNA, then this exception should
    not be raised.

    to

    If a BioSequence represents circular DNA, then this exception should
    be raised only if the length field of the Interval input parameter is
    greater than that of the BioSequence.
    -

  • Reported: BSA 1.0b1 — Thu, 7 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

section 2.1.10 (p. 2-28) NucleotideSequence

  • Key: BSA-37
  • Legacy Issue Number: 3812
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    section 2.1.10 (p. 2-28) NucleotideSequence
    Under Exceptions for reverse_complement_interval() change

    If a NucleotideSequence represents circular DNA, then this exception
    should not be raised.

    to

    If a NucleotideSequence represents circular DNA, then this exception
    should be raised only if the length field of the SeqRegion input
    parameter is greater than that of the NucleotideSequence.

  • Reported: BSA 1.0b1 — Thu, 7 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

section 2.1.22 (p. 2-63) SeqAnnotationOutOfBounds

  • Key: BSA-40
  • Legacy Issue Number: 3815
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    section 2.1.22 (p. 2-63) SeqAnnotationOutOfBounds
    Change the last line of the description from

    If a BioSequence represents circular DNA, then this exception should
    not be raised.

    to

    If a BioSequence represents circular DNA, then this exception should
    be raised only if the length field of the Interval input parameter is
    greater than that of the BioSequence.

  • Reported: BSA 1.0b1 — Thu, 7 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

why does SimilaritySearchHit contain a list of Alignments

  • Key: BSA-16
  • Legacy Issue Number: 3557
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    during our implementation work we came across the following a point that
    is puzzling:

    why does SimilaritySearchHit contain a list of Alignments? A SearchHit is a
    match of one target sequence with one or more matched sequence. Practically
    by definition, each such a hit is one alignment (even if the alignment is
    more than pairwise). So we should either change the spec to be

    valuetype SimilaritySearchHit : SearchHit

    { public Alignment the_alignment; }

    ;

    or, leave the spec and document that the only legal length for
    alignment_list is 1. Thoughts?

  • Reported: BSA 1.0b1 — Tue, 11 Apr 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    Accepted. Chose to make only the documentation change.

  • Updated: Fri, 6 Mar 2015 20:57 GMT

Life cycle of an AnalysisInstance

  • Key: BSA-15
  • Legacy Issue Number: 3556
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    Life cycle of an AnalysisInstance. These objects have the back pointer
    to their AnalysisServices. However, I can imagine the situation where
    clients have AnalysisInstance objects stored somewhere and using them to
    retrieve results of previously (even long ago) started and finished
    analysis.
    This normal situation can become interesting if the server does not
    provide that analysis any more. I feel that it would be still reasonable
    to provide access to the old stored results.
    Suggestions:
    But to allow it, our spec should mention this possibility - and allows
    to have this back poiter empty. So the client will have access to their
    data but with limited support from the server (for example the client
    cannot get metadata because the corresponding analysis is simply dead).
    Or we could say that the back poiner cannot remain empty but can return
    NO_OBJ... or whatever sytem exception (in situations as described above)>.
    Or, we'd have to change the readonly attribute to a method so that we
    can add the exception.

  • Reported: BSA 1.0b1 — Tue, 11 Apr 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    Accepted. Document the use of a CORBA system exception.

  • Updated: Fri, 6 Mar 2015 20:57 GMT

do we have to be more strict about the contents of attributes

  • Key: BSA-19
  • Legacy Issue Number: 3688
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    do we have to be more strict about the contents of attributes? E.g.,
    interface BioSequence
    {
    readonly attribute string name;
    readonly attribute Identifier id;
    readonly attribute string description;
    readonly attribute string seq;
    readonly attribute unsigned long length;
    readonly attribute Basis the_basis;

    has quite a few strings, all of which could be empty. We may want to
    explicitly allow or forbid this on some of them.

  • Reported: BSA 1.0b1 — Fri, 9 Jun 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

DsLSRBioObjects issue

  • Key: BSA-18
  • Legacy Issue Number: 3687
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    We have been busy implementing the BSA spec, and there's a few things in the
    DsLSRBioObjects part that we would like your opinion on.

    The biggest one concerns the Alignment interface. As anticipated by all of us
    except Ewan, Alignment is tricky to implement efficiently because of
    gaps. The only way to do it is to repeatedly invoke get_seq_region, and
    seeing if you get back a null. Of course, an AlignmentEncoder can do this on
    the server-side, but it this is still clumsy (and optional).

    Our main proposal is to add an operation

    IntervalList get_gaps(in AlignmentElement element, in Interval the_interval);

    to the interface Alignment. It's job is to simply return all the gaps of a
    particular sequence in a particular alignment. For symmetry with
    get_seq_region(), the_interval is also given, thus limiting the gaps to those
    that you're interested in.

    [ Incidentally,

    typedef sequence<Interval> IntervalList;

    is missing from the spec; can this be added? ]

    One gap would be represented as

    {start,length}

    , hence the use of Interval. We
    could add

    typedef Interval Gap;

    to make the semantics clearer (elsewhere, an Interval is an existing segment;
    here it denotes a missing segment). The coordinates of a gap would be those
    of the original sequence; gaps of length 0 are not allowed. A gap.start == 0
    would be before the first nucleotide/aminoacid; a gap.start = N is a gap
    between nucleotides/aminoacids N and N+1 (so gap.start = sequence.length
    would be after the last.

    Another proposal is to separate Alignment into more managable pieces as
    follows:

    interface SimpleAlignment : CosLifeCycle::LifeCycleObject

    { // ... // here, everything get_seq_region() // ... }

    interface Alignment : SimpleAlignment

    { SeqRegion get_seq_region( in AlignmentElement element, in Interval the_interval) raises(ElementNotInAlignment, IntervalOutOfBounds); }

  • Reported: BSA 1.0b1 — Fri, 9 Jun 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    split into issues 3870, 3871, 3872

  • Updated: Fri, 6 Mar 2015 20:57 GMT

using Time Service

  • Key: BSA-17
  • Legacy Issue Number: 3595
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    I would like to discuss the usage of data types from TimeBase module. It
    is probable that I just need some patient explanation - but it may also
    turn out that some clarification in our bsa spec could be made. I mean a
    clarification how to use the TimeBase data types properly.

    The talk is about the "absolute" attributes: created, started, ended
    (whatever moment they mean - it is a different topic).

    These attributes are expressed as TimeBase::UtcT. Which means that each
    of them consists from 4 values: TimeT, two InaccuracyT's and TdfT.
    The simplest is probably TdfT which defines in which time zone the
    analysis was executed. Is this interpretation correct?
    The members for inaccuracy may be used to say that the main time (in
    TimeT, see below) is actually only precise for milliseconds - because I
    guess most implementations and languages give us easily only milliseconds
    and not 100 nanoseconds. Again, would this interpretation of these
    attributes be correct?
    The main attribute is TimeT. Here is the definition from the TimeBase
    spec:

    "TimeT represents a single time value, which is 64 bits in size, and
    holds the number of 100 nanoseconds that have passed since the base time.
    For absolute time the base is 15 October 1582 00:00 of the Gregorian
    Calendar. All absolute time shall be computed using dates from the
    Gregorian Calendar."

    My question is: Does CORBA Time Service specify that this attribute
    must be an absolute time? Would not be easier (and more appropriate for
    our purposes) to say in our spec that this time is relative to the
    beginning of the epoch (1/1/1970)? In other words, there are actually two
    questions:

    • Do we need to use an absolute time here (to remain compliant with the
      Time Service)?
    • And if the answer is "no", then: do we want to have here an absolute
      gregorian time?
  • Reported: BSA 1.0b1 — Wed, 3 May 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    Accepted. Yes, we use absolute time, in compliance with the Time Service. No change to specification

  • Updated: Fri, 6 Mar 2015 20:57 GMT

time stamps in section 2.2.9

  • Key: BSA-11
  • Legacy Issue Number: 3552
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    About time stamps attributes (Execution performance information) in
    section 2.2.9: it is not clear if the current set of attributes is rich
    enough to provide the real "execution" information. Calling run()
    method is not necessary the same as starting an execution (considering
    some queueing sytem).
    Suggestion: to discuss and maybe to add an attribute keeping the "real"
    execution start; anyway the spec needs probably some clarification.

  • Reported: BSA 1.0b1 — Tue, 11 Apr 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

method 'result()' of an AnalysisInstance object

  • Key: BSA-10
  • Legacy Issue Number: 3551
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    Regarding method 'result()' of an AnalysisInstance object:
    If a particular result does not exist (not yet, or at all), should
    this method just ignore it, or to send back "an empty" Any (with tc kind
    tc_void)?
    Also we should specify what happen if methods result() and
    get_result() are called when an analysis is in the states CREATED and/or
    RUNNING (as we do it for TERMINATED* states).
    Suggestion: it needs to be discuss whether some document clarification
    would be enough, or if we want to have an additional exception.

  • Reported: BSA 1.0b1 — Tue, 11 Apr 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

Precise definition needed

  • Key: BSA-14
  • Legacy Issue Number: 3555
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    The document only indicates (by examples) how to code CORBA::TypeCodes
    into stringified form used in metadata. We need much precise definition
    how to do it and what to expect in 'type' tag of metadata.
    Suggestion:
    a) to investigate if such "rules" already exist in OMG worlds (such
    as XMI), then clarify it in our document.
    b) we may find that for sequences of IDL types defined in
    DsLSRBioObjects module we will need to add also several sequence<...>
    constructs in our spec (fortunately we have already quite a lot there);
    this would be needed for being able to specify a "repetitive" argument -
    when we do not know how many occurences it can have.

  • Reported: BSA 1.0b1 — Tue, 11 Apr 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    split into issues 3933 and 3934

  • Updated: Fri, 6 Mar 2015 20:57 GMT

2.2.10 about last_event

  • Key: BSA-13
  • Legacy Issue Number: 3554
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    2.2.10 about last_event says "last event that occurrred during
    execution". So what does this attribute return when the analysis instance
    is still in CREATED state?
    Suggestion: clarify in the document that in such case a plain
    AnalysisEvent is returned.

  • Reported: BSA 1.0b1 — Tue, 11 Apr 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

Exception NotRunning() is raised by terminate() only

  • Key: BSA-12
  • Legacy Issue Number: 3553
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    Exception NotRunning() is raised by terminate() only (as I remember) if
    the analysis is "not yet" running, but it should not be raised if it is
    already terminated.
    Suggestion: discuss if we can agree on the sentence above, and include
    it into the document.

  • Reported: BSA 1.0b1 — Tue, 11 Apr 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    Accepted. It was decided that a state transition should be added.

  • Updated: Fri, 6 Mar 2015 20:57 GMT

2.2.10 input Properties

  • Key: BSA-8
  • Legacy Issue Number: 3549
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    2.2.10 says "the input Properties that were used in execution".
    Which is not exact - the input properties are available already after
    creation of an AnalysisInstance, even before any execution started,
    Suggestion: to change the wording to something like "used in
    creation of this AnalysisInstance".

  • Reported: BSA 1.0b1 — Tue, 11 Apr 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

2.2.10 has a bullet "an AnalysisType" which is no more valid

  • Key: BSA-7
  • Legacy Issue Number: 3548
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    2.2.10 has a bullet "an AnalysisType" which is no more valid - an
    AnalysisInstance does not have any such attribute.
    Suggestion: to remove the bullet

  • Reported: BSA 1.0b1 — Tue, 11 Apr 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

2.2.10 the second paragraph is a bit confusing

  • Key: BSA-9
  • Legacy Issue Number: 3550
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    2.2.10 the second paragraph is a bit confusing. If you read it
    slowly it may give you impression that run() is used for asynchonous
    invocation and wait() for synchronous.
    Suggestion: to replace the last sentence with:
    "If the client wants to be blocked waiting for the underlying BSA
    analysis tool to run to completion, it will invoke the run() method,
    followed immediately by the wait() method which will block the client
    until service execution completes."

  • Reported: BSA 1.0b1 — Tue, 11 Apr 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

Editorial issue in section 2.2.10

  • Key: BSA-6
  • Legacy Issue Number: 3547
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    2.2.10 (and on other places) says "the JobControl that clients can
    use to control the execution...".
    I think that the word "can" is misleading here, a client could not
    start an analysis without a JobControl.
    Suggestion: to drop "can".

  • Reported: BSA 1.0b1 — Tue, 11 Apr 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

Second issue - How to specify "repetitive" inputs

  • Key: BSA-49
  • Legacy Issue Number: 3934
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    Summary:
    > We need to be able to send variable number of inputs of the same name
    > and type to an analysis (variable because we may not know in advance how
    > many "repetitions" will be sent by a client). I am going to make a
    > proposal (based on mail discussion with Mike Dickson and others) when this
    > issue gets new number.

  • Reported: BSA 1.0b1 — Tue, 11 Apr 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted, see above

  • Updated: Fri, 6 Mar 2015 20:57 GMT

How to stringified CORBA TypeCodes

  • Key: BSA-48
  • Legacy Issue Number: 3933
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    We need precise definition how to express CORBA TypeCode as a string
    > which is needed for using it in metadata attribute "type" in input/output
    > property spec. I am going to make a proposal on that when this issue gets
    > new number.

  • Reported: BSA 1.0b1 — Tue, 11 Apr 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

truncatable valuetypes

  • Key: BSA-2
  • Legacy Issue Number: 3336
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    It seems to me that we have an error (or errors) in our spec. If I am
    right I would like to bring this issue to the attention of the FTF during
    Denver meeting.
    Please help me to find if I am mistaken or not.

    My understanding is that for being able to extend BSA spec by
    introducing new valuetypes as subclasses of the existing (in BSA
    spec) valuetypes, we need to use "truncatable" in our spec. Having it the
    "extended" servers can still provide sub-classed valuetypes to the "dumb"
    clients (those who understand only the original valuetype). But without
    this keyword the extended servers can work only with extended clients.
    Which is not what we wanted (remember the discussion with Oxford Molec.
    about it).
    Also the BSA document says in 1.4.1 that we are going to use
    "truncatable". However, we did not.

  • Reported: BSA 1.0b1 — Mon, 21 Feb 2000 05:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

how to extend BSA DTF?

  • Key: BSA-1
  • Legacy Issue Number: 3335
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    The question is how to extend BSA metadata to be able to include
    additional vendor-specific tags.
    Originally, I have suggested tag <extension> of type ANY to be used for
    these specific tags. However, in that time my understanding of ANY was
    wrong. I thought that an element of type ANY can have any data including
    new tags. Which was a wrong assumption. One can use only tags (any of
    them) defined in the DTD.
    So now my understanding is that if I need a vendor-specific tags, I
    need to extend DTD. The XML books say that an internal DTD has priority
    over an external DTD and that document authors can override things using
    their own internal DTD. Is this the way how to extend BSA metadata?
    I have tried. Here is an example of an extended XML file with an
    internal DTD defined new tags:

    <?xml version = "1.0"?>
    <!DOCTYPE DsLSRAnalysis SYSTEM "http://localhost/openBSA/docs/DsLSRAnalysis.dtd" [
    <!ELEMENT extension (part1?,part2?,part3*)>
    <!ELEMENT part1 ANY>
    <!ELEMENT part2 ANY>
    <!ELEMENT part3 ANY>
    ]>

    <DsLSRAnalysis>
    <analysis type = "search.list">
    <extension>
    <part1> this is part 1 </part1>
    </extension>
    </analysis>
    </DsLSRAnalysis>

    Unfortunately, this does not pass validation tests. I am getting an
    error saying "Error at (file http://....DsLSRAnalysis.dtd, line 13, char
    25): Duplicate element name, "extension".

    Any ideas what I am doing wrong, or what is the correct way how to
    extend BSA metadata? Is the element <extension> in BSA DTD useable at all?
    If yes, how can be used, if not, should we re-consider it in the FTF?

  • Reported: BSA 1.0b1 — Mon, 21 Feb 2000 05:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    Accepted. A valid DTD was defined.

  • Updated: Fri, 6 Mar 2015 20:57 GMT

Ambiguous wording in section 2.2.10

  • Key: BSA-5
  • Legacy Issue Number: 3546
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    2.2.10 says "An AnalysisInstance object must offer...the
    EventChannel to which it publishes its analysis events and the last event
    that occurred..."
    The wording seems to me ambiguous. I guess that an AnalysisInstance
    offer the last event, not the EventChannel - so the last event should be
    under separate bullet.
    Suggestion: to split the bullet into two, and also reiterate that the
    EventChannel can be null (as stated in 2.2.7).

  • Reported: BSA 1.0b1 — Tue, 11 Apr 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

MultipleExceptions

  • Key: BSA-4
  • Legacy Issue Number: 3451
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    Doing my implementation of AnalysisService::create_analysis() I have
    found that MultipleExceptions exception does give me only little space for
    sending back explanation why the parameter checking failed. I can say
    what property caused the failure and I can roughly tell a type of this
    failure. But unfortunately there is no 'reason' string to be filled with
    an explanatory message.

  • Reported: BSA 1.0b1 — Thu, 23 Mar 2000 05:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    closed

  • Updated: Fri, 6 Mar 2015 20:57 GMT

Biomolecular FTF issue: orb.idl

  • Key: BSA-3
  • Legacy Issue Number: 3437
  • Status: closed  
  • Source: Japan Biological Informatics Consortium ( Martin Senger)
  • Summary:

    The corba spec says (in chapter 3.14 "CORBA Module") that "the file
    orb.idl must be included in IDL files that use names defined in the CORBA module".

    Our spec does contain (in module DsLSRAnalysis) CORBA::TypeCode. So I
    guess that we should have also #include <orb.idl> there. Some ORBs may
    not compile it properly without it.

  • Reported: BSA 1.0b1 — Tue, 21 Mar 2000 05:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

proposed DsLSRBioObjects changes (04)

  • Key: BSA-27
  • Legacy Issue Number: 3699
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    Add SequenceAlphabet. We decided early on to avoid the sequence
    alphabet issue. Well, it's back. It's pretty difficult to actually
    build a GeneticCode or check for invalid residues in the sequence
    factories without some standard functionality. The following is
    based on the IDL extensions we using in our implementation. The
    design was patterned after what the submitters did for GeneticCode.
    By the way, this fits in nicely with Philip's comment about adding
    DNASequence and RNASequence.

    typedef sequence<Residue> ResidueList;

    typedef string SequenceAlphabetName;
    typedef sequence<SequenceAlphabetName> SequenceAlphabetNameList;

    interface SequenceAlphabet

    { readonly attribute SequenceAlphabetName name; // valid is the union of unambiguous and ambiguous readonly attribute ResidueList valid_residues; readonly attribute ResidueList unambiguous_residues; readonly attribute ResidueList ambiguous_residues; boolean is_valid(in Residue the_residue); boolean is_ambiguous(in Residue the_residue); // returns the list of all residues included (represented) by // the input residue, e.g., return A for A and ACGT for N ResidueList included_residues(in Residue the_residue) raises(InvalidResidue); }

    ;

    interface NucleotideSequenceAlphabet : SequenceAlphabet

    { readonly attribute ResidueList complementary_valid_residues; readonly attribute ResidueList complementary_unambiguous_residues; readonly attribute ResidueList complementary_ambiguous_residues; Residue complement(in Residue the_residue) raises(InvalidResidue); }

    ;

    interface AminoAcidSequenceAlphabet : SequenceAlphabet
    {
    };

    exception InvalidSequenceAlphabetName

    { string invalid_name; }

    ;

    interface SequenceAlphabetFactory

    { const SequenceAlphabetName IUPAC_DNA = "IUPAC DNA"; const SequenceAlphabetName IUPAC_RNA = "IUPAC RNA"; const SequenceAlphabetName IUPAC_AA = "IUPAC AA"; readonly attribute SequenceAlphabetNameList sequence_alphabet_names; SequenceAlphabet create_sequence_alphabet(in SequenceAlphabetName name) raises(InvalidSequenceAlphabetName); }

    ;

    interface GeneticCode

    { // in addition to its current functionality and the initiators // and terminators proposed above readonly attribute NucleotideSequenceAlphabet nucleotide_sequence_alphabet; readonly attribute AminoAcidSequenceAlphabet amino_acid_sequence_alphabet; }

    ;

    interface BioSequence

    { // in addition to its current functionality readonly attribute SequenceAlphabet sequence_alphabet; }

    ;

  • Reported: BSA 1.0b1 — Mon, 12 Jun 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    Rejected as out of scope for the FTF. Withdrawn by proposer.

  • Updated: Fri, 6 Mar 2015 20:57 GMT

proposed DsLSRBioObjects changes (03)

  • Key: BSA-26
  • Legacy Issue Number: 3698
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    Add initiators and terminators to GeneticCode. Try using GeneticCode
    to build an ORF finder and you'll appreciate the following
    functionality.

    typedef sequence<Codon> CodonList;

    interface GeneticCode

    { // in addition to existing functionality readonly attribute CodonList initiators; readonly attribute CodonList terminators; boolean is_initiator(in Codon the_codon) raises(InvalidResidue); boolean is_terminator(in Codon the_codon) raises(InvalidResidue); }

    ;

  • Reported: BSA 1.0b1 — Mon, 12 Jun 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    Rejected as out of scope for the FTF. Withdrawn by proposer.

  • Updated: Fri, 6 Mar 2015 20:57 GMT

section 2.1.5 (p. 2-7) - CompositeSeqRegion

  • Key: BSA-30
  • Legacy Issue Number: 3805
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    section 2.1.5 (p. 2-7) - CompositeSeqRegion
    The second paragraph correctly states that a CompositeSeqRegion's start
    and length are not defined. It should also state that strand_type and
    start_relative_to_seq_end are not defined.

  • Reported: BSA 1.0b1 — Thu, 7 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

why no CosLifeCycle::LifeCycleObject for BioSequence ?

  • Key: BSA-29
  • Legacy Issue Number: 3763
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    CosLifeCycle::LifeCycleObject, but BioSequence itself does not ?

    Was this deemed to present too much constraints on BioSequence ?

    The problem that Fabien Campagne <campagne@inka.mssm.edu> notes with this is
    that a client of BioSequences can only call remove() on one of the
    sub-classes, not on an un-extended BioSequence itself, nor on a different
    sub-class that does not have a remove() operation (or maybe has it under a
    different name or whatever).

    He thinks this is bad design because without remove(), the client loose the
    option of trying to be cooperative in the resource management of the
    server. I have to agree on this point.

    Or is inheriting from LifeCycleObject not there mainly of remove() ? In that
    case, why the asymmetry between BioSequence and it's sub-class.

  • Reported: BSA 1.0b1 — Fri, 21 Jul 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

Metadata for properties necessary?

  • Key: BSA-21
  • Legacy Issue Number: 3690
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:
    • We have many properties lying around the spec; do we need a mechanism for
      getting meta data on this? I think we must have discussed in some detail,
      but the situation is quite pressing for SearchHit in particular: there we
      have hit_info, where prolly the most important piece of information is the
      goodness of the hit. What's the name of that: "score"? "p-value"?
      "quality"? What's it's type: float? double ? long? I realize that this is
      difficult to answer (otherwise we would have included it), but we are open
      to suggestions to make the standard a bit more precise in this respect
      (e.g., we're still willing to host a public repository kind-a-thing).
  • Reported: BSA 1.0b1 — Fri, 9 Jun 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

BASIS_NOT_APPLICABLE

  • Key: BSA-20
  • Legacy Issue Number: 3689
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    For enum Basis, we only have BASIS_NOT_KNOWN; for consistence with enum
    StrandTytpe, shouldn't we also have BASIS_NOT_APPLICABLE?

    (actually, I think this Basis thing may turn out to become on epistemological
    nightmare, but I digress)

  • Reported: BSA 1.0b1 — Fri, 9 Jun 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

The spec mentions IUPAC-IUB single letter codes

  • Key: BSA-22
  • Legacy Issue Number: 3691
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    The spec mentions IUPAC-IUB single letter codes,

    I think this has been renamed to IUPAC-IUBMB Joint Commission on
    Biochemical Nomenclature (JCBN); the best web site for this is

    http://www.chem.qmw.ac.uk/iupac/AminoAcid/ (amino acids)
    http://www.chem.qmw.ac.uk/iubmb/misc/naseq.html (nucleic acids)

    http://www.chem.qmw.ac.uk/iubmb/nomenclature/ (all biostandards)

    Might be useful to include in the references.

    IUB allows termination characters in amino acids; I think we should not
    allow them. Also, it might be good to explicitly state that gap characters
    ('-' or so) are not supposed to be in sequences (this is fairly implicit in
    IUPAC, so I think had doesn't hurt to be clear about this).

  • Reported: BSA 1.0b1 — Fri, 9 Jun 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

section 2.1.9 (p. 2-24) BioSequence

  • Key: BSA-33
  • Legacy Issue Number: 3808
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    section 2.1.9 (p. 2-24) BioSequence
    Change the description of description from

    The description attribute is a concise description of the
    sequence typically would include functional information (e.g.,
    the contents of the description line from a Fasta file).

    to

    The description attribute, a concise description of the BioSequence,
    typically includes some functional information, e.g., the contents of
    the description line from a FASTA file.

  • Reported: BSA 1.0b1 — Thu, 7 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

section 2.1.9 (p. 2-22) SeqRegionInvalid

  • Key: BSA-32
  • Legacy Issue Number: 3807
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    section 2.1.9 (p. 2-22) SeqRegionInvalid
    The description is too narrow. Add another example, e.g.,

    StrandType is inappropriate for a given type of BioSequence (e.g.,
    StrandType other than NOT_APPLICABLE in an AminoAcidSequence)

  • Reported: BSA 1.0b1 — Thu, 7 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

proposed DsLSRBioObjects changes (01)

  • Key: BSA-24
  • Legacy Issue Number: 3696
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    Several issues have come up during our implementation of the BSA
    specification at NetGenics. In light of what we've learned, I'd like
    to propose the following.

    • Have the BSA factories, e.g., AnnotationFactory, inherit from
      CosLifeCycle::Factory. CosLifeCycle::LifeCycleObject's copy() and
      and move() methods take a CosLifeCycle::FactoryFinder as their
      first argument. CosLifeCycle::FactoryFinder naturally returns
      CosLifeCycle::Factories. Note that CosLifeCycle::Factory is just a
      typedef'd Object, so no additional implementation is required. So,
      for no additional work, we can make the use of CosLifeCycle easier.
  • Reported: BSA 1.0b1 — Mon, 12 Jun 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    Rejected as out of scope for the FTF. Withdrawn by proposer.

  • Updated: Fri, 6 Mar 2015 20:57 GMT

DNASequence and RNASequence

  • Key: BSA-23
  • Legacy Issue Number: 3692
  • Status: closed  
  • Source: med.uu.nl ( Philip Lijnzaad)
  • Summary:

    Can anybody remember why we don't have DNASequence and RNASequence, both
    inheriting from NucleotideSequence?

  • Reported: BSA 1.0b1 — Fri, 9 Jun 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    rejected and closed

  • Updated: Fri, 6 Mar 2015 20:57 GMT

proposed DsLSRBioObjects changes (05)

  • Key: BSA-28
  • Legacy Issue Number: 3700
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    Consider changing AlignmentElement's element from an Object to a
    BioSequence. At the moment element is required to have a name and
    provide character-based data, but there's no way to ensure that
    behavior. I really dislike implementations that have to hard code
    checks on the type of a data member. If the upcoming BSA follow-on
    RFPs add new bio-objects, we'll end up checking for BioSequence,
    HMM, profile, etc., and then have to treat each one individually.
    The real way to solve this problem is to have a BioObject, but that
    clearly outside the scope of the current FTF.

  • Reported: BSA 1.0b1 — Mon, 12 Jun 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    Rejected as out of scope for the FTF. Withdrawn by proposer.

  • Updated: Fri, 6 Mar 2015 20:57 GMT

section 2.1.9 (p. 2-21) - IntervalOutOfBounds and SeqRegionOutOfBounds

  • Key: BSA-31
  • Legacy Issue Number: 3806
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:

    section 2.1.9 (p. 2-21) - IntervalOutOfBounds and SeqRegionOutOfBounds
    Change

    If a BioSequence represents circular DNA, then this exception should
    not be raised.

    to

    If a BioSequence represents circular DNA, then this exception should
    not be raised, unless the SeqRegion's length is greater than that of
    the BioSequence.

  • Reported: BSA 1.0b1 — Thu, 7 Sep 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT

proposed DsLSRBioObjects changes (02)

  • Key: BSA-25
  • Legacy Issue Number: 3697
  • Status: closed  
  • Source: SciTegic Inc. ( Scott Markel)
  • Summary:
    • Remove CosLifeCycle::LifeCycleObject behavior from GeneticCode.
      It seems to make sense to have GeneticCodes be singletons, so copy(),
      move(), and remove() really aren't needed.
  • Reported: BSA 1.0b1 — Mon, 12 Jun 2000 04:00 GMT
  • Disposition: Resolved — BSA 1.0
  • Disposition Summary:

    accepted

  • Updated: Fri, 6 Mar 2015 20:57 GMT