US7284240B1
Expired / Lapsed
US
⏱️ 0.0 years remaining
API schema language and transformation techniques
Assignee: Microsoft Technology Licensing LLC
•
Filing: 2002-02-14
•
Granted: 2007-10-16
•
Expires: 2022-02-14
Abstract
Abstract An API schema language and transformation techniques allow an application programming interface to be defined in a markup language. This interface definition can then be transformed into a non-markup language source file. Examples of transformation techniques include techniques to transform the interface definition into a component object model (COM) header file, a documentation file that describes the contents of the non-markup language source file, and a proxy object code file.
Inventors
- 👤 Eric B. Fleegal
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-03 05:33
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/40; G06F8/51; Y; Y10; Y10S; Y10S707/00; Y10S707/99941; Y10S707/99944; Y10S707/99945; Y10S707/99948
Claims Analysis
Total Claims: 22
Claim 1
Independent Claim
168 words
One or more computer storage media having stored thereon a plurality of instructions that, when executed by a transformation engine comprising a series of instructions executed by one or more processors, causes the transformation engine to: access a plurality of constructs in an application programming interface description, wherein the description is written in an extensible markup language (XML) format; and transform each of the plurality of constructs into computer executable instructions and declarations for a component object module (COM) application programming interface header file, wherein to transform one or more of the plurality of constructs is to: check an attribute of a declare enumeration construct of the plurality of constructs to determine whether the declare enumeration construct is to be transformed into a series of manifest constants or into a component object model enumeration declaration; and transform the declare enumeration construct into the component object model enumeration declaration if the attribute has a first value, and otherwise transform the declare enumeration construct into the series of manifest constants.
Claim 2
Dependent Claim
168 words
One or more computer storage media having stored thereon a plurality of instructions that, when executed by a transformation engine comprising a series of instructions executed by one or more processors, causes the transformation engine to: access a plurality of constructs in an application programming interface description, wherein the description is written in an extensible markup language (XML) format; and transform each of the plurality of constructs into computer executable instructions and declarations for a component object module (COM) application programming interface header file, wherein to transform one or more of the plurality of constructs is to: check an attribute of a declare enumeration construct of the plurality of constructs to determine whether the declare enumeration construct is to be transformed into a series of manifest constants or into a component object model enumeration declaration; and transform the declare enumeration construct into the component object model enumeration declaration if the attribute has a first value, and otherwise transform the declare enumeration construct into the series of manifest constants.
Claim 3
Dependent Claim
32 words
One or more computer storage media as recited in claim 1 , wherein the plurality of instructions include instructions to transform a declare function construct into a component object model function declaration.
Claim 4
Dependent Claim
35 words
One or more computer storage media as recited in claim 1 , wherein the plurality of instructions include instructions to transform a declare class object construct into a component object model class object ID declaration.
Claim 5
Dependent Claim
33 words
One or more computer storage media as recited in claim 1 , wherein the plurality of instructions include instructions to transform a declare interface construct into a component object model forward class declaration.
Claim 6
Dependent Claim
34 words
One or more computer storage media as recited in claim 1 , wherein the plurality of instructions include instructions to transform a declare data structure construct into a component object model data structure declaration.
Claim 7
Dependent Claim
32 words
One or more computer storage media as recited in claim 1 , wherein the plurality of instructions include instructions to transform a declare macro construct into a component object model manifest constant.
Claim 8
Dependent Claim
25 words
One or more computer storage media as recited in claim 1 , wherein the COM application programming interface header file comprises a C/C++ header file.
Claim 9
Independent Claim
140 words
A method, implemented in a computing device, the method comprising: accessing a plurality of constructs in an application programming interface description, wherein the description is written in an extensible markup language (XML) format; and transforming each of the plurality of constructs into computer executable instructions and declarations for a component object module (COM) application programming interface header file, wherein transforming one or more of the plurality of constructs comprises: checking an attribute of a declare enumeration construct of the plurality of constructs to determine whether the declare enumeration construct is to be transformed into a series of manifest constants or into a component object model enumeration declaration; and transforming the declare enumeration construct into the component object model enumeration declaration if the attribute has a first value, and otherwise transforming the declare enumeration construct into the series of manifest constants.
Claim 10
Independent Claim
140 words
A method, implemented in a computing device, the method comprising: accessing a plurality of constructs in an application programming interface description, wherein the description is written in an extensible markup language (XML) format; and transforming each of the plurality of constructs into computer executable instructions and declarations for a component object module (COM) application programming interface header file, wherein transforming one or more of the plurality of constructs comprises: checking an attribute of a declare enumeration construct of the plurality of constructs to determine whether the declare enumeration construct is to be transformed into a series of manifest constants or into a component object model enumeration declaration; and transforming the declare enumeration construct into the component object model enumeration declaration if the attribute has a first value, and otherwise transforming the declare enumeration construct into the series of manifest constants.
Claim 11
Dependent Claim
31 words
A method as recited in claim 8 , wherein transforming at least one of the plurality of constructs comprises transforming a declare function construct into a component object model function declaration.
Claim 12
Dependent Claim
34 words
A method as recited in claim 8 , wherein transforming at least one of the plurality of constructs comprises transforming a declare class object construct into a component object model class object ID declaration.
Claim 13
Dependent Claim
32 words
A method as recited in claim 8 , wherein transforming at least one of the plurality of constructs comprises transforming a declare interface construct into a component object model forward class declaration.
Claim 14
Dependent Claim
33 words
A method as recited in claim 8 , wherein transforming at least one of the plurality of constructs comprises transforming a declare data structure construct into a component object model data structure declaration.
Claim 15
Dependent Claim
31 words
A method as recited in claim 8 , wherein transforming at least one of the plurality of constructs comprises transforming a declare macro construct into a component object model manifest constant.
Claim 16
Dependent Claim
159 words
A computing device comprising: a processor; and one or more computer readable media having stored thereon instructions that, when executed by the processor, cause the processor to: access a plurality of constructs in an application programming interface description, wherein the description is written in an extensible markup language (XML) format; and transform each of the plurality of constructs into computer executable instructions and declarations for a component object module (COM) application programming interface header file, wherein to transform one or more of the plurality of constructs is to: check an attribute of a declare enumeration construct of the plurality of constructs to determine whether the declare enumeration construct is to be transformed into a series of manifest constants or into a component object model enumeration declaration; and transform the declare enumeration construct into the component object model enumeration declaration if the attribute has a first value, and otherwise transform the declare enumeration construct into the series of manifest constants.
Claim 17
Dependent Claim
159 words
A computing device comprising: a processor; and one or more computer readable media having stored thereon instructions that, when executed by the processor, cause the processor to: access a plurality of constructs in an application programming interface description, wherein the description is written in an extensible markup language (XML) format; and transform each of the plurality of constructs into computer executable instructions and declarations for a component object module (COM) application programming interface header file, wherein to transform one or more of the plurality of constructs is to: check an attribute of a declare enumeration construct of the plurality of constructs to determine whether the declare enumeration construct is to be transformed into a series of manifest constants or into a component object model enumeration declaration; and transform the declare enumeration construct into the component object model enumeration declaration if the attribute has a first value, and otherwise transform the declare enumeration construct into the series of manifest constants.
Claim 18
Dependent Claim
27 words
A computing device as recited in claim 14 , wherein the instructions include instructions to transform a declare function construct into a component object model function declaration.
Claim 19
Dependent Claim
30 words
A computing device as recited in claim 14 , wherein the instructions include instructions to transform a declare class object construct into a component object model class object ID declaration.
Claim 20
Dependent Claim
28 words
A computing device as recited in claim 14 , wherein the instructions include instructions to transform a declare interface construct into a component object model forward class declaration.
Claim 21
Dependent Claim
29 words
A computing device as recited in claim 14 , wherein the instructions include instructions to transform a declare data structure construct into a component object model data structure declaration.
Claim 22
Dependent Claim
27 words
A computing device as recited in claim 14 , wherein the instructions include instructions to transform a declare macro construct into a component object model manifest constant.
References Cited (Backward Citations)
US6052527A
Cited
US6026238A
Cited
US5974256A
Cited
US6769989B2
Cited
US6468160B2
Cited
US6712704B2
Cited
US20040162137A1
Cited
US20010056504A1
Cited
US20040015898A1
Cited
US6836857B2
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2010-10-15 | 2011-04-16 | 2011-10-16 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2014-10-15 | 2015-04-16 | 2015-10-16 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2018-10-15 | 2019-04-16 | 2019-10-16 | $7700.00 | Window Closed / Lapsed |