When I was going through the new JSF 2 Facelets API, I was surprised to see this
class wasn't part of the public API. I had a client once that wrote all of their
tag libraries in Java by implementing this interface. I have also used it for
prototyping EZComp-style functionality prior to JSF 2. Custom implementations of
this interface can generate tags dynamically based on a number of different
factors, which is a pretty powerful feature, especially if the implementation is
written in a dynamic language, such as Groovy.
I suggest moving this class to javax.faces.view.facelets.