High-performance extensible document transformation
First Claim
1. A computer program product embodied on one or more computer-readable media, the computer program product adapted for efficiently transforming extensible structured documents and comprising:
- computer-readable program code means for identifying a source document type;
computer-readable program code means for specifying one or more fast transformations to be performed on documents of the source document type;
computer-readable program code means for specifying a source node description and a target node description for each of the specified fast transformations;
computer-readable program code means for storing transformation information for each of the specified fast transformations, the transformation information comprising a transformation identifier, a source node description, and the target node description; and
computer-readable program code means for processing incoming source documents to generate output documents using the stored transformation information, further comprising;
computer-readable program code means for receiving a source document;
computer-readable program code means for selecting, manually or based upon a comparison of the received some document to the stored transformation information, zero or more fast transformations to be performed;
computer-readable program code means for applying the selected fast transformations; and
computer-readable program code means for generating one or more output documents using a result of the computer-readable program code means for applying.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention provides a method, system, and computer program product for applying transformations to extensible documents, enabling reductions in the processing time required to transform arbitrarily-structured documents having particular well-defined elements. Signatures for structured document types are defined, along with one or more transformations to be performed upon documents of that type. The transformations are specified using syntax elements referred to as maps. A map specifies an operation code for the transformation to be performed, and describes the input and output of the associated transformation. A special map processing engine locates an appropriate transformation object to a particular input document at run-time, and applies the transformation operation according to the map definition. This technique is preferably used for a set of predetermined core transformations, with other transformations being processed using stylesheet engines of the prior art. The input documents may be encoded in the Extensible Markup Language (XML), or in other structured notations. The techniques of the present invention are particularly well suited to use in high-volume and throughput-sensitive environments such as that encountered by business-to-business transaction servers.
-
Citations
37 Claims
-
1. A computer program product embodied on one or more computer-readable media, the computer program product adapted for efficiently transforming extensible structured documents and comprising:
-
computer-readable program code means for identifying a source document type;
computer-readable program code means for specifying one or more fast transformations to be performed on documents of the source document type;
computer-readable program code means for specifying a source node description and a target node description for each of the specified fast transformations;
computer-readable program code means for storing transformation information for each of the specified fast transformations, the transformation information comprising a transformation identifier, a source node description, and the target node description; and
computer-readable program code means for processing incoming source documents to generate output documents using the stored transformation information, further comprising;
computer-readable program code means for receiving a source document;
computer-readable program code means for selecting, manually or based upon a comparison of the received some document to the stored transformation information, zero or more fast transformations to be performed;
computer-readable program code means for applying the selected fast transformations; and
computer-readable program code means for generating one or more output documents using a result of the computer-readable program code means for applying. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system for transforming extensible structured documents, comprising;
-
means for specifying fast transformations to be applied to incoming source documents, further comprising;
means for specifying a signature that identifies a source document type;
means for specifying one or more fast transformations to be performed on documents that match the specified signature;
means for specifying a source node description and a target node description for each of the specified fast transformations; and
means for storing transformation information for each of the specified fast transformations, the transformation information comprising a transformation identifier, the source node description, and the target node description;
means for applying the fast transformations to particular incoming source documents matching criteria of the specified fast transformations; and
means for applying general purpose transformation to incoming source documents not matching criteria of the specified fast transformations. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A method for transforming extensible structured documents, comprising the steps of:
specifying fast transformations to be applied to incoming source documents, further comprising the steps of;
specifying a signature that identifies a source document type;
specifying one or more fast transformations to be performed on documents that match the specified signature;
specifying a source node description and a target node description for each of the specified fast transformations; and
storing transformation information for each of the specified fast transformations, the transformation information comprising a transformation identifier, the source node description, and the target node description;
applying the fast transformations to particular incoming source documents matching criteria of the specified fast transformations; and
applying general purpose transformations to incoming source documents not matching criteria of the specified fast transformations. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37)
Specification