Note: For those looking for something useful, you won't find it in this post.
For a little Saturday fun, I set out to transform Coldfusion code using XSLT. It didn't take long before I ran into some issues.
The first problem I ran into was that most Coldfusion code doesn't have a root element (not to mention it isn't well formed XML in any sense). You might be thinking "Well CFCs have a root node" and you'd be right. So I tried to transform a really simple CFC and I was somewhat successful.
The only caveat is that the use of a few almost all tags won't work. For example, <cfreturn foo /> isn't proper XML and Saxon complains. So at this point, this is pretty much a worthless exercise (see note above). Either way I ended up with something that did work (in the functional sense, not the useful sense). See the code below if you're interested in what the XSLT looks like.