Error importing xsd as external definition

I'm importing a wsdl file as external definition and it references some xsd files that I'm trying to import too. Specifically there are 2 of them that I can't import in PI, as I get the next error:
Error when loading XML document (Failed to load resource from the context classloader of the current thread! Loading from classloader was caused by: java.net.UnknownHostException: www.w3.org)
XSD files might be found under next urls:
[XAdES.xsd|https://www3.aeat.es/ADUA/internet/es/aeat/dit/adu/xades/XAdES.xsd]
[xmldsig-core-schema.xsd|https://www3.aeat.es/ADUA/internet/es/aeat/dit/adu/xades/xmldsig-core-schema.xsd]
and are meant to be used to sign the document.
I have validated the files using the service in the next url:
[http://www.w3.org/2001/03/webdata/xsv|http://www.w3.org/2001/03/webdata/xsv] as well as in Altova XML Spy.
Has anyone any idea of what the problem might be? It is really interfering in my development.
Thanks in advance.

Ok I think I might have solved it. First there was a pair of problems with the file xmldsig-core-schema.xsd.
1. The name couldn't be used in PI as '-' characters are not allowed.
I changed the name to xmldsig_core_schema.xsd
2. The file had these lines at the start:
<!DOCTYPE schema PUBLIC "-//W3C//DTD XMLSchema 200102//EN" "http://www.w3.org/2001/XMLSchema.dtd" [
     <!ATTLIST schema
     xmlns:ds CDATA #FIXED "http://www.w3.org/2000/09/xmldsig#"
>
     <!ENTITY dsig 'http://www.w3.org/2000/09/xmldsig#'>
     <!ENTITY % p ''>
     <!ENTITY % s ''>
]>
PI doesn't like that if you import the file as XSD because I guess that is DTD not XSD format.
I removed those lines.
With these two changes this file could be imported.
However I still had problems with the XAdES.xsd file. PI couldn't recognize the import of xmldsig-core-schema.xsd file:
<xsd:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/2002/
REC-xmldsig-core-20020212/xmldsig-core-schema.xsd"/>
It didn't like the URL, so I changed it to make reference to my local file.
After this, it all worked. The question is, will it also work in runtime when I'll make use of these external definitions created? Or will my changes have an impact on the results? I guess it will work fine but perhaps I'm wrong.
Besides, when activated I got the next warning:
Name of '/schema/complexType("TimeStampType")/sequence/choice/element("XMLTimeStamp")' starts with 'xml'
There's an element name that starts by XML. Is this forbidden? Will I have problems if I activate and use it just as it is?
Thanks for the answers.

Similar Messages

  • "Connection Interruped" frequently while importing xsd into External Defini

    Hi All,
      Whenever I try to create a new External Definition and try to import an XSD into it from my local system or share drive the connection gets interrupted. Afterthat even I provide right credentials I am not able to log into the server successfully.
    I am able to successfully create other objects but only when I am importing an XSD into External Definition I am getting this issue.
    If anyone came across similar situation earlier and were able to overcome this please let me know how to handle this situation.
    Thanks in advance.
    Regards,
    Sarat

    Hi Sarat,
    Are you getting any error message ? If so what is the error message?
    This is weird one which I never heard.
    Check SAP Note: 1255351
    Thanks,

  • No messages under the 'Messages' tab for imported WSDL in External Definitions

    Dear All,
    I import this WSDL to the External Definitions but it is not showing any messages in the 'Messages' tab while WSDL clearly has message interfaces in it. Attached is the WSDL. You help is very much appreciated.
    Regards,
    Adil Khalil

    Hi, imported wsdl shouldn't have any import instruction.
    All import instruction should be changed to content of importing file.
    I see the code <xsd:import namespace="http://ouaf.oracle.com/"/> in your file.
    Hmm. but I imported you file and everything is fine
    Message was edited by: Mikhail Koshkin

  • PI does not keep sequence of XSD for external definition

    Hi,
    currently I face following problem. I have an XSD which decribes a MSCONS market message that contains following sequence:
         <xs:complexType name="MSCONS">
              <xs:sequence>
                   <xs:element name="UNH" type="UNH"/>
                   <xs:element name="BGM" type="BGM"/>
                   <xs:element name="DTM" type="DTM"/>
                   <xs:element name="NAD" type="NAD" minOccurs="2" maxOccurs="2"/>
                   <xs:element name="UNS" type="UNS"/>
                   <xs:element name="NAD" type="NAD" maxOccurs="unbounded"/>
                   <xs:element name="CNT" type="CNT" minOccurs="0" maxOccurs="99"/>
                   <xs:element name="UNT" type="UNT"/>
              </xs:sequence>
         </xs:complexType>
    There are 2 NAD elements, followed by an UNS element, followed by an NAD element again. When I upload that XSD to PI as an external definition, the message is described as:
    MSCONS     Message                         
    -> MSCONS     Element     MSCONS     1               Metered services consumption report message
    -> -> UNH     Element     UNH     1               
    -> -> BGM     Element     BGM     1               
    -> -> DTM     Element     DTM     1               
    -> -> NAD     Element     NAD     1..unbounded               
    -> -> UNS     Element     UNS     1               
    -> -> CNT     Element     CNT     0..99               
    -> -> UNT     Element     UNT     1     
    All the NAD elements are summarized before UNS element. After mapping I will get an message which is not valid to XSD, because sequence is not correct.
    Does anyone knows a solution/workaround for that issue. Would appreciate you help.
    Thank you and Best Regards,
    Nico

    > All the NAD elements are summarized before UNS element. After mapping I will get an message which is not valid to XSD, because sequence is not correct.
    >
    > Does anyone knows a solution/workaround for that issue. Would appreciate you help.
    No. There is no way. The way how graphical mapping works internally makes it impossible to achieve your requirement.
    As work around use two different nodes NDA and NAD1 and rename it with a simple Java mapping as second mapping step.

  • Importing WSDL into External Definitions

    Hi,
    I got WSDLs from WAS WS Navigator, I have imported the WSDL from <b>porttypes</b> folder but I don't see any messages in the messages tab of External Definitions.
    See below my WSDL
    <?xml version="1.0" encoding="utf-8"?>
    <!--            Generated by WSDLDefinitionsParser    --><wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns0="urn:xEM_MeasurementImportVi" targetNamespace="urn:xEM_MeasurementImportWsd/xEM_MeasurementImportVi/document" xmlns:tns="urn:xEM_MeasurementImportWsd/xEM_MeasurementImportVi/document">
      <wsdl:types>
        <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:java/lang" xmlns:tns="urn:java/lang" elementFormDefault="qualified">
          <xs:complexType name="ArrayOfint">
            <xs:sequence>
              <xs:element maxOccurs="unbounded" minOccurs="0" name="int" type="xs:int" nillable="true"/>
            </xs:sequence>
          </xs:complexType>
          <xs:complexType name="ArrayOfString">
            <xs:sequence>
              <xs:element maxOccurs="unbounded" minOccurs="0" name="String" type="xs:string" nillable="true"/>
            </xs:sequence>
          </xs:complexType>
        </xs:schema>
        <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:com.technidata.em.imp.consumption" xmlns:tns="urn:com.technidata.em.imp.consumption" elementFormDefault="qualified">
          <xs:complexType name="ReturnCode">
            <xs:sequence>
              <xs:element name="code" type="xs:int"/>
              <xs:element name="description" type="xs:string" nillable="true" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
          <xs:complexType name="ArrayOfReturnCode">
            <xs:sequence>
              <xs:element maxOccurs="unbounded" minOccurs="0" name="ReturnCode" type="tns:ReturnCode" nillable="true"/>
            </xs:sequence>
          </xs:complexType>
        </xs:schema>
        <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:com.technidata.em" xmlns:tns="urn:com.technidata.em" elementFormDefault="qualified">
          <xs:complexType name="Measurement">
            <xs:sequence>
              <xs:element name="pSystemId" type="xs:string" nillable="true" minOccurs="0"/>
              <xs:element name="pSystemTagId" type="xs:string" nillable="true" minOccurs="0"/>
              <xs:element name="pDate" type="xs:dateTime" nillable="true" minOccurs="0"/>
              <xs:element name="pValue" type="xs:double"/>
              <xs:element name="pUnit" type="xs:string" nillable="true" minOccurs="0"/>
              <xs:element name="pDescription" type="xs:string" nillable="true" minOccurs="0"/>
            </xs:sequence>
          </xs:complexType>
          <xs:complexType name="ArrayOfMeasurement">
            <xs:sequence>
              <xs:element maxOccurs="unbounded" minOccurs="0" name="Measurement" type="tns:Measurement" nillable="true"/>
            </xs:sequence>
          </xs:complexType>
        </xs:schema>
        <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:xEM_MeasurementImportVi" xmlns:tns="urn:xEM_MeasurementImportVi" elementFormDefault="qualified" xmlns:s1="urn:java/lang" xmlns:s2="urn:com.technidata.em.imp.consumption" xmlns:s0="urn:com.technidata.em">
          <xs:import namespace="urn:java/lang"/>
          <xs:import namespace="urn:com.technidata.em.imp.consumption"/>
          <xs:import namespace="urn:com.technidata.em"/>
          <xs:element name="checkConnection">
            <xs:complexType>
              <xs:sequence/>
            </xs:complexType>
          </xs:element>
          <xs:element name="checkConnectionResponse">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="Response" type="xs:string" nillable="true"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element name="doMeasurementImport">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="pSystemId" type="xs:string" nillable="true"/>
                <xs:element name="pSystemTagId" type="xs:string" nillable="true"/>
                <xs:element name="pDate" type="xs:dateTime" nillable="true"/>
                <xs:element name="pValue" type="xs:double"/>
                <xs:element name="pUnit" type="xs:string" nillable="true"/>
                <xs:element name="pDescription" type="xs:string" nillable="true"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element name="doMeasurementImportResponse">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="Response" type="xs:int"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element name="doMeasurementsImport">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="pMeasurements" type="s0:ArrayOfMeasurement" nillable="true"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element name="doMeasurementsImportResponse">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="Response" type="s1:ArrayOfint" nillable="true"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element name="getErrorCodes">
            <xs:complexType>
              <xs:sequence/>
            </xs:complexType>
          </xs:element>
          <xs:element name="getErrorCodesResponse">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="Response" type="s2:ArrayOfReturnCode" nillable="true"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element name="getSupportedUnits">
            <xs:complexType>
              <xs:sequence/>
            </xs:complexType>
          </xs:element>
          <xs:element name="getSupportedUnitsResponse">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="Response" type="s1:ArrayOfString" nillable="true"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:schema>
      </wsdl:types>
      <wsdl:message name="checkConnectionIn_doc">
        <wsdl:part name="parameters" element="ns0:checkConnection"/>
      </wsdl:message>
      <wsdl:message name="checkConnectionOut_doc">
        <wsdl:part name="parameters" element="ns0:checkConnectionResponse"/>
      </wsdl:message>
      <wsdl:message name="doMeasurementImportIn_doc">
        <wsdl:part name="parameters" element="ns0:doMeasurementImport"/>
      </wsdl:message>
      <wsdl:message name="doMeasurementImportOut_doc">
        <wsdl:part name="parameters" element="ns0:doMeasurementImportResponse"/>
      </wsdl:message>
      <wsdl:message name="doMeasurementsImportIn_doc">
        <wsdl:part name="parameters" element="ns0:doMeasurementsImport"/>
      </wsdl:message>
      <wsdl:message name="doMeasurementsImportOut_doc">
        <wsdl:part name="parameters" element="ns0:doMeasurementsImportResponse"/>
      </wsdl:message>
      <wsdl:message name="getErrorCodesIn_doc">
        <wsdl:part name="parameters" element="ns0:getErrorCodes"/>
      </wsdl:message>
      <wsdl:message name="getErrorCodesOut_doc">
        <wsdl:part name="parameters" element="ns0:getErrorCodesResponse"/>
      </wsdl:message>
      <wsdl:message name="getSupportedUnitsIn_doc">
        <wsdl:part name="parameters" element="ns0:getSupportedUnits"/>
      </wsdl:message>
      <wsdl:message name="getSupportedUnitsOut_doc">
        <wsdl:part name="parameters" element="ns0:getSupportedUnitsResponse"/>
      </wsdl:message>
      <wsdl:portType name="xEM_MeasurementImportVi_Document">
        <wsdl:operation name="checkConnection">
          <wsdl:input message="tns:checkConnectionIn_doc"/>
          <wsdl:output message="tns:checkConnectionOut_doc"/>
        </wsdl:operation>
        <wsdl:operation name="doMeasurementImport">
          <wsdl:input message="tns:doMeasurementImportIn_doc"/>
          <wsdl:output message="tns:doMeasurementImportOut_doc"/>
        </wsdl:operation>
        <wsdl:operation name="doMeasurementsImport">
          <wsdl:input message="tns:doMeasurementsImportIn_doc"/>
          <wsdl:output message="tns:doMeasurementsImportOut_doc"/>
        </wsdl:operation>
        <wsdl:operation name="getErrorCodes">
          <wsdl:input message="tns:getErrorCodesIn_doc"/>
          <wsdl:output message="tns:getErrorCodesOut_doc"/>
        </wsdl:operation>
        <wsdl:operation name="getSupportedUnits">
          <wsdl:input message="tns:getSupportedUnitsIn_doc"/>
          <wsdl:output message="tns:getSupportedUnitsOut_doc"/>
        </wsdl:operation>
      </wsdl:portType>
    </wsdl:definitions>
    Appreciate your quick response.
    Srini Sandaka

    Hi,
    I diagnose the problem, the problem with the name space length.
    Orginal NameSpace: <i>urn:xEM_MeasurementImportWsd/xEM_MeasurementImportVi/document</i>
    Modified NameSpace: <i>urn:xEM_MeasurementImportWsd/xEM_MeasurementImportVi/documen</i>
    The <b>External Definitions</b> is recognizing only 60 characters namespace. If the namespace exceed 60 characters it is not showing any messages in the messages tab.
    Will make any problem to call the WebService from XI since we are changing the original namespace in the WSDL and imported into XI.
    How can we overcome this problem, is it a limitation.
    Thanks
    Srini Sandaka

  • Importing XSD to Create a Msg Type.

    Hi All,
    Can anyone plz tell me how to create a msg type based on external XSD.I hav gone thru help.sap.com. there it is mentioned for Data Type.It is given that to go for Tools->Import XSD.but i din't find any such option there.Instead, i hav gone for creating External Definition and was successful in creating a DataType using External Definition.But to my surprise, the created Data type is not listed under Data types.Instead it is listed under External Definitions. This is for Data Types.But i need for Message Type.Plz help me out as i hav very severe dead lines.
    Thnx in Advance.
    Anil.

    Hi Anil,
    You could create Message Type (MT) in 3 ways :
    1. Manual: Create Data Type (DT) & Create MT refering to it.
    2. Import XSD as DT: Create a new DT by giving a name. The structure can be imported from a XSD. Tools-> Import XSD. (Note: the name of DT here should match the 'complex type' name in XSD). Then create a MT refering to this DT.
    3. Import XSD as External Definition: An XSD can be imported into External definitions, and this creates the MT directly, and no DT required. They appear only under 'External Definitions'. Note: This XSD should contain a 'complex type' definition, which stands for DT. And also a root element declaration refering to this type, which stands for MT. In this case, we can have one XSD containing multiple DTs and MTs within it. All these MTs can be seen under the 'Messages' tab within an External Definition.
    Once an MT is created in one of these 3 ways, the other concepts of Interfaces, mappings etc. remain the same.
    Hope this gives the differences, and clarifies your concerns.
    regards,
    Pops V

  • White spaces in token area of xsd - error when importing xsd as ext. def.

    Hello,
    we are not sure about this issue.
    This is how an area of the xsd (unfortunately an xsd of a published standard message format of german government!)
    is defined that we need to import as an external definition:
      <xs:complexContent>
          <xs:restriction base="tns:WLT_String">
            <xs:sequence>
              <xs:element name="content">
                <xs:simpleType>
                  <xs:restriction base="xs:token">
                    <xs:enumeration value="Allgemeine Fahrerlaubnis (§ 5 StVZO) " />
                    <xs:enumeration value="Dienstfahrerlaubnis-Klassen (bisheriger § 5 i. V. m. §  14 StVZO)" />
                    <xs:enumeration value="Dienstfahrerlaubnis-Klassen (§ 6 i. V. m. §  26 FeV)" />
                    <xs:enumeration value="Dienstfahrerlaubnis-Klassen Bundeswehr (bisheriger § 5 i. V. m. §  14 StVZO)" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
            </xs:sequence>
            <xs:attribute name="wl_fassung" type="xs:string" use="optional" default="0" />
            <xs:attribute name="wl_version" type="xs:string" use="required" fixed="1.1" />
          </xs:restriction>
        </xs:complexContent>
    So we can see this defintion:
                  <xs:restriction base="xs:token">
    which means per definition:
    xsd:token: normalizedString w/o 2 white spaces succeeding and w/o white spaces at start and end.
    But you can see that the enumerations contain 2 white spaces succeeding or white space at the end.
    Impporting this xsd as an external definition into PI will fail.
    So it looks like PI is doing a very restricitve check of the values against the token definition.
    We would expect that any xml editor would do the same check but behaviour of xml editors is different means accepting this xsd.
    So is it correct that PI is more restrictive at the latest during activation of such an xsd?
    This results in the situation that official standard xsds will be used by governement with other tools but only interfaces with PI will fail..
    Any ideas how to run with that issue?
    Regards
    Dirk

    Hello,
    Your issue looks like the one described in this page:
    http://www.xmlplease.com/normalized
    For reference purposes, here is the link for the supported schema and wsdl in PI 7.1
    http://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/00a9a425-1769-2a10-9196-bd8eeed72e4c
    As a temporary work around, you can try editing the xsd by removing the spaces before importing it into PI.
    Hope this helps,
    Mark

  • Import SAP WSDL into External Definition

    Hi Friends,
    I'd like to import a WSDL into XI External Definition. However, the WSDL is gained from Web AS Web Service Navigator. So it is a zip file and consists of three WSDL files. How can I import them into the external definition?
    Thanks + Regards
    Jerome

    Hi Jerome,
    If you have three wsld files then aren't those three messages?
    have you tried importing them as external definitions one by one?
    you can check how the message structre looks like
    when you try to use the external definition inside a
    message mapping (remember you don't create message type from external definitions)
    Futher reference:
    http://help.sap.com/saphelp_nw04/helpdata/en/26/9e97b0f525d743882936c2d6f375c7/content.htm
    BTW
    while creating external defnitions (WSDL)
    you can only choose wsld file or XML - nothing else
    Regards,
    michal

  • Error while running XML data definition

    Hi,
    Want to run report using XML Publisher, created one Data Definition using xml file,
    <?xml version="1.0" encoding="WINDOWS-1252" ?>
    <dataTemplate name="EmpDT" description="Employee Details" Version="1.0">
    <parameters>
    <parameter name="p_DeptNo" dataType="character"/>
    </parameters>
    <dataQuery>
    <sqlStatement name="Q1">
    <![CDATA[ SELECT Empno, Ename,Job,Mgr,Hiredate,Deptno FROM Emp WHERE deptno = nvl(:p_DeptNo,deptno) ]]>
    </sqlStatement>
    </dataQuery>
    <dataStructure>
    <group name="G_EMP" source="Q1">
    <element name="EMPLOYEE_NUMBER" value="Empno"/>
    <element name="NAME" value="Ename"/>
    <element name="JOB" value="Job"/>
    <element name="MANAGER" value="Mgr"/>
    <element name="HIREDATE" value="Hiredate"/>
    <element name="DEPTNO" value="Deptno"/>
    </group>
    </dataStructure>
    </dataTemplate>
    Added concurrent program and trying to run request but it's getting completed with error, when i checked log file it was showing error like,
    XDO Data Engine Version No: 5.6.3
    Resp: 20420
    Org ID : 204
    Request ID: 5810677
    All Parameters: p_Dept_No=20
    Data Template Code: EMP_DET
    Data Template Application Short Name: AMW
    Debug Flag: N
    {p_Dept_No=20}
    Calling XDO Data Engine...
    [042811_124713802][][EXCEPTION] java.lang.NullPointerException
         at oracle.apps.xdo.dataengine.DataTemplateParser.GetNodeNumChildren(DataTemplateParser.java:334)
         at oracle.apps.xdo.dataengine.DataTemplateParser.templateParser(DataTemplateParser.java:266)
         at oracle.apps.xdo.dataengine.XMLPGEN.setDataTemplate(XMLPGEN.java:140)
         at oracle.apps.xdo.dataengine.DataProcessor.setDataTemplate(DataProcessor.java:193)
         at oracle.apps.xdo.oa.util.DataTemplate.<init>(DataTemplate.java:231)
         at oracle.apps.xdo.oa.cp.JCP4XDODataEngine.runProgram(JCP4XDODataEngine.java:283)
         at oracle.apps.fnd.cp.request.Run.main(Run.java:157)
    java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
         at com.sun.java.util.collections.ArrayList.RangeCheck(ArrayList.java:492)
         at com.sun.java.util.collections.ArrayList.get(ArrayList.java:306)
         at oracle.apps.xdo.dataengine.DataTemplateParser.getParentDataSource(DataTemplateParser.java:1796)
         at oracle.apps.xdo.dataengine.XMLPGEN.writeDefaultGroup(XMLPGEN.java:331)
         at oracle.apps.xdo.dataengine.XMLPGEN.writeGroupStructure(XMLPGEN.java:286)
         at oracle.apps.xdo.dataengine.XMLPGEN.processData(XMLPGEN.java:273)
         at oracle.apps.xdo.dataengine.XMLPGEN.processXML(XMLPGEN.java:215)
         at oracle.apps.xdo.dataengine.XMLPGEN.writeXML(XMLPGEN.java:254)
         at oracle.apps.xdo.dataengine.DataProcessor.processDataStructre(DataProcessor.java:390)
         at oracle.apps.xdo.dataengine.DataProcessor.processData(DataProcessor.java:355)
         at oracle.apps.xdo.oa.util.DataTemplate.processData(DataTemplate.java:334)
         at oracle.apps.xdo.oa.cp.JCP4XDODataEngine.runProgram(JCP4XDODataEngine.java:294)
         at oracle.apps.fnd.cp.request.Run.main(Run.java:157)
    can any one help me to solve this error? it's urgent.....
    reply awaited..
    Regards,
    Priyanka.

    HI,
    We are facing some issue with CXML. I have posted a new thread [cXML with SAP PI;. 
    The content of that thread is pasted below: You can give your solution in the above mentioned thread so that I can grant points.
    We need to use cXML for our project. Based on the thread ( [Error while uploading CXML data definition.; )
    the following steps need to be done with the cXML DTD.
    1.First Delete the Multiple Declaration of "Method .ANY"
    2.replace all "ds:" character with 'ds_'
    3.replace all "xades: " with 'xades_'
    4.replace all "xmlns" with 'attr_'
    5) After this use Altova to convert the DTD to XSD.
    First of all, we could not carry out the 4th point, as in that case Altova says that it is invalid, and it fails to get imported in PI as well.
    Without step 4 , if we import it as external definition, then there are certain attributes with type xml:lang coming in Red.
    Can anybody tell us on how to fix this.
    Thanks,
    Himadri

  • File to multiple Idocs using external definitions.

    Hi all,
    I have to create multiple idocs based on one field from source side.
    Inorder to do this..I have decided to change the occurance of Idoc from 1 to 1..unbounded , in the xsd i have downloaded from standard Idoc.
    which i have a plan to map to the filed , based on that i need to create new Idoc.
    I have tried importing the modified xsd into external definition. but how i should relate it to standard idoc which I have mapped earlier?.
    Thanks,
    venu.

    HI Venu,
    <i>
    I have tried importing the modified xsd into external definition. but how i should relate it to standard idoc which I have mapped earlier?.</i>
    After changing the Idoc occurence , you have imported the xsd into external definition. So this will act as as new message type for you in the mapping.
    You can not use old mapping here.
    Regards,
    Moorthy

  • Message Mapping - External Definitions

    My Scenario
    1) File1(Request with Employee Number) - Sent to XI (Async)
    2) XI will send the Request over HTTP and will Receive the Response(Employee Details) (Synchronous)
    3) The HTTP Response will be sent to File2(Employee Details) (Async)
    The Request and Responses are XSD Messages. I have Imported them into External Definition in my Repository.
    Created a File Request - Abstract - Asynchronous - Message interface
    Created a HTTP Request-Response - Abstract - Synch - Message interface
    Created a File Response - Abstract - Asynchronous - Message interface
    Message Mapping: (I am stuck here)
    I need to Map the File Request to HTTP Request
    I need to Map the HTTP Response to File2Response
    How can I creat the Message Mapping for the above situation?
    Thanks.

    Hi,
    You will need to create the following message mapping:
    1. File Request - HTTP Request
    2. HTTP Response - File Response
    you can map Message Types to External Definitions and vice versa.
    They should appear in the list for the relevant software component.
    Or am I missimng something here ?
    Cheers
    colin.

  • RFC as External Definition

    We have an RFC in 4.6C system imported on the SWC of 4.6 system. I am trying to export this RFC definition and import in as external definition in another swc - of ECC 6.0
    There is a Z.transaction on ECC 6.0 where the user submits a request and depending on some rules the transaction is posted either on to ECC or in 4.6C system.
    We are using a client proxy on ECC with a sync outbound interface.
    In the interface mapping - Test tab, when the request is selected in the drop down above, response is being shown on the left (souce message) side.
    is this normal?
    reg

    igone this question

  • "Messages" problem after importing .xsd file as external definition

    Hello,
    I received an .xsd file from a customer and need to import it as an "External Definition" in order to create the "Message Interface". The structure of the xsd looks like this:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:px="http://www.opentrans.org/XMLSchema/1.0" targetNamespace="http://www.opentrans.org/XMLSchema/1.0" elementFormDefault="qualified">
    <xsd:element name="ORDER">
    </xsd:element>
    <xsd:element name="ADDRESS">
    </xsd:element>
    <xsd:element name="ARTICLE_ID">
    </xsd:element>
    </xsd:schema>
    After importing and looking at the tab "Messages" I get numerous entries, for each <xsd:element> I get one message! But I basically only need one "Message" that holds my complete xsd-file.
    I tried inserting <xsd:element name="COMPLETEORDER"> right after the <xsd:schema>-Tag but that didn't work either. Somehow I need to sum up all the <xsd:elements>.
    Does anyone have an idea? Thank you very much!
    Peter

    Hello Prateek, Hello everyone,
    I now know what the problem is. I downloaded XMLspy and checked on the structure:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:px="http://www.opentrans.org/XMLSchema/1.0" targetNamespace="http://www.opentrans.org/XMLSchema/1.0" elementFormDefault="qualified">
    <xsd:element name="ORDER">
    </xsd:element>
    <xsd:element name="ADDRESS">
    </xsd:element>
    <xsd:element name="ARTICLE_ID">
    </xsd:element>
    <xsd:simpleType name="dtBOOLEAN">
    </xsd:simpleType>
    <xsd:simpleType name="dtCOUNTRIES">
    </xsd:simpleType>
    <xsd:element name="SUPPLIER_AID">
    </xsd:element>
    <xsd:simpleType name="typeSUPPLIER_AID">
    </xsd:simpleType>
    </xsd:schema>
    Between the long list of <xsd:element> tags there are some simpleTypes on the same
    level. Now if I insert
    <xsd:element name="COMPLETEORDER">
    <xsd:complexType>
    <xsd:sequence>
    on top, the <xsd:sequence> would be on the same level as the simpleTypes - which is not valid!
    But can I just move all the simpleTypes, e.g. into an <xsd:element>??
    That would be changing the customer's structure which I think is not a good thing!?
    Thank you again for your help! I really appreciate it!
    Best regards,
    Peter

  • External definition error

    I am trying to import the following XSD as an External Definition in Repository.
    I am getting the following Error. Please help me.
    Error
    Activation of the change list canceled
    Check result for External Definition Request | http://ABC.COM: Document check found errors 
    Cause: The loaded document does not contain valid XML 
    Error when parsing XML document com.sap.aii.utilxi.xml.xdom.XDOMException$ParseError: Error when parsing the XML document (External entity from address http://xml.cxml.org/schemas/cXML/1.2.014/cXML.dtd in XML document is not supported
    XSD
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.2.014/cXML.dtd">
    <cXML payloadID="[email protected]"
          timestamp="2005-01-13T00:00:16+00:00">
       <Header>
          <From>
             <Credential domain="NetworkId">
                <Identity>AN13000000259</Identity>
             </Credential>
          </From>
          <To>
             <Credential domain="NetworkId">
                <Identity>AN01000000001</Identity>
             </Credential>
          </To>
          <Sender>
             <Credential domain="NetworkId">
                <Identity>AN13000000259</Identity>
                <SharedSecret>abracadabra</SharedSecret>
             </Credential>
             <UserAgent>Our Procurement System 3.0</UserAgent>
         </Sender>
       </Header>
       <Request>
          <GetPendingRequest lastReceivedTimestamp="2005-01-12T00:00:25+00:00"
                maxMessages="20">
             <MessageType>StatusUpdateRequest</MessageType>
          </GetPendingRequest>
       </Request>
    </cXML>

    Hi,
    The structure that you posted dose'nt look like XSD its like a XML. Actually you have created a Schema based on DTD and not XSD. Did you use Altova to create this, then please select W3Schema instead of DTD while creating it.
    The following is the strucutre I got when I created using the XML you have posted.
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
         <xs:complexType name="CredentialType">
              <xs:sequence>
                   <xs:element ref="Identity"/>
                   <xs:element name="SharedSecret" type="xs:string" minOccurs="0"/>
              </xs:sequence>
              <xs:attribute name="domain" type="xs:string" use="required"/>
         </xs:complexType>
         <xs:element name="Identity" type="xs:string"/>
         <xs:element name="cXML">
              <xs:complexType>
                   <xs:sequence>
                        <xs:element name="Header">
                             <xs:complexType>
                                  <xs:sequence>
                                       <xs:element name="From">
                                            <xs:complexType>
                                                 <xs:sequence>
                                                      <xs:element name="Credential" type="CredentialType"/>
                                                 </xs:sequence>
                                            </xs:complexType>
                                       </xs:element>
                                       <xs:element name="To">
                                            <xs:complexType>
                                                 <xs:sequence>
                                                      <xs:element name="Credential" type="CredentialType"/>
                                                 </xs:sequence>
                                            </xs:complexType>
                                       </xs:element>
                                       <xs:element name="Sender">
                                            <xs:complexType>
                                                 <xs:sequence>
                                                      <xs:element name="Credential" type="CredentialType"/>
                                                      <xs:element name="UserAgent" type="xs:string"/>
                                                 </xs:sequence>
                                            </xs:complexType>
                                       </xs:element>
                                  </xs:sequence>
                             </xs:complexType>
                        </xs:element>
                        <xs:element name="Request">
                             <xs:complexType>
                                  <xs:sequence>
                                       <xs:element name="GetPendingRequest">
                                            <xs:complexType>
                                                 <xs:sequence>
                                                      <xs:element name="MessageType" type="xs:string"/>
                                                 </xs:sequence>
                                                 <xs:attribute name="lastReceivedTimestamp" type="xs:string" use="required"/>
                                                 <xs:attribute name="maxMessages" type="xs:string" use="required"/>
                                            </xs:complexType>
                                       </xs:element>
                                  </xs:sequence>
                             </xs:complexType>
                        </xs:element>
                   </xs:sequence>
                   <xs:attribute name="payloadID" type="xs:string" use="required"/>
                   <xs:attribute name="timestamp" type="xs:string" use="required"/>
              </xs:complexType>
         </xs:element>
    </xs:schema>
    Thanks,
    Prakash

  • Idoc - External Definitions Error

    Hi,
    I had to change the occurences of an exisiting idoc.  I had imported the xsd,changed the occurrences and reloaded it using WSDL structure.
    When i load the external definition in the mapping structure, it is giving me the following error.
    Object External Message Z_INVOICE02_MULTI |  INVOIC.INVOIC02.ZINVOIC02 | urn:sap-com:document:sap:idoc:messages not found
    Please note that when i had imported the xsd, i had removed the target namespace.

    Hi Sai,
    i need to add an additional field to the existing IDOC structure
    Is there any specific reason for usign IDOC as external definition (are you changing the occurance of IDOC)?
    what is your sender and receiver system?
    Are you expecting the value for this addition field to be populated by sap along with the rest of IDOC data? if yes then ,get a custom IDOC created in SAP with the required field.
    Or if you want to populate this additional field in PI usign any logic (assuming you are sending to any non sap system), then you can create a new ED for the targert , just export
    the ED to desktop , open with any xml editor (xml spy or microsoft  visual studio 2005) and navigate to the portion of xsd which you want to edit add the field -> reimport in PI and  use it as your target strucuture.You cannot edit ED directly in ESR.
    Regards,
    Srinivas

Maybe you are looking for