Re: p:output and connections

Vasil Rangelov <boen.robot@gmail.com> writes:

> Shouldn't that error say "atomic extension steps" instead of "atomic step"
> then? There isn't a precise definition for either, but from 4.7, and 4.8,
> it's easy to suggest that "atomic steps" are ones in the XProc namespace,
> whereas "atomic extension steps" are ones not in the XProc namespace and
> with a declaration of some sort (with or without a subpipeline).

I don't believe that this distinction is necessary. The error applies
equally to atomic steps whether they are in the XProc namespace or
not. It happens that since we are the only ones who can define atomic
steps in the XProc namespace, that you can't make that error. But we
could, though of course, we haven't.

> And even if that's the intended case... why just extension atomic steps? If
> it's not an error to do this on atomic steps (i.e. atomic steps in the XProc
> namespace), what happens when this occurs (question 2 in my original
> message)?

The situation you raised in question 2 is covered by the spec: that's not
a declaration.

> And what about extension atomic steps with a declared output port that has
> no connection (question 3 in my original message)? What happens then?

Section 2.2 makes that clear:

  The primary output port of a step must be connected. It is a static
  error (err:XS0005) if the primary output port of any step is not
  connected. Other outputs can remain unconnected. Any documents
  produced on an unconnected output port are discarded.

In my previous message, I wasn't thinking of question 3 in the context of
atomic steps, but the answer is clear, I think:

If an atomic step has an unbound primary output port, that's an error.

If an atomic step has an unbound non-primary output port, any
documents that appear on it pour onto the floor.

                                        Be seeing you,
                                          norm

-- 
Norman Walsh <ndw@nwalsh.com> | 'I have done that,' says my memory. 'I
http://nwalsh.com/            | cannot have done that'--says my pride,
                              | and remains adamant. At last--memory
                              | yields.-- Nietzsche

Received on Sunday, 8 November 2009 21:45:19 UTC