ActiveMath: What should a Table of Contents look like

What should a table of contents (TOC) for ActiveMath look like:

The most important points are:

  • it is not allowed to have <ref> elements on the same level as <omgroup> elements.
  • each <omgroup> that has a description needs an id attribute

More details: Start with the typical OMDoc stuff:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE omdoc SYSTEM "../dtd/activemath.dtd">
<omdoc id="put_some_Id_here">

Start the table of content and give it a title and description

<omgroup id="put_ID_of_TOC_here">
        <Title xml:lang="en">Content for course generation</Title>
            <Title xml:lang="de">Inhalte für Kursgenerierung</Title>
        <Description xml:lang="en">This is content that illustrates course generation.</Description>
        <Creator role="aut">Carsten Ullrich</Creator>

Think of this as the cover of a real book.

Now start with the content. Think of this as the chapters of a book. It`s ok to have only a single chapter:

    <omgroup id="grouping_course_generation1">
            <Title xml:lang="en">Section for Definition Def1</Title>
            <Creator role="aut">Carsten Ullrich</Creator>
            <Description xml:lang="en">Here, the definition def1 is explained.</Description>
        <ref xref="def1" />

In the above example, the chapter contains a reference. Alternatively, you could put one or several <omgroup>s there. Think of them as sections and subsections. The bottom <omgroup>s need to reference to actual learning objects (use the <ref> element for this). Do not put <ref> and <omgroup> elements at the same level. Instead create a proper <omgroup> for the <ref>s. Do not forget to add identifiers to each <omgroup>.

A table of content can also be used for course generation. The course generation uses concepts (definitions and assertions) as a basis. Hence, it discards examples and exercises occuring in the table of content. Therefore, if you wish to use a table of content for course generation, make sure that every bottom <omgroup> element contains a least one reference to a concept.

Be aware that the course generation selects concepts of the learning context of the learner. This means that you can put references for definitions that define the same symbol, but which are for different learning contexts. The course generator will select the appropriate one. If there isn’t any, then the course generation can not be started.


TOC -> <omdoc> <omgroup> SECTION </omgroup> </omdoc>
OMGS -> <omgroup> SECTION </omgroup> OMGS
REFS -> <ref>+

Trackback URL for this post: