Generating programmatic interfaces from natural language expressions of authorizations for request of information
First Claim
1. A method for translating a business rule which authorizes a request for information into an application programming interface (API) expressed in object oriented objects, the business rule being in a linguistic form having a predefined syntax and the rule authorizing a request for information comprising one or more propositional expressions, the method comprising:
- receiving a stream of input representing a business rule and vocabulary;
processing the received vocabulary to determine elements of the predefined syntax;
creating an object type, wherein the object type corresponds to a return type of an operation in the rule authorizing a request for information;
establishing a current container variable;
for each propositional expression in the rule authorizing a request for information,setting the current container to be the object type,establishing a context for the propositional expression,processing the propositional expression in the rule authorizing a request for information, andrecording the object type in the current container, the object type being a context resulting from processing the propositional expression;
wherein establishing the context for the propositional expression comprises;
for each pronominal reference in the propositional expression having a referent term which is a term in a previously processed propositional expression and which is not a subject of a parametric operator,if the referent term is not subject of an interrogative operator,setting the current container to be the object type that is the resulting context from the propositional expression having a referent term,otherwise, when the referent term is the subject of an interrogative operator,setting the current container to be object type generated for the referent term.
6 Assignments
0 Petitions
Accused Products
Abstract
An embodiment of the present invention is a technique for processing an authorization rule. An object type is created for a return type of an operation in the rule authorizing a request for information. A current container is established. A propositional expression in the rule is processed to record the object type as a resulting context from the propositional expression in the current container.
-
Citations
12 Claims
-
1. A method for translating a business rule which authorizes a request for information into an application programming interface (API) expressed in object oriented objects, the business rule being in a linguistic form having a predefined syntax and the rule authorizing a request for information comprising one or more propositional expressions, the method comprising:
-
receiving a stream of input representing a business rule and vocabulary; processing the received vocabulary to determine elements of the predefined syntax; creating an object type, wherein the object type corresponds to a return type of an operation in the rule authorizing a request for information; establishing a current container variable; for each propositional expression in the rule authorizing a request for information, setting the current container to be the object type, establishing a context for the propositional expression, processing the propositional expression in the rule authorizing a request for information, and recording the object type in the current container, the object type being a context resulting from processing the propositional expression; wherein establishing the context for the propositional expression comprises; for each pronominal reference in the propositional expression having a referent term which is a term in a previously processed propositional expression and which is not a subject of a parametric operator, if the referent term is not subject of an interrogative operator, setting the current container to be the object type that is the resulting context from the propositional expression having a referent term, otherwise, when the referent term is the subject of an interrogative operator, setting the current container to be object type generated for the referent term.
-
-
2. A method for translating a business rule which authorizes a request for information into an application programming interface (API) expressed in object oriented objects, the business rule being in a linguistic form having a predefined syntax and the rule authorizing a request for information comprising one or more propositional expressions, the method comprising:
-
receiving a stream of input representing a business rule and vocabulary; processing the received vocabulary to determine elements of the predefined syntax; creating an object type, wherein the object type corresponds to return type of an operation in the rule authorizing a request for information; establishing a current container variable; for each propositional expression in the rule authorizing a request for information, setting the current container to be the object type, establishing a context for the propositional expression, processing the propositional expression in the rule authorizing a request for information, and recording the object type in the current container, the object type being a context resulting from processing the propositional expression; wherein processing the propositional expression comprises; parsing the propositional expression such that if a second propositional interrogative is applied to the propositional expression then parsing the propositional expression to which the second propositional interrogative is applied, and otherwise, when the propositional expression includes an interrogative operator then processing the propositional expression containing a term to which the interrogative operator is applied; and wherein parsing the propositional expression to which a propositional interrogative is applied comprises; for each role expression in the propositional expression that is not a pronominal reference and that includes no definite article or expression of a specifically referenced instance, when the role expression has a parametric operator, generating a second object type for a term in the role expression, and adding a parameter having the second object type to the operation; and processing the truthfulness of the propositional interrogative by adding a Boolean attribute to the object type designated by the current container to indicate a truth value of the propositional expression.
-
-
3. A method for translating a business rule which authorizes a request for information into an application programming interface (API) expressed in object oriented objects, the business rule being in a linguistic form having a predefined syntax and the rule authorizing a request for information comprising one or more propositional expressions, the method comprising:
-
receiving a stream of input representing a business rule and vocabulary; processing the received vocabulary to determine elements of the predefined syntax; creating an object type, wherein the object type corresponds to a return type of an operation in the rule authorizing a request for information; establishing a current container variable; for each propositional expression in the rule authorizing a request for information, setting the current container to be the object type, establishing a context for the propositional expression, processing the propositional expression in the rule authorizing a request for information, and recording the object type in the current container, the object type being a context resulting from processing the propositional expression; wherein processing the propositional expression comprises; parsing the propositional expression such that if a second propositional interrogative is applied to the propositional expression then parsing the propositional expression to which the second propositional interrogative is applied, and otherwise, when the propositional expression includes an interrogative operator then processing the propositional expression containing a term to which the interrogative operator is applied; and wherein processing the propositional expression containing a term to which an interrogative operator is applied comprises; for each role expression in the propositional expression that is not a pronominal reference, generating a second object type for a term in the role expression; if the role expression has a parametric operator, adding a parameter having the second object type to the operation; otherwise, when the role expression contains the interrogative operator, adding an attribute to the object type designated by the current container having an attribute type to be a collection of objects of the second object type, and setting the current container to the second object type. - View Dependent Claims (4)
-
-
5. An article of manufacture comprising:
-
a machine-accessible storage medium including data that, when accessed by a machine, causes the machine to perform operation comprising the method of; receiving a stream of input representing a business rule vocabulary; processing the received vocabulary to determine elements of the predefined creating an object type, wherein the object type corresponds to a return type of an operation in the rule authorizing a request for information; establishing a current container variable; for each propositional expression in the rule authorizing a request for information, setting the current container to be the object type, establishing a context for the propositional expression, processing the propositional expression in the rule authorizing a request for information, and recording the object type in the current container, the object type being a context resulting from processing the propositional expression; wherein the data causing the machine to perform processing the propositional expression comprises data that, when accessed by the machine, causes the machine to perform operation comprising; parsing the propositional expression such that if a second propositional interrogative is applied to the propositional expression then parsing the propositional expression to which the second propositional interrogative is applied, and otherwise, when the propositional expression includes an interrogative operator then processing the propositional expression containing a term to which the interrogative operator is applied; and wherein the data causing the machine to perform establishing the context for the propositional expression comprises data that, when accessed by the machine, causes the machine to perform operations comprising; for each pronominal reference in the propositional expression having a referent term which is a term in a previously processed propositional expression and which is not a subject of a parametric operator, if the referent term is not subject of an interrogative operator, setting the current container to be the object type that is the resulting context from the propositional expression having a referent term, otherwise, when the referent term is the subject of an interrogative operator, setting the current container to be the object type generated for the Referent term.
-
-
6. An article of manufacture comprising:
-
a machine-accessible storage medium including data that, when accessed by a machine, causes the machine to perform operation comprising the method of; receiving a stream of input representing a business rule and vocabulary; processing the received vocabulary to determine elements of the predefined creating an object type, wherein the object type corresponds to a return type of an operation in the rule authorizing a request for information; establishing a current container variable; for each propositional expression in the rule authorizing a request for information, setting the current container to be object type, establishing a context for the propositional expression, processing the propositional expression in the rule authorizing a request for information, and recording the object type in the current container, the object type being a context resulting from processing the propositional expression; wherein the data causing the machine to perform processing the propositional expression comprises data that, when accessed by the machine, causes the machine to perform operations comprising; parsing the propositional expression such that if a second propositional interrogative is applied to the propositional expression then parsing the propositional expression to which the second propositional interrogative is applied, and otherwise, when the propositional expression included an interrogative operator then processing the propositional expression containing a term to which the interrogative operator is applied; and wherein the data causing the machine to perform parsing the propositional expression to which a propositional interrogative is applied comprises data that, when accessed by the machine, causes the machine to perform operations comprising; for each role expression in the propositional expression that is not a pronominal reference and that includes no definite article or expression of a specifically referenced instance, when the role expression has a parametric operator, generating a second object type for a term in the role expression, and adding a parameter having the second object type to the operation; and processing the truthfulness of the propositional interrogative by adding a Boolean attribute to the object type designated by the current container to indicate a truth value of the propositional expression.
-
-
7. An article of manufacture comprising:
-
a machine-accessible storage medium including data that, when accessed by a machine, causes the machine to perform operations comprising the method of; receiving a stream of input representing a business rule and vocabulary; processing the received vocabulary to determine elements of the predefined creating an object type, wherein the object type corresponds to a return type of an operation in the rule authorizing a request for information; establishing a current container variable; for each propositional expression in the rule authorizing a request for information, setting the current container to be the object type, establishing a context for the propositional expression, processing the propositional expression in the rule authorizing a request for information, and recording the object type in the current container, the object type being a context resulting from processing the propositional expression; wherein the data causing the machine to perform processing the propositional expression comprises data that, when accessed by the machine, causes the machine to perform operations comprising; parsing the propositional expression such that if a second propositional interrogative is applied to the propositional expression then parsing the propositional expression to which the second propositional interrogative is applied, and otherwise, when the propositional expression includes an interrogative operator then processing the propositional expression containing a term to which the interrogative operator is applied; and wherein the data causing the machine to perform processing the propositional expression comprises data that, when accessed by the machine, causes the machine to perform operation comprising; for each role expression in the propositional expression that is not a pronominal reference, generating a second object type for a term in the role expression; if the role expression has a parametric operator adding a parameter having the second object type to the operation; otherwise, when the role expression contains the interrogative operator, adding an attribute to the object type designated by the current container having an attribute type to be a collection of objects of the second object type, and setting the current container to the second object type. - View Dependent Claims (8)
-
-
9. A system comprising:
-
a processor; and a memory coupled to the processor, the memory containing instructions that, when executed by the processor, cause the processor to perform the method of; receiving a stream of input representing a business rule and vocabulary; processing the received vocabulary to determine elements of the predefined creating an object type, wherein the object type corresponds to return type of an operation in the rule authorizing a request for information; establishing a current container variable; for each propositional expression in the rule authorizing a request for information, setting the current container to be the object type, establishing a context for the proportional expression, processing the propositional expression in the rule authorizing a request for information, and recording the object type in the current container, the object type being a context resulting from processing the propositional expression; wherein the instructions causing the processor to establish the context for the propositional expression comprises instructions that, when executed by the processor, cause the processor to; for each pronominal reference in the propositional expression having a referent term which is a term in a previously processed propositional expression and which is not a subject of a parametric operator, if the referent term is not subject of an interrogative operator set the current container to be the object type that is the resulting context from the propositional expression having a referent term, otherwise, when the referent term is subject of an interrogative operator, set the current container to be the object type generated for the referent term.
-
-
10. A system comprising:
-
a processor; and a memory coupled to the processor, the memory containing instructions that, when executed by the processor, cause the processor to perform the method of; receiving a stream of input representing a business rule and vocabulary; processing the received vocabulary to determine elements of the predefined creating an object type, wherein the object type corresponds to a return type of an operation in the rule authorizing a request for information; establishing a current container variable; for each propositional expression in the rule authorizing a request for information, setting the current container to be the object type, establishing a context for the propositional expression, processing the propositional expression in the rule authorizing a request for information, and recording the object type in the current container, the object type being a context resulting from processing the propositional expression; wherein the instructions causing the processor to process the propositional expression comprises instructions that, when executed by the processor, cause the processor to; parse the propositional expression such that if a second propositional interrogative is applied to the propositional expression then parse the propositional expression to which the second propositional interrogative is applied, and otherwise, when the propositional expression includes an interrogative operator then process the propositional expression containing a term to which the interrogative operator is applied; and wherein the instructions causing the processor to parse the propositional expression comprises instructions that, when execute by the processor, cause the processor to; for each role expression in the propositional expression that is not a pronominal reference and that includes no definite article or expression of a specifically referenced instance, when the role expression has a parametric operator, generate a second object type for a term in the role expression, and add a parameter having the second type to the operation; and process the truthfulness of the propositional interrogative by adding a Boolean attribute to the object type designated by the current container to indicate a truth value of the propositional expression.
-
-
11. A system comprising:
-
a processor; and a memory coupled to the processor, the memory containing instructions that, when executed by the processor, cause the processor to perform the method of; receiving a stream of input representing a business rule and vocabulary; processing the received vocabulary to determine elements of the predefined creating an object type, wherein the object type corresponds to a return type of an operation in the rule authorizing a request for information; establishing a current container variable; for each propositional expression in the rule authorizing a request for information, setting the current container to be the object type, establishing a context for the propositional expression, processing the propositional expression in the rule authorizing a request for information, and recording the object type in the current container, the object type being a context resulting from processing the propositional expression; wherein the instructions causing the processor to process the propositional expression comprises instructions that, when executed by the processor, cause the processor to; parse the propositional expression such that if a second propositional interrogative is applied to the propositional expression then parse the propositional expression to which the second propositional interrogative is applied, and otherwise, when the propositional expression includes an interrogative operator then process the propositional expression containing a term to which the interrogative operator is applied; and wherein the instructions causing the processor to process the propositional expression comprises instructions that, when executed by the processor, cause the processor to; for each role expression in the propositional expression that is not a pronominal reference, generate a second object type for a term in the role expression; if the role expression has a parametric operator add a parameter having the second object type to the operator; otherwise, when the role expression contains the interrogative operator, add an attribute to the object type designated by the current container having an attribute type to be a collection of object of the second object type, and set the current container to the second object type. - View Dependent Claims (12)
-
Specification