IP Library Granted Patent US 8,255,888
Granted Patent B2
US 8,255,888 · App. 10/676,373 · Granted Aug 28, 2012

API derivation and XML schema derivation for developing applications

Assignee: SAP AG
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,255,888
App. No.
10/676,373
Granted
Aug 28, 2012
Kind
B2
Abstract

Methods and apparatus, including computer program products, for developing an application. The development includes the use of a data model (e.g., a metamodel represented using UML) from which an API is derived. The API can include features derived from customizable extensions within the data model.

Claims (30)

1. A computer-readable storage device storing a computer program product operable to cause a data processing apparatus to:

receive a metamodel in a first language, the first language comprising a customizable extension and the metamodel describing a diagram of classes that define one or more development objects, the development objects representing building blocks for developing an application;

convert the metamodel to a model description that describes the metamodel in a second language according to an interchange format;

generate a set of intermediate objects to represent the classes of the metamodel by parsing the model description, the generating including generating an Extensible Markup Language (XML) schema that enables implementation of the development objects by implementing at least one feature using the customizable extension, the at least one feature comprising at least one of an indication of a file border, a copy operation, or a paste operation; and

generate code using the set of intermediate objects as inputs to derive a metadata Application Program Interface (API), the metadata API enabling development tools to access the development objects to develop the application.

2. The computer-readable storage device of claim 1 , wherein the second language comprises Extensible Markup Language (XML).

3. The computer-readable storage device of claim 1 , wherein the first language comprises unified modeling language (UML).

4. The computer-readable storage device of claim 1 , wherein the metamodel is stored on one of a storage module, a server, and a portable storage device.

5. The computer-readable storage device of claim 1 , wherein the set of intermediate objects comprises Java objects.

6. A non-transitory computer-readable storage device storing a computer program product, the computer program product being operable to cause a data processing apparatus to:

receive a metamodel in a first language, the metamodel describing a diagram of classes that define one or more development objects, the development objects representing building blocks for developing the application, wherein the first language comprises a customizable extension and a unified modeling language;

convert the metamodel to a model description that describes the metamodel in a second language according to an interchange format, wherein the second language comprises Extensible Markup Language (XML);

generate a set of intermediate objects to represent the classes of the metamodel by parsing the model description, the generating including generating an XML schema that enables implementation of the development objects by implementing at least one feature using the customizable extension, the at least one feature comprising at least one of an indication of a file border, a copy operation, or a paste operation; and

generate code using the set of intermediate objects as inputs to derive a metadata Application Program Interface (API), and further wherein the metadata API enables development tools to access the development objects to develop the application.

7. The computer-readable storage device of claim 6 , wherein the set of intermediate objects comprises Java objects.

8. The computer-readable storage device of claim 6 , wherein the XML schema includes a tree based on aggregation relationships in the metamodel.

9. The computer-readable storage device of claim 6 , wherein the XML schema includes a reference based on an association relationship in the metamodel first model.

10. The computer-readable storage device of claim 6 , wherein the XML schema includes a complex type extension based on an inheritance relationship in the metamodel.

11. A non-transitory computer-readable storage device storing a computer program product being operable to cause a data processing apparatus to:

receive a metamodel describing a diagram of classes that define one or more development objects, the received metamodel being in a language comprising a customizable extension and the development objects representing building blocks for developing the application;

generate an Extensible Markup Language Metadata Interchange (XMI) model that is a representation of the metamodel according to an interchange format;

generate a set of intermediate objects to represent the classes of the metamodel by parsing the XMI model using an XML parser, the generating including generating an XML schema that enables implementation of the development objects by implementing at least one feature using the customizable extension, the at least one feature comprising at least one of an indication of a file border, a copy operation, or a paste operation; and

generate code using the set of intermediate objects as inputs to derive a metadata API enabling development tools to access the development objects to develop the application.

12. The computer-readable storage device of claim 11 , wherein the computer program product is further operable to cause the data processing apparatus to:

create a new development object as a transient object without an existing corresponding file; and

modify the transient object until the transient object is committed to a persistent file.

13. The computer-readable storage device of claim 12 , wherein the computer program product is further operable to cause the data processing apparatus to destroy the transient object if a delete command is requested before the transient object is committed to a persistent file.

14. The computer-readable storage device of claim 12 , wherein the computer program product is further operable to cause the data processing apparatus to mark the persistent file as deleted if a delete command is requested after the transient object is committed to a persistent file.

15. The computer-readable storage device of claim 11 , wherein the metamodel is stored on one of a storage module, a server, and a portable storage device.

16. The computer-readable storage device of claim 11 , wherein the set of intermediate objects comprises Java objects.

Assignments (4)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0334 →
CHANGE OF NAME Recorded Jul 25, 2012
From: SAP AKTIENGESELLSCHAFT
To: SAP AG
Reel/Frame 028630/0946 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 19, 2007
From: LEXINGTON INSURANCE COMPANY
To: AMERICAN INTERNATIONAL GROUP, INC.
Reel/Frame 019182/0698 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2003
From: JESSE, STEFAN; LAUTERBACH, JOHANNES
To: SAP AKTIENGESELLSCHAFT
Reel/Frame 014138/0104 →
Continuity (1)
Related Publication 20050071801A1 · Mar 31, 2005