[MOBY-dev] Breakin' the services for the final API

Mark Wilkinson markw at illuminae.com
Tue May 24 23:47:15 UTC 2005


Well... the time has come :-(

We need to break many of the existing services in order to make this
last change leading to the 1.0 API.

The conclusion we came to at the meeting is that inheriting from the
MOBY primitives was bad bad bad.  As such, all primitives will continue
to be MOBY objects, but nothing can inherit from them.  Objects that
require content (e.g. our Genbank Flat file object) will now be re-
defined to HASA String rather than ISA string.

Comically, this change in the API doesn't require any changes to the
code, but nevertheless it will break many services out there!

We just had a lab meeting and we made some decisions about how we think
the new objects should look.  The plan for the moment is to change the
ISA's to HASA's when an object inherits from a primitive, and to make
the HASA articleName be the same as the parent object type.  Therefore
the existing MOBY Object:

<genbank-flatfile ns='' id=''>Content Here</genbank-flatfile>


will become:

<genbank-flatfile ns='' id=''>
  <String ns='' id='' articleName='genbank-flatfile'>Content
Here</String>
</genbank-flatfile>


It's a shame to break so many services just when the latest paper has
come out and people are madly playing with MOBY, but... it's all for the
best!  This change to the API will make things much easier in the long
run.

If anyone has any objections to this please voice them ASAP.  It would
be good to make this change before the end of the month if at all
possible.

Cheers!

Mark





More information about the MOBY-dev mailing list