Wednesday, July 2, 2008

Open Repositories and APP Patterns

Dan picks up the baton and kicks off a discussion about Open Repository API issues - cool! I'll start posting my thoughts here as well.

Among the things he mentions:
Define a way to deal with hierachical collections of versioned resources. That is, we need a standard way to model folders and files in AtomPub. This would be of benefit to a lot of people.
Totally agree, this is huge. As I see it this breaks down into several parts:
  • How do we indicate that a particular <entry> is in fact a collection (i.e. another feed)? We (WSO2) do this now with a custom extension, but are open to other ideas.
  • How do we create a sub-feed (i.e. subdirectory)? We do this by POSTing a <feed> instead of an <entry>. I'd like to put that forward as a good option.
  • How do we represent versioned URLs as "the same thing"?
Other things I'd like to discuss in this realm include standardizing some metadata properties (so I guess I'm agreeing with Dan's instinct to roll this in) - for instance both Galaxy and WSO2 Registry pull some useful information (service names, etc) out from WSDLs that are put into the repository. If we serialized that metadata the same way that would be really nice. I would imagine that we'd come up with a) a standard XML wrapper element for the property bag, and then b) some agreed-upon vocabulary for common properties like XML namespaces and WSDL artifact QNames.

I like Dan's proposed list of interested parties. My guess is that James and the Abdera crew might be very interested in this as well - and I bet that both Dan and I would want whatever appropriate support for this stuff baked in to Abdera if possible, since we both use it heavily.

+1 for a mailing list / wiki, so we can start throwing stuff up on a mutually-editable blackboard. Codehaus is fine, or we're happy to offer space for it as well. Dan, can you get this set up over there, or would you like us to do it?


Paul Fremantle said...


I've created a Google Code project so we can start the discussion:

Anyone is welcome to join.

andrew said...

Paul, why Google Code, it's one of the least functional choices. Just think about the time when you'll need a build server.

Codehaus would be a great neutral choice with much better and complete infrastructure.