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 .
Detailed Action
An effective filing date of 04/13/2023 is acknowledged.
Claims 1 – 17 are pending.
Drawings
New corrected drawings in compliance with 37 CFR 1.121(d) are required in this application.
The drawings, Figs. 2 – 6, 10, and 11, are objected to because the unlabeled rectangular box(es) shown in the drawings should be provided with descriptive text labels.
Applicant is advised to employ the services of a competent patent draftsperson outside the Office, as the U.S. Patent and Trademark Office no longer prepares new drawings. The corrected drawings are required in reply to the Office action to avoid abandonment of the application. The requirement for corrected drawings will not be held in abeyance.
Claim Objections
Claims 1 – 17 are objected to because of the following informalities:
Claim 1
Line 2; change semicolon to colon.
Line 7; insert --predefined-- before “data structure” and use of pronouns (i.e., “their” and “them”) must be avoided.
Last two lines; change “a digital component” to --the digital component--.
Claim 2
Line 1; change “generating a digital component” to --the generating the digital component--.
Claim 3
Line 1; change “generating a technical architecture” to --the generating the technical architecture --.
Lines 2 & 5; insert --the-- before “code identifiers”.
Claim 4
Line 4; “the identified technology architecture” lacks antecedent basis.
Lines 4 – 5; change “the identified software code” to --the predefined software code--.
Last line; remove “retrieved” in front of “associated software code”,
remove “so as” because it seems redundant.
Claim 5
Line 2; remove comma after “comprising”,
insert --predefined-- before “data structure”
Lines 2 – 3; insert commas after “which” and “executed” respectively for claim clarity.
Last line; remove “so as” because it seems redundant.
Claim 6
Lines 1 & 2; insert --the-- before “analyzing,” “converting,” and “code identifiers”, respectively.
Line 3; insert --the-- before “information entity” and “knowledge entity” respectively.
Line 4; change “a database” to --the database--.
Line 5; remove “identified” in front of “predefined features”.
insert --the-- before “functionality,” “data,” and “code identifiers” respectively.
Last line; remove “so as” because it seems redundant.
Use of pronouns (i.e., “their” and “them”) must be avoided.
Claim 7
Line 1; change “generating a digital component” to --the generating the digital component--.
Last line; insert --the-- before “back-end code”
Claim 8
Line 1; change “generating a digital component” to --the generating the digital component--.
Claim 9
Lines 1 – 2; change “a user interface receiving design inputs into predefined data structures” to --the user interface receiving the design inputs into the predefined data structures--.
Last line; insert --the-- before “design inputs”.
Claim 10
Lines 1 – 2; change “analyzing the data structures and their inputs and converting them into code identifiers” to --the analyzing the data structures and their inputs and the converting them into the code identifiers--
Line 3; change “can be” to --is--.
Line 4; insert --different-- before “technology” and “programming”
Last two lines; change “the that” to --technology architecture, technology stack and/or programming language--
Last line; “the initially generated digital component” lacks antecedent basis.
Use of pronouns (i.e., “their” and “them”) must be avoided.
Claims 12 – 13
These claims are dependent claims of claims 11 and 1 respectively; therefore, they inherit issues of claims 11 and 1 respectively.
Claim 14
Line 2; insert commas after “that” and “processor” respectively for claim clarity.
Last line; change “any of the methods claimed” to --method--.
Claim 15
Last two lines; change “a method according to any of claim 1” to --the method in claim 1--.
Claim 16
Last two lines; change “a method according to any of claim 1” to --the method in claim 1--.
Claim 17
Line 3; change “which when executed cause;” to --, wherein the instructions, when executed by said processor, cause said processor to:--.
Line 4; delete “the display to”.
Line 8; insert --predefined-- before “data structure”.
Lines 10 – 11; change “a digital component” to --the digital component--.
Use of pronouns (i.e., “their” and “them”) must be avoided.
Appropriate correction is required.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claim 15 recites “A computer program comprising computer readable code,” which is interpreted software per se.
Currently presented claim 15 does not include any computer hardware; therefore, the computer program as recited in claim 15 is considered to include software only. Computer software is functional descriptive material; however, function descriptive material is nonstatutory when claimed as descriptive material per se. When functional descriptive material is recorded on some non-transitory computer-readable medium, it becomes structurally and functionally interrelated to the medium and will be statutory in most cases since use of technology permits the function of the descriptive material to be realized. Since claim 15 does not recite computer hardware and the computer program is not recorded on a non-transitory computer-readable medium, the computer program comprises functional descriptive material per se and non-statutory. See MPEP § 2106.01.
Claims 1 – 17 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e., a law of nature, a natural phenomenon, or an abstract idea) without significantly more.
Claim 1
Step 1
The claim is statutory because it is directed to a method.
Step 2A, prong 1
The claim recites limitations
“analyzing the data structures and their inputs and converting them into code identifiers,
receiving at least one digital component configuration input and generating a digital component based on the code identifiers and the digital component configuration input.”
The limitations fall into category of Mental process because they involve human observation and evaluation of data structures and the human write code for the data structures and digital component with an aid of pen and paper.
Step 2A, prong 2
The claim further recites additional step “… receiving design inputs into predefined data structures including an experience entity associated with an interface of the digital component, an information entity associated with a database of the digital component, and a knowledge entity for generating an output of the digital component.”
The additional step merely collects and insert inputs into predefined data structures. The additional step is insignificant extra-solution activity.
The claim also recites additional element “a user interface (UI).” The UI is just a tool for user entering and viewing data. Therefore, the additional steps and additional element are not indicative of an integration into a practical application.
Steps 2B
The claim as a whole is not amounted to significantly more than the judicial exception. Claim 1 is directed to an abstract idea and is not patent eligible.
Analysis of claims 2 – 13
Claim 2
The claim recites limitations “generating a digital component comprises generating a technical architecture based on the code identifiers and the digital component configuration input.”
The steps of “generating” involves human writing code with an aid of paper and pen. Thus, the limitations cover performance of the limitation in the mind, and it is not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea. So, it does not include any additional element that is sufficient to amount to significantly more than the judicial exception.
Claim 3
The claim recites limitations “… inputting the digital component configuration input and code identifiers into a rules engine, the rules engine referring to a database of preconfigured technical architectures with associated software code, and
based on the digital component configuration input and code identifiers, … the rules engine determining an appropriate technical architecture, and retrieving the associated software code.”
The limitations “inputting and retrieving” inserts data and retrieve software code; therefore, they are insignificant extra-solution activities. They are not indicative of integration into a practical application.
The limitation “based on the digital component configuration input and code identifiers, … determining an appropriate technical architecture …” relies on human observation and evaluation of inputs to determine appropriate technical architecture. Thus, the limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind, and it is not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
Claim 4
The claim recites limitations “… converting the code identifiers into software code by referring to a database to identify predefined software code of a programming language corresponding to the code identifiers and the identified technology architecture, and combining the identified software code with the retrieved associated software code so as to form a digital component.”
The limitation “referring to a database to identify” relies on human observation and evaluation of data to identify predefined software code of a programming language corresponding to the code identifiers and the identified technology architecture.
The limitation “combining the identified software code with the retrieved associated software code so as to form a digital component” relies on human writing code to create digital component with an aid of paper and pen.
Thus, the limitations, under its broadest reasonable interpretation, cover performance of the limitation in the mind, and they are not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
Claim 5
The claim recites limitations “… analyzing the data structures and their inputs and generating instructions …; … receiving a further design input into at least one of the predefined data structures so as to revise the digital component.”
The limitation “analyzing and generating instructions” relies on human observation and evaluation of data and human writing code with an aide of paper and pen. Thus, the limitations, under its broadest reasonable interpretation, cover performance of the limitation in the mind, and they are not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
The limitation “receiving a further design input into at least one of the predefined data structures…” collect data. Therefore, it is insignificant extra-solution activities and not indicative of integration into a practical application.
Claim 6
The claim recites limitations “… analyzing the experience entity, information entity and knowledge entity and their associated input to identify predefined features, functionality and/or data, and referring to a database to convert the identified predefined features, functionality and/or data into code identifiers so as to form a digital blueprint of the digital component.”
The limitations “analyzing and referring to convert into code identifiers to form digital blueprint” relies on human observation and evaluation of data and human writing code with an aide of paper and pen. Thus, the limitations, under its broadest reasonable interpretation, cover performance of the limitation in the mind, and they are not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
The limitation “receiving a further design input into at least one of the predefined data structures…” just collects data. Therefore, it is insignificant extra-solution activities and not indicative of integration into a practical application.
Claim 7
The claim recites limitations “converting the information entity into a database table, the knowledge entity into back-end code, and the experience item into front-end code, and then connecting the database table through logic code to the front-end code and/or back-end code.”
The limitations “converting information entity into a database table and connecting database table” are just insignificant extra-solution activities and not indicative of integration into a practical application.
The limitations “converting knowledge entity into back-end code and the experience item into front-end code” relies on human writing programs based on information with an aid of paper and pen. Thus, the limitations, under its broadest reasonable interpretation, cover performance of the limitation in the mind, and they are not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
Claim 8
The claim recites limitations “converting the information entity into code for accessing an external database, the knowledge entity into back-end code, and the experience item into front-end code, and then connecting the code for accessing the external database through logic code to the front-end code and/or the back-end code.”
The limitations “connecting…” are just insignificant extra-solution activities and not indicative of integration into a practical application.
The limitations “converting the information entity into code for accessing an external database, the knowledge entity into back-end code, and the experience item into front-end code” relies on human writing programs based on information with an aid of paper and pen. Thus, the limitations, under its broadest reasonable interpretation, cover performance of the limitation in the mind, and they are not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
Claim 9
The claim recites limitations “the user interface receiving a design file imported from a graphical user interface design program and/or design inputs for creating a graphical user interface of the digital component.”
The limitations merely collect data; thus, they are just insignificant extra-solution activities and not indicative of integration into a practical application.
Claim 10
The claim recites limitations “analyzing the data structures and their inputs and converting them into code identifiers form a digital blueprint, and the digital blueprint can be reused for generating another digital component of a different technology architecture, technology stack and/or programming language than the that of the initially generated digital component.”
The limitations iterate that the steps in claim 1 can be used to generate another digital component. Therefore, they are also rejected for the same reasons as those for claim 1.
Claim 11
The claim recites limitations “the digital component is for controlling a device.”
The limitations define functionality of the digital component. Therefore, they are just insignificant extra-solution activities and not indicative of integration into a practical application.
Claim 12
The claim recites limitations “the experience entity is for defining an interface of the device with a user or another device, the information entity is for defining a database associated with controlling the device, and the knowledge entity is for generating an output of the device.”
The limitations define the experience entity, the information entity, and the knowledge entity. Therefore, they are just insignificant extra-solution activities and not indicative of integration into a practical application.
Claim 13
The claim recites limitations “the experience entity is configured to control a visual and/or audio interface with a user.”
The limitations define the experience entity. Therefore, they are just insignificant extra-solution activities and not indicative of integration into a practical application.
Claim 14
The claim recites limitations “An apparatus for generating a digital component comprising a processor and a memory, said memory containing instructions that when executed by the processor cause the apparatus to perform any of the methods claimed in claim 1.”
The claim recites elements “memory and processor.” The elements are recited at high level of generality and used as tools to perform the limitations. Therefore, they are not indicative of integration into a practical application.
Claim 15
The claim recites limitations “A computer program for generating a digital component comprising computer readable code which, when run on a computer, causes the computer to carry out a method according to any of claim 1.”
The claim recites elements “computer program and a computer.” The elements are recited at high level of generality and used as tools to perform the limitations. Therefore, they are not indicative of integration into a practical application.
Claim 16
The claim recites limitations “A non-transitory computer-readable medium comprising instructions that, when executed, cause a processor of a computing apparatus to perform a method according to any of claim 1.”
The claim recites elements “non-transitory computer-readable medium and a processor.” The elements are recited at high level of generality and used as tools to perform the limitations. Therefore, they are not indicative of integration into a practical application.
Claim 17
The claim is statutory because it is directed to machines.
The claim recites limitations in the same manner as claim 1; therefore, it is also rejected for the same reasons.
Furthermore, the claim recites additional elements “memory, processor and display.” The additional elements are recited at high level of generality and used as tools to perform the limitations. Therefore, they are not indicative of integration into a practical application.
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 – 17 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by McLaughlan et al. (Pub. No US 2017/0083292 A1; hereinafter McLaughlan.)
Claim 1
McLaughlan teaches a computer-implemented method for generating a digital component comprising a set of executable instructions (McLaughlan; [0064] FIG. 9 illustrates an example of an operational procedure for developing a software application in a virtualized computing environment …), the method comprising:
a user interface receiving design inputs into predefined data structures (McLaughlan; Figs. 1 & 2; [0032 – 0033] … Visual development environment 180 may be configured to translate data representative of a visual script 210. The visual script 210 may be edited using various software and/or hardware components that render a graphical depiction (data structure) of the functionality of the content on a user computing device and allow the user to interact with and change the content …;
Fig. 9; [0064 – 0065] … Operation 902 illustrates rendering a graphical user interface depicting an interactive environment for developing a software function … In some embodiments, the graphical user interface is operable to at least graphically depict an input, output, and operation and/or depictions (data structures) of a representation of the input, output, and operation (data structures) …
… Operation 904 illustrates receiving, via the graphical user interface, data indicative of the input, output, and operation …) including an experience entity associated with an interface of the digital component (McLaughlan; Fig. 9; [0064] … Operation 902 illustrates rendering a graphical user interface depicting an interactive environment for developing a software function … In some embodiments, the graphical user interface is operable to at least graphically depict an input (experience), output, and operation (knowledge entity) and/or depictions of a representation of the input (experience entity), output, and operation (knowledge) …; [0034] The visual script 210 will typically include multiple block representations and input/output (experience) representations to allow for graphical manipulation of relationships and data flows …; And, Fig. 8; [0063] … Project component 810 may represent a start of the function based on receiving of an input key that outputs to project component 830 when a pressed key is released …), an information entity associated with a database of the digital component (McLaughlan; [0028] A database service may be provided that allows structure to be applied to the application data …; [0038] … Translation component 215 may receive data indicative of the visual script 210 and generate code … Translation component 215 may further generate a function that includes a call to a database service at the provider network …; ), and a knowledge entity for generating an output of the digital component (McLaughlan; Fig. 9; [0064] … Operation 902 illustrates rendering a graphical user interface depicting an interactive environment for developing a software function … In some embodiments, the graphical user interface is operable to at least graphically depict an input (experience), output, and operation (knowledge entity) and/or depictions of a representation of the input (experience entity), output, and operation (knowledge) …; Fig. 2; [0033] The visual script 210 may include information representing one or more functions that are graphically depicted on a user interface … For example, the graphical depictions may include a block representation of a function or operation that may be performed on an input data item such as a data file. Graphical depictions may also include a representation of inputs to the function or operation, as well as outputs from the function or operation …),
analyzing the data structures and their inputs and converting them into code identifiers (McLaughlan; Fig. 2; [0033 – 0034] The visual script 210 may include information representing one or more functions that are graphically depicted on a user interface. In one embodiment, the visual script 210 may include data representing a number of functions (code identifier) or methods (code identifier) that further include at least one input and at least one output … Graphical depictions may also include a representation of inputs to the function or operation, as well as outputs from the function or operation …
The visual script 210 will typically include multiple block representations and input/output representations to allow for graphical manipulation of relationships and data flows …
[0065] … Operation 906 illustrates based at least in part on the data, rendering graphical depictions of the input, output, and operation.),
receiving at least one digital component configuration input and generating a digital component based on the code identifiers and the digital component configuration input (McLaughlan; Fig. 2; [0034 – 0036] The visual script 210 will typically include multiple block representations and input/output representations to allow for graphical manipulation of relationships and data flows …
The visual script 210 may be translated using a translation component 215. In one embodiment, the translation component 215 may be configured to access a database of code elements and map the representation of visual script 210 to one or more of the code elements. The mapping may be performed based on which function (code identifier) or operation (code identifier) is depicted in the visual script 210. For example, a pattern classification system may be used to identify relevant code elements based on the visual script 210. The pattern classification system may encode relationships that map which code elements are relevant to a selected function or operation. The pattern classification system may be programmed to identify which functions or operations map to a particular code element …
The translation component 215 may also be configured to receive the representation of the visual script 210, parse the representation, and convert the parsed representation to a set of instructions …;
Fig. 9; [0066] … Operation 908 illustrates in response to receiving the data, associating the data with related instructions that are operable to call computing services executing in the virtualized computing environment. In some examples, operation 908 may include translating the data to related instructions that are operable to execute on computing services executing in the virtualized computing environment. The related instructions may comprise programming logic of a software development project. The instructions may comprise code or script that is operable to interact with services of the virtualized computing environment …)
Claim 2
McLaughlan also teaches generating a technical architecture based on the code identifiers and the digital component configuration input (McLaughlan; Figs. 6 – 8 == technical architecture. See picture below.)
PNG
media_image1.png
358
808
media_image1.png
Greyscale
Claim 3
McLaughlan also teaches
inputting the digital component configuration input and code identifiers into a rules engine, the rules engine referring to a database of preconfigured technical architectures with associated software code (McLaughlan; Fig. 2; [0035] The visual script 210 may be translated using a translation component 215. In one embodiment, the translation component 215 may be configured to access a database of code elements and map the representation of visual script 210 to one or more of the code elements. The mapping may be performed based on which function or operation is depicted in the visual script 210. For example, a pattern classification system (rule engine) may be used to identify relevant code elements based on the visual script 210. The pattern classification system may encode relationships that map which code elements are relevant to a selected function or operation. The pattern classification system may be programmed to identify which functions or operations map to a particular code element …
[0053] In one embodiment, the action objects may be digital objects that contain programming logic and/or data that define a behavior and can invoke other action objects or communicate to the application cluster. The programming logic (rule) can be further defined as any form of scripting or programming language constructed through the use of software libraries provided with the development tools), and
based on the digital component configuration input and code identifiers, the method comprising the rules engine determining an appropriate technical architecture, and retrieving the associated software code (McLaughlan; Fig. 2; [0035] The visual script 210 may be translated using a translation component 215. In one embodiment, the translation component 215 may be configured to access a database of code elements and map the representation of visual script 210 to one or more of the code elements. The mapping may be performed based on which function or operation is depicted in the visual script 210. For example, a pattern classification system (rule engine) may be used to identify relevant code elements based on the visual script 210. The pattern classification system may encode relationships that map which code elements are relevant to a selected function or operation. The pattern classification system may be programmed to identify which functions or operations map to a particular code element …)
Claim 4
McLaughlan also teaches converting the code identifiers into software code by referring to a database to identify predefined software code of a programming language corresponding to the code identifiers and the identified technology architecture (McLaughlan; Fig. 2; [0035 – 0036] The visual script 210 may be translated using a translation component 215. In one embodiment, the translation component 215 may be configured to access a database of code elements and map the representation of visual script 210 to one or more of the code elements. The mapping may be performed based on which function or operation is depicted in the visual script 210. For example, a pattern classification system (rule engine) may be used to identify relevant code elements based on the visual script 210. The pattern classification system may encode relationships that map which code elements are relevant to a selected function or operation. The pattern classification system may be programmed to identify which functions or operations map to a particular code element …
The translation component 215 may also be configured to receive the representation of the visual script 210, parse the representation, and convert the parsed representation to a set of instructions …
[0053] In one embodiment, the action objects may be digital objects that contain programming logic and/or data that define a behavior and can invoke other action objects or communicate to the application cluster. The programming logic can be further defined as any form of scripting or programming language constructed through the use of software libraries provided with the development tools …), and combining the identified software code with the retrieved associated software code so as to form a digital component (McLaughlan; Fig. 2; [0036] The translation component 215 may also be configured to receive the representation of the visual script 210, parse the representation, and convert the parsed representation to a set of instructions …
Fig. 9; [0064] FIG. 9 illustrates an example of an operational procedure for developing a software application in a virtualized computing environment…; [0073] … Operation 910 illustrates generating the related instructions to effect functionality represented by the graphically depicted input, output, and operation and call the computing services.)
Claim 5
McLaughlan also teaches analyzing the data structures and their inputs and generating instructions which when executed provide an interactive representation of the digital component (McLaughlan; Fig. 9; [0073] … Operation 910 illustrates generating the related instructions to effect functionality represented by the graphically depicted input, output, and operation and call the computing services. The generated instructions may be executed, for example, by the end user systems. At least some of the described operations including the rendering of the graphical user interface (interactive representation) …), the method further comprising receiving a further design input into at least one of the predefined data structures so as to revise the digital component. (McLaughlan; Fig. 9; [0065 – 0066] … Operation 904 illustrates receiving, via the graphical user interface, data indicative of the input, output, and operation. If the current display is to be updated, based on a change (revise) in input by the developer, for example, then operation 904 may be followed by operation 906 …
If the developer inputs additional changes (revise) and an update to current instructions are needed, then operation 906 may be followed by operation 908 …)
Claim 6
McLaughlan also teaches analyzing the experience entity, information entity and knowledge entity and their associated input to identify predefined features, functionality and/or data, and referring to a database to convert the identified predefined features, functionality and/or data into code identifiers so as to form a digital blueprint of the digital component (McLaughlan; Fig. 2; [0035] The visual script 210 may be translated using a translation component 215. In one embodiment, the translation component 215 may be configured to access a database of code elements and map the representation of visual script 210 to one or more of the code elements. The mapping may be performed based on which function (feature) or operation (feature) is depicted in the visual script 210. For example, a pattern classification system (rule engine) may be used to identify relevant code elements based on the visual script 210. The pattern classification system may encode relationships that map which code elements are relevant to a selected function or operation. The pattern classification system may be programmed to identify which functions or operations map to a particular code element …
Fig. 4; [0048] … A template component 408 may also be provided for providing templates and other reusable information for use by developers. Templates (blueprint) may be used as starting points by developers to create and manage content and update the content in an orderly and predictable fashion. By using templates to create identical copies of the same project or as a foundation for starting a new project, developers may develop applications predictably and repeatedly without spending considerable effort creating and configuring the underlying structures associated with their projects …)
Claim 7
McLaughlan also teaches converting the information entity into a database table (McLaughlan; Fig. 7; [0062] Project component 720 may represent a start of the function that sets a parameter of “today” as input to project component 710. Project component 710 outputs the set parameter to project component 730 that further sets objects “string1” and “string 2.” Project component 740 receives the outputs from project component 730 to generate an access to the database services of the provider network with an identified table name. Project component 740 also sets a key value for access to the value for the message that will be returned by project component 740 to project component 750 including indication of a successful database access and the text string for the “message of the day” object for display. [0038] … Translation component 215 may further generate a function that includes a call to a database service at the provider network, access to a database including a database identifier and value information, and returning of a value…; also see Fig. 8 & [0063]), the knowledge entity into back-end code (McLaughlan; [0018] In some embodiments, the visual development environment may be configured to generate code that integrates backend services of the provider network with visual tools and templates that can be extended to meet the needs of developers …; [0060] The graphical components may be associated with code that implements actionable inputs that can generate actions implemented on various backend services of the provider network, such as file storage, content distribution, database access, cloud computing functions, workflow services, server fleet management and scaling, and scalable server side events …; also see Figs. 7 & 8, [0061 – 0063]), and the experience item into front-end code (McLaughlan; Fig. 9; [0073] … Operation 910 illustrates generating the related instructions to effect functionality represented by the graphically depicted input, output, and operation and call the computing services. The generated instructions may be executed, for example, by the end user systems. At least some of the described operations including the rendering of the graphical user interface (front end) …), and then connecting the database table through logic code to the front-end code and/or back-end code (as discussed above, database is connected via front-end and back-end codes.)
Claim 8
McLaughlan also teaches converting the information entity into code for accessing an external database (McLaughlan; Fig. 7; [0062] Project component 720 may represent a start of the function that sets a parameter of “today” as input to project component 710. Project component 710 outputs the set parameter to project component 730 that further sets objects “string1” and “string 2.” Project component 740 receives the outputs from project component 730 to generate an access to the database services of the provider network with an identified table name. Project component 740 also sets a key value for access to the value for the message that will be returned by project component 740 to project component 750 including indication of a successful database access and the text string for the “message of the day” object for display. [0038] … Translation component 215 may further generate a function that includes a call to a database service at the provider network, access to a database including a database identifier and value information, and returning of a value…; also see Fig. 8 & [0063]), the knowledge entity into back-end code (McLaughlan; [0018] In some embodiments, the visual development environment may be configured to generate code that integrates backend services of the provider network with visual tools and templates that can be extended to meet the needs of developers …; [0060] The graphical components may be associated with code that implements actionable inputs that can generate actions implemented on various backend services of the provider network, such as file storage, content distribution, database access, cloud computing functions, workflow services, server fleet management and scaling, and scalable server side events …; also see Figs. 7 & 8, [0061 & 0063]), and the experience item into front-end code, and then connecting the code for accessing the external database through logic code to the front-end code and/or the back-end code (as discussed above, database is connected via front-end and back-end codes.)
Claim 9
McLaughlan also teaches the user interface receiving a design file imported from a graphical user interface design program (McLaughlan; [0046] FIG. 4 is a functional block diagram depicting visual development environment 180 in greater detail. Visual development environment 180 may include a user interface component 403 …
[0048 – 0050]; … A template component 408 may also be provided for providing templates (design file) and other reusable information for use by developers. Templates may be used as starting points by developers to create and manage content and update the content in an orderly and predictable fashion …
In one embodiment, the user interface component 404 may allow developers to select resources, inputs, outputs, values, interconnections, and other parameters. Furthermore, the developer may be provided a user interface for creating a new project. The developer may select or create a template that defines an initial set of variables and actions …) and/or design inputs for creating a graphical user interface of the digital component (McLaughlan; [0024] In some embodiments, content may be created by developers using the visual development environment … The content may include a distributed application, such as an application relying at least partially on network-based services (e.g., auto-scaling), virtualized online content (GUI), data and record management, collaborative editing tools, or a multiplayer video game (GUI)…)
Claim 10
McLaughlan also teaches analyzing the data structures and their inputs and converting them into code identifiers form a digital blueprint, and the digital blueprint can be reused for generating another digital component of a different technology architecture, technology stack and/or programming language than the that of the initially generated digital component (McLaughlan; Fig. 4; [0048] … A template component 408 may also be provided for providing templates and other reusable information for use by developers. Templates (blueprint) may be used as starting points by developers to create and manage content and update the content in an orderly and predictable fashion. By using templates to create identical copies of the same project or as a foundation for starting a new project, developers may develop applications predictably and repeatedly without spending considerable effort creating and configuring the underlying structures associated with their projects …)
Claim 11
McLaughlan also teaches the digital component is for controlling a device (McLaughlan; [0063] FIG. 8 illustrates another example of a screen display after particular content (e.g., an application) has been selected. When content has been loaded, project components 806, 810, 820, 830, 840, 860, 860, and 870 are rendered… Additionally, as shown by project component 860, project components may be connected to and interact with multiple input operations or output operations (knowledge entity) … Project component 810 also sends the released key status to the “DisplayMessage” project component 820 to display (experience entity) a “Choose Entry” display function … The depicted project components may be associated with code that implements the described functionality either on code that is run locally on the end-user device (controlled device), or code that accesses or invokes actions implemented on various backend services of the provider network, such as file storage, content distribution, database access (information entity) …)
Claim 12
McLaughlan also teaches the experience entity is for defining an interface of the device with a user or another device, the information entity is for defining a database associated with controlling the device, and the knowledge entity is for generating an output of the device (McLaughlan; [0063] FIG. 8 illustrates another example of a screen display after particular content (e.g., an application) has been selected. When content has been loaded, project components 806, 810, 820, 830, 840, 860, 860, and 870 are rendered… Additionally, as shown by project component 860, project components may be connected to and interact with multiple input operations or output operations (knowledge entity) … Project component 810 also sends the released key status to the “DisplayMessage” project component 820 to display (experience entity) a “Choose Entry” display function … The depicted project components may be associated with code that implements the described functionality either on code that is run locally on the end-user device (controlled device), or code that accesses or invokes actions implemented on various backend services of the provider network, such as file storage, content distribution, database access (information entity) …)
Claim 13
McLaughlan also teaches the experience entity is configured to control a visual and/or audio interface with a user (McLaughlan; [0022] It should be appreciated that although the embodiments disclosed in this disclosure discuss the visual development environment in the context of video game development …), video game controls visual and audio interface with the user.
Claim 14
McLaughlan also teaches an apparatus for generating a digital component comprising a processor and a memory, said memory containing instructions that when executed by the processor cause the apparatus to perform any of the methods claimed in claim 1 (McLaughlan; Fig. 3; [0040] Using the visual development environment 180, content such as an application may be edited using a graphical depiction of the functionality of the content on the developer computing node 308 or 310 …; Fig. 10; [0082] Computing node 1010a is depicted as residing on physical hardware comprising one or more processors 1016, one or more memories 1018 …)
Claim 15
McLaughlan also teaches a computer program for generating a digital component comprising computer readable code which, when run on a computer, causes the computer to carry out a method according to any of claim 1 (McLaughlan; Fig. 11; [0091] In some embodiments, system memory 1120 may be one embodiment of a computer-accessible medium configured to store program instructions and data as described above for implementing embodiments of the corresponding methods and apparatus …)
Claim 16
McLaughlan also teaches a non-transitory computer-readable medium comprising instructions that, when executed, cause a processor of a computing apparatus to perform a method according to any of claim 1 (McLaughlan; Fig. 11; [0091] In some embodiments, system memory 1120 may be one embodiment of a computer-accessible medium configured to store program instructions and data as described above for implementing embodiments of the corresponding methods and apparatus …)
Claim 17
This is a device version of the method version in claim 1; therefore, it is rejected for the same reasons. Furthermore, McLaughlan also teaches a device for generating a digital component, the device comprising a memory, processor and a display (McLaughlan; Fig. 3; [0040] Using the visual development environment 180, content such as an application may be edited using a graphical depiction of the functionality of the content on the developer computing node 308 or 310 …; Fig. 10; [0082] Computing node 1010a is depicted as residing on physical hardware comprising one or more processors 1016, one or more memories 1018 …)
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Maclay et al. (Patent No. US 9,952,837 B1): A system and method support reusing model components or component artifacts in a first modeling environment where the model components or artifacts were created in a second environment.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CUONG V LUU whose telephone number is (571)270-1733. The examiner can normally be reached 6:30 AM - 3: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 (571) 272-6799. 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.
/CUONG V LUU/Examiner, Art Unit 2192
/S. Sough/SPE, Art Unit 2192