See also: IRC log
-> http://www.w3.org/XML/XProc/2006/06/29-agenda.html
Accepted.
-> http://www.w3.org/2006/06/22-xproc-minutes.html
Norm thanks Henry for chairing
Accepted.
6 July telcon or 13 July?
<scribe> Cancelled: 6 July
Next meeting is 13 July
Any regrets? Richard
Henry gives regrets for 13 and 20 July
Get your plans to Murray!
A-13-01: Continues
A-23-02: Continues
A-23-03: Continues
Norm wonders if we were moving towards consensus at the last meeting.
Norm: In particular, about the conditional proposal Richard made
Richard: We didn't really come to agreement, but it wasn't rejected out of hand
Alex: should we start with my and
Murray's alternatives?
... Mine was just to compare the two approaches
Norm: What about the otherwise?
Alex: If it's a pipe, then if the when doesn't fire, I'd expect it to just do identity.
Richard: But if the conditional had multiple inputs or outputs, it's not clear what the identity is.
Norm: Couldn't we just make it an error not to include the otherwise clause?
Richard: In the simple case, there might be lots of cases where people would prefer not to write it.
Alex: My example does need an otherwise.
Henry: I can't see that the difference is doing any work.
Oops
Alex: The concept of a primary input and output was rejected in general. I think the pipe brings it back.
Richard: We've meant different
things at different times about primary inputs and
outputs.
... Sometimes it has an effect on the control, but in the
examples I've been posting, I've been assuming there'd be an
idea of a primary input and output purely for abbreviation
purposes.
... I certainly haven't meant primary input and output to have
any other implications.
Henry: Other things being equal,
I'd prefer a syntax that makes heavy use of defaulting to get
to the 80/20 point, rather than saying that you have to make a
discontinuous change in the markup to move beyond that.
... If there are things you can't do, that's a problem, but I
don't see that in the cases we've looked at so far.
... The other difference between the two examples is that
Alex's includes a choose with a contained pipe and that appears
to be doing no work. I'd like it to the be case that we don't
need it.
Alex: that's only because it's a single step.
Henry: What's wrong with saying that the content model of p:when is p:step+
Alex: I'm not convinced there's a
simple story of defaulting that gets to a simple
straight-through pipe.
... XSLT can be conceptualized as a resource with an input and
an output. There's a story that you can tell for things that
are straight thorugh pipes.
Richard: There's something about
an XSLT component that says that it's source parameter is the
one that can be an input when it's placed in a pipe?
... In your example, the source is something that comes from a
pipe?
Alex: No, I think this makes the story for components more complicated, but for users less.
Henry: Components need declarations and those declarations tell you what the primary inputs and outputs are
Richard: Given that you need to do that for the components anyway, why do you need the pipe/flow
Alex: Because an aggregation
component might not have a primary input and output
... I think it'll be much more confusing if there's a whole
hidden layer you have to understand to move beyond simple
pipes.
Richard: If you've got a sequence of unix commands that are piped together, then you can use a bunch of "|" symbols. If you have multiple inputs and outputs then you have to put redirects to files in. But you don't need to wrap the sequence of commands in anything special to distinguish these two cases.
Alex: Yes, but the ones that go
beyond simple chains are too complicated for most people to
understand.
... There's a slippery slope where you have to chase these
named references back and forth.
... If there's a simple syntax for the simple case and a
different syntax for the more complicated cases, then you know
when you're jumping to the next level of complexity.
Norm: I'm going to agree with Henry here. We want to make incremental improvement simple.
<ht> HST thinks the XSLT example cuts the wrong way for AM's argument -- no-one uses the 'simple' stylesheet-is-template mechanism, precisely because evolving it is discontinuous
Norm: We seem to be struggling with this the idea of getting the defaults right. I'd like to get the verbose syntax right first.
Alex: I think we should consider defaults along the way.
<Alessandro> Norm, I agree with this approach
<rlopes> +1 for Norm's approach
Alex: Maybe one way out is to
divide and conquer our use cases. Assign some number of them to
individuals with proposals for how you'd write it down.
... 20 to 30 of the use cases are straight through pipes
... We need to make some progress on those use cases. So let's
do that.
Richard: I agree with Alex that it would be a good idea to write out some of the use cases in a proposed syntax.
Alex: There was the issue of naming inputs and outputs
Richard: In the examples I've
done so far, I don't think it makes much difference.
... I don't think we need to worry about this too much now, but
maybe doing this will turn up a case where it does
matter.
<scribe> ACTION: Alex to write up some straw syntaxes for some of the use cases. [recorded in http://www.w3.org/2006/06/29-xproc-minutes.html#action01]
<scribe> ACTION: Norm to write up some straw syntaxes for some of the use cases. [recorded in http://www.w3.org/2006/06/29-xproc-minutes.html#action02]
<Zakim> ht, you wanted to accept NW's suggestion
Henry: This is past it's window,
but for the record, I'm happy with Norm's desire to focus on a
fully articulated syntax in the first instance. I'll privately
try to find forms of the fully articulated syntax that will
admit to graceful defaulting.
... I don't object to the overall strategy you suggested.
Norm: I think working on syntax proposals and examples for use cases might help us move forward.
Alex: Do we want to go through the dot proposal stuff again? And Murray's using QNames for step names.
Norm: I think that the naming
conventions (either the step/input-output name or the
explicitly named input or output) and the use of step
type="xslt" or p:xslt for hte step name are largely
irrelevant.
... They have little impact on the technical solutions, only on
the surface syntax.
Alex: Use of a QName for a step name allows us to have a directed syntax. Being able to specify shorthand just like extension elements in XSLT is a good thing.
Richard: You're thinking of some sort of macro-like facility?
Alex: Yes. Becuase that's what I
do in smallx.
... There's a big usability win, but it does obfuscate inputs
and outputs if you're just looking at a step.
... But since we need the component definition anyway, maybe
that's ok.
Richard: I agree that some sort
of facility like that would be nice, but I need to understand
everything else better.
... So to remind us where we are: we've talked a lot about
straight-through pipes and we've talked about the conditinal
construct without any conclusion. The other control construct
we've thought of is the iteration or viewport construct.
... We haven't really addressed that at all yet, but we should
make sure we consider it.
... It would be a good thing for someone to come up for a
concrete syntax.
Alex: There's iteration over elements and over documents.
Norm: Right. I don't know if they
can be unified but I hope so.
... Does it make sense to end early and come back in two weeks
with our examples in hand?
None.
Adjourned