120 likes | 206 Views
Jsimparser with ReL. Arit Paul and Chris Hitte. SIM vs SQL. SQL is a subset of SIM SIM has the added functionality of: Classes Subclasses. Overview of Changes. Preserved existing SIM and SQL functionality of ReL Created jsimparser Modified PyTuple.java to call jsimparser
E N D
Jsimparser with ReL Arit Paul and Chris Hitte
SIM vs SQL • SQL is a subset of SIM • SIM has the added functionality of: • Classes • Subclasses
Overview of Changes • Preserved existing SIM and SQL functionality of ReL • Created jsimparser • Modified PyTuple.java to call jsimparser • Modified Python.g to pass concrete syntax • Created SIMVisitor
Created Classes • Class.java • EVA.java • EVAAttribute.java • DVA.java • DVAAttribute.java • Insert.java • Assignment.java • Modify.java • Retrieve.java • AttributePath.java
JSimparser • Created JSIMparser based on JSQLparser • JSIMparser: • Accepts concrete syntax from PyTuple.java • Stores parsed data in instances of our newly defined classes • Builds AST from the instances • AST is visited by SIMVisitor
SIMVisitor • Created SIMVisitor based on SIMHelper and SQLVisitor • SIMVisitor: • PyTuple passes the AST to SIMVisitor • Visits the nodes of the AST produced by JSIMparser • Pulls key data from these nodes • Builds an equivalent SPARQL statement • SPARQLDoer executes this statement
... In class visitor ... EVA and DVA visitor call correct SPARQL
SIMDemo.py • Class • Subclass • Insert • Modify • Retrieve
Concrete Syntax from Python.g SPARQL conversion Result of retrieve