DETAILED ACTION
This action is responsive to the application filed on August 14, 2024, which is a Continuation of 18/094,286, filed on January 06, 2023, now US Pat. No. 12,099,837.
Claims 1-20 are pending and presented to examination.
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.
Examiner Notes
Examiner cites particular columns, paragraphs, figures and line numbers in the references as applied to the claims below for the convenience of the applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested that, in preparing responses, the applicant fully consider the references in their entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the examiner.
Drawings
The drawings filed on August 14, 2024 are acceptable for examination purposes.
Information Disclosure Statement
As required by M.P.E.P. 609, the applicant’s submission of the Information Disclosure Statements dated September 30, 2024, April 14, 2025, May 27, 2025 and December 19, 2025 are acknowledged by the examiner and the cited references have been considered in the examination of the claims now pending.
Specification
The disclosure is objected to because of the following informalities: The CROSS-REFERENCE TO RELATED APPLICATIONS section needs to include the most recent data. For example, the instant application is a continuation of application No. 18/094,286 filed on 01/06/2023, now US Pat. No. 12,099,837. Each application listed must be accompanied with their respective patent number. Appropriate correction is required.
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 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); 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 nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13.
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) 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 www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer.
Claims 1-20 rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-20 of U.S. Patent No. 12,099,837 in view of Eteminan and further in view of Titonis. The claims of U.S. Patent No. 12,099,837 recite verifying the functionality of the application across surfaces prior to distribution and, in response to that verification, approving the application for distribution on the host platform (see, e.g., claims 6, 13, and 20). The patented claims differ from the instant claims only in that the instant claims recite performing such pre-distribution verification by causing execution of the application across predefined benchmark surfaces in surface-specific sandboxes, rather than by means of automatically-generated screenshots. As set forth in the 103 rejection below, Eteminan teaches automatic verification of an application across the supported device models prior to distribution, and Titonis teaches performing such execution within an instrumented sandbox that emulates a device of the specified type and operating system. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to perform the pre-distribution verification-and-approval recited in the claims of U.S. Patent No. 12,099,837 using the sandboxed, per-surface execution taught by Eteminan and Titonis, in order to isolate execution of the unverified application during verification and to obtain reliable, automated behavioral results across the targeted surfaces in place of slow and error-prone manual vetting (Titonis [0010], [0025], [0049]).
Instant Application
US Pat. No. 12,099,837
1. A computer system, comprising: one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for:receiving, from a first user, an application model for storing on a host platform, wherein the application model is associated with a set of capability data, a set of functionality data, and a set of surfaces; after receiving the application model, accessing the set of capability data and the set of functionality data associated with the application model to generate a collection of user interfaces and functionality to verify the application model in accordance with a plurality of predefined benchmark surfaces associated with the host platform; in accordance with a determination that a predefined benchmark surface of the plurality of predefined benchmark surfaces corresponds to a first surface of the set of surfaces, causing a first execution in a first sandbox of a first set of user interfaces and first functionality associated with the application model, wherein the first sandbox is based on the first surface; in accordance with a determination that a predefined benchmark surface of the plurality of predefined benchmark surfaces corresponds to a second surface of the set of surfaces, causing a second execution in a second sandbox of a second set of user interfaces and second functionality associated with the application model, wherein the second sandbox is based on the second surface, and wherein the first set of user interfaces and first functionality are different from the second set of user interfaces and second functionality; and in response to the first execution and second execution performing successfully, storing the application model on the host platform for installation by other users of the host platform.
1. A computer system, comprising: one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for:receiving a request, from a first user, to install an application from a plurality of applications on a hosted network, wherein the application is associated with an application model, a set of capability data, and a set of functionality data; and after receiving the request to install the application from the plurality of applications, accessing the set of capability data and the set of functionality data associated with the application to determine a collection of customizations and functionality to install in accordance with the first user’s account settings, wherein: in accordance with a determination that the first user’s account settings correspond to a first surface, installing a first set of user interfaces and functionality associated with the application based on the set of capability data and the set of functionality data; and in accordance with a determination that the first user’s account settings correspond to a second surface, installing a second set of user interfaces and functionality associated with the application based on the set of capability data and the set of functionality data, wherein the first set of user interfaces and functionality are different from the second set of user interfaces and functionality.
Claim 2
Claim 2
Claim 3
Claim 3
Claim 4
Claim 4
Claim 5
Claim 5
Claim 6 + Claim 7
Claim 7
Claims 8-14
Claims 8-14
Claims 15-20
Claims 15-20
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 2-5, 9-12 and 16-19 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claim 2 (and similar for claims 9 and 16) recites "wherein the set of capability data indicates one or more permissions required by the application, one or more events that occur during execution of the application, one or more events external to the application that cause the application to perform an operation, or one or more application programming interfaces used by the application.". There is insufficient antecedent basis for this limitation in the claim. For purpose of examination, “the application” will be interpreted as “the application model”.
Claim 3 (and similar for claims 10 and 17) recites "wherein the first set of user interfaces includes a graphical user interface of the application that has been customized to match one or more preferences of the first user.". There is insufficient antecedent basis for this limitation in the claim. For purpose of examination, “the application” will be interpreted as “the application model”.
Claim 4 (and similar for claims 11 and 18) recites "wherein the functionality data includes a schema for a graphical user interface, wherein the graphical user interface is automatically generated for the first surface based on the schema after receiving a request to install the application, and wherein functionality of the first set of user interfaces and functionality is based on a type of the first surface.". There is insufficient antecedent basis for this limitation in the claim. For purpose of examination, “the application” will be interpreted as “the application model”.
Claim 5 (and similar for claims 12 and 19) recites "wherein the host platform includes a single permissions model for a plurality of different surfaces such that permissions for the application during installation (1) are dynamically determined based on a type of user account for the first user and (2) define functionality that is installed for the application.". There is insufficient antecedent basis for this limitation in the claim. For purpose of examination, “the application” will be interpreted as “the application model”.
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, 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 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.
Claims 1-3, 5-10, 12-17 and 19-20 are rejected under 35 U.S.C. 103 as being unpatentable over Eteminan et al. (US Pub. No. 2011/0161912, hereinafter Eteminan) in view of Titonis et al. (US Pub. No. 2018/0025157, hereinafter Titonis).
With respect to claim 1, Eteminan teaches a computer system, comprising: one or more processors; and memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for: (a mobile application ecosystem (Application Factory System 100) implemented as software programs executing in centralized server computers (Eteminan [0032], [0044])). receiving, from a first user, an application model for storing on a host platform, wherein the application model is associated with a set of capability data, a set of functionality data, and a set of surfaces (a developer creates an application expressed in a Visual and XML-Based Representation Language 210 (the application model) and submits it to the Distribution Center “app store” for distribution (Eteminan [0049], [0070]), the model including device service and capability elements (Service Palette 225) as capability data and logic and data elements as functionality data (Eteminan [0055], [0057]), and targeting a developer-selected set of Specific Mobile Device Models 104, each embodying a real device type (Eteminan [0061], [0026])). after receiving the application model, accessing the set of capability data and the set of functionality data associated with the application model to generate a collection of user interfaces and functionality to verify the application model in accordance with a plurality of predefined benchmark surfaces associated with the host platform (the Build Engine 140 compiles the application model into executable versions for the supported Specific Mobile Device Models, and the Verification Engine 150 performs automatic verification of the application across multiple or all supported Specific Mobile Device Models (Eteminan [0037], [0044], [0071]), the extensible set of supported Specific Mobile Device Models 104 maintained by the platform constituting the predefined benchmark surfaces (Eteminan [0026], [0011])). in accordance with a determination that a predefined benchmark surface of the plurality of predefined benchmark surfaces corresponds to a first surface of the set of surfaces, causing a first execution [[in a first sandbox]] of a first set of user interfaces and first functionality associated with the application model, [[wherein the first sandbox is based on the first surface]] (the Verification Engine causes simulated execution of the built version for a selected (first) Specific Mobile Device Model among the targeted set, the version being built native to that device model and thus having that model’s user interfaces and functionality (Eteminan [0042], [0026], [0071], [0010], [0061])). in accordance with a determination that a predefined benchmark surface of the plurality of predefined benchmark surfaces corresponds to a second surface of the set of surfaces, causing a second execution [[in a second sandbox]] of a second set of user interfaces and second functionality associated with the application model, [[wherein the second sandbox is based on the second surface]], and wherein the first set of user interfaces and first functionality are different from the second set of user interfaces and second functionality (the application is built and verified for each Specific Mobile Device Model native to each (Eteminan [0071], [0044]), such that the version for one device model differs in presentation and available features from that of another (Eteminan [0010], [0003], [0061])) and in response to the first execution and second execution performing successfully, storing the application model on the host platform for installation by other users of the host platform (verification determines whether the application is suitable for distribution prior to making it available, and a successfully verified application is made available in the Distribution Center for acquisition and download by customers (Eteminan [0008], [0011], [0031])).
Eteminan does not explicitly disclose, however in an analogous art, Titonis teaches causing the execution in a first or second sandbox, wherein the sandbox is based on the first or second surface (Titonis teaches causing execution of a submitted application within an instrumented sandbox that emulates a mobile device of a specified type and operating system: the system uses device identity data such as operating-system version and device type to acquire an emulator image and launch a sandbox comprising an instrumented shell wrapped around that emulator (Titonis [0147], [0113]), the sandbox emulating “a Mobile Device of the specified type and operating system” (Titonis [0137]), and therein installing and launching the application and exercising its user interface, with completion signaled upon successful execution in the sandbox (Titonis [0167], [0166]). Titonis thus teaches causing the execution in a sandbox that is based on, and selected to emulate, the respective surface).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to perform the per-surface verification execution of Eteminan within a per-surface instrumented sandbox as taught by Titonis. The motivation to do so would have been to isolate and contain execution of the unverified, developer-submitted application so that it cannot affect the host or other components during verification, and to obtain reliable, fine-grained automated behavioral results across the targeted device types—Titonis expressly teaching that such automated, instrumented sandbox testing enables application stores and developers to perform proper quality-assurance and security verification prior to submitting or releasing an application for distribution, in place of slow and error-prone manual vetting (Titonis [0010], [0025], [0049]). The combination applies a known technique (per-device-type instrumented sandbox execution) to a known system ready for improvement (automatic multi-device pre-distribution verification) to yield the predictable result of isolated, reliable per-surface verification.
With respect to claim 2, Eteminan teaches wherein the set of capability data indicates one or more permissions required by the application, one or more events that occur during execution of the application, one or more events external to the application that cause the application to perform an operation, or one or more application programming interfaces used by the application (the Service Palette 225 of the application model represents the specific device features and the application programming interface for specific device functions used by the application, and the Event Palette 221 represents events occurring during execution such as application activation, shutdown, and key presses (Eteminan [0057]). Examiner notes: Because the limitation recites alternatives joined by “or,” the teaching of any one alternative is sufficient). With respect to claim 3, Eteminan teaches wherein the first set of user interfaces includes a graphical user interface of the application that has been customized to match one or more preferences of the first user (the first user (developer) composes and customizes the application’s graphical user interface using the Multimedia UI Design Toolkit and Multimedia UI Canvas, placing and arranging graphic elements and screens according to the developer’s own design and preferences (Eteminan [0059], [0139])). With respect to claim 5, Eteminan teaches wherein the host platform includes a single permissions model for a plurality of different surfaces such that permissions for the application during installation (1) are dynamically determined based on a type of user account for the first user and (2) define functionality that is installed for the application (the Application Factory System provides a common capability and application-programming-interface model (the Generic Mobile Device Model 103 together with the Service Palette 225) that applies across the plurality of supported Specific Mobile Device Models (Eteminan [0025], [0057]), with the capabilities and features available to a user constrained according to the user’s account mode (for example, novice versus expert) and the selected device, thereby defining the functionality that is made available for the application (Eteminan [0027], [0061])).
With respect to claim 6, Eteminan teaches wherein the first set of user interfaces and functionality is based on a dynamic layout (the application is built native to each device model such that the arrangement and presentation of the user interface is adapted to the particular device, and the user-interface elements available for a given device are constrained accordingly (Eteminan [0010], [0060], [0061])). With respect to claim 7, Eteminan teaches wherein the dynamic layout changes based on the first user's account settings (the user-interface elements and features available to, and arranged for, the first user are constrained according to that user’s account mode and selections, such that the resulting layout reflects the first user’s account settings (Eteminan [0027], [0061])).
With respect to claims 8-10 and 12-14, the claims are directed to a non-transitory computer-readable storage medium that corresponds to the system recited in claims 1-3 and 5-7, respectively (see the rejection of claims 1-3 and 5-7 above; wherein Eteminan also teaches such medium in [0032], [0044]).
With respect to claims 15-17 and 19-20, the claims are directed to a method that corresponds to the system recited in claims 1-3 and 5-7, respectively (see the rejection of claims 1-3 and 5-7 above).
Claims 4, 11 and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Eteminan et al. (US Pub. No. 2011/0161912, hereinafter Eteminan) in view of Titonis et al. (US Pub. No. 2018/0025157, hereinafter Titonis) and further in view of Gilboa et al. (US Pub. No. 2007/0094609, hereinafter Gilboa). With respect to claim 4, Eteminan teaches wherein functionality of the first set of user interfaces and functionality is based on a type of the first surface (Eteminan further teaches that the application model is expressed in a Visual and XML-Based Representation Language (Eteminan [0049]) and that the Distribution Center builds a specific version of the application for a specific device for which an executable version is not already available—i.e., generating the version in response to a request to acquire and install the application for that device (Eteminan [0039]), in that the available features are constrained according to the selected Specific Mobile Device Model (Eteminan [0061])). Eteminan in view of Titonis is silent to disclose, however in an analogous art, Gilboa teaches wherein the functionality data includes a schema for a graphical user interface, wherein the graphical user interface is automatically generated for the first surface based on the schema after receiving a request to install the application (Gilboa teaches a declarative model representation comprising a collection of XML documents that describes a graphical user interface for an application (a schema for the graphical user interface) (Gilboa [0037], [0007]), from which device- and platform-specific graphical user interfaces are automatically generated for different target runtime platforms and devices based on that representation (Gilboa [0008], [0009], [0013], [0034]), the generation accommodating the differing capabilities of each target device (Gilboa [0035])). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate Gilboa’s declarative, schema-based generation of device-specific graphical user interfaces into the system of Eteminan as modified by Titonis. The motivation to do so would have been to automatically produce each surface’s graphical user interface from a single device-independent representation, thereby decoupling the application model from any particular device, runtime platform, or programming language and avoiding the need to redevelop the user interface separately for each surface (Gilboa [0005]–[0006], [0034]), yielding the predictable benefit of single-source, multi-surface user-interface generation.
With respect to claim 11, the claim is directed to a non-transitory computer-readable storage medium that corresponds to the system recited in claim 4, respectively (see the rejection of claim 4 above).
With respect to claim 18, the claim is directed to a method that corresponds to the system recited in claim 4, respectively (see the rejection of claim 4 above).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Murray (US Pat. No. 9,058,194) describes a computer-implemented method including receiving, at a computer system and from a first computing device, a request to access a simulation of an application running a second computing device; identifying, by the computer system, one or more types of input that are available on the second computing device and that are not available on the first computing device; generating one or more controls for each of at least a portion of the identified types of input; instantiating, by the computer system, a virtual machine that simulates the second computing device; and providing information to the first computing device that causes i) an interface for the application as executed by the virtual machine to be presented by the first computing device and ii) the generated controls to be presented by the first computing device in association with the interface. (see abstract).
Popa et al. (US Pub. No. 2021/0109740) an application hub is provided for applications of an analytical services platform. The analytical services platform may receive data from analytical devices and provide services, such as filtering, processing and visualizing the data. The application hub may act as a landing site for users on client devices to launch applications for the analytical services platform. The application hub may provide a web page to the client devices over a network that provides a user interface listing applications for the analytical services platform. Users may launch the applications through the user interface, such as by selecting user interface elements for the applications. The user interface may identify what applications have been installed on a client device and what applications have not been installed. The user interface may also identify when an application needs to be upgraded. Since the application hub is intended to be a single landing site for al applications, a single login may be provided. (see abstract).
Wiswall et al. (US Pub. No. 2019/0369977) A computer device is provided that includes a processor and non-volatile memory including stored instructions executable by the processor, the stored instructions being configured to cause the processor to execute an operating system including an application programming interface for an on-demand installer that is callable by installed application programs during run-time. The on-demand installer is configured to receive a request from an application program to install a target resource package of the application program, query an installer server that is a source of an application program package of the application program to retrieve the target resource package from the installer server, and install the target resource package of the application program. (see abstract).
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ANIBAL RIVERACRUZ whose telephone number is (571)270-1200. The examiner can normally be reached Monday-Friday 9:30 AM-6:00 PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Hyung S Sough can be reached at 5712726799. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/ANIBAL RIVERACRUZ/Primary Examiner, Art Unit 2192