- From: Romain Deltour <rdeltour@gmail.com>
- Date: Thu, 12 Jun 2014 22:32:44 +0200
- To: David Cramer <david@thingbag.net>
- Cc: xproc Dev <xproc-dev@w3.org>
> I'm thinking that I can
> loop over each book listed and pre-load each one
Yes, that approach looks good.
> <p:load>
> <p:with-option name="href" select="doc(resolve-uri(/ol:book/@path,
> base-uri(.)))"/>
> </p:load>
The option “href” must be a URI, so it s/b instead:
<p:load>
<p:with-option name="href" select="resolve-uri(/ol:book/@path,
base-uri(.))"/>
</p:load>
Hope this helps,
Romain.
On 12 juin 2014, at 21:39, David Cramer <david@thingbag.net> wrote:
> I have a pipeline that takes as input a file that points to one or more
> XML documents:
>
> <books xmlns="http://docs.rackspace.com/olink">
> <book path="src/docbkx/cbs-getting-started.xml"/>
> <book path="src/docbkx/cbs-devguide.xml"/>
> <book path="src/docbkx/cbs-releasenotes.xml"/>
> </books>
>
> It then processes that file using an xslt that reads in each listed file
> and adds information from it to a larger file (and olink database if
> you're familiar with that):
>
> https://github.com/rackerlabs/olink-maven-plugin/blob/master/src/main/resources/olink/make-olink-db.xsl
>
> My problem is that this xslt reads in each document using the document()
> function. While Calabash understands xpointer schemes like element() and
> xpath(), Saxon does not.
>
> I recall getting advice in a similar situation that I should use XProc's
> <p:load> to load the files first using Calabash and then Saxon would use
> the loaded ones.
>
> Given this pipeline:
>
> https://github.com/rackerlabs/olink-maven-plugin/blob/master/src/main/resources/olink/olink.xpl
>
> I'm trying to understand how to pre-load the files listed in the source
> using Calabash, but not sure how to proceed. I'm thinking that I can
> loop over each book listed and pre-load each one:
>
> <p:for-each xmlns:ol="http://docs.rackspace.com/olink">
> <p:iteration-source select="/ol:books/ol:book"/>
> <p:load>
> <p:with-option name="href" select="doc(resolve-uri(/ol:book/@path,
> base-uri(.)))"/>
> </p:load>
> </p:for-each>
>
> But my results are strange. E.g. "java.lang.IllegalArgumentException:
> Illegal character in scheme name at index 0" followed by what appears to
> be the contents of one of the docs.
>
> Can someone point me in the correct direction or suggest what constructs
> I should consider to avoid this xinclude problem?
>
> Thanks,
> David
>
Received on Thursday, 12 June 2014 20:33:15 UTC