Often we need to assemble complex questions that would require a large number of simple questions and conditions controlling previous answers.
Instead, the presentation could be in the form of a table (array) !
But this table would have to support multiple columns, each containing different types of sub-questions. Moreover, the number of responses should be variable from one column to another and allow optional answers.
Something like this question: "List up to three classes (with subclasses and names). For each, list a maximum of three systems that use that class and indicate if they were deployed."
This type of question could need also other columns, for instance, a level of difficulty for implementing the class. For that, we would use a combo-box.
Links to some real examples:
http://uploaddeimagens.com.br/imagem/ver/quest-table1.jpg
http://uploaddeimagens.com.br/imagem/ver/quest-table2.jpg
That is, we need a table of a variable number of columns, each one of different "sub-question" types.