http://www.cs.helsinki.fi/u/oheinone/teaching/xml_k07/
582304 The metalanguage XML (4 cr, 2 cu) - Spring 2007
582304 XML-metakieli (4 op, 2 ov)
582304 Metaspråket XML (4 sp, 2 sv)
Contents of this page
- News & Noteworthy
- Registration
- Course content
- Course description
- Prerequisites
- How to complete the course
- Programme
- Grading
- Newsgroup
- Literature
- Links
News & Noteworthy
Results of the exam on 15 June are now available.
Remember that you may register for a separate exam only if you have completed the project work during the course.
Registration
Registration for the course starts on January 9th. Please do not register for the groups (1 - 4) if you do not plan on participating in the exercises, so that those who do want to participate can do so. You can still pass the course by doing a larger stand-alone project work as well. In that case, register in group 99. Please consider whether you are really dedicated to the course before registering. Register through the registration system.
Course content
XML basics. Modelling of document structures (DTD). Namespaces. Processing of XML documents (DOM, SAX, XSLT). Formatting with styles (CSS, XSL). Related standards.Course description
The goal of the course is to give you a basic understanding of XML and its use in document production. To this end the course will teach DTDs and production of HTML and XSL-FO (print-oriented) output with XSLT. After the course you shall have both a good working knowledge of the technical aspects and use of freely available tools, as well as an understanding of the more theoretical concepts that affect real-world document processing.
Prerequisites
The course is an optional intermediate-level course. Students should be familiar with HTML and basic data stuctures, and have basic programming skills. The following courses (or similar skills and knowledge) are required: Programming project, Data structures. This is not a programming-oriented course, though.
How to complete the course
In order to complete the course, you must
- take either
- the course exam or
- a separate exam
- and either
- participate in the exercises completing the work given in them and complete the smaller project work or
- complete a stand-alone larger project work
The above means that the exercises are obligatory if you want to pass the course with the more limited smaller project work. 'Obligatory' means attending at least 5 exercise sessions. Exercises are highly recommended and lectures and later exercises will assume that you have learned the material presented in previous exercises. All the required material will be available online.
Programme
The lectures will be in Finnish. Assistance in the exercises will be provided in Finnish and in English. The course material is in English.
Lectures (8 * 2 hours)
Lectures: Oskari Heinonen
January 15th - February 19th, Mondays 12-14, Exactum A111
January 17th - January 24th, Wednesdays 12-14, Exactum A111
Schedule:
| Lect. No. |
Date | Content | Bradley Chapters |
Slides for viewing |
Handouts for printing |
| 1 | 15.1.2007 | Motivation. Introduction. History. | 2, 3, 31 | ps pdf | |
| 2 | 17.1.2007 | Markup. XML syntax. Well-formedness. | 3, 4 | ps pdf | |
| 3 | 22.1.2007 | DTD basics. Validity. Document modelling. | 4, 5, 6 | ps pdf | |
| 4 | 24.1.2007 | DTD limitations. Alternatives. XML Schema. | 14, 15 | ps pdf | |
| 5 | 29.1.2007 | XML processing. Namespaces. | 8, 10, 16, 29 | ps pdf | |
| 6 | 5.2.2007 | CSS. XSLT. XPath. | 13, 17, 22, (24), 25 | ps pdf | |
| 7 | 12.2.2007 | XSL-FO. | n/a | ps (large!) pdf | |
| 8 | 19.2.2007 | Combining. Wrapup. Related standards. | 7, (27, 28) | ps pdf |
The lectures are based on the course book (see below). The book is useful but not absolutely necessary. You will be able to complete the course with the material presented in the lectures, exercises (these will be available online), and additional material available on the web.
In addition to the lectures you are encouraged to study the comprehensive DTD+XML & XSLT->HTML & XSLT->FO example used as a basis for some of the lectures and exercises. (The files po* make another example. This time about schemas and namespaces.)
Exercises (6 * 2 hours)
January 15th - February 23rd
Hands-on type exercises will be completed in the class room. (There may be some homework assignments given as well.) Each exercise will teach you some basic concepts and allow you to apply them to practice. Assistants will be available to answer questions, and any tricky questions can be discussed together at the end of the exercise session.
NB Lectures and exercises start in the same week.
Groups:
- Linda Hellman, Tue 10-12, BK107
- Linda Hellman, Wed 10-12, BK107
- Mikko Apiola, Fri 14-16, BK107
- Mikko Apiola, Fri 16-18, BK107
Schedule:
| Exerc. No. |
Dates | Topics | Questions | Answers |
| 1 | 15.-19.1.2007 | XML basics and syntax | html | html |
| 2 | 22.-26.1.2007 | DTD basics and syntax | html | html |
| 3 | 29.1.-2.2.2007 | XML Schema, DTD for project work | html | html |
| 4 | 5.-9.2.2007 | Basic XSLT | html | html |
| 5 | 12.-16.2.2007 | Basic XSL-FO | html | html |
| 6 | 19.-23.2.2007 | Project work | html | n/a |
XML tools used in the exercises
Project work
You will have to pick a topic for your project work early on during the course. You are free to choose any reasonable topic that will allow you to comply with the project work criteria. No topics will be proposed by the lecturer or assistants. You will be working on your own project in the exercises as well as given problems. The exercise assistants can help with project work questions.
Alternatively, if you don't attend the exercise sessions, you can do a larger, stand-alone project work.
The deadline is March 15th. The grade will be reduced if you return the project late, and eventually the work will not be accepted at all.
The project may be completed in Finnish, Swedish or English.
Description of the project work (includes a link to the submission form)
Examination
Examples of potential exam questions
You do not have to register for the course exam.
You must register for the separate exams.
You may register for the separate exams that take place after the course exam on February 28th only if you have completed the project work during the course during the year 2007.
Course exam 28 February 2007:
Course
results (intranet) (includes project work results)
Exam
results (intranet) (the 21-point-min requirement will likely be
relaxed a bit)
Exam
questions (.ps) (intranet)
Separate exam 17 April 2007:
Results (intranet)
Exam
questions (.ps) (intranet)
Separate exam 15 June 2007:
Results (intranet)
Exam
questions (.ps) (intranet)
Grading
The course exam will give a maximum of 42 points, the smaller project work a maximum of 12 points, the larger project work a maximum of 18 points, and the exercises a maximum of 8 points. The grading maximum is 60 points, with a possible maximum of 62 points accumulated (with the exercises). Each exercise session will give 1 point but you will get 8 points if you attend all of them.
A separate exam will give a maximum of 42 points. Together with the points of the project work, you may achieve a maximum of 60 points (larger project work) or a maximum of 54 points (smaller project work) scaled appropriately. Exercise points earned during the course are taken into account (with a possible maximum of 60 (62) points) only (in addition to the course exam) in the first separate exam after the course (and only if they work to your advantage). In any case, you must have participated in the exercise sessions during the course to pass the course with the smaller project work.
In order to pass, you must achieve at least half of the maximum points in each section (exam, project work).
Newsgroup
A newsgroup, hy.opiskelu.tktl.xml, has been set up for the course. For discussion about matters related to the course.
Literature
The course will be mainly based on the course book mentioned below. There will also be additional material from the web.
The course book is
- Neil Bradley: The XML Companion, 3rd ed. Addison-Wesley, 2002.
- Optional course book: Elliotte Rusty Harold & W. Scott Means: XML in a Nutshell, 3rd ed. O'Reilly, 2004. (This one is even more technical than the one above.)
Additional material (W3C recommendations):
- XML: 1.0, 1.1
- Namespaces in XML: 1.0, 1.1
- XML Schema: 1.0 Parts: 0, 1, 2
- XSL family of recommendations
- CSS: CSS1, CSS2
Some useful links
- W3C - XML
- XML.org
- XML.com
- The XML Cover Pages
- The Apache XML Project
- The XML FAQ
- Henri Ruini's XML pages in Finnish
- English-Finnish XML Vocabulary Tämä sanasto on erityisen huomion arvoinen, jotta suomenkieliset termit tulisivat tutuiksi suurimman osan kurssin materiaalista ollessa englanniksi. / Worth a special note for the Finnish speakers.
- XML 1.0/1.1 W3C-rekommendation på svenska. / Worth a special note for the Swedish speakers.
Oskari Heinonen (based on Mika Raento's page [based on Greger Lindén's page])

