Yet another client-side check?
It makes sense that a client should such checks rather than the NRS itself - the server side is correct to assume "that you know what you are doing" so if you ask to re-assign an alias to the same value then as far as the server is concerned that is what you meant.
The other way I guess it could be resolved would be to have a "second parameter" to the alias API that states whether it is "creating" or "updating" the alias.