IEEE P1484.11.3/D5, 2001-03-15 Draft Standard for Learning Technology — HTTP-Bbased Content to LMS Communications Protocol Binding Sponsored by the Learning Technology Standards Committee of the IEEE Computer Society Copyright © 2001 by the Institute of Electrical and Electronics Engineers, Inc. 3 Park Avenue New York, NY 10016-5997, USA All rights reserved. This is an unapproved draft of a proposed IEEE Standard, subject to change. Permission is hereby granted for IEEE Standards Committee participants to reproduce this document for purposes of IEEE standardization activities. If this document is to be submitted to ISO or IEC, notification shall be given to the IEEE Copyright Administrator. Permission is also granted for member bodies and technical committees of ISO and IEC to reproduce this document for purposes of developing a national position. Other entities seeking permission to reproduce this document for standardization or other activities, or to reproduce portions of this document for these or other uses, must contact the IEEE Standards Department for the appropriate license. Use of information contained in this unapproved draft is at your own risk. IEEE Standards Department Copyright and Permissions 445 Hoes Lane, P.O. Box 1331 Piscataway, NJ 08855-1331, USA [Note: Information about IEEE LTSC P1484.11 can be found at: http://ieee.ltsc.org/wg11 This note will be removed upon reaching the final draft of this IEEE document.] 2001-03-15 P1484.11.3D5 Introduction (This introduction is not part of IEEE P1484.11.3, HTTP-Based Content to LMS Communications Protocol Binding.) ** TO BE SUPPLIED ** _________________________________________________________________________ At the time this Standard was completed, the working group had the following membership: Jack Hyde, Chair Scott Lewis, Technical Editor Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. ii 2001-03-15 aaa Carlos. C Amaro Debbie Brown Phil Dodds Frank Farance Mike Force Chad Kainz Cindy Mazow Bill McDonald Bill Melton Kiyoshi Nakabayashi Claude Ostyn Bruce Peoples Dan Rehak Tyde Richards Kevin Riley Robby Robson Kathy Sinitsa Josh Tonkel Brendon Towle John Tyler zzz To be supplied P1484.11.3D5 The following persons were on the balloting committee: (To be provided by IEEE editor at time of publication.) _________________________________________________________________________ Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 3 2001-03-15 P1484.11.3D5 Contents 1 Overview...........................................................................................................................6 1.1 Scope..........................................................................................................................6 1.2 Purpose.......................................................................................................................6 1.3 Rationale.....................................................................................................................7 2 Normative references........................................................................................................8 3 Definitions.........................................................................................................................9 4 CMI/CBT communications overview for HTTP...........................................................10 4.1 Data for CMI and CBT communication......................................................................10 4.2 Communication data protocol: HTTP.........................................................................11 4.3 Communication data formats......................................................................................11 4.4 Groups.......................................................................................................................12 4.5 Keywords..................................................................................................................12 4.6 Examples...................................................................................................................13 5 Launching CBT lessons..................................................................................................14 5.1 CBT AU URL command line.....................................................................................14 5.1.1 URL of the CBT AU...........................................................................................14 5.1.2 IEEE required parameters...................................................................................15 5.1.3 Web launch parameters.......................................................................................15 5.1.4 Launch line format..............................................................................................15 6 CBT/CMI communication session.................................................................................17 6.1 HTTP communication................................................................................................17 6.2 HTTP request message format...................................................................................18 6.3 HTTP response message format.................................................................................19 6.4 HTTP communication error messages........................................................................19 6.5 HTTP CMI protocol commands.................................................................................20 6.6 Web launch parameters..............................................................................................21 6.7 AU_Password............................................................................................................22 7 CBT/CMI Communication Information......................................................................23 7.1 Table description........................................................................................................23 7.2 [Core]........................................................................................................................26 7.2.1 Student_ID.........................................................................................................26 7.2.2 Student_Name....................................................................................................27 7.2.3 Lesson_Location.................................................................................................27 7.2.4 Credit..................................................................................................................28 7.2.5 Lesson_Status.....................................................................................................28 7.2.6 Score..................................................................................................................29 7.2.7 Time...................................................................................................................30 7.2.8 Mode..................................................................................................................31 7.3 [Core_Lesson]...........................................................................................................31 7.4 [Core_Vendor]...........................................................................................................31 7.5 [Comments]..............................................................................................................32 7.6 [Comments]...............................................................................................................32 7.7 [Objectives_Status]...................................................................................................33 7.7.1 J_ID.1.................................................................................................................33 7.7.2 J_Score.1............................................................................................................34 7.7.3 J_Status.4............................................................................................................35 7.8 [Student_Data]...........................................................................................................36 Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 4 2001-03-15 P1484.11.3D5 7.8.1 Mastery_Score....................................................................................................36 7.8.2 Max_Time_Allowed...........................................................................................37 7.8.3 Time_Limit_Action............................................................................................37 7.9 [Student_Preferences]................................................................................................38 7.9.1 Audio..................................................................................................................38 7.9.2 Language............................................................................................................38 7.9.3 Speed..................................................................................................................39 7.9.4 Text....................................................................................................................39 7.10 [Interactions]............................................................................................................40 7.10.1 Interaction_ID...................................................................................................40 7.10.2 Objective_ID....................................................................................................41 7.10.3 Time.................................................................................................................41 7.10.4 Type_Interaction...............................................................................................41 7.10.5 Correct_Response.............................................................................................42 7.10.6 Weighting.........................................................................................................43 7.10.7 Student_Response.............................................................................................43 7.10.8 Result...............................................................................................................44 7.10.9 Latency.............................................................................................................44 8 Data type definitions.......................................................................................................45 9 Annex A: Document development (informative)...........................................................46 9.1 Revision history.........................................................................................................46 9.2 Release notes for this document.................................................................................46 9.3 Resolved issues..........................................................................................................46 9.4 Open issues................................................................................................................46 9.5 Comments on this document......................................................................................46 Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 5 2001-03-15 1 P1484.11.3D5 Overview Introduction This standard indocument is a single part of a multipart standard that covers a current industry practice called “CMI—Computer Managed Instruction.” This computer-managed instruction (CMI) specification was originally developed by the AICC (Aviation Industry CBT Committee) (AICC). This multipart Standard is divided into the following pieces: • • • • • • • 1484.11.1: Data Model for Content to LMS Communication 1484.11.2: File-Based Content to LMS Communications Coding Binding 1484.11.3: HTTP-Based Content to LMS Communications Protocol Binding 1484.11.4: JavaScript Content to LMS Communications API Binding 1484.11.5: Content Structure Format Data Model 1484.11.6: Content Structure Format File-Based Coding Binding 1484.11.7: Content Structure Format XML Coding Binding 1.1 Scope This part of the standard is Part 3: HTTP-Based Content to LMS Communications Protocol Binding. This Ppart covers the protocol bindings that involve the communication of information via common messages using HyperText Transfer Protocol (HTTP). This Sstandard applies to the delivery of learning content over the World Wide Web. The definitions of many terms used in this document and the definitions of all the data types referred to in this document may be found in Part 1 of this standard: P1484.11.1: Data Model for Content to LMS Communication. 1.2 Purpose The CMI specifications have been implemented and adopted in commercial products in the aviation industry. There is widespread acknowledgement that these specifications have broad applicability in the area of learning management systems (LMS). Part 1, Data Model for Content to LMS Communications (1484.11.1), provides more details on the 1484.11 multipart Sstandard. As a Web-based implementation, this Ppart of this Sstandard is applicable to multiple operating system environments. Conforming to this Ppart of this Sstandard in any one of these environments enables interoperability with all other CMI systems and courseware in the same environment. This Ppart of this Sstandard is designed to have applicability to all systems using the Web for communication between a client running computer-based training (CBT) and a server running the CMI system. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 6 2001-03-15 This Ppart describes, in a web environment: • • P1484.11.3D5 How CMI systems shall launch student activities, called lessons or sessions. How CMI systems shall communicate over the Web with different CBT systems. The implementation described in this chapter does not relate directly to a specific course interchange implementation. In other words, whether course interchange is via several common text files or a single Extensible Markup Language (XML) file makes no difference to this communication implementation. 1.3 Rationale The IEEE standard for CMI/CBT communication can be implemented in many ways. Universal interoperability, while desirable, is not an easily achieved goal. Because of the myriad of environments and special needs, different mechanisms may be defined for different industries or interest groups to achieve local interoperability. The HTTP protocol was specifically selected as a transport mechanism for CMI/CBT data for the following reasons: • • • HTTP Web browsers and Web servers are widely used for training delivery. HTTP is a hardware-platform independent protocol. Most Internet security firewalls allow HTTP request/response messages passage (as opposed to other internet protocols, such as TCP/IP Sockets or Internet InterORB Protocol (IIOP) Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 7 2001-03-15 2 P1484.11.3D5 Normative references The following normative documents contain provisions whichthat, through reference in this text, constitute provisions of this International Standard. For dated references, subsequent amendments to, or revisions of, any of these publications do not apply. However, parties to agreements based on this International Standard are encouraged to investigate the possibility of applying the most recent editions of the normative documents indicated below. For undated references, the latest edition of the normative document referred to applies. IEEE and members of ISO and IEC maintain registers of currently valid Standards. • • IEEE 1484.3, Learning Technology Glossary. IEEE 1484.11.1, Data Model for Content to LMS Communications. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 8 2001-03-15 3 P1484.11.3D5 Definitions See: IEEE P1484.11.1/D5, Clause 3. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 9 2001-03-15 4 P1484.11.3D5 CMI/CBT communications overview for HTTP HTTP is a client/server protocol. A client program, usually a Web browser, makes requests and a server program, a Web server, responds to the requests. With the HTTP protocol, client and server programs may be running on the same computer or on different computers at different locations. Some portions of the CMI system run as part of the Web server and other portions (the student user interface) run as part of the Web browser. This Cclause describes how the data flows shall be implemented on the Internet. Data shall be exchanged in an ASCII-text format as group/keyword data, which is an ASCII stream divided into groups with keywords in most of the groups. 4.1 Data for CMI and CBT communication As shown in Figure 1, Aa conforming implementation shall include the following data streams. • • CMI-to-CBT: This stream is created by the CMI system as it launches the CBT lesson. This data stream is then read by the CBT lesson to get the student information it needs. CBT-to-CMI: This stream is created by the CBT lesson as the student finishes it. This data includes the information that the CMI system needs. CMI System Group/Keyword Send eceive R CMI To Lesson Lesson To CMI Group/Keyword CBT Lesson Figure 1 — CMI/CBT communications. The data shall include the following general contents and format. CMI-to-CBT: • • Contents: Information needed by a lesson to function optimally. Data format: Group/Kkeyword. CBT-to-CMI: • Contents: Information needed by a CMI system to track student performance and make new assignments. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 10 2001-03-15 • Data format: Group/Kkeyword. P1484.11.3D5 4.2 Communication data protocol: HTTP This chapter Subclause references the HTTP standard, and describes the IEEE protocol for the HTTP commands necessary for the IEEE CMI implementation. The HTTP 1.0 specification is described in RFC 1945. Other related RFCs: • • • • RFC 822 Standard for the Format of ARPA Internet Text Messages RFC 1738 Uniform Resource Locators (URL) RFC 1808 Relative Uniform Resource Locators RFC 1521 MIME (Multipurpose Internet Mail Extensions) Part One: Mechanisms for Specifying and Describing the Format of Internet Message Bodies 4.3 Communication data formats The data format used in the communication between the CMI system and CBT shall be a group/keyword data stream as shown in Figure 2Table 1. The format supports three types of data—group, keyword, and comment. Table 1 — Communication formats Appearance [group]<cr> keyword=parameter<cr> ; groups and keywords ; may have comments Element name Group Valid Keyword Comment Each item shall be one of three types—group, keyword, or comment. Group and keyword names shall be case insensitive. A name shall consist of alphanumeric and underscore characters. Group names shall be left justified and surrounded by brackets. Keywords shall be left justified and followed by an equals sign (=). A line that begins with a semicolon shall indicate a comment line. Comments are text that is of use to a human viewing a file. Comments have no effect on processing. The first character of a comment line shall be a semicolon. All characters following the semicolon up to and including the carriage return are part of the comment. Comments shall be on a separate line from group names and keywords as shown in the following example. [CORE] LESSON_STATUS = Passed LESSON_LOCATION = End SCORE = 87 TIME = 00:25:30 ; this is the core group of data Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 11 2001-03-15 P1484.11.3D5 ; ; ; ; this is the lesson performance data for a passed lesson that required a time of 25 minutes, 30 seconds and a score of 87 4.4 Groups Groups provide a mechanism for dividing a file into manageable segments that are more easily accessed by data retrieval routines. Groups also provide a means to organize a file of data into logically related parts. Groups may be helpful for human processing of a file as well as computer processing. Groups are logically related assemblies of data items and may span more than one line. A group extends from its group identifier to the next group identifier and may span multiple lines. Although groups may contain keywords, they may not contain other groups. All carriage returns and symbols between group identifiers may be significant depending on the definition of the specific group. If a group contains keywords, then blank lines and extra carriage returns shall be ignored. A group shall be identified by its name enclosed by square brackets. The left bracket shall appear at the far-left margin or shall be preceded by spaces or tabs. No other characters shall precede the left bracket. The left bracket shall not be embedded in a line of information. The group name shall be case insensitive. Groups may appear in any order. Only the first occurrence of the group shall be meaningful. Group name examples [comments] [OBJECTIVES_STATUS] 4.5 Keywords Keywords are names of data items that are limited in size to a single line. The data item, including punctuation, shall not exceed 255 characters. The data items associated with a keyword are referred to as keyword arguments or keyword values. Keywords shall appear at the left-hand margin followed by an equals sign. Spaces before and after the equals sign shall be ignored. Keywords shall be case insensitive. Blank lines between keywords shall be ignored. Keywords shall be members of a group. An example of a group without a keyword is the [COMMENT] group. Each keyword within a single group shall be unique. If keywords are duplicated, only the first shall be significant. Keywords may be extended to avoid duplicates by appending a period and a simple integer number from 0 through 9999. The ordering of keywords shall have no effect. In this document, many are ordered alphabetically for the convenience of the reader. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 12 2001-03-15 P1484.11.3D5 Keywords may be duplicated in different groups. For example, in the same file there is a group called LESSON_DATA with a keyword ID, and a group STUDENT_DATA with a keyword ID. These IDs are different. 4.6 Examples The [Objectives_Status] group is an example of a group with multiple instances of a keyword requiring an extension. It has multiple objective ID's and a different status for each objective recorded in the group. [Objective_Status] J_ID.1= AB112 J_Status.1 = Pass J_ID.2= AB124 J_Status.2 = Pass J_ID.3= AB196 J_Status.3 = Fail The first non-space character after the “=” identifies the beginning of the data. Capitalization and spaces in the keyword data may or may not be significant, depending on the definition of the data associated with a specific keyword. Student_ID = JQH2142 OUTPUT_FILE=C:\STURECS\JQH2142.DTA postal_code = 98124-2207 Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 13 2001-03-15 5 P1484.11.3D5 Launching CBT lessons In general, a Web-based CBT launch sequence is as follows: 1. The student selects a CBT AU to launch from the CMI system's user interface (Menu) 2. The CMI system pushes a Uniform Resource Identifier (URI) location, complete with startup parameters, to the HTTP client 3. The HTTP client requests the CBT AU from the HTTP server. 4. The HTTP server program copies the program and data to the HTTP client program. 5. The CBT AU grabs the URI parameters from the HTTP client upon startup and initiates a session with the CMI system. A typical launch sequence is shown in Figure 2. HTTP Server #2 CSD system sends URI to HTTP Client HTTP Client #1 user requests and AU from the CSD User Menu #3 HTTP Client Requests the AU #4 Download the AU To the HTTP Client #5 The CBT AU executes and grabs URI parameters from HTTP Client Figure 2 — Web-based launch sequence 5.1 CBT AU URL command line When the CMI system launches a CBT AU, it sends a URL command line to the HTTP Client (e.g. Web browser). The command line contains three basic values. • • • The URL of the CBT AU IEEE-required parameters Web-launch parameters 5.1.1 URL of the CBT AU The CBT URL is the globally unique address of the AU on the World Wide Web. The first part of the address indicates what protocol to use. Usage rules • • The URL shall start with “http://” The URL shall not contain a question mark (?). Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 14 2001-03-15 Examples P1484.11.3D5 The two URLs below point to two different files at the domain sandybay.com http://www.sandybay.com/cgi-bin/lesson.cgi /param1 http://www.sandybay.com/index.html 5.1.2 IEEE required parameters Figure 4Table 2 gives the parameters that shall be used. Table 2 — Required IEEE parameters IEEE parameter name AICC_SID Format Alpha-numeric Example: Value Session ID. This string uniquely identifies this AU session among all other active CMI/CBT AU sessions. AICC_SID=1234WE9 The CMI system generates and passes this value on AU launch. AICC_URL The AU uses this value to identify its session when making requests to the CMI system. The full URL including the protocol to which the AU will send requests to the CMI system. URL location Example: AICC_URL= http%3A%2F%2Fcompany.c om%2Fcgi-bin%2FCMI.cgi This will likely be a Common Gateway Interface (CGI) servlet program on a server. This program acts as a CGI “catcher” for the CMI system. Required IEEE parameters. Example AICC_sid=123&AICC_URL=http%3A%2F%2Fcmi.net%2FCGIBin%2FCMI.cgi&vendorparam=this Not URL encoded: AICC_sid=123&AICC_URL=http://cmi.net/CGIBin/CMI.cgi&vendorparam=this) 5.1.3 Web launch parameters Web-launch parameters are lesson specific. They are the character string that is appended to the lesson file name in order to successfully launch an AU in the World Wide Web environment. The parameters are any additional parameters required by individual AUs. 5.1.4 Launch line format The launch line shall have the form of: Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 15 2001-03-15 P1484.11.3D5 <URL of CBT AU>?<IEEE-required Parameter 1>&<IEEErequired Parameter 2>& <Web Launch Parameters > Where: • • • • <URL of CBT AU> is the HTTP location of the primary AU file needed for web launch. (Note that it shall not include a question mark. Question marks shall be used as IEEE command line separators only.) <IEEE-required Parameter 1> represents either the AICC_SID or the AICC_URL parameter as needed by the specific AU being launched. Parameter requirements and rules are described in Subclause, 6.1.3, Web Launch Parameters. <IEEE-required Parameter 2> represents either the AICC_SID or the AICC_URL, whichever is not parameter 1. <Web Launch Parameters> are those lesson-specific parameters found in the WEB_LAUNCH field of the course interchange AU file. The command line is a concatenation including two fields in the AU file, File_Name and Web_Launch, and the CMI-generated required parameters. The file name shall be separated from the parameters with a question mark (?). Each of the parameter fields shall be separated by an ampersand (&). All values shall be URL encoded. Data format Alphanumeric. The values may be case-sensitive. Characters to the right of the question mark (?) shall be limited to 255. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 16 2001-03-15 6 P1484.11.3D5 CBT/CMI communication session The CBT and the CMI system have a client/server relationship where the CMI system is the Server and the CBT AU is the client. The CBT makes each request of the CMI system by calling the CGI URL using the POST method. The CGI URL is specified in the URI launch parameters A typical communication session between a CMI system and CBT AU is as follows: 1. The AU spawns a separate HTTP session 2. The AU sends a message requesting startup information from the CMI system. 3. Just before the end of the AU session, the AU sends student-performance and lessonstatus data to the CMI system. 4. When the student exits the AU, the AU sends an “end session” message to the CMI system. Figure 5 3 shows a typical communications session. HTTP Server HTTP Client CBT AU (HTTP Session) CSD CSD's CGI "Catcher" program Request CSD data CGI/HTTP Session – (Not Visible to user) Response Figure 3 — CMI/CBT communication flow 6.1 HTTP communication This Subclause describes the format of HTTP messages used in HTTP IEEE CMI Protocol (HICP). The HICP messages are described in terms of HTTP/1.0 messages. A detailed description of HTTP messages is beyond the scope of this document. For a more definitive description of HTTP messages see RFC 1945, Hypertext Transfer Protocol—HTTP/1.0 Communication between HTTP clients (Web browsers) and HTTP servers (Web servers) is accomplished by messages. There are two kinds of HTTP messages: • • Request: sent from the client Response: sent from the server HTTP request messages in HICP shall use the POST method with a “content-type” of “application/x-www-form-urlencoded”. HTTP response messages in HICP shall have a “content-type” of “text/plain”. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 17 2001-03-15 P1484.11.3D5 The HICP request/response message data are contained in the “entity-body” of the request/response messages, respectively. Name/value pairs The message data format shall follow a convention called “name/value pairs.” Name/value pairs are defined as follows: <name>=<value> where the name represents a field title and the value represents the contents of the field. The following sections describe the format of the entity-body. 6.2 HTTP request message format Content-type: application/x-www-form-urlencoded Request Method: POST Format Figure 6Table 3 gives the format of the entity-body is as follows. Table 3 — HTTP request message format <Name> command= <IEEE command >& version= <IEEE Spec Version>& session_id= <Unique Session Identifier>& AU_password= <AU specific password (optional)>& AICC_Data= <Value> <(URL encoded) IEEE Data> <end of buffer> HTTP request message format. Where: • • • • • <IEEE Command> = Any valid IEEE HTTP command (See HTTP IEEE CMI Protocol Commands on page 52) <IEEE Spec Version> = IEEE Spec Version (e.g. 1.9) <Unique Session Identifier> = Unique Session Identifier (See IEEE Required Parameters oin Subclause 5.1.2) <AU specific password (optional)> = AU Specific Password <IEEE Data>=Data specific to the command Usage rules • • All of the above values shall be URL-encoded The Name/value pairs can appear in any order Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 18 2001-03-15 P1484.11.3D5 • If an optional value is to be omitted, the name also shall be omitted. • The name of each parameter shall not be case sensitive. Examples Command=GetParam&version=2.0&session_id=AX36&AICC_Data= Command=PutParam&Version=2.0&Session_id=DAX36 &AICC_Data=[core]%0D%0A lesson_location+%3D+end%0D%0Alesson_status%3D pass%0D%0Ascore%3D87%0D%0Atime%3D00:23:15 Note that %0D is the hex value for carriage return, %0A the hex value for line feed, %3D the hex value for = and %26 the hex value for &. 6.3 HTTP response message format Content-type: text/plain Request Method: POST Format Figure 7 Table 4 gives the format of the entity-body is as follows. Table 4 — HTTP response message format <Name> error= <Value> <IEEE error Number><CR> error_text= <IEEE error description (optional)><CR> version= <IEEE Spec Version (optional)><CR> aicc_data= <IEEE Data> <end of buffer> HTTP response message format. Where: • • • • <CR> = Carriage Return and Line feed characters (ASCII 13 10) <IEEE error Number> = IEEE HTTP error message Number (see below) <IEEE error description> = IEEE HTTP error message text (see below) <IEEE Data> = PARAM.CMI data (if GetParam command was issued in the request) 6.4 HTTP communication error messages Figure 8 Table 5 lists communication error messages. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 19 2001-03-15 P1484.11.3D5 Table 5 — HTTP response message format Error Nnumber 0 1 2 3 4 5 Error Ttext Successful Invalid Command Invalid AU-password Invalid Session ID Command not supported <Undefined error> error text is vendor specific HTTP communication error messages. Usage rules • • • • • • • • Leading and trailing white space (tab, space) shall be allowed before and after the <name>, “=”, and <value>. The <value> data in aicc_data shall begin as the first non-white-space character after the “=” and continue until the end of the entity-body buffer. The <value> data for all other <name> variables shall begin as the first nonwhite-space character after the “=” and continue until the last non-white-space character before the CRLF. The <value> data shall be plain text (not URL-encoded). aicc_data shall be included in a response to a GetParam request only. If aicc_data is returned, it shall be the last name/value pair in the entity-body. The name in the name/value pair shall not be case sensitive. If an optional value is to be omitted, the name shall also be omitted. Example Error=0 error_text = successful version= 2.0 aicc_data=[core] Student_ID=B1781 Student_Name=Doe, John Credit=C Lesson_Location= Lesson_Mode=Browse Lesson_Status = Not Attempted Score= Time = 00:00:00 [Student_data] max_time_allowed=00:45:00 time_limit_action=Exit,Message 6.5 HTTP CMI protocol commands Figure 9 Table 6 defines the commands. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 20 2001-03-15 P1484.11.3D5 Table 6 — Protocol commands Command GetParam PutParam Function Get input data from the CMI system. (Data format specified in Subclause 6.2.x.x) Sends output parameter file data to the CMI system (Data format specified in Subclause 6.2.x.x) PutInteracti ons Sends at least one row of data (i.e., one record). ExitAU Ends an AU session Usage Rules Required. This command may be issued to the CMI system multiple times. (Note: The data collected from the CMI system, however, shall be the same within a specific AU session) Required. This command may be used multiple times. Each time it is used, the output parameter data shall be replaced. The CMI system shall use the data from the final PutParam in a CBT AU session only (i.e. this is an “overwrite” operation). Multiple PutParams may be used to ensure against data loss caused by a dropped connection or abnormal session termination Optional This command can be called multiple times. The CMI system collects and stores the new data content each time this command is called in an AU. (i.e., this is an “append” operation) Required. This command shall be issued at the end of an AU session only. Protocol commands. 6.6 Web launch parameters Description The Llesson-specific launch parameters for a web-based AU. The string of characters that needs to be appended to the file name and CMI-generated (required) parameters in order to successfully launch an AU in the World Wide Web environment. These data are in the “query” portion of the URL command line after the “?” separator (see Subclause 5.1.4x.x.x). Two parameters are required. The “Web Launch Parameters” are any additional parameters required by individual AUs. Data format Alphanumeric. The values may be case sensitive. The field identifier is web_launch. Usage rules • • • Values of the parameters shall be communicated in the form “<parameter name> = <parameter value>”. Name/value pairs shall be separated by an ampersand (“&”). Name/value pairs can be in any order. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 21 2001-03-15 • Parameter names shall not be case sensitive. • Parameter values may be case sensitive. • All parameters shall be URL-encoded. P1484.11.3D5 6.7 AU_Password Description A string of characters sent to the CMI system that enables the CMI system to authenticate an AU. The AU_password is an optional feature that allows for additional security. The password value shall be specific to the AU and sent with HICP request messages so that the CMI system can authenticate the AU making the request. The entry in the AU file shall be the value that the CMI system checks for. The CMI system shall compare the value of this entry with the value passed by the AU. The value for the AU_password should be configurable for individual CBT AUs by the system administrator rather than being a static value embedded or “hard-coded” in the AU. Data format Alphanumeric. The values may be case sensitive and are limited to 255 characters. The field identifier is AU_Password. Examples rtjh4578gh trust!1 Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 22 2001-03-15 7 P1484.11.3D5 CBT/CMI Communication Information Description This is information that a typical lesson obtains from a CMI system to enable it to perform the functions expected of it and the information that a lesson sends back to the CMI as a record of what and how the student performed in the lesson. Core items are listed first, followed by the other group names alphabetically. After each group name are the keywords, if any, which are appropriate for that group. 7.1 Table description • • Obligation (Obl): • Mandatory item (M): The CMI system shall provide mandatory items. The lesson may not use the mandatory items, but they are available if needed. • Optional item (O): The CMI system may provide optional items. Optional items are group and keyword data that may be needed by a lesson to perform optimally. The lesson shall assume a default value if the optional item is not present. Privilege (Prv): • Get: The lesson may be able to obtain the value from the CMI system by posting a GetParam request. • Put: The lesson may be able to place the value in a PutParam. • Get/Put: The lesson shall may be able to both get and put a value. Mapping table Figure 10Table 7 shows how group and keyword names map to data element names. Table 7 — Group and keyword to data element mapping Group or keyword name [Core] Data element name Core Student_ID |--Student ID Student_Name |--Student Name Lesson_Location |--Lesson Location Data element definition General information that may be used by a lesson. Unique alphanumeric code/identifier that refers to a single user of the CMI system. The oOfficial name used for the student on the course roster. A complete name, not just a first name. Corresponds to the lLesson exit point passed to the CMI system the last time the student experienced the lesson. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Obl Prv M - M Get M Get M Get/ Put 23 2001-03-15 Group or keyword name Credit Lesson_Status Lesson_Status, flag Lesson_Status, flag Score Score Score Score Time Time Mode [Core_Lesson] [Core_Vendor] [Comments] [Comments] [Objectives_Status] J_ID.1 J_Score.1 J_Score.1 P1484.11.3D5 Data element name |--Credit Data element definition Indicates whether the student is being credited by the CMI system for his performance (pass/fail and score) in this lesson. |--Lesson Status The cCurrent student status as determined by the CMI system and sent to the lesson when it is launched. |--Entry Indicatesion of whether the student has been in the lesson before. |--Exit An iIndicates how or why the student left the lesson. |--Score Indicatesion of the performance of the student during his last attempt on the lesson. |--|--Raw Numerical representation of student performance in lesson. May be unprocessed raw score. |--|--Max Maximum score or total number that the student could have achieved. |--|--Min Minimum score that the student could have achieved. |--Total Time Accumulated time of all student uses of the AU. |--Session Time Time spent in the lesson during the session that is ending. |--Lesson Mode Identifiescation of desired lesson behavior after launch. Suspend Data Unique information generated by the lesson during previous uses that is needed for the current use. Launch Data Unique information generated at the lesson's creation that is needed for every use. Comments Student’s written remarks recorded during the current use of the lesson. Comments from LMS Instructor comments directed at the student that the lesson may present to the student when appropriate. Objectives Identifies how the student has performed on individual objectives covered in the lesson. |--ID Developer-defined lesson-specific identifier for an objective. |--Score Performance measure of the student's mastery after each attempt on an objective. |--|--Raw Numerical representation of student performance after each attempt on the objective. May be unprocessed raw score. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Obl Prv M Get M Get/ Put M Get M Put M - M Get/ Put O Get/ Put O M Get/ Put Get M Put O Get M Get/ Put M Get O Put O Get O - O Get/ Put - O O Get/ Put 24 2001-03-15 Group or keyword name P1484.11.3D5 Data element name J_Score.1 |--|--Max J_Score.1 |--|--Min J_Status.1 |--Status [Student_Data] Student Data Mastery_Score |--Mastery Score Max_Time_Allowed |--Max Time Allowed Time_Limit_Action |--Time Limit Action [Student_Preferences] Student Preference Audio |--Audio Language |--Language Speed |--Speed Text [Interactions] |--Text Interactions Interaction_ID |--ID Objective_ID |--Objectives.n.ID Time |--Time Type_Interaction |--Type |--Correct Responses.n Correct_Response |--Pattern Weighting |--Weighting Student_Response |--Student Response Result |--Result Latency |--Latency Data element definition Obl Prv Maximum score that the student could have achieved. Minimum score that the student could have achieved. Status obtained by the student after each attempt to master the objective. Information to support customization of a lesson based on a student's performance. Passing score, as determined outside the lesson. Amount of time the student is allowed to have in the current attempt on the lesson. What the lesson is to do when the max time allowed is exceeded. Student-selected options that are appropriate for subsequent lessons. Sound on/off and volume control. O Get/ Put Get/ Put Get/ Put Identifies in what language the information should be delivered. Pace of content delivery. O Written content visibility control. Recognized and recordable input or group of inputs from the student to the computer. Unique alphanumeric label created by the lesson developer. Indicatesion of any objectives associated with the interaction. Indicatesion of when the interaction is available to the student. Indicatesion of which category of interaction is recorded. Expected student feedback in the interaction. Definesition of possible student response. Factor that is used to identify the relative importance of one interaction compared to another. Describesption of the computermeasurable action of a student in an interaction. Judgment of the of the student’s response. Time from the presentation of the stimulus to the completion of the measurable response. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. O O O - O Get O Get O Get O - O O O Get/ Put Get/ Put Get/ Put Get - O Put O Put O Put O Put O Put O Put O Put O Put O Put O Put O 25 2001-03-15 P1484.11.3D5 Group and keyword to data element mapping. 7.2 [Core] Name Data element Core [Core] Data element definition General information that may be used by a lesson. Obl M Prv - Definition Core is a required group that shall contain the following keywords in the response to a GetParam post: Student_ID Student_Name Lesson_Location Credit Lesson_Status Score Time It may contain the following keyword: Mode Core is a required group that shall contain the following keywords in the AICC_Data in a PutParam post. Lesson_Location Lesson_Status, flag Score Time Example of AICC_Data in the response to a GetParam [core] student_ID = CAM-1942 student_name = McArthur, Christopher A. Jr. lesson_location=0 credit=credit lesson_status=complete time=00:23:15 score=93 7.2.1 Student_ID Name Student_ID Data element |--Student ID Data element definition Unique alphanumeric code or identifier that refers to a single user of the CMI system. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Obl Prv M Put 26 2001-03-15 Description P1484.11.3D5 See IEEE 1484.11.1, Subclause x.x. Format CMIIdentifier Examples student_id=Jack_Hyde1 student_ID = JQH-1942 STUDENT_ID= jack1991-3 7.2.2 Student_Name Name Student_Name Data element |--Student Name Data element definition The oOfficial name used for the student on the course roster. A complete name, not just a first name. Obl M Prv Get Obl Prv M Get/ Put Description See IEEE 1484.11.1, Subclause x.x. Format CMIString255 Examples Student_name=Whiplash, William R. STUDENT_NAME= Grey, Jane S. student_name = McArthur, Christopher A. Jr. 7.2.3 Lesson_Location Name Lesson_Location Data element |--Lesson Location Data element definition The lLesson exit point passed to the CMI system the last time the student experienced the lesson. Description See IEEE 1484.11.1, Subclause x.x. Data format CMIString255 Implementation dependent. The CMI system simply holds this data and then returns it to the lesson when the student re-enters it. Whatever the lesson passes back to the CMI system is returned. The format matches whatever the lesson expects—the format is created by the lesson. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 27 2001-03-15 P1484.11.3D5 7.2.4 Credit Name Credit Data element |--Credit Data element definition Indicates whether the student is being credited by the CMI system for his performance (pass/fail and score) in this lesson. Obl M Prv Get Description See IEEE 1484.11.1, Subclause x.x. Format Only the first letter in the CMIVocabulary members is significant. Case is insensitive. Examples Credit=c Credit = no-credit credit=N 7.2.5 Lesson_Status Name Lesson_Status Data element |--Lesson Status |--Entry |--Exit Data element definition This is the cCurrent student status as determined by the CMI system, and sent to the lesson when it is launched. Indicatesion of whether the student has been in the lesson before. An iIndicatesion of how or why the student left the lesson. Obl Prv M Get/ Put M Get M Put Description See IEEE 1484.11.1, Subclause x.x. Entry Flag See Entry, IEEE 1484.11.1, Subclause x.x. Exit Flag See Exit, IEEE 1484.11.1, Subclause x.x. Format A word, character, or phrase representing the status identified in the CMIVocabulary list, optionally followed by a coma and an additional character or word which represents the flag. Only the first character shall be significant in each word. Note that the absence of a status flag indicates a normal re-entry by the student. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 28 2001-03-15 Example 1: entry P1484.11.3D5 Lesson_Status = failed ; Student failed the lesson the last time he or she was in it. Example 2: entry Lesson_Status = N,A ; Student is entering the lesson for the first time. ; along with the Not Attempted status is required. The "A" flag Example 3: entry lesson_status = p ; Student passed the lesson when he or she was in it previously. ; Absence of the A flag indicates this is not the first time in ; the lesson. Absence of the R flag indicates the student exited ; the lesson normally when he or she passed it (i.e., Suspend ; flag was not generated). Example 4: entry lesson_status=i,r ; Student did not finish lesson. When he or she left, a Suspend ; flag was generated. The Resume flag is therefore required. Example 5: entry lesson_status = p,a ; Student has demonstrated mastery of the contents of the ; lesson – probably by passing a pre-test. This is his or first ; time into the lesson, as indicated by the Ab initio flag. Example 6: entry lesson_status=i ; Student did not finish lesson. When he or she left, a Logout ; or some other flag may have been generated. No Suspend flag ; was created. Example 7: exit Lesson_Status = incomplete,logout ; Student logged out without completing lesson Example 8: exit Lesson_Status = incomplete, suspend ; Student left without completing lesson. Student probably intends ; to return to the lesson. Example 9: entry Lesson_Status = not attempted ; Student looked at some part of the lesson, did not attempt to ; challenge it, and then left normally. Example 10: exit lesson_status = p,l ; Student passed the lesson and wants to log out of the course. 7.2.6 Score Name Data element Data element definition Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Obl Prv 29 2001-03-15 P1484.11.3D5 Score |--Score Score |--|--Raw Score |--|--Max Score |--|--Min Indicatesion of the performance of the student during his or her last attempt on the lesson. Numerical representation of student performance in lesson. May be unprocessed raw score. The mMaximum score that the student could have achieved. The mMinimum score that the student could have achieved. M - M Get/ Put O Get/ Put Get/ Put O Description See IEEE 1484.11.1, Subclause x.x. Format CMIDecimal If maximum and minimum are included, they shall be separated by commas. The order is significant and shall be: Raw, Max, Min. Usage rules For a student's first attempt, SCORE = "". That is, the score is a blank “Score=”. For additional attempts the score reflects what was recorded on the student's last previous attempt. Examples SCORE= 79 score=1, 2 score = 3.5, 8.1, -1 Score= 7.2.7 Time Name Time Data element |--Total Time Time |--Session Time Data element definition Accumulated time of all the student uses of the AU. Time spent in the lesson during the session that is ending. Obl M Prv Get M Put Description Time shall relate to the data elements Total Time and Session Time. See IEEE 1484.11.1, Subclauses x.x and y.y. It is the responsibility of the CMI system to accumulate total time, not track individual session times. The AU tracks the individual session time and sends this to the CMI system after each student usage. Format CMITimespan Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 30 2001-03-15 P1484.11.3D5 7.2.8 Mode Name Data element |--Lesson Mode Mode Data element definition Identifiescation of desired lesson behavior after launch. Obl O Prv Get Obl Prv M Get/ Put Description See Lesson Mode, IEEE 1484.11.1, Subclause x.x. Format CMIVocabulary Examples Mode = B Mode = review 7.3 [Core_Lesson] Name [Core_Lesson] Data element Suspend Data Data element definition Unique information generated by the lesson during previous uses that is needed for the current use. Definition See Suspend Data, IEEE 1484.11.1, Subclause x.x. Format CMIString4096 The format of the Core_Lesson data may be lesson unique. The only limitations on this data are: • • Data shall be transferred in ASCII format. The lesson may then convert it to some internal form. Core_Lesson data shall be limited to 4096 bytes. 7.4 [Core_Vendor] Name [Core_Vendor] Data element Launch Data Data element definition Unique information generated at the lesson's creation that is needed for every use. Obl Prv M Get Description See Launch Data, IEEE 1484.11.1, Subclause x.x. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 31 2001-03-15 Format P1484.11.3D5 CMIString4096 7.5 [Comments] Name [Comments] Data element Comments Data element definition Student’s written remarks recorded during the current use of the lesson. Obl O Prv Put Description See IEEE 1484.11, Subclause x.x. Location examples <l.frame12> <L.page 36> <L.fuel3-21> <L.Fuel part 3: interaction 24> The location parameter indicates exactly where in the lesson the student was when he or she created the comment. The location is placed inside the comment delimiters along with any other information deemed desirable. Locations can correspond to lesson elements or segments. Lesson elements are arbitrary divisions of an AU that have been uniquely named (ID). Examples [Comments] <1><L.apu.intro>Why is the APU swich labels reversed from my airplane here?<E.1> <2><L.apu.q3>I don't understand why B is right. Shudn't the fire handle be checked first?<E.2> [Comments] <1> Electrical is mispelled here.<E.1> ; Without a location, some comments are less useful. 7.6 [Comments] Name [Comments] Data element Comments from LMS Data element definition Instructor comments directed at the student that the lesson may present to the student when appropriate. Obl Prv O Get Description See IEEE 1484.11.1, Subclause x.x. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 32 2001-03-15 Format P1484.11.3D5 CMIString4096 Examples [Comments] <1>The trainer session following this lesson will be at 13:15 Thursday instead of 9:00.<e.1><2>If you have passed practice session three in the simulator, please skip the Practice section in this lesson.<E.2> [Comments] <1> <L.Frame23>More information on this topic may be found in your text book in Section 3.12.<e.1> 7.7 [Objectives_Status] Name [Objectives_Status] Data element Objectives Data element definition Identifies how the student has performed on individual objectives covered in the lesson. Obl Prv O - Obl Prv O Get/ Put Description See Objectives, IEEE 1484.11.1, Subclause x.x. This group contains the following keywords. J_ID.1 J_Score.1 J_Status.1 Example [objectives_status] J_ID.1 = APU1684 j_status.1 = passed 7.7.1 J_ID.1 Name J_ID.1 Data element |--ID Data element definition A developer defined lessonspecific identifier for an objective. Description J_ID shall be a developer defined, lesson-specific identifier for an objective Keyword format Each J_ID keyword shall have an extension that makes it unique. The extension is a period followed by a number from 1 to 9999. This number shall not be zero padded. (For example, .0009 is an invalid extension for the number .9.) Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 33 2001-03-15 Data format P1484.11.3D5 CMIIdentifier Usage rules The group Objectives_Status may contain multiple IDs, but each shall have a unique extension. Because the value of each objective ID is a string internally defined in the CBT courseware, the CMI system shall have a means of storing and referencing these lesson-specific IDs. Example J_ID.1 = A1373 7.7.2 J_Score.1 Name J_Score.1 Data element |--Score J_Score.1 |--|--Raw J_Score.1 |--|--Max J_Score.1 |--|--Min Data element definition A pPerformance measure of the student’s mastery after each attempt on an objective. Numerical representation of student performance after each attempt on the objective. May be unprocessed raw score. The mMaximum score that the student could have achieved. The mMinimum score that the student could have achieved. Obl O Prv - O Get/ Put O Get/ Put Get/ Put O Definition J_Score shall be an indication of the performance of the student after the last attempt to master an objective. Objectives may have a score associated with them. If they do, this keyword enables capturing that data. If a maximum and minimum accompany the score, they shall be separated by a comma. This score shall reflect the student’s last attempt on the objective. Keyword format The score keyword shall have an extension that makes it unique. The extension is a period followed by an integer number from 1 to 9999. This number shall not be zero padded. (For example, .0009 is an invalid extension for the number .9.) Data format One or more CMIDecimal numbers, separated by commas for raw, max, and min. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 34 2001-03-15 Usage rules P1484.11.3D5 The extension enables associating the score with an J_ID. For example, the .1 set of scores is for the objective with the J_ID.1 identifier. Examples J_Score.1 = 2 ; during student's last attempt on the first objective, a score of 2 ; was achieved. J_Score.1 = 2, 3, 0 J_Score.2 = 4,,0 J_ID.1= First J_Score.1 = 87 J_ID.2= Second J_Score.2 = 3,5 ; during last attempt, student scored 3, of ; possible 5 J_ID.1= 1 J_Score.1 = 87, 100, 0 ; on objective 1 there is a raw, maximum, and minimum value. J_ID.2= 2 J_Score.2 = 3 7.7.3 J_Status.4 Name J_Status.1 Data element |--Status Data element definition The sStatus obtained by the student after each attempt to master the objective. Obl Prv O Get/ Put Description See Status, IEEE 1484.11.1, Subclause x.x. Keyword format Each status keyword shall have an extension to make it unique. The extension is a period followed by an integer number from 1 to 9999. This number shall not be zero padded. (For example, .0009 is an invalid extension for the number .9.) Data format CMIVocabulary Usage rules A status shall have the same extension as its corresponding J_ID. This indicates the status of the corresponding objective. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 35 2001-03-15 P1484.11.3D5 There shall never be more than one status keyword associated with a single objective. However, if more than one status does appear after an objective, then the first status to appear is the one that is assumed correct by the lesson. If a status has no corresponding J_ID, the status shall be ignored. If no status is associated with an objective ID, then the assumed status shall be Not Attempted. Examples j_id.3 = 1987 j_status.3=p j_id.6 = 1942 J_STATUS.6 = incomplete J_ID.92 = 1847 J_Status.92 = P 7.8 [Student_Data] Name [Student_Data] Data element Student Data Data element definition Information to support customization of a lesson based on a student's performance. Obl O Prv - Obl O Prv Get Description See IEEE 1484.11.1, Subclause x.x. This group contains the following data elements. Mastery_Score Max_Time_Allowed Time_Limit_Action 7.8.1 Mastery_Score Name Mastery_Score Data element |--Mastery Score Data element definition The pPassing score, as determined outside the lesson. Description See IEEE 1484.11.1, Subclause x.x. Format CMIDecimal Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 36 2001-03-15 Examples mastery_score = .75 Mastery_Score = 100 MASTERY_SCORE=5 P1484.11.3D5 7.8.2 Max_Time_Allowed Name Max_Time_Allowed Data element |--Max Time Allowed Data element definition The aAmount of time the student is allowed to have in the current attempt on the lesson. Obl O Prv Get Obl O Prv Get Description See IEEE 1484.11.1, Subclause x.x. Data format CMITimespan Examples max_time_allowed = 0:14:30.5 Max_Time_Allowed = 2:03:00 MAX_TIME_ALLOWED = 1:09:00 7.8.3 Time_Limit_Action Name Time_Limit_Action Data element |--Time Limit Action Data element definition What the lesson is to do when the max time allowed is exceeded. Description See IEEE 1484.11.1, Subclause x.x. Format CMIVocabulary For HTTP communication, only the first letter of each word before and after the comma is significant. Case is not significant. Examples time_limit_action = Exit, Message ; The lesson presents a message to the student ; indicating he or she has exceeded the time ; limit in the lesson, and then exit or quit. Time_Limit_Action=E,N ; The lesson quits or exits with no message to the ; student. The student jumps to the CMI environment. time_limit_action = c,n Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 37 2001-03-15 P1484.11.3D5 ; When the student exceeds his time limit in the ; lesson, no message is presented, the lesson ; continues. TIME_LIMIT_ACTION = continue, message : The student receives a message when he or she exceeds ; the time limit. The lesson continues ; after presenting the message. 7.9 [Student_Preferences] Name [Student_Preferences] Data element Student Preference Contextualized definition Student-selected options that are appropriate for subsequent lessons. Obl O Prv - Contextualized definition Sound on/off and volume control. Obl O Prv Get/ Put Contextualized definition Obl Prv O Get/ Put Description See IEEE 1484.11.1, Subclause x.x. Keywords This group contains the following keywords. Audio Language Speed Text 7.9.1 Audio Name Data element |--Audio Audio Description See IEEE 1484.11.1, Subclause x.x. Format CMISInteger Examples audio= -1 AUDIO = 33 7.9.2 Language Name Language Data element |--Language Identifies in what language the information should be delivered. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 38 2001-03-15 Description P1484.11.3D5 See IEEE 1484.11.1, Subclause x.x. Format CMIString255 Alphabetic string. May include spaces. 7.9.3 Speed Name Speed Data element |--Speed Contextualized definition Pace of content delivery. Obl O Prv Get/ Put Description See IEEE 1484.11.1, Subclause x.x. Value format CMISInteger Examples speed= -100 ; If a system only has three speeds, slower, normal, and ; faster, any positive number (+1 and above) would ; result in the use of the faster speed. SPEED = 33 7.9.4 Text Name Text Data element |--Text Contextualized definition Written content visibility control. Obl Prv O Get/ Put Description See IEEE 1484.11.1, Subclause x.x. Format CMISInteger Examples Text = -1 text=0 TEXT = 1 Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 39 2001-03-15 P1484.11.3D5 7.10 [Interactions] Name [Interactions] Data element Interactions Data element definition A rRecognized and recordable input or group of inputs from the student to the computer Obl O Prv Put Description See IEEE 1484.11.1, Subclause x.x. Interactions shall be posted with the PutInteractions command. Interactions shall not be posted in the group and keyword format and shall not be posted with the PutParam command used for all other data elements described in this chapter. Interactions shall be sent in a comma-delimited table format, URL encoded. Each row in the table shall constitute a record. The fields to be sent shall be identified in the first row with the following names: Interaction_ID Objective_ID Time Type_Interaction Correct_Response Weighting Student_Response Result Latency A typical PutInteractions command might post the following information (for clarity this example is not URL encoded): "time","interaction_id","objective_id","type_interaction", "correct_response","student_response","result","weighting", "latency" "15:14:23",37,ft1016, C,A,C,W,,00:00:3 "15:14:23",38,ft2223,t,t,t,,,00:00:01 "15:14:23",39,ft1134,C,B,B,C,,00:00:02 "15:14:23",40,ft1156,C,C,C,C,,00:00:04 In the table format, columns may be in any order. The first row, or title row, shall determine the order of the values in the following rows. All columns are optional. All values are optional. Note that if the column exists, the value in that column may be a blank. The PutInteractions command shall post complete records or rows. Each command may post a single row or an entire table. Every PutInterations command is an append action. 7.10.1Interaction_ID Column Label Interaction_ID Data element |--ID Data element definition Unique alphanumeric label created by the lesson developer. Obl Prv O Put Description See IEEE 1484.11.1, Subclause x.x. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 40 2001-03-15 Format P1484.11.3D5 CMIIdentifier 7.10.2Objective_ID Column Label Objective_ID Data element |--Objectives.n.ID Data element definition Indicatesion of any objectives associated with the interaction. Obl O Prv Put Description See IEEE 1484.11.1, Subclause x.x. Format CMIIdentifier If more than one objective is associated with an interaction, commas shall separate the objectives. In this comma-delimited format, any field with an embedded comma shall be surrounded by quotation marks. 7.10.3Time Column Label Time Data element |--Time Data element definition Indicatesion of when the interaction is available to the student. Obl Prv O Put Definition See IEEE 1484.11.1, Subclause x.x. Format CMITime 7.10.4Type_Interaction Column Label Type_Interaction Data element |--Type Data element definition Indication of which category of interaction is recorded. Obl Prv O Put Definition See IEEE 1484.11.1, Subclause x.x. Format Only the first letter of the CMIVocabulary members is significant in this field. Case is insensitive. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 41 2001-03-15 Examples P1484.11.3D5 "true-false" "multiple choice" -- this is interpreted as type matching because only the first -- first letter in the field is significant "C" "F" "Performance" 7.10.5Correct_Response Column Label Correct_Response Data element |--|--Correct Responses.n.Pattern Data element definition Definesition of possible student response. Obl Prv O Put Description See IEEE 1484.11.1, Subclause x.x. Format CMIFeedback Examples Interaction Type Choice Choice Matching Matching Matching Matching Mixed examples Representation "b; d" -- The response is considered correct when the student -- selects either “b” or “d”. "{b,d}" -- The response is considered correct only when the -- student has selected both “b” and “d” in his response -- to the question "1.c; 2.b; 3.a; 4.d" -- answer is considered correct if any one of these four -- matches is made by the student "{1.c,2.b,3.a,4.d}" -- answer is considered correct only if all of these four -- matches is made by the student "{3.4,1.6,5.2}" -- answer is considered correct only if all of these three -- matches is made by the student "{a.e, d.g, c.f, b.h};{a.h, d.g, c.f, b.h}" -- Student must make four matches to have answer -- judged correct. However, he may match “a” to -- either “e” or “h” and still have a correct match. "<case> Washington" "2300-2400" -- This can only be valid as a response to a fill-in -- question. If it represents a range on a performance -- question, there must be two hyphens. "2300 -- 2400" "b,c,e,a,d" -- A sequencing question. This is a single response. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 42 2001-03-15 P1484.11.3D5 "23291" -- Notice that for some types of questions, large -- numbers cannot have commas in them. 23,291 -- could be interpreted as two correct alternative -- responses. 7.10.6Weighting Name Weighting Data element |--Weighting Data element definition Factor that is used to identify the relative importance of one interaction compared to another. Obl Prv O Put Obl Prv O Put Description See IEEE 1484.11.1, Subclause x.x. Format CMIDecimal 7.10.7Student_Response Name Student_Response Data element |--Student Response Contextualized definition Describesption of the computermeasurable action of a student in an interaction. Description See IEEE 1484.11.1, Subclause x.x. Format CMIFeedback Examples Matching examples "1.2" "{1.c,2.b,3.a,4.d}" "{3.4,1.6,5.2}" "{a.e, d.g, c.f, b.h}" "{12.2, 11.3, 10.11}" Mixed examples "1.2" "1.2,1.3" "Washington" "C" "b,c,e" "23291" -- Notice that for some types of questions, large -- numbers cannot have commas in them. 23,291 is -- interpreted as two alternative responses. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 43 2001-03-15 P1484.11.3D5 7.10.8Result Name Result Data element |--Result Contextualized definition Judgment of the of the student's response. Obl O Prv Put Obl O Prv Put Description See IEEE 1484.11.1, Subclause x.x. Format CMIVocabulary Examples "c" "c,c,w,c,c" "unanticipated response, correct, correct, wrong, c" "neutral" "Correct" 7.10.9Latency Name Latency Data element |--Latency Contextualized definition The tTime from the presentation of the stimulus to the completion of the measurable response. Description See IEEE 1484.11.1, Subclause x.x. Format CMITimespan Examples "00:00:23" -- the student required 23 seconds to respond "00:23:00" -- The student required 23 minutes to respond "00:00:03.4" -- The student required 3.4 seconds to respond "00:01:13 Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 44 2001-03-15 8 P1484.11.3D5 Data type definitions See: IEEE P1484.11.1/D5, Clause 7. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 45 2001-03-15 9 P1484.11.3D5 Annex A: Document development (informative) This Annex is informative and not normative. This section concerns the development of this document. The past (revision history, resolved issues), present (release notes, comment returns), and future (open issues) releases of this document are identified here. 9.1 Revision history • • • • • • • Draft 1, YYYY-MM-DD, the first draft. [Description of draft]. Draft 2, YYYY-MM-DD, the second draft. [Description of draft]. Draft 3, YYYY-MM-DD, the third draft. [Description of draft]. Draft 3.2, YYYY-MM-DD, revisions to the third draft. [Description of draft]. Draft 3.4, YYYY-MM-DD, revisions to the third draft. [Description of draft]. Draft 4, YYYY-MM-DD, the fourth major draft. [Description of draft]. Draft 5, YYYY-MM-DD, the current draft. [Description of draft]. 9.2 Release notes for this document The following notes apply to this release of this Standard: • xxx 9.3 Resolved issues The following issues have been resolved: • xxx 9.4 Open issues The following issues are outstanding: • xxx 9.5 Comments on this document All comments are appreciated. Please return all comments on this release of this document by Friday, 2001-MM-DD 23:00 UTC. Deliver all comments to the IEEE 1484.11 CMI Working Group by sending E-mail to: ltsc-cmi@majordomo.ieee.org To subscribe to the working group mailing list, send the one-line message subscribe ltsc-cmi to the E-mail address “majordomo@majordomo.ieee.org”. Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 46 2001-03-15 The Technical Editor may be contacted at any one of the following: P1484.11.3D5 Telephone: +1 512-928-1200 Fax: +1 612-632-3997 E-mail: slewis@oldworldaviaries.com Address Info ... Scott Lewis 3509 Carla Drive Austin, TX 78754 Copyright © 2001 IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. 47