Example page is: http://www.uswitch.com/mobiles/deals/apple_iphone_4s/
This page aggregates all contract deals for a specific handset, I am looking to add schema.org microdata on the rows and from what I understand, it appears I should markup each row with schema.org/Offer
This will result in something like:
Offer [itemOffered: x , price: a, ... other variations...] ... Offer [itemOffered: x , price: b, ... other variations...]
Would this be the best way to go about this?
Google guidelines for "Rich Snippets Products": http://support.google.com/webmasters/bin/answer.py?hl=en&answer=146750&topic=1088474&ctx=topic only lists the AggregateOffer usage but leaves out their guideline for the markup of each of the offers that appear on the page.
The AggregateOffer type is suited exactly for this.
Additionally, Google supports a Product with multiple offers. They even use this scenario as an example.
AFAICT, Google Rich Snippets supports only a single item per page. This makes sense because it's all about better displays of pages in search results. So if your goal is to have the aggregate pages display better in search results, then there's no point in marking up the individual offers on the aggregate page.
You can of course till add offer markup on the pages for individual deals.