On death, the dead player rolls on a table of items to produce a "resurrection cost". This is displayed to the user as "You require x amount of y item to respawn". This is sent as a chat message.
There is an uncraftable custom block called a Shrine that other players can interact with to see a list of dead players and their respawn costs, as well as attempt to resurrect the next dead player (I.e dead list is PlayerA, PlayerB, PlayerC. Next dead player is PlayerA.)
The assumption is that while players are dead, they are in specataor or adventure mode and not banned so it updates gamemode to survival
This does not handle the banning/spectator mode'ing of the dead player. That is designed to be handled through command blocks.