Structured-Document Processing Languages (Spring 2002) Course Homepage

Rakenteisten dokumenttien käsittelykielet (kevät 2002) -kurssin kotisivu

Goals of the course: To familiarize with the central models and languages for manipulating, representing, transforming and querying structured (XML) documents.
 [Practical arrangements] [Material] [Lecture Notes] [Exercises] [References] [Assumed background] [Summary of course feedback]


Practical arrangements

The course consists of ...
Lectures are given by professor Pekka Kilpeläinen.

Language of instruction: The course will be given in English. (For communication, either English of Finnish can be used.)

NB: some of the (last) lectures and exercise sessions may be skipped. Stay tuned on this channel!
Exercise session group #1 will be guided by Sami Komulainen; only this one will be arranged.
A few additional practical "mini-projects" are planned to be assigned as a part of the exercises.

Changes in the course schedule are possible; Please check the online schedules.
A preliminary course syllabus is available here. The course will probably follow rather closely the Spring 2001 version of the course.

Grading: (32*Exam/MaxExam + 12*HomeWork/MaxHomeWork - 8)/3. (The retake exam can be graded either based on this formula or on exam points only.) In either option, at least half of the exam points are required to pass the course. The lowest accepted grade is 3.


The lecture notes and exercises will be made available online. There is no single textbook for the course. The course is largely based on original articles or technical specifications, most of which are available as on-line references.

The book "XML - How to Program" by Deitel, Deitel, Nieto, Lin and Sadhu (Prentice Hall, 2001) is recommended (but not necessary): It gives a good practical grasp on most of the topics of the course (and many others). One copy of the book is available in the department library for over-night loans.

Lecture notes: Copies of lecture notes will be delivered here prior to the lectures. Please note that the lecture notes are skeletons of lectures, that is, they are not written especially for self-study. If you cannot attend the lectures, you'd better study the references for those lectures.
  1. Introduction (March 11) [Reduced PDF for printing] * [PowerPoint]
  2. Document Instances and Grammars (March 12 and 13) [Reduced PDF for printing] * [PowerPoint]
  3. XML Schema Definition Language (March 13/18) [Reduced PDF for printing] * [PowerPoint]
  4. XML Processor Interfaces - SAX (March 19) [Reduced PDF for printing] * [PowerPoint]
  5. Document Object Model (March 20) [Reduced PDF for printing] * [PowerPoint]
  6. JAXP: Java API for XML Processing (March 25) [Reduced PDF for printing] * [PowerPoint]
  7. Introduction to Style Sheets (March 26) [Reduced PDF for printing] * [PowerPoint]
  8. Cascading Style Sheets (April 8) [Reduced PDF for printing] * [PowerPoint]
  9. Document Transformations: XSLT (April 11 and 15) [Reduced PDF for printing] * [PowerPoint]
  10. Additional features of XPath and XSLT (April 15 and 16) [Reduced PDF for printing] * [PowerPoint]
  11. Computing with XSLT (April 16) [Reduced PDF for printing] * [PowerPoint]
  12. XSL: Extensible Stylesheet Language (April 22 and 23) [Reduced PDF for printing] * [PowerPoint]
  13. XML Web Site Architecture (Apache Cocoon) (April 29) [Reduced PDF for printing] * [PowerPoint]
  14. Translating Data to XML (April 30) [Reduced PDF for printing] * [PowerPoint]
  15. Querying XML Data and Documents (May 7; NB: this is the last lecture) [Reduced PDF for printing] * [PowerPoint]


Session 1 (March 20)
Session 2 (March 25)
Session 3 (April 10)
Session 4 (April 17)
Session 5 (April 25)
Session 6 (May 3)
Session 7 (May 13; this is the last exercise session)

Assumed background

Pekka Kilpeläinen
Universiry of Kuopio
Department of Computer Science and Applied Mathematics