The cmi5 profile is a specification that expands xAPI into the LMS-centric, single-learner distributed learning model. It can be used in other ways, but the primary use case is to behave in a traditional LMS model. Note: Vocabulary terms that are not managed by the cmi5 project and referenced from other controlled vocabularies are higlighted in yellow .
Date Created: 2016-6-09
Last Modified: 2017-03-22
Label Scope Note ID (IRI)
abandoned In the absence of a Terminated statement, the LMS MUST make the determination if an AU abnormally terminated a session by monitoring new statement or state API requests made for the same learner/course registration for a different AU. The LMS MUST record an Abandoned statement on behalf of the AU indicating an abnormal session termination. After recording an Abandoned statement, the LMS MUST NOT allow any additional statements to be recorded for that session. https://w3id.org/xapi/adl/verbs/abandoned
completed The AU MUST record a statement containing the Completed verb when the learner has experienced all relevant material in an AU. The AU MUST NOT issue multiple statements with Completed for the same AU within a given AU session or course registration for a given learner. http://adlnet.gov/expapi/verbs/completed
failed The AU MUST record a statement containing the Failed verb when the learner has attempted and failed the AU. If the Failed statement contains a (scaled) score, the (scaled) score MUST be less than the masteryScore indicated in the LMS Launch Data. (See xAPI State Data Model, Section 10.0 - masteryScore). http://adlnet.gov/expapi/verbs/failed
initialized An Initialized statement is used by the AU to indicate that it has been fully initialized and MUST follow the Launched statement created by the LMS within a reasonable period of time.The AU MUST use Initialized in the first statement (of any kind) in the AU session. The AU MUST NOT issue multiple statements with Initialized for the same AU within a given AU session. http://adlnet.gov/expapi/verbs/initialized
launched The LMS MUST use this verb in a statement recorded in the LRS before launching an AU. The LMS MUST NOT issue multiple statements with Launched for the same AU within a given AU session. A Launched statement is used to indicate that the LMS has launched the AU. It SHOULD be used in combination with the Initialized statement sent by the AU in a reasonable period of time to determine whether the AU was successfully launched. http://adlnet.gov/expapi/verbs/launched
passed The AU MUST record a statement containing the Passed verb when the learner has attempted and passed the AU. If the Passed statement contains a (scaled) score, the (scaled) score MUST be equal to or greater than the masteryScore indicated in the LMS. The LMS MUST use either Passed or Completed statements (or both) based on the moveOn criteria for the AU as provided in the LMS Launch Data. Launch Data. http://adlnet.gov/expapi/verbs/passed
satisfied The LMS MUST use the Satisfied statement when the learner has met the moveOn criteria of all AU's in a block. In this statement the LMS MUST use the LMS generated block id as the Object id and use =https://w3id.org/xapi/cmi5/activitytype/block as the value of the type property in the Object's Definition. https://w3id.org/xapi/adl/verbs/satisfied
terminated The LMS MUST use the Terminated statement to determine that the AU session has ended. Upon receiving a 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. http://adlnet.gov/expapi/verbs/terminated
voided No cmi5-defined Statements can use Voided. http://adlnet.gov/expapi/verbs/voided
waived The LMS MUST use this verb in a statement recorded in the LRS when it determines that the AU may be waived. A statement containing a Waived verb MUST include a reason in the extension property of the Statement Result. https://w3id.org/xapi/adl/verbs/waived
Label Description Scope Note ID (IRI) Closely Related Term
block A block represents a number of Assignable Units of which progress (completion/success) is rolled up to. In cmi5 it is every level above the AU and below the Course. Metadata consists of id, title, description, and objectives. https://w3id.org/xapi/cmi5/activitytype/block
course A course represents an amount of content that is published and registered for with the purpose of gaining completion. It is represented with a Course Structure Format in cmi5 as the highest level of content (above Block and AU). Metadata consists of id, title, description. https://w3id.org/xapi/cmi5/activitytype/course http://wordnet-rdf.princeton.edu/wn31/100886144-n
objective This activity is only defined in the Course Structure Format (CSF). Objectives usage outside of course structure is not defined. The same Objective can be referenced by multiple AU or Blocks. There are 2 ways to interpret meeting an Objective. One or All elements referencing the objective need to be satisfied (or met moveOn criteria). http://adlnet.gov/expapi/activities/objective
Label Description Scope Note ID (IRI)
cmi5 Indicates a cmi5 defined Statement. Intended to be referenced by a context category. An Activity object with an id of https://w3id.org/xapi/cmi5/context/categories/cmi5 in the category context activities list to be used in cmi5 defined Statements. https://w3id.org/xapi/cmi5/context/categories/cmi5
moveon Indicates a Statement with a success or completion result property. Intended to be referenced by a context category. cmi5 defined statements with a Result object that include either success or completion properties MUST have an Activity object with an id of https://w3id.org/xapi/cmi5/context/categories/moveon in the category context activities list. Other statements MUST NOT include this Activity. https://w3id.org/xapi/cmi5/context/categories/moveon
Label Description ID (IRI) Range Example Values
progress An integer value bewteen 0 and 100 (inclusive) indicating the completion of the Activity/AU as a percentage. Used as a result extension. https://w3id.org/xapi/cmi5/result/extensions/progress xsd:integer
reason Indicates why the Activity/AU was waived. Used as a result extension. https://w3id.org/xapi/cmi5/result/extensions/reason xsd:string
Label Description Scope Note ID (IRI) Range Example Values
launchmode String indicating which mode the AU was launched with by the LMS. Used as a context extension. LMS MUST add launchMode to the context of a Launched statement. https://w3id.org/xapi/cmi5/extensions/launchmode xsd:string
launchParameters The launch parameters used to launch this AU. Parameters are endpoint, fetch, actor, registration, and activityId. Used as a context extension. LMS MUST add launchParameters to the context of a Launched statement when it is provided in the LMS launch data. https://w3id.org/xapi/cmi5/extensions/launchParameters xsd:string
launchurl Fully qualified URL equivalent to the one the LMS used to launch the AU and without name value pairs. Used as a context extension. The LMS MUST put a fully qualified URL equivalent to the one that the LMS used to launch the AU without the name/value pairs included as defined in the context extensions of the Launched statement. https://w3id.org/xapi/cmi5/context/extensions/launchurl xsd:anyURI
masteryscore Decimal value between 0 and 1 indicating the score needed to provide a passed Statement. Determined on an AU plus registration basis. Used as a context extension. LMS MUST add masteryScore to the context of a Launched statement when it is provided in the LMS launch data. An AU MUST include the masteryScore value provided by the LMS in the context as an extension for passed/failed Statements it makes based on the masteryScore. https://w3id.org/xapi/cmi5/context/extensions/masteryscore xsd:decimal
moveon Controlled vocabulary which tells the conditions under which the AU is considered satisfied for the purposes of determining overall completion or prerequisites for other activities. Used as a context extension. LMS MUST add moveOn to the context of a Launched statement. https://w3id.org/xapi/cmi5/extensions/moveon xsd:string
publisherid A unique IRI for a single AU that is used to identify it as belonging to the publisher. Provided in Course Structure and must be in all cmi5 defined and cmi5 allowed Statements. Used as a context extension. The LMS MUST record the publisher ID in the State API prior to launching an AU. The LMS MUST also provide the publisher ID in the context as an extension for all cmi5 defined and cmi5 allowed statements it makes directly in the LRS. An AU MUST include the publisher ID provided by the LMS in the context as an extension for all cmi5 defined and cmi5 allowed statements it makes directly in the LRS. https://w3id.org/xapi/cmi5/context/extensions/publisherid xsd:anyURI
sessionid A unique String identifier for a single AU launch session based on actor and course registration. Generated by LRS and must be in all cmi5 defined and cmi5 allowed Statements. Used as a context extension. The value for session ID is generated by the LMS. The LMS MUST also record the session ID in the State API prior to launching an AU. The LMS MUST also provide the session ID in the context as an extension for all cmi5 defined and cmi5 allowed statements it makes directly in the LRS. An AU MUST include the session ID provided by the LMS in the context as an extension for all cmi5 defined and cmi5 allowed statements it makes directly in the LRS. https://w3id.org/xapi/cmi5/context/extensions/sessionid xsd:anyURI