How to use xslt mapper

I'have created a xsd with sequence occurences. In the xslt mapper I try to connect nickname, initials and full name to the same field, because I just see one field.
Can somebody help me?
Thanks
Jasper

I use the following xsd (just part of the whole xsd):
<xsd:complexType name="nameType">
<xsd:sequence>
     <xsd:element name="partname" type="partnameType" minOccurs="3" maxOccurs="5"/>
     </xsd:sequence>
     </xsd:complexType>
     <xsd:complexType name="partnameType">
     <xsd:sequence>
     <xsd:element name="typename" type="typenamenameType"/>
     <xsd:element name="text" type="nametextType"/>
     </xsd:sequence>
     </xsd:complexType>
In the xslt mapper I just see one text field. So I can connect only nickname to the text field. I suspect more text fields.

Similar Messages

  • How to use xslt mapper with sequence occurences

    I'm using Bpel process manager.
    I'm trying to use multiple partname fields in my xsd. I'have defined a sequence occurence in my xsd.
    In the xslt mapper I see just one partname. How can I map initials, nickname, fullname etc to the 'different' partnames while I just see one.
    I'hope somebody can help me?
    Jasper Goede

    I use the following xsd (just part of the whole xsd):
    <xsd:complexType name="nameType">
    <xsd:sequence>
         <xsd:element name="partname" type="partnameType" minOccurs="3" maxOccurs="5"/>
         </xsd:sequence>
         </xsd:complexType>
         <xsd:complexType name="partnameType">
         <xsd:sequence>
         <xsd:element name="typename" type="typenamenameType"/>
         <xsd:element name="text" type="nametextType"/>
         </xsd:sequence>
         </xsd:complexType>
    In the xslt mapper I just see one text field. So I can connect only nickname to the text field. I suspect more text fields.

  • How to Convert the following XML? using XSLT Mapper?

    Hey all,
    I have a simple looking but complex problem
    I have a XML file like this
    <userdata>
    <city> new york</city>
    <address>San Fransico </address>
    </userdata>
    My result XML should look like this
    <UserDetails>
    <Details>
    <id>1234</id>
    <place>new york</place>
    </Details>
    <Details>
    <id>42345</id>
    <place>San Fransico </place>
    </Details>
    </UserDetails>
    I tried things but they never worked.
    Any help regarding this will be of great helpppppppppppppppppppppppppp!!
    Thanks in advance
    -Murthy.

    You can use XSLT. Between, where do you want to get the ID values of the place tag in result xml.
    --Shiv                                                                                                                                                                                                                       

  • Generating CDATA containing XML-like text using XSLT Mapper in OFM 11g

    Hi,
    One of our partners requires XML to be sent as XML string inside a CDATA section. The use of "real" XML is not an option at the moment. We try to generate something like the following using XSLT/XSLT Mapper in SOA Suite 11g:
    <element>
    <![CDATA[
    <supplierElement1>
    <supplierElement2>
    etcetera
    <supplierElement2>
    </supplierElement1>
    ]]>
    </element>
    We've tried the following two approaches, so far unsuccessful:
    <xsl:template match="/">
    <inp1:singleString>
    <inp1:input>
    <xsl:text disable-output-escaping="yes">&lt;![CDATA[test]]&gt;</xsl:text>
    </inp1:input
    </inp1:singleString>
    </xsl:template>
    resulting in:
    <inp1:singleString xmlns:inp1="http://xmlns.oracle.com/singleString">
    <inp1:input>&lt;![CDATA[test]]></inp1:input>
    </inp1:singleString>
    and:
    <xsl:output method="xml" indent="yes" cdata-section-elements="input"/>
    <xsl:template match="/">
    <inp1:singleString>
    <input>test</input>
    </inp1:singleString>
    </xsl:template>
    resulting in:
    <inp1:singleString xmlns:inp1="http://xmlns.oracle.com/singleString" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <input>test</input>
    </inp1:singleString>
    Does anyone know how to generate the CDATA section declaratively (within XSLT/XSLT Mapper), without resorting to custom code and parsing as we have to do now?
    Thanks!
    Ronald

    The exact error message I'm getting is :
    ABAP XML formatting error in XML node of type "element", name: "abap"

  • ** How to use XSLT Stylesheet Ver 2.0 functions in XI 7.0?

    Hi friends,
          There are numerous built-in functions in SALT ver 2.0. Functions like upper-case, index-of, etc. They are very useful when use XSLT Mapping. But, unfortunately we are not able to use this functions in XSLT Mapping in XI. i.e XI throws an error like 'Transformation Configuration Error Occured'.
          Friends your experience, kindly share your idea how do we to do in XSLT? Is any other alternate way there ?
    Thanking you.
    Yours friendly,
    Jeg P.

    You could of course try to import your own Java XSLT 2.0 processor in a .jar file and in the same or another .jar, you could import the .xslt files.
    Regards,
    Henrique.

  • How to use XSLT for mapping feild names one by one to array element

    I have a XSLT case to map all the attributes feild name(not value) which has no child to the target, which is array loop.
    I give an sample below.
    source:
    <Items xmlns="http://www.example.org/sample">
    <SourceSystem>SourceSystem2573</SourceSystem>
    <TimeStamp>2010-01-17T20:54:08.234</TimeStamp>
    <Item>
    <ID>2574</ID>
    <Type>2575</Type>
    <Name>2576</Name>
    </Item>
    </Items>
    source XSD like:
         <element name="Items" type="tns:ItemsType"></element>
         <complexType name="ItemsType">
              <sequence>
                   <element name="SourceSystem" type="string" maxOccurs="1"
                        minOccurs="1">
                   </element>
                   <element name="TimeStamp" type="dateTime" maxOccurs="1"
                        minOccurs="1">
                   </element>
                   <element name="Item" type="tns:ItemType"
                        maxOccurs="unbounded" minOccurs="1">
                   </element>
    </sequence>
         </complexType>
    <complexType name="ItemType">
              <sequence>
                   <element name="ID" type="string" maxOccurs="1"
                        minOccurs="1">
                   </element>
                   <element name="Type" type="string" maxOccurs="1"
                        minOccurs="1">
                   </element>
    <element name="Name" type="string" maxOccurs="1"
                        minOccurs="1">
                   </element>
    </sequence>
         </complexType>
    target need to be like:
    <ns1:AttributesCollection>
    <ns1:Attributes>
    <ns1:fieldname>SourceSystem</ns1:fieldname>
    </ns1:Attributes>
    <ns1:Attributes>
    <ns1:fieldname>TimeStamp</ns1:fieldname>
    </ns1:Attributes>
    <ns1:Attributes>
    <ns1:fieldname>ID</ns1:fieldname>
    </ns1:Attributes>
    <ns1:Attributes>
    <ns1:fieldname>Type</ns1:fieldname>
    </ns1:Attributes>
    <ns1:Attributes>
    <ns1:fieldname>Name</ns1:fieldname>
    </ns1:Attributes>
    </ns1:AttributesCollection>
    target XSD:
    <xs:element name="AttributesCollection" type="AttributesCollection"/>
    <xs:complexType name="AttributesCollection">
    <xs:sequence>
    <xs:element name="Attributes" type="Attributes" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="Attributes">
    <xs:sequence>
    <xs:element name="fieldname" minOccurs="0">
    <xs:simpleType>
    <xs:restriction base="xs:string">
    <xs:maxLength value="100"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    </xs:sequence>
    </xs:complexType>
    I know we can use local-name() to get the tag/field name,
    but I have not idea how to get these leaf field names one by one and then mapping to every array elements.
    I tried whole day but no successful
    Does anyone have some idea?
    Thanks very much!
    Keith
    Edited by: user1065212 on 17-Jan-2010 22:50
    Edited by: user1065212 on 17-Jan-2010 22:53
    Edited by: user1065212 on 17-Jan-2010 22:59

    can you paste source xsd and the correct xml output, the current one isn't really valid
    <ID>2574</TotalNumOfItems>

  • How to use XSLT processor in java to get xml

    hi friends,
    i have raw xml and xsl files as input to xsltprocessor which should give xml as output.
    my raw xml and xsl looks like this:-
    name_space.xml:-
    <xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882'
    xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882'
    xmlns:rs='urn:schemas-microsoft-com:rowset'
    xmlns:z='#RowsetSchema'>
    <s:Schema id='RowsetSchema'>
    <s:ElementType name='row' content='eltOnly'>
    <s:AttributeType name='ID' rs:number='1' rs:nullable='true'
    rs:writeunknown='true'>
    <s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
    rs:fixedlength='true'/>
    </s:AttributeType>
    <s:AttributeType name='CODE' rs:number='2' rs:nullable='true'
    rs:writeunknown='true'>
    <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='50'/>
    </s:AttributeType>
    <s:AttributeType name='NAME' rs:number='3' rs:nullable='true'
    rs:writeunknown='true'>
    <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='255'/>
    </s:AttributeType>
    <s:AttributeType name='SOURCE' rs:number='4' rs:nullable='true'
    rs:writeunknown='true'>
    <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='10'/>
    </s:AttributeType>
    <s:AttributeType name='IDENT' rs:number='5' rs:nullable='true'
    rs:writeunknown='true'>
    <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='128'/>
    </s:AttributeType>
    <s:AttributeType name='OBS_LEVEL' rs:number='6' rs:nullable='true'
    rs:writeunknown='true'>
    <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='50'/>
    </s:AttributeType>
    <s:AttributeType name='ATA_CODE' rs:number='7' rs:nullable='true'
    rs:writeunknown='true'>
    <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='12'/>
    </s:AttributeType>
    <s:AttributeType name='SCORE' rs:number='8' rs:nullable='true'
    rs:writeunknown='true'>
    <s:datatype dt:type='int' dt:maxLength='4' rs:precision='10'
    rs:fixedlength='true'/>
    </s:AttributeType>
    <s:AttributeType name='HAS_EFF_NOTE' rs:number='9' rs:nullable='true'
    rs:writeunknown='true'>
    <s:datatype dt:type='ui1' dt:maxLength='1' rs:precision='3'
    rs:fixedlength='true'/>
    </s:AttributeType>
    <s:extends type='rs:rowbase'/>
    </s:ElementType>
    </s:Schema>
    <rs:data>
    <z:row ID='1018' CODE='OBSV' NAME='ALT BRK - LOSS OF THE PEDAL ARTIFICIAL FEEL ON THE RIGHT SIDE'
    SOURCE='' IDENT='' OBS_LEVEL='' ATA_CODE='32-43' SCORE='1'
    HAS_EFF_NOTE='0'/>
    <z:row ID='1017' CODE='OBSV' NAME='ALT BRK - LOSS OF THE PEDAL ARTIFICIAL FEEL ON THE LEFT SIDE'
    SOURCE='' IDENT='' OBS_LEVEL='' ATA_CODE='32-43' SCORE='1'
    HAS_EFF_NOTE='0'/>
    <z:row ID='100' CODE='LOCAL' NAME='ACCU PRESS DROPS VERY QUICKLY PARKING BRAKE OFF'
    SOURCE='' IDENT='' OBS_LEVEL='INDICATOR(S)' ATA_CODE='32-44'
    SCORE='1' HAS_EFF_NOTE='0'/>
    </rs:data>
    </xml>
    and my XSL File:-
    <?xml version="1.0" encoding="UTF-8" ?>
    - <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema" exclude-result-prefixes="rs z">
    <xsl:output method="xml" omit-xml-declaration="yes" indent="yes" />
    - <xsl:template match="//xml/rs:data">
    - <Entities Count="{count(z:row)}">
    <xsl:apply-templates select="z:row" />
    </Entities>
    </xsl:template>
    - <xsl:template match="z:row">
    <Entity ID="{@ID}" ATA="{@ATA_CODE}" Name="{@NAME}" Code="{@CODE}" Source="{@SOURCE}" Ident="{@IDENT}" Level="{@OBS_LEVEL}" EffNote="{@HAS_EFF_NOTE}" Score="{@SCORE}" />
    </xsl:template>
    </xsl:stylesheet>
    AND I NEED OUTPUT XML AS:-
    <Entities Count="3">
         <Entity ID="1018" ATA="32-43" Name="ALT BRK - LOSS OF THE PEDAL ARTIFICIAL FEEL ON THE RIGHT SIDE" Code="OBSV" Source="" Ident="" Level="" EffNote="0" Score="1"></Entity>
         <Entity ID="1017" ATA="32-43" Name="ALT BRK - LOSS OF THE PEDAL ARTIFICIAL FEEL ON THE LEFT SIDE" Code="OBSV" Source="" Ident="" Level="" EffNote="0" Score="1"></Entity>
         <Entity ID="100" ATA="32-44" Name="ACCU PRESS DROPS VERY QUICKLY PARKING BRAKE OFF" Code="LOCAL" Source="" Ident="" Level="INDICATOR(S)" EffNote="0" Score="1"></Entity>
    </Entities>
    how to write a bean to get this xmloutput.
    thank in advance

    Hi Sliba,
    You may download and use the XDK for Java that is available from OTN to do this.
    Here is the code that will be handy for use. Just substitute your XML document and stylesheet
    in the code snippet pasted below. I hope this helps.
    There are many more useful XML samples you can find at http://otn.oracle.com/sample_code/tech/xml/content.html
    Regards
    Abhijeet
    // import the necessary libraries
    import oracle.xml.parser.v2.XSLProcessor;
    import oracle.xml.parser.v2.XSLStylesheet;
    import oracle.xml.parser.v2.XMLDocument;
    import oracle.xml.parser.v2.DOMParser;
    import java.io.StringReader;
    public class Test
    public Test()
    // Xml document that needs to be transformed
    private static String xmldoc = "<xml xmlns:s=\"http:www.myschema.com\" >" +
    "<s:result>" +
    "<s:status>1234554321</s:status>"+
    "<s:approvalcode>1234567887654321</s:approvalcode> "+
    "</s:result>" +
    "</xml>";
    // Xsl stylesheet that will be applied
    private static String xsldoc ="<xsl:stylesheet version=\"1.0\" xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" xmlns:s=\"http:www.myschema.com\" > " +
    " <xsl:template match=\"s:result\"> "+
    " My transform status: <xsl:value-of select=\"s:status\"/> <BR/>" +
    " My transform Approval code : <xsl:value-of select=\"s:approvalcode\"/> " +
    "</xsl:template> " +
    "</xsl:stylesheet> ";
    public void transform(String xmlstr,String xslstr) throws Exception {
    // Create the DOM parser instance
    DOMParser dp = new DOMParser();
    // Create StringReader object
    StringReader xmlreader = new StringReader(xmlstr);
    // Parse the xml document string
    dp.parse(xmlreader);
    // Get java object representation of XML document
    XMLDocument xmldoc = dp.getDocument();
    // Create an instance of XSL processor
    XSLProcessor processor = new XSLProcessor();
    // Create StringReader object
    StringReader xslreader = new StringReader(xslstr);
    // Parse the xsl stylesheet
    XSLStylesheet xsl = processor.newXSLStylesheet(xslreader);
    processor.showWarnings(true);
    processor.setErrorStream(System.err);
    processor.processXSL(xsl,xmldoc,System.out);
    return;
    public static void main(String[] args) throws Exception
    Test test = new Test();
    System.out.println("Executing test");
    test.transform(xmldoc,xsldoc);
    }

  • How to use xslt in AIR?

    Hello,
    I'm discovering AIR and I'm looking for XSL Transformation
    trough AIR.
    I first try to set the initial window to may xml file,
    refering to an internal xsl stylesheet, but as a result, I only get
    the raw XML file, without the transformation.
    I've then set the path to the xsl file to "app:/my_file.xsl"
    but it does not change anything.
    So, what is the way to refer to an internal xsl stylesheet?
    Thanks for your advices.

    Using an XML file instead of an HTML file doesn't seem to
    work (and I haven't seen any docs for AIR that state that it SHOULD
    work). However, you can transform your XML into HTML with XSLT
    using JavaScript and then display it:
    <html>
    <head>
    <script src="AIRAliases.js"></script>
    <script>
    function loadXMLDoc(filename)
    xmlFile = air.File.applicationDirectory;
    xmlFile = xmlFile.resolvePath(filename);
    stream = new air.FileStream();
    stream.open(xmlFile, air.FileMode.READ);
    xmlDoc = stream.readUTFBytes(stream.bytesAvailable);
    stream.close();
    var domParser = new DOMParser();
    xmlDoc = domParser.parseFromString(xmlDoc, "text/xml");
    return xmlDoc
    function displayResult()
    xml=loadXMLDoc("books.xml");
    xsl=loadXMLDoc("books.xsl");
    xsltProcessor=new XSLTProcessor();
    xsltProcessor.importStylesheet(xsl);
    resultDocument =
    xsltProcessor.transformToFragment(xml,document);
    document.getElementById("example").appendChild(resultDocument);
    </script>
    </head>
    <body id="example" onLoad="displayResult()">
    </body>
    </html>
    (replace books.xml and books.xsl with your own files,
    obviously.)

  • Using xslt in pl/sql

    Hi!
    I have a simple question: how can I use xslt in pl/sql?
    I've tried this:
    DECLARE
      v_XML  XMLTYPE;
      v_XSLT XMLTYPE;
    BEGIN
      SELECT XMLCol --it's a valid XML.
        INTO v_XML
        FROM tb_Controle;
      SELECT XSLTCol --I don't know how to use XSLT.
        INTO v_XSLT
        FROM tb_XSLT;
      DBMS_OUTPUT.PUT_LINE(XMLTYPE.TRANSFORM(v_XML,v_XSLT).GETSTRINGVAL());
    END;But it returns the error:
    ERROR at line 1:
    ORA-31011: XML parsing failed
    ORA-19202: Error occurred in XML processing
    ORA-06512: at "SYS.XMLTYPE", line 174
    ORA-06512: at line 13When a xlst has import and include tags, how the files are found? Is there something like the xsd schema registration?
      <xsl:import href="cte.xslt" />
      <xsl:include href="../functions.xslt"/> Another question: after applying the style sheet, the result is a text? 'cause I need to send the result as a text.
    Thanks!

    how can I use xslt in pl/sql?
    declare
      v_xml  xmltype;
      v_xslt xmltype;
      v_xml_result xmltype;
    begin
      select xmlcol --it's a valid XML.
        into v_xml
        from tb_controle;
      select xsltcol --I don't know how to use XSLT.
        into v_xslt
        from tb_xslt;
      select xmltype.transform(v_xml,v_xslt) into  v_xml_result from dual;
      dbms_output.put_line(v_xml_result.getstringval());
    end;

  • How to map an array to fixed fields using Biztalk mapper

    I need to remap an array of objects like this:
        <Root>
          <ListOfObjs>
            <Obj>
              <Attr1>0000</Attr1>
              <Attr2>Hello!</Attr2>
            </Obj>
            <Obj>
              <Attr1>1111</Attr1>
              <Attr2>Hello1!</Attr2>
            </Obj>
          </ListOfObjs>
        </Root>
    in an output like this:
            <Root>
                <Obj1_Attr1>0000</Obj1_Attr1>
                <Obj1_Attr2>Hello!</Obj1_Attr2>
                <Obj2_Attr1>1111</Obj2_Attr1>
                <Obj2_Attr2>Hello1!</Obj2_Attr2>
            </Root>
    So in my XSD schema I have something like this:
    Schema Input
                               <xs:element name="Root">
                                <xs:complexType>
                                 <xs:sequence>
                                  <xs:element name="ListOfObjs">
                                   <xs:complexType>
                                    <xs:sequence>
                                     <xs:element name="Obj">
                                      <xs:complexType>
                                       <xs:sequence>
                                        <xs:element name="Attr1">
                                         <xs:simpleType>
                                          <xs:restriction base="xs:string">
                                           <xs:minLength value="1"/>
                                           <xs:maxLength value="50"/>
                                          </xs:restriction>
                                         </xs:simpleType>
                                        </xs:element>
                                       <xs:element name="Attr2">
                                        <xs:simpleType>
                                          <xs:restriction base="xs:string">
                                           <xs:minLength value="1"/>
                                           <xs:maxLength value="50"/>
                                          </xs:restriction>
                                         </xs:simpleType>
                                        </xs:element>
                                       </xs:sequence>
                                      </xs:complexType>
                                     </xs:element>
                                    </xs:sequence>
                                   </xs:complexType>
                                  </xs:element>
    Schema output
                                     <xs:element name="Root">
                                      <xs:complexType>
                                       <xs:sequence>
                                        <xs:element name="Obj1_Attr1">
                                         <xs:simpleType>
                                          <xs:restriction base="xs:string">
                                           <xs:minLength value="1"/>
                                           <xs:maxLength value="50"/>
                                          </xs:restriction>
                                         </xs:simpleType>
                                        </xs:element>
                                       <xs:element name="Obj1_Attr2">
                                        <xs:simpleType>
                                          <xs:restriction base="xs:string">
                                           <xs:minLength value="1"/>
                                           <xs:maxLength value="50"/>
                                          </xs:restriction>
                                         </xs:simpleType>
                                        </xs:element>
                                        <xs:element name="Obj2_Attr1">
                                        <xs:simpleType>
                                          <xs:restriction base="xs:string">
                                           <xs:minLength value="1"/>
                                           <xs:maxLength value="50"/>
                                          </xs:restriction>
                                         </xs:simpleType>
                                        </xs:element>
                                        <xs:element name="Obj2_Attr2">
                                        <xs:simpleType>
                                          <xs:restriction base="xs:string">
                                           <xs:minLength value="1"/>
                                           <xs:maxLength value="50"/>
                                          </xs:restriction>
                                         </xs:simpleType>
                                        </xs:element>
                                       </xs:sequence>
                                      </xs:complexType>
                                     </xs:element>
    In addiction I have to evaluate every single value because when I found some conditions (like if value=0000 output should be NULL).
    What would be the best way to do it? I'm thinking to develop a custom functoid but I'm not sure it would be the best way, probably it could be done even using XSLT inline transforms, can you point me in the best direction?
    Thank you

    Hi,
    You cannot directly map an array output to any single field in BizTalk mapper.
    Couple of options :
    1) create
    the Xslt or inline C# code
    Refer: 
    http://seroter.wordpress.com/2008/10/07/splitting-delimited-values-in-biztalk-maps/
    2) Shankycheil has
    provided a solution to similar requirement in the below link, u can also refer that.
    https://social.msdn.microsoft.com/Forums/en-US/55ec472d-4f34-4057-b1c6-0e50740f0f6e/how-to-itterate-string-array-values-in-biztalk-mapper?forum=biztalkgeneral
    Rachit
    Thank you, I already seen both posts, but I'm not sure they are what I need or I can't understand well how to use them.
    Speaking about the first solution, as I told before, in the example I should have an array already formed and delimited by a char (something like "obj1attr1-obj1attr2-ob2attr1-obj2attr2". In this situation probably this example could be a good
    point to start from, but how to transform my complex input object in a similar formatted string?
    About the second I don't understand well what is the working solution that they have adopted. Is the 4 steps solution suggested by  Shankycheil? If yes, how can I loop between all array elements and extract all their values?

  • Create null message using BizTalk mapper XSLT

    Hi,
    I have a requirement to check if a message contains a certian value, and if so, throw away the message.  Does anyone know how this could be done using BizTalk mapper/ XSLT?  It's an ESB messaging only solution so don;t want to introduce orchestratons
    / c# code.
    In short is field A = 'yes' the message will be thrown away / made null. 
    Thanks in advance.
    GilesB

    If you consider doing this in Receive-side with some pipeline component, I am afraid you can't eat the data at the receive pipeline. For a null returned, I believe at least a empty message would be published to message box.
    Without orchestration, in message-only scenario one option you can consider is using a custom adapter where you can have your logic whether to send a stream/message out or not. Something like:
    public bool TransmitMessage(IBaseMessage msg)
    _terminate.Enter();
    try
    bool logMessages = Convert.ToBoolean(
    GetAdapterConfigValue(msg.Context, "logMessages")
    if ( logMessages ) {
    SystemMessageContext ctxt = new SystemMessageContext(msg.Context);
    //Add your logic using XPathReader - stream based XPath
    //and check whether the message has the value your're looking for
    bool isFound = false;
    if (!isFound)
    string msgData = "";
    StreamReader reader = new StreamReader(msg.BodyPart.Data);
    using (reader)
    msgData = reader.ReadToEnd();
    // discard the message
    return true;
    } finally {
    _terminate.Leave();
    Above is part of the send adapter code where you add your logic using XPathReader - stream based XPath and check whether the message has the value your're looking for. You can use
    null send adapter as refernce and build your logic where it would check for the required value in your custom adapter.
    If this answers your question please mark it accordingly. If this post is helpful, please vote as helpful by clicking the upward arrow mark next to my reply.

  • How to Count schedule lines in IDoc ORDERS05 using XSLT Mapping

    Hi Experts,
    In a Scenario where we are sending Purchase order (ORDERS05) to SAP SNC using XSLT Mapping,
    where in we need to count the no. of schedule lines against the Purchase Order line.
    As in Schedule line segment there is no such provision, so it needs to be handle in XSLT mapping to count the schedule lines.
    Can you all please guide me how to go about the same.
    Regards,
    Nitin P

    Hi Satish,
    Thank you very much for the reply,
    as there is only Quantity and other information is maintained against schedule lines how we can count the schedule line repeatation against PO line ? Is that very simple as you suggested or some other consideration also needs to be taken.
    Please clarify the same and let me also know if there are some standard documents also for the same.
    Regards,
    Nitin P

  • How to feed data to generate a html file using XSLT?

    I need to implement email content generation in the hmtl format using XSLT. The document information is stored in a xsl file and the data is generated dynmically in the application. How to feed the data to have the file?
    Thanks,
    v.

    Thanks for your information. I, however, already thought about using string stream instand of a XML file to pass in data. I am looking for a more intelligent method. It doesn't seem to have one so far.

  • How to use another XSLT processor

    Hello all,
    Recently, I do need to use XSLT 2.0 processor, but how to install it to the JDK? Please give the detailed steps. And how to use it, just import the package? How to avoid the program to the old processor, because I doubt probably the old processor is part of the JDK. And how does this change impact to the java web service? And how do I change the web service about this change?
    Thank you in advance.

    >
    I want to use SaxonHE9.4.0.3 processor
    >
    Michael Kay provides extensive Installation instructions for all of his products. They are included in the documentation download.
    Here is just a small part of what was provided for the version I use
    >
    Installation of Saxon simply involves unzipping the supplied download file into a suitable directory. The procedure is the same for the Standard product and the Schema-Aware product. The two products can co-exist in the same directory or in different directories.
    One of the files that will be created in this directory is the principal JAR file. This is saxon8.jar in the case of Saxon-B, saxon8sa.jar in the case of Saxon-SA. There are additional JAR files to support optional features including the JDOM interface and the SQL interface. When running Saxon, the principal JAR file should be on the class path. The class path is normally represented by an environment variable named CLASSPATH: see your Java documentation for details. Note that the JAR file itself (not the directory that contains it) should be named on the class path.

  • How to update XML file using XSLT

    Hi there,
    I have a "small" issue with exporting data to an XML file using XSLT.
    A two steps process is needed to import data from a non-hierarchical XML file into ABAP, change the data, and then update the XML file with new values. The problem is not trivial, since the format of the XML file is a complex one: there are many interdependent elements on the same level, pointing to each other by using id and ref attributes. Based on these values the data can be read and written into an internal table. I use XSLT and XPath for that. So the inbound process is done and seems to work correctly. I have to mention that the file contains much more data than I need. I am working only with a small part of it.
    Now the changed data must be exported back into the XML file, meaning that the content of certain elements must be updated. How can this be done with XSLT? I can pass only the internal table to the transformation, so how do I access the XML file in order to update it? I have tried to use the <B>xsl:document()</B> function to access the content of the file store locally on my PC, but it fails each time by throwing and URI exception. I have tried the absolute path without any addition and the path with the file:/// addition. Same result. Please advise.
    Many thanks,
    Ferenc
    P.S. Please provide me with links only if they are relevant for this very matter. I will not give points for irrelevant postings...

    Now the changed data must be exported back into the XML file, meaning that the content of certain elements must be updated. How can this be done with XSLT?
    XSLT approach:  check these online tutorial
    http://www.xml.com/pub/a/2000/08/02/xslt/index.html
    http://www.xml.com/pub/a/2000/06/07/transforming/index.html
    ABAP approach:
    for example you have the xml (original) in a string called say xml_out .
    data: l_xml  type ref to cl_xml_document ,
            node type ref to if_ixml_node  .
    create object l_xml.
    call method l_xml->parse_string
      exporting
        stream = xml_out.
    node = l_xml->find_node(
        name   = 'IDENTITY'
       ROOT   = ROOT
    l_xml->set_attribute(
        name    = 'Name'
        value   = 'Charles'
        node    = node
    (the above example reads the element IDENTITY and sets attribute name/value to the same)
    like wise you can add new elements starting from IDENTITY using various methods available in class CL_XML_DOCUMENT
    so how do I access the XML file in order to update it?
    you have already read this XML into a ABAP variable right?
    Sorry couldnt understand your whole process, why do you need to read local XML file?
    Raja

Maybe you are looking for

  • Can iTunes purchases be loaded to multiple iPods within the same household

    Is it legal to download purchased music from iTunes Music Store to more than one iPod within the same household? I understand the implications with teenagers sharing music in this manner; however, it seems crazy that I need purchase duplicate music t

  • IP Phone Service SDK Yellow Pages url error

    I am trying out the sample ip phone services applications in the IP phone service SDK, the standalone ones seem to work fine, but most of the ones that connect to the internet such as the Yellow Pages Application and the Weather application give erro

  • Applescript error window too big

    Hey guys:) whenever i am working on an applescript and it has an errorwindow that is way too big for my screen and i have no idea how to get it away, i have to force quit apple script editor everytime i have it, is there a solution for this:)?

  • DB02 showing 80% full data where as full file system is empty

    hi all, In DB02 transaction of my BW production server i'm getting following entry on Database tab:   Name         DEFAULT DB system:        ORA Size:                    45,83 GB                       Total size:                 156,25 GB Free Size: 

  • How do i display jasper reports using jsp

    Can anyone help me to display jasper reports in jsp pages Thanx in advance