14:45:11 RRSAgent has joined #xproc 14:45:11 logging to http://www.w3.org/2007/05/10-xproc-irc 14:45:30 MSM has joined #xproc 14:47:41 And I, you, MSM 14:47:49 Give my best to Tommie, Debbie, et. al. 14:48:02 BTW, I never got asked to review papers, but I'm always happy to, for future reference 14:54:27 Meeting: XML Processing Model WG 14:54:27 Date: 10 May 2007 14:54:27 Agenda: http://www.w3.org/XML/XProc/2007/05/10-agenda.html 14:54:27 Meeting number: 67, T-minus 25 weeks 14:54:27 Chair: Norm 14:54:28 Scribe: Norm 14:54:30 ScribeNick: Norm 14:59:02 Regrets: Rui, Michael 14:59:14 XML_PMWG()11:00AM has now started 14:59:21 +Norm 14:59:37 PGrosso has joined #xproc 14:59:59 MoZ has joined #xproc 15:00:00 alexmilowski has joined #xproc 15:00:22 +[ArborText] 15:01:04 richard has joined #xproc 15:01:17 +Alex_Milows 15:01:28 Regrets: Rui, Michael, Mohamed 15:01:39 No worries, MoZ 15:01:46 +??P21 15:01:51 zakim, ? is me 15:01:51 +richard; got it 15:02:28 zakim, please call ht-781 15:02:28 ok, ht; the call is being made 15:02:30 +Ht 15:02:57 zakim, who's on the phone? 15:02:57 On the phone I see Norm, PGrosso, Alex_Milows, richard, Ht 15:03:15 Andrew has joined #xproc 15:03:45 Regrets: Rui, Michael, Mohamed, Alessandro 15:03:50 +??P9 15:03:52 zakim, ? is Andrew 15:03:52 +Andrew; got it 15:03:57 thanks ht 15:04:03 Topic: Accept this agenda? 15:04:03 -> http://www.w3.org/XML/XProc/2007/05/10-agenda.html 15:04:21 Accepted. 15:04:26 Topic: Accept minutes from the previous meeting? 15:04:26 -> http://www.w3.org/XML/XProc/2007/05/03-minutes.html 15:04:33 Accepted. 15:04:39 Topic: Next meeting: telcon 17 May 2007 15:04:51 http://2007.xtech.org/public/schedule/detail/46 15:04:57 Henry gives regrets 15:05:06 Topic: Open action items 15:05:22 Alex to craft a proposal on serialization, continued 15:05:33 Henry to write up pipeline state variables, completed. 15:05:42 Topic: Pipeline state variables 15:05:42 -> http://lists.w3.org/Archives/Public/public-xml-processing-model-wg/2007May/0069.html 15:06:16 Norm: I think there was some confusion about [stepname]_index 15:06:27 Henry: The whole point of for-each is that there's no document sequence, you're getting them one at a time. 15:06:52 ...Nonetheless, you may wish to know what iteration you're in. 15:07:51 Henry: Adding functions feels like something that makes me muck with the XPath impl, but adding variables to the context is something I can do from outside. 15:08:34 Henry: There are a bunch of other "environment" variable kinds of things which things like XSLT/XQuery make available: implementation, system, etc. 15:09:57 Norm: There's a function in XSLT: system-property 15:10:07 Paul: I use function-available all the time 15:10:10 Henry: Yes, we might want that 15:11:09 Norm: At the moment, we don't allow references to unknown steps, even behind a condtional. 15:11:55 Alex: It might be nice to say that I use this collection of steps and have a more discernable error. 15:12:29 Any other discussion of Henry's proposal? 15:12:40 Ok. Variables or functions? 15:12:56 Henry: I prefer variables, I think. 15:13:51 Norm: In JAXP API, it's about equally easy. 15:14:13 Richard: Might a processor work in such a way that it doesn't "restart" the evaluation between loops. 15:14:24 Henry: In the very least, the context has to change, so it shouldn't be hard to change variables even then. 15:14:46 Norm: I observe that other specs that extend XPath use functions. 15:15:56 Richard: So far I haven't seen anything that suggests it isn't like a variable. 15:16:09 ...I observe that current() in XSLT is a function when presumably that could have been a variable. 15:16:46 Straw poll: Function or variable? 15:16:50 zakim, who's on the phone? 15:16:50 On the phone I see Norm, PGrosso, Alex_Milows, richard, Ht, Andrew 15:17:20 Results: 2 functions, 3 variables, 1 abstain 15:17:34 Henry: I'd be happy to have a note requesting feedback. 15:17:53 Norm: Ok, variables for now with a "priority feedback" note. 15:18:19 Henry's proposal is accepted. 15:18:29 Topic: More questions about syntactic sugar 15:18:29 -> http://lists.w3.org/Archives/Public/public-xml-processing-model-wg/2007Apr/0143.html 15:19:23 Jeni responded with a much grander proposal involving variables and attribute value templates. 15:20:10 Henry: I sympathize. I'm tempted to go all the way. 15:20:21 Alex: I'm sympathetic to the AVT story as well. 15:20:34 Henry: So href='banana' is the equivalent of name='href' value='banana' 15:20:48 ...And href='{xxx}' is equivalent to name='href' select='xxx' 15:21:01 ...And you get the probably irrelevant advantage that you don't have to use concat() 15:21:07 Alex: To users, that might be very nice. 15:21:34 Norm: I observe that if we do this, we'll need to say which attributes are AVTs 15:22:39 Henry: My inclination would be to say that we're playing on the edges here. We have no experience with which attributes can be AVTs. 15:24:15 Norm worries about the fact that references to documents will be quite different from an AVT perspective. 15:24:47 name = QName 15:24:47 select = XPath expression> 15:24:47 (p:pipe | 15:24:47 p:document | 15:24:48 p:inline) 15:24:50 15:25:36 Henry: the consequence of that for this story would mean that you couldn't do document references in AVTs. 15:25:48 Henry: For V1 I think we should only allow this for value= 15:26:08 ...Giving users choices is bad; so I think I marginally prefer to allow it only on steps 15:26:44 Henry: You can use the super-abbreviated form on step for values that are constant. 15:27:44 Henry: My proposal is: no change to the option element, you can just put the value on the step itself. 15:27:46 ...And only there 15:28:54 Norm: Yeah, but it wouldn't work for an option named "name" so maybe we should just ditch the whole thing. 15:29:00 Alex: It doesn't bother me. 15:29:39 Anyone uncomfortable? 15:30:27 Norm: Should we work this up into a draft and see what the public says? 15:30:36 Alex: And it's a static error if you specify the option twice. 15:30:40 Accepte.d 15:30:43 s/te.d/ted./ 15:31:05 Topic: Error codes for step errors 15:31:05 -> http://lists.w3.org/Archives/Public/public-xml-processing-model-wg/2007Apr/0153.html 15:31:40 Norm: What error do I raise? 15:31:54 Henry: The builtin steps have to say what errors they raise. 15:32:39 Richard: I want it to be possible to use off-the-shelf implementations without having to delve into them to sort out their error returns. 15:32:55 ...So I would be in favor of very generic errors that have some kind of detail inside them. 15:33:28 Norm: I'm happy with "step failed" and that's all you get. 15:33:42 Richard: If some steps need more detail then "ok" up to the point. 15:34:29 Alex: The error vocabulary is open so implmentors can add stuff if they want 15:34:57 Norm: Anyone uncomfortable with "there's an error code for step failed"? 15:35:04 Ok, that's what we'll do. 15:35:34 Topic: Pipelines that change attributes 15:35:34 -> http://lists.w3.org/Archives/Public/public-xml-processing-model-wg/2007May/0096.html 15:37:01 Norm: The proposed solution seems odd to me, but clever in its way. 15:37:29 Henry: Maybe we need something that does this, but I don't want to call it viewport 15:37:48 Alex: There's lots of things we can't do. We'll always find new things. I'm not sure that this is worth doing for V1. 15:38:39 Henry: Richard, you have something like this, can you explain it? 15:38:52 Richard: lxreplace is a program that's intended for doing minor replacements on XML documents. 15:39:00 ...We've talked before about streaming several of the microcomponents. 15:39:10 ...I'm wondering if there's a case here for an extra microcomponent that's like string-replace. 15:39:45 ...You have an xpath that can specify attributes or text nodes and it replaces their value with the result of evaluating that expression 15:39:54 Norm: We have that one. Jeni wants to manufacture attributes. 15:40:09 Richard: You could say that this is two separate steps, one that renames attributes and ones that changes strings. 15:40:57 Norm: Look at the example, it's got to construct attributes. 15:41:20 Henry: I think the answer is that we're not ready for this complexity yet. 15:41:26 Norm: Should we postpone this one for a while? 15:41:37 Henry: Yes, I'd say maybe even on the "someday" pile. 15:41:49 Richard: Given that it can be done with XSLT; streaming is just an optimizaiton. 15:41:56 s/optimizaiton/optimization/ 15:42:36 Henry: I still do think that we should consider a not-very-micro component which specializes the standard XSLT design pattern of copying most of a document and changing something about 1 element. 15:42:45 ...If/when we come back to this. 15:43:01 Richard: The for-each XSLT component is useful in many cases, but I'm not sure this example is one. 15:43:39 Topic: Fixed window use case 15:43:39 -> http://lists.w3.org/Archives/Public/public-xml-processing-model-wg/2007May/0111.html 15:44:40 Henry: I've found on a number of occasions that it's useful to catagorize things in one step and wrap them in the next. 15:44:49 ...With the semantic that they all get wrapped up together. 15:45:36 Henry: We have p:wrap that wraps things; the simple interpretation of what Mohamed wanted is to say there's an optional XPath which you can provide and as long as that value doesn't change, you don't close the wrapper. 15:45:49 Richard: And what happens when things cease to be siblings? 15:45:54 Henry: Then you close the wrapper. 15:46:32 Henry: Ignore comments, ignore PIs, ignore text nodes that contain just whitespace. Otherwise, anytime you hit something that doesn't match the XPath, or doesn't match its value, or isn't a sibling, you close the wrapper. 15:47:32 ...My exmaple is the pipeline compiler that needs this; it decorates steps with something about whether or not there's a thread boundary needed. Then you wrap each group of steps in the same thread with a wrapper. 15:47:54 Richard: This is a group component? 15:48:04 Henry: It makes wrap something that can be used as a grouping component 15:48:27 Paul: Mohamed proposed another expression to identify the kinds of things you skip. 15:49:00 Norm: I think you'd still end at non-sibling boundaries 15:49:07 Henry: I don't think that's any harder than what I said. 15:49:25 ...It's slightly tricky to write an XPath that detects all whitespace. 15:49:55 Henry: I'd like to think about that a little bit. 15:50:00 text()[string-length(normalize-string(.))=0] 15:50:09 Yes, but that's very expensive. 15:50:31 Norm: Your behavior could be the default 15:50:35 s/Your/Henry's/ 15:50:38 Paul: I like that. 15:50:45 Norm: Are we sold? 15:51:09 ACTION: Henry to propose wording for the spec. 15:51:09 do we keep the ignore option ? 15:51:22 Yes, MoZ, I think so. 15:51:28 Topic: Empty compound steps 15:51:28 -> http://lists.w3.org/Archives/Public/public-xml-processing-model-wg/2007May/0120.html 15:52:33 Norm outlines his concerns. 15:52:52 Henry: I think it's not obvious what some of the compound steps mean if they're empty. 15:53:58 Henry: I'm sympathetic. 15:54:04 Paul: It's not a big deal to me. 15:54:50 Norm: I'm not sure we need to have a nop step; you can always use identity. 15:54:56 Norm: Shall we outlaw empty compound steps. 15:54:58 Henry: I'm in favor. 15:55:15 Accepted. 15:55:24 Topic: Secondary output on XSLT 1.0 step 15:55:24 -> http://lists.w3.org/Archives/Public/public-xml-processing-model-wg/2007May/0099.html 15:56:37 Alex: I'm happy to do it. 15:56:39 Henry: I agree. 15:57:04 Accepted. 15:58:53 Topic: Any other business 15:59:04 New public draft in two weeks? 15:59:06 General agreement 15:59:09 ? topic 8 15:59:10 Adjourned. 15:59:11 -Ht 15:59:13 -Andrew 15:59:13 -Alex_Milows 15:59:14 -richard 15:59:14 -Norm 15:59:16 XML_PMWG()11:00AM has ended 15:59:17 Attendees were Norm, PGrosso, Alex_Milows, richard, Ht, Andrew 15:59:20 rrsagent, set logs world-visible 15:59:24 rrsagent, draft minutes 15:59:24 I have made the request to generate http://www.w3.org/2007/05/10-xproc-minutes.html Norm 16:01:28 PGrosso has left #xproc 17:34:41 MoZ has joined #xproc 18:04:40 Zakim has left #xproc