IP Library › Granted Patent US 8,903,842
Granted Patent B2
US 8,903,842 · App. 11/925,739 · Granted Dec 2, 2014

Metadata driven reporting and editing of databases

Inventors: Anthony Christopher Bloesch (Vashon, WA); Siddharth Jayadevan (Seattle, WA); James R. Flynn (Seattle, WA); Antony Scott Williams (Mercer Island, WA)
Assignee: Microsoft Corporation
G06F17/30289G06F17/30525
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 8,903,842
App. No.
11/925,739
Granted
Dec 2, 2014
Kind
B2
Abstract

Embodiments described herein are directed to providing enhanced database editing and reporting capabilities. Embodiments include a computer system receiving a database query including a request to edit one or more data items in the database. The computer system determines which data items would be affected by the requested data item edit. Based on the determination, the computer system accesses those data items that would be affected by the requested data item edit. The computer system retrieves metadata for each data item that would be affected by the requested data item edit. The metadata includes information at least partly indicating how the edit is to be performed. The computer system also performs the edit to affect the data items according to at least a portion of the retrieved metadata, regardless of how the edit would otherwise have been performed based on existing knowledge about the affected data items.

Claims (37)

1. At a computer system, a method for providing enhanced database editing capabilities, the method comprising:

receiving a database query including a request to edit one or more data items in the database, a particular one of the data items including first existing metadata that includes information at least partly indicating how edits are to be performed on the particular data item;

determining which data items are impacted by the requested data item edit;

based on the determination, accessing those data items that are impacted by the requested data item edit;

prior to performing the requested data item edit, retrieving database metadata for each of those data items that are impacted by the requested data item edit, including retrieving second database metadata for the particular data item, the second database metadata for the particular data item being generated on-the-fly in response to the database query and including information indicating how the requested data item edit is to be performed on the particular data item, the retrieved second database metadata for the particular data item being different than the first existing metadata for the particular data item, the second database metadata for the particular data item being configured to automatically overwrite the first existing metadata for the particular data item, such that the manner of editing the particular data item is altered according to the retrieved second database metadata; and

performing the requested edit to the particular data item according the retrieved second database metadata for the particular data item, regardless of how the edit would otherwise be performed based on the first existing metadata for the particular data item.

2. The method of claim 1 , wherein at least one of the data items is a schema.

3. The method of claim 1 , wherein one or more of the existing metadata or the database metadata is stored separately in a repository apart from the data items.

4. The method of claim 1 , wherein the editing comprises one or more of creating, replacing, updating and deleting.

5. The method of claim 1 , wherein the potential effects of the requested edit include one or more of creating, replacing, updating and deleting another data item.

6. The method of claim 1 , wherein existing metadata is provided for each data item in the database.

7. The method of claim 1 , wherein the existing metadata includes one or more of: information used to identify data item types, information indicating that the database is to display hints, the identity of properties of data items, and the identity of roles.

8. A computer program product for implementing a method for providing enhanced database editing capabilities, the computer program product comprising one or more computer-readable media having thereon computer-executable instructions that, when executed by one or more processors of the computing system, cause the computing system to perform the method, the method comprising:

receiving a database query including a request to edit one or more data items in the database, a particular one of the data items including first existing metadata that includes information at least partly indicating how edits are to be performed on the particular data item;

determining which data items are impacted by the requested data item edit;

based on the determination, accessing those data items that are impacted by the requested data item edit;

prior to performing the requested data item edit, retrieving database metadata for each of those data items that are impacted by the requested data item edit, including retrieving second database metadata for the particular data item, the second database metadata for the particular data item being generated on-the-fly in response to the database query and including information indicating how the requested data item edit is to be performed on the particular data item, the retrieved second database metadata for the particular data item being different than the first existing metadata for the particular data item, the second database metadata for the particular data item being configured to automatically overwrite the first existing metadata for the particular data item, such that the manner of editing the particular data item is altered according to the retrieved second database metadata; and

performing the requested edit to the particular data item according the retrieved second database metadata for the particular data item, regardless of how the edit would otherwise be performed based on the first existing metadata for the particular data item.

9. The computer program product of claim 8 , wherein the editing comprises one or more of creating, replacing, updating and deleting.

10. The computer program product of claim 8 , wherein the potential effects of the requested edit include one or more of creating, replacing, updating and deleting another data item.

11. The computer program product of claim 8 , wherein existing metadata is provided for each data item in the database.

12. The computer program product of claim 8 , wherein at least one of the data items is a schema.

13. The computer program product of claim 8 , wherein the potential effects of the requested edit include one or more of creating, replacing, updating and deleting another data item.

14. The computer program product of claim 8 , wherein the existing metadata includes one or more of: information used to identify data item types, information indicating that the database is to display hints, the identity of properties of data items, and the identity of roles.

15. A computer system comprising the following:

one or more processors;

one or more computer-readable storage media having stored thereon computer-executable instructions that, when executed by the one or more processors, cause the computing system to perform a method for providing enhanced database editing capabilities, the method comprising:

receiving a database query including a request to edit one or more data items in the database, a particular one of the data items including first existing metadata that includes information at least partly indicating how edits are to be performed on the particular data item;

the one or more processors determining which data items are impacted by the requested data item edit;

based on the determination, accessing those data items that are impacted by the requested data item edit;

prior to performing the requested data item edit, retrieving database metadata for each of those data items that are impacted by the requested data item edit, including retrieving second database metadata for the particular data item, the second database metadata for the particular data item being generated on-the-fly in response to the database query and including information indicating how the requested data item edit is to be performed on the particular data item, the retrieved second database metadata for the particular data item being different than the first existing metadata for the particular data item, the second database metadata for the particular data item being configured to automatically overwrite the first existing metadata for the particular data item, such that the manner of editing the particular data item is altered according to the retrieved second database metadata; and

performing the requested edit to the particular data item according the retrieved second database metadata for the particular data item, regardless of how the edit would otherwise be performed based on the first existing metadata for the particular data item.

16. The computer system of claim 15 , wherein at least one of the data items comprises a schema.

17. The computer system of claim 15 , wherein one or more of the existing metadata or the database metadata is stored separately in a repository apart from the data items.

18. The computer system of claim 15 , wherein the editing comprises one or more of creating, replacing, updating and deleting.

19. The computer system of claim 15 , wherein the potential effects of the requested edit include one or more of creating, replacing, updating and deleting another data item.

20. The computer system of claim 15 , wherein the existing metadata includes one or more of: information used to identify data item types, information indicating that the database is to display hints, the identity of properties of data items, and the identity of roles.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034542/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 27, 2007
From: BLOESCH, ANTHONY CHRISTOPHER; JAYADEVAN, SIDDHARTH; FLYNN, JAMES R.; WILLIAMS, ANTONY SCOTT
To: MICROSOFT CORPORATION
Reel/Frame 020159/0646 →
Continuity (1)
Related Publication 20090112801A1 · Apr 30, 2009