XML Processing Model WG

Meeting 35, 14 Sep 2006


See also: IRC log


Alex, Andrew, Henry, Michael, Mohamed, Norm, Paul, Rui
Alessandro, Erik, Murray, Richard


Accept this agenda?

-> http://www.w3.org/XML/XProc/2006/09/14-agenda.html

<alexmilowski> pre coffee, only partially present...


Accept minutes from the previous meeting?

-> http://www.w3.org/XML/XProc/2006/09/07-minutes.html


Next meeting: telcon 21 Sep 2006

Possible regrets: Rui

Review of open action items

A-13-01: Continued.

A-34-01: Completed

Technical discussion

Discussion of draft

<ht> http://www.w3.org/XML/XProc/docs/ED-xproc-20060912/#steps

Henry: I'd like to talk about steps and components

Alex: I'd like to talk about 4.1.3

Henry: I'd like to see if we can't reach consensus before the end of this call.

Alex: I'd like to see about fixing my example too.

Henry: Everything up to 2.1 is fine except that figure 2 needs a transform step at the end, not a validate step

<MSM> also s/rerpesents/represents/

<scribe> ACTION: Norm to fix figure 2 [recorded in http://www.w3.org/2006/09/14-xproc-minutes.html#action01]

<MSM> also s/Definition: A step which contains other steps is called a step containers./...container./

Henry: Steps ought to be bits of markup; but we talk about step containers which ought to be about components
... All of sections 2 and 3 don't need any notion of representation or anything like that
... The introduction of the notion of representation and the XML level in section 2 is a mistake and you don't stay with it.

Norm tries to explain his view

Norm: Steps are syntax and some of them have steps inside them. Components get instantiated and some of them contain subpiplines.

Henry: Maybe we can just try to write the first two sentences of 2.1 without saying anything about pipeline documents or represents
... You've chosen "component" as the over-arching term.
... Some components are atomic like xslt and atomic and others are "constructs" or "step containers"
... Except that we have components now so they ought to be component containers.
... Many components are simple and atomic and correspond to a single operation. An XSLT component, for example...
... However, some components are containers for other components...called a container...called contained components

Alex: Step and step container is still an abstract concept, it's not just markup.
... Component is something that has to be bound and has to have all that information.
... I'm not sure that drawing an analogy between the language constructs and a component is the right thing.
... Components containing components seems awfully technical, do we really need to go there?

Henry: I like the way the first section reads

<MSM> if a pipeline is a DAG of (atomic) components, then we've got: graphs, subgraphs, and nodes

<Zakim> MSM, you wanted to suggest that the absence of a definition of 'step' is symptomatic of a problem. I'm not entirely certain which problem. But a problem.

Michael: I have an unease similar to Henry's: as a first time reader, I can't tell if step is an abstract unit that may correspond to a subgraph or an XML thing (or both). And so I agree with Henry that there's room for improvement here.

<ht> So, Alex, note in section 1 we have "The standard “choose” component evaluates"

<ht> which reads just fine to me

Michael: Unfortunately, Henry's proposal has a contradition: either components nest and they're similar to blocks in Algol style programming languages *OR* pipelines are DAGs of components.

Henry: I've come to think that that's not the best way to think about these things.
... At the same time, a component container is a node in one graph and has a graph inside it.

Michael: Then the definition of pipeline as "a graph" is misleading.

Henry: Look at figure 2. The Choose box contains a subgraph.
... There are important constraints that are captured naturally by saying that the nodes are either atomic or contain subgraphs.

Michael: Then we should say that the graphs inside are separate.
... Let's talk about it in sort of purely graph terms. I think there are two ways to tell the graph story.
... One way is to say that the graphs are contained inside and don't connect.
... Another way is to say that there is a graph that has all the components in it. The way to view choose is a subgraph of that larger graph.
... If we think of it in terms of the latter approach, then the drawing here is not the flat graph either. You need a splitter node and ajoiner node as well.
... Steps then always correspond to subgraphs; atomic steps just correspond to a single node.

<Zakim> alexmilowski, you wanted to modify that definition of subgraph

Norm: I prefer the former definition.

Alex: I prefer the latter.
... My model is that there is a single graph. I think of choose being a node in the graph.

<Zakim> ht, you wanted to point back to the agreement from Ontario

Henry: I'm happy with the first story. I don't understand the second yet.


Henry: Having the language constructs like choose and for-each be a locus of ports (of nodes in the graph) and a scope all seem to work well together.
... It must be the case in some sense that the stories are isomorphic, but I think the story that's in the document is much closer to the first story.

Norm proposes to talk about 4.1.3 for a bit as it seems directly relevant to which story we're telling.

Alex: What happens when some contained step points off to something that it's allowed to access.
... In 4.1.3 we say that we have some fabricated declaration.
... It's going to be a mess to report errors.
... It's not helpful to make this thing self contained.

Norm and Alex go back and forth a bit about what the right answer is.

Alex: I see two ways out of this, allow declare input and actually make 4.1.3 valid against our current specification and acknowledge that people can do this. Or have a different model for how we talk about these things.
... There's an inconsisentency here that bothers me.
... There's a problem with for-each and view-port where you'd have to be able to tell *which* for-each was the important one and which are the others.
... Maybe it would be better to draw a picture.

Norm: I propose dropping 4.1.3 for FPWD

Alex: I'd be happy with that, perhaps with the ednote placed somewhere else with more explanation

Resolved, we'll drop 4.1.3 for FPWD

<MoZ> +1 but letting know that the WG will propose shortcut syntax

Henry: My feeling is that I don't care if we don't settle this question in this WD either.
... I'd like to see slightly more consistency in the story we tell in parts 2 and 3.
... I'll volunteer to work on a new draft over the weekend.

Proposal: The WG will publish the current draft as the FPWD (with 4.1.3) removed.

So resolved.

<scribe> ACTION: Norm to request permission to publish [recorded in http://www.w3.org/2006/09/14-xproc-minutes.html#action02]

Proposed: If an alternate draft is proposed by close-of-business (Boston time) on Monday, the WG will have until close-of-business Wednesday to veto. If there are no veto's, the alternate draft will be published instead. The only plans for the alternate draft are to improve wording in sections 2 and 3.


Proposed publication date: 28 Sep 2006


Any other business?


Summary of Action Items

[NEW] ACTION: Norm to fix figure 2 [recorded in http://www.w3.org/2006/09/14-xproc-minutes.html#action01]
[NEW] ACTION: Norm to request permission to publish [recorded in http://www.w3.org/2006/09/14-xproc-minutes.html#action02]
[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.127 (CVS log)
$Date: 2006/09/21 16:34:07 $