[Bioperl-l] RE: [Open-bio-l] seq namespace method

Michael L. Heuer heuermh@acm.org
Mon, 22 Jul 2002 10:35:53 -0400 (EDT)


Hello Matthew,

It's probably best to wait a bit before importing this into biojava
proper.  Things are still a little bit up in the air here on the list(s),
and I believe there is a LSID implementation in the omnigene codebase
that we should take a look at before committing to any one design.

I like the idea of removing the accessors from the Identifiable interface,
but would advocate leaving them in the abstract and support implementations.

   michael


On Fri, 19 Jul 2002, Matthew Pocock wrote:

> Great Michael,
>
> LifeScienceIdentifier looks good. I'd prefer Identifiable to drop all
> methods except getPreferredIdentifier() and getIdentifiers(). I think
> the other methods duplicate already available information (e.g.
> getAuthority etc can be found by calling
> getPreferredIdentifier().getAuthority() ). Putting functionality/api in
> exactly one place is generaly a good idea. What are your thoughts?
>
> What package would you like to put these classes/interfaces into? An
> existing package, or org.biojava.bio.lsid or org.biojava.bio.program.lsid?
>
> Matthew
>
> Michael L. Heuer wrote:
> > Having spent too much time in meetings lately, I felt the need to
> > actually code something, and whipped up a java implementation of LSIDs
> > based on the discussion here.  Being that this has been a moving target, I
> > may not have nailed it exactly right -- I went with containment and the
> > idea of a "preferred identifier", eg.
> >
> > interface LifeScienceIdentifier extends Immutable {
> >   public String getAuthority();
> >   public String getNamespace();
> >   public Object getObjectId();
> >   public Object getVersion();
> >
> >   public String asIdentifier();  // authority:namespace:object_id
> >   public String asCommonName();  //  namespace:object_id.version
> > }
> >
> > interface Identifiable {
> >   // delegate to preferred
> >   public String getAuthority();
> >   public String getNamespace();
> >   public Object getObjectId();
> >   public Object getVersion();
> >
> >   public LifeScienceIdentifier getPreferredIdentifier();
> >   public boolean hasMultipleIdentifiers();
> >   public List getIdentifiers();
> > }
> >
> > A tarball with implementations, factories, junit tests, etc. is available
> >
> >
> >>http://shore.net/~heuermh/lsid-PROPOSAL.tar.gz
> >
> >
> >    michael
> >
> >
>
> _______________________________________________
> Open-Bio-l mailing list
> Open-Bio-l@open-bio.org
> http://open-bio.org/mailman/listinfo/open-bio-l
>