Hier soll ein Blick auf ein paar Schnipsel von E4X-Code im Rhino Javascript-Interpreter geworfen werden. Wer die Beispiele selber ausprobieren will, muss sich Rhino sowie die XMLBeans-Bibliotheken herunterladen. Dann gibt man den folgenden Befehl auf der Kommandozeile ein:
Dabei fügt man die entsprechenden Pfade für XMLBeans und Rhino ein und startet damit den Javascript-Interpreter in einem interaktiven Modus samt E4X-Unterstützung, wie der „js>“-Prompt zeigt. Damit kann man seine ersten Gehversuche mit XML unternehmen:
Dies erzeugt eine XML-Variable „a“. Man beachte, dass man bei dieser Zuweisung direkt XML verwenden kann.
Wenn man jetzt auf ein oder mehrere bestimmte Elemente zugreifen will, kann man dies über deren Namen machen:
Wenn ein Element mehrfach vorkommt, bekommt man alle Elemente zurückgegeben:
Aber man kann auf sie immer noch mit einem Array zugreifen:
Um auf die Attribute zuzugreifen, verwendet man ein @ vor dem Attributnamen:
Man kann das XML-Dokument aber nicht nur passiv betrachten, sondern Elementen und Attributen auch Werte zuweisen.
Bei der ersten Zuweisung wird das erste firstname-Element durch ein neues Element ersetzt. Man hätte auch einfach den Wert „ECMA“ zuweisen können und dieselbe Ausgabe erhalten, aber dabei wäre die Attributinformation verloren gegangen, da der String nur in den angegebenen Elementnamen eingefügt worden wäre, mit dem String als Wert. Die nächste Zuweisung setzt einfach das id-Attribut des name-Elements. Die dritte Zuweisung ergänzt das erste firstname-Element um das Attribut „official“ und setzt dieses auf „yes“. Bei E4X wird ein noch nicht existierendes Attribut einfach neu erstellt. Dasselbe gilt für Elemente: Wenn man einem nichtexistenten Element einen Wert zuweist, wird dieses Element erzeugt. So kann man Listen auch Elemente hinzufügen:
Und natürlich kann man die Elemente auch alle in einer Schleife bearbeiten:
a..firstname wählt firstname-Elemente, wo immer sie im Dokument auftauchen, so wie der „//“-Operator in XPath.
Damit erhält man einen kleinen Vorgeschmack, was man mit E4X alles anstellen kann und es ist schon zu erkennen, welche Möglichkeiten für die XML-Verarbeitung einem damit beim Scripting offen stehen.
Beim Online-Gaming kommt es nicht nur auf das eigene Können an. Auch die technischen Voraussetzungen…
Fast jedes zweite Unternehmen bietet keinerlei Schulungen an. In den übrigen Betrieben profitieren oft nur…
Huawei stellt auf der Connect Europe 2024 in Paris mit Xinghe Intelligent Network eine erweiterte…
Höchste Zeit für eine schnelle Kupfer-Glas-Migration. Bis 2030 soll in Deutschland Glasfaser flächendeckend ausgerollt sein.
Schon im April 2025 soll Android 16 den Status Plattformstabilität erreichen. Entwicklern gibt Google danach…
Die Hintermänner setzen KI-Chatbot-Tools als Köder ein. Opfer fangen sich den Infostealer JarkaStealer ein.