XSLT Stylesheet Component Documentation Support
Oxygen XML Developer 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 Developer 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.
Content Completion
When content completion is invoked inside an XSLT editor by pressing Ctrl + Space, it offers elements from the XSLT documentation schema (either the built-in one or one specified by user).
Adding Documentation Blocks
In Text mode, to add documentation blocks, press Ctrl + Alt + D (Command + Option + D on macOS) or select Add component documentation from the contextual menu.
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.
<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>
XSLT Documentation Links
Oxygen XML Developer includes support for links inside XSLT documentation blocks. Using a
construct like <xd:a docid="user-defined-id">TEXT</xd:a>
will cause
the browser to scroll to the particular anchor (the defined ID) in the current document.
Using a construct like <xd:a
href="http://www.my-web-site">TEXT</xd:a>
or <xd:a
href="local-file-path/filename">TEXT</xd:a>
will open the referenced link in a
new tab.
Example: Documentation Links
<xd:doc xmlns:xd="http://www.oxygenxml.com/ns/doc/xsl" id="thisDoc">
<xd:desc>
<xd:p>
<xd:ref name="test" type="variable">My test variable</xd:ref>
<xd:a docid="thisDoc">Link to this documentation, see
the the id="thisDoc" above</xd:a>
<xd:a docid="otherDocID" href="included.xsl">Link to
otherDocID defined in included.xsl</xd:a>
</xd:p>
</xd:desc>
</xd:doc>