<div class="gmail_quote"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="gmail_quote"><div><br>Here&#39;s how the formal XML syntax would look (with our new URN namespaces ;))<div class="im">
<br><br>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;<br></div>&lt;f:view xmlns:f=&quot;jsf:core&quot; xmlns:h=&quot;jsf:html&quot; omitXmlDeclaration=&quot;true&quot;&gt;<br>
   &lt;h:doctype lang=&quot;xhtml&quot; type=&quot;strict&quot;/&gt;<br>   &lt;h:html&gt;<br>      &lt;h:head&gt;<br>      &lt;/h:head&gt;<br>      &lt;h:body&gt;<br>        &lt;h1&gt;Hello World!&lt;/h1&gt;<br>      &lt;/h:body&gt;<br>

   &lt;/h:html&gt;<br>&lt;/f:view&gt;<br></div></div><br></blockquote><div>And we should be writing composite components like this:<br><br>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;<br>&lt;ui:composition xmlns:ui=&quot;jsf:facelets&quot; xmlns:cc=&quot;jsf:cc&quot;&gt;<br>
   &lt;cc:interface&gt;<br>      &lt;cc:attribute name=&quot;name&quot; required=&quot;true&quot;/&gt;<br>   &lt;/cc:interface&gt;<br>   &lt;cc:implementation&gt;<br>      Hello, #{<a href="http://cc.attr.name">cc.attr.name</a>}<br>
   &lt;/cc:implementation&gt;<br>&lt;/ui:composition&gt;<br><br>The point being, no need for all the HTML wrapper garbage.<br><br>I&#39;d even like to get rid of the ui:composition there and perhaps have something like &quot;cc:component&quot; or &quot;cc:tag&quot; as the wrapper.<br>
<br>We can also leverage the default namespace to cut out the unnecessary namespace prefixes:<br><br>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;<br>&lt;component xmlns=&quot;jsf:cc&quot;&gt;<br>   &lt;interface&gt;<br>
      &lt;attribute name=&quot;name&quot; required=&quot;true&quot;/&gt;<br>   &lt;/interface&gt;<br>   &lt;implementation&gt;<br>      Hello, #{<a href="http://cc.attr.name">cc.attr.name</a>}<br>   &lt;/implementation&gt;<br>
&lt;/component&gt;<br><br>Notice that I&#39;m not really changing all that much in JSF to get to this point. It&#39;s really just a shift in thinking (and recommending).<br><br>-Dan<br></div></div><br>-- <br>Dan Allen<br>
Senior Software Engineer, Red Hat | Author of Seam in Action<br>Registered Linux User #231597<br><br><a href="http://mojavelinux.com">http://mojavelinux.com</a><br><a href="http://mojavelinux.com/seaminaction">http://mojavelinux.com/seaminaction</a><br>
<a href="http://www.google.com/profiles/dan.j.allen">http://www.google.com/profiles/dan.j.allen</a><br>