IP Library Granted Patent US 9,367,539
Granted Patent B2
US 9,367,539 · App. 13/288,147 · Granted Jun 14, 2016

Techniques for automated document translation

Inventors: Stephen Condie (Redmond, WA); Charles Reid (Kirkland, WA)
Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
G06F17/289G06F17/218
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,367,539
App. No.
13/288,147
Granted
Jun 14, 2016
Kind
B2
Abstract

Techniques for automated document translation are described. An apparatus may comprise a translatable content component, an intermediate component, and a translation management component. The translatable content component may be generally operative to extract translatable content from an original document, and to construct a translated document based on extracted translated content, the translated document comprising a translation of the original document from a first language to a second language. The intermediate component may be operative to create one or more intermediate documents from extracted translatable content, and to extract translated content from one or more translated intermediate documents. The translation management component operative to transmit the one or more intermediate documents to a translation service for translation from a first language to a second language and to receive one or more translated intermediate documents from the translation service. Other embodiments are described and claimed.

Claims (77)

1. An apparatus, comprising:

a logic device;

a translatable content component operative on the logic device to extract translatable content from an original document, wherein the original document comprises text in a first language;

an intermediate component operative on the logic device to create a plurality of intermediate documents from the extracted translatable content, wherein the plurality of intermediate documents includes the extracted translatable content, and wherein at least two of the intermediate documents are different from one another and independent from the file format for the original document;

a translation management component operative on the logic device to transmit the one or more intermediate documents to a transition service and receive one or more translated intermediate documents from the translation service;

the intermediate component operative on the logic device to extract translated content from the plurality of translated intermediate documents and associate an annotation identifier to an inline object; and

the translatable content component operative on the logic device to construct a translated document based on the extracted translated content, the translated document comprising a translation of the original document from the first language to a second language.

2. The apparatus of claim 1 , the translatable content component operative to extract the translatable content from the original document, the translatable content component to identify one or more paragraphs in the original document, extract text from the one or more paragraphs, generate one or more style identifiers for the extracted text, identify one or more runs of text.

3. The apparatus of claim 2 , the intermediate component operative to create the plurality of intermediate documents from the extracted translatable content, the intermediate component to create paragraphs tags for each identified paragraph, identify a predominant style identifier for each paragraph, associate each paragraph with its predominant style identifier, identify off-style runs in each paragraph, create style tags for each off-style run, and create annotation tags from the annotation identifiers.

4. The apparatus of claim 3 , the intermediate component operative to extract the translated content from the plurality of translated intermediate documents, the intermediate component to identify one or more translated paragraphs in the translated intermediate documents, extract translated text from the one or more translated paragraphs, associate the translated text of each translated paragraph with the associated predominant style identifier for the translated paragraph, identify translated off-style runs in each translated paragraph, associate style identifiers with the text of each identified translated off-style run, identify annotations in the translated intermediate documents, and associate annotation identifiers from the identified annotations with their place in the extracted translated text.

5. The apparatus of claim 4 , the translatable content component operative to construct the translated document based on the extracted translated content by replacing the text from the one or more paragraphs of the original document with the extracted translated text from the translated paragraphs of the translated document, wherein styles are assigned to the extracted translated text using the associated style identifiers, wherein the inline objects from the original document are placed in the translated document based on the annotation identifiers associated with the extracted translated text.

6. The apparatus of claim 1 , comprising:

a selection component operative to select a translation parser from a plurality of translation parsers for the original document based on a document type of the original document;

the translatable content component operative to extract the translatable content from the original document using the selected translation parser; and

the translatable content component operative to construct the translated document based on the extracted translated content using the selected translation parser.

7. The apparatus of claim 1 , the intermediate component operative to create the plurality of intermediate documents from the extracted translatable content to accommodate a defined number of pages for the translation service.

8. The apparatus of claim 1 , wherein the plurality of intermediate documents are hypertext markup language (HTML) formatted.

9. A method, comprising:

extracting translatable content from an original document, wherein the original document contains a first language;

creating a plurality of intermediate documents from the extracted translatable content, wherein the plurality of intermediate documents includes the extracted translatable content, and wherein at least two of the intermediate documents are different from one another and independent from the file format for the original document;

transmitting the plurality of intermediate documents to a translation service for translation from the first language to a second language;

receiving one or more translated intermediate documents from the translation service;

extracting translated content from the one or more translated intermediate documents; and

constructing a translated document based on the extracted translated content, the translated document comprising a translation of the original document from the first language to the second language.

10. The method of claim 9 , wherein extracting the translatable content from the original document further comprises:

identifying one or more paragraphs in the original document;

extracting text from the one or more paragraphs;

generating one or more style identifiers for the extracted text;

identifying one or more runs of text; and

generating one or more annotation identifiers for inline objects in the original document.

11. The method of claim 10 , wherein creating the plurality of intermediate documents from the extracted translatable content comprises:

creating paragraphs tags for each identified paragraph;

identifying a predominant style identifier for each paragraph;

associating each paragraph with its predominant style identifier;

identifying off-style runs in each paragraph;

creating style tags for each off-style run; and

creating annotation tags from the annotation identifiers.

12. The method of claim 11 , wherein extracting the translated content from the translated intermediate documents comprises:

identifying one or more translated paragraphs in the translated intermediate documents;

extracting translated text from the one or more translated paragraphs; associating the translated text of each translated paragraph with the associated predominant style identifier for the translated paragraph;

identifying translated off-style runs in each translated paragraph;

associating style identifiers with the text of each identified translated off-style run;

identifying annotations in the translated intermediate documents; and associating annotation identifiers from the identified annotations with their place in the extracted translated text.

13. The method of claim 12 , wherein constructing the translated document based on the extracted translated content comprises:

replacing the text from the one or more paragraphs of the original document with the extracted translated text from the translated paragraphs of the translated document, wherein styles are assigned to the extracted translated text using the associated style identifiers, wherein the inline objects from the original document are placed in the translated document based on the annotation identifiers associated with the extracted translated text.

14. The method of claim 9 , comprising:

selecting a translation parser from a plurality of translation parsers for the original document based on a document type of the original document;

extracting the translatable content from the original document using the selected translation parser; and

constructing the translated document based on the extracted translated content using the selected translation parser.

15. The method of claim 9 , comprising creating the plurality of intermediate documents from the extracted translatable content to accommodate a defined number of pages for the translation service.

16. An article of manufacture comprising a storage medium containing instructions that when executed cause a system to:

extract translatable content from an original document, wherein the original document contains a first language;

create a plurality of intermediate documents from the extracted translatable content, wherein the plurality of intermediate documents includes the extracted translatable content, and wherein at least two of the intermediate documents are different from one another and independent from the file format for the original document;

create a translated intermediate document;

extract translated content from the translated intermediate document; and

construct a translated document based on the extracted translated content, the translated document comprising a translation of the original document from the first language to a second language.

17. The article of claim 16 , comprising instructions that when executed cause the system to:

identify one or more paragraphs in the original document;

extracting text from the one or more paragraphs;

generating one or more style identifiers for the extracted text;

identify one or more runs of text; and

generate one or more annotation identifiers for inline objects in the original document.

18. The article of claim 17 , comprising instructions that when executed cause the system to:

create paragraphs tags for each identified paragraph;

identify a predominant style identifier for each paragraph;

associate each paragraph with its predominant style identifier;

identify off-style runs in each paragraph;

create style tags for each off-style run; and

create annotation tags from the annotation identifiers.

19. The article of claim 18 , comprising instructions that when executed cause the system to:

identify one or more translated paragraphs in the translated intermediate document;

extract translated text from the one or more translated paragraphs;

associate the translated text of each translated paragraph with the associated predominant style identifier for the translated paragraph;

identify translated off-style runs in each translated paragraph;

associate style identifiers with the text of each identified translated off-style run; identify annotations in the translated intermediate documents; and

associate annotation identifiers from the identified annotations with their place in the extracted translated text.

20. The article of claim 19 , comprising instructions that when executed cause the system to replace the text from the one or more paragraphs of the original document with the extracted translated text from the translated paragraphs of the translated document, wherein styles are assigned to the extracted translated text using the associated style identifiers, wherein the inline objects from the original document are placed in the translated document based on the annotation identifiers associated with the extracted translated text.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034544/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2011
From: CONDIE, STEPHEN; REID, CHARLES
To: MICROSOFT CORPORATION
Reel/Frame 027167/0456 →
Continuity (1)
Related Publication 20130117008A1 · May 9, 2013