Product variants with option set and option values

Hello! I’m pretty new to Cockpit, and I’m trying to figure out if the following use-case is possible with the tools available.

Many ecommerce systems have the concept of Product variants which may have multiple options and predefined values for those option sets (for example Color:Blue, Size:Large). I have tried modeling this as variant, option_set and option_value, but I see no way to link through option_set to the option_value. Ideally, the user would be able to select the option set (Color) and then select the option value (Blue).

At the moment, I’m using a collection-link and linking directly to the option_value, but this doesn’t feel right. There’s no easy way to ensure that the user has not selected two different colors for the same variant and it’s not easy to find the option you want when they’re all mixed together.

Am I missing something, or would this type of “has-one-through” relationship require custom code?