title: Optional element or boolean attribute
body: <p>I'm in the process of defining an XML schema that will contain search query information that will be (re)imported into Solr for processing. One of the aspects that I want to save for the results of the query is whether or not they were visited and if so how long. Now I'm wondering how best to define this data in my structure, I can either use an attribute for the 'result' element or I can add an optional child element to hold all the information on a click.</p>
  
  <p>With an attribute:</p>
  
  <pre><code>&lt;result index="1" clicked="true"&gt;
      &lt;timeViewed&gt;45.21&lt;/timeViewed&gt;
      &lt;title&gt;Alpha&lt;/title&gt;
  &lt;/result&gt;
  &lt;result index="2" clicked="false"&gt;
      &lt;title&gt;Beta&lt;/title&gt;
  &lt;/result&gt;
  </code></pre>
  
  <p>With a child element:</p>
  
  <pre><code>&lt;result index="1"&gt;
      &lt;clickInfo timeViewed="45.21"/&gt;
      &lt;title&gt;Alpha&lt;/title&gt;
  &lt;/result&gt;
  &lt;result index="2"&gt;
      &lt;title&gt;Beta&lt;/title&gt;
  &lt;/result&gt;
  </code></pre>
  
  <p>Finally, in accordance with <a href="https://stackoverflow.com/questions/1260254/optional-or-boolean-elements-to-specify-characteristics-in-xml-schema">this question</a>:</p>
  
  <pre><code>&lt;result index="1"&gt;
      &lt;clicked timeViewed="45.21"&gt;true&lt;/clicked&gt;
      &lt;title&gt;Alpha&lt;/title&gt;
  &lt;/result&gt;
  &lt;result index="2"&gt;
      &lt;clicked&gt;false&lt;/clicked&gt;
      &lt;title&gt;Beta&lt;/title&gt;
  &lt;/result&gt;
  </code></pre>
  
  <p>As I'll be indexing large volumes of these XML files into Solr and possibly MongoDB I'm wondering what the most efficient structure would be. Will these differences even have a noticeable effect on the transform process prior to loading the information into the database or index?</p>