04/13/2004

Sang Shin

ebXML
1

sang.shin@sun.com Java ™ Technology Evangelist Sun Microsystems, Inc. www.javapassion.com/webservices/
2

Agenda
? ?

What is and Why ebXML? Technical architecture
– – – – –

Business process CPP and CPA Registry/Repository Messaging Service Core components

? ? ?

ebXML Case study ebXML adoption & interoperability ebXML Message Service demo

What is ebXML? Why ebXML?
4
5

04/13/2004

ebXML Vision

A global electronic market place where enterprises of any size, anywhere can:
– Find each other electronically – Conduct business through exchange of XML
based business messages
9

04/13/2004

Why ebXML?
? ?

Why ebXML?
SOAP, WSDL, UDDI alone are not adequate!
?

Automation of business collaboration Need for standardizing business collaboration
– – – –

What are the business processes? Who are the parties involved in business collaboration? What are their roles? What and how do XML documents get exchanged in the business collaborations? What are the security, reliability, quality of service requirements of this business collaboration?
10

WSDL does not address business collaboration SOAP (in its basic form) does not provide secure and reliable message delivery UDDI does not provide repository capability for business objects

?

?

?

ebXML addresses the above needs

11

ebXML Value Addition
?

Why ebXML?
Existing B2B Frameworks are not adequate!
?

Business process, CPP/CPA over WSDL

Defines business process collaboration Repository as well as registry Reliability and security semantics Common business objects
12

EDI

?

ebXML Reg/Rep over UDDI

Too heavy-weight and too rigid PIP definitions are somewhat rigid and cannot be discovered per partner basis RosettaNet community has decided to use ebXML Message Service as their future implementation framework Proprietary, Single-vendor, Single-platform No concept of Business collaboration & Partner profile

?

RosettaNet
– –

?

ebXML Message Service over SOAP

?

Core components

?

BizTalk
– –

13

04/13/2004

Web Services Adoption Phases
?

Simple Web Services (WUS) vs. B2B Collaboration (ebXML)
Simple Web Services
l l l l

1st Phase – Simple Web Services (Now)

Consumer-focused, stateless Deployed within organization boundaries to enable internal integration Deployed on Extranets to enable business process integration with trading partners, customers, other players in your value chain
14
Simple interaction Consumer oriented Short-living process No business collaboration No partner profile Not secure, not reliable Does not support non-repudiation No repository support

B2B Collaboration
l l l l

?

2nd Phase – EAI Web Services (Begun)

?

3rd Phase – Business (B2B) Web Services (2004?)

l l

l l

l

l

l

l

Complex interaction Business oriented Long-running process Supports business collaboration Supports partner profile Secure and reliable and non-repudiation Supports nonrepudiation Registry and repository

15

EAI vs. B2B Collaboration (ebXML)
EAI
l

ebXML Project Teams
? ? ? ? ? ?

B2B Collaboration
l

l

l l

Within a business organization Centralized control Implicit contract Small number of business processes and participants

l

Between business organizations Distributed control Explicit contract Potentially large number of business processes and participants
16

l l

? ? ? ? ?

ebXML Requirements Business Process Methodology Technical Architecture Core Components Transport/Routing and Packaging Security Registry and Repository Quality Review Proof of Concept Trading Partners Profiles Marketing, Awareness and Education
17

04/13/2004

ebXML Use Case Scenario
Business Profiles Business Profiles

1
Request Business Details

2

EbXML Registry

3 Register Implementation Details
Register COMPANY A Profile

Build Local System Implementatio n

ebXML Use Case Scenario
18

t ou ab ery Qu

ebXML Architectural Modules
? ?

Business Process Specifications Partner Profile and Agreements Registry and Repository Messaging Service Core components

d loa wn Do

4
nt me ge an Arr ess sin Bu

e ofil pr A NY PA s M ile CO of Pr d an ios ar en Sc

5

on ree Ag

6

EbXML compliant system

19

ebXML Architecture
20

? ? ?

They can be used individually!
21

04/13/2004

ebXML Architecture
Business Process Specifications Design Time Specification Partner Profiles and Agreements Specification
Models and Profiles Registration and Discovery

ebXML Architecture
Business Process Specifications
Register/discover

Registry Repository Registry
Partner Profile Configure Derive Derive Partner Agreement Governs

Register/discover

Partner Profile Configure

Runtime

Messaging Service 22

Business Service Interface

Message Service

Message

Business Service Interface

Application

Application

23

Business Process Specification

04/13/2004

Business Process Specification
?

Business Process Specification
?

?

?

?

Describes collaboration between two partners Defines roles, relationships and responsibilities Defines choreography of business documents Expressed in platform and vendor neutral format
26

Can be modeled with UMM (UN/CEFACT Modeling Methodology) Formally described by Business Process Specification Schema (BPSS) Machine interpretable Referenced by CPP and CPA Refers to Business Document Definitions
27

?

? ? ?

Business Process: Conceptual View
Create Long Term Contract

Business Process Specification Example (Partial)
<BusinessTransaction name="Create Order" > <RequestingBusinessActivity name="" isNonRepudiationRequired="true" timeToAcknowledgeReceipt=”P2D" timeToAcknowledgeAcceptance=”P3D"> <DocumentEnvelope BusinessDocument="Purchase Order"/ > </RequestingBusinessActivity> <RespondingBusinessActivity name="" isNonRepudiationRequired="true" timeToAcknowledgeReceipt=”P5D"> <DocumentEnvelope isPositiveResponse="true" BusinessDocument="PO Acknowledgement"/> </DocumentEnvelope> </RespondingBusinessActivity> </BusinessTransaction>

Business Process Collaboration
Transaction Transaction

...

Business Process

Forecast Component Requirements Customer customer

Send Planning Document

Supplier

Place Order

Ship Material

Collaboration
Arrange Payment

28

29

04/13/2004

How Does ebXML BPSS Relate To Others?
? ? ? ? ? ?

Types of Choreography Standards
? ?

BPML WSCI WSFL XLANG WSDL ebXML CPP/CPA
30

Interface definitions Collaboration (agreement) definitions

What happens between interfaces What happens behind interfaces

?

Implementation definitions

31

ebXML BPSS Versus ...

Interface

Implementation

CPP/CPA
32

Collaboration

04/13/2004

CPP (Collaboration Protocol Profile) Describes capabilities of an individual Party
?

– –

Business capabilities
?

CPA (Collaboration Protocol Agreement)
?

Business processes Messaging exchange capabilities Transport, messaging, security constraints

Technology capabilities
? ?

?

?

Provides per-party configuration to business process specifications Stored in ebXML registry

?

Derived from CPP’s of trading partners Describes the capabilities that trading partners have agreed to use to perform a particular Business Collaboration
– –

Business partners can find each other's CPP through registry
34

Contract between two or more trading partners Does not dictate implementation details
35

CPA and Runtime Environment
?

CPP (or CPA) and Business Process Specification
CP P(A)
<PartyInfo Party Id="N01"> <ProcessSpecificationxlinkh ref="http:/

CPA is used by trading parties' computing systems to set up runtime environment
– –

For the exchange of business messages Manifested in Messaging Service Handler (MSH) ? Security ? Reliability

Process Specification (A1) Business Collaboration Process Specification (A2)

<PartyInfo Party Id="N02"> <ProcessSpecificationxlinkh ref="http:/

?

Along with Process Specification, defines a conversation between the two Parties
36

Business Collaboration

37

04/13/2004

CPA Example (Partial)
<CollaborationProtocolAgreement id = "yoursandmycpa" ...> <Party partyId = "N01"> <CollaborationRole roleId = "N02" > <CollaborationProtocol version = "1.0" name="OrderProcessing" xlink:href = "http://www.ebxml.org/services/purchasing.xml"/> <Role name = "buyer"/> </CollaborationRole> <DeliveryChannel ...> <Characteristics nonrepudiationOfOrigin = "false" confidentiality = "false" Security authenticated = "false" authorized = "false"/> </DeliveryChannel> <Transport transportId = "N05"> Transport <Protocol version = "1.1">SMTP</Protocol> <Endpoint uri = "mailto:bob@localhost" type = "request"/> </Transport> <DocExchange docExchangeId = "N06"> <ebXMLBinding version = "1.0"> <ReliableMessaging deliverySemantics = "BestEffort" idempotency = "true"> <Retries>5</Retries> <RetryInterval>60</RetryInterval> Reliability </ReliableMessaging>

Message Service (TR&P)
38

Messaging Service Overview
? ?

XML Message Layers
XML Document <- Infrastructure ->

Transport, Routing, and Packaging (TRP) Uses SOAP with Attachments as payload envelope

Transport of non-XML data

?

Supports higher-level semantics needed in business transactions
– –

Context

Security Reliability HTTP, SMTP, FTP
40

Envelope Transport

?

Runs over various communication protocols

41

04/13/2004

Message Service Design Goals
?

Message Service Design Goals
?

Robust, yet basic, functionality to transfer messages between trading parties Using various existing communication protocols Allowing for messaging reliability, persistence, security and extensibility Allowing robust, yet low-cost solution
42

?

?

Support both XML-based and non XMLbased business information transfer Allow vendors to add robustness and higher performance in their implementation

?

Scalability

?

Leverage existing standards
43

?

Where is ebXML Message Service? What is MSH (Message Service Handler)?
Application

Functional Modules of MSH

MSH Node
ebXML Message Service

MSH Node

Application

44

45

04/13/2004

Goals of ebXML Registry
?

To enable sharing of information between interested parties for the purpose of enabling business process integration between such parties

Registry and Repository
47

ebXML Registry Specifications
?

Registry Objects and Metadata
?

Registry services specification
– – – –

Registry objects
– – –

Registry services Interaction protocols Message definitions XML schema
?

Refers to an object that has been submitted to a Registry for storage and safekeeping Called "Repository item" XML document or DTD, business process models, CPPs, etc. Used by registry to classify and manage registry objects Represented by RegistryEntry
49

?

Registry information Model
– –

Metadata
– –

Types of metadata Relationship among metadata classes
48

04/13/2004

Registry Operations
?

Life-cycle of Repository Item

?

Type of operations – Submitting – Managing – Searching – Retrieving – Removing Performed through registry interface
50 51

Motivation of Core Components
?

Many business processes are common across industry domains

Procurement, Payment, and Shipping, etc

?

Business information requirements are the same

Information on "product"

?

Core Components

How business information is used within business processes are same

How information on "product" is identified and described
54

04/13/2004

Core Components
?

Core Components Examples
?

A set of common data items that captures real world business concepts

Core component A

Reusable pieces of contents

Vendor (Industry1), Manufacturer (Industry 2), Supplier (Industry 3) Distributor (Industry 1), Wholesaler (Industry 2), Merchant (Industry 3) Store (Industry 1), Outlet (Industry 2), Retailer (Industry 3)
56

? ?

Use industry-neutral notation Enables interoperability among different industry domains

?

Core component B

?

Core component C

55

ebXML Case Study

04/13/2004

04/13/2004

Java™ Programming APIs for ebXML
?

Java API for XML Messaging (JAXM) (JSR-67)

with ebXML Message Service profile

?

Adoption and Interoperability

Java API for XML Registries (JAXR) (JSR93)

ebXML Registry CPP/CPA

?

Java API for CPP/CPA (JSR-157)

66

04/13/2004

ebXML Endorsements
?

ebXML Endorsements
?

Open Travel Alliance (OTA)

RosettaNet

Travel industry Application integration and interoperability Consumer goods manufacturers and retailers Healthcare
67
?

?

Open Application Group (OAGI)

Adopted ebXML Messaging Service as their future implementation framework Automotive industry

Covisint

?

Global Commerce Initiative (GCI)

?

?

HL7

STAR (Standard for Technology for Automotive Retail)

Automotive retail
68

ebXML Commercial Products
? ? ? ? ? ? ? ?

ebXML Open Source
?

XMLGlobal (www.xmlglobal.com) BindSystems (www.bindsys.com) IONA Technology (www.iona.com) eXcelon (www.exceloncorp.com) zenAptix (www.zenaptix.com) KTNET (www.ktnet.com) BitDaemons (www.bitdaemons.com) Sybase (www.sybase.com)
69

ebXML V2 Registry
– –

Open source as well as public hosting by H.K. University ebxmlrr.sourceforge.net/ Open source donated from Sybase www.sybase.com/developer/opensource

?

Messaging Service
– –

70

04/13/2004

End

If You Only Remember One Thing…
ebXML is the standard-based electronic business framework that will enable the next big thing, Business Web Services.

71

Sign up to vote on this title
UsefulNot useful