All these attributes change behavior based on the value of the type attribute of <input>.
Some types are just simple numbers that need to be parsed, but in some other cases more ad-hoc parsers need to be created.
Related links:
https://html.spec.whatwg.org/multipage/input.html#the-input-element