WO2007005730A2 - System and method of making unstructured data available to structured data analysis tools - Google Patents

System and method of making unstructured data available to structured data analysis tools Download PDF

Info

Publication number
WO2007005730A2
WO2007005730A2 PCT/US2006/025811 US2006025811W WO2007005730A2 WO 2007005730 A2 WO2007005730 A2 WO 2007005730A2 US 2006025811 W US2006025811 W US 2006025811W WO 2007005730 A2 WO2007005730 A2 WO 2007005730A2
Authority
WO
WIPO (PCT)
Prior art keywords
data
tools
unstructured
analysis
structured
Prior art date
Application number
PCT/US2006/025811
Other languages
French (fr)
Other versions
WO2007005730B1 (en
WO2007005730A3 (en
Inventor
Justin Langseth
Nithi Vivitrat
Gene Sohn
Original Assignee
Clarabridge, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Clarabridge, Inc. filed Critical Clarabridge, Inc.
Priority to EP06774414.4A priority Critical patent/EP1899855B1/en
Publication of WO2007005730A2 publication Critical patent/WO2007005730A2/en
Publication of WO2007005730A3 publication Critical patent/WO2007005730A3/en
Publication of WO2007005730B1 publication Critical patent/WO2007005730B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/912Applications of a database

Definitions

  • the present invention is directed generally to software for data analysis and specifically to a middleware software system that allows structured data tools to operate on unstructured data.
  • Entity extraction tools search unstructured text for specific types of entities (people, places, organizations). These tools identify in which documents the terms were found. Some of these tools can also extract relationships between the identities. Entity extraction tools are typically used to answer questions such as “what people are mentioned in a specific document?” “what organizations are mentioned in the specific document?” and “how are the mentioned people related to the mentioned organizations?”
  • Enterprise content/knowledge management tools are used to organize documents into folders and to share information. They also provide a single, one-stop access point to look for information. Enterprise tools can be used to answer questions such as "what documents do I have in a folder on a particular terrorist group?" and "who in my organization is responsible for tracking information relating to a particular terrorist group?"
  • Enterprise search and categorization tools allow key word searching, relevancy ranking, categorization by taxonomy, and guided navigation. These tools are typically used to find links to sources of information. Example questions such tools can answer include "show me links to documents containing the name of a particular terrorist" and
  • Document management tools are used to organize documents, control versioning and permissioning, and to control workflow. These tools typically have basic search capabilities. Document management tools can used to answer questions such as "where are my documents from a particular analysis group?" and "which documents have been put in a particular folder?"
  • structured data In contrast to unstructured or freeform information, structured data is organized with very definite relationships between the various data. These relationships can be exploited by structured data analysis tools to provide valuable insights into the operation of a company or organization and to guide management into making more intelligent decisions. Structured data analysis tools include (1) business intelligence tools, (2) statistical analysis tools, (3) visualizations tools, and (4) data mining tools.
  • Business intelligence tools include dashboards, the ability to generate reports, ad- hoc analysis, drill-down, and slice and dice. These tools are typically used to analyze how data is changing over time. They also have the ability to see how products or other items are related to each other. For example, a store manager can select an item and query what other items are frequently purchased with that item.
  • Statistical analysis tools can be used to detect fraud, check quality control, fit-to- pattern analysis, and optimization analysis. Typical questions these tools are used to answer include “what is the average daily network traffic and standard deviation?" “what combination of factors typically indicate fraud?" “How can I minimize risk of a financial portfolio?” and "which of my customers are the most valuable?”
  • 3651272vl Visualization tools are designed to display data graphically, especially in conjunction with maps. With these tools one can visually surf and/or navigate though their data, overlay and evaluate data on maps with a geographic information system (GIS), and perform link and relationship analysis. These tools can be used, for example, to show trends and visually highlight anomalies, show a map color-coded by crime rate and zip code, or answer the question "who is connected by less than 3 links to a suspicious group?"
  • GIS geographic information system
  • Data mining tools are typically used for pattern detection, anomaly detection, and data prediction. Example question that can be addressed with these tools are “what unusual patterns are present in my data?" “which transactions may be fraudulent?" and “which customers are likely to become high- value in the next 12 months?"
  • the present invention provides a system and method making unstructured data available to structured data tools.
  • the invention provides middleware software system that can be used in combination with structured data tools to perform analysis on both structured and unstructured data.
  • the invention can read data from a wide variety of unstructured sources. This data may then be transformed with commercial data transformation products that may, for example, extract individual pieces of data and determine relationships between the extracted data.
  • the transformed data and relationships may then be passed through an extraction/transform/load (ETL) layer and placed in a structured schema.
  • ETL extraction/transform/load
  • the structured schema may then be made available to commercial or proprietary structured data analysis tools.
  • One embodiment of the present invention provides a method of making unstructured data available to structured data tools comprising accessing a source of unstructured data; extracting the unstructured data; writing the extracted unstructured data to a capture schema; sending the unstructured data to a transformation tool; transforming the unstructured data with the transformation tool; writing the transformed parsed
  • 3651272vl unstructured data in a structured analysis schema providing data connectors that allow structured data analysis tools to access the structured analysis schema.
  • extracting includes parsing the unstructured data and associating the data source with the parsed unstructured data.
  • the transformation tool extracts individual pieces of data and performs text and/or data processing activities.
  • the text and data processing activities include: determining the topic of a section of text, extracting a section of text from a whole document, matching names, or matching addresses.
  • the structured data tools include business intelligence, statistical analysis, data visualization and mapping, or data mining.
  • the source of unstructured data includes email, word processing documents, spreadsheets, presentation materials, PDF files, web pages, news/media reports, case files, transcriptions, file servers, web servers, enterprise content, enterprise search tool repositories, intranets, knowledge management systems, or document management systems.
  • the transformation tool includes: (i) entity, concept and relationship tagging and extraction tools, (ii) categorization and topic extraction tools, (iii) data matching tools or, (iv) custom transformations.
  • the present invention provides a system for making unstructured data available to structured data tools comprising code to access a source of unstructured data; code to extract the unstructured data; code to write the extracted unstructured data to a capture schema; code to send the unstructured data to a transformation tool; code to transform the unstructured data with the transformation tool; code to write the transformed parsed unstructured data in a structured analysis schema; code to provide data connectors that allow structured data analysis tools to access the structured analysis schema.
  • the code to extract includes code to parse the unstructured data and associate the data source with the parsed unstructured data.
  • transformation tool extracts individual pieces of data and performs text and/or data processing activities.
  • the text and data processing activities include: determining the topic of a section of text, extracting a section of text from a whole document, matching names, or matching addresses.
  • the structured data tools include business intelligence,
  • the source of unstructured data includes email, word processing documents, spreadsheets, presentation materials, PDF files, web pages, news/media reports, case files, transcriptions, file servers, web servers, enterprise content, enterprise search tool repositories, intranets, knowledge management systems, or document management systems.
  • the transformation tool includes: (i) entity, concept and relationship tagging and extraction tools, (ii) categorization and topic extraction tools, (iii) data matching tools or, (iv) custom transformations.
  • the present invention provides an extraction service for extracting unstructured data from a plurality of unstructured data sources and a plurality of formats comprising a plurality of APIs to interface with the plurality of unstructured data sources; and a single internal API that interfaces with a plurality of software components that allow structured data analysis tools to operate on unstructured data.
  • the plurality of unstructured data sources includes email, word processing documents, spreadsheets, presentation materials, PDF files, web pages, news/media reports, case files, transcriptions, file servers, web servers, enterprise content, enterprise search tool repositories, intranets, knowledge management systems, and document management systems.
  • the present invention provides a transformation connector comprising code capable of understanding the format of data provided by a transformation tool; and code to convert the data provided by a transformation tool to a data format that maps to a data capture schema, the data capture schema comprising; a table to store data extracted from a plurality of source documents having unstructured data; and a table to store information about the extracted data, wherein the plurality of documents are assigned a unique key that identifies the document throughout a software system allowing (i) cross- analysis, (ii) linking of results for further analysis, (iii) drill-down from analytical reports back to the source documents, or (iv) drill-down from analytical reports back to transformation information stored in the schema.
  • the transformation tool includes: (i) entity, concept and relationship tagging and extraction tools, (ii) categorization and topic extraction tools,
  • the code to convert the data comprises at least one XSL transform.
  • the present invention provides a core server comprising code to allow parallel processing of unstructured data on a continuous real-time basis, wherein the code is adapted to configure unstructured source extractors and treat them as black boxes in a data workflow; the code is adapted to extract unstructured text from a plurality of data sources and source systems, the extracted unstructured text available for input for further processing; the code is adapted to configure end-to-end data flow from the plurality of data sources through one or more transformation components into a capture schema and into an analysis schema for analysis by structured data analysis tools; the code is adapted to retain a single key for each data source, the key being associated with data generated by the transformation components; and the code is adapted to store all extracted unstructured text, metadata and transformation data in a single schema.
  • the code is adapted to use a drag and drop data editor.
  • the present invention provides a structured data connector that allows structured data analysis tools to analyze data in an analysis schema comprising ODBC code; JDBC code; and code to pre-populate metadata of the structured data analysis tools with tables, columns, attributes, data and metrics from an analysis schema without performing tool customization or application specific setup.
  • the structured data connector further comprises pre- built reports, graphs and dashboards.
  • the structured data connector further comprises embedded hyperlinks that allow drill-through to underlying data sources.
  • the hyperlinks include a document ID, entity ID, or relationship ID from the analysis schema.
  • the structured data connector further comprises a source highlighter, the source highlighter adapted to access a capture schema and retrieve a source document or a section of a source document, hi another aspect of the invention, the source highlighter is adapted to retrieve start and end character positions, and to scroll down and highlight a relevant sentence in a retrieved source document or in a retrieved section of a source document.
  • Fig. 1 is a schematic diagram of the system overview of an embodiment of the invention.
  • Fig. 2 is a schematic diagram of the system architecture of an embodiment of the invention.
  • Fig. 3 is a flow diagram of an embodiment of the process steps based upon the system of Figure 2.
  • Fig. 4 is a schematic diagram of a capture schema of an embodiment of the invention.
  • Fig. 5 is a schematic diagram of an analysis schema of an embodiment of the invention.
  • Fig. 6 is a screen capture of a report generated by an embodiment of the invention.
  • Fig. 7 is another screen capture of a report generated by an embodiment of the invention.
  • Fig. 8 is another screen capture of a report generated by an embodiment of the invention.
  • Fig. 9 is another screen capture of a report generated by an embodiment of the invention.
  • Fig. 10 is a screen capture illustrating a feature of one embodiment of the invention.
  • the present invention is directed to a middleware software system to make unstructured data available to structured data analysis tools.
  • the middleware software system can be used in combination with structured data analysis tools and methods to perform structured data analysis using both structured and unstructured data.
  • the invention can read data from a wide variety of unstructured sources. This data may then be transformed with commercial data transformation products that may, for example, extract individual pieces of data and determine relationships between the extracted data.
  • the transformed data and relationships are preferably stored in a capture schema, discussed in more detail below.
  • the transformed data and relationships may be then passed through an extraction/transform/load (ETL) layer that extracts and preferably loads the data and relationships in a structured analysis schema, also discussed in more detail below.
  • Structured connectors according to one embodiment of the invention provide structured data analysis tools access to the structured analysis schema.
  • the present invention enables analysis of unstructured data that is not possible with existing data analysis tools.
  • the present invention allows, inter alia, (i) multi-dimensional analysis, (ii) time-series analysis, (iii) ranking analysis, (iv) market- basket analysis and, (v) anomaly analysis.
  • Multi-dimensional analysis allows the user to filter and group unstructured data. It also allows drill down into dimensions and the ability to drill across to other dimensions.
  • Time-series analysis allows the user to analyze the genesis of concepts and organizations over time and to analyze how things have increased or decreased over time.
  • Ranking analysis allows the user to rank and order data to determine the highest performing or lowest performing thing being evaluated. It also allows the user to focus analysis on the most critical items.
  • Market-basket analysis allows the user to determine what items or things go with other items or things. It also can allow the user to find unexpected relationships between items. Anomaly analysis allows the user to determine if new events fit historical profiles or it can be used to analyze an unexpected absence or disappearance.
  • FIG. 1 illustrates a schematic of a system overview of one embodiment of the invention.
  • this embodiment constitutes middleware software system 100. That is, this embodiment allows unstructured data 210 to be accessed and used by structured data tools 230. With this embodiment of the invention, business can use their existing structured data tools 230 to analyze essentially all of their various sources of unstructured data, resulting in a more robust analytic capability.
  • the unstructured data 210 that can be read by this embodiment of the invention includes, but is not limited to, emails, Microsoft OfficeTM documents, Adobe PDF files, text in CRM and ERP applications, web pages, news, media reports, case files, and transcriptions.
  • Sources of unstructured data include, but are not limited to, (i) file servers; (ii) web servers; (ii) enterprise, content, management, and intranet portals; (iii) enterprise search tool repositories; (iv) knowledge management systems; and (v) DocumentumTM and other document management systems.
  • the structured data tools 230 include but are not limited to, business intelligence tools, statistical analysis tools, data visualization and mapping tools, and data mining tools. Additionally, custom structured data and analysis tools 230 may be developed and easily integrated with this embodiment of the invention.
  • the middleware software system 100 of the present embodiment of the invention may also be adapted to access transformation components 220 capable of parsing the unstructured data 210.
  • the transformation components 220 can for example, be used to extract entity and relationship information from the unstructured data 210.
  • Transformation components 220 include but are not limited to: (i) entity, concept and relationship tagging and extraction tools; (ii) categorization and topic extraction tools, (iii) data matching tools, and (iv) custom transformers.
  • FIG. 2 A preferred embodiment of the complete system architecture of middleware software system 100 is illustrated in Figure 2.
  • This embodiment includes extraction connectors 101 and extraction services 102 for accessing the unstructured data 210. It also includes a capture schema 103 that holds all of the unstructured data 210.
  • This embodiment further includes a core server 104 that coordinates the processing of data, unstructured 210 and structured, throughout the middleware software system 100.
  • This embodiment also includes transformation services 105 and transformation connectors 106 that handle passing unstructured data 210 to and from the transformation components 220.
  • the middleware software system 100 includes an extraction/transform/load
  • 3651272vl layer 107 in which the unstructured data 210 is structured and then written into a structured analysis schema 108.
  • Web service 109 and structured analysis connectors 110 provide structured data tools 230 access to the data in the analysis schema 108.
  • unstructured data 210 is accessed by the extraction services 102 through the extraction connectors 101.
  • the extraction connectors 101 parse the unstructured data 210 while also associating the source document with the unstructured data.
  • the parsed unstructured data is sent to the capture schema 103 and then preferably sent to one or more commercial, open source, or custom developed transformation components 220 capable of extracting individual pieces of data from unstructured text, determining the topic of a section, extracting a section of text from a whole document, matching names and addresses, and other text and data processing activities.
  • the unstructured data 210 is sent to the one or more commercial, open source, or custom-developed transformation components 220 via the transformation service 105 and the transformation connectors 106.
  • the extracted data may then be added to data already present in the capture schema 103.
  • the data in the capture schema 103 may then be processed by the extraction/transform/load layer 107.
  • the extraction/transform/load layer 107 structures the data and then stores it in the analysis schema 108.
  • Data from the analysis schema 108 may then be passed through the structured analysis connectors 110 to one or more commercial structured data analysis tools 230.
  • the core server 111 manages and coordinates this entire data flow process and marshals the data and associated and generated metadata all the way from the various sources of data all the way through the various transformation components 220 to the schemas 103, 108 and to the analysis tools 230.
  • the middleware software system 100 of the present embodiment enables structured data analysis tools 230 to analyze unstructured data 210 along with structured data. It is composed of several software modules, each of which includes features that distinguish the middleware software system 100 from existing software tools used for analyzing unstructured data 210.
  • the extraction services 102 use a single application program interface (API) that interfaces with the various sources of unstructured data.
  • API application program interface
  • the API can be used to access and extract document text and metadata, such as author, date, size, about
  • each source of unstructured data 210 has its own API.
  • Prior art tools that interfaced with multiple sources of unstructured data 210 commonly had a corresponding API for each source of data.
  • the single API of the extraction services 102 of the present invention can interface with numerous sources of unstructured data including (i) file servers; (ii) web servers; (ii) enterprise, content, management, and intranet portals; (iii) enterprise search tool repositories; (iv) knowledge management systems; and (v) DocumentumTM.
  • the single API of the extraction services 102 can interface with scanned and OCRed (optical character recognition) paper files.
  • the single API can interface with all of the internal modules of the middleware software system 100 as well as the various structured data analysis tools 230. This allows the sources to be treated as a "black box" by the rest of the middleware software system 100 components.
  • the extraction connectors 101 process text, data, and metadata that are returned from the unstructured source systems 230 as a result of the requests from the extraction services 102. Additionally, the extraction connectors 101 load the results into the capture schema 103.
  • the extraction connectors 101 convert the various outputs from the various unstructured source systems into a consistent schema and format for loading into the capture schema 103.
  • the extraction connectors 101 also process the various pieces of metadata that are extracted from the source systems into a common metadata format.
  • a unique index key is assigned to each extracted source document 210, which allows it to be consistently tracked as it moves through the rest of the middleware software system 100. This key, and the associated metadata stored regarding the source location of the text, also provides the ability to link back to the original text when desired during the course of analysis. No currently available software can take unstructured data 210 from a variety of sources and put them into a consistent schema, nor process various pieces of metadata that are extracted from multiple source systems into a common metadata format.
  • the transformation services 105 manage the process of taking the collected unstructured data 210 and passing it through one or more custom, open source, or commercial transformation components 220.
  • the transformation components 220 provide a variety of value-added data transformation, data extraction, and data matching activities.
  • the results of one or more transformations may serve as an input to downstream
  • the transformation services 105 may be run by the core server 104 in a coordinated workflow process. Similar to the extraction services 102, the transformation services 105 provide a common API to a wide variety of custom, open source, and commercial unstructured data transformation technologies, while serving a as "black box" abstraction to the rest of the middleware software system 100.
  • the transformation connectors 106 process the output of the various transformation components 220 and convert the output into a consistent format that then may be loaded into the capture schema 103. It maps the widely variant output from a wide variety of unstructured and structures data transformation components 220 into a common consistent format, while preferably also retaining complete metadata and links back to the original source data. This allows tracability from the end user's analysis back through the transformations that took place and from there back to the original source of the unstructured data 210.
  • the transformation connectors 106 are preferably engineered to understand the format of data that is provided by the supported data transformation tools 220.
  • a connector for the GATE text processing system may be provided.
  • the transformation connectors 106 maybe designed to take as input the specific XML structure that is output by the GATE tool.
  • the connector then uses coded logic and XSL transforms to covert this specific XML from, in this example, the GATE tool into a consistent transformation XML format.
  • This format represents an XML data layout that closely maps to the data format of the capture schema 103.
  • the transformation connectors 106 then load the consistent transformation XML into the capture schema 103 using standard data loading procedures.
  • the middleware software system 100 also includes a section and header extractor (not shown).
  • This is a custom transformation tool 220 that takes for an input a text document and a set of extraction rules and instructions.
  • the section and header extractor outputs any and all document headers, as well as a specific section or sections from the document as described by the input rules.
  • the section and header extractor provides a rules-based approach to locate and extract document headers as well as sections from unstructured texts that may or may not provide any internal section headings, tags, or other indications as to where one section ends and another begins.
  • the header extractor can look for specific document headers and extract the data of the headers. Further, it stores the header data in the capture schema 103. As an example, SEC filings include headers such as "filed as of date”, “ • effectiveness date”, "central index key”, and "SIC code.” These headers can be extracted by the header extractor and put in the capture schema 103.
  • the section extractor can extract a specific section or a series of specific sections from a document based on a sophisticated set of rules. These rules may include:
  • Preprocessing including optional removal of HTML or other tags and special character, and other specific character conversions (example, convert “AAA” to "BBB” throughout document before further extraction processing). Also include specific removals, for example remove strings matching "CCC” or between “DDD” and “EEE” from all parts of the document before further processing.
  • Section Start Rules Match document text to a set of provided character strings, with the following optional parameters: a. Search from the top of the document down, or from the bottom of the document up b. Search for the first match of any string of the set, or first search the whole document for the first string in the set, and if not found move to the next string c. Search in a case-sensitive manner or case-insensitive manner d. Rules regarding what to do if start string not found (for example, skip document, extract no section, or treat whole document as if it was the desired section)
  • Section End Rules essentially the same as the Section Start rules, with the additional parameters of: a. Search from the section start point, or from the start of the document, or from the end of the document b. Search up or down from the start point c. Optional parameter to stop section extraction after a certain number of characters, and direction to go from start point before stopping (up or down).
  • the middleware software system 100 also includes a proximity transformer (not shown). This is a custom transformation tool 220 that further transforms the results of other transformation tools 220. This transformation tool 220 looks for events, entities, or relationships that are closest and/or within a certain distance (based on number of words, sentences, sections, paragraphs, or character positions) from other entities, events, or relationships. Typically, it is configured to look for specific types of things that are close to other specific types of things.
  • the proximity transformer can associate data elements together based on input rules, types of elements, and their proximity to one another in unstructured text.
  • the proximity transformer may be configured to look for a certain types of entity or relationship (based on entries in the entity and relationship hierarchy) entries in the analysis schema 108. Preferably, for each matching entity or relationship that is found, it then looks for the closest (by character position, number of words, number of sentences, number of paragraphs, or number of sections) instance of a second (and optionally third, fourth, etc.) specific type of entity. If the proper collection of relationship and entity types are located with a certain optional distance limit (preferably, based on character positions or other criteria listed above), and optionally within a certain direction from the first entity or relationship (up or down), then a new relationship is added to the analysis schema 108 to indicate the newly located relationship. The relationship is associated with its related entities and the roles that these entities play.
  • the proximity transformer can be used to locate instances of loans described in the source documents, and to locate the borrower, lender, dates, and dollar amount of loans.
  • the proximity transformed could first look for entries in an entity table in the analysis schema 108 that are related to the hierarchy element "loan”. Then the transformer could search for the closest company entity and assign that company as the lender. Then it could locate the nearest person, and assign that person as the borrower. It could than locate the nearest entity of hierarchy type u financial->currency"
  • the middleware software system 100 also includes a table parser (not shown).
  • the table parser is a custom transformation tool 220 that takes as an input a table of data (which may have been extracted from a document by using the section extractor) represented in textual form (either with markup tags such as HTML or in plain-text) and extracts the column headers, row headers, data points, and data multiplers (such as
  • the table parser can preferably take any type of text table that is readable by a human and can convert the table into a structured rows, columns, cells, headers, and multiplier representation that can then be used for further structured analysis.
  • Each input text table can vary from the next, and the table parser can extract data without being specifically pre-configured for each possible input table format.
  • the table parser can adapt dynamically to any table format and any combination of columns and rows. It operates using algorithms designed to analyze a table as a human would visually, for example by distinguishing columns based on their placement to one another and the "whitespace" between them.
  • the detection of a table in document can be performed with section extractor, described above.
  • the section extractor is capable of finding and segregating tables from surrounding text.
  • the table is extracted from the text, it then may be parsed by the table parser.
  • the first part of the algorithm breaks up the table into rows and columns and represents the table in a 2-dimension array.
  • a markup language such as HTML
  • this may be done by analyzing the markup tags that delineate the table into rows and columns. Processing is then done to combine table cells that are marked as separate but only for visual formatting purposes.
  • 365127 2 vl visually identify columns based on the percentage of vertical white space in any vertical column. Columns that contain a large percentage of white space are identified as separating the table columns. Based on the column analysis, rows and columns are extracted and represented in a 2-dimensional array.
  • the 2-dimensional array created either from a table with HTML or other markup, or from a plain-text table, may then be processed further to identify column headers, numerical order of magnitude indicators, and row headers.
  • Column headers can be identified based on their position on top of columns that mainly contain numerical values.
  • Order of magnitude indicators can be extracted from the top portion of the table and generally are worded as "numbers in thousands", or "numbers in millions”. These conversion factors are then applied to the onward processing of the table.
  • row headers are located by looking for table rows that have a label on the left-side of the table but do not have corresponding numerical values, or that have summary values in the columns.
  • Row headers can be differentiated from multi-line row labels by analyzing the indentation of the potential header and the row(s) below. The result of this processing is a data array containing row labels, corresponding headers, column headers, and corresponding numerical values.
  • This data once extracted from a table, may then be stored in the capture schema 103 in a normalized data table that is capable of storing data extracted from any arbitrary table format. That data may then be loaded into the analysis schema 108 and can be analyzed along with any other structured and unstructured 210 data.
  • Capture schema 103 is preferably a database schema. That is, having a predesigned layout of data tables and the relationship between the tables.
  • the capture schema 108 is specially designed to serve as a repository for data captured by the extraction connectors 101 and also to hold the results of the transformation connectors
  • Capture schema 108 is designed in an application-independent manner so that it can preferably hold any type of source unstructured data 210, extracted headers and sections, and the results of transformation components 220. It also can preferably hold entities and relationships, as well as any data extracted from text tables within unstructured texts.
  • the capture schema 103 can suit the needs of any type of unstructured data capture and transformation tool 220 without being custom-designed for each application.
  • the capture schema 103 is designed to capture and record the output from various types of text transformation tools 220, such as entity extraction, relationship extraction, categorization, and data matching tools.
  • the capture schema 103 preferably has a general-purpose structure to accommodate the various outputs from a variety of type of text analysis tools from a variety of vendors, open source communities, or from custom application development projects.
  • the tables in the capture schema 103 include a table to store information about extracted entities, such as people, places, companies, dates, times, dollar amounts, etc.
  • the entities are also associated with attributes, such as their language of origin or temporal qualities.
  • the capture schema 103 contains data relating to entity occurrences, which are the actual locations of the entities as found in the source documents. There may be multiple occurrences of the same entity in a single document.
  • the capture schema 103 retains information about entities, entity occurrences, and the relationships between these items, as well as the associated attributes that may be associated with entities and entity occurrences.
  • the capture schema 103 also contains information on relationships. Relationships are associations between entities, or events that involve entities. Similar to entities, relationships also have associated relationship attributes and occurrences that are all captured by the capture schema 103. Additionally, the capture schema 103 contains a mapping table between relationships and the related entities, master entities, and entity occurrences, including information on the role that the related entities play in the association or event.
  • the capture schema 103 also contains information about documents in the middleware software system 100, and the relationships between the documents to the entities and relationships that are contained within them.
  • Documents may have associated attributes (such as source, author, date, time, language, etc.), and may be grouped together in folders and be grouped by the source of the document.
  • the documents are all assigned a unique key which can be used to identify the document and data derived from the document throughout the entire system and can be used to reference back to the original document in the original source.
  • the binary and character text of the document can also be stored in the capture schema 103 as a CLOB and/or BLOB object. Sections of the
  • 3651272vl document if extracted by the section extractor, are also stored in the capture schema 103 and related to the documents that they were extracted from.
  • Information from categorization tools may also be included in the capture schema 103.
  • Such data elements include topics and categories of documents and sections of documents. This data is linked to the other data such as entities and relationships through a series of cross-reference tables.
  • the capture schema is designed to consolidate the output from a variety of data analysis technologies in a central repository while retaining a consistent key to allow for cross-analysis and linking of results for further analysis.
  • the consistent key also allows for drill-down from analytical reports back to source documents and to the details of the transformations that led to each data element being present in the schema.
  • an analyst could drill down to the number of loans for each company in the industry, then to the individual loans disclosed in each filing, then to the details of a particular loan event, then drill all the way down to the text in the filing that disclosed the loan.
  • the textual source of the event is generally shown to the user within the context of the original source document, with the appropriate sentence(s) or section(s) highlighted.
  • This drill-down is enabled by several unique features of the system.
  • the hierarchies present in the analysis schema discussed in more detail below, can be traversed step-by-step along a variety of dimensions present in the schema to drill down to the precise set of information desired. From there, the details of the underlying relationships, events, or entities can be displayed from the user as they are also present in the analysis schema.
  • the source document is retrieved either from the capture or analysis schema, if stored there, or from the original source location via a URL or other type of pointer.
  • the relevant section, sentence, phrase, or word(s) can then be highlighted based on the starting and ending positions stored in the analysis schema that represent the location(s) that the relevant entities or relationships were extracted from originally.
  • FIG. 1 is a schematic illustration of the capture schema 103.
  • Each of the boxes in the schematic diagram represents a component of the capture schema 103. These content and function of these components is as follows.
  • Document 401 This is a data table that preferably contains details on each document, including the document title, URL or other link back to the source, the source text itself (optionally stored), the document size, language, initial processing characteristics, link to the folder or other logical corpus grouping containing the document, and a unique document key that is consistently used to refer to the document throughout the system.
  • the term "document” in this system represents any distinct piece of text, which may or may not resemble a traditional paper document. For example a memo field value extracted from a CRM system would also be referred to as a distinct document by the system. Given this abstraction, a document could be very small or very large or somewhere in between.
  • Document Attributes 402 Preferably contains a mapping of each document to the extended properties or attributes of the document.
  • document attributes include, but are not limited to, headers extracted from documents and their corresponding values, or other metadata that is extracted along with the document such as author(s), title, subtitle, copyright, publishers, etc.
  • Attributes 403 Preferably, contains a master lookup table of the types of attributes stored in the system, so that attributes representing the same type of data can be represented by the same attribute ID to allow for consistent analysis and loading of attribute data.
  • Keywords 404 Preferably contains a master lookup table of all keywords in all documents. A consistent key is assigned to each unique keyword to allow for consistent data loading and for cross-analysis of keywords across documents, sections of documents, and collections of documents.
  • Keyword Occurrence 405 contains a mapping to the occurrences of keywords to the documents that contain the keywords. Preferably, it includes one entry for each keyword occurrence in each document. It also preferably includes the start and end position (represented by character count from start of document) of the occurrence of
  • the keyword Preferably, it also includes information relating to the extraction process that found the keyword occurrence.
  • Entity 406 Preferably contains one entry for each unique entity that is mentioned in each document.
  • An entity generally represents a noun phrase that represents a physical or abstract object or concept. Entities are generally found as nouns in sentences.
  • Example of entities include but are not limited to people, companies, buildings, cities, countries, physical objects, contracts, agreements, dates, times, various types of numbers including currency values, and other concepts.
  • Entity Attributes 407 Preferably contains attributes related to each entity. Attributes may be any arbitrary piece of metadata or other information that is related to an entity, and may include metadata from an entity extraction tool such as the confidence level associated with the extraction of the entity from a piece of text. Entity attributes may also include grouping or ontological information that is useful in the later creation of entity hierarchies during the creation of the analysis schema.
  • Entity Occurrence 408 Preferably contains one entry for each time an entity is mentioned in a document. It may also include the start and end position of the entity occurrence, as well as details of the extraction process that found the occurrence.
  • Entity Occurrence Attributes 409 Preferably contains arbitrary additional metadata relating to the entity occurrence. These attributes are typically similar and in some cases may be the same as the information in the Entity Attributes table, but may also contain attributes that are unique to a particular occurrence of an entity.
  • Relationship 410 Preferably contains details on relationships extracted from documents.
  • a relationship represents a link between entities or an event involving entities.
  • An example of a relationship would be "works-for," in which an entity of type person is found to work for an entity of type company, in a certain capacity such as
  • Relationship Attributes 411 Preferably contains additional details of the extracted relationships, such as the confidence level of the extracted relationship, ontological attributes of the relationship, or other attributes at the relationship level.
  • 3651272vl Relationship Occurrence 412 Preferably contains information on each occurrence of text that references a certain relationship. For example, if a certain "works-for" relationship if referenced several times in a certain document, this table would contain one entry for each time the relationship is referenced. This table also may contain information on the exact start and end character position of where the relationship instance was found in the document.
  • Relationship Occurrence Attributes 413 Preferably contains details of attribute at the relationship occurrence level. May contain similar information to the Relationship Attributes table.
  • Relationship/Entity Xref 414 Preferably contains a cross-reference table that links the entities to the relationships that involve them. Preferably, this table exists both at the relationship and the relationship occurrence levels. It also may provide a link to the role that each entity plays in a certain relationship.
  • Relationship/Entity Roles 415 Preferably contains a master index of the various types of roles that are played by entities in various relationships. By providing for a master relationship role key, this allows relationship roles and the entities that play those roles to be matched across various documents and across collections of documents.
  • Document Folder 416 Preferably groups documents into folders. Folders are abstract concepts that can group documents and other folders together, and may or may not represent a folder structure that was present in the original source of the documents.
  • Concept/Topic 417 Preferably contains concepts or topics referred to in documents or assigned to documents by concept and topic detection tools. May also contain topics and concepts at the section, paragraph, or sentence level if concept and topic detection is performed at the lower sub-document level.
  • Concept/Topic Occurrence 418 Preferably contains details of exactly where certain topics or concepts were detected within a document or sub-component of a document. It may also include start and end position within the text of the concept or topic occurrence.
  • Section 419 Preferably contains details on sections of documents. Sections may be designated in the extracted source document, or may be derived by the system's section extractor. Preferably, this table stores details on the sections, including the start and end position, and optionally stores the section text itself.
  • Paragraph 420 Preferably contains details on paragraphs within a document or within a section of a document. It preferably contains start and end position, and optionally contains the text of the paragraph itself.
  • Sentence 421 Preferably contains details on sentences within a document or within a section of a document. Preferably, it also contains start and end position, and optionally contains the text of the sentence itself.
  • the analysis schema 108 is similar to the capture schema 103, except it is preferably designed to allow for analysis by commercially-available structured data analysis tools 230 such as business intelligence, data mining, link analysis, mapping, visualization, reporting, and statistical tools.
  • the analysis schema 108 provides a data schema that can be use to perform a wide range of differing types of analysis for a wide variety of applications based on data extracted from unstructured text without needing to be custom-designed for each analytical application, analysis tool, or each type of input data or applied transformation.
  • the data in the analysis schema 108 resembles the data in the capture schema 103, however it extends and transforms the data in several ways in order to structure and prepare the data for access and analysis by structured data analysis tools 230.
  • the entities are preferably also grouped into master entities.
  • the master entities group entities that appear in multiple documents that are the same in the real world.
  • master entities group together entities that may be spelled differently or have multiple names in various documents or sources into one master entity since they represent the same actually entity in the real world. For example, the terrorist group Hamas and the Islamic Resistance Movement may be grouped together as they represent the same actual group.
  • the analysis schema 108 can also group entities that are associated with a hierarchy. For example "George W. Bush” might be associated with the person -> government -> USA -> federal -> executive node of a hierarchy. Similar to entities,
  • 3651272vl relationships also have associated hierarchies that also may reside in the analysis schema 108.
  • entities that represent dates and numeric amounts may be processed so that the date and/or numeric data is stored separately in specific table columns in the appropriate data types.
  • this processing requires analysis of the text description of the entity and the extraction and processing of the text into standard date and numeric values.
  • analysis schema 108 also has the capability to be extended in order to include existing or other structured data, so that it can be cleanly tied to the rest of the data and analyzed together in one consistent schema.
  • FIG. 5 is a schematic illustration of the analysis schema 108. Each of the boxes in the schematic diagram represents a component of the analysis schema 108. These content and function of these components is as follows.
  • the boxes labeled 501 through 521 correspond to boxes 401 through 421 of the capture schema 103, having substantially similar structure and performing substantially similar functions.
  • Master Entity 522 Preferably contains a unified ID that represents an entity that appears across multiple documents, and links to the underlying entities and entities that occur within individual documents.
  • a master entity of "United States of America" would refer to the country of the same name.
  • the master entity would consolidate all mentions of the country in all documents, including mentions that use alternative expressions of the country's name such as "'United States", “USA”, “U.S. of A”, etc.
  • This consolidated master entity allows this entity to be analyzed across documents as a single entity.
  • the actual consolidation is preferably performed during the analytical ETL process using matching algorithms or through the use of external data matching technologies via a transformation connector 106.
  • Entity Hierarchy 523 places entities into a hierarchy based on an ontology of how entities relate to other entities and how they can be grouped together.
  • a hierarchy may group normal people into a "thing->physical->animate->person- >civilian" node of a hierarchy.
  • 3651272vl be used to group entities together into buckets that can then be used for analysis at various levels.
  • Master Entity Hierarchy 524 preferably, identical to the entity hierarchy, except at the master entity level. Both hierarchies are useful, as some types of analysis are best performed at the master entity level, and others at the entity level.
  • Master Relationship 525 Preferably, similar to master entity, except groups relationships into common relationships that are expressed across a group of documents. For example, the fact that George Washington was a former president of the United States maybe a relationship that is disclosed in a variety of documents across a document collection. The master relationship would establish this relationship, and would then link to the sub-relationships that are expressed in individual documents.
  • Relationship Hierarchy 526 Preferably, similar to the entity hierarchy, except representing relationships and events.
  • a car bombing event may be categorized into a hierarchy known as "event-physical-violent-attack-bombing- car_bombing.”
  • the analysis of various types of relationships and events across a hierarchy can provide interesting insights into what types of events are discussed in a set of documents, or are taking place in the world.
  • Master Relationship Hierarchy 527 Preferably, similar to the Relationship Hierarchy, except involving Master Relationships. These are useful as in some cases it is useful to analyze distinct relationships or events that may be referenced in multiple sources, and in other cases it may be interesting to analyze each individual reference to an event or the frequency of mentions of one event versus another.
  • Keyword Hierarchy 528 Preferably, groups keywords into hierarchies. These hierarchies can then be used to group data together for analysis.
  • Attribute Hierarchy 529 Preferably groups attributes together into hierarchies.
  • Hierarchies can then be used to group documents together based on their various attributes for analysis, or to select certain types of documents for inclusion or exclusion from certain analyses.
  • 3651272vl Document Folder Hierarchy 530 Preferably, groups folders of documents into higher level folders in a recursive manner allowing for unlimited numbers of folder levels. These folders can be used to separate collections documents into distinct buckets that can be analyzed separately or in combination as required by the analytical application.
  • Document Source 531 Preferably contains a cross-reference between each document and the source of the document.
  • the source may be a certain operational or document management system, or may represent a news organization or other type of external content source.
  • Document Source Hierarchy 532 Preferably, groups document sources into categories.
  • internal documents may be represented by an internal document hierarchy, and documents acquired from a news feed may be in a separate hierarchy based on type of news source and/or the geographic location of the source of the document.
  • Document Source Attributes 533 Preferably, contains any additional attributes relevant to the source of the document. Such attributes may be trustworthiness of the source, any political connections of the source, location of the source, or other arbitrary data points relating to the source of the documents.
  • Concept/Topic Hierarchy 534 Preferably, contains a hierarchy of concepts/topics. As with entities and relationships, concepts and topics are often interested to analyze within the context of a hierarchy. For example documents pertaining to international finance may need to be grouped and analyzed separately from those pertaining to intellectual property protection.
  • Time Dimension 535 represents a standard relational time dimension as would be found in a traditional data warehouse. This dimension, for example, contains years, months, weeks, quarters, days, day of week, etc. and allows the rest of the data that is stored as date values to be analyzed and grouped by higher level date and time attributes, and also allows for calculations such as grow rather week over week or year over year. This also allows for period-to-date and this period vs. last period calculations such as those used in time series and growth rate analysis.
  • Entity (extensions) 506 Preferably, the analysis schema also extends the entity table to represent numerical, currency, or date-based entities in the appropriate data forms
  • any entities representing currency would be converted to a currency data type in the underlying database or data storage repository.
  • the extraction/transform/load (ETL) layer 107 provides a mapping and loading routine to migrate data from the capture schema 103 to the analysis schema 108.
  • the extraction/transform/load layer 107 is unique due to the uniqueness of the two general- purpose application-independent schemas that it moves data between. Further, the routines that make up the extraction/transfo ⁇ n/load layer 107 operate in an application- independent manner.
  • the ETL process can preferably contain the following steps:
  • Master entity determination and assignment Matching entities to corresponding master entities. Often involves matching disparate spellings to the corresponding master entities.
  • Master relationship determination and assignment Grouping of relationships together that represent the same relationships or events into a single master relationship.
  • Entity Hierarchy & Master Entity Hierarchy creation creation and/or maintenance of entities into their corresponding hierarchical groupings. Similar process for master entities.
  • Relationship Hierarchy & Master Relationship Hierarchy creation and/or maintenance of relationships into their corresponding hierarchical groupings. Similar process for master relationships.
  • Keyword Hierarchy creation and/or maintenance of the keyword hierarchy.
  • Attribute Hierarchy creation and/or maintenance of the attribute hierarchy.
  • Concept/Topic Hierarchy creation and/or maintenance of the concept/topic hierarchy.
  • Document Folder creation and/or maintenance of the document folder hierarchy.
  • Document Source extraction of document source information from document attributes into its own data structure.
  • Document Source Attributes extraction of attributes relating to document sources into a separate data structure
  • Time Dimension creation of the standard system time dimension for time-series analysis.
  • Entity Extensions identification of date and numeric types of entities and conversion of date and numeric values into corresponding native data types where appropriate.
  • Data de-duplication identification and (optional) removal of duplicate source documents to avoid double-counting.
  • the core server 104 coordinates the execution of the various components of the middleware software system 100 and the movement of data between the components. It is designed in a multi-threaded, grid-friendly distributed manner to allow for the parallel processing of extremely large amounts of data through the system on a continuous realtime high-throughput basis. It is the only data processing server designed to perform these types of data movements and transformation based on unstructured data sources.
  • the features of the core server 104 can include:
  • 3651272vl The ability to use a drag & drop data flow editor to design, edit, execute, and monitor unstructured data 210 flows through transformation tools 220 and into an analysis schema 108
  • the provider web service 109 provides a gateway for structured analysis tools 230 to access and analyze the data contained in the analysis schema 230. It is designed so that structured analysis tools 230 can access the analysis schema 108 using a standard web services approach. In this manner, the structured analysis tools 230 can use a web services interface to analyze the results of transformations applied to unstructured data 210 and can join this data to other existing structured data that may, for example, reside in a data warehouse. By allowing the analysis of structured data and unstructured data 210 together, new insights and findings can be found that would not be possible from structured data alone.
  • the structured connectors 110 allow structured data analysis tools 230 to analyze the data present in the analysis schema 108. While this may sometimes be performed through common interfaces such as ODBC or JDBC, the structured connectors 110 preferably also include the capability to pre-populate the metadata of the structured analysis tool 230 with tables, columns, attributes, facts, and metrics helpful to immediately begin analyzing the data present in the analysis schema 108 without performing tool customization or any application-specific setup. Preferably, the structured connectors 110 also provide the ability to drill-through to the original unstructured source document, and also provide the ability to view the path that the data took through the system and the transformations that were applied to any piece of data.
  • this allows the ability for an analyst to completely understand the genesis of any result that they see in the structured analysis tool 230, to know exactly where the data came from and how it was calculated, and to be able to drill all the way back to the original document or documents to confirm and validate any element of the resulting structured analysis.
  • middleware software system 100 includes a pre-configured project for each analysis tool to understand the tables, columns, and joins that are present in the analysis schema 108. Further, the tables, columns, and joins may be mapped to the business attributes, dimensions, facts, and measures that they represent. Preferably,
  • 3651272vl analytical objects such as reports, graphs, and dashboards are also pre-built to allow out- of-the box analysis of data in supported structured analysis tools 230.
  • Drill-through to the underlying unstructured source data 210 is preferably accomplished through embedded hyperlinks that point to an additional component, the source highlighter.
  • the hyperlinks include the document ID, entity ID, or relationship ID from the analysis schema 108.
  • the source highlighter can accesses the capture schema 103 and retrieve the document or section of document where the selected entity or relationship was found. Also the start and end character position may be loaded from the capture schema 103. If so, the source highlighter may display the document or section to the user, automatically scrolls down to the location of the relevant sentence, and highlight it for easy reference by the user.
  • the Middleware software system 100 also includes a confidence analysis component (not shown).
  • the confidence analysis capability allows users to not only see and analyze data within structured analysis tools 230, but to also calculate a numeric confidence level for each data element or aggregate data calculation. Since unstructured data 210 is often imprecise, the ability to understand the confidence level of any finding is very useful.
  • the confidence analysis capability joins together many data points that are captured throughout the flow of data through the middleware software system 100 to create a weighted statistically-oriented calculation of the confidence that can be assigned to any point of data. Preferably, this combines the results of various data sources and applied transformations into a single confidence score for each system data point, to provide for a quality level context while analyzing data generated by the middleware software system 100.
  • the algorithm used to calculate confidence can take into account the following factors when calculating a weighted confidence score for any data element in the middleware software system 100:
  • confidence scores calculated based on factors such as those above can be assigned to individual data rows and data points of analysis results and displayed together with the resulting analysis.
  • the middleware software system 100 also includes an enhanced search component (not shown). While analysis of the data in the middleware software system's 100 capture
  • 3651272vl schema 103 can provide for interesting insights, and represents a paradigm shift from traditional searching of unstructured information, the middleware software system 100 also provides data and metadata that can be used to improve existing or to drive new search capabilities.
  • Middleware software system 100 allows those search results to be extended by the inclusion of additional items in the traditional search indexing process. These techniques include:
  • Indexing the data in the analysis schema This can be done by creating "data dump" reports using a reporting tool that create a list of each entity, topic, or relationship discussed in a document along with a link back to the source document. This report can then be run periodically automatically and included in the indexing routine of a standard search engine.
  • the search engine can also be optionally enhanced to understand the format of this report and to rate, rank, and provide the results accordingly.
  • Analytical reports can be automatically periodically run and included in the indexing process of a search engine. This allows a search engine to provide links to analytical reports interspersed within standard links back to source documents.
  • search results By indexing the reports headers, title, and comments, as well as the actual data that is contained in the report results, specialized search results can be achieved. For example, a search for "hamas growth rate” could provide a link back to a report that includes a metric called “growth rate” and a data item called "Hamas.” • Search engines can be enhanced to index and understand the metadata contained in the definition of the dimensional model of the analytical data mart schema, the definitions of the facts, metrics, and measures, and also take into account the data contained within the dimensions and measures, and to provide results accordingly.
  • a search engine would be able to construct a report on the fly to answer a question such as "population USA 2004"
  • the user wants to know which companies have had transactions with their own corporate officers that require reporting under SEC rales. This requires the processing and analysis of approximately 40,000 pages of SEC filings for each quarter-year's worth of filings. These filings are plain text, that is, unstructured data. Unfortunately for the user, there is no required uniform method of reporting the desired transactions to the SEC and thus, they may be found under sections with various headings and may be worded in various ways.
  • the filings are run through a transformation program 220 that is instructed to associate the corporate officers to particular types of transactions (e.g., loans, leases, purchases & sales, and employment-related).
  • the associated data is then stored in data structures that can be analyzed with a business intelligence tool.
  • the business intelligence software analyzes the data and presents it using dashboards and reports.
  • the report illustrated in Figure 6 sorts the companies based on the number of reported transactions, identifying the number of transactions per type of transactions as well as a statistical comparison of the company against the industry average number of transactions.
  • the reports illustrated in Figures 7 and 8 focus only on loan transactions, further identifying the industry groups of the individual corporations. This allows the user to determine if a specific industry commonly engages in a particular type of transaction and whether a specific company is behaving differently from its peers.
  • the business intelligence software can identify the recipients and amounts of the loans, Figure 9, as well as the source text in the original document, Figure 10. Further, the user can then click on hyperlinks to seamlessly view the original unstructured source to validate the findings.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)
  • Machine Translation (AREA)

Abstract

A system and method of making unstructured data available to structured data analysis tools. The system includes middleware software that can be used in combination with structured data tools to perform analysis on both structured and unstructured data. Data can be read from a wide variety of unstructured sources. The data may then be transformed with commercial data transformation products that may, for example, extract individual pieces of data and determine relationships between the extracted data. The transformed data and relationships may then be passed through an extraction/transform/load (ETL) layer and placed in a structured schema. The structured schema may then be made available to commercial or proprietary structured data analysis tools.

Description

SYSTEM AND METHOD OF MAKING UNSTRUCTURED DATA AVAILABLE TO STRUCTURED DATA ANALYSIS TOOLS
RELATED APPLICATIONS This application is related to applications "Schema and ETL Tools for Structured and Unstructured Data" and "Analysis and Transformation Tools for Structured and Unstructured Data," filed even date herewith.
FIELD OF THE INVENTION
The present invention is directed generally to software for data analysis and specifically to a middleware software system that allows structured data tools to operate on unstructured data.
BACKGROUND OF THE INVENTION
Roughly 85% of corporate information and 95% of global information is unstructured. This information is commonly stored in text documents, emails, spreadsheets, internet web pages and, similar sources. Further, this information is stored in a large variety of formats such as plain text, PDF, bitmap, ASCII, and others.
To analyze and evaluate unstructured information, there are a limited number of tools with limited capabilities. These tools can be categorized into four distinct groups of tools. These are (1) entity, concept and relationship tagging and extraction tools, (2) enterprise content management and knowledge management tools, (3) enterprise search categorization tools, and (4) document management systems.
Entity extraction tools search unstructured text for specific types of entities (people, places, organizations). These tools identify in which documents the terms were found. Some of these tools can also extract relationships between the identities. Entity extraction tools are typically used to answer questions such as "what people are mentioned in a specific document?" "what organizations are mentioned in the specific document?" and "how are the mentioned people related to the mentioned organizations?"
Enterprise content/knowledge management tools are used to organize documents into folders and to share information. They also provide a single, one-stop access point to look for information. Enterprise tools can be used to answer questions such as "what documents do I have in a folder on a particular terrorist group?" and "who in my organization is responsible for tracking information relating to a particular terrorist group?"
Enterprise search and categorization tools allow key word searching, relevancy ranking, categorization by taxonomy, and guided navigation. These tools are typically used to find links to sources of information. Example questions such tools can answer include "show me links to documents containing the name of a particular terrorist" and
"show me links to recent news stories about Islamic extremism."
Document management tools are used to organize documents, control versioning and permissioning, and to control workflow. These tools typically have basic search capabilities. Document management tools can used to answer questions such as "where are my documents from a particular analysis group?" and "which documents have been put in a particular folder?"
In contrast to unstructured or freeform information, structured data is organized with very definite relationships between the various data. These relationships can be exploited by structured data analysis tools to provide valuable insights into the operation of a company or organization and to guide management into making more intelligent decisions. Structured data analysis tools include (1) business intelligence tools, (2) statistical analysis tools, (3) visualizations tools, and (4) data mining tools.
Business intelligence tools include dashboards, the ability to generate reports, ad- hoc analysis, drill-down, and slice and dice. These tools are typically used to analyze how data is changing over time. They also have the ability to see how products or other items are related to each other. For example, a store manager can select an item and query what other items are frequently purchased with that item.
Statistical analysis tools can be used to detect fraud, check quality control, fit-to- pattern analysis, and optimization analysis. Typical questions these tools are used to answer include "what is the average daily network traffic and standard deviation?" "what combination of factors typically indicate fraud?" "How can I minimize risk of a financial portfolio?" and "which of my customers are the most valuable?"
3651272vl Visualization tools are designed to display data graphically, especially in conjunction with maps. With these tools one can visually surf and/or navigate though their data, overlay and evaluate data on maps with a geographic information system (GIS), and perform link and relationship analysis. These tools can be used, for example, to show trends and visually highlight anomalies, show a map color-coded by crime rate and zip code, or answer the question "who is connected by less than 3 links to a suspicious group?"
Data mining tools are typically used for pattern detection, anomaly detection, and data prediction. Example question that can be addressed with these tools are "what unusual patterns are present in my data?" "which transactions may be fraudulent?" and "which customers are likely to become high- value in the next 12 months?"
Tools for analyzing structured data are far more flexible and powerful than the current tools used to analyze unstructured data. However, the overwhelming majority of all data is unstructured. Therefore it would be advantageous to have a middleware system and method that allows structured data analysis tools to operate on unstructured data.
SUMMARY OF THE INVENTION
The present invention provides a system and method making unstructured data available to structured data tools. The invention provides middleware software system that can be used in combination with structured data tools to perform analysis on both structured and unstructured data. The invention can read data from a wide variety of unstructured sources. This data may then be transformed with commercial data transformation products that may, for example, extract individual pieces of data and determine relationships between the extracted data. The transformed data and relationships may then be passed through an extraction/transform/load (ETL) layer and placed in a structured schema. The structured schema may then be made available to commercial or proprietary structured data analysis tools.
One embodiment of the present invention provides a method of making unstructured data available to structured data tools comprising accessing a source of unstructured data; extracting the unstructured data; writing the extracted unstructured data to a capture schema; sending the unstructured data to a transformation tool; transforming the unstructured data with the transformation tool; writing the transformed parsed
3651272vl unstructured data in a structured analysis schema; providing data connectors that allow structured data analysis tools to access the structured analysis schema.
In one aspect of the invention, extracting includes parsing the unstructured data and associating the data source with the parsed unstructured data. In another aspect of the invention, the transformation tool extracts individual pieces of data and performs text and/or data processing activities. In another aspect of the invention, the text and data processing activities include: determining the topic of a section of text, extracting a section of text from a whole document, matching names, or matching addresses. In another aspect of the invention, the structured data tools include business intelligence, statistical analysis, data visualization and mapping, or data mining. In another aspect of the invention, the source of unstructured data includes email, word processing documents, spreadsheets, presentation materials, PDF files, web pages, news/media reports, case files, transcriptions, file servers, web servers, enterprise content, enterprise search tool repositories, intranets, knowledge management systems, or document management systems. In another aspect of the invention, the transformation tool includes: (i) entity, concept and relationship tagging and extraction tools, (ii) categorization and topic extraction tools, (iii) data matching tools or, (iv) custom transformations.
Another embodiment the present invention provides a system for making unstructured data available to structured data tools comprising code to access a source of unstructured data; code to extract the unstructured data; code to write the extracted unstructured data to a capture schema; code to send the unstructured data to a transformation tool; code to transform the unstructured data with the transformation tool; code to write the transformed parsed unstructured data in a structured analysis schema; code to provide data connectors that allow structured data analysis tools to access the structured analysis schema.
In one aspect of the invention, the code to extract includes code to parse the unstructured data and associate the data source with the parsed unstructured data. In another aspect of the invention, transformation tool extracts individual pieces of data and performs text and/or data processing activities. In another aspect of the invention, the text and data processing activities include: determining the topic of a section of text, extracting a section of text from a whole document, matching names, or matching addresses. In another aspect of the invention, the structured data tools include business intelligence,
3651272vl statistical analysis, data visualization and mapping, or data mining. In another aspect of the invention, the source of unstructured data includes email, word processing documents, spreadsheets, presentation materials, PDF files, web pages, news/media reports, case files, transcriptions, file servers, web servers, enterprise content, enterprise search tool repositories, intranets, knowledge management systems, or document management systems. In another aspect of the invention, the transformation tool includes: (i) entity, concept and relationship tagging and extraction tools, (ii) categorization and topic extraction tools, (iii) data matching tools or, (iv) custom transformations.
Another embodiment the present invention provides an extraction service for extracting unstructured data from a plurality of unstructured data sources and a plurality of formats comprising a plurality of APIs to interface with the plurality of unstructured data sources; and a single internal API that interfaces with a plurality of software components that allow structured data analysis tools to operate on unstructured data.
In one aspect of the invention, the plurality of unstructured data sources includes email, word processing documents, spreadsheets, presentation materials, PDF files, web pages, news/media reports, case files, transcriptions, file servers, web servers, enterprise content, enterprise search tool repositories, intranets, knowledge management systems, and document management systems.
Another embodiment the present invention provides a transformation connector comprising code capable of understanding the format of data provided by a transformation tool; and code to convert the data provided by a transformation tool to a data format that maps to a data capture schema, the data capture schema comprising; a table to store data extracted from a plurality of source documents having unstructured data; and a table to store information about the extracted data, wherein the plurality of documents are assigned a unique key that identifies the document throughout a software system allowing (i) cross- analysis, (ii) linking of results for further analysis, (iii) drill-down from analytical reports back to the source documents, or (iv) drill-down from analytical reports back to transformation information stored in the schema..
In one aspect of the invention, the transformation tool includes: (i) entity, concept and relationship tagging and extraction tools, (ii) categorization and topic extraction tools,
3651272vl (iii) data matching tools or, (iv) custom transformations. In another aspect of the invention, the code to convert the data comprises at least one XSL transform.
Another embodiment the present invention provides a core server comprising code to allow parallel processing of unstructured data on a continuous real-time basis, wherein the code is adapted to configure unstructured source extractors and treat them as black boxes in a data workflow; the code is adapted to extract unstructured text from a plurality of data sources and source systems, the extracted unstructured text available for input for further processing; the code is adapted to configure end-to-end data flow from the plurality of data sources through one or more transformation components into a capture schema and into an analysis schema for analysis by structured data analysis tools; the code is adapted to retain a single key for each data source, the key being associated with data generated by the transformation components; and the code is adapted to store all extracted unstructured text, metadata and transformation data in a single schema.
In one aspect of the invention, the code is adapted to use a drag and drop data editor.
Another embodiment the present invention provides a structured data connector that allows structured data analysis tools to analyze data in an analysis schema comprising ODBC code; JDBC code; and code to pre-populate metadata of the structured data analysis tools with tables, columns, attributes, data and metrics from an analysis schema without performing tool customization or application specific setup.
In one aspect of the invention, the structured data connector further comprises pre- built reports, graphs and dashboards. In another aspect of the invention, the structured data connector further comprises embedded hyperlinks that allow drill-through to underlying data sources. In another aspect of the invention, the hyperlinks include a document ID, entity ID, or relationship ID from the analysis schema. In another aspect of the invention, the structured data connector further comprises a source highlighter, the source highlighter adapted to access a capture schema and retrieve a source document or a section of a source document, hi another aspect of the invention, the source highlighter is adapted to retrieve start and end character positions, and to scroll down and highlight a relevant sentence in a retrieved source document or in a retrieved section of a source document.
3651272vl Additional features, advantages, and embodiments of the invention maybe set forth or apparent from consideration of the following detailed description, drawings, and claims. Moreover, it is to be understood that both the foregoing summary of the invention and the following detailed description are exemplary and intended to provide further explanation without limiting the scope of the invention as claimed.
BRIEF DESCRITPTION OF THE DRAWINGS
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate preferred embodiments of the invention and together with the detail description serve to explain the principles of the invention. In the drawings:
Fig. 1 is a schematic diagram of the system overview of an embodiment of the invention.
Fig. 2 is a schematic diagram of the system architecture of an embodiment of the invention.
Fig. 3 is a flow diagram of an embodiment of the process steps based upon the system of Figure 2.
Fig. 4 is a schematic diagram of a capture schema of an embodiment of the invention.
Fig. 5 is a schematic diagram of an analysis schema of an embodiment of the invention.
Fig. 6 is a screen capture of a report generated by an embodiment of the invention.
Fig. 7 is another screen capture of a report generated by an embodiment of the invention.
Fig. 8 is another screen capture of a report generated by an embodiment of the invention.
Fig. 9 is another screen capture of a report generated by an embodiment of the invention.
3651272vl Fig. 10 is a screen capture illustrating a feature of one embodiment of the invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
The present invention is directed to a middleware software system to make unstructured data available to structured data analysis tools. In one aspect of the invention, the middleware software system can be used in combination with structured data analysis tools and methods to perform structured data analysis using both structured and unstructured data. The invention can read data from a wide variety of unstructured sources. This data may then be transformed with commercial data transformation products that may, for example, extract individual pieces of data and determine relationships between the extracted data. The transformed data and relationships are preferably stored in a capture schema, discussed in more detail below. The transformed data and relationships may be then passed through an extraction/transform/load (ETL) layer that extracts and preferably loads the data and relationships in a structured analysis schema, also discussed in more detail below. Structured connectors according to one embodiment of the invention provide structured data analysis tools access to the structured analysis schema.
The present invention enables analysis of unstructured data that is not possible with existing data analysis tools. In particular, the present invention allows, inter alia, (i) multi-dimensional analysis, (ii) time-series analysis, (iii) ranking analysis, (iv) market- basket analysis and, (v) anomaly analysis. Multi-dimensional analysis allows the user to filter and group unstructured data. It also allows drill down into dimensions and the ability to drill across to other dimensions. Time-series analysis allows the user to analyze the genesis of concepts and organizations over time and to analyze how things have increased or decreased over time. Ranking analysis allows the user to rank and order data to determine the highest performing or lowest performing thing being evaluated. It also allows the user to focus analysis on the most critical items. Market-basket analysis allows the user to determine what items or things go with other items or things. It also can allow the user to find unexpected relationships between items. Anomaly analysis allows the user to determine if new events fit historical profiles or it can be used to analyze an unexpected absence or disappearance.
3651272vl Figure 1 illustrates a schematic of a system overview of one embodiment of the invention. As can be seen from the figure, this embodiment constitutes middleware software system 100. That is, this embodiment allows unstructured data 210 to be accessed and used by structured data tools 230. With this embodiment of the invention, business can use their existing structured data tools 230 to analyze essentially all of their various sources of unstructured data, resulting in a more robust analytic capability.
The unstructured data 210 that can be read by this embodiment of the invention includes, but is not limited to, emails, Microsoft Office™ documents, Adobe PDF files, text in CRM and ERP applications, web pages, news, media reports, case files, and transcriptions. Sources of unstructured data, include, but are not limited to, (i) file servers; (ii) web servers; (ii) enterprise, content, management, and intranet portals; (iii) enterprise search tool repositories; (iv) knowledge management systems; and (v) Documentum™ and other document management systems. The structured data tools 230, include but are not limited to, business intelligence tools, statistical analysis tools, data visualization and mapping tools, and data mining tools. Additionally, custom structured data and analysis tools 230 may be developed and easily integrated with this embodiment of the invention.
The middleware software system 100 of the present embodiment of the invention may also be adapted to access transformation components 220 capable of parsing the unstructured data 210. The transformation components 220, can for example, be used to extract entity and relationship information from the unstructured data 210.
Transformation components 220, include but are not limited to: (i) entity, concept and relationship tagging and extraction tools; (ii) categorization and topic extraction tools, (iii) data matching tools, and (iv) custom transformers.
A preferred embodiment of the complete system architecture of middleware software system 100 is illustrated in Figure 2. This embodiment includes extraction connectors 101 and extraction services 102 for accessing the unstructured data 210. It also includes a capture schema 103 that holds all of the unstructured data 210. This embodiment further includes a core server 104 that coordinates the processing of data, unstructured 210 and structured, throughout the middleware software system 100. This embodiment also includes transformation services 105 and transformation connectors 106 that handle passing unstructured data 210 to and from the transformation components 220. Additionally, the middleware software system 100 includes an extraction/transform/load
3651272vl layer 107 in which the unstructured data 210 is structured and then written into a structured analysis schema 108. Web service 109 and structured analysis connectors 110 provide structured data tools 230 access to the data in the analysis schema 108.
This embodiment will now be described with reference to the flow diagram illustrated in Figure 3. In the method of the illustrated embodiment, unstructured data 210 is accessed by the extraction services 102 through the extraction connectors 101. The extraction connectors 101 parse the unstructured data 210 while also associating the source document with the unstructured data. The parsed unstructured data is sent to the capture schema 103 and then preferably sent to one or more commercial, open source, or custom developed transformation components 220 capable of extracting individual pieces of data from unstructured text, determining the topic of a section, extracting a section of text from a whole document, matching names and addresses, and other text and data processing activities. The unstructured data 210 is sent to the one or more commercial, open source, or custom-developed transformation components 220 via the transformation service 105 and the transformation connectors 106. The extracted data may then be added to data already present in the capture schema 103. The data in the capture schema 103 may then be processed by the extraction/transform/load layer 107. The extraction/transform/load layer 107 structures the data and then stores it in the analysis schema 108. Data from the analysis schema 108 may then be passed through the structured analysis connectors 110 to one or more commercial structured data analysis tools 230. The core server 111 manages and coordinates this entire data flow process and marshals the data and associated and generated metadata all the way from the various sources of data all the way through the various transformation components 220 to the schemas 103, 108 and to the analysis tools 230.
The middleware software system 100 of the present embodiment enables structured data analysis tools 230 to analyze unstructured data 210 along with structured data. It is composed of several software modules, each of which includes features that distinguish the middleware software system 100 from existing software tools used for analyzing unstructured data 210.
The extraction services 102, for example, use a single application program interface (API) that interfaces with the various sources of unstructured data. The API can be used to access and extract document text and metadata, such as author, date, size, about
10
3651272vi the documents. Typically, each source of unstructured data 210 has its own API. Prior art tools that interfaced with multiple sources of unstructured data 210 commonly had a corresponding API for each source of data. In contrast, the single API of the extraction services 102 of the present invention can interface with numerous sources of unstructured data including (i) file servers; (ii) web servers; (ii) enterprise, content, management, and intranet portals; (iii) enterprise search tool repositories; (iv) knowledge management systems; and (v) Documentum™. Additionally, the single API of the extraction services 102 can interface with scanned and OCRed (optical character recognition) paper files. Preferably, the single API can interface with all of the internal modules of the middleware software system 100 as well as the various structured data analysis tools 230. This allows the sources to be treated as a "black box" by the rest of the middleware software system 100 components.
The extraction connectors 101 process text, data, and metadata that are returned from the unstructured source systems 230 as a result of the requests from the extraction services 102. Additionally, the extraction connectors 101 load the results into the capture schema 103. The extraction connectors 101 convert the various outputs from the various unstructured source systems into a consistent schema and format for loading into the capture schema 103. Preferably, the extraction connectors 101 also process the various pieces of metadata that are extracted from the source systems into a common metadata format. Further, a unique index key is assigned to each extracted source document 210, which allows it to be consistently tracked as it moves through the rest of the middleware software system 100. This key, and the associated metadata stored regarding the source location of the text, also provides the ability to link back to the original text when desired during the course of analysis. No currently available software can take unstructured data 210 from a variety of sources and put them into a consistent schema, nor process various pieces of metadata that are extracted from multiple source systems into a common metadata format.
The transformation services 105 manage the process of taking the collected unstructured data 210 and passing it through one or more custom, open source, or commercial transformation components 220. The transformation components 220 provide a variety of value-added data transformation, data extraction, and data matching activities. The results of one or more transformations may serve as an input to downstream
11
3651272vl transformations. Further, the transformation services 105 may be run by the core server 104 in a coordinated workflow process. Similar to the extraction services 102, the transformation services 105 provide a common API to a wide variety of custom, open source, and commercial unstructured data transformation technologies, while serving a as "black box" abstraction to the rest of the middleware software system 100.
The transformation connectors 106 process the output of the various transformation components 220 and convert the output into a consistent format that then may be loaded into the capture schema 103. It maps the widely variant output from a wide variety of unstructured and structures data transformation components 220 into a common consistent format, while preferably also retaining complete metadata and links back to the original source data. This allows tracability from the end user's analysis back through the transformations that took place and from there back to the original source of the unstructured data 210.
The transformation connectors 106 are preferably engineered to understand the format of data that is provided by the supported data transformation tools 220. For example, a connector for the GATE text processing system may be provided. The transformation connectors 106 maybe designed to take as input the specific XML structure that is output by the GATE tool. The connector then uses coded logic and XSL transforms to covert this specific XML from, in this example, the GATE tool into a consistent transformation XML format. This format represents an XML data layout that closely maps to the data format of the capture schema 103. The transformation connectors 106 then load the consistent transformation XML into the capture schema 103 using standard data loading procedures.
The middleware software system 100 also includes a section and header extractor (not shown). This is a custom transformation tool 220 that takes for an input a text document and a set of extraction rules and instructions. Preferably, the section and header extractor outputs any and all document headers, as well as a specific section or sections from the document as described by the input rules. Unlike prior art tools for analyzing unstructured data 210, the section and header extractor provides a rules-based approach to locate and extract document headers as well as sections from unstructured texts that may or may not provide any internal section headings, tags, or other indications as to where one section ends and another begins.
12
3651272vl The header extractor can look for specific document headers and extract the data of the headers. Further, it stores the header data in the capture schema 103. As an example, SEC filings include headers such as "filed as of date", "effectiveness date", "central index key", and "SIC code." These headers can be extracted by the header extractor and put in the capture schema 103.
The section extractor can extract a specific section or a series of specific sections from a document based on a sophisticated set of rules. These rules may include:
1. Preprocessing, including optional removal of HTML or other tags and special character, and other specific character conversions (example, convert "AAA" to "BBB" throughout document before further extraction processing). Also include specific removals, for example remove strings matching "CCC" or between "DDD" and "EEE" from all parts of the document before further processing.
2. Section Start Rules: Match document text to a set of provided character strings, with the following optional parameters: a. Search from the top of the document down, or from the bottom of the document up b. Search for the first match of any string of the set, or first search the whole document for the first string in the set, and if not found move to the next string c. Search in a case-sensitive manner or case-insensitive manner d. Rules regarding what to do if start string not found (for example, skip document, extract no section, or treat whole document as if it was the desired section)
3. Section End Rules: essentially the same as the Section Start rules, with the additional parameters of: a. Search from the section start point, or from the start of the document, or from the end of the document b. Search up or down from the start point c. Optional parameter to stop section extraction after a certain number of characters, and direction to go from start point before stopping (up or down).
13
3651272vl d. Rules regarding what to do if end point is not found (for example, skip document, extract no section, save rest of document starting at the start point, or extract a certain number of characters from the start point). The middleware software system 100 also includes a proximity transformer (not shown). This is a custom transformation tool 220 that further transforms the results of other transformation tools 220. This transformation tool 220 looks for events, entities, or relationships that are closest and/or within a certain distance (based on number of words, sentences, sections, paragraphs, or character positions) from other entities, events, or relationships. Typically, it is configured to look for specific types of things that are close to other specific types of things. For example, it can be used to look for the closest person name and dollar amount to a phrase describing the issuance of a loan. Unlike prior art tools for analyzing unstructured data 210, the proximity transformer can associate data elements together based on input rules, types of elements, and their proximity to one another in unstructured text.
In particular, the proximity transformer may be configured to look for a certain types of entity or relationship (based on entries in the entity and relationship hierarchy) entries in the analysis schema 108. Preferably, for each matching entity or relationship that is found, it then looks for the closest (by character position, number of words, number of sentences, number of paragraphs, or number of sections) instance of a second (and optionally third, fourth, etc.) specific type of entity. If the proper collection of relationship and entity types are located with a certain optional distance limit (preferably, based on character positions or other criteria listed above), and optionally within a certain direction from the first entity or relationship (up or down), then a new relationship is added to the analysis schema 108 to indicate the newly located relationship. The relationship is associated with its related entities and the roles that these entities play.
For example, the proximity transformer can be used to locate instances of loans described in the source documents, and to locate the borrower, lender, dates, and dollar amount of loans. In this example, the proximity transformed could first look for entries in an entity table in the analysis schema 108 that are related to the hierarchy element "loan". Then the transformer could search for the closest company entity and assign that company as the lender. Then it could locate the nearest person, and assign that person as the borrower. It could than locate the nearest entity of hierarchy type ufinancial->currency"
14
3651272vl and assign that to be the amount of the loan. Preferably, a new relationship would be entered into the relationship table to represent this loan and its associated related entities and the role that they play. Additionally, more sophisticated rule sets can be used in conjunction with proximity analysis in order to increase the quality of found relationships and assigned entity roles.
The middleware software system 100 also includes a table parser (not shown). The table parser is a custom transformation tool 220 that takes as an input a table of data (which may have been extracted from a document by using the section extractor) represented in textual form (either with markup tags such as HTML or in plain-text) and extracts the column headers, row headers, data points, and data multiplers (such as
"numbers in thousands") from the table. Unlike prior art tools for analyzing unstructured data 210, the table parser can preferably take any type of text table that is readable by a human and can convert the table into a structured rows, columns, cells, headers, and multiplier representation that can then be used for further structured analysis. Each input text table can vary from the next, and the table parser can extract data without being specifically pre-configured for each possible input table format. The table parser can adapt dynamically to any table format and any combination of columns and rows. It operates using algorithms designed to analyze a table as a human would visually, for example by distinguishing columns based on their placement to one another and the "whitespace" between them.
The detection of a table in document can be performed with section extractor, described above. Properly configured, the section extractor is capable of finding and segregating tables from surrounding text.
Once the table is extracted from the text, it then may be parsed by the table parser. Preferably, the first part of the algorithm breaks up the table into rows and columns and represents the table in a 2-dimension array. For tables represented in a markup language such as HTML, this may be done by analyzing the markup tags that delineate the table into rows and columns. Processing is then done to combine table cells that are marked as separate but only for visual formatting purposes.
For tables represented in plain-text without markup tags that are displayed in a fixed-width font such Courier, an algorithm is used that mimics how a human would
15
3651272vl visually identify columns based on the percentage of vertical white space in any vertical column. Columns that contain a large percentage of white space are identified as separating the table columns. Based on the column analysis, rows and columns are extracted and represented in a 2-dimensional array.
The 2-dimensional array, created either from a table with HTML or other markup, or from a plain-text table, may then be processed further to identify column headers, numerical order of magnitude indicators, and row headers. Column headers can be identified based on their position on top of columns that mainly contain numerical values. Order of magnitude indicators can be extracted from the top portion of the table and generally are worded as "numbers in thousands", or "numbers in millions". These conversion factors are then applied to the onward processing of the table. Preferably, row headers are located by looking for table rows that have a label on the left-side of the table but do not have corresponding numerical values, or that have summary values in the columns. Row headers can be differentiated from multi-line row labels by analyzing the indentation of the potential header and the row(s) below. The result of this processing is a data array containing row labels, corresponding headers, column headers, and corresponding numerical values.
This data, once extracted from a table, may then be stored in the capture schema 103 in a normalized data table that is capable of storing data extracted from any arbitrary table format. That data may then be loaded into the analysis schema 108 and can be analyzed along with any other structured and unstructured 210 data.
Capture schema 103 is preferably a database schema. That is, having a predesigned layout of data tables and the relationship between the tables. Preferably, the capture schema 108 is specially designed to serve as a repository for data captured by the extraction connectors 101 and also to hold the results of the transformation connectors
106. Capture schema 108 is designed in an application-independent manner so that it can preferably hold any type of source unstructured data 210, extracted headers and sections, and the results of transformation components 220. It also can preferably hold entities and relationships, as well as any data extracted from text tables within unstructured texts. The capture schema 103 can suit the needs of any type of unstructured data capture and transformation tool 220 without being custom-designed for each application.
16
3651272vl Additionally, the capture schema 103 is designed to capture and record the output from various types of text transformation tools 220, such as entity extraction, relationship extraction, categorization, and data matching tools. The capture schema 103 preferably has a general-purpose structure to accommodate the various outputs from a variety of type of text analysis tools from a variety of vendors, open source communities, or from custom application development projects.
The tables in the capture schema 103 include a table to store information about extracted entities, such as people, places, companies, dates, times, dollar amounts, etc. The entities are also associated with attributes, such as their language of origin or temporal qualities. Further, the capture schema 103 contains data relating to entity occurrences, which are the actual locations of the entities as found in the source documents. There may be multiple occurrences of the same entity in a single document. The capture schema 103 retains information about entities, entity occurrences, and the relationships between these items, as well as the associated attributes that may be associated with entities and entity occurrences.
The capture schema 103 also contains information on relationships. Relationships are associations between entities, or events that involve entities. Similar to entities, relationships also have associated relationship attributes and occurrences that are all captured by the capture schema 103. Additionally, the capture schema 103 contains a mapping table between relationships and the related entities, master entities, and entity occurrences, including information on the role that the related entities play in the association or event.
The capture schema 103 also contains information about documents in the middleware software system 100, and the relationships between the documents to the entities and relationships that are contained within them. Documents may have associated attributes (such as source, author, date, time, language, etc.), and may be grouped together in folders and be grouped by the source of the document. The documents are all assigned a unique key which can be used to identify the document and data derived from the document throughout the entire system and can be used to reference back to the original document in the original source. The binary and character text of the document can also be stored in the capture schema 103 as a CLOB and/or BLOB object. Sections of the
17
3651272vl document, if extracted by the section extractor, are also stored in the capture schema 103 and related to the documents that they were extracted from.
Information from categorization tools may also be included in the capture schema 103. Such data elements include topics and categories of documents and sections of documents. This data is linked to the other data such as entities and relationships through a series of cross-reference tables.
The capture schema is designed to consolidate the output from a variety of data analysis technologies in a central repository while retaining a consistent key to allow for cross-analysis and linking of results for further analysis. The consistent key also allows for drill-down from analytical reports back to source documents and to the details of the transformations that led to each data element being present in the schema.
For example, from a report that shows the average number of loans to executives disclosed in a company's SEC filings for an entire industry, an analyst could drill down to the number of loans for each company in the industry, then to the individual loans disclosed in each filing, then to the details of a particular loan event, then drill all the way down to the text in the filing that disclosed the loan. The textual source of the event is generally shown to the user within the context of the original source document, with the appropriate sentence(s) or section(s) highlighted.
This drill-down is enabled by several unique features of the system. The hierarchies present in the analysis schema, discussed in more detail below, can be traversed step-by-step along a variety of dimensions present in the schema to drill down to the precise set of information desired. From there, the details of the underlying relationships, events, or entities can be displayed from the user as they are also present in the analysis schema.
From there, when an analyst desired to view the underlying source material, the source document is retrieved either from the capture or analysis schema, if stored there, or from the original source location via a URL or other type of pointer. The relevant section, sentence, phrase, or word(s) can then be highlighted based on the starting and ending positions stored in the analysis schema that represent the location(s) that the relevant entities or relationships were extracted from originally.
18
3651272vl Figure 4 is a schematic illustration of the capture schema 103. Each of the boxes in the schematic diagram represents a component of the capture schema 103. These content and function of these components is as follows.
Document 401 : This is a data table that preferably contains details on each document, including the document title, URL or other link back to the source, the source text itself (optionally stored), the document size, language, initial processing characteristics, link to the folder or other logical corpus grouping containing the document, and a unique document key that is consistently used to refer to the document throughout the system. The term "document" in this system represents any distinct piece of text, which may or may not resemble a traditional paper document. For example a memo field value extracted from a CRM system would also be referred to as a distinct document by the system. Given this abstraction, a document could be very small or very large or somewhere in between.
Document Attributes 402: Preferably contains a mapping of each document to the extended properties or attributes of the document. Examples of document attributes include, but are not limited to, headers extracted from documents and their corresponding values, or other metadata that is extracted along with the document such as author(s), title, subtitle, copyright, publishers, etc.
Attributes 403: Preferably, contains a master lookup table of the types of attributes stored in the system, so that attributes representing the same type of data can be represented by the same attribute ID to allow for consistent analysis and loading of attribute data.
Keywords 404: Preferably contains a master lookup table of all keywords in all documents. A consistent key is assigned to each unique keyword to allow for consistent data loading and for cross-analysis of keywords across documents, sections of documents, and collections of documents.
Keyword Occurrence 405: Preferably, contains a mapping to the occurrences of keywords to the documents that contain the keywords. Preferably, it includes one entry for each keyword occurrence in each document. It also preferably includes the start and end position (represented by character count from start of document) of the occurrence of
19
3651272vl the keyword. Preferably, it also includes information relating to the extraction process that found the keyword occurrence.
Entity 406: Preferably contains one entry for each unique entity that is mentioned in each document. An entity generally represents a noun phrase that represents a physical or abstract object or concept. Entities are generally found as nouns in sentences. Example of entities include but are not limited to people, companies, buildings, cities, countries, physical objects, contracts, agreements, dates, times, various types of numbers including currency values, and other concepts.
Entity Attributes 407: Preferably contains attributes related to each entity. Attributes may be any arbitrary piece of metadata or other information that is related to an entity, and may include metadata from an entity extraction tool such as the confidence level associated with the extraction of the entity from a piece of text. Entity attributes may also include grouping or ontological information that is useful in the later creation of entity hierarchies during the creation of the analysis schema.
Entity Occurrence 408: Preferably contains one entry for each time an entity is mentioned in a document. It may also include the start and end position of the entity occurrence, as well as details of the extraction process that found the occurrence.
Entity Occurrence Attributes 409: Preferably contains arbitrary additional metadata relating to the entity occurrence. These attributes are typically similar and in some cases may be the same as the information in the Entity Attributes table, but may also contain attributes that are unique to a particular occurrence of an entity.
Relationship 410: Preferably contains details on relationships extracted from documents. A relationship represents a link between entities or an event involving entities. An example of a relationship would be "works-for," in which an entity of type person is found to work for an entity of type company, in a certain capacity such as
"President." This data structure represents unique relationships on a per-document basis.
Relationship Attributes 411 : Preferably contains additional details of the extracted relationships, such as the confidence level of the extracted relationship, ontological attributes of the relationship, or other attributes at the relationship level.
20
3651272vl Relationship Occurrence 412: Preferably contains information on each occurrence of text that references a certain relationship. For example, if a certain "works-for" relationship if referenced several times in a certain document, this table would contain one entry for each time the relationship is referenced. This table also may contain information on the exact start and end character position of where the relationship instance was found in the document.
Relationship Occurrence Attributes 413: Preferably contains details of attribute at the relationship occurrence level. May contain similar information to the Relationship Attributes table.
Relationship/Entity Xref 414: Preferably contains a cross-reference table that links the entities to the relationships that involve them. Preferably, this table exists both at the relationship and the relationship occurrence levels. It also may provide a link to the role that each entity plays in a certain relationship.
Relationship/Entity Roles 415: Preferably contains a master index of the various types of roles that are played by entities in various relationships. By providing for a master relationship role key, this allows relationship roles and the entities that play those roles to be matched across various documents and across collections of documents.
Document Folder 416: Preferably groups documents into folders. Folders are abstract concepts that can group documents and other folders together, and may or may not represent a folder structure that was present in the original source of the documents.
Concept/Topic 417: Preferably contains concepts or topics referred to in documents or assigned to documents by concept and topic detection tools. May also contain topics and concepts at the section, paragraph, or sentence level if concept and topic detection is performed at the lower sub-document level.
Concept/Topic Occurrence 418: Preferably contains details of exactly where certain topics or concepts were detected within a document or sub-component of a document. It may also include start and end position within the text of the concept or topic occurrence.
21
3651272vl Section 419: Preferably contains details on sections of documents. Sections may be designated in the extracted source document, or may be derived by the system's section extractor. Preferably, this table stores details on the sections, including the start and end position, and optionally stores the section text itself.
Paragraph 420: Preferably contains details on paragraphs within a document or within a section of a document. It preferably contains start and end position, and optionally contains the text of the paragraph itself.
Sentence 421: Preferably contains details on sentences within a document or within a section of a document. Preferably, it also contains start and end position, and optionally contains the text of the sentence itself.
The analysis schema 108 is similar to the capture schema 103, except it is preferably designed to allow for analysis by commercially-available structured data analysis tools 230 such as business intelligence, data mining, link analysis, mapping, visualization, reporting, and statistical tools. The analysis schema 108 provides a data schema that can be use to perform a wide range of differing types of analysis for a wide variety of applications based on data extracted from unstructured text without needing to be custom-designed for each analytical application, analysis tool, or each type of input data or applied transformation.
The data in the analysis schema 108 resembles the data in the capture schema 103, however it extends and transforms the data in several ways in order to structure and prepare the data for access and analysis by structured data analysis tools 230. In the analysis schema 108, the entities are preferably also grouped into master entities. The master entities group entities that appear in multiple documents that are the same in the real world. Also, master entities group together entities that may be spelled differently or have multiple names in various documents or sources into one master entity since they represent the same actually entity in the real world. For example, the terrorist group Hamas and the Islamic Resistance Movement may be grouped together as they represent the same actual group.
The analysis schema 108 can also group entities that are associated with a hierarchy. For example "George W. Bush" might be associated with the person -> government -> USA -> federal -> executive node of a hierarchy. Similar to entities,
22
3651272vl relationships also have associated hierarchies that also may reside in the analysis schema 108.
In the analysis schema 108, entities that represent dates and numeric amounts may be processed so that the date and/or numeric data is stored separately in specific table columns in the appropriate data types. Typically, this processing requires analysis of the text description of the entity and the extraction and processing of the text into standard date and numeric values.
Additionally, the analysis schema 108 also has the capability to be extended in order to include existing or other structured data, so that it can be cleanly tied to the rest of the data and analyzed together in one consistent schema.
Figure 5 is a schematic illustration of the analysis schema 108. Each of the boxes in the schematic diagram represents a component of the analysis schema 108. These content and function of these components is as follows.
The boxes labeled 501 through 521 correspond to boxes 401 through 421 of the capture schema 103, having substantially similar structure and performing substantially similar functions.
Master Entity 522: Preferably contains a unified ID that represents an entity that appears across multiple documents, and links to the underlying entities and entities that occur within individual documents. For example, a master entity of "United States of America" would refer to the country of the same name. The master entity would consolidate all mentions of the country in all documents, including mentions that use alternative expressions of the country's name such as "'United States", "USA", "U.S. of A", etc. This consolidated master entity allows this entity to be analyzed across documents as a single entity. The actual consolidation is preferably performed during the analytical ETL process using matching algorithms or through the use of external data matching technologies via a transformation connector 106.
Entity Hierarchy 523 : Preferably, places entities into a hierarchy based on an ontology of how entities relate to other entities and how they can be grouped together. For example, a hierarchy may group normal people into a "thing->physical->animate->person- >civilian" node of a hierarchy. By associating entities into hierarchies, the hierarchies can
23
3651272vl be used to group entities together into buckets that can then be used for analysis at various levels.
Master Entity Hierarchy 524: preferably, identical to the entity hierarchy, except at the master entity level. Both hierarchies are useful, as some types of analysis are best performed at the master entity level, and others at the entity level.
Master Relationship 525: Preferably, similar to master entity, except groups relationships into common relationships that are expressed across a group of documents. For example, the fact that George Washington was a former president of the United States maybe a relationship that is disclosed in a variety of documents across a document collection. The master relationship would establish this relationship, and would then link to the sub-relationships that are expressed in individual documents.
Relationship Hierarchy 526: Preferably, similar to the entity hierarchy, except representing relationships and events. For example, a car bombing event may be categorized into a hierarchy known as "event-physical-violent-attack-bombing- car_bombing." The analysis of various types of relationships and events across a hierarchy can provide interesting insights into what types of events are discussed in a set of documents, or are taking place in the world.
Master Relationship Hierarchy 527: Preferably, similar to the Relationship Hierarchy, except involving Master Relationships. These are useful as in some cases it is useful to analyze distinct relationships or events that may be referenced in multiple sources, and in other cases it may be interesting to analyze each individual reference to an event or the frequency of mentions of one event versus another.
Keyword Hierarchy 528: Preferably, groups keywords into hierarchies. These hierarchies can then be used to group data together for analysis.
Attribute Hierarchy 529: Preferably groups attributes together into hierarchies.
These hierarchies can then be used to group documents together based on their various attributes for analysis, or to select certain types of documents for inclusion or exclusion from certain analyses.
24
3651272vl Document Folder Hierarchy 530: Preferably, groups folders of documents into higher level folders in a recursive manner allowing for unlimited numbers of folder levels. These folders can be used to separate collections documents into distinct buckets that can be analyzed separately or in combination as required by the analytical application.
Document Source 531 : Preferably contains a cross-reference between each document and the source of the document. The source may be a certain operational or document management system, or may represent a news organization or other type of external content source.
Document Source Hierarchy 532: Preferably, groups document sources into categories. For example internal documents may be represented by an internal document hierarchy, and documents acquired from a news feed may be in a separate hierarchy based on type of news source and/or the geographic location of the source of the document.
Document Source Attributes 533: Preferably, contains any additional attributes relevant to the source of the document. Such attributes may be trustworthiness of the source, any political connections of the source, location of the source, or other arbitrary data points relating to the source of the documents.
Concept/Topic Hierarchy 534: Preferably, contains a hierarchy of concepts/topics. As with entities and relationships, concepts and topics are often interested to analyze within the context of a hierarchy. For example documents pertaining to international finance may need to be grouped and analyzed separately from those pertaining to intellectual property protection.
Time Dimension 535: Preferably, represents a standard relational time dimension as would be found in a traditional data warehouse. This dimension, for example, contains years, months, weeks, quarters, days, day of week, etc. and allows the rest of the data that is stored as date values to be analyzed and grouped by higher level date and time attributes, and also allows for calculations such as grow rather week over week or year over year. This also allows for period-to-date and this period vs. last period calculations such as those used in time series and growth rate analysis.
Entity (extensions) 506: Preferably, the analysis schema also extends the entity table to represent numerical, currency, or date-based entities in the appropriate data forms
25
3651272vl for analysis by analytical tools. For example, any entities representing currency would be converted to a currency data type in the underlying database or data storage repository.
The extraction/transform/load (ETL) layer 107 provides a mapping and loading routine to migrate data from the capture schema 103 to the analysis schema 108. The extraction/transform/load layer 107 is unique due to the uniqueness of the two general- purpose application-independent schemas that it moves data between. Further, the routines that make up the extraction/transfoπn/load layer 107 operate in an application- independent manner.
The ETL process can preferably contain the following steps:
• Master entity determination and assignment: Matching entities to corresponding master entities. Often involves matching disparate spellings to the corresponding master entities.
• Master relationship determination and assignment: Grouping of relationships together that represent the same relationships or events into a single master relationship.
• Entity Hierarchy & Master Entity Hierarchy creation: creation and/or maintenance of entities into their corresponding hierarchical groupings. Similar process for master entities. • Relationship Hierarchy & Master Relationship Hierarchy: creation and/or maintenance of relationships into their corresponding hierarchical groupings. Similar process for master relationships.
• Keyword Hierarchy: creation and/or maintenance of the keyword hierarchy.
• Attribute Hierarchy: creation and/or maintenance of the attribute hierarchy. • Concept/Topic Hierarchy: creation and/or maintenance of the concept/topic hierarchy.
• Document Folder: creation and/or maintenance of the document folder hierarchy.
• Document Source: extraction of document source information from document attributes into its own data structure. • Document Source Attributes: extraction of attributes relating to document sources into a separate data structure
26
3651272vl • Document Source Hierarchy: creation and/or maintenance of the document source hierarchy.
• Time Dimension: creation of the standard system time dimension for time-series analysis. • Entity Extensions: identification of date and numeric types of entities and conversion of date and numeric values into corresponding native data types where appropriate.
• Data de-duplication: identification and (optional) removal of duplicate source documents to avoid double-counting.
The core server 104 coordinates the execution of the various components of the middleware software system 100 and the movement of data between the components. It is designed in a multi-threaded, grid-friendly distributed manner to allow for the parallel processing of extremely large amounts of data through the system on a continuous realtime high-throughput basis. It is the only data processing server designed to perform these types of data movements and transformation based on unstructured data sources.
The features of the core server 104 can include:
• The ability to configure unstructured source extractors and treat them as black boxes in the data workflows
• The ability to extract unstructured data 210 from multiple disparate sources and source systems and use the extracted information as input for further processing
• The ability to automatically route the unstructured data 210 through a series of unstructured transformation tools 220, both custom-designed and off-the-shelf
• The ability to configure a end-to-end data flow from sources through one or more transformation tools 220, into a capture schema 103 and then into an analysis schema 108 for analysis by structured analysis tools 230
• The ability to retain a single key for each source document as it moves through the middleware software system 100 and as value-added information output from transformation tools 220 is added to the capture schema 103
• The storage of all extracted unstructured data 210 as well as all metadata and value-added extracted transformation results into a single capture schema 103
27
3651272vl • The ability to use a drag & drop data flow editor to design, edit, execute, and monitor unstructured data 210 flows through transformation tools 220 and into an analysis schema 108
The provider web service 109 provides a gateway for structured analysis tools 230 to access and analyze the data contained in the analysis schema 230. It is designed so that structured analysis tools 230 can access the analysis schema 108 using a standard web services approach. In this manner, the structured analysis tools 230 can use a web services interface to analyze the results of transformations applied to unstructured data 210 and can join this data to other existing structured data that may, for example, reside in a data warehouse. By allowing the analysis of structured data and unstructured data 210 together, new insights and findings can be found that would not be possible from structured data alone.
The structured connectors 110 allow structured data analysis tools 230 to analyze the data present in the analysis schema 108. While this may sometimes be performed through common interfaces such as ODBC or JDBC, the structured connectors 110 preferably also include the capability to pre-populate the metadata of the structured analysis tool 230 with tables, columns, attributes, facts, and metrics helpful to immediately begin analyzing the data present in the analysis schema 108 without performing tool customization or any application-specific setup. Preferably, the structured connectors 110 also provide the ability to drill-through to the original unstructured source document, and also provide the ability to view the path that the data took through the system and the transformations that were applied to any piece of data. Preferably, this allows the ability for an analyst to completely understand the genesis of any result that they see in the structured analysis tool 230, to know exactly where the data came from and how it was calculated, and to be able to drill all the way back to the original document or documents to confirm and validate any element of the resulting structured analysis.
Typically, metadata can be pre-populated for supported structured analysis tools 230. Preferably, middleware software system 100 includes a pre-configured project for each analysis tool to understand the tables, columns, and joins that are present in the analysis schema 108. Further, the tables, columns, and joins may be mapped to the business attributes, dimensions, facts, and measures that they represent. Preferably,
28
3651272vl analytical objects such as reports, graphs, and dashboards are also pre-built to allow out- of-the box analysis of data in supported structured analysis tools 230.
Drill-through to the underlying unstructured source data 210 is preferably accomplished through embedded hyperlinks that point to an additional component, the source highlighter. Preferably, the hyperlinks include the document ID, entity ID, or relationship ID from the analysis schema 108. The source highlighter can accesses the capture schema 103 and retrieve the document or section of document where the selected entity or relationship was found. Also the start and end character position may be loaded from the capture schema 103. If so, the source highlighter may display the document or section to the user, automatically scrolls down to the location of the relevant sentence, and highlight it for easy reference by the user.
The Middleware software system 100 also includes a confidence analysis component (not shown). The confidence analysis capability allows users to not only see and analyze data within structured analysis tools 230, but to also calculate a numeric confidence level for each data element or aggregate data calculation. Since unstructured data 210 is often imprecise, the ability to understand the confidence level of any finding is very useful. The confidence analysis capability joins together many data points that are captured throughout the flow of data through the middleware software system 100 to create a weighted statistically-oriented calculation of the confidence that can be assigned to any point of data. Preferably, this combines the results of various data sources and applied transformations into a single confidence score for each system data point, to provide for a quality level context while analyzing data generated by the middleware software system 100.
The algorithm used to calculate confidence can take into account the following factors when calculating a weighted confidence score for any data element in the middleware software system 100:
• Confidence score of value provided (if any) by transformation tools 220 used in the data flow to generate the relevant data point
• The number of relationships found in the source document compared to the size of the source document, compared to the average number of relationships found per kilobyte or other size measure of a document. This metric can also be calculated
29
3651272vl based on the average number of relationships per kilobyte for relationships of the same type as the selected relationship.
• The number of entities found to be associated with the relationship, compared to the average number of entities for relationships in the same hierarchy • The number of times similar relationships have been found in the past
• The number of entities that are grouped together to form a master entity
• The number of times the entity occurred in the document compared to the average number of occurrences for entities in the same hierarchy, optionally weighted by document size • Weighted confidences based on hierarchy of relationship or entity. Some hierarchies may be more highly trusted than others and assigned a higher confidence.
• Other commercially available measures of data extraction confidence that can be integrated with the system via the analysis schema 108 and included in confidence calculations.
• Measures based on the "fullness" of a relationship's attributes. For example a loan transaction event where detail involving loan size, payment terms, interest rate, lender, and borrower was all extracted would have a higher confidence score than a loan relationship that only identified the lender without the other attribute factors. • Measures based on the confluence of the same finding by multiple transformation tools. For example if two different entity extraction tools find the same entity in the same place, this would instill higher confidence in data and calculations involving the entity.
• Measures based on the source of the document. Some sources or authors may be weighted as higher confidence based on various factors.
• Weighted combinations of two or more of the above metrics and/or various other metrics.
Further, the confidence scores calculated based on factors such as those above can be assigned to individual data rows and data points of analysis results and displayed together with the resulting analysis.
The middleware software system 100 also includes an enhanced search component (not shown). While analysis of the data in the middleware software system's 100 capture
30
3651272vl schema 103 can provide for interesting insights, and represents a paradigm shift from traditional searching of unstructured information, the middleware software system 100 also provides data and metadata that can be used to improve existing or to drive new search capabilities.
Most searches of unstructured data are based on keywords or concepts described in individual source documents, and most searches result in a list of documents that meet the search criteria, often ordered by relevancy.
Middleware software system 100 allows those search results to be extended by the inclusion of additional items in the traditional search indexing process. These techniques include:
• Indexing the data in the analysis schema. This can be done by creating "data dump" reports using a reporting tool that create a list of each entity, topic, or relationship discussed in a document along with a link back to the source document. This report can then be run periodically automatically and included in the indexing routine of a standard search engine. The search engine can also be optionally enhanced to understand the format of this report and to rate, rank, and provide the results accordingly.
• Analytical reports can be automatically periodically run and included in the indexing process of a search engine. This allows a search engine to provide links to analytical reports interspersed within standard links back to source documents.
By indexing the reports headers, title, and comments, as well as the actual data that is contained in the report results, specialized search results can be achieved. For example, a search for "hamas growth rate" could provide a link back to a report that includes a metric called "growth rate" and a data item called "Hamas." • Search engines can be enhanced to index and understand the metadata contained in the definition of the dimensional model of the analytical data mart schema, the definitions of the facts, metrics, and measures, and also take into account the data contained within the dimensions and measures, and to provide results accordingly. For example, if a data mart contains a dimension such as "country", a dimension called "year", and a metric called "population", a search engine would be able to construct a report on the fly to answer a question such as "population USA 2004",
31
3651272vl without having previously indexed either a source document or a report result dataset containing this information.
The following is an example query that can be run using the system and method of the invention. In this example, the user wants to know which companies have had transactions with their own corporate officers that require reporting under SEC rales. This requires the processing and analysis of approximately 40,000 pages of SEC filings for each quarter-year's worth of filings. These filings are plain text, that is, unstructured data. Unfortunately for the user, there is no required uniform method of reporting the desired transactions to the SEC and thus, they may be found under sections with various headings and may be worded in various ways. Using the middleware software system 100 of the present invention, the filings are run through a transformation program 220 that is instructed to associate the corporate officers to particular types of transactions (e.g., loans, leases, purchases & sales, and employment-related). The associated data is then stored in data structures that can be analyzed with a business intelligence tool.
The business intelligence software analyzes the data and presents it using dashboards and reports. For example, the report illustrated in Figure 6 sorts the companies based on the number of reported transactions, identifying the number of transactions per type of transactions as well as a statistical comparison of the company against the industry average number of transactions. The reports illustrated in Figures 7 and 8 focus only on loan transactions, further identifying the industry groups of the individual corporations. This allows the user to determine if a specific industry commonly engages in a particular type of transaction and whether a specific company is behaving differently from its peers. Because the data is structured and linked to the original document, the business intelligence software can identify the recipients and amounts of the loans, Figure 9, as well as the source text in the original document, Figure 10. Further, the user can then click on hyperlinks to seamlessly view the original unstructured source to validate the findings.
Although the foregoing description is directed to the preferred embodiments of the invention, it is noted that other variations and modifications will be apparent to those skilled in the art, and may be made without departing from the spirit or scope of the invention. Moreover, features described in connection with one embodiment of the invention may be used in conjunction with other embodiments, even if not explicitly stated above.
32
3651272vl

Claims

WHAT IS CLAIMED IS:
1. A method of making unstructured data available to structured data tools comprising: accessing a source of unstructured data; extracting the unstructured data; writing the extracted unstructured data to a capture schema; sending the unstructured data to a transformation tool; transforming the unstructured data with the transformation tool; writing the transformed parsed unstructured data in a structured analysis schema; providing data connectors that allow structured data tools to access the structured analysis schema.
2. The method of claim 1, wherein extracting includes parsing the unstructured data and associating the data source with the parsed unstructured data.
3. The method of claim 1, wherein the transformation tool extracts individual pieces of data and performs text and/or data processing activities.
4. The method of claim 3, wherein the text and data processing activities include: determining the topic of a section of text, extracting a section of text from a whole document, matching names, or matching addresses.
5. The method of claim 1, wherein the structured data tools include business intelligence, statistical analysis, data visualization and mapping, or data mining.
6. The method of claim 1, wherein the source of unstructured data includes email, word processing documents, spreadsheets, presentation materials, PDF files, web pages, news/media reports, case files, transcriptions, file servers, web servers, enterprise content, enterprise search tool repositories, intranets, knowledge management systems, or document management systems.
33
3651272vl
7. The method of claim 1, wherein the transformation tool includes: (i) entity, concept and relationship tagging and extraction tools, (ii) categorization and topic extraction tools, (iii) data matching tools or, (iv) custom transformations.
8. A system for making unstructured data available to structured data tools comprising: code to access a source of unstructured data; code to extract the unstructured data; code to write the extracted unstructured data to a capture schema; code to send the unstructured data to a transformation tool; code to transform the unstructured data with the transformation tool; code to write the transformed parsed unstructured data in a structured analysis schema; code to provide data connectors that allow structured data tools to access the structured analysis schema.
9. The system of claim 8, wherein the code to extract includes code to parse the unstructured data and associate the data source with the parsed unstructured data.
10. The system of claim 8, wherein the transformation tool extracts individual pieces of data and performs text and/or data processing activities.
11. The system of claim 10, wherein the text and data processing activities include: determining the topic of a section of text, extracting a section of text from a whole document, matching names, or matching addresses.
12. The system of claim 8, wherein the structured data tools include business intelligence, statistical analysis, data visualization and mapping, or data mining.
13. The system of claim 8, wherein the source of unstructured data includes email, word processing documents, spreadsheets, presentation materials, PDF files, web pages, news/media reports, case files, transcriptions, file servers, web servers, enterprise content, enterprise search tool repositories, intranets, knowledge management systems, or document management systems.
34
3651272vl
14. The system of claim 8, wherein the transformation tool includes: (i) entity, concept and relationship tagging and extraction tools, (ii) categorization and topic extraction tools, (iii) data matching tools or, (iv) custom transformations.
15. An extraction service for extracting unstructured data from a plurality of unstructured data sources and a plurality of formats comprising: a plurality of APIs to interface with the plurality of unstructured data sources; and a single internal API that interfaces with a plurality of software components that allow structured data tools to operate on unstructured data.
16. The extraction service of claim 15, wherein the plurality of unstructured data sources includes email, word processing documents, spreadsheets, presentation materials, PDF files, web pages, news/media reports, case files, transcriptions, file servers, web servers, enterprise content, enterprise search tool repositories, intranets, knowledge management systems, and document management systems.
17. A transformation connector comprising: code capable of understanding the format of data provided by a transformation tool; and code to convert the data provided by a transformation tool to a data format that maps to a data capture schema, the data capture schema comprising; a table to store data extracted from a plurality of source documents having unstructured data; and a table to store information about the extracted data, wherein the plurality of documents are assigned a unique key that identifies the document throughout a software system allowing (i) cross-analysis, (ii) linking of results for further analysis, (iii) drill-down from analytical reports back to the source documents or (iv) drill-down from analytical reports back to transformation information stored in the schema.
18. The transformation connector of claim 17, wherein the transformation tool includes: (i) entity, concept and relationship tagging and extraction tools, (ii)
35
3651272vl categorization and topic extraction tools, (iii) data matching tools or, (iv) custom transformations .
19. The transformation connector of claim 17, wherein the code to convert the data comprises at least one XSL transform.
20. A core server comprising code to allow parallel processing of unstructured data on a continuous real-time basis, wherein the code is adapted to configure unstructured source extractors and treat them as black boxes in a data workflow; the code is adapted to extract unstructured text from a plurality of data sources and source systems, the extracted unstructured text available for input for further processing; the code is adapted to configure end-to-end data flow from the plurality of data sources through one or more transformation components into a capture schema and into an analysis schema for analysis by structured data analysis tools; the code is adapted to retain a single key for each data source, the key being associated with data generated by the transformation components; and the code is adapted to store all extracted unstructured text, metadata and transformation data in a single schema.
21. The core server of claim 20, wherein the code is adapted to use a drag and drop data editor.
22. A structured data connector that allows structured data analysis tools to analyze data in an analysis schema comprising:
ODBC code; JDBC code; and code to pre-populate metadata of the structured data analysis tools with tables, columns, attributes, data and metrics from an analysis schema without performing tool customization or application specific setup.
23. The structured data connector of claim 22, further comprising pre-built reports, graphs and dashboards.
36
3651272vl
24. The structured data connector of claim 22, further comprising embedded hyperlinks that allow drill-through to underlying data sources.
25. The structured data connector of claim 24, wherein the hyperlinks include a document ID, entity ID5 or relationship ID from the analysis schema.
26. The structured data connector of claim 25, further comprising a source highlighter, the source highlighter adapted to access a capture schema and retrieve a source document or a section of a source document.
27. The structured data connector of claim 26, wherein the source highlighter is adapted to retrieve start and end character positions, and to scroll down and highlight a relevant sentence in a retrieved source document or in a retrieved section of a source document.
37
3651272vl
PCT/US2006/025811 2005-07-05 2006-06-30 System and method of making unstructured data available to structured data analysis tools WO2007005730A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP06774414.4A EP1899855B1 (en) 2005-07-05 2006-06-30 System and method of making unstructured data available to structured data analysis tools

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/172,955 US7849048B2 (en) 2005-07-05 2005-07-05 System and method of making unstructured data available to structured data analysis tools
US11/172,955 2005-07-05

Publications (3)

Publication Number Publication Date
WO2007005730A2 true WO2007005730A2 (en) 2007-01-11
WO2007005730A3 WO2007005730A3 (en) 2007-04-05
WO2007005730B1 WO2007005730B1 (en) 2007-06-07

Family

ID=37605090

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2006/025811 WO2007005730A2 (en) 2005-07-05 2006-06-30 System and method of making unstructured data available to structured data analysis tools

Country Status (3)

Country Link
US (2) US7849048B2 (en)
EP (1) EP1899855B1 (en)
WO (1) WO2007005730A2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101568346B1 (en) 2014-03-28 2015-11-12 주식회사 솔트룩스 Knowledge acquisition system based on un-structured data for never-ending and self-evolving
CN105518673A (en) * 2014-07-15 2016-04-20 微软技术许可有限责任公司 Managing data ingestion
US9477749B2 (en) 2012-03-02 2016-10-25 Clarabridge, Inc. Apparatus for identifying root cause using unstructured data
AU2016228174B1 (en) * 2016-04-27 2017-03-30 Accenture Global Solutions Limited Machine for generating unstructured syntax
US10248702B2 (en) 2016-07-29 2019-04-02 International Business Machines Corporation Integration management for structured and unstructured data
US10282454B2 (en) 2016-04-27 2019-05-07 Accenture Global Solutions Limited Machine for generating unstructured syntax
CN110826974A (en) * 2018-08-13 2020-02-21 山东大学 Scientific and technological achievement transformation/incubation big data cloud platform internet + system

Families Citing this family (237)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8396859B2 (en) 2000-06-26 2013-03-12 Oracle International Corporation Subject matter context search engine
US7441246B2 (en) * 2004-03-19 2008-10-21 Microsoft Corporation Configurable collection of computer related metric data
US7536634B2 (en) * 2005-06-13 2009-05-19 Silver Creek Systems, Inc. Frame-slot architecture for data conversion
US20060112123A1 (en) * 2004-11-24 2006-05-25 Macnica, Inc. Spreadsheet user-interfaced business data visualization and publishing system
US7849049B2 (en) 2005-07-05 2010-12-07 Clarabridge, Inc. Schema and ETL tools for structured and unstructured data
US7490108B2 (en) * 2005-10-19 2009-02-10 Hewlett-Packard Development Company, L.P. Data consolidation
US7523135B2 (en) * 2005-10-20 2009-04-21 International Business Machines Corporation Risk and compliance framework
US7620642B2 (en) * 2005-12-13 2009-11-17 Sap Ag Mapping data structures
US8407585B2 (en) * 2006-04-19 2013-03-26 Apple Inc. Context-aware content conversion and interpretation-specific views
US8140464B2 (en) * 2006-04-28 2012-03-20 Battelle Memorial Institute Hypothesis analysis methods, hypothesis analysis devices, and articles of manufacture
WO2007150006A2 (en) 2006-06-22 2007-12-27 Multimodal Technologies, Inc. Applying service levels to transcripts
US20080065671A1 (en) * 2006-09-07 2008-03-13 Xerox Corporation Methods and apparatuses for detecting and labeling organizational tables in a document
US20080091423A1 (en) * 2006-10-13 2008-04-17 Shourya Roy Generation of domain models from noisy transcriptions
WO2008054948A1 (en) * 2006-10-31 2008-05-08 Nielsen Media Research, Inc. Methods and systems to retrieve information from data sources
US8032566B2 (en) * 2006-12-04 2011-10-04 Teradata Us, Inc. Tools for defining and using custom analysis modules
US7912816B2 (en) * 2007-04-18 2011-03-22 Alumni Data Inc. Adaptive archive data management
JP4395176B2 (en) * 2007-05-10 2010-01-06 インターナショナル・ビジネス・マシーンズ・コーポレーション Future technology trend prediction support apparatus, method, program, and method for providing future technology trend prediction support service
US20080294976A1 (en) * 2007-05-22 2008-11-27 Eyal Rosenberg System and method for generating and communicating digital documents
US8954476B2 (en) * 2007-08-06 2015-02-10 Nipendo Ltd. System and method for mediating transactions of digital documents
US9646083B2 (en) * 2007-12-03 2017-05-09 International Business Machines Corporation Web 2.0 system and method for dynamic categorization of heterogeneous and regulated enterprise assets
US8140584B2 (en) * 2007-12-10 2012-03-20 Aloke Guha Adaptive data classification for data mining
US7779051B2 (en) * 2008-01-02 2010-08-17 International Business Machines Corporation System and method for optimizing federated and ETL'd databases with considerations of specialized data structures within an environment having multidimensional constraints
US7949654B2 (en) * 2008-03-31 2011-05-24 International Business Machines Corporation Supporting unified querying over autonomous unstructured and structured databases
US8620635B2 (en) 2008-06-27 2013-12-31 Microsoft Corporation Composition of analytics models
US8117145B2 (en) 2008-06-27 2012-02-14 Microsoft Corporation Analytical model solver framework
US8255192B2 (en) * 2008-06-27 2012-08-28 Microsoft Corporation Analytical map models
US20090322739A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Visual Interactions with Analytics
US8411085B2 (en) * 2008-06-27 2013-04-02 Microsoft Corporation Constructing view compositions for domain-specific environments
US8290951B1 (en) * 2008-07-10 2012-10-16 Bank Of America Corporation Unstructured data integration with a data warehouse
US20100042623A1 (en) * 2008-08-14 2010-02-18 Junlan Feng System and method for mining and tracking business documents
US8266148B2 (en) * 2008-10-07 2012-09-11 Aumni Data, Inc. Method and system for business intelligence analytics on unstructured data
US8190406B2 (en) * 2008-11-26 2012-05-29 Microsoft Corporation Hybrid solver for data-driven analytics
US8145615B2 (en) * 2008-11-26 2012-03-27 Microsoft Corporation Search and exploration using analytics reference model
US8103608B2 (en) * 2008-11-26 2012-01-24 Microsoft Corporation Reference model for data-driven analytics
US8155931B2 (en) * 2008-11-26 2012-04-10 Microsoft Corporation Use of taxonomized analytics reference model
US20100161344A1 (en) * 2008-12-12 2010-06-24 Dyson David S Methods and apparatus to prepare report requests
US8314793B2 (en) * 2008-12-24 2012-11-20 Microsoft Corporation Implied analytical reasoning and computation
US8615707B2 (en) 2009-01-16 2013-12-24 Google Inc. Adding new attributes to a structured presentation
US8977645B2 (en) 2009-01-16 2015-03-10 Google Inc. Accessing a search interface in a structured presentation
US8452791B2 (en) 2009-01-16 2013-05-28 Google Inc. Adding new instances to a structured presentation
US8412749B2 (en) 2009-01-16 2013-04-02 Google Inc. Populating a structured presentation with new values
US20100228794A1 (en) * 2009-02-25 2010-09-09 International Business Machines Corporation Semantic document analysis
US8352412B2 (en) * 2009-02-27 2013-01-08 International Business Machines Corporation System for monitoring global online opinions via semantic extraction
US8250026B2 (en) 2009-03-06 2012-08-21 Peoplechart Corporation Combining medical information captured in structured and unstructured data formats for use or display in a user application, interface, or view
US8692826B2 (en) * 2009-06-19 2014-04-08 Brian C. Beckman Solver-based visualization framework
US8788574B2 (en) * 2009-06-19 2014-07-22 Microsoft Corporation Data-driven visualization of pseudo-infinite scenes
US8866818B2 (en) 2009-06-19 2014-10-21 Microsoft Corporation Composing shapes and data series in geometries
US8259134B2 (en) * 2009-06-19 2012-09-04 Microsoft Corporation Data-driven model implemented with spreadsheets
US8493406B2 (en) * 2009-06-19 2013-07-23 Microsoft Corporation Creating new charts and data visualizations
US8531451B2 (en) * 2009-06-19 2013-09-10 Microsoft Corporation Data-driven visualization transformation
US9330503B2 (en) 2009-06-19 2016-05-03 Microsoft Technology Licensing, Llc Presaging and surfacing interactivity within data visualizations
US8352397B2 (en) * 2009-09-10 2013-01-08 Microsoft Corporation Dependency graph in data-driven model
US9361359B1 (en) * 2009-09-25 2016-06-07 Emc Corporation Accessing schema-free databases
US9600919B1 (en) 2009-10-20 2017-03-21 Yahoo! Inc. Systems and methods for assembling and/or displaying multimedia objects, modules or presentations
AU2009233605B2 (en) * 2009-10-30 2016-06-23 IFRS System Pty Limited Processing Engine
US8683311B2 (en) 2009-12-11 2014-03-25 Microsoft Corporation Generating structured data objects from unstructured web pages
US20110145710A1 (en) * 2009-12-16 2011-06-16 Sap Ag Framework to visualize networks
US8805707B2 (en) 2009-12-31 2014-08-12 Hartford Fire Insurance Company Systems and methods for providing a safety score associated with a user location
US9558520B2 (en) * 2009-12-31 2017-01-31 Hartford Fire Insurance Company System and method for geocoded insurance processing using mobile devices
US8843815B2 (en) * 2010-01-18 2014-09-23 Hewlett-Packard Development Company, L. P. System and method for automatically extracting metadata from unstructured electronic documents
US20120303645A1 (en) * 2010-02-03 2012-11-29 Anita Kulkarni-Puranik System and method for extraction of structured data from arbitrarily structured composite data
US20110314001A1 (en) * 2010-06-18 2011-12-22 Microsoft Corporation Performing query expansion based upon statistical analysis of structured data
US9043296B2 (en) 2010-07-30 2015-05-26 Microsoft Technology Licensing, Llc System of providing suggestions based on accessible and contextual information
EP2601642B1 (en) * 2010-08-04 2018-06-13 Exxonmobil Upstream Research Company System and method for summarizing data on an unstructured grid
US8959102B2 (en) 2010-10-08 2015-02-17 Mmodal Ip Llc Structured searching of dynamic structured document corpuses
US10318877B2 (en) 2010-10-19 2019-06-11 International Business Machines Corporation Cohort-based prediction of a future event
US8484255B2 (en) * 2010-12-03 2013-07-09 Sap Ag Automatic conversion of multidimentional schema entities
US9064004B2 (en) * 2011-03-04 2015-06-23 Microsoft Technology Licensing, Llc Extensible surface for consuming information extraction services
US8407165B2 (en) 2011-06-15 2013-03-26 Ceresis, Llc Method for parsing, searching and formatting of text input for visual mapping of knowledge information
US9037529B2 (en) 2011-06-15 2015-05-19 Ceresis, Llc Method for generating visual mapping of knowledge information from parsing of text inputs for subjects and predicates
US9785982B2 (en) 2011-09-12 2017-10-10 Doco Labs, Llc Telecom profitability management
US9110904B2 (en) * 2011-09-21 2015-08-18 Verizon Patent And Licensing Inc. Rule-based metadata transformation and aggregation for programs
US9361320B1 (en) * 2011-09-30 2016-06-07 Emc Corporation Modeling big data
US9020981B2 (en) * 2011-09-30 2015-04-28 Comprehend Systems, Inc. Systems and methods for generating schemas that represent multiple data sources
US8838519B2 (en) * 2011-10-06 2014-09-16 Ut-Battelle, Llc Graph-theoretic analysis of discrete-phase-space states for condition change detection and quantification of information
US9245010B1 (en) 2011-11-02 2016-01-26 Sri International Extracting and leveraging knowledge from unstructured data
US8996350B1 (en) 2011-11-02 2015-03-31 Dub Software Group, Inc. System and method for automatic document management
US10114843B2 (en) * 2011-11-09 2018-10-30 Sap Se Content migration framework
US8725552B2 (en) * 2011-11-28 2014-05-13 Dr/Decision Resources, Llc Pharmaceutical/life science technology evaluation and scoring
US8458189B1 (en) * 2011-11-28 2013-06-04 Sap Ag Automatic tagging between structured/unstructured data
TW201324417A (en) * 2011-12-08 2013-06-16 Infopower Corp Data processing method of business intelligence software
US10387503B2 (en) 2011-12-15 2019-08-20 Excalibur Ip, Llc Systems and methods involving features of search and/or search integration
US10296158B2 (en) 2011-12-20 2019-05-21 Oath Inc. Systems and methods involving features of creation/viewing/utilization of information modules such as mixed-media modules
US10504555B2 (en) 2011-12-20 2019-12-10 Oath Inc. Systems and methods involving features of creation/viewing/utilization of information modules such as mixed-media modules
US20130185276A1 (en) * 2012-01-17 2013-07-18 Sackett Solutions & Innovations, LLC System for Search and Customized Information Updating of New Patents and Research, and Evaluation of New Research Projects' and Current Patents' Potential
US9836805B2 (en) * 2012-01-17 2017-12-05 Sackett Solutions & Innovations, LLC System for search and customized information updating of new patents and research, and evaluation of new research projects' and current patents' potential
US11099714B2 (en) 2012-02-28 2021-08-24 Verizon Media Inc. Systems and methods involving creation/display/utilization of information modules, such as mixed-media and multimedia modules
US20130232157A1 (en) * 2012-03-05 2013-09-05 Tammer Eric Kamel Systems and methods for processing unstructured numerical data
US8583626B2 (en) 2012-03-08 2013-11-12 International Business Machines Corporation Method to detect reference data tables in ETL processes
US8954376B2 (en) * 2012-03-08 2015-02-10 International Business Machines Corporation Detecting transcoding tables in extract-transform-load processes
US8892579B2 (en) * 2012-04-26 2014-11-18 Anu Pareek Method and system of data extraction from a portable document format file
US9177000B2 (en) 2012-04-30 2015-11-03 International Business Machines Corporation Data index using a linked data standard
US10304036B2 (en) 2012-05-07 2019-05-28 Nasdaq, Inc. Social media profiling for one or more authors using one or more social media platforms
US9418389B2 (en) 2012-05-07 2016-08-16 Nasdaq, Inc. Social intelligence architecture using social media message queues
US20130311166A1 (en) * 2012-05-15 2013-11-21 Andre Yanpolsky Domain-Specific Natural-Language Processing Engine
WO2013177476A1 (en) 2012-05-23 2013-11-28 Qwiki, Inc. Systems and methods involving creation of information modules, including server, media searching. user interface and/or other features
US9251180B2 (en) 2012-05-29 2016-02-02 International Business Machines Corporation Supplementing structured information about entities with information from unstructured data sources
US10303723B2 (en) 2012-06-12 2019-05-28 Excalibur Ip, Llc Systems and methods involving search enhancement features associated with media modules
US10417289B2 (en) 2012-06-12 2019-09-17 Oath Inc. Systems and methods involving integration/creation of search results media modules
US8849843B1 (en) * 2012-06-18 2014-09-30 Ez-XBRL Solutions, Inc. System and method for facilitating associating semantic labels with content
US9679077B2 (en) 2012-06-29 2017-06-13 Mmodal Ip Llc Automated clinical evidence sheet workflow
US9047587B2 (en) * 2012-07-16 2015-06-02 Sap Portals Israel Ltd Incorporating electronic communication data content into an enterprise workspace
US20140164417A1 (en) * 2012-07-26 2014-06-12 Infosys Limited Methods for analyzing user opinions and devices thereof
US20140046977A1 (en) * 2012-08-10 2014-02-13 Xurmo Technologies Pvt. Ltd. System and method for mining patterns from relationship sequences extracted from big data
CA2881564A1 (en) 2012-08-13 2014-02-20 Mmodal Ip Llc Maintaining a discrete data representation that corresponds to information contained in free-form text
US8762134B2 (en) 2012-08-30 2014-06-24 Arria Data2Text Limited Method and apparatus for situational analysis text generation
US9135244B2 (en) 2012-08-30 2015-09-15 Arria Data2Text Limited Method and apparatus for configurable microplanning
US9355093B2 (en) 2012-08-30 2016-05-31 Arria Data2Text Limited Method and apparatus for referring expression generation
US9336193B2 (en) 2012-08-30 2016-05-10 Arria Data2Text Limited Method and apparatus for updating a previously generated text
US9135327B1 (en) 2012-08-30 2015-09-15 Ez-XBRL Solutions, Inc. System and method to facilitate the association of structured content in a structured document with unstructured content in an unstructured document
US9405448B2 (en) 2012-08-30 2016-08-02 Arria Data2Text Limited Method and apparatus for annotating a graphical output
US8762133B2 (en) 2012-08-30 2014-06-24 Arria Data2Text Limited Method and apparatus for alert validation
US9424249B1 (en) 2012-09-18 2016-08-23 Amazon Technologies, Inc. Encoding text units
US8725750B1 (en) * 2012-10-25 2014-05-13 Hulu, LLC Framework for generating programs to process beacons
US9600471B2 (en) 2012-11-02 2017-03-21 Arria Data2Text Limited Method and apparatus for aggregating with information generalization
WO2014076525A1 (en) 2012-11-16 2014-05-22 Data2Text Limited Method and apparatus for expressing time in an output text
WO2014076524A1 (en) 2012-11-16 2014-05-22 Data2Text Limited Method and apparatus for spatial descriptions in an output text
US10115202B2 (en) 2012-12-27 2018-10-30 Arria Data2Text Limited Method and apparatus for motion detection
WO2014102569A1 (en) 2012-12-27 2014-07-03 Arria Data2Text Limited Method and apparatus for motion description
GB2524934A (en) 2013-01-15 2015-10-07 Arria Data2Text Ltd Method and apparatus for document planning
US9291608B2 (en) 2013-03-13 2016-03-22 Aclima Inc. Calibration method for distributed sensor system
US9297748B2 (en) 2013-03-13 2016-03-29 Aclima Inc. Distributed sensor system with remote sensor nodes and centralized data processing
US9128994B2 (en) 2013-03-14 2015-09-08 Microsoft Technology Licensing, Llc Visually representing queries of multi-source data
US9299041B2 (en) 2013-03-15 2016-03-29 Business Objects Software Ltd. Obtaining data from unstructured data for a structured data collection
US9262550B2 (en) 2013-03-15 2016-02-16 Business Objects Software Ltd. Processing semi-structured data
US9607038B2 (en) 2013-03-15 2017-03-28 International Business Machines Corporation Determining linkage metadata of content of a target document to source documents
US9218568B2 (en) 2013-03-15 2015-12-22 Business Objects Software Ltd. Disambiguating data using contextual and historical information
US20140331179A1 (en) * 2013-05-06 2014-11-06 Microsoft Corporation Automated Presentation of Visualized Data
US9495347B2 (en) * 2013-07-16 2016-11-15 Recommind, Inc. Systems and methods for extracting table information from documents
US9342608B2 (en) 2013-08-01 2016-05-17 International Business Machines Corporation Clarification of submitted questions in a question and answer system
EP3039571A4 (en) * 2013-08-27 2017-05-03 Paper Software LLC Cross-references within a hierarchically structured document
WO2015028844A1 (en) 2013-08-29 2015-03-05 Arria Data2Text Limited Text generation from correlated alerts
US9244894B1 (en) 2013-09-16 2016-01-26 Arria Data2Text Limited Method and apparatus for interactive reports
US9396181B1 (en) 2013-09-16 2016-07-19 Arria Data2Text Limited Method, apparatus, and computer program product for user-directed reporting
EP3049914B1 (en) * 2013-09-25 2020-08-12 Chartspan Medical Technologies, Inc. User-initiated data recognition and data conversion process
US9396031B2 (en) 2013-09-27 2016-07-19 International Business Machines Corporation Distributed UIMA cluster computing (DUCC) facility
US9659108B2 (en) 2013-12-02 2017-05-23 Qbase, LLC Pluggable architecture for embedding analytics in clustered in-memory databases
US9922032B2 (en) 2013-12-02 2018-03-20 Qbase, LLC Featured co-occurrence knowledge base from a corpus of documents
US9177262B2 (en) 2013-12-02 2015-11-03 Qbase, LLC Method of automated discovery of new topics
US9223833B2 (en) 2013-12-02 2015-12-29 Qbase, LLC Method for in-loop human validation of disambiguated features
US9547701B2 (en) 2013-12-02 2017-01-17 Qbase, LLC Method of discovering and exploring feature knowledge
US9025892B1 (en) 2013-12-02 2015-05-05 Qbase, LLC Data record compression with progressive and/or selective decomposition
US9424524B2 (en) 2013-12-02 2016-08-23 Qbase, LLC Extracting facts from unstructured text
US9424294B2 (en) 2013-12-02 2016-08-23 Qbase, LLC Method for facet searching and search suggestions
US9355152B2 (en) 2013-12-02 2016-05-31 Qbase, LLC Non-exclusionary search within in-memory databases
US9230041B2 (en) 2013-12-02 2016-01-05 Qbase, LLC Search suggestions of related entities based on co-occurrence and/or fuzzy-score matching
US9201744B2 (en) 2013-12-02 2015-12-01 Qbase, LLC Fault tolerant architecture for distributed computing systems
US9208204B2 (en) 2013-12-02 2015-12-08 Qbase, LLC Search suggestions using fuzzy-score matching and entity co-occurrence
WO2015084757A1 (en) * 2013-12-02 2015-06-11 Qbase, LLC Systems and methods for processing data stored in a database
US9542477B2 (en) 2013-12-02 2017-01-10 Qbase, LLC Method of automated discovery of topics relatedness
US9836708B2 (en) 2013-12-13 2017-12-05 Visier Solutions, Inc. Dynamic identification of supported items in an application
US10114878B2 (en) 2013-12-16 2018-10-30 International Business Machines Corporation Index utilization in ETL tools
US9015730B1 (en) 2013-12-17 2015-04-21 International Business Machines Corporation Natural language access to application programming interfaces
US10466217B1 (en) 2013-12-23 2019-11-05 Aclima Inc. Method to combine partially aggregated sensor data in a distributed sensor system
WO2015112112A1 (en) 2014-01-21 2015-07-30 Hewlett-Packard Development Company, L.P. Automatically discovering topology of an information technology (it) infrastructure
US20150213035A1 (en) * 2014-01-24 2015-07-30 Bit Stew Systems Inc. Search Engine System and Method for a Utility Interface Platform
US10664558B2 (en) 2014-04-18 2020-05-26 Arria Data2Text Limited Method and apparatus for document planning
US10877955B2 (en) * 2014-04-29 2020-12-29 Microsoft Technology Licensing, Llc Using lineage to infer data quality issues
US10089409B2 (en) 2014-04-29 2018-10-02 Microsoft Technology Licensing, Llc Event-triggered data quality verification
WO2015165545A1 (en) * 2014-05-01 2015-11-05 Longsand Limited Embedded processing of structured and unstructured data using a single application protocol interface (api)
WO2016007162A1 (en) 2014-07-10 2016-01-14 Hewlett-Packard Development Company, L.P. Categorizing columns in a data table
WO2016054196A1 (en) * 2014-10-01 2016-04-07 Docurated, Inc. Document curation system
CN105786921B (en) * 2014-12-26 2019-06-18 北京航天测控技术有限公司 A kind of the data module method for transformation and device of non-structured document
US10909138B2 (en) 2015-03-10 2021-02-02 Microsoft Technology Licensing, Llc Transforming data to share across applications
US9836599B2 (en) 2015-03-13 2017-12-05 Microsoft Technology Licensing, Llc Implicit process detection and automation from unstructured activity
US10242359B2 (en) 2015-03-18 2019-03-26 International Business Machines Corporation Mining unstructured online content for automated currency value conversion
WO2016178894A1 (en) * 2015-05-02 2016-11-10 Vatbox, Ltd. A system and method for verifying enterprise resource planning data
CN107368506B (en) * 2015-05-11 2020-11-06 斯图飞腾公司 Unstructured data analysis system and method
US10331633B2 (en) 2015-06-04 2019-06-25 International Business Machines Corporation Schema discovery through statistical transduction
US20200257735A1 (en) * 2015-07-27 2020-08-13 Opisoft Care Ltd. System and method for phrase search within document section
US10061766B2 (en) 2015-07-27 2018-08-28 Texas State Technical College System Systems and methods for domain-specific machine-interpretation of input data
US10776357B2 (en) 2015-08-26 2020-09-15 Infosys Limited System and method of data join and metadata configuration
US10025846B2 (en) 2015-09-14 2018-07-17 International Business Machines Corporation Identifying entity mappings across data assets
US20170116550A1 (en) * 2015-09-30 2017-04-27 Tata Consultancy Services Limited System and method for enterprise data management
US10055430B2 (en) 2015-10-14 2018-08-21 International Business Machines Corporation Method for classifying an unmanaged dataset
US20170116194A1 (en) 2015-10-23 2017-04-27 International Business Machines Corporation Ingestion planning for complex tables
JP6893209B2 (en) * 2015-10-30 2021-06-23 アクシオム コーポレーション Automatic interpretation of structured multifield file layout
US10628456B2 (en) * 2015-10-30 2020-04-21 Hartford Fire Insurance Company Universal analytical data mart and data structure for same
US10521464B2 (en) * 2015-12-10 2019-12-31 Agile Data Decisions, Llc Method and system for extracting, verifying and cataloging technical information from unstructured documents
US11151653B1 (en) 2016-06-16 2021-10-19 Decision Resources, Inc. Method and system for managing data
US10963634B2 (en) * 2016-08-04 2021-03-30 Servicenow, Inc. Cross-platform classification of machine-generated textual data
US10445432B1 (en) 2016-08-31 2019-10-15 Arria Data2Text Limited Method and apparatus for lightweight multilingual natural language realizer
US10467347B1 (en) 2016-10-31 2019-11-05 Arria Data2Text Limited Method and apparatus for natural language document orchestrator
US10824681B2 (en) * 2016-11-21 2020-11-03 Sap Se Enterprise resource textual analysis
US10628058B1 (en) 2017-02-15 2020-04-21 Bank Of America Corporation System for electronic data verification, storage, and transfer
US11921765B2 (en) 2017-02-24 2024-03-05 Red Hat, Inc. Systematic iterative analysis of unstructured data files
EP3605363A4 (en) 2017-03-30 2020-02-26 Nec Corporation Information processing system, feature value explanation method and feature value explanation program
US11113259B2 (en) * 2017-08-02 2021-09-07 Tata Consultancy Services Limited Method and system for analyzing unstructured data for compliance enforcement
SG11202003814TA (en) 2017-10-05 2020-05-28 Dotdata Inc Feature generating device, feature generating method, and feature generating program
US11763077B1 (en) * 2017-11-03 2023-09-19 EMC IP Holding Company LLC Uniform parsing of configuration files for multiple product types
US10592738B2 (en) 2017-12-01 2020-03-17 International Business Machines Corporation Cognitive document image digitalization
EP3495968A1 (en) * 2017-12-11 2019-06-12 Tata Consultancy Services Limited Method and system for extraction of relevant sections from plurality of documents
US10296578B1 (en) 2018-02-20 2019-05-21 Paycor, Inc. Intelligent extraction and organization of data from unstructured documents
US10698911B1 (en) * 2018-03-15 2020-06-30 Keysight Technologies, Inc. Method for ranking possible causes for anomalies in large data sets
US11048762B2 (en) 2018-03-16 2021-06-29 Open Text Holdings, Inc. User-defined automated document feature modeling, extraction and optimization
US10762142B2 (en) 2018-03-16 2020-09-01 Open Text Holdings, Inc. User-defined automated document feature extraction and optimization
US10956436B2 (en) 2018-04-17 2021-03-23 International Business Machines Corporation Refining search results generated from a combination of multiple types of searches
CN109241144B (en) * 2018-04-24 2022-02-08 中国银行股份有限公司 Operation and maintenance data mining and compliance checking method and system
US11487941B2 (en) * 2018-05-21 2022-11-01 State Street Corporation Techniques for determining categorized text
US10509813B1 (en) * 2018-06-01 2019-12-17 Droit Financial Technologies LLC System and method for analyzing and modeling content
WO2019241630A1 (en) * 2018-06-15 2019-12-19 Deep Insight Solutions, Inc. Systems and methods for an artificial intelligence data fusion platform
US11061942B2 (en) 2018-09-07 2021-07-13 Graywell, Inc. Unstructured data fusion by content-aware concurrent data processing pipeline
US10936640B2 (en) * 2018-10-09 2021-03-02 International Business Machines Corporation Intelligent visualization of unstructured data in column-oriented data tables
US10963353B2 (en) * 2018-10-23 2021-03-30 Capital One Services, Llc Systems and methods for cross-regional back up of distributed databases on a cloud service
US11790262B2 (en) * 2019-01-22 2023-10-17 Accenture Global Solutions Limited Data transformations for robotic process automation
US11113148B2 (en) 2019-01-25 2021-09-07 International Business Machines Corporation Methods and systems for metadata tag inheritance for data backup
US11093448B2 (en) 2019-01-25 2021-08-17 International Business Machines Corporation Methods and systems for metadata tag inheritance for data tiering
US11914869B2 (en) 2019-01-25 2024-02-27 International Business Machines Corporation Methods and systems for encryption based on intelligent data classification
US11210266B2 (en) 2019-01-25 2021-12-28 International Business Machines Corporation Methods and systems for natural language processing of metadata
US12079276B2 (en) 2019-01-25 2024-09-03 International Business Machines Corporation Methods and systems for event based tagging of metadata
US11100048B2 (en) 2019-01-25 2021-08-24 International Business Machines Corporation Methods and systems for metadata tag inheritance between multiple file systems within a storage system
US11030054B2 (en) 2019-01-25 2021-06-08 International Business Machines Corporation Methods and systems for data backup based on data classification
US11113238B2 (en) 2019-01-25 2021-09-07 International Business Machines Corporation Methods and systems for metadata tag inheritance between multiple storage systems
US11610277B2 (en) 2019-01-25 2023-03-21 Open Text Holdings, Inc. Seamless electronic discovery system with an enterprise data portal
US11176000B2 (en) 2019-01-25 2021-11-16 International Business Machines Corporation Methods and systems for custom metadata driven data protection and identification of data
US10592544B1 (en) 2019-02-12 2020-03-17 Live Objects, Inc. Generation of process models in domains with unstructured data
US10607042B1 (en) 2019-02-12 2020-03-31 Live Objects, Inc. Dynamically trained models of named entity recognition over unstructured data
US11922140B2 (en) * 2019-04-05 2024-03-05 Oracle International Corporation Platform for integrating back-end data analysis tools using schema
US11157777B2 (en) * 2019-07-15 2021-10-26 Disney Enterprises, Inc. Quality control systems and methods for annotated content
US11429931B2 (en) * 2019-08-26 2022-08-30 Bank Of Montreal Systems and methods for data mart rationalization
US10741168B1 (en) 2019-10-31 2020-08-11 Capital One Services, Llc Text-to-speech enriching system
US11237847B1 (en) 2019-12-19 2022-02-01 Wells Fargo Bank, N.A. Automated standards-based computing system reconfiguration
US11502905B1 (en) 2019-12-19 2022-11-15 Wells Fargo Bank, N.A. Computing infrastructure standards assay
US11645579B2 (en) 2019-12-20 2023-05-09 Disney Enterprises, Inc. Automated machine learning tagging and optimization of review procedures
US11783079B2 (en) * 2019-12-27 2023-10-10 International Business Machines Corporation Privacy protection for regulated computing environments
CA3105048C (en) * 2020-01-06 2023-09-26 Tarek Abdunabi Academic search and analytics system and method therefor
US11494425B2 (en) 2020-02-03 2022-11-08 S&P Global Inc. Schema-informed extraction for unstructured data
US11500840B2 (en) 2020-02-28 2022-11-15 International Business Machines Corporation Contrasting document-embedded structured data and generating summaries thereof
US20210279606A1 (en) * 2020-03-09 2021-09-09 Samsung Electronics Co., Ltd. Automatic detection and association of new attributes with entities in knowledge bases
US20210374092A1 (en) * 2020-05-29 2021-12-02 Lexx Technologies Pty Ltd Computer-implemented method of providing troubleshooting support and maintenance instructions for servicing assets
US11275776B2 (en) * 2020-06-11 2022-03-15 Capital One Services, Llc Section-linked document classifiers
US11941565B2 (en) 2020-06-11 2024-03-26 Capital One Services, Llc Citation and policy based document classification
US11410447B2 (en) 2020-06-19 2022-08-09 Bank Of America Corporation Information security assessment translation engine
US11082315B1 (en) * 2020-12-14 2021-08-03 Qualcomm Incorporated Method of sub flow or activity classification
CN114547077A (en) * 2022-02-22 2022-05-27 贵州惠智电子技术有限责任公司 Intelligent processing system and method for basic government affair form data
WO2023215334A1 (en) * 2022-05-02 2023-11-09 Blueflash Software Llc System and method for classification of unstructured data
US11947561B2 (en) 2022-06-21 2024-04-02 International Business Machines Corporation Heterogeneous schema discovery for unstructured data

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040167883A1 (en) 2002-12-06 2004-08-26 Attensity Corporation Methods and systems for providing a service for producing structured data elements from free text sources

Family Cites Families (107)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4652733A (en) 1984-10-15 1987-03-24 At&T Company Technique for cataloging pictorial and/or written database information on video tape or disk
US4632733A (en) * 1985-12-30 1986-12-30 Nippon Kokan Kabushiki Kaisha Method for manufacturing one-side electrogalvanized steel strip
US4871903A (en) 1987-07-31 1989-10-03 General Electric Company Apparatus for rapidly accessing a large data base employing an optical disc reading system with multiple heads and track position compensation means
US5162992A (en) 1989-12-19 1992-11-10 International Business Machines Corp. Vector relational characteristical object
US5361353A (en) 1991-10-02 1994-11-01 International Business Machines Corporation System for parsing message units from an unstructured message stream of interleaved message units to form structured messages
JP3189186B2 (en) 1992-03-23 2001-07-16 インターナショナル・ビジネス・マシーンズ・コーポレ−ション Translation device based on patterns
US5600831A (en) 1994-02-28 1997-02-04 Lucent Technologies Inc. Apparatus and methods for retrieving information by modifying query plan based on description of information sources
DE4432714C1 (en) * 1994-09-14 1995-11-02 Deutsche Forsch Luft Raumfahrt Method for determining the size of airborne water drops
US5729730A (en) 1995-03-28 1998-03-17 Dex Information Systems, Inc. Method and apparatus for improved information storage and retrieval system
US5608904A (en) 1995-02-13 1997-03-04 Hewlett-Packard Company Method and apparatus for processing and optimizing queries having joins between structured data and text data
US5708825A (en) * 1995-05-26 1998-01-13 Iconovex Corporation Automatic summary page creation and hyperlink generation
US5664109A (en) 1995-06-07 1997-09-02 E-Systems, Inc. Method for extracting pre-defined data items from medical service records generated by health care providers
US5867799A (en) 1996-04-04 1999-02-02 Lang; Andrew K. Information system and method for filtering a massive flow of information entities to meet user information classification needs
US6052693A (en) 1996-07-02 2000-04-18 Harlequin Group Plc System for assembling large databases through information extracted from text sources
US5819265A (en) 1996-07-12 1998-10-06 International Business Machines Corporation Processing names in a text
JPH10240589A (en) 1997-02-21 1998-09-11 Hitachi Ltd Database processing method taking out actual data delay
US6009462A (en) * 1997-06-16 1999-12-28 Digital Equipment Corporation Replacing large bit component of electronic mail (e-mail) message with hot-link in distributed computer system
US6167397A (en) 1997-09-23 2000-12-26 At&T Corporation Method of clustering electronic documents in response to a search query
US6236994B1 (en) 1997-10-21 2001-05-22 Xerox Corporation Method and apparatus for the integration of information and knowledge
US6061678A (en) 1997-10-31 2000-05-09 Oracle Corporation Approach for managing access to large objects in database systems using large object indexes
US6078924A (en) 1998-01-30 2000-06-20 Aeneid Corporation Method and apparatus for performing data collection, interpretation and analysis, in an information platform
US6366921B1 (en) 1999-02-09 2002-04-02 International Business Machines Corporation System and method for data manipulation in a dynamic object-based format
US6629097B1 (en) 1999-04-28 2003-09-30 Douglas K. Keith Displaying implicit associations among items in loosely-structured data sets
US6470277B1 (en) 1999-07-30 2002-10-22 Agy Therapeutics, Inc. Techniques for facilitating identification of candidate genes
US6332163B1 (en) * 1999-09-01 2001-12-18 Accenture, Llp Method for providing communication services over a computer network system
US6546133B1 (en) 1999-09-08 2003-04-08 Ge Capital Commercial Finance, Inc. Methods and apparatus for print scraping
US6601026B2 (en) * 1999-09-17 2003-07-29 Discern Communications, Inc. Information retrieval by natural language querying
US6665685B1 (en) * 1999-11-01 2003-12-16 Cambridge Soft Corporation Deriving database interaction software
US6564215B1 (en) 1999-12-16 2003-05-13 International Business Machines Corporation Update support in database content management
US6449620B1 (en) * 2000-03-02 2002-09-10 Nimble Technology, Inc. Method and apparatus for generating information pages using semi-structured data stored in a structured manner
EP1139603A1 (en) 2000-03-27 2001-10-04 Tektronix, Inc. Method and Apparatus for data analysing
WO2001081829A1 (en) 2000-04-27 2001-11-01 Brio Technology, Inc. Method and apparatus for processing jobs on an enterprise-wide computer system
WO2001084535A2 (en) * 2000-05-02 2001-11-08 Dragon Systems, Inc. Error correction in speech recognition
US6732098B1 (en) 2000-08-11 2004-05-04 Attensity Corporation Relational text index creation and searching
US6728707B1 (en) 2000-08-11 2004-04-27 Attensity Corporation Relational text index creation and searching
US6732097B1 (en) 2000-08-11 2004-05-04 Attensity Corporation Relational text index creation and searching
US6738765B1 (en) 2000-08-11 2004-05-18 Attensity Corporation Relational text index creation and searching
US6741988B1 (en) 2000-08-11 2004-05-25 Attensity Corporation Relational text index creation and searching
US7024425B2 (en) 2000-09-07 2006-04-04 Oracle International Corporation Method and apparatus for flexible storage and uniform manipulation of XML data in a relational database system
US20020065857A1 (en) 2000-10-04 2002-05-30 Zbigniew Michalewicz System and method for analysis and clustering of documents for search engine
US8230323B2 (en) 2000-12-06 2012-07-24 Sra International, Inc. Content distribution system and method
US6862585B2 (en) 2000-12-19 2005-03-01 The Procter & Gamble Company System and method for managing product development
US7363308B2 (en) 2000-12-28 2008-04-22 Fair Isaac Corporation System and method for obtaining keyword descriptions of records from a large database
WO2002082318A2 (en) * 2001-02-22 2002-10-17 Volantia Holdings Limited System and method for extracting information
US6694307B2 (en) 2001-03-07 2004-02-17 Netvention System for collecting specific information from several sources of unstructured digitized data
US7076485B2 (en) 2001-03-07 2006-07-11 The Mitre Corporation Method and system for finding similar records in mixed free-text and structured data
US20020128998A1 (en) 2001-03-07 2002-09-12 David Kil Automatic data explorer that determines relationships among original and derived fields
US7392287B2 (en) * 2001-03-27 2008-06-24 Hemisphere Ii Investment Lp Method and apparatus for sharing information using a handheld device
US7043535B2 (en) 2001-03-30 2006-05-09 Xerox Corporation Systems and methods for combined browsing and searching in a document collection based on information scent
US7191183B1 (en) * 2001-04-10 2007-03-13 Rgi Informatics, Llc Analytics and data warehousing infrastructure and services
US6904428B2 (en) 2001-04-18 2005-06-07 Illinois Institute Of Technology Intranet mediator
US20020161626A1 (en) 2001-04-27 2002-10-31 Pierre Plante Web-assistant based e-marketing method and system
US6970881B1 (en) * 2001-05-07 2005-11-29 Intelligenxia, Inc. Concept-based method and system for dynamically analyzing unstructured information
US7536413B1 (en) * 2001-05-07 2009-05-19 Ixreveal, Inc. Concept-based categorization of unstructured objects
US6735578B2 (en) 2001-05-10 2004-05-11 Honeywell International Inc. Indexing of knowledge base in multilayer self-organizing maps with hessian and perturbation induced fast learning
WO2002095616A1 (en) 2001-05-18 2002-11-28 Mastersoft Research Pty Limited Parsing system
AUPR511301A0 (en) 2001-05-18 2001-06-14 Mastersoft Research Pty Limited Parsing system
US20030014406A1 (en) 2001-06-07 2003-01-16 Urbanpixel Inc. Intelligent browser windows in a multi-browser environment
US6980976B2 (en) 2001-08-13 2005-12-27 Oracle International Corp. Combined database index of unstructured and structured columns
US20050015381A1 (en) 2001-09-04 2005-01-20 Clifford Paul Ian Database management system
JP2005524125A (en) 2001-10-12 2005-08-11 スイス リインシュアランス カンパニー System and method for placing reinsurance
CA2464613A1 (en) 2001-11-02 2003-05-15 Siemens Corporate Research, Inc. Patient data mining for lung cancer screening
AU2002352603A1 (en) 2001-11-07 2003-05-19 Enkata Technologies, Inc. Method and system for root cause analysis of structured and unstructured data
US7219130B2 (en) 2001-11-28 2007-05-15 Appmail Llc System and method for integrating e-mail into functionality of software application
US20030130894A1 (en) 2001-11-30 2003-07-10 Alison Huettner System for converting and delivering multiple subscriber data requests to remote subscribers
US7493265B2 (en) 2001-12-11 2009-02-17 Sas Institute Inc. Integrated biomedical information portal system and method
US20030158865A1 (en) 2001-12-28 2003-08-21 Frank Renkes Managing multiple data stores
US7225183B2 (en) 2002-01-28 2007-05-29 Ipxl, Inc. Ontology-based information management system and method
US20030176929A1 (en) 2002-01-28 2003-09-18 Steve Gardner User interface for a bioinformatics system
US20030144892A1 (en) 2002-01-29 2003-07-31 International Business Machines Corporation Method, system, and storage medium for providing knowledge management services
JP2003271389A (en) 2002-03-19 2003-09-26 Shuichi Araki Method for operating software object in natural language and its program
SG106068A1 (en) * 2002-04-02 2004-09-30 Reuters Ltd Metadata database management system and method therefor
US7010520B2 (en) 2002-04-26 2006-03-07 International Business Machines Corporation Method and system for searching documents with numbers
US20030206201A1 (en) 2002-05-03 2003-11-06 Ly Eric Thichvi Method for graphical classification of unstructured data
US20040039734A1 (en) 2002-05-14 2004-02-26 Judd Douglass Russell Apparatus and method for region sensitive dynamically configurable document relevance ranking
US6996575B2 (en) 2002-05-31 2006-02-07 Sas Institute Inc. Computer-implemented system and method for text-based document processing
US6892198B2 (en) 2002-06-14 2005-05-10 Entopia, Inc. System and method for personalized information retrieval based on user expertise
US20040010491A1 (en) 2002-06-28 2004-01-15 Markus Riedinger User interface framework
US20040049473A1 (en) 2002-09-05 2004-03-11 David John Gower Information analytics systems and methods
US20040049505A1 (en) 2002-09-11 2004-03-11 Kelly Pennock Textual on-line analytical processing method and system
US6886010B2 (en) 2002-09-30 2005-04-26 The United States Of America As Represented By The Secretary Of The Navy Method for data and text mining and literature-based discovery
DE10337934A1 (en) 2002-09-30 2004-04-08 Siemens Ag Unstructured text conversion method in which the text is structured using structuring rules that operate on text fragments and sort them using terminology and subject dependent structuring rules
WO2004044696A2 (en) 2002-11-08 2004-05-27 Arbitration Forums, Inc. A system and process for electronic subrogation, inter-organization workflow management, inter-organization transaction processing and optimized web-baser user interaction
US7197503B2 (en) 2002-11-26 2007-03-27 Honeywell International Inc. Intelligent retrieval and classification of information from a product manual
JP2006509295A (en) 2002-12-03 2006-03-16 シーメンス メディカル ソリューションズ ユーエスエー インコーポレイテッド System and method for automatically extracting and processing billing information in patient records
JP2004258912A (en) 2003-02-25 2004-09-16 Toshiba Corp Document retrieval device, method and program
US7146356B2 (en) * 2003-03-21 2006-12-05 International Business Machines Corporation Real-time aggregation of unstructured data into structured data for SQL processing by a relational database engine
US20040194009A1 (en) 2003-03-27 2004-09-30 Lacomb Christina Automated understanding, extraction and structured reformatting of information in electronic files
US7081650B2 (en) * 2003-03-31 2006-07-25 Intel Corporation Interposer with signal and power supply through vias
US8495002B2 (en) 2003-05-06 2013-07-23 International Business Machines Corporation Software tool for training and testing a knowledge base
WO2004104865A2 (en) 2003-05-12 2004-12-02 Sun Microsystems, Inc. Methods and systems for intellectual capital sharing and control
US20040243554A1 (en) 2003-05-30 2004-12-02 International Business Machines Corporation System, method and computer program product for performing unstructured information management and automatic text analysis
US20040243560A1 (en) 2003-05-30 2004-12-02 International Business Machines Corporation System, method and computer program product for performing unstructured information management and automatic text analysis, including an annotation inverted file system facilitating indexing and searching
US7139752B2 (en) 2003-05-30 2006-11-21 International Business Machines Corporation System, method and computer program product for performing unstructured information management and automatic text analysis, and providing multiple document views derived from different document tokenizations
JP2007524461A (en) 2003-06-25 2007-08-30 シーメンス メディカル ソリューションズ ユーエスエー インコーポレイテッド Mammography automatic diagnosis and decision support system and method
AU2004251360A1 (en) 2003-06-25 2005-01-06 Siemens Medical Solutions Usa, Inc. Automated regional myocardial assessment for cardiac imaging
US7257585B2 (en) * 2003-07-02 2007-08-14 Vibrant Media Limited Method and system for augmenting web content
US7389306B2 (en) 2003-07-25 2008-06-17 Enkata Technologies, Inc. System and method for processing semi-structured business data using selected template designs
US7333997B2 (en) 2003-08-12 2008-02-19 Viziant Corporation Knowledge discovery method with utility functions and feedback loops
US7478100B2 (en) 2003-09-05 2009-01-13 Oracle International Corporation Method and mechanism for efficient storage and query of XML documents based on paths
US20050065941A1 (en) 2003-09-23 2005-03-24 Deangelis Stephen F. Systems for optimizing business processes, complying with regulations, and identifying threat and vulnerabilty risks for an enterprise
US7813947B2 (en) 2003-09-23 2010-10-12 Enterra Solutions, Llc Systems and methods for optimizing business processes, complying with regulations, and identifying threat and vulnerabilty risks for an enterprise
KR100533810B1 (en) 2003-10-16 2005-12-07 한국전자통신연구원 Semi-Automatic Construction Method for Knowledge of Encyclopedia Question Answering System
US7155444B2 (en) 2003-10-23 2006-12-26 Microsoft Corporation Promotion and demotion techniques to facilitate file property management between object systems
US7917548B2 (en) 2003-11-14 2011-03-29 Bottelle Memorial Institute Universal parsing agent system and method
US20050243604A1 (en) * 2004-03-16 2005-11-03 Ascential Software Corporation Migrating integration processes among data integration platforms
US7849049B2 (en) 2005-07-05 2010-12-07 Clarabridge, Inc. Schema and ETL tools for structured and unstructured data

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040167883A1 (en) 2002-12-06 2004-08-26 Attensity Corporation Methods and systems for providing a service for producing structured data elements from free text sources

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9477749B2 (en) 2012-03-02 2016-10-25 Clarabridge, Inc. Apparatus for identifying root cause using unstructured data
US10372741B2 (en) 2012-03-02 2019-08-06 Clarabridge, Inc. Apparatus for automatic theme detection from unstructured data
KR101568346B1 (en) 2014-03-28 2015-11-12 주식회사 솔트룩스 Knowledge acquisition system based on un-structured data for never-ending and self-evolving
CN105518673A (en) * 2014-07-15 2016-04-20 微软技术许可有限责任公司 Managing data ingestion
EP3170099A4 (en) * 2014-07-15 2017-11-22 Microsoft Technology Licensing, LLC Managing data ingestion
US9870411B2 (en) 2014-07-15 2018-01-16 Microsoft Technology Licensing, Llc Managing data ingestion
CN105518673B (en) * 2014-07-15 2020-07-07 微软技术许可有限责任公司 Managing data ingestion
AU2016228174B1 (en) * 2016-04-27 2017-03-30 Accenture Global Solutions Limited Machine for generating unstructured syntax
US10282454B2 (en) 2016-04-27 2019-05-07 Accenture Global Solutions Limited Machine for generating unstructured syntax
US11068497B2 (en) 2016-04-27 2021-07-20 Accenture Global Solutions Limited Machine for generating unstructured syntax
US10248702B2 (en) 2016-07-29 2019-04-02 International Business Machines Corporation Integration management for structured and unstructured data
CN110826974A (en) * 2018-08-13 2020-02-21 山东大学 Scientific and technological achievement transformation/incubation big data cloud platform internet + system

Also Published As

Publication number Publication date
WO2007005730B1 (en) 2007-06-07
EP1899855A4 (en) 2011-01-26
US20110161333A1 (en) 2011-06-30
EP1899855B1 (en) 2018-12-19
WO2007005730A3 (en) 2007-04-05
EP1899855A2 (en) 2008-03-19
US7849048B2 (en) 2010-12-07
US20070011134A1 (en) 2007-01-11

Similar Documents

Publication Publication Date Title
EP1899855B1 (en) System and method of making unstructured data available to structured data analysis tools
EP1899800B1 (en) Schema and etl tools for structured and unstructured data
US20070011183A1 (en) Analysis and transformation tools for structured and unstructured data
JP5879260B2 (en) Method and apparatus for analyzing content of microblog message
US8495073B2 (en) Methods and systems for categorizing and indexing human-readable data
US7814102B2 (en) Method and system for linking documents with multiple topics to related documents
US11263523B1 (en) System and method for organizational health analysis
US7818286B2 (en) Computer-implemented dimension engine
US7689433B2 (en) Active relationship management
US20150269138A1 (en) Publication Scope Visualization and Analysis
Abramowicz et al. Filtering the Web to feed data warehouses
US20210240334A1 (en) Interactive patent visualization systems and methods
KR20110010664A (en) System for analyzing documents
KR101145818B1 (en) Method and apparutus for automatic contents generation
KR101078945B1 (en) System for analyzing documents
KR101020138B1 (en) Method and apparutus for automatic contents generation
Yang Web table mining and database discovery
Verma et al. Multi-structured data analytics using interactive visualization to aid business decision making
Zhou et al. Constructing economic taxonomy reflecting firm relationships based on news reports
Meier et al. Vertical Integration of Business News from the Internet within the Scope of Strategic Enterprise Management (SAP SEM)
Chung et al. Web-based business intelligence systems: a review and case studies
Kvassov et al. Using data mining techniques for knowledge management: An empirical study
Cong The relationship between the income statement presentation format and company characteristics: An exploratory study on the comparability of the financial statement presentation format
Karanikas et al. A temporal text mining application in competitive intelligence
Ontos Sustainable Advantage for the Investor Relations Team through Semantic Content

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2006774414

Country of ref document: EP