Re: Is the following library conformant?

I think its implied by lack of any special mention in 4.8 "Extension  
steps":

"If the relevant step declaration has a subpipeline, then that step  
runs the declared subpipeline. These steps are user- or implementation- 
defined extensions. Pipelines can refer to themselves (recursion is  
allowed), to pipelines defined in imported libraries, and to other  
pipelines in the same library if they are in a library."

based on that paragraph I would also think your example is valid.

Also, note the sentence in 2.12 "Security considerations":

"Steps in a pipeline may call themselves recursively which could  
result in pipelines which will never terminate."

This may be amended to mention the forward-reference scenario.

Romain.


Le 7 oct. 11 à 15:43, Norman Walsh a écrit :

> "vojtech.toman@emc.com" <vojtech.toman@emc.com> writes:
>> Yes, I think it is valid and there is nothing wrong with it. Except
>> that it uses infinite recursion. But that is a programming error, not
>> different from:
>>
>> <p:declare-step type="test:step" name="test-step">
>>  <p:input port="source" sequence="true"/>
>>  <p:output port="result"/>
>>  <test:step/>
>> </p:declare-step>
>
> So you both intepret the spec as allowing forward references. I think
> that's consistent with what we say about recursive imports, but I
> can't actually find anywhere in the spec that says that.
>
> For what it's worth, this is precisely why XML Calabash fails the
> import-007 test. I assume that I will have seen declarations for each
> step before I encounter a use of that step. Or rather, I assert
> err:XS0044 id I haven't.
>
>                                        Be seeing you,
>                                          norm
>
> -- 
> Norman Walsh
> Lead Engineer
> MarkLogic Corporation
> Phone: +1 413 624 6676
> www.marklogic.com

Received on Friday, 7 October 2011 14:04:26 UTC