xsl-list
[Top] [All Lists]

[xsl] XSL:FO Identify Transforms

2011-09-16 11:20:00
Hi,

I have an XSL I use for identifying the XML - e.g. takes the XML and transforms 
it into another XML. This works as expected when it's XSLT. 
However I need to make this work in the same work but using XSL:FO so that it 
can be made pretty for print and outputted as a PDF.

I am sure this should be simple, and I am missing something obvious.

How can I get the <xsl:copy> and <xsl:elements> working in FO, or something 
similar?

Any help would be very much appreciated.



My XSL:
<?xml version="1.0" encoding="UTF-8"?> 

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; 
xmlns:fo="http://www.w3.org/1999/XSL/Format";> 
  <xsl:output method="xml" version="1.0" omit-xml-declaration="yes" 
indent="yes"/> 

                <xsl:template match="/">
                                <fo:root font-size="9pt" 
xmlns:fo="http://www.w3.org/1999/XSL/Format";>
                                                <fo:layout-master-set>
                                                                
<fo:simple-page-master master-name="all" page-height="279.4mm" 
page-width="215.9mm" margin-top="5mm" margin-bottom="5mm" margin-left="5mm" 
margin-right="5mm">
                                                                                
<fo:region-body margin-top="40mm" margin-bottom="45mm"/>
                                                                                
<fo:region-before extent="40mm"/>
                                                                                
<fo:region-after extent="45mm"/>
                                                                
</fo:simple-page-master>

                                                                
<fo:page-sequence-master master-name="pagesequences" initial-page-number="1" 
force-page-count="no-force">
                                                                                
<fo:repeatable-page-master-alternatives>
                                                                                               
 <fo:conditional-page-master-reference odd-or-even="odd" 
master-reference="all"/>
                                                                                               
 <fo:conditional-page-master-reference odd-or-even="even" 
master-reference="all"/>
                                                                                
</fo:repeatable-page-master-alternatives>
                                                                
</fo:page-sequence-master>
                                                </fo:layout-master-set>

                                                <fo:page-sequence 
master-reference="pagesequences">
                                                                
<fo:static-content id="page1-static-before" flow-name="xsl-region-before">
                                                                                
<fo:table>
                                                                                
<fo:table-column column-width="200mm"/>
                                                                                               
 <fo:table-body>
                                                                                                               
 <fo:table-row text-align="center">
                                                                                                                               
 <fo:table-cell>
                                                                                                                                               
 <fo:block>
                                                                                                                                                               
 This is a copy the generated XML
                                                                                                                                               
 </fo:block>
                                                                                                                               
 </fo:table-cell>
                                                                
                                                </fo:table-row>
                                                                                               
 </fo:table-body>
                                                                                
</fo:table>
                                                                
</fo:static-content>


                                                                <fo:flow 
flow-name="xsl-region-body" color="black">
                                                                                
<fo:block>
                                                                                               
 <xsl:apply-templates select="/ | node()"/>
                                                                                
</fo:block>
                                                                </fo:flow>
                                                                
                                                </fo:page-sequence>
                                </fo:root>
                </xsl:template>



<xsl:template match="/ | node()">
                <xsl:copy>
                   <xsl:apply-templates select="@* | node()" />
                </xsl:copy>
</xsl:template>

<xsl:template match="@*" >
                <xsl:element name="attribute">
                                <xsl:attribute name="name">
                                                <xsl:value-of 
select="local-name()" />
                                </xsl:attribute>
                                <xsl:value-of select="." />
                </xsl:element>
</xsl:template>

</xsl:stylesheet>

SAMPLE XML:
<?xml version="1.0" encoding="UTF-8"?>
<xml>
            <header>
                        <test>This is  test</test>
            </header>
</xml>

________________________________________________________________________
This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>