Because what I need to do is split up the current shopping cart and determine shipping costs through multiple service providers for only portions of the shopping cart. It's easier if I give you an example:
A shopping cart contains 6 items. 2 of these items can only be shipped via UPS, 2 more can only be shipped via Canada post, and the other two may be shipped via either CP or UPS. The available shipping providers are determined through boolean values associated to each product and set in the administrative section; each product has a radio button for UPS allows shipping and CP allows shipping. This is a requirement as policy dictates that some of the items this particular store sells cannot be shipped via UPS and others cannot be shipped via CP.
On the shopping cart screen each item displays in its description which shipping providers will ship the item. Currently on the shipping options page these are all lumped together in the quotes. In the above scenario this page will instead display 4 "options" two of which cannot be modified. First option, the two items that MUST be shipped via CP and the quote to ship (obtained using CP module). Second option, the two items that MUST be shipped via UPS and the quote to ship. Third option the first two CP only items combined with the other two items that may be shipped via either provider and the fourth the UPS only items combined with the other two that maybe shipped via either provider, both with quotes and this time a radio button option to select between the two.
At this time I need to break down the shopping cart and call the appropriate quote() method for each of these scenarios in order to obtain the correct quotes. I hope this helps, perhaps there is an easier way to do this using the Zen software?