I'm currently working on modeling a database to "recommend" products based on a questionnaire (it's not a recommendation system) so I have my products with some characteristics like the ones bellow (style and patterns):
And then I created a questionnaire with some questions that are going to help me select products with certain pattern or styles. But then there are others without a direct relation like budget.
My question is: How do I get to have a questionnaire with questions which options are in other tables and other that have not relation at all?
I thought on having a question type and if question has type = styles then I'll pull the styles list of option, or other idea is to duplicate options for that questions and make them independent, but the idea of duplicity of values doesn't make me happy at all :(
Thanks in advance for any insight!