So in a sense the name of getAttribute(name) is misleading: it's probably better renamed getAttributeValue(name), because it doesn't really return an attribute (in the sense of an Attr node), but the value of the `value` property of the attribute node (owned by the element on which it is called) whose name is `name`.
See:
https://developer.mozilla.org/en-US/docs/Web/API/Element/get...
https://developer.mozilla.org/en-US/docs/Web/API/Element/get...