MOBILE AND ONLINE INFORMATION STORAGE AND MANAGEMENT SYSTEM
REFERENCE TO PRIOR APPLICATION
This application claims priority to Provisional Application Serial No. 60/152,263 filed September 2, 1999. BACKGROUND OF THE INVENTION
The present invention generally relates to the field of electronic data storage, and more particularly, is directed to a mobile and online information storage and management system.
With the emergence and widespread use of computer systems in recent years, the information age is fast outpacing society's ability to intelligently store and retrieve information. Many systems and schemes have been devised to make information storage and retrieval easier and more convenient. While some of these systems prove to be adequate for a time, most soon become overwhelmed due to the ever increasing amount of data and information that comes into existence on a daily basis. Moreover, most present day storage and retrieval systems are not very user friendly. Thus, putting their use out of range for many lay persons. Present day systems can also be expensive to install and maintain and can be difficult to upgrade or supplement when the need arises .
The problem will become worse at an even faster rate given the existence of the Internet and its growing use and popularity. Accordingly, an intelligent, convenient, cost effective and user friendly method of data and information storage and retrieval will become even more important and necessary in order to keep pace with the ever growing volume of storage and retrieval requirements. The present invention offers the ideal solution to this problem. SUMMARY OF THE PRESENT INVENTION
Accordingly, it is an objective of the present invention to obviate the above-noted shortcomings and disadvantages of present methods of data and information storage and retrieval.
It is a further objective of the present invention to provide an improved method of data and information storage and retrieval which can be deployed across a variety of computer networks .
It is a still further objective of the present invention to provide an improved method of data and information storage and retrieval which is economical to implement and simple in operation.
It is a further objective of the present invention to provide an improved method of data and information storage and retrieval which is more economical than prior art approaches.
It is a still further objective of the present invention to provide an improved method of data and information storage and retrieval which can be readily implemented in existing network systems and network architecture.
1. MOBILE AND ONLINE INFORMATION STORAGE AND MANAGEMENT
SYSTEM.
The above and other objects of the present invention are achieved by a system which is designed to be a secure, reliable solution to the increasing demand for centralized, convenient data storage and access. The system of the invention incorporates several technologies that define its uniqueness and also addresses a primary concern in mobile and online information storage, i.e., the ability to easily store, access, and share paper-based documents.
Using fax server technology in combination with the global Internet network, the present invention combines the best of both worlds, and conveniently handles both computer- based (i.e., digital data) and non-computer-based data, such as paper documents. The fax server technology specifically used allows users to select specific accounts to which they want to upload data using a fax machine. Through a mathematical formula, account numbers have several checksums that prevent users from making typing errors when specifying
account numbers. This is built into and managed by the fax server, and thus provides immediate account confirmation. In addition to selecting account numbers, the user may enter additional digits that are used to execute commands, such as selecting the level of encryption, delivery means, and other user preferences. Once data is fed into the fax server system, it is sent to an online application server that parses the transmission, extracts the account information, executing any user commands, and enters the data in the appropriate location.
Users are then able to view, access, share, fax, and email the data using a web browser-based application. Because all the application logic is stored and executed on the central server, and not the client machine, the web application is both platform and operating system independent. This also allows access to information from various networked devices, including wireless Personal Digital Assistants (PDAs) and web-enabled cellular phones. Text-to-speech technology allows retrieval of text-based information from a telephone. Fax back services allow retrieval of information from fax machines .
2. Email Markup Language .
Using a new computer language in accordance with the present invention, and hereafter referred to as Email Markup
Language (EML) , users are able to access features and perform several functions with data in their accounts, including queries into the data, searches, information retrieval, information forwarding, and account maintenance.
EML is a markup language that has roots in Standard General Markup Language (SGML) , and is similar to Hypertext Markup Language (HTML) and Extensible Markup Language (XML) , both of which are descendants of SGML. Specifically, EML has similarities to HTML and XML in the syntax and tag pair construction, but is designed to send commands to a parsing server for execution rather than simply format text documents. EML has several uses, including use in the transmission and retrieval of data from an online information management system. Because EML is an end-user application, the language is designed to be simple, intuitive, and yet powerful enough to provide advanced functionality to be useful for complex tasks. EML was also designed to be conservative and lax in interpreting the command list, and allow poorly formed, illegal, or unrecognized commands to pass through, without any action taken.
The EML language is intended to reside within the body of an email message, with commands executed in the order in which they appear in the email body. Commands reside within angle brackets, like HTML and XML, and similarly have both an
opening tag and a closing tag. Between the opening and closing tags is the parameter list, which varies depending on the command specified. Commands may be nested, which is useful in providing additional specification and execution detail to commands in an outer scope.
EML commands are embedded in an email message and sent to a specific email server that has parsing capabilities built into it. The email message is addressed to a specific user account, such as user@hostname . com, and all commands are applied to the specific user. Emails which are sent to one of several pre-defined email aliases may also return administrative information on the server itself. Result sets from queries are emailed back to the original sender, or can be redirected to other recipients using EML commands.
Commands in EML are used to query databases, retrieve documents, list directories, and upload information. The language is extensible, like XML, and can be extended to perform additional commands as defined by the user in a Document Type Definition (DTD) file. DTDs can also be used to reconfigure the default settings for commands and validate an EML document. If the EML language is extended, the server parser must also be updated with the new commands and syntax. BRIEF DESCRIPTION OF THE DRAWINGS
The novel features of the present invention are set out with particularity in the appended claims, but the invention will be understood more fully and clearly from the following detailed description of the invention as set forth in the accompanying drawings in which:
Figure 1 is a block diagram illustrating one embodiment of the present invention; and
Figure 2 is a flow chart illustrating the operation of the embodiment of the invention illustrated in Figure 1. BRIEF DESCRIPTION OF THE PREFERRED EMBODIMENT
A preferred embodiment of the present invention will now be described with reference to the drawings .
Figure 1 illustrates one embodiment of the online data management and delivery system of the present invention. The system is designed to provide a secure, reliable way to store, access, share, and deliver data via the Internet or public switched telephone network (PSTN) over both wired and wireless devices. The system enables users to store, and maintain their data in a fully hierarchically file system with private, shared, and public areas. The system incorporates several Internet, telephony, database, and file management technologies and methodologies, enabling functionality for both personal and corporate applications.
As shown in Figure 1, the system includes a Fax Server 1 connected to a fax machine 8, an Email Server 2 connected to an email terminal 9, a Web Server 3 connected to PC 10, a Voice Server 4 connected to a telephone 11, a Database Server 5, a File Server 6 and an Application Server 7.
Servers 1 - 4 serve as inputs to an Acceptance Engine and Application Server 7. Database 5 and File Server 6 also are connected to Application Server 7. The output of Application Server 7 is connected to an XML Application Programming Interface 24. Also connected to this XML Application Programming Interface 24 via WAP Interface 17 is a wireless terminal unit 23, a PC 22 via HTTP Interface 16, a Palm device 21 via Palm Interface 21, a telephone 20 via Voice Interface 14, a fax machine 19 via Fax Interface 13 and an email terminal 18 via EMAIL Interface 12.
The Application Server and the Database Server work in conjunction as the primary components of the system. All application logic in the system is maintained in the Application Server. The Database and File Servers comprise the storage component of the system. The Fax, Mail and Voice servers comprise the messaging component.
The Fax Server sends and receives fax data over the public switched telephone network, and is responsible for delivering inbound faxes to the Application Server, and for
delivering outbound faxes from the Application Server to a fax recipient .
The Mail Server sends and receives electronic mail and any associated attachments over the Internet, and is responsible for delivering inbound mail to the Application Server, and for delivering outbound mail from the Application Sever to an electronic mail recipient. The Application Server logic provides users with access to view and manipulate data in the system, and dynamically changes its output depending on the type of interface users are using which could include Web browsers, PDAs, telephones, cellular phones, two-way pagers, or other wired and wireless devices.
The Voice Server handles analog data interfaces including voice calls via the PSTN network, or other analog voice devices including cell phones. The Voice Server can detect DTMF tones and use the tones to navigate the system, enter data, and retrieve data. The Voice Server can also recognize speech and convert it into commands or digital data. Insertion and Storage Of Data
Data is stored on a central server that is accessible through both wired and wireless devices. Wired devices include computers and other Internet-connected devices that run either a Web browser or other client software that is capable of receiving information originating in the Internet. Wireless
devices include cellular phones, two-way pagers, Personal Digital Assistants (PDAs) , and other devices that have access to the Internet or other network that has connectivity to the Internet. A voice interface allows insertion of analog voice information that can be stored on the central server, and also retrieved via voice recognition, or DTMF navigation. Other commands, such as data manipulation, user account maintenance, and other administrative functions can also be performed by voice recognition or DTMF navigation.
Data (including electronic files, paper documents, and other data) is entered into the system through Web-based applications, PC-based client software, SMTP-based email clients, telephony clients, or through any facsimile machine or facsimile software application.
Using fax server technology in combination with the global Internet network, the system combines the best of both worlds, and conveniently handles both computer-based (i.e. digital) data, and non-computer-based data, such as paper documents. Paper-based documents, which may include memos, invoices, financial statements, permits, blueprints, business cards, magazine articles, etc. can be faxed into user accounts through assigned inbound fax numbers. The fax server technology allows users to select specific accounts to which they want to upload data using any fax machine, and also
allows for further processing of commands on uploaded documents, such as selecting the encryption level, means of delivery, specific folder to upload into, and other user preferences .
Once data is fed into the fax server system, it is sent to an online application server that parses the transmission, extracts the account information, executes any user commands, and enters the data in the appropriate location. Commands are entered via the fax machine keypad, utilizing DTMF tones generated by the fax machine keypad. Once the user's fax number is dialed and the receiving fax server starts its connection to the fax machine, additional DTMF tones may be entered. These tones are collected by the fax server and relayed to the Application Server. Access, Retrieval, and Delivery Of Data
Data is accessed through both wired and wireless devices. Web-based applications render a user's files to him in various views, depending on the user's preference, via Web browser applications. Wireless devices access the Virtual Vault System through various data protocols that are found on cellular phones, two-way pagers, Personal Digital Assistants (PDAs) , and other wireless devices. In particular, wireless protocols include Wireless Application Protocol (WAP) , and Palm Query Application (PQA) .
Because all the application logic is stored and executed on the central server, and not the client machine, the web application is both platform and operating system independent. This also allows access to information from various networked devices, including wireless PDAs and web-enabled cellular phones. Text-to-speech technology allows retrieval of text- based information from a telephone. Fax back services allow retrieval of information from fax machines.
Figure 2 is a flow chart illustrating the operation of the embodiment of the present invention as described in Figure 1. The Email Markup Language
When used in conjunction with the Virtual Vault System, EML allows users to access features and perform several functions with data in their accounts, including performing queries into the data, searches, information retrieval, information forwarding, and account maintenance. Command examples
The following is a subset of the EML command language with examples of typical parameters. <search>search words or more nested commands</search>
<boolean>on/off/default</boolean>
<regexp>on/off/default</boolean>
<terms>search words</terms>
<attachments>yes/no/default</attachments> <link>yes/no/default</link> <htmlenabled>yes/no</htmlenabled>
<dir>directory name or blank for root directory (may contain regular expressions) </dir>
<retrieve>document number or other unique file specifier from the server</retrieve>
<submit>document number of other unique file specifier from a local machine</submit>
<account>account number/user name</account>
<sql>sql statements</sql>
<datasource>data source name</datasource> <statement>actual query</statement>
<cocarbon copy the results to additional email addresses</cc>
<bcc>blind carbon copy the results to additional email addresses</bcc>
Example email exchange
The following is an example of typical email exchange using the Eml language. To: bill@vVault.com From: steven@cujo.com Subject: Search results <search>
<boolean>on</boolean>
<regexp>on</regexp>
<terms>1999 tax return</terms>
<attachments>no</attachments> </search>
The server parses this email as follows:
1. The email is parsed, and the parser recognizes "search" as a command, which can take several additional parameters.
2. In this particular case, the parser sees "boolean" is turned on, thus allowing search terms to include boolean logic. For example, if the search terms were "A and B" , data would only be retrieved if both A and B were found in the same document; if the search terms were "A or B" , data would be retrieved for documents that contain A, B, or both A and B.
3. The parameter "regexp" is found, and is turned on, so the search will allow regular expressions to be used, such as "*" to match all occurences of a character string.
4. The "terms" are the actual search words used in finding matching documents .
5. The "attachments" command is set to "no" and specifies that the user does not want the matching documents returned as attachments, but rather as document numbers (or other file specifier) so the user can selectively pick the documents to retrieve.
In order to simplify matters for the user, the "search" command can simply be the "search" open and close tags, and search words in between. If no other tags are found nested in the search command, the parser assumes that all strings between the search command tags are the search terms; all other parameters assume default values.
A response from the email server/parse for this email command is:
To: steven@cujo.com From: bill@vVault.com Subject: re: Search results
Document 1092304: 1999 Federal 1040
Document 1092342: 1999 State 540
Document 1092510: 1999 Schedule A
The user then can select the documents to retrieve by replying to the email with the following response:
To: bill@hostname . com
From : bill@cujo . com
Subject: re: re: Search results
<retrieve>1092304</retrieve> <retrieve>1092510</retrieve>
The next email from the server fulfills the retrieval request :
To : bill@cu o . com
From: bill@hostname . com
Subject: re : re : re : Search results
Attached file: 1092304 (1999 Federal 1040) Attached file: 1092510 (1999 Schedule A)
The user can now save the attachments to his or her own local workstation and view the results. Some email clients support additional functionality, and the user may want to take advantage of some of these features. EML will support those additional features as a matter of course. For example, if the user had specified a parameter that enabled HTML, documents that can be formatted in HTML would be returned as such. If the EML commands requested the documents as hypertext links instead of attachments, the email message would contain hypertext links that would open the requested document in a web browser window directly. If the EML commands wanted to retrieve the documents in one step, the response email could include the documents as attachments to the email . Extensibility
EML is fully extensible using DTDs. DTDs allow users or administrators to tailor or extend the command language to fit specific needs. A DTD is a document that declares commands, attributes, and other valid entities in an EML document. DTDs are also used to verify the validity of an EML document. Commands or tags that are not recognized or not formed properly are ignored.
It should be obvious from the above-discussed apparatus embodiment that numerous other variations and modifications of the apparatus of this invention are possible, and such will
readily occur to those skilled in the art. Accordingly, the scope of this invention is not to be limited to the embodiment disclosed, but is to include any such embodiments as may be encompassed within the scope of the claims appended hereto.