Method and system for dynamic interface contract creation
First Claim
Patent Images
1. A system for dynamically creating an interface contract between a host software system having a host system database and an external software system, said system located within said host system and comprising:
- an event table sub-system comprisinginput means to associate external system field names to the field names of said host system as interface contract definitions, andto define events in terms of dynamic conditions and static conditions,and to associate said interface contracts to said events, anda definition database to store tables of said events, said field names, and said interface contracts;
an event trigger sub-system connected to said host system database comprisinga clue module containing user defined tags associated with said dynamic conditions, andmeans for analyzing changes in said host database to identify dynamic conditions that indicate an event has possibly occurred; and
an event contract interface sub-system interposed between said event trigger sub-system, said event table sub-system and said external systems, wherein said event contract interface sub-system receivesmessages from said event trigger module when said event has possibly occurredand analyzes said messages for static and dynamic conditions to determine if said event actually occured and thenrecalls interface contract definitions from said definition database, andbuilds messages to send to said external systems based on said interface contract definitions.
8 Assignments
0 Petitions
Accused Products
Abstract
A system for creating user defined software interface contracts for sending host system data to any external system. The external systems can reside on any type of hardware platform. The invocation of a contract is controlled by a set of user defined conditions known as an event. The creation of event and contracts is completely under the control of the users of the external systems with little or no support of the host system developers to establish new interfaces to the external systems.
-
Citations
4 Claims
-
1. A system for dynamically creating an interface contract between a host software system having a host system database and an external software system, said system located within said host system and comprising:
-
an event table sub-system comprising input means to associate external system field names to the field names of said host system as interface contract definitions, and to define events in terms of dynamic conditions and static conditions, and to associate said interface contracts to said events, and a definition database to store tables of said events, said field names, and said interface contracts; an event trigger sub-system connected to said host system database comprising a clue module containing user defined tags associated with said dynamic conditions, and means for analyzing changes in said host database to identify dynamic conditions that indicate an event has possibly occurred; and an event contract interface sub-system interposed between said event trigger sub-system, said event table sub-system and said external systems, wherein said event contract interface sub-system receives messages from said event trigger module when said event has possibly occurred and analyzes said messages for static and dynamic conditions to determine if said event actually occured and then recalls interface contract definitions from said definition database, and builds messages to send to said external systems based on said interface contract definitions.
-
-
2. A method for dynamically creating an interface contract between a host system and another software system,
said method executed by a data processor comprising the steps of: -
creating a table of external system field names associated with host system field names; creating a table of dynamic and static conditions for defining events; creating a table associating field names that belong to an interface contract; creating a table associating events to interface contracts; receiving messages indicating changes to the host system database; comparing said messages to said dynamic conditions to determine if the occurrence of an event is possible; analyzing said messages for dynamic and static conditions if it was determined in said comparing step that an event was possible, to determine if said event actually occurred; and building an interface contract tag value pair message for the interface contract associated with said actual event.
-
-
3. A host computer system capable of dynamically creating interface contracts with a plurality of external systems, said host system comprising:
-
a host system database containing data records; a host system database controller connected to said host system database; storage means for storing a plurality of interface contract definitions; means for determining the occurrence of an event, said means connected to said host system database controller wherein said host database controller sends to said means for determining, information regarding changes in said data records and said information is used by said means to determine said occurrence of an event and to select ones of said plurality of interface contract definitions should be retrieved from said storage means and invoked; second means, interposed between said means for determining and said host database system controller, for using said dynamic conditions for determining the likelihood of said event and only if said event is likely forwarding said information to said means for determining for further processing; third means, for specifying said interface contract definitions for storage in said storage means, said third means being connected to said means for determining which further comprises; a control process means for controlling access to said storage means; an input means connected to said control process means for inputting data; and wherein from said input data said events are defined in a first table stored in said storage means, and wherein said interface contract definitions are stored in a second table in storage means, and wherein associations between said interface contracts and said events are stored in a third table in said storage means.
-
-
4. A method for providing flexible interface contract definition between a host computer system having a database of records and external computer systems accessing said database to modify said records, said method, executed by a computer system, comprising the steps of:
-
first associating the names of data fields used by said external systems to the names of data fields used by said host system and storing said associations as interface contract definitions in a storage means; defining a plurality of events in terms of changes to said records and storing said event definitions in said storage means, wherein said changes are categorized as static and dynamic conditions; second associating said event definitions to said interface contract definitions and storing said second associations in said storage means; comparing said changes in said records to said plurality of event definitions to determine which of said events has occurred; identifying said interface contract definitions associated with said events that have occurred; building outgoing messages to said external systems according to said interface contract definitions; extracting from said storage means said dynamic conditions for defining possible events; loading said possible event definitions based on dynamic conditions into resident memory; preprocessing said changes to said records by comparing said changes to said dynamic conditions loaded in resident memory to determine if an event has possibly occurred and if said event has possibly occurred then preceding to said comparing step.
-
Specification