Erik Bruchez, Orbeon
John Boyer, IBM
Leigh Klotz, Xerox (minutes)
Mark Birbeck, Web Backplane [irc]
Nick van den Bleeken, Inventive Designers
Steven Pemberton, CWI/W3C (chair)
Steven Pemberton: W3M has to meet
before the rechartering gets approved.
Leigh Klotz: Julie Craig from Xerox
has been nominated; have you seen the mail?
John Boyer: I saw it. Is she an
alternate from Xerox?
Leigh Klotz: Yes.
Steven Pemberton: I didn't see the
mail. I'll check it out.
Nick van: It's not yet updated for the F2F results.
Steven Pemberton: Did we come to a
resolution on this yet?
Erik Bruchez: I don't think we
did.
John Boyer: I think we're pretty
close. There's a difference between locally-namespaced attributes
and globally-namespaced attributes. That's the sticking
point.
Steven Pemberton: I think you, John,
were the supporter of that point. As I see it, we're saying that
it's the elements that decide what to do with the nodeset.
Currently, with @bind, you get a nodeset, and the element decides
what to do with it. We will call it @ref but it will be the same as
@nodeset.
Leigh Klotz: By element, you mean form
control?
John Boyer: Form control or
action.
Erik Bruchez: I thought the actions
were separate. They have a different notion of @ref and
@nodeset.
Steven Pemberton: Do we have actions
with nodesets?
John Boyer: Yes, insert and
delete.
Erik Bruchez: And setvalue takes
@bind.
John Boyer: And insert and delete.
It's the same thing: the element decides, without the additional
MIPs and UI events issues.
Erik Bruchez: Leigh posted a 2002
reference to the original discussion. I briefly reviewed it just to
make sure there were no arguments we hadn't considered. I didn't
really find any. What was interesting is that the decision was
based on a poll. There was one proposal to use @select everywhere.
It seemed that the decision wasn't in complete agreement, and
having a single attribute was good.
Steven Pemberton: I believe Roland
Merrick wanted to use one, and Raman who was the most against
it.
Leigh Klotz: We started with @ref and
increased it.
Steven Pemberton: I didn't rememeber
that.
Leigh Klotz: We then had a proposal
for ref, nodeset, and nodes. We cut it back to to.
John Boyer: The introduction of @bind
made it unclear. The problem is not with our elements, but with
attributes in our namespace. If other namespace elements provide
meaning they're not our attributes any more.
Steven Pemberton: I am not sure I
agree. I think the control knows what it wants with ref, nodeset,
or bind. It's the same argument; the element has to know what it's
going to do with it and might as well use a nodeset and let the
control decide.
Erik Bruchez: The control can decide
with its attributes, but for implementation and tests, we'd decide
xforms:ref and an XForms processor absent the services of a
host-language processor would have to implement something to be
tested.
Leigh Klotz: Then how is XLink ever
going to get out of draft then?
Steven Pemberton: I'm not sure I
understand. We don't have to define xforms:ref.
Leigh Klotz: I don't think we define
it.
John Boyer: This is xforms:bind and
@ref. If it were @bind and @ref.
Steven Pemberton: I saw xforms:bind is
being about the element.
John Boyer: I see.
Steven Pemberton: Are you OK
then?
John Boyer: OK, but we should be
careful about resolving we won't have globally-namespaced
attributes.
Steven Pemberton: That's an orthogonal
problem and we should solve our short-term problem.
John Boyer: That's great, but if we
solve it in a way that we can't implement global attributes, that's
causes confusion we should solve now. @xforms:bind is used in ODF,
for example.
Erik Bruchez: We're not changing
@xforms:bind if there ever was one.
John Boyer: Is @xforms:bind changing?
I don't know?
Steven Pemberton: It seems not.
John Boyer: What are the
semantics.
Steven Pemberton: It always produces a
nodeset.
John Boyer: In ODF it's being used as
a single-node binding.
Erik Bruchez: That's wrong.
Steven Pemberton: It depends on how
it's being used.
Erik Bruchez: The control in ODF may
use @xforms:bind to obtain a SNB, just like xf:input. The bind
refers to a nodeset.
John Boyer: So, hmmm. From the
standpoint of ODF, when it runs across an @xf:bind, this is a
foreign-namespaced attribute. Now ODF is defining the processing
behaviors.
Erik Bruchez: I don't think that's
fair. I don't know but if they have an odf:input field and an
@xf:bind attribute, I can still implement it. The only thing that
changes... it doesn't change anything for me as odf:input; I can
decide how many nodes to consume.
John Boyer: For an XForms processor,
our global attributes @ref and @bind simply return a nodeset and
that's all we can test. If anybody else wants advanced behaviors
it's up to the foreign processor to do it.
Steven Pemberton: We need a resolution
about global attributes.
John Boyer: We need to draw the line
about global attributes and who does them.
Steven Pemberton: If we haven't said
you can use them, strictly speaking they're being naughty, but I
have no objection to specifying something new.
John Boyer: It's probably just an
additional paragraph. A host-language processor could layer on
possibilities.
Leigh Klotz: John, how do you know not
to put vertices in the calculation engine for later nodes.
Erik Bruchez: Input isn't part of the
dependency algorithm.
John Boyer: Right. The UI updating
might look at the dependencies that the UI binding produces and
store those and if any of those get changed then you refresh.
Leigh Klotz: So it's rebuild and
refresh.
Erik Bruchez: It's like what happens
with bind.
Leigh Klotz: @bind has a bit of a hack
though. We have no way to know.
John Boyer: The global attributes
provide very little, only a nodeset. If I want to use an SNB then
the host language has to sign up via APIs that the processor
provides.
Nick van: The key part is that you
need to use an API we don't specify between the control and the
model and that internal API is the way you specify what updates you
want, etc.
Leigh Klotz: I'm happy with
that.
John Boyer: Yes, we don't have to
specify that API, but we imply there is some way for a host
language to ask for the additional services that we know elements
are already making.
Nick van: I think this is stronger now
with the new UI events, as we define them for the form author, not
the form processor.
John Boyer: I agree. The host-language
processors should not use the events. There should be an API that
the host-language processor has to sign up for UI Binding, etc. The
actual UI events are for benefit of authors.
Nick van: It could be that there are
other events, or not even DOM events, but some native
mechanism.
Leigh Klotz: OK, I'm happy.
John Boyer: Me too.
Steven Pemberton: In which case, can
we approach a proposed resolution. In XForms 1.2, we deprecate
@nodeset and allow @ref to be used everywhere that @nodeset is
allowed.
Leigh Klotz: What if there are
both.
Steven Pemberton: You're not allowed
to use both. It's for short-term use of @nodeset. @ref has the new
meaning.
Erik Bruchez: We already have that
situation with submission @action and @resource and we specify
precedence.
John Boyer: The new one takes
precedence.
Steven Pemberton: So even after we've
removed nodeset... That's fine.
Steven Pemberton: In XForms 1.2, the
ref attribute always returns a nodeset; we allow the ref attribute
everywhere that nodeset is currently used; we deprecate nodeset; if
both are present, then @ref takes precedence.
John Boyer: And the consuming element
decides what to do with the nodeset.
Leigh Klotz: Proposed Resolution: In
XForms 1.2, the ref attribute always returns a nodeset; we allow
the ref attribute everywhere that nodeset is currently used; we
deprecate nodeset; if both are present, the ref attribute takes
precedence. The consuming element decides what to do with the
nodeset.
Steven Pemberton: Any problems? No. So
resolved.
John Boyer: Works for me.
Resolution 2010-03-31.1: In XForms 1.2, the ref attribute always returns a nodeset; we allow the ref attribute everywhere that nodeset is currently used; we deprecate nodeset; if both are present, the ref attribute takes precedence. The consuming element decides what to do with the nodeset.
Leigh Klotz: Are we going to
encourage implementations to experiment with this in XForms 1.1
processors?
John Boyer: It adds stuff only.
Leigh Klotz: So should we encourage it
here?
Steven Pemberton: I would say yes. Any
objections?
Nick van: The only downside is that
you can create forms that don't work across implementations.
John Boyer: I wonder if, going
forward, we need something more interesting than the @functions,
like @features.
Leigh Klotz: So what would happen if
we issued a module for XForms 1.1?
John Boyer: Modules have traditionally
been defined by an element, or an attribute, or a collection.
Leigh Klotz: This would be an
attribute.
John Boyer: I meant a global
attribute. It might be nice to have an xforms:modules attribute,
like @version. There comes a point where it's just 1.2
behavior.
Leigh Klotz: I'd like not to keep
people from doing this and make them wait.
John Boyer: Or you could just use
version="1.2". It would be only a few features, but it's a function
of being on the cutting edge. version="1.2" might be the way to
cover that.
Leigh Klotz: That was Nick's
question.
Steven Pemberton: Are you happy?
Leigh Klotz: Do we send a message,
make a resolution?
Steven Pemberton: I'd be happy with a
resolution.
John Boyer: With or without the
version 1.2?
Leigh Klotz: It's not yet XForms
1.2.
Steven Pemberton: You can use both
@ref and @nodeset. We can point that out.
John Boyer: I guess if you're
concerned about cross-browsers, use nodeset.
Resolution 2010-03-31.2: We encourage implementors to experiment with @ref-everywhere now; we encourage authors who wish to experiment to use @ref or @ref plus @nodeset.
Steven Pemberton: Now, for
@xforms:ref and @xforms:bind globally. Do we resolve that it is
acceptable globally, that they return nodesets globally, and that
the consuming element decides how to use that nodeset.
John Boyer: And what additional
resources of the processor to use.
Action 2010-03-31.1: Leigh Klotz to notify www-forms and other lists that of @ref Resolution 2010-03-31.2.
Resolution 2010-03-31.3: @xforms:bind and @xforms:ref are allowed as global attributes. They return a nodeset, and the consuming host language decides which additional services of XForms to associate with that nodeset (e.g. UI bindings)
Action 2010-03-31.2: Steven Pemberton to create XForms12 Category wiki page entry to document Resolution 2010-03-31.1 for @ref-everywhere and Resolution 2010-03-31.3 for global @xforms:bind and @xforms:ref.
Leigh Klotz: I contacted the author
of the Badgerfish convention as we discussed. I'm not trying to
invent syntax, but just trying to get the ideas across so perhaps
he can help. I noted that Charlie Wiecha is in charge of the
action.
Steven Pemberton: So are we
close?
Leigh Klotz: The biggest issue is how
to specify the serialization and parse, and whether we need to
allow the painful-but-complete version.
Steven Pemberton: Defaults?
Leigh Klotz: Submission, no default
because you must specify.
Steven Pemberton: So XML is the
default in some sense.
Leigh Klotz: For parsing, possibly it
could auto-detect.
Steven Pemberton: OK. Any
actions?
Leigh Klotz: I think it's still
Charlie's action. I was just trying to get any external
assistance.