Computer Science II (CS 171)
Dr. William J. Joel, WS 110, 7-9353 
Project No. 4 (12 points)
Due Wednesday, November 15, 2006

Problem: And now for some natural language processing. For this project, you are to create a program that will parse the following sentences using a parse tree:
  • Mary likes candy.
  • Tom read a book.
  • Anne bought this car.
A parse tree looks like this ...
Parse tree
Task:
  • Design an algorithm to solve the above problem. This should include UML class diagrams showing all classes (with members) and class relationships.
  • Your program should be able to rewrite (output) each sentence using brackets to show parts of speech. This output should be appended to a separate file.
  • Create a program based on this design. 
  • Exceute the program for each of the three (3) sentences above.
  • Submit copies of your handwritten design (algorithm, UML), printouts of all  source code files, a printout of  your output file, and an executable version of your program on disk.
Notes:
  • Start right away! The sooner you ask questions, the sooner you'll complete this project.
  • Hint! You might need to include some sort of database to identify which part of speech a word is. For example, Claudia and stool are nouns, while sat is a verb.
  • Check out this link on Parsing for more information.
  • Please refer to Project Submission Guidelines for more information on how to submit a project.
  • Feel free to add whatever features you wish to this program. These additions will be critiqued but will have no impact on your project grade whatsoever.
  • Challenge! Can your program parse the sentence in the diagram above? Sorry, but no bonus points for this.