title: Database design additional table
body: <p>I have this table called <strong>garments</strong> which is made up of panels, each panel can be coloured in using a set of 26 default colours. The problem is, each garment can be created using a fabric and each fabric allows for 1 or more additional colours.
  I have created a draw.io diagram to assist in understanding my issue.</p>
  
  <p><a href="https://drive.google.com/file/d/0BwDqLSd0_WeocU5ndmNqZmc2MTQ/view?usp=sharing" rel="nofollow noreferrer">https://drive.google.com/file/d/0BwDqLSd0_WeocU5ndmNqZmc2MTQ/view?usp=sharing</a></p>
  
  <p>Basically, 
  <strong>Garments</strong> have a <strong>fabric</strong> which has a set of <strong>fabricColours</strong>. A <strong>Garment</strong> also has <strong>GarmentColours</strong> which are a collection of <strong>Colours</strong> and <strong>FabricColours</strong> but I am unsure of how to define the relationship.
  In my design <strong>GarmentColours</strong> have 2 optional foreign keys: <strong>FabricColourId</strong> and <strong>ColourId</strong>. I think this could be done better, but I am unsure how.</p>
  
  <p>Has anyone come across a similar problem before? If so, how did you solve it?</p>
  
  <p><strong>Update 1</strong></p>
  
  <p>Here is a png of the document, just in case you can't open it :)</p>
  
  <p><img src="https://i.stack.imgur.com/rsH8E.png" alt="enter image description here"></p>