Lesson List XML Files

Submit to FacebookSubmit to Google PlusSubmit to Twitter


This page shows how to create and edit lesson list files. Lesson list files live in your library subfolders - one in each subfolder. Language Mentor looks at these files to find out what lessons are available in the subfolders.

Let's step back a bit and look at the contents of a subfolder. Once you've assembled a few lessons your subfolder's contents will look something like this:

This folder contains:

  • Three published lessons, including one lesson XML file and one ZIP file for each lesson. These files' names consist of the lesson's ID plus a file extension of ".xml" or ".zip".
  • The folder's lesson list XML file. This file is always named "lesson_list.xml".

Lesson List XML Format

The lesson list XML file shown above should contain XML that looks something like this:

Pretty simple, isn't it? Each file contains one root lessons element, which contains one or more lesson elements. Each lesson element contains a lesson ID.

Each element also contains a version attribute and a level attribute. If your knowledge of XML is limited to the explanations that we've provided in previous Creating Lessons pages, "attributes" will be a new concept.

Attributes simply provide additional information which describes the elements that they are in. In this example, all the lessons have a version of "0.1" and a level of "Beginner". Note the format: Attribute values (e.g. "0.1" and "Beginner") are put in quotes; attribute names (e.g. version and level) aren't; names and values are connected by an equals sign (=).

The version Attribute

Over time you may revise your lessons and publish new versions of them. We use version numbers to let Language Mentor know when a lesson has been updated. When Language Mentor checks libraries for new lessons it also checks the lesson versions of lessons that it has already downloaded. If it sees that a newer version of a lesson exists, it downloads it and replaces the previously downloaded version.

Version numbers should consist of a decimal number such as 0.1, 1.0, 3.6 or 27.2. We suggest that you start with a low number - either 0.1 or 1.0 - and increase it with each version. Language Mentor doesn't care how you number your versions - it simply notes whether available versions have higher (i.e. newer) version numbers than downloaded versions, and updates those lessons that do.

The level Attribute

The level attribute for each lesson should be set to one of these values:

  • Introductory
  • Beginner
  • Intermediate
  • Advanced

Language Mentor organizes lessons by their levels and allows users to specify which level or levels they'd like to download. We don't attempt to define what these terms mean - this is up to you.


If you have questions about the lesson creation process, please contact us on our Creating Lessons forum. We're here to help.

What's Next?

We'll show you how to publish your lessons.

If you'd like to stay in touch with developments at the Language Collaborative, sign up for our newsletter!

We'll send one email per month - max.