IP Library Granted Patent US 8,914,350
Granted Patent B2
US 8,914,350 · App. 13/873,043 · Granted Dec 16, 2014

Flexible metadata composition

Inventors: Lawrence W. Osterman (Woodinville, WA); Harold L. Pierson, III (Redmond, WA); Elliot H. Omiya (Kirkland, WA); Martyn S. Lovell (Seattle, WA); Mahesh Prakriya (Redmond, WA); Stephen C. Rowe (Bellevue, WA); Tassaduq H. Basu (Redmond, WA); Robert A. Wlodarczyk (Issaquah, WA); Wei Zeng (Sammamish, WA); Neeraj N. Wadhwa (Kirkland, WA); Shakeel I. Solkar (Sammamish, WA); Michael Aksionkin (Redmond, WA)
Assignee: Microsoft Corporation
G06F17/30123G06F17/301
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,914,350
App. No.
13/873,043
Granted
Dec 16, 2014
Kind
B2
Abstract

Various embodiments provide an ability to abstract type resolution between multiple type systems. At least one type can be described in one or more programmatically accessible file(s). In some embodiments, an application using a different type system can programmatically access and resolve a type of the at least one type system without knowledge of a location of where a description of the type resides. Alternately or additionally, type descriptions contained in the one or more programmatically accessible file(s) can be analyzed and restructured into one or more new programmatically accessible file(s) based, at least in part, upon the type descriptions.

Claims (32)

1. A computer-implemented method comprising:

receiving one or more input criteria associated with generating one or more output files, at least one input criteria associated with a namespace hierarchy;

receiving one or more input metadata files that include information associated with at least one type contained within the namespace hierarchy, the information associated with the at least one type comprising type resolution information described with an abstract type system;

responsive to receiving the one or more input metadata files, reorganizing the information associated with the at least one type based, at least in part, on the one or more input criteria; and

generating at least one output metadata file configured to include the reorganized information associated with the at least one type.

2. The computer-implemented method of claim 1 , the at least one output metadata file utilizing a naming convention based, at least in part, on the namespace hierarchy.

3. The computer-implemented method of claim 1 , the at least one input criteria associated with a namespace hierarchy comprising a criteria specifying a level of namespace hierarchy at which to partition the information into the one or more output files.

4. The computer-implemented method of claim 1 , the at least one type comprising an object-oriented class.

5. The computer-implemented method of claim 1 , the method further comprising analyzing the information associated with the at least one type for namespace hierarchy information.

6. The computer-implemented method of claim 1 , the method further comprising receiving a request to search the at least one output metadata file.

7. The computer-implemented method of claim 6 , wherein the received request to search the at least one output metadata file specifies a namespace hierarchy level.

8. The computer-implemented method of claim 1 , the information associated with the at least one type comprising object-oriented associations.

9. The computer-implemented method of claim 1 , the abstract type system being a type system that is independent of a specific programming language.

10. One or more computer-readable hardware storage memories comprising computer readable instructions which, responsive to execution, implement operations comprising:

receiving one or more input criteria associated with generating one or more output files, at least one input criteria specifying a namespace hierarchy;

receiving one or more input files that include information associated with at least one type contained within the namespace hierarchy, the at least one type representing functionality provided by an operating system and the information associated with the at least one type comprising type resolution information described with an abstract type system; and

generating at least one output metadata file configured to include the information associated with the at least one type reorganized based, at least in part, on the one or more input criteria.

11. The one or more computer-readable hardware storage memories of claim 10 , the at least one output metadata file utilizing a naming convention based, at least in part, on the namespace hierarchy.

12. The one or more computer-readable hardware storage memories of claim 10 , the at least one output metadata file containing a description associated with an operating system software interface.

13. The one or more computer-readable hardware storage memories of claim 10 , the at least one input criteria specifying a namespace hierarchy comprising a criteria specifying a level of namespace hierarchy at which to partition the information into the one or more output files.

14. The one or more computer-readable hardware storage memories of claim 10 , the at least one type comprising an object-oriented class.

15. The one or more computer-readable hardware storage memories of claim 10 , the method further comprising analyzing the information associated with the at least one type for namespace hierarchy information.

16. A system, comprising:

one or more processors; and

memory, communicatively coupled to the one or more processors, storing instructions that, responsive to execution, configure the one or more processors to:

receive one or more input criteria associated with generating one or more output files, at least one input criteria associated with a first level of a namespace hierarchy;

receive one or more input metadata files that include information associated with at least one type contained within the namespace hierarchy, the information associated with the at least one type comprising type resolution information described with an abstract type system; and

generate one or more output metadata files configured to include the information associated with the at least one type regrouped based, at least in part, on the one or more input criteria such that the regrouped information includes the first level of the namespace hierarchy and a second level of the namespace hierarchy.

17. The system of claim 16 , the one or more output metadata files configured to describe the at least one type independent of a specific programming language.

18. The system of claim 16 , the one or more processors further configured to search the one or more output metadata files for a file with a filename that matches a namespace of the at least one type.

19. The system of claim 16 , the one or more processors further configured to search the one or more output metadata files without knowledge of a location of where the at least one type resides.

20. The system of claim 16 , the one or more processors further configured to resolve another type system through access to the one or more output metadata files.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 039025/0454 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 29, 2014
From: OSTERMAN, LAWRENCE W.; PIERSON, HAROLD L.; OMIYA, ELLIOT H.; LOVELL, MARTYN S.; PRAKRIYA, MAHESH; ROWE, STEPHEN C.; BASU, TASSADUQ H.; WLODARCZYK, ROBERT A.; ZENG, WEI; WADHWA, NEERAJ N.; SOLKAR, SHAKEEL I.; AKSIONKIN, MICHAEL
To: MICROSOFT CORPORATION
Reel/Frame 034063/0348 →
Continuity (2)
Division 13229697 · Sep 10, 2011
Related Publication 20140149437A1 · May 29, 2014