WinFS: Query not Search

Recently, I've seen a number of stories which compare WinFS (the future windows file system) to desktop search.  This is understandable, given that when we first showed it off at the 2003 PDC, we demonstrated scenarios that, today, can be accomplished using desktop search tools.  WinFS, however, actually provides for relational database queries, which are very different from traditional full text search.

Search programs look for text strings in documents, and possibly, in a small number of metadata fields associated with those documents.  If I want to find all e-mail messages from "David" for example, I can search for that string.  This will return all documents that refer to "David", are from "David", etc.  If I am more sophisticated, I can search for "from:David" (your syntax may vary....) which will return just those documents where the "from" metadata field contains "David".  So, I have some, limited, ability to narrow down my results.

With WinFS, items have schemas associated with them. These schemas can be used to issue more powerful queries.  For example, I could retrieve all e-mail messages from people who live in the state of Maryland.  This is because the WinFS schema for "people" will include many attributes, including "state", which can be queried.  In addition, attributes in WinFS schemas have data types associated with them.  They aren't just strings.  This means, for example, that if I query on a date attribute, I can query on a range of dates, not just a single value.  So, I can find all e-mail messages from all of my friends who live in Maryland who had a birthday within the past 3 months.

As this hopefully shows, search paints with a broad brush, while query enables you to obtain very specific results. 

There will be a lot of other cool features in WinFS as well.  Although this is a future product with no release date, beta 1 is available to MSDN subscribers, so you can start experimenting, today, with ideas for the new types of applications that this technology will allow.  For more information and some interesting demos, see the Channel 9 video at:

https://channel9.msdn.com/Showpost.aspx?postid=106356

-David