Copyright © 2011 , Kurt Nørmark |
The Course Plan System is used to make a course home page. The input description to the system is an XML-in-LAML description of the course properties. The output is a set of HTML pages. Among these is an LAML calendar. The generated course home pages make use of frames. More specifically, the leftmost frame in the browser is used as an overview frame of all constituents of a course home page. Amonge these are pages that describe the individual lectures.
This manual is derived from the XML Course Plan DTD. This manual reflects this DTD in a very direct way, by documenting the XML element mirror functions and their attributes.
There exists an example course home page in the LAML examples directory. For a 'real life example' see the Programming Paradigm home page and the C Programming home page both of which are generated by the system.
bottom-links | The container of the bottom links. |
course-info | The form which holds a variety of different informations - not least attributes - for a course home page. |
course-intro | The course intro text which appears as the entry page to the course home page. |
course-plan | The top level Course Plan form |
description | A few sentences that describes a subject of a lecture. |
exercises | The exercises associated to the enclosing lecture-plan |
index-links | A container of index links. |
lecture | A description of a given lecture. |
lecture-list | A form that contains individual lectures forms. |
lecture-plan | The detailed description of an individual entry. |
lecture-plan-list | A container of individual lecture plans. |
link-entry | An entry of a index-links container or a bottom-links container. |
literature | The literature assigned to the enclosing lecture-plan |
misc | Miscellaneous information associated to the enclosing lecture-plan |
reading-guide | A reading guide associated to the enclosing lecture-plan. |
references | The references associated to the enclosing lecture-plan. |
subject | A subject describes an area which is covered in a course. |
subject-list | The container of a number of subject forms |
time | A time entry of a given lecture. |
time-list | A sequence of time forms, which determines the temporal distribution of lectures. |
1 Rationale of the Course Plan organization | |||
A Course Plan makes up a description of a course home page. It consists of three levels of descriptions. First, the subjects taught in the course are supposed to be the most stable - and most long living - informations pertaining to the course. A catalogue of subjects are described in the subject-list. Notice that an arbitrary set of subjects may be described. Typically, a teacher may have some subjects on stock for possible future use. It is, however, also possible to inline the subject information (in terms of a description element, a title attribute and a possible href attribute) in a lecture element. Second, when it comes to the actual planning of the course, before the semester starts, the lecture entries in the lecture-list are made. Each lecture has its own id, and each lecture can refer to one of the subjects via the subject-id (in case the subject info is not inlined). The structuring of the lecture in plenum and exercises is also decided. Usually, this is fixed for all lectures, and a list of exercises-start, exercise-length, plenum-start, and plenum-length attributes may be factored out of the description. The temporal issues may be part of a lecture, using the time form. However, I usually make a separate time-list with time entries. Using this solution, time form i corresponds to lecture form i. Using this solution it is most often easy to change the schedule of the course without affecting or involving the individual lecture descriptions. Third and finally, during the course the lecture-plan entries in the lecture-plan list are made. A lecture-plan entry refers to a lecture entry via a lecture-id. Properties such as literature and exercises are described as part of a lecture-plan entry. Notice that the attribute last-lecture-number of the course-info form controls the opening of links to concrete lecture plans. By processing a Course Plan all pages are regenerated, including all the separate lecture frame pages. | |||
2 Top level form | |||
course-plan | |||
Description | The top level Course Plan form | ||
XML content model | ( course-intro ? , course-info , lecture-plan-list ) | ||
3 Course Plan constituent forms | |||
The forms in this section are all direct constituents of a course-plan form. | |||
course-intro | |||
Description | The course intro text which appears as the entry page to the course home page. Here the course introduction and welcoming text should be placed. | ||
XML content model | (#PCDATA | div | ol | p | span | ul )* | ||
See also | enclosing element | course-plan | |
course-info | |||
Description | The form which holds a variety of different informations - not least attributes - for a course home page. The lecture-list is mandatory. Time information, in terms of time elements, may be inlined in the lecture elements (the constituents of the lecture-list). Alternatively, time information can be factored out of the lecture elements. In a similar way, the attributes and sub-elements of a subject (the constituents of the subject-list) may be inlined in a lecture element. Alternatively, each lecture element may refer to a subject element by means of a unique subject-id attribute. As a matter of overall organization, either all subject information is factored out as the subject-list, or all subject information is inlined in the lecture-list. | ||
XML content model | ( time-list ? , lecture-list , subject-list ? , index-links ? , bottom-links ? ) | ||
XML attributes Required: * Default values: red | course-id | Symbol ( IMPLIED ) | An attribute used solely in the LAML forms web interface of the system. Most users can ignore this attribute. |
language-preference | ( english | danish ) | Which language to use in the system. This affects the fixed Course Plan text only. | |
course-title * | CDATA | The title of the course | |
course-directory | CDATA | The directory which is considered the course directory - defaults to the LAML startup directory. A file path. The HTML files and other files generated by Course Plan are written relative to this directory. See also relative-source-destination-path. | |
brief-course-title * | CDATA | A brief version of the course title - an acronym typically - just a few letters | |
course-semester * | CDATA | The title of the semester to which this course belongs. | |
brief-course-semester * | CDATA | A brief name of the semester, to which this course belongs. Typically an acronym of the semester. | |
teacher-name * | CDATA | The name(s) of the teacher(s) | |
course-url-prefix | CDATA | The URL prefix leading to the HTML target directory of these Course Plan pages. Always ends with '/'. Must be in accord with course-directory and relative-source-destination-path. | |
author-home-url * | CDATA | The URL of the author's home page | |
make-overview-pages | ( true | false ) | True if Course Plan is to generate lecture and calendard overviews of this course. | |
color-scheme | ( purple-yellow | red-yellow | black-white | blue-grey | green-brown | brownish-yellow | orange-blue | orange-brownish | olive-yellow | blue-white | blue-creme ) | The color scheme to use of the course home page. | |
last-lecture-number | CDATA | A number that controls the last lecture with open links to the detailed description of the lecture | |
relative-source-destination-path | CDATA | The relative path between the course directory, as designated by the attribute course-directory, and the HTML target directory. Defaults to "html/". This attribute can be used to 'move' the HTML directory out of the Course Plan directory. If this attribute does not possess its default value you must create the destination directory/directories before running the Course Plan tool. | |
exercise-model | ( this-exercise-slot | next-exercise-slot ) | An attribute which controls the timing of the exercises. this-exercise-slot means that the exercises are held in the same slot as the plenum session. next-exercise-slot means that the exercises are held in the context of the following lecture. This attribute controls the time stamp of the exercises on the lecture plan pages. Probably an 'Aalborg University feature'. | |
floating-exercises | ( true | false ) | - | |
calendar-start-year | CDATA | The year in which the course home page calendar starts. Defaults to the year of the earliest lecture. | |
calendar-start-month | CDATA | The month in which the course home page calendar starts. Defaults to the month of the earliest lecture. | |
calendar-number-of-months | CDATA | The number of months in the generated calendar. Defaults to two months more than stricly needed. | |
url-of-external-calendar | CDATA | An URL of an external calendar. If provided, we link to this calendar instead of the calendar which is automatically generated by the course plan tool. | |
new-or-updated-n-days | CDATA | The number of days an element (such as a lecture or a link-entry) is considered as new or updated. | |
news-flash-string | CDATA | A message which is shown on selected HTML pages generted by the Course Plan tool. Used as a way to announce important information on a home page. | |
news-flash-url | CDATA | The URL to which a link is made from a new flash string. | |
news-flash-level | CDATA ( 1 ) | A positive integer which states the importance of the news flash string. The lower number, the more important is the string, the more pages will show the message. | |
shortcut-icon | CDATA | Whether or not to show a shortcut icon with the course plan web pages of this course. Use the value true or false. The default value is false. If true, it is assumed that the file images/shortcut-icon.ico exists relative to the Course Plan source directory. | |
See also | enclosing element | course-plan | |
lecture-plan-list | |||
Description | A container of individual lecture plans. A lecture plan holds the description of literature, exercises etc of a given lecture. A given lecture-plan entry refers to a lecture entry in the lecture-list. | ||
XML content model | ( lecture-plan ) * | ||
See also | enclosing element | course-plan | |
4 Course info forms | |||
The forms in this section are direct and indirect constituents of a course-info form. | |||
time-list | |||
Description | A sequence of time forms, which determines the temporal distribution of lectures. The first time form corresponds to the first lecture in the lecture-list, the second to the second, etc. | ||
XML content model | ( time ) * | ||
See also | enclosing element | course-info | |
time | |||
Description | A time entry of a given lecture. This time entry is related to the correspondingly located lecture in the lecture-list. Thus, the temporal aspect of a lecture can be factored out of the lecture. As an alternative, it is possible to include the temporal aspects as part of a lecture, in an embedded time form. | ||
XML content model | EMPTY | ||
XML attributes Required: * Default values: red | year * | CDATA | The year of the time |
month * | CDATA | The month of the time. A number from 1 to 12 | |
day * | CDATA | The day of the time. A number from 1 to 31 | |
hour * | CDATA | The hour of the time. A number from 0 to 23 | |
minute | CDATA ( 0 ) | The minute of the time. A number from 0 to 59 | |
second | CDATA ( 0 ) | The second of the time. A number from 0 to 59 | |
See also | enclosing elements | time-list lecture | |
lecture-list | |||
Description | A form that contains individual lectures forms. | ||
XML content model | ( lecture ) * | ||
See also | enclosing element | course-info | |
lecture | |||
Description | A description of a given lecture. The subject information can either be given as a reference to a subject clause (by means of the attribute subject-id), or it can be inlined via the title attribute and the description clause. It is allowed to inline a time clause. If no time clause is inlined, time information is taken from the corresponding element of time-list. The lecture time is divived into plenum time and exercise time. Finally a room is associated to the plenum part of the lecture. Most attribute of this elements can usually be determined early in the planning phase of a course. In addition, it tends to be stable over several years. The lecture-plan entries contain more unstable information, which typically is decided upon later in the planning phase. | ||
XML content model | ( time ? , description ? ) | ||
XML attributes Required: * Default values: red | lecture-id * | CDATA | Defines the id of this lecture |
subject-id | CDATA | Makes a reference to the subject (topic) of this lecture. Only used if the subject information is not inlined (in terms of a description element and title/href attributes) in the lecture. | |
title | CDATA | The title of the subject of this lecture. Used for inline subject information. | |
href | CDATA | An optional URL to an external description of the lecture covering this topic. We use this URL in case a subject is described external to the Course Plan system (for instance on a colleague's web site). You can usually disregard this attribute. | |
plenum-start * | CDATA | The start of the plenum part of the lecture. A number of minutes after the start time of the lecture | |
plenum-length * | CDATA | The duration of the plenum part of the lecture. A number of minutes. | |
exercise-start * | CDATA | The start of the exercise part of the lecture. A number of minutes after the start time of the lecture | |
exercise-length * | CDATA | The duration of the exercise part of the lecture. A number of minutes. | |
room * | CDATA | The room in which the plenum part takes place. | |
new-as-of | CDATA | The value of this attribute is a date, such as "2006-3-30" for March 3, 2006. The lecture description is new as of the given date. The "new" marking will automatically disappear when course plan file is processed N days after the given date. N can be given as the attribute new-or-updated-n-days of the course-info element. If not given, it defaults to 3 days. | |
updated-as-of | CDATA | The value of this attribute is a date, such as "2006-3-30" for March 3, 2006. The lecture description is updated as of the given date. The "updated" marking will automatically disappear when course plan file is processed N days after the given date. N can be given as the attribute new-or-updated-n-days of the course-info element. If not given, it defaults to 3 days. | |
See also | enclosing element | lecture-list | |
Note | The lecture form and its constituent is primarily oriented towards the model of a lecture at Aalborg University: Half a day of teaching consisting of a lecture in an auditorium before or after some extercises in smaller rooms. | ||
subject-list | |||
Description | The container of a number of subject forms | ||
XML content model | ( subject ) * | ||
See also | enclosing element | course-info | |
subject | |||
Description | A subject describes an area which is covered in a course. The subject is factored out of the description of the lecture. The aggregation of the subject and the remaining lecture properties is done in lecture forms. | ||
XML content model | ( description ) | ||
XML attributes Required: * Default values: red | id * | CDATA | The unique id of this subject. |
title * | CDATA | The title of this subjects. A few words that characterize the subject. | |
href | CDATA | An optional URL to an external description of the lecture covering this topic. We use this URL in case a subject is described external to the Course Plan system (for instance on a colleague's web site). You can usually disregard this attribute. | |
See also | enclosing element | subject-list | |
description | |||
Description | A few sentences that describes a subject of a lecture. | ||
XML content model | (#PCDATA | div | ol | p | span | ul )* | ||
See also | enclosing elements | lecture subject | |
index-links | |||
Description | A container of index links. The index links are located in the left frame of a course home page. | ||
XML content model | ( link-entry ) * | ||
See also | enclosing element | course-info | |
bottom-links | |||
Description | The container of the bottom links. The bottom links are located in the bottom part of the main frame of the course home page. | ||
XML content model | ( link-entry ) * | ||
See also | enclosing element | course-info | |
link-entry | |||
Description | An entry of a index-links container or a bottom-links container. The textual contents of this element becomes the anchor text of the link. | ||
XML content model | (#PCDATA) | ||
XML attributes Required: * Default values: red | href * | CDATA | The URL of the link - in the same sense as in a HTML a form |
target | CDATA ( main ) | The target of the link - in the same sense as in a HTML a form | |
new-as-of | CDATA | The value of this attribute is a date, such as "2006-3-30" for March 3, 2006. The lecture description is new as of the given date. The "new" marking will automatically disappear when course plan file is processed N days after the given date. N can be given as the attribute new-or-updated-n-days of the course-info element. If not given, it defaults to 3 days. | |
updated-as-of | CDATA | The value of this attribute is a date, such as "2006-3-30" for March 3, 2006. The lecture description is updated as of the given date. The "updated" marking will automatically disappear when course plan file is processed N days after the given date. N can be given as the attribute new-or-updated-n-days of the course-info element. If not given, it defaults to 3 days. | |
See also | enclosing elements | index-links bottom-links | |
5 Lecture plan forms | |||
lecture-plan | |||
Description | The detailed description of an individual entry. The informations in this form is typically determined while the course is in progress. I.e, the subforms of lecture-plan are intended to be the information about a lecture which is frozen relative late in the planning phase of the course. | ||
XML content model | ( literature ? , reading-guide ? , exercises ? , references ? , misc ? ) | ||
XML attributes Required: * Default values: red | lecture-id * | CDATA | The id of the lecture. Refers to lecture entry in a lecture-list. |
See also | enclosing element | lecture-plan-list | |
literature | |||
Description | The literature assigned to the enclosing lecture-plan | ||
XML content model | (#PCDATA | div | ol | p | span | ul )* | ||
See also | enclosing element | lecture-plan | |
reading-guide | |||
Description | A reading guide associated to the enclosing lecture-plan. This text is supposed to give hints on how to approach the literature described in the literature form. | ||
XML content model | (#PCDATA | div | ol | p | span | ul )* | ||
See also | enclosing element | lecture-plan | |
exercises | |||
Description | The exercises associated to the enclosing lecture-plan | ||
XML content model | (#PCDATA | div | ol | p | span | ul )* | ||
See also | enclosing element | lecture-plan | |
references | |||
Description | The references associated to the enclosing lecture-plan. Via the HTML span and div elements this may give access to the HTML a (anchor) form, such that internet references can be given in the textual contents of this form. | ||
XML content model | (#PCDATA | div | ol | p | span | ul )* | ||
See also | enclosing element | lecture-plan | |
misc | |||
Description | Miscellaneous information associated to the enclosing lecture-plan | ||
XML content model | (#PCDATA | div | ol | p | span | ul )* | ||
See also | enclosing element | lecture-plan | |
Mirror name: | course-plan-1 |
Automatic loading of common XML-in-LAML library? | No |
List of action elements | (course-plan) |
Generation of named mirror functions: | Yes |
Mirror name prefix: | None |
Transliteration of CDATA? | Yes |
List of elements for which transliteration does not apply: | '() |
List of elements for which all white spacing is preserved: | '() |
Name of HTML character transformation table: | html-char-transformation-table |
Are default DTD attributes passed explicitly? | No |
Are attributes only allowed to be text strings? | Yes |
Is extended textual contents allowed? | No |
Is white space represented by this mirror? | No |
How are duplicated XML attributes handled: | 'keep-all |