US9613117B1ActiveUtility

Declarative driver

83
Assignee: PROGRESS SOFTWARE CORPPriority: Dec 11, 2013Filed: Dec 11, 2013Granted: Apr 4, 2017
Est. expiryDec 11, 2033(~7.4 yrs left)· nominal 20-yr term from priority
G06F 17/30569G06F 16/196G06F 9/44526G06F 16/901G06F 16/258
83
PatentIndex Score
14
Cited by
5
References
20
Claims

Abstract

A system and method for building a driver are disclosed. In one embodiment, the system includes one or more processors and a memory storing instructions that, when executed by the processor, cause the system to: obtain an interface description; obtain at least one mapping rule; operate a flow controller that controls a flow of operations, the operations using one or more of the interface description and the at least one mapping rule; obtain a protocol adapter; and implement access to a data source based on the operation of the flow controller using the obtained protocol adapter.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method comprising:
 obtaining, using one or more processors, an interface description during declarative driver framework based creation of a driver to access a cloud-based data source; 
 obtaining, using one or more processors, during declarative driver framework based creation of the driver to access the cloud-based data source, at least one mapping rule for converting a query from a first semantic space associated with a client and using a first formal language to a second semantic space associated with the cloud-based data source that stores data associated with the query, wherein the cloud-based data source may or may not use a formal language; 
 the driver operating a flow controller that controls a flow of operations, the operations using one or more of the interface description and the at least one mapping rule, wherein the flow of operations includes converting the query from the first semantic space associated with the client and using the first formal language to the second semantic space associated with the cloud-based data source that stores data associated with the query; 
 obtaining, using one or more processors, a protocol adapter during declarative driver framework based creation of the driver to access the cloud-based data source; and 
 the driver implementing access to a data source based on the operation of the flow controller using the obtained protocol adapter. 
 
     
     
       2. The method of  claim 1 , wherein the interface description includes a declarative file written in a platform or data source agnostic language. 
     
     
       3. The method of  claim 1 , wherein obtaining the interface description comprises:
 receiving a schema description, the schema description defining a logical schema for the cloud-based data source. 
 
     
     
       4. The method of  claim 1 , wherein obtaining the interface description comprises:
 receiving a set of query conditions; and 
 receiving a definition of one or more service identification rules for the set of query conditions. 
 
     
     
       5. The method of  claim 1 , wherein obtaining the at least one data mapping rule comprises:
 receiving a mapping rule for mapping a query from a client to a data source request; and 
 receiving a mapping rule for mapping a data source response to a logical schema defined by a schema description. 
 
     
     
       6. The method of  claim 1 , comprising:
 reading the interface description; and 
 receiving a query originating from a client. 
 
     
     
       7. The method of  claim 6 , wherein operating the flow controller comprises:
 retrieving, from the at least one mapping rule, one or more rules for mapping the query to a data source request; 
 parsing query to get search conditions; 
 converting the query from one semantic space to another semantic space based on one or more service identification rules. 
 
     
     
       8. The method of  claim 1 , further comprising:
 modifying one or more of the interface description, the at least one mapping rule and the protocol adapter that is obtained; and 
 implementing access to a different data source. 
 
     
     
       9. A system comprising:
 a processor; and 
 a memory storing instructions that, when executed, cause the system to:
 obtain an interface description during declarative driver framework based creation of a driver to access a cloud-based data source; 
 obtain, during the declarative driver framework based creation of the driver to access the cloud-based data source, at least one mapping rule for converting a query from a first semantic space associated with a client and using a first formal language to a second semantic space associated with the cloud-based data source that stores data associated with the query, wherein the cloud-based data source may or may not use a formal language; 
 operate a flow controller that controls a flow of operations, the operations using one or more of the interface description and the at least one mapping rule, wherein the flow of operations includes converting the query from the first semantic space associated with the client and using the first formal language to the second semantic space associated with the cloud-based data source that stores data associated with the query; 
 obtain a protocol adapter during the declarative driver framework based creation of the driver to access the cloud-based data source; and 
 implement access to the cloud-based data source based on the operation of the flow controller using the obtained protocol adapter. 
 
 
     
     
       10. The system of  claim 9 , wherein the interface description includes a declarative file written in a platform or data source agnostic language. 
     
     
       11. The system of  claim 9 , wherein the instructions stored in the memory that, when executed, cause the system to obtain the interface description comprise:
 instructions stored in the memory that, when executed, cause the system to:
 receive a schema description, the schema description defining a logical schema for the cloud based data source. 
 
 
     
     
       12. The system of  claim 9 , wherein the instructions stored in the memory that, when executed, cause the system to obtain the interface description comprise:
 instructions stored in the memory that, when executed, cause the system to:
 receiving a set of query conditions; and 
 receiving a definition of one or more service identification rules for the set of query conditions. 
 
 
     
     
       13. The system of  claim 9 , wherein the instructions stored in the memory that, when executed, cause the system to obtain the at least one data mapping rule comprise:
 instructions stored in the memory that, when executed, cause the system to:
 receive a mapping rule for mapping a query from a client to a data source request; and 
 receive a mapping rule for mapping a data source response to a logical schema defined by a schema description. 
 
 
     
     
       14. The system of  claim 9 , wherein the instructions stored in the memory further include instructions that, when executed, cause the system to:
 read the interface description; and 
 receive a query originating from a client. 
 
     
     
       15. The system of  claim 14 , wherein the instructions stored in the memory further include instructions that, when executed, cause the system to:
 retrieve from the at least one mapping rule, one or more rules for mapping the query to a data source request; 
 parse a query to get search conditions; 
 convert the query from one semantic space to another semantic space based on one or more service identification rules. 
 
     
     
       16. The system of  claim 9 , wherein the instructions stored in the memory further include instructions that, when executed, cause the system to:
 modify one or more of the interface description, the at least one mapping rule and the protocol adapter that is obtained; and 
 implement access to a different data source. 
 
     
     
       17. A computer program product comprising a computer usable medium including a computer readable program, wherein the computer readable program when executed on a computing device causes the computing device to:
 obtain an interface description during declarative driver framework based creation of a driver to access a cloud-based data source; 
 obtain, during the declarative driver framework based creation of the driver to access the cloud-based data source, at least one mapping rule for converting a query from a first semantic space associated with a client and using a first formal language to a second semantic space associated with the cloud-based data source that stores data associated with the query, wherein the cloud-based data source may or may not use a formal language; 
 operate a flow controller that controls a flow of operations, the operations using one or more of the interface description and the at least one mapping rule, wherein the flow of operations includes converting the query from the first semantic space associated with the client and using the first formal language to the second semantic space associated with the cloud-based data source that stores data associated with the query; 
 obtain a protocol adapter during the declarative driver framework based creation of the driver to access the cloud-based data source; and 
 implement access to the cloud based data source based on the operation of the flow controller using the obtained protocol adapter. 
 
     
     
       18. The computer program product of  claim 17  wherein the computer readable program when executed on a computing device causes the computing device to:
 receive a schema description, the schema description defining a logical schema for the cloud-based data source. 
 
     
     
       19. The computer program product of  claim 17  wherein the computer readable program when executed on a computing device causes the computing device to:
 receiving a set of query conditions; and 
 receiving a definition of one or more service identification rules for the set of query conditions. 
 
     
     
       20. The computer program product of  claim 17  wherein the computer readable program when executed on a computing device causes the computing device to:
 receive a mapping rule for mapping a query from a client to a data source request; and 
 receive a mapping rule for mapping a data source response to a logical schema defined by a schema description.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.