IP Library Granted Patent US 12,086,535
Granted Patent B2
US 12,086,535 · App. 18/347,949 · Granted Sep 10, 2024

Systems and methods of a script generation engine

Inventor: Gregory R. Petti (Calgary, CA)
Assignee: OPEN TEXT SA ULC
G06F40/143G06F8/40G06F40/151G06F8/41G06F9/44G06F9/45512G06F40/154
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,086,535
App. No.
18/347,949
Granted
Sep 10, 2024
Kind
B2
Abstract

A template built by a user may be converted by a Server Script Generation Engine (SSGE) into script code. In converting, the SSGE may load and parse a framework file containing static script syntax to locate insertion points, each associated with an iteration number, and may iteratively parse the template, utilizing the iteration number to resolve, in order, tags and sub-tags contained in the template. If a tag is set to respond to the iteration number, a function of the tag is invoked to process any related sub-tags and return a script associated therewith at the appropriate insertion point. The framework file (with the appropriate script code inserted) is compiled and stored in a compiled script object which can be run multiple times to perform all of the output functions expected by the user in lieu of the need to reconvert the template.

Claims (68)

1. A method, comprising:

receiving, by a script generator of a content management system, an output specification template for a view of a dynamic document or a software module specific to a content server platform, the output specification template containing tags that indicate iteration numbers;

converting, by the script generator, the output specification template into platform-specific script code, wherein the converting comprises performing multiple parsing iterations, wherein for each particular parsing iteration, only tags having an iteration number corresponding to that particular parsing iteration are converted into platform-specific code;

compiling, by the script generator, the platform-specific script code to generate or update a platform-specific compiled script object;

storing, by the script generator in a memory structure, the platform-specific compiled script object; and

subsequent to the storing of the platform-specific compiled script object, upon receipt of a request for the dynamic document or the software module, producing, from the platform-specific compiled script object, the requested view of the dynamic document or the software module specific to the content server platform.

2. The method according to claim 1 , wherein the tags of the output specification template comprise sub-tags and wherein the converting comprises:

parsing a framework file containing static script syntax with insertion points, wherein each of the insertion points is associated with a particular iteration number; and

parsing the output specification template according to the particular iteration number, the parsing the output specification template including processing each of the tags and the sub-tags in the output specification template for a corresponding script text or string; and

inserting the corresponding script text or string into a corresponding insertion point in the framework file.

3. The method according to claim 2 , wherein an insertion point indicates a location in the framework file for insertion of a script text or string tagged in the output specification template.

4. The method according to claim 1 , wherein the platform-specific script code comprises a framework file and wherein the converting comprises:

breaking down the output specification template into pieces;

locating the tags in the pieces;

for each respective tag located in the pieces, looking up the respective tag in a tag subsystem;

obtaining, from the tag subsystem, a chunk of script associated with the respective tag; and

inserting the chunk of script into the framework file at a location associated with the respective tag.

5. The method according to claim 1 , wherein the platform-specific script code comprises a framework file, wherein the framework file contains static script syntax and dynamically inserted chunks of script associated with the tags and the sub-tags in the output specification template.

6. The method according to claim 5 , wherein the compiling comprises compiling the framework file after the framework file is processed to include the dynamically inserted chunks of script associated with the tags and the sub-tags in the output specification template.

7. The method according to claim 1 , further comprising:

creating a unique key for the compiled script object, the unique key referencing the output specification template; and

adding the compiled script object to a compiled script subsystem using the unique key.

8. A system, comprising:

a processor;

a non-transitory computer-readable medium; and

stored instructions translatable by the processor for:

receiving an output specification template for a view of a dynamic document or a software module specific to a content server platform, the output specification template containing tags that indicate iteration numbers;

converting the output specification template into platform-specific script code, wherein the converting comprises performing multiple parsing iterations, wherein for each particular parsing iteration, only tags having an iteration number corresponding to the that particular parsing iteration are converted into platform-specific code;

compiling, by the script generator, the platform-specific script code to generate or update a platform-specific compiled script object;

storing, by the script generator in a memory structure, the platform-specific compiled script object; and

subsequent to the storing of the platform-specific compiled script object, upon receipt of a request for the dynamic document or the software module, producing, from the platform-specific compiled script object, the requested view of the dynamic document or the software module specific to the content server platform.

9. The system of claim 8 , wherein the tags of the output specification template comprise sub-tags and wherein the converting comprises:

parsing a framework file containing static script syntax with insertion points, wherein each of the insertion points is associated with a particular iteration number; and

parsing the output specification template according to the particular iteration number, the parsing the output specification template including processing each of the tags and the sub-tags in the output specification template for a corresponding script text or string; and

inserting the corresponding script text or string into a corresponding insertion point in the framework file.

10. The system of claim 9 , wherein an insertion point indicates a location in the framework file for insertion of a script text or string tagged in the output specification template.

11. The system of claim 8 , wherein the platform-specific script code comprises a framework file and wherein the converting comprises:

breaking down the output specification template into pieces;

locating the tags in the pieces;

for each respective tag located in the pieces, looking up the respective tag in a tag subsystem;

obtaining, from the tag subsystem, a chunk of script associated with the respective tag; and

inserting the chunk of script into the framework file at a location associated with the respective tag.

12. The system of claim 8 , wherein the platform-specific script code comprises a framework file, wherein the framework file contains static script syntax and dynamically inserted chunks of script associated with the tags and the sub-tags in the output specification template.

13. The system of claim 12 , wherein the compiling comprises compiling the framework file after the framework file is processed to include the dynamically inserted chunks of script associated with the tags and the sub-tags in the output specification template.

14. The system of claim 8 , wherein the stored instructions are further translatable by the processor for:

creating a unique key for the compiled script object, the unique key referencing the output specification template; and

adding the compiled script object to a compiled script subsystem using the unique key.

15. A computer program product comprising a non-transitory computer-readable medium storing instructions translatable by a processor for:

receiving an output specification template for a view of a dynamic document or a software module specific to a content server platform, the output specification template containing tags that indicate iteration numbers;

converting the output specification template into platform-specific script code, wherein the converting comprises performing multiple parsing iterations, wherein for each particular parsing iteration, only tags having an iteration number corresponding to that particular parsing iteration are converted into platform-specific code;

compiling, by the script generator, the platform-specific script code to generate or update a platform-specific compiled script object;

storing, by the script generator in a memory structure, the platform-specific compiled script object; and

subsequent to the storing of the platform-specific compiled script object, upon receipt of a request for the dynamic document or the software module, producing, from the platform-specific compiled script object, the requested view of the dynamic document or the software module specific to the content server platform.

16. The computer program product of claim 15 , wherein the tags of the output specification template comprise sub-tags and wherein the converting comprises:

parsing a framework file containing static script syntax with insertion points, wherein each of the insertion points is associated with a particular iteration number; and

parsing the output specification template according to the particular iteration number, the parsing the output specification template including processing each of the tags and the sub-tags in the output specification template for a corresponding script text or string; and

inserting the corresponding script text or string into a corresponding insertion point in the framework file.

17. The computer program product of claim 15 , wherein the platform-specific script code comprises a framework file and wherein the converting comprises:

breaking down the output specification template into pieces;

locating the tags in the pieces;

for each respective tag located in the pieces, looking up the respective tag in a tag subsystem;

obtaining, from the tag subsystem, a chunk of script associated with the respective tag; and

inserting the chunk of script into the framework file at a location associated with the respective tag.

18. The computer program product of claim 15 , wherein the platform-specific script code comprises a framework file, wherein the framework file contains static script syntax and dynamically inserted chunks of script associated with the tags and the sub-tags in the output specification template.

19. The computer program product of claim 18 , wherein the compiling comprises compiling the framework file after the framework file is processed to include the dynamically inserted chunks of script associated with the tags and the sub-tags in the output specification template.

20. The computer program product of claim 15 , wherein the instructions are further translatable by the processor for:

creating a unique key for the compiled script object, the unique key referencing the output specification template; and

adding the compiled script object to a compiled script subsystem using the unique key.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2023
From: PETTI, GREGORY R.
To: OPEN TEXT S.A.
Reel/Frame 064329/0522 →
IP BUSINESS SALE AGREEMENT Recorded Jul 20, 2023
From: OPEN TEXT S.A.
To: OT IP SUB, LLC
Reel/Frame 064353/0015 →
CERTIFICATE OF AMALGAMATION Recorded Jul 20, 2023
From: IP OT SUB ULC
To: OPEN TEXT SA ULC
Reel/Frame 064353/0042 →
CERTIFICATE OF CONTINUANCE Recorded Jul 20, 2023
From: OT IP SUB, LLC
To: IP OT SUB ULC
Reel/Frame 064353/0053 →
Continuity (5)
Continuation 17558070 · Dec 21, 2021
Continuation 16530624 · Aug 2, 2019
Continuation 13917767 · Jun 14, 2013
Provisional Application 61659696 · Jun 14, 2012
Related Publication 20230367954A1 · Nov 16, 2023