This service is used to initiate and report on Bulk SIS Integration processing.
Implemented operations
- announceBulkDataExchangeasynchronously.
- announceFailureBulkDataExchange
Called operations
- ignoreBulkDataExchange
- cancelBulkDataExchange
- reportBulkDataExchange
- requestBulkDataExchange
About the announceBulkDataExchange operation
The announceBulkDataExchange operation is called by a Student Information System when it wishes to begin a Bulk Integration process. This call results in an immediate response from the system to indicate whether the request was received successfully or not, and bulk processing continues asynchronously.
Process flow: announceBulkDataExchange
- When an LIS announceBulkDataExchange request is received, D2L translates the request using the LIS translators configured for ITranslateAnnounceBulkDataExchange to transform the request into a format that IPSIS Platform can understand.
- Once the request has been translated, the IPSIS Platform handlers configured for IBulkFileReadyRequestHandler are used to register the bulk request with IPSIS.
- The LIS response is then generated from the handler response. The response includes a list of the supported services of the implementation using the configured ITranslateSupportedServices translator.
- Bulk Processing occurs asynchronously after the announce request has been received and responded to. The IPSIS Bulk Job Background Services moves the bulk job through the following steps: Files are retrieved using IBulkFileRetriever, files are processed using IBulkFileProcessor, and a response is generated using IBulkSendReportHandler, which uses reportBulkDataExchange to notify the SIS of the results.
Sample announceBulkDataExchange request
<SOAP-ENV:Envelope xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header>
<imsx_syncRequestHeaderInfo xmlns="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0">
<imsx_version>V1.0></imsx_version>
<imsx_messageIdentifier>1234></imsx_messageIdentifier>
</imsx_syncRequestHeaderInfo>
<ims:imsx_epaRequestHeaderInfo xmlns:ims="http://www.imsglobal.org/xsd/gws/gwsv1p0/imsepa_v1p0"/></SOAP-ENV:Header>
<SOAP-ENV:Body>
<bdems:announceBulkDataExchangeRequest
xmlns:bdems="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0">
<bdems:transactionId>Test-1234></bdems:transactionId>
<bdems:bulkBlockManifest>
<bdems:bulkBlockManifestId>Test-1234</bdems:bulkBlockManifestId>
<bdems:expiryDate>3000-01-01T00:00:00</bdems:expiryDate>
<bdems:bulkBlockDataFile>
<bdems:url>http://localhost://1234-a.xml></bdems:url>
<bdems:checkSum>00</bdems:checkSum>
<bdems:totalSize>0</bdems:totalSize>
<bdems:savePoint>2011-11-28T10:59:35.000000Z></bdems:savePoint>
<bdems:serviceSet>
<bdems:serviceRecord>
<bdems:serviceName>pmsv2p0</bdems:serviceName>
<bdems:interfaceName>personmanager</bdems:interfaceName>
<bdems:operationSet>
<bdems:operationName>replacePerson</bdems:operationName>
<bdems:operationName>deletePerson</bdems:operationName>
</bdems:operationSet>
</bdems:serviceRecord>
</bdems:serviceSet>
</bdems:bulkBlockDataFile>
<bdems:bulkBlockDataFile>
<bdems:url>http://localhost://1234-b.xml></bdems:url>
<bdems:checkSum>00></bdems:checkSum>
<bdems:totalSize>0></bdems:totalSize>
<bdems:savePoint>2011-11-28T10:59:35.000000Z></bdems:savePoint>
<bdems:serviceSet>
<bdems:serviceRecord>
<bdems:serviceName>gmsv2p0</bdems:serviceName>
<bdems:interfaceName>groupmanager</bdems:interfaceName>
<bdems:operationSet>
<bdems:operationName>replaceGroup</bdems:operationName>
</bdems:operationSet>
</bdems:serviceRecord>
</bdems:serviceSet>
</bdems:bulkBlockDataFile>
</bdems:bulkBlockManifest>
</bdems:announceBulkDataExchangeRequest>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
announceBulkDataExchange request header and body fields
Request header fields
For more information, see Request and response headers.
Request body fields
The Template Translator Configuration processes the following fields in the request:
Property
|
LIS Request Mapping
|
Required
|
JobId
|
request.bulkBlockManifestId
|
Yes
|
Expiry DateTime
|
request.expiryDate
|
Yes
|
RemoteFileUrl(s)
|
request.bulkBlockDataFile[*].url
|
Yes
|
FileSize(s)
|
request.bulkBlockDataFile[*].totalSize
|
Yes
|
CheckSum(s)
|
request.bulkBlockDataFile[*].checkSum
|
Yes
|
Savepoint(s)
|
request.bulkBlockDataFile[*].savePoint
|
Yes
|
Entity Type(s)
|
request.bulkBlockDataFile[*].serviceSet.serviceRecord[*].interfaceName
|
Yes
|
Sample annouceBulkDataExchange response
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<h:imsx_syncResponseHeaderInfo
xmlns:h="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0"
xmlns="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<imsx_version>V1.0></imsx_version>
<imsx_messageIdentifier>BDEMS_announceBulkDataExchange_20120304T014745_2593446Z></imsx_messageIdentifier>
<imsx_statusInfo>
<imsx_codeMajor>success></imsx_codeMajor>
<imsx_severity>status></imsx_severity>
<imsx_description/>
<imsx_codeMinor>
<imsx_codeMinorField>
<imsx_codeMinorFieldName>TargetEndSystem></imsx_codeMinorFieldName>
<imsx_codeMinorFieldValue>fullsuccess></imsx_codeMinorFieldValue>
</imsx_codeMinorField>
</imsx_codeMinor>
</imsx_statusInfo>
</h:imsx_syncResponseHeaderInfo>
</s:Header>
<s:Body
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<announceBulkDataExchangeResponse
xmlns="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0">
<supportedServices>
<personInterface>
<operationName>replacePerson</operationName>
<operationName>deletePerson</operationName>
</personInterface>
<groupInterface>
<operationName>replaceGroup</operationName>
<operationName>deleteGroup</operationName>
</groupInterface>
<membershipInterface>
<operationName>replaceMembership</operationName>
<operationName>deleteMembership</operationName>
</membershipInterface>
<templateInterface>
<operationName>replaceCourseTemplate</operationName>
<operationName>deleteCourseTemplate</operationName>
</templateInterface>
<offeringInterface>
<operationName>replaceCourseOffering</operationName>
<operationName>deleteCourseOffering</operationName>
</offeringInterface>
<sectionInterface>
<operationName>replaceCourseSection</operationName>
<operationName>deleteCourseSection&</operationName>
</sectionInterface>
<associationInterface>
<operationName>replaceSectionAssociation</operationName>
<operationName>deleteSectionAssociation</operationName>
</associationInterface>
</supportedServices>
</announceBulkDataExchangeResponse>
</s:Body>
</s:Envelope>
announceBulkDataExchange response header and body fields
Response header fields
For more information, see Request and response headers.
Response body fields
The Template Translator Configuration processes the following fields in the request:
Property
|
LIS Response Mapping
|
Required
|
JobId
|
request.bulkBlockManifestId
|
Yes
|
Expiry DateTime
|
request.expiryDate
|
Yes
|
RemoteFileUrl(s)
|
request.bulkBlockDataFile[*].url
|
Yes
|
FileSize(s)
|
request.bulkBlockDataFile[*].totalSize
|
Yes
|
CheckSum(s)
|
request.bulkBlockDataFile[*].checkSum
|
Yes
|
Savepoint(s)
|
request.bulkBlockDataFile[*].savePoint
|
Yes
|
Entity Type(s)
|
request.bulkBlockDataFile[*].serviceSet.serviceRecord[*].interfaceName
|
Yes
|
About the announceFailureBulkDataExchange operation
The AnnounceFailureBulkDataExchange operation takes an announce failure request and processes it, with the end result being that the source system corresponding to the request is taken out of bulk mode, and the corresponding record in database that encapsulates all required information for the bulk job has it's status set to canceled.
Process flow: announceFailureBulkDataExchange
- When an LIS AnnounceFailureBulkDataExchange request is received, D2L obtains the transactionId from the request and logs the failure code and description if they are provided. A separate pluggable translator is not utilized for this operation.
- Once the request is translated, the IPSIS Platform handlers configured for IBulkAnnounceFailureRequestHandler are used to process the request.
- The LIS response is generated from the handler response.
Sample announceFailureBulkDataExchange request
<soapenv:Envelope
xmlns:ims="http://www.imsglobal.org/xsd/gws/gwsv1p0/imsepa_v1p0"
xmlns:ims1="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header>
<ims:imsx_epaRequestHeaderInfo>
</ims:imsx_epaRequestHeaderInfo>
<ims1:imsx_syncRequestHeaderInfo>
<ims1:imsx_version>V1.0</ims1:imsx_version>
<ims1:imsx_messageIdentifier>1234</ims1:imsx_messageIdentifier>
</ims1:imsx_syncRequestHeaderInfo>
</soapenv:Header>
<soapenv:Body>
<ims1:announceFailureBulkDataExchangeRequest>
<ims1:transactionId>Samp-816</ims1:transactionId>
</ims1:announceFailureBulkDataExchangeRequest>
</soapenv:Body>
</soapenv:Envelope>
announceFailureBulkDataExhange request header and body fields
Request header fields
For more information, see Request and response headers.
Request body fields
The adapter accepts the following fields in the request:
Property
|
LIS Request Mapping
|
Required
|
TransactionId
|
request.transactionId
|
Yes
|
Failure Code
|
request.FailureReportType.failureCode
|
No
|
Failure Description
|
request.FailureReportType.failureDescription
|
No
|
Sample announceFailureBulkDataExchange response
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<h:imsx_syncResponseHeaderInfo
xmlns:h="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0"
xmlns="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<imsx_version>V1.0</imsx_version>
<imsx_messageIdentifier>BDEMS_announceFailureBulkDataExchange_20120223T192808_3713232Z</imsx_messageIdentifier>
<imsx_statusInfo>
<imsx_codeMajor>success</imsx_codeMajor>
<imsx_severity>status</imsx_severity>
<imsx_messageRefIdentifier>1234</imsx_messageRefIdentifier>
<imsx_description/>
<imsx_codeMinor>
<imsx_codeMinorField>
<imsx_codeMinorFieldName>TargetEndSystem</imsx_codeMinorFieldName>
<imsx_codeMinorFieldValue>fullsuccess</imsx_codeMinorFieldValue>
</imsx_codeMinorField>
</imsx_codeMinor>
</imsx_statusInfo>
</h:imsx_syncResponseHeaderInfo>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"/>
</s:Envelope>
announceFailureBulkDataExchange response header and body fields
Response header fields
For more information, see Request and response headers.
Response object body fields
No fields are returned in the response body.
About the ignoreBulkDataExchange operation
The IPSIS LIS adapter calls the IgnoreBulkDataExchange operation implemented by the SIS. The call is implemented within a handler that implements IBulkCancelRequestHandler and is configured to be run when an Ignore request is initiated somewhere within the IPSIS Platform.
Process flow: ignoreBulkDataExchange
When an ignore bulk request is initiated (typically via the Admin Interface), the BulkManager calls the configured handler implementing IBulkCancelRequestHandler. For systems using LIS, the registered handler initiates a IgnoreBulkDataExchange request to the SIS.
Sample ignoreBulkDataExchange request
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<s:Header>
<h:imsx_syncRequestHeaderInfo xmlns:h="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0" xmlns="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<imsx_version>V1.0</imsx_version>
<imsx_messageIdentifier>1234</imsx_messageIdentifier>
<imsx_sendingAgentIdentifier>LIS_Test_System</imsx_sendingAgentIdentifier>
</h:imsx_syncRequestHeaderInfo>
<h:imsx_epaRequestHeaderInfo xmlns:h="http://www.imsglobal.org/xsd/gws/gwsv1p0/imsepa_v1p0" xmlns="http://www.imsglobal.org/xsd/gws/gwsv1p0/imsepa_v1p0"/>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<ignoreBulkDataExchangeRequest xmlns="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0">
<transactionId>testRequest1</transactionId>
</ignoreBulkDataExchangeRequest>
</s:Body>
</s:Envelope>
ignoreBulkDataExchange request header and body fields
Request header fields
For more information, see Request and response headers.
Request body fields
Property
|
Description
|
transactionId
|
The unique identifier assigned to this transaction by the service consumer's previous bulk data exchange request.
|
Sample ignoreBulkDataExchange response
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ims="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0">
<soapenv:Header>
<ims:imsx_syncResponseHeaderInfo>
<ims:imsx_version>V1.0</ims:imsx_version>
<ims:imsx_statusInfo>
<ims:imsx_codeMajor>success</ims:imsx_codeMajor>
<ims:imsx_severity>status</ims:imsx_severity>
<ims:imsx_codeMinor>
<ims:imsx_codeMinorField>
<ims:imsx_codeMinorFieldName>TargetEndSystem</ims:imsx_codeMinorFieldName>
<ims:imsx_codeMinorFieldValue>fullsuccess</ims:imsx_codeMinorFieldValue>
</ims:imsx_codeMinorField>
</ims:imsx_codeMinor>
</ims:imsx_statusInfo>
</ims:imsx_syncResponseHeaderInfo>
</soapenv:Header>
<soapenv:Body>
<ims:ignoreBulkDataExchangeResponse>?</ims:ignoreBulkDataExchangeResponse>
</soapenv:Body>
</soapenv:Envelope>
ignoreBulkDataExchange response header and body fields
Response header fields
The response is generated by the service provider (e.g., Oracle), and then sent back to D2L based on our sending of the above request.
Field
|
Return
|
Value
|
imsx_syncResponseHeaderInfo.imsx_version
|
The service provider returns "V1.0" regardless of the value in the Request Header.
|
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_codeMajor
|
The service provider returns the Major Status Code as defined by IMS.
|
success - When the ignore request is successfully received at the service provider.
failure - When the ignore request is not received at the service provider.
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_severity
|
The service provider returns the severity as defined by IMS.
|
status
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_messageRefIdentifier
|
The service provider returns the value from the imsx_syncRequestHeaderInfo.imsx_messageIdentifier
|
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_codeMinor.imsx_codeMinorField.imsx_codeMinorFieldValue
|
The service provider returns the Minor Status Code Field Value as defined by IMS.
|
full success - When the ignore request has been successfully received at the service provider.
invalidtransactionid - When the transactionId returned by the service consumer is unknown at the service provider. An error condition is logged at the service provider but no further processing is undertaken.
|
Response body fields
None.
About the cancelBulkDataExhange operation
The CancelBulkDataExchange operation is used to send a cancel request to the SIS.
Process flow: cancelBulkDataExchange
- Generate and send a request.
- Upon cancellation of a bulk job, the Bulk Manager relies on the configured IBulkCancelRequestHandler.
- For systems using LIS, the registered handler initiates a CancelBulkDataExchange request to the SIS.
Sample cancelBulkDataExchange request
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<s:Header>
<h:imsx_syncRequestHeaderInfo
xmlns:h="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0"
xmlns="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<imsx_version>V1.0</imsx_version>
<imsx_messageIdentifier>1234</imsx_messageIdentifier>
<imsx_sendingAgentIdentifier>LIS_Test_System</imsx_sendingAgentIdentifier>
</h:imsx_syncRequestHeaderInfo>
<h:imsx_epaRequestHeaderInfo xmlns:h="http://www.imsglobal.org/xsd/gws/gwsv1p0/imsepa_v1p0"
xmlns="http://www.imsglobal.org/xsd/gws/gwsv1p0/imsepa_v1p0"/>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<cancelBulkDataExchangeRequest xmlns="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0">
<transactionId>testRequest1</transactionId>
</cancelBulkDataExchangeRequest>
</s:Body>
</s:Envelope>
cancelBulkDataExchange request header and body fields
Request header fields
For more information, see Request and response headers.
Request body fields
Property
|
Description
|
transactionId
|
The unique identifier assigned to this transaction by the service consumers previous bulk data exchange request.
|
Sample cancelBulkDataExchange response
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ims="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0">
<soapenv:Header>
<ims:imsx_syncResponseHeaderInfo>
<ims:imsx_version>V1.0</ims:imsx_version>
<ims:imsx_statusInfo>
<ims:imsx_codeMajor>success</ims:imsx_codeMajor>
<ims:imsx_severity>status</ims:imsx_severity>
<ims:imsx_codeMinor>
<ims:imsx_codeMinorField>
<ims:imsx_codeMinorFieldName>?</ims:imsx_codeMinorFieldName>
<ims:imsx_codeMinorFieldValue>fullsuccess</ims:imsx_codeMinorFieldValue>
</ims:imsx_codeMinorField>
</ims:imsx_codeMinor>
</ims:imsx_statusInfo>
</ims:imsx_syncResponseHeaderInfo>
</soapenv:Header>
<soapenv:Body>
<ims:cancelBulkDataExchangeResponse>TargetEndSystem</ims:cancelBulkDataExchangeResponse>
</soapenv:Body>
</soapenv:Envelope>
cancelBulkDataExchange response header and body fields
Response header fields
The response is generated by the service provider (e.g., Oracle), and then sent back to D2L based on the sending of the request.
Header
|
Return
|
Value
|
imsx_syncResponseHeaderInfo.imsx_version
|
The service provider returns "V1.0" regardless of the value in the Request Header.
|
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_codeMajor
|
The service provider will return the Major Status Code as defined by IMS.
|
success - When the ignore request is successfully received at the service provider.
failure - When the ignore request is not received at the service provider.
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_severity
|
The service provider returns the severity as defined by IMS.
|
status
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_messageRefIdentifier
|
The service provider returns the value from the imsx_syncRequestHeaderInfo.imsx_messageIdentifier
|
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_codeMinor.imsx_codeMinorField.imsx_codeMinorFieldValue
|
The service provider returns the Minor Status Code Field Value as defined by IMS.
|
fullsuccess - When the ignore request is successfully received at the service provider.
invalidtransactionid - When the transactionId returned by the service consumer is unknown at the service provider. An error condition is logged at the service provider but no further processing is undertaken.
|
Response body fields
None.
About the reportBulkDataExchange operation
The IPSIS LIS Adapter does not support the ReportBulkDataExchange operation, but rather calls this operation on the SIS side when a Bulk Data Exchange process is completed.
Process flow: reportBulkDataExchange
Process and send request. Upon completion of a bulk job, the Bulk Manager relies on the configured IBulkSendReportHandler handlers. For systems using LIS, the registered handler initiates a ReportBulkDataExchange request to the SIS.
Sample reportBulkDataExchange request
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<s:Header>
<h:imsx_syncRequestHeaderInfo
xmlns:h="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0"
xmlns="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<imsx_version>V1.0</imsx_version>
<imsx_messageIdentifier>1234</imsx_messageIdentifier>
<imsx_sendingAgentIdentifier>LIS_Test_System</imsx_sendingAgentIdentifier>
</h:imsx_syncRequestHeaderInfo>
<h:imsx_epaRequestHeaderInfo xmlns:h="http://www.imsglobal.org/xsd/gws/gwsv1p0/imsepa_v1p0"
xmlns="http://www.imsglobal.org/xsd/gws/gwsv1p0/imsepa_v1p0"/>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<reportBulkDataExchangeRequest xmlns="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0">
<transactionId>testRequest1</transactionId>
<bulkBlockReport>
<bulkBlockManifestIdRef>testRequest1</bulkBlockManifestIdRef>
<reportSummary>
<noofTotalFullSuccess>6</noofTotalFullSuccess>
<noofTotalPartialSuccess>0</noofTotalPartialSuccess>
<noofTotalFailure>1</noofTotalFailure>
<interfaceSummaryReport>
<interfaceName>groupmanager</interfaceName>
<noofFullSuccess>2</noofFullSuccess>
<noofPartialSuccess>0</noofPartialSuccess>
<noofFailure>0</noofFailure>
</interfaceSummaryReport>
<interfaceSummaryReport>
<interfaceName>personmanager</interfaceName>
<noofFullSuccess>0</noofFullSuccess>
<noofPartialSuccess>0</noofPartialSuccess>
<noofFailure>1</noofFailure>
</interfaceSummaryReport>
<interfaceSummaryReport>
<interfaceName>coursetemplatemanager</interfaceName>
<noofFullSuccess>1</noofFullSuccess>
<noofPartialSuccess>0</noofPartialSuccess>
<noofFailure>0</noofFailure>
</interfaceSummaryReport>
<interfaceSummaryReport>
<interfaceName>courseofferingmanager</interfaceName>
<noofFullSuccess>1</noofFullSuccess>
<noofPartialSuccess>0</noofPartialSuccess>
<noofFailure>0</noofFailure>
</interfaceSummaryReport>
<interfaceSummaryReport>
<interfaceName>coursesectionmanager</interfaceName>
<noofFullSuccess>1</noofFullSuccess>
<noofPartialSuccess>0</noofPartialSuccess>
<noofFailure>0</noofFailure>
</interfaceSummaryReport>
<interfaceSummaryReport>
<interfaceName>membershipmanager</interfaceName>
<noofFullSuccess>1</noofFullSuccess>
<noofPartialSuccess>0</noofPartialSuccess>
<noofFailure>0</noofFailure>
</interfaceSummaryReport>
</reportSummary>
<transactionReportList>
<transactionReport>
<transactionOpIdentifierRef>Copy3</transactionOpIdentifierRef>
<serviceName>pmsv2p0</serviceName>
<transactionFailStatusVocabulary>http://www.imsglobal.org/lis/bdemsv1p0/transactionfailstatusvocabularyv1p0</transactionFailStatusVocabulary>
<transactionFailStatus>unknownvocabulary</transactionFailStatus>
</transactionReport>
</transactionReportList>
</bulkBlockReport>
</reportBulkDataExchangeRequest>
</s:Body>
</s:Envelope>
reportBulkDataExchange request header and body fields
Request header fields
For more information, see Request and response headers.
Request body fields
Property
|
Description
|
transactionId
|
The transactionId corresponding to the announce request that was sent in.
|
reportSummary
|
Lists the total number of transactions included in the announce request, and the status of each. Contains the interfaceSummaryReports.
|
interfaceSummaryReport
|
The container for the summary information about the processing of the bulk data files by the service consumer for a specific service interface.
|
transactionReport
|
The container for the status reports on all the transactions within the bulk data file that were unsuccessfully completed by the service consumer. If no reports are contained, then the announceBulkDataExchange request has been successfully completed.
|
reportFailureDetail
|
The container for the set of reports that describe the transactions that resulted in the generation of failure status codes.
|
Sample reportBulkDataExchange response
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ims="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0">
<soapenv:Header>
<ims:imsx_syncResponseHeaderInfo>
<ims:imsx_version>V1.0</ims:imsx_version>
<ims:imsx_statusInfo>
<ims:imsx_codeMajor>success</ims:imsx_codeMajor>
<ims:imsx_severity>status</ims:imsx_severity>
<ims:imsx_codeMinor>
<ims:imsx_codeMinorField>
<ims:imsx_codeMinorFieldName>TargetEndSystem</ims:imsx_codeMinorFieldName>
<ims:imsx_codeMinorFieldValue>fullsuccess</ims:imsx_codeMinorFieldValue>
</ims:imsx_codeMinorField>
</ims:imsx_codeMinor>
</ims:imsx_statusInfo>
</ims:imsx_syncResponseHeaderInfo>
</soapenv:Header>
<soapenv:Body>
<ims:reportBulkDataExchangeResponse>?</ims:reportBulkDataExchangeResponse>
</soapenv:Body>
</soapenv:Envelope>
reportBulkDataExchange response header and body fields
The response is generated by the service provider (e.g., Oracle), and then sent back to D2L based on the sending of the request.
Response header fields
Header
|
Return
|
Value
|
imsx_syncResponseHeaderInfo.imsx_version
|
The service provider returns "V1.0" regardless of the value in the Request Header.
|
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_codeMajor
|
The service provider returns the Major Status Code as defined by IMS.
|
success - When the ignore request is successfully received at the service provider.
failure - When the ignore request is not received at the service provider.
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_severity
|
The service provider returns the severity as defined by IMS.
|
status
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_messageRefIdentifier
|
The service provider returns the value from the imsx_syncRequestHeaderInfo.imsx_messageIdentifier
|
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_codeMinor.imsx_codeMinorField.imsx_codeMinorFieldValue
|
The service provider returns the Minor Status Code Field Value as defined by IMS.
|
fullsuccess - When the report is successfully received at the service provider and the supplied data is valid.
invalidtransactionid - When the transactionId returned by the service consumer is unknown at the service provider. An error condition is logged at the service provider but no further processing is undertaken.
incompletedata - When a mandatory part of the BulkBlockReport object has been detected as missing by the service provider.
invaliddata - When a part of the BulkBlockReport object is invalid.
expireddata - When the bulk data file expiryDate shows that the validity of the file has expired.
|
Response body fields
None.
About the requestBulkDataExchange operation
The IPSIS LIS adapter calls the RequestBulkDataExchange operation implemented by the SIS. The call is implemented within a handler that implements IBulkRequestDataHandler and is configured to be run when a request is initiated somewhere within the IPSIS Platform.
Process flow: requestBulkDataExchange
Process and send request. When an request bulk data exchange request is initiated (typically via the Admin interface), the BulkManager calls the configured handler implementing IBulkRequestDataHandler.
Sample requestBulkDataExchange request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ims="http://www.imsglobal.org/xsd/gws/gwsv1p0/imsepa_v1p0" xmlns:ims1="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0">
<soapenv:Header>
<ims1:imsx_syncRequestHeaderInfo>
<ims1:imsx_version>V1.0</ims1:imsx_version>
<ims1:imsx_messageIdentifier>1234</ims1:imsx_messageIdentifier>
<ims1:imsx_sendingAgentIdentifier>LIS_TEST_SYSTEM</ims1:imsx_sendingAgentIdentifier>
</ims1:imsx_syncRequestHeaderInfo>
</soapenv:Header>
<soapenv:Body>
<ims1:requestBulkDataExchangeRequest>
<ims1:transactionId>060d01bf-8c5a-4e87-85f5-92a8aca30ef8</ims1:transactionId>
<ims1:filter>
<!--1 or more repetitions:-->
<ims1:filterRule>
<ims1:filterTypeVocabulary>http://www.imsglobal.org/lis/bdemsv1p0/filtertypevocabularyv1p0</ims1:filterTypeVocabulary>
<ims1:filterType>object</ims1:filterType>
<!--Optional:-->
<ims1:filterValueVocabulary>http://www.imsglobal.org/lis/bdemsv1p0/filtervalueobjectvocabularyv1p0</ims1:filterValueVocabulary>
<ims1:filterValue>All</ims1:filterValue>
</ims1:filterRule>
</ims1:filter>
</ims1:requestBulkDataExchangeRequest>
</soapenv:Body<
</soapenv:Envelope>
requestBulkDataExchange request header and body fields
Request header fields
For more information, see Request and response headers.
Request body fields
Property
|
Description
|
transactionId
|
The unique identifier assigned to this transaction by the service consumer's previous bulk data exchange request.
|
Sample requestBulkDataExchange response
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ims="http://www.imsglobal.org/services/lis/bdems1p0/wsdl11/sync/imsbdems_v1p0">
<soapenv:Header>
<ims:imsx_syncResponseHeaderInfo>
<ims:imsx_version>V1.0</ims:imsx_version>
<ims:imsx_statusInfo>
<ims:imsx_codeMajor>success</ims:imsx_codeMajor>
<ims:imsx_severity>status</ims:imsx_severity>
<ims:imsx_codeMinor>
<ims:imsx_codeMinorField>
<ims:imsx_codeMinorFieldName>TargetEndSystem</ims:imsx_codeMinorFieldName>
<ims:imsx_codeMinorFieldValue>fullsuccess</ims:imsx_codeMinorFieldValue>
</ims:imsx_codeMinorField>
</ims:imsx_codeMinor>
</ims:imsx_statusInfo>
</ims:imsx_syncResponseHeaderInfo>
</soapenv:Header>
<soapenv:Body>
<ims:requestBulkDataExchangeResponse>?</ims:requestBulkDataExchangeResponse>
</soapenv:Body>
</soapenv:Envelope>
requestBulkDataExchange response header and body fields
Response header fields
The response is generated by the service provider (e.g., Oracle), and sent back to D2L based on the sending of the request.
Header
|
Return
|
Value
|
imsx_syncResponseHeaderInfo.imsx_version
|
The service provider returns "V1.0" regardless of the value in the Request Header.
|
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_codeMajor
|
The service provider returns the Major Status Code as defined by IMS.
|
success - When the ignore request is successfully received at the service provider.
failure - When the ignore request is not received at the service provider.
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_severity
|
The service provider will return the severity as defined by IMS.
|
status
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_messageRefIdentifier
|
The service provider returns the value from the imsx_syncRequestHeaderInfo.imsx_messageIdentifier.
|
|
imsx_syncResponseHeaderInfo.imsx_statusInfo.imsx_codeMinor.imsx_codeMinorField.imsx_codeMinorFieldValue
|
The service provider returns the Minor Status Code Field Value as defined by IMS.
|
fullsuccess - When the request has been successfully received and the target will be able to fulfill the request.
invaliddata - When the identified object data type(s) are unknown in the service provider.
savepointerror - When an error has occurred in the processing of the save-point identifier information making it impossible to read the correct objects from the database.
savepointsyncerror - When the value of the save point reference from the source was later than that of the target system. No synchronization data will be made available.
|
Response body fields
The response body includes a list of the supported services, which may include any of the following:
- personInterface.replacePerson
- personInterface.deletePerson
- groupInterface.replaceGroup
- groupInterface.deleteGroup
- membershipInterface.replaceMembership
- membershipInterface.deleteMembership
- templateInterface.replaceCourseTemplate
- templateInterface.deleteCourseTemplate
- offeringInterface.replaceCourseOffering
- offeringInterface.deleteCourseOffering
- sectionInterface.replaceCourseSection
- sectionInterface.deleteCourseSection
- associationInterface.replaceSectionAssocation
- associationInterface.deleteSectionAssociation