Engine for processing content rules associated with locations in a page
First Claim
Patent Images
1. A network device comprising:
- a transceiver to send and receive data over the network; and
a processor that is operative to perform actions including;
predetermining a set of rules for performing one or more corresponding tests on an environment associated with a client device, the environment comprising at least a location of the client device, the client device'"'"'s location is used for testing in accordance with a number of rules of the set;
receiving a page from a network application, the page comprising at least one page element;
for each page element, evaluating a test that is performed for at least one of the predetermined set of rules corresponding to the page element and selectively modifying the page element based on the evaluation of the test for the at least one corresponding predetermined rule; and
if a plurality of predetermined rules having equivalent priority correspond to the page element, then at least the number of terms in the test are employed to determine the priority for evaluating each of the plurality of predetermined rules, wherein each predetermined rule having more than one device realm property is organized for retrieval based at least on retrieval cost;
wherein validating each rule includes checking a realm dictionary for a description of information that the rule can be tested against, checking an action dictionary for a description of possible actions that the rule specifies, generating optimized rules based on the checking of the realm dictionary and the action dictionary, and generating a rules file with the optimized rules in a position-independent format.
9 Assignments
0 Petitions
Accused Products
Abstract
A device, system, and method are directed towards enabling a network application to process and respond to requests from client devices. A rules engine receives a page, evaluates a set of rules, and performs actions based on the rules. Actions may modify the page or perform other actions affecting the environment. A rules engine may also process rules prior to processing pages, in order to optimize subsequent evaluation of the rules.
102 Citations
21 Claims
-
1. A network device comprising:
-
a transceiver to send and receive data over the network; and a processor that is operative to perform actions including; predetermining a set of rules for performing one or more corresponding tests on an environment associated with a client device, the environment comprising at least a location of the client device, the client device'"'"'s location is used for testing in accordance with a number of rules of the set; receiving a page from a network application, the page comprising at least one page element; for each page element, evaluating a test that is performed for at least one of the predetermined set of rules corresponding to the page element and selectively modifying the page element based on the evaluation of the test for the at least one corresponding predetermined rule; and if a plurality of predetermined rules having equivalent priority correspond to the page element, then at least the number of terms in the test are employed to determine the priority for evaluating each of the plurality of predetermined rules, wherein each predetermined rule having more than one device realm property is organized for retrieval based at least on retrieval cost; wherein validating each rule includes checking a realm dictionary for a description of information that the rule can be tested against, checking an action dictionary for a description of possible actions that the rule specifies, generating optimized rules based on the checking of the realm dictionary and the action dictionary, and generating a rules file with the optimized rules in a position-independent format. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system comprising:
-
a server computer comprising a processor and a storage medium for tangibly storing thereon program logic for execution by the processor, the stored program logic comprising; predetermining logic executed by the processor for predetermining a set of rules for performing one or more corresponding tests on an environment associated with a client device, the environment comprising at least a location of the client device, the client device'"'"'s location is used for testing in accordance with a number of rules of the set; receiving logic executed by the processor for receiving, by a network application, a request for a page from a client device; in response to receiving the request for the page from the client device, retrieving logic executed by the processor for retrieving, by the network application from each of a number of web services, response data to be included in the page; evaluating logic executed by the processor for evaluating, by the network application for each response data, a test that is performed for at least one of the predetermined set of rules corresponding to the response data and selectively modifying the response data based on the evaluation of the test for the at least one corresponding predetermined rule; if the plurality of predetermined rules having equivalent priority correspond to the response data, then at least the number of terms in the test are employed to determine the priority for evaluating each of the plurality of predetermined rules, wherein each predetermined rule having more than one device realm property is organized for retrieval based at least on retrieval cost; generating logic executed by the processor for generating, by the network application, the page based on the selectively modified response data; and making logic executed by the processor for making, by the network application, the page available for sending to the client device; wherein validating each rule includes checking a realm dictionary for a description of information that the rule can be tested against, checking an action dictionary for a description of possible actions that the rule specifies, generating optimized rules based on the checking of the realm dictionary and the action dictionary, and generating a rules file with the optimized rules in a position-independent format. - View Dependent Claims (12)
-
-
13. A method comprising:
-
predetermining, by at least one server device, a set of rules for performing one or more corresponding tests on an environment associated with a client device, the environment comprising at least a location of the client device, the client device'"'"'s location is used for testing in accordance with a number of rules of the set; receiving an input page; selectively evaluating each predetermined rule of the predetermined rule set, based on the input page, and selectively modifying the input page, based on each performed test that corresponds to each evaluated predetermined rule, wherein each predetermined rule of the predetermined rule set comprises a test of at least one environmental property and a corresponding action; if a plurality of predetermined rules having equivalent priority correspond to the input page, then at least the number of terms in the test are employed to determine the priority for evaluating each of the plurality of predetermined rules, wherein each predetermined rule having more than one device realm property is organized for retrieval based at least on retrieval cost; and forwarding the modified input page to the client device; wherein validating each rule includes checking a realm dictionary for a description of information that the rule can be tested against, checking an action dictionary for a description of possible actions that the rule specifies, generating optimized rules based on the checking of the realm dictionary and the action dictionary, and generating a rules file with the optimized rules in a position-independent format. - View Dependent Claims (14, 15)
-
-
16. A system comprising;
at least one network device including a processor and a storage medium for tangibly storing thereon program logic for execution by the processor, the stored program logic comprising; predetermining logic executable by the processor for predetermining a set of rules, each predetermined rule specifying actions to be selectively taken based on a corresponding test that is performed to determine at least one attribute of a client device, the at least one attribute comprising a location of the client device, the client device'"'"'s location is used for testing in accordance with a number of rules of the set; rule engine logic executable by the processor for processing and modifying an input text received from the network application, the rule engine logic further comprising logic executable by the processor for evaluating, a performance of at least one test that corresponds to at least one of the set of predetermined rules to generate an output text for forwarding to the client device, wherein the output text is based on the modified input text, and based on at least one attribute determined by the evaluation of the corresponding test performed for the client device, and wherein the input text is independent of said attribute; and if a plurality of predetermined rules having equivalent priority correspond to the input text, then at least the number of terms in the test are employed to determine the priority for evaluating each of the plurality of predetermined rules, wherein each predetermined rule having more than one device realm property is organized for retrieval based at least on retrieval cost; wherein validating each rule includes checking a realm dictionary for a description of information that the rule can be tested against, checking an action dictionary for a description of possible actions that the rule specifies, generating optimized rules based on the checking of the realm dictionary and the action dictionary, and generating a rules file with the optimized rules in a position-independent format. - View Dependent Claims (17, 18, 19, 20, 21)
Specification