I addressed this in a previous post. Whatever reasoning applies to the
<label> element also applies to the <reco> element:
The wrapping approach supports a direct association. When cut-and-paste is
used, this avoids bugs if a developer forgets to match the value of the
"for" attribute with the new ID. This also keeps consistency with the
<label> element so developers can always know that the "for" attribute is
optional and wrapping can be used instead.
From: Satish S [mailto:satish@google.com]
Sent: Wednesday, November 02, 2011 2:23 PM
To: Michael Bodell
Cc: public-xg-htmlspeech@w3.org; johnston@research.att.com
Subject: Re: Next HTML web api document
1. The <reco> element should probably be a void element with no content
on its own (http://dev.w3.org/html5/spec/Overview.html#void-elements)
I just noticed this in the for attribute's description, missed it in earlier
reads:
"If the for attribute is not specified, but the reco element has a recoable
element descendant, then the first such descendant in tree order is the reco
element's reco control."
Is there a benefit to doing this over requiring the 'for' attribute to be
set and making <reco> a void element?