Replacing the embedded eXist with a MarkLogic instance

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Replacing the embedded eXist with a MarkLogic instance

Alex Bleasdale
Hi,

We're very interested in the possibility of swapping Orbeon's embedded eXist instance with a reference to a MarkLogic instance instead - so all XForms processing would take place using ML in place of eXist.

I've seen examples in the past for hooking up Orbeon with an external eXist datasource and the config looks something like this:

<datasource>
    <driver-class-name>org.exist.xmldb.DatabaseImpl</driver-class-name>
    <uri>xmldb:exist://localhost:9998/exist/xmlrpc</uri>
    <username>admin</username>
    <password>admin</password>
</datasource> 
   
However, this approach uses the xmldb API, which MarkLogic doesn't implement.  Writing an xmldb conformant "wrapper" driver seems like a somewhat daunting task; although I've heard that Orbeon could possibly use REST for this process instead - as is mentioned here:

http://orbeon.uservoice.com/forums/27-general/suggestions/251935-integrate-with-sedna-xml-database-as-an-alternativ

I've noticed that for FormRunner there is a project for an Oracle Persistence Layer; I've not really checked out the project but was wondering whether this uses REST rather than xmldb?

My question, then, would be whether anyone could offer us some advice regarding initial starting points, code examples etc and whether you think such a thing would be possible (or even worth attempting).

Thanks very much in advance,
A
Reply | Threaded
Open this post in threaded view
|

Re: Replacing the embedded eXist with a MarkLogic instance

Alessandro  Vernet
Administrator
Alex,

We use eXist for two main purposes:

1) To store XForms session state as it grows and would not fit in
memory anymore. For this, we use the XMLDB API.
2) In Form Runner, to store your form data.

For #1, it would be somewhat involved to replace eXist with something
else. But you can look at this use of eXist as an "implementation
detail", as no persistent data is being stored - just transient data
associated with the session, so we can keep more information around
without using too much memory.

For #2, we want you to use whatever database works the best for you,
and for this we defined a persistence REST API, which you can
implement to enable Form Runner to talk to your database. We have
implementations of this REST API for eXist and Oracle, and it would
indeed be very interesting to do one for MarkLogic. See the page
linked below for more information on this, and let us know if you have
any question.

http://wiki.orbeon.com/forms/doc/contributor-guide/form-builder-integration-notes

Alex

On Mon, Mar 1, 2010 at 3:22 AM, Alex Bleasdale <[hidden email]> wrote:

>
> Hi,
>
> We're very interested in the possibility of swapping Orbeon's embedded eXist
> instance with a reference to a MarkLogic instance instead - so all XForms
> processing would take place using ML in place of eXist.
>
> I've seen examples in the past for hooking up Orbeon with an external eXist
> datasource and the config looks something like this:
>
> <datasource>
>    <driver-class-name>org.exist.xmldb.DatabaseImpl</driver-class-name>
>    <uri>xmldb:exist://localhost:9998/exist/xmlrpc</uri>
>    <username>admin</username>
>    <password>admin</password>
> </datasource>
>
> However, this approach uses the xmldb API, which MarkLogic doesn't
> implement.  Writing an xmldb conformant "wrapper" driver seems like a
> somewhat daunting task; although I've heard that Orbeon could possibly use
> REST for this process instead - as is mentioned here:
>
> http://orbeon.uservoice.com/forums/27-general/suggestions/251935-integrate-with-sedna-xml-database-as-an-alternativ
>
> I've noticed that for FormRunner there is a project for an Oracle
> Persistence Layer; I've not really checked out the project but was wondering
> whether this uses REST rather than xmldb?
>
> My question, then, would be whether anyone could offer us some advice
> regarding initial starting points, code examples etc and whether you think
> such a thing would be possible (or even worth attempting).
>
> Thanks very much in advance,
> A
> --
> View this message in context: http://n4.nabble.com/Replacing-the-embedded-eXist-with-a-MarkLogic-instance-tp1573436p1573436.html
> Sent from the Orbeon Forms (ops-users) mailing list archive at Nabble.com.
>
>
> --
> You receive this message as a subscriber of the [hidden email] mailing list.
> To unsubscribe: mailto:[hidden email]
> For general help: mailto:[hidden email]?subject=help
> OW2 mailing lists service home page: http://www.ow2.org/wws
>
>


--
Orbeon Forms - Web forms, open-source, for the Enterprise -
http://www.orbeon.com/
My Twitter: http://twitter.com/avernet


--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
OW2 mailing lists service home page: http://www.ow2.org/wws
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
Reply | Threaded
Open this post in threaded view
|

Re: Re: Replacing the embedded eXist with a MarkLogic instance

Alex Bleasdale
Hi Alessandro,

Thanks very much for the clarification on those points - and for
pointing me in the direction of the Form Runner documentation.  

Best,
A



----- Original Message ----
From: Alessandro Vernet <[hidden email]>
To: [hidden email]
Sent: Tue, 2 March, 2010 18:19:03
Subject: [ops-users] Re: Replacing the embedded eXist with a MarkLogic  instance

Alex,

We use eXist for two main purposes:

1) To store XForms session state as it grows and would not fit in
memory anymore. For this, we use the XMLDB API.
2) In Form Runner, to store your form data.

For #1, it would be somewhat involved to replace eXist with something
else. But you can look at this use of eXist as an "implementation
detail", as no persistent data is being stored - just transient data
associated with the session, so we can keep more information around
without using too much memory.

For #2, we want you to use whatever database works the best for you,
and for this we defined a persistence REST API, which you can
implement to enable Form Runner to talk to your database. We have
implementations of this REST API for eXist and Oracle, and it would
indeed be very interesting to do one for MarkLogic. See the page
linked below for more information on this, and let us know if you have
any question.

http://wiki.orbeon.com/forms/doc/contributor-guide/form-builder-integration-notes

Alex

On Mon, Mar 1, 2010 at 3:22 AM, Alex Bleasdale <[hidden email]> wrote:

>
> Hi,
>
> We're very interested in the possibility of swapping Orbeon's embedded eXist
> instance with a reference to a MarkLogic instance instead - so all XForms
> processing would take place using ML in place of eXist.
>
> I've seen examples in the past for hooking up Orbeon with an external eXist
> datasource and the config looks something like this:
>
> <datasource>
>    <driver-class-name>org.exist.xmldb.DatabaseImpl</driver-class-name>
>    <uri>xmldb:exist://localhost:9998/exist/xmlrpc</uri>
>    <username>admin</username>
>    <password>admin</password>
> </datasource>
>
> However, this approach uses the xmldb API, which MarkLogic doesn't
> implement.  Writing an xmldb conformant "wrapper" driver seems like a
> somewhat daunting task; although I've heard that Orbeon could possibly use
> REST for this process instead - as is mentioned here:
>
> http://orbeon.uservoice.com/forums/27-general/suggestions/251935-integrate-with-sedna-xml-database-as-an-alternativ
>
> I've noticed that for FormRunner there is a project for an Oracle
> Persistence Layer; I've not really checked out the project but was wondering
> whether this uses REST rather than xmldb?
>
> My question, then, would be whether anyone could offer us some advice
> regarding initial starting points, code examples etc and whether you think
> such a thing would be possible (or even worth attempting).
>
> Thanks very much in advance,
> A
> --
> View this message in context: http://n4.nabble.com/Replacing-the-embedded-eXist-with-a-MarkLogic-instance-tp1573436p1573436.html
> Sent from the Orbeon Forms (ops-users) mailing list archive at Nabble.com.
>
>
> --
> You receive this message as a subscriber of the [hidden email] mailing list.
> To unsubscribe: mailto:[hidden email]
> For general help: mailto:[hidden email]?subject=help
> OW2 mailing lists service home page: http://www.ow2.org/wws
>
>


--
Orbeon Forms - Web forms, open-source, for the Enterprise -
http://www.orbeon.com/
My Twitter: http://twitter.com/avernet






--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
OW2 mailing lists service home page: http://www.ow2.org/wws