Description
jQuery.camelCase contains a CSS-only quirk that replaces -ms- to ms-. This quirk is needed only in the CSS module and yet the data module uses it as well, making elem.data('-moz-a', 'b') create an MozA key and elem.data('-ms-a', 'b') - an msA key. Those use cases should be separated.
Due to needed breaking changes this is 4.0 material.
P.S. It would be best to resolve #3384 first.
EDIT: Description edited as part of this ticket has been separated to #3384.
Link to test case
https://jsfiddle.net/zmfvwak7/1/