Answering natural language table queries through semantic table representation
First Claim
1. A method for finding an answer to a query from a table, the method comprising:
- receiving the query and the table, wherein the table is derived from a source document containing the table and a plurality of peripheral context data;
receiving a focus associated with the received query;
receiving the plurality of peripheral context data associated with the table, wherein the received plurality of peripheral context data includes data distinct from the table, and wherein the received plurality of peripheral context data is derived from the source document;
generating a primary tree and a secondary tree based on the received table, wherein the primary tree corresponds with a first column of the received table, and wherein the secondary tree corresponds with a second column of the received table, wherein a primary root node of the primary tree corresponds with a first header value of the first column, wherein a secondary root node of the secondary tree corresponds with a second header value of the second column, wherein a plurality of primary child nodes of the primary tree correspond with a plurality of first column cell values, and wherein a plurality of secondary child nodes of the secondary tree correspond with a plurality of second column cell values, and wherein missing header values are represented by a placeholder value;
generating a hierarchical representation based on the generated primary tree and the generated secondary tree;
mapping the primary tree to the secondary tree;
determining that the primary tree or the secondary tree contains a missing value based on identifying the placeholder value in the primary tree or secondary tree;
determining that the plurality of peripheral context data contains a substitute value based on determining that the primary tree or the secondary tree contains the missing value;
inserting the substitute value from the plurality of peripheral context data in place of the missing value;
determining the received focus is not in the primary tree and secondary tree;
mapping the received focus onto the secondary tree based on determining the received focus is not in the primary tree and secondary tree;
generating a plurality of predicate triples based on the primary tree and the secondary tree;
determining if a predicate triple within the plurality of predicate triples matches the query; and
adding the predicate triple within the plurality of predicate triples to a plurality of candidate answers based on determining that the predicate triple matches the query.
1 Assignment
0 Petitions
Accused Products
Abstract
According to one exemplary embodiment, a method for finding an answer to a query from a table is provided. The method may include receiving the query and the table. The method may also include generating a hierarchical representation based on the received table, whereby the hierarchical representation comprises a primary tree and a secondary tree. The method may then include mapping the primary tree to the secondary tree. The method may further include generating a plurality of predicate triples in a semantic relationship form based on the primary tree and the secondary tree. The method may also include determining if a predicate triple within the plurality of predicate triples matches the query using query-side and table-side context and semantics. The method may then include adding the predicate triple within the plurality of predicate triples to a plurality of candidate answers based on determining that the predicate triple matches the query.
-
Citations
7 Claims
-
1. A method for finding an answer to a query from a table, the method comprising:
-
receiving the query and the table, wherein the table is derived from a source document containing the table and a plurality of peripheral context data; receiving a focus associated with the received query; receiving the plurality of peripheral context data associated with the table, wherein the received plurality of peripheral context data includes data distinct from the table, and wherein the received plurality of peripheral context data is derived from the source document; generating a primary tree and a secondary tree based on the received table, wherein the primary tree corresponds with a first column of the received table, and wherein the secondary tree corresponds with a second column of the received table, wherein a primary root node of the primary tree corresponds with a first header value of the first column, wherein a secondary root node of the secondary tree corresponds with a second header value of the second column, wherein a plurality of primary child nodes of the primary tree correspond with a plurality of first column cell values, and wherein a plurality of secondary child nodes of the secondary tree correspond with a plurality of second column cell values, and wherein missing header values are represented by a placeholder value; generating a hierarchical representation based on the generated primary tree and the generated secondary tree; mapping the primary tree to the secondary tree; determining that the primary tree or the secondary tree contains a missing value based on identifying the placeholder value in the primary tree or secondary tree; determining that the plurality of peripheral context data contains a substitute value based on determining that the primary tree or the secondary tree contains the missing value; inserting the substitute value from the plurality of peripheral context data in place of the missing value; determining the received focus is not in the primary tree and secondary tree; mapping the received focus onto the secondary tree based on determining the received focus is not in the primary tree and secondary tree; generating a plurality of predicate triples based on the primary tree and the secondary tree; determining if a predicate triple within the plurality of predicate triples matches the query; and adding the predicate triple within the plurality of predicate triples to a plurality of candidate answers based on determining that the predicate triple matches the query. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
Specification