Maybe a tpl should be used to make it easier to override the markup ?