A while back, I wrote a utility to pull in an XML schema and spit out a graphviz “.dot” file. I got permission from the boss to put it on sourceforge and in the publc domain.
Just recently, I got some mail from someone wanting to use it. After a message back and forth, today I got this:
What an hoped for, but unexpected pleasure to hear from you!!
When I sent the original e-mail I had next to 0 hope of hearing from you. e-mail addresses die, people lose interest, what not. So to see your replies is a really, really nice way to start my day.
I’ve ended up hacking Grapher.java and adding the URIs that I wanted to ignore. I tried using ant and it wanted to source zip files from the Internet that weren’t there any more, so I did it the brute force way. I found jars and zips that would satisfy the compiler, updated a Makefile and iterated in that loop for a while. Finally got the thing to compile and execute. Life is good.
I understand your desire when you created the program. It is much easier for me to grasp something if I can see a picture of whatever it is. So I wanted to see how the ~20 xsd files that I had to document were related. I wanted a picture. Your software answered my needs.
After changing Graph.java to exclude the things I wasn’t interested in (because they were outside our control), I was able to use the dot images to point out specific areas where the xsd files could be improved and clarified. There were things like circular includes, unused nodes, incorrectly annotated nodes and miscellaneous other things. Nothing that would prevent the xsds from working, but things that can drive people crazy.
Your software/tool/visualizer solved a presentation and interpretation problem for me.
Thank you for creating it and putting it in the public domain.
Awesome, just awesome.
So, I blackmailed him just now – asking him if he could add the things that he needed to do to compile it back into the sourceforge project :) .
Good stuff. Kudos to the graphviz project, which does the hard part of the job.