title: Limiting or restricting the value used for a xsi:type attribute
body: <p>I have the following piece of xml:</p>
  
  <pre><code>&lt;MyField&gt;
      &lt;FieldName&gt;Blah&lt;/FieldName&gt;
      &lt;ValueFormatting xsi:type="DateFormatter"&gt;
          &lt;Format&gt;dd/MM/yy&lt;/Format&gt;
      &lt;/ValueFormatting&gt;
  &lt;/MyField&gt;
  </code></pre>
  
  <p>In this XSD, how can I limit or restrict the values that are supplied for the <code>xsi:type</code> attribute on the ValueFormatting element, as I have a list of four or five types that are valid (i.e. TextFormatter, NumberFormatter, DateFormatter, etc.)?</p>
  
  <p>Also, in my XSD, how can I enforce that the attribute name is "xsi:type"? Is it correct that I could probably get away with having an attribute name of "type" instead, but then I could be risking a collision if "type" is declared in other namespaces?</p>
  
  <p>Thanks!</p>