W3C Forms teleconference October 13, 2010

* Present

Erik Bruchez, Orbeon
Leigh Klotz, Xerox (minutes)
Nick van den Bleeken, Inventive Designers
Philip Fennell, MarkLogic
Steven Pemberton, CWI/W3C (Chair)

* Agenda

http://lists.w3.org/Archives/Public/public-forms/2010Oct/0007.html

* Previous Minutes

* Lyon

Teleconference times Meeting details Registration http://www.w3.org/2002/09/wbs/35125/TPAC2010reg/

Steven Pemberton: Lars Windauer will be coming from Betterform. TV Raman has asked for dinner Monday night.

* XBL2 and WebBL

http://lists.w3.org/Archives/Public/public-webapps/2010OctDec/0055.html Art Barstow proposes splitting XBL2 into two parts

Steven Pemberton: Several XForms implementations use XBL. XBL2 has been in CR for a very long time. Out of the blue, the editor Ian Hixie snipped out namespaces and other features and announced he was incorporating it into HTML, claiming he'd done it on the basis of input from implementors. Mozilla implements a different version. We said we have implementations of XBL. Art Barstow, chair of the WG responsible for this specification suggested splitting it into two specs. W3C Team was asked. There wasn't much feeling for having two XBL specs, so they want more information. So I said we'd discuss it at the F2F. So I'd like to gather which information and whether XBL2 needs changes. Although we offered to take on XBL during re-chartering, they'd like us to show how we use it, who uses it, and how.
Steven Pemberton: Who uses it?
Erik Bruchez: Orbeon implements good parts of the XBL2 spec, but not fully.
Steven Pemberton: XBL vs XBL2, XBL2 uses CSS selectors?
Erik Bruchez: Original XBL is tied to Mozilla.
Steven Pemberton: Is that usable?
Erik Bruchez: CSS isn't as powerful as XPath. It's used as an expression language for binding, but you could equivalently use XPath. We have a minimal mechanism, but you could plug in a full CSS engine. We transform a subset of CSS into XPath.
Steven Pemberton: Sounds like XPath would make it easier.
Erik Bruchez: Writing XBL components is rarer than using them. So you have to write foo|bar, but for everything else (except for UI styling) is XPath instead of CSS, so it's inconsistent. In XForms, every binding is XPath. But XBL uses CSS. Also, CSS is used in XBL template language; it's a poor one, and there's probably a reason. The idea is that the template keeps a connection with the input of the template, and inside foobar, you have content and attributes, and you want some live connections in that shadow tree so maybe that's required, but we find it very limiting. They use CSS there as (an inadequate) accessor for content of the bound element, just as you would use XPath in XSLT. One of the obvious weaknesses is that you cannot select attributes, just conditions on attributes. We had to write our own extensions there. We also support XSLT as a template language where the XBL template language itself is not enough.
Steven Pemberton: That's a really good analysis and when we produce our reply that will be good to say. Above all, an analysis of why XPath works better than CSS would be useful. My feeling is that they used CSS not for technical reasons. Speaking as someone who helped design CSS in the first place, I feel it was wrong to use it for this. Some selectors were left out because of streaming; it would perhaps have been better to leave them in. For DOM access, preceeding-sibling is easy but it's hard in streaming. The owners of the spec really need this analysis to see how people are using it.
Erik Bruchez: People now select stuff in DOM with CSS; there are libraries like jQuery that do that. It's basically XPath in CSS syntax. That's now going native as an API in browsers. I agree that it's a bad language for it, but it seems that the world has decided that it's the API and the expression language, so it's hard for me to make a case that it's a bad idea.
Steven Pemberton: Browsers now have XPath as well; they've now got both.
Nick van: I've been writing custom controls for Orbeon and I have the same things that are problems that Erik says. The extensions are really nice and you have to use them to access attributes, or transform based on input to XSLT.
Leigh Klotz: We're also using XBL with XSLT, and are experimenting with the variable extensions. We have a pipeline step that processes with XBL2 and we use PIs to say which templates are used.

* Rendering of xf:input with integer binding

http://lists.w3.org/Archives/Public/www-forms/2010Oct/0001.html Philip Wagner asks about Mozilla XForms

Steven Pemberton: Philip Wagner says that someone complained. Is there any objection?
Leigh Klotz: Did you tell him to use appearance?
Steven Pemberton: We should agree which value means what. Some already use minimal to say not to look like an input control.
Leigh Klotz: That's trigger.
Steven Pemberton: If we start saying you should do it this way, we should start saying it. You could imagine full would give you a calculator.
Philip Fennell: Surely with compact and full, the buttons would be a range. A compact rnage could be fiddly bits and a full range would be a slider. Would you have to have all three appearances?
Steven Pemberton: Where we don't proscribe anything, you don't have to produce anything.
Leigh Klotz: So you're saying that the behavior sounds like range?
Philip Fennell: It sounds like a compact range form.
Leigh Klotz: It's not clear that the up/down buttons are always a pain.


Leigh Klotz: <input ref="ram"><label>How many bytes of RAM does your computer have?</label></input

Leigh Klotz: It's not clear we offer a way to style them.
Steven Pemberton: Should we say what minimal is?
Leigh Klotz: I'd say we offer advice and ask the implementors to experiment.
Steven Pemberton: Yes, but it doesn't have to be binding.
Leigh Klotz: How about range as Philip says.
Steven Pemberton: How do you specify the range?
Leigh Klotz: If it's an unbounded integer you're unlikely to want up and down arrows. If it's bound -10 to 10 then the range control might decide to show arrows, but if it's -int to +inf it wouldn't.
Steven Pemberton: So binding?
Leigh Klotz: <bind ref="foo" type="xsd:integer"/> and <

Steven Pemberton: OK, if anyone wants to reply, please do so on the list.

* XSLTForms Extensions

http://lists.w3.org/Archives/Public/public-forms/2010Oct/0005.html subforms, rich widgets, etc. Can Alain summarize?

Leigh Klotz: Alain isn't here so I'd like to wait. There's a lot of distributed experimentation going on with XSLTForms.
Philip Fennell: Richer widgets would show how XForms is richer.
Leigh Klotz: Some of this is language experimentation, some is technical details of JavaScript variable names so it plays nicely with other libraries, and some is rich form controls. So I think we need Alain to help us understand.
Steven Pemberton: So we will wait for Alain.

* Distributed Extensibility

http://lists.w3.org/Archives/Public/public-forms/2010Oct/0000.html Larry Masinter proposes Distributed Extensibility in IETF

Leigh Klotz: The conventional wisdom is that not much is happening in W3C with Distributed Extensibility, but it looks like Larry Masinter is doing something in IETF.
Steven Pemberton: I'll check the Plenary Agenda but it's not there. http://www.w3.org/2010/11/TPAC/PlenaryAgenda

* XHTML + XForms Schema Update

http://lists.w3.org/Archives/Public/public-forms/2010Sep/0031.html Needs directory created (2010?) Needs Leigh's updates for RNC schema agreement with errata

Steven Pemberton: It would be good if we could get in there.
Philip Fennell: I've been sidetracked. The last I came across was that NVDL and components there is a problem resolving idrefs in components between model and body. I discovered this in oXygen 12. The oXygen people said that it was a bug before.
Leigh Klotz: There's a similar issue with RelaxNG.
Philip Fennell: There's an option in RNG to turn off IDREF, but not in XML Schema. If we turn that off then we can't validate that binds are meaningful.
Leigh Klotz: Are you able to use Schematron?
Philip Fennell: Yes, I got that suggestion already.
Steven Pemberton: So NVDL doesn't support cross-namespace ID references?
Philip Fennell: It validates each bit of markup as it comes to it. So a repeat with an bind attribute can't see the bind that it refers to.
Steven Pemberton: So it's a bug in how it works.
Philip Fennell: It's a feature, I'm afraid.
Steven Pemberton: I'm happier with a validator missing mistakes than I am with it reporting mistakes that aren't there.
Philip Fennell: I could ask the Jing people to do the same for XML Schema and we could add Schematron to check idrefs.
Leigh Klotz: Some schema processors cannot ignore refs off ids.
Steven Pemberton: So we want an XForms validation service.
Leigh Klotz: I have the RNG one and we could switch to NVDL later when it's better.
Steven Pemberton: So there is a version we could use now and upgrade to NVDL.
Leigh Klotz: The configuration is an issue. I think it uses MIME types.
Steven Pemberton: So what's the minimal thing to do?
Leigh Klotz: Create a directory and unzip the XHTML+XForms RNC zip there.
Steven Pemberton: I'm looking for an online service.
Leigh Klotz: We need a directory for the schema and a document to point to it.
Steven Pemberton: We have a document that's mean to do that, XForms for XHTML.
Steven Pemberton: We have this empty directory: http://www.w3.org/MarkUp/Forms/Schema
Leigh Klotz: http://lists.w3.org/Archives/Public/public-forms/2010Sep/0031.html
Steven Pemberton: I'll fix it.

Action 2010-10-13.1: Steven Pemberton to copy files from http://lists.w3.org/Archives/Public/public-forms/2010Sep/0031.html into a suitable directory.

Leigh Klotz: So we have http://www.w3.org/TR/XForms-for-HTML/
Steven Pemberton: So we make the next version a description of XForms with Schemas.
Leigh Klotz: But it's XHTML.
Steven Pemberton: http://www.w3.org/MarkUp/Forms/2009/charter2010.html
Leigh Klotz: So we can keep the name HTML.
Steven Pemberton: Yes.
Leigh Klotz: So where is the old content?
Steven Pemberton: The dated versions will not go away. http://www.w3.org/TR/2008/WD-XForms-for-HTML-20081219/
Leigh Klotz: I think we'll just say the whole thing changed and not do a diff version.
Steven Pemberton: I think that's perfectly accessible.

* XForms 1.2

Erik Bruchez: There's some level of discussion on most features.

** UI Events

Leigh Klotz: How about http://www.w3.org/MarkUp/Forms/wiki/Improved_UI_Events
Leigh Klotz: It points to http://wiki.orbeon.com/forms/doc/developer-guide/xforms-refresh-events
Steven Pemberton: Erik, can you send mail to the group with the reading list.

Action 2010-10-13.2: Erik Bruchez to send out reading list for xforms refresh for next week.

** JSON

Steven Pemberton: Needs a new owner.
Leigh Klotz: Alain has implemented it.
Steven Pemberton: I'll update the page.

Action 2010-10-13.3: Steven Pemberton to update http://www.w3.org/MarkUp/Forms/wiki/Json with current state

** Eval

http://www.w3.org/MarkUp/Forms/wiki/Eval_function

Erik Bruchez: It evalutes an XPath expression not known statically at compile time.
Nick van: I think so.
Steven Pemberton: Looks like John created this one.

* IRC Log

http://www.w3.org/2010/10/13-forms-minutes.html

* Meeting Ends