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.

XSLT Coldfusion

Very Simple CFC

Transformed Output