The ID on inputs is used for labels. I don’t know whether the link is made if there is a period in the ID, though.
It appears that the id does still work for linking a label to an input even when the id contains garbage - at least in all the popular browsers. That is the one instance where a period doesn't apply a different meaning in one place to what it does at the other. You wouldn't be able to access the forHTML value from JavaSript though because it too would misinterpret the dot.