Electronic document delivery system employing distributed document object model (DOM) based transcoding and providing assistive technology support
First Claim
1. A transcoder proxy, comprising:
- a synchronous document object model (DOM) generator adapted to receive an electronic document in a first digital format, wherein the electronic document includes at least one element, and wherein the synchronous DOM generator comprises an identifier (ID) generator configured to assign a unique identifier to each element, and wherein the synchronous DOM generator is configured to;
form a pre-transcoded DOM representing a logical structure of the electronic document, wherein elements are associated with corresponding identifiers within the pre-transcoded DOM;
provide a portion of the electronic document in the first digital format;
a transcoder coupled to receive the portion of the electronic document in the first digital format and configure to;
translate the portion of the electronic document from the first digital format to an original script in a second digital format, wherein the original script includes a element and the identifier assigned to the element; and
provide the original script;
an assistive technology interface generator coupled to the synchronous DOM generator and adapted to receive as in technology event information and the identifier assigned to the element within the original script, wherein the assistive technology interface generator is configured to;
use the assistive technology event information and indentifier to produce DOM assess commands; and
provide the DOM access commands to the synchronous DOM generator.
3 Assignments
0 Petitions
Accused Products
Abstract
Several embodiments of an electronic document delivery system are described including a client machine (e.g., a palmtop/handheld computer or wireless communication device) coupled to a transcoder proxy. The system allows a client machine with limited resources to provide an assistive technology solution for a physically challenged user. In one embodiment, the client machine includes an assistive technology which functions as an interface for a device (e.g., a Braille display or a speech engine). The transcoder proxy receives an electronic document expressed in a first digital format (e.g., HTML or XML). The transcoder proxy assigns a unique identifier to the element, and forms a model of a logical structure of the document (e.g., a document object model or DOM). The transcoder proxy uses the model to produce an “original” script including a portion of the document expressed in a second digital format (e.g., a scripting language). The client machine uses the original script to present the document portion. The client machine generates an assistive technology event in response to user input via the assistive technology device, associates the assistive technology event with the element, and provides assistive technology event information and the element identifier to the transcoder proxy. The transcoder proxy accesses the element within the model using the identifier, uses the model to produce a “modification” script, and provides the modification script to the client machine. The client machine uses the modification script to modify the presented portion of the document.
108 Citations
22 Claims
-
1. A transcoder proxy, comprising:
-
a synchronous document object model (DOM) generator adapted to receive an electronic document in a first digital format, wherein the electronic document includes at least one element, and wherein the synchronous DOM generator comprises an identifier (ID) generator configured to assign a unique identifier to each element, and wherein the synchronous DOM generator is configured to;
form a pre-transcoded DOM representing a logical structure of the electronic document, wherein elements are associated with corresponding identifiers within the pre-transcoded DOM;
provide a portion of the electronic document in the first digital format;
a transcoder coupled to receive the portion of the electronic document in the first digital format and configure to;
translate the portion of the electronic document from the first digital format to an original script in a second digital format, wherein the original script includes a element and the identifier assigned to the element; and
provide the original script;
an assistive technology interface generator coupled to the synchronous DOM generator and adapted to receive as in technology event information and the identifier assigned to the element within the original script, wherein the assistive technology interface generator is configured to;
use the assistive technology event information and indentifier to produce DOM assess commands; and
provide the DOM access commands to the synchronous DOM generator. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
receive the DOM access commands;
access the element within the pre-transcoded DOM using the DOM access commands; and
provide a second portion of the electronic document.
-
-
3. The transcoder proxy as recited in claim 2, wherein the transcoder is further configured to:
-
receive the second portion of the electronic document;
translate the second portion of the electronic document from the first digital format to a modification script in the second digital format; and
provide the modification script.
-
-
4. The transcoder proxy as recited in claim 1, wherein the assistive technology event information pertains to an assistive technology event generated in response to user input via a device and an assistive technology which functions as an interface for the device.
-
5. The transcoder proxy as recited in claim 1, wherein the first digital format is a text-based markup language.
-
6. The transcoder proxy as recited in claim 5, wherein the text-based markup language is hypertext markup language (HTML) or extensible markup language (XML).
-
7. The transcoder proxy as recited in claim 1, wherein the second digital format is a scripting language.
-
8. The transcoder proxy as recited in claim 1, wherein the pre-transcoded DOM defines methods for accessing and manipulating the electronic document.
-
9. The transcoder proxy as recited in claim 1, wherein the transcoder proxy resides within a server.
-
10. A client machine, comprising:
-
an assistive technology; and
a user agent coupled to the assistive technology, and adapted for coupling to a transcoder proxy, wherein the user agent is configured to;
receive an original script from the transcoder proxy, wherein the original script includes an element and an identifier assigned to the element;
form a transcoded DOM in response to the original script, wherein the transcoded DOM is a representation of the portion of the electronic document;
use the transcoded DOM to produce output commands;
provide the output commands to the assistive technology;
generate an assistive technology event in response to user input via the assistive technology;
associate the assistive technology event with the element within the original script;
provide assistive technology event information and the identifier assigned to the element associated with the assistive technology event to the transcoder proxy;
receive a modification script from the transcoder proxy;
modify the transcoded DOM in response to the modification script. - View Dependent Claims (11, 12)
-
-
13. A system for delivering an electronic document, comprising:
-
a transcoder proxy, including;
a synchronous document object model (DOM) generator coupled to receive the electronic document in a first digital format, wherein the electronic document includes at least one element, and wherein the synchronous DOM generator comprises an identifier (ID) generator configured to assign a unique identifier to each element, and wherein the synchronous DOM generator is configured to;
form a pre-transcoded DOM representing a logical structure of the electronic document, wherein elements are associated with corresponding identifiers within the pre-transcoded DOM;
provide a portion of the electronic document in the first digital format;
a transcoder coupled to receive the portion of the electronic document in the first digital format and configured to;
translate the portion of the electronic document from the first digital format to an original script in a second digital format, wherein the original script includes an element and the identifier assigned to the element;
provide the original script;
an assistive technology interface generator coupled to the synchronous DOM generator and to receive assistive technology event information pertaining to an assistive technology event associated with the identifier assigned to the element within the original script, wherein the assistive technology interface generator is configured to use the assistive technology event information and the identifier assigned to the element to produce DOM access commands, and to provide the DOM access commands to the synchronous DOM generator; and
a client machine coupled to receive the original script, wherein the client machine comprises;
an assistive technology;
a user agent coupled to the assistive technology, the transcoder, and the assistive technology interface generator, wherein the user agent is configured to;
form a transcoded DOM in response to the original script from the transcoder, wherein the transcoded DOM is a representation of the portion of the electronic document;
use the transcoded DOM to produce output commands;
provide the output commands to the assistive technology;
generate the assistive technology event in response to user input via the assistive technology;
associate the assistive technology event with the element within the original script; and
provide the assistive technology event information and the identifier assigned to the element associated with the assistive technology event to the assistive technology interface generator. - View Dependent Claims (14, 15, 16)
receive the assistive technology event information and the identifier assigned to the element from the assistive technology interface generator;
access the element within the pre-transcoded DOM using the identifier in response to the assistive technology event information and the identifier; and
provide a second portion of the electronic document.
-
-
15. The system as recited in claim 14, wherein the transcoder is further configured to:
-
receive the second portion of the electronic document;
translate the second portion of the electronic document from the first digital format to a modification script in the second digital format; and
provide the modification script.
-
-
16. The system as recited in claim 14, wherein the client device is further configured to:
-
receive the modification script; and
modify the transcoded DOM in response to the modification script.
-
-
17. A method for presenting an electronic document to a user, comprising:
-
receiving the electronic document in a first digital format;
assigning a unique identifier to each element of the electronic document;
forming a model of a logical structure of the electronic document, wherein elements are associated with corresponding identifiers within the model;
using the model to produce an original script, wherein the original script includes at least a portion of the electronic document expressed in a second digital format, and wherein the original script includes at least one element and the identifier assigned to the at least one element;
providing the original script;
receiving assistive technology event information and an identifier assigned to an element associated with an assistive technology event;
accessing the model using the identifier;
using the model to produce a modification script, wherein the modification script differs from the original script; and
providing the modification script. - View Dependent Claims (18, 19, 20)
-
-
21. A method for presenting an electronic document to a user, comprising:
-
receiving an original script, wherein the original script includes at least a portion of the electronic document expressed in a digital format, an element of the document, and an identifier assigned to the element;
using the original script to present the portion of the electronic document;
generating an assistive technology event in response to user input;
associating the assistive technology event with the element;
providing assistive technology event information and the identifier assigned to the element in response to the assistive technology event;
receiving a modification script; and
using the modification script to modify the presented portion of the electronic document.
-
-
22. A method for presenting an electronic document to a user, comprising:
-
receiving the electronic document in a first digital format;
assigning a unique identifier to each element of the electronic document;
forming a model of a logical structure of the electronic document, wherein elements are associated with corresponding identifiers within the model;
using the model to produce an original script, wherein the original script includes at least a portion of the electronic document expressed in a second digital format, and wherein the original script includes an element of the document and an identifier assigned to the element;
using the original script to present the portion of the document;
generating an assistive technology event in response to user input;
associating the assistive technology event with the element within the original script;
accessing the model using the identifier assigned to the element associated with the assistive technology event;
using the model to produce modification script; and
using the modification script to modify the presented portion of the document.
-
Specification