modify components to leverage html5 data attributes