Notifications have an urgency level associated with them. This defines the importance of the notification. For example, "Your computer is on fire" would be a critical urgency. "Joe Bob signed on" would be a low urgency.
Urgency levels are defined as follows:
Developers must use their own judgement when deciding the urgency of a notification. Typically, if the majority of programs are using the same level for a specific type of urgency, other applications should follow them.
For the most part, server implementations may use urgency information how they see fit. The one exception is the Critical notification. As Critical notifications are things that the user will most likely want to know about, they should not be closed until the user dismisses them.