While most pmodifiers are non-accumulative pmodifier(means one only pmodifier of the same type will be used for a pass), there are some accumulative pmodifiers such as ObjPropsRender or ObjPropsDisplay.
Why this types of pmodifiers are allowed to be accumulative? Because some pmodifiers which deals with many object need to control subset of object for different properties.
For example, When you use ObjPropsRender pmodifier, you need to select all the object you possibly control in base pmodifier. But, you might want to control “Cast Shadow” for only some objects and “Visible to Camera” for other set of objects. Without the multiple accumulative pmodifier setup, you can not have this kinds of granular control.
When you use accumulative pmodifier, objects selection in base pmodifier becomes the start state for the pmodifier. You can only affect the objects selected in base pmodifier in a local pmodifier. If any object in the object selection for a local pmodifier that was not in object selection of base pmodifier would be ignored by the local pmodifier.
For example, you base pmodifier set to use only all spheres. But, your local pmodifier had set to use all geometries. In this case, only spheres will be used for the pmodifier since your base modifier object selection only has spheres .