DOCUMENT NUMBER: CMI 013
XML for CMI Communication
Version 1.0.0
March 2007
THIS DOCUMENT IS CONTROLLED BY:
AICC CMI Subcommittee
ALL REVISIONS SHALL BE APPROVED
BY THE ABOVE ORGANIZATION PRIOR TO RELEASE
POINT OF CONTACT:
Scott Bergstrom AICC Administrator
P.O. Box 472
Sugar City, ID 83448-0472
Caveats...
The data contained in this document has been collected by the AICC as an information resource for computer-based training programs. Neither the AICC nor any of its members assumes nor shall any of them have any responsibility for any use by anyone for any purpose of this document or of the data which it contains.
©2007 AICC
All rights reserved.
Telephone: (208) 496-1136 E-mail: admin@aicc.org
Prepared by:
Jack Hyde, AICC Kevin Schlipper, EEDO Shota Aki, SkillSoft
Approved by: Willaim A McDonald Date
Alteon Training
CMI Subcommittee Chairman
Approved by: Neil Cramer Date
Northwest Airlines AICC Chairman
REGISTRATION FORM
To receive free notification of revisions to this document, mail or fax the following information to
Scott Bergstrom AICC Administrator
P.O. Box 472
Sugar City, ID 83448-0472
Telephone: (208) 496-1136 E-mail: admin@aicc.org
Name: | |
Title: | |
Organization: | |
Address: | |
City: | |
State: | Zip Code: |
Telephone: | Fax: |
E-mail: |
ABSTRACT
This document discusses using XML to encode the communication from an LMS/CMI system to content, and from content back to the LMS/CMI system.
This document includes examples, and XML schemas describing the communication.
KEY WORDS
HTTP CMI LMS AU | Course structure Communication, CBT Guidelines |
The use of registered names, trademarks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use.
REVISION HISTORY
1.0.0 14 March 2007
Initial document.
Table of Contents
This document is designed to describe an XML binding for the AICC CMI communication data model. It uses the following approaches to this description: XML schemas for the binding, and examples of messages using the XML bindings.
This document provides a guide to binding the CMI communication data model to an XML file. The scope of this document does not extend to how this information may be used. One use includes communicating information on student behaviors and performance from an Offline CMI system to an LMS. Other uses for this binding may also be appropriate.
The version number used herein is broken into 3 parts. The first part is the major version, the second is the minor version, and the third is the errata version. The specification version is a combination of the first two (major and minor). The namespace of XSDs will only reflect the specification version (i.e. the major and minor version numbers). The errata version is specific to each document (i.e., the errata version is not necessarily synchronized for the specification document and each XSD document). For example, the spec may be on version 1.2 while the main document might be 1.2.3, ToAU schema might be on 1.2.5 and ToLMS might be on 1.2.7.
This section covers all the data that may be communicated between the CMI and content.
In the following chapters, the binding of this data to an XML format is described in an XML schema (XSD).
The table below lists all elements in this data model. Each element is defined and described in CMI Guidelines for Interoperability version 4.0, AICC document CMI001. The section indicated is where the description is located.
Table Legend:
Data Element Indicates the name of the data element.
Section This column refers to the CMI Guidelines document (CMI001 version 4.0). It indicates the chapter and section in which the definition of the data element may be found.
CMI Obligation This indicates whether the data element is required or optional for a CMI or LMS system.
Comm Directn The direction in which the data travels. If it goes to the CMI from the AU the →symbol is used. If it goes from the AU to the CMI the ← symbol appears. If the data values goes both ways, the ↔ symbol appears.
AU Obligation This indicates whether the data element is required or optional for an AU (or content).
Data Element | Section | CMI Obligation | Comm Directn | AU Obligation |
Core | 2.1 | Mandatory | ↔ | Mandatory |
Core.Student Id | 2.1.1 | Mandatory | → | Optional |
Core.Student Name | 2.1.2 | Mandatory | → | Optional |
Core.Output File (N/A) | 2.1.3 | N/A | N/A | |
Core.Lesson Location | 2.1.4 | Mandatory | ↔ | Mandatory |
Core.Credit | 2.1.5 | Mandatory | → | Optional |
Core.Lesson Status | 2.1.6 | Mandatory | ↔ | Mandatory |
Core.Exit | 2.1.7 | Mandatory | ← | Mandatory |
Core.Entry | 2.1.8 | Mandatory | → | Optional |
Core.File Path (N/A) | 2.1.9 | N/A | N/A | |
Core.Score | 2.1.10 | Mandatory | ↔ | Mandatory |
Core.Session Time | 2.1.11 | Mandatory | ← | Mandatory |
Core.Total Time | 2.1.12 | Mandatory | → | Optional |
Core.Lesson Mode | 2.1.13 | Optional | → | Optional |
Suspend Data | 2.2 | Mandatory | ↔ | Mandatory |
Launch Data | 2.3 | Mandatory | → | Optional |
Comments From Learner | 2.4 | Optional | ← | Optional |
Itemized Comments From Learner | 2.5 | Optional | ← | Optional |
Itemized Comments From Learner.Content | 2.5.1 | Optional | ← | Optional |
Itemized Comments From Learner.Course_Id | 2.5.2 | Optional | ← | Optional |
Itemized Comments From Learner.Date | 2.5.3 | Optional | ← | Optional |
Itemized Comments From Learner.Student_Id | 2.5.4 | Optional | ← | Optional |
Itemized Comments From Learner.Lesson_Id | 2.5.5 | Optional | ← | Optional |
Itemized Comments From Learner.Location | 2.5.6 | Optional | ← | Optional |
Itemized Comments From Learner.Time | 2.5.7 | Optional | ← | Optional |
Comments From LMS | 2.6 | Optional | → | Optional |
Data Element | Section | CMI Obligation | Comm Directn | AU Obligation |
Evaluation (N/A) | 2.7 | N/A | Optional | |
Evaluation.Comments_File | 2.7.1 | N/A | Optional | |
Evaluation.Course_Id | 2.7.2 | Optional | → | Optional |
Evaluation.Interactions_File | 2.7.3 | N/A | Optional | |
Evaluation.Objective_Status_File | 2.7.4 | N/A | Optional | |
Evaluation.Path_File | 2.7.5 | N/A | Optional | |
Evaluation.Performance_File | 2.7.6 | N/A | Optional | |
Objectives | 2.8 | Optional | ↔ | Optional |
Objectives.ID | 2.8.1 | Optional | ↔ | Optional |
Objectives.Score | 2.8.2 | Optional | ↔ | Optional |
Objectives.Status | 2.8.3 | Optional | ↔ | Optional |
Objectives.Date | 2.8.4 | Optional | ← | Optional |
Objectives.Time | 2.8.5 | Optional | ← | Optional |
Objectives.Mastery Time | 2.8.6 | Optional | ← | Optional |
Student Data | 2.9 | Optional | ↔ | Optional |
Student Data.Attempt Number | 2.9.1 | Optional | → | Optional |
Student Data.Tries | 2.9.2 | Optional | ← | Optional |
Student Data.Tries.Score | 2.9.2.1 | Optional | ← | Optional |
Student Data.Tries.Status | 2.9.2.2 | Optional | ← | Optional |
Student Data.Tries.Time | 2.9.2.3 | Optional | ← | Optional |
Student Data.Mastery Score | 2.9.3 | Optional | → | Optional |
Student Data.Max Time Allowed | 2.9.3 | Optional | → | Optional |
Student Data.Time Limit Action | 2.9.4 | Optional | → | Optional |
Student Data.Tries During Lesson | 2.9.5 | Optional | ← | Optional |
Student Data.Sessions Journal | 2.9.7 | Optional | → | Optional |
Student Data.Sessions Journal.Score | 2.9.7.1 | Optional | → | Optional |
Student Data.Sessions Journal.Status | 2.9.7.2 | Optional | → | Optional |
Student Preference | 2.1 | Optional | ↔ | Optional |
Student Preference.Audio | 2.10.1 | Optional | ↔ | Optional |
Student Preference.Language | 2.10.2 | Optional | ↔ | Optional |
Student Preference.Lesson Type | 2.10.3 | Optional | ↔ | Optional |
Student Preference.Speed | 2.10.4 | Optional | ↔ | Optional |
Student Preference.Text | 2.10.5 | Optional | ↔ | Optional |
Student Preference.Text Color | 2.10.6 | Optional | ↔ | Optional |
Student Preference.Text Location | 2.10.7 | Optional | ↔ | Optional |
Student Preference.Text Size | 2.10.8 | Optional | ↔ | Optional |
Student Preference.Video | 2.10.9 | Optional | ↔ | Optional |
Student Preference.Windows | 2.10.10 | Optional | ↔ | Optional |
Interactions | 2.11 | Optional | ← | Optional |
Interactions.ID | 2.11.1 | Optional | ← | Optional |
Interactions.Objectives | 2.11.2 | Optional | ← | Optional |
Interactions.Date | 2.11.3 | Optional | ← | Optional |
Interactions.Time | 2.11.4 | Optional | ← | Optional |
Interactions.Type | 2.11.5 | Optional | ← | Optional |
Interactions.Correct Responses | 2.11.6 | Optional | ← | Optional |
Interactions.Weighting | 2.11.7 | Optional | ← | Optional |
Interactions.Student Response | 2.11.8 | Optional | ← | Optional |
Interactions.Result | 2.11.9 | Optional | ← | Optional |
Interactions.Latency | 2.11.10 | Optional | ← | Optional |
Paths | 2.12 | Optional | ← | Optional |
Paths.Location Id | 2.12.1 | Optional | ← | Optional |
Paths.Date | 2.12.2 | Optional | ← | Optional |
Data Element | Section | CMI Obligation | Comm Directn | AU Obligation |
Paths.Time | 2.12.3 | Optional | ← | Optional |
Paths.Status | 2.12.4 | Optional | ← | Optional |
Paths.Why Left | 2.12.5 | Optional | ← | Optional |
Paths.Time In Element | 2.12.6 | Optional | ← | Optional |
Student Demographics | 2.13 | Optional | → | Optional |
Student Demographics.City | 2.13.1 | Optional | → | Optional |
Student Demographics.Class | 2.13.2 | Optional | → | Optional |
Student Demographics.Company | 2.13.3 | Optional | → | Optional |
Student Demographics.Country | 2.13.4 | Optional | → | Optional |
Student Demographics.Experience | 2.13.5 | Optional | → | Optional |
Student Demographics.Familiar Name | 2.13.6 | Optional | → | Optional |
Student Demographics.Instructor Name | 2.13.7 | Optional | → | Optional |
Student Demographics.Native Language | 2.13.8 | Optional | → | Optional |
Student Demographics.State | 2.13.9 | Optional | → | Optional |
Student Demographics.Street Address | 2.13.10 | Optional | → | Optional |
Student Demographics.Telephone | 2.13.11 | Optional | → | Optional |
Student Demographics.Title | 2.13.12 | Optional | → | Optional |
Student Demographics.Years Experience | 2.13.13 | Optional | → | Optional |
The information sent to the AU differs from the information sent to the LMS. Two XML schemas are thus defined to represent the CMI XML: toAU.xsd and toLMS.xsd respectively.
While the schemas allow a description of the data type for each element, the description is not necessarily comprehensive for the complex data types in the AICC CMI Guidelines. Because the data types for some of the elements are so complex, it would burden the schemas to the point where understanding is compromised. The schemas are not meant to be a comprehensive test suite for CMI communication instances.
Best practice recommendation: Producers of CMI XML should omit leading and trailing whitespace for element values. Consumers of CMI XML should strip leading and trailing whitespace when processing element values.
This section describes the XSD that should be used for the LMS to AU communication (aka toAU.XSD)
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="http://www.aicc.org/xmlbindings/cmixml/1.0/ToAU" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:aicc="http://www.aicc.org/xmlbindings/cmixml/1.0/ToAU" elementFormDefault="qualified">
<annotation>
<documentation>The version number is broken into 3 parts. The first part is the major version, the second is the minor version, and the third is the errata version. The specification version is a combination of the first two (major and minor). The namespace of XSDs will only reflect the specification version (i.e. the major and minor version numbers). The errata version is specific to each document(i.e., the errata version is not necessarily synchronized for the specification document and each XSD document). For example, the spec may be on version 1.2 while the main document might be 1.2.3, ToAU schema might be on 1.2.5 and ToLMS might be on 1.2.7.</documentation>
</annotation>
<element name="toAUCommunication">
<complexType>
<sequence>
<element name="core">
<complexType>
<sequence>
<element name="studentId" type="aicc:CMIIdentifierINI"/>
<element name="studentName" type="aicc:CMIStudentName"/>
<element name="lessonLocation" type="aicc:CMIString255INI"/>
<element name="credit">
<simpleType>
<restriction base="string">
<enumeration value="credit"/>
<enumeration value="no-credit"/>
<enumeration value=""/>
</restriction>
</simpleType>
</element>
<element name="lessonStatus" type="aicc:statusType"/>
<element name="entry">
<simpleType>
<restriction base="string">
<enumeration value="ab-initio"/>
<enumeration value="resume"/>
<enumeration value=""/>
</restriction>
</simpleType>
</element>
<element name="score" type="aicc:scoreType"/>
<element name="totalTime" type="aicc:CMITimespan"/>
<element name="lessonMode" minOccurs="0">
<simpleType>
<restriction base="string">
<enumeration value="browse"/>
<enumeration value="normal"/>
<enumeration value="review"/>
</restriction>
</simpleType>
</element>
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
<element name="suspendData" type="aicc:CMIString4096INI"/>
<element name="launchData" type="aicc:CMIString4096INI"/>
<element name="commentsFromLms" type="aicc:CMIString4096INI" minOccurs="0"/>
<element name="evaluation" minOccurs="0">
<complexType>
<sequence>
<element name="courseId" type="aicc:CMIIdentifierDevID"/>
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
<element name="objectives" minOccurs="0">
<complexType>
<sequence>
<element name="objective" maxOccurs="unbounded">
<complexType>
<sequence>
<element ref="aicc:id"/>
<element name="score" type="aicc:scoreType"
minOccurs="0"/>
<element name="status"
type="aicc:statusType" minOccurs="0"/>
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
<element name="studentData" minOccurs="0">
<complexType>
minOccurs="0"/> minOccurs="0"/>
<sequence>
<element name="attemptNumber" type="integer"
<element name="masteryScore" type="aicc:CMIDecimal"
<element name="maxTimeAllowed"
type="aicc:CMITimespan" minOccurs="0"/>
<element name="timeLimitAction" minOccurs="0">
<simpleType>
<restriction base="string">
<enumeration value="Exit, Message"/>
<enumeration value="Exit, No Message"/>
<enumeration value="Continue, Message"/>
<enumeration value="Continue, No Message"/>
</restriction>
</simpleType>
</element>
<element name="sessionsJournal" minOccurs="0">
<complexType>
<sequence>
<element name="session"
maxOccurs="unbounded">
<complexType>
<sequence>
<element name="score"
type="aicc:scoreType" minOccurs="0"/> type="aicc:statusType" minOccurs="0"/>
<element name="status"
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
<element name="studentPreference" minOccurs="0">
<complexType>
<sequence>
<element name="audio" minOccurs="0">
<simpleType>
<restriction base="integer">
<minInclusive value="-1"/>
<maxInclusive value="100"/>
</restriction>
</simpleType>
</element>
<element name="language" type="aicc:CMIString255INI"
minOccurs="0"/>
<element name="lessonType"
type="aicc:CMIString255INI" minOccurs="0"/>
<element name="speed" minOccurs="0">
<simpleType>
<restriction base="integer">
minOccurs="0"/>
<minInclusive value="-100"/>
<maxInclusive value="100"/>
</restriction>
</simpleType>
</element>
<element name="text" minOccurs="0">
<simpleType>
<restriction base="integer">
<enumeration value="-1"/>
<enumeration value="0"/>
<enumeration value="1"/>
</restriction>
</simpleType>
</element>
<element name="textColor" type="aicc:CMIString255INI"
<element name="textLocation"
type="aicc:CMIString255INI" minOccurs="0"/>
<element name="textSize" type="aicc:CMIString255INI"
minOccurs="0"/> minOccurs="0"/>
<element name="video" type="aicc:CMIString255INI"
<element name="windows" minOccurs="0">
<complexType>
<sequence>
<element name="window" type="string"
maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
<element name="studentDemographics" minOccurs="0">
<complexType>
<sequence>
<element name="city" type="aicc:CMIString255INI"
minOccurs="0"/> minOccurs="0"/> minOccurs="0"/> minOccurs="0"/>
<element name="class" type="aicc:CMIIdentifierINI"
<element name="company" type="aicc:CMIString255INI"
<element name="country" type="aicc:CMIString255INI"
<element name="experience"
type="aicc:CMIString255INI" minOccurs="0"/>
<element name="familiarName" type="aicc:CMIString255INI" minOccurs="0"/>
<element name="instructorName" type="aicc:CMIString255INI" minOccurs="0"/>
<element name="nativeLanguage" type="aicc:CMIString255INI" minOccurs="0"/>
<element name="state" type="aicc:CMIString255INI"
minOccurs="0"/>
<element name="streetAddress"
type="aicc:CMIString255INI" minOccurs="0"/>
minOccurs="0"/> minOccurs="0"/>
<element name="telephone" type="aicc:CMIString255INI"
<element name="title" type="aicc:CMIString255INI"
<element name="yearsExperience" minOccurs="0">
<simpleType>
<restriction base="integer">
<minInclusive value="0"/>
<maxInclusive value="99"/>
</restriction>
</simpleType>
</element>
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
<group ref="aicc:extension"/>
</sequence>
<attribute name="version" type="string" use="required"/>
</complexType>
</element>
<element name="date" type="string"/>
<element name="id" type="aicc:CMIIdentifierDevID"/>
<simpleType name="statusType">
<restriction base="string">
<enumeration value="passed"/>
<enumeration value="failed"/>
<enumeration value="completed"/>
<enumeration value="incomplete"/>
<enumeration value="not attempted"/>
<enumeration value="browsed"/>
</restriction>
</simpleType>
<complexType name="scoreType">
<sequence>
<element name="raw" type="aicc:CMIDecimal" nillable="true"/>
<element name="max" type="aicc:CMIDecimal" minOccurs="0"/>
<element name="min" type="aicc:CMIDecimal" minOccurs="0"/>
</sequence>
</complexType>
<element name="time" type="string"/>
<group name="extension">
<sequence>
<any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</group>
<simpleType name="CMIString255INI">
<restriction base="string">
<maxLength value="255"/>
<whiteSpace value="collapse"/>
<pattern value="[^\r]*"/>
</restriction>
</simpleType>
<simpleType name="CMIIdentifierINI">
<restriction base="string">
<maxLength value="255"/>
<whiteSpace value="collapse"/>
<pattern value='[^\s"]+'/>
</restriction>
</simpleType>
<simpleType name="CMIStudentName">
<restriction base="string">
<maxLength value="255"/>
<whiteSpace value="collapse"/>
<pattern value="[\c\- ]+,[\c\-\. ]*"/>
</restriction>
</simpleType>
<simpleType name="CMITimespan">
<restriction base="string">
<pattern value="\d{2,4}:\d{2}:\d{2}(.\d{1,2})?"/>
</restriction>
</simpleType>
<simpleType name="CMIString4096INI">
<restriction base="string">
<maxLength value="4096"/>
<whiteSpace value="collapse"/>
<pattern value="[^\[\]]*"/>
</restriction>
</simpleType>
<simpleType name="CMIIdentifierDevID">
<restriction base="string">
<pattern value="[A-Za-z\d_\-\{\}]*"/>
</restriction>
</simpleType>
<simpleType name="CMIDecimal">
<restriction base="string">
<maxLength value="255"/>
<pattern value="(-)?\d*(.\d+)?"/>
</restriction>
</simpleType>
</schema>
This section describes the XSD that should be used for the AU to LMS communication (aka toLMS.XSD)
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="http://www.aicc.org/xmlbindings/cmixml/1.0/ToLMS" xmlns:aicc="http://www.aicc.org/xmlbindings/cmixml/1.0/ToLMS" xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<annotation>
<documentation>The version number is broken into 3 parts. The first part is the major version, the second is the minor version, and the third is the errata version. The specification version is a combination of the first two (major and minor). The namespace of XSDs will only reflect the specification version (i.e. the major and minor version numbers). The errata version is specific to each document(i.e., the errata version is not necessarily synchronized for the specification document and each XSD document). For example, the spec may be on version 1.2 while the main document might be 1.2.3, ToAU schema might be on 1.2.5 and ToLMS might be on 1.2.7.</documentation>
</annotation>
<element name="toLMSCommunication">
<complexType>
<sequence>
<element name="contentIds" minOccurs="0">
<annotation>
<documentation>This is a placeholder element used to store IDs related to the content in order to eliminate repetition of data.</documentation>
</annotation>
<complexType>
<sequence>
<element name="studentId" type="aicc:CMIIdentifierINI" minOccurs="0"/>
<element name="courseId" type="aicc:CMIIdentifierDevID" minOccurs="0"/>
<element name="lessonId" type="aicc:CMIIdentifierDevID" minOccurs="0"/>
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
<element name="core">
<complexType>
<sequence>
<element name="lessonLocation" type="aicc:CMIString255INI"/>
<element name="lessonStatus">
<simpleType>
<restriction base="aicc:statusType">
<whiteSpace value="collapse"/>
</restriction>
</simpleType>
</element>
<element name="exit">
<simpleType>
<restriction base="string">
<enumeration value="time-out"/>
<enumeration value="suspend"/>
<enumeration value="logout"/>
<enumeration value=""/>
</restriction>
</simpleType>
</element>
<element name="score" type="aicc:scoreType"/>
<element name="sessionTime" type="aicc:CMITimespan"/>
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
<element name="suspendData" type="aicc:CMIString4096INI"/>
<element name="commentsFromLearner" type="aicc:CMIString4096INI" minOccurs="0"/>
<element name="itemizedCommentsFromLearner" minOccurs="0">
<complexType>
<sequence>
<element name="comment" maxOccurs="unbounded">
<complexType>
<sequence>
<element name="content"
type="aicc:CMIString255CSV"/> minOccurs="0"/>
<element name="date" type="aicc:CMIDate"
<element name="location"
type="aicc:CMIString255CSV" minOccurs="0"/>
<element name="time" type="aicc:CMITime"
minOccurs="0"/>
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
<element name="objectives" minOccurs="0">
<complexType>
<sequence>
<element name="objective" maxOccurs="unbounded">
<complexType>
<sequence>
<element ref="aicc:id"/>
<element name="score" type="aicc:scoreType"
minOccurs="0"/>
<element name="status"
type="aicc:statusType" minOccurs="0"/>
<element name="date" type="aicc:CMIDate"
minOccurs="0"/> minOccurs="0"/>
<element name="time" type="aicc:CMITime"
<element name="masteryTime"
type="aicc:CMITimespan" minOccurs="0"/>
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
<element name="studentData" minOccurs="0">
<complexType>
<sequence>
<element name="triesDuringLesson" minOccurs="0">
<simpleType>
<restriction base="integer">
<minInclusive value="0"/>
</restriction>
</simpleType>
</element>
<element name="tries" minOccurs="0">
<complexType>
<sequence>
<element name="try">
<complexType>
<sequence>
<element name="score"
type="aicc:scoreType" minOccurs="0"/>
<element name="status"
type="aicc:statusType" minOccurs="0"/> type="aicc:CMITime" minOccurs="0"/>
<element name="time"
<group ref="aicc:extension"/>
use="required"/>
</sequence>
<attribute name="tryNumber" type="int"
</complexType>
</element>
</sequence>
</complexType>
</element>
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
<element name="studentPreference" minOccurs="0">
<complexType>
<sequence>
<element name="audio" minOccurs="0">
<simpleType>
<restriction base="integer">
<minInclusive value="-1"/>
<maxInclusive value="100"/>
</restriction>
</simpleType>
</element>
<element name="language" type="aicc:CMIString255INI"
minOccurs="0"/>
<element name="lessonType"
type="aicc:CMIString255INI" minOccurs="0"/>
<element name="speed" minOccurs="0">
<simpleType>
<restriction base="integer">
<minInclusive value="-100"/>
<maxInclusive value="100"/>
</restriction>
</simpleType>
</element>
<element name="text" minOccurs="0">
<simpleType>
<restriction base="integer">
<enumeration value="-1"/>
<enumeration value="0"/>
<enumeration value="1"/>
</restriction>
</simpleType>
</element>
<element name="textColor" type="aicc:CMIString255INI"
minOccurs="0"/>
<element name="textLocation"
type="aicc:CMIString255INI" minOccurs="0"/>
<element name="textSize" type="aicc:CMIString255INI"
minOccurs="0"/> minOccurs="0"/>
<element name="video" type="aicc:CMIString255INI"
<element name="windows" minOccurs="0">
maxOccurs="unbounded"/>
<complexType>
<sequence>
<element name="window" type="string"
</sequence>
</complexType>
</element>
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
<element name="interactions" minOccurs="0">
<complexType>
<sequence>
<element name="interaction" maxOccurs="unbounded">
<complexType>
<sequence>
<element ref="aicc:id" minOccurs="0"/>
<element name="interactionObjectives"
minOccurs="0">
maxOccurs="unbounded"/>
minOccurs="0"/> minOccurs="0"/>
minOccurs="0">
<complexType>
<sequence>
<element ref="aicc:id"
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
<element name="date" type="aicc:CMIDate"
<element name="time" type="aicc:CMITime"
<element name="type" minOccurs="0">
<simpleType>
<restriction base="string">
<enumeration value="true-false"/>
<enumeration value="choice"/>
<enumeration value="fill-in"/>
<enumeration value="matching"/>
<enumeration value="performance"/>
<enumeration value="sequencing"/>
<enumeration value="likert"/>
<enumeration value="numeric"/>
</restriction>
</simpleType>
</element>
<element name="correctResponses"
<complexType>
<sequence>
<element name="correctResponse"
type="string" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
<element name="weighting" type="aicc:CMIDecimal" minOccurs="0"/>
type="string" minOccurs="0"/> minOccurs="0"/>
<element name="studentResponse"
<element name="result" type="string"
<element name="latency"
type="aicc:CMITimespan" minOccurs="0"/>
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
<element name="paths" minOccurs="0">
<complexType>
<sequence>
<element name="path" maxOccurs="unbounded">
<complexType>
<sequence>
<element name="locationId" type="aicc:CMIIdentifierINI" minOccurs="0"/>
<element name="date" type="aicc:CMIDate"
minOccurs="0"/> minOccurs="0"/>
selected"/> directed"/>
departure"/>
<element name="time" type="aicc:CMITime"
<element name="status" minOccurs="0">
<simpleType>
<restriction base="string">
<enumeration value="passed"/>
<enumeration value="completed"/>
<enumeration value="failed"/>
<enumeration value="incomplete"/>
</restriction>
</simpleType>
</element>
<element name="whyLeft" minOccurs="0">
<simpleType>
<restriction base="string">
<enumeration value="student
<enumeration value="lesson
<enumeration value="exit"/>
<enumeration value="directed
</restriction>
</simpleType>
</element>
<element name="timeInElement"
type="aicc:CMITimespan" minOccurs="0"/>
<group ref="aicc:extension"/>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
<group ref="aicc:extension"/>
</sequence>
<attribute name="version" type="string" use="required"/>
</complexType>
</element>
<element name="date" type="aicc:CMIDate"/>
<element name="id" type="aicc:CMIIdentifierDevID"/>
<simpleType name="statusType">
<restriction base="string">
<enumeration value="passed"/>
<enumeration value="failed"/>
<enumeration value="completed"/>
<enumeration value="incomplete"/>
<enumeration value="not attempted"/>
<enumeration value="browsed"/>
</restriction>
</simpleType>
<complexType name="scoreType">
<sequence>
<element name="raw" type="aicc:CMIDecimal"/>
<element name="max" type="aicc:CMIDecimal" minOccurs="0"/>
<element name="min" type="aicc:CMIDecimal" minOccurs="0"/>
</sequence>
</complexType>
<group name="extension">
<sequence>
<any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</group>
<simpleType name="CMIString255INI">
<restriction base="string">
<maxLength value="255"/>
<whiteSpace value="collapse"/>
<pattern value="[^\r]*"/>
</restriction>
</simpleType>
<simpleType name="CMIIdentifierINI">
<restriction base="string">
<maxLength value="255"/>
<whiteSpace value="collapse"/>
<pattern value='[^\s"]+'/>
</restriction>
</simpleType>
<simpleType name="CMITimespan">
<restriction base="string">
<pattern value="\d{2,4}:\d{2}:\d{2}(.\d{1,2})?"/>
</restriction>
</simpleType>
<simpleType name="CMIString4096INI">
<restriction base="string">
<maxLength value="4096"/>
<whiteSpace value="collapse"/>
<pattern value="[^\[\]]*"/>
</restriction>
</simpleType>
<simpleType name="CMIIdentifierDevID">
<restriction base="string">
<pattern value="[A-Za-z\d_\-\{\}]*"/>
</restriction>
</simpleType>
<simpleType name="CMIString255CSV">
<restriction base="string">
<maxLength value="255"/>
<pattern value='[^\r"]+'/>
</restriction>
</simpleType>
<simpleType name="CMIDate">
<restriction base="string">
<length value="10"/>
<pattern value="\d{4}/\d{2}/\d{2}"/>
</restriction>
</simpleType>
<simpleType name="CMITime">
<restriction base="string">
<minLength value="8"/>
<maxLength value="11"/>
<pattern value="\d{2}:\d{2}:\d{2}[.\d{1,2}]*"/>
</restriction>
</simpleType>
<simpleType name="CMIDecimal">
<restriction base="string">
<maxLength value="255"/>
<pattern value="(-)?\d*(.\d+)?"/>
</restriction>
</simpleType>
</schema>
<?xml version="1.0" encoding="UTF-8"?>
<toAUCommunication version="1.0" xmlns="http://www.aicc.org/xmlbindings/cmixml/1.0/ToAU" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.aicc.org/xmlbindings/cmixml/1.0/ToAU ToAU_1.0.0.xsd">
<core>
<studentId>jqh1674</studentId>
<studentName>Carsen, Randolf C</studentName>
<lessonLocation>Section1.12</lessonLocation>
<credit>credit</credit>
<lessonStatus>incomplete</lessonStatus>
<entry>resume</entry>
<score>
<raw>4</raw>
<max>25</max>
<min>0</min>
</score>
<totalTime>00:04:53.1</totalTime>
<lessonMode>normal</lessonMode>
</core>
<suspendData> eclnode = 12
bookmark.1 = sec1.8
</suspendData>
<launchData> test = true repeat = false help = 3
</launchData>
<commentsFromLms>
Ignore Section 3.1. Use the handout for the correct version of this information. A new lesson with the revised Section should be available by August 2008.
</commentsFromLms>
<objectives>
<objective>
<id>apu001</id>
<score>
<raw>4</raw>
<max>4</max>
</score>
<status>passed</status>
</objective>
</objectives>
<studentData>
<attemptNumber>1</attemptNumber>
<masteryScore>20</masteryScore>
<maxTimeAllowed>00:00:35:00</maxTimeAllowed>
<timeLimitAction>Exit, Message</timeLimitAction>
<sessionsJournal>
<session>
<score>
<raw>4</raw>
<max>25</max>
</score>
<status>incomplete</status>
</session>
</sessionsJournal>
</studentData>
<studentPreference>
<audio>0</audio>
<language>en-US</language>
<lessonType>Boeing-A16</lessonType>
<speed>0</speed>
<text>1</text>
<textColor>white</textColor>
<textLocation>800,655</textLocation>
<textSize>1</textSize>
<video>320x200;1,1</video>
<windows>
<window>320x200: 1,1</window>
<window>200,200; 800,655</window>
</windows>
</studentPreference>
<studentDemographics>
<city>Springfield</city>
<class>B767-P14A-PA</class>
<company>NBA (Not Bankrupt Airlines)</company>
<country>USA</country>
<experience>9 yr PIC</experience>
<familiarName>Randy</familiarName>
<instructorName>BAM</instructorName>
<nativeLanguage>de</nativeLanguage>
<state>PA</state>
<streetAddress>21142 9th St</streetAddress>
<telephone>PA6-5000</telephone>
<title>pilot</title>
<yearsExperience>19</yearsExperience>
</studentDemographics>
</toAUCommunication>
<?xml version="1.0" encoding="UTF-8"?>
<toLMSCommunication version="1.0" xmlns
="http://www.aicc.org/xmlbindings/cmixml/1.0/ToLMS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.aicc.org/xmlbindings/cmixml/1.0/ToLMS ToLMS_1.0.0.xsd">
<core>
<lessonLocation>Section8.11</lessonLocation>
<lessonStatus>passed</lessonStatus>
<exit>logout</exit>
<score>
<raw>23</raw>
<max>25</max>
<min>0</min>
</score>
<sessionTime>00:17:34.2</sessionTime>
</core>
<suspendData> eclnode = 18
bookmark.1 = sec1.8 bookmark.2 = sec2.3 bookmark.3 = sec4.12
</suspendData>
<commentsFromLearner>
Not a bad lesson, but I would have liked to have seen more examples shown.
</commentsFromLearner>
<objectives>
<objective>
<id>apu002</id>
<score>
<raw>10</raw>
<max>10</max>
</score>
<status>passed</status>
<date>2005/10/23</date>
<time>13:02:31</time>
<masteryTime>00:02:45.1</masteryTime>
</objective>
<objective>
<id>apu003</id>
<score>
<raw>6</raw>
<max>6</max>
</score>
<status>passed</status>
<date>2005/10/23</date>
<time>13:05:21</time>
<masteryTime>00:01:15.2</masteryTime>
</objective>
</objectives>
<studentData>
<triesDuringLesson>1</triesDuringLesson>
<tries>
<try tryNumber='1'>
<score>
<raw>23</raw>
</score>
<status>passed</status>
<time>00:17:34.2</time>
</try>
</tries>
</studentData>
<studentPreference>
<audio>0</audio>
<language>en-US</language>
<lessonType>Boeing-A16</lessonType>
<speed>0</speed>
<text>1</text>
<textColor>white</textColor>
<textLocation>800,655</textLocation>
<textSize>1</textSize>
<video>320x200;1,1</video>
<windows>
<window>320x200: 1,1</window>
<window>200,200; 800,655</window>
</windows>
</studentPreference>
<interactions>
<interaction>
<id>C001</id>
<interactionObjectives>
<id>apu002</id>
<id>apu018</id>
</interactionObjectives>
<date>2005/10/23</date>
<time>13:02:31</time>
<type>matching</type>
<correctResponses>
<correctResponse>{a.3,b.1,c.4,d.2}</correctResponse>
</correctResponses>
<weighting>1</weighting>
<studentResponse>a.3,b.1,c.4,d.2</studentResponse>
<result>10</result>
<latency>00:00:37.2</latency>
</interaction>
<interaction>
<id>C014</id>
<interactionObjectives>
<id>apu003</id>
</interactionObjectives>
<date>2005/10/23</date>
<time>13:05:21</time>
<type>performance</type>
<correctResponses>
<correctResponse>
Bat Sw - On; Oil - Check; Master Sw - Start; Temp - Monitor; RPM - Monitor
</correctResponse>
</correctResponses>
<weighting>1</weighting>
<studentResponse>
Bat Sw - On; Oil - Check; Master Sw - Start; Temp - Monitor; RPM - Monitor
</studentResponse>
<result>6</result>
<latency>00:01:47.5</latency>
</interaction>
<interaction>
<id>C014</id>
<interactionObjectives>
<id>apu004</id>
</interactionObjectives>
<date>2005/10/23</date>
<time>13:08:32</time>
<type>true-false</type>
<correctResponses>
<correctResponse>T</correctResponse>
</correctResponses>
<weighting>1</weighting>
<studentResponse>T</studentResponse>
<result>1</result>
<latency>00:00:04.5</latency>
</interaction>
<interaction>
<id>C021</id>
<interactionObjectives>
<id>apu005</id>
</interactionObjectives>
<date>2005/10/23</date>
<time>13:10:24</time>
<type>choice</type>
<correctResponses>
<correctResponse>c</correctResponse>
</correctResponses>
<weighting>1</weighting>
<studentResponse>c</studentResponse>
<result>4</result>
<latency>00:00:09.3</latency>
</interaction>
</interactions>
<paths>
<path>
<locationId>A002</locationId>
<date>2005/10/23</date>
<time>13:05:21</time>
<status>passed</status>
<whyLeft>student selected</whyLeft>
<timeInElement>00:03:41.3</timeInElement>
</path>
<path>
<locationId>A003</locationId>
<date>2005/10/23</date>
<time>13:09:41</time>
<status>passed</status>
<whyLeft>student selected</whyLeft>
<timeInElement>00:04:20</timeInElement>
</path>
</paths>
</toLMSCommunication>
AU | Assignable Unit. A module of computer based learning content (or CBT) that can be launched and tracked by a CMI system . The smallest logical unit of learning content in a course. |
CMI | Computer Managed Instruction. In this document, this term refers to the system that manages a course. Such systems may also be called an LMS or even an LCMS. |
LMS | Learning Management System. In this document, this term is used interchangeably with CMI. |