Question

772
Views
ClaudioR Member since 2014 6 posts
Corner
Posted: 1 year ago
Last activity: 9 months 2 weeks ago

Soap Service - Leverage type substitution in parse rule

Hi all,

I've been using Pega 7.3

I want to build a SOAP service which exposes in addition to some information an abstract type SpecificBodyContentType which can be substituted runtime by other elements which inherits from the abstract type (SpecificBodyContentType1, SpecificBodyContentType2) . Following part of the xsd I would like to generate:

<complexType>
<sequence>
<element name="CaseType"; type="xsd:string">
<element name="ExternalCaseID" type="xsd:string">
<element name="ExternalCaseType type="xsd:string">
<element minOccurs="0" name="SpecificBodyContent" type="tns:SpecificBodyContentType">
</sequence>
</complexType>

<complexType name="SpecificBodyContentType" abstract="true">
<sequence>
<element name="genericProperty" type="xsd:string"/>
</sequence>
</complexType>
<complexType name="SpecificBodyContent1">
<complexContent>
<extension base="tns:SpecificBodyContentType">
<sequence>
<element name="property1" type="xsd:string"/>
<element name="property2" type="xsd:string"/>
</sequence>
</extension>
</complexContent>
</complexType>

I created all the parse rules using type substituion as suggested in different articles I found on the web. Anyway each tyme I download the WSDL generated by the service I see only a type (see snippet below).

<complexType>
<sequence>
<element name="CaseType"; type="xsd:string">
<element name="ExternalCaseID" type="xsd:string">
<element name="ExternalCaseType type="xsd:string">
<element minOccurs="0" name="SpecificBodyContent" type="tns:SpecificBodyContentType">
</sequence>
</complexType>

<complexType name="SpecificBodyContentType">
<sequence>
<element name="genericProperty" type="xsd:string"/>
</sequence>
</complexType>

Do you have any suggestion? Is it possible to leverage Type substitution in SOAP Services exposed by Pega? In case not, do you have any workaround I could apply to reach my goal (expose a generic object?)

Thanks for your support,

Regards,

Claudio

Data Integration
Share this page LinkedIn