tags:

views:

300

answers:

6

I'm trying to build a tool that can compare two WSDLs and their associated xsds to be able to automatically detect changes in a web service contract. Are there any tools out there that already do that and if not how should i approach this. Thanks for any pointers

+1  A: 

I would use svcutil.exe to create proxy classes for the two WSDL files, then use your favorite file compare tool to compare the proxy classes.

John Saunders
A: 

Use Beyond compare tool. Just open the wsdls using this tool.

SARAVAN
+3  A: 

WSDLs are XML Documents and you can use Microsoft's XML Diff API to find out the difference.

http://msdn.microsoft.com/en-gb/library/aa302294.aspx

Hasan Khan
A: 

i like "Compare It" for file compare software.

Ozan BAYRAM
A: 

John, did you get an answer in the meantime? Or did you develop a tool? We also need a backwards compatibility checker for WSDLs and I can't find one.

Peter Schaefer
I started on a tool based on XML. Load the 2 definitions as XML files and compare them node by node. I gave up when the stuff got a little complicated by having to look up external xsd references and so on and my time was scarce. Right now we check compatibility by regenerating the proxy classes (VS 2008) and see if everything builds ok.
AZ
+2  A: 

Membrane Service Registry has a build in WSDL diff tool that can automatically detect changes in WSDL documents. You can use the WSDL Version Comparator also online.

alt text Image: WSDL Version History (Screenshot from the open source Membrane Registry)

baranco