Been a lot of distractions here lately. The BLAST interface has been a bit delayed not because it's difficult but just because I need to get a "chunk" of continuous time to work on it. Hopefully this week. Meanwhile - something that I could do quickly is to add interface methods to the classes that don't yet have them, if that's okay with everyone else. We should settle on a standard "style" for the interface methods. I tend to like using "getWhatever()" and "setWhatever()" style names for the interfaces, just because it makes them more flexible, or so I believe. On the other hand, the "single interface" function (as Nico used in the Parse object) has certain benefits (in this case, the interface function would "set" the value if one is passed, or just "return" the value without changing the variable if no value is passed), not the least of which is that it automatically cuts in half the number of interface methods you have to worry about. The drawback to this (the only drawback I can think of) is that it makes it very cumbersome to impossible to "control" retrieval of variables (e.g. one might set the "get" interface for the Sequence so that if numbers are passed, it only returns a portion of the sequence). I suspect this won't commonly be a serious limitation, though. For what it's worth, the "single interface" method seems to be what BioPerl uses (and in my example, they have a separate "subseq()" function to deal with it.) 'course, as Serge pointed out, this won't STOP people from messing with the variables directly, but it will enable "object orientation-ally correct" use of our code. If we can agree on an interface method style and if nobody minds, I can go ahead and start adding them to classes in CVS for any classes nobody else gets to first...