CMI Meeting Announcement

July 27 & 28, 1999

Seattle, Washington

Background

The CMI Subcommittees of the AICC and IEEE will meet July 27 and 28. The meeting will begin at 8:00 each day and end around 4:30 PM. This meeting is to incorporate the changes to the Web CMI standards recently proposed by the ADL and accepted by both the AICC and IEEE in their May meetings.

The accepted changes were of a general nature and many technical details need to be resolved. In order to have modified documents for acceptance in the September general meetings, it is necessary to have a working group session before then..

The agenda below indicates the number of issues to be resolved, and makes clear the necessity for a two-day meeting.

Reference Documents

All of the following documents may be found on the IEEE LTSC (Learning Technology Standards Committee) web site (ltsc.ieee.org) in the CMI area.

Semantic Document v2.1 (CMI-Sem1.doc) This is the Semantic description of the standard

Implementation Layer, Web Version (CMI-Web100.doc) This is the description of the WEB implementation of the standard.

ADL.doc This is the description of the ADL initiated changes that support an API implementation on the WEB.

Meeting Location

FlightSafetyBoeing will host the meeting. The meetings will be in the FSB Seattle training center. The reserved room is called the Cafeteria Special Function Room, and the receptionist in the building lobby will provide directions.

Hotel Accommodations

A block of rooms has been reserved at the Larkspur Landing hotel, which is about a 5-minute drive from the FSB facility. If you do not have a car, Larkspur Landing will provide transportation to and from our facility in their van. Additionally, the hotel will provide transportation from the Sea-Tac International airport for those who are not renting a car. A courtesy phone in the pickup areas of the airport can be used to call the hotel. The hotel is listed at the courtesy phone as "Hilton Garden Inn/Larkspur Landing." (The hotels are located right next to each other.)

There are two types of rooms available. The Studio Suite, which includes a kitchenette and queen-sized bed, is $79 per night. The Executive One Bedroom Suite, which includes a kitchenette, a sitting room and a separate bedroom with king-sized bed, is $89 per night. All rooms in the hotel have two phone lines and a T1 Internet connection. These rates are only available if you identify that you are attending the AICC/IEEE CMI Conference.

The hotel reservation numbers are:

Phone: 425-235-1212

Fax: 425-235-3616

If you experience any problems in getting your room, ask for Alisa Nickoli, Director of Sales for the hotel.

If you reserve your room by fax, be sure to include the following information:

Name

Arrival and departure time

Preference for Studio suite or Executive One Bedroom Suite

Preference for smoking or non-smoking room

Credit card number and expiration date

Your phone and fax number

Driving directions to the hotel:

From the Sea-Tac Airport follow the signs "To Freeway." Take the 405 freeway north to "167 South (Kent/Auburn)." Take the first exit off of 167 South, which will be "East Valley Road" and "43rd Street." Take a right at the end of the exit. You will be on East Valley Road. Follow the road approximately 1 mile north and Larkspur Landing will be on the left hand side.

Driving directions to FSB Training Facility:

From the hotel parking lot turn left on East Valley Road. Go north, following the road as it bends to the left. After the bend to the left you will be on SW 16th traveling west. Follow SW 16th through the Oaksdale intersection. The training center is the first building past Oaksdale on your left. Park in any space that is not marked by a red box. The main entrance is on the Western face of the building.

 

AICC/IEEE Meeting Agenda

July 27 & 28, FlightSafetyBoeing Training Center

Seattle Washington

The meetings will begin at 8:00AM each day and end at approximately 4:30PM. There will be an hour break for lunch around 11:30. The FSB cafeteria is available for a reasonable selection of food at fair prices.

Introduction: Background of this meeting and introduction of participants.

Presentation and discussion of Launch and Terminate rules.

Presentation and discussion of API principles.

The following issues will be resolved in the order shown. If the final issues on this list are not resolved by 5:00PM July 28, they will be resolved by email, forum, and listserve discussions before the September general meetings.

CMI vs LMS: Which is preferable in call, parameter and value names?

LMSInitialize vs CMIInitialize

LMSSetScore vs CMISetScore

Etc.

Format of the API

Single call with multiple parameters or multiple calls with single parameter for each:

SetStatus(status) and SetScore(score)

OR

Set(Status,status) and Set(score,score)

Multiple functions with single call, or single function per call:

GetCore(status, score, student_name)

OR

Get(core, status, score, student_name)

OR

Get(core.status, core.score, core.student_name)

OR

GetCore(status.status) and GetCore(score,score)

OR

Get(core.status, status) Get(Core.Score, score).

Function call format to avoid conflicts with other API's

Set(CMI.score, score) or CMISet(score,score)

Functionality and format for GetCapability: List or multiple calls?

GetCapability returns single list of all supported calls: Example

Get(capability, "\r")

Is element ordering important?

Version: Special getcapability case? Or must be included in list.

GetCapability specifiy which one you want and get a supported/unsupported return. Examples

Get(capability, comments, value) -- value is supported or unsupported

Get(capability, objectivesatatus, value)

GetCapability version -- must define how to structure version: AICC version vs IEEE version vs ADL version vs IEEE.web versions vs IEEE.semantic version vs multiple standards support

Functions with multiple values over time. Handle with one set command or multiple set commands?

Example 1

Set(Comments, comment_string)

OR

Set(comment.1, comment_string) and Set(comment.2, comment_string)

Example 2

Set(Objectives_status.1, J_ID-J_score-J_status_string) <- everything in a string

OR

Set(Objectives_status.J_ID.1, J_ID, Objective_status.J_score.1, J_score, Objective_status.J_status.1, j_status, Objective_status.J_ID.2, J_ID, etc. etc.)

OR a separate Set function for each element in the objective status list

Set(Objective_status.J_ID.1, J_ID.1) and Set(Objective_status.J_status, J_Status)

How handle the discovery of lists? For instance, how determine what information is available on student performance in previous uses of the lesson. For instance, what objectives has he experienced and what was the result?

Get(Objective_status, list_of_all_stuff_on_objectives) You don't know the .1 etc extension number, and you dont know how many to ask for. The student may have completed all of them or only 1 on none on the previous use of the lesson.

Status issue

AICC and IEEE will not support single status (complete vs null) but will support current status values (pass, fail, not attempted, complete, incomplete) and flag (ab initio, resume)

Core functions

Expand to include AICC/IEEE cores?

Format for parameters and return values.

All strings convertible to integers, floating-point numbers, etc?

All strings URL encoded?

Names for all API parameters. Functions will be discussed in the order in which they appear in the IEEE documentation, unless out-of-order exceptions are requested in the meeting.

Error handling

Should error codes be embedded in return messages? Get(score, score) comes back with "not supported" error? Or all errors only available with separate call? CMIGet( LastErrorCode, value)

What additional error messages needed?

Handling of extensions to the standard set of calls