ez3950 SOAP - PowerPoint PPT Presentation

About This Presentation
Title:

ez3950 SOAP

Description:

SOAP Overview ... SOAP = HTTP (transport) XML (parameter encoding) eZ3950 / Dec. 2000 ... Request URI: SOAP ClassId and ObjectId. SOAPAction: InterfaceId and Method ... – PowerPoint PPT presentation

Number of Views:21
Avg rating:3.0/5.0
Slides: 15
Provided by: poulhenri
Learn more at: http://www.loc.gov
Category:
Tags: soap | ez3950 | soap

less

Transcript and Presenter's Notes

Title: ez3950 SOAP


1
ez3950SOAP Z39.50
  • ZIG December 2000 at LC
  • Poul Henrik Jørgensen, DBC
  • mailtophj_at_dbc.dk

2
Background Objectives
  • Z39.50 Difficult to understand and debug
  • Use human-readable encoding
  • Technology seems obscure to implementors
  • Adopt emerging XML standards
  • Ignored by mainstream development tools
  • Use widespread XML tools
  • Object Oriented development paradigma
  • Specify Object RPC API

3
Communication Models
  • Message-passing with optional queuing
  • E.g. ISO ILL (almost)
  • Applications must handle asynchronous messages
    from concurrent external processes
  • Request/Response
  • E.g. Z39.50 (almost)
  • Client initiates request and waits for matching
    response from remote process
  • Resembles Remote Procedure Calls (RPC)

4
RPC Standards
  • RPC Standards
  • SUN RPC, e.g. Network File System NFS
  • DCE RPC, e.g. Windows NT
  • HTTP
  • Object RPC Standards
  • CORBA Internet Inter-Orb Protocol, IIOP
  • MS Distributed COM, DCOM

5
Object RPC Elements
  • Request
  • Object Id
  • Interface Id
  • Method Id
  • Extension Headers
  • Parameter Data
  • Response
  • Status code
  • Extension Headers
  • Parameter Data

6
SOAP Overview
  • HTTP supports most of the same functions as IIOP
    and DCOM (framing, connection management, object
    references)
  • XLM is well suited to represent to represent
    parameter data (cf. NDR and
  • SOAP HTTP (transport) XML (parameter encoding)

7
SOAP Elements
  • HTTP Header
  • Request URI SOAP ClassId and ObjectId
  • SOAPAction InterfaceId and Method
  • SOAP Envelope (XML Structure)
  • Header (Optional protocol data)
  • Body
  • RPC Parameters
  • Error Reports

8
SOAP HTTP Request
  • POST /ZServ/Danbib HTTP/1.1
  • Host zoap.dbc.dk
  • Content-Type text/xml charset"utf-8"
  • Content-Length 1234
  • SOAPAction "urnez3950api"
  • ltsoapEnvelope
  • ...request parameters..
  • lt/soapEnvelopegt

9
SOAP HTTP Response
  • 200 OK
  • Content-Type text/xml
  • Content-Length 123
  • ltEnvelope
  • ...response data error reports...
  • lt/Envelopegt

10
eZ3950 Z39.50 over SOAP
  • Specification of e-Z39.50 API
  • Complete Z39.50 Protocol over SOAP
  • ASN.1 encoded by XER
  • General IR API (GIRAPI) features
  • Asyncronous Services excluded
  • triggerResourceControlRequest
  • segmentRequest

11
eZ3950 Methods
  • Init
  • search
  • present
  • deleteResultSet
  • accessControl
  • resourceControl
  • resourceReport
  • scan
  • sort
  • extendedServices
  • close

12
eZ3950 Init Request
  • ltSOAPEnvelope xmlnsSOAP"http//schemas.xmlsoap.
    org/soap/envelope/"
  • xmlnsxsi"http//www.w3.org/1999/X
    MLSchema-instance"
  • xmlnsxsd"http//www.w3.org/1999/X
    MLSchema"
  • SOAPencodingStyle"http//schemas.
    xmlsoap.org/soap/encoding/"gt
  • ltSOAPBodygt
  • ltezinit xmlnsez"urnez3950api"
    version"1.0"gt
  • ltezprotocolVersion xsitype"xsdstring"gt
  • version-1 version-2lt/ezprotocolVersio
    ngt
  • ltezoptions xsitype"xsdstring"gtsearch
    present scanlt/ezoptionsgt
  • ltezpreferredMessageSiz
  • xsitype"xsdint"gt16384lt/ezpreferred
    MessageSizegt
  • ltezexceptionalRecordSize
    xsitype"xsdint"gt500000lt/ezexceptionalRecordSiz
    egt
  • ltezimplementationId xsitype"xsdstring"gt1
    995lt/ezimplementationIdgt
  • ltezimplementationName xsitype"xsdstring"
    gt
  • OCLC z39.50 APIlt/ezimplementationNamegt
  • ltezimplementationVersion
  • xsitype"xsdstring"gt3.0lt/ezimplement
    ationVersiongt
  • lt/ezinitgt
  • lt/SOAPBodygt

13
eZ3950 Init Response
  • ltSOAP-ENVEnvelope
  • xmlnsSOAP-ENV"http//schemas.xmlsoap.org/soap
    /envelope/"
  • xmlnsxsi"http//www.w3.org/1999/XMLSchema-ins
    tance"
  • xmlnsxsd"http//www.w3.org/1999/XMLSchema"gt
  • ltSOAP-ENVBodygt
  • ltns1initResponse xmlnsns1"urnez3950api"
  • SOAP-ENVencodingStyle"http//schemas.xmlso
    ap.org/soap/encoding/"gt
  • ltreturn xsitype"ns1parm"gt
  • ltimplementationId xsitype"xsdstring"gt"J
    AFER"lt/implementationIdgt
  • ltidAuthentication xsitype"ns1idAuthenti
    cation" xsinull"true"/gt
  • ltexceptionalRecordSize
  • xsitype"xsdint"gt500000lt/exceptionalRe
    cordSizegt
  • ltpreferredMessageSize
  • xsitype"xsdint"gt16384lt/preferredMessa
    geSizegt
  • ltimplementationVersion
  • xsitype"xsdstring"gt"JAFER"lt/implemen
    tationVersiongt
  • ltresult xsitype"xsdboolean"gttruelt/resul
    tgt
  • ltoptions xsitype"xsdstring"gtsearch
    presentlt/optionsgt
  • lt/returngt

14
Benefits of eZ3950
  • Supports entire Z90.50 protocol
  • XER standard with tools to encode ASN.1
  • Readable XML encoding of Z39.50
  • Object RPC model of Z39.50 services
  • Platform independent API for e-Z39.50
  • Tools from major vendors
  • Acceptance among developers and executives
Write a Comment
User Comments (0)
About PowerShow.com