As mentioned, each time a dwarf sees the remains of each individual "sentient" their "see death" stress is refreshed, and that adds to the stress level periodically, probably once per season. Thus, dead "sentients" should be separated from other "refuse" (bones, wool, hide, teeth, etc), and be kept out of view of the dwarves.
Magma will remove the bodies completely (but beware of FBs made out of salt: they contaminate the magma resulting in magma mist when dumping into the magma for quite some time). A pit will probably hide the bodies from view if deep enough.
There are two ways of moving the bodies to their destination:
- Dumping on the rim of a pit, which causes the bodies to drop into it. Carries the risk of the hauler seeing the bodies at the bottom, and also of slipping and falling down (not good if the pit has magma in it!).
- A "sentient" refuse QS design where only select "sentient" bodies are hauled serving as a link for a QS that dumps into the hole. If the stockpile is on one side of the mine cart and the hole on the other dorfs should never have to see what's down there. The regular refuse stockpile should obviously be set up to mirror the "sentient" one, i.e. the species added to the sentient refuse pile should be removed from the regular one. A pain to set up because there are so many species. I add sentients as I encounter them, rather than trying to set the system up for all the species that exist.
- You should also be able to combine dumping and QS by dumping on top of a links only refuse stockpile that feeds the QS, and then unforbid the bodies after dumping. Saves on the setup effort, but paid for by manual dumping and unforbidding.