W3C Forms teleconference November 12, 2008

* Present

Charlie Wiecha, IBM
John Boyer, IBM (chair)
Leigh Klotz, Xerox (minutes)
Nick van den Bleeken, Inventive Designers
Paul Butcher, WebBackplane
Roger Pérez, SATEC
Steven Pemberton, CWI/W3C
Uli Lissé, DreamLabs
Keith Wells, IBM

* Agenda


* Previous Minutes

* Firefox Implementation Reports

John Boyer: I tried to use the report without reading it and didn't know it required the XPI. So we need a different implementation report.
Keith Wells: It's easy enough to pull out.
John Boyer: If you could make it work without the plugin that's OK too.
Keith Wells: I'd rather do that; probably this week. If not I'll go back to plan B.

* XForms 1.0 Implementation Report

Leigh Klotz: I asked Kenneth; the message has no attachment. So I don't know what happened.
John Boyer: I checked and I never got a message from you for it.
Leigh Klotz: Then we have to go update to the latest pubrules again.
John Boyer: They upgraded the JVM on the box that runs pubrules and it ran out of memory and they tried to get it fixed.

* Rich Web Application Backplane

Charlie Wiecha: We planned to update the note with examples from TPAC. It's become clear we need to step back to an earlier point than the one about composition to the one that we have assets. It's been shown to me that we haven't made the point that XForms is relevant to rich web applications. We'll propose to build something substantial in an XG renewal.
John Boyer: Yes, there is a such a perception. They seem to want to write picky, low-level stuff.
Charlie Wiecha: Yes, we probably have to write it in XForms+SVG, JavaScript, Flex or Silverlight. It's analogous to the MXML layer above ActionScript. People like that. Unless we really do the apps two or three times, we won't get the point across.

* Streamlined Syntax

** Primary Intent of XForms 1.2


John Boyer: It now focuses on accessing XForms within HTML and XHTML pages. Rather than having an attribute called form, we assumed the existence of the form element. Other adopting languages would be stronger in the XML space and have form elements as well (e.g. ODF). So we may not need a form attribute.

** instance attribute

John Boyer: Next, Leigh made a good suggestion about the default instance. The spec used to have a default attribute. That's been replaced by an instance attribute. We also talked about adding this to the xf:model element, but it wasn't necessary in this spec to assume that. It turned out to be a little challenging to have the model attribute override the instance attribute. I spent the most time trying to figure that out and couldn't.

Nick van: [irc] John, did you saw my e-mail with remarks to the spec (boolean-fromn-string(), setFocus(), startsize) http://lists.w3.org/Archives/Public/public-forms/2008Nov/0021.html (I've sent it today bcz I didn't had an internet connection for a week)
John Boyer: I did see that and we'll get to it.

John Boyer: On the instance attribute, if it's not present or if it's empty, then you get a generated instance. If it's expressed and indicates an XForms instance, that's the default. That was a good suggestion.

John Boyer: If you scroll through the document you see nice examples of markup.
Leigh Klotz: I wounder if you could use two different attributes for the examples?
John Boyer: I thought the xf: everywhere does that. I wondered if I focused on the FormsA instances, but drop the alignment with canonical XForms and put that in an appendix.
Leigh Klotz: You can also drop the xf: and say in the spec that the canonical examples are by default in the xforms namespace.
John Boyer: I think we can just use an appendix. In XForms 1.1, some example use the namespace and some don't. It's not my highest priority.

** startsize


John Boyer: Nick pointed out, if you want to repeat a tr: <tr name="item" id="item" startsize="1">
John Boyer: Name gives the name and startsize indicates it is a repeat item to start. Nick points out that the repeat attributes claim to repeat content of the element to which they are attached, not the elements themselves.
Leigh Klotz: That caused us a problem with tr repeats in the past.
Nick van: [irc] put it on tbody
John Boyer: I found it hard to do anything else other than repeating the element.
Nick van: [irc] side note : Steven once said that xf:repeat isn't allowed as a child of tbody
Nick van: The only downside of putting it on the element is if you have two table rows that need to be repeated they have to be repeated for every row in a nodeset.
John Boyer: A pair of rows, for example. But it's still just an onramp.
Nick van: Steven said xf:repeat isn't a child of tbody.
Leigh Klotz: James Clarke's RNG seems to think that you can have multiple tbody per table.
John Boyer: What makes it not allowed?
Steven Pemberton: By modularization and its allowable extensions of tables.
John Boyer: That gets at another point. How do we make this better than what's currently expressed? CSS?
Nick van: Put repeat-nodeset on tbody with item. That's correct according to the spec.
John Boyer: I guess I don't understand why we can't have an element child of tbody?
Steven Pemberton: It was to do with the choices made with XHTML modularization about where extensions went. You can't replace the body element of XHTML with a different element and still call it XHTML. The places allowed were attributes on elements and particular marked points. Table is one where there wasn't an extension point.
Charlie Wiecha: But maybe John's point is as it's unrolled, it's just a tbody.
Nick van: But the browser will stop.
Charlie Wiecha: Because it has no distinction between the table and the runtime.
John Boyer: But what causes the browser to fail? Why can't we fix that?
Nick van: That needs to be fixed in another spec.
John Boyer: We could use repeat-nodeset but we as a WG had some problems agreeing on what it should look like. Wouldn't we normally express this xf:repeat and styling?
Uli Lissé: You can use appearance on repeat in some implementations.
Nick van: display:table-cell isn't supported in IE.
John Boyer: So how do people to repeat in IE?
Paul Butcher: Repeat the content of the repeat. We can't do it in tables because IE doesn't like having things on rows in tables.
John Boyer: So how do we re-write the example?
Leigh Klotz: There is no good solution here; we added repeat attributes to XForms for this reason. XForms isn't a host language that wraps XHTML (like XSLT does) so we can't re-write the rules of XHTML.
John Boyer: So we can't use XForms elements to extend web pages in any place we want. What would a web browser fail?
Leigh Klotz: Nobody was ever able to make FormsPlayer do tables.
John Boyer: So it's odd we use attributes in this one spot here.
Leigh Klotz: Or it's an early version of what we're doing now.

Steven Pemberton: It's about li, p, SVG elements. The thing about attributes is that it's easy to have the existing document structure and put attributes on them to get a different runtime behavior, but it doesn't get in the way of other processing systems that get in the way of the document. So using attributes is a more general solution where you don't have to be able to insert.
Leigh Klotz: We get the dynamism from being integrated into the language; with the XSLT approach we'd be at step in the processing model.
Steven Pemberton: RDFa will work on any language as well. With attributes, the script runs on the DOM and the repeat attributes start working.
John Boyer: So if I amend this example, that would be fine. I need to put the repeat-nodeset on the tbody.
Nick van: Yes.
John Boyer: So you're right, it sounds like the repeat-attributes were the early version of this attribute thing that's been maturing.

Action 2008-11-12.1: John Boyer to update http://www.w3.org/MarkUp/Forms/specs/XForms1.2/modules/streamlined/index-all.html#default-data-instance-startsize to have canonical XForms representation use tbody/@repeat-nodeset

** setvalue

http://www.w3.org/MarkUp/Forms/specs/XForms1.2/modules/streamlined/index-all.html#get-set-value onClick="document.getElementById(X).setvalue(1234.567)"

John Boyer: There is a note about .value assignments for formatting.
Charlie Wiecha: Does it make sense to have the default action of the value-changed event do that assignment?
John Boyer: Then you can't stop the default action.
Charlie Wiecha: It seems to require a lot of model understanding here.
John Boyer: I meant if you want to change the data formatting.
Charlie Wiecha: It's not clear.
John Boyer: I guess it needs better wording. .value="xyz" will not invoke setvalue behavior.
Charlie Wiecha: Conversely if you do invoke setvalue
John Boyer: The first thing it will do is re-write the value.

Action 2008-11-12.2: John Boyer to clarify that setvalue starts by setting .value in http://www.w3.org/MarkUp/Forms/specs/XForms1.2/modules/streamlined/index-all.html#get-set-value

** setfocus


Nick van: As Mark Birbeck pointed out there is already a focus function in DOM Level 2.
John Boyer: Can we overload the behavior of that method?
Nick van: In JavaScript.
John Boyer: And that method is attached to all elements?
Nick van: Yes.
Paul Butcher: In what way do we override it?
John Boyer: On repeat form controls.
Paul Butcher: Of course.
John Boyer: And containers (case). We go into case and call its focus. What normally happens when you focus on a container?
Paul Butcher: In IE it does nothing.
John Boyer: Should we switch it now?
Nick van: There is a function that does almost the same thing.
Charlie Wiecha: The main difference is the container behavior.
John Boyer: We say "child form control list" but there is no accounting for things that may be non-relevant.
Leigh Klotz: I think it's a question of what we want with scripts that don't know much about us: do they go through us or do they go around us?
Nick van: Does the repeat index change?
John Boyer: I would say it does.
Leigh Klotz: I would like to have other packages work through ours.
John Boyer: I'd like to have the add-row operation focus on the new row.
Nick van: We already need to wrap the focus element.
John Boyer: That sounds fair.

Action 2008-11-12.3: John Boyer to rename setfocus to focus in http://www.w3.org/MarkUp/Forms/specs/XForms1.2/modules/streamlined/index-all.html#setfocus

** .increase and .decrease


John Boyer: There is an additional boolean parameter. This captures the basic use cases. The boolean is there for for deleting the only row in a table: empty or one row cleared.

** boolean-from-string

We should automate boolean-from-string() on the boolean MIPs (relevant, readonly, constraint) http://lists.w3.org/Archives/Public/public-forms/2008Jun/0069.html http://lists.w3.org/Archives/Public/public-forms/2008Feb/0077.html http://www.w3.org/MarkUp/Forms/specs/XForms1.2/modules/streamlined/index-all.html#declarative-data-access

Nick van: I prefer the castign solution, so same as boolean-from-string but not using it.
John Boyer: Does anybody have an action item to add that text.
Nick van: There's a resolution but no action item.
John Boyer: You know what happens then.
Nick van: I won't forget.

** Naming of the spec

John Boyer: I have the increased understanding that the name WebFormsA is not acceptable to the WG. Before Steven leaves I want to make sure we do get a shortname request. Steven, I sent you a message already. You will just need to replace the name. How about FormsA?
Nick van: FormsA
Uli Lissé: FormsA
Roger Pérez: FormsA
Charlie Wiecha: We have XForms and FormsA.
Leigh Klotz: There's AForms...

John Boyer: I propose a resolution that we call it FormsA.
Nick van: Yes.
Paul Butcher: Yes.
John Boyer: Is there anyone on the call who objects to that as a resolution? Can everyone live with it?
Steven Pemberton: [irc] I can live with it
John Boyer: So it will remove the possibility of a formal objection. I know it will make Raman happy. I appreciate the WG entertaining the conversation.
Leigh Klotz: Or AForms.
John Boyer: Are you OK with calling it FormsA?
Leigh Klotz: Sure.

Resolution 2008-11-12.1: We change WebFormsA to FormsA and make a shortname request.

John Boyer: Steven, are you OK with doing that?
Steven Pemberton: Can you ask for a shortname before the draft is ready? I'll check.
John Boyer: Can we decide to publish this before we've got through every last detail on the telecon? I suspect by next week we'll have the resolution.

John Boyer: I should rev the spec and send you another message.

Steven Pemberton: [leaves]

** boolean-from-string (continued)

Action 2008-11-12.4: Nick van den Bleeken to proctor implementation of http://lists.w3.org/Archives/Public/public-forms/2008Sep/att-0025/2008-09-10.html#resolution1 for XForms 1.2

John Boyer: Assuming that that goes in, I'm OK to have the FormsA spec reference XForms 1.1 but in places where I have said boolean-from-string... http://www.w3.org/MarkUp/Forms/specs/XForms1.2/modules/streamlined/index-all.html#declarative-data-access I want to use readonly="isManager"
Leigh Klotz: Why don't you just do it? We can update the reference to XForms 1.2 when we publish it.
John Boyer: does readonly="isManager" work in XForms 1.2?
Nick van: That will work in 1.2. context as well.
Leigh Klotz: Just put in an XML comment in the example that says XForms 1.2.
John Boyer: And in the spec I can use the alternate language that says the result is interpreted.

Action 2008-11-12.5: John Boyer to implement http://lists.w3.org/Archives/Public/public-forms/2008Sep/att-0025/2008-09-10.html#resolution1 for FormsA

** Declarative XPath expression context


John Boyer: It's the nearest ancestor control. We will have to use slash. We also discussed @name as creating XPath variables. Let's get this out and possibly add variable notation later if someone is insistent.
John Boyer: Is that OK with everyone?
Nick van: [irc] I also think that we can add that later (variable notation)
John Boyer: It looks simple.
Leigh Klotz: So I like your idea of moving the XForms XML examples out to an appendix or separate document to keep the simple syntax simple.
John Boyer: I want to reference the primer in the introduction.
Leigh Klotz: Can't we just publish that, not in TR space?
John Boyer: Good point.
Leigh Klotz: We can publish a short one there first, then revise it later.
John Boyer: That clarifies where to put it. And I can link to it.
Leigh Klotz: An informative reference. And I still think we should move the examples out to a separate document or appendix and assume the XForms namespace there.
John Boyer: Yes.

Action 2008-11-12.6: John Boyer to move XML examples out of http://www.w3.org/MarkUp/Forms/specs/XForms1.2/modules/streamlined/index-all.html and into an appendix, and assume XForms namespace.

John Boyer: [drops]

* Meeting Ends Abruptly

* IRC Minutes