Shouldn't the buildRendering() and _addAriaAttr() methods be replaced by a template?

I'm confused because you are loading the template above, but then apparently not using it.