Prosecution Insights
Last updated: July 17, 2026
Application No. 18/122,345

GENERATING CONTEXTUAL ADVISORY FOR XaaS BY CAPTURING USER-INCLINATION AND NAVIGATING USER THROUGH COMPLEX INTERDEPENDENT DECISIONS

Final Rejection §101§103
Filed
Mar 16, 2023
Priority
Mar 21, 2022 — IN 202221015542
Examiner
GALVIN-SIEBENALER, PAUL MICHAEL
Art Unit
2147
Tech Center
2100 — Computer Architecture & Software
Assignee
Tata Group
OA Round
2 (Final)
29%
Grant Probability
At Risk
3-4
OA Rounds
5m
Est. Remaining
29%
With Interview

Examiner Intelligence

Grants only 29% of cases
29%
Career Allowance Rate
2 granted / 7 resolved
-26.4% vs TC avg
Minimal +0% lift
Without
With
+0.0%
Interview Lift
resolved cases with interview
Typical timeline
3y 9m
Avg Prosecution
26 currently pending
Career history
46
Total Applications
across all art units

Statute-Specific Performance

§101
2.2%
-37.8% vs TC avg
§103
96.4%
+56.4% vs TC avg
§102
1.5%
-38.5% vs TC avg
Black line = Tech Center average estimate • Based on career data from 7 resolved cases

Office Action

§101 §103
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 . This action is in response to the amendment filed on Apr. 21st, 2026. The amendments are linked to the original application filed on Mar. 16th, 2023. Priority Acknowledgment is made of applicant’s claim for foreign priority under 35 U.S.C. 119 (a)-(d). The certified copy has been filed in parent Application No. IN202221015542, filed on Mar. 21st, 2022. Response to Amendment The Examiner thanks the applicant for the remarks, edits and arguments. Regarding Claim Rejections – 35 U.S.C. 101 The applicant argues that the examiner must examine the claims using the PTO guidelines under “in Chapter 706.03(a) ("Rejections under 35 U.S.C. 101 ") of the Manual of Patent Examining Procedure” and to evaluate the claims as a whole and not oversimplify the claim language. Further, the applicant request that the Examiner to follow this standard. The Examiner would like to note that the MPEP section for “chapter 706.03(a)” is listed as “[Reserved]” in the current version and redirects the user to other sections. Further, the applicant has not properly labeled citations in, many instances, of their remarks so the Examiner is unclear as to what “Chapter 706.03(a)” pertains to or what version of the MPEP. Regardless, the Examiner evaluates each application for subject matter eligibility using the Alice/Mayo test according to the MPEP 2106. The Examiner has completed USPTO approved, up to date, training in regards to the 35 U.S.C. 101. The Examiner would like to note that the claims have been evaluated using the MPEP and that claims are evaluated as a whole and in light of the specification and the Broadest Reasonable Interpretation of the claims as per MPEP 2106(II), “It is essential that the broadest reasonable interpretation (BRI) of the claim be established prior to examining a claim for eligibility. The BRI sets the boundaries of the coverage sought by the claim and will influence whether the claim seeks to cover subject matter that is beyond the four statutory categories or encompasses subject matter that falls within the exceptions.” Next, the applicant has argued that the claims recite an improvement to technology and therefore overcomes the 101 rejection. The examiner would like to note that the claim do display the implemented possible improvements to technology. The claims explicitly disclose the proposed possible improvements to technology. The examiner would like to note that this does not mean the claimed invention is novel, however the claims recite sufficient details and possible improvements to technology, explicitly in some limitations, and therefore the examiner believes that the claims recites patent eligible subject matter under 35 U.S.C. 101. Therefore, the examiner has withdrawn the current rejection under 35 USC 101. Further arguments and remarks stated by the applicant against the 101 rejection have been evaluated, however since the claim language already recites the improvements from specification, no further responses is required from the examiner regarding 101. Regarding Claim Rejections – 35 U.S.C. 103 The applicant begins by citing claim 1 then the applicant then gives a summary of the citations used by the examiner and the reasoning for the mapping. The applicant then recites the amended claim and another summary of the examiner’s citation and mapping. Finally, the applicant recite the improvements of the implemented Knowledge Graph. The examiner has noted that the applicant has not provide any factual arguments besides reciting the prior claims, amended claims sections of the specification, and possible improvements. The examiner would also like to note that the applicant has used quotations from the specification and has failed to cited their location in the specification. This makes it more difficult for the Examiner to understand the applicant’s arguments. However, the examiner would like to note that cited art is able to generate storage of data in a data structure for the user in both a global repository, such as a cloud-based device or locally. Using the BRI of this claim the system disclosed in Polleri is able to generate a data structure for a global repository containing given information and local storage for the user. The examiner believes that this interpretation is valid and matches what the applicant has claimed. Further, the examiner has noted that the Polleri is unable to teach the amended sections of the limitation. However, after a complete and thorough search, which is required after each amendment, the Examiner has discovered new art which is able to teach or disclose, in combination of Polleri, the claimed subject matter. Next, the applicant cites another limitation from claim 1. The applicant then gives a summary of the Examiners citation and explanation to the mapping. The applicant then recites the amendments to the claims and provides another summary of Debnath and the Examiners citation and explanation to the mapping. The applicant then recites the specification, again fails to properly provide a citation to the recited section, and claims that “Chinnapalli” obviously fails to teach the claimed subject matter. The examiner would like to note that the “Chinnapalli” is not used as art to reject the current claims. Further, the Examiner would like to note that the applicant has again failed to provide a valid argument to the art rejection. Because of this, the examiner believes that the art proposed in the previous office action is sufficient to teach portions of the amended claims. Next, the applicant discloses a summary of Polleri and states that the Polleri fails to teach what appears to be amended claims 2 and 4. Again, the applicant has failed to properly cite the claims in the remarks besides the title of the section. Finally, the applicant states, “in view of the above-presented arguments” and “Due to the reasons presented above” but failed to provide any arguments against the Examiner mapping besides reciting the prior claims, amended claims, and specification. The Examiner does not find this argument persuasive. Next, the applicant again recites amended claim 1 and states “Polleri, and Debnath does not teach or suggest all the features or limitations of amended independent claims 1, 6 and 11.” The Applicant again has failed to provide the examiner with an argument as to why they believe that Polleri and Debnath fail to teach claims 1, 6, and 11 besides reciting the prior claims, amended claims and specification. The Examiner does not find this argument persuasive. Next, the applicant believes that combination of Polleri and Debnath fails to disclose each and every element of the amended claims. As stated above, the examiner has also noted that the current arts Polleri and Debnath do fail to teach each and every element of the amended claims. However, after each submitted amendment, the examiner must perform a complete and thorough search of the arts. While doing this, the examiner has discovered art that is able to, in combination of Polleri and Debnath, teach or disclose the claimed subject matter. Finally, the applicant states, “Applicant believes that the person of ordinary skill in the art would lack motivation to arrive at amended independent claims 1, 6 and 11.” And in the next paragraph states, “In view of the foregoing, Applicant believes that the person of ordinary skill in the art would lack motivation to arrive at claims 1, 6 and 11.”. The Examiner would like to note that these two paragraphs recite similar remarks and will be answered together. As stated above, the examiner has not found any of the arguments made by the applicant to be persuasive because they lack supporting information besides merely summarizing the Examiners art and reciting the prior claims, amended claims, and the specification. After each amendment, the must review the remarks from the applicant, the amended claims, specification, the prior proposed arts, and the previous office action. After reviewing this information, as stated above, the examiner believes that Polleri and Debnath do fail to teach each and every element of the amended claims. However, the examiner believes that Polleri and Debnath are still able to teach some elements of the claims. The examiner believes that new art has been discovered which, in combination of these art, is able to teach or disclose the claimed subject matter. Therefore, the examiner has upheld the rejection under 35 USC 103, see 103 rejection below. 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. Claims 1-4, 6-9 and 11-14 are rejected under 35 U.S.C. 103 as being unpatentable over Nair et al, (Nair et al, “A Question Answering and Quiz Generation Chatbot for Education”, 2019, hereinafter “Nair”) in view of Dey et al, (Dey et al, “All It Takes is 20 Questions!: A Knowledge Graph Based Approach, 2019, hereinafter “Dey”) and in view of Polleri et al, (Polleri et al, “CHATBOT FOR DEFINING A MACHINE LEARNING (ML) SOLUTION”, US 2021/0081819 A1, Filed Jun. 4th, 2020, hereinafter “Polleri”) and in view of Debnath et al, (Debnath et al, “A XaaS savvy Automated Approach to Composite Applications”, 2015 hereinafter “Debnath”). Regarding claim 1, Nair discloses, “wherein the initial inclination is obtained by sequentially querying the user with a set of questions and receiving a corresponding response for each question among the set of questions,” (Quiz Generation Module, pp 3; “This module is responsible for (i) generating questions from an input document, and (ii) selecting a set of questions from those available, taking the user response, and calculating the quiz results after passing the responses through the answer comparison module.” This article discloses a system that sequentially questions the user using NLP and is able to determine the user’s inclination in a given subject via a quiz in a given domain.) “creating an inference table with inference nodes, displaying initial set of assessment questions to user along with answer choices, and prompting the user to answer depending on answer type,” (Question Generation, pp. 3; “This takes a document as input, converts it into a knowledge base and extracts top 100 sentences (chosen based on a suite of ranking functions), feeds them into a QG system, which returns a set of question answer pairs such that each pair contains a chosen sentence as the answer and a Wh-question as its corresponding question. These pairs are further filtered before they are stored for retrieval for the quiz.” This system will generate a set of initial questions for the user to answer. It will display the question to the user and prompt them to answer the generated questions.) “wherein the each question among the set of assessment questions has an associated response type, one or more choices for a response, dependency links of a questions with remaining questions among the set of assessment questions, and a question weightage,” (Question Generation, pp. 3; “Since our work only considers the “remembering” type of questions, the answer sentences to be chosen from the textbook should be fact-based, i.e., each question asked should have a valid fact as the main subject of the question. We identify key sentences and use only those to generate questions for the quiz.” The Questions design is based on a given type and will allow for one or more user responses or answers. The questions are scored by the system to determine a final output and if the user understand the given domain.) “wherein each successive question among the set of questions is identified based on the response of the user to a previous question and is mapped to an initial inference node among a plurality of inference nodes preset in the inference table,” (Answer Comparison, pp. 4; “For every question that is displayed by the chatbot, the user has to answer before proceeding to the next question in the quiz. When the user answers the question, the answer comparison module is responsible for calculating the score for that question. To look for an exact match between user and expected answers, cosine similarity may be used.” This will generate sequential questions for the user to answer. Each question is generated based on given input information and domain. Each answer and question is stored by the system to be graded and evaluated.) and (Quiz Generation, pp. 4: “Quiz Generation refers to the access of the generated question-answer pairs and displaying them to the user. In advanced systems, if the questions are stored along with a rating indicating the difficulty level of the question, the quiz could be generated according to a certain level of difficulty.” This discloses some of the future designs of this system.) “modifying the inference table with inference information in accordance with user answer questions weightages and answer information is saved with associated assessment question node,” (Answer Comparison, pp. 4; “To look for an exact match between user and expected answers, cosine similarity may be used. [See Equation, (9)] However, this scoring mechanism will prove insufficient due to the problem of lexical gap. To account for lexical gap, the following steps are performed: [See Equation (10)] Eq. 10 will give a more accurate score based on the amount of information the user has given in her answer. However, this would fail when the answer is a noun that is also present in the question. So, the final score is calculated as the maximum of both these scores. [See Equation (11)].” This system will store the answers and the generated question. This will compare the given answer with a generated or known answer.) “dynamically generating user's iterated question and answers, wherein the answer value is saved with each assessment node, and the inferences table is modified,” (Quiz Generation, pp. 4; “This takes a document as input, converts it into a knowledge base and extracts top 100 sentences (chosen based on a suite of ranking functions), feeds them into a QG system, which returns a set of question-answer pairs such that each pair contains a chosen sentence as the answer and a Wh-question as its corresponding question. These pairs are further filtered before they are stored for retrieval for the quiz.” This system will generate a set of questions to ask a user and then record the questions and answers in a data structure. The system will then score the answers from the user.) “wherein each inference node corresponds to a set of inferences with each inference among the set of inferences having an initial inference weightage,” (Quiz Generation, pp. 4; “Quiz Generation refers to the access of the generated question-answer pairs and displaying them to the user. In advanced systems, if the questions are stored along with a rating indicating the difficulty level of the question, the quiz could be generated according to a certain level of difficulty.” This system can generate questions for a user to answer and in some embodiments, they disclose weighting questions based on difficulty. Each question will be its own node and is a question-and-answer pair.) “wherein the final interference node indicates initial user inclination and a current architecture of the user in the domain of interest;” (Answer Comparison, pp. 4; “To look for an exact match between user and expected answers, cosine similarity may be used. [See Equation, (9)] … So, the final score is calculated as the maximum of both these scores. [See Equation (11)]” Once the system finishes questioning the user, it will produce a final score and it will determine how much a user knows of a given topic or domain.) “wherein the knowledge graph is built by advanced natural language processing based ML models ingesting a text from staging layer by a) tokenization of ingested text,” (Text preprocessing, pp. 2; “Each sentence from the knowledge base and the user query goes through preprocessing steps including tokenization, singularization, lemmatization, and punctuation removal.” (emphasis added) This system will use common NLP steps to evaluate the user’s input. This will tokenize the text to be further processed.) “b) pronoun identification and replacement in the text for the a machine to tag the pronouns to the actual nouns, thereby improving the contextual accuracy of a knowledge base,” (Text preprocessing, pp. 2; “Each sentence from the knowledge base and the user query goes through preprocessing steps including tokenization, singularization, lemmatization, and punctuation removal.” (emphasis added) This system will use common NLP steps to evaluate the user’s input. This will identify keywords and evaluate the proper nouns for the text to be further processed.) “c) leveraging NLP based part of speech model, identification of subject, object and predicate from the sentence, for generation of nodes and edges in the knowledge graph,” (Text preprocessing, pp. 2; “Each sentence from the knowledge base and the user query goes through preprocessing steps including tokenization, singularization, lemmatization, and punctuation removal.” (emphasis added) This system will use common NLP steps to evaluate the user’s input. This will identify keywords and simplify the text into a single word or sets of words.) Nair fails to explicitly disclose the remaining elements of this claim. However, Dey discloses, “wherein selecting next set of questions based on user's answer using dependencies and weightages associated with it,” (Quiz Generation, pp. 3-4; “The generator is a template-based hierarchically structured model. It traverses the knowledge graph” The questions are initially generated and the sets of questions to be asked to ask questions based on – learned experiences, the answers it received during the current run and the most likely movies based on scores assigned to each movie.” This system will use the knowledge of previous experiences and previous answers from a user to generate another question for the user to answer.) “wherein the initial inference node and the initial inference weightage of each inference node is iteratively updated in accordance with the response of the user to each successive question, and” (Answer Predictor, pp. 3; “The predictor outputs a list of five movies in descending order of their probabilities. It makes a guess once the total probability of the top five most likely movies reaches the empirical value of 0.5. The predictor removes the movies from the probable choices if the user replies no to these five guesses. If the user says yes the game stops and asks the user for the exact movie (from the 5 movies).” This system will update a decision graph generated based on the users answers to the generated questions. After each question the system will update and generate a set of question for the user to answer.) “wherein each inference node among the set of interference nodes is mapped to a decision node from among a plurality of decision nodes;” (Figure 2, pp. 3; “Model architecture of the proposed system. The initial knowledge graph with equiprobable nodes along with likelihood estimator is provided to the question generator. It generates a question (Q) from one of the levels. The user’s response to the question modifies the probabilities of nodes in the graph. If the stopping criteria are met, the model predicts the answer; else, the system iterates using the updated graph.” This system will use a knowledge graph which contains prior information about users answers and correct answers. The questions that are asked by the system are designed to update the knowledge graph and a decision graph to guess the user’s movie. The knowledge graph and the decision graph are seen in figure 2.) PNG media_image1.png 362 1124 media_image1.png Greyscale “identifying, via the one or more hardware processors, a final inference node and a corresponding decision node among the plurality of decision nodes as an initial decision node, post querying the user with the set of questions,” (Answer Tracer, pp. 3; “Every time the model predicts the movie, the answerer is asked if the prediction is correct. The next prediction, therefore, is based on the response of the answerer. If the system is unable to predict within 20 questions, it gives a trace of user answers along with the corresponding facts related to the movie.” This system will attempt to produce a final node which would be the user’s movie. The system will produce a prediction for the movie the user is thinking of. This will question the user sequentially and at the end the system will use the questions and answers to produce a final answer.) “wherein the knowledge graph is used to store interlinked descriptions of the entities, objects with free form semantics by leveraging the artifacts and literature provided by the focus area's subject matter experts, which are securely stored over cloud;” (Figure 2, pp. 3; “Model architecture of the proposed system. The initial knowledge graph with equiprobable nodes along with likelihood estimator is provided to the question generator. It generates a question (Q) from one of the levels. The user’s response to the question modifies the probabilities of nodes in the graph. If the stopping criteria are met, the model predicts the answer; else, the system iterates using the updated graph.” This system stores information in a knowledge graph that it uses to determine what question to ask the user next and other database information such as learned values. A knowledge graph interconnects nodes using links.) “dynamically generating a feature matrix, by extracting the entities from the global knowledge repository in accordance with a plurality of inputs, provided by the SME, and comprising a list of properties, a weightage of each of the list of properties and a list of components for the domain of interest, via the one or more hardware processors;” (Figure 2, pp. 3; This figure shows a graphical representation of a knowledge graph. This will contain information from the user and from prior interactions with different users. The system will use the knowledge graph to respond to the user.) “sequentially querying the user, via the one or more hardware processors, with a set of decision questions starting with context of the initial decision node and receiving a corresponding decision response for each decision question among the set of decision questions,” (Question Generation, pp. 3-4; “The generator is a template-based hierarchically structured model. It traverses the knowledge graph to ask questions based on – learned experiences, the answers it received during the current run and the most likely movies based on scores assigned to each movie. The architecture poses the questions taking into account user-specific data in the primary layers to reduce the size of the most probable set.” This system will sequentially question the user and determine which movie the user is thinking of. Each question is dependent on the previous one. This will start with an initial set of question and overtime produce a prediction based on the generated questions.) “wherein each decision question has an associated decision response type, one or more choices for a decision response, dependency links of a decision question with remaining decision questions among the set of decision questions, a decision question weightage and information in an attribute value form associated with each decision response,” (Answer Prediction, pp. 3; “The predictor outputs a list of five movies in descending order of their probabilities. It makes a guess once the total probability of the top five most likely movies reaches the empirical value of 0.5. The predictor removes the movies from the probable choices if the user replies no to these five guesses. If the user says yes the game stops and asks the user for the exact movie (from the 5 movies). It then alters the edge probabilities in the graph for future games. We perform this adjustment as every choice a player makes is an indication of the popularity of the movie and it’s associated entities.” This system uses a knowledge graph to store information. A knowledge graph will contain dependency links to the nodes in the graph. This system uses the knowledge graph to produce new question for the user. The question are related to a specific domain, in this case it is related to movies.) “wherein each successive decision question among the set of decision questions is identified based on the decision response of the user to a previous decision question;” (Baseline 1, pp. 4; “The model frames questions systematically from six aspects of a movie – era, genre, subject of the story, actors, director, and music composer. The questions eliminate a subset of possible answers after a definite reply by the user. An answer as maybe does not contribute to the understanding of the model and retains the current state. The model poses questions based on the possibilities it gathers over the current run of answers. It eliminates answers in a strict binary fashion without due regard to human fallacies during the game. Figure 3 highlights the game proceedings for question selection.” This system will sequentially quiz the user to produce a prediction. Each question the system asks the user will be evaluated and used to generate the next question if needed.) PNG media_image2.png 372 1162 media_image2.png Greyscale “generating, via the one or more hardware processors, a decision graph tracing a plurality of decision nodes starting from the initial decision node based on each decision response for each of the decision questions; and” (Figure 2, pp. 3; “It generates a question (Q) from one of the levels. The user’s response to the question modifies the probabilities of nodes in the graph. If the stopping criteria are met, the model predicts the answer; else, the system iterates using the updated graph.” This figure shows a decision graph on the right side of the figure. An arrow is pointing to it from the bottom. This figure discloses a decision graph that is generated and used to produce a prediction.) Nair and Dey fails to explicitly discloses the remaining elements of this claim. However, Polleri discloses, “generating in the form of knowledge graph (a) a global knowledge repository for the domain of interest based on artifacts provided by a Subject Matter Expert (SME), and (b) a local knowledge repository for the current architecture based on artifacts provided by the user, via the one or more hardware processors,” (Detailed Description, pp. 4, [0064]; "In various embodiments, the user can use the interface to identify the one or more locations of data that will be used for generating the machine learning model. As described above, the data can be stored locally or remotely. In various embodiments, the user can enter a network location for the data (e.g., Internet Protocol (IP) address). In various embodiments, the user can select a folder from a plurality of folders on a storage device (e.g., a cloud-storage device)." This system will take in a location of data and create a repository to help build the system. This repository can be local, contained on a USB device or a local computer. The repository can also be global as in contained on a cloud server or programming repository like GitHub.) “d) leveraging NLP based dependency parser to identify a root of sentence and dependent words, and defines the dependency relationship between headwords and their dependents to precisely identify one or more entities for global knowledge graph nodes,” (Detailed Description, pp. 11, [0133]; “For example, the syntax and structure of a sentence may be identified by processing the sentence using a parser, a part-of-speech tagger, and/or a named entity recognizer. In one implementation, for the English language, a parser, a part-of-speech tagger, and a named entity recognizer provided by the Stanford Natural Language Processing (NLP) Group is used for analyzing the sentence structure and syntax.” This system uses parsing module to evaluate the input text and identify parts of speech. This would include key words and named entities.) Nair, Dey and Polleri fail to explicitly disclose the remaining elements of this claim. However, Debnath discloses, “A processor implemented method for generating a contextual advisory for Everything as a service (XaaS), the method comprising:” (Introduction, pp. 734; "In this paper, we explore ways to overcome the aforementioned challenges based on new technologies and platforms and provide an algorithm for creating a composite application through automated service composition with minimal human intervention. Our efforts are based on first studying the XaaS platform landscape and then coming up with a XaaS relevant and practical schema for service descriptions and matching. We have implemented our approach as a prototype called AutoComp and we demonstrate its use on an internal XaaS." This paper proposes a method to generate Xaas for a user. This will gather information from the user and will generate a manifest based on the interaction and requirements from one or more users.) “obtaining, via one or more hardware processors, a domain of interest and an initial inclination of a user indicating maturity of the user in the domain of interest when user requests for the contextual advisory for a platform, a process, a technology, and technical components to build XaaS for the domain of interest,” (Services in Modern Cloud Platforms, pp. 737; "Based upon our study and considerations, we have assumed the following web service description schema, which is further used for our use-case services and consumed by our proposed algorithm. The documentation attributes are: [Name, Category, Description, Tags, #Inputs, #Outputs, lnputDesc, OutputDesc] Here, Name is the service name, Category is the name of the category heading under which a service belongs to. Just like the other platforms, we define our own set of predefined categories. Description is a natural language text summary of the service. We have incorporated the concept of tags in our implementation. The core features of a service can be expressed as multiple number of tags. This benefits in searching for services with at least one matching tag between the requested and the already available services. Therefore, Tags attribute stores the associated tags to a particular web service. #Inputs is the total number of input items accepted by the service and lnputDesc shows the input parameter names with their corresponding data types (whether a string or a number or a date, etc.). #Outputs and OutputDesc are defined similarly in context of service outputs. Figure 4 portrays a sample REST API of a Validator service and the values for all the mentioned parameters." This program will help a user develop a program without any experience. Initially the user will input different data into a form so the computer can evaluate that information. The information gathered includes user inclination, domain, level of detail, attributes and other tags.) “utilizing, via the one or more hardware processors, a decision path identified from the decision graph and the information in the attribute value form associated with each decision response for providing the contextual advisory to build XaaS for the domain of interest using document templates.” (Services in Modern Cloud Platforms, pp. 737; "Based upon our study and considerations, we have assumed the following web service description schema, which is further used for our use-case services and consumed by our proposed algorithm. The documentation attributes are: [Name, Category, Description, Tags, #Inputs, #Outputs, lnputDesc, OutputDesc] Here, Name is the service name, Category is the name of the category heading under which a service belongs to. Just like the other platforms, we define our own set of predefined categories. Description is a natural language text summary of the service. We have incorporated the concept of tags in our implementation. The core features of a service can be expressed as multiple number of tags. This benefits in searching for services with at least one matching tag between the requested and the already available services. Therefore, Tags attribute stores the associated tags to a particular web service. #Inputs is the total number of input items accepted by the service and lnputDesc shows the input parameter names with their corresponding data types (whether a string or a number or a date, etc.). #Outputs and OutputDesc are defined similarly in context of service outputs. Figure 4 portrays a sample REST API of a Validator service and the values for all the mentioned parameters." This program will help a user develop a program without any experience. Initially the user will input different data into a form so the computer can evaluate that information. The information gathered includes user inclination, domain, level of detail, attributes and other tags.) It would have been obvious to one of ordinary skill in the art before the effective filing date of the present application to combine Nair, Dey, Polleri and Debnath. Nair teaches a system that is able to generate questions in a given domain using machine learning and NLP techniques. Dey teaches a system that is able to generate questions for a user to determine movie the user is thinking of, similar to the 20 Questions game. Polleri teaches a system that is able to communicate with a user with a chatbot to design a complex system based on the conversation with the user. Debnath teaches a system that is able to communicate with a user to design a complex system or an Xaas. One of ordinary skill would have motivation to combine the teaching of different NLP machine learning models to sequentially question a user to gather information and perform actions. Further, one would have motivation to learn the different NLP techniques of different machine learning models to develop a well-rounded model able generate appropriate questions based on the users answers and the domain, “An essential aspect for achieving good QA accuracy is to make sure the correct answer remains in the candidate set. It needs to be maintained despite human errors in judgment. Taking this into account, we propose a knowledge graph-based approach to develop a 20Q game on Bollywood data. The model overcomes the major issue present in the baselines of handling human errors in answering questions by distributing probabilities intelligently.” (Dey, Conclusion, pp. 4) and “Accordingly, a different approach is needed to address these problems. In various embodiments, an analytic system may be integrated with a bot system. The analytic system can gather conversation logs and history, and determine information related to individual and/or aggregated end user conversations with a bot system as paths that include different nodes representing different stages or states of the conversations.” (Polleri, Introduction, pp. 9, [0115]) and “Automatically composing applications will gain center stage as new technologies and platforms evolve and users need for nimble and highly customized applications increase. The upsurge in the cloud computing and the ever-increasing demand and supply of services through XaaS, has led us to look at an approach to re-use the existing applications to achieve a higher objective quickly and efficiently, instead of the traditional way of creating a new application (or parts of it) from scratch whenever requirements arrive or change. In this paper, we have attempted to provide a solution and discuss various aspects of the challenges and how we address them. We also presented a prototype implementation of our approach called AutoComp that automates creation of composite application on a XaaS. Our current work focuses on obtaining requirements for the composite app, after which appropriate services are assembled into a single composite plan, followed by the deployment and execution of the composed app on the cloud; this essentially completes the complete app delivery cycle.” (Debnath, Conclusion and Future Work, pp. 740) Regarding claim 2, Nair discloses, “wherein the choices are ranked according to probability of generating best possible decision, and” (Introduction, pp. 1; “The Question Answering module employs ranking functions to extract relevant answers from the knowledge base, out of which top K answers are further fed to a neural network which chooses the final answer. The Quiz Generation module uses a suite of ranking mechanisms to rank sentences based on their relevance to the subject matter in the document. The top K significant sentences chosen undergo NLP transformations and are then used to generate questions, which are further filtered and finally presented to the user as a quiz.” This system will rank the questions it generates and will determine which is a better question to ask the user.) “wherein for any unanswered question, the decision response is identified by the trained ML model,” (Answer Comparison, pp. 4; “For every question that is displayed by the chatbot, the user has to answer before proceeding to the next question in the quiz. When the user answers the question, the answer comparison module is responsible for calculating the score for that question. To look for an exact match between user and expected answers, cosine similarity may be used.” This system will compare the users answers to expected answers. If the user does not answer or answers incorrectly the system will notice this and it will be recorded having a limited or no similarity score.) “wherein the ranked choices help in recommendation of the choice to the user for reviewing and approving the choices when matches their requirement.” (Question Generation, pp. 4; “After these question-answer pairs are returned by the QG system for each target sentence, they are filtered based on the length of the question, as compared to the length of the corresponding answer. If the length of the question is less than half of the length of the answer, there is a high chance that the question may not have enough information to answer. Hence, such pairs are further eliminated. This reduces the occurrence of vague questions such as, What did Louis XVI do?.” This system will rank question to ensure the user is provided with real directed questions which benefit the user, instead of vague questions which are difficult to answer and provide little benefit to the user.) Nair fails to explicitly disclose the remaining elements of this claim. However, Polleri discloses, “wherein relevant and contextual choices are generated for selecting decision response by trained Machine Learning (ML) models using combination of the local knowledge repository and the global knowledge repository in accordance with a plurality of features present in the feature matrix,” (Safe Serialization of the Predicted Pipeline, pp. 23-24, [0266]; "Aspects of the present disclosure provide various techniques (e.g., methods, systems, devices, computer-readable media storing computer-executable instructions used to perform computing functions, etc.) for generating and using machine learning models to predict outcomes of code integration requests. As discussed in more detail below, machine learning models may be generated and trained based on previous code integration requests submitted to and processed by a software architecture authorization system. Based on the machine learning and artificial intelligence-based techniques used, one or more models may be trained which may be developer-specific, project specific, and organization- specific, meaning that trained models may output different outcome predictions, confidence levels, causes, and suggestions depending on the current developer, project, and organization. The machine learning models also may be trained based on specific inputs received in connection with previous code integration requests (e.g., the software library to be integrated, the target source code module, the reason for the code integration requests and/or functionality to be used within the library, etc.). Then, following the generation and training of one or more machine learning models, such models may be used to predict outcomes (e.g., approval or denial for authorization) for a potential code integration request. Such models may also be used to autonomously and independent identify the reasons associated with the predictions (e.g., security vulnerabilities, license incompatibility, etc.), and/or to suggest alternative software libraries that may be integrated instead to provide the desired functionality." The system in this applicant uses machine learning models to evaluate user intent and develop a machine learning model based on their intent. This will use the repositories stated by the user and will use that data to develop the new machine learning model. The generated machine learning model will be developed based on the users' requirements and the constraints of the data given to the system.) Regarding claim 3, Debnath discloses, “wherein the contextual advisory comprises roadmap, blueprint, reference architecture and miscellaneous advisory documents, wherein the contextual advisory is a combination of static document with marked dynamics sections populated based on the decision path of the user.” (An Algorithm for Composite Manifest/Plan Generation, pp. 739; "An interaction with the composer is required at the end of each iteration to confirm with him, whether the service shortlisted by the algorithm is to be added to the manifest. Also, when a service set contains multiple services and only one service needs to be selected, the composer is consulted for his choice in this case. This is done by the SelectServ method which is called from multiple points in Algorithm 1 and it is explained by Algorithm 2. One more place where composer discretion is important, is when ServOT is not null. It means that there is at least one service which is satisfying the output requirements, as intended output, expressed by the composer. The composer needs to confirm if composition has ended, therefore if endComp is true, then Success becomes true and the algorithm ends. The result is a composite manifest which is a sequence of a set of services in a particular order, that achieves the higher objective as intended by the composer." This system will use user data, statements and stated requirements to produce a manifest. This manifest is a sequence of services to be used to develop the proposed Xaas system. The output is a textual roadmap on how to implement the suggested Xaas system.) Regarding claim 4, Dey discloses, “wherein, the feature matrix is a structure to host data on a graph database for comparing the one or more entities and associated information obtained from the global knowledge repository across the plurality of inputs,” (Introduction, pp. 1; “In this paper, we present a novel approach to predict movies in 20Q game using a knowledge graph and a probabilistic learning model that evolves as the game is played and predicts correct movie in less than 20 questions.” This system will use a data structure to store the data and knowledge generated from previous sessions with a user. The Examiner is interpreting the “feature matrix” as a graphical database as stated above.) “wherein the generated feature matrix is updated to keep the data association dynamically refreshed and contextually relevant with evolving technology and changing landscapes at environment,” (Introduction, pp. 1; “The model starts with equal probability for every movie, which changes over subsequent questions. It attains fault tolerance as it re-balances the movies probabilities in a way, that it does not disregard or accept a movie completely after every answer. The question generator poses questions based on three components: (1) Probability from past experience. (2) Probability based on the density of edge connectivity in the knowledge graph. (3) Cumulative probability of movies under a category during the current run (based on player’s responses).” This system will store information learning in training and from previous user session. This will be stored in a data structure, a knowledge graph.) “wherein the text stored corresponding to the property of each entity in the feature matrix is utilized in dynamically generating decision questions for navigating the user through complex decision related with selection of platform,” (Question Generator, pp. 3-4; “The generator is a template-based hierarchically structured model. It traverses the knowledge graph to ask questions based on – learned experiences, the answers it received during the current run and the most likely movies based on scores assigned to each movie. The architecture poses the questions taking into account user-specific data in the primary layers to reduce the size of the most probable set.” This system will store in data and trained information in a data structure. This system will use the stored information to generate questions for the user.) “wherein decision questions are dynamically generated based on the information present in the feature matrix by leveraging advanced NLP techniques thus eliminating manual interventions and making process autonomous,” (Figure 2, pp. 3; This system uses a knowledge graph to dynamically generate questions for the user. This graph contains information from the user’s current session and precious sessions. This figure shows the graph on the left side. This process is automated as well and does not require manual intervention.) Dey fails to explicitly disclose the remaining elements of this claim. However, Debnath discloses, “wherein the answers of decision questions captures the preferences of the user and make the decision for them and enable in selecting the suitable component according to the needs of the user, considers the current landscape or architecture of the user and generates wise tailored decision towards the user, provides explanation on the reason of selection of component .” (Services in Modern Cloud Platforms, pp. 737; "Based upon our study and considerations, we have assumed the following web service description schema, which is further used for our use-case services and consumed by our proposed algorithm. The documentation attributes are: [Name, Category, Description, Tags, #Inputs, #Outputs, lnputDesc, OutputDesc] Here, Name is the service name, Category is the name of the category heading under which a service belongs to. Just like the other platforms, we define our own set of predefined categories. Description is a natural language text summary of the service. We have incorporated the concept of tags in our implementation. The core features of a service can be expressed as multiple number of tags. This benefits in searching for services with at least one matching tag between the requested and the already available services. Therefore, Tags attribute stores the associated tags to a particular web service. #Inputs is the total number of input items accepted by the service and lnputDesc shows the input parameter names with their corresponding data types (whether a string or a number or a date, etc.). #Outputs and OutputDesc are defined similarly in context of service outputs." This system will question the user and then it will gather the information. This information is used to help the user develop an XaaS system based on the user’s inputs.) Regarding claim 6, Nair discloses, “wherein the initial inclination is obtained by sequentially querying the user with a set of questions and receiving a corresponding response for each question among the set of questions,” (Quiz Generation Module, pp 3; “This module is responsible for (i) generating questions from an input document, and (ii) selecting a set of questions from those available, taking the user response, and calculating the quiz results after passing the responses through the answer comparison module.” This article discloses a system that sequentially questions the user using NLP and is able to determine the user’s inclination in a given subject via a quiz in a given domain.) “create an inference table with inference nodes, displaying initial set of assessment questions to user along with answer choices, and prompting the user to answer depending on answer type,” (Question Generation, pp. 3; “This takes a document as input, converts it into a knowledge base and extracts top 100 sentences (chosen based on a suite of ranking functions), feeds them into a QG system, which returns a set of question answer pairs such that each pair contains a chosen sentence as the answer and a Wh-question as its corresponding question. These pairs are further filtered before they are stored for retrieval for the quiz.” This system will generate a set of initial questions for the user to answer. It will display the question to the user and prompt them to answer the generated questions.) “wherein the each question among the set of assessment questions has an associated response type, one or more choices for a response, dependency links of a questions with remaining questions among the set of assessment questions, and a question weightage,” (Question Generation, pp. 3; “Since our work only considers the “remembering” type of questions, the answer sentences to be chosen from the textbook should be fact-based, i.e., each question asked should have a valid fact as the main subject of the question. We identify key sentences and use only those to generate questions for the quiz.” The Questions design is based on a given type and will allow for one or more user responses or answers. The questions are scored by the system to determine a final output and if the user understand the given domain.) “wherein each successive question among the set of questions is identified based on the response of the user to a previous question and is mapped to an initial inference node among a plurality of inference nodes preset in an inference table,” (Answer Comparison, pp. 4; “For every question that is displayed by the chatbot, the user has to answer before proceeding to the next question in the quiz. When the user answers the question, the answer comparison module is responsible for calculating the score for that question. To look for an exact match between user and expected answers, cosine similarity may be used.” This will generate sequential questions for the user to answer. Each question is generated based on given input information and domain. Each answer and question is stored by the system to be graded and evaluated.) and (Quiz Generation, pp. 4: “Quiz Generation refers to the access of the generated question-answer pairs and displaying them to the user. In advanced systems, if the questions are stored along with a rating indicating the difficulty level of the question, the quiz could be generated according to a certain level of difficulty.” This discloses some of the future designs of this system.) “modifying the inference table with inference information in accordance with user answer questions weightages and answer information is saved with associated assessment question node,” (Answer Comparison, pp. 4; “To look for an exact match between user and expected answers, cosine similarity may be used. [See Equation, (9)] However, this scoring mechanism will prove insufficient due to the problem of lexical gap. To account for lexical gap, the following steps are performed: [See Equation (10)] Eq. 10 will give a more accurate score based on the amount of information the user has given in her answer. However, this would fail when the answer is a noun that is also present in the question. So, the final score is calculated as the maximum of both these scores. [See Equation (11)].” This system will store the answers and the generated question. This will compare the given answer with a generated or known answer.) “dynamically generating user's iterated question and answers, wherein the answer value is saved with each assessment node, and the inferences table is modified,” (Quiz Generation, pp. 4; “This takes a document as input, converts it into a knowledge base and extracts top 100 sentences (chosen based on a suite of ranking functions), feeds them into a QG system, which returns a set of question-answer pairs such that each pair contains a chosen sentence as the answer and a Wh-question as its corresponding question. These pairs are further filtered before they are stored for retrieval for the quiz.” This system will generate a set of questions to ask a user and then record the questions and answers in a data structure. The system will then score the answers from the user.) “wherein each inference node corresponds to a set of inferences with each inference among the set of inferences having an initial inference weightage,” (Quiz Generation, pp. 4; “Quiz Generation refers to the access of the generated question-answer pairs and displaying them to the user. In advanced systems, if the questions are stored along with a rating indicating the difficulty level of the question, the quiz could be generated according to a certain level of difficulty.” This system can generate questions for a user to answer and in some embodiments, they disclose weighting questions based on difficulty. Each question will be its own node and is a question-and-answer pair.) “wherein the final interference node indicates initial user inclination and a current architecture of the user in the domain of interest;” (Answer Comparison, pp. 4; “To look for an exact match between user and expected answers, cosine similarity may be used. [See Equation, (9)] … So, the final score is calculated as the maximum of both these scores. [See Equation (11)]” Once the system finishes questioning the user, it will produce a final score and it will determine how much a user knows of a given topic or domain.) “wherein the knowledge graph is built by advanced natural language processing based ML models ingesting a text from staging layer by a) tokenization of ingested text,” (Text preprocessing, pp. 2; “Each sentence from the knowledge base and the user query goes through preprocessing steps including tokenization, singularization, lemmatization, and punctuation removal.” (emphasis added) This system will use common NLP steps to evaluate the user’s input. This will tokenize the text to be further processed.) “b) pronoun identification and replacement in the text for the a machine to tag the pronouns to the actual nouns, thereby improving the contextual accuracy of a knowledge base,” (Text preprocessing, pp. 2; “Each sentence from the knowledge base and the user query goes through preprocessing steps including tokenization, singularization, lemmatization, and punctuation removal.” (emphasis added) This system will use common NLP steps to evaluate the user’s input. This will identify keywords and evaluate the proper nouns for the text to be further processed.) “c) leveraging NLP based part of speech model, identification of subject, object and predicate from the sentence, for generation of nodes and edges in the knowledge graph,” (Text preprocessing, pp. 2; “Each sentence from the knowledge base and the user query goes through preprocessing steps including tokenization, singularization, lemmatization, and punctuation removal.” (emphasis added) This system will use common NLP steps to evaluate the user’s input. This will identify keywords and simplify the text into a single word or sets of words.) Nair fails to explicitly disclose the remaining elements of this claim. However, Dey discloses, “wherein selecting next set of questions based on user's answer using dependencies and weightages associated with it,” (Quiz Generation, pp. 3-4; “The generator is a template-based hierarchically structured model. It traverses the knowledge graph” The questions are initially generated and the sets of questions to be asked to ask questions based on – learned experiences, the answers it received during the current run and the most likely movies based on scores assigned to each movie.” This system will use the knowledge of previous experiences and previous answers from a user to generate another question for the user to answer.) “wherein the initial inference node and the initial inference weightage of each inference node is iteratively updated in accordance with the response of the user to each successive question, and” (Answer Predictor, pp. 3; “The predictor outputs a list of five movies in descending order of their probabilities. It makes a guess once the total probability of the top five most likely movies reaches the empirical value of 0.5. The predictor removes the movies from the probable choices if the user replies no to these five guesses. If the user says yes the game stops and asks the user for the exact movie (from the 5 movies).” This system will update a decision graph generated based on the users answers to the generated questions. After each question the system will update and generate a set of question for the user to answer.) “wherein each inference node among the set of interference nodes is mapped to a decision node from among a plurality of decision nodes;” (Figure 2, pp. 3; “Model architecture of the proposed system. The initial knowledge graph with equiprobable nodes along with likelihood estimator is provided to the question generator. It generates a question (Q) from one of the levels. The user’s response to the question modifies the probabilities of nodes in the graph. If the stopping criteria are met, the model predicts the answer; else, the system iterates using the updated graph.” This system will use a knowledge graph which contains prior information about users answers and correct answers. The questions that are asked by the system are designed to update the knowledge graph and a decision graph to guess the user’s movie. The knowledge graph and the decision graph are seen in figure 2.) PNG media_image1.png 362 1124 media_image1.png Greyscale “identify a final inference node and a corresponding decision node among the plurality of decision nodes as an initial decision node, post querying the user with the set of questions,” (Answer Tracer, pp. 3; “Every time the model predicts the movie, the answerer is asked if the prediction is correct. The next prediction, therefore, is based on the response of the answerer. If the system is unable to predict within 20 questions, it gives a trace of user answers along with the corresponding facts related to the movie.” This system will attempt to produce a final node which would be the user’s movie. The system will produce a prediction for the movie the user is thinking of. This will question the user sequentially and at the end the system will use the questions and answers to produce a final answer.) “wherein the knowledge graph is used to store interlinked descriptions of the entities, objects with free form semantics by leveraging the artifacts and literature provided by the focus area's subject matter experts, which are securely stored over cloud;” (Figure 2, pp. 3; “Model architecture of the proposed system. The initial knowledge graph with equiprobable nodes along with likelihood estimator is provided to the question generator. It generates a question (Q) from one of the levels. The user’s response to the question modifies the probabilities of nodes in the graph. If the stopping criteria are met, the model predicts the answer; else, the system iterates using the updated graph.” This system stores information in a knowledge graph that it uses to determine what question to ask the user next and other database information such as learned values. A knowledge graph interconnects nodes using links.) “dynamically generate a feature matrix, by extracting one or more entities from the global knowledge repository in accordance with a plurality of inputs, provided by the SME, and comprising a list of properties, a weightage of each of the list of properties and a list of components for the domain of interest;” (Figure 2, pp. 3; This figure shows a graphical representation of a knowledge graph. This will contain information from the user and from prior interactions with different users. The system will use the knowledge graph to respond to the user.) “sequentially query with a set of decision questions starting with context of the initial decision node and receiving a corresponding decision response for each decision question among the set of decision questions,” (Question Generation, pp. 3-4; “The generator is a template-based hierarchically structured model. It traverses the knowledge graph to ask questions based on – learned experiences, the answers it received during the current run and the most likely movies based on scores assigned to each movie. The architecture poses the questions taking into account user-specific data in the primary layers to reduce the size of the most probable set.” This system will sequentially question the user and determine which movie the user is thinking of. Each question is dependent on the previous one. This will start with an initial set of question and overtime produce a prediction based on the generated questions.) “wherein each decision question has an associated decision response type, one or more choices for a decision response, dependency links of a decision question with remaining decision questions among the set of decision questions, a decision question weightage and information in an attribute value form associated with each decision response,” (Answer Prediction, pp. 3; “The predictor outputs a list of five movies in descending order of their probabilities. It makes a guess once the total probability of the top five most likely movies reaches the empirical value of 0.5. The predictor removes the movies from the probable choices if the user replies no to these five guesses. If the user says yes the game stops and asks the user for the exact movie (from the 5 movies). It then alters the edge probabilities in the graph for future games. We perform this adjustment as every choice a player makes is an indication of the popularity of the movie and it’s associated entities.” This system uses a knowledge graph to store information. A knowledge graph will contain dependency links to the nodes in the graph. This system uses the knowledge graph to produce new question for the user. The question are related to a specific domain, in this case it is related to movies.) “wherein each successive decision question among the set of decision questions is identified based on the decision response of the user to a previous decision question;” (Baseline 1, pp. 4; “The model frames questions systematically from six aspects of a movie – era, genre, subject of the story, actors, director, and music composer. The questions eliminate a subset of possible answers after a definite reply by the user. An answer as maybe does not contribute to the understanding of the model and retains the current state. The model poses questions based on the possibilities it gathers over the current run of answers. It eliminates answers in a strict binary fashion without due regard to human fallacies during the game. Figure 3 highlights the game proceedings for question selection.” This system will sequentially quiz the user to produce a prediction. Each question the system asks the user will be evaluated and used to generate the next question if needed.) PNG media_image2.png 372 1162 media_image2.png Greyscale “generate a decision graph tracing a plurality of decision nodes starting from the initial decision node based on each decision response for each of the decision questions; and” (Figure 2, pp. 3; “It generates a question (Q) from one of the levels. The user’s response to the question modifies the probabilities of nodes in the graph. If the stopping criteria are met, the model predicts the answer; else, the system iterates using the updated graph.” This figure shows a decision graph on the right side of the figure. An arrow is pointing to it from the bottom. This figure discloses a decision graph that is generated and used to produce a prediction.) Nair and Dey fails to explicitly discloses the remaining elements of this claim. However, Polleri discloses, “generate in the form of knowledge graph (a) a global knowledge repository for the domain of interest based on artifacts provided by a Subject Matter Expert (SME), and (b) a local knowledge repository for the current architecture based on artifacts provided by the user,” (Detailed Description, pp. 4, [0064]; "In various embodiments, the user can use the interface to identify the one or more locations of data that will be used for generating the machine learning model. As described above, the data can be stored locally or remotely. In various embodiments, the user can enter a network location for the data (e.g., Internet Protocol (IP) address). In various embodiments, the user can select a folder from a plurality of folders on a storage device (e.g., a cloud-storage device)." This system will take in a location of data and create a repository to help build the system. This repository can be local, contained on a USB device or a local computer. The repository can also be global as in contained on a cloud server or programming repository like GitHub.) “d) leveraging NLP based dependency parser to identify a root of sentence and dependent words, and defines the dependency relationship between headwords and their dependents to precisely identify one or more entities for global knowledge graph nodes,” (Detailed Description, pp. 11, [0133]; “For example, the syntax and structure of a sentence may be identified by processing the sentence using a parser, a part-of-speech tagger, and/or a named entity recognizer. In one implementation, for the English language, a parser, a part-of-speech tagger, and a named entity recognizer provided by the Stanford Natural Language Processing (NLP) Group is used for analyzing the sentence structure and syntax.” This system uses parsing module to evaluate the input text and identify parts of speech. This would include key words and named entities.) Nair, Dey and Polleri fail to explicitly disclose the remaining elements of this claim. However, Debnath discloses, “A system for generating a contextual advisory for Everything as a service (XaaS), the system comprising: a memory storing instructions; one or more Input/Output (I/O) interfaces; and one or more hardware processors coupled to the memory via the one or more I/O interfaces, wherein the one or more hardware processors are configured by the instructions to:” (AutoComp- An Implementation of our Composition Approach, pp. 739; "We decided to implement our approach a prototype and deployed it on our internal Xaas. This XaaS mimics deployment of various applications and their services on a private Cloud and contains some typical enterprise services which may be used in different composite applications. The architecture and deployment diagram of AutoComp as well as a prototype execution for the chosen use-case is described in the Figure 8." This paper discloses a system which implements their method. This is seen in figure 8. This was designed to be used on a large system containing servers and multiple end user devices. For the experiment, they implemented the system on a generic computing system. This system contains memory linked to processors to execute machine code stored in the memory.) “obtain a domain of interest and an initial inclination of a user indicating maturity of the user in the domain of interest when user requests for the contextual advisory for a platform, a process, a technology, and technical components to build XaaS for the domain of interest,” (Services in Modern Cloud Platforms, pp. 737; "Based upon our study and considerations, we have assumed the following web service description schema, which is further used for our use-case services and consumed by our proposed algorithm. The documentation attributes are: [Name, Category, Description, Tags, #Inputs, #Outputs, lnputDesc, OutputDesc] Here, Name is the service name, Category is the name of the category heading under which a service belongs to. Just like the other platforms, we define our own set of predefined categories. Description is a natural language text summary of the service. We have incorporated the concept of tags in our implementation. The core features of a service can be expressed as multiple number of tags. This benefits in searching for services with at least one matching tag between the requested and the already available services. Therefore, Tags attribute stores the associated tags to a particular web service. #Inputs is the total number of input items accepted by the service and lnputDesc shows the input parameter names with their corresponding data types (whether a string or a number or a date, etc.). #Outputs and OutputDesc are defined similarly in context of service outputs. Figure 4 portrays a sample REST API of a Validator service and the values for all the mentioned parameters." This program will help a user develop a program without any experience. Initially the user will input different data into a form so the computer can evaluate that information. The information gathered includes user inclination, domain, level of detail, attributes and other tags.) “utilize a decision path identified from the decision graph and the information in the attribute value form associated with each decision response for providing the contextual advisory to build XaaS for the domain of interest using document templates.” (Services in Modern Cloud Platforms, pp. 737; "Based upon our study and considerations, we have assumed the following web service description schema, which is further used for our use-case services and consumed by our proposed algorithm. The documentation attributes are: [Name, Category, Description, Tags, #Inputs, #Outputs, lnputDesc, OutputDesc] Here, Name is the service name, Category is the name of the category heading under which a service belongs to. Just like the other platforms, we define our own set of predefined categories. Description is a natural language text summary of the service. We have incorporated the concept of tags in our implementation. The core features of a service can be expressed as multiple number of tags. This benefits in searching for services with at least one matching tag between the requested and the already available services. Therefore, Tags attribute stores the associated tags to a particular web service. #Inputs is the total number of input items accepted by the service and lnputDesc shows the input parameter names with their corresponding data types (whether a string or a number or a date, etc.). #Outputs and OutputDesc are defined similarly in context of service outputs. Figure 4 portrays a sample REST API of a Validator service and the values for all the mentioned parameters." This program will help a user develop a program without any experience. Initially the user will input different data into a form so the computer can evaluate that information. The information gathered includes user inclination, domain, level of detail, attributes and other tags.) Regarding claim 7, Nair discloses, “wherein the choices are ranked according to probability of generating best possible decision, and” (Introduction, pp. 1; “The Question Answering module employs ranking functions to extract relevant answers from the knowledge base, out of which top K answers are further fed to a neural network which chooses the final answer. The Quiz Generation module uses a suite of ranking mechanisms to rank sentences based on their relevance to the subject matter in the document. The top K significant sentences chosen undergo NLP transformations and are then used to generate questions, which are further filtered and finally presented to the user as a quiz.” This system will rank the questions it generates and will determine which is a better question to ask the user.) “wherein for any unanswered question, the decision response is identified by the trained ML model,” (Answer Comparison, pp. 4; “For every question that is displayed by the chatbot, the user has to answer before proceeding to the next question in the quiz. When the user answers the question, the answer comparison module is responsible for calculating the score for that question. To look for an exact match between user and expected answers, cosine similarity may be used.” This system will compare the users answers to expected answers. If the user does not answer or answers incorrectly the system will notice this and it will be recorded having a limited or no similarity score.) “wherein the ranked choices help in recommendation of the choice to the user for reviewing and approving the choices when matches their requirement.” (Question Generation, pp. 4; “After these question-answer pairs are returned by the QG system for each target sentence, they are filtered based on the length of the question, as compared to the length of the corresponding answer. If the length of the question is less than half of the length of the answer, there is a high chance that the question may not have enough information to answer. Hence, such pairs are further eliminated. This reduces the occurrence of vague questions such as, What did Louis XVI do?.” This system will rank question to ensure the user is provided with real directed questions which benefit the user, instead of vague questions which are difficult to answer and provide little benefit to the user.) Nair fails to explicitly disclose the remaining elements of this claim. However, Polleri discloses, “wherein the one or more hardware processors are configured to generate relevant and contextual choices for selecting decision response by trained Machine Learning (ML) models using combination of the local knowledge repository and the global knowledge repository in accordance with a plurality of features present in the feature matrix,” (Safe Serialization of the Predicted Pipeline, pp. 23-24, [0266]; "Aspects of the present disclosure provide various techniques (e.g., methods, systems, devices, computer-readable media storing computer-executable instructions used to perform computing functions, etc.) for generating and using machine learning models to predict outcomes of code integration requests. As discussed in more detail below, machine learning models may be generated and trained based on previous code integration requests submitted to and processed by a software architecture authorization system. Based on the machine learning and artificial intelligence-based techniques used, one or more models may be trained which may be developer-specific, project specific, and organization- specific, meaning that trained models may output different outcome predictions, confidence levels, causes, and suggestions depending on the current developer, project, and organization. The machine learning models also may be trained based on specific inputs received in connection with previous code integration requests (e.g., the software library to be integrated, the target source code module, the reason for the code integration requests and/or functionality to be used within the library, etc.). Then, following the generation and training of one or more machine learning models, such models may be used to predict outcomes (e.g., approval or denial for authorization) for a potential code integration request. Such models may also be used to autonomously and independent identify the reasons associated with the predictions (e.g., security vulnerabilities, license incompatibility, etc.), and/or to suggest alternative software libraries that may be integrated instead to provide the desired functionality." The system in this applicant uses machine learning models to evaluate user intent and develop a machine learning model based on their intent. This will use the repositories stated by the user and will use that data to develop the new machine learning model. The generated machine learning model will be developed based on the users' requirements and the constraints of the data given to the system.) Regarding claim 8, Debnath discloses, “wherein the contextual advisory comprises roadmap, blueprint, reference architecture and miscellaneous advisory documents, wherein the contextual advisory is a combination of static document with marked dynamics sections populated based on the decision path of the user.” (An Algorithm for Composite Manifest/Plan Generation, pp. 739; "An interaction with the composer is required at the end of each iteration to confirm with him, whether the service shortlisted by the algorithm is to be added to the manifest. Also, when a service set contains multiple services and only one service needs to be selected, the composer is consulted for his choice in this case. This is done by the SelectServ method which is called from multiple points in Algorithm 1 and it is explained by Algorithm 2. One more place where composer discretion is important, is when ServOT is not null. It means that there is at least one service which is satisfying the output requirements, as intended output, expressed by the composer. The composer needs to confirm if composition has ended, therefore if endComp is true, then Success becomes true and the algorithm ends. The result is a composite manifest which is a sequence of a set of services in a particular order, that achieves the higher objective as intended by the composer." This system will use user data, statements and stated requirements to produce a manifest. This manifest is a sequence of services to be used to develop the proposed Xaas system. The output is a textual roadmap on how to implement the suggested Xaas system.) Regarding claim 9, Dey discloses, “the feature matrix is a structure to host data on a graph database for comparing the one or more entities and associated information obtained from the global knowledge repository across the plurality of inputs,” (Introduction, pp. 1; “In this paper, we present a novel approach to predict movies in 20Q game using a knowledge graph and a probabilistic learning model that evolves as the game is played and predicts correct movie in less than 20 questions.” This system will use a data structure to store the data and knowledge generated from previous sessions with a user. The Examiner is interpreting the “feature matrix” as a graphical database as stated above.) “wherein the generated feature matrix is updated to keep the data association dynamically refreshed and contextually relevant with evolving technology and changing landscapes at environment,” (Introduction, pp. 1; “The model starts with equal probability for every movie, which changes over subsequent questions. It attains fault tolerance as it re-balances the movies probabilities in a way, that it does not disregard or accept a movie completely after every answer. The question generator poses questions based on three components: (1) Probability from past experience. (2) Probability based on the density of edge connectivity in the knowledge graph. (3) Cumulative probability of movies under a category during the current run (based on player’s responses).” This system will store information learning in training and from previous user session. This will be stored in a data structure, a knowledge graph.) “wherein the text stored corresponding to the property of each entity in the feature matrix is utilized in dynamically generating decision questions for navigating the user through complex decision related with selection of platform,” (Question Generator, pp. 3-4; “The generator is a template-based hierarchically structured model. It traverses the knowledge graph to ask questions based on – learned experiences, the answers it received during the current run and the most likely movies based on scores assigned to each movie. The architecture poses the questions taking into account user-specific data in the primary layers to reduce the size of the most probable set.” This system will store in data and trained information in a data structure. This system will use the stored information to generate questions for the user.) “wherein decision questions are dynamically generated based on the information present in the feature matrix by leveraging advanced NLP techniques thus eliminating manual interventions and making process autonomous,” (Figure 2, pp. 3; This system uses a knowledge graph to dynamically generate questions for the user. This graph contains information from the user’s current session and precious sessions. This figure shows the graph on the left side. This process is automated as well and does not require manual intervention.) Dey fails to explicitly disclose the remaining elements of this claim. However, Debnath discloses, “wherein the answers of decision questions captures the preferences of the user and make the decision for them and enable in selecting the suitable component according to the needs of the user, considers the current landscape or architecture of the user and generates wise tailored decision towards the user, provides explanation on the reason of selection of component.” (Services in Modern Cloud Platforms, pp. 737; "Based upon our study and considerations, we have assumed the following web service description schema, which is further used for our use-case services and consumed by our proposed algorithm. The documentation attributes are: [Name, Category, Description, Tags, #Inputs, #Outputs, lnputDesc, OutputDesc] Here, Name is the service name, Category is the name of the category heading under which a service belongs to. Just like the other platforms, we define our own set of predefined categories. Description is a natural language text summary of the service. We have incorporated the concept of tags in our implementation. The core features of a service can be expressed as multiple number of tags. This benefits in searching for services with at least one matching tag between the requested and the already available services. Therefore, Tags attribute stores the associated tags to a particular web service. #Inputs is the total number of input items accepted by the service and lnputDesc shows the input parameter names with their corresponding data types (whether a string or a number or a date, etc.). #Outputs and OutputDesc are defined similarly in context of service outputs." This system will question the user and then it will gather the information. This information is used to help the user develop an XaaS system based on the user’s inputs.) Regarding claim 11, Nair discloses, “wherein the initial inclination is obtained by sequentially querying the user with a set of questions and receiving a corresponding response for each question among the set of questions;” (Quiz Generation Module, pp 3; “This module is responsible for (i) generating questions from an input document, and (ii) selecting a set of questions from those available, taking the user response, and calculating the quiz results after passing the responses through the answer comparison module.” This article discloses a system that sequentially questions the user using NLP and is able to determine the user’s inclination in a given subject via a quiz in a given domain.) “creating an inference table with inference nodes, displaying initial set of assessment questions to user along with answer choices, and prompting the user to answer depending on answer type,” (Question Generation, pp. 3; “This takes a document as input, converts it into a knowledge base and extracts top 100 sentences (chosen based on a suite of ranking functions), feeds them into a QG system, which returns a set of question answer pairs such that each pair contains a chosen sentence as the answer and a Wh-question as its corresponding question. These pairs are further filtered before they are stored for retrieval for the quiz.” This system will generate a set of initial questions for the user to answer. It will display the question to the user and prompt them to answer the generated questions.) “wherein the each question among the set of assessment questions has an associated response type, one or more choices for a response, dependency links of a questions with remaining questions among the set of assessment questions, and a question weightage,” (Question Generation, pp. 3; “Since our work only considers the “remembering” type of questions, the answer sentences to be chosen from the textbook should be fact-based, i.e., each question asked should have a valid fact as the main subject of the question. We identify key sentences and use only those to generate questions for the quiz.” The Questions design is based on a given type and will allow for one or more user responses or answers. The questions are scored by the system to determine a final output and if the user understand the given domain.) “wherein each successive question among the set of questions is identified based on the response of the user to a previous question and is mapped to an initial inference node among a plurality of inference nodes preset in an inference table,” (Answer Comparison, pp. 4; “For every question that is displayed by the chatbot, the user has to answer before proceeding to the next question in the quiz. When the user answers the question, the answer comparison module is responsible for calculating the score for that question. To look for an exact match between user and expected answers, cosine similarity may be used.” This will generate sequential questions for the user to answer. Each question is generated based on given input information and domain. Each answer and question is stored by the system to be graded and evaluated.) and (Quiz Generation, pp. 4: “Quiz Generation refers to the access of the generated question-answer pairs and displaying them to the user. In advanced systems, if the questions are stored along with a rating indicating the difficulty level of the question, the quiz could be generated according to a certain level of difficulty.” This discloses some of the future designs of this system.) “modifying the inference table with inference information in accordance with user answer questions weightages and answer information is saved with associated assessment question node,” (Answer Comparison, pp. 4; “To look for an exact match between user and expected answers, cosine similarity may be used. [See Equation, (9)] However, this scoring mechanism will prove insufficient due to the problem of lexical gap. To account for lexical gap, the following steps are performed: [See Equation (10)] Eq. 10 will give a more accurate score based on the amount of information the user has given in her answer. However, this would fail when the answer is a noun that is also present in the question. So, the final score is calculated as the maximum of both these scores. [See Equation (11)].” This system will store the answers and the generated question. This will compare the given answer with a generated or known answer.) “dynamically generating user's iterated question and answers, wherein the answer value is saved with each assessment node, and the inferences table is modified,” (Quiz Generation, pp. 4; “This takes a document as input, converts it into a knowledge base and extracts top 100 sentences (chosen based on a suite of ranking functions), feeds them into a QG system, which returns a set of question-answer pairs such that each pair contains a chosen sentence as the answer and a Wh-question as its corresponding question. These pairs are further filtered before they are stored for retrieval for the quiz.” This system will generate a set of questions to ask a user and then record the questions and answers in a data structure. The system will then score the answers from the user.) “wherein each inference node corresponds to a set of inferences with each inference among the set of inferences having an initial inference weightage,” (Quiz Generation, pp. 4; “Quiz Generation refers to the access of the generated question-answer pairs and displaying them to the user. In advanced systems, if the questions are stored along with a rating indicating the difficulty level of the question, the quiz could be generated according to a certain level of difficulty.” This system can generate questions for a user to answer and in some embodiments, they disclose weighting questions based on difficulty. Each question will be its own node and is a question-and-answer pair.) “wherein the final interference node indicates initial user inclination and a current architecture of the user in the domain of interest;” (Answer Comparison, pp. 4; “To look for an exact match between user and expected answers, cosine similarity may be used. [See Equation, (9)] … So, the final score is calculated as the maximum of both these scores. [See Equation (11)]” Once the system finishes questioning the user, it will produce a final score and it will determine how much a user knows of a given topic or domain.) “wherein the knowledge graph is built by advanced natural language processing based ML models ingest a text from staging layer by a) tokenization of ingested text,” (Text preprocessing, pp. 2; “Each sentence from the knowledge base and the user query goes through preprocessing steps including tokenization, singularization, lemmatization, and punctuation removal.” (emphasis added) This system will use common NLP steps to evaluate the user’s input. This will tokenize the text to be further processed.) “b) pronoun identification and replacement in the text for the a machine to tag the pronouns to the actual nouns, thereby improving the contextual accuracy of a knowledge base,” (Text preprocessing, pp. 2; “Each sentence from the knowledge base and the user query goes through preprocessing steps including tokenization, singularization, lemmatization, and punctuation removal.” (emphasis added) This system will use common NLP steps to evaluate the user’s input. This will identify keywords and evaluate the proper nouns for the text to be further processed.) “c) leveraging NLP based part of speech model, identification of subject, object and predicate from the sentence, for generation of nodes and edges in the knowledge graph,” (Text preprocessing, pp. 2; “Each sentence from the knowledge base and the user query goes through preprocessing steps including tokenization, singularization, lemmatization, and punctuation removal.” (emphasis added) This system will use common NLP steps to evaluate the user’s input. This will identify keywords and simplify the text into a single word or sets of words.) Nair fails to explicitly disclose the remaining elements of this claim. However, Dey discloses, “wherein selecting next set of questions based on user's answer using dependencies and weightages associated with it,” (Quiz Generation, pp. 3-4; “The generator is a template-based hierarchically structured model. It traverses the knowledge graph” The questions are initially generated and the sets of questions to be asked to ask questions based on – learned experiences, the answers it received during the current run and the most likely movies based on scores assigned to each movie.” This system will use the knowledge of previous experiences and previous answers from a user to generate another question for the user to answer.) “wherein the initial inference node and the initial inference weightage of each inference node is iteratively updated in accordance with the response of the user to each successive question, and” (Answer Predictor, pp. 3; “The predictor outputs a list of five movies in descending order of their probabilities. It makes a guess once the total probability of the top five most likely movies reaches the empirical value of 0.5. The predictor removes the movies from the probable choices if the user replies no to these five guesses. If the user says yes the game stops and asks the user for the exact movie (from the 5 movies).” This system will update a decision graph generated based on the users answers to the generated questions. After each question the system will update and generate a set of question for the user to answer.) “wherein each inference node among the set of interference nodes is mapped to a decision node from among a plurality of decision nodes;” (Figure 2, pp. 3; “Model architecture of the proposed system. The initial knowledge graph with equiprobable nodes along with likelihood estimator is provided to the question generator. It generates a question (Q) from one of the levels. The user’s response to the question modifies the probabilities of nodes in the graph. If the stopping criteria are met, the model predicts the answer; else, the system iterates using the updated graph.” This system will use a knowledge graph which contains prior information about users answers and correct answers. The questions that are asked by the system are designed to update the knowledge graph and a decision graph to guess the user’s movie. The knowledge graph and the decision graph are seen in figure 2.) PNG media_image1.png 362 1124 media_image1.png Greyscale “identifying a final inference node and a corresponding decision node among the plurality of decision nodes as an initial decision node, post querying the user with the set of questions,” (Answer Tracer, pp. 3; “Every time the model predicts the movie, the answerer is asked if the prediction is correct. The next prediction, therefore, is based on the response of the answerer. If the system is unable to predict within 20 questions, it gives a trace of user answers along with the corresponding facts related to the movie.” This system will attempt to produce a final node which would be the user’s movie. The system will produce a prediction for the movie the user is thinking of. This will question the user sequentially and at the end the system will use the questions and answers to produce a final answer.) “wherein the knowledge graph is used to store interlinked descriptions of the entities, objects with free form semantics by leveraging the artifacts and literature provided by the focus area's subject matter experts, which are securely stored over cloud;” (Figure 2, pp. 3; “Model architecture of the proposed system. The initial knowledge graph with equiprobable nodes along with likelihood estimator is provided to the question generator. It generates a question (Q) from one of the levels. The user’s response to the question modifies the probabilities of nodes in the graph. If the stopping criteria are met, the model predicts the answer; else, the system iterates using the updated graph.” This system stores information in a knowledge graph that it uses to determine what question to ask the user next and other database information such as learned values. A knowledge graph interconnects nodes using links.) “dynamically generating a feature matrix, by extracting one or more entities from the global knowledge repository in accordance with a plurality of inputs, provided by the SME, and further comprising a list of properties, a weightage of each of the list of properties and a list of components for the domain of interest;” (Figure 2, pp. 3; This figure shows a graphical representation of a knowledge graph. This will contain information from the user and from prior interactions with different users. The system will use the knowledge graph to respond to the user.) “sequentially querying the user with a set of decision questions starting with context of the initial decision node and receiving a corresponding decision response for each decision question among the set of decision questions,” (Question Generation, pp. 3-4; “The generator is a template-based hierarchically structured model. It traverses the knowledge graph to ask questions based on – learned experiences, the answers it received during the current run and the most likely movies based on scores assigned to each movie. The architecture poses the questions taking into account user-specific data in the primary layers to reduce the size of the most probable set.” This system will sequentially question the user and determine which movie the user is thinking of. Each question is dependent on the previous one. This will start with an initial set of question and overtime produce a prediction based on the generated questions.) “wherein each decision question has an associated decision response type, one or more choices for a decision response, dependency links of a decision question with remaining decision questions among the set of decision questions, a decision question weightage and information in an attribute value form associated with each decision response,” (Answer Prediction, pp. 3; “The predictor outputs a list of five movies in descending order of their probabilities. It makes a guess once the total probability of the top five most likely movies reaches the empirical value of 0.5. The predictor removes the movies from the probable choices if the user replies no to these five guesses. If the user says yes the game stops and asks the user for the exact movie (from the 5 movies). It then alters the edge probabilities in the graph for future games. We perform this adjustment as every choice a player makes is an indication of the popularity of the movie and it’s associated entities.” This system uses a knowledge graph to store information. A knowledge graph will contain dependency links to the nodes in the graph. This system uses the knowledge graph to produce new question for the user. The question are related to a specific domain, in this case it is related to movies.) “wherein each successive decision question among the set of decision questions is identified based on the decision response of the user to a previous decision question;” (Baseline 1, pp. 4; “The model frames questions systematically from six aspects of a movie – era, genre, subject of the story, actors, director, and music composer. The questions eliminate a subset of possible answers after a definite reply by the user. An answer as maybe does not contribute to the understanding of the model and retains the current state. The model poses questions based on the possibilities it gathers over the current run of answers. It eliminates answers in a strict binary fashion without due regard to human fallacies during the game. Figure 3 highlights the game proceedings for question selection.” This system will sequentially quiz the user to produce a prediction. Each question the system asks the user will be evaluated and used to generate the next question if needed.) PNG media_image2.png 372 1162 media_image2.png Greyscale “generating a decision graph tracing a plurality of decision nodes starting from the initial decision node based on each decision response for each of the decision questions; and” (Figure 2, pp. 3; “It generates a question (Q) from one of the levels. The user’s response to the question modifies the probabilities of nodes in the graph. If the stopping criteria are met, the model predicts the answer; else, the system iterates using the updated graph.” This figure shows a decision graph on the right side of the figure. An arrow is pointing to it from the bottom. This figure discloses a decision graph that is generated and used to produce a prediction.) Nair and Dey fails to explicitly discloses the remaining elements of this claim. However, Polleri discloses, “generating in the form of knowledge graph (a) a global knowledge repository for the domain of interest based on artifacts provided by a Subject Matter Expert (SME), and (b) a local knowledge repository for the current architecture based on artifacts provided by the user,” (Detailed Description, pp. 4, [0064]; "In various embodiments, the user can use the interface to identify the one or more locations of data that will be used for generating the machine learning model. As described above, the data can be stored locally or remotely. In various embodiments, the user can enter a network location for the data (e.g., Internet Protocol (IP) address). In various embodiments, the user can select a folder from a plurality of folders on a storage device (e.g., a cloud-storage device)." This system will take in a location of data and create a repository to help build the system. This repository can be local, contained on a USB device or a local computer. The repository can also be global as in contained on a cloud server or programming repository like GitHub.) “d) leveraging NLP based dependency parser to identify a root of sentence and dependent words, and defines the dependency relationship between headwords and their dependents to precisely identify one or more entities for global knowledge graph nodes,” (Detailed Description, pp. 11, [0133]; “For example, the syntax and structure of a sentence may be identified by processing the sentence using a parser, a part-of-speech tagger, and/or a named entity recognizer. In one implementation, for the English language, a parser, a part-of-speech tagger, and a named entity recognizer provided by the Stanford Natural Language Processing (NLP) Group is used for analyzing the sentence structure and syntax.” This system uses parsing module to evaluate the input text and identify parts of speech. This would include key words and named entities.) Nair, Dey and Polleri fail to explicitly disclose the remaining elements of this claim. However, Debnath discloses, “One or more non-transitory machine-readable information storage mediums comprising one or more instructions which when executed by one or more hardware processors cause:” (AutoComp- An Implementation of our Composition Approach, pp. 739; "We decided to implement our approach a prototype and deployed it on our internal Xaas. This XaaS mimics deployment of various applications and their services on a private Cloud and contains some typical enterprise services which may be used in different composite applications. The architecture and deployment diagram of AutoComp as well as a prototype execution for the chosen use-case is described in the Figure 8." This paper discloses a system which implements their method. This is seen in figure 8. This was designed to be used on a large system containing servers and multiple end user devices. For the experiment, they implemented the system on a generic computing system. This system contains memory linked to processors to execute machine code stored in the memory.) “obtaining, a domain of interest and an initial inclination of a user indicating maturity of the user in the domain of interest when user requests for the contextual advisory for a platform, a process, a technology, and technical components to build XaaS for the domain of interest,” (Services in Modern Cloud Platforms, pp. 737; "Based upon our study and considerations, we have assumed the following web service description schema, which is further used for our use-case services and consumed by our proposed algorithm. The documentation attributes are: [Name, Category, Description, Tags, #Inputs, #Outputs, lnputDesc, OutputDesc] Here, Name is the service name, Category is the name of the category heading under which a service belongs to. Just like the other platforms, we define our own set of predefined categories. Description is a natural language text summary of the service. We have incorporated the concept of tags in our implementation. The core features of a service can be expressed as multiple number of tags. This benefits in searching for services with at least one matching tag between the requested and the already available services. Therefore, Tags attribute stores the associated tags to a particular web service. #Inputs is the total number of input items accepted by the service and lnputDesc shows the input parameter names with their corresponding data types (whether a string or a number or a date, etc.). #Outputs and OutputDesc are defined similarly in context of service outputs. Figure 4 portrays a sample REST API of a Validator service and the values for all the mentioned parameters." This program will help a user develop a program without any experience. Initially the user will input different data into a form so the computer can evaluate that information. The information gathered includes user inclination, domain, level of detail, attributes and other tags.) “utilizing a decision path identified from the decision graph and the information in the attribute value form associated with each decision response for providing the contextual advisory to build XaaS for the domain of interest using document templates.” (Services in Modern Cloud Platforms, pp. 737; "Based upon our study and considerations, we have assumed the following web service description schema, which is further used for our use-case services and consumed by our proposed algorithm. The documentation attributes are: [Name, Category, Description, Tags, #Inputs, #Outputs, lnputDesc, OutputDesc] Here, Name is the service name, Category is the name of the category heading under which a service belongs to. Just like the other platforms, we define our own set of predefined categories. Description is a natural language text summary of the service. We have incorporated the concept of tags in our implementation. The core features of a service can be expressed as multiple number of tags. This benefits in searching for services with at least one matching tag between the requested and the already available services. Therefore, Tags attribute stores the associated tags to a particular web service. #Inputs is the total number of input items accepted by the service and lnputDesc shows the input parameter names with their corresponding data types (whether a string or a number or a date, etc.). #Outputs and OutputDesc are defined similarly in context of service outputs. Figure 4 portrays a sample REST API of a Validator service and the values for all the mentioned parameters." This program will help a user develop a program without any experience. Initially the user will input different data into a form so the computer can evaluate that information. The information gathered includes user inclination, domain, level of detail, attributes and other tags.) Regarding claim 12, Nair discloses, “wherein the choices are ranked according to probability of generating best possible decision, and” (Introduction, pp. 1; “The Question Answering module employs ranking functions to extract relevant answers from the knowledge base, out of which top K answers are further fed to a neural network which chooses the final answer. The Quiz Generation module uses a suite of ranking mechanisms to rank sentences based on their relevance to the subject matter in the document. The top K significant sentences chosen undergo NLP transformations and are then used to generate questions, which are further filtered and finally presented to the user as a quiz.” This system will rank the questions it generates and will determine which is a better question to ask the user.) “wherein for any unanswered question, the decision response is identified by the trained ML model,” (Answer Comparison, pp. 4; “For every question that is displayed by the chatbot, the user has to answer before proceeding to the next question in the quiz. When the user answers the question, the answer comparison module is responsible for calculating the score for that question. To look for an exact match between user and expected answers, cosine similarity may be used.” This system will compare the users answers to expected answers. If the user does not answer or answers incorrectly the system will notice this and it will be recorded having a limited or no similarity score.) “wherein the ranked choices help in recommendation of the choice to the user for reviewing and approving the choices when matches their requirement.” (Question Generation, pp. 4; “After these question-answer pairs are returned by the QG system for each target sentence, they are filtered based on the length of the question, as compared to the length of the corresponding answer. If the length of the question is less than half of the length of the answer, there is a high chance that the question may not have enough information to answer. Hence, such pairs are further eliminated. This reduces the occurrence of vague questions such as, What did Louis XVI do?.” This system will rank question to ensure the user is provided with real directed questions which benefit the user, instead of vague questions which are difficult to answer and provide little benefit to the user.) Nair fails to explicitly disclose the remaining elements of this claim. However, Polleri discloses, “wherein relevant and contextual choices are generated for selecting decision response by trained Machine Learning (ML) models using combination of the local knowledge repository and the global knowledge repository in accordance with a plurality of features present in the feature matrix,” (Safe Serialization of the Predicted Pipeline, pp. 23-24, [0266]; "Aspects of the present disclosure provide various techniques (e.g., methods, systems, devices, computer-readable media storing computer-executable instructions used to perform computing functions, etc.) for generating and using machine learning models to predict outcomes of code integration requests. As discussed in more detail below, machine learning models may be generated and trained based on previous code integration requests submitted to and processed by a software architecture authorization system. Based on the machine learning and artificial intelligence-based techniques used, one or more models may be trained which may be developer-specific, project specific, and organization- specific, meaning that trained models may output different outcome predictions, confidence levels, causes, and suggestions depending on the current developer, project, and organization. The machine learning models also may be trained based on specific inputs received in connection with previous code integration requests (e.g., the software library to be integrated, the target source code module, the reason for the code integration requests and/or functionality to be used within the library, etc.). Then, following the generation and training of one or more machine learning models, such models may be used to predict outcomes (e.g., approval or denial for authorization) for a potential code integration request. Such models may also be used to autonomously and independent identify the reasons associated with the predictions (e.g., security vulnerabilities, license incompatibility, etc.), and/or to suggest alternative software libraries that may be integrated instead to provide the desired functionality." The system in this applicant uses machine learning models to evaluate user intent and develop a machine learning model based on their intent. This will use the repositories stated by the user and will use that data to develop the new machine learning model. The generated machine learning model will be developed based on the users' requirements and the constraints of the data given to the system.) Regarding claim 13, Debnath discloses, “wherein the contextual advisory comprises roadmap, blueprint, reference architecture and miscellaneous advisory documents, wherein the contextual advisory is a combination of static document with marked dynamics sections populated based on the decision path of the user.” (An Algorithm for Composite Manifest/Plan Generation, pp. 739; "An interaction with the composer is required at the end of each iteration to confirm with him, whether the service shortlisted by the algorithm is to be added to the manifest. Also, when a service set contains multiple services and only one service needs to be selected, the composer is consulted for his choice in this case. This is done by the SelectServ method which is called from multiple points in Algorithm 1 and it is explained by Algorithm 2. One more place where composer discretion is important, is when ServOT is not null. It means that there is at least one service which is satisfying the output requirements, as intended output, expressed by the composer. The composer needs to confirm if composition has ended, therefore if endComp is true, then Success becomes true and the algorithm ends. The result is a composite manifest which is a sequence of a set of services in a particular order, that achieves the higher objective as intended by the composer." This system will use user data, statements and stated requirements to produce a manifest. This manifest is a sequence of services to be used to develop the proposed Xaas system. The output is a textual roadmap on how to implement the suggested Xaas system.) Regarding claim 14, Dey discloses, “wherein, the feature matrix is a structure to host data on a graph database for comparing the one or more entities and associated information obtained from the global knowledge repository across the plurality of inputs,” (Introduction, pp. 1; “In this paper, we present a novel approach to predict movies in 20Q game using a knowledge graph and a probabilistic learning model that evolves as the game is played and predicts correct movie in less than 20 questions.” This system will use a data structure to store the data and knowledge generated from previous sessions with a user. The Examiner is interpreting the “feature matrix” as a graphical database as stated above.) “wherein the generated feature matrix is updated to keep the data association dynamically refreshed and contextually relevant with evolving technology and changing landscapes at environment,” (Introduction, pp. 1; “The model starts with equal probability for every movie, which changes over subsequent questions. It attains fault tolerance as it re-balances the movies probabilities in a way, that it does not disregard or accept a movie completely after every answer. The question generator poses questions based on three components: (1) Probability from past experience. (2) Probability based on the density of edge connectivity in the knowledge graph. (3) Cumulative probability of movies under a category during the current run (based on player’s responses).” This system will store information learning in training and from previous user session. This will be stored in a data structure, a knowledge graph.) “wherein the text stored corresponding to the property of each entity in the feature matrix is utilized in dynamically generating decision questions for navigating the user through complex decision related with selection of platform,” (Question Generator, pp. 3-4; “The generator is a template-based hierarchically structured model. It traverses the knowledge graph to ask questions based on – learned experiences, the answers it received during the current run and the most likely movies based on scores assigned to each movie. The architecture poses the questions taking into account user-specific data in the primary layers to reduce the size of the most probable set.” This system will store in data and trained information in a data structure. This system will use the stored information to generate questions for the user.) “wherein decision questions are dynamically generated based on the information present in the feature matrix by leveraging advanced NLP techniques thus eliminating manual interventions and making process autonomous,” (Figure 2, pp. 3; This system uses a knowledge graph to dynamically generate questions for the user. This graph contains information from the user’s current session and precious sessions. This figure shows the graph on the left side. This process is automated as well and does not require manual intervention.) Dey fails to explicitly disclose the remaining elements of this claim. However, Debnath discloses, “wherein the answers of decision questions captures the preferences of the user and make the decision for them and enable in selecting the suitable component according to the needs of the user, considers the current landscape or architecture of the user and generates wise tailored decision towards the user, provides explanation on the reason of selection of component.” (Services in Modern Cloud Platforms, pp. 737; "Based upon our study and considerations, we have assumed the following web service description schema, which is further used for our use-case services and consumed by our proposed algorithm. The documentation attributes are: [Name, Category, Description, Tags, #Inputs, #Outputs, lnputDesc, OutputDesc] Here, Name is the service name, Category is the name of the category heading under which a service belongs to. Just like the other platforms, we define our own set of predefined categories. Description is a natural language text summary of the service. We have incorporated the concept of tags in our implementation. The core features of a service can be expressed as multiple number of tags. This benefits in searching for services with at least one matching tag between the requested and the already available services. Therefore, Tags attribute stores the associated tags to a particular web service. #Inputs is the total number of input items accepted by the service and lnputDesc shows the input parameter names with their corresponding data types (whether a string or a number or a date, etc.). #Outputs and OutputDesc are defined similarly in context of service outputs." This system will question the user and then it will gather the information. This information is used to help the user develop an XaaS system based on the user’s inputs.) Conclusion THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a). A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action. Any inquiry concerning this communication or earlier communications from the examiner should be directed to PAUL MICHAEL GALVIN-SIEBENALER whose telephone number is (571)272-1257. The examiner can normally be reached Monday - Friday 8AM to 5PM. 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, Viker Lamardo can be reached at (571) 270-5871. 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. /PAUL M GALVIN-SIEBENALER/Examiner, Art Unit 2147 /ERIC NILSSON/Primary Examiner, Art Unit 2151
Read full office action

Prosecution Timeline

Mar 16, 2023
Application Filed
Jan 21, 2026
Non-Final Rejection mailed — §101, §103
Apr 21, 2026
Response Filed
Jun 18, 2026
Final Rejection mailed — §101, §103 (current)

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

3-4
Expected OA Rounds
29%
Grant Probability
29%
With Interview (+0.0%)
3y 9m (~5m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 7 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month