Abstract: The present invention discloses a software application configured to generate documents in a portable document format (PDF) which are dynamic in nature, to provide its access on various portable and non portable devices; to facilitate generation of bulk documents and enhance customer communications through its interactive feature.
FORM NO 2
THE PATENTS ACT, 1970 (39 OF 1970) & The Patents Rules, 2003 COMPLETE SPECIFICATION [See sections 10 and Rule 13]
1. TITLE A SYSTEM FOR GENERATING BULK ELECTRONIC
DOCUMENTS IN A PORTABLE FORMAT WITH INTERACTIVE FEATURES.
2. APPLICAN(S)
Name: Aurionpro Solutions Limited
Nationality: Indian
Address: 35th Floor, Sunshine Towers, Tulsi Pipe Road, Dadar
(West), Mumbai-400 013
3. PREAMBLE TO THE DESCRITION
COMPLETE
The following specification particularly
describes the invention and the manner
in which it is to be performed
TITLE
A SYSTEM FOR GENERATING BULK ELECTRONIC DOCUMENTS IN A PORTABLE FORMAT WITH INTERACTIVE FEATURES.
FIELD OF THE INVENTION
The invention is related to the area of Electronic documents, Bill, Invoice and Statement Presentment in the industries of Banking, Telecommunication, Utilities and similar domains which require Bulk generation of Customer Communications, Transaction and Account statements and related documents.
BACKGROUND OF THE INVENTION
This invention relates generally to information processing, and more particularly, to methods and apparatuses for generating and distributing documents from one or more data sources.
Industries like Banking, Financial Services, Insurance, Telecommunications, Utilities, and others regularly require documentation of customer accounts and transactions. This is a common business and regulatory compliance requirement and is focused on informing the customer about the available services and the related payment arrangements. Sample documents include welcome kits, monthly bills, transaction statements, contract notes, holdings statements, payment reminders, acknowledgements, and history. With advances in technology and mobility, customers are increasingly requiring these on devices like desktops, laptops, tablet PCs and mobile devices that they can access anytime and anywhere.
Service providers generate documents and customer communications for a predetermined batch of customers or an ad hoc set, as required. These may include first-time generated documents and customer communications and also duplicate requests received from customers. Typically, this is a bulk generation process wherein data is sourced from databases to prepare customer communications. The present invention seeks to generate and deliver documents and personalized communications to customers; in a format that facilitates an interactive experience on the device of access.
BACKGROUND AND PRIOR ART
Description of Prior Art
Historically, paper has been the medium on which a request for payment of services is made. A personalized bill or invoice is printed on pre-printed stationery and mailed to the physical mailing address of the customer. Customers then provide the required payments to sustain or continue the availment of these services. This is a common situation in the industries of Banking, Telecommunication and Utilities.
In Banking services, a passbook or a monthly statement of accounts is required to be submitted to the customer on a regular basis. In Telecommunication services, a monthly bill for all calls placed and other related services is submitted as the monthly bill. Utility services offer billing for electricity, gas and water usage; and garbage/sewer cleanup services.
While many service providers have over the last few decades transitioned from a "paper bill" to the usage of the electronic medium for "paperless electronic bills"; Technology has gone from strength to strength in improving the process of electronic presentment of Bills, Invoices, and Statements. Not only have the volumes of data processing scaled to Terabytes; Presentment is now possible on Desktops, Laptops, Tablet PCs, and Mobile platforms.
Of the known Document formats; the Portable Document Format (PDF) is the preferred and de facto standard for secure and reliable distribution and exchange of electronic documents and forms around the world. PDF is an Open file format specification and is a Universal file format that preserves the fonts, images, graphics, and layout of any source document, regardless of the application and platform used to create and design the PDF document.
A PDF document is used for presenting certain data/information to people. PDF is more reliable for presenting data because documents in this format can only be read by the person who gets it and cannot be edited easily. But the normal PDF is capable of only displaying data in textual and pictorial format. As compared to this normal PDF, Interactive PDF can provide many advanced features that will help for better interaction between the customer and the service provider. Interactive PDF is capable of having various advanced features like multiple tab system, Clickable links, text fields for insertion of data, presentation of data in graphical format, sorting of data according to the needs of the reader and many other such features.
The simplest electronic document, bill, invoice, or statement follows the structure and format of a non-paginated textual content.
To this class of documents, we can add cross-reference hyperlinks; and also figures, tables and section references. A hyperlinked PDF document is the typical example.
At the next level, the document can have content such as audio, video, graphics, charts, and other imagery. In its prime form; this would resemble an eBook with custom look-and-feel that changes over time to engage and maintain reader interest.
The present invention seeks to address a special category of documents also known as Customer Communications. Instead of the free flow Document eBook structure; information is organized to reflect the structure and logic of the customer relationship which now includes both static and dynamic messages from the service provider.
Customer Communications can now use data stored in a relational database; thus obtaining benefits of data integrity and removal of data redundancy. Relationships in the content can be presented as hyperlinks and are mapped directly to relations in the database schema. Redundancy in the data is removed. There is no longer the concept of a static page. Content can change dynamically based on user navigation and input through the document interface elements and widgets; the content may now be user specific.
The Document can be integrated with a rules engine or an expert system that may influence the choice and display of content. The proposed system may aggregate data from a large number of user inputs, feed that to the expert system that analyzes it and then the result is fed back to the user through the Rules Engine system. An analogy might be Google search, where search results are improved based on analysis of large data sets of previous queries entered by users.
Prior inventions in the category of electronic documents have been presented as eBooks or as files without any interactivity. The content besides being static; offers read-only capabilities for viewers and readers. Initially, static content included text and drawings; but with advances in technology, electronic documents included audio and video. However, the reader did not have the tools or the options to select, adjust, or manipulate the content. Domains of implementation were general purpose and not commercial. The present invention is intended for use in the commercial domain and offered as a new system for generating interactive electronic documents in customer specific content management and presentment across all access devices in unified formats. Customers can interact with the system output and provide feedback, response to survey, slice-dice data, group on control parameters, apply search, sort, filter on data, manage profile etc.
Prior inventions in the category of electronic documents have been confined to online access and viewing. While their origins are in the character based interfaces; with the evolution of graphical user interfaces, print and web technologies; electronic documents have been created using technologies that allowed access and secure viewing to the connected user. The present invention uses a combination of technologies such as Shockwave Flash, XML, PDF, Forms, HTML, CSS, JavaScript, among others to work in online and offline modes and across devices such as PCs, desktops, laptops, and mobile devices such as smart phones and tablets. While prior inventions allowed for text window controls such as vertical and horizontal scrolling and audio/ video controls to play and pause content; the present invention allows for a full featured user interface that includes a complete set of GUI related controls such as text area, text box, list box, graph, chart, video, dynamic grid etc. for access in both, online and offline modes.
t
Prior inventions in the category of electronic documents were used to present static content fetched from the server during runtime or the user session. Customers and users were restricted to viewing and reading the content as there was no functionality that allowed for any interaction with the server during the session. The present invention allows for the presentment of customer specific dynamic content. The service provider can personalize the content to a specific customer or to a special interest group. Content presentation is secure as it can be embedded and encrypted. There are no known tools to subversively access the content without damaging the electronic document. The present invention allows users and customers to modify content and also allows them to store modified content in encrypted format in a local PDF document and later communicate the information to the remote server.
OBJECT OF THE INVENTION
The object of the invention is to deliver to customers, products and services in an interactive electronic document form as a customer communication which is accessible on the web and on mobile devices. This electronic document can be a replacement for the duplicate paper invoice as an inalterable reference record of transactions, credits, debits, payments, etc. at the service provider or complement the paper document in cases where the electronic version cannot be delivered to the customer.
While the electronic document format is particularly suited for storing large amounts of information for long durations and may even span several years as required by accounting, legal, and regulatory bodies; this format also offers several features which make it possible to identify specific transactions quickly as compared to searching through volumes of paper documents. The main feature of particular interest that is disclosed in this invention is interactivity.
The purpose of interactivity is to simplify access to the information in a manner that retains customer interest and engages the service provider. Tools of interactivity are used to deliver data visualization which can be customized by the reader. Transactions may be analyzed and displayed graphically to allow for comparison, contrast, and prediction.
Customers can use the electronic document as a means to interact with the service provider for identifying product or service substitutes which are automatically offered by the service provider upon fulfillment of defined conditions such as loyalty points or the availability of a comparatively more economical service or tariff plan.
Customers can use the electronic document as a means to pay for products and services either in advance or arrears. Available payment gateways offer network banking, electronic funds transfer, bill payment using current or savings accounts, cash, credit or debit cards. Sensitive payment information is always encrypted when in transit from the electronic document to the payment processor.
Customers can use the electronic document as a means to raise service queries, express feedback, schedule callbacks from service representatives and find answers to common and frequent questions.
The object of the invention is to provide for a consolidated Customer Communication Document; which is a work product of a method to access and use data from databases to fill placeholders in document templates with customer specific content and data.
Yet another object of the Invention is to facilitate electronic document access and interaction on available devices like desktops, laptops, tablet PCs and mobile devices. Presentment is usually in the form of a Portable Document Format (PDF). PDF technology has gone through a process of improvements and upgrades whereby files which previously contained static images and text; now support features of Customer Personalization so that Bills, Invoices, and Statements are generated from Templates which contain placeholders which are filled during Generation phase with Customer Billing or Account Data obtained from the Core Billing or Core Banking System.
Interaction elements and widgets are embedded in the document template in a manner so that bulk generation of PDF files using these templates will preserve the desired interactivity in the document. The purpose is to deliver service account and related information to the Customer in a format that uses interaction widgets to facilitate comparison, contrast, and analysis within the document.
The invention addresses the next generation of features for PDF files which include interaction widgets that allow the Customer to group, search, filter, and select the information to be displayed or published. Customers can optionally view account data in tabular or graphical form; and can compare, contrast, and analyze within the document.
SUMMARY OF THE INVENTION
Statement of Invention
This invention is related to the web-based end-to-end process of sourcing billing/account data; generating of Bills, Invoices, or Statements from templates; and their related publishing on the web or delivery to the customer via Email or Mobile channels. The Electronic Bills, Invoices, or Statements support Interactive features which allow the Customer to only view the information of interest in a suitable tabular or graphical form.
DETAILS OF INVENTION
Processing of an electronic document is a two-step process wherein firstly, a data source is searched for data particulars of a customer. In the second step; this data is positioned within the electronic document for easy readability. Requirements for the generation are met by a computing server, which hosts the application, the electronic document template and the data source. This processing mechanism may be implemented as a single computing server with all of the required functionality or as a separate application and database server. In either case; the computing server will have a standard hardware configuration for processing instructions compiled as the software application which is designed to interleave data maintained separately.
The present invention relates to the software application which is created in an Integrated Development Environment (IDE) on a separate computing device; and uploaded to the application server; and configured to generate electronic invoice documents from customer and transaction data available on the database server.
Generation of Interactive Electronic Document
On the development computer; a document template is designed using a combination of software tools within the IDE. These tools view invoice items as application objects; each of which have state (data) and behavior (code). Code typically transforms input through a series of operations - often in parallel when supported; into data objects which are retained in computing memory for later use; or into data output which is redirected to computing display or computing storage as a page or a file.
Application objects interact by means of a transfer of control from a calling object to a called object. Each object receives the call; performs its task as defined within its boundaries; and when required, calls another application object. Application objects are encapsulated so as to contain its data and the methods that operate on the data. For the sake of organization; objects are classified in a model which allows for relationships to be preserved among the various objects and for methods to be reused during lengthy processing operations. Sometimes, a hierarchical organization is favored to allow inheritance of data and code by objects at lower levels of the hierarchy. Access to data and code is defined to be public for all objects in the application or private to some objects in the organization. This serves to optimize use of computing resources and deliver correct results within the possible limits of processing time.
The separation of the application object interface and its implementation is intended to ensure that all calls are necessarily routed through a known interface. This creates an easier service framework for processing and also optimizes the transfer of control. The present invention is a web-based software application that is built using application objects that are modular and can interact using web services in accordance with prevailing protocols.
The development environment on the computing hardware has a standard configuration and includes design software libraries like Adobe Flash Builder and Netbeans. These software libraries provide a rich palette of widgets and functionality that can be positioned on a canvas to create a template which can later be uploaded to the application server for the processing of data sourced from the database server and the generation of the electronic document that can consolidate customer transactions and provide interactive access to contained information. While the elements of interaction can be easily selected and repositioned on the canvas using a pointing device such as a mouse; functionality is defined using computing languages like JavaScript, Java, Hypertext Markup Language (HTML), and Adobe Flex. The data that would be used to generate the interactive electronic document in bulk may reside on computing storage like the file system or on a database.
In either case; the designer queries the data source and constructs a Model which is used during the process. The Model represents the data for the Interface component(s). The Model describes each item and its position as the Interface component on the canvas. All access to the Model is controlled. This simplifies the overall interface. Any changes to the Model based on user interaction or input can be used to generate a notification. The Model is used as the basis for depicting data in a "dumb" layer also known as the View to draw all content. Any changes to the Model are tracked and the View redraws itself to reflect the changes. This re-drawing is managed by a Controller which accepts user input and Model events to determine and display the changes in the View.
1) The Design Template is created by using Flex as an SWF file without any data. The SWF template contains data input fields which are visible only when the data is available for the fields. The SWF file format specification supports both glyph text and device text using a variety of text-drawing primitives. Glyph text works by embedding character shapes in the SWF file, while device text uses the text rendering capabilities of the playback platform. All text is represented using Unicode encodings, eliminating dependencies on playback locale for text and strings. Text can be either static or dynamic. Normally, all static text is rendered as glyph text. Dynamic text is updated on the display through a synchronization process with variables associated with
text and data objects. Attributes such as font, size, color, position on a document layer are defined and assigned using text tags.
2) The iText Java library is used to build the application that automates the creation and manipulation of interactive electronic documents. This is due to the specialized purpose and capabilities of the library. To begin with; a blank PDF is created using the iText library. Within this blank PDF document; a form is embedded. The form is initialized to contain a hidden text field with two associated JavaScript methods - setData() and getData(). Text fields are used to store XML data in the form; and thus, within the PDF document. Both the form and JavaScript functions are invisible.
3) The design template which was created in step 1 is embedded into the PDF document created in step 2 as a document-level attachment.
4) During the bulk generation process; the application creates an XML file from different sources like the Core Billing System, or the Core Banking System, etc. Data is sourced from relational database management systems (RDBMS), data exports from proprietary applications, or text files. This step uses Java to create the XML files - each of which has the data and element names for quick identification of the data by SWF.
5) The XML data file created in step 4 is embedded into the PDF document created in step 3 to create a new interactive PDF which has the dynamic data. When the PDF is opened the SWF reads the data from XML string by using the embedded JavaScript functions.
6) XML data is read as a string and parsed before all the fields and the data grids are populated in the SWF; before being rendered as an interactive PDF document.
To access functionality or integrate with applications that reside or are hosted on servers; the interactive electronic document provides a mechanism for calling web services that have been made available on the application server. Examples of such applications include payment gateways, promotional content servers, authentication, and certification servers.
1) A fundamental assumption in this step is that the required webservice URL is known along with required parameters and is available and in working condition on the server.
2) Created JavaScript function callWebservice() which contains the code to form the SOAP message and invoke the webservice. The function callWebservice() is embedded in blank template PDF.
3) The webservice URL and required parameter names are configured in the SWF file.
4) When user clicks on the submit button, the SWF ActionScript calls the callWebservice() function which invokes the web service by using HTTP protocol. SWF also provides the required parameters to the callWebservice() function.
5) callWebservice() function creates the SOAP message by using theprovided input parameters like user name, password and then passes the SOAP message to the webservice.
6) Webservice executes on the server and sends the response back to the callWebserviceO function in the format of SOAP message. Then the callWebservice() function converts the SOAP message into String and displays the data in PDF.
The problem solved by this invention is the ability to publish customer account data from inside a Portable Document Format (PDF) document via a JavaScript and Hypertext Transfer Protocol (HTTP) request. Normally found only in the domain of web browsers, the invention developed is a method to employ the ideas behind customer communication management inside the PDF document where normal web browser functionality is inaccessible. There are no other solutions available today that address this issue as far as we know.
The core idea is to publish customer account data inside a PDF document after sourcing that information from an external server/database. There are no other known solutions today that offer this service.
This system works to reflect standard interactive functionality found in a normal web browser. The difference is that this system performs these tasks inside a PDF document where the normal functionality of a web browser does not exist.
A Template is designed with various interaction elements and placeholders are positioned as through a Customer Communication Document is being designed.
During the first stage of generation; the template is filled with data fields from various data sources. This creates a document as a SWF file. This SWF file is accepted as an input to the conversion process which transforms the SWF file into a PDF file.
Interaction elements which were placed during the Template design stage; preserve their functionality during this entire process; first in the SWF file format, and thereafter in the PDF file format.
Through the use of standard JavaScript code, as specified by the JavaScript Application Programming Interface (API) available in PDF documents, an HTTP request that contains query string parameters storing values of metrics to be captured is generated and transmitted from within the PDF document out to an external server which processes and responds to the information in the request.
JavaScript code is implemented to build the first part of the HTTP request, including the domain where the request will be sent and some establishing query string parameters including a unique customer and session identification value that is used to identify repeat uses of the PDF document and requests by the same user. JavaScript function calls are then used to take the established string and add specific values to it for the data being published. After the HTTP request string is completed with all required values, another JavaScript function call is executed to transmit the request over the Internet.
Java is a registered trademark. Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.
Customer Communications and Interactive PDF documents can be generated from the single template file either singly or in bulk.
Documents and folders of documents are stored on the user desktop and are visible as icons. A document can be opened into a window, which represents an electronic view of a paper copy of the document placed on the desktop. The document when presented within a browser interface can support graphical read-only access using multi-touch or point-and-click devices.
The content within the document can be accessed and read using various interaction widgets with the below features:
A. Containment and Security
The entire document is presented within a container which is similar to a "window".
This container can be a web browser, a document reader, or a device player
application. Following are the list of security features:
Interactive PDF can be encrypted and password protected while sending to end
customer.
Interactive PDF can be digitally signed
Data placeholders are embedded within design; and cannot be accessed manually.
Other PDF features such as copy, print, export, document expiry date etc. can be
enforced.
B. Navigation Breadcrumb
Breadcrumbs typically appear horizontally across the top of a web page, often below
title bars or headers. They provide links back to each previous page the user
navigated through to get to the current page or—in hierarchical site structures—the
parent pages of the current one. Breadcrumbs provide a trail for the user to follow
back to the starting or entry point. A greater-than sign (>) often serves as hierarchy
separator, although designers may use other glyphs (such as » or >), as well as
various graphical treatments.
There are two types of document breadcrumbs:
Location: location breadcrumbs are static and show where the page or section is
located in the document hierarchy.
Attribute: attribute breadcrumbs give information that categorizes the current page or
section.
Grid view
This is a graphical user interface element (widget) that presents a tabular view of data. A typical grid view also supports some or all of the following:
• Clicking a column header to change the sort order of the grid
• Dragging column headers to change their size and their order
• In-place editing of viewed data
• Row and column separators, and alternating row background colors
Link
Internal and external links allow the end user to access content within and external to the document. These are respectively known as inline and anchor links. Inline links - An inline link displays remote content without the need for embedding the content. The remote content may be accessed with or without the user selecting the link. An inline link may display a modified version of the content; for instance, instead of an image, a thumbnail, low resolution preview, cropped section, or magnified section may be shown. The full content will then usually be available on demand, as is the case with print publishing software - e.g. with an external link. This allows for smaller file sizes and quicker response to changes when the full linked content is not needed, as is the case when rearranging a page layout.
Anchor links - This is a link bound to a portion of a document—generally text, though not necessarily. For instance, it may also be a hot area in an image (image map in HTML), a designated, often irregular part of an image. One way to define it is by a list of coordinates that indicate its boundaries. For example, a political map of Africa may have each country hyperlinked to further information about that country. A separate invisible hot area interface allows for swapping skins or labels within the linked hot areas without repetitive embedding of links in the various skin elements.
Scrollbar
Content that does not fit within a text box or a window is accessed using the scrollbar. These are either horizontal or vertical.
Tab
Content can be organized according to various categories or tabbed headings. When a tab T-n' is clicked; the release of the mouse button brings the content under this tab T-n' to the foreground; and simultaneously moves the content on the screen to the background. At any one time, exactly one tab is expanded into a panel within the window container.
The tab acts as an interaction widget which allows the user to switch from one section of the document to another.
Tree view
A tree view or an outline view is a graphical user interface element (widget) that presents a hierarchical view of information. Each item (often called a branch or a node) can have a number of sub-items. This is often visualized by indentation in a list.
An item can be expanded to reveal sub-items, if any exist, and collapsed to hide sub-items.
Tree views are often seen in file manager applications, where they allow the user to navigate the file system directories. They are also used to present hierarchical data, such as an XML document. Extended tree view is the central component of an outliner application.
C. Selection
These are a set of interaction widgets which provide the end-user the ability to specify their selection criteria and parameter values.
Button
Input Control: The Button control is a commonly used rectangular button. Button
controls look like they can be pressed. They can have a text label, an icon, or both
on their face.
Buttons typically use event listeners to perform an action when the user selects the
control. When a user clicks the mouse on a Button control, and the Button control is
enabled, it dispatches a click event and a buttonDown event. A button always
dispatches events such as the mouseMove, mouseOver, mouseOut, rollOver,
rollOut, mouseDown, and mouseUp events whether enabled or disabled.
You can customize the look of a Button control and change its functionality from a
push button to a toggle button. You can change the button appearance by using a
skin for each of the button's states.
Output Widget: These are purely interactive controls that respond immediately to user input without retaining a permanent value. Buttons can have either an icon, label or an action associated with it. Icons and Labels help identify the purpose of the button and the expected action that can be initiated upon the activation of the button. Special colors can also be used to easily differentiate buttons which may be in close proximity to each other. Colors can also be used to indicate the state of the button; e.g. NORMAL, MOUSEOVER, DOWN.
CheckBox
Input Control: The CheckBox control consists of an optional label and a small box that can contain a check mark or not. You can place the optional text label to the left, right, top, or bottom of the CheckBox. When a user clicks a CheckBox control or its associated text, the CheckBox control changes its state from checked to unchecked or from unchecked to checked. CheckBox controls gather a set of true or false values that are not mutually exclusive.
Output Widget: These can toggle between two states, on and off. A check box has two possible values that correspond with an appearance state. In the case of the locations, the value can be off — the check box is not checked— or Yes — the check box is checked.
ComboBox
Input Control: The ComboBox control contains a drop-down list from which the user can select a single value. Its functionality is very similar to that of the SELECT form element in HTML. The ComboBox can be editable, in which case the user can type entries into the Textlnput portion of the ComboBox that are not in the list. Output Widget: This is a choice field that contains several text items, one or more of which shall be selected as the field value. This is a combination of a drop-down list and an editable text box in which the user can type a value other than the predefined choices. Using the drop-down list one value can be chosen; while using the editable text box; users can specify values not found in the drop-down list.
Drop-down list
Input Control: The DropDownList control contains a drop-down list from which the user can select a single value. Its functionality is very similar to that of the SELECT form element in HTML. The DropDownList control consists of the anchor button, prompt area, and drop-down-list, Use the anchor button to open and close the dropdown-list. The prompt area displays a prompt String, or the selected item in the dropdown-list.
Output Widget: This is a choice field that contains several text items, one or more of which shall be selected as the field value. In a drop-down list — the end user can select one value from a fixed list.
List
Input Control: The List control displays a vertical list of items. Its functionality is similar to that of the SELECT form element in HTML. If there are more items than can be displayed at once, it can display a vertical scroll bar so the user can access all items in the list. An optional horizontal scroll bar lets the user view items when the full width of the list items is unlikely to fit. The user can select one or more items from the list.
Output Widget: This is a choice field that contains several text items, one or more of which shall be selected as the field value. In a scrollable list box — the end user can select one or more values from a fixed list.
List builder
This is a choice field that is a graphical user interface element in which a user can select a set of text values by moving values between two list boxes, one representing selected values and the other representing unselected ones. Moving values back and forth is usually accomplished through buttons reading "Add" and "Remove", rather than by dragging and dropping them. The widget can sometimes also include the ability to rearrange the selected values.
RadioButton
Input Control: The RadioButton control lets the user make a single choice within a set of mutually exclusive choices. A RadioButton group is composed of two or more RadioButton controls with a common property. While grouping RadioButton instances in a RadioButton group is optional, a group lets you do things like set a single event handler on a group of buttons, rather than on each individual button. In a RadioButton group the user selects only one member of the group at a time. Selecting an unselected group member deselects the currently selected RadioButton control within that group.
Output Widget: These contain a set of related buttons that can each be "on" or "off". Typically, at most one radio button in a set may be on at any given time, and selecting any one of the buttons automatically deselects all the others. The possible values for the group of radio buttons is either off—no radio button is selected—or a code that corresponds with the keyword field in the radio button group or table.
Slider
Input Control: The Slider control lets users select a value by moving a slider thumb between the end points of the slider track. The current value of the slider is determined by the relative location of the thumb between the end points of the slider, corresponding to the slider's minimum and maximum values. The slider may allow a continuous range of values between its minimum and maximum values or it may be restricted to values at specific intervals between the minimum and maximum value. It
may show tick marks at specified intervals along the track. These tick marks are independent of the allowed values of the slider. The slider may also use a data tip to display its current value.The slider track stretches from left to right, and the labels and tick marks are placed at the top or bottom of the track. While the HSIider control has a horizontal direction, the VSIider control has a vertical orientation. Output Widget This is a control with a handle that can be moved up and down (vertical slider) or right and left (horizontal slider) to select a value (or a range if two handles are present).
D. Criteria Input
This is a set of interaction widgets for inputting data in a form or in a text box for selection criteria or control parameter.
DateField/ DateChooser
Input Control: The DateField control is a text field that shows the date with a calendar icon on its right side. When the user clicks anywhere inside the bounding box of the control, a DateChooser control pops up and shows the dates in the month of the current date. If no date is selected, the text field is blank and the month of the current date is displayed in the DateChooser control. When the DateChooser control is open, the user can scroll through months and years, and select a date. When a date is selected, the DateChooser control closes, and the text field shows the selected date. The user can also type the date in the text field if the editable property of the DateField control is set to true.
Search box
Output Widget: A Search Box is a text field in which the end user can enter one or more keywords or search parameters. Keywords can at times be combined using logical operators such as "AND, OR, NOT", or comparison operators such as "<, <, >, >", or string operators such as "BEGINS_WITH, ENDS_WITH, CONTAINS".
Textlnput/ Text/ TextArea
Input Control: The Textlnput control is a single-line text field that is optionally editable.The Text control displays multiline, non-editable text.The Text control does not support scroll bars. If you need scrolling, a non-editable TextArea control is used.The TextArea control is a multiline text field with a border and optional scroll bars.
Output Widget: A text field is a box or space for text fill-in data typically entered from a keyboard. The text may be restricted to a single line or may be permitted to span multiple lines.
Label/ RichText/ RichEditableText
Input Control: The Label control is used when only a single line of text is needed. These controls provide rich text layout using high-quality international typography. The RichText control can display one or more lines of richly-formatted text and embedded images. For performance reasons, it does not support scrolling, selection, editing, clickable hyperlinks, or images loaded from URLs. To use these capabilities, the RichEditableText control is used.
E. Data Output
This is a set of display panels for presenting selected information using specified criteria.
DataGrid/ AdvancedDataGrid
Input Control: The DataGrid control is intended for viewing data. This is like a List except that it can show more than one column of data making it suited for showing objects with multiple properties. The DataGrid control provides the following features:
• Columns of different widths or identical fixed widths
• Columns that the user can resize at runtime
• Columns that the user can reorder at runtime
• Optional customizable column headers
• Ability to use a custom item renderer for any column to display data other than text
• Support for sorting the data by clicking on a column
The AdvancedDataGrid control expands on the functionality of the standard DataGrid control to add data visualization features to the Document. These features provide greater control of data display, data aggregation, and data formatting. Output Widget: Data is presented in a tabular or grid view which allows for sorting by a particular column. Multiple levels of sorting are also possible. Alternate rows have different styles (usually color) to present data in a clear form. Tables can also be paginated so that a large number of records can be presented within the same tabular box or window. Tables can have a search parameter to filter and present only those records which fulfill the selected or specified criteria.
Charts
Input Control: AreaChart represents data as an area bounded by a line connecting the values in the data. BarChart represents data as a series of horizontal bars whose length is determined by values in the data. BubbleChart represents data with three values for each data point. CandlestickChart represents financial data as a series of candlesticks representing the high, low, opening, and closing values of a data series. ColumnChart represents data as a series of vertical columns whose height is determined by values in the data. HLOCChart (High Low Open Close) represents financial data as a series of elements representing the high, low, closing, and optionally opening values of a data series. LineChart represents a data series as points connected by a continuous line. PieChart represents a data series as a standard pie chart. PlotChart represents data with two values for each data point. The Legend control adds a legend to your charts, where the legend displays the label for each data series in the chart and a key showing the chart element for the series. Legendltem Controls the individual legend elements in a chart legend. Output Widget: Data is presented in a graphical view which can include pie charts, bar graphs, line graphs, and many other styles. This facilitates easy comparison and contrast of data series and also helps identify any patterns, trends or like-moving relationships between data values.
F. Promotional Messages
Multiple slots in a document can be used for images and text messages to deliver
specific communications to the customer. This can be cross-sell or up-sell
messages.
Static
Static content includes text messages and images that do not depend on any
parameter.
Dynamic
Dynamic content includes text messages with placeholders that are filled with values
during run-time. Images can be chosen using a rules engine which uses one or more
parameters in different value settings. Only one final value is presented in the
document placeholder.
Rotational
Dynamic content which has more than one final set of values can be presented in a rotational manner so that each set of values are rotated in the same document placeholder.
G. Layout and Styling
Languages
Both left-to-right and right-to-left scripted languages are supported. This is made possible due to the in-built support for UNICODE and UTF-8 encodings for character sets. Fonts
Multiple fonts can be supported by the document. Fonts that are not default or usually available can either be embedded in the document. Colors
The full color palette of Red-Green-Blue (RGB) values and Hue-Saturation-Brightness (HSB) is supported. Highlighting and Lowlighting
End users can specify conditions and thresholds depending on which data records or information can be highlighted or colored in a specified manner.
We Claim:-
1. A system comprising of,
- A software application which is created in an Integrated development environment (IDE) on an independent computing device, specifically configured to generate electronic documents from data in portable formats;
- A software application with a plurality of widgets with a feature of functionality that can be positioned on a canvas to create a template which can be uploaded to an application server for processing any form and kind of data sourced from a database server or application for generating electronic documents which are interactive in nature;
- A method to employ a system which can publish data inside portable document format (PDF) and allow user interaction and communication where normal web browser functionality is inaccessible.
2. A system as claimed in claim 1 above, wherein, content management feature and the interactive feature of the software include presentment across all access devices in unified formats wherein the user can interact with the system outputting methods which also include the functionalities of group, sort, filter, search and other functions related to data management.
3. A system as claimed in claims 1 and 2 which facilitates combination of applications including Shockwave Flash, XML, PDF, HTML, CSS, JavaScript to enable the software to function online, offline and across devices including hardware systems like Computers, Laptops, smart phones and Tablets.
4. A system as claimed in claim 1 to 3 above, wherein, a service provider can personalize the content to an individual customer and allow storage and changes to the content in encrypted format in a PDF document and on the remote server.
5. A system as claimed in claims 1 to 4 above, comprises of, a Model constructed from the data source, representing the data for the interface components on the canvas which is used as a basis for depicting data which provides for a notification to be generated based on the changes made by user interaction or input.
6. A system as claimed in claim 1 to 5 above, wherein the software facilitates the consolidation of user data, imagery, and textual content to fill placeholders in an electronic document template with the user specific content and data.
7. A system as claimed in claims 1 to 6 above wherein, the portable document
format comprises interaction elements and widgets which are embedded in the
document template which facilitate,
- Desired customized interactivity,
- Generation of documents in bulk volumes, and,
- Consists of a search filter that selects the information to be displayed or published.
8. A system as claimed in claims 1 to 7 above, which provides for data management within the interactive document, wherein, the data appearing in the portable document format is sourced from an external file system, database server or application.
9. An interactive electronic document, wherein, the document is encrypted and/or password protected; which when presented within a container can also include a web browser, document reader and/or a device player.
10. An interactive electronic document, as claimed in any of the preceding claims, wherein, the navigation within the document is facilitated by;
- Breadcrumbs, which are provided for the user to follow back to the starting
or entry point, which include location and/or attribute breadcrumbs;
- A view in a grid like form, which is a graphical user interface element which
provides for the data to be viewed in tabular form;
- A hyperlink, which facilitates the end user to access content within and
outside the document, and which includes inline and anchor links.
11. An interactive electronic document, as claimed in claims 9 and 10, wherein, the selection within the document is facilitated by a plurality of interaction widgets which provide for the ability to specify selection criteria and parameter values.
12. An interactive electronic document, as claimed in claim 11, wherein, the data output within the document is facilitated by a plurality of display panels which are used for presenting selected information.
13. An interactive electronic document, as claimed in claim 11, wherein, specific communication to the user is delivered using a type of content, which is, static and/or dynamic and/or rotational in nature.
14. A system as defined as per this specification with a plurality of interaction widgets
which comprises following features:
-Containment and Security
- Navigation
- Selection
- Criteria Input
- Data output
- Promotional Messages
- Layout and Styling
15. A system as claimed in reference to the description as provided by the
accompanying specification.
| # | Name | Date |
|---|---|---|
| 1 | ABSTRACT1.jpg | 2018-08-11 |
| 2 | 1923-MUM-2014-GENERAL POWER OF ATTORNEY-(30-4-2015).pdf | 2018-08-11 |
| 3 | 1923-MUM-2014-FORM 5.pdf | 2018-08-11 |
| 4 | 1923-MUM-2014-FORM 3.pdf | 2018-08-11 |
| 5 | 1923-MUM-2014-FORM 26.pdf | 2018-08-11 |
| 6 | 1923-MUM-2014-FORM 2.pdf | 2018-08-11 |
| 7 | 1923-MUM-2014-FORM 2-(30-4-2015).pdf | 2018-08-11 |
| 8 | 1923-MUM-2014-FORM 2(TITLE PAGE).pdf | 2018-08-11 |
| 9 | 1923-MUM-2014-FORM 2(TITLE PAGE)-(30-4-2015).pdf | 2018-08-11 |
| 10 | 1923-MUM-2014-FORM 1.pdf | 2018-08-11 |
| 11 | 1923-MUM-2014-DRAWING.pdf | 2018-08-11 |
| 12 | 1923-MUM-2014-DRAWING-(30-4-2015).pdf | 2018-08-11 |
| 13 | 1923-MUM-2014-DESCRIPTION(PROVISIONAL).pdf | 2018-08-11 |
| 14 | 1923-MUM-2014-DESCRIPTION(COMPLETE)-(30-4-2015).pdf | 2018-08-11 |
| 15 | 1923-MUM-2014-CORRESPONDENCE.pdf | 2018-08-11 |
| 16 | 1923-MUM-2014-CORRESPONDENCE-(30-4-2015).pdf | 2018-08-11 |
| 17 | 1923-MUM-2014-CLAIMS.pdf | 2018-08-11 |
| 18 | 1923-MUM-2014-CLAIMS-(30-4-2015).pdf | 2018-08-11 |
| 19 | 1923-MUM-2014-ABSTRACT-(30-4-2015).pdf | 2018-08-11 |