validateOverwrite

Validates if the given Specification can overwrite the current
Specification. If the given Specification is not same as the
current one, then it is valid to overwrite.
If the given Specification is same as the current Specification then
it must have a major version number equal or less than the current one.

Throws:

fatal - UserException if the given Specification is same as
the current Specification but has a higher major version.