[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: CompositeList nuances
It appears that we make use of multiple CompositeLists
inside CPPs to indicate alternatives. I looked for a statement of this intent,
but did not find it. I also did not see a remark in the CPA specific section
that discusses limiting the CompositeList to one in a CPA. Should we add these statements? Also, I realized if we did use multiples to indicate
alternatives (and the Company B example CPP does illustrate this), I realized
the schema for Packaging should be changed to allow multiple choices over
Constituents or CompositeLists when we incorporate the 2.0 errata in the 2.1
specification and schema. I made this multiplicity change by letting the new
choice over Constituent or CompositeList have a maxOccurs of “unbounded”
Interesting we can now have a simple SOAP or a standard SOAP with attachments format
as alternative packaging schemes. This would also accommodate describing XOP or
MTOM variants to negotiate which is to be used ( not that I necessarily hope
that those options catch on…) I will make this change and people can discuss it at the
next couple of teleconferences. Here is the bit from the Company B CPP that illustrates
alternatives: <tp:Packaging
id="CompanyB_SyncReplyPackage">
<tp:ProcessingCapabilities parse="true"
generate="true"/>
<tp:CompositeList>
<tp:Composite id="CompanyB_SignalAndResponseMsg"
mimetype="multipart/related"
mimeparameters="type=text/xml">
<tp:Constituent idref="CompanyB_MsgHdr"/>
<tp:Constituent
idref="CompanyB_ReceiptAcknowledgment"/>
<tp:Constituent idref="CompanyB_Response"/>
</tp:Composite>
</tp:CompositeList>
<tp:CompositeList>
<tp:Composite id="CompanyB_SyncExceptionMsg"
mimetype="multipart/related"
mimeparameters="type=text/xml">
<tp:Constituent idref="CompanyB_MsgHdr"/>
<tp:Constituent idref="CompanyB_Exception"/>
</tp:Composite>
</tp:CompositeList>
</tp:Packaging> Here is the bit that contains the schema change: <xsd:complexType
name="PackagingType">
<xsd:sequence>
<xsd:element name="ProcessingCapabilities">
<xsd:complexType>
<xsd:attribute name="parse" type="xsd:boolean"
use="required"/>
<xsd:attribute name="generate" type="xsd:boolean"
use="required"/>
</xsd:complexType>
</xsd:element>
<xsd:choice maxOccurs="unbounded">
<xsd:element ref="tns:CompositeList" />
<xsd:element ref="tns:Constituent"/>
</xsd:choice>
</xsd:sequence> <xsd:attribute
name="id" type="xsd:ID" use="required"/> </xsd:complexType> |
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]