Link to home
Start Free TrialLog in
Avatar of mikha
mikhaFlag for United States of America

asked on

XSLT processing

I am getting lot of XML files from different clients with similar data structured differently or say , all of them follow different schemas but the actual data is same.

I want to develop a website, where clients can upload their XML files and I can extract information that I need from those XML files for processing client's request.

I want to make use of the XSLT transformation, where I can write XSL stylesheets and transform different schemas (coming from clients) into my own schema.

I am a C# developer and I know .NET has its XSLT processor. Has anyone done something like this?  where should I store the XSL files on the server and how do we apply those XSL stylesheets to the XML, once clients uploads them.

Also, I have heard of other XSLT processors, like Saxon. If I want to go with something other than the .NET XSLT processor. how should I go about it ?
ASKER CERTIFIED SOLUTION
Avatar of Gertone (Geert Bormans)
Gertone (Geert Bormans)
Flag of Belgium image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
as to where to store the XSLTs
preferably in a non public location, the ASP will find them
Avatar of mikha

ASKER

@Geert Bormans - Thank you so much. this was really helpful.

I did some research myself and found few articles regarding this. At first, I thought , we had to buy third party XSLT processors and install it into our web servers to use it, but it looks like I can add Saxon api library from Nuget package manager in visual studio , so that I can use it with my C# application. I am going to try it myself.

Also, I am assuming , when you say ".Net port from saxon" , you mean saxon api for .NET.  However I didn't see any good article with C# example. but if you know of a book or a tutorial , do let me know.

Thanks.
http://www.saxonica.com/documentation/index.html#!using-xsl/embedding

Saxon.Api (.net) indeed
Saxon is developed in Java. The .net api is a port, sorry for being confusing about it
just add the .dll in your packet manager and
using Saxon.Api

Open in new window

is all you need

For samples on invoking saxon
http://www.saxonica.com/documentation/index.html#!samples

For learning XSLT
https://www.bookdepository.com/Beginning-XSLT-2-0-Jeni-Tennison/9781590593240
https://www.bookdepository.com/XSLT/9780596527211
The perfect reference
https://www.bookdepository.com/XSLT-2-0-and-XPath-2-0-Programmer-s-Reference/9780470192740
Avatar of mikha

ASKER

@Geert Bormans - thank you very much.