Re: Discussion needed on submission verb (method)

All,

I understand John's argument that:

1.  We had reasonably good reasons at the Venice f2f to try to find a
     term different from "method", and we chose "verb". Note that I was
     one of the people (maybe the only one?) that were unconvinced, and
     I still am, in spite of the chair's reluctance to reopen the
     debate on this.

2. The LC comment doesn't really question the use of the term "verb",
    but asks for a clarification of it.

"Still..." is going to be the term of the day for me ;-)

My guess is that we got to using "verb" because "get", "put", "post",
"delete" are actually verbs in English grammar. People also use the
term "verb" in other circumstances, like talking about "CRUD
verbs". Note that there is an exception in HTTP: the method "OPTIONS",
which is not an English verb. So while "verb" works well for most HTTP
methods and WebDAV methods, it is not appropriate in just one case.

It also seems that we are trying to abstract from a collection of
protocols of size one, namely containing only HTTP. Do we have at
least one other example of protocol where a "verb" would not translate
into an HTTP method?

I appreciate the idea of being abstract. But HTTP is the protocol for
the web, it's not going anywhere anytime soon. Maybe all protocols are
equal, but HTTP is more equal than others. It's the one I use 99% of
the time with XForms.

Other protocols like "file" and "mailto" are used, but they don't need
methods, verbs or headers. They are much simpler than HTTP, and less
commonly used.

If I am submitting to HTTP, as a form author, I very much want to use
concrete terms with which I am familiar. In particular, method,
headers, status code, etc. I don't think it is necessary to learn
another terminology.

All in all, I still have strong feelings against the use of "verb". It
seems like namespace pollution to me, in that we are adding new, and
arguably uncommon terminology for unconvincing reasons.

I realize that I am not resolving the core issue here, which is that
we have an unfortunate legacy with the XForms 1.0 @method attribute,
which is "abstract".

So what about a little proposal, just to show that it is possible to
have another solution, better or not:

1. We decide that XForms will not add new qname-but-not-ncname values
    (i.e. values without a namespace prefix) for the @method attribute
    besides "multipart-post", "form-data-post", and "urlencoded-post".

    If XForms wants to define new methods, then they will have to be
    prefixed, for example:

      method="xforms:foo"

2. Values of @method which are are qname-but-not-ncname and not
    directly recognized by XForms 1.1 work like our new @verb and
    <verb> attribute and element. So you can now write:

      method="PROPFIND"

    or:

      method="POST"

Just food for thoughts before the weekend.

-Erik

John Boyer wrote:
 >
 > Hello everyone,
 >
 > Please discuss the following issue on the list this week:
 >
 > 
http://htmlwg.mn.aptest.com/cgi-bin/xforms-issues/Submission?id=103;user=guest;statetype=4;upostype=-1;changetype=-1;restype=-1 

 >
 >
 > Please see the notes I put into place.
 >
 > The idea at the time this was resolved (in Venice, I believe) was for
 > submission's @method to be an abstraction that controlled things like
 > how to serialize.
 >
 > We then decided to use the term 'verb' to allow finer grain control over
 > the exact operation to be requested by a submission.  The http binding
 > for the verb is that it sets the string that is referred to in RFC 2616
 > as the 'method' but which has with some frequency also been called the
 > HTTP Verb.
 >
 > If we renamed the 'verb' attribute/element pair to instead be 'method'
 > we would have the problem that it would conflict with the @method
 > attribute we already have.  So, you would be setting the abstract
 > 'method' to virtually any string, making it impossible for us to define
 > the serialization.
 >
 > So, doing the chair thing here, I would suggest that the working group
 > already considered the name 'method' and rejected it, instead resolving
 > to use the name verb for the above reasons.
 >
 > The last call issue does ask for a clearer definition of what the verb
 > is.  I think the LC comment is fishing for us to say that it connects to
 > the HTTP method from RFC 2616, but we cannot come out and say that
 > because we want submission to be useful for protocols other than http.
 >  I think the best we can say is:
 >
 > The <term>submission verb</term> provides the operation being requested
 > of the server by the submission.  For example, the submission verb sets
 > the 'method' component of the HTTP protocol [RFC 2616].
 >
 > Best regards,
 > John Boyer


-- 
Orbeon Forms - Web Forms for the Enterprise Done the Right Way
http://www.orbeon.com/

Received on Friday, 13 July 2007 16:45:51 UTC