IRC log of xproc on 2006-04-20

Timestamps are in UTC.

15:09:04 [RRSAgent]
RRSAgent has joined #xproc
15:09:04 [RRSAgent]
logging to
15:09:08 [Norm]
Meeting: XML Processing Model WG
15:09:08 [Norm]
Scribe: Norm
15:09:08 [Norm]
ScribeNick: Norm
15:09:08 [Norm]
Date: 20 Apr 2006
15:09:08 [Norm]
Chair: Norm
15:09:09 [Norm]
15:09:12 [Norm]
Present: Henry, Michael, Andrew, Mohamed, Murray, Alessandro, Norman, Alex, Richard
15:09:23 [Norm]
Topic: Accept this agenda?
15:09:23 [Norm]
15:09:29 [Norm]
15:09:33 [Norm]
Topic: Accept minutes from the previous teleconference?
15:09:33 [Norm]
15:10:43 [Norm]
s/Accepted/Alessandro suggests 5 before 3, otherwise accepted
15:10:54 [Norm]
15:11:09 [Norm]
Topic: Next meeting: 27 Apr telcon
15:11:09 [Norm]
Any regrets?
15:11:11 [Norm]
None given
15:11:27 [Norm]
ACTION: Henry to provide registration page for August f2f
15:12:01 [Norm]
ACTION: Murray to provide local arrangements info for August
15:12:46 [Norm]
MSM: One prominent way to get to the meeting will be to drive. Can we add some questions about car pooling to the registration form?
15:13:09 [Norm]
Murray: I'm thinking about that, I'll see what makes the most sense.
15:13:43 [Norm]
Henry: Let's us a wiki for that instead
15:13:54 [MoZ]
who is going to Xtreme markup ?
15:14:24 [Norm]
Topic: Issue 3117: Should parallel execution of step be allowed by the language?
15:14:31 [Norm]
15:14:43 [Zakim]
15:15:01 [Zakim]
15:15:08 [richard]
zakim, ? is richard
15:15:08 [Zakim]
+richard; got it
15:15:15 [Norm]
Alessandro: This was raised in a call a few weeks ago.
15:15:43 [Norm]
...I don't know if we need to spend a whole lot of time on it. We probably don't want to add constructs to the language to control this if we can avoid it.
15:17:18 [Norm]
Richard: I hope most of this falls out naturally. If we don't specify the order of execution where it isn't inevitable. That implicitly allows parallel execution. We don't initially have to say much about it.
15:17:52 [Norm]
Richard: If you have two things that could be executed in parallel, maybe they will be. If you want to synchronize them, you have to provide some mechanism, such as reading a document that one is writing.
15:18:13 [Norm]
Alex: I think we shouldn't disallow parallel execution.
15:18:29 [Norm]
Richard: We shouldn't put anything in the language to accidentally prevent it.
15:19:25 [Norm]
Norm: It sounds like we view parallel exec. just as an optimization.
15:20:17 [Norm]
Richard: I take the normal unix pipeline as a model. If you have two processes running, nothing expresses the order except that if one is reading and one is writing, you can be sure the reader will block waiting for the writer.
15:20:39 [Norm]
Richard: Another aspect is that any kind of streaming implies a certain kind of parallelism.
15:22:12 [Norm]
Norm repeats summary.
15:22:51 [Norm]
Richard: Not just features of the language, but also the way we describe the language. A processing model might have unintended consequences that prevented parallelism, we want to avoid that
15:23:49 [Norm]
Richard: An example: we might say that the processing language as if it executed the components in top-to-bottom, left-to-right order which would be bad because it would imply that side-effects (if there are any) occur in a particular order.
15:24:36 [Norm]
Topic: Issue 3118: Should an implementation of the language be allowed to perform caching?
15:24:43 [Norm]
15:26:06 [Norm]
Alessandro: This is a specific question about a particular example.
15:26:19 [Norm]
...The stylesheet executed by the second step is executed by the first step.
15:26:38 [Norm]
...Should the pipeline engine be allowed to cache the stylesheet produced by the first step across invocations
15:27:03 [Norm]
...Can the engine be smart enough to determine that the output will be the same and reuse a cached value.
15:27:37 [Norm]
Norm: I think that what an engine does is not our problem.
15:28:07 [Norm]
Richard: The answer, in some sense, is obviously yes. If the engine can determine that the same results will be produced, then it can use the cached copy.
15:28:15 [ht] is now listed as an open questionnaire for our group
15:28:37 [MoZ]
ht thanks
15:28:41 [Norm]
Richard: What does it mean for it to be exactly the same? Vanilla XSLT 1.0 stylesheets can't produce any side effects.
15:29:56 [Norm]
...but care must still be taken to assure that side effects don't happen
15:30:11 [Norm]
Richard: We may need a way to allow authors to express that some components are side-effect free
15:30:14 [ht]
q+ to endorse the idea of annotation
15:30:29 [Norm]
Alex: It would be interesting to consider annotating the steps
15:30:58 [Norm]
Alex: You may be able to say "never cache" but maybe a smart impl could cache or not as it saw fit otherwise.
15:31:43 [Norm]
Richard: There are some even simpler cases of caching. In the MT pipeline, we compile schemas and cache them. That means the same schema used in two places can reuse the cached copy.
15:32:22 [Norm]
Alex: The more interesting case is where it's produced by the pipeline.
15:33:08 [MoZ]
alexmilowski, cache hints like expires in Cocoon ?
15:33:45 [Norm]
Alex: The concept of a dynamicly generated schema isn't far fetched, but URIs that change everytime you read them could be problematic.
15:34:42 [Norm]
HT: The http expires case isn't good enough. The MT engine checks using the http refresh if stale everytime anyone touches a cached resource because there's no way to count on pipeline time and internet time being similar.
15:35:12 [Norm]
HT: The actual time between two uses of a cached object may be wildly different from what you think they are. The only safe thing to do is ask the server each time.
15:35:41 [Norm]
HT: That works on a filesystem too
15:36:09 [Norm]
HT: I'm not sure how that works in the context of documents generated by the pipeline
15:36:11 [Norm]
ack ht
15:36:11 [Zakim]
ht, you wanted to endorse the idea of annotation
15:36:51 [Norm]
HT: I think that for practical reasons, I'd be very unhappy to see any requirement of no side-effects imposed on components.
15:37:24 [Norm]
...I think "escape to program execution" and "synchronous SOAP exchange" are examples of components that cannot have intrinsic gaurantees of no side-effects.
15:37:46 [Norm]
...There are also cases of components that do database updates. Those components have a side-effect.
15:38:29 [Norm]
Alex: Those aren't (necessarily) examples of pipeline steps communicating through side-effects
15:38:44 [Norm]
Alex: If you're going to have that synchronization problem, you'd setup a dependency for that.
15:39:08 [Norm]
HT: I'm in favor of an approach which has a default and allows the component to assert the opposite.
15:39:30 [Norm]
HT: 1. Not side-effect free; even though my inputs are the same, you can't be sure I'll produce the same output and
15:39:37 [MSM]
[this seems to be an "i am not a function" declaration?]
15:39:52 [Norm]
HT: 2. An expression of out-of-band dependencies.
15:40:20 [Norm]
Norm observes that we've wandered into the issue of side-effects
15:42:21 [Norm]
Norm: I think everyone will agree that if the pipeline knows the output will be the same, it can cache the result
15:42:43 [Norm]
Alessandro: I'm not sure if this is too strong a statement. Consider the case of reading a stylesheet from a URI.
15:44:01 [Norm]
MSM: Side-effects and caching are not seperable questions
15:44:16 [Norm]
Alex: Caching is a feature of the implementation not the language
15:44:37 [Norm]
Richard: Just a big switch will probably be too coarse grained.
15:45:21 [Norm]
Richard: I imagine descriptions for each component type and the XSLT component might, for example, say that it has no side-effects by default. But then on a particular case, you could override it
15:46:06 [Norm]
Alex: The thing that concerns me about being able to say a component has side-effect is that it isn't clear what that means.
15:46:14 [Norm]
Alex: Does it really effect the pipeline running?
15:46:18 [ht]
zakim, who is on the call?
15:46:18 [Zakim]
On the phone I see Ht, Michael, Andrewf, MoZ, Murray_Maloney, Alessandro_Vernet, Norm, Alex_Milowski, richard
15:46:25 [ht]
zakim, who is making noise?
15:46:35 [Zakim]
ht, listening for 10 seconds I heard sound from the following: richard (83%)
15:46:45 [Norm]
Alex: Unless there's some dependency in the flow-graph, what can the processor do.
15:47:15 [PGrosso]
PGrosso has left #xproc
15:47:48 [Norm]
Alex: Unless we do something like what XSLT does with the document() function, I'm not sure there's a great answer here.
15:48:33 [Norm]
Norm: I wouldn't stream past a component that had side-effects
15:51:19 [Norm]
Norm describes the case of a SOAP service
15:52:22 [Norm]
Alex: You have a pipeline with five steps, each has an auxinput that calls this SOAP service.
15:52:42 [Norm]
Alex: If you cache, you'll get one answer. If you don't cache, you'll get five answers.
15:54:34 [Norm]
Norm will take the question to email
15:55:10 [Norm]
Topic: Any other business?
15:55:15 [Norm]
15:55:20 [Norm]
15:55:23 [Zakim]
15:55:24 [Zakim]
15:55:24 [Zakim]
15:55:25 [Zakim]
15:55:25 [Zakim]
15:55:28 [Zakim]
15:55:29 [Zakim]
15:55:33 [Zakim]
15:55:36 [AndrewF]
15:55:58 [Zakim]
15:55:59 [Zakim]
XML_PMWG()11:00AM has ended
15:56:00 [Zakim]
Attendees were Ht, Michael, MoZ, Andrewf, Murray_Maloney, Alessandro_Vernet, Norm, Alex_Milowski, richard
16:02:56 [alexmilowski]
alexmilowski has left #xproc
16:38:49 [MoZ]
Norm you forgot the minutes ?
16:39:07 [Norm]
rrsagent, set logs world-visible
16:39:13 [Norm]
rrsagent, draft minutes
16:39:13 [RRSAgent]
I have made the request to generate Norm
16:39:14 [MoZ]
16:39:17 [Norm]
thank you
16:39:26 [Norm]
I'll edit them and move them to the right place now
16:40:07 [MoZ]
Norm, ready for next telcon :)
16:40:31 [Norm]
16:40:36 [Norm]
I have to craft the agenda first
16:42:08 [Norm]
16:47:10 [MoZ]
ht still here
16:47:19 [MoZ]
ht ?
16:47:54 [MoZ]
you was speaking of putting information in a wiki for F2F ?
16:50:05 [MoZ]
Norm, you remember that ?
16:50:24 [Norm]
Yes. I'm sure we can do that when the time is closer.
16:50:27 [Norm]
Are you coming to the f2f?
16:50:37 [MoZ]
i hope to
16:50:44 [Norm]
16:50:57 [MoZ]
i hope to see you in france before ;)
16:50:58 [Norm]
Minutes sent:
16:51:04 [MoZ]
at saclay
16:51:10 [Norm]
Right. I've got those tickets already. That's a done deal.
16:51:45 [Norm]
16:53:06 [MoZ]
Norm, nice trip :)
16:53:13 [Norm]
16:53:29 [Norm]
My folks live in England so any trip to Europe usually involves a couple of days with Mom and Dad
16:53:49 [MoZ]
you're english ?
16:54:02 [Norm]
Norm, but my mom is
16:54:28 [MoZ]
definie s/Norm/No/
16:54:36 [Norm]
16:54:43 [Norm]
16:57:19 [MoZ]
ok because you don't have the beautiful english accent ;)
16:58:24 [MoZ]
16:59:12 [MoZ]
Norm, how do you ask Zakim, when the conference begin ?
16:59:20 [MoZ]
i'm on xsl irc
17:00:04 [Norm]
I did it in #xsl
17:00:29 [MoZ]
17:30:36 [Norm]
Norm has joined #xproc
17:43:37 [Norm]
17:45:26 [MoZ]
i'm in :)
17:45:43 [MoZ]
not official but sounds good to me
17:46:09 [MoZ]
it's Norm(ed)
17:47:40 [Norm]
Actually using it will require more reading than I can afford right now.
17:48:02 [Norm]
rrsagent, bye
17:48:02 [RRSAgent]
I see 2 open action items saved in :
17:48:02 [RRSAgent]
ACTION: Henry to provide registration page for August f2f [1]
17:48:02 [RRSAgent]
recorded in
17:48:02 [RRSAgent]
ACTION: Murray to provide local arrangements info for August [2]
17:48:02 [RRSAgent]
recorded in