A structure that holds user identifying information such as an email address, Evernote user ID, or an identifier from a 3rd party service. An instance consists of a type and a value, where the value will be stored in one of the value fields depending upon the data type required for the identity type.
When used with shared notebook invitations, a UserIdentity identifies a particular person who may not (yet) have an Evernote UserID UserIdentity but who has (almost) unique access to the service endpoint described by the UserIdentity. For example, an e-mail UserIdentity can identify the person who receives e-mail at the given address, and who can therefore read the share key that has a cryptographic signature from the Evernote service. With the share key, this person can supply their Evernote UserID via an authentication token to join the notebook (authenticateToSharedNotebook), at which time we have associated the e-mail UserIdentity with an Evernote UserID UserIdentity. Note that using shared notebook records, the relationship between Evernote UserIDs and e-mail addresses is many to many.
Note that the identifier may not directly identify a particular Evernote UserID UserIdentity without further verification. For example, an e-mail UserIdentity may be associated with an invitation to join a notebook (via a shared notebook record), but until a user uses a share key, that was sent to that e-mail address, to join the notebook, we do not know an Evernote UserID UserIdentity ID to match the e-mail address.