title: Table VS xml / json / yaml - table requires less storage if data is any related? more efficient than compression
body: <p>To add a field to a XML object it takes the length of the fieldname +
  3 characters (or 7 when nested) and for JSON  4 (or 6 when nested)</p>
  
  <pre><code>&lt;xml&gt;xml&lt;/xml&gt;       xml="xml"    
  {"json":json,}       "json": json,       
  </code></pre>
  
  <p>Assume the average is 4 and fieldname average is 11 - to justify the use of XML/JSON over a table in use of storage, each field must in average only appear in less than 1/15 of objects, in other words there must be ~15 times more different fields within the whole related group of objects, than one object has in average.
  (Yet a table may very well allows faster computation still when this ration is higher and its bigger in storage) I have not yet seen a use of XML/JSON with a very high ratio.</p>
  
  <p><strong>Aren't most real of XML/JSON forced and inefficient? 
  Shouldn't related data be stored and queried in relations (tables)?
  What am i missing?</strong></p>
  
  <p><em>Example conversion XML to table</em></p>
  
  <p>Object1</p>
  
  <pre><code>&lt;aaaaahlongfieldname&gt;1&lt;/aaaaahlongfieldname&gt;
  &lt;b&gt;B
    &lt;c&gt;C&lt;/c&gt; 
  &lt;/b&gt;
  </code></pre>
  
  <p>Object2</p>
  
  <pre><code>&lt;aaaaahlongfieldname&gt;2&lt;/aaaaahlongfieldname&gt;    
  &lt;b&gt;&lt;c&gt;&lt;d&gt;D&lt;/d&gt;&lt;/c&gt;&lt;/b&gt;
  &lt;ba&gt;BA&lt;/ba&gt;
  &lt;ba "xyz~"&gt;BA&lt;/ba&gt;
  &lt;c&gt;C&lt;/c&gt; 
  </code></pre>
  
  <p>Both converted to a csv like table (delimiter declaration,head,line1,line2)</p>
  
  <pre><code>delimiter=,   
  aaaaahlongfieldname,b,b/c,b/c/d,ba,ba-xyz~,c
  ,B,C,,,,
  ,,,D,BA,BA,C
  </code></pre>
  
  <ul>
  <li><p>/ and - symbols in values will need to be escaped only in the head </p></li>
  <li><p>but ,,,, <em>could also be</em> \4   <em>escaped number of delimiters in a row (when an escape symbol or string is declared as well - worth it at large numbers of empty fields</em> )   and  <em>since escape character and delimiter will need to be escaped when they appear in values, they could automatically be declared rare symbols that usually hardly appear</em> </p>
  
  <pre><code>escape=~   
  delimiter=°  
  aaaaahlongfieldname°b°b/c°b/c/d°ba°ba-xyz~~°c
  °B°C~4
  °°°D°BA°BA°C
  </code></pre></li>
  </ul>
  
  <p>Validation/additional info:  XML/json misses all empty fields so missing "fields in "rows can not be noticed.  A line of a table is only valid when the number of fields is correct and (faulty) lines must be noticed. but through columns having different datatypes missing delimiters could usually easily be repaired.</p>
  
  <p>Edit: 
  On readablity/editablity: Good thing of course, the first time one read xml and json it maybe was selfexplanatory having read html and js already but that's all? - most of the time it is machines reading it and sometimes developers, both of which may not be entertained by the verbosity</p>