My question is prompted by a question on the programmers.stackexchange:
This may be a duplicate of another question here on english.stackechange, but the answers given to that question did not provide a definitive legal definition of 'should' vs. 'must'.
It has long been my impression that 'shall', 'will', and 'must' have about the same imperative weight; that is, the phrase that follows these words is a command that is not to be questioned. However, in my mind, 'should' falls in a category of lighter imperativeness, almost to the same level as 'may'; that is, the phrase that follows 'should' is a command that does not need to be completed.
Does 'should' imply an unquestionable command, as is the claim in the chosen answer on programmers.stackexchange and the second definition on wiktionary, or is it closer in meaning to 'may'?
Best Answer
Since it appears that you're referring to requirements analysis or contracts specifications, the governing body or contracting agency should specify what the language requirements will be. In some instances I've been involved with, anything not specifically using shall (which would include should) is not considered to be a true requirement (that is, failure to abide by it is not ground for breach of contract).
However, if you look at the IETF Standard for RFC writing, they use shall, must, or required to indicate a true requirement. Should is used to mean a recommendation only.
IEEE's Style Guide has the following to say:
So at least in a couple instances, you're correct that should is not equivalent to shall as the programmers SE question suggested.