IP Library Granted Patent US 9,594,737
Granted Patent B2
US 9,594,737 · App. 14/101,004 · Granted Mar 14, 2017

Natural language-aided hypertext document authoring

Inventor: Stephen Wolfram (Concord, MA)
Assignee: Wolfram Alpha LLC
G06F17/24G06F17/2247G06F17/27G06F17/3089G06F17/30943
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,594,737
App. No.
14/101,004
Granted
Mar 14, 2017
Kind
B2
Abstract

Natural language (NL) processing of NL commands is performed to determine one or more of (i) content to be included in a hypertext document, (ii) a layout for the hypertext document, or (iii) parameters corresponding to behavior of the hypertext document. Performing the NL processing includes: determining assumptions concerning one or both of (a) ambiguities associated with the NL commands or (b) information necessary for creating the hypertext document not specified by the NL commands. The assumptions correspond to the one or more of (i) content to be included in the hypertext document, (ii) the layout for the hypertext document, or (iii) the parameters corresponding to behavior of the hypertext document. Hypertext document code or data for displaying the hypertext document is generated based on the NL processing of the NL commands including the determined assumptions.

Claims (79)

1. A method of creating or modifying a hypertext document, comprising:

(A) receiving, at one or more computer processors, natural language (NL) commands describing one or more of (i) content of the hypertext document, (ii) a layout of the hypertext document, or (iii) behavior of the hypertext document;

(B) performing, at one or more computer processors, NL processing of the NL commands to determine one or more of (i) content to be included in the hypertext document, (ii) a layout for the hypertext document, or (iii) parameters corresponding to behavior of the hypertext document, wherein performing the NL processing includes:

determining, at one or more computer processors, assumptions concerning (a) ambiguities associated with the NL commands and (b) information necessary for creating the hypertext document not specified by the NL commands, wherein the assumptions correspond to the one or more of (i) content to be included in the hypertext document, (ii) the layout for the hypertext document, or (iii) the parameters corresponding to behavior of the hypertext document; and

generating, at one or more computer processors, hypertext document code or data for displaying the hypertext document, wherein generating the hypertext document code or data is based on the NL processing of the NL commands including the determined assumptions; and

(C) analyzing, at one or more computer processors, existing hypertext document data; and

(D) modifying, using one or more computer processors, the existing hypertext document data based on one or both of (i) the NL processing of the NL commands and (ii) the determined assumptions.

2. The method of claim 1 , further comprising:

creating, using one or more computer processors, the hypertext document.

3. The method of claim 1 , further comprising:

generating, at one or more computer processors, a request for content based on NL processing of an NL command;

sending, via a communication network, the request to an external system; and

receiving, at one or more computer processors, a response to the request;

wherein generating hypertext document code or data includes using information in the response to the request.

4. The method of claim 1 , further comprising:

generating, at one or more computer processors, a request for NL processing of at least a portion of an NL command;

sending, via a communication network, the request to an external system; and

receiving, at one or more computer processors, a response to the request;

wherein performing NL processing of the NL commands includes using information in the response to the request.

5. The method of claim 1 , wherein generating hypertext document code comprises:

selecting a type of hypertext document code from a plurality of alternative types of hypertext document code; and

generating the hypertext document code according to the selected type.

6. A system for creating a hypertext document, comprising:

one or more processors and one or more memories storing machine-readable instructions which, when executed by the one or more processors, cause the one or more processors:

(A) to receive natural language (NL) commands describing one or more of (i) content of the hypertext document, (ii) a layout of the hypertext document, or (iii) behavior of the hypertext document;

(B) to process the NL commands to generate expressions in a precise syntax;

(C) to generate hypertext document data and code based on the expressions, wherein the generation of hypertext data and code includes determining:

assumptions concerning (a) ambiguities associated with the NL commands and (b) information necessary for creating the hypertext document not specified by the NL commands, wherein the assumptions correspond to the one or more of (i) content to be included in the hypertext document, (ii) the layout for the hypertext document, or (iii) the parameters corresponding to behavior of the hypertext document,

based on the expressions generated by the NL processing module and the assumptions, one or more of (i) content to be included in the hypertext document, (ii) a layout for the hypertext document, or (iii) parameters corresponding to behavior of the hypertext document; and

hypertext code and/or data to (i) add the determined content to the hypertext document, (ii) create or modify the hypertext document according to the determined layout, and/or (iii) create or modify the hypertext document according to the determined parameters;

(D) to write hypertext document data and code to a file;

(E) to analyze existing hypertext document data and code in the file; and

(F) to modify the existing hypertext document code and data in the file based on one or both of (i) the NL processing of the NL commands and (ii) the determined assumptions.

7. The system of claim 6 , wherein the one or more memories storing machine-readable instructions, when executed by the one or more processors, cause the one or more processors to map NL commands to hypertext code and/or data.

8. The system of claim 6 , wherein the one or more memories storing machine-readable instructions, when executed by the one or more processors, cause the one or more processors to:

generate a request for content based on NL processing of an NL command;

send the request to an external system;

receive a response to the request; and

use information in the response to the request to generate hypertext document code or data includes.

9. The system of claim 6 , wherein the one or more memories storing machine-readable instructions, when executed by the one or more processors, cause the one or more processors to:

generate a request for NL processing of at least a portion of an NL command;

send the request to an external system;

receive a response to the request; and

use information in the response to the request to perform NL processing of the NL commands includes.

10. The method of claim 6 , wherein the one or more memories storing machine-readable instructions, when executed by the one or more processors, cause the one or more processors to:

select a type of hypertext document code from a plurality of alternative types of hypertext document code; and

generate the hypertext document code according to the selected type.

11. A tangible, non-transitory computer readable medium or media storing instruction thereon that, when executed by one or more computer processors, cause the one or more computer processors to:

(A) receive natural language (NL) commands describing one or more of (i) content of the hypertext document, (ii) a layout of the hypertext document, or (iii) behavior of the hypertext document;

(B) perform NL processing of the NL commands to determine one or more of (i) content to be included in the hypertext document, (ii) a layout for the hypertext document, or (iii) parameters corresponding to behavior of the hypertext document, wherein performing the NL processing includes:

determining assumptions concerning (a) ambiguities associated with the NL commands and (b) information necessary for creating the hypertext document not specified by the NL commands, wherein the assumptions correspond to the one or more of (i) content to be included in the hypertext document, (ii) the layout for the hypertext document, or (iii) the parameters corresponding to behavior of the hypertext document; and

generating hypertext document code or data for displaying the hypertext document, wherein generating the hypertext document code or data is based on the NL processing of the NL commands including the determined assumptions; and

(C) analyze, at one or more computer processors, existing hypertext document data; and

(D) modify, using one or more computer processors, the existing hypertext document data based on one or both of (i) the NL processing of the NL commands and (ii) the determined assumptions.

12. A method of modifying a hypertext document, comprising:

(A) receiving, at one or more computer processors, natural language (NL) commands describing one or more of (i) a change of content of the hypertext document, (ii) a change of layout of the hypertext document, or (iii) a change of behavior of the hypertext document;

(B) performing, at one or more computer processors, NL processing of the NL commands to determine one or more of (i) content to be included in the hypertext document or content in the hypertext document to be modified, (ii) a change to a layout of the hypertext document, or (iii) a change of parameters corresponding to behavior of the hypertext document, wherein performing the NL processing includes:

determining, at one or more computer processors, assumptions concerning (a) ambiguities associated with the NL commands and (b) information necessary for modifying the hypertext document not specified by the NL commands, wherein the assumptions correspond to the one or more of (i) content to be included in the hypertext document or content in the hypertext document that is to be modified, (ii) the change of the layout for the hypertext document, or (iii) the change of the parameters corresponding to behavior of the hypertext document; and

generating, at one or more computer processors, hypertext document code or data for displaying the hypertext document, wherein generating the hypertext code or data is based on the NL processing of the NL commands including the determined assumptions; and

(C) analyzing, at one or more computer processors, existing hypertext document data; and

(D) modifying, using one or more computer processors, hypertext document code or data in the hypertext document, wherein modifying the hypertext document code or data is based on the NL processing of the NL commands including the determined assumptions.

13. A system for creating a hypertext document, comprising:

one or more processors and one or more memories storing machine-readable instructions which, when executed by the one or more processors, cause the one or more processors:

(A) to receive natural language (NL) commands describing one or more of (i) a change of content of the hypertext document, (ii) a change of layout of the hypertext document, or (iii) a change of behavior of the hypertext document;

(B) to process the NL commands to generate expressions in a precise syntax; and

(C) to generate hypertext document data and code based on the expressions, wherein the generation of hypertext data and code includes determining:

assumptions concerning (a) ambiguities associated with the NL commands and (b) information necessary for modifying the hypertext document not specified by the NL commands, wherein the assumptions correspond to the one or more of (i) content to be included in the hypertext document or content in the hypertext document that is to be modified, (ii) the change of the layout for the hypertext document, or (iii) the change of the parameters corresponding to behavior of the hypertext document,

based on the expressions generated by the NL processing module and the assumptions, one or more of (i) content to be included in the hypertext document or content in the hypertext document to be modified, (ii) a change in the layout of the hypertext document, or (iii) changes in parameters corresponding to behavior of the hypertext document; and

hypertext code and/or data to (i) add determined content to the hypertext document or modify existing content, (ii) modify the hypertext document according to the determined change in the layout, and/or (iii) modify parameters in the hypertext document according to the determined changes in parameters;

(D) to write hypertext document data and code to a file;

(E) to analyze existing hypertext document data and code in the file; and

(F) to modify the existing hypertext code and data in the file based on one or both of (i) the NL processing of NL commands and (ii) the determined assumptions.

14. A tangible, non-transitory computer readable medium or media storing instruction thereon that, when executed by one or more computer processors, cause the one or more computer processors to:

(A) receive natural language (NL) commands describing one or more of (i) a change of content of the hypertext document, (ii) a change of layout of the hypertext document, or (iii) a change of behavior of the hypertext document;

(B) perform NL processing of the NL commands to determine one or more of (i) content to be included in the hypertext document or content in the hypertext document to be modified, (ii) a change to a layout of the hypertext document, or (iii) a change of parameters corresponding to behavior of the hypertext document, wherein performing the NL processing includes:

determining assumptions concerning (a) ambiguities associated with the NL commands and (b) information necessary for modifying the hypertext document not specified by the NL commands, wherein the assumptions correspond to the one or more of (i) content to be included in the hypertext document or content in the hypertext document that is to be modified, (ii) the change of the layout for the hypertext document, or (iii) the change of the parameters corresponding to behavior of the hypertext document; and

generating hypertext document code or data for displaying the hypertext document, wherein generating the hypertext document code or data is based on the NL processing of the NL commands including the determined assumptions; and

(C) analyze existing hypertext document data; and

(D) modify hypertext document code or data in the hypertext document, wherein modifying the hypertext document code or data is based on the NL processing of the NL commands including the determined assumptions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 28, 2014
From: WOLFRAM, STEPHEN
To: WOLFRAM ALPHA LLC
Reel/Frame 032769/0171 →
Continuity (1)
Related Publication 20150161085A1 · Jun 11, 2015