NLP workspace collaborations
A method, computer system, and computer program product for generating a collaborative platform for collective database retrieval using natural language processing are provided. The embodiment may include receiving a query in natural language format from a user. The embodiment may also include converting the natural language query to a search query language statement using a natural language processing technique. The embodiment may further include validating the user access rights to queried data. The embodiment may also include rendering a response to the query submitted by the user in a personalized manner. The embodiment may further include creating a temporary table based on the response and the query. The embodiment may also include iterating a plurality of processes of validating and processing a plurality of queries of one or more different users using the created temporary table and based on access rights for each of the one or more different users.
1. A computer-implemented method comprising:
receiving a first query of a private database in natural language format from a first user from among a plurality of users assigned to a project, wherein the first query requires access to a table not accessible by a second user;
converting the natural language query to a search query language (SQL) statement using a natural language processing technique, wherein:
the search query is converted to one or more previously-stored SQL statements for searching for certain data from the private database; and
the search query is segmented and stored as one or more individual queries for future reference;
validating user access rights to queried data, the access rights based on an assigned job role of each respective user, wherein a request is made for full access to the queried data for the first user having only partial access to the queried data based on a determination that full access is necessary for the first user;
rendering a response to the query submitted by the first user in a personalized manner;
creating a temporary table for the project based on the response and the query, wherein:
the temporary table includes results of the first query and information that certain data is hidden from the second user from among the plurality of users; and
the information that the certain data is hidden from the second user is distributed to one or more other users from among the plurality of users;
receiving a second query of the private database by the second user of the project, wherein:
the second query is different than the first query; and
the second user has different access to at least one aspect of data requested by the first query;
processing the second query to return a subset of the results of the first query using the results of the first query from the temporary table and based on access rights for the second user; and
creating a summary of structured database queries from the one or more different users.
2. The method of claim 1 , further comprising:
validating each respective users' data access rights when each query is processed.
3. The method of claim 1 , further comprising:
responsive to rendering a response to the query submitted by the first user in the personalized manner, hiding data to which the first user has no access.
4. The method of claim 1 , further comprising:
storing the processed query, query results, and actions taken in connection with the query results in the temporary table.
5. A computer system comprising:
a processor set;
a set of one or more computer-readable storage media; and
program instructions, collectively stored in the set of one or more storage media, for causing the processor set to perform the following computer operations:
receive a first query of a private database in natural language format from a first user from among a plurality of users assigned to a project, wherein the first query requires access to a table not accessible by a second user;
convert the natural language query to a search query language (SQL) statement using a natural language processing technique, wherein:
the search query is converted to one or more previously-stored SQL statements for searching for certain data from the private database; and
the search query is segmented and stored as one or more individual queries for future reference;
validate user access rights to queried data, the access rights based on an assigned job role of each respective user, wherein a request is made for full access to the queried data for the first user having only partial access to the queried data based on a determination that full access is necessary for the first user;
render a response to the query submitted by the first user in a personalized manner;
create a temporary table for the project based on the response and the query, wherein:
the temporary table includes results of the first query and information that certain data is hidden from the second user from among the plurality of users; and
the information that the certain data is hidden from the second user is distributed to one or more other users from among the plurality of users;
receive a second query of the private database by the second user of the project, wherein:
the second query is different than the first query; and
the second user has different access to at least one aspect of data requested by the first query;
process the second query to return a subset of the results of the first query using the results of the first query from the temporary table and based on access rights for the second user; and
create a summary of structured database queries from the one or more different users.
6. The computer system of claim 5 , further comprising:
program instructions, collectively stored in the set of one or more storage media, for causing the processor set to perform the following computer operation:
validate each respective users' data access rights when each query is processed.
7. The computer system of claim 5 , further comprising:
program instructions, collectively stored in the set of one or more storage media, for causing the processor set to perform the following computer operation:
responsive to rendering a response to the query submitted by the first user in the personalized manner, hide data to which the first user has no access.
8. The computer system of claim 5 , further comprising:
program instructions, collectively stored in the set of one or more storage media, for causing the processor set to perform the following computer operation:
store the processed query, query results, and actions taken in connection with the query results in the temporary table.
9. A computer program product comprising:
a set of one or more computer-readable storage media;
program instructions, collectively stored in the set of one or more storage media, for causing a processor set to perform the following computer operations:
receive a first query of a private database in natural language format from a first user from among a plurality of users assigned to a project, wherein the first query requires access to a table not accessible by a second user;
convert the natural language query to a search query language (SQL) statement using a natural language processing technique, wherein:
the search query is converted to one or more previously-stored SQL statements for searching for certain data from the private database; and
the search query is segmented and stored as one or more individual queries for future reference;
validate user access rights to queried data, the access rights based on an assigned job role of each respective user, wherein a request is made for full access to the queried data for the first user having only partial access to the queried data based on a determination that full access is necessary for the first user;
render a response to the query submitted by the first user in a personalized manner;
create a temporary table for the project based on the response and the query, wherein:
the temporary table includes results of the first query and information that certain data is hidden from the second user from among the plurality of users; and
the information that the certain data is hidden from the second user is distributed to one or more other users from among the plurality of users;
receive a second query of the private database by the second user of the project, wherein:
the second query is different than the first query; and
the second user has different access to at least one aspect of data requested by the first query;
process the second query to return a subset of the results of the first query using the results of the first query from the temporary table and based on access rights for the second user; and
create a summary of structured database queries from the one or more different users.
10. The computer program product of claim 9 , further comprising:
program instructions, collectively stored in the set of one or more storage media, for causing the processor set to perform the following computer operation:
validate each respective users' data access rights when each query is processed.
11. The computer program product of claim 9 , further comprising:
program instructions, collectively stored in the set of one or more storage media, for causing the processor set to perform the following computer operation:
responsive to rendering a response to the query submitted by the first user in the personalized manner, hide data to which the first user has no access.
12. The computer program product of claim 9 , further comprising:
program instructions, collectively stored in the set of one or more storage media, for causing the processor set to perform the following computer operation:
store the processed query, query results, and actions taken in connection with the query results in the temporary table.