IP Library Granted Patent US 8,141,128
Granted Patent B2
US 8,141,128 · App. 12/034,276 · Granted Mar 20, 2012

Methods and apparatus for building and executing natural language workflow functions

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,141,128
App. No.
12/034,276
Granted
Mar 20, 2012
Kind
B2
Abstract

The present disclosure provides methods and apparatuses for building and executing natural language policies. Using the methods and apparatus herein, users can easily program policies in a natural language intuitive manner. The user can program the natural language policy without needing to have technical knowledge of the underlying systems and without the assistance of a technical specialist.

Claims (41)

1. A method for building and executing natural language policies, the method comprising:

creating a first function and a second function by writing software code;

creating a domain specific rule that includes the first function, the second function, a logical connection between the first function and the second function, and a variable value;

creating a natural language policy in response to a user selection of the domain specific rule and an option for the variable value, wherein the option limits the variable value, and wherein the natural language policy is the domain specific rule with the variable value set to the option; and

executing the natural language policy on at least one computer system.

2. The method of claim 1 , wherein creating the domain specific rule includes a declarative mapping of one of the first function and the second function.

3. The method of claim 1 , including displaying a graphical user interface.

4. The method of claim 2 , wherein the graphical user interface includes graphical representations of a grammar element.

5. The method of claim 2 , including updating the graphical user interface based on selection of at least one of the domain specific rule and an option for the variable value.

6. The method of claim 1 , wherein the policy includes a workflow process.

7. The method of claim 1 , wherein the function is written in at least one of a Visual Basic, Visual C#, Visual J#, Visual C++ programming language.

8. The method of claim 1 , wherein the option limits the variable value to one of a predetermined set of variables names.

9. The method of claim 1 , wherein the option limits the variable value to a numeric range.

10. The method of claim 1 , wherein the option limits the variable to at least one of an Entity, a second function result, an enumerated of value, and an identifier.

11. The method of claim 1 , wherein the option limits the variable to a plurality of Entities wherein a first entity provides a filter to a second entity that provides a binding.

12. A system for building and executing natural language policies, the system comprising a processor for:

creating a first function and a second function by writing software code;

creating a domain specific rule that includes the first function, the second function, a logical connection between the first function and the second function, and a variable value;

creating a natural language policy in response to a user selection of the domain specific rule and an option for the variable value, wherein the option limits the variable value, and wherein the natural language policy is the domain specific rule with the variable value set to the option; and

compiling and executing the natural language policy.

13. The system of claim 12 , wherein the processor displays a graphical user interface.

14. The system of claim 13 , wherein the graphical user interface includes graphical representations of a grammar element.

15. The system of claim 13 , wherein the processor updates the graphical user interfaces based on the selection of at least one of the selection of the domain specific rule and an option for the variable value.

16. The system of claim 12 , wherein the policy includes a workflow process.

17. The system of claim 12 , wherein the function is written in at least one of a Visual Basic, Visual C#, Visual J#, Visual C++ programming language.

18. The system of claim 12 , wherein the option limits the variable value to one of a predetermined set of variables names.

19. The system of claim 12 , wherein the option limits the variable value to a numeric range.

20. The system of claim 12 , wherein the option limits the variable to at least one of an Entity, a second function result, an enumerated of value, and an identifier.

21. The system of claim 12 , wherein the option limits the variable to a plurality of Entities wherein a first entity provides a filter to a second entity that provides a binding.

22. A non-transitory computer readable medium storing instructions structured to cause a computing device to:

create a first function and a second function by writing software code;

create a domain specific rule that includes the first function, the second function, a logical connection between the first function and the second function, and a variable value;

create a natural language policy in response to a user selection of the domain specific rule and an option for the variable value, wherein the option limits the variable value, and wherein the natural language policy is the domain specific rule with the variable value set to the option;

compile and execute the natural language policy.

23. The non-transitory computer readable medium of claim 22 , wherein the instructions are structured to cause the computing device to display a graphical user interface.

24. The non-transitory computer readable medium of claim 23 , wherein the graphical user interface includes graphical representations of a grammar element.

25. The non-transitory computer readable medium of claim 23 , wherein the instructions are structured to cause the computing device to update the graphical user interfaces based on the selection of at least one of the selection of the domain specific rule and an option for the variable value.

26. The non-transitory computer readable medium of claim 22 , wherein the policy includes a workflow process.

27. The non-transitory computer readable medium of claim 22 , wherein the function is written in at least one of a Visual Basic, Visual C#, Visual J#, Visual C++ programming language.

28. The non-transitory computer readable medium of claim 22 , wherein the option limits the variable value to one of a predetermined set of variables names.

29. The non-transitory computer readable medium of claim 22 , wherein the option limits the variable value to a numeric range.

Assignments (8)
RELEASE OF SECURITY INTEREST Recorded Dec 1, 2021
From: SIXTH STREET SPECIALTY LENDING EUROPE I ADVISORS, LTD. (F/K/A TPG SPECIALTY LENDING EUROPE I ADVISORS, LTD.)
To: K2 SOFTWARE, INC.
Reel/Frame 058952/0155 →
PERFECTION CERTIFICATE Recorded Dec 1, 2021
From: K2 SOFTWARE, INC.; ASSURESIGN, LLC
To: NINTEX USA, INC.
Reel/Frame 058292/0509 →
SECURITY INTEREST Recorded Nov 17, 2021
From: NINTEX USA, INC.; K2 SOFTWARE, INC.; ASSURESIGN, LLC
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 058173/0474 →
CHANGE OF NAME Recorded Jan 15, 2021
From: SOURCECODE TECHNOLOGY HOLDINGS, INC.
To: K2 SOFTWARE, INC.
Reel/Frame 055008/0366 →
RELEASE OF SECURITY INTEREST Recorded Oct 14, 2020
From: PNC BANK, NATIONAL ASSOCIATION
To: SOURCECODE TECHNOLOGY HOLDINGS, INC. (NOW KNOWN AS K2 SOFTWARE, INC.)
Reel/Frame 054053/0153 →
SECURITY INTEREST Recorded Oct 14, 2020
From: K2 SOFTWARE, INC.
To: TPG SPECIALTY LENDING EUROPE I ADVISORS, LTD.
Reel/Frame 054048/0922 →
SECURITY INTEREST Recorded Jun 26, 2019
From: SOURCECODE TECHNOLOGY HOLDINGS, INC.
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 049595/0609 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2008
From: VAN WYK, ADRIAAN; GOLDNER, WOLFGANG; DE VILLERS, ESUA; DU TOIT, WYNAND
To: SOURCECODE TECHNOLOGIES HOLDINGS, INC.
Reel/Frame 021427/0750 →