Generic code book compression for XML based application programming interfaces
First Claim
1. A method in a source device of supplying an application programming interface (API) command to a destination device via a communications channel, the method comprising:
- specifying the API command using first tags having semantics defined based on a generic API document type definition (DTD);
compressing the first tags using selected compression codes to generate compressed data;
synthesizing a synthetic DTD, identifying the selected compression codes, by specifying second tags having semantics defined by a generic code book DTD; and
transmitting the compressed data and the second tags via the communications channel, enabling the destination device to synthesize the synthetic DTD based on the second tags and a stored copy of the generic code book DTD, for synthesis of the API command by decompressing the first tags and based on a stored copy of the generic API DTD.
1 Assignment
0 Petitions
Accused Products
Abstract
A synthetic code book document type definition (DTD) is generated that identifies selected compression codes, based on specifying code-book extensible markup language (XML) tags having semantics defined according to a generic code book document type definition (DTD). The compression codes are used to compress API commands, defined by second XML tags having semantics defined by a generic API DTD, into synthesized data. The synthesized data and the code-book XML tags are supplied to a destination device configured for storing the generic code book DTD and the generic API DTD, enabling the destination device to synthesize a code book for recovery of the API commands from the synthesized data.
-
Citations
50 Claims
-
1. A method in a source device of supplying an application programming interface (API) command to a destination device via a communications channel, the method comprising:
-
specifying the API command using first tags having semantics defined based on a generic API document type definition (DTD);
compressing the first tags using selected compression codes to generate compressed data;
synthesizing a synthetic DTD, identifying the selected compression codes, by specifying second tags having semantics defined by a generic code book DTD; and
transmitting the compressed data and the second tags via the communications channel, enabling the destination device to synthesize the synthetic DTD based on the second tags and a stored copy of the generic code book DTD, for synthesis of the API command by decompressing the first tags and based on a stored copy of the generic API DTD. - View Dependent Claims (2, 3, 4, 5, 6, 7)
generating the first tags according to the device specific DTD and based on runtime execution of an application resource in the source device; and
third specifying within the first tags a third attribute tag configured for modifying a second prescribed attribute value specified by the generic API DTD, and a fourth attribute tag having a second generated value specified as mandatory by the generic API DTD.
-
-
5. The method of claim 3, wherein the transmitting step includes transmitting the compressed data as a payload of a UDP packet.
-
6. The method of claim 3, wherein the transmitting step includes transmitting the device specific tags to the destination device for synthesis of the API command from the first tags.
-
7. The method of claim 6, wherein the transmitting step includes transmitting the second tags and the device specific tags in response to a DTD request from the destination device.
-
8. A method in a destination device of receiving an application programming interface (API) command from a source device via a communications channel, the method comprising:
-
storing a generic API document type definition (DTD) and a generic code book DTD;
receiving, from the source device, compressed data and first tags having semantics defined based on the generic code book DTD;
first synthesizing a synthetic DTD based on the first tags and the generic code book DTD;
second synthesizing second tags based on decompressing the compressed data according to the synthetic DTD, the second tags having semantics defined based on the generic API DTD; and
executing the API command based on interpreting the second tags based on the generic API DTD. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A source device configured for supplying an application programming interface (API) command to a destination device via a communications channel, the source device comprising:
-
a device memory configured for storing a generic API document type definition (DTD) and a generic code book DTD;
a processor configured for;
(1) generating first tags for specifying the API command and having semantics defined based on the generic API DTD, (2) generating compressed data by compressing the first tags using selected compression codes, (3) synthesizing a synthetic DTD, identifying the selected compression codes, by specifying second tags having semantics defined by a generic code book DTD; and
a network interface configured for outputting the compressed data and the second tags via the communications channel, enabling the destination device to synthesize the synthetic DTD based on the second tags and a stored copy of the generic code book DTD, for synthesis of the API command by decompressing the first tags and based on a stored copy of the generic API DTD. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A destination device configured for receiving an application programming interface (API) command from a source device via a communications channel, the destination device comprising:
-
a device memory configured for storing a generic API document type definition (DTD) and a generic code book DTD;
a network interface configured for receiving from the source device compressed data and first tags having semantics defined based on the generic code book DTD; and
a processor configured for;
(1) first synthesizing a synthetic DTD based on the first tags and the generic code book DTD, (2) second synthesizing second tags based on decompressing the compressed data according to the synthetic DTD, the second tags having semantics defined based on the generic API DTD, and (3) executing the API command based on interpreting the second tags based on the generic API DTD. - View Dependent Claims (21, 22, 23, 24)
-
-
25. A computer readable medium having stored thereon sequences of instructions for supplying an application programming interface (API) command by a source device to a destination device via a communications channel, the sequences of instructions including instructions for performing the steps of:
-
specifying the API command using first tags having semantics defined based on a generic API document type definition (DTD);
compressing the first tags using selected compression codes to generate compressed data;
synthesizing a synthetic DTD, identifying the selected compression codes, by specifying second tags having semantics defined by a generic code book DTD; and
transmitting the compressed data and the second tags via the communications channel, enabling the destination device to synthesize the synthetic DTD based on the second tags and a stored copy of the generic code book DTD, for synthesis of the API command by decompressing the first tags and based on a stored copy of the generic API DTD. - View Dependent Claims (26, 27, 28, 29, 30, 31)
generating the first tags according to the device specific DTD and based on runtime execution of an application resource in the source device; and
third specifying within the first tags a third attribute tag configured for modifying a second prescribed attribute value specified by the generic API DTD, and a fourth attribute tag having a second generated value specified as mandatory by the generic API DTD.
-
-
29. The medium of claim 27, wherein the transmitting step includes transmitting the compressed data as a payload of a UDP packet.
-
30. The medium of claim 27, wherein the transmitting step includes transmitting the device specific tags to the destination device for synthesis of the API command from the first tags.
-
31. The medium of claim 30, wherein the transmitting step includes transmitting the second tags and the device specific tags in response to a DTD request from the destination device.
-
32. A computer readable medium having stored thereon sequences of instructions for receiving by a destination device an application programming interface (API) command from a source device via a communications channel, the sequences of instructions including instructions for performing the steps of:
-
storing a generic API document type definition (DTD) and a generic code book DTD;
receiving, from the source device, compressed data and first tags having semantics defined based on the generic code book DTD;
first synthesizing a synthetic DTD based on the first tags and the generic code book DTD;
second synthesizing second tags based on decompressing the compressed data according to the synthetic DTD, the second tags having semantics defined based on the generic API DTD; and
executing the API command based on interpreting the second tags based on the generic API DTD. - View Dependent Claims (33, 34, 35, 36, 37)
-
-
38. A source device configured for supplying an application programming interface (API) command to a destination device via a communication channel, the source device comprising:
-
means for specifying the API command using first tags having semantics defined based on a generic API document type definition (DTD);
means for compressing the first tags using selected compression codes to generate compressed data;
means for synthesizing a synthetic DTD, identifying the selected compression codes, by specifying second tags having semantics defined by a generic code book DTD; and
means for transmitting the compressed data and the second tags via the communications channel, enabling the destination device to synthesize the synthetic DTD based on the second tags and a stored copy of the generic code book DTD, for synthesis of the API command by decompressing the first tags and based on a stored copy of the generic API DTD. - View Dependent Claims (39, 40, 41, 42, 43, 44)
generating the first tags according to the device specific DTD and based on runtime execution of an application resource in the source device; and
specifying within the first tags a third attribute tag configured for modifying a second prescribed attribute value specified by the generic API DTD, and a fourth attribute tag having a second generated value specified as mandatory by the generic API DTD.
-
-
42. The device of claim 40, wherein the transmitting means is configured for transmitting the compressed data as a payload of a UDP packet.
-
43. The device of claim 40, wherein the transmitting means is configured for transmitting the device specific tags to the destination device for synthesis of the API command from the first tags.
-
44. The device of claim 43, wherein the transmitting means is configured for transmitting the second tags and the device specific tags in response to a DTD request from the destination device.
-
45. A destination device configured for receiving an application programming interface (API) command from a source device via a communications channel, the destination device comprising:
-
means for storing a generic API document type definition (DTD) and a generic code book DTD;
means for receiving, from the source device, compressed data and first tags having semantics defined based on the generic code book DTD;
means for first synthesizing a synthetic DTD based on the first tags and the generic code book DTD;
means for second synthesizing second tags based on decompressing the compressed data according to the synthetic DTD, the second tags having semantics defined based on the generic API DTD; and
means for executing the API command based on interpreting the second tags based on the generic API DTD. - View Dependent Claims (46, 47, 48, 49, 50)
-
Specification