Information Systems WS2004 (LVA Nr. 326015)

News

The results of the second exam.

The results of the first exam.

Time and Location

The lecture takes place on Mondays 12:00-13:30 in the lecture hall HS 12. The language of the course is English.

Registration

Please register for the course via the KUSSS system.

Contents

This course is intended for students of mathematics who did not studied related subjects before. There is no particular prerequisite for the course, however I assume that everybody can (and actually do) work with computers, can find his/her way around the Internet, and it is not a problem for him/her to get acquainted with new application programs (e.g. SQL interfaces of some RDBMS, XML tools).

The course presents an introduction to the fundamental theory of relational database management systems with an outlook toward online databases. The goal of the course is to introduce the basic concepts and problems in relational data modeling, to provide an overview of its application in on-line systems, moreover to briefly discuss XML technologies, that become increasingly important in the Internet era.

The overview of the course:

Course 1
Overview of the course, introduction to database systems.
Course 2
The entity-relationship model: basic definitions, classification of relationships, keys, entity-relationship diagrams, design principles in the ER model.
Course 3
The relational model: basic definitions, the relational algebra, views.
Course 4
Functional dependencies and normal forms (1NF-3NF, BCNF).
Course 5
Indexing and hashing: B-trees, extendible hashing.
Course 6
SQL: data definition, simple queries, views and joins.
Course 7
On-line transaction processing: basic concepts, locking, ACID requirements.
Course 8
On-line analytical processing and search engines (very briefly), overview of the previous courses.
Course 9
XML: basic definitions, universal resource identifiers, namespaces in XML.
Course 10
XML Schema: schema declaration, elements, attributes, types.
Course 11
XPath and XSLT: the data model of XPath for XML documents, location paths, XPath expressions, XSLT, templates, template applications, special features for attributes, conditional processing, sorting.
Course 12
XQuery: processing model, types, expressions (constructors, FLWOR and conditional expressions).

Literature/Lecture Notes

Lecture notes:  PDF  (compiled on 23. Jan 2005). I plan to update the notes during the semester so please check your version.

The XML documents for the exercises in the lecture notes. You might also find this schema validator and this XSLT and XQuery processor helpful.

Exam

The first written exam is on February 4, 2005 (Friday) at 10:15 in HS3.

The results of the first exam.

Remark   Most of you solved Exercise 3 just by "copying" the given functional dependencies: in group A most of you wrote {A, B, E, F, G}, {B, C, D, E, F}, {D, F}, and in group B, {A, B, C, D}, {D, E, F}, {E, G}. These schemes are in 3NF indeed, but these do not form lossless join decompositions of the original schemes with the given functional dependencies respectively. (The group A scheme is even redundant this way because {D,F} is a subset of {B,C,D,E,F}.) This is a fundamental mistake so in such cases I could not give points. If you want to improve your grade when you see your corrected exam, be prepared to explain why these solutions are wrong!

The exam is 90 minutes long and every kind of written material (scripts, lecture notes, books) are allowed to be used. No computers are allowed (and needed).

The second written exam is on February 14, 2005 (Monday) at 10:15 in HS3.

The results of the second exam.

Remarks to the second exam (i) Many of you solved Exercise 2 by some self-invented insertion algorithm, which had nothing to do with the B-tree insertion algorithm we discussed. This is wrong. The algorithms that manipulate the data structure belong to its specification (as methods belong to the definition of a class in OOP).

(ii) Still quite a few of you did not solve Exercise 3 or gave the wrong solution in the same fashion as the others in the first exam. Please learn this simple thing because it is really important.

(iii) In Exercise 4 almost all of you failed to notice that the country element is a child of athlete, thus athlete should be declared using <complexType mixed="true">. Also most of you did not give a declaration for the results element (the root element in the XML document).

(iv) For Exercise 5 many of you gave a template for event which would generate an HTML document for each event element. There should have been a template for the results element (which creates the HTML header/body frame) calling for template applications on all event children. Then the template for event could come creating the table for the given element.

For (iii) and (iv) here is the XML document you've had in the exam:

<?xml version="1.0" encoding="utf-8"?>
<results>
 <event sport="Men's 400m">
  <athlete time="44.40">A. Harrison<country>USA</country></athlete>
  <athlete time="43.84">M. Johnson<country>USA</country></athlete>
  <athlete time="45.01">S. Parrela<country>BRA</country></athlete>
 </event>
 <event sport="Women's 400m">
  <athlete time="49.11">C. Freeman<country>AUS</country></athlete>
  <athlete time="49.72">K. Merry<country>GBR</country></athlete>
  <athlete time="49.58">L. Graham<country>JAM</country></athlete>
 </event>
</results>

Third exam: Date is 11.03.2005, time is 10:15, place is T211.


Maintained by Gábor Bodnár