W3C home > Mailing lists > Public > public-xml-processing-model-wg@w3.org > April 2006

Re: Annotations for side effects and stability

From: Alessandro Vernet <avernet@orbeon.com>
Date: Thu, 27 Apr 2006 00:38:08 -0700
Message-ID: <4828ceec0604270038p17055c45ud696d82fd467ac89@mail.gmail.com>
To: public-xml-processing-model-wg@w3.org


I agree with all of your answers, except maybe this one:

On 4/24/06, Norman Walsh <Norman.Walsh@sun.com> wrote:
> | 3. Use cached results of the component invoked in the same way in a
> | different pipeline invocation. For example, cache the 'foo' document in
> | this pipeline and reuse it the next time the pipeline is invoked,
> | assuming that foo.xml hasn't changed in the meantime:
> |
> |    <p:pipeline>
> |      <p:output ref="foo" />
> |      <p:step name="p:foo">
> |        <p:input href="foo.xml" />
> |        <p:output label="foo" />
> |      </p:step>
> |    </p:pipeline>
> I really want to call that "out of scope".

1) Is p:foo execute twice if this pipeline is run twice?

        <p:output ref="foo"/>
        <p:step name="p:foo">
            <p:input href="foo.xml"/>
            <p:output label="foo"/>

2) Is p:foo execute twice in this pipeline?

        <p:output ref="foo1"/>
        <p:output ref="foo2"/>
        <p:step name="p:foo">
            <p:input href="foo.xml"/>
            <p:output label="foo1"/>
        <p:step name="p:foo">
            <p:input href="foo.xml"/>
            <p:output label="foo2"/>

I think those two questions are closely related, and I would like to
give the same answer in both cases: a pipeline engine is free to skip
the second execution of p:foo if it knows that the second execution
will generate the same result and that p:foo doesn't have any
(significant) side effect.

[I am diverging from the original question, but in my mind, updating a
database or calling a web service is significant side effect, but
generating an additional line in a log file or adding a
"If-Modified-Since" header to an HTTP request is not a significant
side effect. I am not sure if we will be able to define precisely what
a "significant side effect" is. Most likely the decision will need to
be taken on a component per component basis.]

Blog (XML, Web apps, Open Source):
Received on Thursday, 27 April 2006 07:38:19 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:32:39 UTC