scispace - formally typeset
Search or ask a question
Author

Paolo Guagliardo

Bio: Paolo Guagliardo is an academic researcher from University of Edinburgh. The author has contributed to research in topics: SQL & Null (SQL). The author has an hindex of 10, co-authored 33 publications receiving 472 citations. Previous affiliations of Paolo Guagliardo include Free University of Bozen-Bolzano.

Papers
More filters
Proceedings ArticleDOI
27 May 2018
TL;DR: This work describes Cypher 9, which is the first version of the language governed by the openCypher Implementers Group, and introduces the language by example, and provides a formal semantic definition of the core read-query features of Cypher, including its variant of the property graph data model.
Abstract: The Cypher property graph query language is an evolving language, originally designed and implemented as part of the Neo4j graph database, and it is currently used by several commercial database products and researchers. We describe Cypher 9, which is the first version of the language governed by the openCypher Implementers Group. We first introduce the language by example, and describe its uses in industry. We then provide a formal semantic definition of the core read-query features of Cypher, including its variant of the property graph data model, and its ASCII Art graph pattern matching mechanism for expressing subgraphs of interest to an application. We compare the features of Cypher to other property graph query languages, and describe extensions, at an advanced stage of development, which will form part of Cypher 10, turning the language into a compositional language which supports graph projections and multiple named graphs.

353 citations

Journal ArticleDOI
01 Sep 2017
TL;DR: The first formal proof of the equivalence of basic SQL and relational algebra that extends to bag semantics and nulls is given, and it is proved that three-valued logic employed by SQL does not add expressive power, as every SQL query can be evaluated under the usual two-valued Boolean semantics of conditions.
Abstract: While formal semantics of theoretical languages underlying SQL have been provided in the past, they all made simplifying assumptions ranging from changes in the syntax to omitting bag semantics and nulls. This situation is reminiscent of what happens in the field of programming languages, where semantics of formal calculi underlying the main features of languages are abundant, but formal semantics of real languages that people use are few and far between.We consider the basic class of SQL queries --- essentially SELECT-FROM-WHERE queries with subqueries, set/bag operations, and nulls --- and define a formal semantics for it, without any departures from the real language. This fragment already requires decisions related to the data model and handling variable names that are normally disregarded by simplified semantics. To justify our choice of the semantics, we validate it experimentally on a large number of randomly generated queries and databases.We give two applications of the semantics. One is the first formal proof of the equivalence of basic SQL and relational algebra that extends to bag semantics and nulls. The other application looks at the three-valued logic employed by SQL, which is universally assumed to be necessary to handle nulls. We prove however that this is not so, as three-valued logic does not add expressive power: every SQL query in our fragment can be evaluated under the usual two-valued Boolean semantics of conditions.

55 citations

Proceedings ArticleDOI
15 Jun 2016
TL;DR: The overall conclusion is that correct evaluation can be realistically achieved in the presence of nulls, at least for the SQL fragment that corresponds to first-order queries.
Abstract: Multiple issues with SQL's handling of nulls have been well documented. Having efficiency as its key goal, evaluation of SQL queries disregards the standard notion of correctness on incomplete databases - certain answers - due to its high complexity. As a result, it may produce answers that are just plain wrong. It was recently shown that SQL evaluation can be modified, at least for first-order queries, to return only correct answers. But while these modifications came with good theoretical complexity bounds, they have not been tested in practice. The goals of this proof-of-concept paper are to understand whether wrong answers can be produced by SQL queries in real-world scenarios, and whether proposed techniques for avoiding them can be made practically feasible.We use the TPC-H benchmark, and show that for some typical queries involving negation, wrong answers are very common. On the other hand, existing solutions for fixing the problem do not work in practice at all. By analyzing the reasons for this, we come up with a new modified way of rewriting SQL queries that restores correctness. We conduct experiments which show the feasibility of our solution: the small price tag it imposes can be often tolerated to ensure correct results, and we do not miss correct answers that the usual SQL evaluation produces. The overall conclusion is that correct evaluation can be realistically achieved in the presence of nulls, at least for the SQL fragment that corresponds to first-order queries.

45 citations

Journal Article
TL;DR: This paper presents a formal framework and tool supporting the user in the task of formulating a precise query – which best captures their information needs – even in the case of complete ignorance of the vocabulary of the underlying information system holding the data.
Abstract: In this paper we present a formal framework and tool supporting the user in the task of formulating a precise query – which best captures their information needs – even in the case of complete ignorance of the vocabulary of the underlying information system holding the data. Our intelligent interface is driven by means of appropriate automated reasoning techniques over an ontology describing the domain of the data in the information system. We will define what a query is and how it is internally represented, which operations are available to the user in order to modify the query and how contextual feedback is provided about it presenting only relevant pieces of information. We will then describe the elements that constitute the query interface available to the user, providing visual access to the underlying reasoning services and operations for query manipulation. Lastly, we will define a suitable representation in “linear form”, starting from which the query can be more easily expressed in natural language.

29 citations

01 Jan 2010
TL;DR: This paper presents a formal framework and an experimental software supporting the user in the task of formulating a precise query ‐ which best captures their information needs ‐ even in the case of complete ignorance of the vocabulary of the underlying information system holding the data.
Abstract: In this paper we present a formal framework and an experimental software supporting the user in the task of formulating a precise query ‐ which best captures their information needs ‐ even in the case of complete ignorance of the vocabulary of the underlying information system holding the data. Our intelligent interface is driven by means of appropriate automated reasoning techniques over an ontology describing the domain of the data in the information system. We will define what a query is and how it is internally represented, which operations are available to the user in order to modify the query and how contextual feedback is provided about it presenting only relevant pieces of information. We will then describe the elements that constitute the query interface available to the user, providing visual access to the underlying reasoning services and operations for query manipulation. Lastly, we will define a suitable representation in “linear form”, starting from which the query can be more easily expressed in natural language. Author Keywords

25 citations


Cited by
More filters
Journal ArticleDOI

784 citations

Journal ArticleDOI
TL;DR: The historical events that lead to the interweaving of data and knowledge are tracked to help improve knowledge and understanding of the world around us.
Abstract: In this paper we provide a comprehensive introduction to knowledge graphs, which have recently garnered significant attention from both industry and academia in scenarios that require exploiting diverse, dynamic, large-scale collections of data. After some opening remarks, we motivate and contrast various graph-based data models and query languages that are used for knowledge graphs. We discuss the roles of schema, identity, and context in knowledge graphs. We explain how knowledge can be represented and extracted using a combination of deductive and inductive techniques. We summarise methods for the creation, enrichment, quality assessment, refinement, and publication of knowledge graphs. We provide an overview of prominent open knowledge graphs and enterprise knowledge graphs, their applications, and how they use the aforementioned techniques. We conclude with high-level future research directions for knowledge graphs.

560 citations

Journal ArticleDOI
Louis K. Scheffer1, C. Shan Xu1, Michał Januszewski2, Zhiyuan Lu1, Zhiyuan Lu3, Shin-ya Takemura1, Kenneth J. Hayworth1, Gary B. Huang1, Kazunori Shinomiya1, Jeremy Maitlin-Shepard2, Stuart Berg1, Jody Clements1, Philip M Hubbard1, William T. Katz1, Lowell Umayam1, Ting Zhao1, David G. Ackerman1, Tim Blakely2, John A. Bogovic1, Tom Dolafi1, Dagmar Kainmueller1, Takashi Kawase1, Khaled Khairy1, Laramie Leavitt2, Peter H. Li2, Larry Lindsey2, Nicole Neubarth1, Donald J. Olbris1, Hideo Otsuna1, Eric T. Trautman1, Masayoshi Ito4, Masayoshi Ito1, Alexander Shakeel Bates5, Jens Goldammer1, Jens Goldammer6, Tanya Wolff1, Robert Svirskas1, Philipp Schlegel5, Erika Neace1, Christopher J Knecht1, Chelsea X Alvarado1, Dennis A Bailey1, Samantha Ballinger1, Jolanta A. Borycz3, Brandon S Canino1, Natasha Cheatham1, Michael A Cook1, Marisa Dreher1, Octave Duclos1, Bryon Eubanks1, Kelli Fairbanks1, Samantha Finley1, Nora Forknall1, Audrey Francis1, Gary Patrick Hopkins1, Emily M Joyce1, SungJin Kim1, Nicole A Kirk1, Julie Kovalyak1, Shirley Lauchie1, Alanna Lohff1, Charli Maldonado1, Emily A Manley1, Sari McLin3, Caroline Mooney1, Miatta Ndama1, Omotara Ogundeyi1, Nneoma Okeoma1, Christopher Ordish1, Nicholas Padilla1, Christopher Patrick1, Tyler Paterson1, Elliott E Phillips1, Emily M Phillips1, Neha Rampally1, Caitlin Ribeiro1, Madelaine K Robertson3, Jon Thomson Rymer1, Sean M Ryan1, Megan Sammons1, Anne K Scott1, Ashley L Scott1, Aya Shinomiya1, Claire Smith1, Kelsey Smith1, Natalie L Smith1, Margaret A Sobeski1, Alia Suleiman1, Jackie Swift1, Satoko Takemura1, Iris Talebi1, Dorota Tarnogorska3, Emily Tenshaw1, Temour Tokhi1, John J. Walsh1, Tansy Yang1, Jane Anne Horne3, Feng Li1, Ruchi Parekh1, Patricia K. Rivlin1, Vivek Jayaraman1, Marta Costa7, Gregory S.X.E. Jefferis5, Gregory S.X.E. Jefferis7, Kei Ito1, Kei Ito6, Kei Ito4, Stephan Saalfeld1, Reed A. George1, Ian A. Meinertzhagen1, Ian A. Meinertzhagen3, Gerald M. Rubin1, Harald F. Hess1, Viren Jain2, Stephen M. Plaza1 
07 Sep 2020-eLife
TL;DR: Improved methods are summarized and the circuitry of a large fraction of the brain of the fruit fly Drosophila melanogaster is presented, reducing the effort needed to answer circuit questions and providing procedures linking the neurons defined by the analysis with genetic reagents.
Abstract: Animal brains of all sizes, from the smallest to the largest, work in broadly similar ways. Studying the brain of any one animal in depth can thus reveal the general principles behind the workings of all brains. The fruit fly Drosophila is a popular choice for such research. With about 100,000 neurons – compared to some 86 billion in humans – the fly brain is small enough to study at the level of individual cells. But it nevertheless supports a range of complex behaviors, including navigation, courtship and learning. Thanks to decades of research, scientists now have a good understanding of which parts of the fruit fly brain support particular behaviors. But exactly how they do this is often unclear. This is because previous studies showing the connections between cells only covered small areas of the brain. This is like trying to understand a novel when all you can see is a few isolated paragraphs. To solve this problem, Scheffer, Xu, Januszewski, Lu, Takemura, Hayworth, Huang, Shinomiya et al. prepared the first complete map of the entire central region of the fruit fly brain. The central brain consists of approximately 25,000 neurons and around 20 million connections. To prepare the map – or connectome – the brain was cut into very thin 8nm slices and photographed with an electron microscope. A three-dimensional map of the neurons and connections in the brain was then reconstructed from these images using machine learning algorithms. Finally, Scheffer et al. used the new connectome to obtain further insights into the circuits that support specific fruit fly behaviors. The central brain connectome is freely available online for anyone to access. When used in combination with existing methods, the map will make it easier to understand how the fly brain works, and how and why it can fail to work correctly. Many of these findings will likely apply to larger brains, including our own. In the long run, studying the fly connectome may therefore lead to a better understanding of the human brain and its disorders. Performing a similar analysis on the brain of a small mammal, by scaling up the methods here, will be a likely next step along this path.

546 citations

Proceedings ArticleDOI
27 May 2018
TL;DR: This work describes Cypher 9, which is the first version of the language governed by the openCypher Implementers Group, and introduces the language by example, and provides a formal semantic definition of the core read-query features of Cypher, including its variant of the property graph data model.
Abstract: The Cypher property graph query language is an evolving language, originally designed and implemented as part of the Neo4j graph database, and it is currently used by several commercial database products and researchers. We describe Cypher 9, which is the first version of the language governed by the openCypher Implementers Group. We first introduce the language by example, and describe its uses in industry. We then provide a formal semantic definition of the core read-query features of Cypher, including its variant of the property graph data model, and its ASCII Art graph pattern matching mechanism for expressing subgraphs of interest to an application. We compare the features of Cypher to other property graph query languages, and describe extensions, at an advanced stage of development, which will form part of Cypher 10, turning the language into a compositional language which supports graph projections and multiple named graphs.

353 citations

Journal ArticleDOI
Tobias Kuhn1
TL;DR: A comprehensive survey of existing English-based Natural Language Controlled Natural Language (CNL) can be found in this article, where the authors provide a common terminology and a common model for CNL, to contribute to the understanding of their general nature, to provide a starting point for researchers interested in the area and to help developers to make design decisions.
Abstract: What is here called controlled natural language CNL has traditionally been given many different names. Especially during the last four decades, a wide variety of such languages have been designed. They are applied to improve communication among humans, to improve translation, or to provide natural and intuitive representations for formal notations. Despite the apparent differences, it seems sensible to put all these languages under the same umbrella. To bring order to the variety of languages, a general classification scheme is presented here. A comprehensive survey of existing English-based CNLs is given, listing and describing 100 languages from 1930 until today. Classification of these languages reveals that they form a single scattered cloud filling the conceptual space between natural languages such as English on the one end and formal languages such as propositional logic on the other. The goal of this article is to provide a common terminology and a common model for CNL, to contribute to the understanding of their general nature, to provide a starting point for researchers interested in the area, and to help developers to make design decisions.

308 citations