In general, the idea of master/slave is that there is only one master (though there are multi-master protocols, where other devices can take over as "the master," so as with everything there are exceptions) and one or more slave devices (no real point if there are zero slaves.) The master initiates communications and all of the slaves listen. If a slave is addressed by the master (slaves usually have an ID or address that the master uses -- and the master usually doesn't have an address/ID), then when the master has completed its request the slave responds using some lines (one or more) that are shared by all the slave devices.
Like anything, different design requirements may modify this general idea. For example, a very common technique (used back probably before I was born) is to allow a slave device to have a reserved wire (often just one) that notifies the master that it wants communication. This might be an "interrupt line" reserved for the slave, for example. Or it can be much more complicated, such as with the APIC bus for the x86 devices. So some protocols permit "out-of-band" methods for a slave to notify the master that attention is desired. Regardless, it is the master that will initiate the actual communications required to service a slave.
Also, in mastering systems it's generally assumed that inter-slave communication doesn't occur. However, even then some protocols will support a master-mediated slave-to-slave communication. (DMA techniques can and are used in this way, from time to time.)
Just get used to the fact that given any master/slave protocol, creative people will find ways to "extend the concept." So there isn't a one-size-fits-all definition. But the general idea is that there is a controller that mediates communications and there are devices that accept that mediation and work in concert with it.