Web Services - PowerPoint PPT Presentation

1 / 35
About This Presentation
Title:

Web Services

Description:

Airline, hotel and rental car reservation process, Loan approval process ... Business. Logic. Database. Car Rental Service. Travel Portal. Web. Access. User. Interface ... – PowerPoint PPT presentation

Number of Views:20
Avg rating:3.0/5.0
Slides: 36
Provided by: larryker
Category:
Tags: services | web

less

Transcript and Presenter's Notes

Title: Web Services


1
Web Services
  • Larry Kerschberg,Co-Director
  • E-Center for E-Business
  • George Mason University

2
Outline
  • Web Services Definition
  • Web Services versus Web Sites
  • Web Services Protocols and Standards
  • Conclusions

3
Web Services
  • Web services are Internet-based applications that
    fulfill a specific task or set of tasks, which
    can be combined with other Web services to
    maintain workflow or perform business
    transactions.
  • Airline, hotel and rental car reservation
    process,
  • Loan approval process
  • Users access Web services online offline via
    PCs, cell phones, Personal Digital Assistants.
  • Programs can also access Web services directly.

4
Web Services (continued)
  • Web services communicate with each other
  • Share information about their functions roles
    in an applications workflow,
  • Publish the inputs they require outputs they
    generate,
  • The result is just-in-time integration of
    business applications.
  • Each self-contained business service becomes an
    application that will easily integrate with other
    services (from the same or different companies)
    to create a complete business process.

5
Web Sites and Web Services
Web Site
HTTP
Web Access User Interface
Internet
HTTP
Computer Program
Internet
SOAP
SOAP
HTTP Hypertext Transfer Protocol SOAP Simple
Object Access Protocol
6
Travel Web Service Portal
Travel Portal
Web Site
HTTP
Web Access User Interface
Internet
HTTP
SOAP
SOAP
SOAP
SOAP
7
Web Services, XML and Metadata
Delivery of Service Approval Or Denial
Delivery of Service Credit Verification
Online Loan Applicant
Credit Reporting Service
XML Server
XML Server
Delivery of Service Loan approval procurement
Meta Data
Universal Business Registry
Delivery of Service Loan insurance approval
XML Documents
XML Server
XML Server
Web Services Meta Repository (WSMR)
Financial Institutions
8
Web Service Standards
  • Simple Object Access Protocol (SOAP) 
  • http//www.w3.org/TR/SOAP/
  • Web Services Description Language (WSDL)
  • http//msdn.microsoft.com/xml/general/wsdl.asp
  • Universal Description, Discovery and Integration
    (UDDI)
  • http//www.uddi.org

9
Simple Object Access Protocol (SOAP)
  • SOAP is an XML-based messaging framework
  • Designed to exchange data over the Internet
  • Can send request, reply messages or entire
    documents.
  • Neutral with respect to Operating System.
  • SOAP and XML provide a means for two or more
    portals, marketplaces or trading partners to
    agree on common data exchange services for
    exposing services to the Web for creating
    distributed the virtual enterprise.

10
Discovering SOAP Services
  • Enterprise A uses URL provided by Enterprise B to
    get list of published services.
  • Enterprise A downloads the XML schemas (using
    WSDL) describing services message formats.
  • Enterprise A formats and sends XML message via
    SOAP to Enterprise B
  • Enterprise B responds via SOAP, which A
    interprets using XML Schema.

11
SOAP Message Format
  • SOAP supports two basic XML message formats
  • Self-describing EAI (Enterprise Application
    Integration) and EDI (Electronic Data
    Interchange).
  • Remote procedure call (RPC) style interactions
    that model object method invocation and parameter
    passing.

12
SOAP Message Format
  • Envelope
  • Marks the start and end of a SOAP message.
  • Header (optional)
  • Used to include RPC style interaction.
  • Can contain no header or several headers.
  • Body
  • Contains the actual message or document being
    sent.
  • SOAP message elements are defined using schemas
    and qualified using namespaces.

13
SOAP Envelope
  • SOAP Envelope defines a framework for describing
    message contents and how to process it.
  • Rules for encoding the data transfer
  • Agree by downloading the same XML schema.
  • http//schemas.xmlsoap.org/soap/envelope/
  • http//schemas.xmlsoap.org/soap/encoding/

14
SOAP Header
  • Each header must be defined within an associated
    XML schema,
  • Allow features such as security, transactions,
    and quality of service attributes to be
    specified.
  • Must be understood by both parties,
  • Allows consumers and publishers to negotiate
    agreement on support of a given header or a set
    of headers.

15
SOAP Body
  • Contains application-defined XML data being
    exchanged in message.
  • Either a single, self-describing structure, or
  • Remote Procedure Call (RPC) interface with method
    name and typed parameters.
  • Next slide shows an example of a stock quote
    request and response.

16
SOAP Example
  • Request
  • ltSOAP-ENV Envelopegt
  • ltSOAP-ENV Bodygt
  • ltmGetLastTradePrice xmlnsm-Some-URIgt
  • ltsymbolgtMSFTlt/symbolgt
  • lt/m GetLastTradePricegt
  • lt/SOAP-ENVBodygt
  • lt/SOAP-ENV Envelopegt
  • Response
  • ltSOAP-ENV Envelopegt
  • ltSOAP-ENV Bodygt
  • ltmGetLastTradePriceResponse xmlnsm-Some-URIgt
  • ltPricegt63.00lt/Pricegt
  • lt/m GetLastTradePriceResponsegt
  • lt/SOAP-ENVBodygt
  • lt/SOAP-ENV Envelopegt

17
Web Services Description Language (WSDL)
  • WSDL is a form of XML Schema to define the XML
    message, operation and protocol mapping of a web
    service accessed using SOAP or another XML
    protocol.
  • WSDL defines Web services as end points that
    operate on XML messages.
  • Both the messages and the operations on the
    messages are defined abstractly and then mapped
    to multiple physical implementations.
  • Current mappings include SOAP 1.1, HTTP GET/POST
    and MIME.

18
WSDL Specification
  • Proxy Code
  • A definition of message types and operations in
    the abstract,
  • Binding Information
  • A definition that maps the abstract definitions
    onto concrete transports and network end points.
  • Service Definition
  • A definition that maps bindings to ports and
    includes extensibility, e.g., attributes or
    properties for quality of service agreements.

Definition List
  • Proxy code
  • Message type
  • Abstract interface (port type)
  • Binding information
  • Transport
  • Port
  • Service definition
  • Binding/port
  • Extensibility

19
IONAs XML Bus Web Services
  • Dynamic WSDL Test Facility (several web services)
  • http//www.xmlbus.com9010/WSDLClient/WSDLDynamicT
    estClient.html
  • WSDL Service Description
  • http//www.xmlbus.com9010/xmlbus/container/Conver
    ter/ConverterService/ConverterPort

20
Convert Inches to Millimeters
  • XML Query
  • ltSOAP-ENVEnvelope xmlnsSOAP-ENV"http//schemas.
    xmlsoap.org/soap/envelope/"
  • xmlnsxsd"http//www.w3.org/2001/XMLSchema"
  • xmlnsxsi"http//www.w3.org/2001/XMLSchema-in
    stance"gt
  • ltSOAP-ENVBody SOAP-ENVencodingStyle"http//
    schemas.xmlsoap.org/soap/encoding/"gt
  • ltm1inchToMM xmlnsm1"urntarget-converte
    r-service"gt
  • ltparam0 xsitype"xsdfloat"gt1.0lt/para
    m0gt
  • lt/m1inchToMMgt
  • lt/SOAP-ENVBodygt
  • lt/SOAP-ENVEnvelopegt
  • XML Response
  • ltSOAP-ENVEnvelope xmlnsSOAP-ENV"http//schemas.
    xmlsoap.org/soap/envelope/"
  • xmlnsxsd"http//www.w3.org/2001/XMLSchema"
  • xmlnsxsi"http//www.w3.org/2001/XMLSchema-in
    stance"gt
  • ltSOAP-ENVBody SOAP-ENVencodingStyle"http//
    schemas.xmlsoap.org/soap/encoding/"gt
  • ltm1inchToMMResponse xmlnsm1"urntarget-
    converter-service"gt
  • ltreturn xsitype"xsdfloat"gt25.4lt/ret
    urngt
  • lt/m1inchToMMResponsegt
  • lt/SOAP-ENVBodygt

21
UDDI and the Protocol Stack
22
UDDI - Universal Description, Discovery and
Integration
  • Goal is to enable the interoperability of web
    services
  • Standards-based specifications for service
    description and discovery
  • Shared operation of a business registry on the
    web
  • Partnership among industry and business leaders

23
How UDDI v1 Works
1.
SW companies, standards bodies, and programmers
populate the registry with descriptions of
different types of services
UDDI Business Registry
Segrvice Type Reistrations
24
White Pages Yellow Pages
  • Business Name
  • Text Description
  • list of multi-language text strings
  • Contact info
  • names, phone numbers, fax numbers, web sites
  • Known Identifiers
  • list of identifiers that a business may be known
    by - DUNS, Thomas, other
  • Business categories
  • 3 standard taxonomies in V1
  • Industry NAICS (Industry codes - US Govt.)
  • Product/Services UN/SPSC (ECMA)
  • Location Geographical taxonomy

25
Green Pages
  • Businesses describe how other businesses will do
    e-commerce
  • Nested model
  • Business processes
  • Service descriptions
  • Binding information
  • Programming/platform/implementation agnostic
  • Services can also be categorized

26
Service Type Registration
  • Pointer to the namespace where service type is
    described
  • What programmers use to understand how to use the
    service
  • Identifier for who published the service
  • Identifier for the service type registration
  • called a tModelKey
  • Used as a signature by web sites that implement
    those services

27
Business Registration
  • XML document
  • Created by end-user company
  • Can have multiple service listings
  • Can have multiple taxonomy listings

businessEntity
businessKey name URL description contacts business
Services identifierBag categoryBag
businessService
businessService
serviceKey tModelKey Name Description BindingTempl
ates
Key Name Description BindingTemplates
From www.uddi.org
28
Example of a Registration
From www.uddi.org
29
UDDI and SOAP
UDDI RegistryNode
User
UDDISOAP Request
HTTPServer
SOAPProcessor
UDDISOAP Response
UDDIRegistry Service
B2B Directory
Create, View, Update, and Deleteregistrations
Implementation-neutral
From www.uddi.org
30
Registry APIs (SOAP Messages)
  • Inquiry API
  • Find things
  • find_business
  • find_service
  • find_binding
  • find_tModel
  • Get Details about things
  • get_businessDetail
  • get_serviceDetail
  • get_bindingDetail
  • get_tModelDetail
  • Publishers API
  • Save things
  • save_business
  • save_service
  • save_binding
  • save_tModel
  • Delete things
  • delete_business
  • delete_service
  • delete_binding
  • delete_tModel
  • security
  • get_authToken
  • discard_authToken

From www.uddi.org
31
UDDI Information Model
32
Web Service Discovery and Interaction
33
E-Business Standards
  • Electronic Business XML (ebXML)
  • http//www.ebxml.org/
  • Local Web Site
  • RosettaNet
  • http//www.rosettanet.org/
  • Local Partner Interface Processes

34
Electronic Business XML (ebXML)
  • International initiative established by the
    United nations and OASIS to promote global
    standards to exchange business data.
  • Wants to promote a global e-business marketplace,
    regardless of geographic or political boundaries.
  • ebXML has several models and mappings
  • Business Process and Information Model,
  • Model maps to XML documents,
  • Defines requirements for applications that
    process the documents and exchange them among
    trading partners.

35
ebXML (continued)
  • The ebXML architecture defines
  • Business processes and their associated messages
    and content,
  • A registry and discovery mechanism for publishing
    business process sequences and related message
    exchanges,
  • Company profiles,
  • Trading partner agreements,
  • A uniform message transport layer which is mapped
    to SOAP with multipart MIME attachments.
Write a Comment
User Comments (0)
About PowerShow.com