Are `name`, `id`, and `for` required? Can they be the same? And what is the relationship between them?