I am designing a relational DB for an online survey.

However, I am not sure what is the best relational database design for storing multidimensional matrix questions.

Let's say, I have the following question (sorry, it does not allow me to insert HTML table):

What was your experience of...

```
----------| Not friendly| (2) |Very friendly|Length of stay|Visited in the last year?|
Sydney    |radio button |  rb |        rb   |   drop down  |  check box              |   
--------------------------------------------------------------------------------------
New York  |     rb      |  rb |        rb   |   drop down  |  check box              | 
--------------------------------------------------------------------------------------
London    |     rb      |  rb |        rb   |   drop down  |  check box              |
--------------------------------------------------------------------------------------

```

Do you think I should do something along the following lines or is there a better way?

To hold all the question:

**Question**  

questionID  

question  

**QuestionMatrix2d**  

matrix2dID  

questionID  

subquestionID  

subquestion  

**QuestionMatrix**  

questionID  

matrix2dID  

question\_parentID  

And to hold all the responses:

**QuestionResponse**  

questionID  

response\_code  

**QuestionMatrix2dResponse**  

questionID  

subquestionID  

response\_code  

Thank you for your help.