User model: definition