System and Method for Processing Markup Language Templates from Partial Input Data
First Claim
1. A computer-implemented method for processing a template, the method comprising:
- receiving a first template at a first computing device, the first template comprising;
a plurality of layout instructions specifying a layout of input data in a document to be generated from the first template,a plurality of template-processing instructions, the template-processing instructions specifying how to bind input data to the document, the plurality of template-processing instructions comprising a first template-processing instruction dependent on a first template parameter associated with input data available only at the first computing device and a second template-processing instruction dependent on a second template parameter associated with input data available only at a second computing device, andan annotation associated with the second template parameter, the annotation indicative of the availability of input data only at the second computing device;
identifying the second template-processing instruction for evaluation at the second computing device based at least in part on the annotation;
processing the first template at the first computing device based on input data available at the first computing device to generate a second template, wherein processing the first template at the first computing device comprises embedding, at the first computing device, the second template-processing instruction in the second template such that the second template is both a template and a valid document for display at the second computing device, wherein the second template-processing instruction is not evaluated at the first computing device.
2 Assignments
0 Petitions
Accused Products
Abstract
Template processing techniques to generate documents, such as HTML documents, in situations where the template depends on input data that are available in different locations are provided. A template can include a plurality of template-processing instructions which can specify how to bind input data from a data structure to the template. The input data can be declared as template parameters in the template. According to aspects of the present disclosure, the template can include an annotation associated with one or more of the template parameters. The annotation can be indicative of the availability of input data at the server or at a client device.
25 Citations
20 Claims
-
1. A computer-implemented method for processing a template, the method comprising:
-
receiving a first template at a first computing device, the first template comprising; a plurality of layout instructions specifying a layout of input data in a document to be generated from the first template, a plurality of template-processing instructions, the template-processing instructions specifying how to bind input data to the document, the plurality of template-processing instructions comprising a first template-processing instruction dependent on a first template parameter associated with input data available only at the first computing device and a second template-processing instruction dependent on a second template parameter associated with input data available only at a second computing device, and an annotation associated with the second template parameter, the annotation indicative of the availability of input data only at the second computing device; identifying the second template-processing instruction for evaluation at the second computing device based at least in part on the annotation; processing the first template at the first computing device based on input data available at the first computing device to generate a second template, wherein processing the first template at the first computing device comprises embedding, at the first computing device, the second template-processing instruction in the second template such that the second template is both a template and a valid document for display at the second computing device, wherein the second template-processing instruction is not evaluated at the first computing device. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9)
-
-
2. (canceled)
-
10. A computing device comprising a processor, a memory, and a network interface, the processor configured to execute computer-readable instructions stored in the memory to cause the processor to perform the operations of:
-
receiving a first template at the computing device, wherein the first template comprises; a plurality of layout instructions specifying a layout of input data in a document; a plurality of template-processing instructions, the template-processing instructions specifying how to bind input data to the document, the plurality of template-processing instructions comprising a first template-processing instruction dependent on a first template parameter associated with input data available only at the computing device and a second template-processing instruction dependent on a second template parameter associated with, input data available only at a remote computing device; and an annotation associated with the second template parameter, the annotation indicative of the availability of input data only at the remote computing device; identifying the second template-processing instruction for evaluation at the remote computing device based at least in part on the annotation; processing the first template at the computing device based on input, data available at the computing device to generate a second template, wherein processing the first template at the computing device comprises embedding, at the computing device, the second template-processing instruction in the second template such that second template is both a template and a valid document for display at the remote computing device, wherein the second template-processing instruction is not evaluated at the computing device; and providing the second template, via the network interface, for access by the remote computing device. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
11. (canceled)
-
17. A computer-implemented method for processing a template, the method comprising:
-
receiving a client side template at a computing device via a network interface, the client side template comprising a client side template-processing instruction dependent on a client side template parameter associated with input data available only at the computing device, the client side template-processing instruction embedded in the client side template such that the client side template is both a template and a valid document for display at the computing device; and binding, at the computing device, input data available only at the computing device to the client side template parameter pursuant to the client side template-processing instruction embedded in the client side template; wherein the client side template is generated from a server side template, the server side template comprising the client side template-processing instruction and a server side template-processing instruction, the server side template-processing instruction dependent on a server side template parameter associated with input data available only at a remote computing device, the server side template further comprising an annotation associated with the client side template parameter, the annotation indicative of the availability of input data only at the computing device. - View Dependent Claims (19, 20)
-
-
18. (canceled)
Specification