Natural Language Interface for Database Query Translation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current database management systems require users to formulate complex Structured Query Language (SQL) queries, which can be cumbersome, especially for users who are not technically inclined, as they need to understand specific query languages like SQL to retrieve or update data from databases.

Innovation Solution

A natural language interface that uses natural language processing (NLP) to automatically convert user-input queries into SQL queries by identifying entities and relations within the database schema, allowing users to interact with databases using everyday language, such as spoken queries on smartphones, and generating appropriate SQL commands for data retrieval or update operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If users learn and use SQL query language to access databases, then data retrieval capability is improved, but user complexity and learning curve increase

Engineering Contradiction:
Improvedata retrieval capabilityVSAvoiduser complexity
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent introduces a natural language processing system as an intermediary layer between the user and the database. This mediator translates user-friendly natural language queries into SQL commands, allowing users to access database functionality without directly learning SQL syntax, thus resolving the contradiction between reliable data retrieval and ease of operation

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the mechanical requirement of learning and typing SQL syntax with an automated natural language processing system. Instead of users manually constructing SQL queries, the system automatically generates appropriate SQL commands from natural language input, substituting the manual mechanical process with an intelligent automated system

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Measurement precision

If SQL queries are used for precise data access, then query accuracy is improved, but query formulation complexity increases

Engineering Contradiction:
Improvequery accuracyVSAvoidquery formulation complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent implements a self-service system where the natural language processing automatically performs the complex task of translating user intent into accurate SQL queries. The system serves itself by generating the appropriate query formulation without requiring user expertise in SQL syntax, maintaining query accuracy while eliminating formulation complexity

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent changes the parameter of query input from structured SQL syntax to unstructured natural language. This parameter change allows users to express queries in everyday language while the system handles the transformation to precise SQL, effectively decoupling query accuracy from formulation complexity

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9959311B2Natural language interface to databases
Publication Date: 2018.05.01 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9959311B2 patent drawing
  • US9959311B2 patent drawing
  • US9959311B2 patent drawing

AI summary

An embodiment of the invention provides a method wherein a natural language query is received from a user with an interface. An ontological representation of data in a database is received with an input port, including names of concepts and names of concept properties. Template rules are received with the input port, the templates rules being language dependent and ontology independent, the template rules including widely used constructs of a language. Rules are automatically generated with a rule generation engine with the ontological representation of the data in the database and the template rules to identify entities and relations in the natural language query. Entities and relations are identified with a processor, the entities and relations being identified in the natural language query with the rules. The structured data language query is generated with a query generation engine from the entities and relations.