W3C Forms teleconference June 29, 2011

* Present

John Boyer, IBM
Nick van den Bleeken, Inventive Designers
Philip Fennell, MarkLogic
Steven Pemberton, CWI/W3C (chair)
Leigh Klotz, Xerox (minutes)
Alain Couthuries, AgenceXML
Dan MacCreary, Dan MacCreary Associates
Erik Bruchez, Orbeon
Kurt Cagle, XMLToday

* Agenda

http://lists.w3.org/Archives/Public/public-forms/2011Jun/0045.html

* Wiki minutes and resolutions repository

http://www.w3.org/MarkUp/Forms/wiki/Minutes http://www.w3.org/MarkUp/Forms/wiki/Resolutions

Steven Pemberton: Nick and I did this at the editorial workshop. I found some missing minutes and added them, and added the TOC of each.

* W3C Community Groups

http://www.readwriteweb.com/archives/w3c_set_to_launch_community_groups_to_help_create.php http://lists.w3.org/Archives/Public/public-forms/2011Jun/0022.html

Steven Pemberton: It's been announced now.
John Boyer: The question is whether we can become a community group, or whether that's appropriate.
Steven Pemberton: As it's already a working group we can't move.
Leigh Klotz: Or we could seek proposals for an XForms 2 there.
John Boyer: We can't do PER from a community group.

* Amsterdam Editorial Meeting Report

http://www.w3.org/MarkUp/Forms/wiki/XForms_2.0

Nick van: We copied XForms 1.1 to XForms 2.0 in wiki markup and Steven re-arranged it to make it more readable. I did some work on the XPath 2.0 part. Steven also started work on @ref instead of @nodeset, for the resolution we did a couple of months ago. http://www.w3.org/MarkUp/Forms/specs/XForms1.2/modules/xpath20/index-all.html
Nick van: For the XPath 2.0 module, it's a good time to have the group review.
John Boyer: How are the edits?
Steven Pemberton: A lot is similar to what we already have.
Steven Pemberton: That's not yet done. It was a productive two days. The editing is not yet finished, but looking OK. There's stuf to be copied from the new wiki sections. We made a good first version.
John Boyer: On the @ref part, how did you do it? @ref is now offered by SNB, but we didn't offer that in the @nodeset places.
Steven Pemberton: My current plan is still to have SNB but the other also links to the same section where the syntax is the same, and there's an extra rule in SNB to take the first node.
John Boyer: So you still use SNB and nodeset binding.
Steven Pemberton: Yes, it's a semantic difference, but for multiple binding there is a deprecated @nodeset attribute.
Steven Pemberton: We had a number of questions left as notes in the spec.
John Boyer: I see it's 2.0.
Steven Pemberton: I thought we'd decided to go to 2.0 because we're going to XPath 2.0.
John Boyer: I hadn't recalled that. I thought XPath 2.0 was recommended.
Steven Pemberton: We could have a 1.2 being the same with just XPath 1.0.
Nick van: http://www.w3.org/2007/10/htmldiff?doc1=http%3A%2F%2Fwww.w3.org%2FMarkUp%2FForms%2Fwiki%2FXForms_2.0_base&doc2=http%3A%2F%2Fwww.w3.org%2FMarkUp%2FForms%2Fwiki%2FXForms_2.0
John Boyer: We have XForms 1.2 Category on the wiki.
Steven Pemberton: That was before the decision, but that was my memory.
John Boyer: I don't know when that decision happened. XForms 1.2 Category includes XPath 2.0.
Nick van: In the current 2.0 spec it can still be 1.2, but we did some edits to abstract away the expression language so there is no normative reference to XPath. The XPath 2.0 module brings in XPath 2.0.
John Boyer: How do you change expression language?
Steven Pemberton: Only by reference.
John Boyer: How can the processor know?
Steven Pemberton: I guess the version attribute.
John Boyer: Or it could be a separate version for expression language.
Nick van: That's still open for more expression languages.
John Boyer: As XForms 1.2 it's important as I'd like to have features in my processor added, and I'd like to get at those without having to do the expression language.
Nick van: There is an xpath-version attribute 1.0 or 2.0 on the model. If there's no attribute it's 1.0.
John Boyer: Doesn't the model element itself have to list that element.
Nick van: Other modules can add attributes to elements.
John Boyer: What's the default?
Nick van: I wasn't sure how we were going to say how to combine the modules.
Leigh Klotz: So just like saying you use XHTML 1.1, SVG 2.0 and XForms 1.1, you'd say you have XForms 2.0, SVG 2.0, and XPath 2.0?
Nick van: Someone has to say. If we add more expression models, the processor needs to know.
John Boyer: It seems like you need an XPath 1.0 module as well.
Nick van: It depends, perhaps not yet. If you put the XPath 2.0 module in backward-compatibility mode it's almost compatible with an XPath 1.0 implementation. We could have an XPath 1.0 module.
John Boyer: One way of implementing that module is using 2.0 in 1.0 mode, and another is to use a 1.0 processor.
Steven Pemberton: Is 2.0 in 1.0 mode sufficiently different? You just need to explain how 1.0 works and if we have that with the existing module? Maybe a section saying backward compatible mode?
John Boyer: Then maybe it's the XPath module and explains 1.0 and 2.0 modes?
Steven Pemberton: That might be it.
John Boyer: In XPath 1.0 we have non-ns function names.
Nick van: There are some subtle differences. In 1.0 compat mode you can use sequences, but a pure XPath 1.0 implementation does not. It's handy to use sequences.
Leigh Klotz: John, is this a hypothetical concern or a concern for your implementation?
John Boyer: I have two engines using XPath 1.0.
Leigh Klotz: Do people import into your processor?
John Boyer: Yes, we have importers.
Leigh Klotz: So your concern is someone writing a form under the guise of XPath 1.0 but it includes sequences which are really 2.0 and your processor cannot run it?
John Boyer: Right.
Steven Pemberton: What 1.0 expression would have semantic differences.
Nick van: You can have an XPath 2.0 expression in XPath 1.0 compatibility mode with existing queries being compatible with 1.0.
John Boyer: Some expressions would stop working because of type problems with an XPath 2.0 processor, but the 1.0 expressions would then work. So that's transitional. Add features to the form and even some features, but still use predominantly XPath 1.0 expressions.
Nick van: That's how we do it in our products. We have a lot of customers using XSLT 1.0. We'd like the spec to have an XForms 1.1 form work with an XPath 2.0 engine.
John Boyer: Then we have XPath 1.0, XPath 2.0 with 1.0 compatibility, and true XPath 2.0. We're saying that the True XPath 1.0 implementation may choose to use XPath 2.0 in compatibility mode. But that will not be able to do real XPath 1.0.
Leigh Klotz: That doesn't seem like a realistic concern. There's XPath 2.0 implementations of XForms. XPath 2.0.
John Boyer: I don't have a C or JavaScript version of XPath 2.0 I can use.
Leigh Klotz: I'm not talking about new implementations. Many existing implementations already use XPath 2.0 and aren't going to offer XPath 1.0 when the upgrade to XForms 2.0.
Nick van: Do we need XPath 1.0?
John Boyer: If it were XForms 1.2 yes, it's a dot-release. You can still use most of what you already know. I wasn't aware we weren't doing XForms 1.2. I thought we agreed XForms 2.0 would go to XPath 2.0. But in the charter and the Wiki I thought we were doing XForms 1.2. You could use XPath 2.0 if you turn it on the markup.
Steven Pemberton: If we have XForms 2.0 with XPath 1.0 allowed, you'd get the new features and get XForms 2.0 "basic"?
John Boyer: If we're going straight to XForms 2.0 the default should be XPath 2.0. You'd have to ask for XForms 1.0. The major version shift makes it different.
Steven Pemberton: There are questions about how we identify versions.
Leigh Klotz: I don't see why you need to specify it when pull XPath out into a module.
John Boyer: You'd have to specify which XPath version you want.
Leigh Klotz: It doesn't have to be XPath the way the spec is now.

Kurt Cagle: Would anyone write XForms 2.0 with XPath 1.0?
Steven Pemberton: Yes, John doesn't seem to want to write a new XPath engine.
John Boyer: Yes, and we need to keep existing forms working.
Steven Pemberton: Don't existing forms work in compatibility mode?
Nick van: In compatibility mode it works. In 2.0 mode you may have type casting errros, saying the arguments are not of the correct type. For example lt and gt can't compare strings and numbers.
John Boyer: We have a problem layered over top of XPath. For historical reasons we have no-ns qualified XPath 1.0 mode functions. In XPath 2.0 you have to use NS qualifications.
Leigh Klotz: John, can't you write an upgrader?
John Boyer: That's about as much work as putting in a new XPath engine, but ultimately yes.
Nick van: If you ask for XPath 1.0 implemented with XPath 1.0 or XPath 2.0 with compatibility mode, then it's just one paragraph.
John Boyer: Yes.
Nick van: If you use XPath 2.0 stuff in XPath 1.0 compatibility mode then it doesn't work in XPath 1.0 processors.
John Boyer: It is the most reasonable standard protection one can get at this point to say it's legal to use an XPath 1.0 processor.
Nick van: Then we need to change the title to XPath Module.
Steven Pemberton: Yes, that's what John said.
Nick van: I called it XPath 2.0 because XPath 3.0 is almost out.
John Boyer: To me the idea is that XPath Module is out and it has text about 1.0 and 2.0. You can rev it to include 1.0, 2.0, and 3.0 or maybe 2.0 and 3.0.

ACTION-1806 Nick van den Bleeken to change the title of the XPath 2.0 Module to XPath Module.

Steven Pemberton: Nick and I will work on this until it's time for the vacation. We'll do this next in the Bay Area.
Dan MacCreary: I want to acknowledge how much work you've done.
Steven Pemberton: There's a lot of detail. We think we can diff the versions as well to produce a diff spec.
Dan MacCreary: Is there an easy way to make sure the wiki changes are in?
Steven Pemberton: In a way we're all editors now, but there's no objection to making agreed changes. It isn't limited, just to WG members and we can make changes.
Dan MacCreary: Using the wiki tool?
Steven Pemberton: Yes, that's a live copy. You can move your section straight in.
Nick van: Yes. There's also and XForms_2.0_base and don't touch that. That's the diff base.
Steven Pemberton: It's open for all to edit. Just fix typos and it's recorded in the history page. Don't edit the whole spec, just the sections, or make sure your browser can handle the whole text.
John Boyer: should also make sure that spec allows an xpath 1.0 to be implemented either with a real xpath 1.0 engine or with an xpath 2.0 engine with 1.0 compat mode
John Boyer: And add your name to the editor list?
Steven Pemberton: Frankly we're all editors, but if you make changes, by all means...
John Boyer: And just adding your name doesn't count.

* Summer calendar

Leigh Klotz: Summer calendar?
Steven Pemberton: Yes, I'll do that.

* IRC Minutes

http://www.w3.org/2011/06/29-forms-minutes.html

* Meeting Ends