Weekly Forms WG Teleconference

28 Jul 2010

See also: IRC log




<pfennell> I'll most likely be muted for much of the call as I'm in the office.

<scribe> scribe: klotz

<scribe> scribenick: klotz

klotz: There does not appear to be a quorum.

readonly and relevant

phillip: You might want to style repeat contents based on the instance data.
... you can have relevance, but if you wanted a style based on instance data, it's not easy to do that in xforms. would avt allow that? or user-defined state?

Nick: AVT isn't in the wiki, but we talked about it.

phillip: doesn't orbeon support it?

Nick: yes, and it's really useful with the host language, almost all the time.

phillip: it solves the styling issue easily.

alain: in orbeon avt works except in xforms elements. in xsltforms it's a problem because xforms elements are compiled for us, and they have to be bound to ids. avt is not so difficult but not possible for xforms elements.

nick: i'm not sure how they implement it but they convert the avt to an attribute in the pre-process step and the attribute is processed on the way. the {} go away early in the process. they create binding elements.
... xforms attributes like xsl attributes.

phillip: interesting way of looking at it.

nick: for the host language, the avt is handy beacuse it's short. often I use a class attribute with static values and the dynamic one.

alain: they might be more than just one avt per attribute; it's more complex to interpret.

nick: otherwise with xsl attributes you have to use concat all the time and it's more complex to type.

alain: or you have to simulate it.

leigh: should we start an avt page?

nick: i acn't find the custom mip page either.

alain: just for output elements it's better. child elements in xforms 1.1 (resource, etc) are evaluated at runtime. it's not an avt on xforms attributes.

nick: that's historical; john resisted avts late in the xforms 1.1 spec and didn't want to open a can of worms.

alain: I am also working on svg with xsltforms. avt would be useful. i'm using xslt components and widgets. xslt has avts already.

leigh: but those aren't dynamic

phillip: it's not so much in the xforms but in the xhtml that I would like to use avts; a table

nick: i use it for odd-event clas

leigh: here is the mip feature: http://www.w3.org/MarkUp/Forms/wiki/User-defined_model_item_properties
... here is the avt page: http://www.w3.org/MarkUp/Forms/wiki/AVTs
... have you looked at orbeon's avts, alain?

alain: I have seen avt everywhere, mainly in xforms elements.

leigh: here's orbeon's list of xforms future features http://wiki.orbeon.com/forms/projects/xforms-future-features

<nick> http://wiki.orbeon.com/forms/doc/developer-guide/xforms-attribute-value-templates

leigh: thanks nick.
... I think we should consider AVT on xforms elements, avt on host language elements, adn avt on host attributes on xforms elements (such as @class) as separate cases.
... Phillip, would you like to add your comments to those wiki pages?

<scribe> ACTION: pfennell to add comments to wiki pages about AVT and custom MIPs [recorded in http://www.w3.org/2010/07/28-forms-minutes.html#action01]

<trackbot> Created ACTION-625 - Add comments to wiki pages about AVT and custom MIPs [on Philip Fennell - due 2010-08-04].

Balisage Report on Compatibility

alain: Has anyone seen this report from Andrew Spyker: http://twitter.com/aspyker
... He's going to post a demo in XSLTForms and Ubiquity XForms
... avt would be nice to have to be portable otherwise it's a problem

XPath 2.0

Nick: I'm still working on XPath 2.0.

Leigh: What about serialize?

Nick: XPath 2.1 has serialize and parse and I was worried about adding them to xforms, but we decided to add functions only to the xforms namespace. for xpath 1.0 as well. so it's not a big deal.

About XSLTForms

Leigh: Alain, which implementation are you taking forward?

alain: The native version because it is faster.

XPath 2.0 Execution scope


Leigh: Doesn't the document() call also have this same issue?

Nick: Yes, I realized that XPath 2.0 has a formal definition of execution scope and that functions are stable in that scope. The user of that engine can define the scope.
... For XQuery it's the top query I think. We have that problem with now(). I couldn't find anywhere where we defined that it is updated. There is a note in calculation that says it returns the same result or else it can loop.

Leigh: That implies that the recalculate action is the scope.

Nick: I'm not sure if people implement that. Is it one expression or the complete recalculate?

Leigh: I assume John meant the whole recalculate since there are node dependencies and that could loop.

Nick: I stated possible candidates. Form lifetime is too big. Leigh gave the Kiosk counterexample. Rebuild means that the author has to explicitly do it. Maybe it can be refresh. Refresh is close to calculation.

Leigh: Why refresh rather than recalculate?

Nick: The event order. If you do it in recalculate default action, there are some controls using the old values and some the new values. So there's a possible problem that during one refresh you could have two values of the now() function. I'll look at the spec again.

Alain: What about variables?

Nick: For variables, I'm not sure what Orbeon does, but I think they are like binds. They have dependencies and know when the values are re-evaluated on refresh.

Alain: The now() function wouldn't be called twice if stored in a variable.

Nick: I'm not sure how they do that now.

Alain: Erik told me that it was for repeating complex expressions, just like variables in other languages, or XSLT; the same.

Nick: They have an option for dependency edition for the UI and variables, and they recalculate if something changed but I'm not sure for the now() function. The free and paid versions are different in this feature.

Leigh: Should we ask John about refresh vs recalculate?

Nick: Do we want to formalize it further, for now()?

Leigh: I think we must define execution scope for XPath 2.0, and that will define it for document() as well.

Nick: Should we retrofit it to now() in XForms 1.1?

Leigh: Let's see what the answer for XPath 2.0 is first.

Phillip: I don't have any comments.

Alain: I don't know yet.

Nick: How does your implementation do it now? Does now() always return the exact?

Alain: Just as in javascript.

Nick: So if you put it in a calculate you can go into a loop because it keeps updating?

Alain: That's why I was thinking about variables.

Phillip: I would expect now() to be now, because if you're editing a document you don't want the submit time to be xforms-ready.

Leigh: Yes, that's the kiosk problem. We need to decide between refresh and recalculate, I think.

Nick: If you put now() in a calculate does it trigger a calculation, Alain?

Alain: Yes, it doesn't trigger.

Nick: So it's already close to refresh or even rebuild?

Alain: Yes, I think so.

Leigh: We should bring this up again with John.

Alain: I was thinking about expath functions to be added.
... No link, but Steven asked. In expath or in saxon.


Alain: There are functions in expath also in XForms namespace: random, min, max. So it's a problem.

Nick: They are different. random returns a sequence. min and max return NaN but in expath they throw an exception. So there are differences. So it's good they are in a different namespace.

Alain: Programmers want the functions.

Nick: You can support both, by namespace. They wouldn't ...

Leigh: Alain, are you concerned about name conflicts?

Alain: No, about portability.

Leigh: Should we require XForms implementations to provide the expath functions, or do we just allow it?

Nick: You can already do it, by using the model/@functions declaration. It's too many functions to implement for some implementors.

Alain: There should be recommendations about which libraries to support.

Leigh: Is expath.org the wrong site?

<nick> http://www.exslt.org/

<nick> http://www.exslt.org/math/index.html

Leigh: OK, yes, I know about them.
... A few years ago exforms.org was done by PicoForms, but I hope that we publish that type of work as modules for XForms 1.2.
... Does that answer your question?

Alain: That's OK.

W3C Release of Unicorn Validator?

<nick> http://validator.w3.org/unicorn/

Leigh: We to complete our XHTML+XForms schema for that to work.
... XHTML+XForms, not XSLT+XForms

Philip: Oxygen has holes in its NVDL.

Leigh: We could use your help with NVDL integration.

Nick: Oxygen has XForms 1.0. It would be good to go through with a fine-tooth comb and give it back to them.

Leigh: I'll send links to the list for the xhtml+XForms integration.
... Getting that into oXygen would be nice.

<nick> http://www.w3.org/News/2010.html#entry-8862

<scribe> ACTION: Leigh Klotz to look at http://www.w3.org/News/2010.html#entry-8862 [recorded in http://www.w3.org/2010/07/28-forms-minutes.html#action02]

<trackbot> Created ACTION-626 - Klotz to look at http://www.w3.org/News/2010.html#entry-8862 [on Leigh Klotz, Jr. - due 2010-08-04].

* No Meeting Next Week

Summary of Action Items

[NEW] ACTION: Leigh Klotz to look at http://www.w3.org/News/2010.html#entry-8862 [recorded in http://www.w3.org/2010/07/28-forms-minutes.html#action02]
[NEW] ACTION: pfennell to add comments to wiki pages about AVT and custom MIPs [recorded in http://www.w3.org/2010/07/28-forms-minutes.html#action01]
[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.135 (CVS log)
$Date: 2010/07/28 16:00:31 $

Scribe.perl diagnostic output

[Delete this section before finalizing the minutes.]
This is scribe.perl Revision: 1.135  of Date: 2009/03/02 03:52:20  
Check for newer version at http://dev.w3.org/cvsweb/~checkout~/2002/scribe/

Guessing input format: RRSAgent_Text_Format (score 1.00)

Succeeded: s/leigh: here is the mip feature: Re: [time-nuts]//
Succeeded: s/* Balisage Report on Compatibility/Topic: Balisage Report on Compatibility/
Succeeded: s/scopy/scope/
Found Scribe: klotz
Inferring ScribeNick: klotz
Found ScribeNick: klotz

WARNING: No "Present: ... " found!
Possibly Present: Alain Leigh_Klotz Nick Nick_van_den_Bleeken P14 P6 Philip aaaa forms joined klotz leigh pfennell phillip scribenick trackbot wiecha
You can indicate people for the Present list like this:
        <dbooth> Present: dbooth jonathan mary
        <dbooth> Present+ amy

WARNING: No meeting chair found!
You should specify the meeting chair like this:
<dbooth> Chair: dbooth

Got date from IRC log name: 28 Jul 2010
Guessing minutes URL: http://www.w3.org/2010/07/28-forms-minutes.html
People with action items: klotz leigh pfennell

WARNING: Input appears to use implicit continuation lines.
You may need the "-implicitContinuations" option.

[End of scribe.perl diagnostic output]