Skip to content

Schema+RefExp Translation Rule 1

Eva Feng requested to merge ehfeng/LDI:week4 into dev

The current version translates a simple Schema+RefExp parse tree from abstract relational to relational under the following constraints (assuming valid input Schema+RefExp):

  1. All Path lengths must <= 2 (2 dots in path)
  2. No nested translations (all translations must not depend on some other translation iff? path len <= 2)
  3. User defined type is assumed to be the same as the RHS of its RTA (eg. "std is of type Students" and "Students->std_info", but we don't include "std Students" in the table definition, and we simply use "std_info Integer" to substitute for "std" everywhere) This is should be fixed asap before moving forward. (fixed)
  4. All RefExps must only have one refexp on the RHS (aka has the form "Table->refexp")

This is still WIP: I have included an example of the translated parse tree under "SQLPSchemaTests" I have mixed up some terminology in the code. Please let me know which parts are confusing. I'll fix up the style after we decide on the final algo for rule 1.

Edited by Eva Feng

Merge request reports