| IMS GLC Person Management Service WSDL/XSD Binding Version 2.0 Final Release Specification Final 1.0

Date Issued: 30 June 2011

Latest version: http://www.imsglobal.org/lis/

IPR and Distribution Notices

Recipients of this document are requested to submit, with their comments, notification of any relevant patent claims or other intellectual property rights of which they may be aware that might be infringed by any implementation of the specification set forth in this document, and to provide supporting documentation.

IMS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on IMS’s procedures with respect to rights in IMS specifications can be found at the IMS Intellectual Property Rights web page: http://www.imsglobal.org/ipr/imsipr_policyFinal.pdf.

Copyright © 2011 IMS Global Learning Consortium. All Rights Reserved.

Use of this specification to develop products or services is governed by the license with IMS found on the IMS website: http://www.imsglobal.org/license.html.

Permission is granted to all parties to use excerpts from this document as needed in producing requests for proposals.

The limited permissions granted above are perpetual and will not be revoked by IMS or its successors or assigns.

THIS SPECIFICATION IS BEING OFFERED WITHOUT ANY WARRANTY WHATSOEVER, AND IN PARTICULAR, ANY WARRANTY OF NONINFRINGEMENT IS EXPRESSLY DISCLAIMED. ANY USE OF THIS SPECIFICATION SHALL BE MADE ENTIRELY AT THE IMPLEMENTER'S OWN RISK, AND NEITHER THE CONSORTIUM, NOR ANY OF ITS MEMBERS OR SUBMITTERS, SHALL HAVE ANY LIABILITY WHATSOEVER TO ANY IMPLEMENTER OR THIRD PARTY FOR ANY DAMAGES OF ANY NATURE WHATSOEVER, DIRECTLY OR INDIRECTLY, ARISING FROM THE USE OF THIS SPECIFICATION.

top

# Table of Contents

1. Introduction

1. Scope and Context
2. Structure of this Document
3. Nomenclature
4. References

2. Platform Specific Model of the Binding
   1. Service Description
   2. Data for the Service Operations
   3. Person Data Model
   4. File-based Exchange Data Model
3. Application of the Binding Guidelines
4. WSDL File Documentation
   1. Overview
   2. Messages
5. XSD File Documentation
   1. Service Data Model
   2. File Data Model
6. Binding of the Vocabularies
7. Appendix A - Listing of the WSDLs
8. Appendix B - Listing of the XSDs
9. Appendix C - Vocabulary VDEX Instance File Listings
10. Appendix D - Example SOAP Messages
11. About This Document
12. Revision History

top

# 1. Introduction

This document is a part of the IMS GLC Person Management Service (PMS) v2.0 specification. The binding details how the Person Management Service Information Model is realised as a Web Service; in the form of a Web Services Description Language (WSDL) file. The PMS binding is contained in a set of WSDL, XSD and vocabulary files. The vocabulary files are instances of the IMS Vocabulary Definition Exchange specification [VDEX, 04a], [VDEX, 04b]. The IMS GLC Learning Information Services (LIS) Best Practice and Implementation Guide [LIS, 11b] provides non-normative guidance on how to use the Binding and Information Model. For a conceptual overview of the LIS Specification, please see the overall services description [LIS, 11a]. For a discussion of potential applications, see the Best Practice Guide.

## 1.1 Scope and Context

The IMS GLC PMS WSDL Binding v2.0 is used in conjunction with the following documents:

1. IMS GLC Person Management Service v2.0 Information Model v1.0 [PMS, 11] – the behaviour and data model definition of the Person Management Service;
2. IMS GLC Learning Information Services v2.0 Best Practice and Implementation Guide v1.0 [LIS, 11b] – key information on how to adopt and implement the specification.

As such the Person Management Services specification supersedes the original Enterprise Services specifications:

1. IMS GLC Person Management Services v1.0 Information Model Final Specification v1.0 [PMS, 04a];
2. IMS GLC Person Management Services v1.0 WSDL Binding Final Specification v1.0 [PMS, 04b].

This WSDL binding takes the Membership Management Service Information Model and produces an encoding of that description in WSDL. This WSDL binding is generated as recommended by the IMS GLC General Web Services documents [GWS, 06a], [GWS, 06b]. The WSDL is created using the IMC GLC Binding Auto-generation Tool-kit (I-BAT) [I-BAT, 06].

## 1.2 Structure of this Document

The structure of this document is:

2. Platform Specific Model of the Binding | The description platform specific models in the form of the IMS GLC UML-Profile service/data models representation of the IMS GLC PMS specification information model. This representation is used by the IMS GLC I-BAT tool to auto-generate the corresponding WSDL/XSDs;
3. Application of the Binding Guidelines | Explanation of how the platform specific model is realised as the WSDL/XSD binding. This addresses how the information model is realised as a Web Service;
4. WSDL File Documentation | The description of the Web Services used to realise the service model components of the binding. This part of the binding document was created using the schema documentation tool provided as part of the Oxygen 12.2 product;
5. XSD File Documentation | The description of the elements used within the data model components of the binding. This part of the binding document was created using the schema documentation tool provided as part of the Oxygen 12.2 product;
6. Binding of the Vocabularies | Contains the description of how the set of external vocabulary files realised as VDEX files;
Appendix A - Listing of the WSDL Files | This is the full listing of the PMS WSDL files;
Appendix B - Listing of the XSD Files | This is the full listing of the PMS XSD files;
Appendix C - Vocabulary VDEX Instance File Listings | This is the full listing of the set of external vocabulary VDEX instance files;
Appendix D - Examples SOAP Messages | Examples of the SOAP messages that are exchanged to realise the service.

## 1.3 Nomenclature

HTTP | HyperText Transfer Protocol
I-BAT | IMS GLC Binding Auto-generation Tool-kit
IMS GLC | IMS Global Learning Consortium
LIS | Learning Information Services
MDA | Model Driven Architecture
PIM | Protocol Independent Model
PMS | Person Management Service
PSM | Platform Specific Model
UML | Unified Modelling Language
VDEX | Vocabulary Definition Exchange
W3C | World Wide Web Consortium
WSDL | Wed Services Description Language
XMI | XML Meta-data Interchange
XML | Extensible Mark-up Language
XSD | XML Schema Definition
XSL | Extensible Stylesheet Language
XSLT | XSL Transformations

## 1.4 References

[GWS, 06a] | IMS GLC General Web Services Base Profile Specification Final Release v1.0, C.Schroeder, J.Simon and C.Smythe, IMS Global Learning Consortium, January 2006.
[GWS, 06b] | IMS GLC General Web Services WSDL Binding Guidelines Final Release v1.0, C.Schroeder, J.Simon and C.Smythe, IMS Global Learning Consortium, January 2006.
[I-BAT, 06] | IMS Binding Auto-generation Toolkit Manual v1.0, C.Smythe, IMS Global Learning Consortium, July 2006.
[LIS, 11a] | IMS GLC Learning Information Services v2.0 Specification Final Release v1.0, L.Feng, B.Lee and C.Smythe, IMS Global Learning Consortium, June 2011.
[LIS, 11b] | IMS GLC Learning Information Services v2.0 Best Practice and Implementation Guide Final Release v1.0, L.Feng, B.Lee and C.Smythe, IMS Global Learning Consortium, June 2011.
[PMS, 04a] | IMS GLC Person Management Services Information Model Specification Final Release v1.0, C.Vento and C.Smythe, IMS Global Learning Consortium, June 2004.
[PMS, 04b] | IMS GLC Person Management Services WSDL Binding Specification Final Release v1.0, C.Vento and C.Smythe, IMS Global Learning Consortium, June 2004.
[PMS, 11] | IMS GLC Person Management Services v2.0 Information Model Specification Final Release v1.0, L.Feng, B.Lee and C.Smythe, IMS Global Learning Consortium, June 2011.
[SDN11, 06] | IMS GLC Specification Note 11: Vocabulary Definition, Registration & Maintenance Procedures, C.Smythe, IMS Global Learning Consortium, October 2006.
[VDEX, 04a] | IMS Vocabulary Definition Exchange Information Model Specification Final Release v1.0, A.Cooper, IMS Global Learning Consortium, February 2004.
[VDEX, 04b] | IMS Vocabulary Definition Exchange XML Binding Specification Final Release v1.0, A.Cooper, IMS Global Learning Consortium, February 2004.

top | toc

# 2. Platform Specific Model of the Binding

## 2.1 Service Description

Figure 2.1 is the PSM of the service group model description for the PMS. This information is used to establish the mapping to the binding flavors of WSDL.

Figure 2.1 The PSM representation of the service group model description for the GMS.

Figure 2.2 is the PSM of the service model description for the GMS. The PSM is derived from the Platform Independent Model that was documented within the information model for the PMS specification [PMS, 10].

Figure 2.2 The PSM representation of the service model description for the PMS.

## 2.2 Data for the Service Operations

The data model for the service operations is shown in Figure 2.3 and 2.4. Figure 2.3 shows the data models for the set of parameters. Figure 2.4 is the data model for the Status Information and other WSDL-specific binding data structures.

Figure 2.3 The PSM representation of the parameters data model description for the PMS.

Figure 2.4 The PSM representation of the status information data model description for the PMS.

## 2.3 Person Data Model

The PSM for the Person data models are shown in Figures 2.5, 2.6, 2.7, 2.8, 2.9, 2.10, 2.11, 2.12 and 2.13. Figure 2.5 is the Person data model, Figure 2.6 the FormName data model, Figure 2.7 is the NAme data model, Figure 2.8 is the Address data model, Figure 2.9 is the ContactInfo data model, Figure 2.10 is the Demographics data model, Figure 2.11 is the Enterprise Roles data model, Figure 2.12 is the Agent data model and Figure 2.13 contains the set of common data model classes.

Figure 2.5 The PSM representation of the Person data model description for the PMS.

Figure 2.6 The PSM representation of the Address, Agent, ContactInfo and Names data model description for the PMS.

Figure 2.7 The PSM representation of the Demographics data model description for the PMS.

Figure 2.8 The PSM representation of the Enterprise Roles data model description for the PMS.

Figure 2.9 The PSM representation of the common data models description for the PMS.

## 2.4 File-based Data Exchange Data Model

The PSM for the file-based Person data models are shown in Figures 2.10, 2.11, 2.12, 2.13 and 2.14.

Figure 2.10 The PSM representation of the PersonRecord data model description for file storage in the PMS.

Figure 2.11 The PSM representation of the Address, Agent, ContactInfo, Names data model description for file storage in the PMS

Figure 2.12 The PSM representation of the Demographics data model description for file storage in the PMS

Figure 2.13 The PSM representation of the Enterprise Roles data model description for file storage in the PMS

Figure 2.14 The PSM representation of the common data model descriptions for file storage in the PMS.

top | toc

# 3. Application of the Binding Guidelines

The WSDL/XSD bindings have been generated using the methodology documented in [GWS 06a] and [GWS, 06b]. Only the synchronous service binding has been created. The binding files are available in two forms:

- A single combined WSDL/XSD – PersonManagementServiceSyncSingle.wsdl;
- Separated WSDL and XSD files – PersonManagementServiceSyncWSDL.wsdl and PersonManagementServiceSyncXSD.xsd respectively.

It is recommended that only the combined form is used (many WSDL-based code generation tools do not process the 'import' instructions).

The mapping between the PIM and PSM descriptions is detailed in Table 3.1.

Table 3.1 Mapping between the PIM, PSM and XSD descriptions for the data models.

PSM Reference | PIM Reference | XSD Reference
--- | --- | ---
Name | UML Type | Figure | Type | Table | Name | Type
PersonRecordSet | Class | 2.5 | – | – | PersonRecordSet.Type | ComplexType
personRecord | Attribute | 2.5 | PersonRecord | 5.3 | personRecord | Element
PersonRecord | Class | 2.5 | – | 5.4 | GroupRecord.Type | ComplexType
sourcedGUID | Attribute | 2.5 | GUID | 5.5 | sourcedGUID | Element
person | Attribute | 2.5 | Person | – | person | Element
SourcedGUID | Class | 2.5 | TBD. | 5.6 | SourcedGUID.Type | ComplexType
refAgentInstanceId | Attribute | 2.5 | NormalizedString | 5.7 | refAgentInstanceId | Element
sourcedId | Attribute | 2.5 | SourcedId | 5.8 | sourcedId | Element
Person | Class | 2.5 | – | 5.9 | Person.Type | ComplexType
formname | Attribute | 2.5 | FormName | 5.10 | formname | Element
name | Attribute | 2.5 | Name | 5.11 | name | Element
address | Attribute | 2.5 | Address | 5.12 | address | Element
contactinfo | Attribute | 2.5 | ContactInfo | 5.13 | contactinfo | Element
demographics | Attribute | 2.5 | Demographics | 5.14 | demographics | Element
agent | Attribute | 2.5 | Agent | 5.15 | agent | Element
roles | Attribute | 2.5 | EnterpriseRoles | 5.16 | roles | Element
dataSource | Attribute | 2.5 | GUID | 5.17 | dataSource | Element
extension | Attribute | 2.5 | IMSExtension | 5.18 | extension | Element
FormName | Class | 2.6 | – | 5.19 | FormName.Type | ComplexType
formnameType | Attribute | 2.6 | BaseValueToken | 5.20 | formnameType | Element
formattedName | Attribute | 2.6 | Text | 5.21 | formattedName | Element
Name | Class | 2.6 | – | 5.22 | Name.Type | ComplexType
nameType | Attribute | 2.6 | BaseValueToken | 5.23 | nameType | Element
partName | Attribute | 2.6 | BaseValueSingle | 5.24 | partName | Element
Address | Class | 2.6 | – | 5.25 | Address.Type | ComplexType
addressType | Attribute | 2.6 | BaseValueToken | 5.26 | addressType | Element
addressPart | Attribute | 2.6 | BaseValueMultiple | 5.27 | addressPart | Element
ContactInfo | Class | 2.6 | – | 5.28 | ContactInfo.Type | ComplexType
contactinfoType | Attribute | 2.6 | BaseValueToken | 5.29 | contactinfoType | Element
contactinfoValue | Attribute | 2.6 | Text | 5.30 | contactinfoValue | Element
Demographics | Class | 2.7 | – | 5.31 | Demographics.Type | ComplexType
demographicsType | Attribute | 2.7 | BaseValueToken | 5.32 | demographicsType | Element
representation | Attribute | 2.7 | Representation | 5.33 | representation | Element
eventDate | Attribute | 2.7 | BaseValueToken | 5.34 | eventDate | Element
gender | Attribute | 2.7 | Enumerated | 5.35 | gender | Element
demographicsInfo | Attribute | 2.7 | BaseValueSingle | 5.36 | demographicsinfo | Element
Representation | Class | 2.7 | – | 5.37 | Representation.Type | ComplexType
representationType | Attribute | 2.7 | BaseValueToken | 5.38 | representationType | Element
date | Attribute | 2.7 | Date | 5.39 | date | Element
description | Attribute | 2.7 | Description | 5.40 | description | Element
Agent | Class | 2.6 | – | 5.41 | Agent.Type | ComplexType
agentType | Attribute | 2.6 | BaseValueToken | 5.42 | agentType | Element
agentId | Attribute | 2.6 | Text | 5.43 | agentId | Element
agentDoman | Attribute | 2.6 | Text | 5.44 | agentDomain | Element
description | Attribute | 2.6 | Description | 5.45 | description | Element
EnterpriseRoles | Class | 2.8 | – | 5.46 | EnterpriseRoles.Type | ComplexType
enterpriserolesType | Attribute | 2.8 | BaseValueToken | 5.47 | enterpriserolesType | Element
systemRole | Attribute | 2.8 | BaseValueSingle | 5.48 | systemRole | Element
institutionRole | Attribute | 2.8 | InstitutionRole | 5.49 | institutionRole | Element
enrollment | Attribute | 2.8 | BaseValueSingle | 5.50 | enrollment | Element
userId | Attribute | 2.8 | UserId | 5.51 | userId | Element
UserId | Class | 2.8 | – | 5.52 | UserId.Type | ComplexType
userIdValue | Attribute | 2.8 | Text | 5.53 | userIdValue | Element
userIdType | Attribute | 2.8 | Text | 5.54 | userIdType | Element
password | Attribute | 2.8 | Text | 5.55 | password | Element
pwEncryption | Attribute | 2.8 | Text | 5.56 | pwEncryption | Element
authenticationType | Attribute | 2.8 | Text | 5.57 | authenticationType | Element
InstitutionRole | Class | 2.8 | – | 5.58 | InstitiutionRole.Type | ComplexType
institutionroletype | Attribute | 2.8 | BaseValueToken | 5.59 | institutionroletype | Element
primaryroletype | Attribute | 2.8 | Boolean | 5.60 | primaryroletype | Element
BaseValueToken | Class | 2.9 | – | 5.61 | BaseValueToken.Type | ComplexType
instanceIdentifier | Attribute | 2.9 | Text | 5.62 | instanceIdentifier | Element
instanceVocabulary | Attribute | 2.9 | AnyURI | 5.63 | instanceVocabulary | Element
instanceValue | Attribute | 2.9 | Text | 5.64 | instanceValue | Element
BaseValueSingle | Class | 2.9 | – | 5.65 | BaseValueSingle.Type | ComplexType
instanceIdentifier | Attribute | 2.9 | Text | 5.66 | instanceIdentifier | Element
instanceVocabulary | Attribute | 2.9 | AnyURI | 5.67 | instanceVocabulary | Element
instanceName | Attribute | 2.9 | Text | 5.68 | instanceName | Element
instanceValue | Attribute | 2.9 | Text | 5.69 | instanceValue | Element
Description | Class | 2.9 | – | 5.70 | Description.Type | ComplexType
shortDescription | Attribute | 2.9 | Text | 5.71 | shortDescription | Element
longDescription | Attribute | 2.9 | Text | 5.72 | longDescription | Element
fullDescription | Attribute | 2.9 | FullDescription | 5.73 | fullDescription | Element
FullDescription | Class | 2.9 | – | 5.74 | FullDescription.Type | ComplexType
mediamode | Attribute | 2.9 | Enumerated | 5.75 | mediamode | Element
contentRefType | Attribute | 2.9 | Enumerated | 5.76 | contentRefType | Element
mimeType | Attribute | 2.9 | NormalizedString | 5.77 | mimeType | Element
descriptionText | Attribute | 2.9 | Text | 5.78 | descriptionText | Element
Text | Class | 2.9 | – | 5.79 | Text.Type | ComplexType
language | Attribute | 2.9 | NormalizedString | 5.80 | language | Element
textString | Attribute | 2.9 | String | 5.81 | textString | Element
IMSExtension | Class | 2.9 | – | 5.82 | IMSExtension.Type | ComplexType
extensionNameVocabulary | Attribute | 2.9 | AnyURI | 5.83 | extensionNameVocabulary | Element
extensionTypeVocabulary | Attribute | 2.9 | AnyURI | 5.84 | extensionTypeVocabulary | Element
extensionField | Attribute | 2.9 | ExtensionField | 5.85 | extensionField | Element
ExtensionField | Class | 2.9 | – | 5.86 | ExtensionField.Type | ComplexType
fieldName | Attribute | 2.9 | NormalizedString | 5.87 | fieldName | Element
fieldType | Attribute | 2.9 | NormalizedString | 5.88 | fieldType | Element
fieldValue | Attribute | 2.9 | NormalizedString | 5.89 | fieldValue | Element
imsx_StatusInfo | Class | 2.4 | – | See IMS GWSv1.0 | imsx_StatusInfo.Type | ComplexType
imsx_codeMajor | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_codeMajor | Element
imsx_severity | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_severity | Element
imsx_messageRefIdentifier | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_messageRefIdentifier | Element
imsx_operationRefIdentifier | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_operationRefIdentifier | Element
imsx_description | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_description | Element
imsx_codeMinor | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_codeMinor | Element
imsx_CodeMinor | Class | 2.4 | – | See IMS GWSv1.0 | imsx_CodeMinor.Type | ComplexType
imsx_codeMinorField | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_codeMinorField | Element
imsx_CodeMinorField | Class | 2.4 | – | See IMS GWSv1.0 | imsx_CodeMinorField.Type | ComplexType
imsx_codeMinorFieldName | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_codeMinorFieldName | Element
imsx_codeMinorFieldValue | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_codeMinorFieldValue | Element
imsx_StatusBinding | Class | 2.4 | – | See IMS GWSv1.0 | imsx_StatusBinding.Type | ComplexType
imsx_syncRequestHeaderInfo | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_syncRequestHeaderInfo | Element
imsx_syncResponseHeaderInfo | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_syncResponseHeaderInfo | Element
imsx_RequestHeaderInfo | Class | 2.4 | – | See IMS GWSv1.0 | imsx_RequestHeaderInfo.Type | ComplexType
imsx_version | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_version | Element
imsx_messageIdentifier | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_messageIdentifier | Element
imsx_ResponseHeaderInfo | Class | 2.4 | – | See IMS GWSv1.0 | imsx_ResponseHeaderInfo.Type | ComplexType
imsx_version | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_version | Element
imsx_messageIdentifier | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_messageIdentifier | Element
imsx_statusInfo | Attribute | 2.4 | n/a | See IMS GWSv1.0 | imsx_statusInfo | Element

Key:

1. The 'PSM Reference' field refers to information in the PSM description (Section 2 in this document). The sub-fields are:
   1. Name – the name of the data structure in the PSM and PIM
   2. UML Type – the type of UML construct i.e. either Class or Attribute
   3. Figure – the reference Figure number in this document;
2. The 'PIM Reference' field refers to infomation in the PMS Information Model [PMS, 11]. The sub-fields are:
   1. Type – the type of the data structure in the Information Model
   2. Table – the reference number of Tabular description in the corresponding Information Model document;
3. The 'XSD Reference' field refers to infrmation in the XSD descriptions (Section 5 in this document). The sub-fields are:
   1. Name – the name of the field in the XSD(s)
   2. Type – the type of XSD construct i.e. either a ComplexType or Element.

top | toc

# 4. WSDL File Documentation

WSDL file: "PersonManagementServiceSyncSingle.wsdl"

Target namespace: http://www.imsglobal.org/services/lis/pms2p0/wsdl11/sync/imspms_v2p0

### 4.1 Overview

Services
PersonManagementServiceSyncService
Bindings
PersonManagerSyncSoapBinding
Port types
PersonManagerSyncPortType
Messages
createPersonRequest, createPersonResponse, createByProxyPersonRequest, createByProxyPersonResponse, deletePersonRequest, deletePersonResponse, readPersonRequest, readPersonResponse, readPersonCoreRequest, readPersonCoreResponse, readAllPersonIdsRequest, readAllPersonIdsResponse, readPersonIdsFromSavePointRequest, readPersonIdsFromSavePointResponse, readPersonsRequest, readPersonsResponse, readPersonsFromSavePointRequest, readPersonsFromSavePointResponse, updatePersonRequest, updatePersonResponse, replacePersonRequest, replacePersonResponse, discoverPersonIdsRequest, discoverPersonIdsResponse, changePersonIdentifierRequest, changePersonIdentifierResponse,

WSDL Definition
Name | Documentation
--- | ---
PersonManagementServiceSyncServices | ### WSDLv1.1 File Information Services: PersonManagementService (Synchronous Communications) Author: Colin Smythe Date: 30 June 2011 Version: Final 1.0 Status: Final Release Description: The Person Management Service. This forms a part of the IMS GLC Learning Informaton Services v2.0 Specification. History: Release 1.0: This is the first formal release of version 2.0 of this service. This version supercedes v1.0. This is an integration of the Person Service from the Learning Information Services and the 'identification' data model from the IMS GLC Learner Information Package v1.0 specification. WSDL Binding: WSDL Binding is based upon the IMS GLC General Web Services Base Profile v1.0 The IMS GLC GWS Basic Profile is derived from the WS-I Basic Profile v1.1. This profile uses: WSDL 1.1, SOAP 1.1, HTTP 1.1 and XML 1.0. Extension profiles to the IMS GLC GWS Base Profile are available but are not supported using this tool version. License: IPR, License and Distribution Notices This machine readable file is derived from IMS Global Learning Consortium (GLC) specification IMS GLC Person Management ServiceVersion 2.0 found at http://www.imsglobal.org/lis/pmsv2p0/imspmsv2p0_InfoFinalv1.pdf and the original IMS GLC schema binding or code base http://www.imsglobal.org/lis/pmsv2p0/imspmsv2p0_BindFinalv1p0.html. Recipients of this document are requested to submit, with their comments, notification of any relevant patent claims or other intellectual property rights of which they may be aware that might be infringed by the schema binding contained in this document. IMS GLC takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on IMS GLCs procedures with respect to rights in IMS GLC specifications can be found at the IMS GLC Intellectual Property Rights web page: http://www.imsglobal.org/ipr/imsipr_policyFinal.pdf. Copyright © IMS Global Learning Consortium 1999-2011. All Rights Reserved. ### License Notice for Users Users of products or services that include this document are hereby granted a worldwide, royalty-free, non-exclusive license to use this document. ### Distribution Notice for Developers Developers of products or services that are not original incorporators of this document and have not changed this document, that is, are distributing a software product that incorporates this document as is from a third-party source other than IMS, are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof. Developers of products or services that are original incorporators of this document and wish to provide distribution of this document as is or with modifications and developers of products and services that are not original incorporators of this document and have changed this document, are required to register with the IMS GLC community on the IMS GLC website as described in the following two paragraphs:- If you wish to distribute this document as is, with no modifications, you are hereby granted permission to copy, display and distribute the contents of this document in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid license registration with IMS and receive an email from IMS granting the license. To register, follow the instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm. Once registered you are granted permission to transfer unlimited distribution rights of this document for the purposes of third-party or other distribution of your product or service that incorporates this document as long as this IPR, License and Distribution notice remains in place in its entirety; If you wish to create and distribute a derived work from this document, you are hereby granted permission to copy, display and distribute the contents of the derived work in any medium for any purpose without fee or royalty provided that you include this IPR, License and Distribution notice in its entirety on ALL copies, or portions thereof, that you make and you complete a valid profile registration with IMS GLC and receive an email from IMS GLC granting the license. To register, follow the instructions on the IMS GLC website: http://www.imsglobal.org/profile/. Once registered you are granted permission to transfer unlimited distribution rights of the derived work for the purposes of third-party or other distribution of your product or service that incorporates the derived work as long as this IPR, License and Distribution notice remains in place in its entirety. The limited permissions granted above are perpetual and will not be revoked by IMS GLC or its successors or assigns. THIS SPECIFICATION IS BEING OFFERED WITHOUT ANY WARRANTY WHATSOEVER, AND IN PARTICULAR, ANY WARRANTY OF NONINFRINGEMENT IS EXPRESSLY DISCLAIMED. ANY USE OF THIS SPECIFICATION SHALL BE MADE ENTIRELY AT THE IMPLEMENTERS OWN RISK, AND NEITHER THE CONSORTIUM NOR ANY OF ITS MEMBERS OR SUBMITTERS, SHALL HAVE ANY LIABILITY WHATSOEVER TO ANY IMPLEMENTER OR THIRD PARTY FOR ANY DAMAGES OF ANY NATURE WHATSOEVER, DIRECTLY OR INDIRECTLY, ARISING FROM THE USE OF THIS SPECIFICATION. ### UML Source File Information Choreography: Sync Transport: SOAPv1.1 ### Source UML File Information The source file information must be supplied as an XMI file (without diagram layout information). The supported UML authoring tools are: (a) Poseidon – v6 (and later) ### Source XSLT File Information XSL Generator: UMLtoWSDLv1.1Transformv0p9p5.xsl XSLT Processor: Xalan Release: 1.0 Beta 4 Date: 31st March, 2011 ### IMS GLC Auto-generation Binding Tool-kit (I-BAT) This file was auto-generated using the IMS GLC Binding Auto-generation Tool-kit (I-BAT). While every attempt has been made to ensure that this tool auto-generates the files correctly, users should be aware that this is an experimental tool. Permission is given to make use of this tool. IMS GLC makes no claim on the materials created by third party users of this tool. Details on how to use this tool are contained in the IMS GLC "I-BAT" Documentation available at the IMS GLC web-site. Tool Copyright: 2005-2011 (c) IMS Global Learning Consortium Inc. All Rights Reserved.

Services
Name | Documentation
--- | ---
PersonManagementServiceSyncService |
### Service Information Author: Colin Smythe Date: 30 June 2011 Version: Final 1.0 Status: Final Release Description: The Person Management Service is composed of a single interface. The PMSv2.0 is one of the component services in the IMS LISv2.0. History: Version 1.0: This is the first formal release of this service.

Service : PersonManagementServiceSyncService
Port Name | Binding | Address Extensibility | Documentation
--- | --- | --- | ---
PersonManagerSyncSoapPort | PersonManagerSyncSoapBinding | `<soap11:address location="http://www.imsglobal.org/lis/pms2p0/PersonManagerSyncSoap/"/>` |
N/A

Binding : PersonManagerSyncSoapBinding
Port Type | PersonManagerSyncPortType
Extensibility | `<soap11:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>`
Operations | createPerson, createByProxyPerson, deletePerson, readPerson, readPersonCore, readAllPersonIds, readPersonIdsFromSavePoint, readPersons, readPersonsFromSavePoint, updatePerson, replacePerson, discoverPersonIds, changePersonIdentifier,

Port Type : PersonManagerSyncPortType
Operation Name | Input message | Output message | Documentation
--- | --- | --- | ---
createPerson | createPersonRequest | createPersonResponse |
When the source issues the 'createPerson' request the target is instructed to create the populated Person object and to allocate that structure to the 'sourcedId' passed by the source. If the supplied 'sourcedId' has already been allocated to another object then the request is rejected and the appropriate failure code is returned. The save-point identifier is set to 'zero' for the Person object in both the source and target.
createByProxyPerson | createByProxyPersonRequest | createByProxyPersonResponse |
When the source issues the 'createByProxyPerson' request the target is instructed to create the populated Person object and to allocate a unique 'identifier'. The save-point identifier is set to 'zero' for the 'person' object in both the source and target.
deletePerson | deletePersonRequest | deletePersonResponse | When the source issues the 'deletePerson' request the target is instructed to delete the identified Person object and to remove the reference to the Person from any of the related Membership objects. This is a hard cascaded delete from which there is no recovery. If the object identified by the supplied 'sourcedId' cannot be located then the request is rejected and the appropriate failure code is returned.
readPerson | readPersonRequest | readPersonResponse | When the source issues the 'readPerson' request the target is charged with retrieving the identified record from its database and returning this data to the source. The target is responsible for ensuring that the record contains valid data. If the object identified by the supplied 'sourcedId' cannot be located then the request is rejected and the appropriate failure code is returned.
readPersonCore | readPersonCoreRequest | readPersonCoreResponse | When the source issues the 'readCorePerson' request the target is charged with retrieving the mandatory core data structures for the identified record from its database and returning this data to the source. The target is responsible for ensuring that the record contains valid data. If the object identified by the supplied 'sourcedId' cannot be located then the request is rejected and the appropriate failure code is returned. IIf any mandatory field is missing then the status returned is 'incompletedata'.
readAllPersonIds | readAllPersonIdsRequest | readAllPersonIdsResponse | When the source issues the 'readAllPersonIds' the target returns the set of sourcedIds that have been allocated to Person objects.
readPersonIdsFromSavePoint | readPersonIdsFromSavePointRequest | readPersonIdsFromSavePointResponse | When the source issues the 'readGroupIdsFromSavePoint' the target returns the set of SourcedIds that have been altered from the defined reference point, supplied by the source, to the latest reference point identified in the target. If the reference counter in the source is greater than that in the target then an error code is returned along with the target value for the reference point.
readPersons | readPersonsRequest | readPersonsResponse | When the source issues the 'readPersons' request the target is charged with retrieving the identified set of objects from its database. The associated read savePoint reference is updated and returned. If the object identified by the supplied SourcedId cannot be located then the request is rejected and a partial success code is returned for the operation. The target is responsible for ensuring that the records contain valid data. The target should attempt to successfully complete as much of the request as possible.
readPersonsFromSavePoint | readPersonsFromSavePointRequest | readPersonsFromSavePointResponse | When the source issues the readPersonsFromSavePoint' request the target is charged with reading the objects that have been altered from the defined reference point. If the reference counter in the source is greater than that in the target then an empty data file is returned and the target value for the reference point is returned.
updatePerson | updatePersonRequest | updatePersonResponse | When the source issues the 'updatePerson' request the target is charged with writing the supplied information into the identified object. If any part of the write fails e.g. due to partial invalid data then the whole request is rejected and the record is left in its original state. This is an additive write operation of all the data fields supplied in the update request and fields not supplied remain unchanged. If a field is constrained with a multiplicity of one the 'updatePerson' request acts as a 'replacePerson' request for that field. If the object identified by the supplied 'SourcedId' cannot be located then the request is rejected and the appropriate failure code is returned. The reference pointer for the object is incremented in the target system.
replacePerson | replacePersonRequest | replacePersonResponse | When the source issues the 'replacePerson' request the target is charged with writing the supplied information into the identified record. If any part of the write fails e.g. due to partial invalid data then the whole request is rejected and the record is left in its original state. This is a destructive write-over operation of the entire 'person' object. This is equivalent to a 'createPerson' but for an object that already exists. If the object identified by the supplied SourcedId cannot be located then the request is interpreted as a 'createPerson' invocation. The reference pointer for the object is incremented in the target system.
discoverPersonIds | discoverPersonIdsRequest | discoverPersonIdsResponse | When the source issues the 'discoverPersonIds' the target applies the query/filter instructions to the set of Person objects and returns the set of sourcedIds that uphold the query. If no Person objects have the required properties the returned data set is empty and the success status code returned. If the target does not understand or cannot apply the requested query/filter then an error status is returned.
changePersonIdentifier | changePersonIdentifierRequest | changePersonIdentifierResponse |
When the source issues the 'changePersonIdentifier' request the target is charged with replacing the original 'sourcedId' with the new supplied 'sourcedId'. All membership entries must be similarly changed. All further references to the object must use the new 'sourcedId' otherwise an 'unknown' object failure status code is returned. If the object identified by the supplied 'SourcedId' cannot be located then the request is rejected and the appropriate failure code is returned.

## 4.2 Messages

### createByProxyPersonRequest

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Parameters | tns:createPersonRequest | N/A |
N/A
HeaderInfoParameters | tns:imsx_syncRequestHeaderInfo | N/A |
N/A

### createPersonResponse

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Response | tns:createPersonResponse | N/A |
N/A
HeaderInfoResponse | tns:imsx_syncResponseHeaderInfo | N/A |
N/A

### createByProxyPersonRequest

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Parameters | tns:createByProxyPersonRequest | N/A |
N/A
HeaderInfoParameters | tns:imsx_syncRequestHeaderInfo | N/A |
N/A

### createByProxyPersonResponse

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Response | tns:createByProxyPersonResponse | N/A |
N/A
HeaderInfoResponse | tns:imsx_syncResponseHeaderInfo | N/A |
N/A

### deletePersonRequest

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Parameters | tns:deletePersonRequest | N/A |
N/A
HeaderInfoParameters | tns:imsx_syncRequestHeaderInfo | N/A |
N/A

### deletePersonResponse

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Response | tns:deletePersonResponse | N/A |
N/A
HeaderInfoResponse | tns:imsx_syncResponseHeaderInfo | N/A |
N/A

### readPersonRequest

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Parameters | tns:readPersonRequest | N/A |
N/A
HeaderInfoParameters | tns:imsx_syncRequestHeaderInfo | N/A |
N/A

### readPersonResponse

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Response | tns:readPersonResponse | N/A |
N/A
HeaderInfoResponse | tns:imsx_syncResponseHeaderInfo | N/A |
N/A

### readPersonCoreRequest

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Parameters | tns:readPersonCoreRequest | N/A |
N/A
HeaderInfoParameters | tns:imsx_syncRequestHeaderInfo | N/A |
N/A

### readPersonCoreResponse

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Response | tns:readPersonCoreResponse | N/A |
N/A
HeaderInfoResponse | tns:imsx_syncResponseHeaderInfo | N/A |
N/A

### readAllPersonIdsRequest

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Parameters | tns:readAllPersonIdsRequest | N/A |
N/A
HeaderInfoParameters | tns:imsx_syncRequestHeaderInfo | N/A |
N/A

### readAllPersonIdsResponse

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Response | tns:readAllPersonIdsResponse | N/A |
N/A
HeaderInfoResponse | tns:imsx_syncResponseHeaderInfo | N/A |
N/A

### readPersonIdsFromSavePointRequest

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Parameters | tns:readPersonIdsFromSavePointRequest | N/A |
N/A
HeaderInfoParameters | tns:imsx_syncRequestHeaderInfo | N/A |
N/A

### readPersonIdsFromSavePointResponse

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Response | tns:readPersonIdsFromSavePointResponse | N/A |
N/A
HeaderInfoResponse | tns:imsx_syncResponseHeaderInfo | N/A |
N/A

### readPersonsRequest

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Parameters | tns:readPersonsRequest | N/A |
N/A
HeaderInfoParameters | tns:imsx_syncRequestHeaderInfo | N/A |
N/A

### readPersonsResponse

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Response | tns:readPersonsResponse | N/A |
N/A
HeaderInfoResponse | tns:imsx_syncResponseHeaderInfo | N/A |
N/A

### readPersonsFromSavePointRequest

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Parameters | tns:readPersonsFromSavePointRequest | N/A |
N/A
HeaderInfoParameters | tns:imsx_syncRequestHeaderInfo | N/A |
N/A

### readPersonsFromSavePointResponse

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Response | tns:readPersonsFromSavePointResponse | N/A |
N/A
HeaderInfoResponse | tns:imsx_syncResponseHeaderInfo | N/A |
N/A

### updatePersonRequest

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Parameters | tns:updatePersonRequest | N/A |
N/A
HeaderInfoParameters | tns:imsx_syncRequestHeaderInfo | N/A |
N/A

### updatePersonResponse

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Response | tns:updatePersonResponse | N/A |
N/A
HeaderInfoResponse | tns:imsx_syncResponseHeaderInfo | N/A |
N/A

### replacePersonRequest

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Parameters | tns:replacePersonRequest | N/A |
N/A
HeaderInfoParameters | tns:imsx_syncRequestHeaderInfo | N/A |
N/A

### replacePersonResponse

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Response | tns:replacePersonResponse | N/A |
N/A
HeaderInfoResponse | tns:imsx_syncResponseHeaderInfo | N/A |
N/A

### discoverPersonIdsRequest

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Parameters | tns:discoverPersonIdsRequest | N/A |
N/A
HeaderInfoParameters | tns:imsx_syncRequestHeaderInfo | N/A |
N/A

### discoverPersonIdsResponse

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Response | tns:discoverPersonIdsResponse | N/A |
N/A
HeaderInfoResponse | tns:imsx_syncResponseHeaderInfo | N/A |
N/A

### changePersonIdentifierRequest

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Parameters | tns:changePersonIdentifierRequest | N/A |
N/A
HeaderInfoParameters | tns:imsx_syncRequestHeaderInfo | N/A |
N/A

### changePersonIdentifierResponse

Part Name | Element | Type | Documentation
--- | --- | --- | ---
Response | tns:changePersonIdentifierResponse | N/A |
N/A
HeaderInfoResponse | tns:imsx_syncResponseHeaderInfo | N/A |
N/A

top | toc

# 5. XSD File Documentation

The XSD file documentation has been produced by the Oxygen XML Editing tool.

## 5.1 Service Data Model

Click on the Section header to access this documentation for the data models in the service description.

## 5.2 File Data Model

Click on the Section header to access this documentation for the data models used in the BDEMS-based file data exchange.

top | toc

# 6. Binding of the Vocabularies

The vocabularies in the PMS are:

- The type of formatted name vocabulary – the set of values for the type of formatted name. The PSM is shown in Figure 6.1;
- The type of name vocabulary – the set of values for the type of name. The PSM is shown in Figure 6.2;
- The type of name part-name vocabulary – the set of values for the allowed name parts. The PSM is shown in Figures 6.3a and 6.3b;
- The type of address vocabulary – the set of values for the type of address. The PSM is shown in Figures 6.4a and 6.4b;
- The address part vocabulary – the set of values for the allowed address parts. The PSM is shown in Figures 6.5a, 6.5b and 6.5c;
- The type of contact information vocabulary – the set of values for the type of contact information. The PSM is shown in Figures 6.6a, 6.6b, 6.6c and 6.6d;
- The type of demographics vocabulary – the set of values for the type of demographics. The PSM is shown in Figures 6.7a, 6.7b and 6.7c;
- The demographics information vocabulary – the set of values for the parts of demographics information. The PSM is shown in Figure 6.8;
- The type of representations vocabulary – the set of values for the parts of representation information. The PSM is shown in Figure 6.9;
- The type of enterprise system role vocabulary – the set of values for the type of enterprise system roles. The PSM is shown in Figure 6.10;
- The type of instutition role vocabulary – the set of values for the type of institution roles. The PSM is shown in Figures 6.11a and 6.11b;
- The type of system role vocabulary – the set of values for the type of system roles. The PSM is shown in Figures 6.12;
- The enrollment information vocabualry – the set of values for the enrollments. The PSM is shown in Figure 6.13;
- The type of agent vocabulary– the set of values for the type of agent. The PSM is shown in Figures 6.14;
- The type of event date vocabulary – the set of values for the type of event date. The PSM is shown in Figures 6.15;
- Extension data-type vocabulary – the set of data-types that are permitted for extensions in the Group data model. The PSM for the extension data-type vocabulary is shown in Figure 6.16.

These vocabularies are the default set maintained under the IMS GLC Vocabulary Registry [SDN11, 06]. It is the responsibility of an implementation to ensure that it is using the correct and latest versions of the vocabulary files. Changes to the default vocabularies are permitted; this results in the creation of a new vocabulary that should be registered with IMS GLC. As part of a profiling process entirely new vocabularies may be defined to replace the default set.

Figure 6.1 The PSM representation of the formatted name type vocabulary for the PMS.

Figure 6.2 The PSM representation of the name type vocabulary for the PMS.

Figure 6.3a The PSM representation of the name part (1) vocabulary for the PMS.

Figure 6.3b The PSM representation of the name part (2) vocabulary for the PMS.

Figure 6.4a The PSM representation of the address type (1) vocabulary for the PMS.

Figure 6.4b The PSM representation of the address type (2) vocabulary for the PMS.

Figure 6.5a The PSM representation of the address part (1) vocabulary for the PMS.

Figure 6.5b The PSM representation of the address part (2) vocabulary for the PMS.

Figure 6.5c The PSM representation of the address part (3) vocabulary for the PMS.

Figure 6.6a The PSM representation of the type of contact information (1) vocabulary for the PMS.

Figure 6.6b The PSM representation of the type of contact information (2) vocabulary for the PMS.

Figure 6.6c The PSM representation of the type of contact information (3) vocabulary for the PMS.

Figure 6.6d The PSM representation of the type of contact information (4) vocabulary for the PMS.

Figure 6.7a The PSM representation of the type of demographics (1) vocabulary for the PMS.

Figure 6.7b The PSM representation of the type of demographics (2) vocabulary for the PMS.

Figure 6.7c The PSM representation of the type of demographics (3) vocabulary for the PMS.

Figure 6.8 The PSM representation of the demographics information vocabulary for the PMS.

Figure 6.9 The PSM representation of the representation information vocabulary for the PMS.

Figure 6.10 The PSM representation of the enterprise system role vocabulary for the PMS.

Figure 6.11a The PSM representation of the institution role (1) vocabulary for the PMS.

Figure 6.11b The PSM representation of the institution role (2) vocabulary for the PMS.

Figure 6.12 The PSM representation of the system role vocabulary for the PMS.

Figure 6.13 The PSM representation of the enrollment vocabulary for the PMS.

Figure 6.14 The PSM representation of the type of agent vocabulary for the PMS.

Figure 6.15a The PSM representation of the type of event date (1) vocabulary for the PMS.

Figure 6.15b The PSM representation of the type of event date (2) vocabulary for the PMS.

Figure 6.16 The PSM representation of the extension data-type vocabulary for the PMS.

top | toc

# Appendix A - Listing of the WSDLs

The WSDL bindings are for a Synchronous SOAP implementation only. The WSDL files, expressed using WSDLv1.1, are:

- The combined WSDL/XSD file (this contains the WSDL and XSD descriptions in a single file) – PersonManagementServicev2p0_SyncSingle_v1p0.wsdl
- The single WSDL file (used in conjunction with the separate XSD file) is available to LIS Alliance members. Click here to join the Alliance.

These files were generated by the I-BATv0.9.5 tool using the PSM representation described in Section 2.

top | toc

# Appendix B - Listing of the XSDs

The XSD files are:

- The stand-alone XSD is available to LIS Alliance members. Click here to join the Alliance;
- The XSD for the external data file – imspms_filemodel_v2p0.xsd.

This file was generated by the I-BATv0.9.5 tool using the PSM representation described in Section 2. Documentation of the XSDs is supplied in Section 5.

top | toc

# Appendix C - Vocabulary VDEX Instance File Listings

The PMS vocabularies are:

- The type of formatted name vocabulary – formatnmetypevocabularyv1p0.xml;
- The type of name vocabulary – nametypevocabularyv1p0.xml;
- The type of name part-name vocabulary – partnamevocabularyv1p0.xml;
- The type of address vocabulary – addresstypevocabularyv1p0.xml;
- The address part vocabulary – addresspartvocabularyv1p0.xml;
- The type of contact information vocabulary – contactinfotypevocabularyv1p0.xml;
- The type of demographics vocabulary – demographicstypevocabulartv1p0.xml;
- The type of representations vocabulary – representationtypevocabularyv1p0.xml;
- The demographics information vocabulary – demographicsinfovocabulartv1p0.xml;
- The type of enterprise system role vocabulary – epriserolestypevocabularyv1p0.xml;
- The type of institution role vocabulary – institutionroletypevocabularyv1p0.xml;
- The type of system role vocabulary – systemrolevocabularyv1p0.xml;
- The enrollment information vocabulary – enrollmentinfovocabularyv1p0.xml;
- The type of agent vocabulary – agenttypevocabularyv1p0.xml;
- The type of event date vocabulary – eventdatevocabularyv1p0.xml;
- Extension data-types vocabulary – extensionvocabularyv1p0.xml;
- Language codes – languagecodesvocabularyv1p0.xml. The set of codes used to identifiy the language for a string (based upon RFC4646).

The online versions of these vocabularies are available in the directory: http://www.imsglobal.org/vdex/lis/pmsv2p0. These vocabularies are expressed as instances of the IMS GLC Vocabulary Data Exchange (VDEX) v1.0 specification. Documentation of the vocabulary is supplied in Section 6.

top | toc

# Appendix D - Example SOAP Messages

The set of examples for the SOAP messages are listed in Table D.1. The messaging pattern is a Request/Response exchange to support the Synchronous Service definition.

Table D.1 The set of SOAP message examples for each operation.

Operation Name | Input (Request) SOAP Message | Output (Response) SOAP Message
--- | --- | ---
createPerson | createPersonRequest | createPersonResponse
createByProxyPerson | createByProxyPersonRequest | createByProxyPersonResponse
deletePerson | deletePersonRequest | deletePersonResponse
readPerson | readPersonRequest | readPersonResponse
readPersonCore | readPersonCoreRequest | readPersonCoreResponse
readAllPersonIds | readAllPersonIdsRequest | readAllPersonIdsResponse
readPersonIdsFromSavePoint | readPersonIdsFromSavePointRequest | readPersonIdsFromSavePointResponse
readPersons | readPersonsRequest | readPersonsResponse
readPersonsFromSavePoint | readPersonsFromSavePointRequest | readPersonsFromSavePointResponse
updatePerson | updatePersonRequest | updatePersonResponse
replacePerson | replacePersonRequest | replacePersonResponse
discoverPersonIds | discoverPersonIdsRequest | discoverPersonIdsResponse
changePersonIdentifier | changePersonIdentifierRequest | changePersonIdentifierResponse

top | toc

# About This Document

Title | IMS GLC Person Management Service WSDL/XSD Binding
Editor | Colin Smythe (IMS GLC)
Co-Chairs | Linda Feng (Oracle), Bill Lee (Desire2learn)
Version | 2.0
Version Date | 30 June 2011
Release | Final 1.0
Status | Final Release
Summary | This document contains the description of the IMS GLC Person Management Service v2.0 WSDL/XSD binding. This service is used to exchange information about Persons. The business transactions include the simple create, read, update and delete of the Person data model for a single instance. This document contains the definition of the corresponding Web Service based upon SOAP/HTTP messaging.
Revision Information | This version supersedes the IMS GLC Person Management Service v1.0 specification.
Purpose | This document is made available for adoption by the public community at large.
Document Location | http://www.imsglobal.org/lis/

top | toc

## List of Contributors

The following individuals contributed to the development of this document:

Name | Organization
--- | ---
Kerry Blinco | DEEWR (Australia)
Kirk Bunte | SungardHE (USA)
Angus Chan | Desire2learn (Canada)
Adam Cooper | JISC (UK)
Michael Feldstein | Cengage (USA)
Linda Feng | Oracle (USA)
Jon Fontaine | Blackboard (USA)
Chris Hatton | Pearson (USA)
Karen Kuffner | University of Michigan (USA)
Zack Leavitt | eCollege (USA)
Bill Lee | Desire2learn (Canada)
Richard Moon | SungardHE (USA)
Mike Parkhill | Desire2learn (Canada)
Colin Smythe | IMS Global Learning Consortium, Inc. (UK)
Reihold Staudinger | Blackboard (USA)
Nick Terrible | University of Wisconsin (USA)
Jason Zhong | SungardHE (USA)

top | toc

# Revision History

Version No. | Release Date | Comments
--- | --- | ---
Final Release 1.0 | 30 June 2011 | The first formal release of the Final Release version of this document.

top | toc

IMS Global Learning Consortium, Inc. (“IMS GLC”) is publishing the information contained in this document (“Specification”) for purposes of scientific, experimental, and scholarly collaboration only.

IMS GLC makes no warranty or representation regarding the accuracy or completeness of the Specification.

This material is provided on an “As Is” and “As Available” basis.

The Specification is at all times subject to change and revision without notice.

It is your sole responsibility to evaluate the usefulness, accuracy, and completeness of the Specification as it relates to you.

IMS GLC would appreciate receiving your comments and suggestions.

Please contact IMS GLC through our website at http://www.imsglobal.org.

Please refer to Document Name: IMS GLC PMS v2.0 WSDL/XSD Binding Final Release v1.0

Date: 30 June 2011.