DETAILED ACTION
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 .
Information Disclosure Statement
The information disclosure statement (IDS) submitted on 4/9/2025 was before the first office action. The submission is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner.
Claim Rejection Notes
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 (i.e., changing from AIA to pre-AIA ) 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.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1-20, are rejected under 35 U.S.C. 102a1 as being anticipated by Koren et al. (US 20220237255 A1, published: 7/28/2022).
Claim 1: Koren teaches a non-transitory, computer-readable storage medium comprising instructions recorded thereon, wherein the instructions, when executed by at least one data processor of a system, cause the system to:
provide multiple templates associated with a software system and multiple primitives associated with the software system to an artificial intelligence, wherein a template among the multiple templates includes a subset of the multiple primitives, wherein the multiple primitives include one or more properties, one or more views, one or more tutorials, and one or more blocks, wherein a property among the one or more properties includes a name and a value, wherein a view among the one or more views includes a view of a database according to a criterion, wherein a tutorial among the one or more tutorials includes an explanation of a use associated with the software system, wherein a block among the one or more blocks is configured to include content (WBS component repository 516 may include the website building system 5 component type definitions, i.e. may describe the parameters and properties of the various element types (such as text component, media components, containers and complex components such as galleries, sliders and third party applications). These component type definitions are in turn used by WBS editor 30 to provide interactive direct editing of sites (e.g. allowing visual WYSIWYG editing of pages) as described in more detail herein below. These component types are also used as the basic building blocks of the various layout element types described above (layout elements, layout groups and preset page sections) [Koren, 0087]. Instead of designing full page (or site) templates, the advanced designer may design separate layout element types (or preset page sections) and template sections which are repeated. Thus, the resulting layout element instances may be mixed and matched like Lego™ bricks [Koren, 0126]. Layout type creator/editor 413 may also create such layout element types by importing a schema from an external source such as a database (e.g. a relational database data dictionary), an industry standard definition or a web service interface definition. The schema may be complemented (manually or automatically) with layout and other information to form a complete layout element [Koren, 0169]. Data coordinator 420 may run the process to acquire the content required by CE generator 425 in order to create content elements for the generated sites [Koren, 0222]. For the system-guided use method of filling a questionnaire, site designer 62 may initially answer a number of guiding questions such as selection of a business type (vertical application) and sub-type. Such guiding questions may include asking for business key details used to retrieve business information (as described herein above) [Koren, 0234]. These site structures may be expressed as complete website templates, selection of preset page sections (as described above), separate site elements etc. Family/industry determiner 4202 may then unite material from both directions (family and industry) to generate possible alternatives for the complete site. [Koren, 0255]. Machine learner/AI 424 may use artificial intelligence/machine learning) to provide an evolving and continuously improving interaction with site designer 62 based on the above mentioned crowd-sourced information. Such collected information reflects the actual use of system 100, the actual priorities set by site designer 62, and the actual use of preferences (as related to content, presentation, aesthetics or other aspects of the system) by the user community [Koren, 0289]);
provide an instruction to the artificial intelligence to generate an output template, wherein the instruction includes an attribute associated with a user of the software system (in this scenario, the associated content element includes a per-field business role definition, e.g. a text field is known to be a “business-address” or “team-member-name” and not merely a text field. A sample rule would be “team-member-name should be next to team-member-description with no intervening objects” [Koren, 0187]; [Koren, 0262-0263, 0292]); and
obtain from the artificial intelligence the output template including at least two primitives among the multiple primitives, wherein the at least two primitives are selected based on the attribute associated with the user of the software system (in accordance with a preferred embodiment of the present invention, the data gatherer/analyzers include an internal data gatherer, an external data gatherer, an AI/ML (artificial intelligence/machine learning) engine, an answer analyzer, an industry analyzer, a natural language engine, a crowd source data analyzer, an external website importer/analyzer, a user data analyzer, a BI analyzer and/or an EH (editing history) analyzer [Koren, 0027]; [Koren, 0201, 0213, 0224, 0325]).
Claim 2: Koren teaches the non-transitory, computer-readable storage medium of claim 1. Koren further teaches comprising instructions to: provide the instruction to the artificial intelligence to generate the output template, wherein the instruction includes the attribute associated with the user of the software system, wherein the attribute includes a natural language description associated with the output template and a size of a team associated with the output template; based on the natural language description, determine a primitive among the multiple primitives to include in the output template; and based on the size of the team, determine a number of the primitive to include in the output template ([Koren, [0208, 0247, 0256, 0257, 0287, 0294, 0405]).
Claims 9 and 15, having similar deficiencies to claim 2, are likewise rejected.
Claim 3: Koren teaches the non-transitory, computer-readable storage medium of claim 1. Koren further teaches comprising instructions to: provide the instruction to the artificial intelligence to generate the output template, wherein the instruction includes the attribute associated with the user of the software system, wherein the attribute indicates a size of a team associated with the output template; obtain a first predetermined threshold and second predetermined threshold; determine whether the size of the team is below the first predetermined threshold; upon determining the size of the team is equal to or below the first predetermined threshold, generate the output template including a single database; determine whether the size of the team is between the first predetermined threshold and the second predetermined threshold; upon determining that the size of the team is between the first predetermined threshold and the second predetermined threshold, generate the output template including a first multiplicity of databases; determine whether the size of the team is above the second predetermined threshold; and upon determining that the size of the team is above the second predetermined threshold, generate the output template including a second multiplicity of databases, wherein a first database among the second multiplicity of databases depends on a second database among the second multiplicity of databases ([Koren, 0083, 0090, 0110, 0111, 0117, 0169, 0199, 0202, 0224, 0280, 0405]).
Claims 10 and 16, having similar deficiencies to claim 3, are likewise rejected.
Claim 4: Koren teaches the non-transitory, computer-readable storage medium of claim 1. Koren further teaches comprising instructions to: obtain the output template and an instance of an existing template, wherein the output template includes an update to the existing template; determine whether the update changes a primitive associated with the instance of the existing template, upon determining that the update does not change the primitive associated with the instance of the existing template, push the update to the existing template; and upon determining that the update changes the primitive associated with the instance of the existing template: provide an explanation associated with the update, and query whether to proceed with the update ([Koren, 0058, 0062, 0069, 0108, 0163]).
Claims 11 and 17, having similar deficiencies to claim 4, are likewise rejected.
Claim 5: Koren teaches the non-transitory, computer-readable storage medium of claim 1. Koren further teaches comprising instructions to: obtain the output template and an instance of an existing template, wherein the output template includes an update to the existing template; determine whether the update changes a primitive associated with the instance of the existing template; upon determining that the update changes the primitive associated with the instance of the existing template, determine whether the primitive has been modified in the instance of the existing template; upon determining that the primitive has not been modified in the instance of the existing template, push the update to the existing template; and upon determining that the primitive has been modified in the instance of the existing template: provide an explanation associated with the update, and query whether to proceed with the update ([Koren, 0122, 0163, 0306, 0332, 0334, 0434]).
Claims 12 and 18, having similar deficiencies to claim 5, are likewise rejected.
Claim 6: Koren teaches the non-transitory, computer-readable storage medium of claim 1. Koren further teaches comprising instructions to: provide the template among the multiple templates, wherein the template is a hierarchical template including a root template having a child template, wherein the child template includes at least two of the multiple primitives ([Koren, 0186, 0259, 0304]).
Claims 13 and 19, having similar deficiencies to claim 6, are likewise rejected.
Claim 7: Koren teaches the non-transitory, computer-readable storage medium of claim 1. Koren further teaches comprising instructions to: provide the template among the multiple templates, wherein the template is a hierarchical template including a root template having multiple child templates, wherein the multiple child templates include multiple databases, wherein a database among the multiple databases includes multiple properties and the view, wherein a first property in a first database among the multiple databases depends on a second property in a second database among the multiple databases, and wherein updating the second property in the second database causes a change to the first property in the first database ([Koren, 0224, 0360, 0361, 0417]).
Claims 13 and 20, having similar deficiencies to claim 7, are likewise rejected.
Claim 8: Koren teaches a method comprising: providing multiple templates associated with a software system and multiple primitives associated with the software system to an artificial intelligence, wherein a template among the multiple templates includes a subset of the multiple primitives (Layout type creator/editor 413 may also create such layout element types by extracting a definition from an existing site page-set, single page or a subset thereof. Such a site could originate with website building system 5 itself or be external to it. An example would be selecting a given website building system container (with its content), or a given set of website building system components, and saving their composition and layout as a layout element [Koren, 0168]; [Koren, 0087, 0126, 0169, 0222, 0234, 0255, 0289]); providing an instruction to the artificial intelligence to generate an output template, wherein the instruction includes an attribute associated with a user of the software system (questionnaire runner 4201 may run the questionnaires created by questionnaire type creator/editor 411 as described herein above and gather the data accordingly, family/industry determiner 4202 may determine the type of industry and family the intended website is for and collected data searcher 4203 may instruct external data gatherer 43 and internal data gatherer 44 to gather relevant information accordingly. Text generator 4204 may generate appropriate text content (for use in the generated site) which may be adapted to a specific family and industry as determined by family/industry determiner 4202 [Koren, 0223]; [Koren, 0187, 0262, 0263, 0289, 0292]); and obtaining from the artificial intelligence the output template including at least two primitives among the multiple primitives, wherein the at least two primitives are selected based on the attribute associated with the user of the software system ([Koren, 0027, 0201, 0213, 0224, 0325]).
Claim 14, having similar deficiencies as claim 8, is likewise rejected.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to SETH A SILVERMAN whose telephone number is (571)272-9783. The examiner can normally be reached Mon-Thur, 8AM-4PM MST.
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, Adam Queler can be reached at (571)272-4140. 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.
/Seth A Silverman/Primary Examiner, Art Unit 2172