Structured/XML Authoring Post #2: More XML power with FrameMaker 11- XSLT and XPath

Hello Framers,

Hope you are well. This is the second post in the structured/XML blog series on FrameMaker 11. Today, I will be discussing the support for additional XML tools that we have provided in the new release. In the XML code view, you will find options for XPath and XSLT. In this post, you will find a quick overview of these popular XML tools, followed by details on the functionality provided on these in FrameMaker 11.

XSLT

XSLT is a World Wide Web Consortium (W3C) standard and is part of the XSL (EXtensible Stylesheet Language) family of languages, which also includes XPath and XSL-FO. XSL is used to style XML documents and also used to transform XML content (e.g. to HTML, which can then be viewed in a browser or to another XML). XSLT uses XPath expressions to find and match elements which then can be transformed. In addition, XSLT can be used as an automation tool.

XSLT 2.0 support in FrameMaker 11

In FrameMaker 11, we have provided XSLT 2.0 support. You can now run XSLT from within FrameMaker 11 interface (you have to be in the XML code view to access the XSLT functionality). You can run XSLT through the XSLT toolbar by simply browsing to an XSL or through the advanced run option, through which you can define the scope for the run (i.e. whether you want the XSLT to run on the current file, all open files or on a folder containing XML files). In addition, you can also choose a pre-defined transformation when running your XSLT.

Define and store XSL transformations

Capture3Since you may want to run the same transformation on different XML files, we are letting you create and store transformations. In a transformation, you can specify which XSL file to use, the XSL processor, where do you want the output to be saved and which program you want to open the output file in. In addition, you can configure xsl parameters through Stylesheet Parameters dialog. See the screenshot on the right to see how to create and store new transformations.

Choose your own XSLT processor

FrameMaker 11 ships with two popular XSL processors – Saxon and Xalan-j. These processors are configured and are available to you for choosing when you are creating your transformation. However, you can also configure your own processor as long as it is JAXP compliant processor.

Different types of transformation

capture7You can store your transformations in three different types of files. You can access and manage these transformations using with the XSLT > Manage Transformations menu.

Advanced run dialog

The advanced run box has more options for the user when running the XSLT. It lets you define the scope of running the transformation and also, choose an XSL file or a pre-defined transformation to run the XSLT with.

Please watch the videos below see how to run XSL transformations in FrameMaker 11.

FrameMaker 11: XSLT 2.0 support

FrameMaker 11: Managing XSL transformations

XPath

As mentioned above, XPath is also part of the XSL family of languages and is used to navigate XML documents through elements and attributes. With XPath, you can write expressions to look for elements which meet certain conditions (e.g. find all books where the style attribute matches a certain value). XPath expressions are used when writing XSL transformations to navigate and match certain elements.

XPath 2.0 support in FrameMaker 11

In FrameMaker 11, you can run XPath expressions through 2 ways. You have to be in the XML code view to access the XPath functionality.

See the video below to see XPath in action in FrameMaker 11:

Additional Information on XPATH

Here are some additional resources on XSLT and XPath for you to learn more.

Hopefully, you find this blog post useful. For more information on FrameMaker 11/TCS4/RH10, please visit the “Product-opedia” page which lists several useful resources for you.

Until the next post then …

Best Regards,
Kapil Verma

Sr. Product Manager, FrameMaker and FrameMaker Publishing Server