ok si infatti non è tanto chiaro, ad es:

articolo dimensione peso

sedia - x - 10
sedia - y - 12
sedia - z - 14
sedia - w - 10
tavolo - a - 25
tavolo - a - 30
vaso - b - 11


quindi l'articolo può contenere duplicati, anche se non si devono vedere nella prima select, ad es:
prima select: sedia-tavolo-vaso.

la seconda select può anche avere duplicati e deve essere gestita come la prima

ad es:

I select: sedia-tavolo-vaso
I scelta: sedia

II select: x-y-z
II scelta: y

risultato: e stata scelta la sedia con dimensione y e avente peso 12


nell'array quindi c'è articolo e in ogni articolo c'è un array con dimensione e peso