Customizing application programs
First Claim
1. A computer program product, tangibly embodied in a computer-readable storage device comprising instructions, which when executed on a processor, cause the processor to execute a method for storing customization data in a runtime repository, the method comprising:
- storing a repository object in the runtime repository, the repository object comprising one or more model entities;
storing one or more variants for the repository object in the runtime repository, each of the variants representing a customization of the repository object according to a specific criterion, and each of the variants for the repository object being arranged in a first hierarchy;
storing one or more layers for the repository object in the runtime repository, each of the layers representing a customization of the repository object according to a customizing party, and each of the layers being arranged in a second hierarchy, wherein the first hierarchy for the variants and the second hierarchy for the layers provide a multi-dimensional representation of customizations of the repository object, such that each of the customizations of the repository object is identified by one of the variants of the first hierarchy and one of the layers of the second hierarchy;
storing a first set of customization values for one or more of the model entities in the runtime repository, the first set of customization values being stored in a first variant within the first hierarchy and in a first layer within the second hierarchy; and
storing a second set of customization values for one or more of the model entities in the runtime repository, the second set of customization values being stored in the first variant within the first hierarchy and in a second layer within the second hierarchy.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus, including computer program products, for storing and using customization data. A repository contains one or more repository objects, one or more variants for each repository object, and one or more layers for each variant. Each repository object has one or more model entities. The variants for each repository object are arranged in a first hierarchy, and the layers for each variant are arranged in a second hierarchy. Each layer includes a set of customization values, each customization value corresponding to one of the model entities. Customization values can be (but need not be) provided for each model entity in each layer and in each variant. The variants and layers can be arranged in order of specificity. A customization value for a model entity can be retrieved by locating the most specific variant and the most specific layer that contains a customization value for the model entity.
-
Citations
25 Claims
-
1. A computer program product, tangibly embodied in a computer-readable storage device comprising instructions, which when executed on a processor, cause the processor to execute a method for storing customization data in a runtime repository, the method comprising:
-
storing a repository object in the runtime repository, the repository object comprising one or more model entities; storing one or more variants for the repository object in the runtime repository, each of the variants representing a customization of the repository object according to a specific criterion, and each of the variants for the repository object being arranged in a first hierarchy; storing one or more layers for the repository object in the runtime repository, each of the layers representing a customization of the repository object according to a customizing party, and each of the layers being arranged in a second hierarchy, wherein the first hierarchy for the variants and the second hierarchy for the layers provide a multi-dimensional representation of customizations of the repository object, such that each of the customizations of the repository object is identified by one of the variants of the first hierarchy and one of the layers of the second hierarchy; storing a first set of customization values for one or more of the model entities in the runtime repository, the first set of customization values being stored in a first variant within the first hierarchy and in a first layer within the second hierarchy; and storing a second set of customization values for one or more of the model entities in the runtime repository, the second set of customization values being stored in the first variant within the first hierarchy and in a second layer within the second hierarchy. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer program product tangibly embodied in a computer-readable storage device, comprising instructions, which when executed on a processor, cause the processor to:
-
receive an identification of a model entity in an object, the object comprising one or more model entities; receive an identification of a starting variant in a repository, the repository storing customization values for the model entities in the object, the customization values being arranged in variants and layers, each of the variants representing a customization of the object according to a specific criterion and each of the layers representing a customization of the object according to a customizing party, each of the variants being organized according to a first hierarchy and each of the layers being organized according to a second hierarchy, wherein the first hierarchy for the variants and the second hierarchy for the layers provide a multi-dimensional representation of customizations of the object, such that each of the customizations of the object is identified by one of the variants of the first hierarchy and one of the layers of the second hierarchy, wherein the repository stores, in a first variant within the first hierarchy and in a first layer within the second hierarchy, a first set of customization values for one or more of the model entities, and further wherein the repository stores, in the first variant within the first hierarchy and in a second layer within the second hierarchy, a second set of customization values for one or more of the model entities; receive an identification of a starting layer in the repository; and search for an applicable customization value for the identified model entity from the customization values in the repository by searching for an applicable variant in a portion of the first hierarchy starting with the starting variant and searching for an applicable layer in a portion of the second hierarchy starting with the starting layer. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer program product tangibly embodied in a computer-readable storage device, comprising instructions, which when executed on a processor, cause the processor to:
-
receive a specification of an object, the object having one or more model entities; create one or more variants for the object in a repository, each of the variants representing a customization of the object according to a specific criterion, and each of the variants being arranged in a first hierarchy; create one or more layers for the object in the repository, each of the layers representing a customization of the object according to a customizing party, the layers being arranged in a second hierarchy, wherein the first hierarchy for the variants and the second hierarchy for the layers provide a multi-dimensional representation of customizations of the object, such that each of the customizations of the object is identified by one of the variants of the first hierarchy and one of the layers of the second hierarchy; receive a first set of customization values for one or more of the model entities, an identification of a first variant within the first hierarchy, and an identification of a first layer within the second hierarchy; store the first set of customization values in the first layer and in the first variant; receive a second set of customization values for one or more of the model entities, and an identification of a second layer within the second hierarchy; and store the second set of customization values in the second layer and in the first variant. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. An apparatus comprising:
-
a processor; a module configured to receive an identification of a model entity in an object, the object comprising multiple model entities; a module configured to receive an identification of a starting variant in a repository, the repository storing customization values for the model entities in the object, the customization values being arranged in variants and in layers, each of the variants representing a customization of the object according to a specific criterion and each of the layers representing a customization of the object according to a customizing party, each of the variants being organized according to a first hierarchy and each of the layers being organized according to a second hierarchy, wherein the first hierarchy for the variants and the second hierarchy for the layers provide a multi-dimensional representation of customizations of the object, such that each of the customizations of the object is identified by one of the variants of the first hierarchy and one of the layers of the second hierarchy, wherein the repository stores, in a first variant within the first hierarchy and in a first layer within the second hierarchy, a first set of customization values for one or more of the multiple model entities, and further wherein the repository stores, in the first variant within the first hierarchy and in a second layer within the second hierarchy, a second set of customization values for one or more of the multiple model entities; a module configured to receive an identification of a starting layer in the repository; and a module configured to search for an applicable customization value for the identified model entity from the customization values in the repository by searching for an applicable variant in a portion of the first hierarchy starting with the starting variant and searching for an applicable layer in a portion of the second hierarchy starting with the starting layer.
-
-
25. An apparatus comprising:
-
a processor; a module configured to receive a specification of an object, the object having one or more model entities; a module configured to create one or more variants for the object in a repository, each of the variants representing a customization of the object according to a specific criterion, and each of the variants being arranged in a first hierarchy; a module configured to create one or more layers for the object in the repository, each of the layers representing a customization of the object according to a customizing party, and each of the layers being arranged in a second hierarchy, wherein the first hierarchy for the variants and the second hierarchy for the layers provide a multi-dimensional representation of customizations of the object, such that each of the customizations of the object is identified by one of the variants of the first hierarchy and one of the layers of the second hierarchy; a module configured to receive a first set of customization values for one or more of the model entities, an identification of a first variant within the first hierarchy, and an identification of a first layer within the second hierarchy; a module configured to store the first set of customization values in the first layer and in the first variant; a module configured to receive a second set of customization values for one or more of the model entities, and an identification of a second layer within the second hierarchy; and a module configured to store the second set of customization values in the second layer and in the first variant.
-
Specification