Skip to main content

Learning Tools Interoperability (LTI)

LTI is primarily designed to integrate third-party learning tools with Learning Management Systems (LMS). It allows external tools (like quizzes, video platforms, discussion forums) to be accessed and used seamlessly within an LMS. The main goal of LTI is to enable single sign-on (SSO) and to provide a standardized way for an LMS to launch and interact with external tools or content.

Key Elements Modeled in LTI / OneRoster.

User Information (Students, Teachers, etc.)

Roles: LTI identifies users through roles such as Student, Instructor, TeachingAssistant, Administrator, etc. These roles help the tool provider understand the context of the user and what permissions they should have.

User Attributes: The launch request can include user-specific attributes such as:

  • user_id: A unique identifier for the user.
  • roles: The role(s) of the user in the context of the course (e.g., Instructor, Student).
  • lis_person_name_full, lis_person_name_given, lis_person_name_family: The full name, given name, and family name of the user.
  • lis_person_contact_email_primary: The primary email address of the user.

Context Information (Classes, Courses)

Context ID and Type: The context in which the tool is being launched (often a course or a class) is identified by a context_id and a context_type (e.g., CourseSection, Group).

Course Information:

  • context_label: A label for the context, often a short identifier for the course.
  • context_title: The full name or title of the course.

Roles within Context: LTI allows for context-specific roles, meaning a user could have different roles in different contexts (e.g., a student in one course and a teaching assistant in another).

Resource Link ID: Each tool or activity integrated into the LMS is identified by a resource_link_id, which uniquely identifies the specific instance of the tool within the context.

Resource Link Title and Description: These provide a user-friendly name and description for the tool or activity.

How LTI Handles Educational Entities

While LTI itself doesn't provide a full-fledged data model for entities like students, parents, teachers, and classes, it allows an LMS to share pertinent data with external tools. The responsibility for detailed modeling of these entities lies with the LMS, which then passes the relevant information to the tool provider during an LTI launch.

{
"sourcedId": "abc123",
"status": "active",
"dateLastModified": "2023-08-23T12:00:00Z",
"metadata": {},
"role": "student",
"username": "jdoe",
"userId": "123456",
"givenName": "John",
"familyName": "Doe",
"middleName": "Michael",
"identifier": "123456",
"email": "john.doe@example.com",
"sms": "(555) 123-4567",
"phone": "(555) 765-4321",
"grades": ["10"],
"password": "hashedpassword",
"userMasterIdentifier": "master123"
}