To sell a Product that has either a Download, such as an MP3, or a Physical snail mail component, such as a CD, you can set up the Product as usual ...
On the Product, be sure to have set:
Product Price: (lowest price or 0 if using Priced by Attribute)
Always Free Shipping: No, Normal Shipping Rules
Product is Virtual: No, Shipping Address Required
Product Weight: 0
Then, setup your Option Name, such as:
Option Name: Media Format
Option Type: Radiobutton or Dropdown
Next, add your Option Value:
Option Value Name: Download MP3
Sort Order: 10
Option Value Name: CD
Sort Order: 20
Option Value Name: Select Media Preference
Sort Order: 0
Then, add the Attributes:
Option Name: Media Format
Option Value: Download MP3
Prefix: + (or blank if using Priced by Attributes)
Price: 3.99 (or 0 if not using Priced by Attribute and this is the $3.99)
Option Weight: 0
Sort Order: 10
Add appropriate filename, max days and max download attempts
Option Name: Media Format
Option Value: CD
Prefix: + (or blank if using Priced by Attributes)
Price: 4.00 (or actual Price if using Priced by Attribute, such as 7.99)
Option Weight: 2
Sort Order: 20
Option Name: Media Format
Option Value: Select Media Preference
Sort Order: 0
Default: YES
Display Only: YES
The extra Attribute for the Select Media Preference is used to force the customer to make the proper choice of what media type they want the Product to be in.
NOTE: you can update all sort orders from the defaults with the Update Sort Order after you have added all of the Attributes ...
Now the Product will trigger shipping when the CD is ordered and skip shipping when the Download is ordered ... and force the customer to correctly pick either the CD or the Download ...