Let me be a bit more precise here: those methods aren't part of the API at all. They're not a bad idea, but they're not reusable in terms of internal logic, and they're not really referenced yet.

In the other types, input formats polymorphism is usually done in the Value's constructor (see Keyword), and we believe it is acceptable this way.

Discussions are still ongoing regarding the actual responsibility when it comes to checking the input though...