Yes, but I have the nagging feeling that it should say "PUT is defined as being idempotent, so it's the responsibility of the programmer to implement it that way." Some frameworks may implement it this way, which is good, but it's something to test for if we want to assume idempotence.