or have we forgotten that plain hold HTML can validate much of this for us with no JS of any type required?