×

Method and system for explaining dependencies on a document

  • US 8,032,822 B1
  • Filed: 07/28/2006
  • Issued: 10/04/2011
  • Est. Priority Date: 07/28/2006
  • Status: Active Grant
First Claim
Patent Images

1. A method for reviewing data dependencies in a document comprising:

  • receiving a request for a natural language explanation of a dependent data container in a plurality of data containers, wherein the dependent data container resides within a form;

    analyzing computer code, used to generate the form, to identify at least one precedent data container of the dependent data container;

    generating, from the computer code, a natural language explanation of the dependent data container and a natural language explanation of the at least one precedent data container,wherein the natural language explanation of the dependent data container describes, in sentence form, the computer code corresponding to the dependent data container,wherein the natural language explanation of the at least one precedent data container describes, in sentence form, the computer code corresponding to the at least one precedent data container, andwherein generating the natural language explanation of the dependent data container comprises;

    obtaining an abstract syntax tree from the computer code corresponding to the dependent data container, wherein the abstract syntax tree describes the computer code corresponding to the dependent data container and comprises a plurality of compiled tree structure nodes, wherein each of the plurality of compiled tree structure nodes identifies a portion of the computer code;

    obtaining an explain tree by;

    transforming the plurality of compiled tree structure nodes into a plurality of explain nodes, wherein the transforming the plurality of compiled tree structure nodes comprises for each compiled tree structure node of the plurality of compiled tree structure nodes;



    marking the compiled tree structure node as a current compiled tree structure node;



    identifying a mapping rule corresponding to the current compiled tree structure node, 

    wherein the mapping rule specifies an object type that maps to at least one selected from a group consisting of a plurality of operators and a plurality of parameters, and 

    wherein the mapping rule is identified based on the current compiled tree structure node comprising at least one selected from a group consisting of an operator of the plurality of operators and a parameter of the plurality parameters;



    generating a new explain node of the plurality of explain nodes by instantiating the new explain node as the object type specified by the mapping rule, wherein the new explain node comprises data in the current compiled tree structure node as a member variable; and



    adding the new explain node to a processing stack; and

    storing, in the explain tree, the plurality of explain nodes remaining in the processing stack after the transforming of the plurality of compiled tree structure nodes is complete;

    generating a natural language explanation of each explain node of the plurality of explain nodes in the processing by, for each explain node;

    selecting a template matching the object type of the explain node, andgenerating the natural language explanation of the explain node comprising filler words from the template and the member variable comprised in the explain node; and

    outputting the natural language explanation of each explain node into a natural language, wherein the natural language explanation of the dependent data container comprises the natural language explanation of each explain node in the natural language, anddisplaying the natural language explanation of the dependent data container and the natural language explanation for the at least one precedent data container.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×