declaring any attribute in span vs using data-*

declaring any attribute in span vs using data-*

hi,

   i noticed that span can have any custom attribute like xyz
<span  id="p" xyz="24"></span>
now i can use data-xyz also.

so my question is which one i should?

q2) in first case should i prefer lower case becasue i noticed it takes any thing.

yours sincerley