Ray: thanks for taking the time to unpack my comments.
> As I see it there are three choices:
> (a Develop the perfect/universal record metadata schema.
> (b) Develop a good (not perfect) one and allow some degree of extensibility.
> (c) Forget the whole matter, let people develop their own private
> extensions for administrative metadata.
My personal experience has been that software that meets a particular
need today (which can appear perfect) often looks less than perfect
tomorrow as requirements have shifted overnight. I imagine (perhaps
incorrectly) that we all agree that extensibility is vital for a
software implementation (or standard) to survive over time--and that
perfection is impossible.
The SRU development process itself is extensible since it allows the
standard to be versioned over time. Versioning allows the spec to be
pulled in a variety of directions. When creating a new version it's
always important to document what has changed, consider backwards
compatibility for existing implementations, and to strive for
simplicity and clarity to ease new implementations. This is the effort
we are engaged in right now.
Extensibility can also come in the form of specific features that
allow an API to be customized without requiring a new version be
released. The extraRecordData element in SRU responses seems well
fitted to provide administrative metadata about a particular record.
I'm still hazy on what the extension proposal under discussion is. It
would help me to have the proposal documented on the web so it can be
evaluated. Is it already?
<aside>
I've lurked on the atompub discussion list and have observed their
versioning process [1] to work quite well. Basically an individual who
has an idea for a change writes to the discussion list floating the
idea; then if the idea still looks worthwhile it gets written up as a
Pace on their wiki [2], after which it is voted on. The format of the
Pace is particularly good.
</aside>
//Ed
[1] http://intertwingly.net/wiki/pie/HowToGetInvolved
[2] http://intertwingly.net/wiki/pie/CategoryProposals
|