logo       
Google Custom Search
    AddThis Social Bookmark Button

Re: Bio::Ontology overhaul: msg#00340

Subject: Re: Bio::Ontology overhaul
I see now that I'd misread your email. It is OntologyI that will get a unique 'name' and an arbitrary 'identifier', not TermI.

Regardless of whether <whatever>IdentifiableI is ever adopted, it seems that some consistency is worth striving for. It's really not a big deal if it's hard to change, but since you are soliciting comments, my comment is to wonder why we would have TermI's identifier be unique and OntologyI's identifier be arbitrary, when OntologyI's name is unique.

:Paul

Hilmar Lapp wrote:

First off, I'm not in particular favor of creating two interface name monsters that nobody else is used to from anywhere else. My viewpoint is that you can solve the problem by having different methods reflecting identifiers which are valid locally and those which are also valid globally. We had a discussion about that 5 minutes before we left off in Singapore. Lincoln's proposal hasn't been discussed on the list yet, so it may or may not finally happen.

Second, we made a decision a while ago to separate interfaces from one another wherever sensibly possible. In this case, OntologyI will not inherit off of <whichever>IdentifiableI, but an implementation may do so, and can then provide the alias if appropriate. (Similarly, SeqI doesn't inherit from IdentifiableI, but Seq does implement both.)

So, bottom line, if an ontology wants to be <whichever>IdentifiableI, my take is it will inherit from that interface and appropriately alias.

As for the TermI interface, it doesn't inherit from IdentifiableI either, but in fact I forgot to mention that I changed the Bio::Ontology::Term implementation to implement both Bio::IdentifiableI and Bio::DescribableI. TermI::identifier() is not meant to be an arbitrary identifier (as opposed to OntologyI::identifier); it will usually be assigned by the authority of the ontology.

    -hilmar

On Wednesday, February 26, 2003, at 05:16  PM, Paul Edlefsen wrote:

My immediate concern is compatability with Lincoln's proposed LocallyIdentifiableI and GloballyIdentifiableI interfaces (already checked in on the freaky dev branch). If there is going to be a unique identifier it should, for compatability with LocallyIdentifiableI, be called (or aliased) 'unique_id'. You are proposing that, in TermI, 'name' be unique and 'identifier' be arbitrary. Even if you were to add 'unique_id' as an alias to 'name', the homonymity of 'identifier' and 'unique_id' would be confusing.

:Paul




--
Paul T. Edlefsen  Software Engineer
<<<<<<<<<<<<<<<<  >>>>>>>>>>>>>>>>>
The Institute for Systems Biology
1441 North 34th Street
Seattle, Washington 98103-8904
<<<<<<<<<<<<<<<<  >>>>>>>>>>>>>>>>>
Email: paul@xxxxxxxxxxxxxxxxxx
Phone: (206)732-1336
Fax:   (206)732-1260



Try Searching:
servers, voip, java, networking, microsoft ...
<Prev in Thread] Current Thread [Next in Thread>