OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

ebxml-transport message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Subject: A rewritten section 7


Since wholesale rewrites seem to be en vogue (at least for RM :), I'm
attaching the revision I had promised a couple of weeks ago.  Chris had
seen it, but disagreed with the scope of the rewrite, so consider this a
"minority report."  Attached is HTML, and PDF generated from that. 
There are two minor open items/questions indicated in the text.
	/r$
Title: ebXML Chapter 7

7.1 Introduction

An ebXML Message is a multipart MIME [RFC2045] document. It is designed to be carried over a variety of protocols such as HTTP or SMTP.

An ebXML message has one or two MIME bodyparts, which MUST appear in this order:

As a MIME document, the ebXML Message has MIME headers, and each bodypart has headers as well. The following example shows all these elements:

Content-Type: multipart/related; type="application/vnd.eb+xml";
    version="0.92"; boundary="ebxml-part-wrapper"

This is a multi-part MIME message.

--ebxml-part-wrapper
MIME message headers
Content-Type: "application/vnd.eb+xml"; version="0.92";
    charset="utf-8"
ebXMLHeader bodypart MIME headers
<ebXMLHeader xmlns="...">
      ...
</ebXMLHeader>

--ebxml-part-wrapper
ebxmlHeader content
Content-Type: application/xml
Content-ID: <po-request-22222-body@example.com>
Content-Transfer-Encoding: base64
Payload bodypart MIME headers
12465AB34C...

--ebxml-part-wrapper--
Payload content

The MIME message headers are described in section 7.2. The ebXMLHeader bodypart headers are described in section 7.3 The ebXMLHeader content is desribed in section 8. The Payload bodypart headers and content are described in section 7.4

7.2 MIME Message headers

The purpose of the MIME message headers is to allow the carrying transport to identify an ebXML message and deliver it to the local MSH for processing. The interface between the transport agent and the MSH is not specified in this document. For example, whether or not the MSH acts on the complete MIME object, or if it receives it pre-processed, such that the Content-Type header is unnecessary, is left to the local implementation.

7.2.1 Content-Type

The content-type MUST be "multipart/related", with only these three attributes: boundary, type, and version.

The boundary attribute is used to demarcate the ebXML header and payload bodyparts. It MUST be chosen carefully to ensure that it does not occur within the content area of those bodyparts; see [RFC2045] for guidance on how to do this.

The type attribute identifies the data as an ebXML message, and MUST have the value "application/vnd.eb+xml".

The version attribute identifies the version of this specification to which the document conforms. Carrying transports should treat this as an opaque string and not rely, e.g., on sorting characteristics. It MUST have the value "0.92".

7.2.2 Other headers

If present, the MIME-Version header MUST be interpreted according to [RFC2045].

If present, the Content-Transfer-Encoding header MUST be interpreted according to [RFC2045].

MIME headers do not have a mechanism comparable to the "mustUnderstand" attribute. Therefore, it is RECOMMENDED that ebXML processors avoid additional headers unless they are confident that all the entities that will be processing the message can properly implement the semantics of those headers.

7.3 The ebXMLHeader Bodypart Headers

The ebXMLHeader bodypart is a conforming XML Media Type [RFC3023].

Two headers MUST be present in the MIME headers for the ebXMLHeader bodypart: the Content-ID and the Content-Type.

7.3.1 Content-ID

The semantics of this headerare described in [RFC2045]. <r$>Need a sentence of explanation why this is needed. Or did I get it wrong?</r$>

7.3.2 Content-Type

This header identifies the bodypart as an ebXMLHeader document.

It MUST have the value "application/vnb.eb+xml", with only these two attributes: charset and version.

The charset attribute identifies the encoding used in the ebXMLHeader bodypart. As described in [RFC3023], this attribute is optional and has no default. If present, it MUST match the encoding of the XML document in the bodypart content -- the same encoding value if present in the XML declaration, or "UTF-8" if no encoding declaration appears. Further description of the semantics are decribed in [RFC3023].

The version attribute identifies the version of this specification to which the document conforms. It will always have the same value as the version attribute in the ebXMLHeader XML document, described in section 8. It MUST have the value "0.92". <r$>Why is version here? I would like to leave it in the ebXMLHeader XML document. If it must be here, a sentence of rationalization would help.</r$>

For maximum interoperability, the bodypart SHOULD be in UTF-8 and the charset attribute SHOULD be present with that same value.

7.3.3 Other Headers

If present, the Content-Transfer-Encoding header MUST be interpreted according to [RFC2045].

It is RECOMMENDED that the "#wildcard" element (see section 8.2.3.9) of the ebXMLHeader document be used instead of any headers other than those defined here.

7.4 Payload bodypart headers and content

This specification makes no provision, nor limits in any way, the structure or content of the payload. For example, it may be (legacy) binary data, a plain-text object, or a complex nested multiplart MIME object. The syntax and semantics of the payload are left to the application designer.

Two headers MUST be present in the MIME headers for the payload bodypart: the Content-ID and the Content-Type. Their semantics are described in [RFC2045]. The Content-ID is required to ensure that an ebXMLHeader document will always have a way to reference the message payload. The Content-Type is required by the MIME specification.

If present, the Content-Transfer-Encoding header MUST be interpreted according to [RFC2045].

7.5 Additional MIME Parameters

Delete this section.

7.6 Reporting MIME Errors

Move to section 11.

sec7.pdf



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]

Search: Match: Sort by:
Words: | Help


Powered by eList eXpress LLC