IP Library Granted Patent US 8,522,137
Granted Patent B1
US 8,522,137 · App. 13/190,281 · Granted Aug 27, 2013

Systems, methods, and machine readable media for social network application development using a custom markup language

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,522,137
App. No.
13/190,281
Granted
Aug 27, 2013
Kind
B1
Abstract

Disclosed in some examples are systems, methods, and machine readable medium for programming an application for multiple target social networks using custom markup tags that are independent of any custom markup tags defined by social networking services. These independent tags may be translated into the custom markup tags defined by the social networking service of interest if the desired functionality is supported in that social networking service using custom markup tags or if the tags are not supported, by a set of instructions for executing the same functionality.

Claims (62)

1. A method for interfacing with multiple social networks, the method comprising:

determining a social networking service that a social networking application is associated with;

locating in the social networking application a custom markup language tag, the custom markup language tag written in a first custom markup language, the custom markup language tag specifying an instruction to implement a particular functionality;

determining that the custom markup language tag should be replaced either with a set of one or more source code commands, or with a second custom markup language tag defined by the social networking service, and written in a second custom markup, language, the determination based upon the determined social networking service and one or more criteria, the second custom markup language tag and the set of source code commands both containing instructions, which when executed, implement the particular functionality of the custom markup language tag in the first language;

responsive to a determination that the custom markup language tag should be replaced with the set of source code commands, replacing the custom markup language tag with the set of source code commands, the set of source code commands being a source code language that is not a markup language; and

responsive to a determination that the custom markup language tag should be replaced with the second custom markup language tag, replacing the custom markup language tag with the second custom markup language tag, using one or more computer processors.

2. The method of claim 1 , wherein the one or more criteria includes at least one of computational efficiency, user interface consistency, and the availability of the custom markup language tag from the second custom markup language.

3. The method of claim 1 , wherein determining that the custom markup language tag should be replaced comprises:

determining, from a replacement table, whether one or both of the set of source code commands and the second custom markup language tag are listed as corresponding to the custom markup language tag, and using the correspondence information as one of the criteria, wherein the replacement table comprises:

a list of custom markup language tags in the first custom markup language;

for each of the tags in the list, for each supported social networking service, one of: corresponding tags in a custom markup language specific to the social networking service and corresponding sets of source code commands.

4. The method of claim 3 , wherein the replacement table also comprises a location of a parameter associated with the custom markup language tag in the first custom markup language and one of: a first replacement location of the parameter in the custom markup language tag in the second custom markup language and a second replacement location of the parameter in the set of one or more source code commands, and wherein replacing the custom markup language tag with the set of source commands comprises placing the parameter in the set of one or more source code commands at the second replacement location, and wherein replacing the custom markup language tag with the second custom markup language tag comprises placing the parameter in the second custom markup language tag at the first replacement location.

5. The method of claim 1 , further comprising:

locating in the social networking application a third custom markup language tag in the first custom markup language, the third custom markup language tag specifying an instruction to implement a second particular functionality;

determining that the third custom markup language tag should be replaced either with a fourth custom markup language tag in the second language, or with a second set of one or more source code commands based upon the determined social networking service and based upon the one or more criteria, the fourth custom markup language tag and the second set of source code commands, both containing instructions, which when executed implement the second particular functionality of the third custom markup language tag;

responsive to a determination that the custom markup language tag should be replaced with the set of source commands, replacing the third custom markup language tag with the second set of source code commands, the second set of source code commands being a source code language that is not a markup language;

responsive to a determination that the third custom markup language tag should be replaced with the fourth custom markup language tag, replacing the third custom markup language tag with the fourth custom markup language tag.

6. The method of claim 5 , wherein determining that the third custom markup language tag should be replaced comprises determining that the third custom markup language tag should be replaced with the fourth custom markup language tag if the custom markup language tag was replaced with the second custom markup language tag.

7. The method of claim 5 , wherein determining that the third custom markup language tag should be replaced comprises determining that the third custom markup language tag should be replaced with the second set of source code commands if the custom markup language tag was replaced with the second custom markup language tag.

8. A system to interface with multiple social networks, the system comprising:

one or more computer processors configured to execute:

a scanning module configured to:

determine a social networking service that a social networking application is associated with; and

locate in the social networking application a custom markup language tag, the custom markup language tag written in a first custom markup language, the custom markup language tag specifying an instruction to implement a particular functionality;

a decision module configured to determine that the custom markup language tag should be replaced either with a set of one or more source code commands, or with a second custom markup language tag defined by the social networking service, and written in a second custom markup language, the determination based upon the determined social networking service and one or more criteria, the second custom markup language tag and the set of source code commands both containing instructions, which when executed, implement the particular functionality of the custom markup language tag in the first language; and

a replacement module configured to:

replace the custom markup language tag in the first custom markup language with the set of source code commands based upon a determination of the decision module that the custom markup language tag should be replaced with the set of source code commands; and

replace the custom markup language tag in the first custom markup language with the second custom markup language tag based upon a determination of the decision module that the custom markup language tag should be replaced with the second custom markup language tag.

9. The system of claim 8 , wherein the one or more criteria includes at least one of computational efficiency, user interface consistency, and the availability of the custom markup language tag from the second custom markup language.

10. The system of claim 8 , wherein the decision module configured to determine that the custom markup language tag should be replaced includes determining, from a replacement table, whether one or both of the set of source code commands and the second custom markup language tag are listed as corresponding to the custom markup language tag, and using the correspondence information as one of the criteria, wherein the replacement table comprises:

a list of custom markup language tags in the first custom markup language; and

for each of the tags in the list, for each supported social networking service, one of corresponding tags in a custom markup language specific to the social networking service and corresponding sets of source code commands.

11. The system of claim 10 , wherein the replacement table also comprises a location parameter associated with the custom markup language tag in the first custom markup language and at least one of: a first replacement location of the parameter in the custom markup language tag in the second custom markup language and a second replacement location of the parameter in the set of one or more source code commands, and wherein the replacement module is configured to replace the custom markup language tag with the set of source commands by at least utilizing the second replacement location to place the parameter in the set of one or more source code commands, and wherein the replacement module is configured to replace the custom markup language tag with the second custom markup language tag at the first replacement location.

12. The system of claim 8 , wherein:

the scanning module is further configured to locate in the social networking application a third custom markup language tag in the first custom markup language, the third custom markup language tag specifying an instruction to implement a second particular functionality;

the decision module is further configured to determine that the second custom markup language tag should be replaced either with a fourth custom markup language tag in the second language or replaced with a second set of one or more second source code commands based upon the determined social networking service and based upon the one or more criteria, the fourth custom markup language tag and the second set of source code commands, both containing instructions, which when executed implement the second particular functionality of the third custom markup language tag; and

the replacement module is further configured to:

replace the third custom markup language tag in the first custom markup language with the second set of source code commands based upon a determination of the decision module that the third custom markup language tag should be replaced with the second set of source code commands; and

replace the third custom markup language tag in the first custom markup language with the fourth custom markup language tag based upon a determination of the decision module that the third custom markup language tag should be replaced with the fourth custom markup language tag.

13. The system of claim 12 , wherein if the custom markup language tag is replaced with the second custom markup language tag, then the decision module is configured to determine that the third custom markup language tag should be replaced with the fourth custom markup language tag.

14. The system of claim 12 , wherein if the custom markup language tag is replaced with the second custom markup language tag then the decision module is configured to determine that the third custom markup language tag should be replaced with the second set of source commands.

15. A non-transitory machine readable medium that stores instructions which when performed by a machine, cause the machine to perform operations comprising:

determining a social networking service that a social networking application is associated with;

locating in the social networking application a custom markup language tag, the custom markup language tag written in a first custom markup language, the custom markup language tag specifying an instruction to implement a particular functionality;

determining that the custom markup language tag should be replaced either with a set of one or more source code commands, or with a second custom markup language tag defined by the social networking service, and written in a second custom markup language, the determination based upon the determined social networking service and one or more criteria, the second custom markup language tag and the set of source code commands both containing instructions, which when executed, implement the particular functionality of the custom markup language tag in the first language;

responsive to a determination that the custom markup language tag should be replaced with the set of source code commands, replacing the custom markup language tag with the set of source code commands, the set of source code commands being a source code language that is not a markup language; and

responsive to a determination that the custom markup language tag should be replaced with the second custom markup language tag, replacing the custom markup language tag with the second custom markup language tag.

16. The machine readable medium of claim 15 , wherein the one or more criteria includes at least one of computational efficiency, user interface consistency, and the availability of the custom markup language tag from the second custom markup language.

17. The machine readable medium of claim 15 , wherein

wherein the instructions for determining that the custom markup language tag should be replaced comprises instructions, which, when performed by the machine, causes the machine to perform the operations of determining, from a replacement table, whether one or both of the set of source code commands and the second custom markup language tag are listed as corresponding to the custom markup language tag, and using the indication as one of the criteria, wherein the replacement table comprises:

a list of custom markup language tags in the first custom markup language; and

for each of the tags in the list, for each supported social networking service, one of corresponding tags in a custom markup language specific to the social networking service and corresponding sets of source code commands.

18. The machine readable medium of claim 17 ,

wherein the replacement table also comprises a location of a parameter associated with the custom markup language tag in the first custom markup language and one of: a first replacement location of the parameter in the custom markup language tag in the second custom markup language and a second replacement location of the parameter in the set of one or more source code commands, and wherein the instructions for replacing the custom markup language tag with the set of source commands comprises instructions for placing the parameter in the set of one or more source code commands at the second replacement location, and wherein the instructions for replacing the custom markup language tag with the second custom markup language tag comprises instructions for placing the parameter in the second custom markup language tag at the first replacement location.

19. The machine readable medium of claim 15 , wherein the instructions further comprise instructions, which when performed by the machine, cause the machine to perform the operations further comprising:

locating in the social networking application a third custom markup language tag in the first custom markup language, the third custom markup language tag specifying an instruction to implement a second particular functionality;

determining that the third custom markup language tag should be replaced either with a fourth custom markup language tag in the second language, or with a second set of one or more source code commands based upon the determined social networking service and based upon the one or more criteria, the fourth custom markup language tag and the second set of source code commands, both containing instructions, which when executed implement the second particular functionality of the third custom markup language tag;

responsive to a determination that the custom markup language tag should be replaced with the set of source commands, replacing the third custom markup language tag with the second set of source code commands, the second set of source code commands being a source code language that is not a markup language; and

responsive to a determination that the third custom markup language tag should be replaced with the fourth custom markup language tag, replacing the third custom markup language tag with the fourth custom markup language tag.

20. The machine readable medium of claim 19 , wherein the instructions for determining that the third custom markup language tag should be translated comprises instructions for determining that the third custom markup language tag should be replaced with the fourth custom markup language tag if the custom markup language tag was replaced with the second custom markup language tag.

21. The machine readable medium of claim 19 ,

wherein the instructions for determining that the third custom markup language tag should be replaced comprises instructions for determining that the third custom markup language tag should be replaced with the second set of source code commands if the custom markup language tag was replaced with the second custom markup language tag.

Assignments (5)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded May 23, 2022
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: ZYNGA INC.
Reel/Frame 060163/0437 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Dec 14, 2020
From: ZYNGA INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 054719/0490 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 11, 2020
From: BANK OF AMERICA, N.A., AS LENDER
To: ZYNGA INC.
Reel/Frame 054701/0393 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Dec 21, 2018
From: ZYNGA INC.
To: BANK OF AMERICA, N.A., AS LENDER
Reel/Frame 049147/0546 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2011
From: BROWN, NATHAN; GRAHAM, M. IAN; TALAPATRA, SHANTANU
To: ZYNGA INC.
Reel/Frame 027053/0034 →