Thanks! That was extremely clear and it makes total sense 
I would suggest them to put an underscore  at the beginning of the parameter name, to indicate internal use, or to set it only for reading, not writing.