Announcement

Collapse
No announcement yet.

Name von Attributen herausfinden?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Name von Attributen herausfinden?

    Hallo Leute,
    gibt es eine Möglichkeit, den Namen eines bzw. aller Attribute eines Elements herauszubekommen?
    Ich stehe vor folgendem Problem:
    Es liegen zwei oder mehr XML Dateien vor, die ich mit einander verbinden muss.
    Mit der <xsl:copy-of select="document(file.xml)" /> Anweisung ist das ja nicht so schwer.
    Die beiden XML Dateien sollen nicht untereinander, sondern 'hintereinander' zusammengeführt werden. (s.Bsp.)
    Das Problem das ich nun habe ist, dass die beiden XML Dateien vom Aufbau her identisch sind (was aber nicht zwingend sein muss, bisher war es halt eher zufälligerweise so). Daher war meine Überlegung, dass ich jedem Attribut beim Transformieren eine Nummer mitgebe. Dazu bräuchte ich aber den Namen des Attributs.
    Oder hat jemand eine andere Idee, wie ich das lösen könnte?

    Code:
    <!-- Beispiel -->
    <data> <!--XML Nummer 1 -->
       <record nummer="1" id="123" bezeich="Test1" .../>
       <record nummer="2" id="234" bezeich="Test2" .../>
    </data>
    
    <data> <!--XML Nummer 2 -->
       <record nummer="1" id="987" bezeich="Test9" .../>
       <record nummer="2" id="876" bezeich="Test8" .../>
    </data>
    
    <!--Ziel - Daten wie ich es mir so gedacht hatte... -->
    <data> 
       <record nummer="1" 1id="123" 1bezeich="Test1" 2id="987" 2bezeich="Test9" .../>
       <record nummer="2" 1id="234" 1bezeich="Test2" 2id="876" 2bezeich="Test8" .../>
    </data>
    Das Zusammenführen nach diesem Muster geht halt nur, wenn die Attribute unterschiedlich heissen. Sind die Namen gleich, werden sie eben immer wieder vom nächsten Datensatz überschrieben, was nicht passieren soll.

    Ich wollte vermeiden, dass ich 'von Hand' immer ein Element erzeugen muss, um die jeweiligen Attribute anzulegen; dann könnt ich die XML fast komplett von Hand schreiben...

    Danke schon mal für die Hilfe

    Grüße
Working...
X