Пользовательские элементы создаются путем расширения класса HTMLElement.
Поэтому, когда вы создаете его, кажется, вам нужно будет принять особые меры предосторожности, чтобы не давать вашему пользовательскому элементу какие-либо имена пользовательских свойств, которыеуже унаследовано от HTMLElement.
Я могу представить множество способов избежать этих потенциальных конфликтов имен, но мне было бы интересно узнать о предложениях других или каких-либо рекомендациях по этой теме.