PRINCIPAL_TYPE = 'SAVE'
These are the values stored as the system default notifications. When you make a change to the defaults in the Administration tool, these entries will be updated. Unless a USER has overridden this value with their own setting, any changes made here that you save will be inherited by users immediately. The USER_ID listed against this entry indicates the user that clicked Save in the admin tool.
PRINCIPAL_TYPE = 'USER'
These are the values a user has set for themselves on their own Account Settings. These values are removed when the user selects 'Restore Defaults'. Only the values/entries you have made changes to will be stored. These values take precedence over 'SAVE' level items, so the values a user has will be a combination of SAVE items they haven't changed, plus any USER items that they have set specifically.
Edit: At this 'USER' level, status = 0 is an unchecked notification, status = 1 is a checked notification.
PRINCIPAL_TYPE = 'PUBLISH'
When the publish button is clicked:
1. 'SAVE' settings are replicated as 'PUBLISH' settings.
2. All 'USER' settings are deleted.
The USER_ID listed against this entry indicates the user that clicked Publish in the admin tool.
I hope that helps clear up your question and also any other differences in behaviour you've observed.