Date Issued: | 10th September, 2018 |
Latest version: | https://www.imsglobal.org/spec/lti-rs/latest/ |
IPR and Distribution Notices
Recipients of this document are requested to submit, with their comments, notification of any relevant patent claims or other intellectual property rights of which they may be aware that might be infringed by any implementation of the specification set forth in this document, and to provide supporting documentation.
IMS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on IMS's procedures with respect to rights in IMS specifications can be found at the IMS Intellectual Property Rights web page: http://www.imsglobal.org/ipr/imsipr_policyFinal.pdf.
Copyright © 2018 IMS Global Learning Consortium. All Rights Reserved.
Use of this specification to develop products or services is governed by the license with IMS found on the IMS website: http://www.imsglobal.org/speclicense.html.
Permission is granted to all parties to use excerpts from this document as needed in producing requests for proposals.
The limited permissions granted above are perpetual and will not be revoked by IMS or its successors or assigns.
THIS SPECIFICATION IS BEING OFFERED WITHOUT ANY WARRANTY WHATSOEVER, AND IN PARTICULAR, ANY WARRANTY OF NONINFRINGEMENT IS EXPRESSLY DISCLAIMED. ANY USE OF THIS SPECIFICATION SHALL BE MADE ENTIRELY AT THE IMPLEMENTER'S OWN RISK, AND NEITHER THE CONSORTIUM, NOR ANY OF ITS MEMBERS OR SUBMITTERS, SHALL HAVE ANY LIABILITY WHATSOEVER TO ANY IMPLEMENTER OR THIRD PARTY FOR ANY DAMAGES OF ANY NATURE WHATSOEVER, DIRECTLY OR INDIRECTLY, ARISING FROM THE USE OF THIS SPECIFICATION.
Public contributions, comments and questions can be posted here: www.imsglobal.org/forums/ims-glc-public-forums-and-resources.
© 2018 IMS Global Learning Consortium, Inc.
All Rights Reserved.
Trademark information: http://www.imsglobal.org/copyright.html
Document Name: IMS LTI Resource Search Service v1.0
Revision: 10th September, 2018
The Learning Tools Interoperability (LTI) Resource Search specification defines how to search digital repositories for a set of resources via a web services API. The standard addresses searching learning object repositories (LORs), and other catalogs of learning resources. The specification supports executing these search from learning tools using various attributes of resources and returning full metadata about the resources to the learning tools. Results can be launched either as URLs or LTI links. The goal of the LTI Resource Search standard is a standard way for students and teachers to be able to search resource providers, such as learning object repositories, from single sources or aggregated from multiple sources, within a learning object consumer such as a learning management system or other educational platform.
1. Introduction
2. Service Architecture and Specification Model
3.2 "ResourceSearchManager" Interface Description
3.2.1 "searchForResources" Operation
4.1 "ResourceSet" Class Description
4.1.1 "resources" Attribute Description
4.2 "SubjectSet" Class Description
4.2.1 "subjects" Attribute Description
4.3 "imsx_StatusInfo" Class Description
4.3.1 "imsx_codeMajor" Attribute Description
4.3.2 "imsx_severity" Attribute Description
5. Data Model
5.1.1 "CCLTILink" Class Description
5.1.1.1 "cartridge_bundle" Attribute Description
5.1.1.2 "cartridge_icon" Attribute Description
5.1.1.3 "metadata" Attribute Description
5.1.2 "CSMSet" Class Description
5.1.2.1 "resourceLabel" Attribute Description
5.1.2.2 "resourcePartId" Attribute Description
5.1.2.3 "curriculumStandardsMetadata" Attribute Description
5.1.3 "CurriculumStandardsMetadata" Class Description
5.1.3.1 "providerId" Attribute Description
5.1.3.2 "setOfGUIDs" Attribute Description
5.1.4 "LTILink" Class Description
5.1.4.1 "title" Attribute Description
5.1.4.2 "description" Attribute Description
5.1.4.3 "custom" Attribute Description
5.1.4.4 "extensions" Attribute Description
5.1.4.5 "launch_url" Attribute Description
5.1.4.6 "secure_launch_url" Attribute Description
5.1.4.7 "icon" Attribute Description
5.1.4.8 "secure_icon" Attribute Description
5.1.4.9 "vendor" Attribute Description
5.1.5 "LTILinkResourceRef" Class Description
5.1.5.1 "name" Attribute Description
5.1.5.2 "resourceUri" Attribute Description
5.1.6 "LabelledGUID" Class Description
5.1.6.1 "label" Attribute Description
5.1.6.2 "caseItemURI" Attribute Description
5.1.6.3 "GUID" Attribute Description
5.1.7 "LearningObjectives" Class Description
5.1.7.1 "alignmentType" Attribute Description
5.1.7.2 "educationalFramework" Attribute Description
5.1.7.3 "targetDescription" Attribute Description
5.1.7.4 "targetName" Attribute Description
5.1.7.5 "targetURL" Attribute Description
5.1.7.6 "caseItemUri" Attribute Description
5.1.7.7 "caseItemGUID" Attribute Description
5.1.8 "Metadata" Class Description
5.1.8.1 "curriculumStandardsMetadataSet" Attribute Description
5.1.9 "PlatformPropertySet" Class Description
5.1.9.1 "platform" Attribute Description
5.1.9.2 "properties" Attribute Description
5.1.10 "Property" Class Description
5.1.10.1 "name" Attribute Description
5.1.10.2 "value" Attribute Description
5.1.11 "PropertySet" Class Description
5.1.11.1 "properties" Attribute Description
5.1.12 "Resource" Class Description
5.1.12.1 "name" Attribute Description
5.1.12.2 "description" Attribute Description
5.1.12.3 "subject" Attribute Description
5.1.12.4 "url" Attribute Description
5.1.12.5 "ltiLink" Attribute Description
5.1.12.6 "learningResourceType" Attribute Description
5.1.12.7 "language" Attribute Description
5.1.12.8 "thumbnailUrl" Attribute Description
5.1.12.9 "typicalAgeRange" Attribute Description
5.1.12.10 "textComplexity" Attribute Description
5.1.12.11 "learningObjectives" Attribute Description
5.1.12.12 "author" Attribute Description
5.1.12.13 "publisher" Attribute Description
5.1.12.14 "useRightsURL" Attribute Description
5.1.12.15 "timeRequired" Attribute Description
5.1.12.16 "technicalFormat" Attribute Description
5.1.12.17 "educationalAudience" Attribute Description
5.1.12.18 "accessibilityAPI" Attribute Description
5.1.12.19 "accessibilityInputMethods" Attribute Description
5.1.12.20 "accessibilityFeatures" Attribute Description
5.1.12.21 "accessibilityHazards" Attribute Description
5.1.12.22 "accessMode" Attribute Description
5.1.12.23 "publishDate" Attribute Description
5.1.12.24 "rating" Attribute Description
5.1.12.25 "relevance" Attribute Description
5.1.12.26 "extensions" Attribute Description
5.1.13 "ResourceSet" Class Description
5.1.13.1 "resources" Attribute Description
5.1.14 "SetOfGUIDs" Class Description
5.1.14.1 "region" Attribute Description
5.1.14.2 "version" Attribute Description
5.1.14.3 "labelledGUID" Attribute Description
5.1.15 "Subject" Class Description
5.1.15.1 "identifier" Attribute Description
5.1.15.2 "name" Attribute Description
5.1.15.3 "parent" Attribute Description
5.1.16 "SubjectSet" Class Description
5.1.16.1 "subjects" Attribute Description
5.1.17 "TextComplexity" Class Description
5.1.17.1 "name" Attribute Description
5.1.17.2 "value" Attribute Description
5.1.18 "Vendor" Class Description
5.1.18.1 "code" Attribute Description
5.1.18.2 "name" Attribute Description
5.1.18.3 "description" Attribute Description
5.1.18.4 "url" Attribute Description
5.1.18.5 "emailContact" Attribute Description
5.1.19 "imsx_CodeMinor" Class Description
5.1.19.1 "imsx_codeMinorField" Attribute Description
5.1.20 "imsx_CodeMinorField" Class Description
5.1.20.1 "imsx_codeMinorFieldName" Attribute Description
5.1.20.2 "imsx_codeMinorFieldValue" Attribute Description
5.1.21 "imsx_StatusInfo" Class Description
5.1.21.1 "imsx_codeMajor" Attribute Description
5.1.21.2 "imsx_severity" Attribute Description
5.1.21.3 "imsx_description" Attribute Description
5.1.21.4 "imsx_codeMinor" Attribute Description
5.2 Derived Class Descriptions
5.2.1 "AgeRange" Class Description
5.2.2 "Float0to1" Class Description
5.2.3 "GUID" Class Description
5.2.4 "NString1024" Class Description
5.2.5 "NString2048" Class Description
5.2.6 "URL" Class Description
5.3 Enumerated Vocabulary Descriptions
5.3.1 "AccessModeEnum" Vocabulary Description
5.3.2 "AccessibilityAPIEnum" Vocabulary Description
5.3.3 "AccessibilityInputEnum" Vocabulary Description
5.3.4 "AlignmentTypeEnum" Vocabulary Description
5.3.5 "EducationalAudienceEnum" Vocabulary Description
5.3.6 "HazardEnum" Vocabulary Description
5.3.7 "LRTEnum" Vocabulary Description
5.3.8 "RatingEnum" Vocabulary Description
5.3.9 "TextComplexityNameEnum" Vocabulary Description
5.3.10 "imsx_CodeMajorEnum" Vocabulary Description
6. Extending and Profiling the Service
6.1.1 Proprietary Operations
Appendix A Modeling Concepts and Terms
A1 Behavior Descriptions Explanations
A1.1 Service Diagrams
A2 Interface Descriptions Explanations
A2.2 Class Descriptions
A3 Data Model Descriptions Explanations
A3.1 Data Model Diagrams
A3.2 Class Descriptions
A3.3 Attribute and Characteristic Descriptions
A3.4 Enumerated Vocabulary Descriptions
Appendix B Service Status Codes
B1 Definition of the Status Codes
B1.1 Definition of the "CodeMajor" Values
Figure 3.1 Service interface definitions
Figure 4.1 ResourceSet class definitions
Figure 4.2 SubjectSet class definitions
Figure 4.3 imsx_StatusInfo class definitions
Figure 5.1.1 CCLTILink class definitions
Figure 5.1.2 CSMSet class definitions
Figure 5.1.3 CurriculumStandardsMetadata class definitions
Figure 5.1.4 LTILink class definitions
Figure 5.1.5 LTILinkResourceRef class definitions
Figure 5.1.6 LabelledGUID class definitions
Figure 5.1.7 LearningObjectives class definitions
Figure 5.1.8 Metadata class definitions
Figure 5.1.9 PlatformPropertySet class definitions
Figure 5.1.10 Property class definitions
Figure 5.1.11 PropertySet class definitions
Figure 5.1.12 Resource class definitions
Figure 5.1.13 ResourceSet class definitions
Figure 5.1.14 SetOfGUIDs class definitions
Figure 5.1.15 Subject class definitions
Figure 5.1.16 SubjectSet class definitions
Figure 5.1.17 TextComplexity class definitions
Figure 5.1.18 Vendor class definitions
Figure 5.1.19 imsx_CodeMinor class definitions
Figure 5.1.20 imsx_CodeMinorField class definitions
Figure 5.1.21 imsx_StatusInfo class definitions
Figure 5.2.1 AgeRange class definitions
Figure 5.2.2 Float0to1 class definitions
Figure 5.2.3 GUID class definitions
Figure 5.2.4 NString1024 class definitions
Figure 5.2.5 NString2048 class definitions
Figure 5.2.6 URL class definitions
Figure 5.3.1 AccessModeEnum class definitions
Figure 5.3.2 AccessibilityAPIEnum class definitions
Figure 5.3.3 AccessibilityInputEnum class definitions
Figure 5.3.4 AlignmentTypeEnum class definitions
Figure 5.3.5 EducationalAudienceEnum class definitions
Figure 5.3.6 HazardEnum class definitions
Figure 5.3.7 LRTEnum class definitions
Figure 5.3.8 RatingEnum class definitions
Figure 5.3.9 TextComplexityNameEnum class definitions
Figure 5.3.10 imsx_CodeMajorEnum class definitions
Figure 5.3.11 imsx_CodeMinorValueEnum class definitions
Figure 5.3.12 imsx_SeverityEnum class definitions
Table 3.1 The set of interfaces.
Table 3.2 The set of operations for the "ResourceSearchManager" interface.
Table 3.3 The set of operations for the "SubjectsManager" interface.
Table 4.1 "ResourceSet" Class Description
Table 4.1.1 "resources" Attribute Description
Table 4.2 "SubjectSet" Class Description
Table 4.2.1 "subjects" Attribute Description
Table 4.3 "imsx_StatusInfo" Class Description
Table 4.3.1 "imsx_codeMajor" Attribute Description
Table 4.3.2 "imsx_severity" Attribute Description
Table 4.3.3 "imsx_description" Attribute Description
Table 4.3.4 "imsx_codeMinor" Attribute Description
Table 5.1.1 CCLTILink class definitions
Table 5.1.1.1 Description of the "cartridge_bundle" attribute for the "CCLTILink" class
Table 5.1.1.2 Description of the "cartridge_icon" attribute for the "CCLTILink" class
Table 5.1.1.3 Description of the "metadata" attribute for the "CCLTILink" class
Table 5.1.2 CSMSet class definitions
Table 5.1.2.1 Description of the "resourceLabel" attribute for the "CSMSet" class
Table 5.1.2.2 Description of the "resourcePartId" attribute for the "CSMSet" class
Table 5.1.2.3 Description of the "curriculumStandardsMetadata" attribute for the "CSMSet" class
Table 5.1.3 CurriculumStandardsMetadata class definitions
Table 5.1.3.1 Description of the "providerId" attribute for the "CurriculumStandardsMetadata" class
Table 5.1.3.2 Description of the "setOfGUIDs" attribute for the "CurriculumStandardsMetadata" class
Table 5.1.4 LTILink class definitions
Table 5.1.4.1 Description of the "title" attribute for the "LTILink" class
Table 5.1.4.2 Description of the "description" attribute for the "LTILink" class
Table 5.1.4.3 Description of the "custom" attribute for the "LTILink" class
Table 5.1.4.4 Description of the "extensions" attribute for the "LTILink" class
Table 5.1.4.5 Description of the "launch_url" attribute for the "LTILink" class
Table 5.1.4.6 Description of the "secure_launch_url" attribute for the "LTILink" class
Table 5.1.4.7 Description of the "icon" attribute for the "LTILink" class
Table 5.1.4.8 Description of the "secure_icon" attribute for the "LTILink" class
Table 5.1.4.9 Description of the "vendor" attribute for the "LTILink" class
Table 5.1.5 LTILinkResourceRef class definitions
Table 5.1.5.1 Description of the "name" attribute for the "LTILinkResourceRef" class
Table 5.1.5.2 Description of the "resourceUri" attribute for the "LTILinkResourceRef" class
Table 5.1.6 LabelledGUID class definitions
Table 5.1.6.1 Description of the "label" attribute for the "LabelledGUID" class
Table 5.1.6.2 Description of the "caseItemURI" attribute for the "LabelledGUID" class
Table 5.1.6.3 Description of the "GUID" attribute for the "LabelledGUID" class
Table 5.1.7 LearningObjectives class definitions
Table 5.1.7.1 Description of the "alignmentType" attribute for the "LearningObjectives" class
Table 5.1.7.2 Description of the "educationalFramework" attribute for the "LearningObjectives" class
Table 5.1.7.3 Description of the "targetDescription" attribute for the "LearningObjectives" class
Table 5.1.7.4 Description of the "targetName" attribute for the "LearningObjectives" class
Table 5.1.7.5 Description of the "targetURL" attribute for the "LearningObjectives" class
Table 5.1.7.6 Description of the "caseItemUri" attribute for the "LearningObjectives" class
Table 5.1.7.7 Description of the "caseItemGUID" attribute for the "LearningObjectives" class
Table 5.1.8 Metadata class definitions
Table 5.1.8.1 Description of the "curriculumStandardsMetadataSet" attribute for the "Metadata" class
Table 5.1.9 PlatformPropertySet class definitions
Table 5.1.9.1 Description of the "platform" attribute for the "PlatformPropertySet" class
Table 5.1.9.2 Description of the "properties" attribute for the "PlatformPropertySet" class
Table 5.1.10 Property class definitions
Table 5.1.10.1 Description of the "name" attribute for the "Property" class
Table 5.1.10.2 Description of the "value" attribute for the "Property" class
Table 5.1.11 PropertySet class definitions
Table 5.1.11.1 Description of the "properties" attribute for the "PropertySet" class
Table 5.1.12 Resource class definitions
Table 5.1.12.1 Description of the "name" attribute for the "Resource" class
Table 5.1.12.2 Description of the "description" attribute for the "Resource" class
Table 5.1.12.3 Description of the "subject" attribute for the "Resource" class
Table 5.1.12.4 Description of the "url" attribute for the "Resource" class
Table 5.1.12.5 Description of the "ltiLink" attribute for the "Resource" class
Table 5.1.12.6 Description of the "learningResourceType" attribute for the "Resource" class
Table 5.1.12.7 Description of the "language" attribute for the "Resource" class
Table 5.1.12.8 Description of the "thumbnailUrl" attribute for the "Resource" class
Table 5.1.12.9 Description of the "typicalAgeRange" attribute for the "Resource" class
Table 5.1.12.10 Description of the "textComplexity" attribute for the "Resource" class
Table 5.1.12.11 Description of the "learningObjectives" attribute for the "Resource" class
Table 5.1.12.12 Description of the "author" attribute for the "Resource" class
Table 5.1.12.13 Description of the "publisher" attribute for the "Resource" class
Table 5.1.12.14 Description of the "useRightsURL" attribute for the "Resource" class
Table 5.1.12.15 Description of the "timeRequired" attribute for the "Resource" class
Table 5.1.12.16 Description of the "technicalFormat" attribute for the "Resource" class
Table 5.1.12.17 Description of the "educationalAudience" attribute for the "Resource" class
Table 5.1.12.18 Description of the "accessibilityAPI" attribute for the "Resource" class
Table 5.1.12.19 Description of the "accessibilityInputMethods" attribute for the "Resource" class
Table 5.1.12.20 Description of the "accessibilityFeatures" attribute for the "Resource" class
Table 5.1.12.21 Description of the "accessibilityHazards" attribute for the "Resource" class
Table 5.1.12.22 Description of the "accessMode" attribute for the "Resource" class
Table 5.1.12.23 Description of the "publishDate" attribute for the "Resource" class
Table 5.1.12.24 Description of the "rating" attribute for the "Resource" class
Table 5.1.12.25 Description of the "relevance" attribute for the "Resource" class
Table 5.1.12.26 Description of the "extensions" attribute for the "Resource" class
Table 5.1.13 ResourceSet class definitions
Table 5.1.13.1 Description of the "resources" attribute for the "ResourceSet" class
Table 5.1.14 SetOfGUIDs class definitions
Table 5.1.14.1 Description of the "region" attribute for the "SetOfGUIDs" class
Table 5.1.14.2 Description of the "version" attribute for the "SetOfGUIDs" class
Table 5.1.14.3 Description of the "labelledGUID" attribute for the "SetOfGUIDs" class
Table 5.1.15 Subject class definitions
Table 5.1.15.1 Description of the "identifier" attribute for the "Subject" class
Table 5.1.15.2 Description of the "name" attribute for the "Subject" class
Table 5.1.15.3 Description of the "parent" attribute for the "Subject" class
Table 5.1.16 SubjectSet class definitions
Table 5.1.16.1 Description of the "subjects" attribute for the "SubjectSet" class
Table 5.1.17 TextComplexity class definitions
Table 5.1.17.1 Description of the "name" attribute for the "TextComplexity" class
Table 5.1.17.2 Description of the "value" attribute for the "TextComplexity" class
Table 5.1.18 Vendor class definitions
Table 5.1.18.1 Description of the "code" attribute for the "Vendor" class
Table 5.1.18.2 Description of the "name" attribute for the "Vendor" class
Table 5.1.18.3 Description of the "description" attribute for the "Vendor" class
Table 5.1.18.4 Description of the "url" attribute for the "Vendor" class
Table 5.1.18.5 Description of the "emailContact" attribute for the "Vendor" class
Table 5.1.19 imsx_CodeMinor class definitions
Table 5.1.19.1 Description of the "imsx_codeMinorField" attribute for the "imsx_CodeMinor" class
Table 5.1.20 imsx_CodeMinorField class definitions
Table 5.1.20.1 Description of the "imsx_codeMinorFieldName" attribute for the "imsx_CodeMinorField" class
Table 5.1.20.2 Description of the "imsx_codeMinorFieldValue" attribute for the "imsx_CodeMinorField" class
Table 5.1.21 imsx_StatusInfo class definitions
Table 5.1.21.1 Description of the "imsx_codeMajor" attribute for the "imsx_StatusInfo" class
Table 5.1.21.2 Description of the "imsx_severity" attribute for the "imsx_StatusInfo" class
Table 5.1.21.3 Description of the "imsx_description" attribute for the "imsx_StatusInfo" class
Table 5.1.21.4 Description of the "imsx_codeMinor" attribute for the "imsx_StatusInfo" class
Table 5.2.1 AgeRange class definitions
Table 5.2.2 Float0to1 class definitions
Table 5.2.3 GUID class definitions
Table 5.2.4 NString1024 class definitions
Table 5.2.5 NString2048 class definitions
Table 5.2.6 URL class definitions
Table 5.3.1 AccessModeEnum class definitions
Table 5.3.2 AccessibilityAPIEnum class definitions
Table 5.3.3 AccessibilityInputEnum class definitions
Table 5.3.4 AlignmentTypeEnum class definitions
Table 5.3.5 EducationalAudienceEnum class definitions
Table 5.3.6 HazardEnum class definitions
Table 5.3.7 LRTEnum class definitions
Table 5.3.8 RatingEnum class definitions
Table 5.3.9 TextComplexityNameEnum class definitions
Table 5.3.10 imsx_CodeMajorEnum class definitions
Table 5.3.11 imsx_CodeMinorValueEnum class definitions
Table 5.3.12 imsx_SeverityEnum class definitions
Table A3.1 The key to the descriptions of data model diagrams
Table A3.2 The key to the descriptions of the data class tables
Table A3.3 The key to the descriptions of the data attribute/characteristic tables
Table A3.4 The key to the descriptions of the enumerated vocabulary tables
Table A3.5 The key to the descriptions of the external vocabulary tables
Table A3.6 The key to the descriptions of the import class tables
This document is the LTI Resource Search (RS) Service Model v1.0 and as such it is used as the basis for the development of the following documents:
This service model is defined to enable the exchange of information as identified in the core use-cases [RS-UC, 18]. This service model defines the RS Abstract Application Programming Interface (a-API). This service model is described using the Unified Modeling Language (UML) based upon the IMS Global Model Driven Specification approach and the associated modelling toolkit [I-BAT, 06]. This means that this specification is based upon the concepts of:
All sections marked as non-normative, all authoring guidelines, diagrams (with the exception of the UML diagrams), examples, and notes in this specification are non-normative. Everything else in this specification is normative.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC 2119]. This means that from the perspective of conformance:
The Conformance and Certification Guide for this specification may introduce greater normative constraints than those defined here for specific service or implementation categories.
The SHOULD/SHOULD NOT/RECOMMENDED statements MUST NOT be used in any document, or section of a document, that is responsible for defining the information model and/or the associated bindings and/or conformance and certification.
The structure of the rest of this document is:
2. Service Architecture and Specification Model | An overview of the service including the key use cases and the underlying service architecture and end-system service objects; |
3. The Behavior Model | The definition of the operations of the service. This focuses on the description of the behaviors supported by the service. The behaviors are grouped as interfaces; |
4. The Interface Model | The definition of the data models exchanged between the service End Systems. These are the parameters exchanged across the interoperability interface. These are an abbreviated description with the full set of details in the corresponding data class description; |
5. Data Model | The definition of the data classes for the full data exchange. This addresses the data classes used to supplement the interface parameters. The descriptions are grouped according to their type e.g. data, enumeration, derived, etc; |
6. Extending and Profiling the Service | An explanation of how the service can be extended, using the permitted points of extension, and/or profiled. Profiling is the process by which the specification is tailored to a specific set of market/domain requirements; |
References | The set of references that are cited throughout this document; |
Appendix A Modeling Concepts and Terms | An overview of the model driven approach, the concepts and the terms used by IMS to create the service model representations (based upon a profile of UML), the corresponding set of bindings and the accompanying documentation (including this information model); |
Appendix B Service Status Codes | A summary list of the status codes, and their causes, that can be returned by each of the operations forming the service. These describe the end-to-end status of the transaction. |
API | Application Programming Interface |
AfAPNP | Access for All Personal Needs and Preferences |
CASE | Competencies and Academic Standards Exchange |
HTTP | Hypertext Transfer Protocol |
I-BAT | IMS Binding Autogeneration Toolkit |
IETF | Internet Engineering Task Force |
ISO | International Standards Organization |
JSON | Java Script Object Notation |
LOR | Learning Object Repository |
LTI | Learning Tools Interoperability |
OAS | OpenAPI Specification |
PNP | Personal Needs and Preferences |
REST | Representation State Transfer |
RFC | Request for Comments |
RS | LTI Resource Search |
TLS | Transport Layer Security |
UML | Unified Modeling Language |
URI | Uniform Resource Identifier |
URL | Uniform Resource Locator |
YAML | Yet Another Markup Language |
This Section is NOT NORMATIVE.
It is important to remember that this document contains a description of the underlying information model in terms of the abstract Application Programming Interface (API). The manner in which this abstract representation is visualized is not intended to dictate the implementation form of the Service. The breakdown of the service into its interface classes is a convenient way to document the set of behaviors. The objective for producing these interfaces is to identify and define the messages that are exchanged between the end-systems to realize the system behaviors required of the service.
The internal organization of an implementation of the full abstract API is beyond the scope of this specification. The only constraint is that the external behavior of the abstract API complies with this specification. This means that a .NET, J2EE, etc. physical implementation of this abstract API does not have to represent the functionality using the same breakdown of operations/methods. This physical implementation is not subject to the conformance specification.
It is important to note that the UML representation of the interfaces is used to help develop and document the Service Model and various Bindings. It is not a requirement for a system to implement this interface as defined i.e. to use the same parameters, etc. Conformance against this specification will be confirmed by inspecting the appropriate binding of the service model and ensuring that the relevant information is present and that different sequences of activity result in the predicted and mandated behavior. It is essential that the behaviors described by each of the operations are fully supported and that the behaviors described by different sequences are also maintained.
The basic architectural model for the LTI Resource Search Service specification is shown in Figure 2.1. In this architecture the scope of the IMS LTI Resource Search Service specification is shown as the dotted line. The scope of the interoperability is the data and behavioral models of the objects being exchanged.
Figure 2.1 - The LTI Resource Search service architecture.
It is important to remember that the structure of the exchanged information has NO bearing on how the same information is contained within the 'consumer' and 'provider' LTI Resource Search systems. It is simply a representation of the data used to facilitate exchange between the end-systems. The only constraint on the end-system repositories is that they provide data persistence consistent with the required behavior.
The set of service collection objects that are exchanged between end-systems are:
The LTI Resource Search Service consists of a set of synchronous messsage exchanges, i.e. the consumer is blocked until the response from the provider is received. This means that a consumer can only have one outstanding request with a LTI Resource Search Engine. The corresponding sequence of actions is shown in Figure 2.2.
Figure 2.2 - The action sequence for the LTI Resource Search synchronous service.
Figure 2.2 shows the action sequence from the perspective of the consumer but it must be noted that a LTI Resource Search Engine will be expected to support concurrent requests (perhaps hundreds to thousands) from many consumers.
This Section is NORMATIVE
The model for the service representation is shown in Figure 3.1 and Table 3.1 (the syntax and semantics for this representation is described in Appendix A1.1). Following the service definition are the descriptions for the set of corresponding service operations (the syntax and semantics for these descriptions is described in Appendix A1.2).
Figure 3.1 - Service interface definitions.
Interface | Description |
---|---|
ResourceSearchManager | The set of service operations that manage searching for resources. |
SubjectsManager | The set of service operations that manage access to the lists of subjects supported by a LOR. |
The set of service operations that manage searching for resources.
The set of operations for this interface are summarized in Table 3.2.
Operation | Description |
---|---|
searchForResources | This is the search request. The criteria for the search are passed as query parameters and the set of identified resources are returned in the payload for the response message. |
Name: | searchForResources () |
Return Function Parameter: | statusInfo : imsx_StatusInfo - the status information report for the request. This report has end-to-end significance and must map between the messaging technology approach and the business transaction API. |
Supplied (in) Parameters: | None. |
Returned (out) Parameters: | resourceSet : ResourceSet - the set of resources that have been identified as conforming to the query criteria. |
Behavior: | This is the search request. The criteria for the search are passed as query parameters and the set of identified resources are returned in the payload for the response message. |
Notes: |
Query Parameters for the REST-based binding have been defined for this operation, namely:
|
The set of service operations that manage access to the lists of subjects supported by a LOR.
The set of operations for this interface are summarized in Table 3.3.
Operation | Description |
---|---|
getAllSubjects | To obtain, read, the list of subjects that are supported by a LOR. |
Name: | getAllSubjects () |
Return Function Parameter: | imsx_StatusInfo : imsx_StatusInfo - the status information report for the request. This report has end-to-end significance and must map between the messaging technology approach and the business transaction API. |
Supplied (in) Parameters: | None. |
Returned (out) Parameters: | subjectSet : SubjectSet - the list of subjects that are supported by the LOR. |
Behavior: | To obtain, read, the list of subjects that are supported by a LOR. |
This Section is NORMATIVE
The set of operations described within the behavior model (The Behavior Model) are based upon class descriptions specific to the parameters of the operations. All parameters are mandatory. The syntax and semantics for this representation is described in Appendix A2.
The data model for the "ResourceSet" class is shown in Figure 4.1 and the accompanying definition in Table 4.1.
Figure 4.1 - ResourceSet class definitions.
Descriptor | Definition |
---|---|
Class Name | ResourceSet |
Class Type | Container [ Unordered ] |
Parents | Service parameter data-type used in the following operations: |
Characteristics | There are no characteristics. |
Children | The set of children attributes are: |
Description | The container for the set of resources that have been supplied by the service provider. This may be empty if none of the resources fulfill the search criteria. The order of resources is not significant. |
The description of the "resources" attribute for the "ResourceSet" class is given in Table 4.1.1.
Descriptor | Definition |
---|---|
Attribute Name | resources |
Data Type | Resource |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | The actual resources supplied by the service provider. The order of resources is not significant. |
The data model for the "SubjectSet" class is shown in Figure 4.2 and the accompanying definition in Table 4.2.
Figure 4.2 - SubjectSet class definitions.
Descriptor | Definition |
---|---|
Class Name | SubjectSet |
Class Type | Container [ Unordered ] |
Parents | Service parameter data-type used in the following operations: |
Characteristics | There are no characteristics. |
Children | The set of children attributes are: |
Description | The container for the set of subjects that have been supplied by the service provider. This may be empty if none of the subjects fulfill the search criteria. The order of subjects is not significant. |
The description of the "subjects" attribute for the "SubjectSet" class is given in Table 4.2.1.
Descriptor | Definition |
---|---|
Attribute Name | subjects |
Data Type | Subject |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | The actual list of subject supplied by the service provider. The order of subjects is not significant. |
The data model for the "imsx_StatusInfo" class is shown in Figure 4.3 and the accompanying definition in Table 4.3.
Figure 4.3 - imsx_StatusInfo class definitions.
Descriptor | Definition |
---|---|
Class Name | imsx_StatusInfo |
Class Type | Container [ Sequence ] |
Parents | Service parameter data-type used in the following operations: |
Characteristics | There are no characteristics. |
Children | The set of children attributes are: |
Description | This is the container for the status code and associated information returned within the HTTP messages received from the Service Provider. |
The description of the "imsx_codeMajor" attribute for the "imsx_StatusInfo" class is given in Table 4.3.1.
Descriptor | Definition |
---|---|
Attribute Name | imsx_codeMajor |
Data Type | imsx_CodeMajorEnum |
Value Space | Enumerated value set of: { success | processing | failure | unsupported } |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The code major value (from the corresponding enumerated vocabulary). |
The description of the "imsx_severity" attribute for the "imsx_StatusInfo" class is given in Table 4.3.2.
Descriptor | Definition |
---|---|
Attribute Name | imsx_severity |
Data Type | imsx_SeverityEnum |
Value Space | Enumerated value set of: { status | warning | error } |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The severity value (from the corresponding enumerated vocabulary). |
The description of the "imsx_description" attribute for the "imsx_StatusInfo" class is given in Table 4.3.3.
Descriptor | Definition |
---|---|
Attribute Name | imsx_description |
Data Type | String (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | A human readable description supplied by the entity creating the status code information. |
The description of the "imsx_codeMinor" attribute for the "imsx_StatusInfo" class is given in Table 4.3.4.
Descriptor | Definition |
---|---|
Attribute Name | imsx_codeMinor |
Data Type | imsx_CodeMinor |
Value Space | Container [ Sequence ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | The set of reported code minor status codes. |
This Section is NORMATIVE.
All of the data classes used within this Information Model are described in this Section. The syntax and semantics for this representation is described in Appendix A3.2.
The data model for the "CCLTILink" class is shown in Figure 5.1.1 and the accompanying definition in Table 5.1.1.
Figure 5.1.1 - CCLTILink class definitions.
The description of the "cartridge_bundle" attribute for the "CCLTILink" class is given in Table 5.1.1.1.
Descriptor | Definition |
---|---|
Attribute Name | cartridge_bundle |
Data Type | LTILinkResourceRef |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | A link to a bundled set of files. For example this could be a link to zip file that contains all of the icons. |
The description of the "cartridge_icon" attribute for the "CCLTILink" class is given in Table 5.1.1.2.
Descriptor | Definition |
---|---|
Attribute Name | cartridge_icon |
Data Type | LTILinkResourceRef |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | An icon for the link to the cartridge. This could be used to provide an alternative visualisation to the use of the URL itself. |
The description of the "metadata" attribute for the "CCLTILink" class is given in Table 5.1.1.3.
Descriptor | Definition |
---|---|
Attribute Name | metadata |
Data Type | Metadata |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | The set of metadata that is associated with the LTI Link. |
The data model for the "CSMSet" class is shown in Figure 5.1.2 and the accompanying definition in Table 5.1.2.
Figure 5.1.2 - CSMSet class definitions.
The description of the "resourceLabel" attribute for the "CSMSet" class is given in Table 5.1.2.1.
Descriptor | Definition |
---|---|
Attribute Name | resourceLabel |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | This is a human readable label used to identify the type of resource, or part of resource, to which the enclosed metadata refers. |
The description of the "resourcePartId" attribute for the "CSMSet" class is given in Table 5.1.2.2.
Descriptor | Definition |
---|---|
Attribute Name | resourcePartId |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | This is used to contain the appropriate identifier that is used to identify the resource part. |
The description of the "curriculumStandardsMetadata" attribute for the "CSMSet" class is given in Table 5.1.2.3.
Descriptor | Definition |
---|---|
Attribute Name | curriculumStandardsMetadata |
Data Type | CurriculumStandardsMetadata |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [1.. unbounded] |
Description | The curriculum standards associated from a single source of the curriculum standards definition. |
The data model for the "CurriculumStandardsMetadata" class is shown in Figure 5.1.3 and the accompanying definition in Table 5.1.3.
Figure 5.1.3 - CurriculumStandardsMetadata class definitions.
The description of the "providerId" attribute for the "CurriculumStandardsMetadata" class is given in Table 5.1.3.1.
Descriptor | Definition |
---|---|
Attribute Name | providerId |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | This is used to denote the originator of the GUID scheme. |
The description of the "setOfGUIDs" attribute for the "CurriculumStandardsMetadata" class is given in Table 5.1.3.2.
Descriptor | Definition |
---|---|
Attribute Name | setOfGUIDs |
Data Type | SetOfGUIDs |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [1.. unbounded] |
Description | The set of curriculum standards GUIDs that apply to the learning associated resource. |
The data model for the "LTILink" class is shown in Figure 5.1.4 and the accompanying definition in Table 5.1.4.
Figure 5.1.4 - LTILink class definitions.
The description of the "title" attribute for the "LTILink" class is given in Table 5.1.4.1.
Descriptor | Definition |
---|---|
Attribute Name | title |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The human readable title/label for the activity being addressed by the content available through the LTI link. |
The description of the "description" attribute for the "LTILink" class is given in Table 5.1.4.2.
Descriptor | Definition |
---|---|
Attribute Name | description |
Data Type | String (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | A human readable description of the activity addressed by the content supplied via the LTI link. |
The description of the "custom" attribute for the "LTILink" class is given in Table 5.1.4.3.
Descriptor | Definition |
---|---|
Attribute Name | custom |
Data Type | PropertySet |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | A set of custom key value pairs that were placed in the link in the system that originally authored the link. These will be supplied as parameters on the launch call. |
The description of the "extensions" attribute for the "LTILink" class is given in Table 5.1.4.4.
Descriptor | Definition |
---|---|
Attribute Name | extensions |
Data Type | PlatformPropertySet |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | The extensions allows the hosting Tool Consumer (TC) to add its own key/value pairs to the link. The TC may use extensions to store information that the TC or authoring environment might use across an export-import cycle. In order to allow multiple sets of extensions to be contained in the same LTI descriptor, authoring environments should add the platform attribute and include an identifier that identifies the authoring environment. |
The description of the "launch_url" attribute for the "LTILink" class is given in Table 5.1.4.5.
Descriptor | Definition |
---|---|
Attribute Name | launch_url |
Data Type | URL |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | The URL for the LTI launch. One of either the launch_url or the secure_launch_url must be specified. It is acceptable to specify both and if both are specified, the Tool Consumer (TC) decides which to use. Typically, the TC will use a secure_launch_url when embedding the Tool in a secure page and the launch_url when embedding the tool in a non-secure page. So, it is important that the Tool Provider (TP) provides the same functionality whether the launch_url or secure_launch_url is used. |
The description of the "secure_launch_url" attribute for the "LTILink" class is given in Table 5.1.4.6.
Descriptor | Definition |
---|---|
Attribute Name | secure_launch_url |
Data Type | URL |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | A secure URL for the LTI launch. One of either the launch_url or the secure_launch_url must be specified. It is acceptable to specify both and if both are specified, the Tool Consumer (TC) decides which to use. Typically, the TC will use a secure_launch_url when embedding the Tool in a secure page and the launch_url when embedding the tool in a non-secure page. So, it is important that the Tool Provider (TP) provides the same functionality whether the launch_url or secure_launch_url is used. |
The description of the "icon" attribute for the "LTILink" class is given in Table 5.1.4.7.
Descriptor | Definition |
---|---|
Attribute Name | icon |
Data Type | URL |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | A URL to an icon for this tool. |
The description of the "secure_icon" attribute for the "LTILink" class is given in Table 5.1.4.8.
Descriptor | Definition |
---|---|
Attribute Name | secure_icon |
Data Type | URL |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | A secure URL to an icon for this tool. |
The description of the "vendor" attribute for the "LTILink" class is given in Table 5.1.4.9.
Descriptor | Definition |
---|---|
Attribute Name | vendor |
Data Type | Vendor |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The information about the vendor of the tool accessed via this LTI link. |
The data model for the "LTILinkResourceRef" class is shown in Figure 5.1.5 and the accompanying definition in Table 5.1.5.
Figure 5.1.5 - LTILinkResourceRef class definitions.
The description of the "name" attribute for the "LTILinkResourceRef" class is given in Table 5.1.5.1.
Descriptor | Definition |
---|---|
Attribute Name | name |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The name of the type of content supplied by the link. |
The description of the "resourceUri" attribute for the "LTILinkResourceRef" class is given in Table 5.1.5.2.
Descriptor | Definition |
---|---|
Attribute Name | resourceUri |
Data Type | AnyURI (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The URI for the link. |
The data model for the "LabelledGUID" class is shown in Figure 5.1.6 and the accompanying definition in Table 5.1.6.
Figure 5.1.6 - LabelledGUID class definitions.
The description of the "label" attribute for the "LabelledGUID" class is given in Table 5.1.6.1.
Descriptor | Definition |
---|---|
Attribute Name | label |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | A human readable string to provide a clue about the nature of the curriculum standard. |
The description of the "caseItemURI" attribute for the "LabelledGUID" class is given in Table 5.1.6.2.
Descriptor | Definition |
---|---|
Attribute Name | caseItemURI |
Data Type | AnyURI (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | The corresponding Competency and Academic Standards (CASE) URI. This is the URI used for alignment with the IMS CASE Service 1.0 specification [CASE, 17]. |
The description of the "GUID" attribute for the "LabelledGUID" class is given in Table 5.1.6.3.
Descriptor | Definition |
---|---|
Attribute Name | GUID |
Data Type | GUID |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The GUID itself. |
The data model for the "LearningObjectives" class is shown in Figure 5.1.7 and the accompanying definition in Table 5.1.7.
Figure 5.1.7 - LearningObjectives class definitions.
The description of the "alignmentType" attribute for the "LearningObjectives" class is given in Table 5.1.7.1.
Descriptor | Definition |
---|---|
Attribute Name | alignmentType |
Data Type | AlignmentTypeEnum |
Value Space | Enumerated value set of: { assesses | teaches | requires | textComplexity | readingLevel | educationalSubject | educationLevel } |
Scope | Local ("-") |
Multiplicity | [1] |
Description | A category of alignment between the learning resource and the framework node. |
The description of the "educationalFramework" attribute for the "LearningObjectives" class is given in Table 5.1.7.2.
Descriptor | Definition |
---|---|
Attribute Name | educationalFramework |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | The framework to which the resource being described is aligned. |
The description of the "targetDescription" attribute for the "LearningObjectives" class is given in Table 5.1.7.3.
Descriptor | Definition |
---|---|
Attribute Name | targetDescription |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | The description of a node in an established educational framework. |
The description of the "targetName" attribute for the "LearningObjectives" class is given in Table 5.1.7.4.
Descriptor | Definition |
---|---|
Attribute Name | targetName |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | The name of a node in an established educational framework. |
The description of the "targetURL" attribute for the "LearningObjectives" class is given in Table 5.1.7.5.
Descriptor | Definition |
---|---|
Attribute Name | targetURL |
Data Type | URL |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | The URL of a node in an established educational framework. |
The description of the "caseItemUri" attribute for the "LearningObjectives" class is given in Table 5.1.7.6.
Descriptor | Definition |
---|---|
Attribute Name | caseItemUri |
Data Type | AnyURI (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | Reference to a CASE CFItem for a standard or skill [CASE, 17]. |
The description of the "caseItemGUID" attribute for the "LearningObjectives" class is given in Table 5.1.7.7.
Descriptor | Definition |
---|---|
Attribute Name | caseItemGUID |
Data Type | GUID |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | Reference to CASE CFItem as a GUID [CASE, 17]. |
The data model for the "Metadata" class is shown in Figure 5.1.8 and the accompanying definition in Table 5.1.8.
Figure 5.1.8 - Metadata class definitions.
The description of the "curriculumStandardsMetadataSet" attribute for the "Metadata" class is given in Table 5.1.8.1.
Descriptor | Definition |
---|---|
Attribute Name | curriculumStandardsMetadataSet |
Data Type | CSMSet |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | The set of curriculum standards annotations i.e. identification of the set of curriculum standards that are supported by the content supplied by this resource link. |
The data model for the "PlatformPropertySet" class is shown in Figure 5.1.9 and the accompanying definition in Table 5.1.9.
Figure 5.1.9 - PlatformPropertySet class definitions.
The description of the "platform" attribute for the "PlatformPropertySet" class is given in Table 5.1.9.1.
Descriptor | Definition |
---|---|
Attribute Name | platform |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The identifier for the authoring environment. |
The description of the "properties" attribute for the "PlatformPropertySet" class is given in Table 5.1.9.2.
Descriptor | Definition |
---|---|
Attribute Name | properties |
Data Type | Property |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [1.. unbounded] |
Description | The set of extension properties for the identified platform. |
The data model for the "Property" class is shown in Figure 5.1.10 and the accompanying definition in Table 5.1.10.
Figure 5.1.10 - Property class definitions.
The description of the "name" attribute for the "Property" class is given in Table 5.1.10.1.
Descriptor | Definition |
---|---|
Attribute Name | name |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The name of the key for the property. |
The description of the "value" attribute for the "Property" class is given in Table 5.1.10.2.
Descriptor | Definition |
---|---|
Attribute Name | value |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The value for the property. |
The data model for the "PropertySet" class is shown in Figure 5.1.11 and the accompanying definition in Table 5.1.11.
Figure 5.1.11 - PropertySet class definitions.
The description of the "properties" attribute for the "PropertySet" class is given in Table 5.1.11.1.
Descriptor | Definition |
---|---|
Attribute Name | properties |
Data Type | Property |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [1.. unbounded] |
Description | The set of properties for the identified platform or orginal authoring platform. |
The data model for the "Resource" class is shown in Figure 5.1.12 and the accompanying definition in Table 5.1.12.
Figure 5.1.12 - Resource class definitions.
Descriptor | Definition |
---|---|
Class Name | Resource |
Class Type | Container [ Unordered ] |
Parents | The set of parent classes are: |
Derived Classes | There are no derived classes. |
Super Classes | This class is not derived from another class. |
Characteristics | There are no characteristics. |
Children |
The set of children attributes are:
|
Description | The container for the information about a resource that is supported by a LOR. |
The description of the "name" attribute for the "Resource" class is given in Table 5.1.12.1.
Descriptor | Definition |
---|---|
Attribute Name | name |
Data Type | NString1024 |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The name/title of resource. |
The description of the "description" attribute for the "Resource" class is given in Table 5.1.12.2.
Descriptor | Definition |
---|---|
Attribute Name | description |
Data Type | NString2048 |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | A human readable description of the contents of the resource. |
The description of the "subject" attribute for the "Resource" class is given in Table 5.1.12.3.
Descriptor | Definition |
---|---|
Attribute Name | subject |
Data Type | NString1024 |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | The subject(s) of the resource. May have multiple subjects tagged. |
The description of the "url" attribute for the "Resource" class is given in Table 5.1.12.4.
Descriptor | Definition |
---|---|
Attribute Name | url |
Data Type | URL |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | How to access resource over Internet e.g. HTTP, FTP, etc. A resource must have either a URL or or a LTI Link. |
The description of the "ltiLink" attribute for the "Resource" class is given in Table 5.1.12.5.
Descriptor | Definition |
---|---|
Attribute Name | ltiLink |
Data Type | CCLTILink |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | Fully encapsulated LTI link, generally with method of access. |
The description of the "learningResourceType" attribute for the "Resource" class is given in Table 5.1.12.6.
Descriptor | Definition |
---|---|
Attribute Name | learningResourceType |
Data Type | LRTEnum |
Value Space | Enumerated value set of: { Assessment/Item | Assessment/Formative | Assessment/Interim | Assessment/Rubric | Assessment/Preparation | Collection/Course | Collection/Unit | Collection/Curriculum Guide | Collection/Lesson | Game | Interactive/Simulation | Interactive/Animation | Interactive/Whiteboard | Activity/Worksheet | Activity/Learning | Activity/Experiment | Lecture | Text/Book | Text/Chapter | Text/Document | Text/Article | Text/Passage | Text/Textbook | Text/Reference | Text/Website | Media/Audio | Media/Images/Visuals | Media/Video | Other } |
Scope | Local ("-") |
Multiplicity | [1.. unbounded] |
Description | The type of the resource. There may be multiple types. |
The description of the "language" attribute for the "Resource" class is given in Table 5.1.12.7.
Descriptor | Definition |
---|---|
Attribute Name | language |
Data Type | Language (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | The languages used in the resource. International two digit code for language e.g. 'en' for English. Use the [RFC 3066] annotation. |
The description of the "thumbnailUrl" attribute for the "Resource" class is given in Table 5.1.12.8.
Descriptor | Definition |
---|---|
Attribute Name | thumbnailUrl |
Data Type | URL |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | Link to a thumbnail representing resource. |
The description of the "typicalAgeRange" attribute for the "Resource" class is given in Table 5.1.12.9.
Descriptor | Definition |
---|---|
Attribute Name | typicalAgeRange |
Data Type | AgeRange |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | Age of the typical intended user. This is described as EITHER the minimum-maximum age range (the format is '11-12', '5-7', etc. with ONLY integers permitted) OR the age as a single integer e.g. '9'. |
The description of the "textComplexity" attribute for the "Resource" class is given in Table 5.1.12.10.
Descriptor | Definition |
---|---|
Attribute Name | textComplexity |
Data Type | TextComplexity |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | A number indicating text complexity based on number of established measures. |
The description of the "learningObjectives" attribute for the "Resource" class is given in Table 5.1.12.11.
Descriptor | Definition |
---|---|
Attribute Name | learningObjectives |
Data Type | LearningObjectives |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | The set of learning objectives addressed by the resource. |
The description of the "author" attribute for the "Resource" class is given in Table 5.1.12.12.
Descriptor | Definition |
---|---|
Attribute Name | author |
Data Type | NString2048 |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | Author or creator of the resource. |
The description of the "publisher" attribute for the "Resource" class is given in Table 5.1.12.13.
Descriptor | Definition |
---|---|
Attribute Name | publisher |
Data Type | NString2048 |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [1] |
Description | Owner of the rights to the resource or who made it available (company or person). |
The description of the "useRightsURL" attribute for the "Resource" class is given in Table 5.1.12.14.
Descriptor | Definition |
---|---|
Attribute Name | useRightsURL |
Data Type | URL |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | URL describing how resource can be licensed. Could be Creative Commons license link or link to other specific open or proprietary license. |
The description of the "timeRequired" attribute for the "Resource" class is given in Table 5.1.12.15.
Descriptor | Definition |
---|---|
Attribute Name | timeRequired |
Data Type | Duration (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | Time that the resource takes to consume. Use the [ISO 8601] format for a duration. |
The description of the "technicalFormat" attribute for the "Resource" class is given in Table 5.1.12.16.
Descriptor | Definition |
---|---|
Attribute Name | technicalFormat |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | A valid MIME type format for the resource e.g. text, HTML, PDF, MPEG, MP3, etc. See https://www.iana.org/assignments/media-types/media-types.xhtml. |
The description of the "educationalAudience" attribute for the "Resource" class is given in Table 5.1.12.17.
Descriptor | Definition |
---|---|
Attribute Name | educationalAudience |
Data Type | EducationalAudienceEnum |
Value Space | Enumerated value set of: { student | teacher | administrator | parent | aide | proctor | guardian | relative } |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | For whom the resource is intended. |
The description of the "accessibilityAPI" attribute for the "Resource" class is given in Table 5.1.12.18.
Descriptor | Definition |
---|---|
Attribute Name | accessibilityAPI |
Data Type | AccessibilityAPIEnum |
Value Space | Enumerated value set of: { MSAA | UIAutomation | ARIAv1 | IAccessible2 | AndroidAccessibility | ATK | AT-SPI | BlackberryAccessibility | JavaAccessibility | MacOSXAccessibility } |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | Which (if any) accessibility API is supported by the resource. |
The description of the "accessibilityInputMethods" attribute for the "Resource" class is given in Table 5.1.12.19.
Descriptor | Definition |
---|---|
Attribute Name | accessibilityInputMethods |
Data Type | AccessibilityInputEnum |
Value Space | Enumerated value set of: { fullKeyboardControl | fullMouseControl | fullVoiceControl } |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | How the resource can be controlled by the user, which includes full keyboard controllability, mouse controllability, and voice controllability. |
The description of the "accessibilityFeatures" attribute for the "Resource" class is given in Table 5.1.12.20.
Descriptor | Definition |
---|---|
Attribute Name | accessibilityFeatures |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | These include alternatives and listed enhancements for the resource. These can be transformation features, navigation features, control features or augmentation features. |
The description of the "accessibilityHazards" attribute for the "Resource" class is given in Table 5.1.12.21.
Descriptor | Definition |
---|---|
Attribute Name | accessibilityHazards |
Data Type | HazardEnum |
Value Space | Enumerated value set of: { flashing | sound | olfactoryHazard | motionSimulation } |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | The set of accessibility hazards which are encountered when using this resource. |
The description of the "accessMode" attribute for the "Resource" class is given in Table 5.1.12.22.
Descriptor | Definition |
---|---|
Attribute Name | accessMode |
Data Type | AccessModeEnum |
Value Space | Enumerated value set of: { auditory | color | itemSize | olfactory | orientation | position | tactile | textOnImage | textual | visual } |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | The human sensory perceptual system or cognitive faculty through which a person may process or perceive information. |
The description of the "publishDate" attribute for the "Resource" class is given in Table 5.1.12.23.
Descriptor | Definition |
---|---|
Attribute Name | publishDate |
Data Type | Date (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | Date the resource was published by the publisher. The 'date' using the [ISO 8601] format. |
The description of the "rating" attribute for the "Resource" class is given in Table 5.1.12.24.
Descriptor | Definition |
---|---|
Attribute Name | rating |
Data Type | RatingEnum |
Value Space | Enumerated value set of: { 1 | 2 | 3 | 4 | 5 } |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | A rating of the quality of the resource determined by the Search Provider. Often derived from crowdsource ratings. |
The description of the "relevance" attribute for the "Resource" class is given in Table 5.1.12.25.
Descriptor | Definition |
---|---|
Attribute Name | relevance |
Data Type | Float0to1 |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | This is a floating point value based on relevance to the specific search. Higher relevance has a higher number. |
The description of the "extensions" attribute for the "Resource" class is given in Table 5.1.12.26.
Descriptor | Definition |
---|---|
Attribute Name | extensions |
Data Type | Namespace (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Global ("+") |
Multiplicity | [0.. unbounded] |
Description | The set of proprietary attributes that can be added to the data model. The actual way in which this is achieved is dependent on the data model binding technology used. |
The data model for the "ResourceSet" class is shown in Figure 5.1.13 and the accompanying definition in Table 5.1.13.
Figure 5.1.13 - ResourceSet class definitions.
The description of the "resources" attribute for the "ResourceSet" class is given in Table 5.1.13.1.
Descriptor | Definition |
---|---|
Attribute Name | resources |
Data Type | Resource |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | The actual resources supplied by the service provider. The order of resources is not significant. |
The data model for the "SetOfGUIDs" class is shown in Figure 5.1.14 and the accompanying definition in Table 5.1.14.
Figure 5.1.14 - SetOfGUIDs class definitions.
The description of the "region" attribute for the "SetOfGUIDs" class is given in Table 5.1.14.1.
Descriptor | Definition |
---|---|
Attribute Name | region |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | The region responsible for the definition. |
The description of the "version" attribute for the "SetOfGUIDs" class is given in Table 5.1.14.2.
Descriptor | Definition |
---|---|
Attribute Name | version |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | This is used to denote any relevant versioning information. |
The description of the "labelledGUID" attribute for the "SetOfGUIDs" class is given in Table 5.1.14.3.
Descriptor | Definition |
---|---|
Attribute Name | labelledGUID |
Data Type | LabelledGUID |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [1.. unbounded] |
Description | The actual GUID plus the corresponding labelling information. |
The data model for the "Subject" class is shown in Figure 5.1.15 and the accompanying definition in Table 5.1.15.
Figure 5.1.15 - Subject class definitions.
The description of the "identifier" attribute for the "Subject" class is given in Table 5.1.15.1.
Descriptor | Definition |
---|---|
Attribute Name | identifier |
Data Type | PositiveInteger (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The unique identifier, an integer, of the subject node. For the root node the value will be 'null'. |
The description of the "name" attribute for the "Subject" class is given in Table 5.1.15.2.
Descriptor | Definition |
---|---|
Attribute Name | name |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The name of the subject node, which may have any character and need not be unique with the returned taxonomy. |
The description of the "parent" attribute for the "Subject" class is given in Table 5.1.15.3.
Descriptor | Definition |
---|---|
Attribute Name | parent |
Data Type | PositiveInteger (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [1] |
Description | An integer (the identifier of that subject node) that references the single parent of this node. The returned data must be a true rooted tree, where each node returned has a single parent. |
The data model for the "SubjectSet" class is shown in Figure 5.1.16 and the accompanying definition in Table 5.1.16.
Figure 5.1.16 - SubjectSet class definitions.
The description of the "subjects" attribute for the "SubjectSet" class is given in Table 5.1.16.1.
Descriptor | Definition |
---|---|
Attribute Name | subjects |
Data Type | Subject |
Value Space | Container [ Unordered ] |
Scope | Local ("-") |
Multiplicity | [0.. unbounded] |
Description | The actual list of subject supplied by the service provider. The order of subjects is not significant. |
The data model for the "TextComplexity" class is shown in Figure 5.1.17 and the accompanying definition in Table 5.1.17.
Figure 5.1.17 - TextComplexity class definitions.
The description of the "name" attribute for the "TextComplexity" class is given in Table 5.1.17.1.
Descriptor | Definition |
---|---|
Attribute Name | name |
Data Type | TextComplexityNameEnum |
Value Space | Enumerated value set of: { Lexile | Flesch-Kincaid | Dale-Schall | DRA | Fountas-Pinnell } |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The name of the complexity measure. This is taken from an enumerated vocabulary. |
The description of the "value" attribute for the "TextComplexity" class is given in Table 5.1.17.2.
Descriptor | Definition |
---|---|
Attribute Name | value |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The text complexity measure in terms of the named measuring scale. |
The data model for the "Vendor" class is shown in Figure 5.1.18 and the accompanying definition in Table 5.1.18.
Figure 5.1.18 - Vendor class definitions.
The description of the "code" attribute for the "Vendor" class is given in Table 5.1.18.1.
Descriptor | Definition |
---|---|
Attribute Name | code |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [1] |
Description | An identification code for the vendor. |
The description of the "name" attribute for the "Vendor" class is given in Table 5.1.18.2.
Descriptor | Definition |
---|---|
Attribute Name | name |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The name of the vendor. |
The description of the "description" attribute for the "Vendor" class is given in Table 5.1.18.3.
Descriptor | Definition |
---|---|
Attribute Name | description |
Data Type | String (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | A human readable description of the vendor. |
The description of the "url" attribute for the "Vendor" class is given in Table 5.1.18.4.
Descriptor | Definition |
---|---|
Attribute Name | url |
Data Type | URL |
Value Space | Container [ DerivedType ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | A URL for the vendor. |
The description of the "emailContact" attribute for the "Vendor" class is given in Table 5.1.18.5.
Descriptor | Definition |
---|---|
Attribute Name | emailContact |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | Contact email for the vendor. |
The data model for the "imsx_CodeMinor" class is shown in Figure 5.1.19 and the accompanying definition in Table 5.1.19.
Figure 5.1.19 - imsx_CodeMinor class definitions.
The description of the "imsx_codeMinorField" attribute for the "imsx_CodeMinor" class is given in Table 5.1.19.1.
Descriptor | Definition |
---|---|
Attribute Name | imsx_codeMinorField |
Data Type | imsx_CodeMinorField |
Value Space | Container [ Sequence ] |
Scope | Local ("-") |
Multiplicity | [1.. unbounded] |
Description | Each reported code minor status code. |
The data model for the "imsx_CodeMinorField" class is shown in Figure 5.1.20 and the accompanying definition in Table 5.1.20.
Figure 5.1.20 - imsx_CodeMinorField class definitions.
The description of the "imsx_codeMinorFieldName" attribute for the "imsx_CodeMinorField" class is given in Table 5.1.20.1.
Descriptor | Definition |
---|---|
Attribute Name | imsx_codeMinorFieldName |
Data Type | NormalizedString (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [1] |
Description | This should contain the identity of the system that has produced the code minor status code report. |
The description of the "imsx_codeMinorFieldValue" attribute for the "imsx_CodeMinorField" class is given in Table 5.1.20.2.
Descriptor | Definition |
---|---|
Attribute Name | imsx_codeMinorFieldValue |
Data Type | imsx_CodeMinorValueEnum |
Value Space | Enumerated value set of: { fullsuccess | forbidden | invalid_query_parameter | unauthorisedrequest | internal_server_error | server_busy | invalid_data } |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The code minor status code (this is a value from the corresponding enumerated vocabulary). |
The data model for the "imsx_StatusInfo" class is shown in Figure 5.1.21 and the accompanying definition in Table 5.1.21.
Figure 5.1.21 - imsx_StatusInfo class definitions.
The description of the "imsx_codeMajor" attribute for the "imsx_StatusInfo" class is given in Table 5.1.21.1.
Descriptor | Definition |
---|---|
Attribute Name | imsx_codeMajor |
Data Type | imsx_CodeMajorEnum |
Value Space | Enumerated value set of: { success | processing | failure | unsupported } |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The code major value (from the corresponding enumerated vocabulary). |
The description of the "imsx_severity" attribute for the "imsx_StatusInfo" class is given in Table 5.1.21.2.
Descriptor | Definition |
---|---|
Attribute Name | imsx_severity |
Data Type | imsx_SeverityEnum |
Value Space | Enumerated value set of: { status | warning | error } |
Scope | Local ("-") |
Multiplicity | [1] |
Description | The severity value (from the corresponding enumerated vocabulary). |
The description of the "imsx_description" attribute for the "imsx_StatusInfo" class is given in Table 5.1.21.3.
Descriptor | Definition |
---|---|
Attribute Name | imsx_description |
Data Type | String (Primitive-type) |
Value Space | See Appendix A3.3. |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | A human readable description supplied by the entity creating the status code information. |
The description of the "imsx_codeMinor" attribute for the "imsx_StatusInfo" class is given in Table 5.1.21.4.
Descriptor | Definition |
---|---|
Attribute Name | imsx_codeMinor |
Data Type | imsx_CodeMinor |
Value Space | Container [ Sequence ] |
Scope | Local ("-") |
Multiplicity | [0..1] |
Description | The set of reported code minor status codes. |
All of the derived data classes used within this Information Model are described in this Section. The syntax and semantics for this representation is described in Appendix A3.2.
The data model for the "AgeRange" class is shown in Figure 5.2.1 and the accompanying definition in Table 5.2.1.
Figure 5.2.1 - AgeRange class definitions.
The data model for the "Float0to1" class is shown in Figure 5.2.2 and the accompanying definition in Table 5.2.2.
Figure 5.2.2 - Float0to1 class definitions.
The data model for the "GUID" class is shown in Figure 5.2.3 and the accompanying definition in Table 5.2.3.
Figure 5.2.3 - GUID class definitions.
The data model for the "NString1024" class is shown in Figure 5.2.4 and the accompanying definition in Table 5.2.4.
Figure 5.2.4 - NString1024 class definitions.
The data model for the "NString2048" class is shown in Figure 5.2.5 and the accompanying definition in Table 5.2.5.
Figure 5.2.5 - NString2048 class definitions.
The data model for the "URL" class is shown in Figure 5.2.6 and the accompanying definition in Table 5.2.6.
Figure 5.2.6 - URL class definitions.
All of the enumerated vocabularies used within this Information Model are described in this Section. The syntax and semantics for this representation is described in Appendix A3.4.
The set of terms describing the the type of accessibility access mode. The data model for the "AccessModeEnum" enumerated class is shown in Figure 5.3.1 and the accompanying vocabulary definition in Table 5.3.1.
Figure 5.3.1 - AccessModeEnum class definitions.
The set of terms describing the Accessibility APIs that are available for accessing the resource.The data model for the "AccessibilityAPIEnum" enumerated class is shown in Figure 5.3.2 and the accompanying vocabulary definition in Table 5.3.2.
Figure 5.3.2 - AccessibilityAPIEnum class definitions.
The set of terms describing the input methods that can be used to control the device.The data model for the "AccessibilityInputEnum" enumerated class is shown in Figure 5.3.3 and the accompanying vocabulary definition in Table 5.3.3.
Figure 5.3.3 - AccessibilityInputEnum class definitions.
The set of terms describing the the type of alignment between the learning resource and the framework node.The data model for the "AlignmentTypeEnum" enumerated class is shown in Figure 5.3.4 and the accompanying vocabulary definition in Table 5.3.4.
Figure 5.3.4 - AlignmentTypeEnum class definitions.
The set of permitted values for the educational audience. The data model for the "EducationalAudienceEnum" enumerated class is shown in Figure 5.3.5 and the accompanying vocabulary definition in Table 5.3.5.
Figure 5.3.5 - EducationalAudienceEnum class definitions.
The enumerated vocabulary for describing a characteristic of the described resource that must not be delivered to some users. The data model for the "HazardEnum" enumerated class is shown in Figure 5.3.6 and the accompanying vocabulary definition in Table 5.3.6.
Figure 5.3.6 - HazardEnum class definitions.
The set of tokens that are permitted for the 'learningResourceType'. The data model for the "LRTEnum" enumerated class is shown in Figure 5.3.7 and the accompanying vocabulary definition in Table 5.3.7.
Figure 5.3.7 - LRTEnum class definitions.
The permitted values for the rating. This is a range of 1-5 with '5' being the best rating. The data model for the "RatingEnum" enumerated class is shown in Figure 5.3.8 and the accompanying vocabulary definition in Table 5.3.8.
Figure 5.3.8 - RatingEnum class definitions.
The set of permitted values for the measure of text complexity being used. The data model for the "TextComplexityNameEnum" enumerated class is shown in Figure 5.3.9 and the accompanying vocabulary definition in Table 5.3.9.
Figure 5.3.9 - TextComplexityNameEnum class definitions.
This is the set of primary status report values i.e. the major code assigned to the status block. This is used in conjunction with the 'Severity' structure in the status object.The data model for the "imsx_CodeMajorEnum" enumerated class is shown in Figure 5.3.10 and the accompanying vocabulary definition in Table 5.3.10.
Figure 5.3.10 - imsx_CodeMajorEnum class definitions.
This is the set of codeMinor status codes that are used to provide further insight into the completion status of the end-to-end transaction i.e. this should be used to provide more information than would be supplied by an HTTP code.The data model for the "imsx_CodeMinorValueEnum" enumerated class is shown in Figure 5.3.11 and the accompanying vocabulary definition in Table 5.3.11.
Figure 5.3.11 - imsx_CodeMinorValueEnum class definitions.
This is the context for the status report values. This is used in conjunction with the 'CodeMajor' structure in the status object.The data model for the "imsx_SeverityEnum" enumerated class is shown in Figure 5.3.12 and the accompanying vocabulary definition in Table 5.3.12.
Figure 5.3.12 - imsx_SeverityEnum class definitions.
This Section is NOT NORMATIVE.
Proprietary extensions of the service are based upon two approaches:
It is NOT permitted to change the behavior of the current set of operations. Such changes MUST be supported by the creation of new operations.
The definition of new operations should follow the same format as adopted herein. The new operations should be defined using a new interface type. Every operation must result in the return of a status code that describes the final state of the request on the target end system.
An example of creating such an extension is given in the accompanying Best Practices document [RS-BP, 18].
It is recognized that implementers may wish to extend the specification. Extensions are ONLY permitted in the 'Resource' class within the data model.
This Service can be profiled. In general, Profiling is used to:
Valid Profiles must be restrictive i.e. optional features can be removed or constraints increased but new features must not be added. A Profile of this service is made by annotating the UML supplied with the documentation for the specification.
It is strongly recommended that a profile of this specification is undertaken either by, or with the close support, of IMS Global. However, no matter who is responsible for creating the profile artefacts (documents, XSDs, etc.), it is strongly recommended that the IMS specification tools are used. This will ensure that the artefacts are consistent with the base specifications and that useful support documentation is automatically produced e.g. creation of a document that summarises the differences between the base specification and the profile. Organizations wishing to produce a profile of this specification should contact Lisa Mattson (IMS Global Chief Operations Officer) at: lmattson@imsglobal.org.
[CASE, 17] | Competencies and Academic Standards Exchange (CASE) Service, B.Grogan, G.Nadeau, C.Smythe and J.Hobson, IMS Global Learning Consortium Inc., July 2017, https://www.imsglobal.org/sites/default/files/CASE/casev1p0/information_model/caseservicev1p0_infomodelv1p0.html. |
[I-BAT, 06] | IMS Binding Auto-generation Toolkit (I-BAT), C.Smythe, IMS Global Learning Consortium Inc., July 2006. |
[ISO 8601] | ISO8601:2004 Data elements and interchange formats - Information interchange - Representation of dates and times, ISO, International Standards Organization (ISO), 2000. |
[RFC 2119] | Key words for use in RFCs to Indicate Requirement Levels., S. Bradner, IETF (RFC 2119), March 1997, https://tools.ietf.org/html/rfc2119. |
[RFC 3066] | Tags for the Identification of Languages, H.Alvestrand, IETF (RFC 3066), January 2001, https://www.ietf.org/rfc/rfc3066.txt. |
[RS-BP, 18] | IMS LTI Resource Search 1.0 Implementation Guide Final Release, A.Blum, T.Ingram, V.Jaiswal and J.Hobson, IMS Global Learning Consortium Inc., September 2018, https://www.imsglobal.org/lti-rs/v1p0/impl/. |
[RS-CC, 18] | IMS LTI Resource Search 1.0 Certification Guide Final Release, A.Blum, T.Ingram, V.Jaiswal and C.Smythe, IMS Global Learning Consortium Inc., September 2018, https://www.imsglobal.org/spec/lti-rs/v1p0/cert. |
[RS-OA, 18] | IMS LTI Resources Search (RS) Service 1.0 OpenAPI Definition Final Release, A.Blum, T.Ingram, V.Jaiswal and C.Smythe, IMS Global Learning Consortium Inc., September 2018, https://www.imsglobal.org/spec/lti-rs/v1p0/openapi_doc. |
[RS-RJ, 18] | IMS LTI Resources Search Service 1.0 REST/JSON Final Release, A.Blum, T.Ingram, V.Jaiswal and C.Smythe, IMS Global Learning Consortium Inc., September 2018, https://www.imsglobal.org/spec/lti-rs/v1p0/restbind. |
[RS-SM, 18] | IMS LTI Resources Search Service 1.0 Service Model Final Release, A.Blum, T.Ingram, V.Jaiswal and C.Smythe, IMS Global Learning Consortium Inc., September 2018, https://www.imsglobal.org/spec/lti-rs/v1p0/infomodel. |
[UNICODE, 16] | UNICODE Collation Algorithm Version 9.0, M.Davis, K.Whistler and M.Scheer, Unicode Technical Standard #10, May 2016. |
[VDEX, 04] | IMS Vocabulary Definition Exchange (VDEX) 1.0, A.Cooper, IMS Global Learning Consortium Inc., February 2004, https://www.imsglobal.org/vdex/vdexv1p0/imsvdex_infov1p0.html. |
This section is NOT NORMATIVE.
Table A1.1 provides the key to the descriptions of service model diagrams.
Feature | Definition and Usage |
---|---|
Service Model Package | Each service model description is enclosed in a UML Package that has the stereotype of « serviceModel » under which is the name of the service being described. A service must have at least one Interface (the breakdown of the service into the component transactions is a design decision). |
Interface Class | Each interface description is enclosed in a UML Package that has the stereotype of « Interface » under which is the name of the interface being described. An interface is a collection of operations that support a common set of transaction objectives. An interface must have at least one operation. An Interface class has no attributes. |
Operation Description | The behaviors provided by an interface are defined by the set of operations. Each operation must have a unique name and is accompanied by the set of parameters that are sent to the service (in) and those returned by the service (out). An operation can also have a formal return parameter whose form and usage depends upon the actual binding realisation. The description may also include a stereotype for the identification of the nature operation e.g. read, create, etc. |
Table A1.2 provides the key to the descriptions of the operation tables.
Descriptor | Definition |
---|---|
Name | The name given to the operation being described. In the case of an interface, by definition, every operation has the scope value of global denoted by the "+" symbol before the name. |
Stereotype | Before the name of the operation there may be a stereotype classifier. This is used to provide information about the nature of the behavior of the operation. The permitted set of stereotype values and their meaning are:
|
Return Function Parameter | The formal return parameter for the operation/method returned for the transaction request (the form in which this information is provided depends on the realisation of the binding). The description includes the name of the parameter and the data-type in the form "name:data-type" pair. The name/data-type provides a link to the associated interface data-type description in The Interface Model. In situations where there is no return function this entry will be set to "void" |
Supplied (in) Parameters | The list of parameters that are sent from the client to the end-service in the service request message. Each parameter description includes the name of the parameter and the data-type in the form "name:data-type" pair. The name/data-type provides a link to the associated interface data-type description in The Interface Model. |
Supplied (out) Parameters | The list of parameters that are returned from the end-service in the service response message. Each parameter description includes the name of the parameter and the data-type in the form "name:data-type" pair. The name/data-type provides a link to the associated interface data-type description in The Interface Model. |
Behavior | A description of the behavior of the operation. |
Notes | Further information on the behavior particularly in the context of the use of other operations and the relationship to the behaviors of those operations. |
This section is NOT NORMATIVE.
Table A2.1 provides the key to the descriptions of parameter data model diagrams.
Feature | Definition and Usage |
---|---|
Data Model Package | Each parameter data model description is enclosed in a UML Package that has the stereotype of « dataModel » under which is the name of the class being described. |
DerivedType Class | This is a class that is identified by the stereotype « DerivedType » under which is the name of the data-type. A derived class is one that is derived either from another derived class or a PrimitiveType class. |
Enumeration Class | This is a class that is identified by the stereotype « Enumeration » under which is the name of the enumeration data-type. The enumeration class consists of the list of tokens that are the permitted values of the assigned attribute. |
Selection Class | This is a class that is identified by the stereotype « Selection » under which is the name of the data-type. The selection means that only one of the listed attributes make occur in an instance. If this is an abstract class then multiple iterations of the instance may occur and the multiplicity of the attribute defines the constraints on the number of times the attribute can occur in the full instance. |
Sequence Class | This is a class that is identified by the stereotype « Sequence » under which is the name of the data-type. The sequence means that the listed attributes must occur only in the order of the attributes listed on the class. The associated multiplicity defines the number of times the attribute may occur consecutively in the instance. |
Unordered Class | This is a class that is identified by the stereotype « Unordered » under which is the name of the data-type. The unordering means that the listed attributes may occur in any order but the associated multiplicity for the attribute must be followed (when binding to XML this requires the use of Schematron rules to enforce the multiplicity). |
Attribute Description | Each class contains a set of attributes. Each attribute description consists of the scope, name, data-type and multiplicity (see Appendix A2.3 for a more complete description). |
Composition Arrow | This is an arrow with a filled diamond head to indicate that the child class is a composite structure of the parent class i.e. the child class only exists within the context of the parent class. This association allows complex structures to be constructed with common subcomponents. |
Table A2.2 provides the key to the descriptions of the parameter data class tables.
Descriptor | Definition |
---|---|
Class Name | The name given to the class being described. |
Class Type | The nature of the class (for a paramter data-type this must not be an abstract class). This is described as a "Container [...]" with the value of "..." being (see Appendix A2.1 for the meaning of these values):
|
Parents | This is the list of operations for which this class is a data-type for one or more of the parameters. Each entry is linked to the corresponding operation description. |
Children | Lists the set of attributes for this class (the only other permitted associations are generalizations). The list of children includes those that are grouped under a corresponding stereotyped attribute class. Each child is linked to the corresponding attribute description table. The nature of the relationship between the children is defined by the stereotype of the parent class i.e. the class type. |
Description | Contains descriptions relating to the class and its properties and relationships. |
Table A2.3 provides the key to the descriptions of the data attributes for the data classes for the operation parameters.
Descriptor | Definition |
---|---|
Attribute Name | The name given to the attribute being described. |
Data Type | This is the data-type of the attribute. It can take many forms:
|
Value Space | The range of valid values for this class (including any default value). If the value space is unspecified, it is not known or is not important. This value space must be defined in terms of the associated data-type. |
Scope | This is the scope of the attribute with permitted values of:
|
Multiplicity | A property of an attribute indicating the number of times it may be used or appear in a given class instance. The values of this property are expressed as a range or shorthand for a range using the notation:
|
Description | Contains descriptions relating to the attribute and its values space. |
This section is NOT NORMATIVE.
Table A3.1 provides the key to the descriptions of data model diagrams.
Feature | Definition and Usage |
---|---|
Data Model Package | Each data model description is enclosed in a UML Package that has the stereotype of « dataModel » under which is the name of the data model diagram being described. Only one logical data model can be described. |
DerivedType Class | This is a class that is identified by the stereotype « DerivedType » under which is the name of the data-type. A derived class is one that is derived either from another derived class or a PrimitiveType class. |
Enumeration Class | This is a class that is identified by the stereotype « Enumeration » under which is the name of the enumeration data-type. The enumeration class consists of the list of tokens that are the permitted values of the assigned attribute. |
Enumerated List Class | This is a class that is identified by the stereotype « EnumeratedList » under which is the name of the enumerated list data-type. The enumeration list class consists of the list of tokens that are the permitted values of the assigned attribute. A list of tokens is permitted using comma separation. |
PrimitiveType Class | This is a class that is identified by the stereotype « PrimitiveType » under which is the name of the primitive data-type. A PrimitiveType is one of the many base data-types on which a data model can be built (see Appendix A3.3 for the set of primitive types that are available). |
Selection Class | This is a class that is identified by the stereotype « Selection » under which is the name of the data-type. The selection means that only one of the listed attributes make occur in an instance. If this is an abstract class then multiple iterations of the instance may occur and the multiplicity of the attribute defines the constraints on the number of times the attribute can occur in the full instance. If the stereotype and associated name of the class are in italics this denotes the class is abstract. |
Sequence Class | This is a class that is identified by the stereotype « Sequence » under which is the name of the data-type. The sequence means that the listed attributes must occur only in the order of the attributes listed on the class. The associated multiplicity defines the number of times the attribute may occur consecutively in the instance. If the stereotype and associated name of the class are in italics this denotes the class is abstract. |
Unordered Class | This is a class that is identified by the stereotype « Unordered » under which is the name of the data-type. The unordering means that the listed attributes may occur in any order but the associated multiplicity for the attribute must be followed (when binding to XML this requires the use of Schematron rules to enforce the multiplicity). If the stereotype and associated name of the class are in italics this denotes the class is abstract. |
List Class | This is a class that is identified by the stereotype « List » under which is the name of the data-type. A list class is one in which the associated instance will consist of a list of objects that conform to the permitted data-types of the list (the superclasses for the list class). The terms in the list are separated by a space. |
Union Class | This is a class that is identified by the stereotype « Union » under which is the name of the data-type. A union class is one in which the associated instance will consist of a objects that conform to the any of the permitted data-types of the union (the superclasses for the union class). |
Characteristic Description | Many classes contain a set of characteristics (the set of characteristics are listed under the stereotype « Characteristics »). Each characteristic description consists of the scope, name, data-type and multiplicity (see Appendix A3.3 for a more complete description). Note that when bound to XSD/XML, a characteristic is mapped to an XML attribute. |
Attribute Description | Many classes contain a set of attributes (the set of attributes are listed under the stereotype « Attributes »). Each attribute description consists of the scope, name, data-type and multiplicity (see Appendix A3.3 for a more complete description). Note when bound to XSD/XML, an attribute is mapped to an XML element. |
Aggregation Arrow | This is an arrow with a white diamond head to indicate that the child class is an aggregate structure to the parent class i.e. the child class may exist without the context of the parent class. This association allows complex structures to be constructed with common subcomponents. |
Composition Arrow | This is an arrow with a filled diamond head to indicate that the child class is a composite structure of the parent class i.e. the child class only exists within the context of the parent class. This association allows complex structures to be constructed with common subcomponents. |
Generalization Arrow | This is an arrow with a white arrow head to indicate the class/superclass relationship. The arrow points in the direction of generality i.e. from the class to the super class. |
Table A3.2 provides the key to the descriptions of the data class tables.
Category | Definition |
---|---|
Class Name | The name given to the class being described. |
Class Type | The nature of the class. This is described as a "Container [...]" or "Abstract Container [...]". The value of "..." being (see Appendix A3.1 for the meaning of these values):
|
Parents | This is the list of classes that contain the class being described as either the type of a child characteristic or attribute. In the case of a Root Class the entry is also labelled as "Root Class". |
Derived Classes | The set of classes that are derived from this class (there may be none). The entries are linked to the corresponding class descriptions. |
Super Classes | The set of super classes from which the class being described is derived (there may be none). The entries are linked to the corresponding class descriptions. |
Characteristics | Lists the set of characteristics for this class. The list of characteristics includes those that are inherited. Each characteristic is linked to the corresponding characteristic description table. |
Children | Lists the set of attributes for this class (the only other permitted associations are generalizations). The list of children includes those attributes that are inherited. Each child entry is linked to the corresponding attribute description table. The nature of the relationship between the children is defined by the stereotype of the parent class i.e. the class type. If the child is in italics this denotes a reference to an abstract class and that an instance would NOT contain a child of that name but would be replaced by a complex set of children as defined by the associated abstract class. |
Description | Contains descriptions relating to the class and its properties and relationships. |
Table A3.3 provides the key to the descriptions of the data attributes/characteristics for the data classes.
Category | Definition |
---|---|
Attribute Name or Characteristic Name | The name given to the attribute or characteristic being described. If the name is in italics this denotes an abstract attribute or characteristic. |
Data Type | This is the data-type of the attribute or characteristic (if this is in italics it denotes an abstract class). The data-type can take many forms:
|
Value Space | The range of valid values for this attribute/characteristic (including any default value). If the value space is unspecified, it is not known or is not important. This value space must be defined in terms of the associated data-type. |
Scope | This is the scope of the attribute/characteristic with permitted values of:
|
Multiplicity | A property of an attribute/characteristic indicating the number of times it may be used or appear in a given class instance. The values of this property are expressed as a range or shorthand for a range using the notation:
|
Description | Contains descriptions relating to the attribute/characteristic and its values space. |
Table A3.4 provides the key to the descriptions of the enumerated vocabulary classes. These are vocabularies that will be contained within the binding form itself. They are contained within a class that has a stereotype of either « Enumeration » or « EnumeratedList ».
Category | Definition |
---|---|
Term | The vocabulary token itself i.e. the vocabulary entry. |
Definition | The meaning of the term and how it should be used. |
Table A3.5 provides the key to the descriptions of the external vocabulary classes. These are vocabularies that will be contained in some independent format e.g. using the IMS VDEX [VDEX, 04].
Category | Definition |
---|---|
Term | The vocabulary token itself i.e. the vocabulary entry. |
Definition | The meaning of the term and how it should be used. This consists of the "Caption" and "Description" of the vocabulary term. The caption is used to provide a human readable label for the term. |
Table A3.6 provides the key to the descriptions of the import classes.
Category | Definition |
---|---|
Import Class Name | The name of the class. |
Parent Classes | The list of parent classes, and the associated children, that use this imported class. Each class and attribute name has a link to its corresponding tabular description in the information model. |
Description | The description of how the class is used within the data model. |
This Section is NORMATIVE
When a behavior-based IMS service model is developed each operation is required to return status information. This status information provides contextual information about the completed success or otherwise of the operation. There are two types of status information that are available to the end-systems:
The status information for the business transactions is carried in a single status information object that contains the following sub-structures:
The interpretation of the "CodeMajor/Severity" behavior matrix is summarized in Table B1.1.
Severity | CodeMajor | |||
---|---|---|---|---|
"Success" | "Processing" | "Failure" | "Unsupported" | |
"Status" | The transaction request has been completed successfully. | The transaction request is being processed at the destination i.e. the request has been received and acknowledged. This combination is used in asynchronous services. | The transaction request has failed. The detailed reason will be reported in the accompanying "codeMinor" fields. | The destination service handler does not support the requested operation. This is the required default response for an unsupported operation by an implementation. |
"Warning" | Some of the request has been completed successfully e.g. partial data storage, etc. | The request has been transmitted but acknowledgement of receipt at the destination has not been received. This combination is used in asynchronous services. | Not permitted. | Not permitted. |
"Error" | Not permitted. | An error has been detected in the immediate transmission communications handler i.e. the message has not left the local end-system. | There has been a failure in the end-to-end system communications mechanism and so the request has not been delivered. | The destination service handler does not recognise the requested operation i.e. it is an unknown service extension. |
The set of codes used for the "codeMajor" status code field are defined in Table B1.2.
Status Code | Description |
---|---|
success | Denotes that the request has been successfully completed. If the associated 'severity' value is 'warning' then the request has been partially successful i.e. best effort by the service provider. Other parts of the status information may provide more insight into a partial success response. |
processing | Denotes that the request is being processed at the destination or there has been a local transmission failure. This value is used in asynchronous services. |
failure | Denotes that the transaction request has failed. The detailed reason will be reported in the accompanying 'codeMinor' fields. |
unsupported | Denotes that the service provider does not support the requested operation. This is the required default response for an unsupported operation by an implementation. |
The set of codes used for the "severity" status code field are defined in Table B1.3.
Status Code | Description |
---|---|
status | The request has been completed and a response was received from the Service Provider. |
warning | The request has only been partially completed. For an asynchronous service a further response should be expected. |
error | A catastrophic error has occurred in processing the request and so the request was not completed (the Service Provider may not even have received the request). |
The set of codes used for the "codeMinor" status code field are defined in Table B1.4.
Status Code | Description |
---|---|
forbidden | This is used to indicate that the server can be reached and process the request but refuses to take any further action. This would be accompanied by the 'codeMajor/severity' values of 'failure/error' and for a REST binding a HTTP code of '403'. |
fullsuccess | The request has been fully and successfully implemented by the service provider. For a REST binding this will have an HTTP code of '200' for a successful search request. |
internal_server_error | This should be used only if there is catastrophic error and there is not a more appropriate code. This would be accompanied by the 'codeMajor/severity' values of 'failure/error' and for a REST binding a HTTP code of '500'. |
invalid_data | This error condition may occur if a JSON request/response body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error' and a HTTP code of '422'. |
invalid_query_parameter | An invaliddata query parameter field was supplied and the query could not be processed. This would be accompanied by the 'codeMajor/severity' values of 'failure/error' and for a REST binding a HTTP code of '400'. |
server_busy | The server is receiving too many requests. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error' and for a REST binding a HTTP code of '429'. |
unauthorisedrequest | The request was not correctly authorised. This would be accompanied by the 'codeMajor/severity' values of 'failure/error' and for a REST binding a HTTP code of '401'. |
Title: | IMS LTI Resource Search Service v1.0 |
Editors: | Colin Smythe, IMS Global (UK) Jill Hobson, IMS Global (USA) |
Co-chairs: | Adam Blum, OpenEd (USA) Tom Ingram, Escambia County School District (USA) |
Version: | 1.0 |
Version Date: | 10th September, 2018 |
Status: | IMS Final Release |
Summary: | The IMS LTI Resource Search Service (RS) defines how to search digital repositories for a set of resources. The standard addresses searching learning object repositories (LORs), and other catalogs of learning resources, from learning tools using various attributes of resources and returning full metadata about the resources to the learning tools. Results include resource access specification as either URLs or LTI links. The benefit for an educator or student using the learning tool (such as a Learning Management System) is seamless ability to search resource libraries for appropriate resources and transparent launching of those resources. This document contains the information model for the RS service. |
Revision Information: | First release of this specification. |
Purpose: | For public adoption. |
Document Location: | IMS Public Website (Specifications Download): https://www.imsglobal.org/specifications.html |
The following individuals contributed to the development of this document:
Ray Baranoski | Safari Montage (USA) |
Adam Blum | Open Ed (USA) |
Stacy Cohen | Framingham State University (USA) |
Paul DeVey | Pearson (USA) |
Viktor Haag | D2L Corporation (Canada) |
Mark Hannah | Knovation (USA) |
Jill Hobson | IMS Global (USA) |
Tom Ingram | Escambia County School District (USA) |
Vikash Jaiswal | Knovation (USA) |
Joshua Marks | PCG (USA) |
Justin Mason | University of Wisconsin Extension (USA) |
Elizabeth Neuman | State of Wisconsin Dept. of Public Instruction (USA) |
Colin Smythe | IMS Global (UK) |
Version No. | Release Date | Comments |
---|---|---|
Final Release 1.0 | 10th September, 2018 | The first formal release for the specification. This specification is made available for public adoption. |
IMS Global Learning Consortium, Inc. ("IMS Global") is publishing the information contained in this document ("Specification") for purposes of scientific, experimental, and scholarly collaboration only.
IMS Global makes no warranty or representation regarding the accuracy or completeness of the Specification.
This material is provided on an "As Is" and "As Available" basis.
The Specification is at all times subject to change and revision without notice.
It is your sole responsibility to evaluate the usefulness, accuracy, and completeness of the Specification as it relates to you.
IMS Global would appreciate receiving your comments and suggestions.
Please contact IMS Global through our website at http://www.imsglobal.org.
Please refer to Document Name: IMS LTI Resource Search Service v1.0
Date: 10th September, 2018