Building effective Document Management Systems using DocAI


The first step towards achieving data-driven insights to plan and analyze the growth is to possess the data in the right format. A large volume of documents, say invoices or tax files, cannot themselves be used for analysis, but the information in them is what is needed. In this blog, we will look at SpringML’s Intelligent Document Processing Solution.

Understanding DocAI

SpringML DocAI is backed by one of the best text extraction solutions, Google Cloud Vision, making the basic text extraction very accurate. But this is not extracting information.
In order to understand what extraction of information from a document is, it is important to realise that it is not mere text extraction using an Optical Character Recognition(OCR) tool. This text from the OCR is the raw data we have from which we need to extract the correct logical information. In the documents we see, the information is present in key and value pairs. For example, in an invoice, we see “Invoice Number” is the key and there is the value corresponding to the key. The heart of extracting such information from a document is to set up the blueprints or the “Template” of the document.


Our Intelligent Document Processing framework provides a simple way to configure templates in such a way where we can capture complex, yet required parameters as:

  • Various possibilities of the key-phrases which could be present across documents. For example, if Customer’s name is a field, the key identifying the field could be present as “Name of Customer” or “Customer Name” in the document.
  • Data Type of the value present: The value could be a string, number, price, address, a constant enum, a table, a column, or something which could be identified by a regular expression.
  • Direction of the value with reference to the key. The direction in which a value could be present from the key. For example, consider a field Date which is identified by the phrase “Date of Submission” in the document. The date value could be present either to the right, top, bottom, bottom-right or bottom-left to the key phrase.

Configuring these parameters enhances the accuracy and essence of the information being extracted. Below are snippets taken from the application serving the SpringML DocAI solution, depicting configuring the above parameters mentioned.

Setting up the data DocAI

Fig.1 Setting up the data “Type” of the value from the given list of data types and adding possible occurrences of the key phrases in the documents under “Synonym”

DocAI Framework

Fig.2 Setting up the directional hint for the fields


SpringML’s Intelligent Document Processing framework is not just about information extraction from the document, but it is a whole pipeline built around this key functionality, where we can configure the source of the documents, add on document preprocessing for better extractions, configure post processing to meet business rules, define custom functions to process the extractions and get the final results stored in a desired structured format in the required target location. This solution also ensures the best security of the data and also the configurations being used to extract the information. Also SpringML DocAI is built in a robust way to handle any volume of the documents to be processed as per the requirements.