What is SCORM?

SCORM is a set of technical standards for e-learning software products. SCORM tells programmers how to write their code so that it can “play well” with other e-learning software. Specifically, SCORM governs how online learning content and Learning Management Systems (LMSs) communicate with each other. SCORM does not speak to instructional design or any other pedagogical concern, it is purely a technical standard.

Can you help me with an example or analogy?

Let’s take DVDs for example. When you buy a new movie on DVD you don’t need to check to see if it works with your brand of DVD player. A regular DVD will play on a Toshiba the same as it will on a Panasonic. That’s because DVD movies are produced using a set of standards. Without these standards a studio releasing a new movie on DVD would have a big problem. They would need to make differently formatted DVDs for each brand of DVD player. This is how online learning used to be before SCORM was created.

Do you produce SCORM?

No. SCORM is produced by ADL, a research group sponsored by the United States Department of Defense (DoD). Rustici Software is an independent company that specializes in helping other companies become SCORM conformant.

What does SCORM stand for?

SCORM stands for “Sharable Content Object Reference Model”.

“Sharable Content Object” indicates that SCORM is all about creating units of online training material that can be shared across systems. SCORM defines how to create “sharable content objects” or “SCOs” that can be reused in different systems and contexts.

“Reference Model” reflects the fact that SCORM isn’t actually a standard. ADL didn’t write SCORM from the ground up. Instead, they noticed that the industry already had many standards that solved part of the problem. SCORM simply references these existing standards and tells developers how to properly use them together.

Why should I care about SCORM?

The primary benefit of SCORM is interoperability. If you produce e-learning content, invariably one (or more likely many) of your clients will ask you to integrate that content into an LMS. Similarly, if you produce an LMS it is certain that your clients will want to import content from a number of different sources into that LMS. SCORM allows this integration to happen seamlessly and simply. SCORM is the de facto industry standard for interoperability and SCORM conformance is required for most e-learning RFPs.

Read more about the benefits of SCORM.

How did all of this come about?

The US government is a huge user of online training. In the late 1990s, the DoD realized that is was procuring the same training many times over but couldn’t reuse it across departments because each department had its own LMS. In those days, each LMS had its own proprietary content format which encouraged vendor lock-in. In 1999 an executive order tasked a small research laboratory, ADL, to “develop common specifications and standards for e-learning.” Rather than starting from scratch, ADL harmonized the work of existing standards organizations like the AICC, IMS and the IEEE LTSC into a cohesive reference model. SCORM was released in 2001 and was quickly adopted by both government and industry. Today it is the de facto standard for e-learning interoperability.

How do I know if I am already SCORM conformant?

If you have to ask, then chances are that your products are not SCORM conformant. SCORM conformance is something that must be achieved intentionally; it doesn’t happen by chance. SCORM is a set of very specific technical instructions, not a set of broad guidelines. SCORM governs how content is packaged and described, how content communicates with an LMS and how the user is allowed to navigate between parts of the content (see the Technical SCORM section for more details). SCORM speaks only to a very specific area of technical implementation, namely the interface between content and an LMS. It does not specify the underlying implementation of products, their feature sets, or their instructional methodologies.

How can I become SCORM conformant?

There are many ways to become SCORM conformant. The best path forward largely depends on your current situation and what you are trying to achieve. If you are starting from scratch and simply want to produce some SCORM-conformant content, your best bet is likely to use an authoring tool which will output SCORM-conformant content. If you have existing content that you would like to make SCORM conformant, visit the Technical SCORM section to get an overview of what it takes. Converting existing content can be as simple or as complex as you would like it to be, depending on which of the benefits of SCORM you are seeking. Creating a SCORM-conformant LMS is substantially more difficult. ADL intentionally placed the “burden of complexity” on LMS developers to make content development more straightforward.

The real trick to SCORM development is to move beyond minimal conformance and achieve true interoperability. SCORM is a great specification, but it only gets the industry part of the way there. There are still some ambiguities and areas open for interpretation by different vendors (these are dwindling with each evolution of SCORM). Achieving true interoperability requires attention to detail, a willingness to accommodate differing interpretations and, mostly, lots of testing and experience. Our products (here at Rustici Software) dramatically simplify the process of achieving SCORM conformance. Having been widely tested and deployed, our products provide true interoperability right out of the box.

Which version of SCORM is right for me?

There are three different versions of SCORM that have been released and the latest version has three different “editions” as well. The short answer to the question is that you definitely want to support SCORM 1.2. You probably want to consider supporting SCORM 2004 as well (in all its flavors if you’re an LMS vendor, only in the latest edition if you’re producing content). And depending on your needs, you might want to consider supporting a legacy standard called AICC. Our products provide support for all of these standards simultaneously. Click here to learn more about the various e-learning standards.

Is there a way I can prove that my product is SCORM conformant?

ADL offers a formal SCORM certification program that will test your product, validate its conformance and provide an official certification label. Additionally, they publish a complete list of SCORM certified products. ADL also provides self test suites that allow you to run the same tests as the formal certification auditors. These test suites produce logs and conformance labels that you can use to demonstrate your conformance without going through the formal certification program. Vendors that complete this process are eligible to register as a SCORM Adopter. SCORM Adopters are listed on the ADL website, but have no official endorsement of conformance by ADL. It is important to note that only content and LMSs can technically be SCORM conformant. ADL does not certify tools that produce content, nor does it certify developers. Tools and developers can produce SCORM conformant output, but they themselves cannot technically be SCORM conformant.

“Compliant”, “Conformant” or “Certified” – You will sometimes hear these terms thrown out interchangeably and in a confusing manner. “Certified” has a specific and important meaning. It means that ADL has formally tested a product and states that it has correctly implemented SCORM. “Compliant” and “Conformant” are mostly interchangeable terms (although folks in the procurement world will tell you that they have very different meanings). These terms mean that the product was developed to the SCORM standards, and the vendor has most likely passed the self test suites, but this fact has not been verified by an independent testing agency.


SCORM is composed of three sub-specifications

·         The Content Packaging section specifies how content should be packaged and described. It is based primarily on XML.

·         The Run-Time section specifies how content should be launched and how it communicates with the LMS. It is based primarily on ECMAScript (JavaScript).

·         The Sequencing section specifies how the learner can navigate between parts of the course (SCOs). It is defined by a set of rules and attributes written in XML.

Related Articles:
SCORM 2004 Overview for Developers
SCORM 1.2 Overview for Developers
Versions of SCORM

Content Packaging

SCORM specifies that content should be packaged in a self-contained directory or a ZIP file. This delivery is called a Package Interchange File (PIF). The PIF must always contain an XML file named imsmanifest.xml (the “manifest file”) at the root. The manifest file contains all the information the LMS needs to deliver the content. The manifest divides the course into one or more parts called SCOs. SCOs can be combined into a tree structure that represents the course, known as the “activity tree”. The manifest contains an XML representation of the activity tree, information about how to launch each SCO and (optionally) metadata that describes the course and its parts.

More information on Content Packaging


The run-time specification states that the LMS should launch content in a web browser, either in a new window or in a frameset. The LMS may only launch one SCO at a time. All content must be web deliverable and it is always launched in a web browser. Once the content is launched, it uses a well-defined algorithm to locate an ECMAScript (JavaScript) API that is provided by the LMS. This API has functions that permit the exchange of data with the LMS. The CMI data model provides a list of data elements (a vocabulary) that can be written to and read from the LMS. Some example data model elements include the status of the SCO (completed, passed, failed, etc), the score the learner achieved, a bookmark to track the learner’s location, and the total amount of time the learner spent in the SCO.


The sequencing specification allows the content author to govern how the learner is allowed to navigate between SCOs and how progress data is rolled up to the course level. Sequencing rules are represented by XML within the course’s manifest. Sequencing operates on a tracking model that closely parallels the CMI data reported by SCOs during run-time. Sequencing rules allow the content author to do things like:

·         Determine which navigational controls the LMS should provide to the user (previous/next buttons, a navigable table of contents, etc).

·         Specify that certain activities must be completed before others (prerequisites).

·         Make some parts of a course count more than others toward a final status or score (creating optional sections or providing question weighting).

·         Randomly select a different subset of available SCOs to be delivered on each new attempt (to enable test banking, for instance).

·         Take the user back to instructional material that was not mastered (remediation).