- From: John Boyer <boyerj@ca.ibm.com>
- Date: Fri, 13 Jul 2007 10:13:20 -0700
- To: ebruchez@orbeon.com
- Cc: public-forms@w3.org, public-forms-request@w3.org
- Message-ID: <OF8FD9B8F0.4A2B0408-ON88257317.005D59A4-88257317.005E9E4D@ca.ibm.com>
Hi Erik, I admit I became disenchanted with 'verb' when I could not find a reasonable reference to cite. I think we should keep pulling on your proposal. The proposal to just add anything we like to method was considered, but where we had grief is that it became impossible to determine what the serialization should be. The pre-defined method settings in XForms 1.0 each have a corresponding serialization, such as tag-value pairs or XML. At the time, we were not thinking in terms of making the default of one attribute be based on the value of another attribute, so we did not think of having a serialization attribute that defined the serialization format and that defaulted to XML usually but to tag-value pairs in a few special cases, like urlencoded-post and get, for example. We have now accepted the kind of defaulting needed on validate and relevant (e.g. they default to whatever serialize says). So I think we can dump verb, use method, and add a serialization attribute instead. In fact, I think we could dump 'serialize' and instead have serialization="" mean don't serialize. Cheers, John M. Boyer, Ph.D. STSM: Lotus Forms Architect and Researcher Chair, W3C Forms Working Group Workplace, Portal and Collaboration Software IBM Victoria Software Lab E-Mail: boyerj@ca.ibm.com Blog: http://www.ibm.com/developerworks/blogs/page/JohnBoyer Erik Bruchez <ebruchez@orbeon.com> Sent by: public-forms-request@w3.org 07/13/2007 03:58 AM Please respond to ebruchez@orbeon.com To public-forms@w3.org cc Subject 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 17:14:36 UTC