In this course we will implement an interpreter for Onyx, a subset of the XQuery data base query language. The interpreter will be built in stages: first a scanner, then a parser, and finally a semantic engine for Onyx. After you have completed Onyx, you will then implement some data base queries.
The XQuery language is an active project in the World-Wide-Web Consortium ( w3c.org ). It is a rich language with many features and a flexible syntax. For the class project assignments, we will be using a simplified version of the full XQuery language, specifications for which will be distributed with the assignment descriptions.
The following due dates are approximate and may change. Be sure and watch this web page for updates to the schedule
The first class project is a scanner for Onyx tokens.
Due Date: Friday, January 20
The second class project is a parser for the Onyx language. Median: 69, Mean: 60, σ: 19
Due Date: Friday, February 10 Extended to Monday, 1/13/06
The third class project is a semantic checker and interpreter for Onyx.
Due Date: Wednesday, March 8
Extended to Friday, March 10.
5% bonus if turned by the March 8 deadline.
Assignment 4 [5%] POSTED
The fourth class project is to implement some data base queries using Onyx.
Due Date: Friday, March 17
Failure to follow this procedure will result in failure for us to evaluate your submission. Your score on the assignment will be 0. Please follow the turn-in procedures exactly as outlined. It is recommended that you test turning in your assignments at least a few days before the assignment due date.
Midterm exam [15%] Max: 144, Min: 45; Mean: 107, σ: 22.
Date: Thursday, February 16
Time: 2:00-3:20pm
Location: Price Center Theatre
 
Final exam [25%]
Date: Thursday, March 23
Time: 3:00-6:00pm
Location: Price Center Theatre
Exam review during lecture on Thursday, March 16