xsl-list
[Top] [All Lists]

Re: [xsl] FOP & Extensions

2011-01-27 12:31:02
CRANFORD, CHRIS wrote:
I have an XML document that contains XPATH references like the
following:

<ROOT>
   <DATAID>1</DATAID>
   <DATAS>
     <DATA>
       <ID>1</ID>
       <TYPE>Type1</TYPE>
     </DATA>
     <DATA>
       <ID>2</ID>
       <TYPE>Type2</TYPE>
     </DATA>
   </DATAS>
   <DATA reference="/ROOT/DATAS/DATA[1]/ID" />
</ROOT>

In my XSLT, I need to be able to acquire the /ROOT/DATA/@reference
string and then using some type of evaluation extension, I need to be
able to obtain the value pointed to by the XPATH of this attribute.
Therefore, the select result would yield '1'.

I've read I could use XALAN-J or EXSLT; however I am unclear how to:

1. Install these extensions in my web application
2. Reference them for use in my XSLT.

Can someone give me a quick and dirty step-by-step of how to do this?

Saxon is an XSLT 2.0 processor implemented in Java so you can use that instead of Xalan-J. In its commercial versions (or in the 9.1 release) it has an extension function
http://www.saxonica.com/documentation/extensions/functions/evaluate-node.xml
you can use e.g.

  <xsl:template match="/ROOT/DATA">
    <xsl:variable name="ref" select="saxon:evaluate-node(@reference)"
      xmlns:saxon="http://saxon.sf.net/"/>
  </xsl:template>


--

        Martin Honnen
        http://msmvps.com/blogs/martin_honnen/

--~------------------------------------------------------------------
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>