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 .
Response to Arguments
Applicant’s arguments with respect to the 35 U.S.C. 101 rejections have been fully considered and are persuasive. The rejection of claims 1-20 under 35 U.S.C. 101 has been withdrawn.
Applicant’s arguments with respect to the prior art rejection of claim(s) 1-20 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Applicant’s amendments necessitated the new grounds of rejection.
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.
Claim(s) 1-9 and 11-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Allen et al. (U.S. Patent Application Pub. No. 2015/0169385, hereinafter “Allen”), in view of Wang et al. (How Do Developers React to RESTful API Evolution?, hereinafter “Wang”).
In regard to claim 1, Allen discloses a computer-implemented method for processing natural language requests, the method comprising:
receiving a natural language request captured at a digital assistant device (Fig. 2, 203, an unstructured query in natural language is received, paragraph [0099]);
obtaining one or more parameters associated with the natural language request, wherein a first parameter of the one or more parameters is extracted or inferred from the natural language request (steps 204-206, the unstructured natural language query is decomposed into semantic NL components and API elements are determined, paragraphs [0100-0104]);
generating a parametrized representation of the natural language request based on the one or more parameters (step 206, a structured API call is constructed using the obtained API elements, paragraphs [0105-0111]); and
transmitting a request to at least one responder based on the parametrized representation, wherein the at least one responder is associated with an API endpoint (step 207, based on the identified URL endpoint, the constructed API call is transmitted to the endpoint, paragraph [0112]),
wherein the one or more parameters comprise an identity of the at least one responder that is to be interacted with to fulfill the natural language request (the URL endpoint to which the constructed API call is submitted, paragraphs [0103] and [0112]), and at least one of:
a type of the natural language request (the API signature matching the requested functionality, paragraphs [0101-0103]),
an identity of one or more target entities and one or more aspects of the one or more target entities to which the natural language request applies (e.g., activities entities with a timeframe aspect of today, paragraph [0055]), or
an indication of how to handle the natural language request (HTTP GET, POST, etc. methods indicate to the endpoint how to process the request, paragraphs [0059-0065]).
While Allen discloses identifying an endpoint associated with the at least one responder, Allen does not expressly disclose the endpoint comprises a domain name.
Wang discloses that most RESTful HTTP requests identify the endpoint with a domain name (section 2.1, a typical RESTful HTTP request includes a domain address of the API server).
The only difference between the claimed invention and Allen is the substitution of a domain name for a generic endpoint identifier. Wang discloses most real-world endpoints are identified by a domain address of the endpoint. One of ordinary skill in the art could have simply substituted a domain name URL as the endpoint address in the invention of Allen, and the result would predictably call the API endpoint identified by the domain name URL. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to therefore to transmit a request to at least one responder wherein the responder was associated with a domain name.
In regard to claim 2, Allen discloses determining a first constituent element of the natural language request (NL components determined from the natural language query, paragraph [0055]); and
mapping the first constituent element to the first parameter (the NL components are mapped to the structured API, paragraph [0055]).
In regard to claim 3, Allen discloses the first constituent element is determined based on a series of requests from a particular user (the structured API call is determined based on a user’s profile and historical requests, paragraph [0119]).
In regard to claim 4, Allen discloses the first constituent element is determined using an artificial intelligence (IBM Watson AI, paragraphs [0102]).
In regard to claim 5, Allen discloses determining a format suitable for interacting with the one or more responders, wherein the parametrized representation is generated in the format suitable for interacting with the one or more responders (the payload format required by the endpoint is determined, paragraph [0103]).
In regard to claim 6, Allen discloses the obtaining one or more parameters associated with the natural language request comprises:
determining that the natural language request requires but does not specify a responder that is to be interacted with to fulfill the natural language request (a user request that is ambiguous as to the responder, paragraphs [0117-0118]); and
determining a default responder that is to be interacted with to fulfill the natural language request (based on the user profile, a default responder such as the last used service is selected, paragraphs [0119] and [0124]).
In regard to claim 7, Allen discloses wherein the one or more parameters associated with the natural language request further comprise at least one of an identity of a user who initiated the natural language request or an identity of an owner of the digital assistant device (the user is identified, paragraphs [0118-0119]).
In regard to claim 8, Allen discloses the first parameter is obtained by parsing and extracting the first parameter from the natural language request (steps 204-206, the unstructured natural language query is decomposed into semantic NL components and API elements are determined, paragraphs [0100-0104]).
In regard to claim 9, Allen discloses the first parameter is obtained based on a user configuration or a responder configuration (user profile, paragraphs [0118-0119]).
In regard to claim 11, Allen discloses the natural language request specifies information to be retrieved in association with a target entity (get activities, paragraph [0065]).
In regard to claim 12, Allen discloses the natural language request specifies an action to be performed in association with a target entity (post activities, paragraph [0065]).
In regard to claim 13, Allen discloses a non-transitory computer readable media storing instructions that, when executed by one or more processors, cause the one or more processors to process natural language requests (paragraph [0132]) by performing the steps of:
receiving a natural language request captured at a digital assistant device (Fig. 2, 203, an unstructured query in natural language is received, paragraph [0099]);
obtaining one or more parameters associated with the natural language request, wherein a first parameter of the one or more parameters is extracted or inferred from the natural language request (steps 204-206, the unstructured natural language query is decomposed into semantic NL components and API elements are determined, paragraphs [0100-0104]);
generating a parametrized representation of the natural language request based on the one or more parameters (step 206, a structured API call is constructed using the obtained API elements, paragraphs [0105-0111]); and
transmitting a request to at least one responder based on the parametrized representation, wherein the at least one responder is associated with an API endpoint (step 207, based on the identified URL endpoint, the constructed API call is transmitted to the endpoint, paragraph [0112]),
wherein the one or more parameters comprise an identity of the at least one responder that is to be interacted with to fulfill the natural language request (the URL endpoint to which the constructed API call is submitted, paragraphs [0103] and [0112]), and at least one of:
a type of the natural language request (the API signature matching the requested functionality, paragraphs [0101-0103]),
an identity of one or more target entities and one or more aspects of the one or more target entities to which the natural language request applies (e.g., activities entities with a timeframe aspect of today, paragraph [0055]), or
an indication of how to handle the natural language request (HTTP GET, POST, etc. methods indicate to the endpoint how to process the request, paragraphs [0059-0065]).
While Allen discloses identifying an endpoint associated with the at least one responder, Allen does not expressly disclose the endpoint comprises a domain name.
Wang discloses that most RESTful HTTP requests identify the endpoint with a domain name (section 2.1, a typical RESTful HTTP request includes a domain address of the API server).
The only difference between the claimed invention and Allen is the substitution of a domain name for a generic endpoint identifier. Wang discloses most real-world endpoints are identified by a domain address of the endpoint. One of ordinary skill in the art could have simply substituted a domain name URL as the endpoint address in the invention of Allen, and the result would predictably call the API endpoint identified by the domain name URL. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to therefore to transmit a request to at least one responder wherein the responder was associated with a domain name.
In regard to claim 14, Allen discloses determining a first constituent element of the natural language request (NL components determined from the natural language query, paragraph [0055]); and
mapping the first constituent element to the first parameter (the NL components are mapped to the structured API, paragraph [0055]).
In regard to claim 15, Allen discloses the first constituent element is determined based on a series of requests from a particular user (the structured API call is determined based on a user’s profile and historical requests, paragraph [0119]).
In regard to claim 16, Allen discloses the first constituent element is determined using an artificial intelligence (IBM Watson AI, paragraphs [0102]).
In regard to claim 17, Allen discloses determining a format suitable for interacting with the one or more responders, wherein the parametrized representation is generated in the format suitable for interacting with the one or more responders (the payload format required by the endpoint is determined, paragraph [0103]).
In regard to claim 18, Allen discloses the obtaining one or more parameters associated with the natural language request comprises:
determining that the natural language request requires but does not specify a responder that is to be interacted with to fulfill the natural language request (a user request that is ambiguous as to the responder, paragraphs [0117-0118]); and
determining a default responder that is to be interacted with to fulfill the natural language request (based on the user profile, a default responder such as the last used service is selected, paragraphs [0119] and [0124]).
In regard to claim 19, Allen discloses wherein the one or more parameters associated with the natural language request further comprise at least one of an identity of a user who initiated the natural language request or an identity of an owner of the digital assistant device (the user is identified, paragraphs [0118-0119]).
In regard to claim 19, Allen discloses a system for processing natural language requests (Fig. 4, 400), comprising:
a memory storing instructions (RAM, ROM, etc., paragraph [0139]); and
a processor executing the instructions (404, paragraph [0139]) to perform the steps of:
receiving a natural language request captured at a digital assistant device (Fig. 2, 203, an unstructured query in natural language is received, paragraph [0099]);
obtaining one or more parameters associated with the natural language request, wherein a first parameter of the one or more parameters is extracted or inferred from the natural language request (steps 204-206, the unstructured natural language query is decomposed into semantic NL components and API elements are determined, paragraphs [0100-0104]);
generating a parametrized representation of the natural language request based on the one or more parameters (step 206, a structured API call is constructed using the obtained API elements, paragraphs [0105-0111]); and
transmitting a request to at least one responder based on the parametrized representation, wherein the at least one responder is associated with an API endpoint (step 207, based on the identified URL endpoint, the constructed API call is transmitted to the endpoint, paragraph [0112]),
wherein the one or more parameters comprise an identity of the at least one responder that is to be interacted with to fulfill the natural language request (the URL endpoint to which the constructed API call is submitted, paragraphs [0103] and [0112]), and at least one of:
a type of the natural language request (the API signature matching the requested functionality, paragraphs [0101-0103]),
an identity of one or more target entities and one or more aspects of the one or more target entities to which the natural language request applies (e.g., activities entities with a timeframe aspect of today, paragraph [0055]), or
an indication of how to handle the natural language request (HTTP GET, POST, etc. methods indicate to the endpoint how to process the request, paragraphs [0059-0065]).
While Allen discloses identifying an endpoint associated with the at least one responder, Allen does not expressly disclose the endpoint comprises a domain name.
Wang discloses that most RESTful HTTP requests identify the endpoint with a domain name (section 2.1, a typical RESTful HTTP request includes a domain address of the API server).
The only difference between the claimed invention and Allen is the substitution of a domain name for a generic endpoint identifier. Wang discloses most real-world endpoints are identified by a domain address of the endpoint. One of ordinary skill in the art could have simply substituted a domain name URL as the endpoint address in the invention of Allen, and the result would predictably call the API endpoint identified by the domain name URL. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to therefore to transmit a request to at least one responder wherein the responder was associated with a domain name.
Claim(s) 10 is/are rejected under 35 U.S.C. 103 as being unpatentable over Allen, in view of Wang, and further in view of Bilange et al. (U.S. Patent Application Pub. No. 2014/0280335, hereinafter “Bilange”).
In regard to claim 10, Allen discloses the first parameter is obtained by inference (required attributes are determined using pre-programmed intuition, paragraph [0107]), but Allen and Wang do not expressly disclose the inference is based on a location of the digital assistant device.
Bilange discloses a method for identifying a web server in response to a natural language query, wherein a first parameter is obtained by inference based on a location of the digital assistant device (a domain or IP address is determined based on a natural language query and the location of a user device, paragraph [0028]).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to obtain the first parameter by inference based on a location of the digital assistant device, because the location would help to determine the most appropriate response to the natural language query, as taught by Bilange (paragraph [0028]).
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). 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 BRIAN LOUIS ALBERTALLI whose telephone number is (571)272-7616. The examiner can normally be reached M-F 8AM-3PM, 4PM-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, Bhavesh Mehta can be reached at 571-272-7453. 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.
BLA 8/28/26
/BRIAN L ALBERTALLI/Primary Examiner, Art Unit 2656