Hi Jan.
I've had a chance to take a look at the updates in more detail after getting the automated build working, and have some thoughts:
I just pushed a new version of my code.
I enabled the listPanel in the VARNA panel again. The user can now
choose between different RNAs in one VARNA panel.
By Default the consensus structure and a trimmed structure (all gaps
from the sequence are removed) are displayed.
Ok - a bit ugly but definitely progress. I tried this with the standard
Rfam (full) family example, since the seed alignment doesn't result in
this panel being shown, and had some problems with the trimmed
alignment. I suspect some of the 'gaps' in the consensus are actually
cases where there is a tie - Jalview uses a '-' character in that case,
when its actually not a gap (which is probably a bug, but in fact, most
folk are used to it now).
I've worked out what's going on here. When opening the VARNA panel for some sequences, the pairing structure in the trimmed structure is broken because there were gaps in the sequence that was selected when the varna panel was opened which broke the WUSS bracket pattern. This is probably going to happen often, so you'll need to add some checks to ensure that VARNA isn't passed an invalid structure .. or at least provide some visual indication that the consensus structure is not valid for that structure. I'm guessing that this should also be reflected in the Helix colourscheme - to highlight sequences where the consensus does not apply.
For the VARNA window, perhaps invalid structure WUSS strings could still be shown in the text field that you suggest below, but have it coloured in red (like VARNA can already do) to indicate that the structure is not valid. The user could then edit the trimmed structure and choose to annotate the sequence with it.
I noticed that I misunderstood the two text fields at top. They can not
be used for editing existing structures but just for adding new ones.
Therefore I do not think we need them at the moment.
Ok.
I thought about editing functions in VARNA that would be nice to have. I
think one mostly wants to edit the structure and not the sequence.
Therefore we could think about adding a text field for editing the
structure.
Lets try to think of the specific tasks that we'd like the user to perform:
1. view consensus structure for an alignment. This can now be done, but I think you need to explicitly call this structure 'Consensus' in the side panel and in the title shown in VARNA.
2. view how the consensus structure fits a particular sequence in the alignment - this is the trimmed WUSS string. Here, you need visual indications for whether the structure fits or not (check for compatible base pairing as well as gaps).
3. View a sequence's own secondary structure(s). Here, there will probably be some informative label on the annotation row that holds the secondary structure for the sequence (perhaps a special label indicating when this sequence forms this structure). All distinct 'sequence associated' secondary structures need to be distinguished in the VARNA side panel.
4. Compare two (or more) secondary structures. You mentioned the 'AlignmentDemo' - which looks like it allows two secondary structures to be compared - this could be used for :
a. comparing an observed secondary structure for a sequence against the consensus secondary structure for the alignment.
b. comparing different observed secondary structures for the same sequence.
c. comparing secondary structures from different sequences.
5. Editing/Creating new secondary structure. In any of the above viewing situations, the user might want to edit or create a new secondary structure entry. There are two situations this is probably useful:
a. curating a given secondary structure in the light of new knowledge, or comparison with the consensus for an alignment.
b. transferring a consensus prediction onto a specific sequence - this is essentially the next thing the user might want to do after performing step 2 - mapping the consensus onto a specific sequence, so you might need to provide a 'transfer' or 'save structure on sequence' button that saves the trimmed version as a new annotation row specifically associated with the given sequence, and then allows the user to edit the newly created structure.
If it would be possible to copy an existing structure the user could
edit the new one (that should be associated with that sequence in
jalview) and compare it with the already existing.
Not sure what you mean here - could you provide an example ?
I think that you were talking about the situation in 5.b. - where the user would want to copy an existing [consensus] structure onto a specific sequence, and then go on and edit it for that sequence, in the light of the original consensus structure for the alignment.
How do these use cases sound to you ? If they sound OK, then we can then look at exactly what kinds of GUI events need to be exchanged between jalview and varna (e.g. dynamic highlighting, selecting, colouring of varna usng Jalview, or colouring Jalview using varna, etc).
Jim.
···
On 01/07/2011 18:07, Jim Procter wrote:
On 01/07/2011 16:47, Jan Engelhardt wrote: