Refactored in order to describe general web concerns