Normaal gesproken zou ik voor een bestelsysteem zoiets verwachten als
Product -< OrderLine >- Order
In uw geval zou u een "konijnenoor"-relatie aan uw Product kunnen toevoegen om naar zichzelf te verwijzen. Dus uw outbound_shipment_contents verliest name , type naar het nieuwe product . U kunt dan recursief de boom met items opbouwen die u naar wens kunt kiezen.