Answering Why-Not questions consists in explaining to developers of complex data transformations or manipulations why their data transformation did not produce some specific results, although they expected them to do so. Different types of explanations that serve as Why-Not answers have been proposed in the past and are either based on the available data, the query tree, or both. Solutions (partially) based on the query tree are generally more efficient and easier to interpret by developers than solutions solely based on data. However, algorithms producing such query-based explanations so far may return different results for reordered conjunctive query trees, and even worse, these results may be incomplete. Clearly, this represents a significant usability problem, as the explanations developers get may be partial and developers have to worry about the query tree representation of their query, losing the advantage of using a declarative query language. As remedy to this problem, we propose the Ted algorithm that produces the same complete query-based explanations for reordered conjunctive query trees.
[1]
Serge Abiteboul,et al.
Foundations of Databases
,
1994
.
[2]
Eric Lo,et al.
Answering Why-Not Questions on Top-K Queries
,
2012,
IEEE Transactions on Knowledge and Data Engineering.
[3]
Melanie Herschel,et al.
Explaining missing answers to SPJUA queries
,
2010,
Proc. VLDB Endow..
[4]
Tomasz Imielinski,et al.
Incomplete Information in Relational Databases
,
1984,
JACM.
[5]
Val Tannen,et al.
Provenance semirings
,
2007,
PODS.
[6]
Chengfei Liu,et al.
On answering why-not questions in reverse skyline queries
,
2013,
2013 IEEE 29th International Conference on Data Engineering (ICDE).
[7]
Adriane Chapman,et al.
Why Not?
,
1965,
SIGMOD Conference.
[8]
Jeffrey F. Naughton,et al.
On the provenance of non-answers to queries over extracted data
,
2008,
Proc. VLDB Endow..
[9]
Melanie Herschel.
Wondering why data are missing from query results?: ask conseil why-not
,
2013,
CIKM.