Amith Nair
May 2, 2014


XPath is a query strategy for extracting information from XML documents. The goal of this project is to implement an evaluator that evaluates XPath expressions and extracts out corresponding xml entities.


Concepts Demonstrated

  • Data Abstraction used for various encapsuulating various class behaviors in the project e.g. XML Node structures , node types etc.
  • Higher order functions to deal with parsing the xml and evaluation xpath expressions.
  • Recursions and Iterations are used throughout to parse and search out xml elements.

External Technology

  • parser-tools/yacc for xpath expression evaluation
  • parser-tools/lex for xpath expression evaluation
  • racket/xml for xml navigation
  • rackunit for unit testing


This project can extract out specific parts of long xml documents using simple, intuitive expressions.

Technology block diagram

Additional Remarks

This project could not cater to the complete grammar and specifications of XPath from W3C. However this is function enough to extract out basic elements from the xml.