IP Library Granted Patent US 9,430,523
Granted Patent B2
US 9,430,523 · App. 14/020,664 · Granted Aug 30, 2016

Entity-relationship model extensions using annotations

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,430,523
App. No.
14/020,664
Granted
Aug 30, 2016
Kind
B2
Abstract

Embodiments extend the relational model and language of standard SQL, to recognize features of higher level entity-relationship models (ERMs). Annotation language is implemented in the data design language (DDL) to incorporate tables and entities Using DDL, annotations are typed structures of metadata. Annotations may be used for types, entities and elements. In the query language (QL), annotations may be added to the standard QL. A reflection program may use the metadata of the annotation language for reflection on the tables or entities.

Claims (38)

1. A computer-implemented method comprising:

providing Structured Query Language (SQL) extensions for a relational model of a database described by SQL for use in coding database queries to recognize features of an entity-relationship model (ERM) for an application that stores data in the database,

wherein the SQL extensions include typed data structures for defining entities of the application, associations defining relationships between the entities of the application, and for defining annotations for data models of the application,

wherein the annotations enable defining additional metadata that extends data definitions of an existing data model of the application without requiring developing a new data model or redundant type structures for the application;

in a database query engine configured to query the database:

receiving a database query communicated to the database query engine, wherein the database query is coded in SQL with the SQL extensions;

translating the database query in the database query engine to query the database; and

receiving a query result from the database, wherein the existing data model of the application and the additional metadata defined by the extensions of SQL are processed together at runtime in the database query engine.

2. The computer-implemented method of claim 1 wherein native support for the ERM is added into the database query engine to enable processing of the SQL extensions.

3. The computer-implemented method of claim 1 wherein the annotations are added to a pre-defined view of the ERM.

4. The computer-implemented method of claim 1 wherein the annotations include metadata on types, entities and elements in data model definitions of the ERM.

5. A non-transitory computer readable storage medium embodying a computer program for performing a method, said method comprising:

providing Structured Query Language (SQL) extensions of for a relational model of a database described by SQL for use in coding database queries to recognize features of an entity-relationship model (ERM) for an application that stores data in the database,

wherein the SQL extensions include typed data structures for defining entities of the application, associations defining relationships between the entities of the application, and for defining annotations for data models of the application,

wherein the annotations enable defining additional metadata that extends data definitions of an existing data model of the application without requiring developing a new data model or redundant type structures for the application;

in a database query engine configured to query the database:

receiving a database query communicated to the database query engine, wherein the database query is coded in SQL with the SQL extensions;

translating the database query in the database query engine to query the database; and

receiving a query result from the database, wherein the existing data model of the application and the additional metadata defined by the extensions of SQL are processed together at runtime in the database query engine.

6. A non-transitory computer readable storage medium as in claim 5 wherein native support for the ERM is added into the database query engine to enable processing of the SQL extensions.

7. A non-transitory computer readable storage medium as in claim 5 wherein the annotations are added to a pre-defined view of the ERM.

8. A non-transitory computer readable storage medium as in claim 5 wherein the annotations include metadata on types, entities and elements in data model definitions of the ERM.

9. A system comprising:

a database organized according to a relational model described by a Structured Query Language (SQL);

a database query engine in communication with the database, the database query engine comprising at least one processor and a memory configured to store computer programs, which when executed by the processor, cause the processor to:

provide SQL extensions for the relational model of the database described by SQL for use in coding database queries to recognize features of an entity-relationship model (ERM) for an application that stores data in the database,

wherein the SQL extensions include typed data structures for defining entities of the application, associations defining relationships between the entities of the application, and for defining annotations for data models of the application,

wherein the annotations enable defining additional metadata that extends data definitions of an existing data model of the application without requiring developing a new data model or redundant type structures for the application;

in a database query engine configured to query the database:

receive a database query communicated to the database query engine, wherein the database query is coded in SQL with the SQL extensions;

translate the database query in the database query engine to query the database; and

receive a query result from the database, wherein the existing data model of the application and the additional metadata defined by the extensions of SQL are processed together at runtime in the database query engine.

10. A system as in claim 9 wherein native support for the ERM is added into the database query engine to enable processing of the SQL extensions.

11. A system as in claim 9 wherein the annotations are added to a pre-defined view of the ERM.

12. A system as in claim 9 wherein the annotations include metadata on types, entities and elements in data model definitions of the ERM.

13. The computer-implemented method of claim 1 wherein the typed structures include custom-defined types.

14. The computer-implemented method of claim 1 wherein annotating an entity, object, or element in the data model comprises generating an instance of the annotation type and assigning the instance to the entity, object, or element.

15. The computer-implemented method of claim 1 wherein code of the application that receives data from the database is operable to recover type information for elements of the data model of the application based on the SQL extensions.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2013
From: FALTER, TIMM; HUTZEL, DANIEL; BAEUERLE, STEFAN
To: SAP AG
Reel/Frame 031155/0556 →