[whatwg] rel/rev for <form> ?

Charles Iliya Krempeaux supercanadian at gmail.com
Fri Nov 4 12:29:05 PST 2005


On 11/4/05, ROBO Design <robodesign at gmail.com> wrote:
> On Fri, 04 Nov 2005 21:10:31 +0200, Charles Iliya Krempeaux
> <supercanadian at gmail.com> wrote:
> > Hello,
> >
> > (Don't know if this has come up before.  I kind of lurk in this list
> > :-)  but.... )
> >
> > The "rel" and "rev" attribute are very useful for adding semantics to
> > both the anchor element -- <a> -- and the link element -- <link>.
> >
> > I'd like to suggest that form element -- <form> -- get both "rel" and
> > "rev" attributes.
> >
> >
> > See ya
> Interesting suggestion. I can't help but wonder what exactly would this
> change to the "user experience". Rel for LINK and A is changing the user
> experience in user agents, because they can provide a "fixed" set of
> keyboard shortcuts (mouse gestures or whatever) for going to the
> previous/next page, help, home, author, etc.
> What are your ideas about this? What would you like user agents to do
> based on various <form> rel= attributes?

There's a number of different "use cases" that this would be very
useful for.  I'll try an list some of the ones I think are important.

In writing "user scripts" and "extensions" it is often desirable to
look for "semantics" in a page.  For example, consider the semantics
given by rel-license <http://microformats.org/wiki/rel-license>. 
rel-license provides a way of specifying a license for either the
whole "document" or part of the "document" it is in.  (It's usually
used in the <a> element.)

There is a Mozilla Firefox extension called MozCC
<https://addons.mozilla.org/extensions/moreinfo.php?id=363> which will
look for rel-license in a page, and if the URL in the "href" of the
rel-license <a> element points to a CreativeCommons license, it then
displays "icons" that describe the license.

Also, Mark Pilgrim has written a (greasemonkey) user script
<http://diveintomark.org/projects/greasemonkey/rellicense/> that can
detect and "handle" a very large number of licenses.

Further, web crawlers (and search engines) can make use of this
license information.  (For example, Yahoo! has a way of searching only
within stuff that are licensed under a CreativeCommons license --
http://search.yahoo.com/cc )

Also, one could even consider the semantics given by XFN
<http://gmpg.org/xfn/>.  (It is rel-based format on the <a> element.) 
Or any of the other many "rel" and "rev" based formats on the <a> and
<link> elements.  (I can list more if you want to hear them.)

(So hopefully I've shown that "rel" and "rev" based formats can be
useful beyond just making "keyboard shortcuts" in the user agent.)

One of the restriction with <a> and <link> based "rel" and "rev"
formats is that you implicitly require the HTTP resource (in the
"href" of the <a> or <link>) element, to be accessed via an HTTP GET. 
With a <form> element, you are not restricted by this.  With the
<form> element you can use other HTTP methods (by specifying the
method you want to use in the "method" attribute of the <form>
element).  For example:

    <form method="POST" href="/me.php" rel="api.comment.add">
        <textarea name="comment"></textarea>
        <input type="submit" value="Add Comment" />

Also, another restriction with <a> and <link> based "rel" and "rev"
formats is that you have no way of "parametrizing" things.  But with a
<form> element you can.  (As shown with the example above too.)

Those who have been touting using HTTP how it was designed to be
used... although their calling it REST for some reasons... would
likely find this type of thing useful too.

Also, those that are trying to add increased semantics to HTML under
the Micformats banner -- http://microformats.org/ -- would also find
this useful.

This could be used for user agents, for user scripts, for extensions,
and for web crawlers.  (There's probably more creative uses for it

See ya

     Charles Iliya Krempeaux, B.Sc.

     charles @ reptile.ca
     supercanadian @ gmail.com

     developer weblog: http://ChangeLog.ca/
 Never forget where you came from

More information about the whatwg mailing list