cancel
Showing results for 
Search instead for 
Did you mean: 

Problem with using XSD in PI 7.1

Former Member
0 Kudos

Hi all,

I am intergrating with a third party which has provided an XSD definition of their message formats.

I have imported this file as an external definition and can use it in my message mapping fine.

However I'm trying to create a Message Interface now and may need to reference a data type, so I have the following questions.

1) Can you base a message interface of an external definition or do you need to create a datatype and import the XSD import it as a datatype?

Assuming I need to create a data type I am trying to do the following.

Create a data type FGSCSSTDShipNotify and use the tools->import XSD I am getting an error " Schema to be handled does not contain a definition of type FGSCSSTDShipNotify"

A snippet from the schema is below and my thought is that I need to have FGSCSSTDShipNotify as a complex type not a element.

My question is

2) Can someone review the snippet below and give me some advice or point me to some documentation on how the xml should be formatted to import FGSCSSTDShipNotify as a data type?

Cheers, John

<xsd:element name="FGSCSSTDShipNotify">

<xsd:complexType>

<xsd:sequence>

<xsd:element ref="FGSCSHdr">

</xsd:element>

<xsd:element ref="ShipNotifHdrLp" maxOccurs="unbounded"/>

</xsd:sequence>

<xsd:attribute name="IsRootNode" fixed="Y"/>

<xsd:attribute name="RootNode" fixed="FGSCSSTDShipNotify"/>

</xsd:complexType>

</xsd:element>

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Stefan,

Thanks for the response.

I mispoke earlier when I said I was "trying to create a Message Interface ",

I'm actually trying to create a Operation mapping

Here is my scenario idoc -> http request.

I've imported the idoc DESADV.DELVRY05 and created an external definition based of the xsd provided by the third party.

I've created a message mapping from the idoc to the external definition that I need to send it to.

Right now I'm just trying to finish up my mapping from idoc to their message structure, after this I will then create the outbound http call.

I'm thinking my next steps are - please check and let me know if I'm wrong

1) Create an operation mapping, I am in this screen, can reference the idoc as the source operation and use the message mapping as the mapping program, but can't use the external definition for the target operation.

This brings me back to the questions

1) Can you base a Operation mapping of an external definition or do you need to create a datatype and import the XSD import it as a datatype

and

2) Can someone review the snippet below and give me some advice or point me to some documentation on how the xml should be formatted to import FGSCSSTDShipNotify as a data type?

Cheers,

John

Former Member
0 Kudos

Hi John

You need a Service Interface for operation mapping, so you need to create an Inbound interface referencing your external definition. Then you can use that interface in Operation mapping.

Where are you nowadays?

prateek
Active Contributor
0 Kudos

1) Can you base a Operation mapping of an external definition or do you need to create a datatype and import the XSD import it as a datatype

Both are incorrect.

You need to create a Service Interface and assign the External Defition to it as the message type.

And then use this Service Interface in Operation Mapping.

Regards,

Prateek

stefan_grube
Active Contributor
0 Kudos

For a service interface, you need a WSDL.

Have you tried to create a message type and reference the external definition?