API Instance
SCORM requires that a LMS supply an API Instance that implements the required API functionality. In order for a SCO to use the API Instance developed by a LMS, the LMS has certain requirements on where and how to provide access to the API Instance. To provide for an interoperable means to locate the API Instance, the LMS's API Instance must be accessible through the Document Object Model (DOM) as an object named "API_1484_11", the name for the API Implementation. The LMS must provide the ability for the SCO to access the API Instance through JavaScript.
In order for SCOs to find the LMS-provided API Instance, the LMS is responsible for launching SCOs in a particular DOM hierarchy. The LMS launches the SCO in a browser window that is a child window or frame of the LMS window that contains the API Instance.
A LMS is permitted to place its API Instance in the following valid locations in the DOM hierarchy:
- Chain of parents
- Opener
- Chain of parents of the opener
The algorithm defined by the IEEE standard is built to search for the API Instance in specific locations and in a specific order. The specific locations that a LMS can provide an API Instance is determined based on the implementation requirements of the LMS.