SET09103 Advanced Web Technologies, Semester 1, 2009

Lecturer: Dr. Uta Priss


Module Descriptor
Module Structure
Coursework Part 1
Coursework Part 2
Resit coursework
Resit support
The dangers of PHP

Prerequisite Knowledge

This is an advanced class. You must have prerequisite knowledge of server-side programming and HTML in order to take this class.

Here are some links for introductory and reference materials, in case you need to refresh your knowledge. You can use either PHP or Perl for this class. (With respect to ASP/.NET, please, see the FAQ)
PHP: Tutorial, manual.
Perl: Tutorial.
HTML: HTML Intro, HTML Forms, HTML Cheatsheet.
Unix: list of commands.

Weekly Schedule:

Note: the answers are in text files. If they don't display properly, use "View source" on the file.

Week Topics Practicals Resources Readings
2 Introduction and What is Web 2.0? (pdf),
Revision of basic web technologies (pdf)
PHP exercises, answers
OR: Perl exercises, answers
software downloads
Unix help
Tim O'Reilly: What is Web 2.0
3 Server-side graphics (pdf) Graphics exercises, answers Graphviz; SVG  
4 Web Security (pdf) Security exercises WWW Security FAQ
PHP security
5 XML: structures (pdf) XML exercises, answers XML tutorial
Perl XML
XML DTD Quick Reference (pdf)
6 XML: tools and extensions (pdf) DOM/SAX exercises, answers DOM Cheatsheet (pdf)  
7 Rich Internet Applications
AJAX (pdf)
, More AJAX (pdf)
AJAX exercises, answers Wikipedia:
Javascript, AJAX
Examples: Google: search, translation
AJAX: A New Approach to Web Applications
8 Regular Expressions (pdf) PHP exercises, answers
OR: Perl exercises, answers
special characters
Basic RE syntax
Wikipedia: regular expressions
9 Reading Week. No lecture.
10 Unicode and XSL (pdf) Coursework
Unicode exercises
11 Web services (pdf)
More Web services (pdf)
Coursework demonstrations
PHP exercises
PHP example
Perl examples
Generic soap client
12 Advanced Topics:
The Semantic Web (pdf)
Coursework demonstrations
Protege exercises
Loggerhead turtle
Berners-Lee: The Semantic Web
More exercises

Napier University: School of Computing