52
XML : Data Driving Business? Dr. Vasudev Kamath Persistent Systems

XML : Data Driving Business?

  • Upload
    adanna

  • View
    35

  • Download
    0

Embed Size (px)

DESCRIPTION

XML : Data Driving Business?. Dr. Vasudev Kamath Persistent Systems. Outline of Talk. Talk in 2 parts Part 1 will focus on the following a brief introduction to XML and the motivation for using it in business applications - PowerPoint PPT Presentation

Citation preview

Page 1: XML : Data Driving Business?

XML : Data Driving Business?

Dr. Vasudev Kamath

Persistent Systems

Page 2: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk2

Outline of Talk

• Talk in 2 parts• Part 1 will focus on the following

– a brief introduction to XML and the motivation for using it in business applications

– Problems with Electronic Data Interchange (EDI) and the use of XML for business integration

– Various XML-based standards relating to business integration

– Issues relating to Indian context

• Part 2 will cover some technical issues in XML

Page 3: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk3

EDI: a method for business integration

• Need felt for evolving standardized means of electronic information exchange

• EDI definition by EAN (standards body)– "the transfer of structured data, by agreed message

standards, from one computer application to another by electronic means and with a minimum of human intervention."

• Early EDI implementations used proprietary formats

• Many transaction standards for EDI have been developed over the last few years

– X12 (ANSI)– EANCOM (EAN)– UN/EDIFACT– OBI

Page 4: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk4

What does EDI contain?

• EDI consists of– Trading Partners

• Business organizations who agree to exchange business documents via EDI

– Translation Software • software that converts files to or from an EDI format

– Communications• transmission and reception of electronic data between

trading partners using compatible hardware and software, or a Value Added Network (VAN).

• Data may be transmitted directly between partners, or through the use of one or more VANs.

Page 5: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk5

EDI Transmission constituents

• Communications Transport Protocol• Interchange Control Header• Functional Group Header• Transaction Set Header• Detail Segment• Transaction Set Trailer• Functional Group Trailer• Interchange Control Trailer• Communications Transport Protocol

Page 6: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk6

What does EDI implementation entail?

• Costs of Communication software• Costs of Translation software

– integration with existing applications

• Cost for VAN• Setup costs for message transmission• Performance

Page 7: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk7

Issues with EDI

• Needs specialized software and hardware• Startup costs are high• Useful mainly for large companies, not

smaller ones• Very rigid message standards: require

padding of messages to specific lengths• Messages themselves are not viewer-friendly• EDI syntax has no mechanism for formal

validation

Page 8: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk8

What is XML?

• eXtensible Markup Language• Derivative of Standard Generalized Markup

Language (SGML)– international standard meta-language for

representing text and associated information about it in electronic form

• An XML document thus contains– Markup– Text

Page 9: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk9

XML document structure

• Markup– Elements– Tags

• Elements– The content of an XML document– Delimited by start and end tags– Can have nested tag pairs

• Tags– Start tag delimited by “< tagname >”– End tag delimited by “</ tagname >”

Page 10: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk10

XML document structure (contd.)

• Elements may not overlap– end tag must always have same name as most

recent unmatched start tag

• An XML document has only 1 root element• XML element names case-sensitive

Page 11: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk11

XML document example

<?xml version="1.0"?> <contact-info> <name>Vasudev Kamath</name><company>Persistent Systems</company><phone>(020) 565 9107</phone> </contact-info>

Page 12: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk12

Why XML as data format?

• Can create self descriptive data– No prior knowledge of sending application needed

• Platform-independent, application-independent data format: – separates data from its representation

• Easier for search engines to extract information• Allows formal data validation• Syntax can be easily understood both by

computers and humans • Applications for handling XML over Internet exist:

– no specialised hardware or software required

Page 13: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk13

XML features (contd.)

• How is data self-descriptive?– Tag names can be customized e.g.

“<PurchaseOrder>”, “<ItemCode>”, etc.

• How is data separated from representation?– XML document contains only data– Using XSL (eXtensible Stylesheet Language), the

same document can be tailored to different views

• How is it easier to extract information from search engine– Structured document– Contains text rather than coded information

Page 14: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk14

XML features (contd.)

• How is formal data validation done?– Through DTD (Document Type Definition)– Through Schemas

• Applications for handling XML– Parsers– Database interfaces

Page 15: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk15

XML DTD example

<!-- Example of DTD for above XML document -->

<!ELEMENT contact-info (name, company, phone?) >

<!ELEMENT name ( #PCDATA ) >

<!ELEMENT company (#PCDATA ) >

<!ELEMENT phone ( #PCDATA ) >

Page 16: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk16

Motivation for XML in business • Most web pages today are HTML: this integrates

presentation and data• Single XML document can be “viewed” in different

ways– through a browser- with different colours, layout– On a mobile phone display – On the telephone, using voice

• Data transformation through gateway applications is eased

• Formal representation of business processes helps ease impact of any change in them – Defines sequence of events relating to document exchange– Defines content of the documents

• Investment in legacy systems not necessarily wasted

Page 17: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk17

EDI-XML comparison

• EDI message lineSES*197409****FALL*YM*7409***22***MATHEMATICS HONOURS

• Equivalent XML document stub<SessionRecord>

<SessionStartDate>197409</SessionStartDate>

<Semester>Fall</Semester>

<StudentStatus>sophomore</StudentStatus>

<ProgramName>Mathematics Honours </ProgramName>

</SessionRecord>

Page 18: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk18

A typical B2B scenario

• Distributor requests quotation for list of products from supplier

• Supplier sends quotation to distributor• Distributor places purchase order on supplier• Supplier invoices the distributor• Supplier sends goods forwarding note to

transporter• Transporter sends consignment note to supplier• Supplier sends shipment along with delivery

challan• Distributor sends delivery confirmation to

supplier• Distributor sends payment instruction to bank

Page 19: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk19

XML for business documents

• Each underline in previous slide represents a business document

• This would be represented in XML using an agreed framework between business partners

• There would be underlying applications to convert data contained in internal systems of businesses to XML and vice versa

• These applications would encapsulate the business process of the organizations

• While processes may be different, the data exchanged must be same (mutually agreed)

Page 20: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk20

XML-based business integration

Message routing logic, service discovery, etc.

Message routing logic, service discovery, etc.

Manufacturer

Bank

Stock Yard

3rd PartyLogistics Vendor

Distributor

Represents XMLdocument flow

Represents data transformation

Page 21: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk21

How XML is used at various layers in business process

• At business process layer• At data exchange layer• At messaging, routing layer• At service registration and discovery layer

Page 22: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk22

XML at business process layer

<!ENTITY % common-attributes "id CDATA IMPLIED" >

<!ELEMENT Pip2A1ProductInformationNotification ( ProductNotice+ , fromRole , toRole ,

thisDocumentGenerationDateTime ,thisDocumentIdentifier ,GlobalDocumentFunctionCode ) >

<!ELEMENT ProductNotice ( theNotice ,GlobalProductIdentifier ) >

<!ATTLIST FreeFormText xml:lang CDATA IMPLIED >

<!ELEMENT GlobalProductIdentifier #PCDATA ) >

<!ELEMENT fromRole ( PartnerRoleDescription ) >

<!ELEMENT PartnerRoleDescription ( GlobalPartnerRoleClassificationCode ,PartnerDescription ,ContactInformation? ) >

<!ELEMENT GlobalPartnerRoleClassificationCode ( #PCDATA ) >

<!ELEMENT PartnerDescription ( GlobalPartnerClassificationCode , BusinessDescription ) >

<!ELEMENT GlobalPartnerClassificationCode( #PCDATA ) >

<!ELEMENT BusinessDescription ( GlobalBusinessIdentifier ,GlobalSupplyChainCode ) >

<!ELEMENT GlobalBusinessIdentifier ( #PCDATA ) >

<!ELEMENT GlobalSupplyChainCode ( #PCDATA ) >

<!ELEMENT toRole ( PartnerRoleDescription ) >

<!ELEMENT thisDocumentGenerationDateTime ( DateTimeStamp ) >

<!ELEMENT DateTimeStamp ( #PCDATA ) >

<!ELEMENT thisDocumentIdentifier ( ProprietaryDocumentIdentifier ) >

<!ELEMENT ProprietaryDocumentIdentifier ( #PCDATA ) >

<!ELEMENT GlobalDocumentFunctionCode ( #PCDATA ) >

Page 23: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk23

XML at business document exchange layer

<?xml version="1.0" ?> <PeBS operation="TransportRequest"><TransportRequest><TransportRequestHeader><TransportRequestNumber/><TransportRequestDate>date</TransportRequestDate> </TransportRequestHeader><TransporterAddress>

<NameAddress/><TransporterContact/>

</TransporterAddress><!-- Name and address of the manufacturer, stockyard, delivery etc. --> <!-- List of items to be delivered --> <ListOfTransportItem><TransportItem>

<ProductCode /> <ItemDescription /> <Quantity/><RequiredDeliveryDate>20000810T10:00:00</RequiredDeliveryDate>

</TransportItem></ListOfTransportItem><TransporterResponseRequiredDate>20000808T09:00:00</TransporterResponseRequiredDate> <SpecialRequest>Any special request</SpecialRequest> </TransportRequest></PeBS>

Page 24: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk24

XML at routing layer

<SOAP-ENV:Envelope xmlns:SOAP-ENV=“URL" xmlns:xsi=“URL"><SOAP-ENV:Header><dlv:delivery SOAP-ENV:mustUnderstand="1" xmlns:dlv=“URL" xmlns:agr=“URL"> <dlv:to> <dlv:address xsi:type="agr:department">Book Order Department</dlv:address></dlv:to> <dlv:from><dlv:address xsi:type="agr:organization">BookloversAnonymous</dlv:address></dlv:from> </dlv:delivery> <prop:properties SOAP-ENV:mustUnderstand="1" xmlns:prop=“URL"> <prop:identity>uuid:74b9f5d0-33fb-4a81-b02b-5b760641c1d6</prop:identity> <prop:sentAt>2000-05-14T03:00:00+08:00</prop:sentAt> <prop:expiresAt>2000-05-15T04:00:00+08:00</prop:expiresAt> <prop:topic>topic-name</prop:topic> </prop:properties> </SOAP-ENV:Header> <SOAP-ENV:Body> <po:PurchaseOrder xmlns:po=“URL"> <po:Title>Essential BizTalk</po:Title> </po:PurchaseOrder> </SOAP-ENV:Body></SOAP-ENV:Envelope>

Page 25: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk25

XML for service description

<?xml version="1.0"?><Espeak version="Espeak 1.0beta" operation="CreateVocab" xmlns="http://localhost/e:/Esxml/Schemas/espeak.xsd">  <resource xmlns=""> <!-- Begin: Specify the vocabulary description --> <resourceDes xmlns="">

<pattern><Name>ManufacturerVocabulary</Name><Type>ESVocabulary</Type>

</pattern> </resourceDes> <!-- End: Specify the vocabulary description --> <resourceData xmlns=""> <!-- Begin: Specify attribute property set --> <attrGroup name="ManufacturerVocabulary" xmlns="">

<attrDecl xmlns="" name="EntityName"><datatypeRef name="string"/></attrDecl>

<!-- Other attrDecl on EntityId, ServiceName, CompanyName, ProductCategory, Address, etc. --> </attrGroup> </resourceData> <!-- End: Specify attribute property set --> </resource> </Espeak>

Page 26: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk26

Why XML standards?

• Businesses have different internal business systems

• Need to agree on a common method of exchanging information in human-readable form in documents, forms and messages

• Must overcome the deficiencies of EDI

Page 27: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk27

What standardization do these standards do?

• Formal specification of business process • Standardization of data exchanged between

business applications• Standardization of other items relating to the

interaction such as messaging, security• Formal mechanisms for representation of

meta-information about interacting applications and data

• Note: not all standards achieve all of the above!

Page 28: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk28

XML standards for business

• End users, solution providers and other players in the global e-commerce scene have proposed multiple XML-based standards for e-commerce

• Some of the standards are:– RosettaNet– CommerceNet– ebXML– CommerceOne– BizTalk– CommerceXML– PeBS

Page 29: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk29

RosettaNet

• Independent, self-funded consortium of global members of IT Supply Chain, – HP, Compaq, Fedex, GE Information Services,

Oracle, SAP AG, Toshiba Information Systems, Cisco, etc

• Defines B2B process standards as well as B2B data standards

• RosettaNet standards– RosettaNet Partner Interface Processes– RosettaNet Implementation Framework – RosettaNet Business and Technical Dictionaries

Page 30: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk30

RosettaNet (Contd.)

• RosettaNet Partner Interface Process– XML specification designed to provide common

business/data models and documents enabling system developers to implement RosettaNet eBusiness interfaces

• RosettaNet Implementation Framework– Open, common network-application integration

framework for easy adoption of processes• Application message formats• Message exchange sequences

• RosettaNet Business Dictionaries– Definitions of Business Properties and Business

Data Entities

Page 31: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk31

Business messages

• XML DTDs arranged in clusters relating to– Partner, Product and Service Review

• information collection, maintenance and distribution for the development of trading-partner profiles and product-information subscriptions

– Product Introduction• distribution and update of basic and extended product

information, product change notices, etc.

– Order Management• order catalog products, create custom solutions, manage

distribution and deliveries, and support product returns and financial transactions

Page 32: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk32

Business messages (contd.)

– Marketing Information Management• Communication of marketing information, including

campaign plans, lead information and design registration

– Inventory Management• Inventory management, including collaboration,

replenishment, price protection, reporting and allocation

– Service and Support• post-sales technical support, service warranty and asset

management capabilities

Page 33: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk33

CommerceNet

• Open, internet-based infrastructure for e- commerce, whose members include leading banks, telcos, ISPs, software services companies, major end-users worldwide

• Aims to function as a market maker, generating communities of buyers & sellers

• Defines a conceptual framework for inter-operability between different entities in supply chain

Page 34: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk34

CommerceNet Architecture

• Architecture expected to provide common basis for two parties to negotiate understanding of how they will do business

• 7-layer architecture– NETWORKS contain – MARKETS where – BUSINESSES provide and use – SERVICES which conduct – INTERACTIONS which exchange – DOCUMENTS containing – INFORMATION ITEMS

Page 35: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk35

CommerceNet Architecture (Contd.)

• Layered model representing e-commerce environment

• Each layer relates to next layer in defined way• Metadata of each layer described through various

“Type Registries” (built on XML-based data elements)

• Layer and its Registries enable an interested party– to obtain information to potentially use offered services, – or to join the marketplace and

• provide new services or

• interoperate as a trading partner with other businesses in that marketplace.

Page 36: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk36

ebXML

• Initiative of the UN CEFACT (UN Centre for Trade Facilitation and Electronic Business) and OASIS (Organization for the Advancement of Structured Information Standards)

• A framework where consistent, robust and interoperable e-business services and components can be created

• will provide technical infrastructure for Global Commerce Internet Protocol– (set of recommendations governing management of data

for Internet communication and other B2B interactions)

Page 37: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk37

ebXML Functionality

• Mechanisms to provide support for businesses to specify information such as– Support for business processes– Service interface that is implemented– Required information for each instance of a

message– Mechanism to allow dynamic discovery of

semantic meaning of that business information

• Implemented using XML representation

Page 38: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk38

ebXML Architectural Components

• Mechanism for the following related to a business process:– Description– Registration– Storage

• Mechanism for the following related to a participant:– Discovery

• Business processes• Business service interfaces• Business messages• Technical configuration for supporting transport, security and

encoding protocols – Registration– Trading partner agreement description

Page 39: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk39

ebXML Architectural Components (contd.)

• Messaging services– Configuration to implement business process in

accordance with constraints described in trading partner agreements

– Interoperability, security, reliability of messaging

Page 40: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk40

CommerceOne

• Leader in e-commerce solutions• Commerce One Common Business Library

(xCBL) 2.0– provides transition path from EDI to XML-based

commerce capability – More than just a XML wrapper for EDI messages:

a set of XML building blocks itself– a document framework that allows the creation of

robust, reusable, XML documents for electronic commerce

Page 41: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk41

CommerceOne xCBL

• Provides XML-based standardization at business document exchange layer

• Defines standards for documents such as– Purchase order– Invoice– Price Catalog– Availability Check Request

• Endorsed by other standards bodies– Microsoft BizTalk– OASIS– UN/CEFACT– CommerceNet

Page 42: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk42

XCBL 2.0 business documents

• PurchaseOrder • PurchaseOrderResponse • OrderStatusRequest • OrderStatusResult • Invoice • AvailabilityCheckRequest • AvailabilityCheckResult • PriceCheckRequest • PriceCheckResult • PriceCatalog • PricingData • ProductCatalog

Page 43: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk43

BizTalk• Promoted by Microsoft• Goal of driving rapid, consistent adoption of

XML to enable e-commerce and application integration

• BizTalk Framework:– Specs for design and development of XML-based

messaging solutions for communication between applications

– Builds upon standards such as HTTP, MIME, XML and SOAP

• Note: BizTalk does not address many aspects of B2B e-commerce!

Page 44: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk44

Use of XML in BizTalk

• Representation of business documents• Schemas for business documents• BizTags: used to specify handling of BizTalk

messages• BizTalk document header entries (SOAP)

– Routing and delivery– Document identification and properties– Document catalog

• Information about business document and any attachments

– Process management• information about the business process providing

processing context for BizTalk Document.

Page 45: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk45

CommerceXML (cXML)

• Developed by Ariba, and other players• Supports business documents such as

– Catalogs– “Punchouts” - Dynamic catalogs– Purchase orders

• Has mechanisms for – Getting supplier details– Entering into contracts– Configuring punchout sites

Page 46: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk46

Use of XML at different layers in standards

• 4 “layers” in standards• Not all standards use XML at all layers

– BizTalk is just a messaging framework, does not define content of business documents

– CommerceOne defines the business data elements, but does not provide messaging, routing capability or process definitions

– PeBS uses XML to define business documents as well as for messaging; service registration and discovery

Page 47: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk47

Indian e-business issues

• B2B e-commerce in India stresses on exchanges and marketplaces

• Typical interaction is still browser-web server where one entity is a human, and not application to application

• Inter-business integration of the type of “Oracle in company A talking to SAP in company B” is minimal

• Scope for business integration still vast

Page 48: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk48

Indian XML standards for Indian business documents

• Need to replicate “brick-and-mortar” processes and documents even if business moves on-line, due to users’ expectations

• XML-based standards for global businesses do not capture the documents of Indian business processes relating to interaction of businesses with government and other public entities.

• 2 examples of the above: – Uttar Pradesh requires a road permit for each shipment that

crosses the state borders– Information on octroi, sales taxes, excise, etc. may need to

be incorporated into business documents such as invoices

• Hence the need for evolving Indian standards, suited for e-commerce between Indian entities

Page 49: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk49

PeBS

• Solution uses XML-based business documents

• At present focusing on business data exchange layer, taking into account Indian business practices

• Working to evolve these into Indian standards for business documents, as well as process standards

Page 50: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk50

Standard PeBS documents• delivery-challan

• delivery-confirmation

• dispatch-intimation

• dispatch-intimation-confirmation

• dispute-document

• distr-to-manuf-product-enquiry

• invoice

• loading-confirmation-report

• loading-instructions-sheet

• product-catalog

• product-catalog-request

• product-enquiry-response

• production-request

• purchase-order

• purchase-order-confirmation

• quotation

• quotation-request

• stock-enquiry

• stock-status-report

• transport-receipt

• transport-receipt-request

• transport-request

• transport-request-confirmation

Page 51: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk51

To conclude…

• Usage of XML-based documents in B2B interaction is catching on - more in US than in India

• Businesses are using XML at various levels in supply chain, not just at the business data exchange layer

• XML-based documents expected to work well in heterogeneous environments of multiple businesses who want to integrate operations

• Need to popularize XML in user community in India, not just among CS fraternity

Page 52: XML : Data Driving Business?

Dec 16, 2000 COMAD Talk52

For further information….

• RosettaNet– http://www.oasis-open.org/cover/rosettaNet.html

• CommerceNet– http://eco.commerce.net/what/index.cfm

• ebXML– http://www.ebxml.org

• CommerceOne– http://www.commerceone.com

• BizTalk– http://www.biztalk.org

• CommerceXML– http://www.cxml.org

• PeBS– http://www.e2econnect.net