The data of the model can also be loaded directly from the webapp directory. So we can define an item for each facelet matching buttons-item-*.xhtml. With this, we can create applications with pluggable UI. And we don't have to fight with bindings and creating components in Java code.
This example shows a flexible possiblility, but for most cases there are much simpler solutions.