45
From XML, SOAP and WSDL to Business Modeling... Alberto Rodrigues da Silva Prof. DEI/IST Lisbon, Portugal Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO EN TECNOLOGÍAS DE LAS COMUNICACIONES COMERCIO ELECTRÓNICO Universidad Carlos III de Madrid, 25/May/2001 Service Consumer 1 Service Provider - 1 Service Consumer 2 Service Consumer 3 Service Consumer N Service Provider - 2 Service Provider - K

Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

Embed Size (px)

Citation preview

Page 1: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

From XML, SOAP and WSDL to Business Modeling...

Alberto Rodrigues da SilvaProf. DEI/IST

Lisbon, Portugal

Global and Open Web Services

Copyright © 2001, Alberto Silva

DOCTORADO EN TECNOLOGÍAS DE LAS COMUNICACIONESCOMERCIO ELECTRÓNICOUniversidad Carlos III de Madrid, 25/May/2001

ServiceConsumer

1

ServiceProvider - 1

ServiceConsumer

2Service

Consumer3

ServiceConsumer

N

ServiceProvider - 2

ServiceProvider - K

Page 2: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

2Copyright © 2001, [email protected]

Overview

? Introduction and Context? Current Models of B2B (Marketplaces, EDI, …)? Global and Open Web Services

– The Big Picture– SOAP– WSDL– A case study: HP’s e-Speak

? Next Huge Challenges

Page 3: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

3Copyright © 2001, [email protected]

– E-business is a complex combination between

? Business processes? Enterprise applications and technologies? Organizational structures and human resources

in order to build new businesses with high performance.

e-Business generic definition

Preliminary notions...

Introduction and Context

Page 4: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

4Copyright © 2001, [email protected]

e-Commerce…is the activity of buying and selling based on some digital infrastructure

e-Business…aggregates the e-commerce, but also includes all the front and back-officeapplications that are the real engine of the new businesses

E.g.: Amazon.com…Provides a Web interface (well-known to the end-consumer) with consult, order, payment and other functionalities.

howeverIt also includes a complex number of other components and applications to support the business: personalization interfaces to clients, providers, banks, ...

e-Com

merce

e-Business

Preliminary notions...

Introduction and Context

Page 5: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

5Copyright © 2001, [email protected]

A new way to design and to to build the business processes of some

company supported by information, computation and communication

technologies in order to improve the connections and relationships between

the company and its

? Customers

? Suppliers

? Partners

? Collaborators

? Company board

e-Business…

Supported by the technology:

– Direct

– Active (anytime)

– Omnipresent (anywhere)

– Interactive

Preliminary notions...

Introduction and Context

Page 6: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

6Copyright © 2001, [email protected]

Enterprise Architecture to Support e-Business

Enterprise Resource Planning

Customer Relationship Management

Knowledge Management

EAI(Integration)

Fina

nces

/ A

ccou

ntin

g /

Au

dito

r

Ad

min

istr

ativ

e C

on

tro

lH

um

man

Res

ou

rces

/ S

alar

ies

Logi

stic

s

Pro

duct

ion

Dis

trib

utio

n

Mak

etin

g

Sel

l

Cus

tom

er

Ser

vice

s

Supply Chain Management

Selling Chain Management

Col

labo

rato

rs

Boa

rd, S

tocj

hold

ers

Partners, Suppliers, Brokers

Customers, Resellers

Introduction and Context

Page 7: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

7Copyright © 2001, [email protected]

Current Models of B2B

? Fax/Phone-based– without any integration with enterprise ISs– human based intensive

? EDI-based– End-to-end (between ISs)– Hard to implement (technical); very expensive (economic)– Based on proprietary networks, old-fashion technologies (not

Internet and XML based!!)

? Web-based with human/direct intervention– Such as the majority of the current “proprietary” marketplaces– Usually there is not automatic integration between the different ISs

Page 8: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

8Copyright © 2001, [email protected]

? B2B Procurement– Automatic mechanism to sell/buy products/services between

different partners? Usually, we are talking about no-strategic procurement (such

as, products no directly involved in the production chain)

? E-Commerce frameworks where– Suppliers put and manage their products (based on a

“catalog” way)– Customers look for suppliers that sell the desired product.

? Well-known as “Marketplaces”

An Example: Marketplaces

The (current) Web-based Model

Page 9: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

9Copyright © 2001, [email protected]

? Business Communities between companies (B2B) electronically supported– Where suppliers (sellers) and customers (buyers) met together– Big companies, small companies, banks, …

? Horizontals vs. Verticals? Examples of Horizontal Marketplaces, in Portugal

– BizDirect (Sonae, ...)– TradeCom (PT, ...)– ForumB2B (EDP, …) Big Portuguese Clients...

An Example: Marketplaces

The (current) Web-based Model

Page 10: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

10Copyright © 2001, [email protected]

“TradeCom” (PT Prime com BES, CGD, PT Multimedia, CommerceOne/SAP)

An Example: Marketplaces

The (current) Web-based Model

Page 11: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

11Copyright © 2001, [email protected]

Empresa-1(buyer)

MarketPlace(e.g., TradeCom)

Empresa-j(seller)

Empresa-i(seller)

Empresa-2(buyer)

Empresa-k(seller)

Based on the technology of:CommerceOne/SAP

(1) B2B in the context of the same Marketplace Models

The (current) Web-based Model

Page 12: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

12Copyright © 2001, [email protected]

Empresa-1(buyer)

MarketPlace-N

Empresa-j(seller)

Empresa-i(seller)

Empresa-2(buyer)

Empresa-k(seller)

Based on the technology of :

CommerceOne/SAP

(2)B2B in the context of Federation of Homogeneous Marketplaces

Empresa-x(buyer)

MarketPlace-M

Empresa-c(seller)

Empresa-y(buyer)

Empresa-d(seller)

Based on the technology of :CommerceOne/SAP

Models

The (not so far) Web-based Model

Page 13: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

13Copyright © 2001, [email protected]

Empresa-1(buyer)

MarketPlace-N

Empresa-j(seller)

Empresa-i(seller)

Empresa-2(buyer)

Empresa-k(seller)

Based on the technology of :

CommerceOne/SAP

(3)B2B in the context of Federation of Heterogeneous Marketplaces

Empresa-x(buyer)

MarketPlace-M

Empresa-c(seller)

Empresa-y(buyer)

Empresa-d(seller)

Based on the technology of :Arriba

Models

The (not so far) Web-based Model

Page 14: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

14Copyright © 2001, [email protected]

Global Services InteroperabilityThe Big Picture

We're currently moving from an environment where applications are deployed on individual machines and Web servers, to a world where applications are composed of pieces (called services)Services are spread across many different machines, and where the services interact seamlessly and transparently to produce an overall effect.

I discussed that idea in my PhD thesis, in 1998, using the term of “software agent”…

ServiceConsumer

1

ServiceProvider - 1

ServiceConsumer

2Service

Consumer3

ServiceConsumer

N

ServiceProvider - 2

ServiceProvider - K

Page 15: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

15Copyright © 2001, [email protected]

Global Services InteroperabilityThe Big Picture

Monolithic, Centralized, Proprietary Systems

Open Systems (2-tier C/S)

Global and Open Data

(Web-based systems, 3 and 4-tiers; one-off services)

Global and Open Services

(Dynamic n-tier systems; Service Composition)ServiceConsumer

1

ServiceProvider - 1

ServiceConsumer

2 ServiceConsumer

3

ServiceConsumer

N

ServiceProvider - 2

ServiceProvider - K

Computational Paradigms of ISs…

(70s)

(80s)

(90s)

(00s)

Page 16: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

16Copyright © 2001, [email protected]

"We're going to do for programs what the Web did for data." Rajiv Gupta, developer of Hewlett-Packard's e-speak, (July, 1998)

"It's exciting the progress that's taking place around XML just even in the last six months. We've got here a standard that Microsoft is very much behind, but not just Microsoft. We've gotIBM and many others joining in in things like the SOAP definition that explain how XML can essentially be used as a program-to-program protocol, how programs can exchange arbitrary data with each other."

Bill Gates (June, 2000)

Global Services InteroperabilityThe Big Picture

ServiceConsumer

1

ServiceProvider - 1

ServiceConsumer

2 ServiceConsumer

3

ServiceConsumer

N

ServiceProvider - 2

ServiceProvider - K

Page 17: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

17Copyright © 2001, [email protected]

? Although distributed computing has been around for as long as there have been computer networks, it's only recently that applications that draw upon many interconnected machines as one vast computing medium are beginning to be deployed on a large scale.

? What's making this possible are new protocols for distributed computing built upon HTTP, and which are designed for programs interacting with programs, rather than for people surfing with browsers.

Global Services InteroperabilityThe Medium-Size Picture

Page 18: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

18Copyright © 2001, [email protected]

Data exchangeSomething better than scraping text from web pages (XML based).

Program invocationSome way to do remote method invocation, that is, for programs to call programs running on other machines and to reply to such invocationswithout firewall restrictions. SOAP (Simple Object Access Protocol)

Self-description (also called Introspection)A machine-readable way for Web services to describe how they are supposed to be called. E.g. WSDL (Web Services Description Language)

DiscoveryA way for Web services to automatically learn about other services. E.g. UDDI (Universal Description, Discovery and Integration)

Global Services InteroperabilityThe Medium-Size Picture

Protocols for...

Page 19: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

19Copyright © 2001, [email protected]

? SOAP 1.1, W3C Note 08 May 2000, http://www.w3.org/TR/SOAP/

? SOAP provides a simple and lightweight mechanism for exchanging structured and typed information between peers in a decentralized, distributed environment using XML

? SOAP does not itself define any application semantics such as a programming model or implementation specific semantics

? SOAP is a RPC protocol that works over HTTP (or SMTP or ...) in order to overcome security/firewall restrictions that were found in classical RPC systems (e.g., RMI, DCOM, CORBA)

SOAP – Simple Object Access Protocol

What is SOAP?

ServiceConsumer

Service Provider

SOAP(HTTP)

Page 20: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

20Copyright © 2001, [email protected]

SOAP consists of three parts:

? The SOAP envelope – defines an overall framework for expressing what is in a

message; who should deal with it, and whether it is optional or mandatory.

? The SOAP encoding rules – defines a serialization mechanism that can be used to

exchange instances of application-defined datatypes.

? The SOAP RPC representation – defines a convention that can be used to represent remote

procedure calls and responses.

SOAP – Simple Object Access Protocol

What is SOAP?

Page 21: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

21Copyright © 2001, [email protected]

A minimal Soap request

POST /server_name/object_to_invoke HTTP/1.1Host: 216.34.106.248Content-Type: text/xmlContent-Length: 152SOAPMethodName: urn:application_name:object_name#method_name

<Envelope><Body><m:method_name xmlns:m='urn:application_name:object_name'><data_field_1>Some Data</data_field_1>

</m:method_name></Body>

</Envelope>

SOAP – Simple Object Access Protocol

Example (1)…

Page 22: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

22Copyright © 2001, [email protected]

A minimal Soap response

200 OKContent-Type: text/xmlContent-Length: 162

<Envelope><Body>

<m:method_nameResponse xmlns:m='urn:application_name:object_name'><result_data_1>Some Result Data</result_data_1></m:method_nameResponse>

</Body></Envelope>

SOAP – Simple Object Access Protocol

Example (1)…

Page 23: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

23Copyright © 2001, [email protected]

? SOAP Message Embedded in HTTP Request

POST /StockQuote HTTP/1.1Host: www.stockquoteserver.comContent-Type: text/xml; charset="utf-8"Content-Length: nnnnSOAPAction: “Some-URI"

<SOAP-ENV:Envelopexmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body>

<m:GetLastTradePrice xmlns:m="Some-URI"><symbol>DIS</symbol>

</m:GetLastTradePrice></SOAP-ENV:Body>

</SOAP-ENV:Envelope>

SOAP – Simple Object Access Protocol

Example (2)…

Page 24: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

24Copyright © 2001, [email protected]

? SOAP Message Embedded in HTTP Response

HTTP/1.1 200 OKContent-Type: text/xml; charset="utf-8"Content-Length: nnnn

<SOAP-ENV:Envelopexmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/><SOAP-ENV:Body>

<m:GetLastTradePriceResponse xmlns:m="Some-URI"><Price>34.5</Price>

</m:GetLastTradePriceResponse></SOAP-ENV:Body>

</SOAP-ENV:Envelope>

SOAP – Simple Object Access Protocol

Example (2)…

Page 25: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

25Copyright © 2001, [email protected]

? All SOAP messages are encoded using XML

? A SOAP application SHOULD include the proper SOAP namespace on all elements and attributes defined by SOAP in messages that it generates.

? A SOAP application MUST be able to process SOAP namespaces in messages that it receives.

? SOAP defines two namespaces – The SOAP envelope has the namespace identifier

"http://schemas.xmlsoap.org/soap/envelope/" – The SOAP serialization has the namespace identifier

"http://schemas.xmlsoap.org/soap/encoding/"

SOAP – Simple Object Access Protocol

Relation to XML

Page 26: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

26Copyright © 2001, [email protected]

Simple Types

Type value Type Examplexsd:int 32-bit signed integer -12xsd:boolean a boolean value (1 or 0) 1xsd:string string of characters hello worldxsd:float or xsd:double signed floating point number-12.214xsd:timeInstant date/time2001-03-27T00:00:01-08:00SOAP-ENC:base64 base64-encoded binary eW9bidQgdGhpcyE=

Compound TypesArraysStructs

SOAP – Simple Object Access Protocol

Relation to XML

Page 27: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

27Copyright © 2001, [email protected]

Data exchangeSomething better than scraping text from web pages (XML based).

Program invocationSome way to do remote method invocation, that is, for programs to call programs running on other machines and to reply to such invocationswithout firewall restrictions. SOAP (Simple Object Access Protocol)

Self-description (also called Introspection)A machine-readable way for Web services to describe how they are supposed to be called. E.g. WSDL (Web Services Description Language)

DiscoveryA way for Web services to automatically learn about other services. E.g. UDDI (Universal Description, Discovery and Integration)

Global Services InteroperabilityThe Medium-Size Picture

Protocols for...

Page 28: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

28Copyright © 2001, [email protected]

WSDL – Web Services Description Language

? WSDL 1.1, W3C Note 15 March 2001, http://www.w3.org/TR/wsdl

? WSDL is an XML format for describing web services as a set of endpoints operating on messages containing either document-oriented or procedure-oriented information.

? The operations and messages are described abstractly, and then bound to a concrete network protocol and message format to define an endpoint. Related concrete endpoints are combined into abstract endpoints (services).

? WSDL is extensible to allow description of services and their messages regardless of what message formats or network protocols are used to communicate, however, it is commonly used with SOAP, HTTP, MIME.

What is WSDL?

Page 29: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

29Copyright © 2001, [email protected]

WSDL – Web Services Description Language

? A WSDL document uses the following elements in the definition of web services:

? Types– a container for data type definitions using some type system.

? Message– an abstract, typed definition of the data being communicated.

? Operation– an abstract description of an action supported by the service.

? Port Type–an abstract set of operations supported by one or more endpoints.

? Binding– a concrete protocol and data format specification for a particular port type.

? Port– a single endpoint defined as a combination of a binding and a network address.

? Service– a collection of related endpoints.

What is WSDL?

Page 30: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

30Copyright © 2001, [email protected]

WSDL – Web Services Description Language

? The example shows WSDL definition of a simple service providing stock quotes.

? The service supports a single operation called GetLastTradePrice, which is deployed using the SOAP 1.1 protocol over HTTP.

? The request takes a ticker symbol of type string, and returns the price as a float

An Example

Page 31: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

31Copyright © 2001, [email protected]

WSDL – Web Services Description Language<?xml version="1.0"?> <definitions name="StockQuote“

targetNamespace="http://example.com/stockquote.wsdl" xmlns:tns="http://example.com/stockquote.wsdl" xmlns:xsd1="http://example.com/stockquote.xsd" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns="http://schemas.xmlsoap.org/wsdl/">

<types> <schema targetNamespace="http://example.com/stockquote.xsd"

xmlns="http://www.w3.org/2000/10/XMLSchema"> <element name="TradePriceRequest">

<complexType> <all><element name="tickerSymbol" type="string"/> </all>

</complexType> </element> <element name="TradePrice">

<complexType> <all> <element name="price" type="float"/> </all>

</complexType> </element> </schema>

</types>

An Example

Page 32: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

32Copyright © 2001, [email protected]

WSDL – Web Services Description Language

<message name="GetLastTradePriceInput"> <part name="body" element="xsd1:TradePriceRequest"/>

</message>

<message name="GetLastTradePriceOutput"> <part name="body" element="xsd1:TradePrice"/>

</message>

<portType name="StockQuotePortType"> <operation name="GetLastTradePrice">

<input message="tns:GetLastTradePriceInput"/> <output message="tns:GetLastTradePriceOutput"/> </

operation> </portType>

An Example (cont.)

Page 33: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

33Copyright © 2001, [email protected]

WSDL – Web Services Description Language

<binding name="StockQuoteSoapBinding" type="tns:StockQuotePortType"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <operation name="GetLastTradePrice">

<soap:operation soapAction="http://example.com/GetLastTradePrice"/> <input> <soap:body use="literal"/> </input> <output> <soap:body use="literal"/> </output>

</operation> </binding>

<service name="StockQuoteService"> <documentation>My first service</documentation> <port name="StockQuotePort" binding="tns:StockQuoteBinding"> <soap:address location="http://example.com/stockquote"/>

</port>

</service> </definitions>

An Example (cont.)

Page 34: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

34Copyright © 2001, [email protected]

Global Services Frameworks and Initiatives

? Companies are introducing new Web service frameworks that exploit the new infrastructure.

– Hewlett-Packard's e-speak (http://www.e-speak.hp.com/)

– Microsoft's .NET (http://www.microsoft.com/net/)

– Sun's J2EE (http://java.sun.com/j2ee/)

? Initiatives & Consortiums Concerning about Web Services– UUDI (http://www.uddi.org/)

– ebXML (http://www.ebxml.org/)

– XML/EDI (http://www.xmledi-group.org/)

Page 35: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

35Copyright © 2001, [email protected]

e-Speak Framework

? HP’s E-Speak enables dynamic business interactions – through the ad hoc discovery and interaction of web services over

the internet. It provides companies with a standards-based infrastructure for web services

? E-Speak currently supports and extends many key standards– such as SOAP, J2EE, SPKI and XML

? E-Speak is written completely in Java – and allows any EJB bean to be an web service

? E-Speak is able to offer interoperability between .Net and J2EE environments

? E-Speak will continue to drive, leverage and extend emerging web service standards such as UDDI.

what is e-Speak?

Page 36: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

36Copyright © 2001, [email protected]

e-Speak Framework

? The Service Framework Specification (SFS) defines standard business and technical conventions that allow web services to dynamically interact with each other

– Discovery– Negotiation– Composition– Measurement– Monitoring

? are based on a common interaction model and enables disparate business processes (whether RosettaNet or ebXML) to be represented as a standard SFS conversation on the internet

service framework specification

Page 37: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

37Copyright © 2001, [email protected]

e-Speak Framework? Delivers a single, consistent way to define and deploy web services

? Gets description information (attributes) from any web service application regardless of its programming language or platform.

? Maintains a registry of e-Speak-enabled web services that allows them to be automatically discovered by users and by other web services.

? Negotiates between multiple available web services to make appropriate matches between buyers and sellers.

? Offers continuous mediation of services between buyers and sellers so that web services can make real-time adjustments in response to changes in user needs or in the service environment.

? Controls what services are available to whom and the degree to which they can be used, including allowing secure, dynamic firewall traversal when required for a specified task.

service engine

Page 38: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

38Copyright © 2001, [email protected]

e-Speak Framework

Page 39: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

39Copyright © 2001, [email protected]

e-Speak Framework

Page 40: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

40Copyright © 2001, [email protected]

e-Speak Framework

Page 41: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

41Copyright © 2001, [email protected]

e-Speak Framework

Page 42: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

42Copyright © 2001, [email protected]

e-Speak Framework

Page 43: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

43Copyright © 2001, [email protected]

e-Speak Framework

Page 44: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

44Copyright © 2001, [email protected]

e-Speak Framework

Page 45: Global and Open Web Services - INESC-IDisg.inesc-id.pt/alb/static/papers/2001/phd-ecommerce-univ-carlos... · Global and Open Web Services Copyright © 2001, Alberto Silva DOCTORADO

45Copyright © 2001, [email protected]

Next Huge Challenges

For PhD candidates ;-)

? Implementing “real” global services– e.g., a marketplace of “open and global services”…– Maybe the important thing would be the economical issues…– There would be many possible applications in B2B domains…

? Business modeling and discover the “better” business models and strategies in this brave e-economy

? Mapping business modeling “automatically” into “open and global” services Service

Consumer1

ServiceProvider - 1

ServiceConsumer

2Service

Consumer3

ServiceConsumer

N

ServiceProvider - 2

ServiceProvider - K