From: Gary K. <ge...@ru...> - 2021-03-31 19:37:40
|
The last update to xquery-xproc-xmlcalabash-module was about a year ago. The README itemizes some current limitations. I would like to know if the following limitations are still applicable, and if so can you suggest any workarounds: "Function signature will change soon to accept XML for pipeline, output, as well as specify input/output/parameter ports and options... for now it's primitive" "p:xquery has no context with eXist, this is a big limitation, but there are several ways around this" I'm new to XProc, and have a lot of studying and experimentation to do. All I really want to accomplish is to link multiple XQuery scripts together so that the XML generated in one script is used as input in a FLWOR in the next script, without explicitly creating temporary documents in the database. I'm _assuming_ that is possible with XProc, but please correct me if I'm wrong and I'll abandon this line of attack. Thanks! --Gary Kopp |
From: Ari N. <ari...@gm...> - 2021-03-31 22:30:55
|
Hi, I think Norm is busy with work and real life, but I know the Calabash XProc 3.0 version is in the works. You should look into Morgana XProc for XProc 3.0 support in the meantime. As for running a sequence of XQueries with one providing the input to the next, I assume you'd want to do it in an eXist context? If so, XProc remains a rather painful option as it's not well supported. I'd go with an XQ wrapper instead. I did something very similar to run XSLT stylesheets in sequence in eXist. I had done it in XProc and Calabash on the file system but getting XProc to work in eXist proved to be too much of a pain so I reimplemented the pipeline in XQ instead. My XProc and XQuery are both on GitHub: https://github.com/sgmlguru/xproc-batch It should be fairly uncomplicated to modify the XQuery to run XQueries instead. Best, /Ari On Wed, 31 Mar 2021, 21:38 Gary Kopp, <ge...@ru...> wrote: > The last update to xquery-xproc-xmlcalabash-module was about a year ago. > The README itemizes some current limitations. I would like to know if the > following limitations are still applicable, and if so can you suggest any > workarounds: > > > > “Function signature will change soon to accept XML for *pipeline*, > *output*, as well as specify input/output/parameter ports and options... > for now it's primitive” > > > > “p:xquery has no context with eXist, this is a big limitation, but there > are several ways around this” > > > > I’m new to XProc, and have a lot of studying and experimentation to do. > All I really want to accomplish is to link multiple XQuery scripts together > so that the XML generated in one script is used as input in a FLWOR in the > next script, without explicitly creating temporary documents in the > database. I’m _*assuming*_ that is possible with XProc, but please > correct me if I’m wrong and I’ll abandon this line of attack. Thanks! > > > > --Gary Kopp > > > > > _______________________________________________ > Exist-open mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-open > |
From: Gary K. <ge...@ru...> - 2021-03-31 23:28:29
|
Thanks for the suggestion, Ari. Let’s see if I understand your approach, now that I’ve looked at your code. It seems the interface between pipeline steps is a temporary document stored in the database in one step, and read in the next step using an explicit URI. Am I seeing that right? --Gary From: Ari Nordström <ari...@gm...> Sent: Wednesday, March 31, 2021 4:31 PM To: Gary Kopp <ge...@ru...> Cc: exist-open <exi...@li...> Subject: Re: [Exist-open] XProc (Calabash) Status? Hi, I think Norm is busy with work and real life, but I know the Calabash XProc 3.0 version is in the works. You should look into Morgana XProc for XProc 3.0 support in the meantime. As for running a sequence of XQueries with one providing the input to the next, I assume you'd want to do it in an eXist context? If so, XProc remains a rather painful option as it's not well supported. I'd go with an XQ wrapper instead. I did something very similar to run XSLT stylesheets in sequence in eXist. I had done it in XProc and Calabash on the file system but getting XProc to work in eXist proved to be too much of a pain so I reimplemented the pipeline in XQ instead. My XProc and XQuery are both on GitHub: https://github.com/sgmlguru/xproc-batch It should be fairly uncomplicated to modify the XQuery to run XQueries instead. Best, /Ari On Wed, 31 Mar 2021, 21:38 Gary Kopp, <ge...@ru... <mailto:ge...@ru...> > wrote: The last update to xquery-xproc-xmlcalabash-module was about a year ago. The README itemizes some current limitations. I would like to know if the following limitations are still applicable, and if so can you suggest any workarounds: “Function signature will change soon to accept XML for pipeline, output, as well as specify input/output/parameter ports and options... for now it's primitive” “p:xquery has no context with eXist, this is a big limitation, but there are several ways around this” I’m new to XProc, and have a lot of studying and experimentation to do. All I really want to accomplish is to link multiple XQuery scripts together so that the XML generated in one script is used as input in a FLWOR in the next script, without explicitly creating temporary documents in the database. I’m _assuming_ that is possible with XProc, but please correct me if I’m wrong and I’ll abandon this line of attack. Thanks! --Gary Kopp _______________________________________________ Exist-open mailing list Exi...@li... <mailto:Exi...@li...> https://lists.sourceforge.net/lists/listinfo/exist-open |
From: Ari N. <ari...@gm...> - 2021-04-01 06:18:05
|
Hi Gary, You don't actually save anything before the pipeline is finished, unless $debug is set. The manifest listing the XSLTs is first read into a sequence. That sequence is then used in a recursive function for the actual transforms, one XSLT at a time, for as long as there is an XSLT left in the sequence. The output from one recursion is used as the input to the next. Plus, since I may have to feed steps with parameters, there's stuff in there to handle parameters set in the manifest. You can test it using the XSLT-pipelines example repo at https://github.com/sgmlguru/xslt-pipelines. The example works both in XProc on the file system and in eXist using XQuery. Oh, and I spoke about the pipelined XSLT approach at Balisage last year: https://www.balisage.net/Proceedings/vol25/html/Nordstrom01/BalisageVol25-Nordstrom01.html. Best, /Ari On 2021-04-01 01:27, Gary Kopp wrote: > > Thanks for the suggestion, Ari. Let’s see if I understand your > approach, now that I’ve looked at your code. It seems the interface > between pipeline steps is a temporary document stored in the database > in one step, and read in the next step using an explicit URI. Am I > seeing that right? > > --Gary > > *From:* Ari Nordström <ari...@gm...> > *Sent:* Wednesday, March 31, 2021 4:31 PM > *To:* Gary Kopp <ge...@ru...> > *Cc:* exist-open <exi...@li...> > *Subject:* Re: [Exist-open] XProc (Calabash) Status? > > Hi, > > I think Norm is busy with work and real life, but I know the Calabash > XProc 3.0 version is in the works. You should look into Morgana XProc > for XProc 3.0 support in the meantime. > > As for running a sequence of XQueries with one providing the input to > the next, I assume you'd want to do it in an eXist context? If so, > XProc remains a rather painful option as it's not well supported. > > I'd go with an XQ wrapper instead. I did something very similar to run > XSLT stylesheets in sequence in eXist. I had done it in XProc and > Calabash on the file system but getting XProc to work in eXist proved > to be too much of a pain so I reimplemented the pipeline in XQ instead. > > My XProc and XQuery are both on GitHub: > https://github.com/sgmlguru/xproc-batch > <https://github.com/sgmlguru/xproc-batch> > > It should be fairly uncomplicated to modify the XQuery to run XQueries > instead. > > Best, > > /Ari > > On Wed, 31 Mar 2021, 21:38 Gary Kopp, <ge...@ru... > <mailto:ge...@ru...>> wrote: > > The last update to xquery-xproc-xmlcalabash-module was about a > year ago. The README itemizes some current limitations. I would > like to know if the following limitations are still applicable, > and if so can you suggest any workarounds: > > “Function signature will change soon to accept XML for /pipeline/, > /output/, as well as specify input/output/parameter ports and > options... for now it's primitive” > > |“p:xquery| has no context with eXist, this is a big limitation, > but there are several ways around this” > > I’m new to XProc, and have a lot of studying and experimentation > to do. All I really want to accomplish is to link multiple XQuery > scripts together so that the XML generated in one script is used > as input in a FLWOR in the next script, without explicitly > creating temporary documents in the database. I’m _/assuming/_ > that is possible with XProc, but please correct me if I’m wrong > and I’ll abandon this line of attack. Thanks! > > --Gary Kopp > > _______________________________________________ > Exist-open mailing list > Exi...@li... > <mailto:Exi...@li...> > https://lists.sourceforge.net/lists/listinfo/exist-open > <https://lists.sourceforge.net/lists/listinfo/exist-open> > |