[Biococoa-dev] peptides and proteins
Alexander Griekspoor
mek at mekentosj.com
Tue Sep 7 02:24:35 EDT 2004
Koen,
Both Tom and I discussed this and we have our doubt if this is the way
to go. We don't really see why we should add the intermediate
BCSequence class. I think this is the example of a manipulation you do
with a BCSequence (a digestion) which returns some sort of result that
by incidence is a collection of BCSequences as well. Similar examples
are perhaps PCR reactions, and especially DNA enzyme digests. To take
the latter as example, and how I would like to implement this is by
modelling things to real life.
I propose the following new classes:
BCEnzyme
|
---------------BCRestrictionEnzyme
|
---------------BCProtease
|
---------------etc
These can hold variables like optimal temperature, buffer conditions
etc. Not completely sure, but it might again be very handy to have a
predefined set as singletons (instead of instantiating 600 restriction
enzymes for each digest, let the BCRestrictionEnzyme create a singleton
dictionary the first time and access them from there the next time).
Then a BCUtilDigester(DNA/Protein) or something that can do the digest
ala your masscalculator (which I would like to call
BCUtilMassCalculator if that's ok by the way).
The result of a digest in the theoretical form of:
[BCUtilDigesterDNA performDigestWithSequence: aBCSequence andEnzymes:
anArrayOfBCEnzymes];
would be a BCDigest, a class that holds variables for the conditions
choosen, the enzymes used, and an array of BCSequences that represent
the fragments.
Another possible setup would be to instantiate a BCDigest first, fill
it with the parameters like enzymes, sequence, conditions etc, and then
let the class self or a BCUtilDigester perform the digest which fills
the array of fragments. Again, this is all theoretical stuff but I hope
it inspires a discussion. Having thought quite a bit about it given the
EnzymeX background, I thought this would be a nice system. I have a few
questions still, like if we need a BCFragment intermediate that not
only holds the sequence of the fragment, but also which restriction
enzyme cuts at the left site and which on the right. Thus:
BCDigest
|
--> dictionary of conditions
sequence of type BCSequence (complete sequence)
array of BCEnzymes
array of BCFragments
|
--> 5' BCEnzyme
3' BCEnzyme
NSRange within the BCSequence above
The fragment part is more or less what I have working in an upcoming
version of EnzymeX, and it works beautifully. Sorting fragments on
size, position etc is so easy! The approach for peptide digestions
could be very similar I guess.
Again, I don't think that we should put additional layers in the
BCSequence classes just to let them act as containers of multiple other
BCSequences for specific purposes like digestions or other
manipulations.
I'm sure there's enough to comment on ;-)
Alex
Op 4-sep-04 om 19:41 heeft Koen van der Drift het volgende geschreven:
> Hi,
>
> I am working on a class that digests a protein sequence, and returns
> an array of peptides. I am not sure if I want to use BCProteinSequence
> for the peptides, or that I should create a separate class
> BCSequencePeptide, and/or BCSequenceAminoAcid. In that case,
> BCProteinSequence is then a subclass of either one.
>
>
> My first thought would be to use this scheme:
>
>
> BCSequence
> |
> |
> |
> ------ BCSequencePeptide (or BCSequenceAminoAcid)
> |
> |
> |
> ------------BCSequenceProtein
>
>
>
> What do you guys think?
>
>
> cheers,
>
>
> - Koen.
>
> _______________________________________________
> Biococoa-dev mailing list
> Biococoa-dev at bioinformatics.org
> https://bioinformatics.org/mailman/listinfo/biococoa-dev
>
>
*********************************************************
** Alexander Griekspoor **
*********************************************************
The Netherlands Cancer Institute
Department of Tumorbiology (H4)
Plesmanlaan 121, 1066 CX, Amsterdam
Tel: + 31 20 - 512 2023
Fax: + 31 20 - 512 2029
AIM: mekentosj at mac.com
E-mail: a.griekspoor at nki.nl
Web: http://www.mekentosj.com
LabAssistant - Get your life organized!
http://www.mekentosj.com/labassistant
*********************************************************
More information about the Biococoa-dev
mailing list