Question

I have a rather complicated XSLT mapping between two XSD files for doing an export of our schema to another organization. We also need to import data from that organization back into our system. Is there any way to just swap the flow for the import XSLT, or do I need to redo a completely new mapping?

Was it helpful?

Solution 2

Processes written in Turing-complete languages are not, in general, guaranteed reversible; XSLT is no exception. It's an interesting problem, and there may be some literature on it, but I doubt that there are any tools intended for practical use.

If your mapping is in fact reversible, and your XSLT is reasonably clear, your second stylesheet will be somewhat easier to write than the first one. That's something, at least.

OTHER TIPS

An intersting question... and C. M. Sperberg-McQuee has answered it in full. I just want to stress what deep things it actually touches.

In fact, there is a constant flow of similar questions, which in one or another way come down to something like this:

I have some computational task and I know, there can be a program (script, stylesheet etc.) that does that task.

Now, I am looking for a software (or some feature of the software I use), to which I could feed some kind of description of my task, so that it would generate the program I need.

I wonder, why has nobody developed that software yet?

What's interesting is that the person effectively wants a software capable of doing something that only humans do: creative work.

Roger Penrose, a theoretical physicist, went further. He had some ideas why such things will never exist. Exactly, it concerns those very Turing-complete systems (capable to simulate a Turing machine).

The problem is that all what we can think as a computer is always a Turing-complete system (the so-called Church's thesis)...

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top