XML STREAMING TRANSFORMER (XST)
First Claim
Patent Images
1. A computer-implemented method of transforming a document, including:
- using a processor, responding to an element start-event in an event data stream by searching for a named template that matches the element start-event,upon finding a matching named template, activating the named template, andupon not finding the matching named template, treating an element between the element start-event and an element end-event of the event data stream as content of a parent element; and
responding to the element end-event paired to the element start-event, using the activated named template, including;
responsive to instructions in the named template, outputting at least information from or corresponding to (i) the named template, (ii) an element or (iii) other processing related to the named template.
0 Assignments
0 Petitions
Accused Products
Abstract
The present invention includes devices and methods to specify a document transformation. A template specifies a transformation that is applied to a document in a streaming mode, without building a full object tree in memory representing the document.
5 Citations
21 Claims
-
1. A computer-implemented method of transforming a document, including:
-
using a processor, responding to an element start-event in an event data stream by searching for a named template that matches the element start-event, upon finding a matching named template, activating the named template, and upon not finding the matching named template, treating an element between the element start-event and an element end-event of the event data stream as content of a parent element; and responding to the element end-event paired to the element start-event, using the activated named template, including; responsive to instructions in the named template, outputting at least information from or corresponding to (i) the named template, (ii) an element or (iii) other processing related to the named template. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer-implemented method of transforming a document, including:
-
using a processor, responding to an element start-event in an event data stream by searching for a first named template that matches the element start-event, upon finding a matching first named template, activating the first named template, and upon not finding the matching first named template treating an element between the element start-event and an element end-event as content of a parent element; responding to a nested element start-event in the event data stream by matching the nested element start-event to a second named template and activating the second named template; responding to additional events in the event data stream according to instructions in a most recently activated named template; and responding to the element end-event paired to the nested element start-event by processing the second named template, including; responsive to instructions in the second named template, outputting at least information from or corresponding to (i) the second named template, (ii) an element or (iii) other processing related to the second named template. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A non-transitory computer memory media, including computer program instructions that direct a processor to:
-
respond to an element start-event in an event data stream by searching for a named template that matches the element start-event, upon finding a matching named template, activating the named template, and upon not finding the matching named template, treating an element between the element start-event and an element end-event of the event data stream as content of a parent element; and respond to the element end-event paired to the element start-event, using the activated named template, by; responsive to instructions in the named template, outputting at least information from or corresponding to (i) the named template, (ii) an element or (iii) other processing related to the named template. - View Dependent Claims (17, 18)
-
-
19. A non-transitory computer memory media, including computer program instructions that direct a processor to:
-
load into a memory one or more templates; and process an event data stream, including repeatedly; searching for a named template that matches an element start-event in the event data stream, upon finding a matching named template, activating the named template, and upon not finding the matching named template, treating an element between the element start-event and an element end-event of the event data stream as content of a parent element; and processing instructions in the matching named template to transform a buffered input stream that is buffered until the element end-event, and to output results of the transform of the buffered input stream. - View Dependent Claims (20, 21)
-
Specification