Help with XSL transforms

I am new to working with Structured FrameMaker and am struggling to successfully implement an XSLT transformation. I want to transform a doxygen output in XML into a formatted FrameMaker document/book. I am using FrameMaker 7.2, and using the Using XSLT in FrameMaker 7.2 Technical Paper as a guide. I have been able to create an EDD and an application, but I am having trouble understanding how to use the EDD to format my document. Is anyone aware of other resources that can assist me?

Unfortunately, that's the latest and greatest along with http://help.adobe.com/en_US/FrameMaker/9.0/StructuredDev/Structure_Dev_Guide.pdf (which might have a few more clues).
Adobe has been a bit lax in updating documentation to the latest versions...
You might also want to have a look at the Unstructed to XML workflow series of videos by Tom Aldous. The links are found on this page:
http://www.adobe.com/devnet/framemaker.html
See parts 4-6 for more clues.
There's also an older book by Kay Ethier "XML and FrameMaker" (http://www.apress.com/9781590592762) that covers this and a large part of it is still applicable to current FM versions.

Similar Messages

  • Need help with XML transformation

    I am not sure this is the right place for this. But i will try it here. I am very troubled with my XSLT. Trying to transform a text Coupon which has the following html for it. So,
    _1. INPUT is:_
    <html>
    <head>
    </head>
    <body>
    <p>
    This coupon is for a good guy whose first name is :
    </p>
    <p>
    </p>
    <p align="center">
    Sadd
    </p>
    <p align="center">
    </p>
    <p align="right">
    <b>also</b> whose <var>full_name</var> is Sadd Hossain
    </p>
    <p align="left">
    </p>
    <p align="left">
    He is a <font size="3">software </font><font size="4">engineer for</font><font size="5">
    S&H</font>
    </p>
    </body>
    </html>
    *2. output needed  is:*
    <?xml version="1.0" encoding="UTF-8"?>
    <POSMESSAGE>
    <TextMSG >
    This coupon is for a good guy whose first name is :
    </TextMSG>
    <TextMSG >
    </TextMSG>
    <TextMSG align="center">
    <emph>SADD</emph>
    </TextMSG>
    <TextMSG >
    </TextMSG>
    <TextMSG align="right" >
    also whose full_name is Sadd Hossain
    </TextMSG>
    <TextMSG>
    </TextMSG>
    <TextMSG align="left" >
    He is a software engineer
    for S&H
    </TextMSG>
    </POSMESSAGE>
    *3. XSLT for this*
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:output method="xml"/>
    <xsl:template match="body">
    <POSMESSAGE>
    <xsl:for-each select="p">
    <TextMSG>
    <!--xsl:if test="not[@align='']"-->
    <xsl:attribute name="align"><xsl:value-of select="@align"/></xsl:attribute>
    <!--/xsl:if-->
    <xsl:attribute name="font"><xsl:value-of select="@size"/></xsl:attribute>
    <xsl:value-of select="."/>
    </TextMSG>
    <xsl:for-each select="b">
    <emph>
    <xsl:value-of select="."/>
    </emph>
    </xsl:for-each>
    </xsl:for-each>
    </POSMESSAGE>
    </xsl:template>
    </xsl:stylesheet>
    *4: the above xslt generating this output*
    <?xml version="1.0" encoding="UTF-8"?>
    <POSMESSAGE><TextMSG align="" font="">
    This coupon is for a good guy whose first name is :
    </TextMSG><TextMSG align="" font="">
    </TextMSG><TextMSG align="center" font="">
    SADD
    </TextMSG><TextMSG align="center" font="">
    </TextMSG><TextMSG align="right" font="">
    also whose full_name is Sadd Hossain
    </TextMSG><TextMSG align="left" font="">
    </TextMSG><TextMSG align="left" font="">
    He is a software engineer
    for S&H
    </
    *5: Need help with this. what should my xslt look like to get the desired output???????????????*
    any help or direction will be very much appreciated. Thank you_

    I have below suggestions:
    1. Please use code option given in message editor toolbar for posting any formatted content like XML, Java code snippet etc.
    2. replace & in your source XML with _& a m p ;_ (Without spaces, I have put spaces to make it visible here).
    3. I have modified your XSLT according output XML you have given. I am not sure what you want to do with some elements like <b>, <font>, <var> etc. change below XSLT as you require for these elements.
    Modified XSLT:
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
            <xsl:output method="xml"/>
         <xsl:template match="body">
              <POSMESSAGE>
                   <xsl:for-each select="p">
                        <TextMSG>
                             <xsl:if test=". != ''">
                                  <xsl:for-each select="@align">
                                       <xsl:attribute name="align">
                                            <xsl:value-of select="."></xsl:value-of>
                                       </xsl:attribute>
                                  </xsl:for-each>
                                  <xsl:value-of select="."/>
                             </xsl:if>
                        </TextMSG>
                   </xsl:for-each>
              </POSMESSAGE>
         </xsl:template>
    </xsl:stylesheet>
    OUTPUT:
    <?xml version="1.0"?>
    <POSMESSAGE>
         <TextMSG>This coupon is for a good guy whose first name is :</TextMSG>
         <TextMSG/>
         <TextMSG align="center">Sadd</TextMSG>
         <TextMSG/>
         <TextMSG align="right">alsowhose full_name is Sadd Hossain</TextMSG>
         <TextMSG/>
         <TextMSG align="left">He is a softwareengineer forS&H</TextMSG>
    </POSMESSAGE>

  • Issue with XSL transformation in Java Stored Procedure

    Hi,
    Am having issue applying XSL transformation in Java Stored procedure. I have loaded the java class as well as .XSL files through loadjava uility and their status in DB is VALID.
    Below is the code in the java stored procedure:
    public static String tranform(String strInputXML ){
    URL url = ClassLoader.getSystemClassLoader().getResource(first.xsl);
    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    DocumentBuilder builder = factory.newDocumentBuilder();
    Document document = builder.parse(new ByteArrayInputStream (strInputXML.getBytes("UTF-8")));
    TransformerFactory tFactory = TransformerFactory.newInstance();
    StreamSource stylesource = new StreamSource(url.openStream());
    Transformer transformer = tFactory.newTransformer(stylesource);
    When I run this procedure, am getting following errors:
    {color:#ff0000}*ERROR: 'No such file or directory'*
    FATAL ERROR: 'Could not compile stylesheet'{color}
    My first.xsl file has reference to other excel file (Ex: &lt;xsl:include href="second.xsl"/&gt;) which seems to be causing this error. When I remove the reference, procedure is working fine.
    Pls let me know how to resolve this and read the .XSL file with references.
    Thanks,

    Hello,
    Thanks for the reply. Actually I have seen that post before creating this thread. I thought that I could make use of java mail to work around this problem. I created a java class that succesfully sends mail to SSL host. I tried to call this java class from pl-sql through java stored procedure. That did not work
    So, is this not supported in Oracle ? Please note that I have tested this in both 9i and 11g , in both the versions I got the error. You can refer to the code in the above post.
    Thanks
    Srikanth
    Edited by: user12050615 on Jan 16, 2012 12:17 AM

  • Error with XSL Transformation

    From my application log I see an exception where it tries to call the oracle.xml.parser.v2.XSLProcessor.
    The servlet for the login screen (XSL transformation) takes XML and returns HTML. Actually for the xml parsing
    we use xerces I don't understand why we would call the ORACLE parser? Do you have any idea? Is this a CLASSPATH
    or configuration problem? Is there a way to use the xml parser xerces instead the oracle one.
    <log4j:event logger="com.siemens.srvcmgmt.common.server.PresentationHandler" timestamp="1052834094464" level="DEBUG" thread="ApplicationServerThread-5">
    <log4j:message><![CDATA[Error: ]]></log4j:message>
    <log4j:NDC><![CDATA[1 Security doPost sendLoginScreen PresentationHandler transformIt]]></log4j:NDC>
    <log4j:throwable><![CDATA[java.lang.NullPointerException
    at java.util.Hashtable.put(Hashtable.java:375)
    at oracle.xml.parser.v2.XSLProcessor.setParam(XSLProcessor.java:658)
    at oracle.xml.jaxp.JXTransformer.setParameter(JXTransformer.java:385)
    at com.siemens.srvcmgmt.common.server.PresentationHandler.transformIt(PresentationHandler.java:149)
    at com.siemens.srvcmgmt.smc.servlet.Security.sendLoginScreen(Security.java:596)
    at com.siemens.srvcmgmt.smc.servlet.Security.doPost(Security.java:105)
    at com.siemens.srvcmgmt.smc.servlet.Security.doGet(Security.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
    at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:283)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:560)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
    at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:148)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:72)
    at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:797)
    at java.lang.Thread.run(Thread.java:479)
    ]]></log4j:throwable>

    From my application log I see an exception where it tries to call the oracle.xml.parser.v2.XSLProcessor.
    The servlet for the login screen (XSL transformation) takes XML and returns HTML. Actually for the xml parsing
    we use xerces I don't understand why we would call the ORACLE parser? Do you have any idea? Is this a CLASSPATH
    or configuration problem? Is there a way to use the xml parser xerces instead the oracle one.
    <log4j:event logger="com.siemens.srvcmgmt.common.server.PresentationHandler" timestamp="1052834094464" level="DEBUG" thread="ApplicationServerThread-5">
    <log4j:message><![CDATA[Error: ]]></log4j:message>
    <log4j:NDC><![CDATA[1 Security doPost sendLoginScreen PresentationHandler transformIt]]></log4j:NDC>
    <log4j:throwable><![CDATA[java.lang.NullPointerException
    at java.util.Hashtable.put(Hashtable.java:375)
    at oracle.xml.parser.v2.XSLProcessor.setParam(XSLProcessor.java:658)
    at oracle.xml.jaxp.JXTransformer.setParameter(JXTransformer.java:385)
    at com.siemens.srvcmgmt.common.server.PresentationHandler.transformIt(PresentationHandler.java:149)
    at com.siemens.srvcmgmt.smc.servlet.Security.sendLoginScreen(Security.java:596)
    at com.siemens.srvcmgmt.smc.servlet.Security.doPost(Security.java:105)
    at com.siemens.srvcmgmt.smc.servlet.Security.doGet(Security.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
    at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:283)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:560)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
    at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:148)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:72)
    at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:797)
    at java.lang.Thread.run(Thread.java:479)
    ]]></log4j:throwable>

  • Problems with xsl transformation

    Hi,
    I have an XSL to transform an XML to HTML code.
    I want my HTML to be ACCESSIBLE.
    All is working ok, but the <html> tag have two or three attributtes that make de code no ACCESSIBLE.
    This is a part of the XSL code:
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:xdt="http://www.w3.org/2005/xpath-datatypes">
         <xsl:output method="xhtml" version="1.0" encoding="UTF-8" indent="yes" standalone="no"/>
    <xsl:include href="barraSuperior.xsl"/>
         <xsl:include href="cabecera.xsl"/>
         <xsl:include href="menu.xsl"/>
         <xsl:include href="enllacosDestacats.xsl"/>
         <xsl:include href="contenido.xsl"/>
         <xsl:include href="barraBanners.xsl"/>
         <xsl:include href="pie.xsl"/>
         <xsl:variable name="homeWeb">http://172.16.67.119:8080/Biblioteques/xslt/V53CapSetmana</xsl:variable>
         <xsl:variable name="idioma"><xsl:value-of select="xmlData/config/idioma"/></xsl:variable>
         <xsl:variable name="literals" select="document(concat($homeWeb,'/traduccions/',$idioma,'.xml'))"/>
         <xsl:template match="/">
              <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{$idioma}" lang="{$idioma}">
                   <head>
                        <title>
    <body>
                        <xsl:call-template name="barraSuperior"/>
                        <xsl:call-template name="cabecera"/>
                        <div id="wrapper">                         
                             <div id="columna0">
                                  <xsl:apply-templates select="xmlData/menuLateral/contingutVignette/contingut/llista"/>
                             </div>     
                             <xsl:call-template name="contenido"/>
                        </div>
                        <xsl:call-template name="pie"/>
                   </body>
              </html>
         </xsl:template>
    </xsl:stylesheet>
    This is a part of the HTML result:
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <html xmlns="http://www.w3.org/1999/xhtml" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:xdt="http://www.w3.org/2005/xpath-datatypes" xmlns:xs="http://www.w3.org/2001/XMLSchema" xml:lang="ca" lang="ca">
         <head>
              <title>B cap de setmana</title>
    </head>
    <body>
    </body>
    I want the <html> to be like this:
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ca" lang="ca">

    Use the exclude-result-prefixes attribute in your xsl:stylesheet element.

  • Error using custom xpath function with XSL transformations in BPM

    Hi,
    We have created a custom xpath function for use with SOA Suite and BPM. This has been built as per specified within the http://docs.oracle.com/cd/E29597_01/dev.1111/e10224/bp_appx_functs.htm#SOASE11100. We have also reviewed the Oracle Sample for mapper-107-ExtensionFunctions (sample demonstrates the use of user-defined extension functions). This has been registered with jDeveloper and SOA within the oracle.soa.ext_11.1.1 (run ant to include in oracle.soa.ext.jar)
    We ideally want to use this is BPM within an xsl. However when consuming this function is either BPEL or BPM using an xsl, the xsl fails with an error such as:
    XPath expression failed to execute. An error occurs while processing the XPath expression; the expression is ora:doXSLTransformForDoc("xsl/Transformation_1.xsl", $inputVariable.payload). The XPath expression failed to execute; the reason was: javax.xml.transform.TransformerException: oramds:/deployed-composites/default/gwCustomXpathUtil_rev1.0/xsl/Transformation_1.xsl<Line 9, Column 113>: XML-22043: (Error) Extension function error: Method not found 'getWeekDayDate'. Check the detailed root cause described in the exception message text and verify that the XPath query is correct.
    In an Assign it operates fine and returns the expected result. We have included a combination of both of the Config files (ext-mapper-xpath-functions-config.xml and ext-soa-xpath-functions-config.xml) in the META-INF folder, however neither allow the use of this function in the XSL.
    I believe there may be an issue getting the custom xpath functions within XSL files. Hence I have also raised an SR. Has anyone experiences of this?
    Our SOA / BPM suite environment is using 11.1.1.6.4 and has the following patches applied:
    13801175
    14406487 (11.1.1.6.4 SOA Bundle)
    13896993
    13088538
    Regards Dave
    Edited by: DavidGaskell on Mar 14, 2013 10:08 PM

    Hi All,
    I am also facing the same issue...Experts can you please help us.
    hi DavidGaskell, did you find any resolution, if so can you share it with me.....
    Thanks,
    RR

  • Need help in XSL transformation

    Hi, I have a requirement where a message is recieved on the BPEL service. The message is basically a list of 200 or less productids.
    The requirement is to break the incoming message into smaller messages having a list of 50 productids each and then depending on the number of smaller messages call in parrallel a Proxy service in OSB.
    I am not sure how to write an XSL transfor which could split the message into smaller messages.
    I would highly appreciate if somebody could help or give any pointers.

    Hi,
    By passing parameters you can solve your problem.
    write an xsd like below.
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:p="http://schemas.oracle.com/service/bpel/common"
    xmlns="http://schemas.oracle.com/service/bpel/common"
    targetNamespace="http://schemas.oracle.com/service/bpel/common"
    elementFormDefault="qualified">
    <xsd:element name="parameters">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="item" minOccurs="1" maxOccurs="unbounded">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="name" type="xsd:string"/>
    <xsd:element name="value" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:schema>
    create an element say pramsVar of type parameters (Root element in above xsd)
    Now take an assign activity and in copy select XML fragmentand do like below
    In From
    <parameters xmlns="http://schemas.oracle.com/service/bpel/common">
    <item>
    <name>beginIndex</name>
    <value/>
    </item>
    <item>
    <name>endIndex</name>
    <value/>
    </item>
    </parameters>
    assgn the above to paramsVar.
    Now assign proper values to begin and endIndexes (In your case 0 and 50)
    Now pass paramsVar to XSLT and create two paramters in XSLT say beginIndex and endIndex
    You need to use position function in XSLT like below
    *<xsl:if test="(position() > $beginIndex ) and (position() <= $endIndex)">*
    In BPEL you need to increment the beginIndex and EndIndex in a while loop till you reached the last record(In your case 4 times bcoz 200 recs)
    Regards
    PavanKumar.M

  • Need help with XML TRANSFORMATION dump

    HI Experts ,
    I want to parse this XML file to abap internal table ,i use the ST below and i get  dump .
    The file is like that :
    <Containers>
         <Container workitemid="0000001" IsParent="X">
              <Element name="__INITIATO" value="U295"/>
              <Element name="_W_PRITY" value="5"/>
              <Element name="_F_VERSION" value="0000"/>
    </Container>
    <Container workitemid="0000001">
              <Element name="EXTENDED" value="X"/>
              <Element name="NOTE_REFERENCE" value=""/>
         </Container>
    </Containers>
    An exception occurred that is explained in detail below.
    The exception, which is assigned to class 'CX_ST_MATCH_ELEMENT', was not caught
    and
    therefore caused a runtime error.
    The reason for the exception is:
    XML matching error
    Expected was element-end: "Containers" [ ] Read was element-start: "Container"
    this is the ciode that i put on the call transformation
    <Containers>
        <Container>
            <tt:loop name="a" ref=".XML_TAB">
            <Element >
              <tt:attribute name="name" value-ref="$a.name"/>
              <tt:attribute name="value" value-ref="$a.value"/>
              </Element>
              </tt:loop>
            </Container>
        </Containers> ->**the dump in the debugger is here .**
      </tt:template>
    </tt:transform>
    the dump is because i don't refer to the </Container> in the middle
    and when i try to add the tag container in the middle i get warning during complition
    any idea please im stuck
    Best Regards
    Chris
    Edited by: Chris Teb on Aug 14, 2009 6:25 PM

    I guess you'll better understand with the solution I found:
    Simple transformation:
    <?sap.transform simple?>
    <tt:transform xmlns:tt="http://www.sap.com/transformation-templates">
      <tt:root name="XML_TAB"/>
      <tt:template>
        <Containers>
          <tt:loop name="b" ref=".XML_TAB">
            <Container>
              <tt:loop name="a" ref="$b.T_DATA">
                <Element>
                  <tt:attribute name="name" value-ref="$a.name"/>
                  <tt:attribute name="value" value-ref="$a.value"/>
                </Element>
              </tt:loop>
            </Container>
          </tt:loop>
        </Containers>
      </tt:template>
    </tt:transform>
    Program :
    data itab1 type string.
    concatenate '<Containers>'
    '       <Container workitemid="0000001" IsParent="X">'
    '   <Element name="__INITIATO" value="U295"/>'
    '   <Element name="_W_PRITY" value="5"/>'
    '   <Element name="_F_VERSION" value="0000"/>'
    '</Container>'
    '<Container workitemid="0000001">'
    '   <Element name="EXTENDED" value="X"/>'
    '   <Element name="NOTE_REFERENCE" value=""/>'
    '       </Container>'
    '</Containers>'
    into itab1.
    TYPES: BEGIN OF ty_data,
         name TYPE string,
         value TYPE string,
    END OF ty_data.
    DATA: lt_data TYPE TABLE OF ty_data.
    TYPES: BEGIN OF ty_data2,
         workitemid TYPE n LENGTH 7,
         isparent   TYPE flag,
         t_data     TYPE TABLE OF ty_data WITH DEFAULT KEY,
    END OF ty_data2.
    DATA: lt_data2 TYPE TABLE OF ty_data2.
    DATA lo_st_error TYPE REF TO cx_st_error.
    DATA message TYPE string.
    TRY.
    CALL TRANSFORMATION zext_file
            SOURCE XML itab1
            RESULT xml_tab = lt_data2.
      CATCH cx_sy_conversion_data_loss .
    * do something
      CATCH cx_st_error INTO lo_st_error.
        message = lo_st_error->get_text( ).
        WRITE:/ message .
    ENDTRY.
    By the way, I don't know what ITAB1 is in your case, it was more simple in my case to define it as a string. Anyway, if it's something else, it should work the same.

  • Help with Date transformation standard function

    Hello,
    I am using DateTransformation standard function with the following data formats.
    format of source data : yyyyMMdd
    format of target data : yyyy-MM-dd
    I was trying with different test data as inputs .
    1. input : 20080101- Output : 2008-01-01 ( No issues, its working correct)
    2. input : 20090101- Output : 2009-01-01 ( No issues, its working correct)
    3. input : 21112222- Output : 2112-10-22 ( giving wrong transformation )
    Q: I just wanted to know how do the date transformation function  works in the background? I mean how does it start tranforming after it picks up input data?
    Q : Why was it generating 2112-10-22 instead of a error message that the date format is wrong(coz month 22 doesnt exists)? (refer to case 3 )
    Regards,
    Nikhil.

    hi
    you are doing the date conversion
    that is
    format of source data : yyyyMMdd
    format of target data : yyyy-MM-dd
    the result will be the yyyy - mm- dd
    that is your two result will be right because you are giving the valid month
    1. input : 20080101- Output : 2008-01-01 ( No issues, its working correct)
    2. input : 20090101- Output : 2009-01-01 ( No issues, its working correct)
    in the 3rd result result will be wrong because you are giving the wrong month that is 22 xi do not undestand such type of month
    3. input : 21112222- Output : 2112-10-22 ( giving wrong transformation )
    xi just transform the conversion that you have given and he do not converted month in to the year
    better you give 2112-10-22
    i hope its helpfull for you
    thanks
    Regards
    vijay

  • Help with xsl for multiple child node

    We have the following data.
    row          meID EI
    1          a a1
              a2
              a3
              a4
    2          b b1
              b2
    3          c c1
              c2
    I would like to use XSL to display the data in the fashion:
    <row=1>
    <meID>a</meID>
    <EI>a1</EI>
    <EI>a2</EI>
    <EI>a3</EI>
    <EI>a4</EI>
    </row>
    <row=2>
    <meID>b</meID>
    <EI>b1</EI>
    <EI>b2</EI>
    </row>
    <row=3>
    <meID>c</meID>
    <EI>c1</EI>
    <EI>c2</EI>
    </row>
    Currently, I am only able to get the XSL to lump all the EIs together:
    <row=1>
    <meID>a</meID>
    <EI>a1a2a3a4</EI>
    </row>
    What do I need to change in the XSL to make it display 4 rows of EI?
    Thanks.

    The data should look like:
    1_________a_________a1
    ____________________a2
    ____________________a3
    ____________________a4
    2_________b_________b1
    ____________________b2
    3_________c_________c1
    ____________________c2

  • Please help with color transform issue!

    Hi,
    How can I change the tint of my movieclip "mc_clip" from
    #000000 to #990000 in 15 frames by scripting it?...in the same time
    change the alpha value of the clip from 85% to 0%.
    thank you in advance,
    Attila

    the code below the dotted line will add a new method to the
    movieclip class. that method allows you to fade any movieclip from
    color rgb1 and alpha a1 to color rgb2 and alpha a2 in speed seconds
    using the number of steps specified in the last parameter:

  • XSL transformation exception when using it in a subprocess

    Hi all
    I want to use a service task in sub-process that call a function with ref_cursor return type, when i map data association from output parameters to data object with xsl transformation an exception raise.
    in other hand my sub-process properties are : multiInstance, parallel , collection ,loop data input use an array , which create instances according to items of given array like http://www.avioconsulting.com/blog/simultaneous-creation-instances-array-oracle-bpm-11g
    by the way this feature works on service task that placed out of sub-process correctly.
    2.

    Hi Fazel,
    XSLT mapping is not working in the unpatched version of Oracle BPM 12c currently available.
    This work around is not great or even close to it, but the only way I've heard of anyone getting it to work is to right mouse click each of the individual children nodes.
    Know this bug has been reported by many people and has had a significant impact to all of us so it might be worth contacting Support to see if there might be a patch.
    Dan

  • XSL transformation with xsl:import generates exceptions

    I am using the Schematron's basic XSL file basic-schematron.xsl to validate the XML format of one of our data files. The XSL file looks something like this
    ================
    <xsl:stylesheet
    version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:axsl="http://www.w3.org/1999/XSL/TransformAlias">
    <xsl:import href="skeleton1-5.xsl"/>
    <xsl:template name="process-prolog">
    <axsl:output method="text" />
    </xsl:template>
    ==================
    But, the validation fails while trying to run the transformation on my Schematron input file using this basic-schematron.xsl with java.lang.NoSuchMethodError:
    ======= OUTPUT ============
    Markup Error: no match attribute on <key> outside <rule>
    Exception in thread "AWT-EventQueue-0" java.lang.NoSuchMethodError: GregorSamsa.process$dash$root(Lcom/sun/org/apache/xalan/internal/xsltc/DOM;Lcom/sun/org/apache/xml/internal/dtm/DTMAxisIterator;Lcom/sun/org/apache/xml/internal/serializer/SerializationHandler;ILjava/lang/Object;)V
         at GregorSamsa.applyTemplates()
         at GregorSamsa.applyTemplates()
         at GregorSamsa.transform()
         at com.sun.org.apache.xalan.internal.xsltc.runtime.AbstractTranslet.transform(AbstractTranslet.java:594)
         at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:640)
         at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:279)
         at com.solipsa.xsdvalidator.XSDValidator.validateSchematron(XSDValidator.java:137)
         at com.solipsa.xsdvalidator.XSDValidator.validate(XSDValidator.java:181)
         at com.solipsa.xsdvalidator.XSDValidatorUI.jButton1ActionPerformed(XSDValidatorUI.java:244)
         at com.solipsa.xsdvalidator.XSDValidatorUI.access$300(XSDValidatorUI.java:21)
         at com.solipsa.xsdvalidator.XSDValidatorUI$4.actionPerformed(XSDValidatorUI.java:140)
         at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
         at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
         at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
         at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
         at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:234)
         at java.awt.Component.processMouseEvent(Component.java:5488)
         at javax.swing.JComponent.processMouseEvent(JComponent.java:3093)
         at java.awt.Component.processEvent(Component.java:5253)
         at java.awt.Container.processEvent(Container.java:1966)
         at java.awt.Component.dispatchEventImpl(Component.java:3955)
         at java.awt.Container.dispatchEventImpl(Container.java:2024)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
         at java.awt.Container.dispatchEventImpl(Container.java:2010)
         at java.awt.Window.dispatchEventImpl(Window.java:1766)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:234)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
    ============= OUTPUT ==============
    I tried the individual JAXP 1.3 for J2SDK 1.4.2 (Using the -Djava.endorsed.dirs JVM param) and tried the JDK 1.5.0_02 which has JAXP 1.3 inbuilt and they all fail.
    I tried the above with separate Xalan/Xerces jar files, and then it works fine.
    The problem seems to be somthing specific to the JAXP 1.3 environment. I can provide more details, if required. Any help is highly appreciated.

    One morning your code woke up and found it had been transformed into a giant insect.
    But seriously, here's the name of the method that doesn't exist:GregorSamsa.process$dash$rootIs GregorSamsa your class? Maybe your server has an old version of it which is missing that method? (Or: those $ signs look strange to me, maybe they are a mistranslation of some other character?)

  • CPO XSL Transform for CPSC Form data with Grid

    Does anyone have an XSL Transform worked out that conveniently parses the CPSC Form output from Service Link when it has a grid in it?
    For example the data from CPSC Service Link might look like:
    <root>
       <Common>
          <Action ClassID="">Some Action</Action>
          <RequisitionID>123</RequisitionID>
       </Common>
       <Attributes/>
       <FormData>
          <Dictionary.Field>Some Data</Dictionary.Field>
          <DictionaryWithGrid-1.Field1>somevalue</DictionaryWithGrid-1.Field1>
          <DictionaryWithGrid-1.Field2>someothervalue</DictionaryWithGrid-1.Field2>
          <DictionaryWithGrid-1.Field3>yetanothervalue</DictionaryWithGrid-1.Field3>
          <DictionaryWithGrid-2.Field1>somevalue2</DictionaryWithGrid-2.Field1>
          <DictionaryWithGrid-2.Field2>someothervalue2</DictionaryWithGrid-2.Field2>
          <DictionaryWithGrid-2.Field3>yetanothervalue2</DictionaryWithGrid-2.Field3>
       </FormData>
    </root>
    So the desired output would be
    <Row>
       <Field1>somevalue</Field1>
       <Field2>someothervalue</Field2>
       <Field3>yetanothervalue</Field3>
    </Row>
    <Row>
       <Field1>somevalue2</Field1>
       <Field2>someothervalue2</Field2>
       <Field3>yetanothervalue2</Field3>
    </Row>
    I'm having difficulty getting the right XSL select when the tag is something like 'DictionaryWithGrid-#.Field'.
    Thanks!

    That worked great, Svetlana!  Thank you very much for the help.
    I made some slight mods to make it even more portable and intuitive for XSL/XML beginners.
    <?xml version="1.0"?>
    <xsl:stylesheet version="1.0"
          xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
          xmlns:msxsl="urn:schemas-microsoft-com:xslt">
    <!-- Replace CHANGEME below with the name of the CPSC Form Dictionary to transform -->
    <xsl:variable name="Dictionary">CHANGEME</xsl:variable>
    <xsl:template match="root">
      <Table>
          <xsl:call-template name="ProcessOne">
            <xsl:with-param name="pos" select="1" />
          </xsl:call-template>
      </Table>
    </xsl:template>
      <xsl:template name="ProcessOne">
        <xsl:param name="pos" />
        <xsl:variable name="RowName" select="concat($Dictionary, '-', $pos)" />
        <xsl:if test="FormData/*[starts-with(name(), $RowName)] != ''">
          <Row>
            <xsl:for-each select="FormData/*[starts-with(name(), $RowName)]">
              <xsl:if test="starts-with(name(.), $RowName)">
                <xsl:variable name="FieldName" select="substring-after(name(.), '.')"/>
                <xsl:element name="{$FieldName}">
                  <xsl:value-of select="."/>
                </xsl:element>
              </xsl:if>
            </xsl:for-each>
          </Row>
          <xsl:call-template name="ProcessOne">
            <xsl:with-param name="pos" select="number($pos+1)" />
          </xsl:call-template>
        </xsl:if>
      </xsl:template>
    </xsl:stylesheet>

  • Need help with text() processing in XSL

    Hello,
    I have an xml that contains such text in my xml:
    before<a>inside</a>after
    and an xsl that transforms it to HTML (a cut for xsl):
    <xsl:template match="a">
    <xsl:apply-templates/>
    </xsl:template>
    <xsl:template match="text()">
    <xsl:value-of disable-output-escaping="yes" select="."/>
    </xsl:template>
    The result is: inside before after
    but I need: before inside after
    It seems it happens 'cause of this: http://www.w3.org/TR/xslt#conflict
    but I cannot find a way to solve this problem :(
    I had tried to use priority in xsl:template, but it didn't help :(
    Thanks a lot.

    DrClap
    here are xml and xsl.
    That's not a real xml and xsl, but they might describe the idea and problem. I hope I miss nothing.
    P.S. I cannot control xml, that's why I cannot use: <xsl:text> in xml.
    Thank you!
    xml:
    <?xml version="1.0" encoding="UTF-8"?>
    <root>
    <title>Page title</title>
    <page>
    Location: <red>http://host</red>
    </page>
    </root>
    xsl:
    <?xml version='1.0' encoding='ISO-8859-1'?>
    <xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:fo="http://www.w3.org/1999/XSL/Format"
    xmlns:fox="http://xml.apache.org/fop/extensions"
    exclude-result-prefixes="fo">
    <xsl:template match="root">
    <html>
    <head>
    <title>
    <xsl:apply-templates select="title"/>
    </title>
    </head>
    <body>
    <xsl:apply-templates select="page"/>
    </body>
    </html>
    </xsl:template>
    <xsl:template match="page">
    <xsl:apply-templates/>
    </xsl:template>
    <xsl:template match="title">
    [Test]: <xsl:apply-templates/>
    </xsl:template>
    <xsl:template match="red">
    <xsl:element name="span"><xsl:attribute name="style">color:red</xsl:attribute><xsl:apply-templates/></xsl:element>
    </xsl:template>
    <xsl:template match="text()">
    <xsl:value-of disable-output-escaping="yes" select="."/>
    </xsl:template>
    </xsl:stylesheet>

Maybe you are looking for

  • How do I get a reference to the SecurityServices instance in my web appl?

    I would like to use the audit provider of weblogic to log audit event that I send from my servlet. For writing a auditevent I need a reference to the AuditService instance. How do I obtain that? IS there any static class through with I can get refere

  • How to insert bulk data into ms-access

    Hi, I am trying to insert bulk data into ms-access. I used Statement it is working fine but not allowing to insert single quote. Then I tryed with PreparedStatement which is allowing single quote but not allowing bulk data. The following error i am g

  • Which Browser Is Best On Lion?

    Which browser do you find works best on Lion?  I like the backward/forward affects of Safari.  I've found that Chrome appears to be the fastest and has two-finger swipe.

  • Sql query to bring single record from right side of a table

    hi I have two tables as below: create table testsh1 ( idd varchar2(10), name varchar2(20)); create table testsh2 ( idd varchar2(10), balance float ); insert into testsh1 values('1','abc'); insert into testsh1 values('2','def'); insert into testsh1 va

  • Help! Can't resize layer in Elem. 9!

    Hi! I need this immediately. I've opened a background in elements 9 & have opened/inserted a jpg layer onto it. Need to enlarge this jpg on the background, but when I try it changes the size of the "canvas" background. I'm desperate. Any solutions?!