cancel
Showing results for 
Search instead for 
Did you mean: 

Is it possible to use External Definition for XML Validation?

Former Member
0 Kudos

Dear Contributors,

has anybody made experience with XML Validation using an external definition?

scenario: File -> PI -> File, target is a XML Validation via Adapter Engine.

Can I just import the [_this file_|http://www.ebics.de/fileadmin/unsecured/anlage3/anlage3_pain001/pain_schema/pain.001.002.03.xsd|http://www.ebics.de/fileadmin/unsecured/anlage3/anlage3_pain001/pain_schema/pain.001.002.03.xsd] as external definition, create a service interface and reference it in the Integration Builder?

I already searched google and sdn for help, already read several guides, presentations and how to - guides but can't find fitting solutions.

Thank you for your help.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Armin,

Can I just import the this file as external definition, create a service interface and reference it in the Integration Builder?

>>> yes please go ahead and do that. In external definition, import the XSD and then create a service interface for the same.

XML Validation on SAP PI 710/711 is dependent on the XSD's availability in the file system of SAP PI. Please take a look at :

http://help.sap.com/saphelp_nwpi71/helpdata/en/44/0bf1b3ec732d2fe10000000a11466f/content.htm

&

http://help.sap.com/saphelp_nwpi71/helpdata/en/44/23641dc2b36491e10000000a1553f7/content.htm

If you are using XML Validation feature on SAP PI 7.30 & above, you don't need the file system settings and this can be achieved only via the configuration done in the Agreements/ICO.

Hope this helps.

Regards, Gaurav.

Former Member
0 Kudos

Thank you Kumar for your answer.

I already checked both links, I think there's no more information available I've not already read ;-).

As I'm absolutely new to SAP PI, I've still got no complete picture in my head how it works.

We only use file to file so far, without mappings, validation.. for Interfaces we use random Interfaces that don't even exist but don't face any problems.

I imported the XSD and generated a Interface but am not sure where to reference that Interface. The Integration Builder asks for Interfaces and Namespaces everywhere without checking if the Interface even exists.

A further problem is, that I can't even klick on XML validation in the sender agreement, it's grey even in editing mode.

edit: using integrated configuration, I can klick it.

Also, the 4. row of the file looks like that:

- <xs:schema xmlns="urn:iso:std:iso:20022:tech:xsd:pain.001.002.03"

xmlns:xs="http://www.w3.org/2001/XMLSchema"

targetNamespace="urn:iso:std:iso:20022:tech:xsd:pain.001.002.03"

elementFormDefault="qualified">

is it correct to change it to:

- <xs:schema xmlns="<<our namespace>>"

xmlns:xs="http://www.w3.org/2001/XMLSchema"

targetNamespace="<<our namespace>>"

elementFormDefault="qualified">

thanks for further help.

Edited by: Armin Kern on Jan 3, 2012 8:57 AM

Answers (1)

Answers (1)

Former Member
0 Kudos

Seems like it is possible! Just imported the xsd exactly the way shown in the link!

Hint: if you're not sure where exactly to put the xsd file and how to name it: just try to validate a XML file, start the communication channel via workbench and check for the error, it will show you for what file in what path it is looking!