My understanding of this is that some renderers -mental ray being the most performant I know at this level- are able to retreive some "PP attributes" (per-particle attibutes) from the maya interface. In the VFX domain, this is such an useful feature, because the renderer is able to read from sprites PP rotation, PP size, PP color, opacity and so on. This ability of the renderer makes night and day the usability of sprites - and instanced particles - in maya, because if the renderer does not read PP attributes, all the sprites will look the same: same size, same direction, etc.
As far as I know, per-particle shading is made by the use of the ramp shader (integrated in the particleshape node). While particles are given a PP id by different methods (age, position, random) their color value is determined by the U or V color in the ramp shader, according to their PP id. It is then possible to assign different shaders at different positions/values of the ramp shader (which is controlled in the particleshape tab), and then different particles are shaded with one of these shaders from the relationship between the particle ID and the position of the shader in the ramp.
I am away from maya so I can't validate what I'm saying, please double-check those statements : )
It is also possible to override all this shading behavior by assigning another shader to the particles, like in Jimstar's picture. Then the particles will still read PP attributes of the particleshape, but the shading will be overriden by the new shader (so no PP shading).
Very few renderers catch many PP attributes, I think that a better integration of the PP / spritePP attributes is one of the most missing feature in every renderer. Must be very complicated I guess! It's not like maya is full of fresh new clean code right?

*** yeah sorry it seems no shader is allowed in the color ramp for PP shading, you need to use the Particle Sampler Node, as explained in the maya manual: http://download.autodesk.com/global/doc ... d30e676540