[tracker] SPARQL: Fix SQL for GRAPH with predicate variable and empty database



commit 1773692baa41f6a686b74755f1c3ace889539412
Author: Jürg Billeter <j bitron ch>
Date:   Mon Sep 27 15:30:20 2010 +0200

    SPARQL: Fix SQL for GRAPH with predicate variable and empty database
    
    Fixes NB#194746.

 src/libtracker-data/tracker-sparql-pattern.vala |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)
---
diff --git a/src/libtracker-data/tracker-sparql-pattern.vala b/src/libtracker-data/tracker-sparql-pattern.vala
index 1c0f88a..691eb45 100644
--- a/src/libtracker-data/tracker-sparql-pattern.vala
+++ b/src/libtracker-data/tracker-sparql-pattern.vala
@@ -79,7 +79,7 @@ namespace Tracker.Sparql {
 						} while (result_set.iter_next ());
 					} else {
 						/* no match */
-						sql.append ("SELECT NULL AS ID, NULL AS \"predicate\", NULL AS \"object\"");
+						sql.append ("SELECT NULL AS ID, NULL AS \"predicate\", NULL AS \"object\", NULL AS \"graph\"");
 					}
 				} else if (object != null) {
 					// single object
@@ -120,7 +120,7 @@ namespace Tracker.Sparql {
 						} while (result_set.iter_next ());
 					} else {
 						/* no match */
-						sql.append ("SELECT NULL AS ID, NULL AS \"predicate\", NULL AS \"object\"");
+						sql.append ("SELECT NULL AS ID, NULL AS \"predicate\", NULL AS \"object\", NULL AS \"graph\"");
 					}
 				} else if (domain != null) {
 					// any subject, predicates limited to a specific domain
@@ -136,8 +136,11 @@ namespace Tracker.Sparql {
 
 							Expression.append_expression_as_string (sql, "\"%s\"".printf (prop.name), prop.data_type);
 
-							sql.append (" AS \"object\" FROM ");
-							sql.append_printf ("\"%s\"", prop.table_name);
+							sql.append (" AS \"object\"");
+							if (return_graph) {
+								sql.append_printf (", \"%s:graph\" AS \"graph\"", prop.name);
+							}
+							sql.append_printf (" FROM \"%s\"", prop.table_name);
 						}
 					}
 				} else {



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]