X-Cart has Product Options. Product Options have an advanced functionality, called Product Variants.
Product Options allow you to have dropdowns of color, size, etc. If you need to track inventory levels, skus, etc, for each combination of color, size, etc, you can establish Variants which allow you to store/track that information. You can also specify incompatible options as needed.
http://www.x-cart.com/xcart_manual/online/?product_options.htm