3.1.5.2.2 Setting the Version in the Response
If the server cannot read the protocol client’s request because it does not adhere to the schema, the version in the response SHOULD be the server version.
If the protocol client’s request adheres to the schema:
If a "Version Mismatch" error response is returned to the protocol client, the highest version supported by the server that is less than the protocol client’s version SHOULD be returned in the response.
Otherwise, the version MUST be the version in the protocol client’s request.