The Nitro concept of elements is terribly flexible. Whatever you put inside the elements tag is available through the content method. You could for instance parse this as YAML and take it as configuration for how the element should render.
<SomeElement> variant: big background: #3f7 no-footer: true </SomeElement>
class SomeElement def render opt = YAML::load(content) if opt['variant'] == 'big' ... end end