XSLT Stylesheet Component Documentation Support

Oxygen XML Editor plugin offers built-in support for documenting XSLT stylesheets. If the expanded QName of the element has a non-null namespace URI, the xsl:stylesheet element may contain any element not from the XSLT namespace. Such elements are referenced as user-defined data elements. Such elements can contain the documentation for the stylesheet and its elements (top-level elements whose names are in the XSLT namespace). Oxygen XML Editor plugin offers its own XML schema that defines such documentation elements. The schema is named stylesheet_documentation.xsd and can be found in [OXYGEN_INSTALL_DIR]/frameworks/stylesheet_documentation. The user can also specify a custom schema in XSL Content Completion options.

When content completion is invoked inside an XSLT editor by pressing Ctrl + Space (Command + Space on OS X), it offers elements from the XSLT documentation schema (either the built-in one or one specified by user).

In Text mode, to add documentation blocks while editing use the Add component documentation action available in the contextual menu.

In Author mode, the following stylesheet documentation actions are available in the contextual menu, Component Documentation submenu:

  • Add component documentation - Adds documentation blocks for the component at cursor position.
  • Paragraph - Inserts a new documentation paragraph.
  • Bold - Makes the selected documentation text bold.
  • Italic - Makes the selected documentation text italic.
  • List - Inserts a new list.
  • List Item - Inserts a list item.
  • Reference - Inserts a documentation reference.

If the cursor is positioned inside the xsl:stylesheet element context, documentation blocks are generated for all XSLT elements. If the cursor is positioned inside a specific XSLT element (such as a template or function), a documentation block is generated for that element only.

Example of a documentation block using Oxygen XML Editor plugin built-in schema

<xd:doc>
  <xd:desc>
    <xd:p>Search inside parameter <xd:i>string</xd:i> 
        for the last occurrence of parameter
    <xd:i>searched</xd:i>. The substring starting from the 0 position
        to the identified last occurrence will be returned. 
    <xd:ref name="f:substring-after-last" type="function" 
        xmlns:f="http://www.oxygenxml.com/doc/xsl/functions">See also
    </xd:ref>
    </xd:p>
  </xd:desc>
  <xd:param name="string">
    <xd:p>String to be analyzed</xd:p>
    </xd:param>
  <xd:param name="searched">
    <xd:p>Marker string. Its last occurrence will be identified</xd:p>
    </xd:param>
  <xd:return>
    <xd:p>A substring starting from the beginning of <xd:i>string</xd:i>
        to the last occurrence of <xd:i>searched</xd:i>. 
        If no occurrence is found an empty string will be returned.
    </xd:p>
  </xd:return>
</xd:doc>

Was this helpful?