Dave Viner wrote:

I haven't thought about adding namespaces, but it is probably a good idea.
It a small change that has very little impact, but as you mention would open
up lots of possibilities. I'd like to get this first cut into the mainline
code base, then add features. But your suggestion will be high on my list.

I'd rather decide a namespace and go for it ASAP (we might well change it in the future, but we might be unable to roll back from a non-namespaced metadata system, don't you think so?


Once you enable metadata, all new collections and documents will have a
metadata object associated with them. Collections and documents that
already exist will have metadata objects created for them when you request
it.


Cool.

I have not thought too much about the XML:DB API extensions. I implemented
a few simple XML-RPC methods that allow users access to the metadata.

Would you mind sending a code snippet in order to understand how you deal both with XML:DB API to get a document and plain RPC messages to get data? I'm walking through the code, this would save me some time. :-)


My
understanding of "Service" in the context of Xindice is pretty limited. It
might be worthwhile to create a MetaDataService. However, I think simple
XML-RPC methods are simpler for now. Are there clear benefits to providing
a MetaDataService that are not available by simply using the XML-RPC
methods?


Well, for one it would be cleaner, not tied to XML-RPC and transparent to users. it would be something like:

MetaDataQueryService service =
(MetaDataQueryService) collection.getService("XPathQueryService", "1.0");


MetaData metas = service.getMetaData();

easy and clean, don't you think?

I can see another clean solution, more proprietary (at least until we manage to have an XML:DB extension about metadata) but even easier and close to JDBC:

MetaData metas;
if (collection instanceof XindiceCollection) {
        metas = ((XindiceCollection)collection).getMetaData();
}

        Thanks for taking the time to look at this feature!  I personally think
it's pretty cool, and could help to differentiate Xindice from other XML
dbs.

It is pretty cool, definitely. It will serve a noble purpose also: bridging the gap from other XML dbs that already support metadata.


From what I saw until now, I must say that I really like your solution. It might be worth to discuss about the MetaData interface (which seems pretty complete to me though) in order to define what we exactly might want from metadata: this would be crucial for the next logical step, which would be going to xapi-dev and ask for an official addition to the XML:DB API. How about it?

Ciao,

--
Gianugo Rabellino



Reply via email to