Usage of an xsl in xi ?

Hi
I need to create a message type  and the informstion that i have is the documentation of the fields (elements) for that message , it is really very complex and big one. I also have an xsl , how this could help me building my message type?
Thanks

Hi,
XSL (Extensible Stylesheet Language), formerly called Extensible Style Language, is a language for creating a style sheet that describes how data sent over the Web using the Extensible Markup Language (XML) is to be presented to the user.
to simplify
XSL is nothing but the file that is linked to XSLT mapping.
XSL - http://w3schools.com/xsl/xsl_languages.asp
I think you can use that xsl file in your XSLT mapping.
You can only use XSDs,DTDs or WSDLs for your message types.
Thanks,
Vijaya.

Similar Messages

  • User Defined External Function - How to work?

    I have defined some external functions in java by following the description in
    C:\OraBPELPM_3\integration\orabpel\samples\demos\XSLMapper\ExtensionFunctions
    I can use my functions in JDeveloper, but they do not work on the Oracle BPEL engine.
    Is it enough just to place the jar-file in <OC4J_HOME>\j2ee\home\applib and add the jar-file in class-path (as described)?
    What about the xml-file specifying the functions (called SampleExtentionFunctions.xml in the documentation)?
    Should this file be copied to <OC4J_HOME>\... ?
    Here is the error message I get by running my service:
    XPath expression failed to execute.
    Error while processing xpath expression, the expression is "ora:processXSLT("TransformationInput.xsl", bpws:getVariableData("inputVariable", "request"))", the reason is java.lang.NoSuchMethodException: For extension function, could not find method org.apache.xpath.objects.XNodeSet.leadingZeros([ExpressionContext,] #NUMBER)..
    Please verify the xpath query.
    ______________ MY JAVA CODE EXAMPLE: _____________________________
    package extentionfunctions;
    This is a sample XSL Mapper User Defined Extension Functions implementation class.
    public class JavaExtensionFunctionsBpel
    * Inserts leading zeros to a text, if this starts with a digit.
    * Else the return value will be the same as the given text.
    * The return value will have the specified length.
    public static String leadingZeros(String text, int len)
    {  String retur = text;
    char c = (text == ""?'0':text.charAt(0));
    if ('0'<=c && c<='0'+9) { // Is first char a digit?
    retur = "";
    int n = len - (text == ""?0:text.length());
    for (int i=0; i<n; i++) { // Insert zeros:
    retur = '0' + retur;
    retur = retur + text;
    return retur;
    * Removes leading zeros from a text.
    public static String removeLeadingZeros(String text)
    {  String retur = text;
    int pos = 0;
    int len = (text == ""?0:text.length());
    for (int i=0; i<len; i++) {
    if (text.charAt(i)=='0') { // Is char a digit?
    pos++;
    return retur;
    public static void main(String[] args)
    { // Basic test of functions:
    int len = 5;
    String s = "1234";
    String r;
    System.out.println("leadingZeros("+s+","+len+")="+(r=leadingZeros(s,len)));
    System.out.println("removeLeadingZeros("+r+")="+removeLeadingZeros(s));
    Regards
    Flemming Als

    Flemming, it looks like somthing is wrong in the xsl that it still goes to org.apache.xpath.objects.XNodeSet package instead of yours ..
    I created a sample that illustrates the usage of this functions (even with 2 params, different types).
    Java class (com.otn.samples.xslt.CustomXSLTFunctions)
    package com.otn.samples.xslt;
    public class CustomXSLTFunctions
    <function name="extension:multiplyStringAndInt" as="number">
    <param name="base" as="String"/>
    <param name="multiplier" as="number"/>
    </function>
    public int multiplyStringAndInt (String pString, int pMultiplier)
    int base = Integer.parseInt(pString);
    return base * pMultiplier;
    XML descriptor:
    Note the types (in the java class and the xml descriptor)
    for java:base -> string and for xslt:base -> string
    for java:multiplier -> int and for xslt:multiplier -> number
    <?xml version="1.0" encoding="UTF-8"?>
    <extension-functions>
    <functions extension:multiplyStringAndInt="http://www.oracle.com/XSL/Transform/java/com.otn.samples.xslt.CustomXSLTFunctions">
    <function name="extension:multiplyStringAndInt" as="number">
    <param name="base" as="string"/>
    <param name="multiplier" as="number"/>
    </function>
    </functions>
    </extension-functions>
    Definition of variables in the process:
    (as you can see, the base is a string - I do the conversion in my method, and the return value
    is converted to a string by the engine)
    <!-- Input -->
    <element name="CustomXSLTFunctionProcessRequest">
    <complexType>
    <sequence>
    <element name="base" type="string"/>
    <element name="multiplier" type="int"/>
    </sequence>
    </complexType>
    </element>
    <!-- Output -->
    <element name="CustomXSLTFunctionProcessResponse">
    <complexType>
    <sequence>
    <element name="result" type="string"/>
    </sequence>
    </complexType>
    </element>
    Using the new function in the XSL transformation:
    - watch out for the namespace declaration (xmlns:sample="...")
    - and the usage (sample:multiplyStringAndInt)
    <xsl:stylesheet version="1.0"
    xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap"
    xmlns:xp20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20"
    xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
    xmlns:extension="http://www.oracle.com/XSL/Transform/java/com.otn.samples.xslt.CustomXSLTFunctions"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:ora="http://schemas.oracle.com/xpath/extension"
    xmlns:ns0="http://www.w3.org/2001/XMLSchema"
    xmlns:orcl="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc"
    xmlns:client="http://xmlns.oracle.com/CustomXSLTFunction"
    exclude-result-prefixes="xsl plnk ns0 client ldap xp20 bpws extension ora orcl">
    <xsl:template match="/">
    <client:CustomXSLTFunctionProcessResponse>
    <client:result>
    <xsl:value-of select="extension:multiplyStringAndInt(/client:CustomXSLTFunctionProcessRequest/client:base,/client:CustomXSLTFunctionProcessRequest/client:multiplier)"/>
    </client:result>
    </client:CustomXSLTFunctionProcessResponse>
    </xsl:template>
    </xsl:stylesheet>
    Then I created a jar file with the class (and for testing the xml descriptor in it)...
    and put it into j2ee/home/applib directory
    hth clemens

  • Group by parameter value

    Hi,
    How can I group by a parameter value?
    For instance, I have the following:
    <?for-each-group:Opportunity[there is a filter here];./ResponsibleDepartment?>
    This grouping works fine if I enter field values such as "ResponsibleDepartment" (as in the above exmaple), "Product", and "User". Each of these values refer to actual field names. I would like instead to use a parameter, but unable to use a parameter as in the following:
    <?for-each-group:Opportunity[there is a filter here];./$ParamGroupBy?>
    (the parameters that the user can choose are the actual field names).
    This results in error. Can I not use a parameter in this way in a group?

    Hey Sorry. Didnt test it.
    If its going to be a xdoxslt variable then you can do it as
    <?xdoxslt:set_variable($_XDOCTX,'grp', 'DEPT')?>
    <?for-each-group:/ROOT/EMPLOYEE; ./*[name()=xdoxslt:get_variable($_XDOCTX,'grp')]?>
    <?NAME?>
    <?SALARY?>
    <?end for-each-group?>
    For the sample xml
    <ROOT>
    <EMPLOYEE>
    <NAME>Name1</NAME>
    <DEPT>Sales</DEPT>
    <SALARY>1000</SALARY>
    </EMPLOYEE>
    <EMPLOYEE>
    <NAME>Name2</NAME>
    <DEPT>Development</DEPT>
    <SALARY>1200</SALARY>
    </EMPLOYEE>
    </ROOT>
    I am not sure how it can be done for xsl variables.
    You can refer http://blogs.oracle.com/xmlpublisher/2006/05/dynamic_sorting_or_sort_by_par_1.html for more details on its usage.
    The blog has usage details of xsl variables too in this context.

  • Oracle XML processor is not handling variable properly

    I use the XML Parser 2.0.2.7 to process an XML transformation but I don't get the expected result. Running this example with other XML Processor get the job done (IBM, Excelon, Microsoft). I read again the normative document on www.w3c.org on XSL and I believe that your processor fail to render my XSL transformation because it doesn't handle variable properly.
    So, here is my XML document and my XSL stylesheet:
    XML Document:
    <Results>
    <Usager>
    <IdUsager>34</IdUsager>
    <NomUsager>NomUsager</NomUsager>
    <PrenomUsager>Le prenom de l'usager</PrenomUsager>
    <NoAssuranceMaladie>ZZZZ12121212</NoAssuranceMaladie>
    <dossiersommaire_view>
    <UsagerSommaire>
    <IdEven>2</IdEven>
    <TypeElement>16</TypeElement>
    <IdUsager>34</IdUsager>
    <IdUtilisateur>1</IdUtilisateur>
    <DateDebut>1998-04-05</DateDebut>
    <IdDoc>5</IdDoc>
    <IdCatgElement>6</IdCatgElement>
    <Description>Initial</Description>
    <IdTypeElement>16</IdTypeElement>
    <IdCatgElement1>6</IdCatgElement1>
    <Description1>Bilan mitastatique initial</Description1>
    <IdUtilisateur1>1</IdUtilisateur1>
    <CodeProfil>3</CodeProfil>
    <CodeProfil1>3</CodeProfil1>
    <TypeElement1>16</TypeElement1>
    <DroitAcces>M</DroitAcces>
    </UsagerSommaire>
    <UsagerSommaire>
    <IdEven>30</IdEven>
    <TypeElement>15</TypeElement>
    <IdUsager>34</IdUsager>
    <IdUtilisateur>1</IdUtilisateur>
    <DateDebut>2000-06-08</DateDebut>
    <IdDoc>31</IdDoc>
    <IdCatgElement>6</IdCatgElement>
    <Description>Initial</Description>
    <IdTypeElement>15</IdTypeElement>
    <IdCatgElement1>6</IdCatgElement1>
    <Description1>Sommaire initial</Description1>
    <IdUtilisateur1>1</IdUtilisateur1>
    <CodeProfil>3</CodeProfil>
    <CodeProfil1>3</CodeProfil1>
    <TypeElement1>15</TypeElement1>
    <DroitAcces>M</DroitAcces>
    </UsagerSommaire>
    <UsagerSommaire>
    <IdEven>7</IdEven>
    <TypeElement>6</TypeElement>
    <IdUsager>34</IdUsager>
    <IdUtilisateur>1</IdUtilisateur>
    <DateDebut>2000-04-15</DateDebut>
    <IdDoc>1</IdDoc>
    <IdCatgElement>2</IdCatgElement>
    <Description>Examens</Description>
    <IdTypeElement>6</IdTypeElement>
    <IdCatgElement1>2</IdCatgElement1>
    <Description1>Examens numirisis</Description1>
    <IdUtilisateur1>1</IdUtilisateur1>
    <CodeProfil>3</CodeProfil>
    <CodeProfil1>3</CodeProfil1>
    <TypeElement1>6</TypeElement1>
    <DroitAcces>C</DroitAcces>
    </UsagerSommaire>
    <UsagerSommaire>
    <IdEven>9</IdEven>
    <TypeElement>2</TypeElement>
    <IdUsager>34</IdUsager>
    <IdUtilisateur>1</IdUtilisateur>
    <DateDebut>2000-03-14</DateDebut>
    <IdDoc>1</IdDoc>
    <IdCatgElement>1</IdCatgElement>
    <Description>Suivi</Description>
    <IdTypeElement>2</IdTypeElement>
    <IdCatgElement1>1</IdCatgElement1>
    <Description1>Suivi oncologique</Description1>
    <IdUtilisateur1>1</IdUtilisateur1>
    <CodeProfil>3</CodeProfil>
    <CodeProfil1>3</CodeProfil1>
    <TypeElement1>2</TypeElement1>
    <DroitAcces>C</DroitAcces>
    </UsagerSommaire>
    <UsagerSommaire>
    <IdEven>10</IdEven>
    <TypeElement>2</TypeElement>
    <IdUsager>34</IdUsager>
    <IdUtilisateur>1</IdUtilisateur>
    <DateDebut>2000-03-27</DateDebut>
    <IdDoc>1</Id Doc>
    <IdCatgElement>1</IdCatgElement>
    <Description>Suivi</Description>
    <IdTypeElement>2</IdTypeElement>
    <IdCatgElement1>1</IdCatgElement1>
    <Description1>Suivi oncologique</Description1>
    <IdUtilisateur1>1</IdUtilisateur1>
    <CodeProfil>3</CodeProfil>
    <CodeProfil1>3</CodeProfil1>
    <TypeElement1>2</TypeElement1>
    <DroitAcces>C</DroitAcces>
    </UsagerSommaire>
    <UsagerSommaire>
    <IdEven>16</IdEven>
    <TypeElement>16</TypeElement>
    <IdUsager>34</IdUsager>
    <IdUtilisateur>1</IdUtilisateur>
    <DateDebut>2000-06-05</DateDebut>
    <IdDoc>46</IdDoc>
    <IdCatgElement>6</IdCatgElement>
    <Description>Initial</Description>
    <IdTypeElement>16</IdTypeElement>
    <IdCatgElement1>6</IdCatgElement1>
    <Description1>Bilan mitastatique initial</Description1>
    <IdUtilisateur1>1</IdUtilisateur1>
    <CodeProfil>3</CodeProfil>
    <CodeProfil1>3</CodeProfil1>
    <TypeElement1>16</TypeElement1>
    <DroitAcces>M</DroitAcces>
    </UsagerSommaire>
    <UsagerSommaire>
    <IdEven>26</IdEven>
    <TypeElement>15</TypeElement>
    <IdUsager>34</IdUsager>
    <IdUtilisateur>1</IdUtilisateur>
    <DateDebut>2000-06-07</DateDebut>
    <IdDoc>32</IdDoc>
    <IdCatgElement>6</IdCatgElement>
    <Description>Initial</Description>
    <IdTypeElement>15</IdTypeElement>
    <IdCatgElement1>6</IdCatgElement1>
    <Description1>Sommaire initial</Description1>
    <IdUtilisateur1>1</IdUtilisateur1>
    <CodeProfil>3</CodeProfil>
    <CodeProfil1>3</CodeProfil1>
    <TypeElement1>15</TypeElement1>
    <DroitAcces>M</DroitAcces>
    </UsagerSommaire>
    <UsagerSommaire>
    <IdEven>37</IdEven>
    <TypeElement>15</TypeElement>
    <IdUsager>34</IdUsager>
    <IdUtilisateur>1</IdUtilisateur>
    <DateDebut>2000-06-08</DateDebut>
    <IdDoc>32</IdDoc>
    <IdCatgElement>6</IdCatgElement>
    <Description>Initial</Description>
    <IdTypeElement>15</IdTypeElement>
    <IdCatgElement1>6</IdCatgElement1>
    <Description1>Sommaire initial</Description1>
    <IdUtilisateur1>1</IdUtilisateur1>
    <CodeProfil>3</CodeProfil>
    <CodeProfil1>3</CodeProfil1>
    <TypeElement1>15</TypeElement1>
    <DroitAcces>M</DroitAcces>
    </UsagerSommaire>
    </dossiersommaire_view>
    <categorie_view>
    <CatgElement>
    <IdCatgElement>1</IdCatgElement>
    <Description>Suivi</Description>
    <type_view>
    <TypeElement>
    <IdTypeElement>2</IdTypeElement>
    <IdCatgElement>1</IdCatgElement>
    <Description>Suivi oncologique</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement>2</TypeElement>
    <DroitAcces>C</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    <TypeElement>
    <IdTypeElement>5</IdTypeElement>
    <IdCatgElement>1</IdCatgElement>
    <Description>Suivi pharmaceutique</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement>5</TypeElement>
    <DroitAcces>M</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    <TypeElement>
    <IdTypeElement>3</IdTypeElement>
    <IdCatgElement>1</IdCatgElement>
    <Description>Suivi avec chimiothirapie</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement>3</TypeEleme nt>
    <DroitAcces>M</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    <TypeElement>
    <IdTypeElement>4</IdTypeElement>
    <IdCatgElement>1</IdCatgElement>
    <Description>Evaluation psychosociale</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement>4</TypeElement>
    <DroitAcces>M</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    </type_view>
    </CatgElement>
    <CatgElement>
    <IdCatgElement>2</IdCatgElement>
    <Description>Examens</Description>
    <type_view>
    <TypeElement>
    <IdTypeElement>6</IdTypeElement>
    <IdCatgElement>2</IdCatgElement>
    <Description>Examens numirisis</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement>6</TypeElement>
    <DroitAcces>C</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    </type_view>
    </CatgElement>
    <CatgElement>
    <IdCatgElement>3</IdCatgElement>
    <Description>Ricidive</Description>
    <type_view>
    <TypeElement>
    <IdTypeElement>7</IdTypeElement>
    <IdCatgElement>3</IdCatgElement>
    <Description>Ricidives</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement>7</TypeElement>
    <DroitAcces>C</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    </type_view>
    </CatgElement>
    <CatgElement>
    <IdCatgElement>4</IdCatgElement>
    <Description>Mitastase</Description>
    <type_view>
    <TypeElement>
    <IdTypeElement>8</IdTypeElement>
    <IdCatgElement>4</IdCatgElement>
    <Description>Mitastases</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement>8</TypeElement>
    <DroitAcces>M</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    </type_view>
    </CatgElement>
    <CatgElement>
    <IdCatgElement>5</IdCatgElement>
    <Description>Traitement</Description>
    <type_view>
    <TypeElement>
    <IdTypeElement>9</IdTypeElement>
    <IdCatgElement>5</IdCatgElement>
    <Description>Chimiothirapie (nursing onco)</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement>9</TypeElement>
    <DroitAcces>M</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    <TypeElement>
    <IdTypeElement>10</IdTypeElement>
    <IdCatgElement>5</IdCatgElement>
    <Description>Hormonothirapie (nursing onco)</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement>10</TypeElement>
    <DroitAcces>C</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    <TypeElement>
    <IdTypeElement>12</IdTypeElement>
    <IdCatgElement>5</IdCatgElement>
    <Description>Radiothirapie - plan de traitement</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement>12</TypeElement>
    <DroitAcces>C</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    <TypeElement>
    <IdTypeElement>13</IdTypeElement>
    <IdCatgElement>5</IdCatgElement>
    <Description>Radiothirapie - note de fin de traitement (rapport numirisi)</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement&gt ;13</TypeElement>
    <DroitAcces>C</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    <TypeElement>
    <IdTypeElement>14</IdTypeElement>
    <IdCatgElement>5</IdCatgElement>
    <Description>Chirurgie (rapport numirisi)</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement>14</TypeElement>
    <DroitAcces>M</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    </type_view>
    </CatgElement>
    <CatgElement>
    <IdCatgElement>6</IdCatgElement>
    <Description>Initial</Description>
    <type_view>
    <TypeElement>
    <IdTypeElement>15</IdTypeElement>
    <IdCatgElement>6</IdCatgElement>
    <Description>Sommaire initial</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement>15</TypeElement>
    <DroitAcces>M</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    <TypeElement>
    <IdTypeElement>16</IdTypeElement>
    <IdCatgElement>6</IdCatgElement>
    <Description>Bilan mitastatique initial</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement>16</TypeElement>
    <DroitAcces>M</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    </type_view>
    </CatgElement>
    <CatgElement>
    <IdCatgElement>7</IdCatgElement>
    <Description>Autre</Description>
    <type_view>
    <TypeElement>
    <IdTypeElement>17</IdTypeElement>
    <IdCatgElement>7</IdCatgElement>
    <Description>Note du midecin</Description>
    <CodeProfil>3</CodeProfil>
    <TypeElement>17</TypeElement>
    <DroitAcces>C</DroitAcces>
    <IdUtilisateur>1</IdUtilisateur>
    <CodeProfil1>3</CodeProfil1>
    </TypeElement>
    </type_view>
    </CatgElement>
    </categorie_view>
    </Usager>
    </Results>
    XSL Stylesheet:
    <?xml version="1.0" encoding='ISO-8859-1'?>
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:output indent="yes" method="text" encoding='ISO-8859-1'/>
    <xsl:template match="*|/"><xsl:apply-templates/></xsl:template>
    <xsl:template match="text()|@*"><xsl:value-of select="."/></xsl:template>
    <xsl:template match="/"><xsl:text><html>
    </xsl:text>
    <xsl:text><BODY BGCOLOR= "#CEDFC6">
    </xsl:text>
    <xsl:text><APPLET CODEBASE="/applets/" CODE="SIRtree.class" WIDTH=200 HEIGHT=380>
    </xsl:text>
    <xsl:text><PARAM NAME="TITLEFONT" VALUE="0">
    </xsl:text>
    <xsl:text><PARAM NAME="ICONS" VALUE="/applets/DRQICON.gif">
    </xsl:text>
    <xsl:text><PARAM NAME="BGCOLOR" VALUE="8">
    </xsl:text>
    <xsl:text><PARAM NAME="NODEFONT" VALUE="3">
    </xsl:text>
    <xsl:text><PARAM NAME="HBGCOLOR" VALUE="2">
    </xsl:text>
    <xsl:text><PARAM NAME="TXTCOLOR" VALUE="2">
    </xsl:text>
    <xsl:text><PARAM NAME="HTXTCOLOR" VALUE="10">
    </xsl:text>
    <xsl:text><PARAM NAME="FONT1" VALUE="Helvetica|B">
    </xsl:text>
    <xsl:text><PARAM NAME="FONT2" VALUE="Helvetica|N">
    </xsl:text>
    <xsl:text><PARAM NAME="FONT3" VALUE="Arial|N">
    </xsl:text>
    <xsl:text><!-- Medium Grey -->
    </xsl:text>
    <xsl:text><PARAM NAME="Color1" VALUE="150|150|150">
    </xsl:text>
    <xsl:text><!-- Black -->
    </xsl:text>
    <xsl:text><PARAM NAME="Color2" VALUE="0|0|0">
    </xsl:text>
    <xsl:te xt><!-- Blue -->
    </xsl:text>
    <xsl:text><PARAM NAME="Color3" VALUE="0|0|255">
    </xsl:text>
    <xsl:text><!-- Red -->
    </xsl:text>
    <xsl:text><PARAM NAME="Color4" VALUE="255|0|0">
    </xsl:text>
    <xsl:text><!-- Orange -->
    </xsl:text>
    <xsl:text><PARAM NAME="Color5" VALUE="255|128|0">
    </xsl:text>
    <xsl:text><!-- Dark Grey -->
    </xsl:text>
    <xsl:text><PARAM NAME="Color6" VALUE="100|100|100">
    </xsl:text>
    <xsl:text><!-- Light Grey -->
    </xsl:text>
    <xsl:text><PARAM NAME="Color7" VALUE="200|200|200">
    </xsl:text>
    <xsl:text><!-- Light Green -->
    </xsl:text>
    <xsl:text><PARAM NAME="Color8" VALUE="206|223|198">
    </xsl:text>
    <xsl:text><!-- Yellow -->
    </xsl:text>
    <xsl:text><PARAM NAME="Color9" VALUE="255|255|0">
    </xsl:text>
    <xsl:text><!-- White -->
    </xsl:text>
    <xsl:text><PARAM NAME="Color10" VALUE="255|255|255">
    </xsl:text>
    <xsl:text><PARAM NAME="BORDER" VALUE="0">
    </xsl:text>
    <xsl:text><!-- Menu principal -->
    </xsl:text>
    <xsl:variable name="NodeCPT" select='3'/>
    <xsl:text><PARAM NAME="NODE0" VALUE="ROOT|</xsl:text><xsl:value-of select="Results/Usager/NomUsager"/><xsl:text>"|1| | | | |0|-1">
    </xsl:text>
    <xsl:text><PARAM NAME="NODE1" VALUE="ROOT|</xsl:text><xsl:value-of select="Results/Usager/PrenomUsager"/><xsl:text>"|1| | | | |0|-1">
    </xsl:text>
    <xsl:text><PARAM NAME="NODE2" VALUE="ROOT|</xsl:text><xsl:value-of select="Results/Usager/NoAssuranceMaladie"/><xsl:text>"|1| | | | |0|-1">
    </xsl:text>
    <xsl:for-each select="/Results/Usager/categorie_view/CatgElement">
    <xsl:variable name="Racine" select="Description"/>
    <xsl:text><PARAM NAME="NODE</xsl:text><xsl:value-of select="$NodeCPT"/><xsl:text>" VALUE="ROOT|</xsl:text><xsl:value-of select="$Racine"/><xsl:text>|1| |mainFrame| | |1|-1|4">
    </xsl:text>
    <xsl:variable name="NodeCPT" select="$NodeCPT+1"/>
    <xsl:text>
    // Ajouter les Types d'iliment
    </xsl:text>
    <xsl:for-each select="type_view/TypeElement">
    <xsl:variable name="Feuille" select="Description"/>
    <xsl:text><PARAM NAME="NODE</xsl:text><xsl:value-of select="$NodeCPT"/><xsl:text>" VALUE="</xsl:text><xsl:value-of select="$Racine"/><xsl:text>|</xsl:text><xsl:value-of select="Description"/><xsl:text>|1| |mainFrame| | |1|-1|4">
    </xsl:text>
    <xsl:variable name="NodeCPT" select="$NodeCPT+1"/>
    <xsl:variable name="DroitAcces" select="DroitAcces"/>
    <xsl:if test="$DroitAcces = 'M'">
    <xsl:text><PARAM NAME="NODE</xsl:text><xsl:value-of select="$NodeCPT"/><xsl:text>" VALUE="</xsl:text><xsl:value-of select="$Feuille"/><xsl:text>|Ajouter...|3|http://drioq.qc.cgi.ca/jspdrioq/Elem_Query.jsp?IdTypeElem=</xsl:text><xsl:value-of select="TypeElementId"/><xsl:text>|mainFrame| | |0">
    </xsl:text>
    <xsl:variable name="NodeCPT" select="$NodeCPT+1"/>
    </xsl:if>
    <xsl:variable name="TypeElement" select="IdTypeElement"/>
    <xsl:for-each select="//Results/Usager/dossiersommaire_view/UsagerSommaire[TypeElement=$TypeElement]">
    <xsl:text><PARAM NAME="NODE</xsl:text><xsl:value-of select="$NodeCPT"/><xsl:text>" VALUE="</xsl:text><xsl:value-of select="$Feuille"/><xsl:text>|</xsl:text><xsl:value-of select="Description"/><xsl:text> du </xsl:text><xsl:value-of select="DateDebut"/><xsl:text>|2|http://drioq.qc.cgi.ca/jspdrioq/Elem_Query.jsp?IdEven=</xsl:text><xsl:value-of select="I dEven"/><xsl:text>|mainFrame| | |0">
    </xsl:text>
    <xsl:variable name="NodeCPT" select="$NodeCPT+1"/>
    </xsl:for-each>
    <xsl:if test="($DroitAcces = 'C')">
    <xsl:if test="(count(//Results/Usager/dossiersommaire_view/UsagerSommaire[TypeElement=$TypeElement]) = 0)">
    <xsl:text><PARAM NAME="NODE</xsl:text><xsl:value-of select="$NodeCPT"/><xsl:text>" VALUE="</xsl:text><xsl:value-of select="$Feuille"/><xsl:text>|Aucun Dossier |5| | | | |0">
    </xsl:text>
    <xsl:variable name="NodeCPT" select="$NodeCPT+1"/>
    </xsl:if>
    </xsl:if>
    </xsl:for-each>
    </xsl:for-each>
    <xsl:text>
    //-----------------------------------PAS TOUCHE----------------------------------------------------------
    </xsl:text>
    <xsl:text></BODY>
    </xsl:text>
    <xsl:text></html>
    </xsl:text>
    </xsl:template>
    </xsl:stylesheet>
    null

    First of all, thank for Steve and Micheal for your help.
    Well, it's that I don't read section 11.5 before I posted my last messages(I don't know how I did that??? may be to much nightly development) Also I think that xsl:variable just lead to misunderstanding. I would prefere the "xsl:constant" label.
    In neither way, I'm still looking for a solution to number my parameter because I don't each time how many parameter I'll have to pass to my applets. I'm now looking for pure JSP.
    Steve you also pointed out that the use of <xsl:text> is very strange! You're right! The main reason why I'm working that way is because we need to generate JavaScript based on the XML Data. So I start my stylesheet in text mode because I need to generate text (JavaScript) and not only tag like "PARAM". But to simply this example and focus on the problem I retired the JavaScript Part and any other not relevent tag! If there is a way to change the output mode after generating the JavaScript I would like to know about it.
    Ok, everyone thanks again!

  • Question regarding usage of "count" function in xsl in my bpel process

    Hi,
    Is it ok to use the "count" function in the xsl transformation activity in BPEL PM version is 10.1.2.0.2?
    Thanks a lot for your help.
    Thanks
    Ravi
    Message was edited by:
    user464609

    removed
    Message was edited by:
    Marc Kelderman

  • XSL-FO usage in RTF template

    Hi
    Can i use <fo:table-row> in RTF template
    If so can u please highlight how i can use it.
    Thanks
    Darshan

    Sorry for the trouble . I have found out the solution
    So this thread can be closed.
    Thanks
    Darshan

  • How can I use JavaScript extention functions with Xalan for transforming XML with XSL

    While transforming standart XML and XSL files to HTML with this servlet:
    package mypackage1;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import java.io.*;
    import java.util.*;
    import java.net.URL;
    import javax.xml.transform.*;
    import javax.xml.transform.stream.StreamSource;
    import javax.xml.transform.stream.StreamResult;
    import org.mozilla.javascript;
    public class Servlet2 extends HttpServlet
    private static final String CONTENT_TYPE = "text/html; charset=windows-1252";
    public void init(ServletConfig config) throws ServletException
    super.init(config);
    public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException
    try
    response.setContentType(CONTENT_TYPE);
    PrintWriter out = response.getWriter();
    TransformerFactory tFactory = TransformerFactory.newInstance();
    Source xmlSource = new StreamSource(new FileReader("c:/aaa.xml"));
    Source xslSource = new StreamSource(new FileReader("c:/bbb.xsl"));
    Transformer transformer = tFactory.newTransformer(xslSource);
    transformer.transform (xmlSource, new StreamResult(out));
    catch (Exception e)
    e.printStackTrace();
    everything is going ok,
    but when try to use javascript function in XSL file, for example like in this:
    <?xml version="1.0"?>
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
    xmlns:lxslt="http://xml.apache.org/xslt" xmlns:my-ext="ext1"
    extension-element-prefixes="my-ext">
    <lxslt:component prefix="my-ext"
    functions="getdate">
    <lxslt:script lang="javascript">
    function getdate() {
    var d = new Date();
    return d.toUTCString();
    </lxslt:script>
    </lxslt:component>
    <xsl:template match="/">
    <p><xsl:copy-of select="my-ext:getdate()"/></p>
    </xsl:template>
    </xsl:stylesheet>
    recieve error-message:
    XSL-1000: (Fatal Error) Error while parsing XSL file (Extension function namespace should start with 'http://www.oracle.com/XSL/Transform/java/'.).
    What kind of namespace I should specify?

    Hello, Paul.
    I'm sure you may not use JavaScript as a language for creating XSLT extention functions with Oracle XDK Parser. This is since parser might have JavaScript interpreter to work with JavaScript, but it has not.
    If you need to build any XSLT extention functions you must build them as Java class' static methods.
    After that, you define the usage of the class by mean of namespace declaration as:
    xmlns:your-ns="http://www.oracle.com/XSL/Transform/java/yourpackage.Yourclass"
    (Prefix "http://www.oracle.com/XSL/Transform/java/" may differs if you use non-Oracle XML parser)
    and use class' static method in XSLT:
    <xsl:value-of select="your-ns.staticMethodName(paramsIfAny)"/>
    In your case you may wish to use standard Date class:
    xmlns:date="http://www.oracle.com/XSL/Transform/java/java.util.Date"
    <xsl:value-of select="date:toString(date:new)"/>

  • Converting schema in dtd using xsl

    Hey all,
    I have a problem with an xsl transformtion.
    Somewhere on the web I found a xsl-stylesheet to convert schema's into valid dtd's
    http://crism.maden.org/consulting/pub/xsl/xsd2dtd.xsl
    I've used a program from the JavaTM Web Services Developer Pack to run this xsl on existing schema's but the results are definately nothing like a dtd ... what is this n00b doing wrong .... Heeelp ...
    * @(#)Stylizer.java 1.9 98/11/10
    * Copyright 2002 Sun Microsystems, Inc. All Rights Reserved.
    * Redistribution and use in source and binary forms, with or
    * without modification, are permitted provided that the following
    * conditions are met:
    * - Redistributions of source code must retain the above copyright
    *   notice, this list of conditions and the following disclaimer.
    * - Redistribution in binary form must reproduce the above
    *   copyright notice, this list of conditions and the following
    *   disclaimer in the documentation and/or other materials
    *   provided with the distribution.
    * Neither the name of Sun Microsystems, Inc. or the names of
    * contributors may be used to endorse or promote products derived
    * from this software without specific prior written permission.
    * This software is provided "AS IS," without a warranty of any
    * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
    * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
    * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
    * EXCLUDED. SUN AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY
    * DAMAGES OR LIABILITIES SUFFERED BY LICENSEE AS A RESULT OF OR
    * RELATING TO USE, MODIFICATION OR DISTRIBUTION OF THIS SOFTWARE OR
    * ITS DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE
    * FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT,
    * SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER
    * CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF
    * THE USE OF OR INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS
    * BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
    * You acknowledge that this software is not designed, licensed or
    * intended for use in the design, construction, operation or
    * maintenance of any nuclear facility.
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import javax.xml.parsers.FactoryConfigurationError;
    import javax.xml.parsers.ParserConfigurationException;
    import org.xml.sax.SAXException;
    import org.xml.sax.SAXParseException;
    import org.w3c.dom.Document;
    import org.w3c.dom.DOMException;
    // For write operation
    import javax.xml.transform.Transformer;
    import javax.xml.transform.TransformerException;
    import javax.xml.transform.TransformerFactory;
    import javax.xml.transform.TransformerConfigurationException;
    import javax.xml.transform.dom.DOMSource;
    import javax.xml.transform.stream.StreamSource;
    import javax.xml.transform.stream.StreamResult;
    import java.io.*;
    public class Stylizer
        // Global value so it can be ref'd by the tree-adapter
        static Document document;
        public static void main (String argv [])
            if (argv.length != 2) {
                System.err.println ("Usage: java Stylizer stylesheet xmlfile");
                System.exit (1);
            DocumentBuilderFactory factory =
                DocumentBuilderFactory.newInstance();
            //factory.setNamespaceAware(true);
            //factory.setValidating(true);
            try {
                File stylesheet = new File(argv[0]);
                File datafile   = new File(argv[1]);
                DocumentBuilder builder = factory.newDocumentBuilder();
                document = builder.parse(datafile);
                // Use a Transformer for output
                TransformerFactory tFactory = TransformerFactory.newInstance();
                StreamSource stylesource = new StreamSource(stylesheet);
                Transformer transformer = tFactory.newTransformer(stylesource);
                DOMSource source = new DOMSource(document);
                StreamResult result = new StreamResult(System.out);
                transformer.transform(source, result);
            } catch (TransformerConfigurationException tce) {
               // Error generated by the parser
               System.out.println ("\n** Transformer Factory error");
               System.out.println("   " + tce.getMessage() );
               // Use the contained exception, if any
               Throwable x = tce;
               if (tce.getException() != null)
                   x = tce.getException();
               x.printStackTrace();
            } catch (TransformerException te) {
               // Error generated by the parser
               System.out.println ("\n** Transformation error");
               System.out.println("   " + te.getMessage() );
               // Use the contained exception, if any
               Throwable x = te;
               if (te.getException() != null)
                   x = te.getException();
               x.printStackTrace();
             } catch (SAXException sxe) {
               // Error generated by this application
               // (or a parser-initialization error)
               Exception  x = sxe;
               if (sxe.getException() != null)
                   x = sxe.getException();
               x.printStackTrace();
            } catch (ParserConfigurationException pce) {
                // Parser with specified options can't be built
                pce.printStackTrace();
            } catch (IOException ioe) {
               // I/O error
               ioe.printStackTrace();
        } // main
    }Cybu

    here is a XSD that is converted okay:
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
         <xs:element name="pvDepot">
              <xs:complexType>
                   <xs:attribute name="pvId" type="xs:ID" use="required"/>
                   <xs:attribute name="status" type="xs:string" use="required"/>
                   <xs:attribute name="languagePivot" type="xs:string"/>
                   <xs:attribute name="versionPivot" type="xs:string"/>
                   <xs:attribute name="finalVersion" default="false">
                        <xs:simpleType>
                             <xs:restriction base="xs:NMTOKEN">
                                  <xs:enumeration value="true"/>
                                  <xs:enumeration value="false"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:attribute>
                   <xs:attribute name="comment" type="xs:string"/>
              </xs:complexType>
         </xs:element>
         <xs:element name="pvIndex">
              <xs:complexType>
                   <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="pvOOText"/>
                        <xs:element ref="pvDepot"/>
                        <xs:element ref="pvPresence"/>
                        <xs:element ref="resultatVoteAN"/>
                   </xs:choice>
                   <xs:attribute name="pvId" type="xs:ID" use="required"/>
                   <xs:attribute name="pvSittingDate" type="xs:string" use="required"/>
                   <xs:attribute name="pvSittingId" type="xs:string" use="required"/>
                   <xs:attribute name="pvStatus" default="edition">
                        <xs:simpleType>
                             <xs:restriction base="xs:NMTOKEN">
                                  <xs:enumeration value="edition"/>
                                  <xs:enumeration value="provisional"/>
                                  <xs:enumeration value="final"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:attribute>
              </xs:complexType>
         </xs:element>
         <xs:element name="pvOOText">
              <xs:complexType>
                   <xs:attribute name="pvId" type="xs:ID" use="required"/>
                   <xs:attribute name="type" default="SESSION">
                        <xs:simpleType>
                             <xs:restriction base="xs:NMTOKEN">
                                  <xs:enumeration value="FREE"/>
                                  <xs:enumeration value="SESSION"/>
                                  <xs:enumeration value="COVERPAGE"/>
                                  <xs:enumeration value="TRANSFER"/>
                                  <xs:enumeration value="PETITION"/>
                                  <xs:enumeration value="DEPOSIT"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:attribute>
                   <xs:attribute name="status" type="xs:string" use="required"/>
                   <xs:attribute name="languagePivot" type="xs:string"/>
                   <xs:attribute name="versionPivot" type="xs:string"/>
                   <xs:attribute name="finalVersion" default="false">
                        <xs:simpleType>
                             <xs:restriction base="xs:NMTOKEN">
                                  <xs:enumeration value="true"/>
                                  <xs:enumeration value="false"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:attribute>
                   <xs:attribute name="comment" type="xs:string"/>
              </xs:complexType>
         </xs:element>
         <xs:element name="pvPresence">
              <xs:complexType>
                   <xs:attribute name="pvId" type="xs:ID" use="required"/>
                   <xs:attribute name="status" type="xs:string" use="required"/>
                   <xs:attribute name="finalVersion" default="false">
                        <xs:simpleType>
                             <xs:restriction base="xs:NMTOKEN">
                                  <xs:enumeration value="true"/>
                                  <xs:enumeration value="false"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:attribute>
                   <xs:attribute name="comment" type="xs:string"/>
              </xs:complexType>
         </xs:element>
         <xs:element name="resultatVoteAN">
              <xs:complexType>
                   <xs:attribute name="pvId" type="xs:ID" use="required"/>
                   <xs:attribute name="status" type="xs:string" use="required"/>
                   <xs:attribute name="finalVersion" default="false">
                        <xs:simpleType>
                             <xs:restriction base="xs:NMTOKEN">
                                  <xs:enumeration value="true"/>
                                  <xs:enumeration value="false"/>
                             </xs:restriction>
                        </xs:simpleType>
                   </xs:attribute>
                   <xs:attribute name="comment" type="xs:string"/>
              </xs:complexType>
         </xs:element>
    </xs:schema>

  • Converting .XSL file to RFC using File Adapter

    Hi,
    I need to convert .xsl file using XI and send an RFC. I am not sure how to do that. Do i need to write some JAVA API's for the same. Is File adapter capable of converting .xsl files.
    Any pointers are most welcome.
    Thanks in Advance
    Regards,
    Vikas

    HI,
    try in the following ways
    Write a simple XSLT mapping or java mapping to change the value of the attribute "encoding" to "ISO-8859-1" in the output XML of message mapping . Include this XSLT or Java map as the second mapping step in your interface mapping.
    An example of the XSL code might be as follow:
    <?xml version='1.0'?>
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method='xml' encoding='ISO-8859-1' />
    <xsl:template match="/">
    <xsl:copy-of select="*" />
    </xsl:template>
    </xsl:stylesheet>
    OR
    see the below links
    /people/sap.user72/blog/2005/07/31/xi-read-data-from-pdf-file-in-sender-adapter
    How to write ModuleData process exit bean in the sender file adapter
    Adapter module for file renaming
    Module processor usage in File ADapter
    Regards
    Chilla

  • PDF Printing with XSL-FO and Apache FOP

    Can anyone show me in the right direction for this? I've been hitting a wall for the past 2 weeks or so and it's really starting to infuriate me. How am I supposed to work this out? Where do I start? Let's say I create a layout file with a WYSIWYG XSL editor, in what format do I export it? XSL, XSLT or XSL-FO? I figured it was XSL-FO, but who knows. I tried them all anyways, but nothing seems to work. I seem to be missing a step or something, 'cause something's definitely not right.
    I created a report query (which actually contains two queries):
    select distinct
    V_Usager.NUMEROPERSONNE NoPersonne,
    V_Usager.NOMUSUEL || ', ' || V_Usager.PRENOM Usager,
    V_Usager.DATENAISSANCE DateNaissance,
    V_Usager.DESCRIPTION Sexe,
    ID_Demande,
    NomNature || nvl2(PrecisionNature,', Précision: ' || PrecisionNature,'') Nature,
    NomCadre,
    decode(IND_Securitaire, 1, 'Oui', '0', 'Non') Securitaire,
    NomRessource,
    DT_Demande,
    Note,
    ltrim(decode(IND_DEMANDEIVAC,1,'Dossier IVAC','') || decode(IND_DEMANDEFLORES,1,', Dossier Florès','') || decode(IND_RISQUECRISE,1,', Risque de crise','') || decode(IND_MENOTTES,1,', Menottes nécessaires','') || decode(IND_ADRESSECONFIDENTIELLE,1,', Adresse confidentielle','') || decode(IND_TELEPHONECONFIDENTIEL,1,', Téléphone confidentiel','') || decode(IND_RISQUEFUGUE,1,', Risque de fugue','') || decode(IND_RISQUEVIOLENCE,1,', Risque de violence','') || decode(IND_MALDESTRANSPORTS,1,', Mal des transports','') || decode(IND_MEDICAMENT,1,', Médicament à remettre','') || decode(IND_SIEGE,1,'',2,', Siège fourni',3,', Siège d''enfant requis',4,', Siège de nouveau-né requis',5,', Siège d''appoint requis') || decode(IND_HANDICAP,1,'',2,', Handicap mental',3,', Handicap physique') || decode(IND_MEDICAMENT,1,', Médicament à remettre','') || decode(IND_JUMELER,1,'',2,', Ne pas jumeler',3,', Ne pas jumeler avec une fille',4,', Ne pas jumeler avec un garçon') || decode(IND_TRANSPORTEUR,1,'',2,', Transporteur féminin',3,', Transporteur masculin') || nvl2(REMARQUEPRECISIONS,', ' || REMARQUEPRECISIONS,''),',') Precisions,
    Disp1.PRENOM || ' ' || Disp1.NOM SaisiePar,
    Disp2.PRENOM || ' ' || Disp2.NOM || nvl2(Elem2.Description, ', ' || Elem2.Description,'') Requerant,
    ltrim(nvl(NOMPERSONNEAVISER,'') || nvl2(TELEPHONEPERSONNEAVISER_1,' ' || substr(TELEPHONEPERSONNEAVISER_1,1,3) || '-' || substr(TELEPHONEPERSONNEAVISER_1,4,3) || '-' || substr(TELEPHONEPERSONNEAVISER_1,7,4),'') || nvl2(TELEPHONEPERSONNEAVISER_2,' ' || substr(TELEPHONEPERSONNEAVISER_2,1,3) || '-' || substr(TELEPHONEPERSONNEAVISER_2,4,3) || '-' || substr(TELEPHONEPERSONNEAVISER_2,7,4),''),',') PersonneAAviser
    from
    TBL_Demande_1,
    TBL_Demande_TRSP_1,
    V_Dispensateur Disp1,
    V_Dispensateur Disp2,
    V_ElemStruct Elem2,
    V_Usager,
    TBL_CadresLegaux,
    TBL_Natures,
    TBL_Ressources
    where
    DemandeID = :P7_IDDEMANDE
    and ID_Demande = DemandeID
    and ID_Usager = UsagerID
    and ID_CLegal = IDCadre
    and ID_Nature = IDNature
    and IND_Ressource = IDRessource
    and ID_Intervenant LIKE Disp1.NumeroDispensateur
    and ID_SaisiePar LIKE Disp2.NumeroDispensateur
    and Elem2.ElemStructID = ID_ElemStructSaisiePar
    select
    to_char(DT_TRANSPORT, 'dd/mm/yyyy') || ' à ' || HR_TRANSPORT || nvl2(DUREE,' durée: ' || DUREE,'') DateTRSP,
    decode(IND_TYPETRANSPORT,1,'Aller',2,'Retour',3,'Aller/Retour') TypeTransport,
    case IND_TYPETRANSPORT
    when 1 then
    DEP_NOM || ', ' || DEP_ADRESSE || ', ' || DEP_CPOSTAL
    when 2 then
    DEST_NOM || ', ' || DEST_ADRESSE || ', ' || DEST_CPOSTAL
    when 3 then
    DEP_NOM || ', ' || DEP_ADRESSE || ', ' || DEP_CPOSTAL
    end AdresseDEP,
    case IND_TYPETRANSPORT
    when 1 then
    DEP_PRECISION
    when 2 then
    DEST_PRECISION
    when 3 then
    DEP_PRECISION
    end ContactDEP,
    case IND_TYPETRANSPORT
    when 1 then
    substr(DEP_TELEPHONE,1,3) || '-' || substr(DEP_TELEPHONE,4,3) || '-' || substr(DEP_TELEPHONE,7,4) || nvl2(DEP_POSTE,' poste ' || DEP_POSTE,'')
    when 2 then
    substr(DEST_TELEPHONE,1,3) || '-' || substr(DEST_TELEPHONE,4,3) || '-' || substr(DEST_TELEPHONE,7,4) || nvl2(DEST_POSTE,' poste ' || DEST_POSTE,'')
    when 3 then
    substr(DEP_TELEPHONE,1,3) || '-' || substr(DEP_TELEPHONE,4,3) || '-' || substr(DEP_TELEPHONE,7,4) || nvl2(DEP_POSTE,' poste ' || DEP_POSTE,'')
    end TelDEP,
    case IND_TYPETRANSPORT
    when 1 then
    DEST_NOM || ', ' || DEST_ADRESSE || ', ' || DEST_CPOSTAL
    when 2 then
    DEP_NOM || ', ' || DEP_ADRESSE || ', ' || DEP_CPOSTAL
    when 3 then
    DEST_NOM || ', ' || DEST_ADRESSE || ', ' || DEST_CPOSTAL
    end AdresseDEST,
    case IND_TYPETRANSPORT
    when 1 then
    DEST_PRECISION
    when 2 then
    DEP_PRECISION
    when 3 then
    DEST_PRECISION
    end ContactDEST,
    case IND_TYPETRANSPORT
    when 1 then
    substr(DEST_TELEPHONE,1,3) || '-' || substr(DEST_TELEPHONE,4,3) || '-' || substr(DEST_TELEPHONE,7,4) || nvl2(DEST_POSTE,' poste ' || DEST_POSTE,'')
    when 2 then
    substr(DEP_TELEPHONE,1,3) || '-' || substr(DEP_TELEPHONE,4,3) || '-' || substr(DEP_TELEPHONE,7,4) || nvl2(DEP_POSTE,' poste ' || DEP_POSTE,'')
    when 3 then
    substr(DEST_TELEPHONE,1,3) || '-' || substr(DEST_TELEPHONE,4,3) || '-' || substr(DEST_TELEPHONE,7,4) || nvl2(DEST_POSTE,' poste ' || DEST_POSTE,'')
    end TelDEST,
    decode(RET_NOM || ', ' || RET_ADRESSE || ', ' || RET_CPOSTAL, ', , ', '', RET_NOM || ', ' || RET_ADRESSE || ', ' || RET_CPOSTAL) AdresseRET,
    RET_PRECISION ContactRET,
    substr(RET_TELEPHONE,1,3) || '-' || substr(RET_TELEPHONE,4,3) || '-' || substr(RET_TELEPHONE,7,4) || nvl2(RET_POSTE,' poste ' || RET_POSTE,'') TelRET
    from
    TBL_Demande_1,
    TBL_Demande_TRSP_1
    where
    DemandeID = :P7_IDDEMANDE
    and ID_Demande = DemandeIDI then created a report layout in XSL-FO with XSLfast, but it won't work at all. I always get the dreaded "corrupted file" when I test my PDF Report... any ideas why it doesn't work? Have I missed something obvious?
    Best regards,
    Mathieu

    Hello Mathieu
    i assume that the default PDF printing is working, but that you want to create some better looking reports and therefore use a different non-generic XSL-FO.
    You can do several things in Apex but you can use the Apache-Fop conversion also indepent from Apex.
    What you need is:
    1) An XML (Data) File. You can get it from your report query when you say export it to XML.
    2) The XSL-FO (Layout) file. THis is the processing instruction that says how convert the XML Data into an XML-FO. You can create it manually or with some tool.
    3) The next step is to render the XML-FO into any output format (pdf, rtf, html)
    The creation of the XML-FO and of the PDF are done by the apache fop converter (cocoon or Batik framework if I remember correctly) in a single process but you can influence it so that both steps are done separately. See also: http://xmlgraphics.apache.org/fop/0.95/running.html
    The advantage is that you usually get much better error messages from the single steps.
    My recommendation would be to do all the steps with a very basic report first.
    Then gradually improve the complexity of the report, the data and the layout.

  • Large Pdf using XML XSL - Out of Memory Error

    Hi Friends.
    I am trying to generate a PDF from XML, XSL and FO in java. It works fine if the PDF to be generated is small.
    But if the PDF to be generated is big, then it throws "Out of Memory" error. Can some one please give me some pointers about the possible reasons for this errors. Thanks for your help.
    RM
    Code:
    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import org.xml.sax.InputSource;
    import org.xml.sax.XMLReader;
    import org.apache.fop.apps.Driver;
    import org.apache.fop.apps.Version;
    import org.apache.fop.apps.XSLTInputHandler;
    import org.apache.fop.messaging.MessageHandler;
    import org.apache.avalon.framework.logger.ConsoleLogger;
    import org.apache.avalon.framework.logger.Logger;
    public class PdfServlet extends HttpServlet {
    public static final String FO_REQUEST_PARAM = "fo";
    public static final String XML_REQUEST_PARAM = "xml";
    public static final String XSL_REQUEST_PARAM = "xsl";
    Logger log = null;
         Com_BUtil myBu = new Com_BUtil();
    public void doGet(HttpServletRequest request,
    HttpServletResponse response) throws ServletException {
    if(log == null) {
         log = new ConsoleLogger(ConsoleLogger.LEVEL_WARN);
         MessageHandler.setScreenLogger(log);
    try {
    String foParam = request.getParameter(FO_REQUEST_PARAM);
    String xmlParam = myBu.getConfigVal("filePath") +"/"+request.getParameter(XML_REQUEST_PARAM);
    String xslParam = myBu.SERVERROOT + "/jsp/servlet/"+request.getParameter(XSL_REQUEST_PARAM)+".xsl";
         if((xmlParam != null) && (xslParam != null)) {
    XSLTInputHandler input = new XSLTInputHandler(new File(xmlParam), new File(xslParam));
    renderXML(input, response);
    } else {
    PrintWriter out = response.getWriter();
    out.println("<html><head><title>Error</title></head>\n"+
    "<body><h1>PdfServlet Error</h1><h3>No 'fo' "+
    "request param given.</body></html>");
    } catch (ServletException ex) {
    throw ex;
    catch (Exception ex) {
    throw new ServletException(ex);
    public void renderXML(XSLTInputHandler input,
    HttpServletResponse response) throws ServletException {
    try {
    ByteArrayOutputStream out = new ByteArrayOutputStream();
    response.setContentType("application/pdf");
    Driver driver = new Driver();
    driver.setLogger(log);
    driver.setRenderer(Driver.RENDER_PDF);
    driver.setOutputStream(out);
    driver.render(input.getParser(), input.getInputSource());
    byte[] content = out.toByteArray();
    response.setContentLength(content.length);
    response.getOutputStream().write(content);
    response.getOutputStream().flush();
    } catch (Exception ex) {
    throw new ServletException(ex);
    * creates a SAX parser, using the value of org.xml.sax.parser
    * defaulting to org.apache.xerces.parsers.SAXParser
    * @return the created SAX parser
    static XMLReader createParser() throws ServletException {
    String parserClassName = System.getProperty("org.xml.sax.parser");
    if (parserClassName == null) {
    parserClassName = "org.apache.xerces.parsers.SAXParser";
    try {
    return (XMLReader) Class.forName(
    parserClassName).newInstance();
    } catch (Exception e) {
    throw new ServletException(e);

    Hi,
    I did try that initially. After executing the command I get this message.
    C:\>java -Xms128M -Xmx256M
    Usage: java [-options] class [args...]
    (to execute a class)
    or java -jar [-options] jarfile [args...]
    (to execute a jar file)
    where options include:
    -cp -classpath <directories and zip/jar files separated by ;>
    set search path for application classes and resources
    -D<name>=<value>
    set a system property
    -verbose[:class|gc|jni]
    enable verbose output
    -version print product version and exit
    -showversion print product version and continue
    -? -help print this help message
    -X print help on non-standard options
    Thanks for your help.
    RM

  • Encoding problem with XSL

    Hi,
    I have problems when printing the result of processing XML with an XSL that contains locale specific chars.
    Here is a sample:
    XML :
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <ListePatients>
    <Patient>
    <Nom>Zeublouse</Nom>
    <NomMarital/>
    <Prinom>Agathe</Prinom>
    </Patient>
    <Patient>
    <Nom>Stick</Nom>
    <NomMarital>Laiboul</NomMarital>
    <Prinom>Ella</Prinom>
    </Patient>
    <Patient>
    <Nom>`ihnotvy</Nom>
    <NomMarital/>
    <Prinom>Jacques</Prinom>
    </Patient>
    </ListePatients>
    XSL :
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:output method="html"/>
    <xsl:template match="*|/"><xsl:apply-templates/></xsl:template>
    <xsl:template match="text()|@*"><xsl:value-of select="."/></xsl:template>
    <xsl:template match="/">
    <HTML>
    <HEAD>
    <META http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
    <TITLE>Liste de patients</TITLE>
    </HEAD>
    <BODY>
    <xsl:apply-templates select='ListePatients'/>
    </BODY>
    </HTML>
    </xsl:template>
    <xsl:template match='ListePatients'>
    <TABLE>
    <xsl:for-each select='Patient'>
    <xsl:sort select='Nom' order='ascending' data-type='text'/>
    <TR TITLE='`ihnotvy'>
    <TD> <xsl:value-of select='Nom'/> </TD>
    <TD> <xsl:value-of select='NomMarital'/> </TD>
    <TD> <xsl:value-of select='Prinom'/> </TD>
    </TR>
    </xsl:for-each>
    </TABLE>
    </xsl:template>
    </xsl:stylesheet>
    Test program (from Oracle sample) :
    import java.net.URL;
    import java.io.*;
    import oracle.xml.parser.v2.DOMParser;
    import oracle.xml.parser.v2.XMLDocument;
    import oracle.xml.parser.v2.XMLDocumentFragment;
    import oracle.xml.parser.v2.XSLStylesheet;
    import oracle.xml.parser.v2.XSLProcessor;
    public class XSLSampleOTN
    * Transforms an xml document using a stylesheet
    * @param args input xml and xml documents
    public static void main (String args[]) throws Exception
    DOMParser parser;
    XMLDocument xmldoc, xsldoc, out;
    URL xslURL;
    URL xmlURL;
    try
    if (args.length != 2)
    // Must pass in the names of the XSL and XML files
    System.err.println("Usage: java XSLSampleOTN xslfile xmlfile");
    System.exit(1);
    // Parse xsl and xml documents
    parser = new DOMParser();
    parser.setPreserveWhitespace(true);
    // parser input XSL file
    xslURL = DemoUtil.createURL(args[0]);
    parser.parse(xslURL);
    xsldoc = parser.getDocument();
    // parser input XML file
    xmlURL = DemoUtil.createURL(args[1]);
    parser.parse(xmlURL);
    xmldoc = parser.getDocument();
    // instantiate a stylesheet
    XSLStylesheet xslSS = new XSLStylesheet(xsldoc, xslURL);
    XSLProcessor processor = new XSLProcessor();
    // display any warnings that may occur
    processor.showWarnings(true);
    processor.setErrorStream(System.err);
    // Process XSL
    XMLDocumentFragment result = processor.processXSL(xslSS, xmldoc);
    // print the transformed document
    result.print(System.out);
    // an other way to print, it doesn't print the same !!!!
    processor.processXSL(xslSS, xmldoc, System.out);
    catch (Exception e)
    e.printStackTrace();
    When printing the transformed document with DocumentFragment.print() it work fine but when using processXSL(xslSS, xmldoc, System.out) it don't works for locale specific chars and a second <META> balise appears, Why ?
    with DocumentFragment.print(), it's Ok :
    <HTML>
    <HEAD>
    <META http-equiv="Content-Type"
    content="text/html; charset=iso-8859-1"/>
    <TITLE>Liste de patients</TITLE>
    </HEAD>
    <BODY>
    <TABLE>
    <TR TITLE="`ihnotvy">
    <TD>`ihnotvy</TD>
    <TD/>
    <TD>Jacques</TD>
    </TR >
    <TR TITLE="`ihnotvy">
    <TD>Stick</TD>
    <TD>Laiboul</TD>
    <TD>Ella</TD>
    </TR>
    <TR TITLE="`ihnotvy">
    <TD>Zeublouse
    </TD>
    <TD/>
    <TD>Agathe</TD>
    </TR>
    </TABLE>
    </BODY>
    </HTML>
    With processXSL(xslSS, xmldoc, System.out), it's not Ok :
    <HTML>
    <HEAD>
    <META http-equiv="Content-Type" content="text/html">
    <META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <TITLE>Liste de patients</TITLE>
    </HEAD>
    <BODY>
    <TABLE>
    <TR TITLE="C C)C(C.C/C4C6C9">
    <TD>C C)C(C.C/C4C6C9</TD>
    <TD></TD>
    <TD>Jacques</TD>
    </TR>
    <TR TITLE="C C)C(C.C/C4C6C9">
    <TD>Stick</TD>
    <TD>Laiboul</TD>
    <TD>Ella</TD>
    </TR>
    <TR TITLE="C C)C(C.C/C4C6C9">
    <TD>Zeublouse</TD>
    <TD></TD>
    <TD>Agathe</TD>
    </TR>
    </TABLE>
    </BODY>
    </HTML>
    TIA
    Didier
    null

    Two other problems with XSL and print:
    first one :
    XSL :
    <SCRIPT langage="Javascript" type="text/javascript" src="scripts/erreur.js"></SCRIPT>
    DocumentFragment.print() produce :
    <SCRIPT langage="Javascript" type="text/javascript" src="scripts/erreur.js"/>
    => IE5.5 don't load the file !!, it required syntaxe like <SCRIPT ...></SCRIPT> to load.
    the second one :
    XSL:
    <TD><IMG src="images/menuleft.gif"/></TD>
    DocumentFragment.print() produce :
    <TD>
    <IMG src="images/menuleft.gif">
    </TD>
    processXSL(xslSS, xmldoc, System.out) produce :
    <TD><IMG src="images/menuleft.gif">
    </TD>
    Why a cariage return ?? it cause prisentation failure when you want to specifie the size off the cell !!
    TIA
    Didier
    null

  • XDK9.2.0.2, pb with JAXP and XSL Processor

    Hello,
    I'm using XDK 9.2.0.2 and I try to use JAXP.
    I have a difference between using the Oracle XSL processor directly and through JAXP.
    Through JAXP, the processor don't care about the xsl:outpout encoding attribute !
    Why ?
    It take care of method, indent, ... but not encoding !
    I try to set the property with : transformer.setOutputProperty(OutputKeys.ENCODING, "iso-8859-1");
    It works but I don't want to do that this way !
    TIA
    Didier
    sample (from XSLSample2):
    /* $Header: XSLSample2.java 07-jan-2002.02:24:56 sasriniv Exp $ */
    /* Copyright (c) 2000, 2002, Oracle Corporation. All rights reserved. */
    * DESCRIPTION
    * This file gives a simple example of how to use the XSL processing
    * capabilities of the Oracle XML Parser V2.0. An input XML document is
    * transformed using a given input stylesheet
    * This Sample streams the result of XSL transfromations directly to
    * a stream, hence can support xsl:output features.
    import java.net.URL;
    import oracle.xml.parser.v2.DOMParser;
    import oracle.xml.parser.v2.XMLDocument;
    import oracle.xml.parser.v2.XMLDocumentFragment;
    import oracle.xml.parser.v2.XSLStylesheet;
    import oracle.xml.parser.v2.XSLProcessor;
    // Import JAXP
    import javax.xml.transform.*;
    import javax.xml.transform.dom.*;
    import javax.xml.transform.stream.*;
    public class XSLSample2
    * Transforms an xml document using a stylesheet
    * @param args input xml and xml documents
    public static void main (String args[]) throws Exception
    DOMParser parser;
    XMLDocument xml, xsldoc, out;
    URL xslURL;
    URL xmlURL;
    try
    if (args.length != 2)
    // Must pass in the names of the XSL and XML files
    System.err.println("Usage: java XSLSample2 xslfile xmlfile");
    System.exit(1);
    // Parse xsl and xml documents
    parser = new DOMParser();
    parser.setPreserveWhitespace(true);
    // parser input XSL file
    xslURL = DemoUtil.createURL(args[0]);
    parser.parse(xslURL);
    xsldoc = parser.getDocument();
    // parser input XML file
    xmlURL = DemoUtil.createURL(args[1]);
    parser.parse(xmlURL);
    xml = parser.getDocument();
    // instantiate a stylesheet
    XSLProcessor processor = new XSLProcessor();
    processor.setBaseURL(xslURL);
    XSLStylesheet xsl = processor.newXSLStylesheet(xsldoc);
    // display any warnings that may occur
    processor.showWarnings(true);
    processor.setErrorStream(System.err);
    // Process XSL
    processor.processXSL(xsl, xml, System.out);
    // With JAXP
    System.out.println("");
    System.out.println("With JAXP :");
    TransformerFactory tfactory = TransformerFactory.newInstance();
    String xslID = xslURL.toString();
    Transformer transformer = tfactory.newTransformer(new StreamSource(xslID));
    //transformer.setOutputProperty(OutputKeys.ENCODING, "iso-8859-1");
    String xmlID = xmlURL.toString();
    StreamSource source = new StreamSource(xmlID);
    transformer.transform(source, new StreamResult(System.out));
    catch (Exception e)
    e.printStackTrace();
    My XML file :
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <ListePatients>
    <Patient>
    <Nom>Zeublouse</Nom>
    <NomMarital/>
    <Prinom>Agathe</Prinom>
    </Patient>
    <Patient>
    <Nom>Stick</Nom>
    <NomMarital>Laiboul</NomMarital>
    <Prinom>Ella</Prinom>
    </Patient>
    <Patient>
    <Nom>`ihnotvy</Nom>
    <NomMarital/>
    <Prinom>Jacques</Prinom>
    </Patient>
    </ListePatients>
    my XSL file :
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:output method="html" omit-xml-declaration="yes" indent="yes" encoding="ISO-8859-1"/>
    <xsl:template match="*|/"><xsl:apply-templates/></xsl:template>
    <xsl:template match="text()|@*"><xsl:value-of select="."/></xsl:template>
    <xsl:template match="/">
    <HTML>
    <HEAD>
    <TITLE>Liste de patients</TITLE>
    </HEAD>
    <BODY>
    <xsl:apply-templates select='ListePatients'/>
    </BODY>
    </HTML>
    </xsl:template>
    <xsl:template match='ListePatients'>
    <TABLE>
    <xsl:for-each select='Patient'>
    <xsl:sort select='Nom' order='ascending' data-type='text'/>
    <TR TITLE='`ihnotvy'>
    <TD><xsl:value-of select='Nom'/></TD>
    <TD><xsl:value-of select='NomMarital'/></TD>
    <TD><xsl:value-of select='Prinom'/></TD>
    </TR>
    </xsl:for-each>
    </TABLE>
    </xsl:template>
    </xsl:stylesheet>
    The result :
    <HTML>
    <HEAD>
    <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <TITLE>Liste de patients</TITLE>
    </HEAD>
    <BODY>
    <TABLE>
    <TR TITLE="`ihnotvy">
    <TD>`ihnotvy</TD>
    <TD></TD>
    <TD>Jacques</TD>
    </TR>
    <TR TITLE="`ihnotvy">
    <TD>Stick</TD>
    <TD>Laiboul</TD>
    <TD>Ella</TD>
    </TR>
    <TR TITLE="`ihnotvy">
    <TD>Zeublouse</TD>
    <TD></TD>
    <TD>Agathe</TD>
    </TR>
    </TABLE>
    </BODY>
    </HTML>
    With JAXP :
    <HTML>
    <HEAD>
    <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <TITLE>Liste de patients</TITLE>
    </HEAD>
    <BODY>
    <TABLE>
    <TR TITLE="C C)C(C.C/C4C6C9">
    <TD>C C)C(C.C/C4C6C9</TD>
    <TD></TD>
    <TD>Jacques</TD>
    </TR>
    <TR TITLE="C C)C(C.C/C4C6C9">
    <TD>Stick</TD>
    <TD>Laiboul</TD>
    <TD>Ella</TD>
    </TR>
    <TR TITLE="C C)C(C.C/C4C6C9">
    <TD>Zeublouse</TD>
    <TD></TD>
    <TD>Agathe</TD>
    </TR>
    </TABLE>
    </BODY>
    </HTML>

    You can also use a PrintWriter to wrap a JspWriter
    since PrintWriter has a constructor that takes any
    Writer instance.I'm having the same problem, I've spent a lot of time
    on it but I can't get it work.
    Could you post some working code that shows how you
    can do it?
    Thanks.
    It works now, I have used the code:
    result = processor.processXSL(stylesheet, xml);
    PrintWriter pw = new PrintWriter(out);
    result.print(pw);
    I had tried this before but there was an error in other place that prevented it to work.
    Thank you anyway.

  • XSL parsing in EJB environment

    Hi,
    I have a requirement to parse XSL, XML in Session EJB.
    I have read through a lot of article where parsing is normally done in Servlet.
    Can the requirement be achievable. Can anyone kindly help (it's urgent).
    Thank you

    Thank you so much to AMPHIGIS_X and gimbal2 for your reply.
    My early concern is that I am not sure of how intensive the XSL parser will java.io package during transformation. This is because usage of java..io package in EJB environment must be handle with care.
    I am more concerned when I read through a lot tutorial where the parsing is done by servlet level.

  • XSL Preprocessing: Does Xalan's document(URI) work?

    Hi fellows,
    For the first time I have XML source file with xi:include tags, like
    <xi:include href="other.xml"/>
    Many XSLT processor automatically process the xi:include element, but Xalan-C as shipped with FrameMaker apparently does not. So I added this to my preprocessing stylesheet:
    <xsl:template match="xi:include">
       <xsl:apply-templates select="document(@href)/*" />
    </xsl:template>
    FrameMaker 10 (in this case, hadn't had the time to test with previous version) hangs with 100% processor usage as soon as I access the document() function.
    Has anyone successfully used the XSLT document() function with FrameMaker?
    Thanks,
    - Michael

    Solved.
    What I found was: The use of xi:include moved data into external files which was expected in the main XML file. Because it was not there, some variable value was set to zero, and following this a division by zero made FrameMaker use the processor but never reported any error or problem.
    Lesson learned: Before you use the div operator, always check the value of the denominator!
    - Michael

Maybe you are looking for

  • How can I transfer a video between iPads? I can see the video in a photo stream but it won't save to the new iPad.

    I shot a video with the camera on an iPad and want to transfer a copy to a new iPad Mini to take advantage of the retina display.  I can see it in a photo stream, but it won't let save it to the new iPad.  The old iPad didn't have enough memory to wo

  • Design Gererator issue

    I have successfully captured the design of my 6i forms using Designer version 6.5.92.1.9, configuration 4.0.12, release 4.7 I then open JDeveloper 10.1.2.0.0 with JHeadstart 9.0.5.1 and try to use the design gerator to convert one of the simple forms

  • Missing required plugins. BRS Pencil Tool ExpandS

    Illustrator CS5 with most recent updates. When I open Illustrator, I get the error below, then the program closes. I tried reinstalling with the cleaner and deleting the Adobe Illustrator CS5 Settings folder. Neither worked. Thank you! Cheryl

  • Distribution/management point in non trusted domain

    Hoping somebody can clarify a stituation for us on distribution points on a machine in a non trusted domain. We are assuming that this distribution point uses the same certicate that the primary distribution point uses. Is this correct?   When we try

  • Using javafx and awt together in MAC

    I have read blogs about not using SWT and AWT libraries together in MAC systems. So, are their any constraints for JAVAFX and AWT as well ? Please refer to this link. I am having a similar case of writing an image to disk and I am using javafx, the l