split item content parsing into separate functions