IP Library Granted Patent US 9,898,502
Granted Patent B2
US 9,898,502 · App. 14/793,199 · Granted Feb 20, 2018

System and method for executing a SPARQL query

Inventors: Snehasis Banerjee (Kolkata, IN); Debnath Mukherjee (Kolkata, IN)
Assignee: Tata Consultancy Services Limited
G06F17/30404G06F17/30392G06F17/30522G06F17/30528G06F17/30864
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,898,502
App. No.
14/793,199
Granted
Feb 20, 2018
Kind
B2
Abstract

The present disclosure provides system and method for executing SPARQL query on a SPARQL engine. For executing the SPARQL query, a function may be instantly integrated with the SPARQL query which leads to extension of the SPARQL query. The extension may be achieved through a user friendly interface which may allow transparent integration of code (i.e., the function) in any language such as JAVA, C, C++ and the like, supporting a particular functionality. The system may integrate the code by addition of newly added code to the SPARQL library after validation. Further, the system may analyze the functionality associated with the code to optimize decision making of a user. The system may further support auto compilation and rating of the functions based on the user feedback and re-usability of the code working in a collaborative environment. Further the system may enable also enable to integrate external tools and web services.

Claims (49)

1. A method for executing a Simple Protocol and Resource Development Framework (RDF) Query Language (SPARQL) query on a SPARQL engine, the method comprising:

receiving, by a processor, a SPARQL query from a user, wherein the SPARQL query is linked with a specific requirement of the user;

determining, by the processor, a status of a function in a SPARQL function library, wherein the status comprises a presence of the function or an absence of the function;

enabling, by the processor, the user to:

i. check whether the function meets the specific requirement of the user when the status indicates presence of the function, and

ii. check whether a separate function of similar functionality is required to meet the specific requirement of the user when the status indicates absence of the function, and

iii. select at least one of a user-defined function and an external function, wherein the user-defined function and the external function correspond to a programming language other than a SPARQL query language, and wherein the at least one of the user-defined function and the external function is instantly integrated into the SPARQL function library; and

executing, by the processor, the SPARQL query, on the SPARQL engine, using one of:

the function present in the SPARQL library function, or

the at least one of the user-defined function and the external function.

2. The method of claim 1 , further comprising enabling the user to request for the function by typing name of the function.

3. The method of claim 2 , further comprising suggesting one or more functions based on the name of the function requested by the user and the specific requirement of the user, wherein the one or more functions are present in the SPARQL function library, and wherein the one or more functions and the function requested by the user have a similar functionality.

4. The method of claim 1 , wherein the at least one of the user-defined function and the external function comprises a metadata further comprising function id, rating, time and space coordinates, associated developer, and last modified, and wherein the at least one of the user-defined function and the external function comprises a set of software code.

5. The method of claim 1 , further comprising performing a static validation, compilation validation, run-time validation, and a black box testing for the at least one of the user-defined function and the external function, and wherein the:

static validation comprises static analysis of the set of software code, performing syntax error check, and coding errors check,

compilation validation comprises performing a check to verify whether the set of software code is compiled,

run-time validation comprises performing a check for any run-time errors in the set of software code using a test input, and

black box testing is performed based on user's input.

6. The method of claim 1 , further comprising enriching the SPARQL function library by inclusion of highly rated functions, wherein the functions are rated by the user on a basis of operability for other data types.

7. The method of claim 1 , further comprising enriching the SPARQL function library, wherein output of one function is passed as input to another function.

8. A system for executing a Simple Protocol and Resource Development Framework (RDF) Query Language (SPARQL) query on a SPARQL engine, wherein the system comprises:

a processor; and

a memory coupled with the processor, wherein the processor executes a set of instructions stored in the memory to:

receive a SPARQL query from a user, wherein the SPARQL query is linked with a specific requirement of the user;

determine, by the processor, a status of a function in a SPARQL function library, wherein the status comprises a presence of the function or an absence of the function;

enable the user to:

i. check whether the function meets the specific requirement of the user when the status indicates presence of the function,

ii. check whether a separate function of similar functionality is required to meet the specific requirement of the user when the status indicates absence of the function, and

select at least one of a user-defined function and an external function, wherein the user-defined function and the external function correspond to a programming language other than a SPARQL query language, and wherein the at least one of the user-defined function and the external function is instantly integrated into the SPARQL function library; and

execute, by the processor, the SPARQL query, on the SPARQL engine, using one of:

the function present in the SPARQL library function, or the least one of the user-defined function and the external function.

9. The system of claim 8 , further enables the user to request for the function by typing name of the function.

10. The system of claim 9 , further suggests the one or more functions based on the name of the function requested by the user and the specific requirement of the user, wherein the one or more functions are present in the SPARQL function library, and wherein the one or more functions and the function requested by the user have a similar functionality.

11. The system of claim 8 , wherein the at least one of the user-defined function and the external function comprises a metadata further comprising function id, rating, time and space coordinates, associated developer, and last modified, and wherein the at least one of the user-defined function and the external function comprises a set of software code.

12. The system of claim 8 , further performs a static validation, compilation validation, run-time validation, and a black box testing for the at least one of the user-defined function and the external function, and wherein the:

static validation comprises static analysis of the set of software code, performing syntax error check, and coding errors check,

compilation validation comprises performing a check to verify whether the set of software code is compiled,

run-time validation comprises performing a check for any run-time errors in the set of software code using a test input, and

black box testing is performed based on user's input.

13. A non-transitory computer readable medium embodying a program executable in a computing device for executing a Simple Protocol and Resource Development Framework (RDF) Query Language (SPARQL) query on a SPARQL engine, the program comprising:

a program code for receiving a SPARQL query from a user, wherein the SPARQL query is linked with a specific requirement of the user;

a program code for determining a status of a function in a SPARQL function library, wherein the status comprises a presence of the function or an absence of the function;

a program code for enabling the user to:

i. check whether the function meets the specific requirement of the user when the status indicates presence of the function,

ii. check whether a separate function of similar functionality is required to meet the specific requirement of the user when the status indicates absence of the function, and

select at least one of a user-defined function and an external function, wherein the user-defined function and the external function correspond to a programming language other than a SPARQL query language, and wherein the at least one of the user-defined function and the external function is instantly integrated into the SPARQL function library; and

a program code for executing the SPARQL query, on a SPARQL engine, using one of:

the function present in the SPARQL library function, or

the least one of the user-defined function and the external function.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE CITY PREVIOUSLY RECORDED AT REEL: 039307 FRAME: 0713. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT . Recorded Sep 12, 2016
From: SUO, ZUCAI
To: THE OHIO STATE UNIVERSITY
Reel/Frame 040004/0179 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 9, 2015
From: BANERJEE, SNEHASIS; MUKHERJEE, DEBNATH
To: TATA CONSULTANCY SERVICES LIMITED
Reel/Frame 036767/0943 →
Priority Claims (1)
IN 2388/MUM/2014 · Jul 24, 2014 · national
Continuity (1)
Related Publication 20160026680A1 · Jan 28, 2016