Чем грозит использование произвольных атрибутов (не data-)?
Я вот задумался - а так ли обязательно использовать data-атрибуты?
Вот например, моей библиотеке нужны атрибуты. По логике им нужно давать имена вида data-libname-attrname="value". Часть libname играет роль неймспейса, attrname имя собственно атрибута. Проблем тут как бы нет, но это длинно - скучно потом писать в html-коде это самое data десятки раз. Почему бы не написать просто libname-attrname="value"?
Чем мне грозят свои собственные имена? Ну кроме того, что что это общепринято, валидно и прочее семантическое бла-бла. Ну вон Ангуляры же всякие используют, чем я хуже?
Это некрасиво, вводит в заблуждение и не соответствует принятым стандартам - уже достаточная причина для отказа от подобного. К тому же, data - часть спецификации, а значит, это валидно, в отличие ото всех других вариантов пользовательских атрибутов. Валидация с элементами, которых в спеке нет, никогда не пройдет.
Сколько лет в вебе, никогда валидность не пригодилась :)
Прогнать код через валидатор, конечно, полезно - помогает найти ошибки и опечатки.
Но как самоцель - это блажь. Хотя когда-то тоже стремился добиваться полной валидности.