diff --git a/rfc/src/sharing.xml b/rfc/src/sharing.xml
index 6770285..823d91d 100644
--- a/rfc/src/sharing.xml
+++ b/rfc/src/sharing.xml
@@ -17,7 +17,7 @@
https://www.fastmail.com
-
+
Applications
JMAP
JMAP
@@ -25,7 +25,7 @@
sharing
-This document specifies a data model for sharing data between users using JMAP.
+This document specifies a data model for sharing data between users using JMAP. Specifications for other data types can reference this document to support a consistent model of sharing.
@@ -94,7 +94,7 @@ capability that contains the corresponding Principal object.
A Principal object has the following properties:
-- id: Id
+
- id: Id (immutable; server-set)
The id of the principal.
- type: String
This MUST be one of the following values:
@@ -132,7 +132,7 @@ for this principal that the user has access to, or null if none.
Principal/set
This is a standard "/set" method as described in .
Users SHOULD be allowed to update the "name", "description" and "timeZone" properties of the Principal with the same id as the "currentUserPrincipalId" in the Account capabilities.
-However, the server may, and probably will, reject any change with a forbidden SetError. Managing principals is likely tied to a directory service or some other vendor-specific solution, and may occur out-of-band, or via an additional capability defined elsewhere.
+However, the server may reject this change, and probably will reject any other change, with a forbidden SetError. Managing principals is likely tied to a directory service or some other vendor-specific solution, and may occur out-of-band, or via an additional capability defined elsewhere.
Principal/query
@@ -178,11 +178,11 @@ for this principal that the user has access to, or null if none.
The ShareNotification object has the following properties:
-- id: String
+
- id: String (immutable; server-set)
The id of the ShareNotification.
-- created: UTCDate
+
- created: UTCDate (immutable; server-set)
The time this notification was created.
-- changedBy: Person
+
- changedBy: Person (immutable; server-set)
Who made the change.
@@ -193,18 +193,18 @@ for this principal that the user has access to, or null if none.
- principalId: String|null
The id of the Principal corresponding to the person who made the change, or null if no associated principal.
-- objectType: String
+
- objectType: String (immutable; server-set)
The name of the data type for the object whose permissions have changed, e.g., "Calendar" or "Mailbox".
-- objectAccountId: String
+
- objectAccountId: String (immutable; server-set)
The id of the account where this object exists.
-- objectId: String
+
- objectId: String (immutable; server-set)
The id of the object that this notification is about.
-- name: String
-The name of the object at the time the notification was made.
-- oldRights: String[Boolean]|null
+
- oldRights: String[Boolean]|null (immutable; server-set)
The "myRights" property of the object for the user before the change.
-- newRights: String[Boolean]|null
+
- newRights: String[Boolean]|null (immutable; server-set)
The "myRights" property of the object for the user after the change.
+- name: String (immutable; server-set)
+The name of the object at the time the notification was made. Determining the name will depend on the data type in question, for example it might be the "title" property of a CalendarEvent or the "name" of a Mailbox, and is implementation specific. The name is to show to users who have had their access rights to the object removed, so that they know what it is they can no longer access.