WO2001061544A1 - Open market collaboration system for enterprise wide electronic commerce - Google Patents

Open market collaboration system for enterprise wide electronic commerce Download PDF

Info

Publication number
WO2001061544A1
WO2001061544A1 PCT/US2001/005010 US0105010W WO0161544A1 WO 2001061544 A1 WO2001061544 A1 WO 2001061544A1 US 0105010 W US0105010 W US 0105010W WO 0161544 A1 WO0161544 A1 WO 0161544A1
Authority
WO
WIPO (PCT)
Prior art keywords
collaboration
hub
business
message
space
Prior art date
Application number
PCT/US2001/005010
Other languages
French (fr)
Other versions
WO2001061544A9 (en
Inventor
Rocky Stewart
Timo J. Metsaportti
Pal Takacsi-Nagy
Original Assignee
Bea Systems, Inc.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Bea Systems, Inc. filed Critical Bea Systems, Inc.
Priority to AU2001238380A priority Critical patent/AU2001238380A1/en
Priority to EP01910812A priority patent/EP1275055A4/en
Priority to CA002400438A priority patent/CA2400438A1/en
Publication of WO2001061544A1 publication Critical patent/WO2001061544A1/en
Publication of WO2001061544A9 publication Critical patent/WO2001061544A9/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q99/00Subject matter not provided for in other groups of this subclass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/18Legal services; Handling legal documents
    • G06Q50/188Electronic negotiation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/212Monitoring or handling of messages using filtering or selective blocking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding

Definitions

  • the present invention relates generally to the transaction of business- to-business commerce using the Web.
  • IT information technology
  • the first business issue is the integration of critical business information and logic that reside in enterprise production and legacy systems. Multiple IT systems that are implemented as silos or standalone systems, each addressing particular business issues, should be integrated across the enterprise.
  • E-Commerce enables companies to enjoy significant savings and increase revenue opportunities by (1) improving service to customers, (2) engaging in just-in-time production, (3) finding more competitive providers of operational goods and production materials, and (4) being able to create new markets quickly.
  • reducing cost and increasing revenue have always been driving business forces.
  • Electronic data interchange (EDI) emerged in the 1990s as a standard for exchanging data between companies.
  • EDI is a highly structured, expensive, and time-consuming technology.
  • Packaged solutions have also emerged that claim to solve business-to-business (B2B) dilemmas; however they also require heavy investment in proprietary application technology across all business partners, entail significant configuration expertise, and deliver a hard-coded, pre-packaged process that all parties must adopt.
  • Packaged solutions and EDI deliver very little competitive advantage, are not customizable for differing business processes, and are expensive, time- consuming options.
  • the sharing of information is in the form of simple point-to-point messages that are not really conversations. While these types of commerce may be sufficient to do things like sharing simple inventory information with suppliers, or posting product catalogs for buyers, these types of commerce have, to date, done little more than simply take information and automate its distribution to participants.
  • EDI offers an advantage over paper-based business transactions, it has traditionally been restricted to large companies with substantial IT budgets and technical resources. EDI typically requires as much as 9-12 months to implement and can be quite costly. Finally, EDI is not real-time or process-driven. Data is batch transmitted, and transactions can be sent out of sequence without system oversight. In some cases, data may not be received at all — creating consternation and confusion on all sides.
  • new B2B solutions are designed to leverage the Internet and technologies such as Java, in order to lower the barriers to entry for trading partners of any size, reduce deployment cycles and cost, and power managed, real-time communication between partners. Recognizing that EDI will continue to be used by many of the world's largest companies because of familiarity and confidence in legacy systems, new Internet-based e-business platforms must also co-exist comfortably with EDI legacy systems. Nonetheless, as the real and opportunity costs of using EDI grow, companies are investing IT resources in Internet-based systems that make more financial and strategic sense.
  • An e-market maker can be defined as an organization that develops a B2B, Internet-based, e-marketplace of buyers and sellers within a particular industry, geographic region or affinity group.
  • the list of e-market makers is growing larger every day. Although it is indisputable that e-marketplaces in general will power much of e-business tomorrow, supporting a broad variety of collaboration, purchasing sales and trading activities, the majority of them are not delivering on the B2B promise today.
  • a recent research study found that of 600 surveyed exchanges, only 10 provided application integration. A primary goal of B2B and online marketplaces is to reduce human intervention.
  • Supply chain transparency which occurs when e-market makers have increased visibility into a supplier's product availability and delivery information, enables B2C companies to better meet customer demands in real-time and represents a significant source of competitive advantage.
  • E-Business is about competition, and competition is about service speed and quality.
  • Company size and scope are no longer the determining factors for marketplace success, because even very small companies can generate a significant Internet presence.
  • Capturing new business opportunities using the Internet requires business strategies to be developed and implemented in Internet time, and the opposition of speed over size is becoming more apparent everyday.
  • B2B speed and competition
  • collaboration between trading partners is the keyto winning the game.
  • Truly changing the rules requires real-time information exchange, transactional integrity, flexibility to adapt to changing market conditions, and integrated trading relationships between business partners. The stakes are high, and can make or break a company.
  • the rules change daily, as every e-business executive can attest. These are the real e-business challenges. Meeting these challenges requires a different kind of B2B technology that can meet the real demands of collaborative commerce.
  • the invention helps to define an open, standards-based, and scalable software platform for dynamic business-to-business collaboration.
  • the software platform may be embodied in various forms of server product, referred to herein as a collaboration server, or may be incorporated into larger scale enterprise collaboration server products referred to herein as collaboration systems.
  • the several benefits provided by the invention include a comprehensive conversation management capability, an Internet based standard, and a pluggable business logic and protocol support.
  • a primary component of the collaboration system is the collaboration space (c-space).
  • the c-space is an abstraction supporting a single business model, business message protocols, a secure message space, security policies, quality of service policies, and a registered set of business trading partners.
  • the c-space contains message vocabularies, business process models, participant roles, and other e-market metadata that are essential to the creation, deployment, and ongoing maintenance of trading activities.
  • a c-space owner can create any number of concurrent c-spaces, each supporting any number of trading partners.
  • the invention provides asynchronous XML messaging capabilities to allow loosely coupled communication between trading partners.
  • the collaboration system further comprises a collaboration hub (c-hub).
  • the c-hub is the execution engine of a c-space, allowing the c-space owner and trading partners to create, route, and manage messages within the trading environment.
  • the c-hub delivers powerful messaging services that are essential to ensuring the security, quality, relevance, and success of conversations across the c-space.
  • the invention comprises a collaboration system that allows the exchange of data between participants in an electronic commerce environment, comprising a collaboration hub for the transfer of data between participants, a collaboration space defining the rules governing said transfer of data and the role of said participants, a hub transport that allows a participant to send and receive data from the collaboration hub in accordance with the definitions of the collaboration space.
  • Figure 1 is an illustration of a collaboration system in accordance with an embodiment of the invention.
  • Figure 2 is an illustration of a network of collaboration partners in accordance with an embodiment of the invention.
  • FIG. 3 is a schematic of a control hub and trading partners in accordance with an embodiment of the invention.
  • Figure 4 is an illustration of a c-space creation process.
  • Figure 5 is a schematic of a collaboration system with hub and trading partner enablers in accordance with an embodiment of the invention.
  • Figure 6 is a schematic of a c-hub in accordance with an embodiment of the invention.
  • FIG. 7 is a flowchart of a message flow process in accordance with an embodiment of the invention.
  • Figure 8 is a schematic of a c-space in accordance with an embodiment of the invention.
  • Figure 9 is a schematic of a conversation initiation in accordance with an embodiment of the invention.
  • Figures 10-13 are message flow diagrams of an example conversation in accordance with an embodiment of the invention.
  • Figure 14 is a schematic of a conversation termination process in accordance with an embodiment of the invention.
  • Figure 15 is an illustration of a workflow server design process in accordance with an embodiment of the invention.
  • Figure 16 is an illustration of a workflow server run time process in accordance with an embodiment of the invention.
  • Figure 17 is an illustration of a workflow and client interaction in accordance with an embodiment of the invention.
  • Figure 18 is an illustration of a workflow and enterprise application interaction in accordance with an embodiment of the invention.
  • Figure 19 is a schematic of a c-hub repository in accordance with an embodiment of the invention.
  • Figure 20 is a flowchart of an enterprise-wide collaboration system deployment process.
  • Figure 21 is a schematic of a c-hub in accordance with an embodiment of the invention, showing the XOCP routing and filtering mechanisms.
  • Figure 22 is a schematic of an XOCP c-bridge in accordance with an embodiment of the invention.
  • Figure 23 is a schematic of an XOCP c-gateway in accordance with an embodiment of the invention.
  • Figure 24 is a schematic of an XOCP c-proxy in accordance with an embodiment of the invention.
  • Figure 25 is an illustration of an XML workflow creation processing using Rational Rose.
  • Figure 26 is an illustration of a "swim lane" workflow example in accordance with an embodiment of the invention.
  • End-to-end integration is both an overall architecture and a series of IT solutions that address three key business issues: The integration of critical business information and logic that reside in enterprise production and legacy systems; the desire to incorporate Web-based e-commerce application; and the need to take advantage of integrated e-commerce, including the integration of business precesses with trading partners.
  • collaborative commerce resembles an interactive, managed conference call of buyers and sellers. Real-time conversations among trading partners allow them to actively negotiate and execute business transactions, not just pass along information.
  • Each and every B2B activity should be manageable as a seamless, integrated, and secure business event, regardless of how long this business transaction takes, or how many business parties or IT systems are involved — internally or externally.
  • e-business is of increasing importance to most companies from the corporation's business perspective, e-business collaboration among trading partners can help speed new products or services to market, improve customer service, reduce inventory and supply chain costs, and ultimately increase shareholder value.
  • e-business extends the use of existing, proven IT systems and business processes to include external, disparate systems that are increasingly being accessed over the Internet.
  • E-Business is a real-time entity: interactive, customer driven, and highly competitive.
  • the e-business winner will be the company — or set of companies — that can quickly and efficiently deliver products and services to partners, customers and end users with tight integration at all points along the value chain.
  • Today's market leaders recognize that e-business is about creating a value proposition so compelling and a business experience so immediate and efficient that all partners and suppliers make doing business over the Internet a standard part of how they do business.
  • the invention defines an open, standards-based, and scalable software platform for dynamic business-to-business collaboration.
  • the several benefits provided by the invention include:
  • Rapid Time-to-Market IT execution is critical to companies that 5 must extend their business to trading partners. Whether integrating the supply chain or launching new e-market exchanges, companies need to get into the
  • Reliable, Layered Messaging Platform Companies typically go-to-market rapidly with their B2B strategies, gaining an initial e-business 5 foothold and then implementing the rest of the technology in phases. Although time pressures are intense, IT recognizes that it is high-risk and costly to invest in piecemeal technologies from multiple vendors that do not work together, cannot scale, and are not readily extensible. Individual e-business IT initiatives ideally fit into a single, comprehensive architecture that allows companies to get into the game quickly, yet be confident that they can successfully incorporate value-added business logic and build an integrated and high-performance B2B platform over time. To accomplish this, the invention provides a robust and reliable messaging platform designed specifically to meet the distributed, heterogeneous and loosely coupled nature of B2B e-commerce. Intelligent message routing and the ability to define the quality of service are an intrinsic part of the messaging platform. Additionally, a layered architecture provides a flexible means of adding new and emerging transport protocols to meet current and future requirements.
  • Embodiments of the invention provide end-to-end e-process management by interfacing with otherthird-party workflow products including the BEA WebLogic Process Integrator, a J2EE-compliant and XML-based process integration engine from BEA Systems Inc., San Jose, California.
  • BEA WebLogic Process Integrator is one example of products that enable the effective, end-to-end management of system and application-based business processes, as well as traditional human-based workflow on both sides of a company's firewall.
  • the invention enables the creation of one or many virtual trading communities on the Internet, connecting trading partners in a conceptually free-standing environment with its own defined business processes. This unique design reduces the need for business process reengineering, enabling disparate trading partners to participate in public processes which take place within the e-market while allowing individual trading partners to define, implement and execute distributed, private business processes locally.
  • Internet Standards-Based B2B is most valuable and effective when it is fully integrated from the back-end systems and extends out across the firewall to trading partners, regardless of the disparate IT systems and processes employed. Adhering to open industry standards such as Java, XML, and HTTP on nonproprietary systems optimizes partners' ability to integrate seamlessly and quickly.
  • Standards-based technology also allows IT to leverage existing skill-sets rather than being forced to invest in something that is proprietary and cannot be replicated.
  • embodiments of the invention use a standards-based architecture leverages an HTTP communications protocol for information transportation over the Internet, as well as standards and concepts such as SSL, PKI and J2EE — reducing the need to dedicate internal IT resources to proprietary technologies.
  • the invention also provides a flexible framework for rapidly implementing custom business logic that may be required to maintain a competitive advantage.
  • Embodiments of the invention can be designed to run on industry-leading transaction servers such as BEA WebLogic Server from BEA Systems, Inc., San Jose, California.
  • the invention uses an open and flexible architecture that can interoperate and leverage existing investments in EAI/B2B technologies as well as enterprise databases, Supply Chain Management (SCM), Customer Relationship Management (CRM), and mainframe systems.
  • SCM Supply Chain Management
  • CRM Customer Relationship Management
  • mainframe systems mainframe systems.
  • the invention also enables explanation of Common Object Request Broker Architecture (CORBA), Enterprise JavaBeans (EJB), Tuxedo, and COM+ applications. This inherent flexibility provides a highly scalable and adaptable platform for the development and deployment of future B2B initiatives.
  • DUNS Data Universal Numbering System. A distinctive nine-digit identification sequence that is an internationally recognized common company identifier in global electronic commerce transactions.
  • PIP Partner Interface Process.
  • RosettaNet A protocol provided by RosettaNet that specifies the business messages exchanged, their vocabulary, and how to validate them.
  • a number of these protocols have been defined for various types of business transactions (e.g.: TransferShoppingCart, QueryOrderStatus, etc.)
  • RosettaNet Depending on its use in context, RosettaNet is either of the following definitions: An independent, non-profit consortium that is defining standard electronic business interfaces; or the business and transport protocol specified by this group.
  • XOCP XML Open Collaboration Protocol. A protocol used by the collaboration serverthat provides more complete life cycle and management support for business interactions. XOCP is described in more detail later in this document.
  • the invention comprises a collaboration server, which may itself be a component of a larger collaboration system.
  • Figure 1 shows an embodiment of the invention.
  • a collaboration system in accordance with an embodiment of the invention includes a transaction in application server 102 operating as a base.
  • transaction servers which may be used with the invention include the WebLogic Server product from BEA Systems, Inc., San Jose, California.
  • the transaction server provides an application infrastructure upon which the collaboration system resides. Other transaction servers may be used.
  • the application infrastructure ensures overall system availability, scalability, and security through the use of transaction processing, persistence, threading and components.
  • workflow servers that may be used with the invention include the WebLogic Process Integrator product from BEA Systems, Inc.
  • the workflow server allows a company to define their business processes as a workflow.
  • the workflow may take into account all aspects of a company's business from start to finish, including, for example, manufacturing processes, purchasing, sales, financial processes, etc.
  • a key attribute of a workflow is that it be dynamic, flexible and configurable, i.e. that it may be readily modified to reflect a company's changing business model, to add new elements such as new product lines, and to account for new events as they occur.
  • the workflow server also acts as an interface for a company's business application to plug into and utilize the workflow.
  • Business application may include, for example, catalog management 106, dynamic pricing 108, order management 110, logistics 112, and payment applications 114.
  • the collaboration server is a key component in creating a collaboration system, and in bringing workflow management to the enterprise.
  • the collaboration server allows separate companies, herein referred to as trading partners, to collaborate on complex tasks or projects. Such collaboration may extend, for example, to complex business projects, manufacturing processes, or logistical tasks encompassing many companies spread over many countries.
  • the collaboration server acts as part of a collaboration system to allow globally dispersed trading partners to share information and resources, and to work towards a common goal.
  • a key attribute of the collaboration server is the ability to interface with workflow processes running on a workflow server. To this end the collaboration server must be able to control the flow of information into and out of the workflows maintained by the workflow server. For collaboration among different companies the collaboration server must be able to do this for many workflows, and many workflow servers, and must be able to perform this task simultaneously, equally, and reliably.
  • the collaboration server of the invention does this by means of a sophisticated routing and filtering mechanism. Messages from different trading partners, or in some instances the workflows of different trading partners, are filtered by the collaboration server, and routed to the appropriate recipients in a true collaborative fashion.
  • Figure 2 illustrates a real-world example of how the invention may be used.
  • a manufacturer may employ the invention to create a collaboration system.
  • the manufacturer 122 is responsible for maintaining and administering the system which may include an application server, a workflow server, and a collaboration server.
  • these collaborative components may act as a trading hub or clearing house f ortrading partners to collaborate with the manufacturer.
  • suppliers 124 and distributors 126 that act as trading partners with the manufacturer may participate in the collaborative process.
  • Each of these entities may have their own workflow servers and workflow processes that may interact with the manufacturer's workflow process.
  • Other entities for example a logistics partner 128, may participate in the collaboration system without any need fortheirown workflow server.
  • a particular entity or trading partner need not have its own workflow process to take part in a collaboration system, but in those instances where the trading partner does have its own workflow, the invention can make use of it and integrate (at least portions of) it into the collaborative enterprise workflow.
  • Figure 3 shows an initial step in preparing the invention for use in an enterprise.
  • a company wishing to use the collaboration system must first develop a central point 132 or hub at which to build the collaboration system, and identify the trading partners 134, 136, 138 that will participate in the collaboration system.
  • the hub is developed and maintained by a large manufacturer who may wish to streamline their materials procurement and manufacturing processes, but the invention is not limited to such users, and indeed the collaboration system and c-hub may be built by any entity including suppliers, resellers, distributors, logistics providers, purchasers, market makers, e-portal providers, and others.
  • the trading partners may likewise be any of these entities or anyone else interested in participating in a complex e-commerce business project.
  • FIG 4 The development of the collaboration space is shown in Figure 4.
  • a company must first decides on the business purpose of the c-space, define a vocabulary, and a set of protocols, and provide a specification.
  • Figure 5 shows the installation of the c-space into the collaboration system.
  • the central collaboration provider installs a collaboration hub, or c-hub 154, most likely at their place of business but the c-hub can be installed anywhere geographically, such is the benefit of a global e-commerce solution.
  • the c-hub controls a collaboration space, ore-space 156 - an abstract structure wherein collaboration messages are transmitted back and forth between trading partners in a continuous conversation-like manner.
  • Trading partners use collaboration enablers, orc-enablers 158, software applications allowing them to send messages to, and receive messages from, the c-hub.
  • the enablers may also interface with workflow processes and servers at the trading partners' location so that such messages are generated and received automatically.
  • the messages can be in any format - the invention is designed to be flexible in the type of messaging the c-hub understands.
  • industry standard XML messages can be used.
  • the enabler may then send and receive such XML messages to and from the c-hub by any convenient means, including the Internet. In this manner the invention allows geographically distant trading partners to communicate workflow processes easily, with minimal communication cost, and with little or no change in their current workflow technology.
  • collaboration system may utilize many components, including:
  • a c-space enabler (enabler) • a workflow integrator (workflow server)
  • a workflow integrator workflow server
  • the c-hub is the centerpiece of the collaboration server. It is responsible for routing messages between various c-enabler components and for managing the lif ecycle of the various conversations between the participating trading partners.
  • the invention uses a c-hub which provides the following functionality:
  • a modular hub The c-hub allows for the easy addition of code at various well-defined points.
  • Logic Plug-Ins At well-defined plug-in points, customers may be allowed to introduce their own code. These plug-ins, referred to as “Logic Plug-Ins", allowthe customerto provide additional processing of the information passing through the c-hub.
  • Protocol Plug-ins An extended type of Logic Plug-In is a "business protocol plug-in", which provides support for various business protocols other than the out-of-the-box XOCP support such as the RosettaNet router.
  • RosettaNet Protocol Plug-in A special business protocol plug-in that allows the c-hub to function as a router for RosettaNet (non-XOCP) business conversations.
  • Figure 6 shows the c-hub architecture, as well as the normal flow of business messages through the c-hub: This is a somewhat simplified layout that will be expanded upon later. However, it provides the overall picture of the c-hub. The important points to note are:
  • the central c-hub components (transport 174, scheduler 178, and router 182) make up an integrated infrastructure.
  • the decoder 176, encoder 186, conversation manager 190, and repository 192 components may be made available for customers to change or access.
  • the router 180 and filter 184 components are customizable by the customer.
  • the invention provides default implementations forXOCP and RosettaNet support. • Multiple components (or "chains") in each quadrant are allowed.
  • the message flow through the c-hub begins with an incoming message 172 from a trading partner via proceeds to the hub router, and then proceeds down as an outgoing message 188 to the recipient trading partner or partners, as indicated by the arrows.
  • the two sides of Figure 6 are usually described from the perspective of the client ortrading partnerand are herein referred to as the publish side (left side) and receive side (right side).
  • the main characteristics and contractual obligations of each component are illustrated in the flowchart Figure 7 and can be summarized as follows:
  • the incoming message is read and routed to an appropriate decoder chain based on the message protocol (e.g.: XOCP, RosettaNet, cXML, etc.).
  • the message protocol e.g.: XOCP, RosettaNet, cXML, etc.
  • the URL on which the message is received serves to identify both the protocol being used and the destination c-space.
  • Any protocol-specific headers in the message are processed by the decoder and the appropriate business protocol handler is assigned.
  • the sending trading partner is also identified.
  • the sending trading partner is then enlisted in a conversation, and a reply is prepared to be returned to the sender.
  • the C-hub Scheduler 198 The message is stored for subsequent retrieval.
  • Logic Plug-Ins can add or remove recipients from this list.
  • the C-hub Router 202 Final validation of the message recipients is performed, and the message is stored for delivery to the targeted trading partners.
  • Filter chain 204 A message destined for a single trading partner recipient is received and a decision is made on whether to send the message. Filter logic plug-ins may be used to add or remove this message from this recipient's receive mechanism.
  • the encoder performs any transportation of the message required to support the business protocol of the recipient.
  • C-hub Transport 210 The C-hub transport layer sends the message to the trading partner recipient.
  • a primary component of the invention is the c-space.
  • Figure 8 shows an example of a c-space 212 shared by many buyers, sellers and other entities.
  • the c-space is an abstraction supporting a single business model, business message protocols, a secure message space, security policies, quality of service policies, and a registered set of business trading partners.
  • the c-space contains message vocabularies, business process models, participant roles, and other e-market metadata that are essential to the creation, deployment, and ongoing maintenance of trading activities.
  • a c-space owner 214 can create any number of concurrent c-spaces, each supporting any number of trading partners.
  • the invention provides asynchronous XML messaging capabilities to allow loosely coupled communication between trading partners 216, 218. This model leverages routing and filter functionality that can be associated with messages in order to classify the set of trading partners that should receive a message, allowing partners and their interactions to be managed individually, based on their role or trading preferences within an e-market.
  • the c-hub is the execution engine of a c-space, allowing the c-space owner and trading partners to create, route, and manage messages within the trading environment.
  • XML e-business messaging semantic
  • Figure 5 shows some XML transfer paths between trading partners (using c-enablers), and a trading hub hosting a c-space.
  • XML offers tremendous advantages as a universal format for messages passed between trading partners because it provides a common syntax to structure information.
  • XML by itself doesn't solve the interoperability problem, as collaborating entities must agree on the semantics of business protocols for this information.
  • the invention is independent of business protocol message vocabulary, so it can support any standards-based or proprietary business protocol or vocabulary. As such the invention delivers the ability to support multiple protocols within the same c-space as well as to extend a c-space through supplemental protocol handlers or business logic plug-ins.
  • XOCP extensible Open Collaboration Protocol
  • conversation management software tracks and manages these long-living conversations, ensures that they are completed, and orchestrates the overall process execution.
  • the invention allows the powerful business process management and workflow capabilities of workflow server products such as BEA WebLogic Process Integrator to provide the infrastructure to facilitate conversations within the c-space.
  • the innovative architecture allows each trading partner to handle the implementation of their own business process and rules locally, while conforming to the rules of engagement (defined by the global information and business protocols) for a given c-space.
  • Transport-protocol independent for example http/https
  • Business-protocol independence cXML, BizTalk, RosettaNet or any proprietary business documents
  • QOS quality of service
  • the invention provides a unique approach to managing on-going interactions between individual trading partners as well as the context of each conversation within a c-space.
  • the powerful business process management and workflow capabilities of workflow products and workflow servers such as, for example, the BEA WebLogic Process Integrator provides the infrastructure to facilitate conversations within the c-space.
  • the invention's innovative architecture allows each trading partner to handle the implementation of their own business process and rules locally, while conforming to the rules of engagement (defined by the global information and business protocols) for a given c-space.
  • Conversation context is another important aspect of managing conversations within a given c-space.
  • Each conversation has a unique context that enables users to manage multiple, concurrent conversations taking place in the c-space.
  • the collaboration server uses context information to help ensure that messages from one conversation do not get tangled up with messages from another.
  • an individual trading partner may be requesting proposals or negotiating prices with multiple vendors concurrently, and must maintain the integrity and security of each interaction.
  • Figure 9 illustrates a schematic of a conversation lifecycle as managed by the conversation manager.
  • the conversation process is dictated by the actions of three types of participants-conversation initiators, conversation terminators, and regular conversation participants. These roles are fully interchangeable in that a conversation initiator (an initiator) may also act as a conversation terminator (a terminator). Regular conversation participants may become terminators, and so on. Collectively these participants are known as collaborators. Conversations between and amongst the collaborators creates the e-commerce collaboration environment.
  • the conversation is first started or initiated 234 by an initiator 232.
  • the conversation then enters an active phase 236.
  • the conversation flow is coordinated by a conversation manager. This role may be played by any of the participants but is usually played by the central participant who is typically also responsible for managing the c-hub and the c-space.
  • the conversation manager is responsible for generating conversation id's, registering participants in the conversation, maintaining the status of the conversation, and delivering conversation abortion or termination messages.
  • a conversation may end by any of three means -eitherthe conversation is aborted 238, perhaps due to error, or a change in conversation criteria; timed-out 240 due to the conversation period extending beyond its scheduled timeframe; or terminated due to the conversation having achieved its end result 242.
  • Figures 10-13 illustrate possible steps in the lifecycle of a typical conversation.
  • the conversation is initiated by an initiator 250.
  • the initiator must begin the collaboration process, start a new collaboration life cycle 258, initiates the flow of messages among the c-space, and then starts the execution and publishing 264 of such messages so that other participants may join in the conversation.
  • Figure 11 illustrates how a participant joins in the conversation. Having received the first message 268 from the initiator, via the c-space, the participant decides to join in the conversation 272, again through an execute and invoke process. From that point on the participant receives all published messages 280 from the conversation managerthat are intended for delivery fo that particular participant.
  • Figures 12 and 13 illustrate two alternate means for finishing a conversation.
  • the terminator communicates to the message publisherthatthe conversation should be terminated 284.
  • the conversation manager clearly kills the conversation and notifies the participants accordingly 288.
  • Figure 13 shows an alternate means of finishing a conversation in which a participant requests that the conversation be aborted 294.
  • the conversation manager then coordinates sending abort messages to all the participants.
  • Abort messages may be sent via a publisher under coordination of the conversation manager.
  • FIG. 12 illustrates a primary difference between the two means of conversation finishing illustrated in Figures 12 and 13.
  • conversation termination normally occurs as a result of a successful outcome to the conversation among the conversation participants, whereas conversation abortion is usually used as an instantaneous interruption mechanism that does not normally produce a successful outcome.
  • Figure 14 illustrates a compensation mechanism that may be used to rectify unsuccessful outcomes of aborted conversations.
  • a business compensation routine 308 is used to signify that two participants 302, 304 may participate in a conversation on an equal basis, i.e. they provide equal input to the enterprise workflow. If one participant which is currently taking part in a conversation receives a conversation abort message 306, the compensating participant may take its place, depending on the reasons that caused the original abort message. If the entire conversation was aborted, then there may be no conversation for the compensating participant to join.
  • URL Accessible C-spaces is used to signify that two participants 302, 304 may participate in a conversation on an equal basis, i.e. they provide equal input to the enterprise
  • C-spaces are a useful, but generally XOCP-specif ic, concept.
  • Most existing standard business protocols like RosettaNet and cXML do not use the concept of c-spaces or partitioning. Many of these protocols are point-to-point oriented, and do not even have the concept of multi-cast.
  • embodiments of the invention preserve the c-space concept for XOCP, and introduce it for non-XOCP business protocols.
  • each c-space/business-protocol combination may have a unique uniform resource locator (URL).
  • a c-space might have more than one URL to help identify special additional processing that may be required to support multiple business protocols or to handle variations in business protocol implementations.
  • a c-space may have a RosettaNet orientation, but participants may be using RosettaNet implementations from different vendors. Variations in the different implementations can affect howthe decoder needs to process the information for routing purposes.
  • One way to handle such a situation is to have a single decodertry to apply some heuristics to determine from which protocol variation a message is being received, and then process the message accordingly.
  • a Collaboration Enabler is a lightweight, readily downloadable software that enables a trading partner to participate in a c-space.
  • a trading partner must be identified and authorized by the c-space owner or administration in order to activate the c-enabler and actively participate in a c-space.
  • One of the security protocols supported the system is the X.509 certificate, which can be authorized by the c-space administration and granted by a Certificate Authority.
  • the trading partner can then be authorized by the c-space administration (based on conversation types, business documents, and roles) to participate in a particular c-space.
  • the c-enabler can easily integrate with applications running on other application servers and reduces the barrier-to-entry for trading partners who want to participate in the c-space.
  • the minimum configuration requirementto run the c-enabler maybe designed to run on a servlet engine, for example the BEA WebLogic Express servlet engine.
  • a servlet engine for example the BEA WebLogic Express servlet engine.
  • BEA WebLogic Process Integrator a workflow server and integration product described in detail below, which runs on BEA WebLogic Server.
  • Workflow products and servers may be integrated with embodiments of the invention to manage complex e-business processes between multiple trading partners. Together they provide a federated process model among trading partners, where market processes are defined globally but deployed in a distributed manner with local processes being modeled and executed at each trading partner's site.
  • the invention provides the overall management and coordination of these distributed processes as part of the product's conversation management functionality.
  • Workflow server products such as BEA WebLogic Process Integrator from BEA Systems, Inc. provide the ability to graphically model partner-based business processes. This tool also provides graphical design functionality for open business processes such as RosettaNet Partner Interface Processes (PIPs), which govern processes across the global information technology supply chain. RosettaNet PIPs enable companies to deploy standards-based, interoperable applications for supply-chain functions and to optimize networks of suppliers, manufacturers, and distributors.
  • RosettaNet PIPs enable companies to deploy standards-based, interoperable applications for supply-chain functions and to optimize networks of suppliers, manufacturers, and distributors.
  • collaboration server While collaborative commerce is driven by the desire to automate and streamline e-business processes, one can not completely eliminate the ability to involve humans in the execution of e-business processes. Unlike other B2B platforms, the invention's process capabilities provide the ability to define and direct e-business process exceptions to human users for resolution.
  • the combination of a collaboration server and a workflow server in one collaboration system also delivers unparalleled flexibility to drive and integrate cross-enterprise collaborative processes, enterprise applications, and transactions on either side of the firewall using a single process technology.
  • FIG 15 illustrates schematically the architecture of a typical workflow server.
  • the workflow server shown here is a Weblogic Process Integrator server from BEA Systems, Inc.
  • the key elements are common to many workflow server, and the invention is flexible enough to work with any similar product.
  • the workflow server must first be initialized (at design time) to have a workflow. This is typically done by creating a new workflow template 320, and using this template to define an XML document 322. The company then defines a set of business operations 324 and stores these with the templates in a workflow template database 326.
  • enterprise applications start workflow instances based on the saved workflow templates.
  • the workflow server executes these instances to effect the workflow 330, and as a result affect other business operations, enterprise applications and backend systems.
  • the workflow instances, and hence the communications between the enterprise applications and the workflow server, use an XML format. This allows for portability and ease of integration with other systems.
  • the workflow server process engine 340 may thus communicate directly with a worklist client, shown in Figure 17. This may be a local application working within the local workflow and accepting or sending workflow process messages directly to the workflow.
  • the workflow server process may also communicate with enterprise components 342, using XML 344, RMI and EXEC, among others.
  • the workflow server340 includes the ability to both send and receive XML messages 346 related to its workflow. This is how it communicates with the collaboration server, or the collaboration system as a whole. More particularly, the workflow server can pass messages to the c-enabler by XML, which then communicates these messages to the c-hub. Messages from the c-hub are then similarly passed by the c-enabler to the workflow server, again in XML format. In this manner, not only can the workflow server affect the enterprise workflow operating on the enterprise level, but the enterprise level workflow may also affect the workflow operating at the local level. This is the true measure of collaborative e-commerce.
  • Business Logic Plug-Ins allow the c-space owner to add unique functionality to a c-space such as auditing, billing, or invoking complex business rules.
  • the c-space owner may have a business model that requires them to bill or audit based on the content, volume, number of recipients, etc. of messages, which have been mediated by a c-space.
  • the Internet has provided companies with the ability to do business with nearly anyone that they want to — this might not always be desired.
  • filtering functionality can be used to enable individual trading partners to decide whether or not they want to receive a particular message (or perhaps any message) from a particular trading partner. For example, a trading partner may not wantto receive a "request for proposal" message forfewer than 5,000 units. In this case, a filter would be used to reject any request for 4,999 or fewer units.
  • routing functionality can be used by a c-space owner to add to or delete trading partners from the recipient list for a particular message. This could be used to tailor the list to a relevant, desired set of recipients — or expand it in order to increase the chance of finding an appropriate "buyer” or "seller”.
  • Logic Plug-Ins is the term used to describe the individual components or modules in the chains shown in the preceding c-hub architectural overview.
  • Each chain as a whole, has an obligation to satisfy its respective contract, described earlier. However, as long as the contract is satisfied, the other modules in the chain are free to do additional processing.
  • Logic Plug-Ins can be "chained” so that, after one Logic Plug-In is finished running, the next sequential Logic Plug-In of this type will normally be activated. Each successive Logic Plug-In will be able to access the changes, if any, to modified message information.
  • Publish-Side and Receive-Side filters are special route modification Logic Plug-Ins placed in the Router and Filter chains, respectively. Either the c-hub owner or the trading partner or both can specify these filters.
  • the Publish-Side filter is used by the sending trading partner orthe c-hub owner to specify a list of target trading partner recipients forthe message being sent. This filter, a router Logic Plug-In, may add to, remove from, or not change the current list of recipients. This list of recipients is still subject to validation by the c-hub Router.
  • the Receive-Side filter is used by the receiving trading partner orthe c-hub owner to determine whether or not the message should be sent to the specified recipient. It must provide a "yes" or "no" decision as to whether to send the document to the specified trading partner recipient.
  • Protocol and Plug-In implementations This will handle message-specific processing needs, such as finding the trading partner information in the message.
  • a conversation manager implementation This will handle conversation needs, such as finding out whether there are any recipients available for the given message.
  • Repository information The c-hub repository will need to have information that allows the protocol plug-in to provide the necessary support, including such things as conversation names, DTDs, business identifiers, and so on.
  • the c-hub stores all the information it needs to manage a c-space in a c-hub repository.
  • Figure 19 represents the c-hub repository needs as a hybrid based on a block layout that is repository-oriented. This indicates the type of information required to configure the c-hub in orderto provide support for multiple protocols within a c-space, URLs for protocols, and Logic Plug-Ins. This information may include the c-hub 510, the c-space 512, the business protocol used 514, the conversation identifier 516, the sender identifier 518, the trading partner identifiers 520, 524, together with any extended property sets 522, 526, the message identifier 528, and in some instances a portion of the message itself 530.
  • Each c-space supports one or more identified business protocols.
  • the name is a logical name for a protocol defined in the Business Protocol Def .
  • Each business protocol must specify a URL to be used to connect to the decoder for that c-space.
  • //c-hub/business-protocol-def The definition of a business protocol that is used in one or more c-spaces.
  • At least one of these is responsible forf ulf illing the responsibility for this type of Logic Plug-In and this business protocol.
  • the Logic Plug-Ins in the chain will be processed in the specified sequence.
  • the Java class specifying the implementation of this particular protocol.
  • This provides a concrete definition for a Logic Plug-In specified by a logical name.
  • DTDs used by the Logic Plug-In. These are the logical names for DTDs defined elsewhere in the Collaboration Server repository as Documents. The main decoder Logic Plug-In will frequently require one or more DTDs for non-XOCP protocols.
  • a business identifier to be used by an external trading partner distinct from the internal The Collaboration Server trading partner name.
  • //c-hub/trading-partner-protocol /business-identifier/type The type of the business identifier. For example, for RosettaNet, a "DUNS" number is used. The type names are under control of the c-hub administrator and need to be synchronized with the related business protocol plug-in.
  • //c-hub/trading-partner-protocol /business-identifier/value The value of the business identifier, correlated with the business type described earlier. For example, a "DUNS" identifier is a 9-digit number.
  • the invention provides a comprehensive infrastructure that meets the rigorous technology standards for B2B e-commerce, but keeps the barrier to B2B low for you and your business partners.
  • the following section outlines how a company can rapidly create a c-space and transform traditional trading partners into co-collaborators, using the invention.
  • Figure 20 summarizes the steps required.
  • E-Business Strategy 380 First, based on an e-business strategy, a company must determine the types of business transactions to be conducted and the number of participants or trading partners necessary to achieve critical mass for a c-space. At this point, as owner of the c-space they (the company) identify the trading partners desired for the collaboration, and select the business and information protocols that will be supported.
  • the company can then install and configure the c-space hub, and establish one or more XML protocols that will be used to facilitate conversations between the trading partners. For instance, they might choose a custom vocabulary and/or an emerging industry standard, such as RosettaNet.
  • Test and Deploy the C-space 386 If all components are implemented successfully, the c-space is established and goes live.
  • Request Authorization 390 Once a c-enabler is operational, the trading partner requests and is granted access to particular conversations. At this point, the trading partner may obtain, from the c-space owner, the process model for their respective role in the c-space's global business process. Execution of local process models can also be provided by workflow products such as BEA WebLogic Process Integrator. Each trading partner has the option to configure the local aspects of how BEA WebLogic Process Integrator operates, which may include the execution of actions, routing exceptions to humans or integrating to other enterprise systems.
  • Begin Trading Activities 392 Once local business rules, processes, and actions have been identified and implemented locally at the trading partner's site, the trading partner is ready to begin trading in the c-space and to receive messages relevant to their role in the various processes.
  • the invention provides the c-space owner with the capabilities to add or remove trading partners and re-configure conversation parameters on-the-fly without disrupting the system.
  • the c-hub can be configured to support a comprehensive set of Internet security features, including:
  • SSL support for ensuring privacy of data over the Internet.
  • Authentication Mutual authentication, where trading partners and the c-hub authenticate each other before allowing participation in dynamic collaboration activities. Authentication is based on X.509 certificates obtained from a trusted, third-party Certificate Authority.
  • Access Control Lists and a role-based conversation participation mechanism to ensure authorized access to e-business collaborations and the corresponding messages that exist within in a c-space.
  • Trading partners are authorized for specific roles within a c-space which, along with filtering features, govern the types of messages they can publish and receive.
  • Nonrepudiation In some cases, business rules require that a receiver of a business document or message has legally sufficient and persistent proof about the receipt, the content, and the sender of the document — similar to that of a registered letter or notary public in the off-line world.
  • the invention the required infrastructure support for digital signatures, digital receipts, and secure auditing.
  • Embodiments of the invention also include an administration console, that which allows the c-space owner or designated administrator to configure and manage services and c-spaces using a Web browser.
  • administration console that allows the c-space owner or designated administrator to configure and manage services and c-spaces using a Web browser.
  • Common administrative functions include managing trading partners (adding or removing trading partners, granting and revoking access to conversations, etc.), configuring messaging services, monitoring on-going conversations, browsing system status (interactions, message delivery, and logs), and generating activity reports.
  • the administration console offers dynamic management capabilities, which enable the re-configuration of system services on-the-fly, and the addition of new trading partners without disrupting the system .
  • system management functions are available via administration messages — this allows for automated monitoring and error recovery, and for integration to third-party system management tools.
  • the c-hub routes business protocol messages that are sent between trading partners.
  • the c-hub supports different business protocols, which can be generally classified as XOCP protocols or external protocols:
  • XML Open Collaboration Protocol is one of the default protocol used by the invention. This protocol is sent and received by trading partners using the c-enabler API. It provides support for conversation life cycle tracking and the management of business interactions by a mediating c-hub. External protocols are business protocols that may be sent by other products and conform to other conventions or standards (such as a RosettaNet message from a Vitoria trading partner). The c-hub determines the business protocol to be processed based on the URL that is specified when a connection is initiated from a trading partner to the c-hub transport layer.
  • the routing criteria are specified in a separate header of the message protocol.
  • the sender can specify an XPATH router as a component of the message.
  • This XPATH router is a string expression that specifies the intended recipients of the message in a very flexible manner using the XPATH syntax.
  • the c-hub evaluates this XPATH expression after it receives an XOCP message from the sender.
  • the XOCP protocol enables dynamic routing of the message to target recipients.
  • the c-hub maintains contextual information about interactions between trading partners (also known as conversation coordination).
  • the XOCP protocol carries the information that enables the c-hub to monitor and maintain the status of the conversation and its participants.
  • the c-hub Before the c-hub retransmits an XOCP message to a set of target trading partners, it evaluates the XPATH expression against the set of trading partners configured in the repository to determine the routing of the message.
  • the routing functions of the c-hub may be extended to support additional XPATH expressions defined in the repository, as well as user-defined extended properties that can be referenced to control the routing of messages.
  • XPATH expressions for routing messages to trading partners is a special feature of the XOCP business protocol.
  • an application publishes a message using an external protocol (such as RosettaNet)
  • the target recipient is explicitly encoded by the sender in the content of the message.
  • an external protocol such as RosettaNet
  • Figure 21 illustrates a high level overview of message processing and routing in the collaboration server c-hub. This section primarily addresses the XPATH routing and filtering aspects of the c-hub processing.
  • the repository provides a pre-defined set of entity definitions (and associated properties) that support conversations between trading partners in a collaboration system using the invention.
  • entities need to be able to extend these definitions so that application-specific information can be modeled and stored in the repository.
  • the trading partner information in the repository is extended to support application-defined properties that can be associated with a trading partner.
  • C-hub routing and filtering features can make use of these properties.
  • These extended properties are organized by uniquely named extended-property-sets using the c-hub administration console and associated with one or more trading partners .
  • the extended property sets are modeled in the repository so that they can be retrieved as subtrees within an XML document. These XML subtrees appear in the generated message-context XML document sent to the XPATH routers and filters.
  • the XPATH expressions for the routers and filters can reference these extended properties.
  • the root elements of each extended property set associated with a given trading partner will be inserted as the last children of the ⁇ trading-partner> element node.
  • C-enabler XPATH routers 402 - These are XPATH routers that are sent by an c-enabler application when publishing a message.
  • the Conversation. publish() method allows a c-enabler application to specify an XPATH router expression when sending a message.
  • This router contains an XPATH expression that selects a subset of ⁇ trading-partner> nodes from the message-context XML document generated by the repository.
  • These XPATH router expressions can be extended so that c-enabler applications can select a set of trading partners by including references to application-specific extended properties.
  • Trading partner XPATH routers 412 - are routers that are specified by a c-hub administrator in the repository and associated with a sending trading partner. These routers are similar to the c-enabler XPATH routers that are sent with a message, in that they use XPATH expressions to select a subset of target ⁇ trading-partner> nodes. For every message sent by a trading partner using an XOCP conversation, the associated XPATH routers for that trading partner are evaluated against a message-context XML document generated by the c-hub for that message. The generated message-context XML document contains information about the sending trading partner, the conversation context, the message context, and a sequence of subtrees containing the XML parts of the business document.
  • C-hub XPATH routers 410 - These are routers that are specified by a c-hub administrator in the repository and associated with all incoming messages in an XOCP protocol stack. These routers are similar to the trading partner XPATH routers that are sent with a message, but they are evaluated after any c-enabler or trading partner XPATH routers.
  • a c-hub administrator can specify multiple XPATH routers for the c-hub and for each trading partner using the c-hub administration console. These XPATH routers are stored in the repository.
  • the c-hub administrator specifies the XPATH expression for each router, whether the router should reference the content in the application message parts, and the order in which the XPATH routers should be evaluated for each trading partner and for the c-hub.
  • the message-context XML document that the XPATH expression is evaluated against can be generated with or without expanding the child nodes of the ⁇ message-part> element. For large application messages expanding the ⁇ message-part> could have a significant performance impact. If an XPATH expression does not reference the content of a message-part then the administrator can specify that the router does not need the message-part to be included.
  • Each XPATH router expression in the ordered sequence can be configured to replace previous routers (that is, it overrides any routing done by a previous router in the sequence), or it can be configured to append a subset of trading partners to the previous router results.
  • the c-hub XPATH routers are evaluated after all of the sending trading partner XPATH routers.
  • Trading partner XPATH filters 416 - are filters that are defined by an administrator and associated with a trading partner. Using the c-hub administration console, the administrator defines a filter with an XPATH expression and associates it with a trading partner.
  • the XPATH filter is used to examine the message context and determine whether to send the message to the trading partner or not.
  • the XPATH expression is evaluated against a message-context XML document generated by the XOCP filter module. It contains information extracted from the message context and the repository. If the c-hub evaluation of the XPATH expression returns false, then the c-hub does not route the message to the target trading partner. Otherwise, the c-hub processes the message as usual.
  • C-hub XPATH filters 418 - These are filters that are defined by an administrator and are associated globally with the c-hub for all XOCP messages. Using the c-hub administration console, an administrator defines these filters with an XPATH expression.
  • the XPATH filter is used to examine the message context and determine whether to send the message to the trading partner or not.
  • the XPATH expression is evaluated against a message-context XML document generated by the XOCP filter module. It contains information extracted from the message context and the repository. If the c-hub evaluation of the XPATH expression returns false, then the c-hub does not route the message to the target trading partner. Otherwise, the c-hub processes the message as usual.
  • An administrator can specify multiple XPATH filters for each trading partner and for the c-hub.
  • the c-hub administrator uses the c-hub administration console to specify the order in which the filters should be evaluated for each trading partnerandforthe c-hub.
  • the filters forthe c-hub are evaluated after the filters for a target trading partner.
  • Each filter has an XPATH expression and an indication as to whether to expand the ⁇ message-part> element of the message-context XML document.
  • Each XPATH expression in the configured sequence must evaluate to a Boolean true or false result. If the c-hub evaluation of an XPATH expression evaluates to false, then the c-hub does not send the message to the target trading partner and no further filtering is performed. Otherwise, the c-hub continues to process the XPATH filters until either a subsequent filter in the sequence returns false, or until all filters return true.
  • the message-context XML document generated for a c-hub or trading partner XPATH filter is almost identical to the document generated for an
  • the collaboration system may support a number of complex scenarios that extend the reach of the collaborative workflow beyond that described earlier. These scenarios include the use of bridges, gateways, and proxies.
  • FIG 22 shows an example of a bridge (c-bridge).
  • the c-bridge 424 is used to connect two separate c-spaces 426, 428, and to provide workflow communication between them. Anytrading partner may act as a c- bridge, which may be configured to subscribe to messages from one c- space, transform them to the vocabulary of a second c-space, and then publish the transformed message into the second c-space. This capability provides a simple way of combining business models on the Web.
  • Figure 23 illustrates a c-gateway.
  • the c-gateway 430 can be used to publish messages from a c-space 432 to external system 434, such as Ariba Net.
  • C-proxies 438 may be used to send and receive messages from a c-space 440 to a remote client 442, such as an email system, XSL display device, or a wireless (WAP) device.
  • a remote client 442 such as an email system, XSL display device, or a wireless (WAP) device.
  • RosettaNet Protocol Router A RosettaNet router, using the business protocol plug-in mechanism, allows RosettaNet messages to be routed by the Collaboration Server hub between any two participating RosettaNet clients.
  • the clients supported include "native RosettaNet” clients like Vitoria and webMethods.
  • Router refers to a Logic Plug-In in a particular chain in the c-hub.
  • RosettaNet router refers to the entire RosettaNet protocol set of Logic Plug-Ins, solely oriented toward sending messages from one RosettaNet client to another ("routing").
  • the RosettaNet router supports the Vitoria and webMethods implementations of external RosettaNet clients. In orderto perform proper routing, the RosettaNet router needs information from the Preamble and Service Header XML components of the RosettaNet object in order to conform to the RosettaNet specifications. This is explained later in the Message Processing section.
  • the out-of-the-box RosettaNet router is intended to comply with the published RosettaNet standard (as detailed in the RosettaNet specification atwww.rosettanet.org, herein incorporated by reference) and is not biased towards any one vendor.
  • the digital signature is not validated. Validation of the digital signature is expected to be done by the receiving trading partner.
  • Plug-Ins or business protocol plug-ins might do so.
  • All of the XML components are processed: the Preamble, the Service Header, and the Service Content.
  • MIME multipart structure including: Content-Type
  • Routing and conversation information is constructed from parsing the RNO's XML parts.
  • the c-space is determined based on the URL used to access the c-hub.
  • the remaining RNO fields must be valid in form and in how they are used:
  • the initiating partner's business identifier (DUNS number). As stated earlier, this is used to construct the conversation id.
  • the collaboration server processing layers and business protocols neither generate nor validate any digital signature associated with the message because this is an issue among the various trading partner clients, whereas the c-hub is simply relaying messages.
  • the c-hub only validates based on the SSL certificate.
  • RosettaNet is a point-to-point protocol, and not prepared to interact with an intermediate hub. There are two main ways to approach the hub issue with RosettaNet - Synchronous and Asynchronous Message Transfer.
  • the sender delivers a message to the c-hub, and the message passes all the way through the c-hub to the recipient, who returns the HTTP status code.
  • the transport layerthen returns that status to the layer initiating the outbound request, which passes it back through the various c-hub layers and eventually to the sender.
  • This approach can also be referred to as a "delegated responsibility" model.
  • the c-hub already needs to do about the same level of initial validation that the recipient would need to do. Enough of the lengths and first two XML components need to be checked that the message should make it to the upper protocol-processing layer of the recipient. Inthiscase, it should be acceptable for the c-hub to send back the OK / BAD response after its initial processing. All responses may be logged.
  • the hub-provider will have to determine which party is non-compliant, the sender, the c-hub, orthe recipient, and take appropriate action. For example, if it was the c-hub, the RosettaNet router could be modified for different behavior (presumably being less strict in compliance checking).
  • the recipient rejects a message that the c-hub accepted, again the hub-provider will probably have to get involved to determine the non-compliant party. However, the recipient would generally respond to the c-hub with a BAD REQUEST message, which the c-hub can log and pass backa RosetttaNet" General Exception" RosettaNet PIPtothe initiatorwith the information.
  • the RosettaNet router needs important pieces of information from the Preamble and Service Header. This will be parsed with a validating XML parser. An error here will be logged and returned to the sender as a rejected message.
  • the RosettaNet router does not need to fully parse and validate the Service Content portion.
  • the Service Content is the business-specific portion of the message and is more appropriately handled by the receiving client. The information obtained here is for monitoring purposes. Furthermore, to validate the Service Content would require storing over 100 additional RosettaNet PI P DTDs, not including variations that might enter due to trading partner specific customization.
  • the Service Content will be parsed as a "well-formed" document in order to retrieve the few non-essential fields required. If this part is not well-formed, however, the message will be logged and rejected by the c-hub.
  • the root node For all of the XML parts, specifying an "XPath" expression for the field can retrieve the value for that field. For the Service Content part, the root node should be specified as "ServiceContent", as shown earlier. It will be replace by the appropriate message-specific root node when evaluating the
  • the Logic Plug-In mechanism does not preclude the customer from doing their own XML parsing and processing of the Service Content, however. This would allowforfiltering or monitoring based on the content of the Service Content portion of the message. The customer will be responsible for the parsing, however, in order to do the filtering.
  • the RosettaNet router requires certain fields to be entered in the repository, typically via the administration console.
  • the required additional information includes:
  • Extensible Markup Language is rapidly becoming a key enablerfor EAI and B2B e-commerce. In most EAI and B2B scenarios, the greatest challenge is creating a dynamic free flow of information and knowledge between applications and enterprises.
  • XML provides an open and flexible message format, or common dialect, for structuring information flow between heterogeneous systems.
  • XML is a metadata language, a language used to define other languages and a universal standard for structuring data.
  • XML is intrinsically extensible and self -describing, and thus supports an extremely flexible and dynamic business environment.
  • XML easily enables the transfer of information across the Internet and between organizations, allowing them to communicate and conduct Dynamic B2B.
  • Dynamic B2B requires technical underpinnings that adapt to changing e-business strategies and can be extended across multiple enterprises, business partners, and diverse applications.
  • a c-space can be constructed using the unified modeling language (UML).
  • UML unified modeling language
  • Figure 25 illustrates the steps required in generating the XML model for use with the c- space.
  • Activity diagrams, state charts, and class diagrams are used to define transaction models between roles, workflow state models, and a message space, respectively 450.
  • the UML models are then used 452 to generate XML and to populate repositories with this information 454.
  • the repositories are read at run-time by the various components of the present system to determine correct behavior 456. Since a configuration information is represented (and stored) in XML, it is possible to use off-the-shelf revision/configu ration management tools to manage changes to the c-space configurations.
  • the Message Type System is a polymorphic hierarchy of message types.
  • a message type is an abstraction of information that will be shared by transactors (e.g. ORDER, CUSTOMER, PRODUCT etc.). All message types share some common behavior, such as how the encapsulated information (XML) can be manipulated. Therefore the type system implements basic manipulation capabilities (create, read, update, delete) on the base level.
  • Communication Adapter is a notion that abstracts a wire-protocol, such as HTTP, SOAP etc. When a transactor wants to communicate with somebody over a network connection, it needs to instantiate an appropriate adapter object and then pass it's reference to the message object. The content of the message object then becomes a payload of the network message and the adapter takes care of the communication protocol (headers, exceptions, timeouts etc.).
  • Message factories can be used to create message objects out of incoming network messages. Factories are specific to wire-protocols, not to message types. So, for example HTTPRequestFactory can handle any message that comes over HTTP. If a new message type is added, the existing factory can be leveraged. If support is added for a new wire- protocol, a corresponding factory would be implemented as well.
  • This embodiment implements a simple workflow engine, which is based on the idea of DFA (deterministic finite automata).
  • the engine is driven by a XML-based flow-language.
  • the schema (DTD) of the language looks that of Listing 2.
  • the workflow model is de-centralized, so each transactor executes it's own instance of the engine.
  • the implementation manages multiple contexts simultaneously, so a transactor can be involved in many (but separate) business transactions at the same time.
  • XML is also used for storing the state of a workflow context. This allows this embodiment to re-load the state of a context in a different system. This design has some interesting consequences, for example the system should scale nicely in the WLS cluster environment.
  • the design process is started by modeling business transaction using Use Case diagram. For the example illustrated in Figure 26 the following roles were identified: customer, dealer, and shipping company.
  • the business transaction is "buy-a-car”.
  • the first step is to break the Use Case into actions, and add those to an activity diagram.
  • the next step is to take the roles from a use case diagram, map those roles to swim lanes of an activity diagram and assign the activities to corresponding swim lanes.
  • the next step is to define messages that will be delivered and processed by activities.
  • Configuration files (publish/subscribe), message types etc., can then be generated from those diagrams. It is also possible to model each transactor's DFA by using state chart diagrams and to generate the necessary workflow definitions out of those:
  • Figure 26 illustrates an example of a workflow model as prepared using UML, and then generated in XML.
  • the example shown in Figure 26 describes a workflow between a customer 501 , a dealer (or supplier of goods) 503, and a shipping company 504.
  • the workflow resembles a series of "swim lanes" or process flow lanes, with each entity or trading partner having their own “lane”.
  • a separate lane is reserved for the publish/subscribe entity 502 which, under control of the conversation manager, is responsible for receiving and sending messages between the various other entities.
  • the customer begins the workflow by requesting a catalog 462.
  • the catalog request is sent as a message 464 to the publish/subscribe service.
  • This messaging process, and all other messaging processes indicated in Figure 26 are controlled or coordinated by the conversation manager which is responsible for the flow of messages throughout publish/subscribe "swim lane".
  • the catalog request message is thus sent to the dealer, who responds with a send catalog message 466. Having received the catalog the customer may wish to place an order 470, and a place order message is duly issued 472.
  • the workflow indicates this message should be sent to the shipping company ratherthan the dealer, and so the conversation manager/c-hub routes it accordingly 474.
  • the shipping company may issue a request to check the inventory 478. If the inventory check indicates the item is in stock 480 then a confirmation message 482 can be sent to the customer seeking final verification 486.
  • Decision steps may be included in the workflowto allowfor unusual or unexpected events.
  • a decision block 494 is included to allow for the possibility that an item may not be in stock. If this happens then the workflow may be designed to perhaps request additional information before proceeding or jumping to a different workflow path.
  • the invention helps to define an open market platform system for conducting business-to-business commerce orthe Web.
  • the collaboration system defined herein includes many novel and industrially applicable features, some of which are listed here.
  • the collaboration system provides connectivity to the following: TCP, SNA and OSI TP.
  • the collaboration system products minimize programming, which greatly reduces the development effort required to connect applications.
  • the emphasis is instead on configuration, which not only saves programming costs, but also enables developers to focus on building new e-business applications that will significantly improve their company's competitive edge.
  • the collaboration system provides transparent support for XA- transactions.
  • Message-based EAI products define a transactional unit of workto mean only the guaranteed delivery of a message.
  • a unit of work between integrated applications translates into multiple reads and writes, or if the integrated applications are heterogeneous, there is a strong risk of corrupt or inaccurate data, which can only be avoided by complex programming. This risk is eliminated if applications support XA-transactions and are integrated using the collaboration system because the collaboration system includes a full standards-based transaction manager capability.
  • An E-Transaction embodiment of the invention enables businesses to jointly and successfully accelerate e-commerce strategies in real time, empowering dynamic business-to-business transactions.
  • the invention enables the participation by a business in the process of conducting e-commerce on the Internet with other business collaborators.
  • This approach is significantly different from back-end business transaction systems.
  • the "transactions" are of a business nature and are long running. Indeed, a business transaction may require weeks, months, or even years to complete. The state for such transactions must be kept persistently so as not to lose it during various system failure modes. Thus, a single business transaction can cause one or many back-end database transactions to occur.
  • Traditional business-to-business e-commerce required businesses to agree on a business model for the relationship, a uniform vocabulary, and a messaging technology. With the present invention, that is no longer necessary — the platform is independent of any one business model or vocabulary and uses XML as the standard.
  • the present invention provides an enterprise-class solution in the market that provides zero-latency, end-to-end integration.
  • the collaboration system provides a proven, scalable, and pre-integrated server-based environment for integrating an enterprise's packaged and proprietary enterprise applications, whetherthey reside on the back-office, front office, or on the Web.
  • the collaboration system performance excels in the most demanding, distributed 24x7 environments, and offers a choice of messaging paradigms and pre-packaged application adapters and custom Adapter Development Kit to best solve the business problem at hand.
  • the collaboration system platform migration to XML-based messaging keeps the integration solutions at the forefront of technology.

Abstract

An enterprise wide electronic commerce system allows trading partners (134, 136, 138) to act as participants in a complex trading process. Participants communicate with one another by joining conversations that are hosted in a collaboration space (156) and managed by a collaboration hub (154). In this manner, the enterprise workflow may have an effect on, or be affected by, local workflows. The invention provides an open market collaboration system for enterprise wide electronic commerce. An embodiment of the invention includes a collaboration system that allows the exchange of data between participants in an electronic commerce environment, comprising a collaboration hub (154) for the transfer of data between participants, a collaboration space (156) defining the rules governing said transfer of data and the role of said participants, and a hub transport that allows a participant to send and receive data from the collaboration hub (154) in accordance with the definitions of the collaboration space (156).

Description

OPEN MARKET COLLABORATION SYSTEM FOR ENTERPRISE WIDE ELECTRONIC COMMERCE
COPYRIGHT NOTICE
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document orthe patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
This application claims priority from U.S. provisional patent applications "OPEN MARKET PLATFORM SYSTEM FOR CONDUCTING WEB BASED BUSINESS", Application No. 60/183,067, filed February 16, 2000, incorporated herein by reference and "OPEN MARKET PLATFORM SYSTEM FOR CONDUCTING WEB BASED BUSINESS", Application No. 60/258,804 " filed December 29, 2000, incorporated herein by reference.
Cross-Reference Cases: The following applications are cross-referenced and incorporated herein by reference:
U.S. Application entitled "MESSAGE ROUTING SYSTEM FOR ENTERPRISE WIDE ELECTRONIC COLLABORATION," by Rocky Stewart, Pal Takacsi-Nagy, Timo Metsaportti, and Michael Hyndman, filed February 16, 2001.
U.S. Application entitled "PLUGGABLE HUB SYSTEM FOR ENTERPRISE WIDE ELECTRONIC COLLABORATION," by Rocky Stewart, Pal Takacsi-Nagy, Pascal Hoebanx, Sanjay Dalai, and David Wiser, filed February 16, 2001.
U.S. Application entitled "CONVERSATION MANAGEMENT SYSTEM FOR ENTERPRISE WIDE ELECTRONIC COLLABORATION," by Rocky Stewart, Pal Takacsi-Nagy, Timo Metsaportti, Sanjay Dalai and Pascal Hoebanx, filed February 16, 2001.
U.S. Application entitled "WORKFLOW INTEGRATION SYSTEM FOR ENTERPRISE WIDE ELECTRONIC COLLABORATION," by Rocky Stewart, Pal Takacsi-Nagy, Timo Metsaportti and Adrian Price, filed February 16, 2001.
Field of the Invention:
The present invention relates generally to the transaction of business- to-business commerce using the Web.
Background of the Invention:
To prosper in the Internet economy, a company must be able to streamline its business process, eliminate unnecessary cost, and react quickly to competitive pressures. To support this mandate, information technology (IT) organizations must have the ability to rapidly consolidate systems from newly created or incorporated divisions and, in many cases, to exchange mission-critical information with outsourced partners as a virtual enterprise. New Internet applications must be linked with each enterprise's core technologies to deliver accurate information, solid operational performance, and a satisfactory customer purchase experience. And, whether companies do business on the Web or not, customers expect all businesses to run on Internet time — a rapid pace that calls for seamless, high-performance business operations that can be accomplished only when applications are integrated with each other to create the zero latency enterprise.
The first business issue is the integration of critical business information and logic that reside in enterprise production and legacy systems. Multiple IT systems that are implemented as silos or standalone systems, each addressing particular business issues, should be integrated across the enterprise.
Traditionally, islands of individual applications that need to share data have been integrated in an ac Λocmanner, using homegrown integration and, more recently, Enterprise Application Integration (EAI) toolsets. These hard- coded and point-to-point solutions attempted to address the problem but created an IT nightmare of innumerable spaghetti-like connections between applications. EAI solutions that cobble together a combination of point-to- point interfaces, procedure calls, file transfers, and "e-mail-like" messaging to deliver enterprise-wide data transformation and routing are notoriously high risk.
Further, multiple point-to-point and ad hoc solutions are inherently difficult to deploy and maintain because they lack a centralized management and support for real-time change management. These features are desirable to the management of business processes and the goal of addressing the e- commerce integration environment.
The second business issue is the need to incorporate Web-based, e- commerce applications. The goal of getting on the Web, however, was not a simple one; only new businesses starting from scratch had the luxury of building from the ground up. With substantial IT infrastructures and investments in place, most businesses were faced with having to leverage current information systems and merge them into the e-commerce age. Businesses that are not able to integrate customer-facing Web applications with enterprise systems find that they simply cannot support today's competitive market and customer demands. This is because data is locked away in disparate systems that do not speak the same language, much less speak to each other.
The third business issue is taking full advantage of integrated e- commerce, including the integration of business processes with trading partners. E-Commerce enables companies to enjoy significant savings and increase revenue opportunities by (1) improving service to customers, (2) engaging in just-in-time production, (3) finding more competitive providers of operational goods and production materials, and (4) being able to create new markets quickly. These two objectives — reducing cost and increasing revenue — have always been driving business forces. However, to date, there has been no solution that has provided the key enablers for e-business. Electronic data interchange (EDI) emerged in the 1990s as a standard for exchanging data between companies. EDI is a highly structured, expensive, and time-consuming technology. Packaged solutions have also emerged that claim to solve business-to-business (B2B) dilemmas; however they also require heavy investment in proprietary application technology across all business partners, entail significant configuration expertise, and deliver a hard-coded, pre-packaged process that all parties must adopt. Packaged solutions and EDI deliver very little competitive advantage, are not customizable for differing business processes, and are expensive, time- consuming options.
Most people are familiar with the traditional EDI batch mode type of B2B, and with the more recent electronic store fronts of dot-coms, otherwise referred to as basic commerce. While both EDI and basic commerce provide companies with business advantages that were not previously available — the high costs and technical constraints of implementing EDI and the minimal transaction functionality of basic commerce have limited their adoption as long-term e-business strategies. Community commerce, the third type of B2B e-commerce, features the same characteristics of basic commerce — the simple matching of buyers and sellers online — with perhaps some added functionality, such as auction and search, and the sharing of common information with vertical or community groups. However, these three types of commerce share one common limitation — they do not involve real-time, dynamic conversations between businesses. The sharing of information is in the form of simple point-to-point messages that are not really conversations. While these types of commerce may be sufficient to do things like sharing simple inventory information with suppliers, or posting product catalogs for buyers, these types of commerce have, to date, done little more than simply take information and automate its distribution to participants.
Existing B2B models fall short in meeting modern day requirements.
From EDI and outsourced procurement to supply chain management systems and first-generation online exchanges, companies are feverishly searching out technology that will enable them to quickly, efficiently, and reliably conduct business with trading partners overthe Internet. Unfortunately, companies are discovering that most of these traditional B2B technologies meet only a fraction of their e-business IT requirements. A more comprehensive, powerful and flexible solution is required to successfully meet the challenges of collaborative B2B commerce today.
While EDI offers an advantage over paper-based business transactions, it has traditionally been restricted to large companies with substantial IT budgets and technical resources. EDI typically requires as much as 9-12 months to implement and can be quite costly. Finally, EDI is not real-time or process-driven. Data is batch transmitted, and transactions can be sent out of sequence without system oversight. In some cases, data may not be received at all — creating consternation and confusion on all sides.
Unlike EDI, new B2B solutions are designed to leverage the Internet and technologies such as Java, in order to lower the barriers to entry for trading partners of any size, reduce deployment cycles and cost, and power managed, real-time communication between partners. Recognizing that EDI will continue to be used by many of the world's largest companies because of familiarity and confidence in legacy systems, new Internet-based e-business platforms must also co-exist comfortably with EDI legacy systems. Nonetheless, as the real and opportunity costs of using EDI grow, companies are investing IT resources in Internet-based systems that make more financial and strategic sense.
Another commonly found form of B2B interaction is the use of outsourced e-procurement applications. Web-based purchasing of maintenance, repair, and operation (MRO) supplies — the goods required to run a company but not the materials used in the direct manufacture of a product orthe provision of a service — is becoming more and more common every day. To deliver process efficiencies and cost savings, many companies have outsourced their MRO provisioning to third parties because these goods are non-strategic, low-cost items that can be intermittently purchased in bulk from a pre-established set of suppliers. However, from a technology perspective, outsourced e-procurement is much like EDI in that it increases efficiency over paper-based processes but is also monolithic, inflexible, and requires all participants to adopt a single proprietary application. This does not enable customers to create competitive advantage by streamlining their mainstream purchasing process or doing business any differently than direct competitors. These serious limitations, combined with the fact that MRO vendors typically own all the data associated with using their exchange, mean that most companies are reluctant to consider e-procurement vendors for their core or strategic enterprise functions. In fact, some participants in MRO exchanges may consider e-procurement vendors as potential downstream competition and are careful to limit the scope of business conducted on these sites. Given these factors, while many companies may continue using MRO procurement for a portion of their e-business portfolio, they must still acquire strategictechnology that will encompass MRO exchanges but support larger and more strategic e-business objectives.
Some organizations have implemented B2B solutions as a first-generation online exchanges for e-markets and supply chain management. An e-market maker can be defined as an organization that develops a B2B, Internet-based, e-marketplace of buyers and sellers within a particular industry, geographic region or affinity group. The list of e-market makers is growing larger every day. Although it is indisputable that e-marketplaces in general will power much of e-business tomorrow, supporting a broad variety of collaboration, purchasing sales and trading activities, the majority of them are not delivering on the B2B promise today. A recent research study found that of 600 surveyed exchanges, only 10 provided application integration. A primary goal of B2B and online marketplaces is to reduce human intervention. This goal cannot be achieved unless systems are integrated from end-to-end. E-Markets without back-end integration to a company's enterprise systems significantly reduces the return on investment for e-market makers and participants, and limits that company's opportunities to satisfy customers in new and unique ways. Supply chain transparency, which occurs when e-market makers have increased visibility into a supplier's product availability and delivery information, enables B2C companies to better meet customer demands in real-time and represents a significant source of competitive advantage. The differentiating factor between two supply chains often boils down to which one is better at managing the information float — the time between when data is captured in one place and when it becomes available and actionable elsewhere.
As e-markets continue to proliferate — interconnecting with each other and growing into tomorrow's interconnected e-business "power grid" — they promise to super-charge the B2B network effect. E-businesses need to respond quickly to market demand, and as such look to build not just their own supply chains but also those of their customers and suppliers. These benefits will flow through entire industry segments as information improves, order processing becomes easier, and all parties can begin to rely on getting what they need to meet customer demands in a timely fashion.
Summary of the Invention:
The need to move both operational and customer information at high speed from one end of a distributed enterprise to the other, as well as beyond its firewalls, creates an e-commerce environment that can be adequately addressed only with an end-to-end integration architecture.
E-Business is about competition, and competition is about service speed and quality. Company size and scope are no longer the determining factors for marketplace success, because even very small companies can generate a significant Internet presence. Capturing new business opportunities using the Internet requires business strategies to be developed and implemented in Internet time, and the triumph of speed over size is becoming more apparent everyday. While the key drivers for B2B are speed and competition, collaboration between trading partners is the keyto winning the game. Truly changing the rules requires real-time information exchange, transactional integrity, flexibility to adapt to changing market conditions, and integrated trading relationships between business partners. The stakes are high, and can make or break a company. The rules change daily, as every e-business executive can attest. These are the real e-business challenges. Meeting these challenges requires a different kind of B2B technology that can meet the real demands of collaborative commerce.
As disclosed herein the invention helps to define an open, standards-based, and scalable software platform for dynamic business-to-business collaboration. The software platform may be embodied in various forms of server product, referred to herein as a collaboration server, or may be incorporated into larger scale enterprise collaboration server products referred to herein as collaboration systems. The several benefits provided by the invention include a comprehensive conversation management capability, an Internet based standard, and a pluggable business logic and protocol support.
A primary component of the collaboration system is the collaboration space (c-space). The c-space is an abstraction supporting a single business model, business message protocols, a secure message space, security policies, quality of service policies, and a registered set of business trading partners. The c-space contains message vocabularies, business process models, participant roles, and other e-market metadata that are essential to the creation, deployment, and ongoing maintenance of trading activities. Using the invention, a c-space owner can create any number of concurrent c-spaces, each supporting any number of trading partners. Within a c-space, the invention provides asynchronous XML messaging capabilities to allow loosely coupled communication between trading partners.
The collaboration system further comprises a collaboration hub (c-hub). The c-hub is the execution engine of a c-space, allowing the c-space owner and trading partners to create, route, and manage messages within the trading environment. The c-hub delivers powerful messaging services that are essential to ensuring the security, quality, relevance, and success of conversations across the c-space.
Within the context of B2B e-commerce, well-defined and ordered sets of related messages are exchanged between trading partners. This collective set of messages or "conversation" involving two or more trading partners can often span days, weeks, or even months. As conversations and business processes are initiated, executed and completed, conversation management software tracks and manages these long-living conversations, ensures that they are completed, and orchestrates the overall process execution. Each conversation has a unique context that enables users to manage multiple, concurrent conversations taking place in the c-space. The collaboration system uses such context information to help ensure that messages from one conversation do not get tangled up with messages from another. For example, an individual trading partner may be requesting proposals or negotiating prices with multiple vendors concurrently, and must maintain the integrity and security of each interaction. In one embodiment, the invention comprises a collaboration system that allows the exchange of data between participants in an electronic commerce environment, comprising a collaboration hub for the transfer of data between participants, a collaboration space defining the rules governing said transfer of data and the role of said participants, a hub transport that allows a participant to send and receive data from the collaboration hub in accordance with the definitions of the collaboration space.
Brief Description of the Figures: Figure 1 is an illustration of a collaboration system in accordance with an embodiment of the invention.
Figure 2 is an illustration of a network of collaboration partners in accordance with an embodiment of the invention.
Figure 3 is a schematic of a control hub and trading partners in accordance with an embodiment of the invention.
Figure 4 is an illustration of a c-space creation process. Figure 5 is a schematic of a collaboration system with hub and trading partner enablers in accordance with an embodiment of the invention.
Figure 6 is a schematic of a c-hub in accordance with an embodiment of the invention.
Figure 7 is a flowchart of a message flow process in accordance with an embodiment of the invention.
Figure 8 is a schematic of a c-space in accordance with an embodiment of the invention. Figure 9 is a schematic of a conversation initiation in accordance with an embodiment of the invention. Figures 10-13 are message flow diagrams of an example conversation in accordance with an embodiment of the invention.
Figure 14 is a schematic of a conversation termination process in accordance with an embodiment of the invention. Figure 15 is an illustration of a workflow server design process in accordance with an embodiment of the invention.
Figure 16 is an illustration of a workflow server run time process in accordance with an embodiment of the invention.
Figure 17 is an illustration of a workflow and client interaction in accordance with an embodiment of the invention.
Figure 18 is an illustration of a workflow and enterprise application interaction in accordance with an embodiment of the invention.
Figure 19 is a schematic of a c-hub repository in accordance with an embodiment of the invention. Figure 20 is a flowchart of an enterprise-wide collaboration system deployment process.
Figure 21 is a schematic of a c-hub in accordance with an embodiment of the invention, showing the XOCP routing and filtering mechanisms. Figure 22 is a schematic of an XOCP c-bridge in accordance with an embodiment of the invention.
Figure 23 is a schematic of an XOCP c-gateway in accordance with an embodiment of the invention.
Figure 24 is a schematic of an XOCP c-proxy in accordance with an embodiment of the invention. Figure 25 is an illustration of an XML workflow creation processing using Rational Rose.
Figure 26 is an illustration of a "swim lane" workflow example in accordance with an embodiment of the invention.
Detailed Description of the Preferred Embodiment
End-to-end integration is both an overall architecture and a series of IT solutions that address three key business issues: The integration of critical business information and logic that reside in enterprise production and legacy systems; the desire to incorporate Web-based e-commerce application; and the need to take advantage of integrated e-commerce, including the integration of business precesses with trading partners.
There is a general desire in the industry to develop new infrastructures for new B2B capabilities referred to as collaborative commerce. Collaborative commerce resembles an interactive, managed conference call of buyers and sellers. Real-time conversations among trading partners allow them to actively negotiate and execute business transactions, not just pass along information. Each and every B2B activity should be manageable as a seamless, integrated, and secure business event, regardless of how long this business transaction takes, or how many business parties or IT systems are involved — internally or externally.
The new economy has transformed traditional brick-and-mortar businesses into e-businesses, and this transformation directly affects the way companies collaborate with their customers as well as a multitude of trading partners. As such, e-business is of increasing importance to most companies from the corporation's business perspective, e-business collaboration among trading partners can help speed new products or services to market, improve customer service, reduce inventory and supply chain costs, and ultimately increase shareholder value. From a technology perspective, e-business extends the use of existing, proven IT systems and business processes to include external, disparate systems that are increasingly being accessed over the Internet. As a result, new groups of people, such as customers, suppliers, and distributors — who previously did not have access to these systems — are also directly exposed to the requirements and nuances of how these individual systems and business processes operate. But most importantly, access to these systems brings with it new access to information that was previously unavailable to all but insiders within an organization. With this information comes the ability to collaborate in ways and with partners that were previously unavailable to most parties.
E-Business is a real-time entity: interactive, customer driven, and highly competitive. The e-business winner will be the company — or set of companies — that can quickly and efficiently deliver products and services to partners, customers and end users with tight integration at all points along the value chain. Today's market leaders recognize that e-business is about creating a value proposition so compelling and a business experience so immediate and efficient that all partners and suppliers make doing business over the Internet a standard part of how they do business.
While the key drivers for B2B are speed and competition, collaboration between trading partners is the keyto winning the game. Truly changing the rules requires real-time information exchange, transactional integrity, flexibility to adapt to changing market conditions, and integrated trading relationships between business partners. The stakes are high, and can make or break a company. The rules change daily, as every e-business executive can attest. These are the real e-business challenges. Meeting these challenges requires a different kind of B2B technology that can meet the real demands of collaborative commerce.
Good B2B infrastructure software should be readily configurable and
5 rapidly deployable, while being part of a comprehensive and cohesive e-business solution. It should delivertime-to-market benefits now, with the ability to scale to meet future needs and interoperate with next generation applications. It should scale to handle any volume of B2B transactions, flawlessly and reliably, day-in and day-out, around the globe. It should enable o a company to conceptually manage each and every collaborative commerce activity as a seamless, integrated and secure business event, making the firewall transparent to the business user while leveraging emerging Internet programming standards and security models to empower IT. Finally, this infrastructure should deliver new capabilities to dynamically add or change 5 business partners on the fly, the power to model and manage partner relationships in all of their complexity, and the flexibility to enhance business processes to meet changing market conditions and customer demands.
These are the technology requirements for executing collaborative commerce strategies — and this is the area the present invention targets. As 0 disclosed herein the invention defines an open, standards-based, and scalable software platform for dynamic business-to-business collaboration. The several benefits provided by the invention include:
1. Rapid Time-to-Market: IT execution is critical to companies that 5 must extend their business to trading partners. Whether integrating the supply chain or launching new e-market exchanges, companies need to get into the
B2B game today with technology that is readily configurable for rapid O 01/61544
- 16 - deploy ent — without the need for significant system re-writes, business process reengineering, or negotiation to install a common B2B partner application set. The solution should be easy and relatively inexpensive for partners to integrate in a non-proprietary fashion, with options for leveraging 5 and extending existing investments in electronic data interchange (EDI), B2B applications, and emerging XML messaging standards such as RosettaNet. The system incorporating the invention is dynamic and simple to configure. Trading partners can be dynamically added and removed from the collaboration, helping to rapidly achieve the critical mass essential for o marketplace initiatives — with the flexibility to make revisions as business models and partnerships evolve. Templates, easy-to-use graphical user interfaces designed for the business-level analyst, and configuration tools ensure that businesses can quickly design and execute mission-critical B2B processes. 5
2. Lowered Barriers-to-Entry: Trading partners can rapidly join and participate in an automated manner by simply downloading lightweight software which enables them to participate in trading activities. Additionally, the invention has been designed to provide support for multiple business 0 protocols — to accommodate the diverse needs of multiple industries and diverse communities of trading partners.
3. Reliable, Layered Messaging Platform: Companies typically go-to-market rapidly with their B2B strategies, gaining an initial e-business 5 foothold and then implementing the rest of the technology in phases. Although time pressures are intense, IT recognizes that it is high-risk and costly to invest in piecemeal technologies from multiple vendors that do not work together, cannot scale, and are not readily extensible. Individual e-business IT initiatives ideally fit into a single, comprehensive architecture that allows companies to get into the game quickly, yet be confident that they can successfully incorporate value-added business logic and build an integrated and high-performance B2B platform over time. To accomplish this, the invention provides a robust and reliable messaging platform designed specifically to meet the distributed, heterogeneous and loosely coupled nature of B2B e-commerce. Intelligent message routing and the ability to define the quality of service are an intrinsic part of the messaging platform. Additionally, a layered architecture provides a flexible means of adding new and emerging transport protocols to meet current and future requirements.
4. Comprehensive Conversation Management Capabilities: Complex B2B relationships require open, standards-based process technology that reliably defines and manages the execution of cross-enterprise processes. This process architecture must respect the autonomy of individual trading partners, while allowing the definition and management of common process agreements across trading partners. To be effective, this technology must be flexible enough to manage system-to-system processes as well as seamlessly incorporate humans and real-world interactions into the process. Unlike most B2C transactions which may involve a limited number of participants over a limited number of days (and, in some cases, hours), well-defined B2B interactions or "conversations" between trading partners may take weeks or even months to complete and may involve numerous participants. To meet these requirements, the invention may utilize a variety of sophisticated messaging protocols, including the extensible Open Collaboration Protocol (XOCP) which provides life cycle management of long-living conversations, and ensures the overall execution and completion of business processes.
5. Single Process Platform: While B2B technology must be rapidly deployable; it must also be powerful and flexible enough to support changing processes, evolving partner relationships, and new business models. It must support a variety of configurations ranging from centralized e-market administration to distributed partner-centric workflow integration. It must be straightforward and enable the userto add and change relationships without bringing the system down or compromising the integrity of transactions that are in progress. Embodiments of the invention provide end-to-end e-process management by interfacing with otherthird-party workflow products including the BEA WebLogic Process Integrator, a J2EE-compliant and XML-based process integration engine from BEA Systems Inc., San Jose, California. BEA WebLogic Process Integrator is one example of products that enable the effective, end-to-end management of system and application-based business processes, as well as traditional human-based workflow on both sides of a company's firewall.
6. No Need for Business Process Reengineering: The invention enables the creation of one or many virtual trading communities on the Internet, connecting trading partners in a conceptually free-standing environment with its own defined business processes. This unique design reduces the need for business process reengineering, enabling disparate trading partners to participate in public processes which take place within the e-market while allowing individual trading partners to define, implement and execute distributed, private business processes locally. 7. Internet Standards-Based: B2B is most valuable and effective when it is fully integrated from the back-end systems and extends out across the firewall to trading partners, regardless of the disparate IT systems and processes employed. Adhering to open industry standards such as Java, XML, and HTTP on nonproprietary systems optimizes partners' ability to integrate seamlessly and quickly. Standards-based technology also allows IT to leverage existing skill-sets rather than being forced to invest in something that is proprietary and cannot be replicated. To ensure rapid, efficient integration of partners, embodiments of the invention use a standards-based architecture leverages an HTTP communications protocol for information transportation over the Internet, as well as standards and concepts such as SSL, PKI and J2EE — reducing the need to dedicate internal IT resources to proprietary technologies.
8. Security: With trillions of dollars at stake, B2B commerce systems must support high transaction volumes and varying levels of traffic and throughput. Furthermore, this IT infrastructure must be 100 percent reliable and ensure the integrity and security of all interactions. Today's e-business not only stakes millions in B2B infrastructure and applications, but also puts its reputation with trading partners and customers on the line. Thus, the technology must have a well-designed architecture, and be compliant with the full range of emerging Internet security standards. The invention provides a trusted and secure platform for conducting B2B e-commerce, including built-in Internet security capabilities for data privacy, authorization, authentication, and an infrastructure to support non-repudiation. 9. Pluggable Business Logic and Protocol Support: Embodiments of the invention provide a plug-in architecture for dynamic and intelligent routing of messages. This enables market makers to design and implement business rules that meettheirspecific needs. Additionally, multiple business protocols such as RosettaNet and EDI can exist concurrently in the same deployment — reducing the need for all trading partners to standardize on one particular protocol. The invention also provides a flexible framework for rapidly implementing custom business logic that may be required to maintain a competitive advantage.
10. Proven, Scalable Technology: As B2B infrastructure vendors consolidate, it is increasingly critical to ensure that you will be fully supported by a strategic partneryou can count on 24-hours a day, seven days a week, around the globe and well into the future. Embodiments of the invention can be designed to run on industry-leading transaction servers such as BEA WebLogic Server from BEA Systems, Inc., San Jose, California.
11. Interoperability: The invention uses an open and flexible architecture that can interoperate and leverage existing investments in EAI/B2B technologies as well as enterprise databases, Supply Chain Management (SCM), Customer Relationship Management (CRM), and mainframe systems. The invention also enables explanation of Common Object Request Broker Architecture (CORBA), Enterprise JavaBeans (EJB), Tuxedo, and COM+ applications. This inherent flexibility provides a highly scalable and adaptable platform for the development and deployment of future B2B initiatives. Glossary of Terms
DUNS — Data Universal Numbering System. A distinctive nine-digit identification sequence that is an internationally recognized common company identifier in global electronic commerce transactions.
PIP — Partner Interface Process. A protocol provided by RosettaNet that specifies the business messages exchanged, their vocabulary, and how to validate them. A number of these protocols have been defined for various types of business transactions (e.g.: TransferShoppingCart, QueryOrderStatus, etc.)
RosettaNet — Depending on its use in context, RosettaNet is either of the following definitions: An independent, non-profit consortium that is defining standard electronic business interfaces; or the business and transport protocol specified by this group.
XOCP — XML Open Collaboration Protocol. A protocol used by the collaboration serverthat provides more complete life cycle and management support for business interactions. XOCP is described in more detail later in this document.
Collaboration System
Roughly described, the invention comprises a collaboration server, which may itself be a component of a larger collaboration system. Figure 1 shows an embodiment of the invention. As shown therein, a collaboration system in accordance with an embodiment of the invention includes a transaction in application server 102 operating as a base. Examples of transaction servers which may be used with the invention include the WebLogic Server product from BEA Systems, Inc., San Jose, California. The transaction server provides an application infrastructure upon which the collaboration system resides. Other transaction servers may be used. The application infrastructure ensures overall system availability, scalability, and security through the use of transaction processing, persistence, threading and components.
Atop the collaboration system sits a business process and workflow server 104. Examples of workflow servers that may be used with the invention include the WebLogic Process Integrator product from BEA Systems, Inc. The workflow server allows a company to define their business processes as a workflow. The workflow may take into account all aspects of a company's business from start to finish, including, for example, manufacturing processes, purchasing, sales, financial processes, etc. A key attribute of a workflow is that it be dynamic, flexible and configurable, i.e. that it may be readily modified to reflect a company's changing business model, to add new elements such as new product lines, and to account for new events as they occur. The workflow server also acts as an interface for a company's business application to plug into and utilize the workflow. Business application may include, for example, catalog management 106, dynamic pricing 108, order management 110, logistics 112, and payment applications 114.
In one embodiment of the invention, sandwiched between the application infrastructure server and the workflow server lies the collaboration server 116. The collaboration server is a key component in creating a collaboration system, and in bringing workflow management to the enterprise. The collaboration server allows separate companies, herein referred to as trading partners, to collaborate on complex tasks or projects. Such collaboration may extend, for example, to complex business projects, manufacturing processes, or logistical tasks encompassing many companies spread over many countries. As such, the collaboration server acts as part of a collaboration system to allow globally dispersed trading partners to share information and resources, and to work towards a common goal.
A key attribute of the collaboration server is the ability to interface with workflow processes running on a workflow server. To this end the collaboration server must be able to control the flow of information into and out of the workflows maintained by the workflow server. For collaboration among different companies the collaboration server must be able to do this for many workflows, and many workflow servers, and must be able to perform this task simultaneously, equally, and reliably. The collaboration server of the invention does this by means of a sophisticated routing and filtering mechanism. Messages from different trading partners, or in some instances the workflows of different trading partners, are filtered by the collaboration server, and routed to the appropriate recipients in a true collaborative fashion.
Figure 2 illustrates a real-world example of how the invention may be used. As shown in this particular example, a manufacturer may employ the invention to create a collaboration system. The manufacturer 122 is responsible for maintaining and administering the system which may include an application server, a workflow server, and a collaboration server. In combination, these collaborative components may act as a trading hub or clearing house f ortrading partners to collaborate with the manufacturer. As shown in Figure 2, suppliers 124 and distributors 126 that act as trading partners with the manufacturer may participate in the collaborative process. Each of these entities may have their own workflow servers and workflow processes that may interact with the manufacturer's workflow process. Other entities, for example a logistics partner 128, may participate in the collaboration system without any need fortheirown workflow server. As may be seen, a particular entity or trading partner need not have its own workflow process to take part in a collaboration system, but in those instances where the trading partner does have its own workflow, the invention can make use of it and integrate (at least portions of) it into the collaborative enterprise workflow.
Figure 3 shows an initial step in preparing the invention for use in an enterprise. A company wishing to use the collaboration system must first develop a central point 132 or hub at which to build the collaboration system, and identify the trading partners 134, 136, 138 that will participate in the collaboration system. Typically, the hub is developed and maintained by a large manufacturer who may wish to streamline their materials procurement and manufacturing processes, but the invention is not limited to such users, and indeed the collaboration system and c-hub may be built by any entity including suppliers, resellers, distributors, logistics providers, purchasers, market makers, e-portal providers, and others. The trading partners may likewise be any of these entities or anyone else interested in participating in a complex e-commerce business project.
The development of the collaboration space is shown in Figure 4. A company must first decides on the business purpose of the c-space, define a vocabulary, and a set of protocols, and provide a specification. Figure 5 shows the installation of the c-space into the collaboration system. The central collaboration provider installs a collaboration hub, or c-hub 154, most likely at their place of business but the c-hub can be installed anywhere geographically, such is the benefit of a global e-commerce solution. The c-hub controls a collaboration space, ore-space 156 - an abstract structure wherein collaboration messages are transmitted back and forth between trading partners in a continuous conversation-like manner. Trading partners use collaboration enablers, orc-enablers 158, software applications allowing them to send messages to, and receive messages from, the c-hub. The enablers may also interface with workflow processes and servers at the trading partners' location so that such messages are generated and received automatically. The messages can be in any format - the invention is designed to be flexible in the type of messaging the c-hub understands. For standardization purposes and to ensure the widest usage of the invention, in one embodiment industry standard XML messages can be used. The enabler may then send and receive such XML messages to and from the c-hub by any convenient means, including the Internet. In this manner the invention allows geographically distant trading partners to communicate workflow processes easily, with minimal communication cost, and with little or no change in their current workflow technology.
Collaboration System Architecture
In one embodiment the collaboration system may utilize many components, including:
• a c-hub
• a c-space
• a conversation manager
• a c-space enabler (enabler) • a workflow integrator (workflow server) Not all of these components need be installed centrally, on the same server, and indeed the c-space enabler is more likely to be installed at a remote trading partner location than at any central hub location. The c-space enabler, or simply the enabler, is however an important part of the enterprise- wide collaboration solution. Other components, such as the workflow integrator are optional, and while not necessary for participation in the collaboration network, greatly increase the potential benefits to any company or participant using a workflow to model their business processes.
Collaboration Hub (C-hub)
The c-hub is the centerpiece of the collaboration server. It is responsible for routing messages between various c-enabler components and for managing the lif ecycle of the various conversations between the participating trading partners. The invention uses a c-hub which provides the following functionality:
• A modular hub: The c-hub allows for the easy addition of code at various well-defined points.
• Logic Plug-Ins: At well-defined plug-in points, customers may be allowed to introduce their own code. These plug-ins, referred to as "Logic Plug-Ins", allowthe customerto provide additional processing of the information passing through the c-hub.
• Protocol Plug-ins: An extended type of Logic Plug-In is a "business protocol plug-in", which provides support for various business protocols other than the out-of-the-box XOCP support such as the RosettaNet router.
• URLs for e-spaces: To support the use of c-spaces by non-XOCP business protocols, in one embodiment all c-spaces require a unique URL per business protocol supported by that c-space. Thisallowsthe c-hub to unambiguously identify the proper c-space and business protocol of incoming messages.
• RosettaNet Protocol Plug-in: A special business protocol plug-in that allows the c-hub to function as a router for RosettaNet (non-XOCP) business conversations.
Figure 6 shows the c-hub architecture, as well as the normal flow of business messages through the c-hub: This is a somewhat simplified layout that will be expanded upon later. However, it provides the overall picture of the c-hub. The important points to note are:
• The central c-hub components (transport 174, scheduler 178, and router 182) make up an integrated infrastructure.
• The decoder 176, encoder 186, conversation manager 190, and repository 192 components may be made available for customers to change or access.
• The router 180 and filter 184 components are customizable by the customer. The invention provides default implementations forXOCP and RosettaNet support. • Multiple components (or "chains") in each quadrant are allowed.
The message flow through the c-hub begins with an incoming message 172 from a trading partner via proceeds to the hub router, and then proceeds down as an outgoing message 188 to the recipient trading partner or partners, as indicated by the arrows. The two sides of Figure 6 are usually described from the perspective of the client ortrading partnerand are herein referred to as the publish side (left side) and receive side (right side). The main characteristics and contractual obligations of each component are illustrated in the flowchart Figure 7 and can be summarized as follows:
1. The C-hub Transport 194:
The incoming message is read and routed to an appropriate decoder chain based on the message protocol (e.g.: XOCP, RosettaNet, cXML, etc.).
In one embodiment, that defines c-spaces in terms of URL's, the URL on which the message is received serves to identify both the protocol being used and the destination c-space.
2. The Decoder chain 196:
Any protocol-specific headers in the message are processed by the decoder and the appropriate business protocol handler is assigned. The sending trading partner is also identified. The sending trading partner is then enlisted in a conversation, and a reply is prepared to be returned to the sender.
3. The C-hub Scheduler 198: The message is stored for subsequent retrieval.
4. The Router Chain 200:
The trading partners to whom this message should be routed are determined. Logic Plug-Ins can add or remove recipients from this list.
5. The C-hub Router 202: Final validation of the message recipients is performed, and the message is stored for delivery to the targeted trading partners.
6. Filter chain 204: A message destined for a single trading partner recipient is received and a decision is made on whether to send the message. Filter logic plug-ins may be used to add or remove this message from this recipient's receive mechanism.
7. The C-hub Scheduler 206:
Internal operations relating to quality of service issues, conversation management, etc. are performed if the message is still schedules for sending to a recipient.
8. Encoder chain 208:
The encoder performs any transportation of the message required to support the business protocol of the recipient.
9. C-hub Transport 210: The C-hub transport layer sends the message to the trading partner recipient.
For each module chain, the main responsibility is as indicated above.
This contract must be fulfilled in orderto ensure proper message processing and delivery. As long as the contract is fulfilled, other modules in the chain are relatively unencumbered in terms of the processing that they may be required to provide. Collaboration Space (C-space)
A primary component of the invention is the c-space. Figure 8 shows an example of a c-space 212 shared by many buyers, sellers and other entities. The c-space is an abstraction supporting a single business model, business message protocols, a secure message space, security policies, quality of service policies, and a registered set of business trading partners. The c-space contains message vocabularies, business process models, participant roles, and other e-market metadata that are essential to the creation, deployment, and ongoing maintenance of trading activities. Using the invention, a c-space owner 214 can create any number of concurrent c-spaces, each supporting any number of trading partners. Within a c-space, the invention provides asynchronous XML messaging capabilities to allow loosely coupled communication between trading partners 216, 218. This model leverages routing and filter functionality that can be associated with messages in order to classify the set of trading partners that should receive a message, allowing partners and their interactions to be managed individually, based on their role or trading preferences within an e-market.
The c-hub is the execution engine of a c-space, allowing the c-space owner and trading partners to create, route, and manage messages within the trading environment. To facilitate the execution of business transactions across a disparate base of trading partners, one embodiment of the invention uses XML as its e-business messaging semantic. Figure 5 shows some XML transfer paths between trading partners (using c-enablers), and a trading hub hosting a c-space. Within, as well as outside of a c-space, XML offers tremendous advantages as a universal format for messages passed between trading partners because it provides a common syntax to structure information. However, XML by itself doesn't solve the interoperability problem, as collaborating entities must agree on the semantics of business protocols for this information. The invention is independent of business protocol message vocabulary, so it can support any standards-based or proprietary business protocol or vocabulary. As such the invention delivers the ability to support multiple protocols within the same c-space as well as to extend a c-space through supplemental protocol handlers or business logic plug-ins.
Within the context of B2B e-commerce, well-defined and ordered sets of related messages are exchanged between trading partners. This collective set of messages or "conversation" involving two or more trading partners can often span days, weeks, or even months. To manage these unique conversations, embodiments of the invention implement an extensible Open Collaboration Protocol (XOCP), which provides the ability to specify both the information (vocabulary) and business protocol (process flows) for a given conversation. As conversations and business processes are initiated, executed and completed, conversation management software tracks and manages these long-living conversations, ensures that they are completed, and orchestrates the overall process execution.
The invention allows the powerful business process management and workflow capabilities of workflow server products such as BEA WebLogic Process Integrator to provide the infrastructure to facilitate conversations within the c-space. The innovative architecture allows each trading partner to handle the implementation of their own business process and rules locally, while conforming to the rules of engagement (defined by the global information and business protocols) for a given c-space. Features include: • Transport-protocol independent (for example http/https) Business-protocol independence (cXML, BizTalk, RosettaNet or any proprietary business documents)
Definition of conversations including process and vocabulary definition
Allows definition of quality of service (QOS) parameters for a message (e.g. guaranteed delivery)
Provides a mediated messaging model, with support for both publish and receive filters
Supports user-defined message routing and filtering
Flexibility to apply message or data content transformation
Given the complexity, duration, and volume of business transactions required between trading partners conducting collaborative commerce, an effective solution must provide functionality to address these specific requirements. Unlike traditional solutions, the invention provides a unique approach to managing on-going interactions between individual trading partners as well as the context of each conversation within a c-space.
Conversation Management
Within the context of B2B e-commerce, well-defined and ordered sets of related messages are exchanged between trading partners. This collective set of messages or "conversation" involving two or more trading partners can often span days, weeks, or even months. To manage these unique conversations, embodiments of the intention provide a collaborate system that implements the extensible Open Collaboration Protocol (XOCP) described in furtherdetail below, which provides the ability to specify both the information (vocabulary) and business protocol (process flows) for a given conversation. As conversations and business processes are initiated, executed and completed, Conversation management software tracks and manages these long-living conversations, ensures that they are completed, and orchestrates the overall process execution.
Within the collaborative system defined by the invention the powerful business process management and workflow capabilities of workflow products and workflow servers such as, for example, the BEA WebLogic Process Integrator provides the infrastructure to facilitate conversations within the c-space. Additionally, the invention's innovative architecture allows each trading partner to handle the implementation of their own business process and rules locally, while conforming to the rules of engagement (defined by the global information and business protocols) for a given c-space.
Conversation context is another important aspect of managing conversations within a given c-space. Each conversation has a unique context that enables users to manage multiple, concurrent conversations taking place in the c-space. The collaboration server uses context information to help ensure that messages from one conversation do not get tangled up with messages from another. For example, an individual trading partner may be requesting proposals or negotiating prices with multiple vendors concurrently, and must maintain the integrity and security of each interaction. Figure 9 illustrates a schematic of a conversation lifecycle as managed by the conversation manager. The conversation process is dictated by the actions of three types of participants-conversation initiators, conversation terminators, and regular conversation participants. These roles are fully interchangeable in that a conversation initiator (an initiator) may also act as a conversation terminator (a terminator). Regular conversation participants may become terminators, and so on. Collectively these participants are known as collaborators. Conversations between and amongst the collaborators creates the e-commerce collaboration environment.
As shown in Figure 9, the conversation is first started or initiated 234 by an initiator 232. The conversation then enters an active phase 236. During this phase the actual process of message sending, routing and receiving takes place among the conversation participants. The conversation flow is coordinated by a conversation manager. This role may be played by any of the participants but is usually played by the central participant who is typically also responsible for managing the c-hub and the c-space. The conversation manager is responsible for generating conversation id's, registering participants in the conversation, maintaining the status of the conversation, and delivering conversation abortion or termination messages. As shown in Figure 9, a conversation may end by any of three means -eitherthe conversation is aborted 238, perhaps due to error, or a change in conversation criteria; timed-out 240 due to the conversation period extending beyond its scheduled timeframe; or terminated due to the conversation having achieved its end result 242.
Figures 10-13 illustrate possible steps in the lifecycle of a typical conversation. In Figure 10 the conversation is initiated by an initiator 250. The initiator must begin the collaboration process, start a new collaboration life cycle 258, initiates the flow of messages among the c-space, and then starts the execution and publishing 264 of such messages so that other participants may join in the conversation.
Figure 11 illustrates how a participant joins in the conversation. Having received the first message 268 from the initiator, via the c-space, the participant decides to join in the conversation 272, again through an execute and invoke process. From that point on the participant receives all published messages 280 from the conversation managerthat are intended for delivery fo that particular participant.
Figures 12 and 13 illustrate two alternate means for finishing a conversation. In Figure 12 the terminator communicates to the message publisherthatthe conversation should be terminated 284. The conversation manager clearly kills the conversation and notifies the participants accordingly 288. Figure 13 shows an alternate means of finishing a conversation in which a participant requests that the conversation be aborted 294. The conversation manager then coordinates sending abort messages to all the participants. Abort messages may be sent via a publisher under coordination of the conversation manager.
A primary difference between the two means of conversation finishing illustrated in Figures 12 and 13 is that conversation termination normally occurs as a result of a successful outcome to the conversation among the conversation participants, whereas conversation abortion is usually used as an instantaneous interruption mechanism that does not normally produce a successful outcome. Figure 14 illustrates a compensation mechanism that may be used to rectify unsuccessful outcomes of aborted conversations. A business compensation routine 308 is used to signify that two participants 302, 304 may participate in a conversation on an equal basis, i.e. they provide equal input to the enterprise workflow. If one participant which is currently taking part in a conversation receives a conversation abort message 306, the compensating participant may take its place, depending on the reasons that caused the original abort message. If the entire conversation was aborted, then there may be no conversation for the compensating participant to join. URL Accessible C-spaces
C-spaces are a useful, but generally XOCP-specif ic, concept. Most existing standard business protocols like RosettaNet and cXML do not use the concept of c-spaces or partitioning. Many of these protocols are point-to-point oriented, and do not even have the concept of multi-cast. To increase accessibility and ease of integration, embodiments of the invention preserve the c-space concept for XOCP, and introduce it for non-XOCP business protocols. In order identify a particular c-space and a business protocol, each c-space/business-protocol combination may have a unique uniform resource locator (URL). Aclientcan use this URL in orderto access a particular c-space using a particular business protocol. This also allows a single c-space to support multiple business protocols by using multiple URLs.
A c-space might have more than one URL to help identify special additional processing that may be required to support multiple business protocols or to handle variations in business protocol implementations. For example, a c-space may have a RosettaNet orientation, but participants may be using RosettaNet implementations from different vendors. Variations in the different implementations can affect howthe decoder needs to process the information for routing purposes. One way to handle such a situation is to have a single decodertry to apply some heuristics to determine from which protocol variation a message is being received, and then process the message accordingly.
An alternative solution is to have the c-hub provider assign a separate URLfor clients using each of these variations within a single c-space. In this approach, each message can then be routed to the specific Decoder that knows exactly how to handle the type of message being received. Th rough the use of different URLs, a single c-space can support multiple protocols. These protocols can be quite dissimilar (e.g.: RosettaNet and XOCP).
Collaboration Enabler
In accordance with one embodiment of the invention a Collaboration Enabler (c-enabler) is a lightweight, readily downloadable software that enables a trading partner to participate in a c-space. A trading partner must be identified and authorized by the c-space owner or administration in order to activate the c-enabler and actively participate in a c-space. One of the security protocols supported the system is the X.509 certificate, which can be authorized by the c-space administration and granted by a Certificate Authority. The trading partner can then be authorized by the c-space administration (based on conversation types, business documents, and roles) to participate in a particular c-space. Like the c-hub, the c-enablercan easily integrate with applications running on other application servers and reduces the barrier-to-entry for trading partners who want to participate in the c-space.
In one embodiment, the minimum configuration requirementto run the c-enabler maybe designed to run on a servlet engine, for example the BEA WebLogic Express servlet engine. For complex B2B scenarios, many organizations may benefit from the use of a robust process management tool such as BEA WebLogic Process Integrator, a workflow server and integration product described in detail below, which runs on BEA WebLogic Server. Workflow Integration
Workflow products and servers may be integrated with embodiments of the invention to manage complex e-business processes between multiple trading partners. Together they provide a federated process model among trading partners, where market processes are defined globally but deployed in a distributed manner with local processes being modeled and executed at each trading partner's site. The invention provides the overall management and coordination of these distributed processes as part of the product's conversation management functionality. Workflow server products such as BEA WebLogic Process Integrator from BEA Systems, Inc. provide the ability to graphically model partner-based business processes. This tool also provides graphical design functionality for open business processes such as RosettaNet Partner Interface Processes (PIPs), which govern processes across the global information technology supply chain. RosettaNet PIPs enable companies to deploy standards-based, interoperable applications for supply-chain functions and to optimize networks of suppliers, manufacturers, and distributors.
While collaborative commerce is driven by the desire to automate and streamline e-business processes, one can not completely eliminate the ability to involve humans in the execution of e-business processes. Unlike other B2B platforms, the invention's process capabilities provide the ability to define and direct e-business process exceptions to human users for resolution. The combination of a collaboration server and a workflow server in one collaboration system also delivers unparalleled flexibility to drive and integrate cross-enterprise collaborative processes, enterprise applications, and transactions on either side of the firewall using a single process technology.
Integration Server Figure 15 illustrates schematically the architecture of a typical workflow server. Although the workflow server shown here is a Weblogic Process Integrator server from BEA Systems, Inc., the key elements are common to many workflow server, and the invention is flexible enough to work with any similar product. As shown in Figure 15, the workflow server must first be initialized (at design time) to have a workflow. This is typically done by creating a new workflow template 320, and using this template to define an XML document 322. The company then defines a set of business operations 324 and stores these with the templates in a workflow template database 326. At run time, shown in Figure 16, enterprise applications start workflow instances based on the saved workflow templates. The workflow server executes these instances to effect the workflow 330, and as a result affect other business operations, enterprise applications and backend systems. The workflow instances, and hence the communications between the enterprise applications and the workflow server, use an XML format. This allows for portability and ease of integration with other systems.
The workflow server process engine 340 may thus communicate directly with a worklist client, shown in Figure 17. This may be a local application working within the local workflow and accepting or sending workflow process messages directly to the workflow. The workflow server process may also communicate with enterprise components 342, using XML 344, RMI and EXEC, among others. As shown in Figure 18 the workflow server340 includes the ability to both send and receive XML messages 346 related to its workflow. This is how it communicates with the collaboration server, or the collaboration system as a whole. More particularly, the workflow server can pass messages to the c-enabler by XML, which then communicates these messages to the c-hub. Messages from the c-hub are then similarly passed by the c-enabler to the workflow server, again in XML format. In this manner, not only can the workflow server affect the enterprise workflow operating on the enterprise level, but the enterprise level workflow may also affect the workflow operating at the local level. This is the true measure of collaborative e-commerce.
Business Protocol and Logic Plug-Ins
Evolving business models on the Internet require the flexibility to measure business performance in many different ways. Business Logic Plug-Ins allow the c-space owner to add unique functionality to a c-space such as auditing, billing, or invoking complex business rules. For example, the c-space owner may have a business model that requires them to bill or audit based on the content, volume, number of recipients, etc. of messages, which have been mediated by a c-space. Additionally, while the Internet has provided companies with the ability to do business with nearly anyone that they want to — this might not always be desired. Using the Business Logic Plugins and complex business rules, filtering functionality can be used to enable individual trading partners to decide whether or not they want to receive a particular message (or perhaps any message) from a particular trading partner. For example, a trading partner may not wantto receive a "request for proposal" message forfewer than 5,000 units. In this case, a filter would be used to reject any request for 4,999 or fewer units. Conversely, routing functionality can be used by a c-space owner to add to or delete trading partners from the recipient list for a particular message. This could be used to tailor the list to a relevant, desired set of recipients — or expand it in order to increase the chance of finding an appropriate "buyer" or "seller".
Logic Plug-ins
Logic Plug-Ins is the term used to describe the individual components or modules in the chains shown in the preceding c-hub architectural overview. Each chain, as a whole, has an obligation to satisfy its respective contract, described earlier. However, as long as the contract is satisfied, the other modules in the chain are free to do additional processing.
Logic Plug-Ins can be "chained" so that, after one Logic Plug-In is finished running, the next sequential Logic Plug-In of this type will normally be activated. Each successive Logic Plug-In will be able to access the changes, if any, to modified message information.
The following list illustrates the types of additional processing (sometimes referred to as rules) that can be performed by modules in a chain:
• Route modification
• Content modification
• Examination
• The ability to "Reroute on Error"
Publish-Side and Receive-Side filters (described in further detail below) are special route modification Logic Plug-Ins placed in the Router and Filter chains, respectively. Either the c-hub owner or the trading partner or both can specify these filters. The Publish-Side filter is used by the sending trading partner orthe c-hub owner to specify a list of target trading partner recipients forthe message being sent. This filter, a router Logic Plug-In, may add to, remove from, or not change the current list of recipients. This list of recipients is still subject to validation by the c-hub Router. The Receive-Side filter is used by the receiving trading partner orthe c-hub owner to determine whether or not the message should be sent to the specified recipient. It must provide a "yes" or "no" decision as to whether to send the document to the specified trading partner recipient.
Business Protocol Plug-Ins
Someone who writes a business protocol plug-in needs to implement the full suite of Decoder, Router, Filter, and Encoder Logic Plug-Ins in the c-hub. This is required in order to provide the message processing capabilities necessary to pass a message from a sender, through the c-hub, to zero or more recipients. In addition, a conversation manager is required to handle the basic message processing capabilities needed to route a message. A business protocol plug-in developer should provide:
1. Protocol and Plug-In implementations: This will handle message-specific processing needs, such as finding the trading partner information in the message.
2. A conversation manager implementation: This will handle conversation needs, such as finding out whether there are any recipients available for the given message. 3. Repository information: The c-hub repository will need to have information that allows the protocol plug-in to provide the necessary support, including such things as conversation names, DTDs, business identifiers, and so on.
Repository
The c-hub stores all the information it needs to manage a c-space in a c-hub repository. Figure 19 represents the c-hub repository needs as a hybrid based on a block layout that is repository-oriented. This indicates the type of information required to configure the c-hub in orderto provide support for multiple protocols within a c-space, URLs for protocols, and Logic Plug-Ins. This information may include the c-hub 510, the c-space 512, the business protocol used 514, the conversation identifier 516, the sender identifier 518, the trading partner identifiers 520, 524, together with any extended property sets 522, 526, the message identifier 528, and in some instances a portion of the message itself 530.
The fields used in one embodiment of the invention include the following:
//c- ub/cspace/business-protocol :
Each c-space supports one or more identified business protocols. The name is a logical name for a protocol defined in the Business Protocol Def .
//c-hub/cspace/business-protocol@url :
Each business protocol must specify a URL to be used to connect to the decoder for that c-space.
//c-hub/business-protocol-def : The definition of a business protocol that is used in one or more c-spaces.
//c-hub/business-protocol-def /decoder :
This specifies the chain of decoders to be used when processing a message. These are logical names for Logic Plug-Ins defined elsewhere.
At least one of these is responsible forf ulf illing the responsibility for this type of Logic Plug-In and this business protocol. The Logic Plug-Ins in the chain will be processed in the specified sequence.
//c-hub/business-protocol-def /router :
This specifies the router chain, which is analogous to the decoder chain described previously.
//c-hub/business-protocol-def /filter: This specifies the filter chain, which is analogous to the decoder chain described previously.
//c-hub/business-protocol-def /encoder :
This specifies the encoder chain, which is analogous to the decoder chain described previously.
//c-hub/business-protocol-def/java-class:
The Java class specifying the implementation of this particular protocol.
//c-hub/business-protocol-def/init-params:
When the business protocol is loaded and initialized, its init(...) method will be invoked with a hash table of the name-value pairs specified in the following elements. //c-hub/business-protocol-def/init-params/name:
The "name" part of a name-value initialization pair.
//c-hub/business-protocol-def/init-params/value: The "value" part of a name-value initialization pair.
//c-hub/user-exit-def :
This provides a concrete definition for a Logic Plug-In specified by a logical name.
//c-hub/user-exit-def/document:
Zero or more DTDs used by the Logic Plug-In. These are the logical names for DTDs defined elsewhere in the Collaboration Server repository as Documents. The main decoder Logic Plug-In will frequently require one or more DTDs for non-XOCP protocols.
//c-hub/user-exit-def/java-class :
The Java class specifying the implementation of this particular Logic Plug-In.
//c-hub/user-exit-def/init-params :
When the Logic Plug-In is loaded and initialized, its init(...) method will be invoked with a hash table of the name-value pairs specified in the following elements.
//c-hub/user-exit-def/init-params/name:
The "name" part of a name-value pair.
//c-hub/user-exit-def/init-params/value:
The "value" part of a name-value pair. / / c-hub/ trading-partner-protocol :
Additional trading partner information needed for non-XOCP business protocol support.
//c-hub/trading-partner-protocol /external -url :
An external URLto where messages should be routed (business message and replies).
//c-hub/trading-partner-protocol /business-identifier:
A business identifier to be used by an external trading partner, distinct from the internal The Collaboration Server trading partner name.
//c-hub/trading-partner-protocol /business-identifier/type: The type of the business identifier. For example, for RosettaNet, a "DUNS" number is used. The type names are under control of the c-hub administrator and need to be synchronized with the related business protocol plug-in.
//c-hub/trading-partner-protocol /business-identifier/value: The value of the business identifier, correlated with the business type described earlier. For example, a "DUNS" identifier is a 9-digit number.
Deploying the Collaboration System
The invention provides a comprehensive infrastructure that meets the rigorous technology standards for B2B e-commerce, but keeps the barrier to B2B low for you and your business partners. The following section outlines how a company can rapidly create a c-space and transform traditional trading partners into co-collaborators, using the invention. Figure 20 summarizes the steps required.
1. E-Business Strategy 380: First, based on an e-business strategy, a company must determine the types of business transactions to be conducted and the number of participants or trading partners necessary to achieve critical mass for a c-space. At this point, as owner of the c-space they (the company) identify the trading partners desired for the collaboration, and select the business and information protocols that will be supported.
2. Install the collaboration system 382: The company can then install and configure the c-space hub, and establish one or more XML protocols that will be used to facilitate conversations between the trading partners. For instance, they might choose a custom vocabulary and/or an emerging industry standard, such as RosettaNet.
3. Define the Collaboration Process and Trading Partner Roles 384: Next, the c-space owner defines the collaboration process, orthe means in which transactions will be conducted. Outlining "collaborations" involves, in essence, defining the inter- and sometimes intra-company process flows and transaction behavior that will take place within the c-space. Once this is defined, the trading partner roles forthat particular conversation ("buyer" or "seller") are established. The business process models for each role may then created using the graphical design tools provided by the invention. Once the roles have been established, the types of messages that each trading partner can receive can be configured.
4. Test and Deploy the C-space 386: If all components are implemented successfully, the c-space is established and goes live.
5. Downloading the C-enabler 388: Once the business-level relationships are established with trading partners (negotiated in parallel to steps 1-4), trading partners are able to download lightweight c-enabler software, begin the configuration process, and work to understand the processes of a particular c-space. As a part of the configuration, the trading partner must install an X.509 certificate provided by an independent Certification Authority.
6. Request Authorization 390: Once a c-enabler is operational, the trading partner requests and is granted access to particular conversations. At this point, the trading partner may obtain, from the c-space owner, the process model for their respective role in the c-space's global business process. Execution of local process models can also be provided by workflow products such as BEA WebLogic Process Integrator. Each trading partner has the option to configure the local aspects of how BEA WebLogic Process Integrator operates, which may include the execution of actions, routing exceptions to humans or integrating to other enterprise systems.
7. Begin Trading Activities 392: Once local business rules, processes, and actions have been identified and implemented locally at the trading partner's site, the trading partner is ready to begin trading in the c-space and to receive messages relevant to their role in the various processes. The invention provides the c-space owner with the capabilities to add or remove trading partners and re-configure conversation parameters on-the-fly without disrupting the system. Security and Administration
The privacy, security, and verification-of-receipt capabilities of B2B technologies must enable users to maintain proprietary business practices, meet ongoing business demands and maintain an advantage over their competitors. To support these requirements the c-hub can be configured to support a comprehensive set of Internet security features, including:
Privacy: SSL support for ensuring privacy of data over the Internet.
Authentication: Mutual authentication, where trading partners and the c-hub authenticate each other before allowing participation in dynamic collaboration activities. Authentication is based on X.509 certificates obtained from a trusted, third-party Certificate Authority.
Authorization: Access Control Lists and a role-based conversation participation mechanism to ensure authorized access to e-business collaborations and the corresponding messages that exist within in a c-space. Trading partners are authorized for specific roles within a c-space which, along with filtering features, govern the types of messages they can publish and receive.
Nonrepudiation: In some cases, business rules require that a receiver of a business document or message has legally sufficient and persistent proof about the receipt, the content, and the sender of the document — similar to that of a registered letter or notary public in the off-line world. The invention the required infrastructure support for digital signatures, digital receipts, and secure auditing.
Embodiments of the invention also include an administration console, that which allows the c-space owner or designated administrator to configure and manage services and c-spaces using a Web browser. Common administrative functions include managing trading partners (adding or removing trading partners, granting and revoking access to conversations, etc.), configuring messaging services, monitoring on-going conversations, browsing system status (interactions, message delivery, and logs), and generating activity reports.
The administration console offers dynamic management capabilities, which enable the re-configuration of system services on-the-fly, and the addition of new trading partners without disrupting the system . In addition to the Web-based user interface, system management functions are available via administration messages — this allows for automated monitoring and error recovery, and for integration to third-party system management tools.
XPATH Filtering The c-hub routes business protocol messages that are sent between trading partners. The c-hub supports different business protocols, which can be generally classified as XOCP protocols or external protocols:
XML Open Collaboration Protocol (XOCP) is one of the default protocol used by the invention. This protocol is sent and received by trading partners using the c-enabler API. It provides support for conversation life cycle tracking and the management of business interactions by a mediating c-hub. External protocols are business protocols that may be sent by other products and conform to other conventions or standards (such as a RosettaNet message from a Vitoria trading partner). The c-hub determines the business protocol to be processed based on the URL that is specified when a connection is initiated from a trading partner to the c-hub transport layer.
In the XOCP protocol the routing criteria are specified in a separate header of the message protocol. The sender can specify an XPATH router as a component of the message. This XPATH router is a string expression that specifies the intended recipients of the message in a very flexible manner using the XPATH syntax. The c-hub evaluates this XPATH expression after it receives an XOCP message from the sender. Thus, the XOCP protocol enables dynamic routing of the message to target recipients.
The c-hub maintains contextual information about interactions between trading partners (also known as conversation coordination). The XOCP protocol carries the information that enables the c-hub to monitor and maintain the status of the conversation and its participants. Before the c-hub retransmits an XOCP message to a set of target trading partners, it evaluates the XPATH expression against the set of trading partners configured in the repository to determine the routing of the message.
The routing functions of the c-hub may be extended to support additional XPATH expressions defined in the repository, as well as user-defined extended properties that can be referenced to control the routing of messages.
XPATH expressions for routing messages to trading partners is a special feature of the XOCP business protocol. When an application publishes a message using an external protocol (such as RosettaNet), the target recipient is explicitly encoded by the sender in the content of the message. Unlike the XOCP protocol, there is no concept of a mediating c-hub that can dynamically route the message to target recipients - both the sender and the target are completely specified by the external protocol.
Figure 21 illustrates a high level overview of message processing and routing in the collaboration server c-hub. This section primarily addresses the XPATH routing and filtering aspects of the c-hub processing.
The repository provides a pre-defined set of entity definitions (and associated properties) that support conversations between trading partners in a collaboration system using the invention. However, applications need to be able to extend these definitions so that application-specific information can be modeled and stored in the repository.
More specifically, the trading partner information in the repository is extended to support application-defined properties that can be associated with a trading partner. C-hub routing and filtering features can make use of these properties. These extended properties are organized by uniquely named extended-property-sets using the c-hub administration console and associated with one or more trading partners . The extended property sets are modeled in the repository so that they can be retrieved as subtrees within an XML document. These XML subtrees appear in the generated message-context XML document sent to the XPATH routers and filters. The XPATH expressions for the routers and filters can reference these extended properties. The root elements of each extended property set associated with a given trading partner will be inserted as the last children of the <trading-partner> element node. XPATH Routers
C-enabler XPATH routers 402 - These are XPATH routers that are sent by an c-enabler application when publishing a message. The Conversation. publish() method allows a c-enabler application to specify an XPATH router expression when sending a message. This router contains an XPATH expression that selects a subset of <trading-partner> nodes from the message-context XML document generated by the repository. These XPATH router expressions can be extended so that c-enabler applications can select a set of trading partners by including references to application-specific extended properties.
Trading partner XPATH routers 412 - These are routers that are specified by a c-hub administrator in the repository and associated with a sending trading partner. These routers are similar to the c-enabler XPATH routers that are sent with a message, in that they use XPATH expressions to select a subset of target <trading-partner> nodes. For every message sent by a trading partner using an XOCP conversation, the associated XPATH routers for that trading partner are evaluated against a message-context XML document generated by the c-hub for that message. The generated message-context XML document contains information about the sending trading partner, the conversation context, the message context, and a sequence of subtrees containing the XML parts of the business document.
C-hub XPATH routers 410 - These are routers that are specified by a c-hub administrator in the repository and associated with all incoming messages in an XOCP protocol stack. These routers are similar to the trading partner XPATH routers that are sent with a message, but they are evaluated after any c-enabler or trading partner XPATH routers.
A c-hub administrator can specify multiple XPATH routers for the c-hub and for each trading partner using the c-hub administration console. These XPATH routers are stored in the repository. The c-hub administrator specifies the XPATH expression for each router, whether the router should reference the content in the application message parts, and the order in which the XPATH routers should be evaluated for each trading partner and for the c-hub. The message-context XML document that the XPATH expression is evaluated against can be generated with or without expanding the child nodes of the <message-part> element. For large application messages expanding the <message-part> could have a significant performance impact. If an XPATH expression does not reference the content of a message-part then the administrator can specify that the router does not need the message-part to be included.
Each XPATH router expression in the ordered sequence can be configured to replace previous routers (that is, it overrides any routing done by a previous router in the sequence), or it can be configured to append a subset of trading partners to the previous router results. The c-hub XPATH routers are evaluated after all of the sending trading partner XPATH routers.
XPATH Filters
Trading partner XPATH filters 416 - These are filters that are defined by an administrator and associated with a trading partner. Using the c-hub administration console, the administrator defines a filter with an XPATH expression and associates it with a trading partner. When the c-hub routes a message to a trading partner with the XOCP protocol, the XPATH filter is used to examine the message context and determine whether to send the message to the trading partner or not. The XPATH expression is evaluated against a message-context XML document generated by the XOCP filter module. It contains information extracted from the message context and the repository. If the c-hub evaluation of the XPATH expression returns false, then the c-hub does not route the message to the target trading partner. Otherwise, the c-hub processes the message as usual.
C-hub XPATH filters 418 - These are filters that are defined by an administrator and are associated globally with the c-hub for all XOCP messages. Using the c-hub administration console, an administrator defines these filters with an XPATH expression. When the c-hub routes a message to a trading partner in an XOCP protocol c-space, the XPATH filter is used to examine the message context and determine whether to send the message to the trading partner or not. The XPATH expression is evaluated against a message-context XML document generated by the XOCP filter module. It contains information extracted from the message context and the repository. If the c-hub evaluation of the XPATH expression returns false, then the c-hub does not route the message to the target trading partner. Otherwise, the c-hub processes the message as usual.
An administrator can specify multiple XPATH filters for each trading partner and for the c-hub. The c-hub administrator uses the c-hub administration console to specify the order in which the filters should be evaluated for each trading partnerandforthe c-hub. The filters forthe c-hub are evaluated after the filters for a target trading partner. Each filter has an XPATH expression and an indication as to whether to expand the <message-part> element of the message-context XML document.
Each XPATH expression in the configured sequence must evaluate to a Boolean true or false result. If the c-hub evaluation of an XPATH expression evaluates to false, then the c-hub does not send the message to the target trading partner and no further filtering is performed. Otherwise, the c-hub continues to process the XPATH filters until either a subsequent filter in the sequence returns false, or until all filters return true.
The message-context XML document generated for a c-hub or trading partner XPATH filter is almost identical to the document generated for an
XPATH router. The only differences are that the context attribute on the root element is identified as "hub-filter" or "trading-partner-filter", and the set of target <trading-partner> nodes is always just a single occurrence.
Bridges, Gateways and Proxies
Since the invention is designed to be as flexible as possible in facilitating enterprise-wide e-commerce collaboration, the collaboration system may support a number of complex scenarios that extend the reach of the collaborative workflow beyond that described earlier. These scenarios include the use of bridges, gateways, and proxies.
Figure 22 shows an example of a bridge (c-bridge). The c-bridge 424 is used to connect two separate c-spaces 426, 428, and to provide workflow communication between them. Anytrading partner may act as a c- bridge, which may be configured to subscribe to messages from one c- space, transform them to the vocabulary of a second c-space, and then publish the transformed message into the second c-space. This capability provides a simple way of combining business models on the Web. Figure 23 illustrates a c-gateway. The c-gateway 430 can be used to publish messages from a c-space 432 to external system 434, such as Ariba Net. Other c-gateways can be used for other systems, including any that use XML as a message receiving and sending protocol. Figure 24 illustrates a c-proxy. C-proxies 438 may be used to send and receive messages from a c-space 440 to a remote client 442, such as an email system, XSL display device, or a wireless (WAP) device.
RosettaNet Protocol Router A RosettaNet router, using the business protocol plug-in mechanism, allows RosettaNet messages to be routed by the Collaboration Server hub between any two participating RosettaNet clients. The clients supported include "native RosettaNet" clients like Vitoria and webMethods.
An example of a RosettaNet router is shown in Figure 21. The "RosettaNet router" should not be confused with the previous use of "router".
By itself, "router" refers to a Logic Plug-In in a particular chain in the c-hub. "RosettaNet router" refers to the entire RosettaNet protocol set of Logic Plug-Ins, solely oriented toward sending messages from one RosettaNet client to another ("routing"). The RosettaNet router supports the Vitoria and webMethods implementations of external RosettaNet clients. In orderto perform proper routing, the RosettaNet router needs information from the Preamble and Service Header XML components of the RosettaNet object in order to conform to the RosettaNet specifications. This is explained later in the Message Processing section. The out-of-the-box RosettaNet router is intended to comply with the published RosettaNet standard (as detailed in the RosettaNet specification atwww.rosettanet.org, herein incorporated by reference) and is not biased towards any one vendor.
When an RNO (RosettaNet message) is received by The Collaboration Server and sent to the decoder portion 404 of the business protocol for processing the message the following happens: The RNO format is not changed:
The digital signature is not validated. Validation of the digital signature is expected to be done by the receiving trading partner.
Read-only access is required to the document in orderto retrieve the information needed for routing purposes. The generic c-hub RosettaNet router does not modify the document. However, customer-provided Logic
Plug-Ins or business protocol plug-ins might do so.
All of the XML components are processed: the Preamble, the Service Header, and the Service Content.
Because of the above processing, the following information must be valid for the routing to proceed:
RosettaNet Implementation Framework (RNIF) version
RNO content length
MIME multipart structure, including: Content-Type
Boundaries
Valid XML for the Preamble
Valid XML for the Service Header
Well-formed XML for the Service Content
RosettaNet Object Routing and Conversation Information
Routing and conversation information is constructed from parsing the RNO's XML parts. The c-space is determined based on the URL used to access the c-hub. The remaining RNO fields must be valid in form and in how they are used:
//Preamble/Versionldentifier : The R IF version number. The Only
RNIF version that The Collaboration Server will support is "1.1 ".
//ServiceHeader/ProcessControl/ProcessIdenti y/GlobalProcess IndicatorCode : The PIP identifier. This typically has a value like "3A4" and it is used as the conversation name. It must be entered as such in the repository.
//ServiceHeader/ProcessControl/ProcessIdentity/Version dentif ier :
The version of the PIP specification used. This typically has a value like "1.1" and should not to be confused with the RNIF version number. It is used as the version number of this conversation. It must be entered as such in the repository.
//ServiceHeader/ProcessControl/TransactionControl/PartnerRoleRo ute/fromRole/PartnerRoleDescription/GlobalPartnerRoleClassifica tioncode: The "from role" or the role of the sender. This typically has a value like "Buyer" and it is used as the role of the sender in the conversation. It must be entered as such in the repository.
//ServiceHeader/ProcessControl/TransactionControl/PartnerRoleRo ute/toRole/PartnerRoleDescription/GlobalPartnerRoleClassificati oncode : The "to role" or the role of the recipient. This typically has a value like "Seller" and it is used as the role of the recipient in the conversation. It must be entered as such in the repository. / /ServiceHeader/ProcessControl /Trans actionControl/ [ActionContro 1 1 SignalControl ] /PartnerRoute/ fromPartner /PartnerDescription/Bu sinessDescription/GlobalBusinessIdentifier : The business identifier of the sender of this message. For the unique business identifier, RosettaNet specifies use of the 9-digit DUNS number. It must be entered as such in the repository. The business identifier is used to identify the sending trading partner in the conversation.
/ /ServiceHeader/ProcessControl/TransactionControl/ [ActionContro 1 1 SignalControl ] /PartnerRoute/toPartner/PartnerDescription/Busi nessDescription/GlobalBusinessIdentifier : The business identifier Of the recipient of this message. It is similar to the "fromPartner" business identifier. The business identifier identifies the recipient trading partner in the conversation.
/ /ServiceHeader/ProcessControl /Processldentity/ mstanceidentifier: A supposedly unique alphanumeric identifier for this business process, though RosettaNet also states that the initiating partner's business identifier (DUNS number) should be used. These two numbers are combined to form the conversation id, but are only used for monitoring and auditing purposes, not for routing purposes.
/ /ServiceHeader/ProcessControl/ProcessIdentity/initiatingPartne r/GiobaiBusinessidentifier: The initiating partner's business identifier (DUNS number). As stated earlier, this is used to construct the conversation id.
//ServiceContent/thisDocumentldentifier/ProprietaryDocumentlden tifier: The document identifier. This is the initiator. / /ServiceContent/thisMessageldentifier/ProprietaryMessageldenti f ier : This document identifier. This is a follow-on document in the same dialog.
/ /ServiceContent/receivedDocumentldentifier/ProprietaryDocument identifier: The initiating document identifier.
When decoding the RosettaNet message, an additional check can be made that the DUNS identifier of the sender, as retrieved from the message, matches that of the certificate. Since the c-hub is acting as a trusted intermediary, this will validate that the sender is who is claimed before the message is passed on to the recipient. If the match fails, the message will be rejected by the c-hub.
The collaboration server processing layers and business protocols neither generate nor validate any digital signature associated with the message because this is an issue among the various trading partner clients, whereas the c-hub is simply relaying messages. The c-hub only validates based on the SSL certificate.
If a particular business protocol is passing messages that have a digital signature, then the operations that a Logic Plug-In can perform on those message will generally be restricted to read-only unless the Logic Plug-In is allowed to re-sign messages on behalf of the original sender (or has access to the original sender's certificate / private key). However, nothing prevents a hub-provider from introducing Logic Plug-Ins that can validate or generate digital signatures. Replying to the RosettaNet Sender
RosettaNet is a point-to-point protocol, and not prepared to interact with an intermediate hub. There are two main ways to approach the hub issue with RosettaNet - Synchronous and Asynchronous Message Transfer.
Synchronous Message Transfer
In this approach, the sender delivers a message to the c-hub, and the message passes all the way through the c-hub to the recipient, who returns the HTTP status code. The transport layerthen returns that status to the layer initiating the outbound request, which passes it back through the various c-hub layers and eventually to the sender.
Asynchronous Message Transfer
This approach can also be referred to as a "delegated responsibility" model. The c-hub already needs to do about the same level of initial validation that the recipient would need to do. Enough of the lengths and first two XML components need to be checked that the message should make it to the upper protocol-processing layer of the recipient. Inthiscase, it should be acceptable for the c-hub to send back the OK / BAD response after its initial processing. All responses may be logged.
An advantage to this approach is that the message persistence capabilities of the c-hub allow delivery to a recipient that is temporarily unavailable. Many of the problems that may be encountered by the RosettaNet recipient would already have been caught and reported by the c-hub. If the RosettaNet client starts processing the message and encounters errors at the business rule level (message content), a separate out-of-band error reporting mechanism is already provided by RosettaNet, and this can be routed through the c-hub like any other RosettaNet message.
If the c-hub thinks a message is not valid that the recipient might accept, then the hub-provider will have to determine which party is non-compliant, the sender, the c-hub, orthe recipient, and take appropriate action. For example, if it was the c-hub, the RosettaNet router could be modified for different behavior (presumably being less strict in compliance checking).
If the recipient rejects a message that the c-hub accepted, again the hub-provider will probably have to get involved to determine the non-compliant party. However, the recipient would generally respond to the c-hub with a BAD REQUEST message, which the c-hub can log and pass backa RosetttaNet" General Exception" RosettaNet PIPtothe initiatorwith the information.
XML Processing
The RosettaNet router needs important pieces of information from the Preamble and Service Header. This will be parsed with a validating XML parser. An error here will be logged and returned to the sender as a rejected message.
To properly function, the RosettaNet router does not need to fully parse and validate the Service Content portion. The Service Content is the business-specific portion of the message and is more appropriately handled by the receiving client. The information obtained here is for monitoring purposes. Furthermore, to validate the Service Content would require storing over 100 additional RosettaNet PI P DTDs, not including variations that might enter due to trading partner specific customization. The Service Content will be parsed as a "well-formed" document in order to retrieve the few non-essential fields required. If this part is not well-formed, however, the message will be logged and rejected by the c-hub.
For all of the XML parts, specifying an "XPath" expression for the field can retrieve the value for that field. For the Service Content part, the root node should be specified as "ServiceContent", as shown earlier. It will be replace by the appropriate message-specific root node when evaluating the
XPath expression.
The Logic Plug-In mechanism does not preclude the customer from doing their own XML parsing and processing of the Service Content, however. This would allowforfiltering or monitoring based on the content of the Service Content portion of the message. The customer will be responsible for the parsing, however, in order to do the filtering.
The RosettaNet router requires certain fields to be entered in the repository, typically via the administration console. The required additional information includes:
DTD to be able to parse the RosettaNet Preamble DTD to be able to parse the RosettaNet Service Header DUNS for the trading partners participating in RosettaNet conversations. The "Trading Partner Protocol" repository item mentioned earlier is where this information is stored, and can be entered via the administration console.
Appropriate conversation and subscription information forthe trading partners. The conversation information must match the conversation information specified in the RNOs being exchanged, as described earlier. UML Configuring of C-spaces
Extensible Markup Language (XML) is rapidly becoming a key enablerfor EAI and B2B e-commerce. In most EAI and B2B scenarios, the greatest challenge is creating a dynamic free flow of information and knowledge between applications and enterprises. XML provides an open and flexible message format, or common dialect, for structuring information flow between heterogeneous systems.
XML is a metadata language, a language used to define other languages and a universal standard for structuring data. XML is intrinsically extensible and self -describing, and thus supports an extremely flexible and dynamic business environment. XML easily enables the transfer of information across the Internet and between organizations, allowing them to communicate and conduct Dynamic B2B. Dynamic B2B requires technical underpinnings that adapt to changing e-business strategies and can be extended across multiple enterprises, business partners, and diverse applications.
In one embodiment of the invention, using Rational Rose, a c-space can be constructed using the unified modeling language (UML). Figure 25 illustrates the steps required in generating the XML model for use with the c- space. Activity diagrams, state charts, and class diagrams are used to define transaction models between roles, workflow state models, and a message space, respectively 450. The UML models are then used 452 to generate XML and to populate repositories with this information 454. The repositories are read at run-time by the various components of the present system to determine correct behavior 456. Since a configuration information is represented (and stored) in XML, it is possible to use off-the-shelf revision/configu ration management tools to manage changes to the c-space configurations.
The Message Type System is a polymorphic hierarchy of message types. A message type is an abstraction of information that will be shared by transactors (e.g. ORDER, CUSTOMER, PRODUCT etc.). All message types share some common behavior, such as how the encapsulated information (XML) can be manipulated. Therefore the type system implements basic manipulation capabilities (create, read, update, delete) on the base level. Communication Adapter is a notion that abstracts a wire-protocol, such as HTTP, SOAP etc. When a transactor wants to communicate with somebody over a network connection, it needs to instantiate an appropriate adapter object and then pass it's reference to the message object. The content of the message object then becomes a payload of the network message and the adapter takes care of the communication protocol (headers, exceptions, timeouts etc.).
Message factories can be used to create message objects out of incoming network messages. Factories are specific to wire-protocols, not to message types. So, for example HTTPRequestFactory can handle any message that comes over HTTP. If a new message type is added, the existing factory can be leveraged. If support is added for a new wire- protocol, a corresponding factory would be implemented as well.
This embodiment implements a simple workflow engine, which is based on the idea of DFA (deterministic finite automata). The engine is driven by a XML-based flow-language. The schema (DTD) of the language looks that of Listing 2.
<! ELEMENT workflow (state+ )>
<!ATTLIST workflow type CDATA #REQUIRED >
<! ELEMENT state (transition+ )> <!ATTLIST state time_out CDATA #IMPLIΞD state_id CDATA #REQUIRED> <! ELEMENT transition (action )> <!ATTLIST transition rule_id CDATA #IMPLIED message_id CDATA #IMPLIED
State_id CDATA #REQUIRED transition_id CDATA #RΞQUIRED message_type CDATA #IMPLIED timeout CDATA #IMPLIED > <! ELEMENT action EMPTY> <!ATTLIST action rule_id CDATA #IMPLIED action_id CDATA #REQUIRED >
Listing 2
The workflow model is de-centralized, so each transactor executes it's own instance of the engine. The implementation manages multiple contexts simultaneously, so a transactor can be involved in many (but separate) business transactions at the same time. XML is also used for storing the state of a workflow context. This allows this embodiment to re-load the state of a context in a different system. This design has some interesting consequences, for example the system should scale nicely in the WLS cluster environment.
The design process is started by modeling business transaction using Use Case diagram. For the example illustrated in Figure 26 the following roles were identified: customer, dealer, and shipping company. The business transaction is "buy-a-car".
The first step is to break the Use Case into actions, and add those to an activity diagram. The next step is to take the roles from a use case diagram, map those roles to swim lanes of an activity diagram and assign the activities to corresponding swim lanes.
The next step is to define messages that will be delivered and processed by activities.
Configuration files (publish/subscribe), message types etc., can then be generated from those diagrams. It is also possible to model each transactor's DFA by using state chart diagrams and to generate the necessary workflow definitions out of those:
Actions
Request for Information Send Information Place Order Process Order Check Inventory Confirm
Message Types
I nf ormation Req uest
Information
Order
InventoryCheck
InventoryStatus
Confirmation Flows
• "Customer"
• "Dealer
• "Shipping Company"
Figure 26 illustrates an example of a workflow model as prepared using UML, and then generated in XML. The example shown in Figure 26 describes a workflow between a customer 501 , a dealer (or supplier of goods) 503, and a shipping company 504. As presented the workflow resembles a series of "swim lanes" or process flow lanes, with each entity or trading partner having their own "lane". A separate lane is reserved for the publish/subscribe entity 502 which, under control of the conversation manager, is responsible for receiving and sending messages between the various other entities. Referring now to Figure 26, it can be seen that the customer begins the workflow by requesting a catalog 462. The catalog request is sent as a message 464 to the publish/subscribe service. This messaging process, and all other messaging processes indicated in Figure 26 are controlled or coordinated by the conversation manager which is responsible for the flow of messages throughout publish/subscribe "swim lane". The catalog request message is thus sent to the dealer, who responds with a send catalog message 466. Having received the catalog the customer may wish to place an order 470, and a place order message is duly issued 472. The workflow indicates this message should be sent to the shipping company ratherthan the dealer, and so the conversation manager/c-hub routes it accordingly 474. On receipt of the send order message the shipping company may issue a request to check the inventory 478. If the inventory check indicates the item is in stock 480 then a confirmation message 482 can be sent to the customer seeking final verification 486. Decision steps may be included in the workflowto allowfor unusual or unexpected events. In the example shown in Figure 26 a decision block 494 is included to allow for the possibility that an item may not be in stock. If this happens then the workflow may be designed to perhaps request additional information before proceeding or jumping to a different workflow path.
Industrial Applicability: The invention helps to define an open market platform system for conducting business-to-business commerce orthe Web. The collaboration system defined herein includes many novel and industrially applicable features, some of which are listed here.
Mainframe Connectivity
There are tens of thousands of IBM CICS applications hosted on the IBM MVS and VSE operating systems, and deployed on mainframes in every country around the world. Hundreds of the world's largest databases are accessed through IMS on IBM's MVS S/390 platforms. Unlike most EAI vendors, the collaboration system provides the greatest, most robust connectivity to mainframe applications. The collaboration system provides connectivity to the following: TCP, SNA and OSI TP.
Adapter Integration for Major Packaged Applications The collaboration system products minimize programming, which greatly reduces the development effort required to connect applications. The emphasis is instead on configuration, which not only saves programming costs, but also enables developers to focus on building new e-business applications that will significantly improve their company's competitive edge.
Support for XA-Transactions The collaboration system provides transparent support for XA- transactions. Message-based EAI products define a transactional unit of workto mean only the guaranteed delivery of a message. However, if a unit of work between integrated applications translates into multiple reads and writes, or if the integrated applications are heterogeneous, there is a strong risk of corrupt or inaccurate data, which can only be avoided by complex programming. This risk is eliminated if applications support XA-transactions and are integrated using the collaboration system because the collaboration system includes a full standards-based transaction manager capability.
E-Transaction
An E-Transaction embodiment of the invention enables businesses to jointly and successfully accelerate e-commerce strategies in real time, empowering dynamic business-to-business transactions.-
The invention enables the participation by a business in the process of conducting e-commerce on the Internet with other business collaborators. This approach is significantly different from back-end business transaction systems. First, the "transactions" are of a business nature and are long running. Indeed, a business transaction may require weeks, months, or even years to complete. The state for such transactions must be kept persistently so as not to lose it during various system failure modes. Thus, a single business transaction can cause one or many back-end database transactions to occur. Traditional business-to-business e-commerce required businesses to agree on a business model for the relationship, a uniform vocabulary, and a messaging technology. With the present invention, that is no longer necessary — the platform is independent of any one business model or vocabulary and uses XML as the standard.
Zero-Latency And End-to-End Integration
The present invention provides an enterprise-class solution in the market that provides zero-latency, end-to-end integration. From the mainframe to the Web, the collaboration system provides a proven, scalable, and pre-integrated server-based environment for integrating an enterprise's packaged and proprietary enterprise applications, whetherthey reside on the back-office, front office, or on the Web. The collaboration system performance excels in the most demanding, distributed 24x7 environments, and offers a choice of messaging paradigms and pre-packaged application adapters and custom Adapter Development Kit to best solve the business problem at hand. The collaboration system platform migration to XML-based messaging keeps the integration solutions at the forefront of technology.
Other features, aspects and objects of the invention can be obtained from a review of the figures and the claims. It is to be understood that other embodiments of the invention can be developed and fall within the spirit and scope of the invention and claims.
The foregoing description of preferred embodiments of the present invention has been provided for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Obviously, many modifications and variations will be apparent to the practitioner skilled in the art. The embodiments were chosen and described in order to best explain the principles of the invention and its practical application, thereby enabling others skilled in the art to understand the invention for various embodiments and with various modifications that are suited to the particular use contemplated. It is intended that the scope of the invention be defined by the following claims and their equivalence.

Claims

Claims:What is claimed is:
1. A collaboration system that allows the exchange of data between participants in an electronic commerce environment, comprising: a collaboration space defining the rules governing said transfer of data and the role of said participants; a collaboration hub forthe transfer of data between participants; and a hub transport that allows a participant to send and receive data from the collaboration hub in accordance with the definitions of the collaboration space.
2. The collaboration system of claim 1 wherein each participant includes a collaboration enabler wherein said collaboration enabler includes a business logic specified by the participant.
3. The collaboration system of claim 2 wherein the collaboration hub includes a business logic compatible with that of the collaboration enabler.
4. The collaboration system of claim 1 wherein the collaboration hub includes a data logic for intelligent transfer of data according to participant specifications.
5. The collaboration system of claim 2 wherein said collaboration enabler includes an interface to a participant workflow process.
6. The collaboration system of claim 5 wherein said participant workflow process determines the flow of data between the collaboration enabler and the collaboration hub.
7. The collaboration system of claim 6 wherein the workflow process generates XML messages.
8. The collaboration system of claim 1 further comprising: a conversation manager for managing the flow of data between participants.
9. The collaboration system of claim 1 wherein the collaboration space is accessible via the Internet.
10. The collaboration system of claim 9 wherein the collaboration space may be accessed by specifying a uniform resource locator for said collaboration space.
11. A method of allowing participants to exchange data in an electronic commerce environment, comprising the steps of: providing a collaboration space defining the rules governing said transfer of data and the role of said participants; and transferring data between participants at a collaboration hub; allowing a participant to send and receive data from the collaboration hub via a hub transport in accordance with the definitions of the collaboration space.
12. The method of claim 11 wherein each participant includes a collaboration enabler for sending and receiving data via the hub transport, wherein said collaboration enabler includes a business logic specified by the participant.
13. The method of claim 12 wherein the collaboration hub uses business logic compatible with that of the collaboration enabler.
14. The method of claim 11 wherein the collaboration hub uses data logic for intelligent transfer of data according to participant specifications.
15. The method of claim 12 wherein said participant collaboration enabler interfaces with a participant workflow process.
16. The method of claim 15 wherein said participant workflow process determines the flow of data between the collaboration enabler and the collaboration hub.
17. The method of claim 16 including generating XML messages during the worklfow process and transferring them to the collaboration hub.
18. The method of claim 11 further comprising: managing the flow of data as a conversation between participants.
19. The method of claim 11 wherein the collaboration space is accessible via the Internet.
20. The method of claim 19 further comprising: accessing the collaboration space by specifying a uniform resource locator for said collaboration space.
21. The collaboration system of claim 1 further comprising a workflow directing the transfer of data between participants.
22. The collaboration system of claim 21 wherein the workflow includes at least one flow lane for each participant and the action of the workflow is determined by data sent to and received from a first participant flow lane to a second participant flow lane.
23. The collaboration system of claim 22 wherein the workflow is defined by an XML definition.
24. The collaboration system of claim 23, wherein the XML definition is created by a UML modeler.
PCT/US2001/005010 2000-02-16 2001-02-16 Open market collaboration system for enterprise wide electronic commerce WO2001061544A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
AU2001238380A AU2001238380A1 (en) 2000-02-16 2001-02-16 Open market collaboration system for enterprise wide electronic commerce
EP01910812A EP1275055A4 (en) 2000-02-16 2001-02-16 Open market collaboration system for enterprise wide electronic commerce
CA002400438A CA2400438A1 (en) 2000-02-16 2001-02-16 Open market collaboration system for enterprise wide electronic commerce

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US18306700P 2000-02-16 2000-02-16
US60/183,067 2000-02-16
US25880400P 2000-12-29 2000-12-29
US60/258,804 2000-12-29

Publications (2)

Publication Number Publication Date
WO2001061544A1 true WO2001061544A1 (en) 2001-08-23
WO2001061544A9 WO2001061544A9 (en) 2002-10-24

Family

ID=26878719

Family Applications (5)

Application Number Title Priority Date Filing Date
PCT/US2001/004913 WO2001061542A1 (en) 2000-02-16 2001-02-16 Message routing system for enterprise wide electronic collaboration
PCT/US2001/040139 WO2001061596A1 (en) 2000-02-16 2001-02-16 Conversation management system for enterprise wide electronic collaboration
PCT/US2001/040138 WO2001061595A1 (en) 2000-02-16 2001-02-16 Workflow integration system for enterprise wide electronic collaboration
PCT/US2001/005011 WO2001061545A1 (en) 2000-02-16 2001-02-16 Pluggable hub system for enterprise wide electronic collaboration
PCT/US2001/005010 WO2001061544A1 (en) 2000-02-16 2001-02-16 Open market collaboration system for enterprise wide electronic commerce

Family Applications Before (4)

Application Number Title Priority Date Filing Date
PCT/US2001/004913 WO2001061542A1 (en) 2000-02-16 2001-02-16 Message routing system for enterprise wide electronic collaboration
PCT/US2001/040139 WO2001061596A1 (en) 2000-02-16 2001-02-16 Conversation management system for enterprise wide electronic collaboration
PCT/US2001/040138 WO2001061595A1 (en) 2000-02-16 2001-02-16 Workflow integration system for enterprise wide electronic collaboration
PCT/US2001/005011 WO2001061545A1 (en) 2000-02-16 2001-02-16 Pluggable hub system for enterprise wide electronic collaboration

Country Status (5)

Country Link
US (6) US20020019797A1 (en)
EP (4) EP1275055A4 (en)
AU (5) AU2001238381A1 (en)
CA (2) CA2400566A1 (en)
WO (5) WO2001061542A1 (en)

Families Citing this family (520)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7606355B2 (en) * 1998-04-22 2009-10-20 Echarge Corporation Method and apparatus for ordering goods, services and content over an internetwork
US7617240B2 (en) * 1999-05-04 2009-11-10 Accenture Llp Component based task handling during claim processing
US7979382B2 (en) 1999-05-04 2011-07-12 Accenture Global Services Limited Component based information linking during claim processing
US6983258B1 (en) * 1999-06-14 2006-01-03 G.E. Information Services, Inc. Trading information managing system and software including a community management function
US6496851B1 (en) * 1999-08-04 2002-12-17 America Online, Inc. Managing negotiations between users of a computer network by automatically engaging in proposed activity using parameters of counterproposal of other user
AU2001238381A1 (en) * 2000-02-16 2001-08-27 Bea Systems Inc. Pluggable hub system for enterprise wide electronic collaboration
US6996538B2 (en) * 2000-03-07 2006-02-07 Unisone Corporation Inventory control system and methods
US7280973B1 (en) * 2000-03-23 2007-10-09 Sap Ag Value chain optimization system and method
US20010047387A1 (en) * 2000-03-27 2001-11-29 Exoplex, Inc. Systems and methods for providing distributed cross-enterprise portals
US7409671B1 (en) * 2000-04-28 2008-08-05 Microsoft Corporation Model for business workflow processes
US7503033B2 (en) 2000-04-28 2009-03-10 Microsoft Corporation Model for business workflow processes
US7467371B1 (en) 2000-04-28 2008-12-16 Microsoft Corporation Binding for business workflow processes
US6516322B1 (en) 2000-04-28 2003-02-04 Microsoft Corporation XML-based representation of mobile process calculi
US7774219B1 (en) 2000-04-28 2010-08-10 Microsoft Corporation Long running transaction integration with selective dehydration and selective compensation
US7003781B1 (en) * 2000-05-05 2006-02-21 Bristol Technology Inc. Method and apparatus for correlation of events in a distributed multi-system computing environment
US7043457B1 (en) 2000-06-28 2006-05-09 Probuild, Inc. System and method for managing and evaluating network commodities purchasing
US20050010394A1 (en) * 2000-07-27 2005-01-13 Bergeron Heather Ellen Configuring a semantic network to process transactions
US20050033583A1 (en) * 2000-07-27 2005-02-10 Bergeron Heather Ellen Processing transactions using a structured natural language
US20060173672A1 (en) * 2000-07-27 2006-08-03 Bergeron Heather E Processing health care transactions using a semantic network
US20050033605A1 (en) * 2000-07-27 2005-02-10 Bergeron Heather Ellen Configuring a semantic network to process health care transactions
US8600783B2 (en) 2000-08-18 2013-12-03 The Crawford Group, Inc. Business to business computer system for communicating and processing rental car reservations using web services
US7899690B1 (en) 2000-08-18 2011-03-01 The Crawford Group, Inc. Extended web enabled business to business computer system for rental vehicle services
US7873649B2 (en) * 2000-09-07 2011-01-18 Oracle International Corporation Method and mechanism for identifying transaction on a row of data
US6604104B1 (en) * 2000-10-02 2003-08-05 Sbi Scient Inc. System and process for managing data within an operational data store
CA2436636A1 (en) * 2000-12-06 2002-06-13 Waveset Technologies, Inc. System and method for managing information objects
US20030167304A1 (en) * 2000-12-29 2003-09-04 Min Zhu Distributed meeting management
WO2002054264A1 (en) 2000-12-29 2002-07-11 Webex Communications, Inc. Distributed network system architecture for collaborative computing
US6901448B2 (en) * 2000-12-29 2005-05-31 Webex Communications, Inc. Secure communications system for collaborative computing
US7069298B2 (en) * 2000-12-29 2006-06-27 Webex Communications, Inc. Fault-tolerant distributed system for collaborative computing
US7203755B2 (en) * 2000-12-29 2007-04-10 Webex—Communications, Inc. System and method for application sharing in collaborative setting
US20030167302A1 (en) * 2000-12-29 2003-09-04 Min Zhu Scalable distributed network system for collaborative computing
US7562041B2 (en) * 2001-01-09 2009-07-14 International Business Machines Corporation Method and apparatus for facilitating business processes
US20020099735A1 (en) * 2001-01-19 2002-07-25 Schroeder Jonathan E. System and method for conducting electronic commerce
US20020103689A1 (en) * 2001-01-27 2002-08-01 Hornick Randall F. Methods and systems for identifying prospective customers and managing deals
US7430535B2 (en) * 2001-01-27 2008-09-30 General Electric Capital Corporation Methods and systems for identifying prospective customers and managing deals
US7788399B2 (en) * 2001-03-26 2010-08-31 Salesforce.Com, Inc. System and method for mapping of services
US7689711B2 (en) 2001-03-26 2010-03-30 Salesforce.Com, Inc. System and method for routing messages between applications
US7516191B2 (en) * 2001-03-26 2009-04-07 Salesforce.Com, Inc. System and method for invocation of services
US9948644B2 (en) 2001-03-26 2018-04-17 Salesforce.Com, Inc. Routing messages between applications
US6823340B1 (en) * 2001-03-30 2004-11-23 E2Open Llc Private collaborative planning in a many-to-many hub
US7249195B2 (en) 2001-03-30 2007-07-24 Minor Ventures, Llc Apparatus and methods for correlating messages sent between services
US7236939B2 (en) * 2001-03-31 2007-06-26 Hewlett-Packard Development Company, L.P. Peer-to-peer inter-enterprise collaborative process management method and system
US7143190B2 (en) * 2001-04-02 2006-11-28 Irving S. Rappaport Method and system for remotely facilitating the integration of a plurality of dissimilar systems
US9912722B2 (en) 2001-04-02 2018-03-06 Irving S. Rappaport Method and system for facilitating the integration of a plurality of dissimilar systems
US20030023513A1 (en) * 2001-04-06 2003-01-30 Phil Festa E-business systems and methods for diversfied businesses
US6816865B2 (en) * 2001-04-18 2004-11-09 International Business Machines Corporation Process for data driven application integration for B2B
US7373349B2 (en) * 2001-04-18 2008-05-13 International Business Machines Corporation Process for data driven application integration for B2B
JP2002312553A (en) * 2001-04-18 2002-10-25 Hitachi Information Systems Ltd Project cooperation supporting system
US7856420B2 (en) * 2001-04-19 2010-12-21 Hewlett-Packard Development Company, L.P. Zero latency enterprise enriched publish/subscribe
US7254611B1 (en) * 2001-04-24 2007-08-07 E2 Open, Inc. Multi-hub connectivity in a system for collaborative planning
US7134075B2 (en) * 2001-04-26 2006-11-07 International Business Machines Corporation Conversion of documents between XML and processor efficient MXML in content based routing networks
US20030009416A1 (en) * 2001-05-17 2003-01-09 Mara Frank C. Service for managing channel demand
US7464154B2 (en) * 2001-05-18 2008-12-09 Network Resonance, Inc. System, method and computer program product for analyzing data from network-based structured message stream
US7124299B2 (en) * 2001-05-18 2006-10-17 Claymore Systems, Inc. System, method and computer program product for auditing XML messages in a network-based message stream
US7451110B2 (en) * 2001-05-18 2008-11-11 Network Resonance, Inc. System, method and computer program product for providing an efficient trading market
US7936693B2 (en) * 2001-05-18 2011-05-03 Network Resonance, Inc. System, method and computer program product for providing an IP datalink multiplexer
US20020188666A1 (en) * 2001-05-23 2002-12-12 Lemon Michael J. Lightweight dynamic service conversation controller
US7412520B2 (en) * 2001-06-07 2008-08-12 Intel Corporation Systems and methods for recoverable workflow
US7761319B2 (en) * 2001-06-08 2010-07-20 Click Acqusitions, Inc. Supply chain management
US8055527B1 (en) * 2001-06-08 2011-11-08 Servigistics, Inc. Policy based automation for a supply chain
US7536697B2 (en) * 2001-06-19 2009-05-19 Accenture Global Services Gmbh Integrating enterprise support systems
US6957259B1 (en) 2001-06-25 2005-10-18 Bellsouth Intellectual Property Corporation System and method for regulating emails by maintaining, updating and comparing the profile information for the email source to the target email statistics
US7930352B2 (en) * 2001-06-25 2011-04-19 At&T Intellectual Property Ii, L.P. System and method for sorting electronic communications
US7761497B1 (en) * 2001-07-13 2010-07-20 Vignette Software, LLC Storage medium having a manageable file directory structure
US9639547B2 (en) 2001-07-13 2017-05-02 Open Text Sa Ulc Method and system for file-system based caching
US7024452B1 (en) 2001-07-13 2006-04-04 Vignette Corporation Method and system for file-system based caching
US20030055659A1 (en) * 2001-08-02 2003-03-20 Shipley Company, L.L.C. Method and system for facilitating product development processes
WO2003015000A1 (en) * 2001-08-08 2003-02-20 Trivium Systems Inc. Workflow engine for automating business processes in scalable multiprocessor computer platforms
US20030036966A1 (en) * 2001-08-16 2003-02-20 International Business Machines Corporation Computer system, method, and business method for integrating an e-commerce application with a back-end business processing application
US8739112B1 (en) * 2001-08-27 2014-05-27 Goldman, Sachs & Co. Developers' resource portal
US7840934B2 (en) * 2001-08-29 2010-11-23 Hewlett-Packard Development Company, L.P. Method and system for integrating workflow management systems with business-to-business interaction standards
US7447644B2 (en) * 2001-09-12 2008-11-04 Siemens Medical Solutions Usa, Inc. System and user interface for processing healthcare related event information
US20030061232A1 (en) * 2001-09-21 2003-03-27 Dun & Bradstreet Inc. Method and system for processing business data
EP1442411A4 (en) * 2001-09-30 2006-02-01 Realcontacts Ltd Connection service
US7721193B2 (en) 2001-10-18 2010-05-18 Bea Systems, Inc. System and method for implementing a schema object model in application integration
AU2002347930A1 (en) * 2001-10-18 2003-05-12 Vitria Technology, Inc. Model driven collaborative business application development environment and collaborative applications developed therewith
US7269793B2 (en) * 2001-10-19 2007-09-11 Ebs Group Limited Conversational dealing system
US20030084423A1 (en) * 2001-10-26 2003-05-01 Dai Clegg Automatic source code generation
US7516198B1 (en) * 2001-10-30 2009-04-07 Cisco Technology, Inc. Arrangement for providing content-based quality of service for a service flow based on parsing XML tags detected from a server response to a client request
WO2003052553A2 (en) * 2001-12-13 2003-06-26 Waveset Technologies System and method for resource management
US6912551B2 (en) * 2001-12-17 2005-06-28 International Business Machines Corporation System and method for binding processes in an e-commerce HUB
US20030120530A1 (en) * 2001-12-21 2003-06-26 Fabio Casati Method and system for performing a context-dependent service
US20030131120A1 (en) * 2002-01-09 2003-07-10 International Business Machines Corporation Automation and dynamic matching of business to business processes
US20030135553A1 (en) * 2002-01-11 2003-07-17 Ramesh Pendakur Content-based caching and routing of content using subscription information from downstream nodes
US20030154154A1 (en) * 2002-01-30 2003-08-14 Mehmet Sayal Trading partner conversation management method and system
US20030144860A1 (en) * 2002-01-31 2003-07-31 Fabio Casati Dynamic conversation logic selection method and system
US20030187743A1 (en) * 2002-02-07 2003-10-02 International Business Machines Corp. Method and system for process brokering and content integration for collaborative business process management
US7698230B1 (en) * 2002-02-15 2010-04-13 ContractPal, Inc. Transaction architecture utilizing transaction policy statements
US7516447B2 (en) 2002-02-22 2009-04-07 Bea Systems, Inc. Methods and apparatus for building, customizing and using software abstractions of external entities
US6874089B2 (en) * 2002-02-25 2005-03-29 Network Resonance, Inc. System, method and computer program product for guaranteeing electronic transactions
US7769997B2 (en) * 2002-02-25 2010-08-03 Network Resonance, Inc. System, method and computer program product for guaranteeing electronic transactions
GB2385687A (en) * 2002-02-26 2003-08-27 Hewlett Packard Co Apparatus and method for generating a process definition
GB2385755B (en) * 2002-02-26 2005-07-06 Hewlett Packard Co Apparatus and method for data transfer
US20030172007A1 (en) * 2002-03-06 2003-09-11 Helmolt Hans-Ulrich Von Supply chain fulfillment coordination
SG108837A1 (en) * 2002-03-11 2005-02-28 Pi Eta Consulting Co Pte Ltd An enterprise knowledge and information acquisition, management and communications system with intelligent user interfaces
US7373424B2 (en) * 2002-03-28 2008-05-13 Sap Ag Exactly once protocol for message-based collaboration
US20030187718A1 (en) * 2002-03-29 2003-10-02 Stefan Hack Industry information analysis tool
US20030187675A1 (en) * 2002-03-29 2003-10-02 Stefan Hack Business process valuation tool
US20030195765A1 (en) * 2002-04-10 2003-10-16 Mukesh Sehgal Data exchange method and system
AU2003263594A1 (en) * 2002-04-25 2003-11-10 International Business Machines Corporation Collaboration server, collaboration system, session management method thereof, and program
US20040143659A1 (en) * 2002-04-26 2004-07-22 Milliken Russell C. System and method for a scalable notification server providing
US20030204467A1 (en) * 2002-04-26 2003-10-30 Kartha G. Neelakantan System and method for selecting trading partners in an electronic market
US8135772B2 (en) * 2002-05-01 2012-03-13 Oracle International Corporation Single servlets for B2B message routing
US7257645B2 (en) 2002-05-01 2007-08-14 Bea Systems, Inc. System and method for storing large messages
US7526519B2 (en) * 2002-05-01 2009-04-28 Bea Systems, Inc. High availability application view deployment
US20040078440A1 (en) * 2002-05-01 2004-04-22 Tim Potter High availability event topic
US7155438B2 (en) 2002-05-01 2006-12-26 Bea Systems, Inc. High availability for event forwarding
US7350184B2 (en) 2002-05-02 2008-03-25 Bea Systems, Inc. System and method for enterprise application interactions
US7222148B2 (en) 2002-05-02 2007-05-22 Bea Systems, Inc. System and method for providing highly available processing of asynchronous service requests
AU2003228800A1 (en) * 2002-05-02 2003-11-17 Bea Systems, Inc. System and method for electronic business transaction reliability
US7676538B2 (en) 2002-05-02 2010-03-09 Bea Systems, Inc. Systems and methods for application view transactions
US7627631B2 (en) * 2002-05-02 2009-12-01 Bea Systems, Inc. Systems and methods for collaborative business plug-ins
US20040073886A1 (en) * 2002-05-20 2004-04-15 Benafsha Irani Program management lifecycle solution
JP2003345916A (en) * 2002-05-23 2003-12-05 Inst Of Physical & Chemical Res Cooperative work type application service system
US20030220860A1 (en) * 2002-05-24 2003-11-27 Hewlett-Packard Development Company,L.P. Knowledge discovery through an analytic learning cycle
US8108231B2 (en) 2002-06-14 2012-01-31 The Crawford Group, Inc. Method and apparatus for improved customer direct on-line reservation of rental vehicles
US20040039612A1 (en) 2002-06-14 2004-02-26 Neil Fitzgerald Method and apparatus for customer direct on-line reservation of rental vehicles
FI114773B (en) * 2002-06-20 2004-12-15 Nokia Corp A method and apparatus for transmitting activity-based presence information
US7747730B1 (en) 2002-06-28 2010-06-29 Netfuel, Inc. Managing computer network resources
US20040015780A1 (en) * 2002-07-16 2004-01-22 Sven Graupner Position-independent access to data elements in an electronic document
US7653562B2 (en) 2002-07-31 2010-01-26 Sap Aktiengesellschaft Workflow management architecture
EP1535223A2 (en) * 2002-07-31 2005-06-01 Sap Ag Workflow management architecture
US7805327B1 (en) 2002-07-31 2010-09-28 Sap Aktiengesellschaft Transformations between combined and individual workflows
US7729922B2 (en) * 2002-08-15 2010-06-01 Open Invention Network, Llc Dynamic interface between BPSS conversation management and local business management
AU2003257537A1 (en) 2002-08-27 2004-03-19 Nippon Oil Corporation Lubricating composition
US7251787B2 (en) * 2002-08-28 2007-07-31 Siebel Systems, Inc. Method and apparatus for an integrated process modeller
US8028023B2 (en) * 2002-09-17 2011-09-27 At&T Intellecutal Property I, L.P. Extending functionality of instant messaging (IM) systems
US7334043B2 (en) * 2002-09-17 2008-02-19 At&T Delaware Intellectual Property, Inc. Extending functionality of workflow applications using instant messaging (IM)
US7584471B2 (en) * 2002-09-23 2009-09-01 Telefonaktiebolaget L M Ericsson (Publ) Plug-in model
AU2003272809A1 (en) * 2002-10-15 2004-05-04 E2Open Llc Network directory for business process integration of trading partners
MXPA05004988A (en) * 2002-11-08 2005-12-05 Arbitration Forums Inc A system and process for electronic subrogation, inter-organization workflow management, inter-organization transaction processing and optimized web-baser user interaction.
US20040098292A1 (en) * 2002-11-18 2004-05-20 Miller Lynn R. System and method for enabling supplier manufacturing integration
US7689709B2 (en) * 2002-12-13 2010-03-30 Sap Ag Native format tunneling
US20040123246A1 (en) * 2002-12-23 2004-06-24 Ju Wu Apparatus and method for creating new reports from discrete reports
US20040153359A1 (en) * 2003-01-31 2004-08-05 Mein-Kai Ho Integrated supply chain management
US20040154022A1 (en) * 2003-01-31 2004-08-05 International Business Machines Corporation System and method for filtering instant messages by context
US7168077B2 (en) * 2003-01-31 2007-01-23 Handysoft Corporation System and method of executing and controlling workflow processes
WO2004072804A2 (en) 2003-02-10 2004-08-26 Raindance Communications, Inc. Methods and apparatus for providing egalitarian control in a multimedia collaboration session
US8831966B2 (en) * 2003-02-14 2014-09-09 Oracle International Corporation Method for delegated administration
US7591000B2 (en) * 2003-02-14 2009-09-15 Oracle International Corporation System and method for hierarchical role-based entitlements
US7653930B2 (en) * 2003-02-14 2010-01-26 Bea Systems, Inc. Method for role and resource policy management optimization
US6917975B2 (en) * 2003-02-14 2005-07-12 Bea Systems, Inc. Method for role and resource policy management
US20040167915A1 (en) * 2003-02-25 2004-08-26 Bea Systems, Inc. Systems and methods for declaratively transforming data objects between disparate representations
US7584474B2 (en) * 2003-02-25 2009-09-01 Bea Systems, Inc. Systems and methods for transaction chaining
US7774697B2 (en) 2003-02-25 2010-08-10 Bea Systems, Inc. System and method for structuring distributed applications
US7752599B2 (en) 2003-02-25 2010-07-06 Bea Systems Inc. Systems and methods extending an existing programming language with constructs
US7293038B2 (en) 2003-02-25 2007-11-06 Bea Systems, Inc. Systems and methods for client-side filtering of subscribed messages
US8032860B2 (en) 2003-02-26 2011-10-04 Oracle International Corporation Methods for type-independent source code editing
US20050108274A1 (en) * 2003-02-26 2005-05-19 Daniel Selman System and method for web server synchronization
US20040230955A1 (en) * 2003-02-26 2004-11-18 Bea Systems, Inc. System for multi-language debugging
US7650276B2 (en) 2003-02-26 2010-01-19 Bea Systems, Inc. System and method for dynamic data binding in distributed applications
US7707564B2 (en) 2003-02-26 2010-04-27 Bea Systems, Inc. Systems and methods for creating network-based software services using source code annotations
US7539985B2 (en) * 2003-02-26 2009-05-26 Bea Systems, Inc. Systems and methods for dynamic component versioning
US7076772B2 (en) * 2003-02-26 2006-07-11 Bea Systems, Inc. System and method for multi-language extensible compiler framework
US7299454B2 (en) 2003-02-26 2007-11-20 Bea Systems, Inc. Method for multi-language debugging
US20050108682A1 (en) * 2003-02-26 2005-05-19 Bea Systems, Inc. Systems for type-independent source code editing
US20040230679A1 (en) * 2003-02-28 2004-11-18 Bales Christopher E. Systems and methods for portal and web server administration
US7650592B2 (en) 2003-03-01 2010-01-19 Bea Systems, Inc. Systems and methods for multi-view debugging environment
US7360164B2 (en) * 2003-03-03 2008-04-15 Sap Ag Collaboration launchpad
US7603291B2 (en) * 2003-03-14 2009-10-13 Sap Aktiengesellschaft Multi-modal sales applications
US20040204947A1 (en) * 2003-03-28 2004-10-14 Ruicheng Li System and method for generic business scenario management
US7885847B2 (en) * 2003-05-07 2011-02-08 Sap Ag End user oriented workflow approach including structured processing of ad hoc workflows with a collaborative process engine
US8126742B2 (en) 2003-05-09 2012-02-28 Accenture Global Services Limited Automated assignment of insurable events
US7512562B2 (en) 2003-05-22 2009-03-31 International Business Machines Corporation Method for processing conditional payment request in an electronic financial transaction
WO2005008361A2 (en) * 2003-05-23 2005-01-27 E2Open, Inc. Collaborative signal tracking
US20040236644A1 (en) * 2003-05-23 2004-11-25 E2Open Llc Collaborative signal tracking
US7664688B2 (en) 2003-05-23 2010-02-16 E2Open, Inc. Managing information in a multi-hub system for collaborative planning and supply chain management
JP2004355326A (en) * 2003-05-29 2004-12-16 Incs Inc Software development support program, recording medium with the program recorded thereon and software development support system
US20040268321A1 (en) * 2003-06-27 2004-12-30 Kreiner Barrett M System and method for cross-platform computer access
US9177304B2 (en) * 2003-06-27 2015-11-03 Tafmo Australia Pty Ltd. Electronic transaction system
WO2005001725A1 (en) * 2003-06-27 2005-01-06 Tafmo Australia Pty Ltd An electronic transaction system
US7788214B2 (en) * 2003-07-11 2010-08-31 Computer Associates International, Inc. XML configuration technique and graphical user interface (GUI) for managing user data in a plurality of databases
US9317570B2 (en) * 2003-07-11 2016-04-19 Ca, Inc. System and method for managing user data in a plurality of databases
US7926064B2 (en) * 2003-07-11 2011-04-12 Computer Associates Think, Inc. Business transformation logic engine and handlers
US7707548B2 (en) * 2003-07-22 2010-04-27 Verizon Business Global Llc Integration of information distribution systems
EP1664981A4 (en) * 2003-08-22 2012-01-25 Idx Systems Corp Information system supporting customizable user interfaces and process flows
US7483973B2 (en) 2003-08-28 2009-01-27 International Business Machines Corporation Gateway for service oriented state
US7693973B2 (en) * 2003-08-28 2010-04-06 International Business Machines Corporation Pluggable state meta-data processors based on meta information modeling in a service oriented architecture
US20050049974A1 (en) * 2003-08-29 2005-03-03 Ali Jani Credit card payment processing system and method
US7383302B2 (en) * 2003-09-15 2008-06-03 International Business Machines Corporation Method and system for providing a common collaboration framework accessible from within multiple applications
US7797381B2 (en) * 2003-09-19 2010-09-14 International Business Machines Corporation Methods and apparatus for information hyperchain management for on-demand business collaboration
US20050071207A1 (en) * 2003-09-26 2005-03-31 E2Open Llc Visibility and synchronization in a multi tier supply chain model
US8453196B2 (en) 2003-10-14 2013-05-28 Salesforce.Com, Inc. Policy management in an interoperability network
US7904882B2 (en) * 2003-10-16 2011-03-08 Salesforce.Com, Inc. Managing virtual business instances within a computer network
US7424714B2 (en) * 2003-10-17 2008-09-09 Hubin Jiang Mission collaboration system
US7729933B2 (en) * 2003-10-31 2010-06-01 International Business Machines Corporation Decision support activation and management in product life cycles using a context pyramid structure
US20070067373A1 (en) * 2003-11-03 2007-03-22 Steven Higgins Methods and apparatuses to provide mobile applications
US8392226B1 (en) * 2003-11-04 2013-03-05 Viabridge, Inc. Controlling meta-data of information resources
TWI221240B (en) * 2003-11-14 2004-09-21 Via Tech Inc Workflow defining system and workflow managing system
TWI230884B (en) * 2003-11-14 2005-04-11 Via Tech Inc Workflow managing method and recording medium
US7904833B2 (en) * 2003-12-08 2011-03-08 International Business Machines Corporation Electronic commerce GUI for displaying trading partners
US20050132274A1 (en) * 2003-12-11 2005-06-16 International Business Machine Corporation Creating a presentation document
US9378187B2 (en) * 2003-12-11 2016-06-28 International Business Machines Corporation Creating a presentation document
US8140691B2 (en) * 2003-12-12 2012-03-20 International Business Machines Corporation Role-based views access to a workflow weblog
US8825906B2 (en) * 2003-12-12 2014-09-02 International Business Machines Corporation Method and system for named collaborative spaces in a collaborative computing environment
US8423394B2 (en) * 2003-12-12 2013-04-16 International Business Machines Corporation Method for tracking the status of a workflow using weblogs
US8417682B2 (en) * 2003-12-12 2013-04-09 International Business Machines Corporation Visualization of attributes of workflow weblogs
US20050149342A1 (en) * 2003-12-24 2005-07-07 International Business Machines Corporation Method and apparatus for creating and customizing plug-in business collaboration protocols
US20050198121A1 (en) * 2004-01-07 2005-09-08 Daniels Robert W. Vertical enterprise system
US7430707B2 (en) 2004-01-13 2008-09-30 International Business Machines Corporation Differential dynamic content delivery with device controlling action
US8499232B2 (en) 2004-01-13 2013-07-30 International Business Machines Corporation Differential dynamic content delivery with a participant alterable session copy of a user profile
US7890848B2 (en) 2004-01-13 2011-02-15 International Business Machines Corporation Differential dynamic content delivery with alternative content presentation
US7571380B2 (en) * 2004-01-13 2009-08-04 International Business Machines Corporation Differential dynamic content delivery with a presenter-alterable session copy of a user profile
US20050154624A1 (en) * 2004-01-13 2005-07-14 Stefan Hack Scenario-oriented solution maps
EP1560137A1 (en) * 2004-01-30 2005-08-03 Sap Ag Technique for reliable message confirmation
US7660284B1 (en) * 2004-02-02 2010-02-09 Verizon New York Inc. Nevigation within a wireless network
US8984101B1 (en) * 2004-02-26 2015-03-17 Oracle America Inc. System and method for model-based configuration of a server cluster
US20050192879A1 (en) * 2004-02-27 2005-09-01 Guy Rabbat Collaborative shared services business system, business processes and method thereof
US8660880B2 (en) * 2004-03-04 2014-02-25 International Business Machines Corporation System and method for workflow enabled link activation
US7743386B2 (en) * 2004-03-12 2010-06-22 Sap Ag Context objects for accessing message content
US20050203760A1 (en) * 2004-03-15 2005-09-15 Microsoft Corporation Project time and expense
US7739351B2 (en) 2004-03-23 2010-06-15 Salesforce.Com, Inc. Synchronous interface to asynchronous processes
US20050216429A1 (en) * 2004-03-24 2005-09-29 Hertz Michael T System and method for collaborative systems engineering
US7774601B2 (en) * 2004-04-06 2010-08-10 Bea Systems, Inc. Method for delegated administration
US7590685B2 (en) * 2004-04-07 2009-09-15 Salesforce.Com Inc. Techniques for providing interoperability as a service
CA2464992A1 (en) * 2004-04-20 2005-10-20 Ibm Canada Limited - Ibm Canada Limitee Deploying multiple e-commerce systems in a single computing platform
US7519683B2 (en) 2004-04-26 2009-04-14 International Business Machines Corporation Dynamic media content for collaborators with client locations in dynamic client contexts
US7827239B2 (en) 2004-04-26 2010-11-02 International Business Machines Corporation Dynamic media content for collaborators with client environment information in dynamic client contexts
US20050253021A1 (en) * 2004-05-17 2005-11-17 Mccoskey William R Operational ground support system
US7765291B1 (en) 2004-05-19 2010-07-27 Ultimus, Inc. Business process management/workflow automation software
US20050262112A1 (en) * 2004-05-21 2005-11-24 Moore Dennis B Method and apparatus to convert project plans into workflow definitions
US7702724B1 (en) * 2004-05-27 2010-04-20 Oracle America, Inc. Web services message broker architecture
US8091029B1 (en) 2004-05-28 2012-01-03 Adobe Systems Incorporated Presenter-only meeting canvas for collaborative electronic meeting space
US7734802B1 (en) 2004-05-28 2010-06-08 Adobe Systems Incorporated Dynamically adaptable collaborative electronic meeting space
US8069117B1 (en) 2004-05-28 2011-11-29 Adobe Systems Incorporated Ad hoc access rights in restricted-access electronic space
CN1704957A (en) * 2004-05-28 2005-12-07 国际商业机器公司 Apparatus and method for dynamically assembling operation flow model
EP1782366A2 (en) 2004-06-04 2007-05-09 Sap Ag Consistent set of interfaces derived from a business object
US8606723B2 (en) 2004-06-04 2013-12-10 Sap Ag Consistent set of interfaces derived from a business object model
US8694397B2 (en) 2004-06-18 2014-04-08 Sap Ag Consistent set of interfaces derived from a business object model
US8232962B2 (en) 2004-06-21 2012-07-31 Trading Technologies International, Inc. System and method for display management based on user attention inputs
US7496860B2 (en) * 2004-06-30 2009-02-24 United Technologies Corporation Engineering standard work framework method and system
US7519904B2 (en) * 2004-07-08 2009-04-14 International Business Machines Corporation Differential dynamic delivery of content to users not in attendance at a presentation
US7921362B2 (en) * 2004-07-08 2011-04-05 International Business Machines Corporation Differential dynamic delivery of presentation previews
US8185814B2 (en) 2004-07-08 2012-05-22 International Business Machines Corporation Differential dynamic delivery of content according to user expressions of interest
US7487208B2 (en) 2004-07-08 2009-02-03 International Business Machines Corporation Differential dynamic content delivery to alternate display device locations
US9167087B2 (en) 2004-07-13 2015-10-20 International Business Machines Corporation Dynamic media content for collaborators including disparate location representations
US7426538B2 (en) 2004-07-13 2008-09-16 International Business Machines Corporation Dynamic media content for collaborators with VOIP support for client communications
US7487209B2 (en) * 2004-07-13 2009-02-03 International Business Machines Corporation Delivering dynamic media content for collaborators to purposeful devices
US20060015361A1 (en) * 2004-07-16 2006-01-19 Jurgen Sattler Method and system for customer contact reporting
US7725605B2 (en) * 2004-08-06 2010-05-25 Salesforce.Com, Inc. Providing on-demand access to services in a wide area network
US7925698B2 (en) * 2004-08-18 2011-04-12 Siemens Enterprise Communications, Inc. Apparatus and method for a synchronized mobile communication client
US7899863B2 (en) * 2004-08-18 2011-03-01 Siemens Enterprise Communications, Inc. Apparatus and method for enhanced synchronization using an IMS server
US20060047758A1 (en) * 2004-08-26 2006-03-02 Vivek Sharma Extending and optimizing electronic messaging rules
US7707249B2 (en) * 2004-09-03 2010-04-27 Open Text Corporation Systems and methods for collaboration
US7702730B2 (en) * 2004-09-03 2010-04-20 Open Text Corporation Systems and methods for collaboration
US9171100B2 (en) 2004-09-22 2015-10-27 Primo M. Pettovello MTree an XPath multi-axis structure threaded index
US7721328B2 (en) 2004-10-01 2010-05-18 Salesforce.Com Inc. Application identity design
US9645712B2 (en) 2004-10-01 2017-05-09 Grand Central Communications, Inc. Multiple stakeholders for a single business process
US8099736B2 (en) 2004-10-14 2012-01-17 The Trizetto Group, Inc. Systems and methods providing intelligent routing of data between software systems
US20060085376A1 (en) * 2004-10-14 2006-04-20 The Trizetto Group, Inc. Centralized management of software adapters
US7840461B2 (en) * 2004-12-17 2010-11-23 International Business Machines Corporation Method, program, and system for computing accounting savings
US7848942B2 (en) * 2004-12-28 2010-12-07 Sap Aktiengesellschaft Distribution of integrated business process models
US8744937B2 (en) 2005-02-25 2014-06-03 Sap Ag Consistent set of interfaces derived from a business object model
US8666870B2 (en) * 2005-03-08 2014-03-04 Jda Software Group, Inc. Configurable state model for supply chain management
US20060224702A1 (en) * 2005-03-31 2006-10-05 Patrick Schmidt Local workflows in a business process management system
EP1720123A1 (en) 2005-05-03 2006-11-08 Sap Ag Method and system for automated generation of access control policies in cross-organizational workflows
EP1722318A1 (en) * 2005-05-11 2006-11-15 Sap Ag Method and computer system for workflow control
US20060271939A1 (en) * 2005-05-11 2006-11-30 Eric Joris Enterprise-to-enterprise integration
US20060272002A1 (en) * 2005-05-25 2006-11-30 General Knowledge Technology Design Method for automating the management and exchange of digital content with trust based categorization, transaction approval and content valuation
US20060288110A1 (en) * 2005-06-16 2006-12-21 Rhett Alden Dynamically Configurable Web Services
US7908325B1 (en) 2005-06-20 2011-03-15 Oracle America, Inc. System and method for event-based collaboration
US7343368B2 (en) * 2005-06-23 2008-03-11 International Business Machines Corporation Propagation of filter expressions across multi-layered systems
US7921137B2 (en) * 2005-07-18 2011-04-05 Sap Ag Methods and systems for providing semantic primitives
US20070073784A1 (en) * 2005-09-26 2007-03-29 Bea Systems, Inc. System and method for type inheritance for content management
US7917537B2 (en) 2005-09-26 2011-03-29 Oracle International Corporation System and method for providing link property types for content management
US7818344B2 (en) * 2005-09-26 2010-10-19 Bea Systems, Inc. System and method for providing nested types for content management
US7483893B2 (en) * 2005-09-26 2009-01-27 Bae Systems, Inc. System and method for lightweight loading for managing content
US20070073674A1 (en) * 2005-09-26 2007-03-29 Bea Systems, Inc. System and method for providing federated events for content management systems
US7953734B2 (en) 2005-09-26 2011-05-31 Oracle International Corporation System and method for providing SPI extensions for content management system
US20070073673A1 (en) * 2005-09-26 2007-03-29 Bea Systems, Inc. System and method for content management security
US20070073638A1 (en) * 2005-09-26 2007-03-29 Bea Systems, Inc. System and method for using soft links to managed content
US7752205B2 (en) 2005-09-26 2010-07-06 Bea Systems, Inc. Method and system for interacting with a virtual content repository
US7962847B2 (en) * 2005-10-20 2011-06-14 International Business Machines Corporation Method for providing dynamic process step annotations
US7933786B2 (en) 2005-11-01 2011-04-26 Accenture Global Services Limited Collaborative intelligent task processor for insurance claims
US7664742B2 (en) 2005-11-14 2010-02-16 Pettovello Primo M Index data structure for a peer-to-peer network
US8136099B2 (en) * 2005-11-22 2012-03-13 Sap Ag Method and system for automatically generating executable processes from inter-organizational workflows
WO2007064878A2 (en) * 2005-12-01 2007-06-07 Firestar Software, Inc. System and method for exchanging information among exchange applications
US7447707B2 (en) * 2005-12-16 2008-11-04 Microsoft Corporation Automatic schema discovery for electronic data interchange (EDI) at runtime
US7647500B2 (en) * 2005-12-16 2010-01-12 Microsoft Corporation Synchronous validation and acknowledgment of electronic data interchange (EDI)
US7650353B2 (en) * 2005-12-16 2010-01-19 Microsoft Corporation XML specification for electronic data interchange (EDI)
US7599944B2 (en) * 2005-12-16 2009-10-06 Microsoft Corporation Electronic data interchange (EDI) schema simplification interface
US7840526B1 (en) * 2005-12-29 2010-11-23 United Services Automobile Association (Usaa) Workflow administration tools and user interfaces
US8380553B2 (en) 2005-12-30 2013-02-19 Sap Ag Architectural design for plan-driven procurement application software
US8448137B2 (en) * 2005-12-30 2013-05-21 Sap Ag Software model integration scenarios
US8316344B2 (en) 2005-12-30 2012-11-20 Sap Ag Software model deployment units
US20070168420A1 (en) * 2005-12-30 2007-07-19 Morris Robert P Method and apparatus for providing customized subscription data
US8396731B2 (en) 2005-12-30 2013-03-12 Sap Ag Architectural design for service procurement application software
US8402426B2 (en) 2005-12-30 2013-03-19 Sap Ag Architectural design for make to stock application software
US8522194B2 (en) 2005-12-30 2013-08-27 Sap Ag Software modeling
US20070174309A1 (en) * 2006-01-18 2007-07-26 Pettovello Primo M Mtreeini: intermediate nodes and indexes
US7587450B2 (en) * 2006-02-01 2009-09-08 Swift Creek Systems, Llc HTTP publish/subscribe communication protocol
US8046441B2 (en) * 2006-02-13 2011-10-25 Infosys Limited Business to business integration software as a service
US7703099B2 (en) * 2006-02-24 2010-04-20 Microsoft Corporation Scalable transformation and configuration of EDI interchanges
US7620645B2 (en) * 2006-02-24 2009-11-17 Microsoft Corporation Scalable algorithm for sharing EDI schemas
US8156148B2 (en) * 2006-02-24 2012-04-10 Microsoft Corporation Scalable algorithm for sharing EDI schemas
US7685208B2 (en) * 2006-02-24 2010-03-23 Microsoft Corporation XML payload specification for modeling EDI schemas
US7984373B2 (en) * 2006-02-24 2011-07-19 Microsoft Corporation EDI instance based transaction set definition
WO2007103206A2 (en) * 2006-03-01 2007-09-13 Telcordia Technologies, Inc. Integrated service creation and execution platforms for the converged networks
US8271309B2 (en) 2006-03-16 2012-09-18 The Crawford Group, Inc. Method and system for providing and administering online rental vehicle reservation booking services
US20070245300A1 (en) * 2006-03-22 2007-10-18 Benjamin Chan Apparatus, system, and method for presenting project scheduling information in combination with workflow information
US8442850B2 (en) 2006-03-30 2013-05-14 Sap Ag Providing accounting software application as enterprise services
US8121269B1 (en) * 2006-03-31 2012-02-21 Rockstar Bidco Lp System and method for automatically managing participation at a meeting
US8374931B2 (en) 2006-03-31 2013-02-12 Sap Ag Consistent set of interfaces derived from a business object model
US8312416B2 (en) * 2006-04-13 2012-11-13 Sap Ag Software model business process variant types
US7784022B2 (en) * 2006-04-25 2010-08-24 Sap Ag Mapping a new user interface onto an existing integrated interface
US20070288254A1 (en) * 2006-05-08 2007-12-13 Firestar Software, Inc. System and method for exchanging transaction information using images
WO2008005102A2 (en) 2006-05-13 2008-01-10 Sap Ag Consistent set of interfaces derived from a business object model
US8392364B2 (en) 2006-07-10 2013-03-05 Sap Ag Consistent set of interfaces derived from a business object model
WO2008018132A1 (en) * 2006-08-09 2008-02-14 Fujitsu Limited Business flow chart editing program and business flow chart editing method
US8566193B2 (en) 2006-08-11 2013-10-22 Sap Ag Consistent set of interfaces derived from a business object model
US20080127089A1 (en) * 2006-09-07 2008-05-29 Zohar Peretz Method For Managing Software Lifecycle
US20080071887A1 (en) * 2006-09-19 2008-03-20 Microsoft Corporation Intelligent translation of electronic data interchange documents to extensible markup language representations
US20080126385A1 (en) * 2006-09-19 2008-05-29 Microsoft Corporation Intelligent batching of electronic data interchange messages
US8108767B2 (en) * 2006-09-20 2012-01-31 Microsoft Corporation Electronic data interchange transaction set definition based instance editing
US8161078B2 (en) * 2006-09-20 2012-04-17 Microsoft Corporation Electronic data interchange (EDI) data dictionary management and versioning system
US20080126386A1 (en) * 2006-09-20 2008-05-29 Microsoft Corporation Translation of electronic data interchange messages to extensible markup language representation(s)
US20080071806A1 (en) * 2006-09-20 2008-03-20 Microsoft Corporation Difference analysis for electronic data interchange (edi) data dictionary
US8127278B2 (en) 2006-09-28 2012-02-28 Sap Ag System and method for extending legacy applications with undo/redo functionality
US8396768B1 (en) 2006-09-28 2013-03-12 Sap Ag Managing consistent interfaces for human resources business objects across heterogeneous systems
US8463852B2 (en) 2006-10-06 2013-06-11 Oracle International Corporation Groupware portlets for integrating a portal with groupware systems
CA2664941C (en) 2006-10-06 2017-09-12 The Crawford Group, Inc. Method and system for communicating vehicle repair information to a business-to-business rental vehicle reservation management computer system
US8150798B2 (en) 2006-10-10 2012-04-03 Wells Fargo Bank, N.A. Method and system for automated coordination and organization of electronic communications in enterprises
WO2008045947A2 (en) * 2006-10-10 2008-04-17 Old World Industries, Inc. Systems and methods for collaborative payment strategies
US8051475B2 (en) * 2006-11-01 2011-11-01 The United States Of America As Represented By The Secretary Of The Air Force Collaboration gateway
CA3103310C (en) 2006-11-02 2023-04-04 Voip-Pal.Com, Inc. Producing routing messages for voice over ip communications
CA2670510C (en) 2006-11-29 2020-12-22 Digifonica (International) Limited Intercepting voice over ip communications and other data communications
US8160906B2 (en) 2006-12-12 2012-04-17 The Crawford Group, Inc. System and method for improved rental vehicle reservation management
EP2127291B1 (en) * 2006-12-12 2019-10-16 Vestas Wind Systems A/S A multiprotocol wind turbine system and method
US20080147799A1 (en) * 2006-12-13 2008-06-19 Morris Robert P Methods, Systems, And Computer Program Products For Providing Access To A Secure Service Via A Link In A Message
US7548923B2 (en) * 2007-01-05 2009-06-16 Microsoft Corporation Sync configuration and discovery support
US20080168081A1 (en) * 2007-01-09 2008-07-10 Microsoft Corporation Extensible schemas and party configurations for edi document generation or validation
US20080168109A1 (en) * 2007-01-09 2008-07-10 Microsoft Corporation Automatic map updating based on schema changes
US10635260B2 (en) 2007-01-22 2020-04-28 Cerner Innovation, Inc. System and user interface for clinical reporting and ordering provision of an item
US7949711B2 (en) * 2007-01-24 2011-05-24 Chang Ypaul L Method, system, and program for integrating disjoined but related network components into collaborative communities
JP5120786B2 (en) * 2007-02-16 2013-01-16 日本電気株式会社 Radio wave propagation characteristic estimation system, method and program
US20080201191A1 (en) * 2007-02-21 2008-08-21 Novell, Inc. Dynamic workflow resource authentication and discovery
US9183524B2 (en) * 2007-02-21 2015-11-10 Novell, Inc. Imaged-based method for transport and authentication of virtualized workflows
US20080208982A1 (en) * 2007-02-28 2008-08-28 Morris Robert P Method and system for providing status information relating to a relation between a plurality of participants
US8479254B2 (en) * 2007-03-16 2013-07-02 Apple Inc. Credential categorization
WO2008116296A1 (en) 2007-03-26 2008-10-02 Digifonica (International) Limited Emergency assistance calling for voice over ip communications systems
US10891564B2 (en) * 2007-04-02 2021-01-12 International Business Machines Corporation Testing protocol compatability
US20080270546A1 (en) * 2007-04-30 2008-10-30 Morris Robert P Methods And Systems For Communicating Task Information
US8904341B2 (en) * 2007-04-30 2014-12-02 Hewlett-Packard Development Company, L.P. Deriving grounded model of business process suitable for automatic deployment
US7943398B2 (en) * 2007-06-29 2011-05-17 Intel Corporation Resonant magnetic disks for bioanalyte detection
US8160907B2 (en) 2007-07-25 2012-04-17 The Crawford Group, Inc. System and method for allocating replacement vehicle rental costs using a virtual bank of repair facility credits
US20090037582A1 (en) * 2007-07-31 2009-02-05 Morris Robert P Method And System For Managing Access To A Resource Over A Network Using Status Information Of A Principal
US7949999B1 (en) * 2007-08-07 2011-05-24 Amazon Technologies, Inc. Providing support for multiple interface access to software services
US8595202B2 (en) * 2007-10-03 2013-11-26 Siemens Aktiengesellschaft Method and system for intra-document object locking in collaborative authoring
US8091094B2 (en) 2007-10-10 2012-01-03 Sap Ag Methods and systems for ambistateful backend control
US8751626B2 (en) * 2007-10-23 2014-06-10 Microsoft Corporation Model-based composite application platform
US20090165021A1 (en) * 2007-10-23 2009-06-25 Microsoft Corporation Model-Based Composite Application Platform
US20090138515A1 (en) * 2007-11-12 2009-05-28 Amin Archit A Apparatus and method for communicating, accessing, organizing, and/or managing, information in a network environment
US20090307224A1 (en) * 2007-11-12 2009-12-10 Amin Archit A Apparatus and method for communicating, accessing, organizing, and/or managing, information in a network environment
US8418178B2 (en) * 2007-11-21 2013-04-09 Sap Ag Evaluation of synchronization gateways in process models
WO2009082382A1 (en) * 2007-12-20 2009-07-02 Hewlett-Packard Development Company, L.P. Automated model generation for computer based business process
US20100262558A1 (en) * 2007-12-20 2010-10-14 Nigel Edwards Incorporating Development Tools In System For Deploying Computer Based Process On Shared Infrastructure
US20100262559A1 (en) * 2007-12-20 2010-10-14 Lawrence Wilcock Modelling Computer Based Business Process And Simulating Operation
US20090164521A1 (en) * 2007-12-20 2009-06-25 George Lo Method and system for integrating multiple authoring applications in a collaborative environment
US20110004564A1 (en) * 2007-12-20 2011-01-06 Jerome Rolia Model Based Deployment Of Computer Based Business Process On Dedicated Hardware
CN101946260A (en) * 2007-12-20 2011-01-12 惠普开发有限公司 Modelling computer based business process for customisation and delivery
US8447657B2 (en) 2007-12-31 2013-05-21 Sap Ag Architectural design for service procurement application software
US8321914B2 (en) 2008-01-21 2012-11-27 International Business Machines Corporation System and method for verifying an attribute in records for procurement application
US20090198775A1 (en) * 2008-01-31 2009-08-06 Benny Keinan System And Method Of Collaboration For System Development
US8478769B2 (en) 2008-02-22 2013-07-02 Accenture Global Services Limited Conversational question generation system adapted for an insurance claim processing system
US8515786B2 (en) 2008-02-22 2013-08-20 Accenture Global Services Gmbh Rule generation system adapted for an insurance claim processing system
US8417593B2 (en) 2008-02-28 2013-04-09 Sap Ag System and computer-readable medium for managing consistent interfaces for business objects across heterogeneous systems
US8364715B2 (en) 2008-03-31 2013-01-29 Sap Ag Managing consistent interfaces for automatic identification label business objects across heterogeneous systems
US8577991B2 (en) * 2008-03-31 2013-11-05 Sap Ag Managing consistent interfaces for internal service request business objects across heterogeneous systems
US8413165B2 (en) 2008-03-31 2013-04-02 Sap Ag Managing consistent interfaces for maintenance order business objects across heterogeneous systems
US8433585B2 (en) 2008-03-31 2013-04-30 Sap Ag Managing consistent interfaces for business objects across heterogeneous systems
US8473317B2 (en) 2008-03-31 2013-06-25 Sap Ag Managing consistent interfaces for service part business objects across heterogeneous systems
US8589263B2 (en) 2008-03-31 2013-11-19 Sap Ag Managing consistent interfaces for retail business objects across heterogeneous systems
US8370233B2 (en) * 2008-03-31 2013-02-05 Sap Ag Managing consistent interfaces for business objects across heterogeneous systems
US8423418B2 (en) 2008-03-31 2013-04-16 Sap Ag Managing consistent interfaces for business objects across heterogeneous systems
US8930248B2 (en) 2008-03-31 2015-01-06 Sap Se Managing consistent interfaces for supply network business objects across heterogeneous systems
US8370851B2 (en) * 2008-06-06 2013-02-05 Microsoft Corporation Conversational parallelism for message processing
US20090319602A1 (en) * 2008-06-23 2009-12-24 Microsoft Corporation Maintaining entity collaboration sites
US8671064B2 (en) 2008-06-26 2014-03-11 Sap Ag Managing consistent interfaces for supply chain management business objects across heterogeneous systems
US8645228B2 (en) * 2008-06-26 2014-02-04 Sap Ag Managing consistent interfaces for business objects across heterogeneous systems
US8566185B2 (en) 2008-06-26 2013-10-22 Sap Ag Managing consistent interfaces for financial instrument business objects across heterogeneous systems
US20090326988A1 (en) 2008-06-26 2009-12-31 Robert Barth Managing consistent interfaces for business objects across heterogeneous systems
US8255923B2 (en) * 2008-07-08 2012-08-28 Avaya Inc. Shared persistent communication thread
US20100023352A1 (en) * 2008-07-23 2010-01-28 The Crawford Group, Inc. System and Method for Improved Information Sharing by Repair Facilities for Managing Rental Vehicle Reservations
US7844726B2 (en) * 2008-07-28 2010-11-30 Trading Technologies International, Inc. System and method for dynamically managing message flow
CA2732148C (en) 2008-07-28 2018-06-05 Digifonica (International) Limited Mobile gateway
US8401928B2 (en) * 2008-09-18 2013-03-19 Sap Ag Providing supplier relationship management software application as enterprise services
US8332870B2 (en) * 2008-09-30 2012-12-11 Accenture Global Services Limited Adapter services
US20100083171A1 (en) * 2008-09-30 2010-04-01 International Business Machines Corporation Automatically generating user interfaces in a trading partner collaboration management environment
US20100082358A1 (en) * 2008-09-30 2010-04-01 International Business Machines Corporation Generation of formal specifications of trading partner agreements
US8370440B2 (en) 2008-09-30 2013-02-05 Microsoft Corporation Role-independent context exchange
US8301627B2 (en) * 2008-09-30 2012-10-30 International Business Machines Corporation Automatic determination of selective message caching to support rules in a trading partner collaboration management environment
US8429540B1 (en) 2008-10-10 2013-04-23 Adobe Systems Incorporated End user created collaborative and non-collaborative workspace application container system and method
US8312419B2 (en) * 2008-10-30 2012-11-13 Hewlett-Packard Development Company, L.P. Automated lifecycle management of a computer implemented service
US8577760B2 (en) * 2008-11-25 2013-11-05 Sap Ag Managing consistent interfaces for tax authority business objects across heterogeneous systems
US8463666B2 (en) 2008-11-25 2013-06-11 Sap Ag Managing consistent interfaces for merchandise and assortment planning business objects across heterogeneous systems
US8401908B2 (en) 2008-12-03 2013-03-19 Sap Ag Architectural design for make-to-specification application software
US8671035B2 (en) 2008-12-11 2014-03-11 Sap Ag Providing payroll software application as enterprise services
US20100153297A1 (en) * 2008-12-12 2010-06-17 Sap Ag Managing Consistent Interfaces for Credit Portfolio Business Objects Across Heterogeneous Systems
US8689131B2 (en) 2009-01-21 2014-04-01 Microsoft Corporation Visual creation of computer-based workflows
US8632003B2 (en) 2009-01-27 2014-01-21 Novell, Inc. Multiple persona information cards
US9244730B2 (en) * 2009-02-11 2016-01-26 International Business Machines Corporation Application workflow integration subsystem
US20100223345A1 (en) * 2009-03-02 2010-09-02 Microsoft Corporation Communications application having conversation and meeting environments
US9171284B2 (en) * 2009-03-02 2015-10-27 Microsoft Technology Licensing, Llc Techniques to restore communications sessions for applications having conversation and meeting environments
SG166017A1 (en) * 2009-04-15 2010-11-29 Yokogawa Electric Corp Apparatus and method for configuring a workflow
US8621342B2 (en) * 2009-07-30 2013-12-31 Oracle International Corporation System and method for XML registry re-parsing
EP2478678B1 (en) 2009-09-17 2016-01-27 Digifonica (International) Limited Uninterrupted transmission of internet protocol transmissions during endpoint changes
US8396751B2 (en) 2009-09-30 2013-03-12 Sap Ag Managing consistent interfaces for merchandising business objects across heterogeneous systems
US8631028B1 (en) 2009-10-29 2014-01-14 Primo M. Pettovello XPath query processing improvements
US8301718B2 (en) * 2009-11-25 2012-10-30 Red Hat, Inc. Architecture, system and method for a messaging hub in a real-time web application framework
US8751587B2 (en) * 2009-11-25 2014-06-10 Red Hat, Inc. Real-time web applications
US8689234B2 (en) * 2009-11-25 2014-04-01 Red Hat, Inc. Providing real-time widgets in a web application framework
US8180828B2 (en) * 2009-11-25 2012-05-15 Red Hat, Inc. Architecture, system and method for providing a plug-in architecture in a real-time web application framework
US8683357B2 (en) * 2009-11-25 2014-03-25 Red Hat, Inc. Providing real time web application framework socket
US8326948B2 (en) * 2010-03-02 2012-12-04 Microsoft Corporation Abstract protocol independent data bus
US8484610B2 (en) * 2010-03-17 2013-07-09 Microsoft Corporation Workflow execution model
US8695076B2 (en) * 2010-03-19 2014-04-08 Oracle International Corporation Remote registration for enterprise applications
US20110246340A1 (en) * 2010-04-02 2011-10-06 Tracelink, Inc. Method and system for collaborative execution of business processes
US8375066B2 (en) 2010-04-26 2013-02-12 International Business Machines Corporation Generating unique identifiers
US9741006B2 (en) 2010-05-14 2017-08-22 Oracle International Corporation System and method for providing complex access control in workflows
US9852382B2 (en) * 2010-05-14 2017-12-26 Oracle International Corporation Dynamic human workflow task assignment using business rules
US8819055B2 (en) 2010-05-14 2014-08-26 Oracle International Corporation System and method for logical people groups
US9589240B2 (en) 2010-05-14 2017-03-07 Oracle International Corporation System and method for flexible chaining of distinct workflow task instances in a business process execution language workflow
JP2011253474A (en) * 2010-06-04 2011-12-15 Canon Inc User apparatus identification method and information processing system
US8364608B2 (en) 2010-06-15 2013-01-29 Sap Ag Managing consistent interfaces for export declaration and export declaration request business objects across heterogeneous systems
US8412603B2 (en) 2010-06-15 2013-04-02 Sap Ag Managing consistent interfaces for currency conversion and date and time business objects across heterogeneous systems
US8732083B2 (en) 2010-06-15 2014-05-20 Sap Ag Managing consistent interfaces for number range, number range profile, payment card payment authorisation, and product template template business objects across heterogeneous systems
US9135585B2 (en) 2010-06-15 2015-09-15 Sap Se Managing consistent interfaces for property library, property list template, quantity conversion virtual object, and supplier property specification business objects across heterogeneous systems
US8515794B2 (en) 2010-06-15 2013-08-20 Sap Ag Managing consistent interfaces for employee time event and human capital management view of payroll process business objects across heterogeneous systems
US8417588B2 (en) 2010-06-15 2013-04-09 Sap Ag Managing consistent interfaces for goods tag, production bill of material hierarchy, and release order template business objects across heterogeneous systems
US8370272B2 (en) 2010-06-15 2013-02-05 Sap Ag Managing consistent interfaces for business document message monitoring view, customs arrangement, and freight list business objects across heterogeneous systems
US8560698B2 (en) * 2010-06-27 2013-10-15 International Business Machines Corporation Allocating unique identifiers using metadata
US9069559B2 (en) * 2010-06-30 2015-06-30 International Business Machines Corporation Modularizing steps within a UML user model interaction pattern
US8843832B2 (en) 2010-07-23 2014-09-23 Reh Hat, Inc. Architecture, system and method for a real-time collaboration interface
US9799004B2 (en) 2010-07-30 2017-10-24 Avaya Inc. System and method for multi-model, context-aware visualization, notification, aggregation and formation
US20130325992A1 (en) * 2010-08-05 2013-12-05 Solariat, Inc. Methods and apparatus for determining outcomes of on-line conversations and similar discourses through analysis of expressions of sentiment during the conversations
US7921156B1 (en) 2010-08-05 2011-04-05 Solariat, Inc. Methods and apparatus for inserting content into conversations in on-line and digital environments
US8904511B1 (en) * 2010-08-23 2014-12-02 Amazon Technologies, Inc. Virtual firewalls for multi-tenant distributed services
US9003064B2 (en) * 2010-09-09 2015-04-07 International Business Machines Corporation Management of B2B communities
US8938669B1 (en) * 2011-03-15 2015-01-20 Google Inc. Inline user addressing in chat and document editing sessions
US8725550B2 (en) * 2011-07-12 2014-05-13 Sap Ag Managing process logs
US8775280B2 (en) 2011-07-28 2014-07-08 Sap Ag Managing consistent interfaces for financial business objects across heterogeneous systems
US8521838B2 (en) 2011-07-28 2013-08-27 Sap Ag Managing consistent interfaces for communication system and object identifier mapping business objects across heterogeneous systems
US8560392B2 (en) 2011-07-28 2013-10-15 Sap Ag Managing consistent interfaces for a point of sale transaction business object across heterogeneous systems
US8725654B2 (en) 2011-07-28 2014-05-13 Sap Ag Managing consistent interfaces for employee data replication business objects across heterogeneous systems
US8666845B2 (en) 2011-07-28 2014-03-04 Sap Ag Managing consistent interfaces for a customer requirement business object across heterogeneous systems
US8601490B2 (en) 2011-07-28 2013-12-03 Sap Ag Managing consistent interfaces for business rule business object across heterogeneous systems
US20130036180A1 (en) * 2011-08-03 2013-02-07 Sentryblue Group, Inc. System and method for presenting multilingual conversations in the language of the participant
US20140258030A1 (en) * 2011-08-03 2014-09-11 Balluun Ag Method and system of an authentic translation of a physical tradeshow
US20130138473A1 (en) * 2011-11-28 2013-05-30 Sap Ag Business Process Optimization
US20130139164A1 (en) * 2011-11-28 2013-05-30 Sap Ag Business Process Optimization
US9792451B2 (en) 2011-12-09 2017-10-17 Echarge2 Corporation System and methods for using cipher objects to protect data
EP2801003B1 (en) 2012-01-06 2019-06-12 GE Intelligent Platforms, Inc. Apparatus and method for third party creation of control logic
CA2864408A1 (en) * 2012-02-13 2013-08-22 Sendgine, Llc Aggregating digital file and message content into a singular and chronologically organized conversation
US9237425B2 (en) 2012-02-16 2016-01-12 Sap Se Consistent interface for feed event, feed event document and feed event type
US8762454B2 (en) 2012-02-16 2014-06-24 Sap Ag Consistent interface for flag and tag
US9232368B2 (en) 2012-02-16 2016-01-05 Sap Se Consistent interface for user feed administrator, user feed event link and user feed settings
US8756274B2 (en) 2012-02-16 2014-06-17 Sap Ag Consistent interface for sales territory message type set 1
US8984050B2 (en) 2012-02-16 2015-03-17 Sap Se Consistent interface for sales territory message type set 2
US8762453B2 (en) 2012-02-16 2014-06-24 Sap Ag Consistent interface for feed collaboration group and feed event subscription
US9411844B2 (en) 2012-03-29 2016-08-09 Tracelink, Inc. Methods and systems for managing distributed concurrent data updates of business objects
US10013429B2 (en) 2012-03-29 2018-07-03 Tracelink, Inc. Computer-implemented methods and systems for facilitating business-to-business transactions on a collaborative business network and for system integration message routing and identifier mapping utilizing a shared workspace mechanism
US20130303267A1 (en) * 2012-05-11 2013-11-14 Samsung Electronics Co., Ltd. Network system with challenge mechanism and method of operation thereof
US9692675B1 (en) 2012-06-21 2017-06-27 Open Text Corporation Activity stream based collaboration
US9715325B1 (en) 2012-06-21 2017-07-25 Open Text Corporation Activity stream based interaction
US20130346126A1 (en) * 2012-06-26 2013-12-26 Johann Kemmer Business process development
US8739124B2 (en) * 2012-06-27 2014-05-27 Sap Ag Configuring integration capabilities for system integration
US9400998B2 (en) 2012-06-28 2016-07-26 Sap Se Consistent interface for message-based communication arrangement, organisational centre replication request, and payment schedule
US8756135B2 (en) 2012-06-28 2014-06-17 Sap Ag Consistent interface for product valuation data and product valuation level
US9367826B2 (en) 2012-06-28 2016-06-14 Sap Se Consistent interface for entitlement product
US8521621B1 (en) 2012-06-28 2013-08-27 Sap Ag Consistent interface for inbound delivery request
US9246869B2 (en) 2012-06-28 2016-01-26 Sap Se Consistent interface for opportunity
US8615451B1 (en) 2012-06-28 2013-12-24 Sap Ag Consistent interface for goods and activity confirmation
WO2014000200A1 (en) 2012-06-28 2014-01-03 Sap Ag Consistent interface for document output request
US8949855B2 (en) 2012-06-28 2015-02-03 Sap Se Consistent interface for address snapshot and approval process definition
US20140019933A1 (en) 2012-07-11 2014-01-16 International Business Machines Corporation Selecting a development associate for work in a unified modeling language (uml) environment
US9076112B2 (en) 2012-08-22 2015-07-07 Sap Se Consistent interface for financial instrument impairment expected cash flow analytical result
US9043236B2 (en) 2012-08-22 2015-05-26 Sap Se Consistent interface for financial instrument impairment attribute values analytical result
US9547833B2 (en) 2012-08-22 2017-01-17 Sap Se Consistent interface for financial instrument impairment calculation
US8990375B2 (en) 2012-08-31 2015-03-24 Facebook, Inc. Subscription groups in publish-subscribe system
WO2014091728A1 (en) * 2012-12-13 2014-06-19 パナソニック株式会社 Content sharing system, content sharing method, and information communication device
US10467691B2 (en) 2012-12-31 2019-11-05 Trading Technologies International, Inc. User definable prioritization of market information
US20140201705A1 (en) * 2013-01-12 2014-07-17 Xuewei Ren Extended framework for no-coding dynamic control workflow development on spatial enterprise system
US9189510B2 (en) 2013-02-26 2015-11-17 Facebook, Inc. System and method for implementing cache consistent regional clusters
US20140289089A1 (en) * 2013-03-14 2014-09-25 Ultimate Foodspend Solutions, Llc Systems and methods for delivering trade agreement performance
US10318911B1 (en) 2013-03-14 2019-06-11 Jpmorgan Chase Bank, N.A. Persistenceless business process management system and method
US9191357B2 (en) 2013-03-15 2015-11-17 Sap Se Consistent interface for email activity business object
US9191343B2 (en) 2013-03-15 2015-11-17 Sap Se Consistent interface for appointment activity business object
US20140278626A1 (en) * 2013-03-15 2014-09-18 Sap Ag Consistent Interface for Task Activity Business Object
US9443229B2 (en) 2013-03-15 2016-09-13 Elemica, Inc. Supply chain message management and shipment constraint optimization
US9224135B2 (en) * 2013-03-15 2015-12-29 Elemica, Inc. Method and apparatus for adaptive configuration for translation of business messages
US10037197B2 (en) 2013-03-15 2018-07-31 Oracle International Corporation Flexible microinstruction system for constructing microprograms which execute tasks, gateways, and events of BPMN models
US20140343982A1 (en) * 2013-05-14 2014-11-20 Landmark Graphics Corporation Methods and systems related to workflow mentoring
US9256751B2 (en) 2013-06-04 2016-02-09 Sap Se Public exposed objects
US9304761B2 (en) * 2013-06-12 2016-04-05 Nuesoft Technologies, Inc. System and method for collaborative programming of data entry workflows between system developers, end users, and third party developers
US9304888B2 (en) 2013-06-25 2016-04-05 Microsoft Technology Licensing, Llc Consistent modeling and execution of time constructs in business processes
US9288244B2 (en) * 2013-08-06 2016-03-15 International Business Machines Corporation Managing a collaborative space
US20150170074A1 (en) * 2013-12-13 2015-06-18 Matthias Winkler Dynamic and adaptable event integration for flexible business processes
US10460387B2 (en) 2013-12-18 2019-10-29 Trading Technologies International, Inc. Dynamic information configuration and display
US9430556B2 (en) 2013-12-19 2016-08-30 Sap Se System for self-distinguishable identifier and generation
US9003062B1 (en) * 2014-01-23 2015-04-07 Software Ag Framework for exchanging large B2B transactional in-order messages using distributed file system (DFS) and associated method
US20150278718A1 (en) * 2014-03-27 2015-10-01 Salesforce.Com, Inc. Systems and methods for communication sharing in a relationship management system
US10248096B2 (en) 2014-03-28 2019-04-02 Sparta Systems, Inc. Systems and methods for common exchange of quality data between disparate systems
US10521601B2 (en) 2014-04-30 2019-12-31 Sailpoint Technologies, Israel Ltd. System and method for data governance
CN107209782B (en) * 2015-01-29 2021-07-20 阿贝尔环球国际有限公司 Method for interactive operation, and transmitting machine, receiving machine and interactive operation system using the method
US10685305B2 (en) 2015-10-19 2020-06-16 International Business Machines Corporation Evaluating adoption of computing deployment solutions
US10088981B2 (en) * 2015-12-29 2018-10-02 Sap Se User engagement application across user interface applications
US10643160B2 (en) * 2016-01-16 2020-05-05 International Business Machines Corporation Order optimization in hybrid cloud networks
WO2017152037A1 (en) 2016-03-04 2017-09-08 1Usf, Inc. Systems and methods for media codecs and containers
US10362109B2 (en) * 2016-03-30 2019-07-23 Task Performance Group, Inc. Cloud operating system and method
US10547986B2 (en) 2016-08-23 2020-01-28 International Business Machines Corporation Cognitive root uniform resource locator
RU2680755C2 (en) * 2017-04-25 2019-02-26 Федеральное государственное бюджетное образовательное учреждение высшего образования "МИРЭА - Российский технологический университет" Dispatching information and analytical system
US10785242B1 (en) * 2017-06-14 2020-09-22 Raytheon Company Intrusion detection in airborne platform
US11531965B2 (en) 2019-06-07 2022-12-20 Swarn Singh Dhaliwal Collaboration platform for facilitating conversations between users
US11461677B2 (en) 2020-03-10 2022-10-04 Sailpoint Technologies, Inc. Systems and methods for data correlation and artifact matching in identity management artificial intelligence systems
US11349755B2 (en) 2020-07-21 2022-05-31 Bank Of America Corporation Routing data between computing entities using electronic data interchange
US11295260B2 (en) * 2020-07-22 2022-04-05 Servicenow, Inc. Multi-process workflow designer
US11288611B2 (en) * 2020-07-22 2022-03-29 Servicenow, Inc. Multi-process workflow designer user interface
US11863602B2 (en) * 2020-08-19 2024-01-02 Salesforce, Inc. Inter-application data interchange via a group-based communication system that triggers user intervention
US11677582B2 (en) 2020-12-09 2023-06-13 Raytheon Company Detecting anomalies on a controller area network bus
US11308186B1 (en) 2021-03-19 2022-04-19 Sailpoint Technologies, Inc. Systems and methods for data correlation and artifact matching in identity management artificial intelligence systems

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5446842A (en) * 1993-02-26 1995-08-29 Taligent, Inc. Object-oriented collaboration system
US5983214A (en) * 1996-04-04 1999-11-09 Lycos, Inc. System and method employing individual user content-based data and user collaborative feedback data to evaluate the content of an information entity in a large information communication network

Family Cites Families (209)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3732237A (en) * 1971-05-25 1973-05-08 Squibb & Sons Inc 5-nitro-2-thiazolecarboxamidoxime and derivatives thereof
US5208748A (en) * 1985-11-18 1993-05-04 Action Technologies, Inc. Method and apparatus for structuring and managing human communications by explicitly defining the types of communications permitted between participants
US4951196A (en) * 1988-05-04 1990-08-21 Supply Tech, Inc. Method and apparatus for electronic data interchange
US5187790A (en) 1989-06-29 1993-02-16 Digital Equipment Corporation Server impersonation of client processes in an object based computer operating system
JP2894752B2 (en) * 1989-12-06 1999-05-24 マツダ株式会社 Vehicle slip control device
US5555201A (en) * 1990-04-06 1996-09-10 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including interactive system for hierarchical display of control and dataflow information
US5202977A (en) * 1990-07-13 1993-04-13 Premenos Corp. Edi translation system using plurality of communication processes and de-enveloping procedure corresponding to transmitted communication process
IL100987A (en) * 1991-02-27 1995-10-31 Digital Equipment Corp Method and apparatus for compiling code
US5557780A (en) * 1992-04-30 1996-09-17 Micron Technology, Inc. Electronic data interchange system for managing non-standard data
US5469562A (en) 1992-06-26 1995-11-21 Digital Equipment Corporation Durable atomic storage update manager
US5329619A (en) * 1992-10-30 1994-07-12 Software Ag Cooperative processing interface and communication broker for heterogeneous computing environments
US5630069A (en) 1993-01-15 1997-05-13 Action Technologies, Inc. Method and apparatus for creating workflow maps of business processes
EP0686282A4 (en) * 1993-02-08 1997-07-02 Action Tech Inc Method and apparatus for managing business processes
US5463555A (en) 1993-09-28 1995-10-31 The Dow Chemical Company System and method for integrating a business environment with a process control environment
US5689641A (en) * 1993-10-01 1997-11-18 Vicor, Inc. Multimedia collaboration system arrangement for routing compressed AV signal through a participant site without decompressing the AV signal
US6625581B1 (en) * 1994-04-22 2003-09-23 Ipf, Inc. Method of and system for enabling the access of consumer product related information and the purchase of consumer products at points of consumer presence on the world wide web (www) at which consumer product information request (cpir) enabling servlet tags are embedded within html-encoded documents
US6018716A (en) 1994-04-28 2000-01-25 International Business Machines Corporation Apparatus and method for analysis of continuous process lines
US5694546A (en) * 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
US5944794A (en) 1994-09-30 1999-08-31 Kabushiki Kaisha Toshiba User identification data management scheme for networking computer systems using wide area network
US5793967A (en) * 1994-10-18 1998-08-11 Hand Held Products, Inc. Data collection and RF communications system and method of developing applications for same
US5604860A (en) * 1994-10-27 1997-02-18 Xerox Corporation Feature library and stored customized control interfaces
US5630131A (en) * 1994-11-14 1997-05-13 Object Technology Licensing Corp. Method and apparatus for importing and exporting archive files for a graphical user interface
US5634127A (en) * 1994-11-30 1997-05-27 International Business Machines Corporation Methods and apparatus for implementing a message driven processor in a client-server environment
US5748975A (en) 1995-07-06 1998-05-05 Sun Microsystems, Inc. System and method for textual editing of structurally-represented computer programs with on-the-fly typographical display
US5835769A (en) * 1995-09-19 1998-11-10 Sun Microsystems, Inc. Apparatti and computer program products for integrating editors with applications
US5787175A (en) * 1995-10-23 1998-07-28 Novell, Inc. Method and apparatus for collaborative document control
US5966535A (en) * 1995-12-07 1999-10-12 At&T Corporation Method and apparatus for generating program code for world wide web service applications
US5704017A (en) 1996-02-16 1997-12-30 Microsoft Corporation Collaborative filtering utilizing a belief network
CA2249386C (en) 1996-03-19 2004-06-01 Massachusetts Institute Of Technology Computer system and computer implemented process for representing software system descriptions and for generating executable computer programs and computer system configurations from software system descriptions
US5841976A (en) * 1996-03-29 1998-11-24 Intel Corporation Method and apparatus for supporting multipoint communications in a protocol-independent manner
US5956491A (en) * 1996-04-01 1999-09-21 Marks; Daniel L. Group communications multiplexing system
DE19712946A1 (en) * 1996-05-30 1997-12-04 Ibm Computerised method of automatically expanding specifications of process model in workflow process environment
US5867822A (en) * 1996-06-26 1999-02-02 Sun Microsystems, Inc. Method and apparatus for management of electronic calendars throughout an enterprise and management of events in a distributed system
US5794234A (en) * 1996-08-14 1998-08-11 The Ec Company Method and system for providing electronic commerce between incompatible data processing systems
US6012083A (en) * 1996-09-24 2000-01-04 Ricoh Company Ltd. Method and apparatus for document processing using agents to process transactions created based on document content
JPH10105623A (en) * 1996-09-27 1998-04-24 Hitachi Ltd Hierarchical work flow management method and work flow document circulation method
US5930512A (en) * 1996-10-18 1999-07-27 International Business Machines Corporation Method and apparatus for building and running workflow process models using a hypertext markup language
GB2319862A (en) 1996-11-28 1998-06-03 Ibm Performing computer-based on-line commerce using an intelligent agent
US5913061A (en) 1997-01-08 1999-06-15 Crossroads Software, Inc. Modular application collaboration
US5961593A (en) * 1997-01-22 1999-10-05 Lucent Technologies, Inc. System and method for providing anonymous personalized browsing by a proxy system in a network
US6496870B1 (en) * 1997-01-31 2002-12-17 Sun Microsystems, Inc. System, method and article of manufacture for collaboration with an application
US6353923B1 (en) 1997-03-12 2002-03-05 Microsoft Corporation Active debugging environment for debugging mixed-language scripting code
US6141701A (en) 1997-03-13 2000-10-31 Whitney; Mark M. System for, and method of, off-loading network transactions from a mainframe to an intelligent input/output device, including off-loading message queuing facilities
US6310941B1 (en) * 1997-03-14 2001-10-30 Itxc, Inc. Method and apparatus for facilitating tiered collaboration
CA2201278C (en) * 1997-03-27 2001-02-20 Ibm Canada Limited-Ibm Canada Limitee Hierarchical metadata store for an integrated development environment
US6230309B1 (en) * 1997-04-25 2001-05-08 Sterling Software, Inc Method and system for assembling and utilizing components in component object systems
US6023578A (en) 1997-05-09 2000-02-08 International Business Macines Corporation Systems, methods and computer program products for generating an object oriented application for an object oriented environment
US5941945A (en) * 1997-06-18 1999-08-24 International Business Machines Corporation Interest-based collaborative framework
US6446116B1 (en) * 1997-06-30 2002-09-03 Sun Microsystems, Inc. Method and apparatus for dynamic loading of a transport mechanism in a multipoint data delivery system
US5987376A (en) * 1997-07-16 1999-11-16 Microsoft Corporation System and method for the distribution and synchronization of data and state information between clients in a distributed processing system
US6366663B1 (en) * 1997-07-21 2002-04-02 Mci Communications Corporation System for achieving local number portability
US5978836A (en) * 1997-07-28 1999-11-02 Solectron Corporation Workflow systems and methods
US6222533B1 (en) * 1997-08-25 2001-04-24 I2 Technologies, Inc. System and process having a universal adapter framework and providing a global user interface and global messaging bus
US5931900A (en) * 1997-08-25 1999-08-03 I2 Technologies, Inc. System and process for inter-domain interaction across an inter-domain connectivity plane
US5995945A (en) * 1997-08-25 1999-11-30 I2 Technologies, Inc. System and process for inter-domain planning analysis and optimization using model agents as partial replicas of remote domains
US6732145B1 (en) * 1997-08-28 2004-05-04 At&T Corp. Collaborative browsing of the internet
US6070184A (en) * 1997-08-28 2000-05-30 International Business Machines Corporation Server-side asynchronous form management
US5960404A (en) * 1997-08-28 1999-09-28 International Business Machines Corp. Mechanism for heterogeneous, peer-to-peer, and disconnected workflow operation
US6115605A (en) * 1997-08-29 2000-09-05 Ppm, Inc. Communication system and device using dynamic receiver addressing
CA2246130C (en) * 1997-09-04 2003-01-14 Mitel Corporation Web based help desk
US6016495A (en) * 1997-09-19 2000-01-18 International Business Machines Corporation Object-oriented framework mechanism for providing persistent storage
US6092102A (en) 1997-10-24 2000-07-18 University Of Pittsburgh Of The Commonwealth System Of Higher Education System and method for notifying users about information or events of an enterprise
US6334114B1 (en) * 1997-10-31 2001-12-25 Oracle Corporation Method and apparatus for performing transactions in a stateless web environment which supports a declarative paradigm
US6128509A (en) * 1997-11-07 2000-10-03 Nokia Mobile Phone Limited Intelligent service interface and messaging protocol for coupling a mobile station to peripheral devices
US6067623A (en) 1997-11-21 2000-05-23 International Business Machines Corp. System and method for secure web server gateway access using credential transform
US6088679A (en) * 1997-12-01 2000-07-11 The United States Of America As Represented By The Secretary Of Commerce Workflow management employing role-based access control
US6029000A (en) * 1997-12-22 2000-02-22 Texas Instruments Incorporated Mobile communication system with cross compiler and cross linker
FI106831B (en) 1998-01-14 2001-04-12 Nokia Networks Oy Access control procedure for a mobile telephone system
US6594693B1 (en) 1998-02-10 2003-07-15 Nitin A. Borwankar Method and apparatus for a structured, synchronized conversation using electronic messages over a computer network
US6122666A (en) 1998-02-23 2000-09-19 International Business Machines Corporation Method for collaborative transformation and caching of web objects in a proxy network
US6470364B1 (en) * 1998-02-24 2002-10-22 Sun Microsystems, Inc. Method and apparatus for generating text components
US6311327B1 (en) * 1998-03-02 2001-10-30 Applied Microsystems Corp. Method and apparatus for analyzing software in a language-independent manner
US6161149A (en) * 1998-03-13 2000-12-12 Groupserve, Inc. Centrifugal communication and collaboration method
US6148336A (en) * 1998-03-13 2000-11-14 Deterministic Networks, Inc. Ordering of multiple plugin applications using extensible layered service provider with network traffic filtering
US6064980A (en) * 1998-03-17 2000-05-16 Amazon.Com, Inc. System and methods for collaborative recommendations
US6052684A (en) * 1998-03-24 2000-04-18 Hewlett-Packard Company System and method for performing consistent workflow process execution in a workflow management system
US6338064B1 (en) * 1998-05-14 2002-01-08 International Business Machines Corporation Method for enabling a web server running a “closed” native operating system to impersonate a user of a web client to obtain a protected file
US6119149A (en) * 1998-06-05 2000-09-12 I2 Technologies, Inc. System and process allowing collaboration within and between enterprises for optimal decision making
US6397192B1 (en) * 1998-06-05 2002-05-28 I2 Technologies Us, Inc. Synchronizing one or more workflows using one or more synchronization-join activities that include synchronization logic
NL1009376C1 (en) 1998-06-11 1998-07-06 Boardwalk Ag Data system for providing relationship patterns between people.
US6237135B1 (en) * 1998-06-18 2001-05-22 Borland Software Corporation Development system with visual design tools for creating and maintaining Java Beans components
US6185734B1 (en) * 1998-07-21 2001-02-06 Hewlett-Packard Company Hierarchical registry structure for managing multiple versions of software components
US6343265B1 (en) 1998-07-28 2002-01-29 International Business Machines Corporation System and method for mapping a design model to a common repository with context preservation
US6212548B1 (en) 1998-07-30 2001-04-03 At & T Corp System and method for multiple asynchronous text chat conversations
US6157915A (en) 1998-08-07 2000-12-05 International Business Machines Corporation Method and apparatus for collaboratively managing supply chains
US6230171B1 (en) * 1998-08-29 2001-05-08 International Business Machines Corporation Markup system for shared HTML documents
US6963914B1 (en) 1998-09-01 2005-11-08 Lucent Technologies Inc. Method and apparatus for retrieving a network file using a logical reference
US6401111B1 (en) * 1998-09-11 2002-06-04 International Business Machines Corporation Interaction monitor and interaction history for service applications
US6212546B1 (en) 1998-10-01 2001-04-03 Unisys Corporation Providing a modular gateway architecture which isolates attributes of the client and server systems into independent components
US6226675B1 (en) 1998-10-16 2001-05-01 Commerce One, Inc. Participant server which process documents for commerce in trading partner networks
US6367068B1 (en) * 1998-11-13 2002-04-02 Microsoft Corporation Dynamic parsing
US6393456B1 (en) * 1998-11-30 2002-05-21 Microsoft Corporation System, method, and computer program product for workflow processing using internet interoperable electronic messaging with mime multiple content type
US6385724B1 (en) 1998-11-30 2002-05-07 Microsoft Corporation Automatic object caller chain with declarative impersonation and transitive trust
US6637020B1 (en) * 1998-12-03 2003-10-21 International Business Machines Corporation Creating applications within data processing systems by combining program components dynamically
US6018730A (en) 1998-12-22 2000-01-25 Ac Properties B.V. System, method and article of manufacture for a simulation engine with a help website and processing engine
US6795967B1 (en) * 1999-01-26 2004-09-21 Microsoft Corporation Changing user identities without closing applications
JP4146983B2 (en) 1999-02-26 2008-09-10 インターナショナル・ビジネス・マシーンズ・コーポレーション Process method and data processing system for calling method of server object
US20020026321A1 (en) * 1999-02-26 2002-02-28 Sadeg M. Faris Internet-based system and method for fairly and securely enabling timed-constrained competition using globally time-sychronized client subsystems and information servers having microsecond client-event resolution
US6360358B1 (en) * 1999-03-11 2002-03-19 Microsoft Corporation Maintenance of code knowledge for up-to-date access thereof
US7007235B1 (en) * 1999-04-02 2006-02-28 Massachusetts Institute Of Technology Collaborative agent interaction control and synchronization system
US6243737B1 (en) 1999-04-09 2001-06-05 Translink Software, Inc. Method and apparatus for providing direct transaction access to information residing on a host system
WO2000065781A1 (en) * 1999-04-23 2000-11-02 Sony Electronics Inc. Method of and apparatus for implementing and sending an asynchronous control mechanism packet
US6789054B1 (en) * 1999-04-25 2004-09-07 Mahmoud A. Makhlouf Geometric display tools and methods for the visual specification, design automation, and control of adaptive real systems
US6377939B1 (en) 1999-05-04 2002-04-23 Metratech Pipelined method and apparatus for processing communication metering data
US6763371B1 (en) * 1999-05-10 2004-07-13 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for collaborative communication in a communication network
US6292932B1 (en) 1999-05-28 2001-09-18 Unisys Corp. System and method for converting from one modeling language to another
US7472349B1 (en) * 1999-06-01 2008-12-30 Oracle International Corporation Dynamic services infrastructure for allowing programmatic access to internet and other resources
US6594700B1 (en) 1999-06-14 2003-07-15 International Business Machines Corporation System and method for implementing a universal service broker interchange mechanism
US6330569B1 (en) * 1999-06-30 2001-12-11 Unisys Corp. Method for versioning a UML model in a repository in accordance with an updated XML representation of the UML model
US6408311B1 (en) 1999-06-30 2002-06-18 Unisys Corp. Method for identifying UML objects in a repository with objects in XML content
US6408303B1 (en) * 1999-07-06 2002-06-18 Healthcare Transaction Processors, Inc. System and method for automated building of a trading partner profile
US6675216B1 (en) * 1999-07-06 2004-01-06 Cisco Technolgy, Inc. Copy server for collaboration and electronic commerce
US6640241B1 (en) * 1999-07-19 2003-10-28 Groove Networks, Inc. Method and apparatus for activity-based collaboration by a computer system equipped with a communications manager
US6880126B1 (en) * 1999-08-03 2005-04-12 International Business Machines Corporation Controlling presentation of a GUI, using view controllers created by an application mediator, by identifying a destination to access a target to retrieve data
US6496851B1 (en) * 1999-08-04 2002-12-17 America Online, Inc. Managing negotiations between users of a computer network by automatically engaging in proposed activity using parameters of counterproposal of other user
US6691153B1 (en) * 1999-08-30 2004-02-10 Zaplet, Inc. Method and system for process interaction among a group
US6624826B1 (en) * 1999-09-28 2003-09-23 Ricoh Co., Ltd. Method and apparatus for generating visual representations for audio documents
US6434599B1 (en) * 1999-09-30 2002-08-13 Xoucin, Inc. Method and apparatus for on-line chatting
US7051316B2 (en) 1999-10-05 2006-05-23 Borland Software Corporation Distributed computing component system with diagrammatic graphical representation of code with separate delineated display area by type
US6802000B1 (en) 1999-10-28 2004-10-05 Xerox Corporation System for authenticating access to online content referenced in hardcopy documents
US6550054B1 (en) * 1999-11-17 2003-04-15 Unisys Corporation Method for representing terminal-based applications in the unified modeling language
US6748420B1 (en) 1999-11-23 2004-06-08 Cisco Technology, Inc. Methods and apparatus for providing shared access to an application
US6658476B1 (en) * 1999-11-29 2003-12-02 Microsoft Corporation Client-server protocol support list for standard request-response protocols
US20020016759A1 (en) 1999-12-06 2002-02-07 Macready William G. Method and system for discovery of trades between parties
US6678518B2 (en) 1999-12-09 2004-01-13 Nokia Corporation Dynamic content filter in a gateway
US6615231B1 (en) * 1999-12-15 2003-09-02 Microsoft Corporation System and method for directing requests to specific processing
US6772413B2 (en) * 1999-12-21 2004-08-03 Datapower Technology, Inc. Method and apparatus of data exchange using runtime code generator and translator
US20020010781A1 (en) * 1999-12-30 2002-01-24 Tuatini Jeffrey Taihana Shared service messaging models
US20020049788A1 (en) * 2000-01-14 2002-04-25 Lipkin Daniel S. Method and apparatus for a web content platform
US6643652B2 (en) * 2000-01-14 2003-11-04 Saba Software, Inc. Method and apparatus for managing data exchange among systems in a network
WO2001052056A2 (en) 2000-01-14 2001-07-19 Saba Software, Inc. Method and apparatus for a business applications management system platform
WO2001061590A2 (en) 2000-02-14 2001-08-23 Ubs Painewebber Inc. System for providing financial services
AU2001238381A1 (en) 2000-02-16 2001-08-27 Bea Systems Inc. Pluggable hub system for enterprise wide electronic collaboration
US6671728B1 (en) * 2000-02-18 2003-12-30 G.E. Information Services, Inc. Abstract initiator
WO2001073551A2 (en) * 2000-03-29 2001-10-04 Nextset Software Inc. System and method of providing an asynchronous interface between a client system and an enterprise javabeans-enabled server
US6944655B1 (en) * 2000-04-03 2005-09-13 International Business Machines Corporation User-defined online interaction method and device
US6850979B1 (en) 2000-05-09 2005-02-01 Sun Microsystems, Inc. Message gates in a distributed computing environment
US6918084B1 (en) 2000-05-09 2005-07-12 Sun Microsystems, Inc. Spawning new repository spaces using information provided in advertisement schema messages
US6772216B1 (en) * 2000-05-19 2004-08-03 Sun Microsystems, Inc. Interaction protocol for managing cross company processes among network-distributed applications
US6832238B1 (en) * 2000-05-24 2004-12-14 Sun Microsystems, Inc. Local transaction management
AU2001264944A1 (en) * 2000-05-25 2001-12-03 Transacttools, Inc. A method, system and apparatus for establishing, monitoring, and managing connectivity for communication among heterogeneous systems
JP4757370B2 (en) * 2000-05-30 2011-08-24 住友化学株式会社 Epitaxial substrate manufacturing method
US6687848B1 (en) 2000-05-31 2004-02-03 Sun Microsystems, Inc. Techniques for preventing information loss in a business to business message in an enterprise computer system
US7127704B2 (en) 2000-06-02 2006-10-24 Sun Microsystems, Inc. Interactive software engineering tool with support for embedded lexical contexts
US6993743B2 (en) * 2000-06-03 2006-01-31 Sun Microsystems, Inc. Method and apparatus for developing enterprise applications using design patterns
US20010037367A1 (en) 2000-06-14 2001-11-01 Iyer Sridhar V. System and method for sharing information via a virtual shared area in a communication network
US20020194267A1 (en) * 2000-06-23 2002-12-19 Daniel Flesner Portal server that provides modification of user interfaces for access to computer networks
US6721779B1 (en) 2000-07-07 2004-04-13 Softwired Ag Messaging proxy system
US20020143960A1 (en) * 2000-08-02 2002-10-03 Erez Goren Virtual network generation system and method
US6732237B1 (en) * 2000-08-29 2004-05-04 Oracle International Corporation Multi-tier caching system
FR2813471B1 (en) * 2000-08-31 2002-12-20 Schneider Automation COMMUNICATION SYSTEM FOR AUTOMATED EQUIPMENT BASED ON THE SOAP PROTOCOL
US7150015B2 (en) * 2000-09-01 2006-12-12 Pace Charles P Method and system for deploying an asset over a multi-tiered network
US6823495B1 (en) * 2000-09-14 2004-11-23 Microsoft Corporation Mapping tool graphical user interface
US6560769B1 (en) * 2000-09-28 2003-05-06 Unisys Corporation Computer-implemented method for generating a UML representation from JAVA source code
US6889244B1 (en) 2000-10-31 2005-05-03 Hewlett-Packard Development Company, L.P. Method and apparatus for passing messages using a fault tolerant storage system
US20020078365A1 (en) * 2000-12-15 2002-06-20 International Business Machines Corporation Method for securely enabling an application to impersonate another user in an external authorization manager
US7275220B2 (en) * 2000-12-22 2007-09-25 Epic Systems Corporation System and method for a seamless user interface for an integrated electronic health care information system
US7917888B2 (en) * 2001-01-22 2011-03-29 Symbol Technologies, Inc. System and method for building multi-modal and multi-channel applications
US20020165936A1 (en) 2001-01-25 2002-11-07 Victor Alston Dynamically branded web sites
US20020161826A1 (en) * 2001-01-25 2002-10-31 Carlos Arteaga System and method for remote communication transactions
US6567738B2 (en) * 2001-01-30 2003-05-20 Ford Global Technologies, Llc Fueling control system
US6954757B2 (en) 2001-02-02 2005-10-11 Hewlett-Packard Development Company, L.P. Framework, architecture, method and system for reducing latency of business operations of an enterprise
US7957999B2 (en) * 2001-02-13 2011-06-07 American Express Travel Related Services Company, Inc. Electronic acquisition system and method
US7111243B1 (en) 2001-03-02 2006-09-19 Oracle International Corporation Customization of tab-order functionality in internet applications
US20030004746A1 (en) * 2001-04-24 2003-01-02 Ali Kheirolomoom Scenario based creation and device agnostic deployment of discrete and networked business services using process-centric assembly and visual configuration of web service components
US6983328B2 (en) * 2001-05-18 2006-01-03 Hewlett-Packard Development Company, L.P. Trusted internet clipboard
US7152090B2 (en) * 2001-06-01 2006-12-19 Sun Microsystems, Inc. Metadata-aware enterprise application integration framework for application server environment
EP1400061B1 (en) * 2001-06-14 2012-08-08 Cisco Technology, Inc. Stateful distributed event processing and adaptive security
US6687702B2 (en) * 2001-06-15 2004-02-03 Sybass, Inc. Methodology providing high-speed shared memory access between database middle tier and database server
US6976086B2 (en) 2001-06-18 2005-12-13 Siemens Business Services, Llc Systems and methods to facilitate a distribution of information via a dynamically loadable component
US20030014439A1 (en) * 2001-06-20 2003-01-16 International Business Machines Corporation Defining a markup language representation for state chart data
US7356803B2 (en) * 2001-07-02 2008-04-08 Bea Systems, Inc. Annotation based development platform for asynchronous web services
US7117504B2 (en) 2001-07-10 2006-10-03 Microsoft Corporation Application program interface that enables communication for a network software platform
US7210094B2 (en) 2001-07-11 2007-04-24 International Business Machines Corporation Method and system for dynamic web page breadcrumbing using javascript
US6915519B2 (en) 2001-07-12 2005-07-05 International Business Machines Corporation Pluggable JMS providers in a J2EE server
US20030018661A1 (en) * 2001-07-19 2003-01-23 Darugar Parand Tony XML smart mapping system and method
US7054858B2 (en) 2001-08-01 2006-05-30 Oic Acquisition Corporation System and method for retrieval of objects from object to relational mappings
US20030028579A1 (en) * 2001-08-06 2003-02-06 Kulkarni Vinay Vasant Process for component-based application development
US7367028B2 (en) 2001-08-14 2008-04-29 National Instruments Corporation Graphically deploying programs on devices in a system
US20030043191A1 (en) * 2001-08-17 2003-03-06 David Tinsley Systems and methods for displaying a graphical user interface
US6910041B2 (en) 2001-08-23 2005-06-21 International Business Machines Corporation Authorization model for administration
US7356837B2 (en) * 2001-08-29 2008-04-08 Nader Asghari-Kamrani Centralized identification and authentication system and method
US6985939B2 (en) * 2001-09-19 2006-01-10 International Business Machines Corporation Building distributed software services as aggregations of other services
US7035944B2 (en) * 2001-09-19 2006-04-25 International Business Machines Corporation Programmatic management of software resources in a content framework environment
US7107578B1 (en) 2001-09-24 2006-09-12 Oracle International Corporation Techniques for debugging computer programs involving multiple programming languages
CA2358681C (en) * 2001-10-12 2008-01-15 Ibm Canada Limited-Ibm Canada Limitee Resource adapter and integrated development environment
US7552222B2 (en) * 2001-10-18 2009-06-23 Bea Systems, Inc. Single system user identity
US7089568B2 (en) * 2001-10-26 2006-08-08 Hitachi, Ltd. Program control method, computer system, control program, and storage medium storing the control program
US6892316B2 (en) * 2001-11-02 2005-05-10 International Business Machines Corporation Switchable resource management in clustered computer system
US7970826B2 (en) * 2001-12-06 2011-06-28 Hewlett-Packard Development Company, L.P. Transformational conversation definition language
JP2003178222A (en) * 2001-12-11 2003-06-27 Hitachi Ltd Data converting method and device between business protocols and its processing program
US7296057B2 (en) 2002-01-08 2007-11-13 International Business Machines Corporation Method for user-specified error correction in an instant messaging system
US6804686B1 (en) * 2002-04-29 2004-10-12 Borland Software Corporation System and methodology for providing fixed UML layout for an object oriented class browser
US7627631B2 (en) * 2002-05-02 2009-12-01 Bea Systems, Inc. Systems and methods for collaborative business plug-ins
US7434207B2 (en) * 2002-07-02 2008-10-07 Microsoft Corporation Floating debugger
US7111044B2 (en) * 2002-07-17 2006-09-19 Fastmobile, Inc. Method and system for displaying group chat sessions on wireless mobile terminals
JP2003150547A (en) * 2002-07-25 2003-05-23 Fujitsu Hokuriku Systems:Kk Awareness/collaboration system
US7720910B2 (en) * 2002-07-26 2010-05-18 International Business Machines Corporation Interactive filtering electronic messages received from a publication/subscription service
US20040034687A1 (en) 2002-08-01 2004-02-19 Bellsouth Intellectual Property Corporation Extensible instant messaging service
US7523174B2 (en) 2002-10-15 2009-04-21 International Business Machines Corporation Dynamic portal assembly
US7206813B2 (en) 2002-10-17 2007-04-17 International Business Machines Corporation Method, computer program product and apparatus for implementing professional use of instant messaging
KR100501410B1 (en) 2002-11-27 2005-07-18 한국전자통신연구원 System and method of generating EJB component from reusable business logic in servlet
US7577705B2 (en) 2003-01-15 2009-08-18 Microsoft Corporation Extensible communication controls
US20040145608A1 (en) 2003-01-24 2004-07-29 International Business Machines Corporation User interface for conducting chats over a network
US20040158610A1 (en) 2003-02-10 2004-08-12 Davis Joel A. Client proxying for instant messaging
US7076772B2 (en) 2003-02-26 2006-07-11 Bea Systems, Inc. System and method for multi-language extensible compiler framework
US20040225995A1 (en) 2003-02-28 2004-11-11 Kyle Marvin Reusable software controls
US7096422B2 (en) 2003-02-28 2006-08-22 Microsoft Corporation Markup language visual mapping
US7739223B2 (en) * 2003-08-29 2010-06-15 Microsoft Corporation Mapping architecture for arbitrary data models

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5446842A (en) * 1993-02-26 1995-08-29 Taligent, Inc. Object-oriented collaboration system
US5983214A (en) * 1996-04-04 1999-11-09 Lycos, Inc. System and method employing individual user content-based data and user collaborative feedback data to evaluate the content of an information entity in a large information communication network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1275055A4 *

Also Published As

Publication number Publication date
US7249157B2 (en) 2007-07-24
US7051072B2 (en) 2006-05-23
WO2001061595A1 (en) 2001-08-23
CA2400566A1 (en) 2001-08-23
WO2001061596A8 (en) 2002-02-28
US7051071B2 (en) 2006-05-23
WO2001061544A9 (en) 2002-10-24
US20020019797A1 (en) 2002-02-14
US20020013759A1 (en) 2002-01-31
WO2001061545A9 (en) 2002-10-24
US7143186B2 (en) 2006-11-28
CA2400438A1 (en) 2001-08-23
AU2001247984A1 (en) 2001-08-27
US20020161688A1 (en) 2002-10-31
EP1275055A4 (en) 2003-06-11
EP1275055A1 (en) 2003-01-15
AU2001238380A1 (en) 2001-08-27
WO2001061545A1 (en) 2001-08-23
AU2001238381A1 (en) 2001-08-27
WO2001061542A1 (en) 2001-08-23
EP1275056A1 (en) 2003-01-15
EP1257957A4 (en) 2003-05-21
US20010039570A1 (en) 2001-11-08
US20020156693A1 (en) 2002-10-24
EP1277145A4 (en) 2003-05-21
US20020010741A1 (en) 2002-01-24
EP1275056A4 (en) 2003-05-21
AU2001247985A1 (en) 2001-08-27
EP1277145A1 (en) 2003-01-22
WO2001061596A1 (en) 2001-08-23
EP1257957A1 (en) 2002-11-20
AU2001238340A1 (en) 2001-08-27
US7418475B2 (en) 2008-08-26

Similar Documents

Publication Publication Date Title
US7249157B2 (en) Collaboration system for exchanging of data between electronic participants via collaboration space by using a URL to identify a combination of both collaboration space and business protocol
Fensel et al. The web service modeling framework WSMF
US9197694B2 (en) Providing on-demand access to services in a wide area network
Aissi et al. E-business process modeling: the next big step
Medjahed et al. Business-to-business interactions: issues and enabling technologies
US7039597B1 (en) Method and system for managing collaboration within and between enterprises
Sayal et al. Integrating workflow management systems with business-to-business interaction standards
US20140289346A1 (en) Method, system, and computer program product for sending and receiving messages
US20100306536A1 (en) System and method for routing messages between applications
Umar The emerging role of the Web for enterprise applications and ASPs
Zhao XML-based frameworks for Internet commerce and an implementation of B2B e-procurement
Raju et al. B2B Integration Using SAP NetWeaver PI
Qureshi et al. Improving global business economics by seamless business integration framework
Nori eBusiness Architectures and Standards
Pasanen The Role of Third-Party Service Provider in B2B Integration
Mueller State of the Art in Service-Oriented Architecture: Current Advances and Approaches to its Implementation

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2400438

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 2001910812

Country of ref document: EP

AK Designated states

Kind code of ref document: C2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: C2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

COP Corrected version of pamphlet

Free format text: PAGES 1/18-18/18, DRAWINGS, REPLACED BY NEW PAGES 1/22-22/22; DUE TO LATE TRANSMITTAL BY THE RECEIVING OFFICE

WWP Wipo information: published in national office

Ref document number: 2001910812

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

Ref country code: DE

Ref legal event code: 8642

NENP Non-entry into the national phase

Ref country code: JP