Notes on software and the ideas behind it
Find the meaning
behind the code.
I’m Fred Yang. I write about software—how it works, why it behaves the way it does, and the ideas that make code easier to reason about.
Open the notebookWorking notes / 2026
Recently mapped
Architecture, reactivity, and the hidden relationships that shape frontend systems.
xslt
builtin template
<p>There is a built-in template rule to allow recursive processing to continue in the absence of a successful pattern match by an explicit template rule in the stylesheet. This template rule applies to both...
Follow the thread
xslt
XSLT Processing Model
Whe XSLT processor looks for a template, it searches the whole stylesheet, so it doesn't matter where the template is within that stylesheet. When the XSLT processor finds a matching template, it uses the...
Follow the thread
xslt
Node tree
<p>When XSLT processor read a xml document, it generates a node tree. The nodes can be one of the following.</p> <ul> <li>Element Nodes</li> <li>Attribute Nodes</li> <li>Text nodes</li> <li>Comment nodes</li> <li>Processing-instruction nodes</li> </ul> <p> Attribute...
Follow the thread
xslt
simplified style sheet vs tempaltes based style sheet
Hello World Example
Follow the thread
xslt
transform to table
<pre data-sub="prettyprint:_"> <xsl:template match="/"> <html> <body> <table> <tr> <xsl:for-each select ="*/*[1]/*"> <td> <xsl:value-of select="local-name()" /> </td> </xsl:for-each> </tr> <xsl:for-each select ="*/*"> <tr> <xsl:for-each select="./*"> <td> <xsl:value-of select="." /> </td> </xsl:for-each> </tr> </xsl:for-each> </table> </body>...
Follow the thread