コンテンツにスキップ

SOAP (プロトコル)

出典: フリー百科事典『ウィキペディア(Wikipedia)』

SOAPWebXML-RPCXML WebXMLRPC

XML使HTTPSMTP

SOAPWindowsLinuxXML使HTTPWebSOAP使

Simple Object Access Protocol[1]

[]


HTTPSMTPTCP/IPHTTP(S)使Apache AxisWS-IOASIS

SOAPWeb

XML使 

XML SchemaWSDL

WS-*

[]


SOAP Web services protocol stackMessaging ProtocolSOAPXML

envelope()[2]





SOAP:

(一) (WS-Addressing)

(二) (SOAPHTTP, SMTP, TCP, UDP, JMS)

(三) (SOAP使)

SOAPSOAPSOAPXML

SOAP:



(Message Exchange Pattern : MEP)






[]


SOAPW3C

SOAP processing model[]


SOAP processing model SOAP

SOAP[3] SOAP processing model 

SOAP message[]

SOAP structure

SOAP message [4]SOAP message <Envelope>[5]<Header><Body>[6]

<Header>0 header block [7]header block encodingStyle / role / mustUnderstand / relay 4[8]block  role role  header block 

<Body>

SOAP Node[]


SOAP Node 

processing model  initial SOAP sender SOAP intermediary ultimate SOAP receiver [9] SOAP roles  next / none / ultimateReceiver 3 role name body[10]role header block 

[]


SOAP extensibility model SOAPSOAP

SOAP underlying protocol binding SOAPSOAP

SOAP[]


ID
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Body>
     <getProductDetails xmlns="http://warehouse.example.com/ws">
       <productId>827635</productId>
     </getProductDetails>
   </SOAP-ENV:Body>
 </SOAP-ENV:Envelope>

これに対し、ショッピングサイトのサービス側の、要求に基づく商品データを含むレスポンスメッセージはおおよそ以下のようになる。

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Body>
     <getProductDetailsResponse xmlns="http://warehouse.example.com/ws">
       <getProductDetailsResult>
         <productName>Toptimate 3-Piece Set</productName>
         <productId>827635</productId>
         <description>3-Piece luggage set.  Black Polyester.</description>
         <price>100.50</price>
         <inStock>true</inStock>
       </getProductDetailsResult>
     </getProductDetailsResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

関連項目[編集]

外部リンク[編集]

脚注[編集]

  1. ^ 「In previous versions of this specification the SOAP name was an acronym. This is no longer the case.」(SOAP Version 1.2 Part 1 : Messaging Framework (Second Edition)より引用)。
  2. ^ Hirsch, Frederick; Kemp, John; Ilkka, Jani (2007-01-11). Mobile Web Services: Architecture and Implementation. John Wiley & Sons (2007発行). p. 27. ISBN 9780470032596. https://books.google.com/books?id=v5f0ORBgd5IC 2014年9月15日閲覧. "Simple Object Access Protocol (SOAP) はメッセージの小包の構造を定義している。小包は、アプリケーション用の荷物(メッセージ・ボディ)と、管理情報(メッセージ・ヘッダ)の二つの部分で構成される。" 
  3. ^ "SOAP provides a distributed processing model that assumes a SOAP message originates at an initial SOAP sender and is sent to an ultimate SOAP receiver via zero or more SOAP intermediaries. ... A SOAP node receiving a SOAP message MUST perform processing according to the SOAP processing model" W3C. SOAP 1.2 specification.
  4. ^ "SOAP message The basic unit of communication between SOAP nodes." W3C. SOAP 1.2 specification.
  5. ^ "A SOAP message Infoset consists of a document information item with exactly one member in its [children] property, which MUST be the SOAP Envelope element information item" W3C. SOAP 1.2 specification.
  6. ^ "One or two element information items in its [children] property in order as follows: 1. An optional Header element ... 2. A mandatory Body element" W3C. SOAP 1.2 specification.
  7. ^ "SOAP header A collection of zero or more SOAP header blocks" W3C. SOAP 1.2 specification.
  8. ^ "MAY have zero or more attribute information items in its [attributes] property ... which have special significance for SOAP processing: encodingStyle ... role ... mustUnderstand ... relay" W3C. SOAP 1.2 specification.
  9. ^ "A SOAP node can be the initial SOAP sender, an ultimate SOAP receiver, or a SOAP intermediary." W3C. SOAP 1.2 specification.
  10. ^ "An ultimate SOAP receiver MUST correctly process the immediate children of the SOAP body" W3C. SOAP 1.2 specification.