I was recently discussing the road map for new features related to semi-structured data with Christian Kleinerman, the Microsoft Program Manager for XML and several other features inside of SQL Server.

He's been soliciting opinions about future directions for SQL Server, in particular, defining and querying semi-structured data. XML inside and outside the database engine is part of this as well as Microsoft's new Entity Data Model at http://www.microsoft.com/downloads/details.aspx?familyid=BA67E85E-38F6-4943-8731-B8618472E899&displaylang=en .

There's a specific topic where he'd like to get some feedback from you.  (And please recognize that this is only a solicitation for your opinion. It's not a road map or an agreement for future development of any kind.)  So - ow important is it to support the higher level abstractions inside the database engine? 

What this means for semi-structured data, is chosing between two main alternatives:

1) Support inside the database engine using some core building blocks (e.g. sparse columns, sparse indices, etc) and enable the higher level concepts outside the database engine. (BTW, this is largely the approach followed by EDM today).

2) Implement the high level concepts inside the database engine (e.g. make concepts like objects available in TSQL).

So - do you any preferences (and if so why) or thoughts about the possible approaches?  Any and all feedback on this topic would be appreciated!

Cheers,

-Kevin