IMS Enterprise Services Specification



The Enterprise Services specification is the definition of how systems manage the exchange of information that describes people, groups and memberships within the context of learning. The Enterprise Services specification is constructed following the recommendations documented in the IMS Abstract Framework. This means that this specification is based upon the concepts of:

 

  • Interoperability - Enterprise Services focuses on the exchange of information between Enterprise systems. There are no assumptions in the specification on how the data is managed within the Enterprise systems;
  • Service-oriented - Enterprise Services defines the exchange of information in terms of the services being supplied by the collaboration of the systems. This takes the form of Person Management Services, Group Management Services and Membership Management Services;
  • Component-based - the set of services will be supplied such that they can be combined to form a range of services. The Person Management Services, Group Management Services and Membership Management Services can be combined to provide other services and the Enterprise Service will have other services added to it in later releases;
  • Layering - the Enterprise Service and its constituent services (Person, Groups and Membership) are part of the Application Services layer; Behaviors and Data Models - the Enterprise Services are defined in terms of their behaviors and data models. The behaviors cause changes in the state of the data model and the state of the data model will only be altered as a result of a clearly defined behavior;
  • Multiple Bindings - the Enterprise Services information model is to be defined using the Unified Modelling Language (UML). This enables reliable mapping of the information model into a range of different bindings. The bindings of immediate importance are to the Web Services Description Language (WSDL);
  • Adoption - the Enterprise Services are based upon the original Enterprise specification data model. While there are significant changes the underlying data model has been maintained and the core Person, Group and Membership structures remain.

Version 1 was approved by the IMS Technical Advisory Board in July 2004. The Enterprise Services v1.0 specification Final Release has a WSDL/XSD binding that supports synchronous messaging only. The asynchronous message binding specification has remained as a Public Draft until sufficient implementation feedback has been received from the community. The asynchronous message binding documentation is available under the ESv1.0 Public Draft 2 materials further down this page.

Questions and Feedback:
Post errata, questions and comments to http://www.imsglobal.org/developers/ims/imsforum/categories.cfm?catid=20

IMS Enterprise Services - Version 1 Final Specification - HTML

Version 1 - Final Specification - PDF

Download the PDF documents

Version 1 Final -IMS Enterprise Specification XSDs

 

Enterprise Services Final Release XMI Files

Enterprise Services Final Release Source Code Support

Examples

Group

Message Example File
'createGroupRequest' Message
/examples/createGroupRequestSync.txt
'createGroupResponse' Message
/examples/createGroupResponseSync.txt
'createByProxyGroupRequest' Message
/examples/createByProxyGroupRequestSync.txt
'createByProxyGroupResponse' Message
/examples/createByProxyGroupResponseSync.txt
'deleteGroupRequest' Message
/examples/deleteGroupRequestSync.txt
'deleteGroupResponse' Message
/examples/deleteGroupResponseSync.txt
'deleteGroupRelationshipRequest' Message
/examples/deleteGroupRelationshipRequestSync.txt
'deleteGroupRelationshipResponse' Message
/examples/deleteGroupRelationshipResponseSync.txt
'readGroupRequest' Message
/examples/readGroupRequestSync.txt
'readGroupResponse' Message
/examples/readGroupResponseSync.txt
'updateGroupRequest' Message
/examples/updateGroupRequestSync.txt
'updateGroupResponse' Message
/examples/updateGroupResponseSync.txt
'replaceGroupRequest' Message
/examples/replaceGroupRequestSync.txt
'replaceGroupResponse' Message
/examples/replaceGroupResponseSync.txt
'changeGroupIdentifierRequest' Message
/examples/changeGroupIdentifierRequestSync.txt
'changeGroupIdentifierResponse' Message
/examples/changeGroupIdentifierResponseSync.txt
'createGroupsRequest' Message
/examples/createGroupsRequestSync.txt
'createGroupsResponse' Message
/examples/createGroupsResponseSync.txt
'createByProxyGroupsRequest' Message
/examples/createByProxyGroupsRequestSync.txt
'createByProxyGroupsResponse' Message
/examples/createByProxyGroupsResponseSync.txt
'deleteGroupsRequest' Message
/examples/deleteGroupsRequestSync.txt
'deleteGroupsResponse' Message
/examples/deleteGroupsResponseSync.txt
'deleteGroupsRelationshipRequest' Message
/examples/deleteGroupsRelationshipRequestSync.txt
'deleteGroupsRelationshipResponse' Message
/examples/deleteGroupsRelationshipResponseSync.txt
'readGroupsRequest' Message
/examples/readGroupsRequestSync.txt
'readGroupsResponse' Message
/examples/readGroupsResponseSync.txt
'readGroupsForPersonRequest' Message
/examples/readGroupsForPersonRequestSync.txt
'readGroupsForPersonResponse' Message
/examples/readGroupsForPersonResponseSync.txt
'updateGroupsRequest' Message
/examples/updateGroupsRequestSync.txt
'updateGroupsResponse' Message
/examples/updateGroupsResponseSync.txt
'replaceGroupsRequest' Message
/examples/replaceGroupsRequestSync.txt
'replaceGroupsResponse' Message
/examples/replaceGroupsResponseSync.txt
'changeGroupsIdentifierRequest' Message
/examples/changeGroupsIdentifierRequestSync.txt
'changeGroupsIdentifierResponse' Message
/examples/changeGroupsIdentifierResponseSync.txt

 

Person

Message Example File
'createPersonRequest' Message
/examples/createPersonRequestSync.txt
'createPersonResponse' Message
/examples/createPersonResponseSync.txt
'createByProxyPersonRequest' Message
/examples/createByProxyPersonRequestSync.txt
'createByProxyPersonResponse' Message
/examples/createByProxyPersonResponseSync.txt
'deletePersonRequest' Message
/examples/deletePersonRequestSync.txt
'deletePersonResponse' Message
/examples/deletePersonResponseSync.txt
'readPersonRequest' Message
/examples/readPersonRequestSync.txt
'readPersonResponse' Message
/examples/readPersonResponseSync.txt
'updatePersonRequest' Message
/examples/updatePersonRequestSync.txt
'updatePersonResponse' Message
/examples/updatePersonResponseSync.txt
'replacePersonRequest' Message
/examples/replacePersonRequestSync.txt
'replacePersonResponse' Message
/examples/replacePersonResponseSync.txt
'changePersonIdentifierRequest' Message
/examples/changePersonIdentifierRequestSync.txt
'changePersonIdentifierResponse' Message
/examples/changePersonIdentifierResponseSync.txt
'createPersonsRequest' Message
/examples/createPersonsRequestSync.txt
'createPersonsResponse' Message
/examples/createPersonsResponseSync.txt
'createByProxyPersonsRequest' Message
/examples/createByProxyPersonsRequestSync.txt
'createByProxyPersonsResponse' Message
/examples/createByProxyPersonsResponseSync.txt
'deletePersonsRequest' Message
/examples/deletePersonsRequestSync.txt
'deletePersonsResponse' Message
/examples/deletePersonsResponseSync.txt
'readPersonsRequest' Message
/examples/readPersonsRequestSync.txt
'readPersonsResponse' Message
/examples/readPersonsResponseSync.txt
'readPersonsForGroupRequest' Message
/examples/readPersonsForGroupRequestSync.txt
'readPersonsForGroupResponse' Message
/examples/readPersonsForGroupResponseSync.txt
'updatePersonsRequest' Message
/examples/updatePersonsRequestSync.txt
'updatePersonsResponse' Message
/examples/updatePersonsResponseSync.txt
'replacePersonsRequest' Message
/examples/replacePersonsRequestSync.txt
'replacePersonsResponse' Message
/examples/replacePersonsResponseSync.txt
'changePersonsIdentifierRequest' Message
/examples/changePersonsIdentifierRequestSync.txt
'changePersonsIdentifierResponse' Message
/examples/changePersonsIdentifierResponseSync.txt

Membership

Message Example File
'createMembershipRequest' Message
/examples/createMembershipRequestSync.txt
'createMembershipResponse' Message
/examples/createMembershipResponseSync.txt
'createByProxyMembershipRequest' Message
/examples/createByProxyMembershipRequestSync.txt
'createByProxyMembershipResponse' Message
/examples/createByProxyMembershipResponseSync.txt
'deleteMembershipRequest' Message
/examples/deleteMembershipRequestSync.txt
'deleteMembershipResponse' Message
/examples/deleteMembershipResponseSync.txt
'readMembershipRequest' Message
/examples/readMembershipRequestSync.txt
'readMembershipResponse' Message
/examples/readMembershipResponseSync.txt
'updateMembershipRequest' Message
/examples/updateMembershipRequestSync.txt
'updateMembershipResponse' Message
/examples/updateMembershipResponseSync.txt
'replaceMembershipRequest' Message
/examples/replaceMembershipRequestSync.txt
'replaceMembershipResponse' Message
/examples/replaceMembershipResponseSync.txt
'changeMembershipIdentifierRequest' Message
/examples/changeMembershipIdentifierRequestSync.txt
'changeMembershipIdentifierResponse' Message
/examples/changeMembershipIdentifierResponseSync.txt
'createMembershipsRequest' Message
/examples/createMembershipsRequestSync.txt
'createMembershipsResponse' Message
/examples/createMembershipsResponseSync.txt
'createByProxyMembershipsRequest' Message
/examples/createByProxyMembershipsRequestSync.txt
'createByProxyMembershipsResponse' Message
/examples/createByProxyMembershipsResponseSync.txt
'deleteMembershipsRequest' Message
/examples/deleteMembershipsRequestSync.txt
'deleteMembershipsResponse' Message
/examples/deleteMembershipsResponseSync.txt
'readMembershipsRequest' Message
/examples/readMembershipsRequestSync.txt
'readMembershipsResponse' Message
/examples/readMembershipsResponseSync.txt
'readMembershipsForPersonRequest' Message
/examples/readMembershipsForPersonRequestSync.txt
'readMembershipsForPersonResponse' Message
/examples/readMembershipsForPersonResponseSync.txt
'readMembershipsForGroupRequest' Message
/examples/readMembershipsForGroupRequestSync.txt
'readMembershipsForGroupResponse' Message
/examples/readMembershipsForGroupResponseSync.txt
'updateMembershipsRequest' Message
/examples/updateMembershipsRequestSync.txt
'updateMembershipsResponse' Message
/examples/updateMembershipsResponseSync.txt
'replaceMembershipsRequest' Message
/examples/replaceMembershipsRequestSync.txt
'replaceMembershipsResponse' Message
/examples/replaceMembershipsResponseSync.txt
'changeMembershipsIdentifierRequest' Message
/examples/changeMembershipsIdentifierRequestSync.txt
'changeMembershipsIdentifierResponse' Message
/examples/changeMembershipsIdentifierResponseSync.txt

 

 


IMS Enterprise Services Version 1 - Public Draft 2 Specification - HTML
Version 1.0 Public Draft 2 contains Asynchronous Binding Files. Only the Asynchronous Binding materials should be used from this document set.; you should us the Enterprise Services v1 Final Specification above for the Synchronous materials.

ESv1.0 Public Draft  2 Specification - PDF

Download the PDF documents

ESv1.0 Public Draft 2 -IMS Enterprise Specification Asynchronous XSDs

 

EXAMPLES
Change Group(s)Identifier