Something I've been thinking about for a while;
<t:comp type="foo"> ... </t:comp>
we should support:
<t:foo> .... </t:foo>
This would be more consistent between invisible instrumentation and explicit; the only difference would be that you always put the id and mixins attributes into the t: namespace.
The remaining question is how to handle slashes in component types (i.e., a type of 'ajax/whizzbang'). I hate to say it, but we may need to allow periods in the name (i.e., <t:ajax.whizzbang> convert the periods to slashes to form the component type, then (in existing code) back to periods to form part of the qualified class name.
<span t:type="..."> (i.e., invisible instrumentation) wiil continue to be maintained.
<t:comp> should be removed; having more than two ways of doing things is not a good idea.
It's been observed that this approach would "align" Tapestry syntax more closely with other technologies, such as JSF and Cold Fusion.