Re: [donation]XML:DB pseudo protocol
I'd like to propose Gianugo Rabellino as a new commiter to the cocoon community. He has produced alot of patches in the past and is very engaged in the dbxml parts of cocoon which I think would be best if he can do it directly in CVS rather than badging us with patches. Enthusiastic +1 for Gianugo 5.0! - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
RE: [donation]XML:DB pseudo protocol
Definitly +1 Carsten -Original Message- From: giacomo [mailto:[EMAIL PROTECTED]] Sent: Wednesday, November 21, 2001 7:14 AM To: [EMAIL PROTECTED] Subject: Re: [donation]XML:DB pseudo protocol On Sun, 18 Nov 2001, Gianugo Rabellino wrote: I'd like to propose Gianugo Rabellino as a new commiter to the cocoon community. He has produced alot of patches in the past and is very engaged in the dbxml parts of cocoon which I think would be best if he can do it directly in CVS rather than badging us with patches. Co-committers, your votes please. Giacomo It took me (much) longer than I expected (unfortunately paid work is something you can't leave aside in these days), but finally I have a working first implementation of a pseudo-protocol based con the XML:DB API. Usage is as follows: 1. grab xmldb.jar, put it in the lib/ directory in order to compile the sources, build Cocoon as usually; 2. edit cocoon.xconf and go to the source-handler section. Add a configuration like this one: source-handler protocol name=xmldb class=org.apache.cocoon.components.source.XMLDBSourceFactory driver type=dbxml class=org.dbxml.client.xmldb.DatabaseImpl / driver type=exist class=exist.xmldb.DatabaseImpl / /protocol /source-handler 3. start playing with it as you do with the cocoon:// and resource:// protocols:) Use a JDBCish URI such as xmldb:dbxml://some.host.running.dbxml/a/collection/ or xmldb:exist://some.host.running.exist/a/collection/aresource.xml (the idea is that if you want to query a collection you should put a trailing slash). The idea is that the driver actual implementation (dbxml and exist) is looked up in the standard XML:DB URL format and the implementing class is taken from the configuration accordingly. As usual, please consider this as a donation to the ASF and feel free to decide about incorporating it in Cocoon. You might want to review the code, since this is my first implementation of a Source. Some random thoughts about the XML:DB stuff: 1. until now the compilation of the XML:DB stuff had been conditional. Given the fact that Apache itself will sponsor the Xindice project, I was wondering if it could be the case to have it compiled by default: all that needs to be done is adding xmldb.jar to the lib directory (which is less than 9K in size). 2. Given that the XML:DB API have no support at all for metadata, it's almost impossible to implement a caching algorithm (there is no way to tell what is the document size or the last modification date). I was thinking about the Avalon resource monitoring stuff, could it help in this case? 3. The next thing to do is to add XPath support. The code foundation is there, but an agreement is needed about the URL format. Given that an XPath query can be run only against a collection, I was thinking about implementing it as xmldb:adriver://ahost/acollection/?xpath=/my/xpath/query. But I'm very open to suggestions :) 4. If this pseudo-protocol proves to be useful and bug free the XML:DB generators might have little or no meaning: since they haven't made it into any RC this can be a proper timing to decide what to do with them. Enough for tonight, I'm eagerly waiting for your feedback, expect other patches in the days to come :) Ciao, - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: [donation]XML:DB pseudo protocol
giacomo wrote: On Sun, 18 Nov 2001, Gianugo Rabellino wrote: I'd like to propose Gianugo Rabellino as a new commiter to the cocoon community. He has produced alot of patches in the past and is very engaged in the dbxml parts of cocoon which I think would be best if he can do it directly in CVS rather than badging us with patches. Co-committers, your votes please. +1 -- Stefano Mazzocchi One must still have chaos in oneself to be able to give birth to a dancing star. [EMAIL PROTECTED] Friedrich Nietzsche - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: [donation]XML:DB pseudo protocol
+1 from me. Hoping Gianugo is willing and able :) Thanks, dims --- giacomo [EMAIL PROTECTED] wrote: On Sun, 18 Nov 2001, Gianugo Rabellino wrote: I'd like to propose Gianugo Rabellino as a new commiter to the cocoon community. He has produced alot of patches in the past and is very engaged in the dbxml parts of cocoon which I think would be best if he can do it directly in CVS rather than badging us with patches. Co-committers, your votes please. Giacomo It took me (much) longer than I expected (unfortunately paid work is something you can't leave aside in these days), but finally I have a working first implementation of a pseudo-protocol based con the XML:DB API. Usage is as follows: 1. grab xmldb.jar, put it in the lib/ directory in order to compile the sources, build Cocoon as usually; 2. edit cocoon.xconf and go to the source-handler section. Add a configuration like this one: source-handler protocol name=xmldb class=org.apache.cocoon.components.source.XMLDBSourceFactory driver type=dbxml class=org.dbxml.client.xmldb.DatabaseImpl / driver type=exist class=exist.xmldb.DatabaseImpl / /protocol /source-handler 3. start playing with it as you do with the cocoon:// and resource:// protocols:) Use a JDBCish URI such as xmldb:dbxml://some.host.running.dbxml/a/collection/ or xmldb:exist://some.host.running.exist/a/collection/aresource.xml (the idea is that if you want to query a collection you should put a trailing slash). The idea is that the driver actual implementation (dbxml and exist) is looked up in the standard XML:DB URL format and the implementing class is taken from the configuration accordingly. As usual, please consider this as a donation to the ASF and feel free to decide about incorporating it in Cocoon. You might want to review the code, since this is my first implementation of a Source. Some random thoughts about the XML:DB stuff: 1. until now the compilation of the XML:DB stuff had been conditional. Given the fact that Apache itself will sponsor the Xindice project, I was wondering if it could be the case to have it compiled by default: all that needs to be done is adding xmldb.jar to the lib directory (which is less than 9K in size). 2. Given that the XML:DB API have no support at all for metadata, it's almost impossible to implement a caching algorithm (there is no way to tell what is the document size or the last modification date). I was thinking about the Avalon resource monitoring stuff, could it help in this case? 3. The next thing to do is to add XPath support. The code foundation is there, but an agreement is needed about the URL format. Given that an XPath query can be run only against a collection, I was thinking about implementing it as xmldb:adriver://ahost/acollection/?xpath=/my/xpath/query. But I'm very open to suggestions :) 4. If this pseudo-protocol proves to be useful and bug free the XML:DB generators might have little or no meaning: since they haven't made it into any RC this can be a proper timing to decide what to do with them. Enough for tonight, I'm eagerly waiting for your feedback, expect other patches in the days to come :) Ciao, - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] = Davanum Srinivas - http://jguru.com/dims/ __ Do You Yahoo!? Yahoo! GeoCities - quick and easy web site hosting, just $8.95/month. http://geocities.yahoo.com/ps/info1 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: [donation]XML:DB pseudo protocol
Davanum Srinivas wrote: +1 from me. Hoping Gianugo is willing and able :) Gianugo is willing and honored for this nomination. As for ability well... I'll try to do my best and not mess up too much :) Thanks Giacomo for bringing up this (and thanks of course to all the voters): I'm really pleased and proud of it. And I mean it. Ciao, -- Gianugo Rabellino I'd like to propose Gianugo Rabellino as a new commiter to the cocoon community. He has produced alot of patches in the past and is very engaged in the dbxml parts of cocoon which I think would be best if he can do it directly in CVS rather than badging us with patches. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: [donation]XML:DB pseudo protocol
On Sun, 18 Nov 2001, Gianugo Rabellino wrote: I'd like to propose Gianugo Rabellino as a new commiter to the cocoon community. He has produced alot of patches in the past and is very engaged in the dbxml parts of cocoon which I think would be best if he can do it directly in CVS rather than badging us with patches. Co-committers, your votes please. Giacomo It took me (much) longer than I expected (unfortunately paid work is something you can't leave aside in these days), but finally I have a working first implementation of a pseudo-protocol based con the XML:DB API. Usage is as follows: 1. grab xmldb.jar, put it in the lib/ directory in order to compile the sources, build Cocoon as usually; 2. edit cocoon.xconf and go to the source-handler section. Add a configuration like this one: source-handler protocol name=xmldb class=org.apache.cocoon.components.source.XMLDBSourceFactory driver type=dbxml class=org.dbxml.client.xmldb.DatabaseImpl / driver type=exist class=exist.xmldb.DatabaseImpl / /protocol /source-handler 3. start playing with it as you do with the cocoon:// and resource:// protocols:) Use a JDBCish URI such as xmldb:dbxml://some.host.running.dbxml/a/collection/ or xmldb:exist://some.host.running.exist/a/collection/aresource.xml (the idea is that if you want to query a collection you should put a trailing slash). The idea is that the driver actual implementation (dbxml and exist) is looked up in the standard XML:DB URL format and the implementing class is taken from the configuration accordingly. As usual, please consider this as a donation to the ASF and feel free to decide about incorporating it in Cocoon. You might want to review the code, since this is my first implementation of a Source. Some random thoughts about the XML:DB stuff: 1. until now the compilation of the XML:DB stuff had been conditional. Given the fact that Apache itself will sponsor the Xindice project, I was wondering if it could be the case to have it compiled by default: all that needs to be done is adding xmldb.jar to the lib directory (which is less than 9K in size). 2. Given that the XML:DB API have no support at all for metadata, it's almost impossible to implement a caching algorithm (there is no way to tell what is the document size or the last modification date). I was thinking about the Avalon resource monitoring stuff, could it help in this case? 3. The next thing to do is to add XPath support. The code foundation is there, but an agreement is needed about the URL format. Given that an XPath query can be run only against a collection, I was thinking about implementing it as xmldb:adriver://ahost/acollection/?xpath=/my/xpath/query. But I'm very open to suggestions :) 4. If this pseudo-protocol proves to be useful and bug free the XML:DB generators might have little or no meaning: since they haven't made it into any RC this can be a proper timing to decide what to do with them. Enough for tonight, I'm eagerly waiting for your feedback, expect other patches in the days to come :) Ciao, - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: [donation]XML:DB pseudo protocol
Gianugo Rabellino wrote: It took me (much) longer than I expected (unfortunately paid work is something you can't leave aside in these days), but finally I have a working first implementation of a pseudo-protocol based con the XML:DB API. How cool! Usage is as follows: 1. grab xmldb.jar, put it in the lib/ directory in order to compile the sources, build Cocoon as usually; ok 2. edit cocoon.xconf and go to the source-handler section. Add a configuration like this one: source-handler protocol name=xmldb class=org.apache.cocoon.components.source.XMLDBSourceFactory driver type=dbxml class=org.dbxml.client.xmldb.DatabaseImpl / driver type=exist class=exist.xmldb.DatabaseImpl / /protocol /source-handler Ah, you're connecting to XML:DB API then. Great. 3. start playing with it as you do with the cocoon:// and resource:// protocols:) Use a JDBCish URI such as xmldb:dbxml://some.host.running.dbxml/a/collection/ or xmldb:exist://some.host.running.exist/a/collection/aresource.xml (the idea is that if you want to query a collection you should put a trailing slash). The idea is that the driver actual implementation (dbxml and exist) is looked up in the standard XML:DB URL format and the implementing class is taken from the configuration accordingly. Is there any XPointer query capability for the XML:DB API? I mean, how hard would be to do something like xmldb:dbxml://host/collection/resource#//section[@title=Blah] Moreover: is there a way to get a single file view of an XML database in order to do something like xmldb:dbxml://host/#//news[@date 2001 and @date 2008 and @approuved] (which is what we need if we want to make this publishing system rock this planet!) As usual, please consider this as a donation to the ASF and feel free to decide about incorporating it in Cocoon. Count on it! You might want to review the code, since this is my first implementation of a Source. Some random thoughts about the XML:DB stuff: 1. until now the compilation of the XML:DB stuff had been conditional. Given the fact that Apache itself will sponsor the Xindice project, I was wondering if it could be the case to have it compiled by default: all that needs to be done is adding xmldb.jar to the lib directory (which is less than 9K in size). I'd say +1 to this. Our support for the XML:DB API will make both projects stronger. 2. Given that the XML:DB API have no support at all for metadata, it's almost impossible to implement a caching algorithm (there is no way to tell what is the document size or the last modification date). I was thinking about the Avalon resource monitoring stuff, could it help in this case? Hmmm, have to think about it... 3. The next thing to do is to add XPath support. Ah, should have been reading more but I got excited by the title :) The code foundation is there, but an agreement is needed about the URL format. Given that an XPath query can be run only against a collection, I was thinking about implementing it as xmldb:adriver://ahost/acollection/?xpath=/my/xpath/query. But I'm very open to suggestions :) I'd suggest using the XPointer spec for this (but might require the use of ranges which might not being supported) 4. If this pseudo-protocol proves to be useful and bug free the XML:DB generators might have little or no meaning: since they haven't made it into any RC this can be a proper timing to decide what to do with them. Enough for tonight, I'm eagerly waiting for your feedback, expect other patches in the days to come :) Thanks, dude. Nice job! Now that we'll have XIndice inside and a stable and open API to connect to, we have total control of both sides. We just need to add metadata capability to XIndice (to allows versioning, timestamping, workflow management and such). Hopefully the new project will start RSN. -- Stefano Mazzocchi One must still have chaos in oneself to be able to give birth to a dancing star. [EMAIL PROTECTED] Friedrich Nietzsche - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: [donation]XML:DB pseudo protocol
Stefano Mazzocchi wrote: 2. edit cocoon.xconf and go to the source-handler section. Add a configuration like this one: source-handler protocol name=xmldb class=org.apache.cocoon.components.source.XMLDBSourceFactory driver type=dbxml class=org.dbxml.client.xmldb.DatabaseImpl / driver type=exist class=exist.xmldb.DatabaseImpl / /protocol /source-handler Ah, you're connecting to XML:DB API then. Great. Yes, the XML:DB URI format is expressive enough IMHO to be used directly as a generic URI in Cocoon. Is there any XPointer query capability for the XML:DB API? I mean, how hard would be to do something like I haven't seen any XPointer stuff in the XML:DB API: XPath only is supported, and only at a Collection level (i.e. you can query a document set but not a single document). Moreover: is there a way to get a single file view of an XML database in order to do something like xmldb:dbxml://host/#//news[@date 2001 and @date 2008 and @approuved] (which is what we need if we want to make this publishing system rock this planet!) Well, we share a common goal :) The only limitation that I see is that you have to stick to Collections for XPath queries, and the queries won't be recursive (i.e. you can't dig past the collection you set as the starting point). As usual, please consider this as a donation to the ASF and feel free to decide about incorporating it in Cocoon. Count on it! Thanks :) 1. until now the compilation of the XML:DB stuff had been conditional. Given the fact that Apache itself will sponsor the Xindice project, I was wondering if it could be the case to have it compiled by default: all that needs to be done is adding xmldb.jar to the lib directory (which is less than 9K in size). I'd say +1 to this. Our support for the XML:DB API will make both projects stronger. Good to know :) I'd suggest using the XPointer spec for this (but might require the use of ranges which might not being supported) True, yet I agree that the Xpointer dash syntax would be more straightforward and expressive (even if what we would get is actually an XPath query). I'm wondering, though, if this would generate confusion. Thanks, dude. Nice job! Now that we'll have XIndice inside and a stable and open API to connect to, we have total control of both sides. We just need to add metadata capability to XIndice (to allows versioning, timestamping, workflow management and such). Hopefully the new project will start RSN. I'd say that, apart from implementing the stuff in Xindice (which is of course something that needs to be done - and actually it has been done in the internal representation of the dbXML database), we should extend the XML:DB API in order to allow for such queries. Definitely something to discuss in xindice-dev after the project will be bootstrapped. Ciao, -- Gianugo Rabellino - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
[donation]XML:DB pseudo protocol
It took me (much) longer than I expected (unfortunately paid work is something you can't leave aside in these days), but finally I have a working first implementation of a pseudo-protocol based con the XML:DB API. Usage is as follows: 1. grab xmldb.jar, put it in the lib/ directory in order to compile the sources, build Cocoon as usually; 2. edit cocoon.xconf and go to the source-handler section. Add a configuration like this one: source-handler protocol name=xmldb class=org.apache.cocoon.components.source.XMLDBSourceFactory driver type=dbxml class=org.dbxml.client.xmldb.DatabaseImpl / driver type=exist class=exist.xmldb.DatabaseImpl / /protocol /source-handler 3. start playing with it as you do with the cocoon:// and resource:// protocols:) Use a JDBCish URI such as xmldb:dbxml://some.host.running.dbxml/a/collection/ or xmldb:exist://some.host.running.exist/a/collection/aresource.xml (the idea is that if you want to query a collection you should put a trailing slash). The idea is that the driver actual implementation (dbxml and exist) is looked up in the standard XML:DB URL format and the implementing class is taken from the configuration accordingly. As usual, please consider this as a donation to the ASF and feel free to decide about incorporating it in Cocoon. You might want to review the code, since this is my first implementation of a Source. Some random thoughts about the XML:DB stuff: 1. until now the compilation of the XML:DB stuff had been conditional. Given the fact that Apache itself will sponsor the Xindice project, I was wondering if it could be the case to have it compiled by default: all that needs to be done is adding xmldb.jar to the lib directory (which is less than 9K in size). 2. Given that the XML:DB API have no support at all for metadata, it's almost impossible to implement a caching algorithm (there is no way to tell what is the document size or the last modification date). I was thinking about the Avalon resource monitoring stuff, could it help in this case? 3. The next thing to do is to add XPath support. The code foundation is there, but an agreement is needed about the URL format. Given that an XPath query can be run only against a collection, I was thinking about implementing it as xmldb:adriver://ahost/acollection/?xpath=/my/xpath/query. But I'm very open to suggestions :) 4. If this pseudo-protocol proves to be useful and bug free the XML:DB generators might have little or no meaning: since they haven't made it into any RC this can be a proper timing to decide what to do with them. Enough for tonight, I'm eagerly waiting for your feedback, expect other patches in the days to come :) Ciao, -- Gianugo Rabellino xmldbsource.zip Description: Zip compressed data - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]