OASIS ebXML Messaging Services TC

  • 1.  Implementing Compression in AS4

    Posted 09-20-2011 13:38
    Hi All We have noted the following in our implementation of compression in AS4. 1 The eb:Property[@name='MimeType'] attribute should be mandatory instead of recommended as adding the content back to the soap element requires a content type header value, can't really guess this... 2 The compressed payload in the SWA should be Base64 encoded for Mime compatibility, this should be mentioned in the spec. 3 There is an XML parsing failure when specifying the eb:Property[@name='Compressed'] element as the schema requires a value for the eb:Property element as it is of type 'non-empty-string'. -- Regards Theo


  • 2.  RE: [ebxml-msg] Implementing Compression in AS4

    Posted 09-26-2011 09:25
    Hello Theo, 1. There are situations where the MIME type of a payload can be inferred, say, from the values for Service/Action. For example, S1/A1 type messages always contain one payload and it's an XML document, S2/A2 type messages always have two payloads, the first of which is a PDF document and the second a JPEG image, etc. The MSH can just pass the metadata and pointers to payloads to the application. For decompressed payloads that do not have the MIME type specificied as an attribute, the MIME type is effectively unknown, but the business application may still know how to process the payload content. 2. Why would you want that? Base64 encoding increases the message size, which the compression feature is intended to reduce. AS4 is layered over HTTP, and HTTP allows binary attachments such as GZIP data. My assumption is that compressed payloads, even XML payloads, should always go as separate MIME parts, not in the SOAP body (where Base64 encoding would be required). That assumption seems imexplicit in the AS4 specification. 3. We should probably change this to something like: <eb:Property name="Compressed">true</eb:Property> Unfortunately that means a specification change. Pim


  • 3.  Re: [ebxml-msg] Implementing Compression in AS4

    Posted 09-28-2011 07:50
    Hi Pim Thanks for the feedback/input - comments inline. On 26 Sep 2011, at 11:23 AM, Pim van der Eijk wrote: > > Hello Theo, > > 1. There are situations where the MIME type of a payload > can be inferred, say, from the values for Service/Action. > For example, S1/A1 type messages always contain one payload > and it's an XML document, S2/A2 type messages always have > two payloads, the first of which is a PDF document and the > second a JPEG image, etc. The MSH can just pass the metadata > and pointers to payloads to the application. For > decompressed payloads that do not have the MIME type > specificied as an attribute, the MIME type is effectively > unknown, but the business application may still know how to > process the payload content. Not ideal imo. Our preference would be to have the eb:Property[@name='MimeType'] attribute as mandatory in the spec. > 2. Why would you want that? Base64 encoding increases the > message size, which the compression feature is intended to > reduce. AS4 is layered over HTTP, and HTTP allows binary > attachments such as GZIP data. My assumption is that > compressed payloads, even XML payloads, should always go as > separate MIME parts, not in the SOAP body (where Base64 > encoding would be required). That assumption seems > imexplicit in the AS4 specification. You are right - thanks. We have taken out the base64 encoding and tested as working. > 3. We should probably change this to something like: > <eb:Property name="Compressed">true</eb:Property> > Unfortunately that means a specification change. Thanks - we have amended our system to conform to the above and works perfectly. I would recommend an amendment on this asap. -- Regards Theo