US20040025167A1 - Software, method and system for data connectivity and integration having transformation and exchange infrastructure - Google Patents
Software, method and system for data connectivity and integration having transformation and exchange infrastructure Download PDFInfo
- Publication number
- US20040025167A1 US20040025167A1 US10/456,293 US45629303A US2004025167A1 US 20040025167 A1 US20040025167 A1 US 20040025167A1 US 45629303 A US45629303 A US 45629303A US 2004025167 A1 US2004025167 A1 US 2004025167A1
- Authority
- US
- United States
- Prior art keywords
- data
- inbound
- outbound
- communication
- data set
- Prior art date
- Legal status (The legal status 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 status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/75—Indicating network or usage conditions on the user display
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/563—Data redirection of data network streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/62—Establishing a time schedule for servicing the requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
Definitions
- the present invention is related to the fields of data interchange systems and data connectivity and integration and related software and methods.
- an administrator often manually performs various tasks required to prepare a data set or file for transfer and processing at another computer system.
- an administrator at the receiving computer system often performs many tasks to process the received data.
- the administrator can manipulate, copy, append, create, or delete various files depending on the condition or requirements of the data or documents to be transferred or received.
- the administrator can encrypt, compress, or translate the data to another format.
- the administrator often maps data from one format to another and performs tasks to complete the transfer or receipt of a data set or file to and from another computer system.
- These administrators also often create scripts or instruction sets to assist them in performing various tasks.
- embodiments of the present invention advantageously provide a system, apparatus, software, and methods for data connectivity and integration that facilitate fast and accurate transformation and exchange of data among a plurality of entities, sources, or applications.
- Embodiments of a system, apparatus, software and methods for data connectivity and integration of the present invention advantageously identify a communication data format or connectivity protocol and translate or transform it to its connected applications.
- Embodiments of an apparatus and software for data connectivity and integration of the present invention are also adaptable to predictable future formats that may come into practice, and can perform these functions in near real-time. Because embodiments of an apparatus and software for data connectivity and integration of the present invention operate as a translator, these embodiments do not rely on a limited set of pre-determined modules.
- Embodiments of a system, apparatus, software and methods for data connectivity and integration of the present invention further advantageously adapts easily to a very large number of entities, sources, or applications and, therefore, require little time or investment to implement.
- Embodiments of a system, apparatus, software, and methods for data connectivity and integration of the present invention still further advantageously were developed as a powerful, open approach to data connectivity and leverage the capabilities of existing standards, such as EDI, XML and Java, to manipulate, transform, and exchange electronic data transparently and accurately.
- Embodiments of software, methods, and system for data connectivity and integration of the present invention advantageously can target various environments including, but not limited to, the following:
- Intra-company From one company's software application to its other application(s) (i.e., between a company's e-commerce application and its Inventory Management application).
- Embodiments of a system and software for data connectivity and integration have a transformation and exchange infrastructure (TEI) that takes incoming data (from any source using any protocol) and transforms it into a form that can be read and understood natively by the destination(s).
- the TEI advantageously has two parts: the exchange part is where data from various sources are sent to various destinations, and the transformation part is where the data is manipulated and transformed so that a first data protocol coming from the source is properly turned into the second data protocol by the time it reaches the destination.
- TEI is an infrastructure in that TEI is broader than a single application, but narrower than an operating system. TEI has the capability of effectively working in both arenas and is not limited to a single area.
- embodiments of the present invention provides a system for data connectivity and integration that includes a first computer defining a first server.
- the first server having a first memory, a first data set stored therein, and a first data interchange protocol.
- a first area network is in communication with the server, and a plurality of remote data terminals is in communication with the first server through the first area network by the first data interchange protocol.
- At least one remote data terminal of the plurality of remote data terminals has data terminal memory associated therewith.
- a second area network is in communication with the first server and the at least one remote data terminals.
- a second computer remote from the first server is in communication with the second area network and defines a second server.
- the second server has a second memory, a second data set stored therein, and a second data interchange protocol.
- a third computer remote from the first server is in communication with the second area network and defines a third server.
- the third server also has memory, a third data set stored therein and a third data interchange protocol.
- Transformation and exchange gateway software is stored in the data terminal memory of one of the plurality of remote data terminals, has an output in communication with the first server through the first area network by the first data interchange protocol, and has an input in communication with the second server through the second area network by the second data interchange protocol and in communication with the third server through the second area network by the third data interchange protocol to transform each of the second and third data interchange protocols to the first data interchange protocol so that the respective second and third data sets can be effectively communicated to the first server through the transformation and exchange gateway software and be in the first data interchange protocol for effective use by the plurality of remote terminals and to transform the first data interchange protocol to the respective second and third data interchange protocols so that first data set can be communicated from the first server to the second and third servers so that the second and third servers for effective use thereby.
- embodiments of a system of the present invention can include the transformation and exchange gateway software further having a plurality of inbound templates defining the input positioned in communication with the second and third servers to selectively define the respective second and third data interchange protocols prior to receiving inbound data and at least one outbound template defining the output positioned in communication with the plurality of remote terminals to selectively define the first data interchange protocol prior to sending outbound data.
- the transformation and exchange gateway software can further have a mapper to map connection data path instructions to the second and third servers, a data transforming and exchanging engine in communication with the mapper to locate a data path and determine a select one of the plurality of inbound templates to use for inbound data processing instructions, in communication with the select one of the plurality of inbound templates to process the inbound data set responsive to the inbound data processing instructions of the select one of the plurality of inbound templates and thereby transform the inbound data set to the outbound data set, and in communication with the at least one outbound template to send the outbound data set with the outbound data interchange protocol responsive to the outbound data processing instructions of the at least one outbound template, and a scheduler in communication with the mapper to schedule timing for making a connection to the second and third servers having the inbound data set and connection instructions to connect to the second and third servers having the inbound data set.
- the transformation and exchange gateway software can also include a set of graphical user interface (GUI) tools in communication with the data transformation and exchange engine to interface with a user.
- GUI graphical user interface
- the GUI tools can include an inbound template GUI to select the inbound data processing instructions and thereby define parameters for the inbound data set and an outbound template GUI to select the outbound data processing instructions and thereby define parameters for the outbound data set.
- Embodiments of the present invention also provide transformation and exchange gateway software stored in a memory.
- the software includes a mapper to map connection data path instructions, a plurality of inbound templates each to provide inbound data processing instructions for an inbound data set having an inbound data interchange protocol, at least one outbound template to provide outbound data processing instructions for an outbound data set having an outbound data interchange protocol different from the inbound data interchange protocol, and a data transformation and exchange engine in communication with the mapper to locate a data path and determine a select one of the plurality of inbound templates to use for inbound data processing instructions, in communication with the select one of the plurality of inbound templates to process the inbound data set responsive to the inbound data processing instructions of the select one of the plurality of inbound templates and thereby transform the inbound data set to the outbound data set, and in communication with the at least one outbound template to send the outbound data set with the outbound data interchange protocol responsive to the outbound data processing instructions of the at least one outbound template.
- embodiments of the transformation and exchange gateway software can includes a scheduler in communication with the mapper to schedule timing for making a connection to an entity having the inbound data set and connection instructions to connect to the entity having the inbound data set and a set of graphical user interface (GUI) tools in communication with the data transformation and exchange engine to interface with a user.
- the GUI tools can include an inbound template GUI to select the inbound data processing instructions and thereby define parameters for the inbound data set and an outbound template GUI to select the outbound data processing instructions and thereby define parameters for the outbound data set.
- the present invention also provides embodiments of method of data interchange.
- a method includes receiving an inbound data set having a first data interchange protocol, processing the inbound data set responsive to inbound data processing instructions to thereby transform the inbound data set into an outbound data set having a second data interchange protocol different from the first data interchange protocol, and sending the outbound data set having the second data interchange protocol.
- Implementation of embodiments of TEI gateway software of the present invention preferably uses layered architecture to allow the software to be embedded inside another application, used as an application service provider (ASP), run as a stand-alone application, or implemented as separate independent modules.
- the software can operate in the enterprise application integration (EAI) space because it is capable of connecting disparate systems together in a unifying manner, but is different from traditional EAI tools in that it does not require “deep” integration into CRM, ERP, or other enterprise applications in order to achieve the goal of system interoperability.
- EAI enterprise application integration
- the TEI gateway software easily handles this without requiring that the CRM and ERP systems be awkwardly united. Instead, these systems can remain separate systems without requiring that the TEI gateway software be surgically (and artificially) implanted.
- Embodiments of a system, methods, and software for data connectivity and integration of the present invention have a data transformation and exchange engine capable of interpreting templates that describe the incoming and/or outgoing data without actually carrying the data. This, for example, releases embodiments of a system, apparatus, and software from having to “know” anything about any other data standards or formats. Instead, these embodiments act as a sort of universal translator. This universal translator can receive data transmitted from essentially any source and transform it, according to the instructions found in the interpreting templates, into the format needed by or understood natively by a receiving destination entity or source.
- entities are no longer forced to fit their data into existing “standards” and enhances these entities abilities to do business with other entities for which they otherwise were not able.
- FIG. 1A is a schematic view of a system for data connectivity having transformation and exchange infrastructure (TEI) for communication between a plurality of entities according to an embodiment of the present invention
- TEI transformation and exchange infrastructure
- FIG. 1B is a schematic view of a system for data connectivity having transformation and exchange infrastructure (TEI) for communication between a plurality of entities according to another embodiment of the present invention
- FIG. 1C is a schematic view of a system for data connectivity having transformation and exchange infrastructure (TEI) for communication between a plurality of entities according to still another embodiment of the present invention
- FIG. 1D is a schematic view of a system for data connectivity having transformation and exchange infrastructure (TEI) for communication between a plurality of entities according to yet another embodiment of the present invention
- FIG. 2 is a schematic view of a system for data connectivity having TEI for communication between a plurality of entities having TEI translating gateway software according to an embodiment of the present invention
- FIG. 3 is a schematic view of TEI gateway software according to an embodiment of the present invention.
- FIG. 4 is a schematic view of TEI translating gateway software having independent and separate data interchange connectivity and layering for the TEI according to an embodiment of the present invention
- FIG. 5 is a schematic view of a method of doing business for data connectivity according to an embodiment of the present invention.
- FIG. 6 is a schematic environmental view of a system having TEI for communicating between a plurality of entities according to an embodiment of the present invention
- FIG. 7 is a flow diagram of a method of communicating for TEI gateway software according to an embodiment of the present invention.
- FIG. 8 is a flow diagram of a method of getting data for TEI gateway software according to an embodiment of the present invention.
- FIG. 9 is a flow diagram of a method of translating data for TEI gateway software according to an embodiment of the present invention.
- FIG. 10 is a flow diagram of a method of initializing an data stream for TEI gateway software according to an embodiment of the present invention
- FIG. 11 is a flow diagram of a method of parsing a record for TEI gateway software according to an embodiment of the present invention
- FIG. 12 is a flow diagram of a method of processing database data for TEI gateway software according to an embodiment of the present invention.
- FIG. 13 is a flow diagram of a method of processing database data for TEI gateway software according to an embodiment of the present invention.
- FIG. 14 is a flow diagram of a method of creating an outbound record for TEI gateway software according to an embodiment of the present invention
- FIG. 15 is a flow diagram of a method for parsing a relation among data for TEI gateway software according to an embodiment of the present invention
- FIG. 16 is a flow diagram of a method of sending data for TEI gateway software according to an embodiment of the present invention.
- FIG. 17 is a flow diagram of a method of processing a synchronous response according to an embodiment of the present invention.
- FIG. 18 is a flow diagram of a method of processing errors for TEI gateway software according to an embodiment of the present invention.
- FIG. 19 is a flow diagram of a method of scheduling for TEI gateway software according to an embodiment of the present invention.
- FIG. 20 is a schematic view of a graphical user interface to select a communication group for TEI gateway software according to an embodiment of the present invention
- FIG. 21 is a schematic view of a graphical user interface to select and create inbound and outbound templates for TEI gateway software according to an embodiment of the present invention
- FIG. 21A is a schematic view of a graphical user interface having an inbound template according to an embodiment of the present invention.
- FIG. 21B is a schematic view of a graphical user interface having an outbound template according to an embodiment of the present invention.
- FIG. 22 is a schematic view of a graphical user interface having a transfer screen to connect from a local machine to a remote server according to an embodiment of the present invention
- FIG. 23 is a schematic view of a graphical user interface to establish communications to complete a data exchange or transaction for TEI gateway software according to an embodiment of the present invention
- FIG. 24 is a schematic view of a graphical user interface to select communications for TEI gateway software according to an embodiment of the present invention
- FIG. 25 is a schematic view of a graphical user interface of a schedule manager for TEI gateway software according to an embodiment of the present invention.
- FIG. 26 is a schematic view of a graphical user interface of an initial login to an account for user data connectivity management for TEI gateway software according to an embodiment of the present invention
- FIG. 27 is a schematic view of a graphical user interface of a user data connectivity management for TEI gateway software according to an embodiment of the present invention.
- FIG. 28 is a schematic view of a graphical user interface of account management according to an embodiment of the present invention.
- FIGS. 1 A- 28 illustrate embodiments of a system, software, and methods for data connectivity having transformation and exchange infrastructure (TEI) according to the present invention and provide an e-commerce integration application that facilitates fast and economical data connectivity among multiple distinct entities using virtually any data format, connectivity protocol or delivery mechanism.
- IT departments within companies for example, have the responsibility of writing, buying, deploying, and maintaining the applications and related technologies that are needed to keep a company current in the Information Age.
- Traditionally there has been a give and take relationship with the “buy vs. build” decision on whether to write a custom application in-house, or to buy an off-the-shelf application written by someone else.
- Embodiments of TEI gateway software according to the present invention advantageously fits both.
- a site license in the software allows companies who desire to buy an application that is ready to be deployed and used immediately to connect suppliers, vendors, partners, and others into their existing systems and lines of communications either through the company itself (see FIG. 1 A) or through a third party remote service provider (FIG. 1B).
- An original equipment manufacturer (OEM) license in the software allows companies the ability to embed the software technology directly into their custom applications (see FIGS. 1 C- 1 D), or to use whatever components of the software desired or appropriate for a “custom” solution.
- a system and software for data connectivity and integration can be effective in a wide variety of scenarios because of at least three design and architectural objectives: human control is kept at the semantic level and the rest is automated, the system and software do not require any predetermined data formats, and the architecture is layered to provide flexibility.
- the system, software, and methods operate in real-time and connect to internal or external data sources, regardless of the EDI or XML applications being used (this applies even if no standard is being used).
- the TEI gateway software has an extensible J2EE or Java platform-independent solution that allows companies with distinct systems and environments to transparently exchange electronic data. It provides businesses with seamless integration and translation capabilities, regardless of any public or proprietary EDI, XML or other data formats in use.
- the TEI gateway software can be placed behind company firewalls for use on internal applications in addition to being used as an application service provider (ASP) or OEM.
- ASP application service provider
- the system and software does not require an outside company or IT engineer to “map” the data from point A to point B but can easily be handled by a business analyst, for example.
- the new standards can be easily integrated into the software, for example, in as little as a single day.
- the TEI gateway software supports any-to-any data exchange and is an effective, fast approach to data connectivity. It does not replace EDI with XML; rather it works directly with existing systems to create a cohesive environment where applications talk to other entities such as suppliers, customers or distributors or partners, such as shown in FIG. 1, without data loss or the requirement for extensive coding.
- the TEI gateway software also combines XML and EDI transformation capabilities, enabling a company to extend its reach to virtually any audience.
- e-commerce or similar applications can be integrated with a wide variety of supply chain trading partners with no fear of exclusion, high-expense, long implementation times, or other typical challenges. Once installed, frequent changes and additions to trading partners and their applications do not cause unnecessary gaps in service or lengthy software development tasks.
- a first design consideration was to make the TEI gateway software entirely decoupled from any existing EDI or XML “standard” by architecting it so that any such standards were held in modifiable templates, apart from the actual transformation and exchange engine, so that industry changes could be captured quickly with little coding being needed (see FIGS. 2 - 3 and 21 - 22 ). This has the added effect of making any proprietary changes to a given standard easy to adapt, as no coding is necessary if, for example, a company needed to extend an existing standard to better handle its own data.
- the architecture and platform can be J2EE or Java compliant. This satisfies dual requirements for cross-platform capability and adherence to accepted code standards.
- the software and system for data connectivity was designed to require as little coding as possible, external coding may be necessary in certain situations and a goal was for it to be straightforward and accessible for information technology (IT) personnel.
- IT information technology
- the capabilities of the TEI gateway software 60 and system 50 can be extended through its pluggable algorithm module (see below), and it was a design goal to make this straightforward and intuitive for software developers.
- Embodiments of the TEI gateway software of the present invention advantageously operate in both worlds of value added networks (VAN), which traditionally use EDI to handle point-to-point data transfers, and data exchanges and marts, which have arisen to compete with the VAN paradigm and which usually only use XML or one of its derivatives, such as Web Services, rather than EDI, as the document type.
- VAN value added networks
- EDI data exchanges and marts
- the TEI gateway software is “able to handle” any kind of data and does not “require” that it come or go in any particular form or format.
- the layer architecture of the TEI gateway software handles the details of receiving data from any kind of transportation protocol (such as e-mail, FTP, HTTP, a database connection, etc.) and keeps it separate from the actual format of the data (XML, SOAP, X12, EDIFACT, etc.) so that the transformation process is kept separate from the exchange process.
- embodiments of the present invention provides a system for data connectivity and integration that includes a first computer defining a first server.
- the first server having a first memory, a first data set stored therein, and a first data interchange protocol.
- a first area network is in communication with the server, and a plurality of remote data terminals is in communication with the first server through the first area network by the first data interchange protocol.
- At least one remote data terminal of the plurality of remote data terminals has data terminal memory associated therewith.
- a second area network is in communication with the first server and the at least one remote data terminals.
- a second computer remote from the first server is in communication with the second area network and defines a second server.
- the second server has a second memory, a second data set stored therein, and a second data interchange protocol.
- a third computer remote from the first server is in communication with the second area network and defines a third server.
- the third server also has memory, a third data set stored therein and a third data interchange protocol.
- Transformation and exchange gateway software is stored in the data terminal memory of one of the plurality of remote data terminals, has an output in communication with the first server through the first area network by the first data interchange protocol, and has an input in communication with the second server through the second area network by the second data interchange protocol and in communication with the third server through the second area network by the third data interchange protocol to transform each of the second and third data interchange protocols to the first data interchange protocol so that the respective second and third data sets can be effectively communicated to the first server through the transformation and exchange gateway software and be in the first data interchange protocol for effective use by the plurality of remote terminals and to transform the first data interchange protocol to the respective second and third data interchange protocols so that first data set can be communicated from the first server to the second and third servers so that the second and third servers for effective use thereby.
- embodiments of a system of the present invention can include the transformation and exchange gateway software further having a plurality of inbound templates defining the input positioned in communication with the second and third servers to selectively define the respective second and third data interchange protocols prior to receiving inbound data and at least one outbound template defining the output positioned in communication with the plurality of remote terminals to selectively define the first data interchange protocol prior to sending outbound data.
- the transformation and exchange gateway software can further have a mapper to map connection data path instructions to the second and third servers, a data transforming and exchanging engine in communication with the mapper to locate a data path and determine a select one of the plurality of inbound templates to use for inbound data processing instructions, in communication with the select one of the plurality of inbound templates to process the inbound data set responsive to the inbound data processing instructions of the select one of the plurality of inbound templates and thereby transform the inbound data set to the outbound data set, and in communication with the at least one outbound template to send the outbound data set with the outbound data interchange protocol responsive to the outbound data processing instructions of the at least one outbound template, and a scheduler in communication with the mapper to schedule timing for making a connection to the second and third servers having the inbound data set and connection instructions to connect to the second and third servers having the inbound data set.
- the transformation and exchange gateway software can also include a set of graphical user interface (GUI) tools in communication with the data transformation and exchange engine to interface with a user.
- GUI graphical user interface
- the GUI tools can include an inbound template GUI to select the inbound data processing instructions and thereby define parameters for the inbound data set and an outbound template GUI to select the outbound data processing instructions and thereby define parameters for the outbound data set.
- Embodiments of the present invention also provide transformation and exchange gateway software stored in a memory.
- the software includes a mapper to map connection data path instructions, a plurality of inbound templates each to provide inbound data processing instructions for an inbound data set having an inbound data interchange protocol, at least one outbound template to provide outbound data processing instructions for an outbound data set having an outbound data interchange protocol different from the inbound data interchange protocol, and a data transformation and exchange engine in communication with the mapper to locate a data path and determine a select one of the plurality of inbound templates to use for inbound data processing instructions, in communication with the select one of the plurality of inbound templates to process the inbound data set responsive to the inbound data processing instructions of the select one of the plurality of inbound templates and thereby transform the inbound data set to the outbound data set, and in communication with the at least one outbound template to send the outbound data set with the outbound data interchange protocol responsive to the outbound data processing instructions of the at least one outbound template.
- embodiments of the transformation and exchange gateway software can includes a scheduler in communication with the mapper to schedule timing for making a connection to an entity having the inbound data set and connection instructions to connect to the entity having the inbound data set and a set of graphical user interface (GUI) tools in communication with the data transformation and exchange engine to interface with a user.
- the GUI tools can include an inbound template GUI to select the inbound data processing instructions and thereby define parameters for the inbound data set and an outbound template GUI to select the outbound data processing instructions and thereby define parameters for the outbound data set.
- the present invention also provides embodiments of method of data interchange.
- a method includes receiving an inbound data set having a first data interchange protocol, processing the inbound data set responsive to inbound data processing instructions to thereby transform the inbound data set into an outbound data set having a second data interchange protocol different from the first data interchange protocol, and sending the outbound data set having the second data interchange protocol.
- Typical Scenario the customer 55 creates products that are sold to a distributor 54 , e.g., a Retail Partner, who then sells them to the general public. To make it's products, the customer 55 also buys products from suppliers 52 , e.g., Factory A, Factory B, and Factory C. Prior to the existence of electronic data interchange (EDI), all transactions between the customer 55 and its supplier factories 52 were via telephone, faxes and mail or couriers. Orders for more Factory A's or Factory B's required someone at the customer 55 to manually place an order, then wait to receive manual confirmation through the mail (or by phone). Transactions took unnecessary time, and multiple people at both ends had to get involved to complete the process.
- EDI electronic data interchange
- the customer 55 faced the following problem: they wanted to connect to a distributor 54 using an XML-based data interchange protocol for its system, but distributor 54 had adopted EDI previously, and had not chosen to use XML.
- the customer 55 also wanted to connect to the Factory A, Factory B, and Factory C, but there were problems.
- Factory A was now installing a J2EE application server and custom coding it to handle orders, including a variety of planned electronic communications that they had yet to define.
- Factory B was already using ebXML via the web, and insisting that anyone doing business with them had to use (their choice of) XML to do business with them.
- Factory B had long ago created a proprietary system that used its own socket based system, and had no budget to adapt to a new system, including any changes to their order form.
- the data connectivity to the distributor 54 is solved, because the TEI gateway software 60 can handle any form of EDI or other data interchange protocol.
- the connectivity to Factory B is also resolved, because the TEI gateway software 60 can be adaptable to any kind of data stream that Factory B's J2 EE application is likely to use.
- Factory A is gracefully handled, because the TEI gateway software also handles any form of XML and Factory C's proprietary socket connection is not an issue, neither is their proprietary cryptic order form, because the TEI gateway software does not require any particular data format, only that someone indicate how it should be translated into the workflow.
- the customer 55 also can select the TEI gateway software 60 for this application because it can accommodate the 500 new vendors and merchants the customer 55 wants to bring into their trading application.
- the TEI gateway software 60 is platform independent (any 32EE compliant platform), connects using FTP, HTTP/S, email, socket, files, custom protocols and/or interfaces for support, and has drag drop user interface for managing data, systems integration and partners.
- the TEI gateway software 60 has extensible capabilities via pluggable algorithm module 68 and can be directly integrated with most Enterprise Application Servers (Weblogic, WebSphere, IPlant, Borland, Jboss, etc.).
- the system for data connectivity for example, can have 128bit security, dynamic document and format recognition, and automatic data merge, translation, and split logic for Store and forward capabilities.
- the TEI gateway software can provide support for new HIPPA standards and had reporting mechanisms for performance and usage,
- the supported platforms can be Linux, Solaris, HP Unix, Windows NT/2000 Oracle, Sybase, DB2, and MySQL.
- TEI gateway software 60 is used to connect multiple sources and providers of electronic data together into a system that acts as if no natural barriers exist between them. Most systems have little in common with each other and do not easily work together at all, let alone in a seamless and integrated fashion.
- the TEI gateway software 60 advantageously makes such electronic connectivity possible in a realistic, effective, straightforward, and rapid manner.
- the TEI gateway software 60 is focused to efficiently connect, transmit, receive, and transform, electronic data between diverse trading partners, suppliers, information brokers, or other sources of electronic data.
- the TEI gateway software 60 or infrastructure has the following five main elements:
- GUI Tools 66 for partner and system administration
- the transformation and exchange engine 65 is the core of the application.
- the Partner Map 64 and Inbound Template 61 define rules, and the transformation and exchange engine 65 can be considered the implementation resource for those rules.
- a Scheduler [see below] reads the Partner Map 64 and determines when, and how, to initiate contact with the partner entity, the incoming data is passed, along with the appropriate Inbound and Outbound Templates 62 to the transformation and exchange engine 65 for processing.
- the engine 65 first reads the Partner Map 64 to determine which templates 62 to use, then reads the Inbound Template to configure itself to handle the incoming data appropriately.
- the data is processed according to the blueprint found in the Inbound Template 61 , including all dynamic substitutions and transformations. If multiple Inbound Templates 63 have been specified, these are aggregated and processed accordingly. Once all the data needed by the Outbound Template 63 has been collected and transformed, it is sent to the destination(s) specified, according to the rules contained in the Outbound Template 63 .
- the TEI gateway software 60 uses a core engine 65 , written in Java or other software programming language as understood by those skilled in the art, that manages connectivity between and among various electronic data partners.
- the system 50 is designed to allow either a distributed or single-server deployment model, and can accommodate the preferences of an IT department with regard to database utilization, file system use, high-availability, error handling, and load balancing. It is database independent, file system independent, and fits into existing IT infrastructure for load balancing and messaging.
- the Scheduler is responsible for general coordination of the application. When the system 50 is started up, it loads all the Partner Maps 64 and scans them for directions on when and how to connect to the partner entities.
- This information is cached, and as each Partner requirement is examined, the Scheduler creates a process to handle the interaction.
- a Partner will require one of two conditions: open a Listener, and wait for any incoming data from that Partner, or periodically make calls into the Partner's system with data requests.
- the Scheduler does not distinguish whether the Partner wants to conduct business in real-time, or using nightly batch feeds. Nor does it distinguish whether the data is incoming or outgoing, multi-source or singlesource. It simply takes and manages the information stored in the Partner Map 54 , which is where all the instructions exist.
- the Partner Maps 64 are the documents that describe the technical requirements of each company, organization, entity, source, or application that is being connected to, including the protocol(s), connection details, and where to locate the Inbound and Outbound documents for each company.
- the Partner Map 64 contains all the essential data necessary to physically connect to, and communicate with, the outside entity. The map itself simply acts as a single point of contact for the system 50 , and is basically the “roadmap” on how to interact with that particular company or organization. Only one Partner Map 64 is required for each company 52 , agency, or organization being configured.
- the Partner Map 64 also holds information on where to find the related Inbound and Outbound Templates 62 needed to handle data interactions with the external entity.
- each partner 52 only requires exactly one unique Partner Map 64 , that is not necessarily the case for Inbound or Outbound Templates 62 , which can be reused by multiple partners (i.e., two different partners can reference the same Inbound Template 61 ).
- the Partner Map 64 acts as the first point of contact for the TEI to identify the communication protocol(s), transport layer(s), Inbound and Outbound Template 62 location(s), and all other data required to do business electronically with that particular partner 52 . Further, the Partner Map 64 contains document recognition intelligence necessary for the system to dynamically evaluate incoming data streams and select the correct Inbound Template(s) 61 to use. This capability is one of the key strengths of the software 60 ; by allowing the process of field mapping and transformation to be done in a data-driven manner, the run-time flexibility of the system 50 is significantly enhanced. Further, the flexibility achieved in allowing incoming data to dynamically select the outbound templates 63 , as well as trigger appropriate transformations, has the beneficial side effect of eliminating or greatly reducing the need for any external coding.
- each Partner 52 There are three kinds of templates used for each Partner 52 : a single Partner Map 64 (see above), one or more Inbound Templates 61 , and one or more Outbound Templates 63 . All three of these templates, for example, can be XML-based, but since they are only used internally by the TEI gateway software 60 , outside systems do not necessarily have to be XML aware or compliant.
- the Inbound and Outbound Templates 62 are where the descriptions of the EDI (or XML) mappings are held. These files are dynamically applied based upon business rules defined in the Partner Map 64 .
- Each template contains the descriptive information needed by the core system to correctly collect, process, and route the data. These documents can be XML-based, but do not require XML to be used as part of the incoming or outgoing data stream.
- the GUI tools 66 are responsible for the creation and management of the Partner Map 64 , Inbound Template 61 , and Outbound Template 62 . Although it is not necessary to use the GUI toolset to create these documents, the tools 66 have been designed to make the creation and editing of these documents straightforward and efficient.
- the Inbound Template 61 is where the actual instructions on how to handle and interpret the incoming data are stored.
- the Partner Map 64 has identified (to the TEI engine 65 ) which Inbound Template 61 to use, both that template 61 and the incoming data are passed to the TEI engine 65 to be parsed and transformed according to the rules contained in the template 61 .
- the Inbound Template 61 describes the incoming data to the TEI engine 65 , which processes the data according to rules present in the template document; including all substitutions, field rearranging, alpha and numeric transformations, and any other data massaging that may be required; including any calls to any pluggable algorithm module 68 which can do additional data manipulation as necessary.
- the Inbound Template 61 is written in DAL, the template is most often created using the GUI tools 66 provided with TEI. Since the template has the responsibility of describing potentially complex and/or recursive data sources in terms that the TEI engine 65 can understand, the GUI tools 66 provide a straightforward way to create, edit, and manage these documents. It is certainly possible, however, for the programmers or experienced IT personnel to utilize third party tools to write these XML document, however, if desired, according to the present invention. The GUI tools 66 are provided for convenience and to reduce potential errors.
- the Outbound Template 63 is essentially the exact reverse of the Inbound Template 61 , with a few additions. Since the needs to the system 50 ultimately receiving the data are paramount, the Outbound Template 63 drives additional dynamic performance, such as requiring multiple data feeds from more than one Inbound Template 61 , allowing multiple outbound types of connections.
- the External Modules 68 (Rule-Based Processing Engine, Pluggable Module) exist or can be used to facilitate advanced data transformation capabilities in cases where the robust capabilities of the system are insufficient to handle the complexities.
- the “Pluggable” Module 68 allows any external system or code to be invoked so that processing can be passed outside of the software 65 for further handling. This may be necessary in cases where proprietary or classified data needs to be handled, or in cases where complicated calculations (such as invoking tax tables or real-time currency trading) must be handled.
- the logical architecture of the TEI gateway software 60 does not require the same limits on acceptable data types or communication protocols that are most often found in middleware products. It does not require that a pre-defined template exist for a new trading partner or entity. This is because the TEI engine 65 makes no assumptions about the nature of data that is to be transmitted or received. Data is generally received into the TEI gateway software via an FTP, email, HTTP/S, Socket, or a DBMS connection using a variety of connection protocols, such as TCP/IP, IPX, POP, IMAP, or others (see FIGS. 2 - 4 )
- the software 60 can accommodate any known protocol or connection mechanism, as these are merely adaptors and act as an abstraction layer to the physical data stream. An adaptor can be created for any connection required.
- Partner information (the Partner Map 64 , Inbound Template 61 , and Outbound Template 63 ), which is collectively shown in FIG. 2 as Input Document Adaptor 69 and Output Document Adaptor 69 , is defined using a graphical user interface (see FIGS. 20 - 28 ).
- These adaptors 69 define the connectivity required to do business with a particular entity, and the adaptors 69 can be written in XML or in other protocols. Because they can describe any kind of incoming or outgoing data, the adaptors 69 are used by the TEI engine to translate how to interact with the Partner 52 , 54 on a particular transaction (Partners 52 , 54 can have as many kinds of transactions as they require).
- Data entering the TEI engine 65 is filtered using the appropriate Inbound Data Template 61 , which describes in detail how the engine 65 is to parse and transform that particular data stream.
- data requiring additional processing or evaluation that goes beyond the transformation capabilities already built into the system 50 can utilize both a rule-based transformation service (the Rule-Based Translator), as well as calling an external Pluggable Module 68 that allows incoming or outgoing data to be manipulated as needed by outside systems or external classes, functions, or RPC.
- the Pluggable Module 68 allows the capabilities of the system 50 to be extended as needed, using any language or system required to do so.
- the point of entry is through a Java wrapper class that can be configured to setup and call the external system, passing any data to and from the system 50 as needed.
- the Pluggable Module 68 extends the application capabilities to integrate with legacy applications, customized code, or any other external hooks that need to be called or utilized during the handing of inbound and outbound data.
- the module 68 allows direct connections to applications such as SAP, Oracle, i2, J. D. Edwards, PeopleSoft, iPlanet, BEA, and others. It also allows programmers to extend the systems capabilities by calling any external code, which can be written in any language.
- the TEI gateway software 60 has native transformation capabilities that are extensive. Therefore, it is unlikely that the Pluggable Module 68 will be needed for ordinary transformation and routing needs. It is more likely called when outside systems need to be invoked, such as calls to a tax processing system, getting government immigration data, or checking current stock and bond pricing.
- the TEI gateway software 60 can run on any hardware capable of running an Enterprise Java system (which is nearly every piece of computing hardware in existence). The exact configurations, memory, disc storage, and other such factors are entirely dependent upon the anticipated load, transaction volume, and size of the data being handled.
- a single Windows-based server can handle approximately 1500 transactions per minute, assuming each transaction is approximately one megabyte in size.
- the TEI gateway software 60 can be deployed on a single machine, or across an entire cluster, depending upon on the load balancing and high-availability needs of an organization. Further, the TEI gateway software 60 can run on any system 50 capable of running Java or the selected programming language, so hardware decisions can be used based upon company preference and capacity requirements.
- the Customer's 55 setup can take the following configuration:
- a Sun server 58 running the Solaris operating system can be the primary machine, where all transaction logs can reside.
- a Windows 2000 PC 56 can be used to provide load balancing and redundancy and can be dedicated to the TEI gateway software.
- the machines can be configured as follows:
- the Sun Server can run the System Service, which has the responsibility of knowing about and keeping connection with the other machines in the cluster and managing system-level services. It also can run the DataWave Controller, which manages the actual transactions going between the Customer 55 and its partners 52 , 54 .
- the Mac OSX can also run an instance of the DataWave Controller.
- the Customer's 55 existing web server can run the Scheduler Servlet, which has the responsibility of coordinating transactions by notifying any one of the DataWave Controllers that a partner's external system 52 , 54 requires interaction.
- the list of partners 52 , 54 , their connectivity requirements, inbound processing requirements, and outbound definitions also can be stored as documents on the primary Sun Server, although it is just as possible to store them in a customer's Oracle database and/or replicate them across all machines as understood by those skilled in the art. It is solely a matter of preference by the IT staff to store them in one location on the Sun server 58 .
- the Scheduler can then get the updated list of partner requirements from the Sun server 58 as needed, so that it could perform its role of notifying the DataWave Controllers that transactions need to be processed.
- a number of individuals in IT, as well as one or more Business Analysts who had been properly trained can have their desktop PC's loaded with the Client software (Java-based) that streamlined the configuration of Partners.
- the TEI gateway software 60 has a robust graphical user interface to allow IT professionals and business analysts the ability to quickly construct Partner Maps 64 and Inbound and Outbound Templates 62 .
- the GUI Tool 66 also supports general administrative functions for setup and deployment of the TEI gateway software 60 .
- Connecting a partner 52 , 54 is accomplished by defining connection parameters necessary to interact with an outside entity, regardless of the entity.
- setting up and configuring a partner 52 , 54 involves answering a number of basic questions about how data is to be sent or received, its format, transformations, substitutions, and related technical information.
- Partner setup is a simple process comprised of N steps.
- a single Partner document is created for the supplier 52 .
- This document serves as the starting point for all system-contact with the supplier 52 , and contains all the required information needed to communicate with them, regardless of advanced levels of complexity in the installation.
- the physical setup of the supplier document can be handled by the Customer 55 , and may be edited and configured by any external editor at the discretion of IT.
- the Partner Map 64 can be edited locally on a PC, or remotely on the server 58 ; according to the specifications of the IT department.
- the Partner Map 64 is given a unique name, such as “Supplier 1” and the location of where to locate and store partner-related temporary files is specified as a document path.
- each of the unique Inbound and Outbound files (one file for each unique connection) is specified, such as location, connection information, and other dynamic conditions.
- location can be completely different, the connection protocols and mechanisms different, and the dynamic nature of which Inbound or Outbound templates 62 are actually called is entirely configurable.
- the Customer 55 only has to specify the names and locations of the three Inbound Templates 61 , along with the incoming data to scan so that the correct template can be invoked. For example:
- Supplier's Home Division uses a pipe-delimited, variable-length purchase order with between 17 and 22 fields, and a timestamp header.
- the actual data, that can be checked and evaluated in order to determine which template should be called, can be complex (if the data requires it), but in the supplier's case, all that the Customer 55 needs to do is to specify that any pipe-delimited documents use Inbound Template # 3 , any comma-separated documents use Inbound template # 1 , and everything else use Template # 2 , which would be a Corporate purchase order.
- the Customer 55 is free to make both the checking and error-handing routines more complex if they choose to do so, but it is not required. It should be noted that all of the particulars of how to handle the inbound data itself is contained in the Inbound Template 61 , and the Partner Map 64 does not need to know anything about it. The Partner Map 64 simply passes control of the incoming data to the correct Inbound Template 61 .
- Transacting business using the TEI gateway software 60 is a straightforward process.
- the system 50 will handle the daily, hourly, and real-time transactions without interruption.
- an exception such as a connection site being inaccessible or an email address being unknown
- the system 50 is capable of taking a number of steps to insure that the transaction completes. If desired, IT staff can be notified that a transaction could not take place so that an operator can intervene.
- the TEI gateway software 60 allows for automated and unattended use, that its intended use is to follow the set of prescribed guidelines set down by IT staff and do it until notified otherwise. In the Customer's 55 case, once the setup is completed, no other action is required. Triggers to notify humans in boundary cases (or in the event of errors) can be setup, and the system 50 can now be left to run on its own and simply report on the transactions taking place.
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
Software, methods, and system for data connectivity and integration having a transformation and exchange gateway are provided. The transformation and exchange gateway software is stored in a memory and has a mapper to map connection data path instructions, a plurality of inbound templates each to provide inbound data processing instructions for an inbound data set having an inbound data interchange protocol, at least one outbound template to provide outbound data processing instructions for an outbound data set having an outbound data interchange protocol different from the inbound data interchange protocol, and a data transformation and exchange engine in communication with the mapper to locate a data path and determine a select one of the plurality of inbound templates to use for inbound data processing instructions, in communication with the select one of the plurality of inbound templates to process the inbound data set responsive to the inbound data processing instructions of the select one of the plurality of inbound templates and thereby transform the inbound data set to the outbound data set, and in communication with the at least one outbound template to send the outbound data set with the outbound data interchange protocol responsive to the outbound data processing instructions of the at least one outbound template.
Description
- This is a non-provisional patent application, which claims the priority of provisional patent application U.S. Serial No. 60/387,097, filed Jun. 7, 2002, and titled “System, Method and System for Electronic Data Interchange Among Multiple Data Sources” which is incorporated herein by reference in its entirety.
- 1. Field of the Invention
- The present invention is related to the fields of data interchange systems and data connectivity and integration and related software and methods.
- 2. Description of Related Art
- Communication and connectivity between disparate entities has been a significant technical and financial challenge for the past thirty years. Over the years, electronic data interchange (“EDI”) formats and standards have emerged to communicate between data interchange systems of these disparate entities or sources in an effort to bring method and order to the process. For example, disparate entities often exchange documents that conform to EDI standards in efforts to streamline communication between the entities. Entities often buy software that provides the functionality needed to translate data to an EDI format for further processing at another computer system. Even with the development of EDI protocols, however, each implementation of these systems still often requires individual and customized work to adapt to each “node” in a communications network so that the entities can communicate effectively. This custom approach, however, is expensive, time-consuming and static (requiring modification as a result of each and every change).
- Recently, various enhanced protocols and standards, such as XML and newer EDI standards, were developed to accommodate today's explosive e-business environment. Even so, there are still multiple standards, and there are nuances within almost every business entity and application so that effective data interchange between entities, sources, or applications still remains extremely expensive and time-consuming to implement.
- For example, an administrator often manually performs various tasks required to prepare a data set or file for transfer and processing at another computer system. Likewise, an administrator at the receiving computer system often performs many tasks to process the received data. The administrator, for example, can manipulate, copy, append, create, or delete various files depending on the condition or requirements of the data or documents to be transferred or received. Also, the administrator can encrypt, compress, or translate the data to another format. Further, the administrator often maps data from one format to another and performs tasks to complete the transfer or receipt of a data set or file to and from another computer system. These administrators also often create scripts or instruction sets to assist them in performing various tasks. These functions by the administrator can be time consuming and expensive as complexities related to a plurality of different entities interfacing with one company have different data formats, standards, or protocols. These complexities often require teams of analysts at a customer, for example, and a team of analysts at a supplier or distributor to try to address the data connectivity issues between the entities.
- More recently, software has emerged in attempts to address some of these problems. Applicants, however, recognized that many software companies are focusing only on the very expensive, top-tier implementations. They build software modules that “plug-in” between specific, popular commercial software applications, and have additional tools to address disparate communication environments. Although these companies can be somewhat successful in facilitating working environments, they can easily cost millions of dollars to implement, and take several months (to over a year) to complete. They require the services of trained systems integrators to manage and facilitate their installation.
- For example, many conventional approaches for addressing disparate data interchange generally set a proposed solution on top of some existing data “standard” such as a particular version of EDI such as X12, some version of XML such as ebXML, or some other proprietary data format. Applicants recognized this as being problematic in that invariably entities wanting to connect electronically to another company often have to adopt that other entity's data “standard” whether it was convenient or not. Applicants recognized that this problem is like getting 12 people into a room, all of whom speak different languages, and trying to decide how to communicate with one another.
- In view of the foregoing, embodiments of the present invention advantageously provide a system, apparatus, software, and methods for data connectivity and integration that facilitate fast and accurate transformation and exchange of data among a plurality of entities, sources, or applications. Embodiments of a system, apparatus, software and methods for data connectivity and integration of the present invention advantageously identify a communication data format or connectivity protocol and translate or transform it to its connected applications. Embodiments of an apparatus and software for data connectivity and integration of the present invention are also adaptable to predictable future formats that may come into practice, and can perform these functions in near real-time. Because embodiments of an apparatus and software for data connectivity and integration of the present invention operate as a translator, these embodiments do not rely on a limited set of pre-determined modules. Embodiments of a system, apparatus, software and methods for data connectivity and integration of the present invention further advantageously adapts easily to a very large number of entities, sources, or applications and, therefore, require little time or investment to implement. Embodiments of a system, apparatus, software, and methods for data connectivity and integration of the present invention still further advantageously were developed as a powerful, open approach to data connectivity and leverage the capabilities of existing standards, such as EDI, XML and Java, to manipulate, transform, and exchange electronic data transparently and accurately.
- Embodiments of software, methods, and system for data connectivity and integration of the present invention advantageously can target various environments including, but not limited to, the following:
- (a) One to One: From one entity or company to another (i.e., between a parent company's software and that of its subsidiary);
- (b) One to Many: From one company to multiple companies (i.e., between a wholesale distributor, and its suppliers and distributors);
- (c) Many to Many: Within group entities (i.e., a commerce exchange between suppliers, distributors, retail outlets and service providers); and
- (d) Intra-company: From one company's software application to its other application(s) (i.e., between a company's e-commerce application and its Inventory Management application).
- Embodiments of a system and software for data connectivity and integration have a transformation and exchange infrastructure (TEI) that takes incoming data (from any source using any protocol) and transforms it into a form that can be read and understood natively by the destination(s). The TEI advantageously has two parts: the exchange part is where data from various sources are sent to various destinations, and the transformation part is where the data is manipulated and transformed so that a first data protocol coming from the source is properly turned into the second data protocol by the time it reaches the destination. TEI is an infrastructure in that TEI is broader than a single application, but narrower than an operating system. TEI has the capability of effectively working in both arenas and is not limited to a single area.
- More particularly, embodiments of the present invention provides a system for data connectivity and integration that includes a first computer defining a first server. The first server having a first memory, a first data set stored therein, and a first data interchange protocol. A first area network is in communication with the server, and a plurality of remote data terminals is in communication with the first server through the first area network by the first data interchange protocol. At least one remote data terminal of the plurality of remote data terminals has data terminal memory associated therewith. A second area network is in communication with the first server and the at least one remote data terminals. A second computer remote from the first server is in communication with the second area network and defines a second server. The second server has a second memory, a second data set stored therein, and a second data interchange protocol. A third computer remote from the first server is in communication with the second area network and defines a third server. The third server also has memory, a third data set stored therein and a third data interchange protocol. Transformation and exchange gateway software is stored in the data terminal memory of one of the plurality of remote data terminals, has an output in communication with the first server through the first area network by the first data interchange protocol, and has an input in communication with the second server through the second area network by the second data interchange protocol and in communication with the third server through the second area network by the third data interchange protocol to transform each of the second and third data interchange protocols to the first data interchange protocol so that the respective second and third data sets can be effectively communicated to the first server through the transformation and exchange gateway software and be in the first data interchange protocol for effective use by the plurality of remote terminals and to transform the first data interchange protocol to the respective second and third data interchange protocols so that first data set can be communicated from the first server to the second and third servers so that the second and third servers for effective use thereby.
- Additionally, embodiments of a system of the present invention can include the transformation and exchange gateway software further having a plurality of inbound templates defining the input positioned in communication with the second and third servers to selectively define the respective second and third data interchange protocols prior to receiving inbound data and at least one outbound template defining the output positioned in communication with the plurality of remote terminals to selectively define the first data interchange protocol prior to sending outbound data. The transformation and exchange gateway software can further have a mapper to map connection data path instructions to the second and third servers, a data transforming and exchanging engine in communication with the mapper to locate a data path and determine a select one of the plurality of inbound templates to use for inbound data processing instructions, in communication with the select one of the plurality of inbound templates to process the inbound data set responsive to the inbound data processing instructions of the select one of the plurality of inbound templates and thereby transform the inbound data set to the outbound data set, and in communication with the at least one outbound template to send the outbound data set with the outbound data interchange protocol responsive to the outbound data processing instructions of the at least one outbound template, and a scheduler in communication with the mapper to schedule timing for making a connection to the second and third servers having the inbound data set and connection instructions to connect to the second and third servers having the inbound data set. The transformation and exchange gateway software can also include a set of graphical user interface (GUI) tools in communication with the data transformation and exchange engine to interface with a user. The GUI tools can include an inbound template GUI to select the inbound data processing instructions and thereby define parameters for the inbound data set and an outbound template GUI to select the outbound data processing instructions and thereby define parameters for the outbound data set.
- Embodiments of the present invention also provide transformation and exchange gateway software stored in a memory. The software includes a mapper to map connection data path instructions, a plurality of inbound templates each to provide inbound data processing instructions for an inbound data set having an inbound data interchange protocol, at least one outbound template to provide outbound data processing instructions for an outbound data set having an outbound data interchange protocol different from the inbound data interchange protocol, and a data transformation and exchange engine in communication with the mapper to locate a data path and determine a select one of the plurality of inbound templates to use for inbound data processing instructions, in communication with the select one of the plurality of inbound templates to process the inbound data set responsive to the inbound data processing instructions of the select one of the plurality of inbound templates and thereby transform the inbound data set to the outbound data set, and in communication with the at least one outbound template to send the outbound data set with the outbound data interchange protocol responsive to the outbound data processing instructions of the at least one outbound template.
- Further, embodiments of the transformation and exchange gateway software can includes a scheduler in communication with the mapper to schedule timing for making a connection to an entity having the inbound data set and connection instructions to connect to the entity having the inbound data set and a set of graphical user interface (GUI) tools in communication with the data transformation and exchange engine to interface with a user. The GUI tools can include an inbound template GUI to select the inbound data processing instructions and thereby define parameters for the inbound data set and an outbound template GUI to select the outbound data processing instructions and thereby define parameters for the outbound data set.
- The present invention also provides embodiments of method of data interchange. A method includes receiving an inbound data set having a first data interchange protocol, processing the inbound data set responsive to inbound data processing instructions to thereby transform the inbound data set into an outbound data set having a second data interchange protocol different from the first data interchange protocol, and sending the outbound data set having the second data interchange protocol.
- Implementation of embodiments of TEI gateway software of the present invention preferably uses layered architecture to allow the software to be embedded inside another application, used as an application service provider (ASP), run as a stand-alone application, or implemented as separate independent modules. The software can operate in the enterprise application integration (EAI) space because it is capable of connecting disparate systems together in a unifying manner, but is different from traditional EAI tools in that it does not require “deep” integration into CRM, ERP, or other enterprise applications in order to achieve the goal of system interoperability. For example, if the goal is to capture customer data using a CRM application, and then make sure that the customer's relevant billing information is transferred into the backend ERP system, the TEI gateway software easily handles this without requiring that the CRM and ERP systems be awkwardly united. Instead, these systems can remain separate systems without requiring that the TEI gateway software be surgically (and artificially) implanted.
- Embodiments of a system, methods, and software for data connectivity and integration of the present invention have a data transformation and exchange engine capable of interpreting templates that describe the incoming and/or outgoing data without actually carrying the data. This, for example, releases embodiments of a system, apparatus, and software from having to “know” anything about any other data standards or formats. Instead, these embodiments act as a sort of universal translator. This universal translator can receive data transmitted from essentially any source and transform it, according to the instructions found in the interpreting templates, into the format needed by or understood natively by a receiving destination entity or source. By providing embodiments of a system, methods, and software for data connectivity and integration of the present invention, for example, entities are no longer forced to fit their data into existing “standards” and enhances these entities abilities to do business with other entities for which they otherwise were not able.
- Some of the objects and advantages of the present invention having been stated, others will become apparent as the description proceeds when taken in conjunction with the accompanying drawings, in which:
- FIG. 1A is a schematic view of a system for data connectivity having transformation and exchange infrastructure (TEI) for communication between a plurality of entities according to an embodiment of the present invention;
- FIG. 1B is a schematic view of a system for data connectivity having transformation and exchange infrastructure (TEI) for communication between a plurality of entities according to another embodiment of the present invention;
- FIG. 1C is a schematic view of a system for data connectivity having transformation and exchange infrastructure (TEI) for communication between a plurality of entities according to still another embodiment of the present invention;
- FIG. 1D is a schematic view of a system for data connectivity having transformation and exchange infrastructure (TEI) for communication between a plurality of entities according to yet another embodiment of the present invention;
- FIG. 2 is a schematic view of a system for data connectivity having TEI for communication between a plurality of entities having TEI translating gateway software according to an embodiment of the present invention;
- FIG. 3 is a schematic view of TEI gateway software according to an embodiment of the present invention;
- FIG. 4 is a schematic view of TEI translating gateway software having independent and separate data interchange connectivity and layering for the TEI according to an embodiment of the present invention;
- FIG. 5 is a schematic view of a method of doing business for data connectivity according to an embodiment of the present invention;
- FIG. 6 is a schematic environmental view of a system having TEI for communicating between a plurality of entities according to an embodiment of the present invention;
- FIG. 7 is a flow diagram of a method of communicating for TEI gateway software according to an embodiment of the present invention;
- FIG. 8 is a flow diagram of a method of getting data for TEI gateway software according to an embodiment of the present invention;
- FIG. 9 is a flow diagram of a method of translating data for TEI gateway software according to an embodiment of the present invention;
- FIG. 10 is a flow diagram of a method of initializing an data stream for TEI gateway software according to an embodiment of the present invention;
- FIG. 11 is a flow diagram of a method of parsing a record for TEI gateway software according to an embodiment of the present invention;
- FIG. 12 is a flow diagram of a method of processing database data for TEI gateway software according to an embodiment of the present invention;
- FIG. 13 is a flow diagram of a method of processing database data for TEI gateway software according to an embodiment of the present invention;
- FIG. 14 is a flow diagram of a method of creating an outbound record for TEI gateway software according to an embodiment of the present invention;
- FIG. 15 is a flow diagram of a method for parsing a relation among data for TEI gateway software according to an embodiment of the present invention;
- FIG. 16 is a flow diagram of a method of sending data for TEI gateway software according to an embodiment of the present invention;
- FIG. 17 is a flow diagram of a method of processing a synchronous response according to an embodiment of the present invention;
- FIG. 18 is a flow diagram of a method of processing errors for TEI gateway software according to an embodiment of the present invention;
- FIG. 19 is a flow diagram of a method of scheduling for TEI gateway software according to an embodiment of the present invention;
- FIG. 20 is a schematic view of a graphical user interface to select a communication group for TEI gateway software according to an embodiment of the present invention;
- FIG. 21 is a schematic view of a graphical user interface to select and create inbound and outbound templates for TEI gateway software according to an embodiment of the present invention;
- FIG. 21A is a schematic view of a graphical user interface having an inbound template according to an embodiment of the present invention;
- FIG. 21B is a schematic view of a graphical user interface having an outbound template according to an embodiment of the present invention;
- FIG. 22 is a schematic view of a graphical user interface having a transfer screen to connect from a local machine to a remote server according to an embodiment of the present invention;
- FIG. 23 is a schematic view of a graphical user interface to establish communications to complete a data exchange or transaction for TEI gateway software according to an embodiment of the present invention;
- FIG. 24 is a schematic view of a graphical user interface to select communications for TEI gateway software according to an embodiment of the present invention;
- FIG. 25 is a schematic view of a graphical user interface of a schedule manager for TEI gateway software according to an embodiment of the present invention;
- FIG. 26 is a schematic view of a graphical user interface of an initial login to an account for user data connectivity management for TEI gateway software according to an embodiment of the present invention;
- FIG. 27 is a schematic view of a graphical user interface of a user data connectivity management for TEI gateway software according to an embodiment of the present invention; and
- FIG. 28 is a schematic view of a graphical user interface of account management according to an embodiment of the present invention.
- The present invention now will be described more fully hereinafter with reference to the accompanying drawings in which illustrated embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Like numbers refer to like elements throughout, and prime or double prime notation, if used, refers to like elements in alternative embodiments.
- FIGS.1A-28 illustrate embodiments of a system, software, and methods for data connectivity having transformation and exchange infrastructure (TEI) according to the present invention and provide an e-commerce integration application that facilitates fast and economical data connectivity among multiple distinct entities using virtually any data format, connectivity protocol or delivery mechanism. IT departments within companies, for example, have the responsibility of writing, buying, deploying, and maintaining the applications and related technologies that are needed to keep a company current in the Information Age. Traditionally, there has been a give and take relationship with the “buy vs. build” decision on whether to write a custom application in-house, or to buy an off-the-shelf application written by someone else. Embodiments of TEI gateway software according to the present invention, however, advantageously fits both. As shown in FIGS. 1A-1D and 6, for example, a site license in the software allows companies who desire to buy an application that is ready to be deployed and used immediately to connect suppliers, vendors, partners, and others into their existing systems and lines of communications either through the company itself (see FIG. 1 A) or through a third party remote service provider (FIG. 1B). An original equipment manufacturer (OEM) license in the software allows companies the ability to embed the software technology directly into their custom applications (see FIGS. 1C-1D), or to use whatever components of the software desired or appropriate for a “custom” solution.
- A system and software for data connectivity and integration can be effective in a wide variety of scenarios because of at least three design and architectural objectives: human control is kept at the semantic level and the rest is automated, the system and software do not require any predetermined data formats, and the architecture is layered to provide flexibility. The system, software, and methods operate in real-time and connect to internal or external data sources, regardless of the EDI or XML applications being used (this applies even if no standard is being used). The TEI gateway software has an extensible J2EE or Java platform-independent solution that allows companies with distinct systems and environments to transparently exchange electronic data. It provides businesses with seamless integration and translation capabilities, regardless of any public or proprietary EDI, XML or other data formats in use. The TEI gateway software can be placed behind company firewalls for use on internal applications in addition to being used as an application service provider (ASP) or OEM. The system and software does not require an outside company or IT engineer to “map” the data from point A to point B but can easily be handled by a business analyst, for example. As new standards develop or evolve, the new standards can be easily integrated into the software, for example, in as little as a single day.
- The TEI gateway software supports any-to-any data exchange and is an effective, fast approach to data connectivity. It does not replace EDI with XML; rather it works directly with existing systems to create a cohesive environment where applications talk to other entities such as suppliers, customers or distributors or partners, such as shown in FIG. 1, without data loss or the requirement for extensive coding. The TEI gateway software also combines XML and EDI transformation capabilities, enabling a company to extend its reach to virtually any audience. Through the use of TEI gateway software, e-commerce or similar applications can be integrated with a wide variety of supply chain trading partners with no fear of exclusion, high-expense, long implementation times, or other typical challenges. Once installed, frequent changes and additions to trading partners and their applications do not cause unnecessary gaps in service or lengthy software development tasks.
- A number of key assumptions factor into the architecture, design, and development of the TEI gateway software according to embodiments of the present invention. For example, EDI and XML are extremely well adopted, though they are not complete communication solutions as variations exist (industry leaders continue to disagree on which EDI or QML standard to adopt) including which vendor, version, style and syntax. Consequently, the first major step in developing the TEI gateway software was to acknowledge that EDI and XML do not provide a “total solution” for everyone and to limit coding to any of these standards would limit what the software could do tomorrow. Several data connectivity software products have these limits and, therefore, require constant revisions and enhancements in order to keep current with shifts in industry practice. This is not in the best interest of many entities. Consequently, the data definition has been separated from the communication layers (see FIGS.3-4) in the embodiments of software and systems of the present invention so that data can be transformed from any source using any method.
- A first design consideration was to make the TEI gateway software entirely decoupled from any existing EDI or XML “standard” by architecting it so that any such standards were held in modifiable templates, apart from the actual transformation and exchange engine, so that industry changes could be captured quickly with little coding being needed (see FIGS.2-3 and 21-22). This has the added effect of making any proprietary changes to a given standard easy to adapt, as no coding is necessary if, for example, a company needed to extend an existing standard to better handle its own data.
- Second, and a key design consideration, was that the less integration necessary to connect entities, sources, applications, or partners, the better the design. The less time, planning, and necessary resources required to efficiently integrate and connect partners, the faster the implementation and greater the return on investment (ROI) for the software users. Further, a goal was not merely to make integration easy, but to make it invisible to those being integrated. Integrating and connecting partners using software, methods, or a system for data connectivity can be done without the partner organization, entity, source, or application having to do any significant integration work at all. This capability was also a key design objective.
- Third, the architecture and platform can be J2EE or Java compliant. This satisfies dual requirements for cross-platform capability and adherence to accepted code standards. Although the software and system for data connectivity was designed to require as little coding as possible, external coding may be necessary in certain situations and a goal was for it to be straightforward and accessible for information technology (IT) personnel. Additionally, the capabilities of the
TEI gateway software 60 andsystem 50 can be extended through its pluggable algorithm module (see below), and it was a design goal to make this straightforward and intuitive for software developers. - Embodiments of the TEI gateway software of the present invention advantageously operate in both worlds of value added networks (VAN), which traditionally use EDI to handle point-to-point data transfers, and data exchanges and marts, which have arisen to compete with the VAN paradigm and which usually only use XML or one of its derivatives, such as Web Services, rather than EDI, as the document type. One reason that TEI gateway software is able to do this is because the software does not care about data format, size, connection protocol, or other arbitrary forms. Because there is a difference between being “able to handle” data in a specific format and “requiring that data be handled” in a specific format, the TEI gateway software is “able to handle” any kind of data and does not “require” that it come or go in any particular form or format. The layer architecture of the TEI gateway software handles the details of receiving data from any kind of transportation protocol (such as e-mail, FTP, HTTP, a database connection, etc.) and keeps it separate from the actual format of the data (XML, SOAP, X12, EDIFACT, etc.) so that the transformation process is kept separate from the exchange process.
- embodiments of the present invention provides a system for data connectivity and integration that includes a first computer defining a first server. The first server having a first memory, a first data set stored therein, and a first data interchange protocol. A first area network is in communication with the server, and a plurality of remote data terminals is in communication with the first server through the first area network by the first data interchange protocol. At least one remote data terminal of the plurality of remote data terminals has data terminal memory associated therewith. A second area network is in communication with the first server and the at least one remote data terminals. A second computer remote from the first server is in communication with the second area network and defines a second server. The second server has a second memory, a second data set stored therein, and a second data interchange protocol. A third computer remote from the first server is in communication with the second area network and defines a third server. The third server also has memory, a third data set stored therein and a third data interchange protocol. Transformation and exchange gateway software is stored in the data terminal memory of one of the plurality of remote data terminals, has an output in communication with the first server through the first area network by the first data interchange protocol, and has an input in communication with the second server through the second area network by the second data interchange protocol and in communication with the third server through the second area network by the third data interchange protocol to transform each of the second and third data interchange protocols to the first data interchange protocol so that the respective second and third data sets can be effectively communicated to the first server through the transformation and exchange gateway software and be in the first data interchange protocol for effective use by the plurality of remote terminals and to transform the first data interchange protocol to the respective second and third data interchange protocols so that first data set can be communicated from the first server to the second and third servers so that the second and third servers for effective use thereby.
- Additionally, embodiments of a system of the present invention can include the transformation and exchange gateway software further having a plurality of inbound templates defining the input positioned in communication with the second and third servers to selectively define the respective second and third data interchange protocols prior to receiving inbound data and at least one outbound template defining the output positioned in communication with the plurality of remote terminals to selectively define the first data interchange protocol prior to sending outbound data. The transformation and exchange gateway software can further have a mapper to map connection data path instructions to the second and third servers, a data transforming and exchanging engine in communication with the mapper to locate a data path and determine a select one of the plurality of inbound templates to use for inbound data processing instructions, in communication with the select one of the plurality of inbound templates to process the inbound data set responsive to the inbound data processing instructions of the select one of the plurality of inbound templates and thereby transform the inbound data set to the outbound data set, and in communication with the at least one outbound template to send the outbound data set with the outbound data interchange protocol responsive to the outbound data processing instructions of the at least one outbound template, and a scheduler in communication with the mapper to schedule timing for making a connection to the second and third servers having the inbound data set and connection instructions to connect to the second and third servers having the inbound data set. The transformation and exchange gateway software can also include a set of graphical user interface (GUI) tools in communication with the data transformation and exchange engine to interface with a user. The GUI tools can include an inbound template GUI to select the inbound data processing instructions and thereby define parameters for the inbound data set and an outbound template GUI to select the outbound data processing instructions and thereby define parameters for the outbound data set.
- Embodiments of the present invention also provide transformation and exchange gateway software stored in a memory. The software includes a mapper to map connection data path instructions, a plurality of inbound templates each to provide inbound data processing instructions for an inbound data set having an inbound data interchange protocol, at least one outbound template to provide outbound data processing instructions for an outbound data set having an outbound data interchange protocol different from the inbound data interchange protocol, and a data transformation and exchange engine in communication with the mapper to locate a data path and determine a select one of the plurality of inbound templates to use for inbound data processing instructions, in communication with the select one of the plurality of inbound templates to process the inbound data set responsive to the inbound data processing instructions of the select one of the plurality of inbound templates and thereby transform the inbound data set to the outbound data set, and in communication with the at least one outbound template to send the outbound data set with the outbound data interchange protocol responsive to the outbound data processing instructions of the at least one outbound template.
- Further, embodiments of the transformation and exchange gateway software can includes a scheduler in communication with the mapper to schedule timing for making a connection to an entity having the inbound data set and connection instructions to connect to the entity having the inbound data set and a set of graphical user interface (GUI) tools in communication with the data transformation and exchange engine to interface with a user. The GUI tools can include an inbound template GUI to select the inbound data processing instructions and thereby define parameters for the inbound data set and an outbound template GUI to select the outbound data processing instructions and thereby define parameters for the outbound data set.
- The present invention also provides embodiments of method of data interchange. A method includes receiving an inbound data set having a first data interchange protocol, processing the inbound data set responsive to inbound data processing instructions to thereby transform the inbound data set into an outbound data set having a second data interchange protocol different from the first data interchange protocol, and sending the outbound data set having the second data interchange protocol.
- Use of TEI gateway software.
- The following scenario is intended to indicate how the
system 50 for data connectivity is used in practice such as in the example illustrated in FIG. 1. - Typical Scenario: the
customer 55 creates products that are sold to adistributor 54, e.g., a Retail Partner, who then sells them to the general public. To make it's products, thecustomer 55 also buys products fromsuppliers 52, e.g., Factory A, Factory B, and Factory C. Prior to the existence of electronic data interchange (EDI), all transactions between thecustomer 55 and itssupplier factories 52 were via telephone, faxes and mail or couriers. Orders for more Factory A's or Factory B's required someone at thecustomer 55 to manually place an order, then wait to receive manual confirmation through the mail (or by phone). Transactions took unnecessary time, and multiple people at both ends had to get involved to complete the process. - The
customer 55 faced the following problem: they wanted to connect to adistributor 54 using an XML-based data interchange protocol for its system, butdistributor 54 had adopted EDI previously, and had not chosen to use XML. Thecustomer 55 also wanted to connect to the Factory A, Factory B, and Factory C, but there were problems. Factory A was now installing a J2EE application server and custom coding it to handle orders, including a variety of planned electronic communications that they had yet to define. Factory B was already using ebXML via the web, and insisting that anyone doing business with them had to use (their choice of) XML to do business with them. Factory B had long ago created a proprietary system that used its own socket based system, and had no budget to adapt to a new system, including any changes to their order form. - Previously the
customer 55 had to look at a number of possible solutions to solve this problem, and may be required to invest the money to write custom data connectivity code to attach each supplier to their system. Why? Too many off-the-shelf solutions required all of the customer's 55 partners to adopt some standard (thus almost never happens), or write custom code. The stopping point for thecustomer 55 can be that they are just agreeing to sign up 500 new vendors and merchants, and each would likely require significant, custom setup. Thecustomer 55 simply does not have the programming staff (or budget) for such a project. - The data connectivity to the
distributor 54 is solved, because theTEI gateway software 60 can handle any form of EDI or other data interchange protocol. The connectivity to Factory B is also resolved, because theTEI gateway software 60 can be adaptable to any kind of data stream that Factory B's J2 EE application is likely to use. Factory A is gracefully handled, because the TEI gateway software also handles any form of XML and Factory C's proprietary socket connection is not an issue, neither is their proprietary cryptic order form, because the TEI gateway software does not require any particular data format, only that someone indicate how it should be translated into the workflow. Thecustomer 55 also can select theTEI gateway software 60 for this application because it can accommodate the 500 new vendors and merchants thecustomer 55 wants to bring into their trading application. - The
TEI gateway software 60 is platform independent (any 32EE compliant platform), connects using FTP, HTTP/S, email, socket, files, custom protocols and/or interfaces for support, and has drag drop user interface for managing data, systems integration and partners. TheTEI gateway software 60 has extensible capabilities viapluggable algorithm module 68 and can be directly integrated with most Enterprise Application Servers (Weblogic, WebSphere, IPlant, Borland, Jboss, etc.). The system for data connectivity, for example, can have 128bit security, dynamic document and format recognition, and automatic data merge, translation, and split logic for Store and forward capabilities. The TEI gateway software can provide support for new HIPPA standards and had reporting mechanisms for performance and usage, For example, the supported platforms can be Linux, Solaris, HP Unix, Windows NT/2000 Oracle, Sybase, DB2, and MySQL. -
TEI gateway software 60 is used to connect multiple sources and providers of electronic data together into a system that acts as if no natural barriers exist between them. Most systems have little in common with each other and do not easily work together at all, let alone in a seamless and integrated fashion. TheTEI gateway software 60 advantageously makes such electronic connectivity possible in a realistic, effective, straightforward, and rapid manner. TheTEI gateway software 60 is focused to efficiently connect, transmit, receive, and transform, electronic data between diverse trading partners, suppliers, information brokers, or other sources of electronic data. - The
TEI gateway software 60 or infrastructure has the following five main elements: - (1) Data Transformation and Exchange Engine65 (the core software itself);
- (2) Partner Maps64 (documents that describe remote partner, entity, source, or application configurations);
- (3) Inbound and Outbound Templates62 (describe data transformations);
- (4) GUI Tools66 (for partner and system administration); and
- (5)
External Modules 68. - The transformation and
exchange engine 65 is the core of the application. ThePartner Map 64 andInbound Template 61 define rules, and the transformation andexchange engine 65 can be considered the implementation resource for those rules. When a Scheduler [see below] reads thePartner Map 64 and determines when, and how, to initiate contact with the partner entity, the incoming data is passed, along with the appropriate Inbound andOutbound Templates 62 to the transformation andexchange engine 65 for processing. Theengine 65 first reads thePartner Map 64 to determine whichtemplates 62 to use, then reads the Inbound Template to configure itself to handle the incoming data appropriately. The data is processed according to the blueprint found in theInbound Template 61, including all dynamic substitutions and transformations. If multipleInbound Templates 63 have been specified, these are aggregated and processed accordingly. Once all the data needed by theOutbound Template 63 has been collected and transformed, it is sent to the destination(s) specified, according to the rules contained in theOutbound Template 63. - The
TEI gateway software 60 uses acore engine 65, written in Java or other software programming language as understood by those skilled in the art, that manages connectivity between and among various electronic data partners. Thesystem 50 is designed to allow either a distributed or single-server deployment model, and can accommodate the preferences of an IT department with regard to database utilization, file system use, high-availability, error handling, and load balancing. It is database independent, file system independent, and fits into existing IT infrastructure for load balancing and messaging. The Scheduler is responsible for general coordination of the application. When thesystem 50 is started up, it loads all thePartner Maps 64 and scans them for directions on when and how to connect to the partner entities. This information is cached, and as each Partner requirement is examined, the Scheduler creates a process to handle the interaction. Typically, a Partner will require one of two conditions: open a Listener, and wait for any incoming data from that Partner, or periodically make calls into the Partner's system with data requests. The Scheduler does not distinguish whether the Partner wants to conduct business in real-time, or using nightly batch feeds. Nor does it distinguish whether the data is incoming or outgoing, multi-source or singlesource. It simply takes and manages the information stored in thePartner Map 54, which is where all the instructions exist. - The
Partner Maps 64 are the documents that describe the technical requirements of each company, organization, entity, source, or application that is being connected to, including the protocol(s), connection details, and where to locate the Inbound and Outbound documents for each company. ThePartner Map 64 contains all the essential data necessary to physically connect to, and communicate with, the outside entity. The map itself simply acts as a single point of contact for thesystem 50, and is basically the “roadmap” on how to interact with that particular company or organization. Only onePartner Map 64 is required for eachcompany 52, agency, or organization being configured. ThePartner Map 64 also holds information on where to find the related Inbound andOutbound Templates 62 needed to handle data interactions with the external entity. Although eachpartner 52 only requires exactly oneunique Partner Map 64, that is not necessarily the case for Inbound orOutbound Templates 62, which can be reused by multiple partners (i.e., two different partners can reference the same Inbound Template 61). - The
Partner Map 64 acts as the first point of contact for the TEI to identify the communication protocol(s), transport layer(s), Inbound andOutbound Template 62 location(s), and all other data required to do business electronically with thatparticular partner 52. Further, thePartner Map 64 contains document recognition intelligence necessary for the system to dynamically evaluate incoming data streams and select the correct Inbound Template(s) 61 to use. This capability is one of the key strengths of thesoftware 60; by allowing the process of field mapping and transformation to be done in a data-driven manner, the run-time flexibility of thesystem 50 is significantly enhanced. Further, the flexibility achieved in allowing incoming data to dynamically select theoutbound templates 63, as well as trigger appropriate transformations, has the beneficial side effect of eliminating or greatly reducing the need for any external coding. - There are three kinds of templates used for each Partner52: a single Partner Map 64 (see above), one or more
Inbound Templates 61, and one or moreOutbound Templates 63. All three of these templates, for example, can be XML-based, but since they are only used internally by theTEI gateway software 60, outside systems do not necessarily have to be XML aware or compliant. The Inbound and Outbound Templates 62are where the descriptions of the EDI (or XML) mappings are held. These files are dynamically applied based upon business rules defined in thePartner Map 64. Each template contains the descriptive information needed by the core system to correctly collect, process, and route the data. These documents can be XML-based, but do not require XML to be used as part of the incoming or outgoing data stream. - The
GUI tools 66 are responsible for the creation and management of thePartner Map 64,Inbound Template 61, andOutbound Template 62. Although it is not necessary to use the GUI toolset to create these documents, thetools 66 have been designed to make the creation and editing of these documents straightforward and efficient. - The
Inbound Template 61 is where the actual instructions on how to handle and interpret the incoming data are stored. When thePartner Map 64 has identified (to the TEI engine 65) whichInbound Template 61 to use, both thattemplate 61 and the incoming data are passed to theTEI engine 65 to be parsed and transformed according to the rules contained in thetemplate 61. TheInbound Template 61 describes the incoming data to theTEI engine 65, which processes the data according to rules present in the template document; including all substitutions, field rearranging, alpha and numeric transformations, and any other data massaging that may be required; including any calls to anypluggable algorithm module 68 which can do additional data manipulation as necessary. Although theInbound Template 61 is written in DAL, the template is most often created using theGUI tools 66 provided with TEI. Since the template has the responsibility of describing potentially complex and/or recursive data sources in terms that theTEI engine 65 can understand, theGUI tools 66 provide a straightforward way to create, edit, and manage these documents. It is certainly possible, however, for the programmers or experienced IT personnel to utilize third party tools to write these XML document, however, if desired, according to the present invention. TheGUI tools 66 are provided for convenience and to reduce potential errors. - The
Outbound Template 63 is essentially the exact reverse of theInbound Template 61, with a few additions. Since the needs to thesystem 50 ultimately receiving the data are paramount, theOutbound Template 63 drives additional dynamic performance, such as requiring multiple data feeds from more than oneInbound Template 61, allowing multiple outbound types of connections. - The External Modules68 (Rule-Based Processing Engine, Pluggable Module) exist or can be used to facilitate advanced data transformation capabilities in cases where the robust capabilities of the system are insufficient to handle the complexities. The “Pluggable”
Module 68, for example, allows any external system or code to be invoked so that processing can be passed outside of thesoftware 65 for further handling. This may be necessary in cases where proprietary or classified data needs to be handled, or in cases where complicated calculations (such as invoking tax tables or real-time currency trading) must be handled. - The logical architecture of the
TEI gateway software 60 does not require the same limits on acceptable data types or communication protocols that are most often found in middleware products. It does not require that a pre-defined template exist for a new trading partner or entity. This is because theTEI engine 65 makes no assumptions about the nature of data that is to be transmitted or received. Data is generally received into the TEI gateway software via an FTP, email, HTTP/S, Socket, or a DBMS connection using a variety of connection protocols, such as TCP/IP, IPX, POP, IMAP, or others (see FIGS. 2-4) Thesoftware 60 can accommodate any known protocol or connection mechanism, as these are merely adaptors and act as an abstraction layer to the physical data stream. An adaptor can be created for any connection required. - Partner information (the
Partner Map 64,Inbound Template 61, and Outbound Template 63), which is collectively shown in FIG. 2 asInput Document Adaptor 69 andOutput Document Adaptor 69, is defined using a graphical user interface (see FIGS. 20-28). Theseadaptors 69 define the connectivity required to do business with a particular entity, and theadaptors 69 can be written in XML or in other protocols. Because they can describe any kind of incoming or outgoing data, theadaptors 69 are used by the TEI engine to translate how to interact with thePartner Partners - Data entering the
TEI engine 65 is filtered using the appropriateInbound Data Template 61, which describes in detail how theengine 65 is to parse and transform that particular data stream. In addition, data requiring additional processing or evaluation that goes beyond the transformation capabilities already built into thesystem 50, can utilize both a rule-based transformation service (the Rule-Based Translator), as well as calling anexternal Pluggable Module 68 that allows incoming or outgoing data to be manipulated as needed by outside systems or external classes, functions, or RPC. ThePluggable Module 68 allows the capabilities of thesystem 50 to be extended as needed, using any language or system required to do so. The point of entry is through a Java wrapper class that can be configured to setup and call the external system, passing any data to and from thesystem 50 as needed. ThePluggable Module 68 extends the application capabilities to integrate with legacy applications, customized code, or any other external hooks that need to be called or utilized during the handing of inbound and outbound data. Themodule 68 allows direct connections to applications such as SAP, Oracle, i2, J. D. Edwards, PeopleSoft, iPlanet, BEA, and others. It also allows programmers to extend the systems capabilities by calling any external code, which can be written in any language. - The
TEI gateway software 60 has native transformation capabilities that are extensive. Therefore, it is unlikely that thePluggable Module 68 will be needed for ordinary transformation and routing needs. It is more likely called when outside systems need to be invoked, such as calls to a tax processing system, getting government immigration data, or checking current stock and bond pricing. TheTEI gateway software 60, for example, can run on any hardware capable of running an Enterprise Java system (which is nearly every piece of computing hardware in existence). The exact configurations, memory, disc storage, and other such factors are entirely dependent upon the anticipated load, transaction volume, and size of the data being handled. A single Windows-based server can handle approximately 1500 transactions per minute, assuming each transaction is approximately one megabyte in size. TheTEI gateway software 60 can be deployed on a single machine, or across an entire cluster, depending upon on the load balancing and high-availability needs of an organization. Further, theTEI gateway software 60 can run on anysystem 50 capable of running Java or the selected programming language, so hardware decisions can be used based upon company preference and capacity requirements. - In the example in FIG. 1, the Customer's55 setup can take the following configuration:
- (a) A
Sun server 58 running the Solaris operating system can be the primary machine, where all transaction logs can reside. - (b) A Windows 2000
PC 56 can be used to provide load balancing and redundancy and can be dedicated to the TEI gateway software. - (c) A single Macintosh running OSX can also be setup to provide additional load balancing and fault-tolerance, even though it can sometimes be used for other purposes at the same time.
- The machines can be configured as follows:
- (a) The Sun Server can run the System Service, which has the responsibility of knowing about and keeping connection with the other machines in the cluster and managing system-level services. It also can run the DataWave Controller, which manages the actual transactions going between the
Customer 55 and itspartners - (b) The Windows 2000 machine would run another instance of the DataWave Controller.
- (c) The Mac OSX can also run an instance of the DataWave Controller.
- (d) The Customer's55 existing web server can run the Scheduler Servlet, which has the responsibility of coordinating transactions by notifying any one of the DataWave Controllers that a partner's
external system - The list of
partners Sun server 58. The Scheduler can then get the updated list of partner requirements from theSun server 58 as needed, so that it could perform its role of notifying the DataWave Controllers that transactions need to be processed. In addition to the above configuration, a number of individuals in IT, as well as one or more Business Analysts who had been properly trained can have their desktop PC's loaded with the Client software (Java-based) that streamlined the configuration of Partners. - The
TEI gateway software 60 has a robust graphical user interface to allow IT professionals and business analysts the ability to quickly constructPartner Maps 64 and Inbound andOutbound Templates 62. TheGUI Tool 66 also supports general administrative functions for setup and deployment of theTEI gateway software 60. - Connecting a
partner partner - Looking again at the connections between the
Customer 55 and itspartners - (a) How is the
Customer 55 physically going to communicate to eachpartner - (b) How many kinds of transactions will take place between the
Customer 55 and eachpartner - (c) For each kind of transaction, how many variations of inbound or outbound data exist? [inbound and outbound data refers to each discreet chunk of data that is either coming into, or going out of, the company]
- (d) In the case of Customer's55 desire to connect to a
supplier 52, the logical partner setup would appears as follows: - (e) The
Ccustomer 55 will physically communicate withSupplier 52 over a TCP/IP connection via a standard Internet connection. Once the physical connection is made to Supplier's IP address, the supplier requires that theCustomer 55 connect and authenticate to port 2741, which is the supplier's official “outside vendor authentication port.” - (f) The
Customer 55 will be sending two outbound kinds of electronic data: current price quotes on existing inventory, and invoices for purchased goods. - (g) The
Customer 55 will be receiving one kind of inbound data: purchase orders. - Once this is accomplished, Partner setup is a simple process comprised of N steps. A single Partner document is created for the
supplier 52. This document serves as the starting point for all system-contact with thesupplier 52, and contains all the required information needed to communicate with them, regardless of advanced levels of complexity in the installation. The physical setup of the supplier document can be handled by theCustomer 55, and may be edited and configured by any external editor at the discretion of IT. Additionally, thePartner Map 64 can be edited locally on a PC, or remotely on theserver 58; according to the specifications of the IT department. ThePartner Map 64 is given a unique name, such as “Supplier 1” and the location of where to locate and store partner-related temporary files is specified as a document path. Then each of the unique Inbound and Outbound files (one file for each unique connection) is specified, such as location, connection information, and other dynamic conditions. The location of each file can be completely different, the connection protocols and mechanisms different, and the dynamic nature of which Inbound orOutbound templates 62 are actually called is entirely configurable. - In the case of Customer's55 Inbound connection, the
supplier 52, for example, can complicate the issue by actually having three separate purchasing divisions that generate their own purchase orders; consequently, theCustomer 55 has to be able to identify and handle all three flavors seamlessly. This document recognition ability is accomplished in the conditional section, which can use a wide variety of expressions, including POSIX Regular Expressions, to dynamically evaluate incoming data and direct it to the appropriate template for processing. - To do this, the
Customer 55 only has to specify the names and locations of the threeInbound Templates 61, along with the incoming data to scan so that the correct template can be invoked. For example: - (a) Supplier's Automotive Division uses a comma separated purchase order which has 23 fields with a separate header section denoting date, time, issuer, and reply code.
- (b) Supplier's Corporate Purchasing Department uses a fixed-length field document with 47 fields and no header section at all.
- (c) Supplier's Home Division uses a pipe-delimited, variable-length purchase order with between 17 and 22 fields, and a timestamp header.
- For the
Customer 55 to accommodate this in the Partner setup, all that is needed is to specify which incoming data will be evaluated to determine the correctInbound Template 61 to use. Since the dynamic section of thePartner Map 64 allows differentInbound Templates 61 to be specified based on the dynamic data that was actually received,Customer 55 can specify thatInbound Template # 1 be used for Supplier's Automotive Division,Inbound Template # 2 for Supplier's Corporate Purchasing Department, and template #3 for Supplier's Home Division. - The actual data, that can be checked and evaluated in order to determine which template should be called, can be complex (if the data requires it), but in the supplier's case, all that the
Customer 55 needs to do is to specify that any pipe-delimited documents use Inbound Template #3, any comma-separated documents useInbound template # 1, and everything else useTemplate # 2, which would be a Corporate purchase order. TheCustomer 55 is free to make both the checking and error-handing routines more complex if they choose to do so, but it is not required. It should be noted that all of the particulars of how to handle the inbound data itself is contained in theInbound Template 61, and thePartner Map 64 does not need to know anything about it. ThePartner Map 64 simply passes control of the incoming data to the correctInbound Template 61. - Once the
Customer 55 has identified whichInbound Templates 61 to use for which kind of incoming data, it then can do the same thing for the outgoing data to thesupplier 52. TheCustomer 55 only needs to create references to which Outbound Templates to use for the price quotes and invoices. The fact that price quotes needs to be sent via FTP and that invoices are emailed to a special accounting email address does not complicate the setup, because theTEI gateway software 60 handles these issues gracefully. - The connections to the
suppliers 52, e.g., Factory B, Factory A, and Factory C can be handled in the same manner, using the same approach. It makes little difference that each of these have completely different formats and modes of connectivity, because thesystem 50 is capable of handling each in a straightforward manner. - Transacting business using the
TEI gateway software 60 is a straightforward process. Once aPartner system 50 will handle the daily, hourly, and real-time transactions without interruption. In the event that an exception occurs, such as a connection site being inaccessible or an email address being unknown, thesystem 50 is capable of taking a number of steps to insure that the transaction completes. If desired, IT staff can be notified that a transaction could not take place so that an operator can intervene. - The
TEI gateway software 60 allows for automated and unattended use, that its intended use is to follow the set of prescribed guidelines set down by IT staff and do it until notified otherwise. In the Customer's 55 case, once the setup is completed, no other action is required. Triggers to notify humans in boundary cases (or in the event of errors) can be setup, and thesystem 50 can now be left to run on its own and simply report on the transactions taking place. - This application is related to co-pending provisional patent application U.S. Serial No. 60/387,097, filed Jun. 7, 2002, and titled “System, Method and System for Electronic Data Interchange Among Multiple Data Sources” which is incorporated herein by reference in its entirety.
- In the drawings and specification, there have been disclosed typical embodiments of the invention and, although specific terms are employed, they are used in a generic and descriptive sense only and not for the purpose of limitation, the scope of the invention being set forth in the following claims.
Claims (10)
1. A system for data connectivity and integration, the system comprising:
a first computer defining a first server, the first server having a first memory, a first data set stored therein, and a first data interchange protocol;
a first area network in communication with the server;
a plurality of remote data terminals in communication with the first server through the first area network by the first data interchange protocol, at least one remote data terminal of the plurality of remote data terminals having data terminal memory associated therewith;
a second area network in communication with the first server and the at least one remote data terminals;
a second computer remote from the first server, in communication with the second area network, and defining a second server, the second server having a second memory, a second data set stored therein, and a second data interchange protocol;
a third computer remote from the first server, in communication with the second area network, and defining a third server, the third server having memory, a third data set stored therein and a third data interchange protocol; and
transformation and exchange gateway software stored in data terminal memory of one of the plurality of remote data terminals, having an output in communication with the first server through the first area network by the first data interchange protocol and having an input in communication with the second server through the second area network by the second data interchange protocol and in communication with the third server through the second area network by the third data interchange protocol to transform each of the second and third data interchange protocols to the first data interchange protocol so that the respective second and third data sets can be effectively communicated to the first server through the transformation and exchange gateway software and be in the first data interchange protocol for effective use by the plurality of remote terminals and to transform the first data interchange protocol to the respective second and third data interchange protocols so that first data set can be communicated from the first server to the second and third servers so that the second and third servers for effective use thereby.
2. A system as defined in claim 1 , wherein the transformation and exchange gateway software further has a plurality of inbound templates defining the input positioned in communication with the second and third servers to selectively define the respective second and third data interchange protocols prior to receiving inbound data and at least one outbound template defining the output positioned in communication with the plurality of remote terminals to selectively define the first data interchange protocol prior to sending outbound data.
3. A system as defined in claim 2 , wherein the transformation and exchange gateway software further includes a mapper to map connection data path instructions to the second and third servers.
4. A system as defined in claim 3 , wherein the transformation and exchange gateway software includes a data transforming and exchanging engine in communication with the mapper to locate a data path and determine a select one of the plurality of inbound templates to use for inbound data processing instructions, in communication with the select one of the plurality of inbound templates to process the inbound data set responsive to the inbound data processing instructions of the select one of the plurality of inbound templates and thereby transform the inbound data set to the outbound data set, and in communication with the at least one outbound template to send the outbound data set with the outbound data interchange protocol responsive to the outbound data processing instructions of the at least one outbound template.
5. A system as defined in claim 4 , wherein the transformation and exchange gateway software further comprises a scheduler in communication with the mapper to schedule timing for making a connection to the second and third servers having the inbound data set and connection instructions to connect to the second and third servers having the inbound data set.
6. A system as defined in claim 4 , wherein the transformation and exchange gateway software further comprises a set of graphical user interface (GUI) tools in communication with the data transformation and exchange engine to interface with a user, the GUI tools including an inbound template GUI to select the inbound data processing instructions and thereby define parameters for the inbound data set and an outbound template GUI to select the outbound data processing instructions and thereby define parameters for the outbound data set.
7. Transformation and exchange gateway software stored in a first memory, the software comprising:
a mapper to map connection data path instructions;
a plurality of inbound templates each to provide inbound data processing instructions for an inbound data set having an inbound data interchange protocol;
at least one outbound template to provide outbound data processing instructions for an outbound data set having an outbound data interchange protocol different from the inbound data interchange protocol; and
a data transformation and exchange engine in communication with the mapper to locate a data path and determine a select one of the plurality of inbound templates to use for inbound data processing instructions, in communication with the select one of the plurality of inbound templates to process the inbound data set responsive to the inbound data processing instructions of the select one of the plurality of inbound templates and thereby transform the inbound data set to the outbound data set, and in communication with the at least one outbound template to send the outbound data set with the outbound data interchange protocol responsive to the outbound data processing instructions of the at least one outbound template.
8. Software as defined in claim 7 , further comprising a scheduler in communication with the mapper to schedule timing for making a connection to an entity having the inbound data set and connection instructions to connect to the entity having the inbound data set.
9. Software as defined in claim 7 , further comprising a set of graphical user interface (GUI) tools in communication with the data transformation and exchange engine to interface with a user, the GUI tools including an inbound template GUI to select the inbound data processing instructions and thereby define parameters for the inbound data set and an outbound template GUI to select the outbound data processing instructions and thereby define parameters for the outbound data set.
10. A method of data interchanges, the method comprising:
receiving an inbound data set having a first data interchange protocol;
processing the inbound data set responsive to inbound data processing instructions to thereby transform the inbound data set into an outbound data set having a second data interchange protocol different from the first data interchange protocol; and
sending the outbound data set having the second data interchange protocol.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/456,293 US20040025167A1 (en) | 2002-06-07 | 2003-06-06 | Software, method and system for data connectivity and integration having transformation and exchange infrastructure |
PCT/US2003/018245 WO2003104982A2 (en) | 2002-06-07 | 2003-06-09 | Software, method and system for data connectivity and integration having transformation and exchange infrastructure |
AU2003237527A AU2003237527A1 (en) | 2002-06-07 | 2003-06-09 | Software, method and system for data connectivity and integration having transformation and exchange infrastructure |
US10/457,832 US7325027B2 (en) | 2002-06-07 | 2003-06-09 | Software, method and system for data connectivity and integration having transformation and exchange infrastructure |
US11/947,804 US7908398B2 (en) | 2002-06-07 | 2007-11-30 | Software, method and system for data connectivity and integration having transformation and exchange infrastructure |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US38709702P | 2002-06-07 | 2002-06-07 | |
US10/456,293 US20040025167A1 (en) | 2002-06-07 | 2003-06-06 | Software, method and system for data connectivity and integration having transformation and exchange infrastructure |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/457,832 Continuation US7325027B2 (en) | 2002-06-07 | 2003-06-09 | Software, method and system for data connectivity and integration having transformation and exchange infrastructure |
US10/457,832 Continuation-In-Part US7325027B2 (en) | 2002-06-07 | 2003-06-09 | Software, method and system for data connectivity and integration having transformation and exchange infrastructure |
Publications (1)
Publication Number | Publication Date |
---|---|
US20040025167A1 true US20040025167A1 (en) | 2004-02-05 |
Family
ID=29739928
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/456,293 Abandoned US20040025167A1 (en) | 2002-06-07 | 2003-06-06 | Software, method and system for data connectivity and integration having transformation and exchange infrastructure |
US10/457,832 Active 2025-05-30 US7325027B2 (en) | 2002-06-07 | 2003-06-09 | Software, method and system for data connectivity and integration having transformation and exchange infrastructure |
US11/947,804 Expired - Lifetime US7908398B2 (en) | 2002-06-07 | 2007-11-30 | Software, method and system for data connectivity and integration having transformation and exchange infrastructure |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/457,832 Active 2025-05-30 US7325027B2 (en) | 2002-06-07 | 2003-06-09 | Software, method and system for data connectivity and integration having transformation and exchange infrastructure |
US11/947,804 Expired - Lifetime US7908398B2 (en) | 2002-06-07 | 2007-11-30 | Software, method and system for data connectivity and integration having transformation and exchange infrastructure |
Country Status (3)
Country | Link |
---|---|
US (3) | US20040025167A1 (en) |
AU (1) | AU2003237527A1 (en) |
WO (1) | WO2003104982A2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1866780A2 (en) * | 2005-03-30 | 2007-12-19 | Welch Allyn, Inc. | Communication of information between a plurality of network elements |
US20080294645A1 (en) * | 2007-05-22 | 2008-11-27 | Sybase, Inc. | System, method and computer program product for EDI-to-EDI translations |
US20140316831A1 (en) * | 2002-08-15 | 2014-10-23 | Open Invention Network, Llc | Dynamic interface between bpss conversation management and local business management |
US10802804B2 (en) * | 2017-02-08 | 2020-10-13 | One Connect Smart Technology Co., Ltd. | File generation method, device, server, and storage medium |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7565326B2 (en) * | 2000-05-25 | 2009-07-21 | Randle William M | Dialect independent multi-dimensional integrator using a normalized language platform and secure controlled access |
US7565438B1 (en) | 2004-03-30 | 2009-07-21 | Sprint Communications Company L.P. | Digital rights management integrated service solution |
US8095871B2 (en) * | 2004-05-06 | 2012-01-10 | Siemens Corporation | System and method for GUI supported specifications for automating form field extraction with database mapping |
US20050278347A1 (en) * | 2004-05-26 | 2005-12-15 | Wolf Werner G | Method and system for extendable data conversion architecture |
US20060015450A1 (en) * | 2004-07-13 | 2006-01-19 | Wells Fargo Bank, N.A. | Financial services network and associated processes |
US7730027B2 (en) * | 2004-12-16 | 2010-06-01 | Sap Ag | Graphical transformation of data |
US20060271939A1 (en) * | 2005-05-11 | 2006-11-30 | Eric Joris | Enterprise-to-enterprise integration |
US7941561B2 (en) * | 2005-07-15 | 2011-05-10 | Elias Assad | System and method for communications over a computer network |
US7593911B1 (en) * | 2005-10-12 | 2009-09-22 | At&T Corp. | System and method for applying rule sets and rule interactions |
US7654445B2 (en) * | 2005-12-14 | 2010-02-02 | Christopher Michael John | System and method for revenue and expense realignment |
US8200844B2 (en) * | 2006-04-17 | 2012-06-12 | Infoprint Solutions Company, Llc | Using a resource context to access resources and source data for a transform |
US20080262940A1 (en) * | 2007-03-29 | 2008-10-23 | Tsc Group | Purchase Order and Invoice Aggregator System for Sales Environment |
US7908375B2 (en) * | 2007-07-11 | 2011-03-15 | Microsoft Corporation | Transparently externalizing plug-in computation to cluster |
US8296461B2 (en) * | 2007-08-07 | 2012-10-23 | Object Innovation Inc. | Data transformation and exchange |
US20100146050A1 (en) * | 2008-12-05 | 2010-06-10 | Amalto Technologies Corp. | Distributed document transformation for electronic business to business transactions |
US20100146281A1 (en) * | 2008-12-05 | 2010-06-10 | Amalto Technologies Corp. | Security and certificate management for electronic business to business transactions |
US20110202384A1 (en) * | 2010-02-17 | 2011-08-18 | Rabstejnek Wayne S | Enterprise Rendering Platform |
US8869170B2 (en) * | 2010-11-30 | 2014-10-21 | Sap Se | System and method for a process broker and backend adapter based process integration |
US8775545B1 (en) | 2011-12-30 | 2014-07-08 | hop To Inc. | Image hosting for cross-platform display over a communication network |
US9367931B1 (en) | 2011-12-30 | 2016-06-14 | hopTo Inc. | Motion vectors for cross-platform display |
US9218107B1 (en) | 2011-12-30 | 2015-12-22 | hopTo Inc. | Cloud-based text management for cross-platform display |
US8856262B1 (en) | 2011-12-30 | 2014-10-07 | hopTo Inc. | Cloud-based image hosting |
US9223534B1 (en) | 2011-12-30 | 2015-12-29 | hopTo Inc. | Client side detection of motion vectors for cross-platform display |
US9454617B1 (en) | 2011-12-30 | 2016-09-27 | hopTo Inc. | Client rendering |
US9124562B1 (en) | 2012-05-18 | 2015-09-01 | hopTo Inc. | Cloud-based decomposition and recomposition for cross-platform display |
US8990363B1 (en) | 2012-05-18 | 2015-03-24 | hopTo, Inc. | Decomposition and recomposition for cross-platform display |
US9106612B1 (en) | 2012-05-18 | 2015-08-11 | hopTo Inc. | Decomposition and recomposition for cross-platform display |
US8763054B1 (en) | 2012-11-02 | 2014-06-24 | hopTo Inc. | Cross-platform video display |
US8776152B1 (en) | 2012-11-02 | 2014-07-08 | hopTo Inc. | Cloud-based cross-platform video display |
US9946694B2 (en) * | 2012-11-13 | 2018-04-17 | Dicentral Corporation | Methods, systems and apparatuses for scalable electronic data interchange communications with smart web forms |
US9430134B1 (en) | 2013-03-15 | 2016-08-30 | hopTo Inc. | Using split windows for cross-platform document views |
US9292157B1 (en) | 2013-03-15 | 2016-03-22 | hopTo Inc. | Cloud-based usage of split windows for cross-platform document views |
EP4221076A3 (en) | 2013-10-03 | 2023-10-04 | Musarubra US LLC | Dynamic adaptive defense for cyber-security threats |
US9843307B2 (en) * | 2014-05-12 | 2017-12-12 | Altair Semiconductor Ltd. | Passive automatic antenna tuning based on received-signal analysis |
EP3311301B1 (en) * | 2015-06-22 | 2021-04-21 | FireEye, Inc. | Graphical user interface environment for creating threat response courses of action for computer networks |
US10497049B2 (en) | 2016-03-05 | 2019-12-03 | Home Depot Product Authority, Llc | Optimistic product order reservation system and method |
US10620923B2 (en) * | 2016-08-22 | 2020-04-14 | Oracle International Corporation | System and method for dynamic, incremental recommendations within real-time visual simulation |
DE102020104405A1 (en) * | 2020-02-19 | 2021-08-19 | HELLA GmbH & Co. KGaA | Device and method for connecting a service-oriented communication with a signal-based communication |
US20230153875A1 (en) * | 2021-11-17 | 2023-05-18 | Kavin Khadgi | Payment method and system |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030037100A1 (en) * | 2000-07-17 | 2003-02-20 | Modelwire, Inc. | Streamlined data distribution system for commercial applications |
US20030061385A1 (en) * | 2001-05-31 | 2003-03-27 | Lucas Gonze | Computer network interpretation and translation format for simple and complex machines |
US6912522B2 (en) * | 2000-09-11 | 2005-06-28 | Ablesoft, Inc. | System, method and computer program product for optimization and acceleration of data transport and processing |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6240186B1 (en) | 1997-03-31 | 2001-05-29 | Sun Microsystems, Inc. | Simultaneous bi-directional translation and sending of EDI service order data |
EP1013024A4 (en) * | 1997-06-04 | 2005-08-03 | Moore Nancy Barclay | System and method for processing transaction messages |
US6516353B1 (en) | 1999-04-02 | 2003-02-04 | Frederick R. Richards | System and method for interactive EDI transactions |
US6789252B1 (en) * | 1999-04-15 | 2004-09-07 | Miles D. Burke | Building business objects and business software applications using dynamic object definitions of ingrediential objects |
US6772413B2 (en) * | 1999-12-21 | 2004-08-03 | Datapower Technology, Inc. | Method and apparatus of data exchange using runtime code generator and translator |
US7634726B2 (en) * | 2001-01-05 | 2009-12-15 | International Business Machines Corporation | Technique for automated e-business services |
-
2003
- 2003-06-06 US US10/456,293 patent/US20040025167A1/en not_active Abandoned
- 2003-06-09 AU AU2003237527A patent/AU2003237527A1/en not_active Abandoned
- 2003-06-09 US US10/457,832 patent/US7325027B2/en active Active
- 2003-06-09 WO PCT/US2003/018245 patent/WO2003104982A2/en not_active Application Discontinuation
-
2007
- 2007-11-30 US US11/947,804 patent/US7908398B2/en not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030037100A1 (en) * | 2000-07-17 | 2003-02-20 | Modelwire, Inc. | Streamlined data distribution system for commercial applications |
US6912522B2 (en) * | 2000-09-11 | 2005-06-28 | Ablesoft, Inc. | System, method and computer program product for optimization and acceleration of data transport and processing |
US20030061385A1 (en) * | 2001-05-31 | 2003-03-27 | Lucas Gonze | Computer network interpretation and translation format for simple and complex machines |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140316831A1 (en) * | 2002-08-15 | 2014-10-23 | Open Invention Network, Llc | Dynamic interface between bpss conversation management and local business management |
EP1866780A2 (en) * | 2005-03-30 | 2007-12-19 | Welch Allyn, Inc. | Communication of information between a plurality of network elements |
EP1866780A4 (en) * | 2005-03-30 | 2013-07-31 | Welch Allyn Inc | Communication of information between a plurality of network elements |
US8856380B2 (en) | 2005-03-30 | 2014-10-07 | Welch Allyn, Inc. | Communication of information between a plurality of network elements |
US20080294645A1 (en) * | 2007-05-22 | 2008-11-27 | Sybase, Inc. | System, method and computer program product for EDI-to-EDI translations |
US9002870B2 (en) * | 2007-05-22 | 2015-04-07 | Sybase, Inc. | System, method and computer program product for EDI-to-EDI translations |
US10802804B2 (en) * | 2017-02-08 | 2020-10-13 | One Connect Smart Technology Co., Ltd. | File generation method, device, server, and storage medium |
Also Published As
Publication number | Publication date |
---|---|
AU2003237527A1 (en) | 2003-12-22 |
US20040019693A1 (en) | 2004-01-29 |
AU2003237527A8 (en) | 2003-12-22 |
WO2003104982A2 (en) | 2003-12-18 |
US7325027B2 (en) | 2008-01-29 |
US20080133768A1 (en) | 2008-06-05 |
US7908398B2 (en) | 2011-03-15 |
WO2003104982A3 (en) | 2004-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7325027B2 (en) | Software, method and system for data connectivity and integration having transformation and exchange infrastructure | |
CN111316310B (en) | Unified electronic transaction management system | |
US9197694B2 (en) | Providing on-demand access to services in a wide area network | |
Bussler | B2B integration: Concepts and architecture | |
US20040205113A1 (en) | Methods and apparatus for the interoperability and manipulation of data in a compuer network | |
US20020091533A1 (en) | Technique for automated e-business services | |
US20020107913A1 (en) | System and method for rendering documents in a user-familiar format | |
US20020198800A1 (en) | Integration of computer applications and e-business capability | |
US20050198121A1 (en) | Vertical enterprise system | |
US20070288250A1 (en) | Method and system for generating collaborative processes | |
US20020107752A1 (en) | System and method for integrating web-originated orders with backend business systems | |
US20020107699A1 (en) | Data management system and method for integrating non-homogenous systems | |
KR20050057479A (en) | Exposing process flows and choreography controlers as web services | |
AU2006320836A1 (en) | Sustaining a fleet of configuration-controlled assets | |
McKeen et al. | New developments in practice II: enterprise application integration | |
Ferreira | Enterprise systems integration | |
US8510707B1 (en) | Mainframe-based web service development accelerator | |
Gleghorn | Enterprise application integration: a manager's perspective | |
US20030115119A1 (en) | Document exchange | |
US20090204662A1 (en) | Method and system for providing reconciliation of semantic differences amongst multiple message service providers | |
Tabor | Microsoft. net XML web services | |
Genevra et al. | Service oriented architecture: The future of information technology | |
US20230222020A1 (en) | Any-to-any application programming interface connector system for information exchange platform | |
US12032568B2 (en) | Multi-layer extensibility for enterprise portal | |
US9699002B1 (en) | Electronic receipt for purchase order |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: OBJECT INNOVATION, INC., FLORIDA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GROW, JOHN D.;BECK, PAUL R., JR.;SIRDEVAN, SCOTT M.;AND OTHERS;REEL/FRAME:014487/0512 Effective date: 20030829 |
|
STCB | Information on status: application discontinuation |
Free format text: EXPRESSLY ABANDONED -- DURING EXAMINATION |