DETAILED ACTION
Applicant’s Application filed on February 11, 2025 has been reviewed.
Claim 1 was cancelled in the Preliminary Amendment filed on April 10, 2025.
Claims 2-21 were added in the Preliminary Amendment filed on April 10, 2025.
Claims 2-21 have been examined.
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory obviousness-type double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); and In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on a nonstatutory double patenting ground provided the reference application or patent either is shown to be commonly owned with this application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The USPTO internet Web site contains terminal disclaimer forms which may be used. Please visit http://www.uspto.gov/forms/. The filing date of the application will determine what form should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to http://www.uspto.gov/patents/process/file/efs/guidance/eTD-info-I.jsp.
Claims 1-20 are rejected on the ground of nonstatutory obviousness-type double patenting as being unpatentable over claims 1-20 of US Patent No. 12,244,662. Although the conflicting claims are not identical, they are not patentably distinct from each other because the claims 1-20 of US Patent No. 12,244,662 are similar to claims 1-20 in present application, the teachings of both applications are directed toward a platform agnostic application that provide end-users with granularity in selecting the functionality of the applications as well as connecting with other applications. Please see further explanation below. Differences are bolded and omissions are underlined in following comparison tables.
Current Application claims 2-8
662’ patent claims 1-7
2. One or more non-transitory computer-readable media comprising computer- executable instructions that, when executed by at least one processor, perform a method for defining connection relationships between platform-agnostic web applications, comprising:
receiving, at a server side, a first request from a client side to access a first logical application;
fetching a first set of instructions associated with the first logical application, wherein the first set of instructions comprises a first set of features of the first logical application;
providing, based on the first set of instructions and through a first user interface associated with the first logical application, the first set of features to a user associated with a client device; and
establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;
wherein the first logical application and the second logical application are web applications.
3. The one or more non-transitory computer-readable media of claim 2, wherein the first set of instructions comprises a listing of one or more applications connected to the first logical application.
4. The one or more non-transitory computer-readable media of claim 2, wherein the method further comprises:
responsive to establishing the connection between the first logical application and the second logical application, causing display of a list of one or more logical applications connected to the first logical application;
wherein the second logical application is included in the list of one or more logical applications.
5. he one or more non-transitory computer-readable media of claim 2, wherein the method further comprises:
receiving, at the server side, a second request from the client side to access the second logical application;
fetching a second set of instructions associated with the second logical application, wherein the second set of instructions comprises a second set of features of the second logical application;
transmitting the second set of instructions to the first logical application; and
providing, based on the second set of instructions and through a second user interface associated with the second logical application, the second set of features to the user associated with the client device.
6. The one or more non-transitory computer-readable media of claim 2, wherein the method further comprises: wherein establishing the connection between the first logical application and the second logical application comprises:
receiving an instruction from an administrator for the first logical application to establish the connection between the first logical application and the second logical application;
wherein the administrator is different than the user.
7. The one or more non-transitory computer-readable media of claim 2, wherein establishing the connection between the first logical application and the second logical application comprises:
receiving an instruction from the user to establish the connection between the first logical application and the second logical application.
8. (New) The one or more non-transitory computer-readable media of claim 2, wherein the instruction from the user is received via a clickable button on an interface displaying a list of one or more logical applications connected to the first logical application.
1. One or more non-transitory computer-readable media comprising computer-executable instructions that, when executed by at least one processor, perform a method for selecting a plurality of platform-agnostic logical applications and displaying the plurality of platform-agnostic logical applications in a display of a client device, comprising:
receiving, at a server side, a first request from a client side to access a first logical application;
fetching a first set of standardized instructions associated with the first logical application, wherein the first set of standardized instructions comprises a first functionality of the first logical application;
transmitting the first set of standardized instructions to the client side;
accessing, on the client side, a first set of client-side code for rendering a first user interface on the client device, the first set of client-side code stored in memory of the client device;
providing, based on the first set of client-side code and the first set of standardized instructions and through the first user interface associated with the first logical application, the first functionality to a user associated with the client device;
receiving, at the server side, a second request from the first logical application to access a second logical application;
fetching a second set of standardized instructions associated with the second logical application, wherein the second set of standardized instructions comprises:
a second functionality of the second logical application;
transmitting the second set of standardized instructions to the first logical application;
accessing, on the client side, a second set of client-side code for rendering a second user interface on the client device, the second set of client-side code stored in the memory of the client device; and
providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device,
wherein the first logical application and the second logical application are cloud-based applications.
2. The one or more non-transitory computer-readable media of claim 1, wherein providing the second functionality occurs contemporaneously with providing the first functionality.
3. The one or more non-transitory computer-readable media of claim 1, wherein the first logical application and the second logical application are stored in one or more public cloud databases.
4. The one or more non-transitory computer-readable media of claim 1, wherein the method further comprises:
causing display of, through the second user interface, a set of content from the first logical application.
5. The one or more non-transitory computer-readable media of claim 1, wherein the method further comprises:
running the second logical application from within the first logical application.
6. The one or more non-transitory computer-readable media of claim 1, wherein the second functionality is distinct from the first functionality.
7. The one or more non-transitory computer-readable media of claim 1, wherein providing the second functionality is determined by statuses of one or more indicators associated with the second functionality, wherein the statuses being in an active state indicate that the second functionality is to be provided.
TABLE 1
The difference between claim 2 of the current application and claim 1 of the 662’ patent is that the current application “establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;” and the 662’ patent “providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device,”. Both the current application and the 662’ patent used a platform agnostic application that provide end-users with granularity in selecting the functionality of the applications as well as connecting with other applications.
It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to substitute “establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;” with “providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device,” because the remaining elements would have performed the same function (i.e., use a platform agnostic application that provide end-users with granularity in selecting the functionality of the applications as well as connecting with other applications) as before. Such substitution would not interfere with the functionality of the remaining elements.
Current Application claims 9-15
662’ patent claims 8-14
9. A method of defining connection relationships between platform-agnostic web applications, the method comprising:
receiving, at a server side, a first request from a client side to access a first logical application;
fetching a first set of instructions associated with the first logical application, wherein the first set of instructions comprises:
a first set of features of the first logical application; and
a listing of one or more applications connected to the first logical application, the listing of one or more applications including a second logical application;
providing, based on the first set of instructions and through a first user interface associated with the first logical application, the first set of features to a user associated with a client device;
establishing a connection between the first logical application and the second logical application such that the second logical application is accessible from within the first logical application, and
wherein the second logical application has a second set of features,
wherein the first logical application and the second logical application are web applications.
10. The method of claim 9, further comprising:
removing the connection between the first logical application and the second logical application after a predetermined amount of time;
wherein the second logical application is inaccessible from within the first logical application after the connection is removed.
11. The method of claim 9, wherein the second logical application is configured to be exclusively accessible from within the first logical application.
12. The method of claim 9, further comprising:
responsive to establishing the connection between the first logical application and the second logical application, providing, to the user through the first user interface, at least one feature from the second set of features of the second logical application.
13. The method of claim 9, wherein the connection between the first logical application and the second logical application is a one-sided relationship such that the first logical application is inaccessible from the second logical application.
14. The method of claim 9, wherein the connection between the first logical application and the second logical application is a mutual relationship such that the first logical application is accessible from the second logical application.
15. The method of claim 9,
receiving, through the first logical application, an upload of a content item; and
providing the content item to a user such that the content item is viewable on both the first logical application and the second logical application after the connection is established between the first logical application and the second logical application.
8. A method of selecting a plurality of platform-agnostic logical applications and displaying the plurality of platform-agnostic logical applications in a display of a client device, the method comprising:
receiving, at a server side, a first request from a client side to access a first logical application;
fetching a first set of standardized instructions associated with the first logical application, wherein the first set of standardized instructions comprises a first functionality of the first logical application;
transmitting the first set of standardized instructions to the client side;
accessing a first set of client-side code for rendering a first user interface on the client device, the first set of client-side code stored in memory of the client device;
providing, based on the first set of client-side code and the first set of standardized instructions and through the first user interface associated with the first logical application, the first functionality to a user associated with the client device;
receiving, at the server side, a second request from the first logical application to access a second logical application;
fetching a second set of standardized instructions associated with the second logical application, wherein the second set of standardized instructions comprises:
a second functionality of the second logical application;
transmitting the second set of standardized instructions to the first logical application;
accessing a second set of client-side code for rendering a second user interface on the client device, the second set of client-side code stored in the memory of the client device;
providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device; and
causing display of, through the second user interface, a set of content from the first logical application,
wherein the first logical application and the second logical application are cloud-based applications.
9. The method of claim 8 further comprising:
causing display of, in the first user interface, in response to an input from the user, an identifier of one or more connected logical applications, including the second logical application.
10. The method of claim 8 further comprising:
connecting, through an input from an administrator, the first logical application and the second logical application.
11. The method of claim 8 further comprising:
connecting, for a predetermined period of time, the first logical application and the second logical application.
12. The method of claim 8, wherein providing the second functionality is initiated through an input of the user.
13. The method of claim 8, wherein the second functionality is provided when one or more indicators associated with the second functionality are in an active state.
14. The method of claim 8, wherein the second logical application inherits the first functionality from the first logical application such that the second functionality and the first functionality are identical.
TABLE 2
The difference between claim 9 of the current application and claim 8 of the 662’ patent is that the current application “establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;” and the 662’ patent “providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device; and causing display of, through the second user interface, a set of content from the first logical application,”. Both the current application and the 070’ patent used a platform agnostic application that provide end-users with granularity in selecting the functionality of the applications as well as connecting with other applications.
It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to substitute “establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;” with “providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device; and causing display of, through the second user interface, a set of content from the first logical application,” because the remaining elements would have performed the same function (i.e., use a platform agnostic application that provide end-users with granularity in selecting the functionality of the applications as well as connecting with other applications) as before. Such substitution would not interfere with the functionality of the remaining elements.
Current Application claims 16-21
662’ patent claims 15-20
16. A system for defining connection relationships between platform-agnostic web applications, the system comprising:
one or more non-transitory computer-readable media comprising computer-executable instructions that, when executed by at least one processor, perform a method for defining the connection relationships between the platform-agnostic web applications, comprising:
receiving, at a server side, a first request from a client side to access a first logical application;
fetching a first set of instructions associated with the first logical application, wherein the first set of instructions comprises a first set of features of the first logical application
;providing, based on the first set of instructions and through a first user interface associated with the first logical application, the first set of features to a user associated with a client device;
establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application; and
wherein the connection is mutual such that the first logical application is accessible from within the first logical application;
wherein the first logical application and the second logical application are web applications.
17. The system of claim 16, wherein the method further comprises:
establishing a second connection between the first logical application and a third logical application such that the third logical application is accessible from within the first logical application; and
wherein the second connection between the first logical application and the third logical application is a one-sided relationship such that the first logical application is inaccessible from the third logical application;
wherein the connection is a first connection.
18. The system of claim 16,
receiving, through the first logical application, an upload of a content item;
receiving a request to upload the content item to a third logical application; and
responsive to receiving the request, uploading the content item to the third logical application,
wherein the content item is accessible by a plurality of logical applications via the third logical application.
19. The system of claim 16,
wherein the first logical application is stored in one or more cloud-based databases,
wherein fetching the first set of instructions associated with the first logical application comprises:
interfacing with the one or more cloud-based databases storing the first logical application to retrieve the first set of instructions.
20. The system of claim 19, further comprising:
a logical application API communicatively coupled to the one or more cloud-based databases storing the first logical application;
wherein the logical application API is operable to execute the first set of instructions of the first logical application.
21. The system of claim 20, wherein the first logical application is programmed in a standardized language understandable by the logical application API such that the first logical application is executable on a plurality of client devices.
15. A system for selecting a plurality of platform-agnostic logical applications and displaying the plurality of platform-agnostic logical applications in a display of a client device, the system comprising:
a non-transitory computer-readable medium programmed to:
receive, at a server side, a first request from a client side to access a first logical application;
fetch a first set of standardized instructions associated with the first logical application, wherein the first set of standardized instructions comprises a first functionality of the first logical application;
transmit the first set of standardized instructions to the client side;
access a first set of client-side code for rendering a first user interface on the client device, the first set of client-side code stored in memory of the client device;
provide, based on the first set of client-side code and the first set of standardized instructions and through the first user interface associated with the first logical application, the first functionality to a user associated with the client device;
receive, at the server side, a second request from the first logical application to access a second logical application;
fetch a second set of standardized instructions associated with the second logical application, wherein the second set of standardized instructions comprises:
a second functionality of the second logical application, wherein the second logical application inherits the first functionality such that the second functionality and the first functionality are identical;
transmit the second set of standardized instructions to the first logical application;
access a second set of client-side code for rendering a second user interface on the client device, the second set of client-side code stored in the memory of the client device; and
provide, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device,
wherein the first logical application and the second logical application are cloud-based applications.
16. The system of claim 15, wherein the non-transitory computer-readable medium is further programmed to:
receive, at the server side, a third request from the second logical application to access a third logical application;
fetch a third set of standardized instructions associated with the third logical application, wherein the third set of standardized instructions comprises a third functionality of the third logical application;
transmit the third set of standardized instructions to the second logical application;
access a third set of client-side code for rendering a third user interface on the client device, wherein the third set of client-side code is stored on the client side; and
provide, based on the third set of client-side code and the third set of standardized instructions and through the third user interface associated with the third logical application, the third functionality to the user associated with the client device.
17. The system of claim 15, wherein the first set of standardized instructions further comprises one or more identifiers of the second logical application.
18. The system of claim 15, wherein the second logical application is configured to be exclusively accessible from within the first logical application.
19. The system of claim 15, wherein the non-transitory computer-readable medium is further programmed to:
establish a connection between the first logical application and the second logical application upon receiving a user input.
20. The system of claim 15, wherein the non-transitory computer-readable medium is further programmed to:
authenticate the user such that the user can access the first logical application and the second logical application on the client device.
TABLE 3
The difference between claim 16 of the current application and claim 15 of the 662’ patent is that the current application “establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;” and the 662’ patent “providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device,”. Both the current application and the 662’ patent used a platform agnostic application that provide end-users with granularity in selecting the functionality of the applications as well as connecting with other applications.
It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to substitute “establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;” with “providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device,” because the remaining elements would have performed the same function (i.e., use a platform agnostic application that provide end-users with granularity in selecting the functionality of the applications as well as connecting with other applications) as before. Such substitution would not interfere with the functionality of the remaining elements.
Claims 1-20 are rejected on the ground of nonstatutory obviousness-type double patenting as being unpatentable over claims 1-20 of US Patent No. 11,785,070. Although the conflicting claims are not identical, they are not patentably distinct from each other because the claims 1-20 of US Patent No. 11,785,070 are similar to claims 1-20 in present application, the teachings of both applications are directed toward a platform agnostic application that provide end-users with granularity in selecting the functionality of the applications as well as connecting with other applications. Please see further explanation below. Differences are bolded and omissions are underlined in following comparison tables.
Current Application claims 2-8
070’ patent claims 1-7
2. One or more non-transitory computer-readable media comprising computer- executable instructions that, when executed by at least one processor, perform a method for defining connection relationships between platform-agnostic web applications, comprising:
receiving, at a server side, a first request from a client side to access a first logical application;
fetching a first set of instructions associated with the first logical application, wherein the first set of instructions comprises a first set of features of the first logical application;
providing, based on the first set of instructions and through a first user interface associated with the first logical application, the first set of features to a user associated with a client device; and
establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;
wherein the first logical application and the second logical application are web applications.
3. The one or more non-transitory computer-readable media of claim 2, wherein the first set of instructions comprises a listing of one or more applications connected to the first logical application.
4. The one or more non-transitory computer-readable media of claim 2, wherein the method further comprises:
responsive to establishing the connection between the first logical application and the second logical application, causing display of a list of one or more logical applications connected to the first logical application;
wherein the second logical application is included in the list of one or more logical applications.
5. he one or more non-transitory computer-readable media of claim 2, wherein the method further comprises:
receiving, at the server side, a second request from the client side to access the second logical application;
fetching a second set of instructions associated with the second logical application, wherein the second set of instructions comprises a second set of features of the second logical application;
transmitting the second set of instructions to the first logical application; and
providing, based on the second set of instructions and through a second user interface associated with the second logical application, the second set of features to the user associated with the client device.
6. The one or more non-transitory computer-readable media of claim 2, wherein the method further comprises: wherein establishing the connection between the first logical application and the second logical application comprises:
receiving an instruction from an administrator for the first logical application to establish the connection between the first logical application and the second logical application;
wherein the administrator is different than the user.
7. The one or more non-transitory computer-readable media of claim 2, wherein establishing the connection between the first logical application and the second logical application comprises:
receiving an instruction from the user to establish the connection between the first logical application and the second logical application.
8. (New) The one or more non-transitory computer-readable media of claim 2, wherein the instruction from the user is received via a clickable button on an interface displaying a list of one or more logical applications connected to the first logical application.
1. One or more non-transitory computer-readable media comprising computer-executable instructions that, when executed by at least one processor, perform a method for selecting a plurality of platform-agnostic logical applications and displaying the plurality of platform-agnostic logical applications in a display of a client device, comprising:
receiving, at a server side, a first request from a client side to access a first logical application;
fetching a first set of standardized instructions associated with the first logical application, wherein the first set of standardized instructions comprises a first functionality of the first logical application;
transmitting the first set of standardized instructions to the client side;
accessing, on the client side, a first set of client-side code for rendering a first user interface on the client device, the first set of client-side code stored in memory of the client device;
providing, based on the first set of client-side code and the first set of standardized instructions and through the first user interface associated with the first logical application, the first functionality to a user associated with the client device;
receiving, at the server side, a second request from the first logical application to access a second logical application;
fetching a second set of standardized instructions associated with the second logical application, wherein the second set of standardized instructions comprises:
a second functionality of the second logical application;
transmitting the second set of standardized instructions to the first logical application;
accessing, on the client side, a second set of client-side code for rendering a second user interface on the client device, the second set of client-side code stored in the memory of the client device; and
providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device,
wherein the first logical application and the second logical application are cloud-based applications.
2. The one or more non-transitory computer-readable media of claim 1, wherein providing the second functionality occurs contemporaneously with providing the first functionality.
3. The one or more non-transitory computer-readable media of claim 1, wherein the first logical application and the second logical application are stored in one or more public cloud databases.
4. The one or more non-transitory computer-readable media of claim 1, wherein the method further comprises:
causing display of, through the second user interface, a set of content from the first logical application.
5. The one or more non-transitory computer-readable media of claim 1, wherein the method further comprises:
running the second logical application from within the first logical application.
6. The one or more non-transitory computer-readable media of claim 1, wherein the second functionality is distinct from the first functionality.
7. The one or more non-transitory computer-readable media of claim 1, wherein providing the second functionality is determined by statuses of one or more indicators associated with the second functionality, wherein the statuses being in an active state indicate that the second functionality is to be provided.
TABLE 4
The difference between claim 2 of the current application and claim 1 of the 070’ patent is that the current application “establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;” and the 070’ patent “providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device,”. Both the current application and the 070’ patent used a platform agnostic application that provide end-users with granularity in selecting the functionality of the applications as well as connecting with other applications.
It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to substitute “establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;” with “providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device,” because the remaining elements would have performed the same function (i.e., use a platform agnostic application that provide end-users with granularity in selecting the functionality of the applications as well as connecting with other applications) as before. Such substitution would not interfere with the functionality of the remaining elements.
Current Application claims 9-15
070’ patent claims 8-14
9. A method of defining connection relationships between platform-agnostic web applications, the method comprising:
receiving, at a server side, a first request from a client side to access a first logical application;
fetching a first set of instructions associated with the first logical application, wherein the first set of instructions comprises:
a first set of features of the first logical application; and
a listing of one or more applications connected to the first logical application, the listing of one or more applications including a second logical application;
providing, based on the first set of instructions and through a first user interface associated with the first logical application, the first set of features to a user associated with a client device;
establishing a connection between the first logical application and the second logical application such that the second logical application is accessible from within the first logical application, and
wherein the second logical application has a second set of features,
wherein the first logical application and the second logical application are web applications.
10. The method of claim 9, further comprising:
removing the connection between the first logical application and the second logical application after a predetermined amount of time;
wherein the second logical application is inaccessible from within the first logical application after the connection is removed.
11. The method of claim 9, wherein the second logical application is configured to be exclusively accessible from within the first logical application.
12. The method of claim 9, further comprising:
responsive to establishing the connection between the first logical application and the second logical application, providing, to the user through the first user interface, at least one feature from the second set of features of the second logical application.
13. The method of claim 9, wherein the connection between the first logical application and the second logical application is a one-sided relationship such that the first logical application is inaccessible from the second logical application.
14. The method of claim 9, wherein the connection between the first logical application and the second logical application is a mutual relationship such that the first logical application is accessible from the second logical application.
15. The method of claim 9,
receiving, through the first logical application, an upload of a content item; and
providing the content item to a user such that the content item is viewable on both the first logical application and the second logical application after the connection is established between the first logical application and the second logical application.
8. A method of selecting a plurality of platform-agnostic logical applications and displaying the plurality of platform-agnostic logical applications in a display of a client device, the method comprising:
receiving, at a server side, a first request from a client side to access a first logical application;
fetching a first set of standardized instructions associated with the first logical application, wherein the first set of standardized instructions comprises a first functionality of the first logical application;
transmitting the first set of standardized instructions to the client side;
accessing a first set of client-side code for rendering a first user interface on the client device, the first set of client-side code stored in memory of the client device;
providing, based on the first set of client-side code and the first set of standardized instructions and through the first user interface associated with the first logical application, the first functionality to a user associated with the client device;
receiving, at the server side, a second request from the first logical application to access a second logical application;
fetching a second set of standardized instructions associated with the second logical application, wherein the second set of standardized instructions comprises:
a second functionality of the second logical application;
transmitting the second set of standardized instructions to the first logical application;
accessing a second set of client-side code for rendering a second user interface on the client device, the second set of client-side code stored in the memory of the client device;
providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device; and
causing display of, through the second user interface, a set of content from the first logical application,
wherein the first logical application and the second logical application are cloud-based applications.
9. The method of claim 8 further comprising:
causing display of, in the first user interface, in response to an input from the user, an identifier of one or more connected logical applications, including the second logical application.
10. The method of claim 8 further comprising:
connecting, through an input from an administrator, the first logical application and the second logical application.
11. The method of claim 8 further comprising:
connecting, for a predetermined period of time, the first logical application and the second logical application.
12. The method of claim 8, wherein providing the second functionality is initiated through an input of the user.
13. The method of claim 8, wherein the second functionality is provided when one or more indicators associated with the second functionality are in an active state.
14. The method of claim 8, wherein the second logical application inherits the first functionality from the first logical application such that the second functionality and the first functionality are identical.
TABLE 5
The difference between claim 9 of the current application and claim 8 of the 070’ patent is that the current application “establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;” and the 070’ patent “providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device; and causing display of, through the second user interface, a set of content from the first logical application,”. Both the current application and the 070’ patent used a platform agnostic application that provide end-users with granularity in selecting the functionality of the applications as well as connecting with other applications.
It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to substitute “establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;” with “providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device; and causing display of, through the second user interface, a set of content from the first logical application,” because the remaining elements would have performed the same function (i.e., use a platform agnostic application that provide end-users with granularity in selecting the functionality of the applications as well as connecting with other applications) as before. Such substitution would not interfere with the functionality of the remaining elements.
Current Application claims 16-21
070’ patent claims 15-20
16. A system for defining connection relationships between platform-agnostic web applications, the system comprising:
one or more non-transitory computer-readable media comprising computer-executable instructions that, when executed by at least one processor, perform a method for defining the connection relationships between the platform-agnostic web applications, comprising:
receiving, at a server side, a first request from a client side to access a first logical application;
fetching a first set of instructions associated with the first logical application, wherein the first set of instructions comprises a first set of features of the first logical application
;providing, based on the first set of instructions and through a first user interface associated with the first logical application, the first set of features to a user associated with a client device;
establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application; and
wherein the connection is mutual such that the first logical application is accessible from within the first logical application;
wherein the first logical application and the second logical application are web applications.
17. The system of claim 16, wherein the method further comprises:
establishing a second connection between the first logical application and a third logical application such that the third logical application is accessible from within the first logical application; and
wherein the second connection between the first logical application and the third logical application is a one-sided relationship such that the first logical application is inaccessible from the third logical application;
wherein the connection is a first connection.
18. The system of claim 16,
receiving, through the first logical application, an upload of a content item;
receiving a request to upload the content item to a third logical application; and
responsive to receiving the request, uploading the content item to the third logical application,
wherein the content item is accessible by a plurality of logical applications via the third logical application.
19. The system of claim 16,
wherein the first logical application is stored in one or more cloud-based databases,
wherein fetching the first set of instructions associated with the first logical application comprises:
interfacing with the one or more cloud-based databases storing the first logical application to retrieve the first set of instructions.
20. The system of claim 19, further comprising:
a logical application API communicatively coupled to the one or more cloud-based databases storing the first logical application;
wherein the logical application API is operable to execute the first set of instructions of the first logical application.
21. The system of claim 20, wherein the first logical application is programmed in a standardized language understandable by the logical application API such that the first logical application is executable on a plurality of client devices.
15. A system for selecting a plurality of platform-agnostic logical applications and displaying the plurality of platform-agnostic logical applications in a display of a client device, the system comprising:
a non-transitory computer-readable medium programmed to:
receive, at a server side, a first request from a client side to access a first logical application;
fetch a first set of standardized instructions associated with the first logical application, wherein the first set of standardized instructions comprises a first functionality of the first logical application;
transmit the first set of standardized instructions to the client side;
access a first set of client-side code for rendering a first user interface on the client device, the first set of client-side code stored in memory of the client device;
provide, based on the first set of client-side code and the first set of standardized instructions and through the first user interface associated with the first logical application, the first functionality to a user associated with the client device;
receive, at the server side, a second request from the first logical application to access a second logical application;
fetch a second set of standardized instructions associated with the second logical application, wherein the second set of standardized instructions comprises:
a second functionality of the second logical application, wherein the second logical application inherits the first functionality such that the second functionality and the first functionality are identical;
transmit the second set of standardized instructions to the first logical application;
access a second set of client-side code for rendering a second user interface on the client device, the second set of client-side code stored in the memory of the client device; and
provide, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device,
wherein the first logical application and the second logical application are cloud-based applications.
16. The system of claim 15, wherein the non-transitory computer-readable medium is further programmed to:
receive, at the server side, a third request from the second logical application to access a third logical application;
fetch a third set of standardized instructions associated with the third logical application, wherein the third set of standardized instructions comprises a third functionality of the third logical application;
transmit the third set of standardized instructions to the second logical application;
access a third set of client-side code for rendering a third user interface on the client device, wherein the third set of client-side code is stored on the client side; and
provide, based on the third set of client-side code and the third set of standardized instructions and through the third user interface associated with the third logical application, the third functionality to the user associated with the client device.
17. The system of claim 15, wherein the first set of standardized instructions further comprises one or more identifiers of the second logical application.
18. The system of claim 15, wherein the second logical application is configured to be exclusively accessible from within the first logical application.
19. The system of claim 15, wherein the non-transitory computer-readable medium is further programmed to:
establish a connection between the first logical application and the second logical application upon receiving a user input.
20. The system of claim 15, wherein the non-transitory computer-readable medium is further programmed to:
authenticate the user such that the user can access the first logical application and the second logical application on the client device.
TABLE 6
The difference between claim 16 of the current application and claim 15 of the 070’ patent is that the current application “establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;” and the 070’ patent “providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device,”. Both the current application and the 070’ patent used a platform agnostic application that provide end-users with granularity in selecting the functionality of the applications as well as connecting with other applications.
It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to substitute “establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;” with “providing, based on the second set of client-side code and the second set of standardized instructions and through the second user interface associated with the second logical application, the second functionality to the user associated with the client device,” because the remaining elements would have performed the same function (i.e., use a platform agnostic application that provide end-users with granularity in selecting the functionality of the applications as well as connecting with other applications) as before. Such substitution would not interfere with the functionality of the remaining elements.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries set forth in Graham v. John Deere Co., 383 U.S. 1, 148 USPQ 459 (1966), that are applied for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Claims 2-5 and 7-21 are rejected under 35 U.S.C. 103 as being unpatentable over Melliere et al. ( US 2018/0006883 A1), hereinafter referred to as Melliere, in view of Choi et al. (US 2013/0227085 A1), hereinafter referred to as Choi.
With respect to claim 2, Melliere teaches One or more non-transitory computer-readable media comprising computer- executable instructions that, when executed by at least one processor (one or more computer-readable medium comprising instructions and one or more processors coupled with the one or more computer-readable medium, para. 0011), perform a method for defining connection relationships between platform-agnostic web applications (the user interface manager 304 configured to receive an indication from the user as to which cloud services/applications the user would like to install and/or configure, para. 0046; also see para. 0051), comprising:
receiving, at a server side, a first request from a client side to access a first logical application (the user interface manager 304 configured to receive an indication from the user as to which cloud services/applications [including first cloud application] the user would like to install and/or configure, para. 0046; also see para. 0051);
fetching a first set of instructions associated with the first logical application, wherein the first set of instructions comprises a first set of features of the first logical application (the unified collaboration application 112 embodied as any set of integrated communication services (e.g., instant messaging, voice, audio, web/video conferencing, desktop sharing, data sharing, speech recognition, email, etc.) which can be configured to provide a consistent unified user interface, para. 0029; rendering the user interface elements to a display of the user, para. 0045; (cloud applications 104 accessed by users via a web-browser or other thin/zero client application residing on the respective user's end-user computing device 108, para. 0027);
providing, based on the first set of instructions and through a first user interface associated with the first logical application, the first set of features to a user associated with a client device (the user interface manager 304 configured to provide information usable to display a list (e.g., text, icons, graphics, etc.) of all the cloud services/applications (e.g., the cloud applications 104 of FIG. 1) which are capable of being integrated with a particular unified collaboration application (e.g., the unified collaboration application 112 of FIG. 1), para. 0046); and
Melliere does not explicitly teach
establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application;
wherein the first logical application and the second logical application are web applications.
However, Choi teaches
establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application (the cloud managing unit 300 designate at least one of the first cloud application CA1, the second cloud application CA2, the third cloud application CA3, and the fourth cloud application CA4 to be synchronized by selecting one or more cloud applications corresponding to each cloud file, para. 0039; the command list of the cloud application refer to extendability information associated with extendability of the respective cloud application to other cloud applications; the extendability information represent a command for interlinking the respective cloud application with another cloud application, para. 0063);
wherein the first logical application and the second logical application are web applications (the first cloud application CA1 synchronize and manage movie content, the second cloud application CA2 synchronize and manage music content, para. 0040; fig. 1) in order to allow a user to use and manage various cloud services in a terminal more efficiently as taught by Choi (para. 0011).
Therefore, based on Melliere in view of Choi, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to utilize the teaching of Choi to the media of Melliere in order to allow a user to use and manage various cloud services in a terminal more efficiently as taught by Choi (para. 0011).
With respect to claim 3, Melliere in view of Choi teaches The one or more non-transitory computer-readable media of claim 2 as described above,
Further, Choi teaches wherein the first set of instructions comprises a listing of one or more applications connected to the first logical application (if a first cloud application CA1, which interlinked with a first cloud server CS1 to provide access to a cloud service for the terminal 10, is executed, the cloud managing unit 300 register the first cloud application CA1 in the management list, the first cloud application CA1 registered by using identification information of the first cloud application CA1, which collected by the application managing unit 100, para. 0046) in order to allow a user to use and manage various cloud services in a terminal more efficiently as taught by Choi (para. 0011).
Therefore, based on Melliere in view of Choi, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to utilize the teaching of Choi to the media of Melliere in order to allow a user to use and manage various cloud services in a terminal more efficiently as taught by Choi (para. 0011).
With respect to claim 4, Melliere in view of Choi teaches The one or more non-transitory computer-readable media of claim 2 as described above,
Further, Choi teaches
wherein the method further comprises:
responsive to establishing the connection between the first logical application and the second logical application, causing display of a list of one or more logical applications connected to the first logical application (if a first cloud application CA1, which interlinked with a first cloud server CS1 to provide access to a cloud service for the terminal 10, is executed, the cloud managing unit 300 register the first cloud application CA1 in the management list, the first cloud application CA1 registered by using identification information of the first cloud application CA1, which collected by the application managing unit 100, para. 0046);
wherein the second logical application is included in the list of one or more logical applications (the cloud managing unit 300 designate at least one of the first cloud application CA1, the second cloud application CA2, the third cloud application CA3, and the fourth cloud application CA4 to be synchronized by selecting one or more cloud applications corresponding to each cloud file, para. 0039; the command list of the cloud application refer to extendability information associated with extendability of the respective cloud application to other cloud applications; the extendability information represent a command for interlinking the respective cloud application with another cloud application, para. 0063) in order to allow a user to use and manage various cloud services in a terminal more efficiently as taught by Choi (para. 0011).
Therefore, based on Melliere in view of Choi, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to utilize the teaching of Choi to the media of Melliere in order to allow a user to use and manage various cloud services in a terminal more efficiently as taught by Choi (para. 0011).
With respect to claim 5, Melliere in view of Choi teaches The one or more non-transitory computer-readable media of claim 2 as described above,
Further, Choi teaches
wherein the method further comprises:
receiving, at the server side, a second request from the client side to access the second logical application (if a first cloud application CA1, which interlinked with a first cloud server CS1 to provide access to a cloud service for the terminal 10, is executed, the cloud managing unit 300 register the first cloud application CA1 in the management list, the first cloud application CA1 registered by using identification information of the first cloud application CA1, which collected by the application managing unit 100, para. 0046);
fetching a second set of instructions associated with the second logical application, wherein the second set of instructions comprises a second set of features of the second logical application (the cloud managing unit 300 receives information associated with at least one of the first cloud application CA1, the second cloud application CA2, the third cloud application CA3, and the fourth cloud application CA4 from the application managing unit 100, and transfers the received information to the database 500 of terminal 10, para. 0043);
transmitting the second set of instructions to the first logical application (the cloud managing unit 300 designate at least one of the first cloud application CA1, the second cloud application CA2, the third cloud application CA3, and the fourth cloud application CA4 to be synchronized by selecting one or more cloud applications corresponding to each cloud file, para. 0039; the command list of the cloud application refer to extendability information associated with extendability of the respective cloud application to other cloud applications; the extendability information represent a command for interlinking the respective cloud application with another cloud application, para. 0063); and
providing, based on the second set of instructions and through a second user interface associated with the second logical application, the second set of features to the user associated with the client device (the first cloud application CA1 synchronize and manage movie content, the second cloud application CA2 synchronize and manage music content, para. 0040; fig. 1) in order to allow a user to use and manage various cloud services in a terminal more efficiently as taught by Choi (para. 0011).
Therefore, based on Melliere in view of Choi, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to utilize the teaching of Choi to the media of Melliere in order to allow a user to use and manage various cloud services in a terminal more efficiently as taught by Choi (para. 0011).
With respect to claim 7, Melliere teaches The one or more non-transitory computer-readable media of claim 2,
wherein establishing the connection between the first logical application and the second logical application (for establishing a link between one or more cloud-based applications/services and a unified collaboration application, para. 0051) comprises:
receiving an instruction from the user to establish the connection between the first logical application and the second logical application (a user (e.g., via an end-user computing device 108) interacts with the centralized hub computing device 114 to specify how one or more cloud-based applications/services 104 are to connect with the unified collaboration application 112, para. 0025).
With respect to claim 8, Melliere teaches The one or more non-transitory computer-readable media of claim 7,
wherein the instruction from the user is received via a clickable button on an interface displaying a list of one or more logical applications connected to the first logical application (the application integration management platform 116 determines whether to enable the application integration, such as may be initiated by a user (e.g., by clicking a user interface element), para. 0056; cloud applications 104 accessed by users via a web-browser or other thin/zero client application residing on the respective user's end-user computing device 108, para. 0027).
With respect to claim 9, Melliere teaches A method of defining connection relationships between platform-agnostic web applications (the user interface manager 304 configured to receive an indication from the user as to which cloud services/applications the user would like to install and/or configure, para. 0046; also see para. 0051), the method comprising:
receiving, at a server side, a first request from a client side to access a first logical application (the user interface manager 304 configured to receive an indication from the user as to which cloud services/applications [including first cloud application] the user would like to install and/or configure, para. 0046; also see para. 0051);
fetching a first set of instructions associated with the first logical application (the unified collaboration application 112 embodied as any set of integrated communication services (e.g., instant messaging, voice, audio, web/video conferencing, desktop sharing, data sharing, speech recognition, email, etc.) which can be configured to provide a consistent unified user interface, para. 0029; rendering the user interface elements to a display of the user, para. 0045; (cloud applications 104 accessed by users via a web-browser or other thin/zero client application residing on the respective user's end-user computing device 108, para. 0027), wherein the first set of instructions comprises:
a first set of features of the first logical application (the user interface manager 304 configured to provide information usable to display a list (e.g., text, icons, graphics, etc.) of all the cloud services/applications (e.g., the cloud applications 104 of FIG. 1) which are capable of being integrated with a particular unified collaboration application (e.g., the unified collaboration application 112 of FIG. 1), para. 0046); and
a listing of one or more applications connected to the first logical application, the listing of one or more applications including a second logical application (the user interface manager 304 configured to provide information usable to display a list (e.g., text, icons, graphics, etc.) of all the cloud services/applications (e.g., the cloud applications 104 of FIG. 1) which are capable of being integrated with a particular unified collaboration application (e.g., the unified collaboration application 112 of FIG. 1), para. 0046);
providing, based on the first set of instructions and through a first user interface associated with the first logical application, the first set of features to a user associated with a client device (the user interface manager 304 configured to provide information usable to display a list (e.g., text, icons, graphics, etc.) of all the cloud services/applications (e.g., the cloud applications 104 of FIG. 1) which are capable of being integrated with a particular unified collaboration application (e.g., the unified collaboration application 112 of FIG. 1), para. 0046);
Melliere does not explicitly teach
establishing a connection between the first logical application and the second logical application such that the second logical application is accessible from within the first logical application, and
wherein the second logical application has a second set of features,
wherein the first logical application and the second logical application are web applications.
However, Choi teaches
establishing a connection between the first logical application and the second logical application such that the second logical application is accessible from within the first logical application (the cloud managing unit 300 designate at least one of the first cloud application CA1, the second cloud application CA2, the third cloud application CA3, and the fourth cloud application CA4 to be synchronized by selecting one or more cloud applications corresponding to each cloud file, para. 0039; the command list of the cloud application refer to extendability information associated with extendability of the respective cloud application to other cloud applications; the extendability information represent a command for interlinking the respective cloud application with another cloud application, para. 0063), and
wherein the second logical application has a second set of features (the first cloud application CA1 synchronize and manage movie content, the second cloud application CA2 synchronize and manage music content, para. 0040; fig. 1),
wherein the first logical application and the second logical application are web applications (the first cloud application CA1 synchronize and manage movie content, the second cloud application CA2 synchronize and manage music content, para. 0040; fig. 1) in order to allow a user to use and manage various cloud services in a terminal more efficiently as taught by Choi (para. 0011).
Therefore, based on Melliere in view of Choi, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to utilize the teaching of Choi to the method of Melliere in order to allow a user to use and manage various cloud services in a terminal more efficiently as taught by Choi (para. 0011).
With respect to claim 10, Melliere in view of Choi teaches The method of claim 9 as described above,
Further, Choi teaches further comprising:
removing the connection between the first logical application and the second logical application after a predetermined amount of time (the cloud managing application 310 requests the cloud managing unit 300 to delete the information associated with the second cloud server CS2 from the interlinked file stored in the database 500. The cloud managing unit 300 may update the interlinked file of the database 500 to remove information associated with the second cloud server CS2, and notifies the cloud managing application 310 that the information associated with the second cloud server CS2 is deleted from the interlinked file, para. 0101);
wherein the second logical application is inaccessible from within the first logical application after the connection is removed (the cloud managing application 310 requests the cloud managing unit 300 to delete the information associated with the second cloud server CS2 from the interlinked file stored in the database 500. The cloud managing unit 300 may update the interlinked file of the database 500 to remove information associated with the second cloud server CS2, and notifies the cloud managing application 310 that the information associated with the second cloud server CS2 is deleted from the interlinked file, para. 0101) in order to facilitate access to the functionality of the second cloud-based application as taught by Chen (para. 0061).
Therefore, based on Melliere in view of Choi, and further in view of Chen, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to utilize the teaching of Chen to the method of Melliere in view of Choi in order to facilitate access to the functionality of the second cloud-based application as taught by Chen (para. 0061).
With respect to claim 11, Melliere in view of Choi teaches The method of claim 9 as described above,
Further, Choi teaches wherein the second logical application is configured to be exclusively accessible from within the first logical application (the cloud managing application 310 requests the cloud managing unit 300 to delete the information associated with the second cloud server CS2 from the interlinked file stored in the database 500. The cloud managing unit 300 may update the interlinked file of the database 500 to remove information associated with the second cloud server CS2, and notifies the cloud managing application 310 that the information associated with the second cloud server CS2 is deleted from the interlinked file, para. 0101) in order to facilitate access to the functionality of the second cloud-based application as taught by Chen (para. 0061).
Therefore, based on Melliere in view of Choi, and further in view of Chen, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to utilize the teaching of Chen to the method of Melliere in view of Choi in order to facilitate access to the functionality of the second cloud-based application as taught by Chen (para. 0061).
With respect to claim 12, Melliere teaches The method of claim 9, further comprising:
responsive to establishing the connection between the first logical application and the second logical application, providing, to the user through the first user interface, at least one feature from the second set of features of the second logical application (a user (e.g., via an end-user computing device 108) interacts with the centralized hub computing device 114 to specify how one or more cloud-based applications/services 104 are to connect with the unified collaboration application 112, para. 0025; the application integration management platform 116 determines whether to enable the application integration, such as may be initiated by a user (e.g., by clicking a user interface element), para. 0056; cloud applications 104 accessed by users via a web-browser or other thin/zero client application residing on the respective user's end-user computing device 108, para. 0027).
With respect to claim 13, Melliere in view of Choi teaches The method of claim 9 as described above,
Further, Choi teaches
wherein the connection between the first logical application and the second logical application is a one-sided relationship such that the first logical application is inaccessible from the second logical application (the cloud managing application 310 requests the cloud managing unit 300 to delete the information associated with the second cloud server CS2 from the interlinked file stored in the database 500. The cloud managing unit 300 may update the interlinked file of the database 500 to remove information associated with the second cloud server CS2, and notifies the cloud managing application 310 that the information associated with the second cloud server CS2 is deleted from the interlinked file, para. 0101) in order to facilitate access to the functionality of the second cloud-based application as taught by Chen (para. 0061).
Therefore, based on Melliere in view of Choi, and further in view of Chen, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to utilize the teaching of Chen to the method of Melliere in view of Choi in order to facilitate access to the functionality of the second cloud-based application as taught by Chen (para. 0061).
With respect to claim 14, Melliere in view of Choi teaches The method of claim 9 as described above,
Further, Choi teaches
wherein the connection between the first logical application and the second logical application is a mutual relationship such that the first logical application is accessible from the second logical application (the cloud managing application 310 requests the cloud managing unit 300 to delete the information associated with the second cloud server CS2 from the interlinked file stored in the database 500. The cloud managing unit 300 may update the interlinked file of the database 500 to remove information associated with the second cloud server CS2, and notifies the cloud managing application 310 that the information associated with the second cloud server CS2 is deleted from the interlinked file, para. 0101) in order to facilitate access to the functionality of the second cloud-based application as taught by Chen (para. 0061).
Therefore, based on Melliere in view of Choi, and further in view of Chen, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to utilize the teaching of Chen to the method of Melliere in view of Choi in order to facilitate access to the functionality of the second cloud-based application as taught by Chen (para. 0061).
With respect to claim 15, Melliere teaches The method of claim 9,
receiving, through the first logical application, an upload of a content item; and
providing the content item to a user such that the content item is viewable on both the first logical application and the second logical application after the connection is established between the first logical application and the second logical application (the user interface manager 304 may be configured to provide information usable to display a list (e.g., text, icons, graphics, etc.) of all the cloud services/applications (e.g., the cloud applications 104 of FIG. 1) which are capable of being integrated with a particular unified collaboration application (e.g., the unified collaboration application 112 of FIG. 1). In furtherance of the example, the user interface manager 304 may be configured to receive an indication from the user as to which cloud services/applications the user would like to install and/or configure. In some embodiments, the cloud services/applications which are available to be installed may be stored in the available applications database, para. 0046).
With respect to claim 16, Melliere teaches A system for defining connection relationships between platform-agnostic web applications (the user interface manager 304 configured to receive an indication from the user as to which cloud services/applications the user would like to install and/or configure, para. 0046; also see para. 0051), the system comprising:
one or more non-transitory computer-readable media comprising computer-executable instructions that, when executed by at least one processor (one or more computer-readable medium comprising instructions and one or more processors coupled with the one or more computer-readable medium, para. 0011), perform a method for defining the connection relationships between the platform-agnostic web applications (the user interface manager 304 configured to receive an indication from the user as to which cloud services/applications the user would like to install and/or configure, para. 0046; also see para. 0051), comprising:
receiving, at a server side, a first request from a client side to access a first logical application (the user interface manager 304 configured to receive an indication from the user as to which cloud services/applications [including first cloud application] the user would like to install and/or configure, para. 0046; also see para. 0051);
fetching a first set of instructions associated with the first logical application, wherein the first set of instructions comprises a first set of features of the first logical application (the unified collaboration application 112 embodied as any set of integrated communication services (e.g., instant messaging, voice, audio, web/video conferencing, desktop sharing, data sharing, speech recognition, email, etc.) which can be configured to provide a consistent unified user interface, para. 0029; rendering the user interface elements to a display of the user, para. 0045; (cloud applications 104 accessed by users via a web-browser or other thin/zero client application residing on the respective user's end-user computing device 108, para. 0027);
providing, based on the first set of instructions and through a first user interface associated with the first logical application, the first set of features to a user associated with a client device (the user interface manager 304 configured to provide information usable to display a list (e.g., text, icons, graphics, etc.) of all the cloud services/applications (e.g., the cloud applications 104 of FIG. 1) which are capable of being integrated with a particular unified collaboration application (e.g., the unified collaboration application 112 of FIG. 1), para. 0046);
Melliere does not explicitly teach
establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application; and
wherein the connection is mutual such that the first logical application is accessible from within the first logical application;
wherein the first logical application and the second logical application are web applications.
However, Choi teaches
establishing a connection between the first logical application and a second logical application such that the second logical application is accessible from within the first logical application (the cloud managing unit 300 designate at least one of the first cloud application CA1, the second cloud application CA2, the third cloud application CA3, and the fourth cloud application CA4 to be synchronized by selecting one or more cloud applications corresponding to each cloud file, para. 0039; the command list of the cloud application refer to extendability information associated with extendability of the respective cloud application to other cloud applications; the extendability information represent a command for interlinking the respective cloud application with another cloud application, para. 0063);
wherein the connection is mutual such that the first logical application is accessible from within the first logical application (the first cloud application CA1 synchronize and manage movie content, the second cloud application CA2 synchronize and manage music content, para. 0040; fig. 1);
wherein the first logical application and the second logical application are web applications (the first cloud application CA1 synchronize and manage movie content, the second cloud application CA2 synchronize and manage music content, para. 0040; fig. 1) in order to allow a user to use and manage various cloud services in a terminal more efficiently as taught by Choi (para. 0011).
Therefore, based on Melliere in view of Choi, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to utilize the teaching of Choi to the system of Melliere in order to allow a user to use and manage various cloud services in a terminal more efficiently as taught by Choi (para. 0011).
With respect to claim 17, Melliere in view of Choi teaches The system of claim 16 as described above,
Further, Choi teaches
wherein the method further comprises:
establishing a second connection between the first logical application and a third logical application such that the third logical application is accessible from within the first logical application (the cloud managing unit 300 designate at least one of the first cloud application CA1, the second cloud application CA2, the third cloud application CA3, and the fourth cloud application CA4 to be synchronized by selecting one or more cloud applications corresponding to each cloud file, para. 0039; the command list of the cloud application refer to extendability information associated with extendability of the respective cloud application to other cloud applications; the extendability information represent a command for interlinking the respective cloud application with another cloud application, para. 0063); and
wherein the second connection between the first logical application and the third logical application is a one-sided relationship such that the first logical application is inaccessible from the third logical application (the cloud managing application 310 requests the cloud managing unit 300 to delete the information associated with the second cloud server CS2 from the interlinked file stored in the database 500. The cloud managing unit 300 may update the interlinked file of the database 500 to remove information associated with the second cloud server CS2, and notifies the cloud managing application 310 that the information associated with the second cloud server CS2 is deleted from the interlinked file, para. 0101);
wherein the connection is a first connection (the cloud managing application 310 requests the cloud managing unit 300 to delete the information associated with the second cloud server CS2 from the interlinked file stored in the database 500. The cloud managing unit 300 may update the interlinked file of the database 500 to remove information associated with the second cloud server CS2, and notifies the cloud managing application 310 that the information associated with the second cloud server CS2 is deleted from the interlinked file, para. 0101) in order to facilitate access to the functionality of the second cloud-based application as taught by Chen (para. 0061).
Therefore, based on Melliere in view of Choi, and further in view of Chen, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to utilize the teaching of Chen to the system of Melliere in view of Choi in order to facilitate access to the functionality of the second cloud-based application as taught by Chen (para. 0061).
With respect to claim 18, Melliere in view of Choi teaches The system of claim 16 as described above,
Further, Choi teaches
receiving, through the first logical application, an upload of a content item (the cloud managing application 310 requests the cloud managing unit 300 to delete the information associated with the second cloud server CS2 from the interlinked file stored in the database 500. The cloud managing unit 300 may update the interlinked file of the database 500 to remove information associated with the second cloud server CS2, and notifies the cloud managing application 310 that the information associated with the second cloud server CS2 is deleted from the interlinked file, para. 0101);
receiving a request to upload the content item to a third logical application (the cloud managing application 310 requests the cloud managing unit 300 to delete the information associated with the second cloud server CS2 from the interlinked file stored in the database 500. The cloud managing unit 300 may update the interlinked file of the database 500 to remove information associated with the second cloud server CS2, and notifies the cloud managing application 310 that the information associated with the second cloud server CS2 is deleted from the interlinked file, para. 0101); and
responsive to receiving the request, uploading the content item to the third logical application (the cloud managing application 310 requests the cloud managing unit 300 to delete the information associated with the second cloud server CS2 from the interlinked file stored in the database 500. The cloud managing unit 300 may update the interlinked file of the database 500 to remove information associated with the second cloud server CS2, and notifies the cloud managing application 310 that the information associated with the second cloud server CS2 is deleted from the interlinked file, para. 0101),
wherein the content item is accessible by a plurality of logical applications via the third logical application (the cloud managing application 310 requests the cloud managing unit 300 to delete the information associated with the second cloud server CS2 from the interlinked file stored in the database 500. The cloud managing unit 300 may update the interlinked file of the database 500 to remove information associated with the second cloud server CS2, and notifies the cloud managing application 310 that the information associated with the second cloud server CS2 is deleted from the interlinked file, para. 0101) in order to facilitate access to the functionality of the second cloud-based application as taught by Chen (para. 0061).
Therefore, based on Melliere in view of Choi, and further in view of Chen, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to utilize the teaching of Chen to the system of Melliere in view of Choi in order to facilitate access to the functionality of the second cloud-based application as taught by Chen (para. 0061).
With respect to claim 19, Melliere teaches The system of claim 16,
wherein the first logical application is stored in one or more cloud-based databases the user interface manager 304 may be configured to receive an indication from the user as to which cloud services/applications the user would like to install and/or configure. In some embodiments, the cloud services/applications which are available to be installed may be stored in the available applications database, para. 0046),
wherein fetching the first set of instructions associated with the first logical application comprises:
interfacing with the one or more cloud-based databases storing the first logical application to retrieve the first set of instructions (a user (e.g., via an end-user computing device 108) interacts with the centralized hub computing device 114 to specify how one or more cloud-based applications/services 104 are to connect with the unified collaboration application 112, para. 0025; the application integration management platform 116 determines whether to enable the application integration, such as may be initiated by a user (e.g., by clicking a user interface element), para. 0056; cloud applications 104 accessed by users via a web-browser or other thin/zero client application residing on the respective user's end-user computing device 108, para. 0027).
With respect to claim 20, Melliere teaches The system of claim 19, further comprising:
a logical application API communicatively coupled to the one or more cloud-based databases storing the first logical application (a user (e.g., via an end-user computing device 108) interacts with the centralized hub computing device 114 to specify how one or more cloud-based applications/services 104 are to connect with the unified collaboration application 112, para. 0025; the application integration management platform 116 determines whether to enable the application integration, such as may be initiated by a user (e.g., by clicking a user interface element), para. 0056; cloud applications 104 accessed by users via a web-browser or other thin/zero client application residing on the respective user's end-user computing device 108, para. 0027);
wherein the logical application API is operable to execute the first set of instructions of the first logical application (a user (e.g., via an end-user computing device 108) interacts with the centralized hub computing device 114 to specify how one or more cloud-based applications/services 104 are to connect with the unified collaboration application 112, para. 0025; the application integration management platform 116 determines whether to enable the application integration, such as may be initiated by a user (e.g., by clicking a user interface element), para. 0056; cloud applications 104 accessed by users via a web-browser or other thin/zero client application residing on the respective user's end-user computing device 108, para. 0027).
With respect to claim 21, Melliere teaches The system of claim 20,
wherein the first logical application is programmed in a standardized language understandable by the logical application API such that the first logical application is executable on a plurality of client devices (a user (e.g., via an end-user computing device 108) interacts with the centralized hub computing device 114 to specify how one or more cloud-based applications/services 104 are to connect with the unified collaboration application 112, para. 0025; the application integration management platform 116 determines whether to enable the application integration, such as may be initiated by a user (e.g., by clicking a user interface element), para. 0056; cloud applications 104 accessed by users via a web-browser or other thin/zero client application residing on the respective user's end-user computing device 108, para. 0027).
Claims 6 are rejected under 35 U.S.C. 103 as being unpatentable over Melliere et al. ( US 2018/0006883 A1), hereinafter referred to as Melliere, in view of Choi et al. (US 2013/0227085 A1), hereinafter referred to as Choi, and further in view of Chen et al. (US 2019/0129730 A1), hereinafter referred to as Chen.
With respect to claim 6, Melliere in view of Choi teaches The one or more non-transitory computer-readable media of claim 2 as described above
Melliere in view of Choi does not explicitly teach wherein establishing the connection between the first logical application and the second logical application comprises:
receiving an instruction from an administrator for the first logical application to establish the connection between the first logical application and the second logical application;
wherein the administrator is different than the user.
However, Chen teaches wherein establishing the connection between the first logical application and the second logical application comprises:
receiving an instruction from an administrator for the first logical application to establish the connection between the first logical application and the second logical application (an administrator of cloud system 210 utilize a first user input device 240 to select and add the voice support application, para. 0047);
wherein the administrator is different than the user (an administrator of cloud system 210 utilize a first user input device 240 to select and add the voice support application, para. 0047) in order to facilitate access to the functionality of the second cloud-based application as taught by Chen (para. 0061).
Therefore, based on Melliere in view of Choi, and further in view of Chen, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to utilize the teaching of Chen to the media of Melliere in view of Choi in order to facilitate access to the functionality of the second cloud-based application as taught by Chen (para. 0061).
Contact Information
Any inquiry concerning this communication or earlier communications from the examiner should be directed to HAO NGUYEN whose telephone number is (571)272-2666. The examiner can normally be reached on Monday through Friday from 7:30 A.M. to 4:00 P.M. (EST).
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Joon H. Hwang can be reached on 571-272-4036. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/H.H.N/Examiner, Art Unit 2447
July 25, 2026
/JOON H HWANG/Supervisory Patent Examiner, Art Unit 2447