[xquery-talk] Problems with combining elements

Florian Wendland florianwendland at freenet.de
Tue Aug 21 18:31:18 PDT 2007


Hi all,

i have a question concerning the combination and disjunction of my xml 
structure. You'll find the xml at the bottom.

The case:
I have a animal strcuture such as class, rank, family and species. In my 
xml, all the structural informations are redundant (you see Altweltaffe 
several time appear). I want the xml to look like this:

<root>
    <Class name="Säugetiere">
        <Rank name="Altweltaffe">
            <Family name="Meerkatzenartige">...</Family>
            <Family name="Schlankaffen">..</Family>
       </Rank>
        <Rank name="Altweltaffe">
            <Family name="Kapuzinerartige">...</Family>
            <Family name="Krallenaffen">..</Family>
        </Rank>
...
</root>

I've tried several hours and my brain is a little bit slowly at the 
time, so i hope, that someone can give me a hint, how to transform the 
origin "close-to-the-result"-structure into the result structure.

Thx very much
mfw


<Animals xmlns:xs="http://www.w3.org/2001/XMLSchema">
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Neuweltaffen" binomial="Platyrrhini" typeID="2">
         <Tierfamilie trivial="Kapuzinerartige" binomial="Cebidae" 
typeID="3">
            <Tierart trivial="Brauner Kapziner" binomial="Cebus 
nigrivittatus" typeID="4" id="16"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Altweltaffen" binomial="Catarrhini" typeID="2">
         <Tierfamilie trivial="Meerkatzenartige" binomial="Cercopithecus 
mitis" typeID="3">
            <Tierart trivial="Ceylon Hutaffe" binomial="Macaca sinica" 
typeID="4" id="20"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Altweltaffen" binomial="Catarrhini" typeID="2">
         <Tierfamilie trivial="Meerkatzenartige" binomial="Cercopithecus 
mitis" typeID="3">
            <Tierart trivial="Eulenkopfmeerkatze" 
binomial="Cercopithecus harnlyni" typeID="4" id="27"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Altweltaffen" binomial="NaN" typeID="2">
         <Tierfamilie trivial="Schlankaffen" binomial="NaN" typeID="3">
            <Tierart trivial="Haubenlangur" binomial="Presbytis 
cristatus pyrrhus" typeID="4" id="35"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Neuweltaffen" binomial="NaN" typeID="2">
         <Tierfamilie trivial="Krallenaffen" binomial="NaN" typeID="3">
            <Tierart trivial="Lisztäffchen" binomial="Saguinus ödipus" 
typeID="4" id="56"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Altweltaffen" binomial="NaN" typeID="2">
         <Tierfamilie trivial="Schlankaffen" binomial="NaN" typeID="3">
            <Tierart trivial="Mantelpavian" binomial="Papio hamadryas" 
typeID="4" id="62"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Halbaffen" binomial="NaN" typeID="2">
         <Tierfamilie trivial="Meerkatzenartige" binomial="NaN" typeID="3">
            <Tierart trivial="Mayotte-Maki" binomial="Lemur fulvus 
mayottensis" typeID="4" id="63"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Altweltaffen" binomial="Catarrhini" typeID="2">
         <Tierfamilie trivial="Meerkatzenartige" binomial="Cercopithecus 
mitis" typeID="3">
            <Tierart trivial="Mohrenmakak" binomial="Macaca Maura" 
typeID="4" id="66"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Nagetiere" binomial="Rodentia" typeID="2">
         <Tierfamilie trivial="Hoernchen" binomial="Sciuridae" typeID="3">
            <Tierart trivial="Prevost Schönhörnchen" 
binomial="Callusciurus prevostil" typeID="4" id="76"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Altweltaffen" binomial="NaN" typeID="2">
         <Tierfamilie trivial="Schlankaffen" binomial="NaN" typeID="3">
            <Tierart trivial="Rotgesichtsmakak" binomial="Macaca 
fuscata" typeID="4" id="79"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Neuweltaffen" binomial="Platyrrhini" typeID="2">
         <Tierfamilie trivial="Klammerschwanzaffen" binomial="Atelidae" 
typeID="3">
            <Tierart trivial="Schwarzer Brüllaffe" binomial="Alonatta 
caraya" typeID="4" id="87"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Neuweltaffen" binomial="Platyrrhini" typeID="2">
         <Tierfamilie trivial="Krallenaffen" binomial="Callitrichidae" 
typeID="3">
            <Tierart trivial="Schwarzpinseläffchen" binomial="Callithrix 
penicillata" typeID="4" id="88"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Altweltaffen" binomial="NaN" typeID="2">
         <Tierfamilie trivial="Schlankaffen" binomial="NaN" typeID="3">
            <Tierart trivial="Schwarzrückentamarin" binomial="Saguinus 
nigricollis" typeID="4" id="89"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Altweltaffen" binomial="NaN" typeID="2">
         <Tierfamilie trivial="Schlankaffen" binomial="NaN" typeID="3">
            <Tierart trivial="Siamang" binomial="Hylobates Syndactylus" 
typeID="4" id="90"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Neuweltaffen" binomial="NaN" typeID="2">
         <Tierfamilie trivial="Krallenaffen" binomial="NaN" typeID="3">
            <Tierart trivial="Sumpfspringaffe" binomial="Callicebus 
moloch cupreus" typeID="4" id="101"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Neuweltaffen" binomial="NaN" typeID="2">
         <Tierfamilie trivial="Krallenaffen" binomial="NaN" typeID="3">
            <Tierart trivial="Weißbüscheläffchen" binomial="Callithrix 
jacchus" typeID="4" id="108"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Neuweltaffen" binomial="NaN" typeID="2">
         <Tierfamilie trivial="Krallenaffen" binomial="NaN" typeID="3">
            <Tierart trivial="Weißgesichtseidenäffchen" 
binomial="Callithrix leucocephala" typeID="4" id="109"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
   <Tierklasse trivial="Säugetiere" binomial="Mammalia" typeID="1" id="1">
      <Tierordnung trivial="Nebengelenktiere" binomial="NaN" typeID="2">
         <Tierfamilie trivial="Lemuren" binomial="NaN" typeID="3">
            <Tierart trivial="Zweifingerfaultier" binomial="Unau(Unau 
comun)" typeID="4" id="115"/>
         </Tierfamilie>
      </Tierordnung>
   </Tierklasse>
</Animals>


More information about the talk mailing list