Ok, so I would still have the colours in a separate BO if only so you can add new colours in the future. Marbles.Colour could be a dynamic choice list based on the Colours.BO
Marble -> Colour (one to one)
Marble -> CustMarbleOwned <- Customers
CustMarbleOwned would contain the customer comments so that one customer could own many marbles and one marble could have many customers.
To search for all the comments about a particular marble.
FIND CustMarbleOwned Where CustMarbleOwned.Marble.Colour= 'Red'
Use info in other posts to traverse the list