Step 33 – Structure of the Manifest File

The CAM specification has a long and detailed description of all the possible and required XML tags. But it’s far easier to see what’s actually going on if we take a look at a real example and break it down into its component parts. Note that I’m going to assume you have a basic working knowledge of XML.

I’m going to look at a typical manifest file from one of the test courses that I’ve been using to see if I can identify the key elements. If you want to follow along, I suggest that you open [this link] in your browser.

The basic structure of the manifest file looks like this (omitting all of the attributes for clarity):


The manifest consists of the meta-data, the description of the organizations, and a list of the resources contained in the package.

Let’s look at the <manifest> tag in a little more detail.


It contains:

  • A unique identifier;
  • A version number; and
  • Definition of a number of XML name spaces that will (may?) be used in the file.

The key one – for my purposes – is the definition of adlcp which I’ll need when I get further into reading the file.

As noted before, I’m going to ignore the <metadata> section. So, moving on quickly, I come to the <organizations> section. Expanding it out it looks like this.

		<title>Privacy 101</title> 
			<title>Browser Options</title> 

This is a nice, simple manifest file. There’s only one organization containing only one item which appears (from the information stored in the item element) to be a SCO. I can also see some data elements that I’ll want to read into my “imaginary” LMS:

  • <title> – title for my SCO (course) to be displayed to the student
  • <adlcp:datafromlms> – launch data for the SCO
  • <adlcp:masteryscore> – mastery score to override anything set in the SCO itself

I’m not (currently) supporting any kind of time limit for the SCO (course) since it’s not mandatory, so I can ignore the other elements contained in this manifest file.

Now I’m going to look at the <resources> section.


Looks fairly simple. I have one resource which consists of 5 files. The “adlcp:scormtype” attribute of the <resource> tag specifies that the resource is a SCO (course), and the “href” attribute of the <resource> tag defines the entry point (start file) as ‘Simulation.htm’.

But how is each <resource> linked to its corresponding <item>? Take a look at the “identifierref” attribute in this <item> tag:

<item identifier=”P1″ isvisible=”true” identifierref=”P1_RES”>

This links it to this <resource> tag:

<resource identifier=”P1_RES” type=”webcontent” href=”Simulation.htm” adlcp:scormtype=”sco”>

Now that I have a basic grasp of how a simple manifest file is constructed, I’m going to see if I can read and analyse it.

This entry was posted in Content Aggregation Model. Bookmark the permalink.

1 Response to Step 33 – Structure of the Manifest File

  1. Pingback: Desarrollando un LMS(con soporte de SCORM)

Leave a Reply

Your email address will not be published. Required fields are marked *