Visualizing WinFS Types

Hi, my name is Sanjay Nagamangalam and I am a PM in the WinFS API team. As I started writing my early WinFS apps, I wanted to quickly browse all the schema types. The docs were useful, but were not fast to scan through. I wanted to “see” a type in all its glory (e.g. its type hierarchy, methods, properties, other types it was related to, etc) so that I could program with WinFS types that were most relevant to my app/domain.

As my app grew in complexity, I found I needed to create a custom WinFS type because WinFS didn’t quite have a type I wanted. Sure enough, I ran into a slightly different problem this time: I wasn’t entirely sure what my base WinFS type should be. I ended up looking at the client dlls for potential WinFS base types in Reflector .NET and VS 2005 to decide which type had methods/properties that I could “reuse” in my custom type. It took a while to understand my options and make the right choice.

Based on this experience, I wrote a little tool called the WinFS Type Browser to help me with these issues I encountered while building my app. The idea was to write a tool to help me visualize WinFS schemas – as opposed to StoreSpy that shows me WinFS data. My goal was to help reduce the time it takes to write WinFS apps by letting developers visualize WinFS schemas in a familiar VS-style GUI. My teammates began using the WinFS Type Browser while writing their apps and gave me plenty of feedback that I fed right back into the tool. The WinFS Type Browser works for schemas that ship with WinFS as well as your very own custom schemas. The tool is available in the “unsupported tools” directory on the WinFS Beta 1 CD and includes a simple help file to get you started. Please take it out for a test drive and let us know if you find it useful.

Author: Sanjay Nagamangalam