CMI 5 Working Group Meeting Minutes – October 30th, 2015 - AICC/CMI-5_Spec_Current GitHub Wiki

cmi5 Working Group Meeting Minutes - October 30th, 2015

Attendees

  • Bill McDonald - cmi5 Working Group Leader
  • Andy Johnson – ADL
  • Bernard Bouyt - Airbus
  • Ray Lowery – Pratt & Whitney
  • Ben Clark – Rustici Software
  • Art Werkenthin – RISC inc
  • Henry Ryng – inXsol
  • Yegor Yenikyeyev - Thrivist
  • Dennis Hall - Learning-Templates.com
  • David Pesce – Exputo
  • John Blackmon – Trivantis
  • Timothy Johnson – Scitent
  • Richard Hodgkins - Intuition Publishing
  • Patrick Selby - LexisNexis

Notes

Statement “Time-based” Rules

The AU launch/session model for cmi5 is synchronous while the xAPI communication method is ansychronous which sometime causes confusion about how an LMS/LRS would deal with statement order rules. The group further discussed cmi5 specification rules regarding the timing/sequencing of statements at length at made the following decisions:

  • All Statements MUST have an UUID. This will prevent duplicate statements that might occur due to timing issues.
  • (Context) timestamps are still required on all statements but they do not have to be unique – Some statements could actually occur at the moment in time (like Passed and Terminate). The AU should indicate with the timestamp when condition actually occurred.
  • The LMS obligation for Initialized statements will be removed – The LMS is not required to reject any AU any statements received before the Initialized statement.
  • The LMS obligation for Terminated statements will be modified - The LMS will wait a “specified period of time” after receiving a Terminated statement after which it will no longer accept statements for the AU session. This period of time is LMS design specific. This is necessary to account for different LMS server/network timing issues.
  • All other existing rules for LMS statement rejection are sufficient. The other existing rules for LMS to reject statements based on verb/statement duplication are suficient to handle statement order/timing issues.

It was also noted that batching together AU statements in a single post (when they occur closely together or “at the same time”) should be recommend as it could mitigate statement timing issues (by reducing numbers of posts).

(Proposed changes) Modify the following sections:

9.1 Statement ID

All statements made by an AU MUST have a statement ID in UUID format (as defined in the xAPI specification).

9.3.2 Initialized

Remove “Verify that this verb is recorded by the AU immediately after launch” from LMS Obligations.

9.3.8 Terminated

Change LMS obligations to read as follows:

The LMS MUST use the "Terminated" statement to determine that the AU session has ended. Upon receiving an "Terminated" statement, the LMS MUST wait a specified period of time (defined by the LMS implementation) after which it MUST reject statements (of any kind) for the AU session. In the absence of an "Terminated" statement the LMS will make the determination if an AU abnormally terminated a session by monitoring new statement or state API calls made for the same leaner/course registration for a different AU. The LMS MUST record a "Abandoned" statement on behalf of the AU indicating an abnormal session termination per section 9.3.8 Abandoned.

Next Meeting:

November 6th, 2015 – 10:30 am US Eastern Time

⚠️ **GitHub.com Fallback** ⚠️