skip to main content
10.1145/3475726.3475727acmotherconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
research-article

Debugging of Wrong and Missing Answers in SPARQL✱

Published: 03 October 2021 Publication History

Abstract

The debugging of database queries is a research topic of increasing interest in recent years. The Semantic Web query language SPARQL should be equipped with a debugger for helping users to detect bugs which usually cause empty results as well as wrong and missing answers. Declarative debugging is a well-known debugging method successfully used in other database query languages. In this paper we present the elements of a declarative debugger for SPARQL in which debugging is based on the construction of a debugging tree for a given answer, and the detection of buggy and failure nodes in the debugging tree causing empty results as well as wrong and missing answers. The debugger has been implemented and it is available as web tool.

References

[1]
Jesús M Almendros-Jiménez and Antonio Becerra-Terón. 2017. A Web Tool for Type Checking and Testing of SPARQL Queries. In 17th International Conference on Web Engineering. Springer, Berlin, 535–538.
[2]
Jesús M Almendros-Jiménez and Antonio Becerra-Terón. 2017. Automatic Property-based Testing and Path Validation of XQuery programs. Software Testing, Verification and Reliability 27, 1-2(2017), e1625.
[3]
Jesús M Almendros-Jiménez and Antonio Becerra-Terón. 2017. Property-based Testing of SPARQL Queries. In 16th International Symposium on Database Programming Languages. ACM, New York, NY, USA, 1–8.
[4]
Jesús M Almendros-Jiménez and Antonio Becerra-Terón. 2021. Declarative Debugging of XML Queries. In International Symposium on Practical Aspects of Declarative Languages. Springer, Berlin, 161–177.
[5]
Jesús Manuel Almendros-Jiménez and Antonio Becerra-Terón. 2021. Discovery and Diagnosis of Wrong SPARQL Queries with Ontology and Constraint Reasoning. Expert Syst. Appl. 165(2021), 113772.
[6]
Jesús Manuel Almendros-Jiménez and Antonio Becerra-Terón. 2021. A Web Tool for XQuery Debugging. In Web Engineering - 21st International Conference, ICWE 2021, Proceedings(Lecture Notes in Computer Science, Vol. 12706). Springer, Berlin, Germany, 509–512.
[7]
Stefan Brass and Christian Goldberg. 2006. Semantic errors in SQL queries: A quite complete list. Journal of Systems and Software 79, 5 (2006), 630–644.
[8]
Rafael Caballero, Yolanda García-Ruiz, and Fernando Sáenz-Pérez. 2008. A theoretical framework for the declarative debugging of Datalog programs. In International Workshop on Semantics in Data and Knowledge Bases. Springer, Berlin, Germany, 143–159.
[9]
Rafael Caballero, Yolanda García-Ruiz, and Fernando Sáenz-Pérez. 2010. Applying constraint logic programming to SQL test case generation. In International Symposium on Functional and Logic Programming. Springer, Berlin, Germany, 191–206.
[10]
Rafael Caballero, Yolanda García-Ruiz, and Fernando Sáenz-Pérez. 2011. Algorithmic debugging of SQL views. In International Andrei Ershov Memorial Conference on Perspectives of System Informatics. Springer, Berlin, Germany, 77–85.
[11]
Rafael Caballero, Yolanda García-Ruiz, and Fernando Sáenz-Pérez. 2012. Declarative debugging of wrong and missing answers for SQL views. In International Symposium on Functional and Logic Programming. Springer, Berlin, Germany, 73–87.
[12]
Rafael Caballero, Enrique Martin-Martin, Adrián Riesco, and Salvador Tamarit. 2021. A Unified Framework for Declarative Debugging and Testing. Information and Software Technology 129 (2021), 106427.
[13]
Rafael Caballero, Adrián Riesco, and Josep Silva. 2017. A survey of algorithmic debugging. ACM Computing Surveys (CSUR) 50, 4 (2017), 1–35.
[14]
Benjamin Dietrich and Torsten Grust. 2015. A SQL Debugger Built from Spare Parts: Turning a SQL: 1999 Database System into Its Own Debugger. In Proceedings of the 2015 ACM SIGMOD International Conference on Management of Data. ACM, New York, USA, 865–870.
[15]
Maarten Faddegon and Olaf Chitil. 2015. Algorithmic Debugging of Real-World Haskell Programs: Deriving Dependencies from the Cost Centre Stack. In Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation (Portland, OR, USA) (PLDI ’15). ACM, New York, NY, USA, 33–42.
[16]
Sneha Gathani, Peter Lim, and Leilani Battle. 2020. Debugging database queries: A survey of tools, techniques, and users. In Proceedings of the 2020 CHI Conference on Human Factors in Computing Systems. ACM, New York, USA, 1–16.
[17]
Torsten Grust, Fabian Kliebhan, Jan Rittinger, and Tom Schreiber. 2011. True language-level SQL debugging. In Proceedings of the 14th International Conference on Extending Database Technology. ACM, New York, USA, 562–565.
[18]
Yun Guo, Nan Li, Jeff Offutt, and Amihai Motro. 2018. Automatically Repairing SQL Faults. In 2018 IEEE International Conference on Software Quality, Reliability and Security (QRS). IEEE, New York, USA, 500–511.
[19]
Yun Guo, Nan Li, Jeff Offutt, and Amihai Motro. 2019. Exoneration-based fault localization for SQL predicates. Journal of Systems and Software 147 (2019), 230–245.
[20]
Steve Harris and Andy Seaborne. 2013. SPARQL 1.1 Query Language. https://www.w3.org/TR/sparql11-query/. W3C Recommendation.
[21]
David Insa and Josep Silva. 2010. An algorithmic debugger for Java. In 2010 IEEE International Conference on Software Maintenance. IEEE, New York, USA, 1–6.
[22]
Muhammad Akhter Javid and Suzanne M. Embury. 2012. Diagnosing faults in embedded queries in database applications. In Proceedings of the 2012 Joint EDBT/ICDT Workshops. ACM, New York, USA, 239–244.
[23]
Mark Kaminski, Egor V Kostylev, and Bernardo Cuenca Grau. 2016. Semantics and expressive power of subqueries and aggregates in SPARQL 1.1. In Proceedings of the 25th International Conference on World Wide Web. ACM, New York, USA, 227–238.
[24]
Seokki Lee, Sven Köhler, Bertram Ludäscher, and Boris Glavic. 2017. A SQL-middleware unifying why and why-not provenance for first-order queries. In 2017 IEEE 33rd International Conference on Data Engineering (ICDE). IEEE, New York, USA, 485–496.
[25]
Zhengjie Miao, Sudeepa Roy, and Jun Yang. 2019. Explaining wrong queries using small examples. In Proceedings of the 2019 International Conference on Management of Data. ACM, New York, USA, 503–520.
[26]
Davide Mottin, Alice Marascu, Senjuti Basu Roy, Gautam Das, Themis Palpanas, and Yannis Velegrakis. 2014. IQR: an interactive query relaxation system for the empty-answer problem. In Proceedings of the 2014 ACM SIGMOD International Conference on Management of Data. ACM, New York, USA, 1095–1098.
[27]
Jorge Pérez, Marcelo Arenas, and Claudio Gutierrez. 2009. Semantics and complexity of SPARQL. ACM Transactions on Database Systems (TODS) 34, 3 (2009), 1–45.
[28]
Patrick Rodler, Dietmar Jannach, Konstantin Schekotihin, and Philipp Fleiss. 2019. Are query-based ontology debuggers really helping knowledge engineers?Knowledge-Based Systems 179 (2019), 92–107.
[29]
Patrick Rodler and Wolfgang Schmid. 2018. On the impact and proper use of heuristics in test-driven ontology debugging. In International Joint Conference on Rules and Reasoning. Springer, Berlin, Germany, 164–184.
[30]
Konstantin Schekotihin, Patrick Rodler, and Wolfgang Schmid. 2018. Ontodebug: Interactive ontology debugging plug-in for Protégé. In International Symposium on Foundations of Information and Knowledge Systems. Springer, Berlin, Germany, 340–359.
[31]
Shetal Shah, S Sudarshan, Suhas Kajbaje, Sandeep Patidar, Bhanu Pratap Gupta, and Devang Vira. 2011. Generating test data for killing SQL mutants: A constraint-based approach. In 2011 IEEE 27th International Conference on Data Engineering. IEEE, New York, USA, 1175–1186.
[32]
Ehud Y Shapiro. 1982. Algorithmic program diagnosis. In Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages. ACM, New York, USA, 299–308.
[33]
Josep Silva. 2011. A survey on algorithmic debugging strategies. Advances in engineering software 42, 11 (2011), 976–991.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
DBPL '21: The 18th International Symposium on Database Programming Languages
August 2021
27 pages
ISBN:9781450386463
DOI:10.1145/3475726
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 03 October 2021

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Debugging
  2. SPARQL
  3. Semantic Web

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Funding Sources

  • State Research Agency (AEI) of the Spanish Ministry of Science and Innovation

Conference

DBPL '21

Acceptance Rates

Overall Acceptance Rate 10 of 15 submissions, 67%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 41
    Total Downloads
  • Downloads (Last 12 months)4
  • Downloads (Last 6 weeks)0
Reflects downloads up to 16 Jan 2025

Other Metrics

Citations

Cited By

View all

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media