IP Library Granted Patent US 8,276,121
Granted Patent B2
US 8,276,121 · App. 11/820,436 · Granted Sep 25, 2012

Selection of versioned resource among multiple compatible versions

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,276,121
App. No.
11/820,436
Granted
Sep 25, 2012
Kind
B2
Abstract

A requirement for a versioned resource is fulfilled, particularly in light of compatibility constraints of the requirement. Versions of the versioned resource are associated with compatibility information, such as a feature version and a service version, for example. In fulfilling the requirement, compatibility logic may be applied to identify versions that are compatible with the requirement, and selection logic may be applied to select a preferred version from the compatible versions.

Claims (38)

1. A method of fulfilling a requirement specifying at least one feature version of a versioned resource accessible to a computer having a processor, comprising:

executing on the processor instructions configured to:

apply a compatibility logic to accessible versions of the versioned resource to identify at least two compatible versions of the versioned resource that fulfill the feature version of the requirement;

apply a selection logic to the at least two compatible versions to select a preferred version; and

provide only the preferred version of the versioned resource in response to the requirement.

2. The method of claim 1 :

the versioned resource presenting functionality that is invokable by the computer;

the respective accessible versions of the versioned resource identified by a feature version identifying at least one feature of the version of the versioned resource, and a service version identifying at least one service of the respective features of the versioned resource presenting the functionality; and

the requirement issued to invoke the functionality of the versioned resource.

3. The method of claim 2 , the requirement specifying a minimum feature version, and the compatibility logic identifying as compatible with the requirement the versions having an association with at least the minimum feature version.

4. The method of claim 3 , the requirement specifying a minimum service version within the minimum feature version, and the compatibility logic identifying as compatible with the requirement the versions having an association with at least the minimum service version within the minimum feature version.

5. The method of claim 2 , the requirement specifying at least one feature version, and the compatibility logic identifying as compatible with the requirement the versions having an association with at least one specified feature version.

6. The method of claim 5 , the requirement specifying at least one minimum service version within one of the specified feature versions, and the compatibility logic identifying as compatible with the requirement the versions having an association with at least the minimum service version within at least one specified feature version.

7. The method of claim 2 , the selection logic selecting the preferred version from the identified versions according to the highest feature version and the highest service version within the highest feature version.

8. The method of claim 1 , at least one of the accessible versions of the versioned resource stored in a file store.

9. The method of claim 1 , at least one of the accessible versions of the versioned resource stored in a system memory.

10. The method of claim 1 , at least one of the accessible versions of the versioned resource stored in a versioned resource repository.

11. The method of claim 1 , the preferred version generated before a later compatible version of the resource.

12. A system for fulfilling a requirement specifying at least one feature version a versioned resource on a computer having a processor and a memory, comprising:

a versioned resource collection component comprising a set of versions of the versioned resource stored in the memory of the computer;

a versioned resource compatibility component comprising instructions stored in the memory that, when executed by the processor, cause the processor to identify at least two compatible versions of the versioned resource in the versioned resource collection component that with fulfill the feature version of the requirement;

a versioned resource selection component comprising instructions stored in the memory that, when executed by the processor, cause the processor to select a preferred version from the at least two compatible versions of the versioned resource; and

a versioned resource servicing component comprising instructions stored in the memory that, when executed by the processor cause the processor to fulfill the requirement by providing the requirement to the versioned resource compatibility component and providing only the preferred version of the versioned resource in response to the requirement.

13. The system of claim 12 :

the versioned resource presenting functionality that is invokable by the computer;

the respective accessible versions of the versioned resource in the versioned resource collection identified by a feature version identifying at least one feature of the version of the versioned resource, and a service version identifying at least one service of the respective features of the versioned resource presenting the functionality; and

the requirement issued to invoke the functionality of the versioned resource.

14. The system of claim 13 , the requirement specifying a minimum feature version and a minimum service version within the minimum feature version, and the versioned resource compatibility component identifying as compatible with the requirement the versions having an association with at least the minimum service version within the minimum feature version.

15. The system of claim 13 , the requirement specifying at least one feature version and a minimum service version within at least one of the specified feature versions, and the versioned resource compatibility component identifying as compatible with the requirement the versions having an association with at least the minimum service version within at least one of the specified feature versions.

16. The system of claim 13 , the selection logic selecting the preferred version from the identified versions according to the highest feature version, and the highest service version within the highest feature version.

17. The system of claim 12 , the versioned resource collection comprising at least one of a file store, a system memory, and a versioned resource repository.

18. The system of claim 12 , the preferred version generated before a later compatible version of the resource.

19. A method of fulfilling a runtime binding requirement of a dependent assembly for a versioned resource accessible to a computer having a processor, comprising:

executing on the processor instructions configured to:

apply a compatibility logic to accessible versions of the versioned resource to identify at least two compatible versions that are compatible with the runtime binding requirement, respective accessible versions of the versioned resource identified by a feature version identifying at least one feature of the version of the versioned resource, and a service version identifying at least one service of the respective features of the versioned resource that is invokable by the computer, and the runtime binding requirement specifying a feature version and a service version;

apply a selection logic to the at least two compatible versions of the versioned assembly to select a preferred version; and

bind only the preferred version of the versioned resource to the dependent assembly.

20. The method of claim 19 , the preferred version generated before a later compatible version of the resource.

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 Aug 27, 2007
From: MILLER, JAMES; HENDERSON, VINCENT; BRUNKLAUS, THORSTEN; LANDER, RICHARD; SRIRAM, THOTTAM R.
To: MICROSOFT CORPORATION
Reel/Frame 019746/0156 →
Continuity (1)
Related Publication 20080320460A1 · Dec 25, 2008