xds.a框架的基本事务有以下几种:Provide and Register transaction,Register transaction,Patient Identity Feed transactin,Query Registry transaction,
Retrieve Document Transaction,Response message
This transaction must move registry metadata from the Repository actor to the Registry actor. There are no document attachments since the documents have already been deposited in the Repository by this time. This transaction just moves a single element, the bundle of registry metadata.
Since there is only one item of payload, the SOAP with Attachments format is not used. Instead the simpler SOAP format is used. Below is an example of this format. It contains an HTTP header and a HTTP Body.
HTTP Header - note the following header fields:
HTTP Body - note the following points:
1 POST /ebxmlrr/registry/soap HTTP/1.1
2 Accept: */*
3 Accept-Language: en-us
4 Referer: http://sst138.ncsl.nist.gov/web/soap/soap-diag-client.htm
5 Content-Type: text/xml; charset=utf-8
6 SOAPAction: ""
7 Accept-Encoding: gzip, deflate
8 User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
9 Host: gunshot.ncsl.nist.gov:8080
10 Connection: Keep-Alive
11 Cache-Control: no-cache
12 Content-Length: 851
13
14 <?xml version="1.0" ?>
15 <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
16 <SOAP-ENV:Header/>
17 <SOAP-ENV:Body>
18 <rs:SubmitObjectsRequest
19 xmlns:rs="urn:oasis:names:tc:ebxml-regrep:registry:xsd:2.1"
20 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
21 xmlns="urn:oasis:names:tc:ebxml-regrep:rim:xsd:2.1"
22 xmlns:rim="urn:oasis:names:tc:ebxml-regrep:rim:xsd:2.1">
23
24 <!-- registry metadata as defined by XDS goes here -->
25
26 </rs:SubmitObjectsRequest>
27 </SOAP-ENV:Body>
28 </SOAP-ENV:Envelope>
This transaction is used to move documents and metadata from the Document Source actor and the Document Repository actor. Since more than one element of data must be encoded, a coding scheme must be employed that is capable of wrapping multiple elements. That coding scheme is SOAP with attachments.
HTTP Header - note the following header fields:
HTTP Body - note the following points:
1 POST /ebxmlrr/registry/soap HTTP/1.1
2 Content-Type: multipart/related; type="text/xml"; boundary=---------------------------7d4285f14803b8
3 SOAPAction: ""
4 User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
5 Host: gunshot.ncsl.nist.gov:8080
6 Accept: */*
7 Connection: Keep-Alive
8 Cache-Control: no-cache
9 Content-Length: 1318
10
11 -----------------------------7d4285f14803b8
12 Content-Type: text/xml
13
14 <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
15 <SOAP-ENV:Header/>
16 <SOAP-ENV:Body>
17 <SubmitObjectsRequest xmlns="urn:oasis:names:tc:ebxml-regrep:registry:xsd:2.1">
18 <LeafRegistryObjectList>
19 <ExtrinsicObject id="doc_1" mimeType="text/xml"/>
20 </LeafRegistryObjectList>
21 </SubmitObjectsRequest>
22 </SOAP-ENV:Body>
23 </SOAP-ENV:Envelope>
24 -----------------------------7d4285f14803b8
25 Content-Type: text/xml
26 Content-Id: <doc_1>
27
28 <books>
29 <book isbn="0345374827"><title>The Great Shark Hunt</title>
30 <author>Hunter S. Thompson</author></book>
31 <book><title>Life with Father</title><author>Clarence Day</author></book>
32 </books>
33
34 -----------------------------7d4285f14803b8--
The MIME Multipart/Related format is used as a document format within XDS-I.
1 Content-Type: Multipart/Related; boundary=example-2
2
3 --example-2
4 Content-Type: text/plain
5
6 Text related to the PDF below is inserted here.
7 --example-2
8 Content-Type: application/pdf
9 Content-Transfer-Encoding: BASE64
10
11 BASE64 encoded PDF goes here
12 --example-2--
The first line is a Content-Type header which must have as its first value the string "Multipart/Related" and an additional part must document the boundary string to be used. The blank lines (technically \r\n) are used to indicate "end of header". One of the parts must be of type text/plain and the other must be "application/pdf" and the contents of this part must be the BASE64 encoded contents of the relevant PDF.