I think this one will be necessary. It's a view with multiple pieces and interactions. I don't think we should rely on the implementor to implement the HTML properly each time. We should just get the outer element and write its contents.