Update.Course.Element.LearningObjective.Assessment
This method will provide possibility to update learning objective assessment results for a single element.
Action
This type of message will update assessments of a learning objectives in a course element. Each element is identified using course id or synchronization key (sync key) and element id or sync key associated with it during creation. Each person in result array should be identified by itslearning id or synchronization key. The Evaluator is defining the user who made the evaluation.
Scenario
In order to update learning objective assessments for an element: Add a message with the type corresponding to Update.Course.Element.LearningObjective.Assessment. The result of that message processing can be acquired using GetMessageResult method with message identifier as an input parameter.
Input
Name | Description | Remarks | Type | M/O | Nullable (nillable="true" in schema) |
Message Type | Type of Message. | UpdateCourseElementLearningObjectiveAssesssment | M | ||
SiteId | Site where action will be executed | Int | O | ||
VendorId | VendorId which will be associated with created content | Text | O | ||
CourseId | ID of the course where the element is to be updated. | You are not allowed to enter both CourseId and CourseSyncKey. | Integer | O/M | |
CourseSyncKey | SyncKey of the course where the element is to be updated. | Text | O/M | ||
ElementId | ID of the custom activity's element to update. Used interchangeably with ElementSyncKey. | You are not allowed to enter both ElementId and ElementSyncKey. | Integer | O/M | |
ElementSyncKey | SyncKey of the custom activity's element to updated. Used interchangeably with ElementId. | Text | O/M | ||
EvaluatorPersonId | Evaluator's itslearning person identifier. | You are not allowed to enter both EvaluatorPersonId and EvaluatorPersonSyncKey. | Integer | O/M | |
EvaluatorPersonSyncKey | Evaluator's person synchronization key | Text | O/M | ||
Results | Array of result elements. | Object | M | ||
Result | Result element | Object | M | ||
LearningObjectiveId | Learning objective identifier from repository | Text | M | ||
ParticipantPersonId | Participant's itslearning person identifier | You are not allowed to enter both PersonId and PersonSyncKey. | Integer | O/M | |
ParticipantPersonSyncKey | Participant's person synchronization key | Text | O/M | ||
RawPercentage | Score person achieved for specified learning objective | Integer | M | ||
OverrideMastery | Possibility to override the rules for mastery that this LO is mastered (nil : do nothing, false: do nothing, true: set mastered) | Boolean | O | Y |
Output
Finished Status:
If element's learning objective assessment was updated successfully, the API returns 'Result updated successfully' information message and optionally - warnings, for each result updated.
Warning Status:
User with specified ParticipantPersonId/ParticipantPersonSyncKey is not valid.
User with specified ParticipantPersonId/ParticipantPersonSyncKey is deleted.
- Participant specified is not a participant for this activity.
- Participant is not a course member.
- Duplicated value pair LearningObjectiveId - PersonId.
- RawPercentage score must be a value between 0 and 100.
- RawPercentage updated successfully. Mastery needs to be enabled for organisation/customer to update mastery status.
Errors Status:
Invalid format / parameters (different to specified schema).
Course with specified CourseId/CourseSyncKey is not valid.
Course is deleted.
Course is archived.
Course is external.
Course has no Learning Objectives enabled.
Your security settings doesn't allow you to perform that operation. Please contact administration to grant you an access to {HieararchyName} organisation.
- Element with specified ElementId/ElementSyncKey is not valid.
- Element is deleted.
- Element is not within the course specified.
- Learning Objective assessment is only available for Custom Activities.
- Element is set up to not use outcome status.
- Evaluator is not a course member.
- Evaluator does not have evaluator privilege to this activity.
- Learning Objective is not assigned to the element and cannot be updated.
- Learning Objective assessment needs to be enable for the customer.
- User with specified EvaluatorPersonId/EvaluatorPersonSyncKey is not valid.
- User with specified EvaluatorPersonId/EvaluatorPersonSyncKey is deleted.
- User with specified EvaluatorPersonId/EvaluatorPersonSyncKey is external.
Schema
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
<
xs
:schema
xmlns:xs
=
"http://www.w3.org/2001/XMLSchema"
xmlns
=
"urn:message-schema"
elementFormDefault
=
"qualified"
targetNamespace
=
"urn:message-schema"
>
<
xs
:element
name
=
"Message"
type
=
"MessageType"
/>
<
xs
:complexType
name
=
"MessageType"
>
<
xs
:sequence>
<
xs
:element
name
=
"SiteId"
minOccurs
=
"0"
maxOccurs
=
"1"
type
=
"xs:int"
/>
<
xs
:element
name
=
"VendorId"
minOccurs
=
"0"
maxOccurs
=
"1"
>
<
xs
:simpleType>
<
xs
:restriction
base
=
"xs:string"
>
<
xs
:minLength
value
=
"1"
/>
<
xs
:maxLength
value
=
"36"
/>
</
xs
:restriction>
</
xs
:simpleType>
</
xs
:element>
<
xs
:element
name
=
"UpdateCourseElementLearningObjectiveAssessment"
type
=
"UpdateCourseElementLearningObjectiveAssessment"
/>
</
xs
:sequence>
</
xs
:complexType>
<
xs
:complexType
name
=
"UpdateCourseElementLearningObjectiveAssessment"
>
<
xs
:sequence>
<
xs
:choice
id
=
"Course"
>
<
xs
:element
name
=
"CourseId"
type
=
"xs:integer"
/>
<
xs
:element
name
=
"CourseSyncKey"
type
=
"xs:string"
/>
</
xs
:choice>
<
xs
:choice
id
=
"Element"
>
<
xs
:element
name
=
"ElementId"
type
=
"xs:integer"
/>
<
xs
:element
name
=
"ElementSyncKey"
type
=
"xs:string"
/>
</
xs
:choice>
<
xs
:choice
id
=
"Evaluator"
>
<
xs
:element
name
=
"EvaluatorPersonId"
type
=
"xs:integer"
/>
<
xs
:element
name
=
"EvaluatorPersonSyncKey"
type
=
"xs:string"
/>
</
xs
:choice>
<
xs
:element
name
=
"Results"
minOccurs
=
"0"
maxOccurs
=
"1"
>
<
xs
:complexType>
<
xs
:sequence>
<
xs
:element
name
=
"Result"
maxOccurs
=
"unbounded"
>
<
xs
:complexType>
<
xs
:sequence>
<
xs
:element
name
=
"LearningObjectiveId"
type
=
"xs:string"
/>
<
xs
:choice
id
=
"Participant"
>
<
xs
:element
name
=
"ParticipantPersonId"
type
=
"xs:integer"
/>
<
xs
:element
name
=
"ParticipantPersonSyncKey"
type
=
"xs:string"
/>
</
xs
:choice>
<
xs
:element
name
=
"RawPercentage"
type
=
"xs:double"
/>
<
xs
:element
name
=
"OverrideMastery"
type
=
"xs:boolean"
minOccurs
=
"0"
nillable
=
"true"
/>
</
xs
:sequence>
</
xs
:complexType>
</
xs
:element>
</
xs
:sequence>
</
xs
:complexType>
</
xs
:element>
</
xs
:sequence>
</
xs
:complexType>
</
xs
:schema>
Examples
Message content example
<
Message
xmlns
=
"urn:message-schema"
xmlns:i
=
"http://www.w3.org/2001/XMLSchema-instance"
>
<
UpdateCourseElementLearningObjectiveAssessment
>
<
CourseId
>20</
CourseId
>
<
ElementId
>559</
ElementId
>
<
EvaluatorPersonId
>2</
EvaluatorPersonId
>
<
Results
>
<
Result
>
<
LearningObjectiveId
>LO1</
LearningObjectiveId
>
<
ParticipantPersonId
>14</
ParticipantPersonId
>
<
RawPercentage
>100</
RawPercentage
>
</
Result
>
<
Result
>
<
LearningObjectiveId
>LO1</
LearningObjectiveId
>
<
ParticipantPersonId
>13</
ParticipantPersonId
>
<
RawPercentage
>45</
RawPercentage
>
<
OverrideMastery
>true</
OverrideMastery
>
</
Result
>
</
Results
>
</
UpdateCourseElementLearningObjectiveAssessment
>
</
Message
>
Output examples
<
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>
<
o
:Security
s:mustUnderstand
=
"1"
xmlns:o
=
"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
>
<
u
:Timestamp
u:Id
=
"_0"
>
<
u
:Created>2013-08-07T14:30:45.400Z</
u
:Created>
<
u
:Expires>2013-08-07T14:35:45.400Z</
u
:Expires>
</
u
:Timestamp>
</
o
:Security>
</
s
:Header>
<
s
:Body>
<
AddMessageResponse
xmlns
=
"http://tempuri.org/"
>
<
AddMessageResult
xmlns:a
=
"http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Services.Entities"
xmlns:i
=
"http://www.w3.org/2001/XMLSchema-instance"
>
<
a
:MessageId>181</
a
:MessageId>
<
a
:Status>Warnings</
a
:Status>
<
a
:StatusDetails>
<
a
:DataMessageStatusDetail>
<
a
:Entity>LoId_LO1:PersonId_14</
a
:Entity>
<
a
:Message>Result updated successfully.</
a
:Message>
<
a
:SyncKey/>
<
a
:Type>Info</
a
:Type>
</
a
:DataMessageStatusDetail>
<
a
:DataMessageStatusDetail>
<
a
:Entity>LoId_LO1:PersonId_13</
a
:Entity>
<
a
:Message>RawPercentage updated successfully. Mastery needs to be enabled for organisation/customer to update mastery status.</
a
:Message>
<
a
:SyncKey/>
<
a
:Type>Warning</
a
:Type>
</
a
:DataMessageStatusDetail>
</
a
:StatusDetails>
</
AddMessageResult
>
</
AddMessageResponse
>
</
s
:Body>
</
s
:Envelope>