Support of extensions

Mar 30, 2011 at 8:29 PM


For proxy generation for Windows Communication Foundation I prefer to make use of the DataContractSerializer. This serializer only support a subset for which I made a schematron rule set which check if a xsd follows this subset. Schematron makes use of xsl transformations which at the end give you a list of failed asserts based on the tested xsd. The failed asserts (placed in one xml file) contain Xpath locations to the "wrong" xsd elements. I wanted to have a visualizer which directly validates the xsd with this "schematron rule stylesheet" and has the option to select an failed assert which marks the xsd element in the xml viewer.

Yesterday I found the XML Explorer project on this codeplex. It was quite easy to add another dock panel which shows the schematron validation results. The only thing is that the logic of this validator is implemented in the TabbedXmlExplorerWindow. I personally think that this class has to much responsibilities. Are you thinking about implementing the application with an MVVM / MVP pattern? And did you already though about the option to make the application extensible so that for example the schematron validator could be implemented as a plugin?

Keep up the good work.

Best regards,

Johan de Koning

Apr 5, 2011 at 11:43 PM


Schematron sounds interesting, I'll have to check it out.  I definitely agree that too much functionality is implemented in TabbedXmlExplorerWindow.  It's overdue for a major refactor.  I've been thinking about reworking some of the UI, and have also considered using MEF for plugin/extensibility.  My biggest obstacle has been spare time to dedicate to XML Explorer.

Thanks for the feedback, I'll keep you posted.