|Click Image For Full-Size Version|
OneRoster® is a subset of Learning Information Services (LIS) and focus on a school’s needs to exchange roster information, grades, and related data. The standard includes both SOAP and REST-based bindings to make it quicker and easier to implement the exchange of information about people, membership, courses and outcomes. In addition to the web services, OneRoster includes a format for CSV files that are typically exchanged between the school and the vendor to populate the roster information needed to gain access to learning tools, portals, and learning environments.
Provision key roster related data including student, course and related enrollment information between various platforms such as a student information system (SIS) and a learning management system (LMS).
Flexible implementation options to align with an institution’s needs and capabilities, supporting simple spreadsheet-style (CSV) exchanges as well as system-to-system exchanges using REST API’s
Improves data exchange among multiple systems with roster and gradebook information, thus eliminating problems before they happen
Transmit scored results between applications, such as student scores from the LMS back to the SIS.
Is Your Product IMS Global Certified?
The IMS Global member community has put in place testing programs that enable products to be certified against specific standards, including various features of the standards. For technology suppliers, participation in the IMS Global certification process is the most cost-effective way to achieve product integrations. For institutions, ensuring that your educational technology tools are IMS Global certified is the best way to establish a plug-and-play ecosystem that allows all of your tools and content to work together. IMS Global members have access to expert support to implement the standards prior to completing conformance certification. Learn more to begin taking advantage of the benefits.
Member Resources (Login Required)
Early Draft Specification Documents
- Specification - REST/JSON API (Candidate Final)
- Specification - CSV (Candidate Final)
- Best Practice Guide
- Conformance and Certification
- How to Implement OneRoster 1.1 [Future]
- How to Get Your Product IMS Conformance Certified
- Planning and Procurement Guide for OneRoster 1.1
- How to Adopt OneRoster 1.1 - A Technical Administrator's Guide [Future]
Developers' Github Community
- OpenAPI Derived Code Libraries
- PHP Class Library for OneRoster [Future]
REST Service Model Files
- OpenAPI (YAML) File
- OpenAPI (JSON) File
Earlier Versions of the Specification
OneRoster is a modern, easy to use data exchange for rostering, course setup and grade reporting. OneRoster should be a key element in your digital curriculum and automation strategy including Common Cartridge and support for cloud-based content with LTI-enabled Thin Common Cartridge.
Feedback on the specification is welcomed in our public forums.
Learning Information Services Background
The Learning Information Services (LIS) specification is the definition of how systems manage the exchange of information that describes people, groups, memberships, courses and outcomes within the context of learning. The LIS v2.x specification supersedes the IMS GLC Enterprise Services v1.0 specification. The LIS specification is based upon the aggregation of the Person Management, Group Management, Membership Management, Course Management, Outcomes Management and the Bulk Data Exchange Management Services specifications. The LIS v2.0 can be implemented using both a Web Services infrastructure (based upon a SOAP http transport mechanism) and the Lightweight Directory Access Protocol (LDAP). An implementation is not required to support each and every service. Neither is an implementation required to support each and every operation. Interoperability is best defined through the use of a Domain Profile. This specification includes such a profile for Higher Education. Interoperability is supported between systems that implement the same profile. The LIS documentation consists of:
- The LIS Specification - describes how the LIS is composed using its six component services;
- Information Models - these documents contain the normative description of the various service definitions, data structures, and their relationships. Each of the six services has its own Information Model;
- Binding documents - each of the Information models has an associated WSDL binding document. Some of the services also have an LDAP binding document;
- Best Practice & Implementation Guide - this is intended to provide vendors with an overall understanding of the IMS GLC LIS Specification, the relationship of the specification with other IMS GLC specifications, and a best practices guide derived from experiences of those using the specification. The guide also includes several actual examples that describe how vendors can make the best use of the IMS LIS Specification;
- Core Profiles & Conformance Specification - a set of profiles of the LIS specification has been created. The Core Profiles identify the minimal subset of the functionality that must be supported by systems developed for deployment in HE. These Profiles (there is a Core plus several Additions) define the set of operations and data models that must be supported by the systems supporting the set of services within the LIS. Each profile contains its Conformance Specification against which compliant systems are tested;
- The Binding Files - one of the outputs of the LIS specification is the set of Web Services Description Language/XML Schema Definition (WSDL/XSD) binding files. Each service has its own set of WSDL/XSD files. It is these files that are used by code-generation tools to create the source code that handles the SOAP messages and XML data structures. Some small changes are required to the WSDL files to map the SOAP messages to the actual server-based implementation of the Web Service. Each of the services has a set of vocabulary files that contain the set of default vocabularies defined in the Information Model. The vocabulary files are instances of the IMS GLC Vocabulary Data Exchange (VDEX) specification.
Feedback may be posted in the IMS public forums.
IMS Learning Information Services Specification - Version 2.0.1 Final Specification (30 September 2013)
The Learning Information Services v2.0.1 corrects some minor errors in the v2.0 specification and updates the Core Profile definition. The specification document set contains information models, binding documents, best practice and implementation guidance, profile and conformance specification, and supporting files.
IMS Learning Information Services Overview
IMS Learning Information Services Specification
Learning Information Services Core Profile Adoption Overview
Learning Information Services Core Profile
Learning Information Services Best Practice and Implementation Guide
IMS Person Management Service Information Model
IMS Course Management Service Information Model
IMS Group Management Service Information Model
IMS Outcomes Management Service Information Model
IMS Membership Management Service Information Model
IMS Bulk Data Exchange Management Service Information Model
IMS Person Management Service WSDL/XSD Binding
IMS Course Management Service WSDL/XSD Binding
IMS Group Management Service WSDL/XSD Binding
IMS Outcomes Management Service WSDL/XSD Binding
IMS Membership Management Service WSDL/XSD Binding
IMS Bulk Data Exchange Management Service WSDL/XSD Binding
WSDLs/XSDs (combined into a single file):
The WSDL bindings are for a Synchronous SOAP implementation only. The WSDL files, expressed using WSDLv1.1, are combined WSDL/XSD files:
The XSDs for each data structure for use with the BDEMS:
The PMS vocabularies are:
- The type of formatted name vocabulary formatnmetypevocabularyv1p0.xml;
- The type of name vocabulary nametypevocabularyv1p0.xml;
- The type of name part-name vocabulary – partnamevocabularyv1p0.xml;
- The type of address vocabulary addresstypevocabularyv1p0.xml;
- The address part vocabulary addresspartvocabularyv1p0p2.xml;
- The type of contact information vocabulary contactinfotypevocabularyv1p0.xml;
- The type of demographics vocabulary demographicstypevocabulartv1p0p2.xml;
- The type of representations vocabulary representationtypevocabularyv1p0.xml;
- The demographics information vocabulary demographicsinfovocabulartv1p0.xml;
- The type of enterprise system role vocabulary epriserolestypevocabularyv1p0.xml;
- The type of institution role vocabulary institutionroletypevocabularyv1p0p2.xml;
- The type of system role vocabulary systemrolevocabularyv1p0.xml;
- The enrollment information vocabulary enrollmentinfovocabularyv1p0.xml;
- The type of agent vocabulary agenttypevocabularyv1p0.xml;
- The type of event date vocabulary eventdatevocabularyv1p0.xml;
- Extension data-types vocabulary extensionvocabularyv1p0p2.xml;
- Language codes languagecodesvocabularyv1p0p2.xml. The set of codes used to identifiy the language for a string (based upon RFC4646).
The CMS vocabularies are:
- Status values vocabulary statusvocabularyv1p0.xml. The permitted status codes;
- Extension data-types vocabulary extensionvocabularyv1p0.xml. The set of data-types for the extensions;
- Language codes languagecodesvocabularyv1p0p2.xml. The set of codes used to identify the language for a string (based upon RFC4646).
The OMS vocabularies are:
- Types of LineItem vocabulary lineitemtypevocabularyv1p0.xml;
- Status of Result vocabulary statusofresultvocabularyv1p0.xml;
- Replace Status Code vocabulary replacestatuscoesvocabularyv1p0.xml;
- Exension data-types vocabulary extensionvocabularyv1p0.xml;
- Language codes – languagecodesvocabularyv1p0p2.xml. The set of codes used to identifiy the langage for a string (based upon RFC4646).
The MMS vocabularies are:
- The set of role types that a Person can have for their Memberships vocabulary roletypevocabularyv1p0p2.xml;
- The set of sub-role types that a Person can have for their Memberships vocabulary subrolevocabularyv1p0p2.xml;
- Extension data-types vocabulary extensionvocabularyv1p0p2.xml;
- Language codes – languagecodesvocabularyv1p0p2.xml. The set of codes used to identify the language for a string (based upon RFC4646).
The BDEMS vocabularies are:
- Parameter types vocabulary parametertypevocabularyv1p0.xml;
- Filter types vocabulary filtertypevocabularyv1p0.xml;
- Filter types for filter objects vocabulary filtervalueobjectvocabularyv1p0.xml;
- Transaction failure status codes vocabulary transactionfailstatusvocabularyv1p0.xml;
- Announce failure reports vocabulary announcefailurereportvocabularyv1p0.xml.