see ItemsController for details