title: Is there a standard for XML multi-signature?
body: <p>I have checked the XML Signature Syntax and Processing on W3C website,
  however it says little about multi-signature.
  Is there a standard or rule to create multi-signature on one single xml file?
  Thank you</p>
  
  <p>Example:(Consider Only same-file referencing)</p>
  
  <p>Original xml</p>
  
  <pre><code>&lt;root&gt;
    &lt;item&gt;
      &lt;name&gt;Apple&lt;/name&gt;
      &lt;price&gt;100&lt;/price&gt;
    &lt;/item&gt;
  &lt;/root&gt;
  </code></pre>
  
  <p>First A signs it with an enveloped signature</p>
  
  <p>A Signed XML</p>
  
  <pre><code>&lt;root&gt;
    &lt;item&gt;
      &lt;name&gt;Apple&lt;/name&gt;
      &lt;price&gt;100&lt;/price&gt;
    &lt;/item&gt;
    &lt;Signature&gt;this is Signature signed by A with Ref URL=""&lt;/Signature&gt;
  &lt;/root&gt;
  </code></pre>
  
  <p>Now, B wants to sign the XML (containing A's signature)</p>
  
  <p>B Signed XML</p>
  
  <pre><code>&lt;root&gt;
    &lt;item&gt;
      &lt;name&gt;Apple&lt;/name&gt;
      &lt;price&gt;100&lt;/price&gt;
    &lt;/item&gt;
    &lt;Signature&gt;Signature A: this is Signature signed by A with Ref URL=""&lt;/Signature&gt;
    &lt;Signature&gt;Signature B: this is Signature signed by B with Ref URL=""&lt;/Signature&gt;
  &lt;/root&gt;
  </code></pre>
  
  <p>then when it comes to verifying, it becomes confusing...</p>
  
  <p>for Signature A, while verifying, it sees</p>
  
  <pre><code>&lt;root&gt;
    &lt;item&gt;
      &lt;name&gt;Apple&lt;/name&gt;
      &lt;price&gt;100&lt;/price&gt;
    &lt;/item&gt;
    &lt;Signature&gt;Signature B: this is Signature signed by B with Ref URL=""&lt;/Signature&gt;
  &lt;/root&gt;
  </code></pre>
  
  <p>but what it actually signed is</p>
  
  <pre><code>&lt;root&gt;
    &lt;item&gt;
      &lt;name&gt;Apple&lt;/name&gt;
      &lt;price&gt;100&lt;/price&gt;
    &lt;/item&gt;
  &lt;/root&gt;
  </code></pre>
  
  <p>(note that because of enveloped transform, one's signature node is removed while signing and verfying)
  The same problem might be solved by treating Signature node as root when doing enveloping signature.
  But if multiple references involved, it might become more complicated.</p>