Memberships
Memberships
In Itslearning there are no Membership objects, but as IMS-ES does work with them, they have some impact on the IMS-ES Template. Simply put a Membership defines the relation between a User and a group (Hierarchy or Course). So if you want to add a User to a Hierarchy, in IMS-ES you will have to create a Membership. Or if you want to remove a User from a Hierarchy, you will have to find the Membership that defines that relation, and delete it. Memberships are also used to set the home organisation of Users.
Memberships in IMS-ES are defined by an unique identifier, and this is also the only way to retrieve / delete a membership. And these identifiers cannot be retrieved through Itslearning itself. Therefore the IMS-ES Template made some restrictions on memberships.
-
You can only update / delete Memberships that have been created through IMS-ES.
-
When creating a new Membership either the identifier created automatically (by combining the User synckey and Hierarchy syncid), or you can provide a custom identifier.
(because this identifier is max 255 characters, if the combined length of the User synckey and Hierarchy syncid is longer than that, a custom identifier should always be provided!) -
Of course when a custom identifier was used for creating a Membership, it also has to be used for updating that Membership.
Membership Pair
With creating multiple Memberships, it can be a hassle to check which user belongs to with Hierarchy and role. Therefore these memberships are contained in a custom object, a MembershipPair. A MembershipPair has the following properties:
-
UserSyncKey
-
HierarchySyncId
-
Role
Functions
In the IMS-ES Template the following functions are connected to a Hierarchy: (some of these functions are overloaded with different parameters, these are explained in the definitions later on).
-
CreateMembership
-
CreateMemberships
-
UpdateMembership
-
UpdateMemberships
-
SetHomeOrganisation
-
SetHomeOrganisations
-
DeleteMembership
-
DeleteMemberships