I am currently working on a paper based on the topic of creating a source-to-source compiler from an existing application to C#. The existing application is actually just based on XML files, which define certain logic and are interpreted by another program.
From my point of view I tend to say that I am working on a source-to-source compiler, since I have programming language ( even if it's based on XML) on the input and a programming language on the output of my translation.
Now since i have read about the basics of compiler design and knowing techniques like XSLT, i am unsure about the actual differences between transforming and compiling.
I assume that the XSLT processor will also parse the given XML and tries to analyze its content on a semantic basis. As a result the processor outputs another XML file. And that's actually what a theoretical compiler does: Reading a program of a certain input language and output it in another output language.
Now my question is, if XSL-Transformation is a type of compiling or maybe vice versa. Or is there another (theoretically proved) link between both of these processes?
Or even more specific: Is there a term for the "translation" I deal with (XML-Description of a program to a high level language)?