- From: Norman Walsh <ndw@nwalsh.com>
- Date: Sun, 21 Dec 2008 15:15:39 -0500
- To: public-xml-processing-model-comments@w3.org
- Message-ID: <m23aghcmj8.fsf@nwalsh.com>
"Dave Pawson" <dave.pawson@gmail.com> writes:
> "A pipeline author may identify the version of XProc against which a
> particular pipeline was authored
> by explicitly importing the library that identifies the steps defined
> by that version of XProc.
> For the version defined by this specification, the library is
> "http://www.w3.org/2008/xproc-1.0.xpl"."
>
> What form might this 'library' take please?
A p:library. You can go ahead and get http://www.w3.org/2008/xproc-1.0.xpl
and take a look.
> 'That identifies the steps'?
> I'm guessing at some abstract level, I can restrict my pipeline
> only to those steps in the library (e.g. to only use version 1.0 steps)
>
> How might this be used practically please?
Imagine that there's an XProc 1.1 in the future wherein we've defined
a new atomic step: p:chestnuts (this being nearly Christmas and a fire
being nearby).
You want to write a pipeline that uses p:chestnuts conditionally, that
is, if the pipeline is run through a 1.0 processor, you'll use a
p:choose to do something else, but if it's run through a 1.1
processor, you want to use the p:chestnuts step.
At the top of that pipeline you can say:
<p:import href="http://www.w3.org/2008/xproc-1.1.xpl"/>
Now a 1.0 processor that sees that will go off and get the
declarations from that library and will now know that p:chestnuts
exists, even though it won't have a clue how to execute it. That means
it won't be a static error when p:chestnuts appears in the pipeline.
A 1.1 processor that sees that will "know" that it knows those steps
and doesn't have to do anything at all.
Clear(er)?
Be seeing you,
norm
--
Norman Walsh <ndw@nwalsh.com> | From a programmer's point of view, the
http://nwalsh.com/ | user is a peripheral that types when
| you issue a read request.--P. Williams
Received on Sunday, 21 December 2008 20:16:19 UTC