I am trying to implement product recipe's (thats what our supplier is calling it) but cant seem to wrap my head around how to normalize it properly.
I have added some sample data to illustrate what it looks like.
The values starting with R*** are references to recipe identifiers. The numeric values are references to product identifiers.
Recipe's are groupings of products (nothing more nothing less). The only attribute a recipe has is a name. This should be a logical name for the product grouping.
As you can see products in turn can also be connected to recipes. And products can be connected to other products directly.
The only restriction to this is that a recipe (R***) can never be connection directy to another recipe. So just to be clear, products can be connected directly but recipes can't.
The fact that a subarticle can have many different parents makes it kinda fuzzy for me.

Ok... came up with the following solution which seems to work out pretty good.
and in case anyone is interested, here are the sql creates: