Oulun yliopisto - Etusivulle University of Oulu in English

ee.oulu.fi

Electrical and Information Engineering

Faculty of Technology > Electrical and Information Engineering > Computer Engineering Laboratory


COMPUTER ENGINEERING LABORATORY

[This page is CSS2 enabled. Your browser might not fully support it]

521260S Representing Structured Information (5 ECTS/ 3 cu)


$RCSfile: index.html,v $ $Revision: 1.0 $ $Date: 2011/08/15 11:36:39 $

ABSTRACT

This course provides basic understanding to the general markup languages and data models that can be used in describing the structured information and knowledge that is used and published by software applications and distributed systems. The course consist on lectures, exercises in PC classroom, and a project work. There is no final exam. These pages contain some important information, such as exercise material, schedule, and contact information.

Table of Contents

Introduction

Period Lectures Exercises Project Work Credits Points / Units
1-3 20h 12h 70h 5,0 / 3,0

Lecturer

Jukka Riekki

Goals

The aim of the course is to provide basic understanding to the general markup languages and data models that can be used in describing the structured information and knowledge that is used and published by software applications and distributed systems. The objective is that a student understands descriptions based on these languages and models, is able to create and document descriptions and implement programs that process these descriptions.

Contents

XML, valid XML and XML Schema. Protocols and software using XML. Tools for writing XML descriptions. Documenting descriptions. Software for processing descriptions. Developing own applications using XML. Introduction to Web Services.

Implementation

Lectures, laboratory exercises, and a design exercise that is implemented as a project work in teams of 2 students. Teams present the progress of their project at least once to lecturer or assistant. There is no exam. Project deadlines have to be met to pass the course. The project work, presentations, and the exercises will be evaluated and the course final grade is based on these evaluations.

Prerequisites

  • Elementary Programming

Programming Skills

It is very important that you are familiar with Object Orienting Programming. Some of the exercises requires doing some Java or Python programming. We also strongly recommend the use of any of those languages for the Design Project Work. You have here some guidelines to start practising with Java.

Schedule

Lectures

Lectures will be held in the period 12.09.2011 - 12.12.2011 as follows:

Day Time Room
Monday 10:15 - 12:00   TS101

Examination

There is NO EXAM

Exercises

There are 4 mandatory exercises of 3 h each one. Lab 0 that serves as an introuduction to the project work is also mandatory. The exercises are held at computer classroom TS135.

For some of the exercises, students might have to to answer a short questionnaire in Optima before coming to the exercise. The questions covers most important theoretical points that student should know before doing the exercise.

During the exercise the assistant explains during the first 20-25 minutes the theoretical basis of the exercise. After that, the student must solve some tasks that are given in a questionnaire. The student must return back this questionnaire to the assistant at the end of the class and/or upload generated files to Optima.

Exercise schedule

There are 4 laboratories session reserved for each exercise (except lab 0). Students can register in any of the session whenever there are free seats. During Exercise 2 and 4 there are two sessions reserved for Java programmers and two sessions reserved for Python programmers. NOTE: If the number of students is not enough to fill 4 sessions, some of the sessions might be cancelled. We will inform about this when all students are registered.

Exercise Sessions available
Exercise 0 21 September 10.00-12.00 21 September. 14.00-16.00
Exercise 1 11 October. 10.00-13.00 11 October. 15.00-18.00 12 October. 10.00-13.00 12 October. 15.00-18.00
Exercise 2 18 October. 10.00-13.00 (JAVA) 18 October. 15.00-18.00 (PYTHON) 19 October. 10.00-13.00 (PYTHON) 19 October. 15.00-18.00 (JAVA)
Exercise 3 01 November. 10.00-13.00 01 November. 15.00-18.00 02 November. 10.00-13.00 02 November. 15.00-18.00
Exercise 4 08 November. 10.00-13.00 (JAVA) 08 November. 15.00-18.00 (PYTHON) 09 November. 10.00-13.00 (PYTHON) 09 November. 15.00-18.00 (JAVA)

Exercise registration

Registration to each exercise ends 1 day before the first exercise session. The registration is done through Optima.

Exercise topics

  1. Project Work Introduction: During this exercise assistants will give a presentation on the requirements for the Project Work. Students can select a topic and start the work during this exercise.
  2. Introduction to XMLSpy: XMLSpy is an integrated development environment (IDE) for XML and related technologies. During this exercise the student will learn how to use this environment to create XML and XML-Schemas files
  3. Creating RESTful Web Services: During this exercise students will learn how to use some of the existing frameworks to create RESTful Web Services. Students are also taught how to deploy and test RESTful web services. Two sessions use Java and two sessions use Python as programming language.
  4. Manipulating XML During this exercise student will learn some basis of XPath and XSLT and will perform some simple XML transformations. As a voluntary task studying will learn how to create XSLT using StyleVision tool from Altova
  5. SAX and DOM parsers: There are 2 well settled methods to parse an XML file SAX(event based parsing) and DOM(tree based parsing). During this exercise the student will learn how to use both of them. Student can select programming language. Two sessions use Java and two sessions use Python as programming language.

Exercise material

The exercises slides and material will be available in Optima.

Design Project Work

The Design Project Work is made in teams of 2 students. Each team presents the progress of their project at least once in a meeting with the lecturer/assistant.

All information related to the Design Project Work is found in Optima in a file named Project_Work_Assignment.pdf and summarized in the file A1.Project_Work_slides.pdf.

You can find some ideas to choose the topic by looking XML examples appendix (in Optima) or consulting the webpage: http://www.ee.oulu.fi/research/tklab/courses/521260S/topics.html. It contains a lot of examples of real life applications and services that use XML.

Major Deadlines

  • Deadline 0: September 23th at 21:00. Register your topic using the form that you can find at http://www.ee.oulu.fi/research/tklab/courses/521260S/registration.html
  • Deadline 1: September 30th at 21:00. Section 1 of the project report, Introduction, returned to Optima.
  • Deadline 2: October 21st at 21:00. Section 1 and 2 (XML and XML Schema) of the project report returned to Optima.
  • Deadline 3: November 11st at 21:00. Section 1-3a (Web Services. Design).
  • Deadline 4: November 25th at 21:00. Section 1-3b (Web Service. Parser and XSLT implementation) of the project report returned to Optima.
  • Deadline 5: December 7th at 21:00. Section 1-3c (Web Service. RESTful implementation) of the project report returned to Optima.
  • Deadline 6: December 14th at 21:00. Final Report delivered to Optima, including all sections and appendixes.

Contact Information


Course mail list: rsi-course [at] ee.oulu.fi

Course assistants:

  • Iván Sánchez
    • Room TS352
    • Personal consulting hours: Fridays 11-13. Other times can be negotiated by email.
  • Marta Cortés
    • Room TS352
    • Personal consulting hours: Wednesdays 10-12. Other times can be negotiated by email.

Course Literature

Lectures

Lecture slides will be available in Optima before each lecture.

Course Books

  • Harold, Elliotte Rusty & Means, W. Scott. XML in a Nutshell. 3rd Edition. O'Reilly 2004. ISBN: 0596007647.

Software

Altova Partner Education program allows students from University of Oulu to have access to following software in laboratory TS135:

  • Altova XMLSpy 2011 Enterprise is the industry standard XML development environment. It offers the top XML editor, schema designer, code generator, converters, debuggers, profilers, support for XSLT, XQuery, WSDL, SOAP, DBs, VS.NET, Eclipse, and more.

  • Altova StyleVision 2011 Enterprise Edition is the ultimate visual stylesheet designer for transforming XML and database content into HTML, PDF, and Word/RTF output and creating e-forms. StyleVision supports XSLT, XSL:FO, CSS, and all major databases.

Course registration

Oficial registration to the course is done using Weboodi. All material related to the course is available in Optima, so students must also have an Optima account.

The Optima Learning Environment is used to distribute information and as the main tool of communication between students and course staff. The Representing Structured Information workspace contains all the course slides, a forum to make questions and the return boxes to upload the project and the exercises files. If you already have an Optima account, please register to the "RSI_2011" course. If you have an Optima account but you cannot see either STO environment or RSI_2011 workspace, send an email to opetusteknologia(at)ee.oulu.fi. When you register as a student at the University, you should receive automatically an Optima account where you can see only the environment associated to your department. If you cannot access to Optima at all contact optima.helpdesk [at] oulu.fi

[This page is CSS2 enabled. Your browser might not fully support it]