Re: A Strange Viewport

Norman Walsh wrote:
> / Alex Milowski <alex@milowski.org> was heard to say:
> | Surprisingly, you can do this:
> |
> | <p:viewport name="crazy">
> |    <p:declare-input port="e" step="other" source="result"
> |                     select="/doc/x"/>
> |    <p:declare-output port="replacement" step="crazy" source="e"/>
> |
> |    <p:step name="a" type="special">
> |    <p:input port="document" step="outside" source="result"/>
> |    </p:step>
> |
> | </p:viewport>
> |
> | In this case, the viewport iterates over the matching 'x' subtrees
> | in the document but doesn't replace them.
> |
> | The contained step 'a' should be executed as many times as there
> | are 'x' subtrees but it doesn't use as input anything in the
> | viewport and doesn't contribute to the viewport's output.
> |
> | From and input/output graph flow, it isn't in connected to the viewport
> | in anyway.
> |
> | Should we allow this kind of step in iteration (i.e. viewport or
> | foreach)?
> 
> I don't see why not. I don't even see how to prevent it if we wanted
> to.

One constraint that would make this invalid is:

"Steps inside iterations must be traceable to the subject of the
  iteration."


--Alex Milowski

Received on Monday, 2 October 2006 23:54:07 UTC