Forms Working Group Teleconference

06 Feb 2008


See also: IRC log


Nick, Keith, John_B, Mark_B, Steven, Uli, Charlie, Leigh, jturner
Mark, Steven, wellsk




<trackbot-ng> Date: 06 February 2008

<Steven> Scribe: Mark

Agenda Review

<Steven> scribenick: markbirbeck

John: Agenda will mainly be circling back to 1.2 features.

<Steven> Meeting: Forms WG FtF Raleigh, NC, USA, Day 3

Charlie wanted to briefly discuss Erick's post about the name RIA.

Suggested that he was right, and that we should avoid references to "rich internet applications".

Some agreement.

<John_Boyer> http://www.w3.org/MarkUp/Forms/specs/XForms1.1/index-diff.html

John: Last night worked on the spec.

<John_Boyer> http://www.w3.org/MarkUp/Forms/specs/XForms1.1/index-diff.html#structure-bind-element

John: Made some changes to the bind element to capture some of Aaron's comments.

Custom Functions

John: Mainly clarified that the default nodeset is obtained from the default evaluation context. This was needed since @nodeset is optional on xf:bind.

<John_Boyer> http://www.w3.org/MarkUp/Forms/wiki/Custom_XPath_functions

John: Also looked at the custom XPath function requirement. May not yet be right, but looks promising.
... Examples are followed by some notes and questions that came up whilst looking at the issues.

Mark: Point out in passing that this is why I argue that the feature-set of XBL can more easily be done in an XHTML container.
... I.e., the <function> element can define methods that could be called within the XHTML document, but it could also express a method that is a public interface for a widget.

John: Started playing the idea of having internal or temporary instances, but it gets awkward when you start trying to return nodesets to the caller.
... but the idea of variables seems to capture this better, and is interesting that this seems to converge with some of yesterday's discussions about simplification.

Leigh: What causes the actions in the function to run?

John: It's just like normal, in that xf:actions don't 'run' until an event is dispatched to it.
... In these examples the actions run when the function is invoked.
... Also considered putting the implementation into a specific element.

Mark: Pointed out that there is a handler spec in XHTML-world that does a lot of this. Should look at trying to merge the two.

John: Variables are a bit like actions.

<klotz> is there a link for the XML Handlers document?

Mark: Should have a flag that indicates whether the function's operation requires a rebuild.

John: At the moment everything is ring-fenced, so can't modify the wider data.
... Open questions like should we set the return type? Should <return> be in only one place, or be allowed to appear anywhere?

<Steven> Leigh, http://www.w3.org/TR/xml-events/#s_handler_module_elements

<klotz> OK, so it finally made it into XML Events 2.

<Steven> yes

<nick> http://www.w3.org/TR/xslt20/#element-function

<Steven> Mark: Well you can imitate a function in XForms using an instance and events

<Steven> ... so we just need to package that as a function call as syntactic sugar

<klotz> yes, but i can see now xsl:function doesn't allow actions or script, just a value-of.

John: Recursion may not necessarily be a problem, but modifying data may be an issue.
... XPath functions are not meant to modify the data that they are running against.

<klotz> xslt2.0 functions are recursive

<klotz> http://www.ibm.com/developerworks/xml/library/x-xdxslt20.html#code4 factorial

Mark: Should consider either copying the model of the xsl:function definition, or extending the handler module.
... What a pity that there is no module we can import.

Nick and John discuss some of the details of the XLST 2.0 definition, such as override, return types, etc.

John: How do values get returned? Surely we can't do the same as the XSLT technique?

Mark: We could (i.e., accumulate nodes for returning as the function is executed) but it may not be the best way to do things for our audience.

Nick: Need to be able to us xf:insert and xf:delete whilst constructing the result set.

<John_Boyer> <insert name="somenodesetvar" origin="$p"/>

<John_Boyer> <insert name="somenodesetvar" origin="$p[some condition]"/>

Mark: But you need to be able to manipulate the variable itself.
... For example, <insert nodeset="$people[3]" origin="$p[some condition]' />

<John_Boyer> <variable name="people3" as="nodeset" value="$people[3]"/>

Mark: No. :)
... In XPath 2.0 you can create nodesets on the fly.
... I'll type a rough approximation for Nick to correct. :)
... <variable name="people" value="{ 'a', 'b', 'c' }" />

John: But this limitation is right, since you shouldn't be allowed to modify the passed in data.

Mark and Nick: But you need to be able to return values that are not just numbers (as in the examples_.

Mark: There is no distinction from an XPath point of view between some simple type like a number, and a node or even a nodeset.

<John_Boyer> <function name="foo" as="nodeset">

<John_Boyer> <param name="p" as="nodeset"/>

<John_Boyer> <param name="q" as="nodeset"/>

<John_Boyer> <variable name="r" as="nodeset"/>

Nick: The new insert action allows us to do everything we would need to do to manipulate this nodeset.

<John_Boyer> <insert name="r" origin="$p[somecondition]"/>

<John_Boyer> <insert nodeset="$r[somecondition]" origin="$q[some condition]"/>

<John_Boyer> <insert name="r" at="4" position="before" origin="$q[some condition]"/>

Also <xf:setvalue ref="$r[3]/@long" value="convertGeo($o[3]/@long, 1)" />

John: Need to decide whether we allow anything within functions, or make it limited.

Mark: Not quite saying that authors should be allowed to do anything, just saying that authors should be allowed to manipulate the variables.

John: Realise the disconnect is that you are talking about manipulating the nodeset object as a tree, not just a flat list of values.

Mark: These problems have been solved by XPath 2.0 and XSLT 2.0, such as recursion, etc. So we're not inventing anything.
... Creating XPath functions is an establishing thing, all we're looking for is how to do it in our language.

John: But XSLT 2.0 _is_ different in that they have an input tree and an output one.

Mark: But that doesn't affect what an XPath function has to do; they just use XSLT 'concepts' to create an XPath function, and we would use XForms concepts to do the same. But either way you return a nodeset.

<klotz> i cant' hear anybody; is this a break?

<klotz> ok thanks;

<John_Boyer> <setvalue ref="foo(nodes)" value="5"/>

<John_Boyer> foo picks a node from the set of nodes and returns it

Mark: This is good stuff, but it doesn't address the low-hanging fruit of existing JavaScript functions that can be used in many processors.
... e.g.,:
... <html xmlns:inline="some formsPlayer namespace">
... <script type="...">
... function geocode(long, lat) {
... return x;
... }
... </script>

<Steven> jturner, hi

<jturner> hi

<Steven> forgotten anything?

<jturner> yup ;)

<John_Boyer> missing U in Raleigh :-)

Mark: <xf:setvalue ref="a/result" value="inline:geocode(../@long, ../@lat)" />

<Steven> Welcome to day3 of the FtF

<jturner> sorry

<John_Boyer> <function name="geocode">

<John_Boyer> ...

<xf:model functions="geo:code">

<jturner> bad line

<jturner> try again

<John_Boyer> xforms NS URI#functions

<John_Boyer> xforms NS URI#script-functions

Mark: The same mechanism would be used to reference a function defined in the new 'full' way that John is proposing, should that function not have a namespace prefix.
... e.g., <function name="sumproduct" as="number">
... </function>
... <output context="/purchaseOrder/items" value="local:sumproduct(item/price, item/quantity)"/>

<John_Boyer> xmlns:local="&xformsNS;#local-functions"

Proposal to add a new namespace that will identify local/user-defined functions in a document, regardless of whether they are defined using script (as Orbeon, formsPlayer and we think, PicoForms allows) or the new function element.

<John_Boyer> http://www.w3.org/2002/xforms

Proposal to set the namespace to "http://www.w3.org/2002/xforms/inline-functions#".

<klotz> dont' we have to ask for namespaces?

<inserted> /www.w3.org/MarkUp/Forms/wiki/Custom_XPath_functions/Topic: Custom Functions

Sorry...I meant 'to set the namespace to "http://www.w3.org/2002/xforms/local-functions#"'.

Nick: Why have the hash at the end?

Mark: Helps in RDF-world.

<Steven> rsagent, make minutes

<klotz> for string composition to express qnames

To make URIs, Leigh. :)

Leigh: Don't we need to ask for a namespace?

Steven: Not sure that we do, since we are extending into our own space.
... (Into our own 'URI space').

<Steven> I'm asking in the W3C channel

<Steven> tho' IanJ is not there, so I may not get an answer

Mark: Don't want to say "trust me guys", but this is best practice.

<shepazu> be there shortly

<Steven> k

John: Why don't we use # before 'local-functions'?

Leigh: You need to concatenate two things.

Mark: Think of an example...e.g., local:myfunc.
... what does that represent?
... We're defining something that does at the beginning.
... Best practice is to create a 'good' URI.
... This would generate:
...http: //www.w3.org/2002/xforms#local-functionsmyfunc

<klotz> # is better than / for a purely pragmatic reason that it's easier to see and people are less likely to accidentally leave it off.
...http: Not nice....
... Point is to create an RDF-friendly identifier. People may never use it, but that doesn't matter.
... So http://www.w3.org/2002/xforms/local-functions#myfunc
... or http://www.w3.org/2002/xforms/local-functions/myfunc
... is preferable.
... would propose using hash, and also that we use the singular.

<Steven> I have received a message that it is OK to extend our NS URI without having to ask for permission

<klotz> thanks Steven

Proposal: to use the namespace "http://www.w3.org/2002/xforms/local-function#" to identify author-defined functions.

RESOLUTION: To use the namespace "http://www.w3.org/2002/xforms/local-function#" to identify author-defined functions in a document, wether they are defined inline with script or using the proposed function element.

<Steven> Link to train we saw day before yesterday

<Steven> http://en.wikipedia.org/wiki/Circus_train

The topic of the break?


(And circuses...but mainly trains.)

<jturner> seems it doesn't make sense to listen to a train break - talk to you next time

<Charlie> http://www.w3.org/MarkUp/Forms/wiki/Make_model_optional

Optional Model

Discussed ending at 4pm.

<Charlie> http://www.w3.org/MarkUp/Forms/wiki/Make_model_optional

(For Leigh's benefit...we're ending two hours earlier than planned.)

<Steven> one hour I think

Charlie: Two examples: A simple form that uses form as an abbreviation for model+instance+submission, and one that gradually adds a few more things to this.

Uli: Is this the same as the HTML form element, or something different?

Nick: Lazy authoring already gives us a lot of what this example shows.

Charlie: How could it be the HTML forms element?

<John_Boyer> I had thought better use of default namespace to XForms would allow no namespace qualification of the elements in the form.

Mark: Because this came originally from our discussions in Venice, about making HTML elements into a shorthand for XForms constructs.

<John_Boyer> I also thought we would use the name attribute rather than ref

<John_Boyer> What about <form xmlns="&xformsNS;" action="...">

<John_Boyer> <input name="field1" ...

<John_Boyer> <input name="field2"...

<John_Boyer> or <input name="field2 calculate="$field1 + 50"

Nick: Isn't form just another grouping element?

John: But this is about reusing the elements.

Nick: Why do we add an element with the name 'form', just because it exists in HTML?

John: But we are the form working group.

Mark: But it makes it easier for people to move from HTML.

<John_Boyer> time for lunch...

<klotz> dialing

<klotz> nobody. only snatches. It seems like it's cutting out and ony turning on when it hears enough audio. if everybody laughs i hear that. i hear about 20% of charlie.

<klotz> ok if you want to talk to me please shout and i will look at the IRC.

<John_Boyer> ok, will do...

<klotz> ebruchez the audio problem is back and they can't fix it.

<ebruchez> ouch

<ebruchez> annoying

<klotz> i answered one of your customers about select/copy.

<klotz> it seems to default to us on the phone talking and you listening, and only when the volume on your side gets high enough does it switch over and we get to hear you; it's half-duplex, and the default seems to be wrong.

<klotz> i don't think that's it. there's no noise, just utter silence, but when several of you talk at once, everything comes through clearly.

<Steven> Well, there's a constant background noise from the fans, so that may define the background cutoff point for the noise elimination filter, and so drowns us out, and gets replaced with silence

<John_Boyer> ACTION: John to send his XML events commentary to public-webapi@w3.org with subject DOM 3 events [recorded in http://www.w3.org/2008/02/06-forms-minutes.html#action01]

<trackbot-ng> Sorry, amibiguous username (more than one match) - John

<trackbot-ng> Try using a different identifier, such as family name or username (eg. jkugelma, jboyer)

<John_Boyer> scribe: Steven



Optional model (continued)

John: I dunno
... I agree with Mark
... a strong emphasis is to make it much easier for people who have developed HTML skills to relate to our markup
... and to map how they spell things now to XForms MVC constructs

Charlie: I wasn't exactly doing that
... though I agree they need to be pulled together

John: That's ease of authoring pattern
... but you wanted optional model in isolation

Mark: I would merge the two
... we need to decide if we need to adopt this philosophical approach
... making the markups look spookily similar

Nick: If we want to do that then we should consider it as a dialect as XForms
... some of it makes it more complicated not less

Mark: If we get it right, it needn't be

Charlie: We have three starting pointds; HTML author, XForms author, but also the one who wants to go backwards from the glass

Mark: If you try to make HTML into XForms
... and gradually add more and more stuff
... such as making model optional
... then <div></div> is a valid XForms
... and you have to define what it means to leave out the instance

John: What if I just add an input?

Nick: Then it creates an implicit model
... an implicit instance
... implicit binds and just works

Mark: It is conceptually an XForms doc, it uses the XForms architecture

Steven: What W3C needs, and we've been saying this since 1999 is something like CSS that layers the meaning
... then we define the XForms semantics and layer it onto XForms markup, Yahoo's blueprint markup, onto HTML and so on

[argument about whether <input name="" is a binding]

John: web developers don't like having to write xf:input and ref=""

Mark: Nick, it is because you come from the XSLT world that you think that the exact spelling of features is not important

Nick: Well, don't we need valid XML anymore?

John: It's to take to the Forms TF, to find common ground

Mark: We have to define what <input name= means in XForms parlance, in order to allow incremental additions like output

Nick: Now I have to explain to people that they can use name or ref

Mark: No
... we just claim that <input name= is in our architecture, but XForms people don't have to use it

Nick: I think it adds confusion

Mark: People need to just learn the most appropriate parts of the language for them

Uli: Doesn

't this mean that an XForms processor has to process any HTML form?

Mark: It could do

Uli: and mixed up with HTML markup?

Mark: Why not?
... HTML5 has added an output element
... If we had the document itself as data model, like we discussed yesterday
... then you could have a hint with data from the alt attribute of an img

John: If you have no model, then what else could you use for your data?

Mark: Exactly

Nick: I don't disagree that it would be a good idea to have the HTML dialect of XForms, but it is just a dialect.

John: I think that people struggle with the attribute being called something different

Steven: I disagree
... I think that the problem is with namespaces; people aren't stupid enough that they can't deal with using ref, and understanding that it represents more than just a name
... but if their first attempt doesn't work because they got the namespace wrong
... that's where it goes wrong

Nick: I think we need to keep the core language simple

Mark: I agree, picoforms won't be interested in this stuff

Nick: it is important that the same syntax should produce the same results

Mark: As STeven said, what we are really talking about is the XForms architecture
... not particular markup
... so getting the concepts right is more important than the concrete syntax

Mark; So does <form> generate more content, or does it map to stuff we already have

scribe: then svg could add an input to SVG without using <xf:input>

Steven: So what we are doing is rejecting namespaces as the mechanism for combining archtectures, and what we have to do is start a new WG to develop Architectural Style Sheets


Charlie: Well, that's XBL

Steven: Not sure, XBL is a bit too concrete

Mark: [Something about events and lifecycle that the scribe missed]

Charlie: I wonder if we can abstract events out, so that people could use another event mechanism

Mark: Events are really like a method interface
... but to get these things working together, you need one thing that is concrete
... that you can be certain that you can talk to other things through that interface

Charlie: You lose the Ajax people if you say that

Mark: Dojo has 4 different event mechanisms, DOM2 is one of those
... but IE doesn't support DOM2 events natively, the rest do
... so on IE you have to script it
... but you still need the event object

Charlie: You can do everything just using target phase
... which is what SMIL does

Mark: You can do that with hint as well
... you listen to the mouseover directly
... rather than converting to the hover event

<markbirbeck> http://www.w3.org/2004/04/webapps-cdf-ws/papers/webapps-workshop-standards-based-vm.pdf

Charlie: So how do we do this architectural thing?

mark: See my paper from 2004


Nested Models

<Charlie> http://www.w3.org/MarkUp/Forms/wiki/Example_markup_for_nested_models

Charlie: My airline seems to be prefilling data on some forms to make life easier on a mobile device
... so this markup shows a similar interface

Steven: What is the advantage of nesting rather than having siblings?

Charlie: Context
... it solves a number of the cross model referncing problems

John: But you could do <model src="" to achieve the same effect

Charlie: I tried to avoid things like that

[for reasons that the scribe missed]

John: The UI is not allowed to talk to the inner model, which is interesting

Charlie: Nor the inner submissions

Mark: Why do you want to hide them?

Charlie: Black boxes

Mark: Then leave the id off
... it makes implementing the hiding easier
... But it is a good model
... it gives a public face without having to know the instance structure
... If you want to make an importable model, then you would have to avoid id's to avoid clashes

table label

<ebruchez> (following the IRC logs, but going to lunch now)

John: So can the UI get to the inner model or not?

Charlie: I thought of it as a blackbox, and so thought that was useful
... but I understand there may be more usecases, so maybe we should allow it
... I like the idea of keeping it simple

Mark: WIth your idea of showing the list of places you can get to from Dallas would require access to the inner model

Charlie: That would be a sibling instance

[meeting breaks into small group discussions]

<unl> Uli: I'd like to question model nesting generally. Encapsulation can be achieved in other, better understood ways (inheritance).

Mark: @ref on everything

John: How does it know to use that value?

Mark: Well, all elements should conceptually have a ::value which is afected by events that cause it to update

John: Are you interested in co-writing the message module?

Mark: Yes

John: I would like to participate

Mark: We should do it wiki style

Steven: I have long thought about a wiki that produces W3C specs

Many: Yes!

<unl> Or we have an XForms app for writing specs

<wellsk> Scribe: wellsk

John: looking for volunteers for modules

Charlie: excited about Generalizing Constraints beyond the UI

<John_Boyer> http://www.w3.org/MarkUp/Forms/wiki/XForms_Future_Features

John: Organized modules last night
... parallel efforts in module work

Nick: ease-of-authoring, and later do some

John: Nick has some for formal 1.2

Nick: easy to attach on wiki

John: mentions email about child elements of bind
... wiki is good for placeholder and prioritizing
... data properties and instance modules could lead to submission module
... Steve, move himself off message module and Stevenn to work with Mark
... asking Steven to take on label module
... is label module big enough to care about? Is it worthwhile doing one?

Steven: mostly harmless, if need it they can use it

John: question to Doug - does svg have way to attach labels.

Doug: no, talking about best practices for labels

<klotz> i only found out recently that CSS2.1 removed caption-side left and right, which is how we were going to style labels in CSS

Doug: talking about associating text with graphic
... establish semantic relationship between

John: use bind to do that

Doug: or RDF Rdf-like for relationship
... show me this block, this hint, showing on graph is ueseful

John: press F1 what happens..

Doug: block of things with title, refer to group as block of things

John: anybody interested in instance data module

Uli: raises hand -- is volunteering

Nick: having modules for 2.0?

John: Uli/Charlie violunteering for data properties module?

Charlie: no

Uli: yes

John: model/validation/actions -- leave untasked for now?
... half hour left
... look at other 1.2 possible features? Perhaps review them now
... some may go away, some pertinent some not
... 1.2 Possible area


John: query: "Specific actions instead of general insert" moved to possible features after ...
... what are ways people are using things together?
... higher level markup
... for 1.2, more latitude for different markup other than simplified actions
... Specific actions instead of general insert moved out of the way
... next is "Value attribute on send action "

Nick: attributes for submission to override ones in submission?

John: to vary the submission
... send and as child, conflicts

Nick: place where we refer dynamically to ids?

John: toggle and <scribe missed rest>

Uli: want more dynamic use dispatch

John: delete "Value attribute on send action "; goes away
... " Need ability to conditionally cancel events "
... does this go away too
... XML Events 2 solves this
... place this for 2.0 and solve by bringing in XML Events 2

Nick: in theory, you can refer to XE 2

John: XForms 2.0 where we do upgrades
... on "Better DOM interface to expose all actions "

Nick: depends on how far we get to modularization, interested in pursuing

John: Nick and Uli volunteer

<John_Boyer> ACTION: Charlie, Uli and John to write instance module [recorded in http://www.w3.org/2008/02/06-forms-minutes.html#action02]

<trackbot-ng> Sorry, couldn't find user - Charlie,

<scribe> ACTION: Mark Birbeck and Steven to work on Modularization: Message Module [recorded in http://www.w3.org/2008/02/06-forms-minutes.html#action03]

<trackbot-ng> Sorry, amibiguous username (more than one match) - Mark

<trackbot-ng> Try using a different identifier, such as family name or username (eg. mseaborn, mbirbeck)

<John_Boyer> ACTION: Uli and John to write data properties module [recorded in http://www.w3.org/2008/02/06-forms-minutes.html#action04]

<trackbot-ng> Sorry, couldn't find user - Uli

<scribe> ACTION: Uli and Nick on "Better DOM interface to expose all actions " [recorded in http://www.w3.org/2008/02/06-forms-minutes.html#action05]

<trackbot-ng> Sorry, couldn't find user - Uli

John: on "Recoverable link error on instance src "
... make link exception cancelable?
... or make an exception or error

Nick: what about canceling exception

John: editorial changes, find exceptions, then add words to effect of "the default processing is to halt processing"

Steven: if you want to do this, do a submission instead of a src?

John: if instance is empty, lazy authoring takes over and creates instance anyways

John+Nick: achieved thru different means

John: do we really need this?

Nick: inconsistent behavior with new lazy authoring

John: Nick's arguments win -- let's shoot this one

Leigh: remain interested, not there yet for concrete proposal for WAF WG

close to adjournment

call next week

trackbot-ng, end meeting

Summary of Action Items

[NEW] ACTION: Charlie, Uli and John to write instance module [recorded in http://www.w3.org/2008/02/06-forms-minutes.html#action02]
[NEW] ACTION: John to send his XML events commentary to public-webapi@w3.org with subject DOM 3 events [recorded in http://www.w3.org/2008/02/06-forms-minutes.html#action01]
[NEW] ACTION: Mark Birbeck and Steven to work on Modularization: Message Module [recorded in http://www.w3.org/2008/02/06-forms-minutes.html#action03]
[NEW] ACTION: Uli and John to write data properties module [recorded in http://www.w3.org/2008/02/06-forms-minutes.html#action04]
[NEW] ACTION: Uli and Nick on "Better DOM interface to expose all actions " [recorded in http://www.w3.org/2008/02/06-forms-minutes.html#action05]
[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.133 (CVS log)
$Date: 2008/02/06 22:06:24 $

Scribe.perl diagnostic output

[Delete this section before finalizing the minutes.]
This is scribe.perl Revision: 1.133  of Date: 2008/01/18 18:48:51  
Check for newer version at http://dev.w3.org/cvsweb/~checkout~/2002/scribe/

Guessing input format: RRSAgent_Text_Format (score 1.00)

Succeeded: i/Agenda: /Topic: Agenda Review
Succeeded: i/http://www.w3.org/MarkUp/Forms/wiki/Custom_XPath_functions/Topic: Custom Functions
Succeeded: s/make qnames/express qnames/
Succeeded: i/...Mainly clarified/Topic: Custom Functions
Succeeded: s/Resolution: To use/RESOLUTION: To use/
Succeeded: s/function element../function element./
Succeeded: s/dam/day/
Succeeded: s/nad/and/
Succeeded: s/abotu/about/
Succeeded: s/eough/enough/
Succeeded: s/nant/ant/
Succeeded: s/\S/S/
Succeeded: s/to /too /
Succeeded: s/style/cycle/
Succeeded: s/modle/model/
Succeeded: s/Steve/Steven/
Succeeded: s/john:/John:/
Succeeded: s/valiudation/validation/
Found Scribe: Mark
Found ScribeNick: markbirbeck
Found Scribe: Steven
Inferring ScribeNick: Steven
Found Scribe: wellsk
Inferring ScribeNick: wellsk
Scribes: Mark, Steven, wellsk
ScribeNicks: markbirbeck, Steven, wellsk

WARNING: Replacing list of attendees.
Old list: klotz Forms martinJ +0049308322aaaa jturner
New list: Forms Leigh_Klotz

Default Present: Forms, Leigh_Klotz
Present: Nick Keith John_B Mark_B Steven Uli Charlie Leigh jturner
Agenda: http://www.w3.org/MarkUp/Forms/wiki/Agenda_Feb._6%2C_2008
Found Date: 06 Feb 2008
Guessing minutes URL: http://www.w3.org/2008/02/06-forms-minutes.html
People with action items: birbeck charlie john mark steven uli

[End of scribe.perl diagnostic output]