← Back to team overview

zeitgeist team mailing list archive

[Branch ~zeitgeist/zeitgeist/bluebird] Rev 294: use children of interpretations while generating queries

 

------------------------------------------------------------
revno: 294
committer: Seif Lotfy <seif@xxxxxxxxx>
branch nick: bluebird
timestamp: Tue 2011-10-11 12:11:37 +0200
message:
  use children of interpretations while generating queries
modified:
  src/engine.vala


--
lp:~zeitgeist/zeitgeist/bluebird
https://code.launchpad.net/~zeitgeist/zeitgeist/bluebird

Your team Zeitgeist Framework Team is subscribed to branch lp:~zeitgeist/zeitgeist/bluebird.
To unsubscribe from this branch go to https://code.launchpad.net/~zeitgeist/zeitgeist/bluebird/+edit-subscription
=== modified file 'src/engine.vala'
--- src/engine.vala	2011-10-09 12:24:25 +0000
+++ src/engine.vala	2011-10-11 10:11:37 +0000
@@ -834,6 +834,19 @@
                     interpretations_table);
                 if (!subwhere.is_empty ())
                     where.extend (subwhere);
+                    
+                var temp_interpretation = template.interpretation;
+                var is_negated = parse_negation(ref temp_interpretation);
+                foreach (var interp in Symbol.get_all_children(temp_interpretation)) {
+                    string child = null;
+                    if (is_negated)
+                        child = "!"+ interp;
+                    subwhere = get_where_clause_for_symbol (
+                        "subj_interpretation", child,
+                        interpretations_table);
+                    if (!subwhere.is_empty ())
+                        where.extend (subwhere);
+                }
             }
 
             // Manifestation
@@ -890,6 +903,19 @@
                         interpretations_table);
                     if (!subwhere.is_empty ())
                         where.extend (subwhere);
+                        
+                    var temp_interpretation = subject_template.interpretation;
+                    var is_negated = parse_negation(ref temp_interpretation);
+                    foreach (var interp in Symbol.get_all_children(temp_interpretation)) {
+                        string child = null;
+                        if (is_negated)
+                            child = "!"+ interp;
+                        subwhere = get_where_clause_for_symbol (
+                            "subj_interpretation", child,
+                            interpretations_table);
+                        if (!subwhere.is_empty ())
+                            where.extend (subwhere);
+                    }
                 }
 
                 // Subject manifestation