IP Library Granted Patent US 8,521,753
Granted Patent B2
US 8,521,753 · App. 12/041,641 · Granted Aug 27, 2013

Unified formats for resources and repositories for managing localization

Inventors: Anatoliy Burukhin (Issaquah, WA); Ayman Aldahleh (Redmond, WA); Javier L. Larrinaga (Redmond, WA); John Whelan (Co. Wicklow, IE); David Ahs (Dublin, IE); Robert Redlich (Redmond, WA)
Assignee: Microsoft Corporation
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 8,521,753
App. No.
12/041,641
Granted
Aug 27, 2013
Kind
B2
Abstract

Tools and techniques for unified formats for resources and repositories for managing localization are described herein. The unified resource repositories may include representations of any number of resources, the resources representing textual information that is displayable in user interface presented by software applications. The representations of the resources may include respective data tags that are associated with name attributes identifying the resources, value tags providing values of the resources. Meta tags provide recursive nesting mechanisms for associating the name attribute and the value tag with additional instances of name attributes and value tags.

Claims (43)

1. A computer-implemented method comprising performing computer-implemented operations for:

receiving a representation of a non-localized resource that represents textual information that is for display in at least one user interface element presented by at least one software application;

storing the representation of the non-localized resource in a unified resource repository, the unified resource repository being for storing a plurality of representations defined according to a unified format that represents a plurality of resources that correspond to the plurality of representations without changing a schema and a protocol used to define or manipulate the plurality of resources, the plurality of resources comprising the non-localized resource and a localized resource, and the plurality of representations including respective data tags that are associated with

at least one name attribute for identifying the plurality of resources,

at least one value tag for providing values of the plurality of resources, and

at least one meta tag for providing a recursive nesting mechanism that associates the name attribute and the value tag with at least a further name attribute and at least a further value tag, wherein the further name attribute identifies at least one instance of localization instructions for the plurality of resources, and wherein the further value tag specifies the localization instructions for the plurality of resources,

wherein the representation of the non-localized resource includes instances of the further name attribute and the further value tag that specify localization instructions for the non-localized resource, and at least one of the respective data tags contains at least a plurality of further data tags comprising respective further name attributes; and

sending the non-localized resource for localization in accordance with the localization instructions specified for the non-localized resource.

2. The computer-implemented method of claim 1 , further comprising receiving a localized version of the non-localized resource.

3. The computer-implemented method of claim 2 , further comprising storing the localized version in the unified resource repository, and associating the localized version with the non-localized resource.

4. The computer-implemented method of claim 1 , further comprising receiving at least a further representation of at least a further non-localized resource, wherein the further representation of the further non-localized resource includes instances of the further name attribute and the further value tag that specify further localization instructions for the further non-localized resource, wherein the further localization instructions are different from the localization instructions.

5. The computer-implemented method of claim 4 , further comprising storing the further representation of the further non-localized resource in the unified resource repository.

6. The computer-implemented method of claim 4 , further comprising sending the non-localized resource for localization in accordance with the further localization instructions.

7. The computer-implemented method of claim 6 , further comprising receiving a further localized version of the further non-localized resource, associating the further localized version with the further non-localized resource, and storing the further localized version in the unified resource repository.

8. The computer-implemented method of claim 1 , further comprising providing tools for authoring the resources, and providing tools for localizing the resources.

9. A tangible computer-readable storage medium having computer-executable instructions stored thereon that, when executed by a computer, cause the computer to perform operations comprising:

receiving a representation of a non-localized resource that represents textual information that is for display in at least one user interface element presented by at least one software application;

storing the representation of the non-localized resource in a unified resource repository, the unified resource repository being for storing a plurality of representations defined according to a unified format that represents a plurality of resources that correspond to the plurality of representations without changing a schema and a protocol used to define or manipulate the plurality of resources, the plurality of resources comprising the non-localized resource and a localized resource, and the plurality of representations including respective data tags that are associated with

at least one name attribute for identifying the plurality of resources,

at least one value tag for providing values of the plurality of resources, and

at least one meta tag for providing a recursive nesting mechanism that associates the name attribute and the value tag with at least a further name attribute and at least a further value tag, wherein the further name attribute identifies at least one instance of localization instructions for the plurality of resources, and wherein the further value tag specifies the localization instructions for the plurality of resources,

wherein the representation of the non-localized resource includes instances of the further name attribute and the further value tag that specify localization instructions for the non-localized resource, and at least one of the respective data tags contains at least a plurality of further data tags comprising respective further name attributes; and

sending the non-localized resource for localization in accordance with the localization instructions specified for the non-localized resource.

10. The tangible computer-readable storage medium of claim 9 , further comprising receiving a localized version of the non-localized resource.

11. The tangible computer-readable storage medium of claim 10 , further comprising storing the localized version in the unified resource repository, and associating the localized version with the non-localized resource.

12. The tangible computer-readable storage medium of claim 9 , further comprising receiving at least a further representation of at least a further non-localized resource, wherein the further representation of the further non-localized resource includes instances of the further name attribute and the further value tag that specify further localization instructions for the further non-localized resource, wherein the further localization instructions are different from the localization instructions.

13. The tangible computer-readable storage medium of claim 12 , further comprising storing the further representation of the further non-localized resource in the unified resource repository.

14. The tangible computer-readable storage medium of claim 12 , further comprising sending the non-localized resource for localization in accordance with the further localization instructions.

15. The tangible computer-readable storage medium of claim 14 , further comprising receiving a further localized version of the further non-localized resource, associating the further localized version with the further non-localized resource, and storing the further localized version in the unified resource repository.

16. The tangible computer-readable storage medium of claim 9 , further comprising providing tools for authoring the resources, and providing tools for localizing the resources.

17. A computer system comprising:

a processor; and

a memory having computer-executable instructions stored thereon that, when executed by a computer, cause the computer to perform operations comprising

receiving a representation of a non-localized resource that represents textual information that is for display in at least one user interface element presented by at least one software application,

storing the representation of the non-localized resource in a unified resource repository, the unified resource repository being for storing a plurality of representations defined according to a unified format that represents a plurality of resources that correspond to the plurality of representations without changing a schema and a protocol used to define or manipulate the plurality of resources, the plurality of resources comprising the non-localized resource and a localized resource, and the plurality of representations including respective data tags that are associated with

at least one name attribute for identifying the plurality of resources,

at least one value tag for providing values of the plurality of resources, and

at least one meta tag for providing a recursive nesting mechanism that associates the name attribute and the value tag with at least a further name attribute and at least a further value tag, wherein the further name attribute identifies at least one instance of localization instructions for the plurality of resources, and wherein the further value tag specifies the localization instructions for the plurality of resources,

wherein the representation of the non-localized resource includes instances of the further name attribute and the further value tag that specify localization instructions for the non-localized resource, and at least one of the respective data tags contains at least a plurality of further data tags comprising respective further name attributes, and

sending the non-localized resource for localization in accordance with the localization instructions specified for the non-localized resource.

18. The system of claim 17 , wherein the operations further comprise receiving a localized version of the non-localized resource, storing the localized version in the unified resource repository, and associating the localized version with the non-localized resource.

19. The system of claim 17 , wherein the operations further comprise receiving at least a further representation of at least a further non-localized resource, wherein the further representation of the further non-localized resource includes instances of the further name attribute and the further value tag that specify further localization instructions for the further non-localized resource, wherein the further localization instructions are different from the localization instructions.

20. The system of claim 19 , wherein the operations further comprise sending the non-localized resource for localization in accordance with the further localization instructions, and receiving a further localized version of the further non-localized resource, associating the further localized version with the further non-localized resource, and storing the further localized version in the unified resource repository.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034542/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 3, 2008
From: BURUKHIN, ANATOLIY; ALDAHLEH, AYMAN; LARRINAGA, JAVIER L.; WHELAN, JOHN; AHS, DAVID; REDLICH, ROBERT
To: MICROSOFT CORPORATION
Reel/Frame 020592/0201 →
Continuity (1)
Related Publication 20090222479A1 · Sep 3, 2009