Inserting a list into a collection entry

I’m a little lost when it comes to structuring my collection. Currently, I have a collection of product categories (i.e. Shoes, Shirts etc.). I need to be able to store a list of products that belong to each category (Shirts: “Graphic T-shirt X”, “Graphic T-shirt Y”). Should I insert an array of products into each category? Or is there a better way to handle one-to-many relationships?

Have you read over the Designing your data schema section of the Guide? It covers this scenario.

I need to be able to generate a link to to the categories and to each product of the category. So if I define a schema with an array of products as one of the values, how would I then generate a page for each of those array elements?