After reading the answers to [this question](https://stackoverflow.com/a/1402782/3581485), my mind feels like a melting ice cream cone. 

Considering the fact that you can assign arbitrary properties to DOM elements. 

e.g. 

```js
var myDiv = document.createElement('div');
myDiv.potato = ["puppies", "sea otters"]

alert(myDiv.potato);
```

What is the point of the whole `data-*` convention? 

What advantage does it offer over assigning arbitrary properties?