XSL/XPath - Nur ersten Wert mit selben Attribut

Status
Nicht offen für weitere Antworten.

miketech

Bekanntes Mitglied
Hi zusammen,

ich sitz gerade vor einem XML / XSLT Problem, vielleicht hat jemand von Euch ja eine Idee.

Wenn ich folgenden Baum habe:


<irgendwas>
<knoten id="1" value="x"/>
<knoten id="2" value="x"/>
<knoten id="3" value="y"/>
</irgendwas>

Jetzt möchte ich mit XSL nur die Knoten, die unterschiedliche Values haben, also ich möchte Knoten mit ID 1 und mit ID 3. Die ID 2 möchte ich nicht, da ich X bereits mit ID 1 abgedeckt habe.

Meine Idee war jetzt mit for-each (ich bin gerade am Knoten "irgendwas"):

<xsl:for-each select="knoten[@id=../knoten[@value=current()/@value][1]/@id]">

...irgendwas

</xsl:for-each>

D.h. ich hätte alle knoten abgefragt, die die ID des ersten Knotens mit selbigem Value haben. Das geht aber so nicht, da current() mir wohl den falschen Knoten zurückliefert. Ich muss ja bei [@value=current()/@value] mit dem Value des Knoten vergleichen, den ich gerade angesprochen habe. Hat jemand eine Idee, wie ich das realisieren kann?

Gruß

Mike
 

Bleiglanz

Gesperrter Benutzer
sollte mit xsl:key gehen

so ala

<xsl:key name="verschiedeneValues" match="knoten" use="@value"/>

usw, ist leider immer kompliziert
 

miketech

Bekanntes Mitglied
Hi,

leider gibts doch noch ein Problem. Prinzipiell geht das schon in die richtige Richtung.

Wenn ich meine Struktur etwas verkompliziere:

Code:
<irgendwas>
<knoten id="1" value="x">
  <knoten id="4" value="x"/>
  <knoten id="5" value="y"/>
</knoten>
<knoten id="2" value="x"/>
<knoten id="3" value="y"/>
</irgendwas>

Ich möchte immer noch gerne nur die Knoten der aktuellen Ebene, wo ich bin, d.h. ich möchte immer noch die Knoten mit der ID 1 und 3. Allerdings entfernt mir key nun auch den mit der ID 3, da er bereits "y" in der ID 5 gefunden hat. Ich müsste key irgendwie sagen können, dass es nur auf der aktuellen Ebene suchen soll, nicht im ganzen Dokument. Kann ich das irgendwie einschränken?


Derzeit habe ich es so versucht:

<xsl:key name="knotenValues" match="knoten" use="@value"/>
<xsl:for-each select="predicate[generate-id(.)=generate-id(key('predicateValues', @value)[1])]">


Gruß

Mike
 

miketech

Bekanntes Mitglied
Hi,

ich habs :) Ich hab noch als Bedingung [../@id=$id] ergänzt, wobei $id die ID des Vaterknotens ist. Somit kann ich sichergehen, dass er nicht in der Tiefe sucht.

Danke nochmal und Gruß

Mike
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Kirby.exe Probleme mit XML XPATH Select XML & JSON 3
B XPath soll XML liefern XML & JSON 7
O XPATH Problem - Anfänger XML & JSON 4
M dom4j unberechtigte Invalid XPath expression XML & JSON 12
W XPath schreiben XML & JSON 1
P HTML XPath XML & JSON 1
S Ersatz für die veraltete Klasse XPath XML & JSON 1
C XPath: Alle Kinder in einer Schleife auslesen XML & JSON 2
P Xpath zugriff auf Attribute XML & JSON 3
P "XPath is deprecated" XML eclipse XML & JSON 3
G HtmlUnit XPath XML & JSON 5
D XPath-Query XML & JSON 2
I XPath Namensräume und auslesen einzelner Knoten XML & JSON 3
AMStyles XPATH Befehl SVG Java XML & JSON 2
G xpath: in Kindelement zwei Attribut-Werte auslesen XML & JSON 2
G xpath: Inhalt eines Kindelements auslesen XML & JSON 2
H ChildNode via XPath ansprechen XML & JSON 2
G JDOM - aus Children-Liste ein Child direkt ansprechen ohne XPath? XML & JSON 9
S Attribute von Elementen auslesen mit XPath XML & JSON 2
T Xpath & JDOM Element Pfad ausgeben XML & JSON 2
W XPath + Inhalt aus <td> XML & JSON 2
R XPath - frage zur Adressierung XML & JSON 3
reibi XPath XML & JSON 14
M xPath liefert leeres Nodeset XML & JSON 2
M Probleme mit XPath bei Java XML & JSON 5
W Element mit XPath @id ermitteln wenn nur ein teil der id bekannt ist XML & JSON 2
F XPath-Problem mit DOM4J XML & JSON 8
T XPath Problem: finden einer Node nach Attributswert XML & JSON 2
O XPATH gesucht XML & JSON 6
G XPATH-Frage XML & JSON 2
L Element manipulieren in einem DOMResult per XPath XML & JSON 10
P XPath und Namespaces XML & JSON 3
G XPath - replace function funktioniert nicht XML & JSON 3
E XPATH-Ausdruck mit not XML & JSON 4
E Wieso liefert dieser XPATH-Ausdruck nicht die richtige Anzahl Treffer? XML & JSON 8
M XPath Ausdruck validieren XML & JSON 2
N XPath Adressierung XML & JSON 7
F XPath frage XML & JSON 4
B Optionaler XPath pfad XML & JSON 2
B XPath frage XML & JSON 2
T Frage zu XQuery (XQJ) / XPath XML & JSON 2
P XPath Problem XML & JSON 2
S Problem mit XPath XML & JSON 4
T Mit XPATH finden und dann änder XML & JSON 2
T EXSD auslesen mit XPath und JDOM XML & JSON 8
G XPath gesucht für Tag mit konkretem Content XML & JSON 2
A XPath Problem XML & JSON 2
C XPath in JDOM klappt nicht XML & JSON 2
T Prbolem XPath XML & JSON 2
X Xpath, alle Element die mit "user" beginnen auswäh XML & JSON 2
loadbrain XPath Problem XML & JSON 2
M brauche große XML-Datei für XPath-Tests XML & JSON 4
M JDOM und XPath, zu Element zugehörigen XPath-Ausdruck XML & JSON 5
F JDOM und XPath - Problem mit Namespace ohne Prefix XML & JSON 5
F hilfe bei xpath-ausdruck XML & JSON 2
K java + xpath -> performanceproblem XML & JSON 9
H Xpath kindelemente auslesen XML & JSON 2
S Xml zurück in xpath wandeln XML & JSON 8
G Frage zu XPath XML & JSON 2
flashfactor Filtern mittels XPATH XML & JSON 4
M XPath Problem im Zusammenhang mit document() XML & JSON 2
M Frag zu xsl:when beziehungsweise XPath XML & JSON 3
F JDom und XPath XML & JSON 12
C xpath funktioniert nicht XML & JSON 5
M XPATH und RSS (Problem namespaces) XML & JSON 7
P nochmal XPath :-) XML & JSON 22
P XPath . XML & JSON 2
T Rekursiver Verzeichniss Baum in XML & XPath XML & JSON 4
clemson xpath mit jdom XML & JSON 2
Wildcard xpath Parser XML & JSON 8
thE_29 Vor dem ersten Posten bitte lesen! XML & JSON 0
H XMLConfiguration(1.10)/getString : Wert "E" aus <version type="Auto">E</version>n lesen XML & JSON 15
wofus JSON filtern nach bestimmten Wert XML & JSON 7
L JAXB - Generischen Wert mit Liste belegen XML & JSON 1
Landei JAXB: Wert von übergeordneten Element XML & JSON 4
J wert IN einem tag einlesen/schreiben XML & JSON 4
Nicer Bestimmten Wert aus einer XML Auslesen XML & JSON 34
N value Wert einer XML Datei mit JAVA bearbeiten XML & JSON 21
A JDOM: Wert schreiben bzw. ändern XML & JSON 6
M Jaxb Annotationen, Wert als XML Element XML & JSON 2
M input-wert an servlet übergeben XML & JSON 3

Ähnliche Java Themen

Neue Themen


Oben