Title: ebXML Technical Architecture
1ebXML Technical Architecture
- From ebXML Technical Architecture Specification
v1.04, http//www.ebxml.org/specs/ebTA_print.pdf
2Design Objectives
- For over 25 years Electronic Data Interchange
(EDI) has given companies the prospect of
eliminating paper documents, reducing costs, and
improving efficiency by exchanging business
information in electronic form. - Ideally, companies of all sizes could conduct
eBusiness in a completely ad hoc fashion, without
prior agreement of any kind. - But this vision has not been realized with EDI
only large companies are able to afford to
implement it, and much EDI-enabled eBusiness is
centered around a dominant enterprise that
imposes proprietary integration approaches on its
Trading Partners.
3Design Objectives
- In the last few years, the Extensible Markup
Language (XML) has rapidly become the first
choice for defining data interchange formats in
new eBusiness applications on the Internet. - Many people have interpreted the XML groundswell
as evidence that "EDI is dead" made completely
obsolete by the XML upstart -- but this view is
naïve from both business and technical
standpoints.
4Design Objectives
- EDI implementations encode substantial experience
in Business Processes, and companies with large
investments in EDI integration will not abandon
them without good reason. - XML enables more open, more flexible business
transactions than EDI. - XML might enable more flexible and innovative
"eMarketplace" business models than EDI. - But the challenges of designing Messages that
meet Business Process requirements and
standardizing their semantics are independent of
the syntax in which the Messages are encoded.
5Design Objectives
- The ebXML specifications provide a framework in
which EDI's substantial investments in Business
Processes can be preserved in an architecture
that exploits XML's new technical capabilities.
6ebXML System Overview
1
COMPANY A
Request Business Details
2
Build Local System
Implementation
3
Register Implementation Details
Register COMPANY A Profile
Download
4
Query about COMPANY A profile
Agree on Business Arrangement
Scenarios and Profiles
5
DO BUSINESS TRANSACTIONS
6
COMPANY B
7ebXML System Overview
- The conceptual overview introduces the following
concepts and underlying architecture - A standard mechanism for describing a Business
Process and its associated information model. - A mechanism for registering and storing Business
Process and Information Meta Models so they can
be shared and reused. - Discovery of information about each participant
including - The Business Processes they support.
- The Business Service Interfaces they offer in
support of the Business Process. - The Business Messages that are exchanged between
their respective Business Service Interfaces. - The technical configuration of the supported
transport, security and encoding protocols.
8ebXML System Overview
- A mechanism for registering the aforementioned
information so that it may be discovered and
retrieved. - A mechanism for describing the execution of a
mutually agreed upon business arrangement which
can be derived from information provided by each
participant from item 3 above. (Collaboration
Protocol Agreement CPA) - A standardized business Messaging Service
framework that enables interoperable, secure and
reliable exchange of Messages between Trading
Partners. - A mechanism for configuration of the respective
Messaging Services to engage in the agreed upon
Business Process in accordance with the
constraints defined in the business arrangement.
9ebXML Infrastructure
- Trading Partner Information CPP and CPAs
- Business Process and Information Modeling
- Core Components and Core Library Functionality
- Registry Functionality
- Messaging Service Functionality
10Trading Partner InformationIntroduction
- To facilitate the process of conducting
eBusiness, potential Trading Partners need a
mechanism to publish information about the
Business Processes they support along with
specific technology implementation details about
their capabilities for exchanging business
information. - This is accomplished through the use of a
Collaboration Protocol Profile (CPP). - The CPP is a document which allows a Trading
Partner to express their supported Business
Processes and Business Service Interface
requirements in a manner where they can be
universally understood by other ebXML compliant
Trading Partners. Â - A special business agreement called a CPA is
derived from the intersection of two or more
CPPs. The CPA serves as a formal handshake
between two or more Trading Partners wishing to
conduct business transactions using ebXML.
11Trading Partner InformationCPP Formal
Functionality
- The CPP contains essential information about the
Trading Partner including, but not limited to - contact information,
- industry classification,
- supported Business Processes,
- Interface requirements and Messaging Service
requirements. - Each ebXML compliant Trading Partner SHOULD
register their CPP(s) in an ebXML compliant
Registry Service, thus providing a discovery
mechanism that allows Trading Partners to - find one another,
- discover the Business Process that other Trading
Partners support.
12Trading Partner InformationCPA Formal
Functionality
- A Collaboration Protocol Agreement (CPA) is a
document that represents the intersection of two
CPPs and is mutually agreed upon by both Trading
Partners who wish to conduct eBusiness using
ebXML. Â - A CPA describes
- the Messaging Service and
- the Business Process requirements that are agreed
upon by two or more Trading Partners. Â
13Trading Partner InformationCPP Interfaces
- A CPP SHALL be capable of referencing one or more
Business Processes supported by the Trading
Partner owning the CPP instance. - The CPP SHALL reference the Roles within a
Business Process that the user is capable of
assuming. - An example of a Role could be the notion of a
Seller and Buyer within a Purchasing
Business Process. - The CPP SHALL be capable of being stored and
retrieved from an ebXML Registry Mechanism. - A CPP SHOULD also describe binding details that
are used to build an ebXML Message Header.
14Trading Partner InformationCPA Interfaces
- A CPA governs the Business Service Interface used
by a Trading Partner to constrain the Business
Service Interface to a set of parameters agreed
to by all Trading Partners who will execute such
an agreement. - CPAs have Interfaces to CPPs in that the CPA is
derived through a process of mutual negotiation
narrowing the Trading Partners capabilities (CPP)
into what the Trading Partner will do (CPA). - A CPA must reference to a specific Business
Process and the interaction requirements needed
to execute that Business Process. - A CPA MAY be stored in a Registry mechanism,
hence an implied ability to be stored and
retrieved is present.
15Business Process and Information Modeling
- The ebXML Business Process and Information Meta
Model is a mechanism that allows Trading Partners
to capture the details for a specific business
scenario using a consistent modeling methodology.
- A Business Process describes in detail how
Trading Partners take on roles, relationships and
responsibilities to facilitate interaction with
other Trading Partners in shared collaborations. - The interaction between roles takes place as a
choreographed set of business transactions. - Each business transaction is expressed as an
exchange of electronic Business Documents.
Business Documents MAY be composed from
re-useable Business Information Objects. - At a lower level, Business Processes can be
composed of re-useable Core Processes, and
Business Information Objects can be composed of
re-useable Core Components.
16Business Process and Information Modeling
ebXML Meta Model - Semantic Subset
17Business Process and Information Modeling
ebXML Meta Model
18Business Process and Information ModelingFormal
Functionality
- The representation of a Business Process document
instance SHALL be in a form that will allow both
humans and applications to read the information.
- This is necessary to facilitate a gradual
transition to full automation of business
interactions. - The Business Process SHALL be storable and
retrievable in a Registry mechanism. - Business Processes MAY be registered in an ebXML
Registry in order to facilitate discovery and
retrieval.
19Business Process and Information
ModelingRelationship to CPP and CPA
- The CPP instance of a Trading Partner defines
that partners functional and technical
capability to support - zero, one, or more Business Processes and
- one or more roles in each process.
- The Interface between the Business Process and
the CPA is the part of the Business Process
document.
20Business Process and Information
ModelingRelationship to Core Components
- A Business Process instance SHOULD specify the
constraints for exchanging business data with
other Trading Partners. - The business information MAY be comprised of
components of the ebXML Core Library. - A Business Process document SHALL reference the
Core Components directly or indirectly using a
XML document that references the appropriate
Business and Information Models and/or Business
Documents (possibly DTDs or Schemas). - The mechanism for interfacing with the Core
Components and Core Library SHALL be by way of a
unique identifier for each component.
21Business Process and Information
ModelingRelationship to ebXML Messaging
- A Business Process instance SHALL be capable of
being transported from a Registry Service to
another Registry Service via an ebXML Message. - It SHALL also be capable of being transported
between a Registry and a users application via
the ebXML Messaging Service.
22Business Process and Information
ModelingRelationship to a Registry System
- A Business Process instance intended for use
within the ebXML infrastructure SHALL be
retrievable through a Registry query, and
therefore, each Business Process SHALL contain a
unique identifier.
23Core Components and Core Library Functionality
- A Core Component
- captures information about a real world business
concept, and - the relationships between that concept, other
Business Information Objects, and a contextual
description that describes how a Core or
Aggregate Information Entity may be used in a
particular ebXML eBusiness scenario. - A Core Component can be either
- an individual piece of business information, or
- a natural go-together family of Business
Information Objects that may be assembled into
Aggregate Information Entities. - The ebXML Core Components project team SHALL
define an initial set of Core Components. - ebXML users may adopt and/or extend components
from the ebXML Core Library.
24Core Components and Core Library Functionality
- A Core Component MAY be referenced indirectly or
directly from a Business Document instance. - The Business Process MAY specify a single or
group of Core Components as required or optional
information as part of a Business Document
instance. - A Core Component SHALL interface with a Registry
mechanism by way of being storable and
retrievable in such a mechanism. - A Core Component MAY interface with an XML
Element from another XML vocabulary by the fact
it is bilaterally or unilaterally referenced as a
semantic equivalent.
25Registry Functionality
- An ebXML Registry provides a set of services that
enable the sharing of information between Trading
Partners. - A Registry is a component that maintains an
interface to metadata for a registered item. - Access to an ebXML Registry is provided through
Interfaces (APIs) exposed by Registry Services.
26Registry Functionality
Overall Registry Architecture
27Messaging Service Functionality
- The ebXML Message Service mechanism provides a
standard way to exchange business Messages among
ebXML Trading Partners. - The ebXML Messaging Service provides a reliable
means to exchange business Messages without
relying on proprietary technologies and
solutions. - An ebXML Message contains structures for a
Message Header (necessary for routing and
delivery) and a Payload section. - The ebXML Messaging Service is conceptually
broken down into three parts - an abstract Service Interface,
- functions provided by the Messaging Service
Layer, and - the mapping to underlying transport service(s).
28The Messaging Service Architecture
29Messaging Service Functionality
- The ebXML Messaging Service performs all security
related functions including - Identification
- Authentication (verification of identity)
- Authorization (access controls)
- Privacy (encryption)
- Integrity (message signing)
- Non-repudiation
- Logging
30ebXML Message Structure
31Example ebXML Business ScenariosScenario 1
- Scenario 1 Two Trading Partners set-up an
agreement and run the associated exchange - In this scenario
- Each Trading Partner defines its own Profile
(CPP).Each Profile references - One or more existing Business Process found in
the ebXML Registry - One of more Message Definitions. Each Message
definition is built from reusable components
(Core Components) found in the ebXML Registry - Each Profile (CPP) defines
- The business transactions that the Trading
Partner is able to engage into - The Technical protocol (like HTPP, SMTP etc) and
the technical properties (such as special
encryption, validation, authentication) that the
Trading Partner supports in the engagement - The Trading Partners acknowledge each other
profile and create a CPA.
32Example ebXML Business ScenariosScenario 1
- The Trading Partners implement the respective
part of the Profile. This is done - Either by creating/configuring a Business Service
Interface. - Or properly upgrading the legacy software running
at their side - In both cases, this step is about
- Plugging the Legacy into the ebXML technical
infrastructure as specified by the Messaging
Service. - Granting that the software is able to properly
engage the stated conversations - Granting that the exchanges semantically conform
to the agreed upon Message Definitions - Granting that the exchanges technically conform
with the underlying ebXML Messaging Service. - The Trading Partners start exchanging Messages
and performing the agreed upon commercial
transactions.