|
|
 |
Structured-Document Processing Languages (Spring 2007) Course Homepage
Rakenteisten dokumenttien käsittelykielet (kevät 2007) -kurssin kotisivu
-
Tietojenkäsittelytieteen syventävien opintojen (III-V vuosi) kurssi (3 ov/6 op)
-
Structured-Document Processing Languages is an elective
graduate level (laudatur) course (3 cu/6 ECTS cp) in Computer Science.
Goals of the course:
To get familiar with the central
models and languages for manipulating, representing,
transforming and querying structured (XML) documents.
Announcements
- June 9, 2008:
A summary of student feedback is
available here.
Thanks for all those who returned the
feedback form.
- June 11:
The final exam of May 29, 2007, has been marked and graded.
Two students failed while four passed the course with grades in the range 3..5.
You can check the grading and my comments on your papers
at the department office.
- May 16: What will be asked/expected in the
exam?
- May 15:
The course feedback form is available here.
Please fill it and return it at the last exercise session for an extra
credit point.
- May 4:
Instructions for testing XQuery using Saxon 8.9
are available on-line. (Please let me know if you encounter problems in applying
them.)
- May 4:
Instructions for running Apache FOP (Formatting Objects
Processor) at the Department
are available on-line.
- May 2: A question about producing zero-based numbers with
xsl:number was asked at the lecture.
Here is a reply.
- April 18:
Instructions for
the Course Project, due to May 11, are available on-line.
Instructions for running XSLT processors at the Department
are also available.
- March 26: This is
the course homepage.
Please monitor this page for topical announcements, lecture notes, and
exercise assignments.
In general, the course will follow rather closely to the Spring 2006 offering,
but I plan to update some of the contents to reflect the latest
relevant specifications (DOM3, JAXP 1.3, XPath and XSLT 2.0, XQuery 1.0).
The course consists of ...
- 16 * 2 hours of lectures
(March 28 - May 16, 2007).
The first lecture takes place on Wednesday March 28, 2007, at 10.15-12 in class E16-17.
(Please check the on-line schedules from the
Wossikka for possible updates. Any unexpected changes will be announced at the top of
this page, too.)
A preliminary course syllabus is available
here.
The course will follow for the most part the
Spring 2006 version of
the course, but I may update or change some of the contents, though.
Lectures are given by professor
Pekka Kilpeläinen.
Language of instruction:
The course will be given in English; that is, the lectures will be given in English (if there is demand), and
the materials will be in English. The exercise sessions will be in Finnish and in English. By default,
the main language of communication for
Exercise Group 1 is Finnish and for Exercise Group 2 English.
- 7 * 2 hours of exercise sessions (April 4 - May 21)
The exercise sessions will be chaired by
Mikko Saesmaa.
A practical XML manipulation course project will be included
as a part of the exercises.
-
Final exam Tuesday, May 29, 2007, at 8-12 in L2;
-
Retake on Tuesday, June 19, 2007, at 8-12 in E26-27.
Grading:
The grade is determined by the formula
round(6*Exam + 2*Exerc - 2.5) ,
where Exam is the fraction of given exam points out of the maximum,
and Exerc is the fraction of solved exercise assignments out of the
total (including the course project). (Examples of grades given by the formula are shown here.)
The lowest accepted grade is 1, and the highest grade is 5.
A minimum of 50 % of exam points is required for passing the course.
Please notice that exercise activity forms 25 % of the grade.
Actively solving homework assignments is central for learning to
understand and to apply the techniques; The process of
working on the assignments is more
important than the "solutions"
that are discussed at the exercise sessions!
The exercise points can be taken into account for grading
the first retake exam,
too, if that yields a better
result, but not for the later retake exams.
Material
Copies of lecture slides
and exercise assignments
will be made available online.
The course is mainly based on original articles and
technical specifications,
most of which are available as
on-line references.
(Learning to consult these original sources is one of the
practical learning goals of the course.)
There are numerous superficial, often slightly erroneous, and
quickly out-dated books about XML technology.
The following are reasonably good, and could be used as background literature:
-
"XML - How to Program" by Deitel, Deitel, Nieto, Lin and Sadhu
(Prentice Hall, 2001) gives a good
practical grasp on some of the topics of the course (and many others).
The book should be available in the department library.
On the negative side, this book starts to be outdated on many of its topics.
- "XSLT Programmer's Reference" by Michael Kay (Wrox Press, 2000; newer versions may exist)
is the best reference book for XSLT programming that I
have come across.
-
"An Introduction to XML and Web Technologies" by Anders Møller and
Michael Schwartzbach (Addison-Wesley, 2006). (would seem to give a reasonable high-level overview)
Lecture Notes (Slides)
Copies of slides will be delivered here prior to the lectures.
The slides are skeletons of lectures, and
not written especially for self-study.
If you cannot attend the lectures, I recommend that you study the
references for the contents of those lectures.
- Introduction (March 28)
[Reduced PDF for printing] *
[PowerPoint]
- XML Document Instances and Grammars (March 28 - April 3)
[Reduced PDF for printing] *
[PowerPoint]
- XML Schema Definition Language (April 3)
[Reduced PDF for printing] *
[PowerPoint]
- XML Processor Interfaces - SAX (April 4)
[Reduced PDF for printing] *
[PowerPoint]
(Please bring also the SAX Quick Reference
with you in class; I'll probably refer to it, too.)
- Document Object Model (April 12)
[Reduced PDF for printing
(Formatting of slide 27 corrected on Apr 12) ] *
[PowerPoint]
(Please bring also the DOM Quick Reference
with you in class; We'll probably refer to it, too.)
- JAXP: Java API for XML Processing (April 13)
[Reduced PDF for printing] *
[PowerPoint]
- Introduction to Style Sheets (April 18)
[Reduced PDF for printing] *
[PowerPoint]
- Cascading Style Sheets (April 20)
[Reduced PDF for printing] *
[PowerPoint]
- Document Transformations: XSLT (April 25, 26)
[Reduced PDF for printing] *
[PowerPoint]
- Additional features, and computing with XSLT (May 2, 3)
[Reduced PDF for printing] *
[PowerPoint]
- XSL: Extensible Stylesheet Language (May 3 and 9)
[Reduced PDF for printing] *
[PowerPoint]
- Querying XML Data and Documents (May 9-15)
[Reduced PDF for printing] *
[PowerPoint]
- Course Review (May 16)
[Reduced PDF for printing] *
[PowerPoint]
Exercise assignments
Session 1 (April 4)
Session 2 (April 12/13)
Session 3 (April 19/20)
Session 4 (April 26)
Session 5 (May 3)
Session 6 (May 10)
Session 7 (May 21)
Assumed background
- Bachelor studies in Computer Science, especially a course on
Data Structures and Algorithms, and aptitude for
programming (with Java) and using the
the computing environment of the department.
-
Basic knowledge of structured documents, e.g., from a course
("Introduction to Document Standards"); especially
familiarity with Web and HTML.
-
Basic knowledge of
context free grammars, regular expressions and automata may be useful,
for example from a course on
theory of computing (e.g.,
"Ohjelmoinnin ja laskennan teoria"), but not necessary.
Course feedback
A summary of student feedback is available
here.
Thanks for those few who returned the course feedback form.
Summaries of feedback from previous years:
2006;
2005;
(Did I forget the feedback in 2004?);
2003;
2002;
2001 (in Finnish)
|
 |
|