If the users can add more columns but you do not intend to use the extra columns, I would say you should have 2 collections. Collection 1 would be undefined and takes whatever columns are received from the source file. Then take only the data out that you need by specifically referencing the column names and placing the data into your Collection 2, which has predefined columns.
Dave Morris, 3Ci at Southern Company