kousaeng: Umformung xml über XSLT

Beitrag lesen

Du hattest recht :) und ich versuchs nochmal:

Hallo Leute,

ich möchte eine ähnliche wie die folgenden xml-Struktur

Das Ausgangsdokument sieht im Prinzip so aus:

<wuzel>
            <kunde id="234" name="max" nachname="mustermann"/>
                          <daten rechnungsanschrift="bla" ort="blubb"/>
                          <sonstiges haustier="hund" lieblingsgericht="reis"/>
            </kunde>
            <kunde id="324" name="maxi" nachname="musterfrau"/>
                          <daten rechnungsanschrift="bla" ort="bla"/>
                          <sonstiges haustier="katze" lieblingsgericht="mais"/>
            </kunde>
            <kunde id="234" name="max" nachname="mustermann"/>
                          <daten lieferungsanschrift="bla" ort="bla"/>
                          <sonstiges haustier="katze" lieblingsgericht="kartoffeln"/>
            </kunde>
                .
                .
                .
</wuzel>


>   
>   
> mittels xslt in eine andere xml Struktur die dann so aussehen sollte:  

Das Zieldokument sollte so aussehen:  

>   
> ~~~xml
  

> <wuzel>  
>             <kunde>  
>                         <id>234</id>  
>                         <name>max</name>  
>                         <nachname>mustermann</nachname>  
>                         <daten>  
>                                     <lieferungsanschrift>bla</lieferungsanschrift>  
>                                     <ort>blubb</ort>  
>                          </daten>  
>                          <daten>  
>                                     <rechnungsanschrift>bla</rechnungsanschrift>  
>                                     <ort>blubb</ort>  
>                          </daten>  
>                          <sonstiges>  
>                                     <haustier>hund</haustier>  
>                                     <lieblingsgericht>reis</lieblingsgericht/>  
>                          </sonstiges>  
>                          <sonstiges>  
>                                     <haustier>katze</haustier>  
>                                     <lieblingsgericht>reis</lieblingsgericht/>  
>                          </sonstiges>  
>             </kunde>  
>             <kunde>  
>                         <id>234</id>  
>                         <name>max</name>  
>                         <nachname>mustermann</nachname>  
>                         <daten>  
>                                     <lieferungsanschrift>bla</lieferungsanschrift>  
>                                     <ort>blubb</ort>  
>                          </daten>  
>                          <sonstiges>  
>                                     <haustier>hund</haustier>  
>                                     <lieblingsgericht>reis</lieblingsgericht/>  
>                          </sonstiges>  
>             </kunde>  
>                 .  
>                 .  
>                 .  
> </wuzel>  
> 

umformen.
Das erstellen der Elemente aus den Atributten ist kein Problem, jedoch bereitet mir der 3. Kunde, der die gleichen Daten wie der 1. mehr Probleme, da ich eine Möglichkeit brauche um die diese Kunden in den xml-Dokument zu finden und danach auch, wie im 2. xml-Dokument zu sehen, zusammen zu führen, so dass am Schluss nur 1 Kunden-Knote pro Kunde existiert, der alle Kinder zusamemngefasst enthält.
Ich hoffe ich konnte mein Problem darstellen und das jemand mir helfen kann.

Also im Grunde möchte ich aus den Ausgangsdokument das Zieldokument erzeugen und ich habe im Moment das Problem, das ich im Ausgangsdokument den Kunde mit Namen Max Mustermann doppelt habe, diese haben jedoch unterschiedliche Kinderelemente (Siehe Ausgangsdokument). Und ich möchte im Zieldokument die Elemente Kunde so zusammenführen, so dass ich nur noch ein Kunde mit Namen Max Mustermann habe. Im Element Kunde im Zieldokument sollen jedoch alle Kinderelemente aus den Ausgangsdokument enthalten sein (Siehe Zieldokument).
Genau hier ist nun mein Problem denn ich finde keine Lösung wie ich die doppelten Elemente zusammen führen kann.
Ich hoffe ich konnte nun meine Problematik besser beschreiben!