Rejecting invalid/unsupported p:serialization

Hi all,

I have a question about reporting err:C0001 (unsupported serialization method) and err:XD0020 (invalid combination of serialization parameters).

The test suite contains a test (err-c0001-001.xml) that does the following:

<p:pipeline>
  <p:serialization port="result" method="nonexistant"/>
  <p:identity/>
</p:pipeline>

The test is expected to fail with err:XC0001.

The spec says the following about p:serialization (section 5.6):

"If the pipeline processor serializes the output on the specified port, it must use the serialization options specified. If the processor is not serializing (if, for example, the pipeline has been called from another pipeline), then the p:serialization must be ignored. The processor may reject statically a pipeline that requests serialization options that it cannot provide."

Our implementation does not serialize - except when you use the command-line interface, in which case we of course apply the provided serialization options to the output ports.

Because both err:XC0001 and err:XD0020 are dynamic errors, we don't reject invalid/unsupported p:serializations statically. Only when the processors tries to use them, we report an error.

My question is:

- Is the test correct?
- Or: does the test suite assume, for the purpose of easy testing of serialization options, that serialization options are always applied to the top-level pipeline (as if it was ran from the command-line)?
- Or: are we doing something wrong in our implementation?

Regards,
Vojtech

Received on Monday, 27 April 2009 08:16:29 UTC