folgende Frage. Ich bastele zur Zeit an einer kleinen Anwendung, die XMLs verarbeitet (etree/lxml). Nun kommt mir die von etree.parse() angelegte Datenstruktur sehr entgegen, sprich sie enthält die Daten genau so wie ich sie zum verarbeiten brauche. Nun möchte ich aber gerne zu einzelnen Elementen Zusatzinformationen (von unterschiedlichen Datentypen) speichern, die ich später auch wieder entsprechend zuordnen können muss. Also ein stark vereinfachtes Beispiel, das aber den ungefähren Sinn meiner Anfrage klar machen sollte
Code: Alles auswählen
<gruppe>
<mitglied>XYZ</mitglied>
<mitglied>ABC</mitglied>
<mitglied>UVW</mitglied>
</gruppe>
<gruppe>
<mitglied>123</mitglied>
...
Am schönsten wäre es daher für mich einfach das <gruppe>-Element irgendwie intern zu erweitern, um meine Daten direkt da rein speichern zu können (ich will also kein neues XML-Element/Attribut in den Baum einfügen - da die zu speichernden Daten nicht unbedingt Text sein müssen. Und soweit ich das sehe müssen Attribute ja Text sein). Dann hätte ich beim Arbeiten mit solch einem Element jederzeit die gewünschten Daten direkt zur Verfügung, ich muss mir keine Gedanken über die korrekte Zuordnung machen und könnte außerdem noch von den lxml-Funktionen profitieren, falls ich doch noch mal an die Unterelemente oder so ran muss.
Kann ich in Python Datentypen derart erweitern (das müsste natürlich so geschehen, das etree dann diese erweiterten auch verwendet, anlegen eines neuen, kopierten Datentyps bringt mir ja nichts)? Wenn ja, wie mache ich das? Wenn nein, wie sollte ich meine Daten ansonsten am besten speichern um sie sicher und einfach der jeweiligen Gruppe zuordnen zu können?