Azure Logic Apps uses XSLT for XML transformations. While the Azure Data Mapper allows basic testing, it lacks true debugging capabilities β no message capture, no variable inspection, no execution tracing.
XSLT's Debug Tool: xsl:message
XSLT provides xsl:message for diagnostic logging:
<xsl:message>Processing started</xsl:message>
<xsl:message select="'Found ' || count(//book) || ' books'" />
Messages output to a separate stream without affecting transformation results. However, different processors handle it differently:
.NET (XslCompiledTransform)
transform.XsltMessageEncountered += (sender, e) => {
Console.WriteLine($"[XSLT] {e.Message}");
};
- XSLT 1.0 only
- Event-based capture
- Silent if no handler registered
π Microsoft Docs
Saxon (XSLT 2.0/3.0)
transformer.setMessageListener((content, terminate, location) -> {
System.out.println("[XSLT] " + content);
});
- XSLT 2.0/3.0 support
- Listener interface
- Includes location info
π Saxonica Docs
| Feature | .NET | Saxon |
|---|---|---|
| XSLT Version | 1.0 | 2.0 / 3.0 |
| Location Info | β | β |
select Attribute |
β | β |
Existing Tools: Azure Data Mapper
Azure provides the Data Mapper for testing XSLT transformations:
π Logic Apps Data Mapper - Compiling and Testing
What it does:
- Run transformations locally
- View output results
What it doesn't do:
-
No
xsl:messagecapture β Can't view debug logs - No variable inspection β Can't see intermediate values
- No execution tracing β Can't track template calls or logic flow
- Limited error context β Basic error messages without detailed diagnostics
The Debugging Gap
What's still missing for effective XSLT debugging:
-
Message capture β Can't view
xsl:messageoutput - Variable inspection β Can't see values during execution
- Execution tracing β Can't understand transformation flow
- Rich error diagnostics β Need detailed context and line numbers
What's Needed
A proper XSLT debugger for Logic Apps should:
- Run transformations locally in VS Code
- Capture and display
xsl:messageoutput - Support both .NET and Saxon processors
- Provide fast edit-test cycles
- Show clear errors with line numbers
This is what the XSLT Debugger extension delivers β built on .NET with open-source Saxon to provide debugging capabilities for Logic Apps developers without additional licensing costs.
Top comments (0)
Some comments may only be visible to logged-in visitors. Sign in to view all comments.