title: SQL based storage vs SVN
body: <p>My team is developing a new application (C#, .Net 4) that involves a repository for shared users content. We need to decide where to store it. The requirements are as follows:  </p>
  
  <ol>
  <li>Share files among users.  </li>
  <li>Support versions.  </li>
  <li>Enable search by tags and support further queries such as "all the files created by people from group X"  </li>
  <li>Different views for different people (team X sees its own content and nobody else can see theirs).</li>
  </ol>
  
  <p>I'm not sure what's best, so:  </p>
  
  <ul>
  <li>can I search over SVN using tags (not SVN tags of course, more like stackoverflow's tags)?  </li>
  <li>Is there any sense in thinking of duplication - both SVN and SQL - the content?  </li>
  <li>Any other suggestions?</li>
  </ul>
  
  <p><strong>Edit</strong><br>
  The application enables users to write validation tests that they later execute. Those tests are shared among many groups on different sites. We need versioning for the regular reasons - undo changes, sudden deletions etc. This calls for SVN.<br>
  The thing is, we also want to add the option to find all the tests that are tagged "urgent" and were executed by now, for tracking purposes.  </p>
  
  <p>I hope I made myself more clear now :)</p>
  
  <p><strong>Edit II</strong><br>
  I ran into SvnQuery and it looks good, but does it have an API I can use? I'd rather use their mechanism with my own GUI.  </p>
  
  <p><strong>EDIT III</strong><br>
  My colleague strongly supports using only a database and forget file based storage. He claims it is better for persistence (which is needed - a test is more than the list of commands to execute). I'd appreciate inputs on this issue, as I think it should be possible to do it this way or the other.</p>
  
  <p>Thanks!</p>