IP Library Granted Patent US 12,468,509
Granted Patent B2
US 12,468,509 · App. 15/587,014 · Granted Nov 11, 2025

Reusable entity modeling systems and methods

Inventors: Dana Lawrence Khoy (Westford, MA); Albertus Hendrik Roos (Waterloo, CA); Richard Winfield Bolling (Hollis, NH); Renatus Cornelis Prins (Putten, NL); Cheranthian Muthuvinayagam (Bedford, NH)
Assignee: OPEN TEXT SA ULC
G06F8/35G06F3/0482G06F3/04847G06F8/34G06F8/36G06F16/22G06F30/20G06F8/60
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 12,468,509
App. No.
15/587,014
Granted
Nov 11, 2025
Kind
B2
Abstract

Embodiments of systems and methods disclosed herein provide an application development platform in an enterprise computing environment. More specifically, in certain embodiments, systems and methods are disclosed that enable an application development platform to reuse, extend, and/or customize entity-based applications in an enterprise computing environment. The application development platform can extend an entity to include user configured settings including zero or at least one of a property, a permission, an action, a behavior, or a resource to the entity to generate user customized versions of the entity. The applications may be customized by an end user, while allowing the underlying application to be updated without losing any user customizations.

Claims (42)

1 . An entity modeling system, comprising:

a processor;

a non-transitory computer readable medium; and

instructions stored on the non-transitory computer readable medium and translatable by the processor to perform:

receiving, from a user device, an instruction to create a new entity model, the entity modeling system operating on an application development platform;

importing an application package into a design time environment on the application development platform, wherein the application package contains:

a previously generated entity model, the previously generated entity model defining a first process application for a first problem domain, wherein the first process application is modeled via the previously generated entity model as a set of entities that are linked with each other by relationships that specify dependencies and requirements among the set of entities;

a design-time application programming interface (API) of the previously generated entity model; and

an entity model specification of the previously generated entity model, wherein the entity model specification prescribes interface specifications for the set of entities, includes worklists, forms, and, for every property of a respective entity, a property name and an associated data type;

wherein each respective entity of the set of entities is composed from a set of entity building blocks, the set of entity building blocks having element types in an application architecture based on which the application development platform is built, the set of entity building blocks including an entity building block that defines a characteristic for the respective entity and that comprises code instantiated from a special element class to implement settings for the respective entity, wherein the special element class defines the entity building block as having a structural, decorative, or functional element type; and

responsive to an instruction from the user device, making a change to at least one of the settings so as to modify the entity building block, wherein modifying the entity building block changes the characteristic for the respective entity and, as such, customizes the new entity model for defining a second process application for a second problem domain;

wherein the entity modeling system stores customization information relating to the change independently of the second process application, and wherein the entity modeling system applies the customization information to the second process application after the second process application is packaged and deployed.

2 . The entity modeling system of claim 1 , wherein the previously generated entity model includes a run-time version of the previously generated entity model.

3 . The entity modeling system of claim 1 , wherein the previously generated entity model is one of a plurality of reusable entity models in the application package.

4 . The entity modeling system of claim 1 , wherein the entity building blocks further include an entity building block that specifies how users interact with the respective entity.

5 . The entity modeling system of claim 1 , wherein the entity building blocks further include an entity building block that provides a specific functionality for the respective entity.

6 . A method of reusing an entity model in application development, the method comprising:

receiving, from a user device by an entity modeling system, an instruction to create a new entity model, the entity modeling system operating on an application development platform;

importing an application package into a design time environment on the application development platform, wherein the application package contains:

a previously generated entity model, the previously generated entity model defining a first process application for a first problem domain, wherein the first process application is modeled via the previously generated entity model as a set of entities that are linked with each other by relationships that specify dependencies and requirements among the set of entities;

a design-time application programming interface (API) of the previously generated entity model; and

an entity model specification of the previously generated entity model, wherein the entity model specification prescribes interface specifications for the set of entities, includes worklists, forms, and, for every property of a respective entity, a property name and an associated data type;

wherein each respective entity of the set of entities is composed from a set of entity building blocks, the set of entity building blocks having element types in an application architecture based on which the application development platform is built, the set of entity building blocks including an entity building block that defines a characteristic for the respective entity and that comprises code instantiated from a special element class to implement settings for the respective entity, wherein the special element class defines the entity building block as having a structural, decorative, or functional element type; and

responsive to an instruction from the user device, making, by the entity modeling system, a change to at least one of the settings so as to modify the entity building block, wherein modifying the entity building block changes the characteristic for the respective entity and, as such, customizes the new entity model for defining a second process application for a second problem domain;

wherein the entity modeling system stores customization information relating to the change independently of the second process application, and wherein the entity modeling system applies the customization information to the second process application after the second process application is packaged and deployed.

7 . The method of claim 6 , wherein the previously generated entity model includes a run-time version of the previously generated entity model.

8 . The method of claim 6 , wherein the previously generated entity model is one of a plurality of reusable entity models in the application package.

9 . The method of claim 6 , wherein the entity building blocks further include an entity building block that specifies how users interact with the respective entity.

10 . The method of claim 6 , wherein the entity building blocks further include an entity building block that provides a specific functionality for the respective entity.

11 . A computer program product comprising a non-transitory computer-readable medium storing instructions translatable by a processor of an entity modeling system for:

receiving, from a user device, an instruction to create a new entity model, the entity modeling system operating on an application development platform;

importing an application package into a design time environment on the application development platform, wherein the application package contains:

a previously generated entity model, the previously generated entity model defining a first process application for a first problem domain, wherein the first process application is modeled via the previously generated entity model as a set of entities that are linked with each other by relationships that specify dependencies and requirements among the set of entities;

a design-time application programming interface (API) of the previously generated entity model; and

an entity model specification of the previously generated entity model, wherein the entity model specification prescribes interface specifications for the set of entities, includes worklists, forms, and, for every property of a respective entity, a property name and an associated data type;

wherein each respective entity of the set of entities is composed from a set of entity building blocks, the set of entity building blocks having element types in an application architecture based on which the application development platform is built, the set of entity building blocks including an entity building block that defines a characteristic for the respective entity and that comprises code instantiated from a special element class to implement settings for the respective entity, wherein the special element class defines the entity building block as having a structural, decorative, or functional element type; and

responsive to an instruction from the user device, making a change to at least one of the settings so as to modify the entity building block, wherein modifying the entity building block changes the characteristic for the respective entity and, as such, customizes the new entity model for defining a second process application for a second problem domain;

wherein the entity modeling system stores customization information relating to the change independently of the second process application, and wherein the entity modeling system applies the customization information to the second process application after the second process application is packaged and deployed.

12 . The computer program product of claim 11 , wherein the previously generated entity model includes a run-time version of the previously generated entity model.

13 . The computer program product of claim 11 , wherein the previously generated entity model is one of a plurality of reusable entity models in the application package.

14 . The computer program product of claim 11 , wherein the entity building blocks further include an entity building block that specifies how users interact with the respective entity.

15 . The computer program product of claim 11 , wherein the entity building blocks further include an entity building block that provides a specific functionality for the respective entity.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 5, 2018
From: KHOYI, DANA LAWRENCE; ROOS, ALBERTUS HENDRIK; BOLLING, RICHARD WINFIELD; PRINS, RENATUS CORNELIS; MUTHUVINAYAGAM, CHERANTHIAN
To: OPEN TEXT SA ULC
Reel/Frame 044830/0961 →