4 messages in org.w3.xproc-devRe: declaring an atomic step
FromSent OnAttachments
James SulakDec 14, 2008 6:49 pm 
Norman WalshDec 14, 2008 7:04 pm 
James SulakDec 14, 2008 7:35 pm 
Norman WalshDec 19, 2008 12:37 pm 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: declaring an atomic stepActions...
From:Norman Walsh (nd@nwalsh.com)
Date:Dec 14, 2008 7:04:20 pm
List:org.w3.xproc-dev

"James Sulak" <jsu@gmail.com> writes:

From 5.8.1:

"When declaring an atomic step, the subpipeline in the declaration must be empty. And, conversely, if the subpipeline in a declaration is empty, the declaration must be for an atomic step."

Does this mean that this:

<p:pipeline name="new-identity"> <p:identity /> </p:pipeline>

is technically declaring a compound step, and not an atomic step?

Yes. It's a compound step with a single step in its subpipline.

And if so, is it impossible to declare an atomic step that's not an extension implemented at the processor level (if that makes sense)?

Yes and no.

Users can declare new compound steps, expressed in terms of a subpipeline of other steps. Users can then use these compound steps as atomic steps in other pipelines.

Users can declare new atomic steps, here's one:

<p:declare-step type="ex:foo" xmlns:ex="..."> <p:input port="source"/> <p:input port="secondary"/> <p:output port="result"/> <p:option name="use-dwim" required="true"/> <p:option anem="read-users-mind" select="'false'"/> </p:declare-step>

But they won't work unless the processor knows how to run them. How, or if, you can tell a processor to run them is implementation dependent. (In calabash, you put something like this in a configuration file:

<implementation type="ex:foo" xmlns:ex="..." class-name="com.skynet.library.Foo"/>

where the named class implements the right interface.)

Be seeing you, norm