ho una query del tipo:
SELECT autori.*, opere.* FROM autori INNER JOIN opere ON autori.IDAutore = opere.Autore

(potete immaginarvi com'è strutturato comq: AUTORI(IDAutore-PK-, Nome, Cognome, Nascita) - OPERE(IDOpera, Titolo, Autore -FK-))

bene, esportando il dataset in un file xml ottengo una struttura del tipo:

codice:
<Autori>
  <Autore>
    <IDAutore>3</IDAutore>
    <Nome>Italo     </Nome>
    <Cognome>Calvino   </Cognome>
    <Nascita>1923-03-25T00:00:00.0000000+01:00</Nascita>
    <IDOpera>1</IDOpera>
    <Titolo>Il visconte dimezzato</Titolo>
    <Autore>3</Autore>
  </Autore>
  <Autore>
    <IDAutore>3</IDAutore>
    <Nome>Italo     </Nome>
    <Cognome>Calvino   </Cognome>
    <Nascita>1923-03-25T00:00:00.0000000+01:00</Nascita>
    <IDOpera>2</IDOpera>
    <Titolo>Il barone rampante</Titolo>
    <Autore>3</Autore>
  </Autore>
  <Autore>
    <IDAutore>3</IDAutore>
    <Nome>Italo     </Nome>
    <Cognome>Calvino   </Cognome>
    <Nascita>1923-03-25T00:00:00.0000000+01:00</Nascita>
    <IDOpera>3</IDOpera>
    <Titolo>Cavaliere inesistente</Titolo>
    <Autore>3</Autore>
  </Autore>
</Autori>
io vorrei invece che in caso ad un autore corrispondessero + opere (in questo caso 3), l'elemento <Autore> non fosse ripetuto 3 volte bensì 1, e il file XML avesse un struttura di questo tipo:

codice:
<Autori>
  <Autore>
    <IDAutore>3</IDAutore>
    <Nome>Italo     </Nome>
    <Cognome>Calvino   </Cognome>
    <Nascita>1923-03-25T00:00:00.0000000+01:00</Nascita>
    <IDOpera>1</IDOpera>
    <Titolo>Il visconte dimezzato</Titolo>
    <Autore>3</Autore>
    <Opere>
       <Opera>
          <IDOpera>1</IDOpera>
          <Titolo>Il visconte dimezzato</Titolo> 
       </Opera> 
       <Opera>  
          <IDOpera>2</IDOpera>
          <Titolo>Il barone rampante</Titolo>
       </Opera> 
       <Opera>  
          <IDOpera>3</IDOpera>
          <Titolo>Cavaliere inesistente</Titolo>
       </Opera> 
    </Opere>
  </Autore>
</Autori>
spero di essere stato abbastanza comprensibile... :master: