Hi,
You can have multiple materials on a mesh when it's been designed with sub meshes. This is defined during the modeling of that mesh in 3ds max, maya etc.
So each index in the materials list correspond to a sub mesh.
I personally never do that, and make sure each mesh is sole with no sub meshes, It creates all sorts of problems and constraints. It also affects rendering on mobile big time, so I kind of blindly design my models to always be unique, whole and single meshed, exporting, and working with that simple rule makes really a lot of difference in the long run. I even come back to models that are not mine to remove sub meshes. They then appears properly in the hierarchy of models and you can work with them properly.
note: You can modify this list and if a sub mesh doesn't find its corresponding material in this list, it takes the first one. You can do that especially if the sub meshes uses the same materials...
Bye,
Jean