IP Library Granted Patent US 9,785,721
Granted Patent B2
US 9,785,721 · App. 14/586,032 · Granted Oct 10, 2017

System and method for programmatically creating resource locators

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,785,721
App. No.
14/586,032
Granted
Oct 10, 2017
Kind
B2
Abstract

An output resource identifier, such as a universal resource locator (URL), may be programmatically generated using one or more recomposition rules and decomposed parts of a source, or input, URL. The decomposed parts may be programmatically generated using one or more decomposition rules. The input and output URLs may comprise one or more of web and/or native URLs.

Claims (55)

1. A method comprising:

accessing, by at least one computing device, a decomposition rules database storing a plurality of decomposition rules for decomposing universal resource locators (URLs) identifying device-accessible resources, the accessing comprising retrieving at least one decomposition rule for decomposing an input URL to generate the input URL's decomposed parts;

accessing, by the at least one computing device, a recomposition rules database storing a plurality of recomposition rules for generating recomposed URLs, the plurality of recomposition rules comprising a number of native URL templates for use in generating a number of recomposed native URLs and a number of web URL templates for use in generating a number of recomposed web URLs, the accessing comprising retrieving at least one recomposition rule from the recomposition rules database; and

generating, by the at least one computing device, at least one recomposed URL using the input URL's decomposed parts and the retrieved at least one recomposition rule, each retrieved recomposition rule comprising one of a native URL template and a web URL template, each recomposed URL for use by at least one client computing device in accessing the device-accessible resource identified by the recomposed URL.

2. The method of claim 1 , further comprising:

using, by the at least one computing device, at least one decomposition rule to generate at least one parameter for inclusion in the input URLs decomposed parts.

3. The method of claim 2 , the at least one parameter comprising a parameter identifying a content type of the resource identified by the input URL.

4. The method of claim 2 , the at least one parameter comprising a parameter identifying an action associated with the resource identified by the input URL.

5. The method of claim 1 , the input URL comprises a web URL formatted in accordance with a web protocol and the recomposed URL comprises at least one native URL formatted for use with a native application installed on the at least one client computing device.

6. The method of claim 1 , further comprising:

generating, by the at least one computing device, the at least one recomposed URL using the input URL's decomposed parts and device information of the at least one client computing device.

7. The method of claim 1 , further comprising:

determining, by the at least computing device, availability of device information for the at least one client computing device;

if the device information is available, generating, by the at least one computing device, the at least one recomposed URL using the input URL's decomposed parts and device information of the at least one client computing device; and

if the device information is unavailable, generating, by the at least one computing device, the at least one recomposed URL comprising multiple recomposed URLs using the input URL's decomposed parts, the multiple URLs comprising at least one web URL and at least one native URL.

8. The method of claim 1 , the at least one computing device and the at least one client computing device are a same computing device.

9. The method of claim 1 , the at least one computing device and the at least one client computing device are different computing devices.

10. The method of claim 9 , the at least one computing device comprising at least one server computing device.

11. A system comprising:

at least one computing device, each computing device a processor and a storage medium for tangibly storing thereon program logic for execution by the processor, the stored program logic comprising:

accessing logic executed by the processor for accessing a decomposition rules database storing a plurality of decomposition rules for decomposing universal resource locators (URLs) identifying device-accessible resources, the accessing comprising retrieving at least one decomposition rule for decomposing an input URL to generate the input URL's decomposed parts;

accessing logic executed by the processor for accessing a recomposition rules database storing a plurality of recomposition rules for generating recomposed URLs, the plurality of recomposition rules comprising a number of native URL templates for use in generating a number of recomposed native URLs and a number of web URL templates for use in generating a number of recomposed web URLs, the accessing comprising retrieving at least one recomposition rule from the recomposition rules database; and

generating logic executed by the processor for generating at least one recomposed URL using the input URL's decomposed parts and the retrieved at least one recomposition rule, each retrieved recomposition rule comprising one of a native URL template and a web URL template, each recomposed URL for use by at least one client computing device in accessing the device-accessible resource identified by the recomposed URL.

12. The system of claim 11 , the stored program logic further comprising:

using logic executed by the processor for using at least one decomposition rule to generate at least one parameter for inclusion in the input URLs decomposed parts.

13. The system of claim 12 , the at least one parameter comprising a parameter identifying a content type of the resource identified by the input URL.

14. The system of claim 12 , the at least one parameter comprising a parameter identifying an action associated with the resource identified by the input URL.

15. The system of claim 11 , the input URL comprises a web URL formatted in accordance with a web protocol and the recomposed URL comprises at least one native URL formatted for use with a native application installed on the at least one client computing device.

16. The system of claim 11 , the stored program logic further comprising:

generating logic executed by the processor for generating the at least one recomposed URL using the input URL's decomposed parts and device information of the at least one client computing device.

17. The system of claim 11 , the stored program logic further comprising:

determining logic executed by the processor for determining availability of device information for the at least one client computing device;

generating logic executed by the processor for generating, if the device information is available, the at least one recomposed URL using the input URL's decomposed parts and device information of the at least one client computing device; and

generating logic executed by the processor for generating, if the device information is unavailable, the at least one recomposed URL comprising multiple recomposed URLs using the input URL's decomposed parts, the multiple URLs comprising at least one web URL and at least one native URL.

18. The system of claim 11 , the at least one computing device and the at least one client computing device are a same computing device.

19. The system of claim 11 , the at least one computing device and the at least one client computing device are different computing devices.

20. The system of claim 19 , the at least one computing device comprising at least one server computing device.

21. A computer readable non-transitory storage medium for tangibly storing thereon computer readable instructions that when executed cause at least one processor to:

access a decomposition rules database storing a plurality of decomposition rules for decomposing universal resource locators (URLs) identifying device-accessible resources, the accessing comprising retrieving at least one decomposition rule for decomposing an input URL to generate the input URL's decomposed parts; and

access a recomposition rules database storing a plurality of recomposition rules for generating recomposed URLs, the plurality of recomposition rules comprising a number of native URL templates for use in generating a number of recomposed native URLs and a number of web URL templates for use in generating a number of recomposed web URLs, the accessing comprising retrieving at least one recomposition rule from the recomposition rules database; and

generate at least one recomposed URL using the input URL's decomposed parts and the retrieved at least one recomposition rule, each retrieved recomposition rule comprising one of a native URL template and a web URL template, each recomposed URL for use by at least one client computing device in accessing the device-accessible resource identified by the recomposed URL.

22. The computer readable non-transitory storage medium of claim 21 , the instructions further comprising instructions to:

use at least one decomposition rule to generate at least one parameter for inclusion in the input URLs decomposed parts.

23. The computer readable non-transitory storage medium of claim 22 , the at least one parameter comprising a parameter identifying a content type of the resource identified by the input URL.

24. The computer readable non-transitory storage medium of claim 22 , the at least one parameter comprising a parameter identifying an action associated with the resource identified by the input URL.

25. The computer readable non-transitory storage medium of claim 21 , the input URL comprises a web URL formatted in accordance with a web protocol and the recomposed URL comprises at least one native URL formatted for use with a native application installed on the at least one client computing device.

26. The computer readable non-transitory storage medium of claim 21 , the instructions further comprising instructions to:

generate the at least one recomposed URL using the input URL's decomposed parts and device information of the at least one client computing device.

27. The computer readable non-transitory storage medium of claim 21 , the instructions further comprising instructions to:

determine availability of device information for the at least one client computing device;

if the device information is available, generate the at least one recomposed URL using the input URL's decomposed parts and device information of the at least one client computing device; and

if the device information is unavailable, generate the at least one recomposed URL comprising multiple recomposed URLs using the input URL's decomposed parts, the multiple URLs comprising at least one web URL and at least one native URL.

28. The computer readable non-transitory storage medium of claim 21 , the instructions are executed by the at least one client computing device.

29. The computer readable non-transitory storage medium of claim 21 , the instructions are executed by at least one computing device different from the at least one client computing device.

30. The computer readable non-transitory storage medium of claim 29 , the at least one computing device comprising at least one server computing device.

Assignments (6)
PATENT SECURITY AGREEMENT (FIRST LIEN) Recorded Sep 29, 2022
From: YAHOO ASSETS LLC
To: ROYAL BANK OF CANADA, AS COLLATERAL AGENT
Reel/Frame 061571/0773 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2021
From: YAHOO AD TECH LLC (FORMERLY VERIZON MEDIA INC.)
To: YAHOO ASSETS LLC
Reel/Frame 058982/0282 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: OATH INC.
To: VERIZON MEDIA INC.
Reel/Frame 054258/0635 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2018
From: YAHOO HOLDINGS, INC.
To: OATH INC.
Reel/Frame 045240/0310 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2017
From: YAHOO! INC.
To: YAHOO HOLDINGS, INC.
Reel/Frame 042963/0211 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2014
From: VAISH, GAURAV; LOW, DARYL; SAXENA, SANCHAN
To: YAHOO! INC,
Reel/Frame 034601/0990 →