When debugging XSLT, line breakpoints are supported - so, if problems are occurring at a particular line in your program, you can set a breakpoint at that line, and then run your program. Execution stops at the breakpoint before the instruction at that line is executed.
When a breakpoint is encountered, execution suspends at the breakpoint before the line is executed, at which point you can see the stack for the thread, check the contents of variables, and examine the transformation output that has been generated so far. You can then step over (execute) and see what effect the instruction has on the transformation output.
With the debugger, setting breakpoints is easily accomplished by click actions or pop-up menus in the source editor. Once set, you can edit breakpoints, and you can disable them so that they do not suspend execution and then, later, enable them again.