CPS 841 / CP8309: Foundations of Semantic Technologies
Course Management Form, Winter 2011
| Office Hour
Introduction and Motivation.
Imagine a room full of people who speak different languages,
but who have to solve a common task or work together on a
common project. They cannot collaborate unless they agree on a common
language. Now consider computers spread around the world who have to
share data, integrate information to solve common tasks and collaborate in
many different ways, and they have to do all of this by themselves, without
human intervention. After all, people write programs because they want
to automate many of the basic activities that computers can do faster and
without errors. The computers also need a common language to share/exchange
data, but instead of a complex human language, the computers need a mark-up
language with a precise syntax and semantics that they can process fast
and without getting puzzled with ambiguities. They might actually need
several common mark-up languages of varying expressive power, but most
importantly data to be exchanged should have a well defined meaning.
The semantics of each common language should allow the computers not
only communicate meaning of data explicitly, but also implicitly by
reasoning about information they communicate to each other. Semantic
technologies include several recent languages designed to facilitate
exchange of data between different companies and groups, integration of
data from disparate sources, business-to-business transactions, and
scientific collaborations. Using some of these languages, it becomes
possible to express precisely common vocabularies for each application
domain, and draw inferences using these vocubularies.
These shared precise vocabularies are known as "ontologies", and for this
reason, the language for expressing them is called Web Ontology Language
(OWL). The semantic technologies are being developed by the World Wide Web
Consortium (W3C) with the help from groups of experts from universities and
industry. Foundations of some of these technologies are significantly
influenced by research in Knowledge Representation and Reasoning
(KR&R), specifically by formalisms called Description Logics.
However, in contrast to research in artificial intelligence, these
technologies are being developed not to build smart agents, or
intelligent programs, but for the purposes of semantic integration in
industry, health and life sciences, government, and of course, also
in Web applications. However, relevance, applicability and potential of
these technologies go way beyond the Web itself.
The course will enable students to learn about some of the key semantic
technologies including W3C recommended languages such as RDF (Resource
Description Framework), RDF Schema, OWL2 (Web Ontology Language), an
up-coming Rules Interchange Format (RIF), and related topics. More
specifically, the course will focus on logical foundations of semantic
technologies, but will also provide opportunities to get some hands-on
experience with these technologies using well-known tools.
No previous background in semantic technologies is expected.
Required Text Book:
Foundations of Semantic Web Technologies
by Pascal Hitzler, Markus Krotzsch, Sebastian Rudolph,
For undergraduate students: CPS721. No previous background in logic or
in Semantic Web is expected. Understanding of purposes of mark-up languages
such as HTML or XML is helpful, but no experience with XML, and no
working knowledge of HTML or XML are required.
Lectures, assigned readings, in-class discussions are possible too.
is based on home assignments, 2 term exams, and student participation.
More specifically, undergraduate students will be normally asked to
work on home assignments, pass 2 exams, and participate in discussions.
Graduate students may be asked to complete a term project in addition
to work expected from undergraduate students. Home work will include
mostly problem solving. Students may be asked to develop prototype
ontologies using Protege (an open source editor with a GUI that supports
OWL2, RDF and rules).
Topics (tentative list):
This course will provide introduction to representation issues in
Semantic Web and several important
semantic technologies, including W3C recommended languages for
developing ontologies (i.e., common, shared, precise vocabularies).
First, basics of formal logic are reviewed, including propositional
logic, first order logic, and semantic tableau. Second, XML, RDF and
RDF Schema are discussed. Third, description logics are introduced.
Fourth, syntax and semantics of OWL2 are discussed, including
distinction between fragments of OWL2. Fifth, basics of rule interchange
languages RIF are introduced. If time permits, the course includes
also conjunctive query answering.
Policy on collaboration in homework assignments
The quizzes, and the tests may include problem solving and short essay questions.
The duration of these examinations will be 15-45 min, 1h20min,
and 2h30min, respectively.
The second test will be cumulative and will include all
the material covered throughout the term. To pass this course you must get
a grade of 35% or better on both exams.
There will be no supplemental examination.
Grades are earned for the demonstration of knowledge.
Brief quizzes may be given at any time in class
without preliminary notice (marks will contribute to the class participation).
A mark for a quiz will be given to a student only if
(1) s/he attends the entire class for which the participation occurs, and
(2) the instructor observed the student actively participating, and
(3) the student signs the quiz (including a student number);
(4) quizzes must be submitted when students are asked to do so;
late quizzes will not be accepted. The participation mark will be
given primarily for effort, and less for solution correctness.
There will be no make-up quizzes. If you missed a quiz, it is
recommended to ask other students for a copy and solve the quiz
Dates are subject to change, all changes will be announced in class and on
the course Web pages.
Assignments should be submitted on or
before the deadline specified in the assignment
(you are encouraged to submit assignments earlier).
Your assignment is considered late
if any part of the assignment is late and the penalty
for a late assignment is 10% off. No assignments
will be accepted if more than 24 hours late.
All assignments have to be submitted electronically using a
special purpose script that you can run on any moon computer
(log in Linux operating system to run this script). You can submit
your assignment either locally from labs, or remotely from home.
If you have decided to submit it remotely, it is your responsibility
to make sure that you have ssh software installed at your home
computer. You need this software to login remotely into any of
the moons and run a specified script there. Also, you are
expected to know basic UNIX commands and utilities. Finally, make sure
that your computer science account is open and is in good standing.
Contact one of system administrators if you will have questions.
From time to time, I will hand out exercises.
The students are expected to solve the exercises, but
they will not be graded. However, working on exercises
will improve your understanding of this course
(and will help you to get better marks on tests).
Up to 5% extra credit may be assigned for class participation
(a student attends the entire class, participates actively by
asking/answering questions, works on
problems in class and/or attends office hours).
Handouts and assignments will be made available on the Web only.
You are responsible for visiting the course Web pages regularly and
reading assignments related information that is provided or linked from
these Web pages. Before sending your questions by e-mail to the
instructor, check these Web pages whether similar questions have been
- Email communication: please send me email from local Ryerson's
email addresses only. Please be aware that email sent from Yahoo, Hotmail
and other popular domains can be filtered out as spam and might not
reach me. Email messages will be normally answered within 24 hours;
however, messages sent on weekend (starting from Friday evening) will be
usually answered on Monday.
Discussing general approaches to problems is allowed. However, home
work assignments are individual: no collaboration is allowed when you
write final solutions. You may discuss assignments only
with other students currently taking the course. However, you should
never put your name on anything you do not understand.
If challenged, you must be able to reproduce and explain all
solutions by yourself, or solve similar exercises.
If you cannot explain a solution that you handed in, or if you cannot
solve an exercise similar to questions in your home work, this will
negatively affect your grade. In particular, you might be asked to solve
exercises during the office hours, or in class (as a quiz).
The first page of your homework should include: the name of all
students with whom you discussed any homework problems (even briefly).
Otherwise, it is assumed that you didn't discuss with anyone except the
instructor. Copied work (both original and copies) will be graded as 0.
Involvement with plagiarism will be penalized in accordance with the departmental
policy and the Student Code of Academic Conduct.
Committing academic misconduct, such as plagiarism and cheating,
will trigger academic penalties including failing grades,
suspension and possibly expulsion from the University.
As a Ryerson student, you are responsible for familiarizing yourself
Student Code of Academic Conduct.
Grades are earned for the demonstration of knowledge.
Read carefully the marking guide for the assignment or
test you'd like to be remarked.
Fill in this
remarking form (available online).
Give the form and the assignment/test to TA who marked the assignment/test or
to the instructor (at lecture time or scheduled
office hour), who will forward it to a TA.
You may not submit a remarking request later than ONE WEEK from the
date on which the assignments were returned. It's your responsibility to
pick up your work as soon as possible.
Mark can decrease if TA finds something that was incorrectly
awarded too high a mark.
Tentative Course Calendar
(subject to change: all changes will be announced in class)
||Grade Value (%)
|Assignment 2 (in two parts)
February 9 and 16
|Class participation (and/or quizzes)