Server-side scripting that enables creation of customized documents for clients
First Claim
1. In a server included in a network that also includes a client associated with specified attributes, a method of using a decision engine to create a document for use by the client, the document being customized according to the specified attributes associated with the client, the method comprising the acts of:
- receiving a request for a document at a server application, the server application being configured to generate the document from a script, the request including at least a client identifier;
the server application generating and sending a corresponding request to a decision engine, which is separate from the server application, to select content for the document wherein the corresponding request includes at least an indication of the client identifier and specifies that the decision engine is to identify appropriate customized content for the client based on client configuration;
wherein the decision engine, upon receiving the corresponding request;
utilizes the at least an indication of the client identifier to access at least one other attribute of the client from an attribute provider, the at least one other attribute representing an aspect of the client'"'"'s configuration, the attribute provider being separate from the decision engine and the server application, wherein attributes can be added at the attribute provider without having to modify computer-executable instructions of the decision engine or the server application;
applies available decision criteria to the accessed at least one other attribute to select customized content, from a plurality of available content, that the decision engine determines to be appropriate for the client; and
sends identification of the selected customized content to the server application;
the server application receiving from the decision engine the identification of the customized content that has been selected by the decision engine, wherein the act of receiving the identification of the customized content comprises the act of receiving a first script that, when executed by the server application, results in the customized content being incorporated into the document, wherein the first script includes a reference to a second script, wherein the reference to the second script enables the server application to request additional information from the decision engine that operates as a second portion of the first script and that corresponds to customized content for the document, wherein any additional information received as part of the second portion is concatenated with the first script by the server application;
the server application creating the document and incorporating into the document the customized content that has been selected by the decision engine, as identified by said first script, the customized content being appropriate for presentation at the client based on the configuration of the client represented in the at least one other client attribute accessed from the attribute provider; and
transmitting the document to the client.
3 Assignments
0 Petitions
Accused Products
Abstract
Server-side scripting for creating customized documents for clients is disclosed. A server application processes code included in a script, causing the server application to issue a request to a decision engine to select content that is designated as appropriate for a client based on attributes of the client. The request is issued to the decision engine without the server application indicating the decision criteria that are to be used or the particular attributes of the client on which the selection is to be based. The decision engine uses the appropriate decision criteria and selects content for the document from content files associated with the decision engine. The decision engine can instead select further portions of script from the content files, which are processed by the server application and result in additional decisions being made by the decision engine. In this manner, the customization process can be made as complex as necessary without significantly increasing the complexity of the scripts executed by the server application. The selection complexity is shifted to the decision engine, and changes to the selection logic can be made there rather than at the scripts.
-
Citations
23 Claims
-
1. In a server included in a network that also includes a client associated with specified attributes, a method of using a decision engine to create a document for use by the client, the document being customized according to the specified attributes associated with the client, the method comprising the acts of:
-
receiving a request for a document at a server application, the server application being configured to generate the document from a script, the request including at least a client identifier; the server application generating and sending a corresponding request to a decision engine, which is separate from the server application, to select content for the document wherein the corresponding request includes at least an indication of the client identifier and specifies that the decision engine is to identify appropriate customized content for the client based on client configuration; wherein the decision engine, upon receiving the corresponding request; utilizes the at least an indication of the client identifier to access at least one other attribute of the client from an attribute provider, the at least one other attribute representing an aspect of the client'"'"'s configuration, the attribute provider being separate from the decision engine and the server application, wherein attributes can be added at the attribute provider without having to modify computer-executable instructions of the decision engine or the server application; applies available decision criteria to the accessed at least one other attribute to select customized content, from a plurality of available content, that the decision engine determines to be appropriate for the client; and sends identification of the selected customized content to the server application; the server application receiving from the decision engine the identification of the customized content that has been selected by the decision engine, wherein the act of receiving the identification of the customized content comprises the act of receiving a first script that, when executed by the server application, results in the customized content being incorporated into the document, wherein the first script includes a reference to a second script, wherein the reference to the second script enables the server application to request additional information from the decision engine that operates as a second portion of the first script and that corresponds to customized content for the document, wherein any additional information received as part of the second portion is concatenated with the first script by the server application; the server application creating the document and incorporating into the document the customized content that has been selected by the decision engine, as identified by said first script, the customized content being appropriate for presentation at the client based on the configuration of the client represented in the at least one other client attribute accessed from the attribute provider; and transmitting the document to the client. - View Dependent Claims (2, 3, 4, 5, 6, 19, 20, 21, 22, 23)
-
-
7. In a server included in a network that also includes a client associated with specified attributes, a method of creating a document for use by the client, the document being customized according to the specified attributes associated with the client, the method comprising the acts of:
-
receiving a request for a document at a server application, the server application being configured to generate the document from a script, the request including at least a client identifier; assembling the script at the server application, the script including instructions for creating a document, wherein assembling the script includes; upon processing a first portion of a script associated with the document and identifying a reference to a second portion of script within the first portion of script, issuing to a decision engine, that is separate from the server application, another request for the decision engine to select the second portion of the script, wherein the request sent from the server application to the decision engine includes at least an indication of the client identifier and specifies that the decision engine is to identify the second portion of the script based on client configuration; wherein the decision engine, upon receiving the other request; utilizes the at least an indication of the client identifier to identify at least one other client attribute of the client from an attribute provider, the at least one other attribute representing an aspect of the client'"'"'s configuration, the attribute provider being separate from the decision engine and the server application such that attributes can be added at the attribute provider without having to modify computer-executable instructions of the decision engine or the server application; selects the second portion of the script based on the at least one other identified client attribute in accordance with decision criteria available to the decision engine; and sends the second portion of the script to the server application; and the server application receiving from the decision engine the requested second portion of the script; the server application concatenating the first portion of the script and the second portion of the script by inserting the second portion of script into the first script portion of script to replace the reference to the second portion of script, prior to executing the first portion of script to incorporate customized content into the document; and executing the first portion of the script and the second portion of the script so as to incorporate customized content into the document, the customized content being appropriate for presentation at the client based on the configuration of the client represented in the at least one other client attribute accessed from the attribute provider. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer program product for implementing, in a server included in a network that also includes a client associated with specified attributes, a method of creating a document for use by the client, the document being customized according to the specified attributes associated with the client, the computer program product comprising:
a computer-readable medium carrying computer-executable instructions for performing the method, the method comprising the acts of; receiving a request for a document at a server application, the server application being configured to generate the document from a script, the request including at least a client identifier; assembling the script at the server application, the script including instructions for creating a document, wherein assembling the script includes; upon processing a first portion of a script associated with the document, issuing to a decision engine, that is separate from the server application, another request for the decision engine to select a second portion of the script, wherein the request sent from the server application to the decision engine includes at least an indication of the client identifier and specifies that the decision engine is to identify the second portion of the script based on client configuration; wherein the decision engine, upon receiving the other request; utilizes the at least an indication of the client identifier to identify at least one other client attribute of the client from an attribute provider, the at least one other attribute representing an aspect of the client'"'"'s configuration, the attribute provider being separate from the decision engine and the server application such that attributes can be added at the attribute provider without having to modify computer-executable instructions of the decision engine or the server application; selects the second portion of the script based on the at least one other identified client attribute in accordance with decision criteria available to the decision engine; sends the second portion of the script to the server application; and the server application receiving from the decision engine the requested second portion of the script; the server application concatenating the first portion of the script and the second portion of the script by inserting the second portion of script into the first script portion of script to replace the reference to the second portion of script, prior to executing the first portion of script to incorporate customized content into the document; and executing the first portion of the script and the second portion of the script so as to create the incorporate customized content into the document, the customized content being appropriate for presentation at the client based on the configuration of the client represented in the at least one other client attribute accessed from the attribute provider. - View Dependent Claims (14, 15, 16, 17, 18)
Specification