just commit the Célia's work: add a new method into class. Some refactoring including a visitor pattern to determine if user can add a field