XML 2001 logo

Practical Steps in Implementing B2B E-Commerce Solutions with XML

Patrick Haggerty, III <Patrick.Haggerty@ivisgroup.com>

1. IVIS Group – Mission Critical XML

Consulting, Technology and Training – based in London

Member of W3C and sponsor member of OASIS

Using technology to solve business problems

Deliver solutions focusing on:

Projects

2. Scope

The presentation is based on a real-life project

The focus is on bespoke solutions with XML as the protocol used to connect business partners

3. What are we going to cover?

4. Evolution

5. EDI

Electronic Data Interchange (EDI) started B2B systems over a decade ago

Minimum penetration

Suffers from the following problems:

6. What is needed for data exchange?

Open data structure

Standard data format

Extensible definition

Standard programming interface

Simple to use, maintain and expand

In a word, or rather TLA, XML

7. What are we going to cover?

8. B2B market today

Schema repositories

Major players

Standards and protocols

9. OASIS

http://www.oasis-open.org

Organization for the Advancement of Structured Information Standards

Non-profit international consortium

Hosts XML.org www.xml.org

10. BixTalk

http://www.biztalk.org

Microsoft initiative

Two types of schemas are stored: XDR schemas and XSD Schemas.

Gradually moving toward XSD

BizTalk also refers to a Microsoft product BizTalk Server

11. ebXML

http://www.ebxml.org

United Nations (UN/CEFACT) and OASIS initiative

Set of specifications to enable a modular electronic business framework

Uses XML, HTTP and UML in the specifications

12. RosettaNet

http://www.rosettanet.org

Information Technology, Electronic Components and Semiconductor Manufacturing industries

Plan to expand to include other adjacent industries, such as retail automotive, consumer electronics and telecommunications

Provides schemas and guidelines to business partners to align services

13. What are we going to cover?

14. B2B market tomorrow

Web Services

15. Web Services – the fourth revolution

16. Web Services – New Generation of Applications

New model for creating dynamic distributed applications

Common interfaces for communication across the Internet

17. Emergence of Service Oriented Architecture (SOA)

Today most business applications are based on a tightly-coupled design

The main drawback is any change in any of the subsystems has expensive implications

The idea of SOA is not new

18. SOA

19. Service Requestor (SR)

For a company to play this role there must be one or more companies who provide services in line with the SR

20. Service Provider (SP)

For a company to be an SP it needs to:

These services could be either:

21. Service Broker (SB)

Registry - White Pages

Broker - Yellow Pages

Aggregator / Gateway - Green Pages

22. Web Services

Programmable application logic accessible using standard Internet protocols

Combines the best aspects of component-based development and the Web

Accessed by messages, not object-model-specific protocols, such as DCOM, RMI, or IIOP

23. Requirements for service-based development

A standard way to represent data

A common, extensible, message format

A method to describe services

A way to discover services

24. SOAP - The Simple Object Access Protocol (SOAP)

Lightweight protocol for information exchange

Defines a set of rules to represent data

Defines an extensible message format for representing remote procedure calls RPC over HTTP

W3C working draft

25. WSDL

WSDL- www.w3.org/TR/wsdl

WSDL Web Services Description Language

XML format for describing network services

Describes operational information such as the interfaces needed for communication

Describes what a web service can do, where it resides, and how to invoke it

Formulated by Microsoft, IBM and Ariba and is currently being considered by the W3C

XML-based contract language

26. UDDI

http://www.uddi.org

The Universal Description, Discovery and Integration Project (UDDI)

Standard registry for companies

Focused particularly on middleware connectivity

Uses XML to 'describe' the systems that companies use to interface with one another

The registry went live on May 2nd 2001 with HP taking responsibility (from Ariba) to run the registry

27. What are we going to cover?

28. Building B2B applications

The direction is set but many of the standards are not finalised

Applications can still be built today

The key factors in the design are:

29. Building B2B applications

The following architecture is based on the IVIS e-framework used at Tesco.com

Nine virtual stores launched between October 1999 and May 2001

30. The Challenge

Tesco,the largest on-line grocery retailer in the world, wanted to expand to non-food market with the following objectives:

31. The architecture

32. Advantages of the architecture

Business partners do what they do best

Each business partner treats the others as black-boxes

Interactions between business partners based on an agreed schema

33. The retailer

Maintain brand

Customer interaction

Payment processing

Central hub for the communication with the business partners

34. The data provider

Provide data

Presents catalogues of data in various views

Provides a run-time service to the retailer

Receives the request for the data in XML

Responds with the data in XML

35. The order fulfiller

Dispatches orders

Receives purchase order requests in XML

Sends order status updates to retailer in XML

Sends stock information to data provider

Sends sales history to data provider for ranking

36. XML design stages

37. XML design stages

Modelling

Processing

Presentation

38. Document Type Definition DTDs

The only standard until recently to model and validate XML documents

Based on Standard Generalized Markup Language (SGML)

Well established but .. Text based technology

39. DTD

40. XML Schemas

W3C recommendation 2nd May 2001

Everything DTDs can do and more

Used for

41. XML Schema

42. The modelling stage

Objectives

The basis upon which the system is built

All business partners need to understand and agree the rules

Ownership is crucial

By viewing the schema we can identify all the business interactions between the business partners

43. Traps to watch out for during modelling

Schemas vs. XML documents

Try to use a standard vocabulary

Build with extensibility in mind

Distinguish between validation and modelling

44. The processing stage

Initiates and handles online communication

Requests for data from the data provider

Sends purchase orders to the fulfillers and receives confirmation

Requests and results are sent and received in XML over HTTP

Document Object Model (DOM) processing is mainly used

This is similar to SOAP in principle

45. State management

46. Data carrier

47. Traps to watch out for during processing

Attributes order is not enforced

Don't assume anything!

48. Traps to watch out for during processing ..

Manual parsing is painful

Passing objects across process boundary is expensive

Use Simple API for XML (SAX) for large documents

49. Presentation stage

An Internet-based application needs to transform XML to HTML on the server

This is mainly an XSL exercise

The first stage in building the XSL is to obtain an HTML skeleton from a graphic design agency

50. Caching

With flexible architectures there are dangers with performance degradation

Caching minimises performance degradation

Cache HTML results

51. Traps to watch out for during presentation

The user interface must not dictate the design!

Educate graphic designers in well-formed HTML

Maximise the use of CSS

Evaluate the options for XML transformation

52. Team Communication

There are many players in such a system

53. Tools

DTDs editors: Near and Far

General XML, Schemas editors: XMLSpy

Schemas editor: XML Authority

XSL editor: eXcelon Stylus

Parsers:

XSL Processors

54. Repositories

RDMBS

OODBMS

Native XML

55. Summary

In this presentation we

56. Questions?

Patrick.Haggerty@ivisgroup.com

http://www.ivisgroup.com

Biography

Patrick Haggerty, III
Consultant
IVIS Group
Ealing
London
United Kingdom
Email: Patrick.Haggerty@ivisgroup.com Web: www.ivisgroup.com

Patrick E. Haggerty III brings to Ivis over 20 years of programming and course development experience. Patrick’s specialty is designing customized applications for large corporations and, based on the experience gained from building such personalized systems, creating bespoke training solutions tailored to the client’s needs.

Patrick has developed custom courses for such clients as Tesco, Intel, The Jet Propulsion Lab, Northrop Grumman, Motorola, Deutsche Bank, EDS, Anderson Consulting, Bell South, Bell Atlantic, Delta Airlines, The Army Corps of Engineers, Lucent, The Department of Defense and the NSA. In addition to designing custom courses, Patrick has also created numerous general courses for the public sector.

Patrick began his IT career as a freelance programmer before moving on to what would become the second largest ISP in the United States. Using Java and Perl, he developed, implemented and maintained proprietary computer based training programs, job aides and tools to support the ISP’s telephone and on-line technical support staff.

He has also been a member of the prestigious Kaplan International test preparation organization providing test preparation assistance for clients preparing for standardized tests including the SAT, GRE, GMAT and LSAT.

A native Texan, Patrick now calls Mississippi his home when in the States. He was educated at Pensacola Junior College where he received an Associates Degree with a Mathematics Concentration. He went on to study Actuarial Science at Georgia State University.

Programming Expertise: Java, ASP, Perl, VB Web, C#, JavaScript, HTML, .NET

Course Development: Introduction to Java, Java Web Development, Java for Enterprise Development, Java Enterprise Java Beans, Java GUI Development, Java Database Applications, Java Smartcard Development, Java Security and Cryptography, Introduction to .NET with C#, Advanced .NET with C#, ASP .NET with C#, Developing .NET Web Services with C#, Intro ASP Development, Advanced ASP Development, Visual Basic for Web Development, Building VB COM Components for Web Apps, Introduction to UML, OO Application design with UML, CGI Development with Perl, Hands-On Front Page