Toon posts:

[XSLT]vergelijking maken

Pagina: 1
Acties:

Verwijderd

Topicstarter
een beetje een lastig probleem waar ik zo niet direct uit kom... ik heb een stuk xml:
code:
1
2
3
4
5
6
7
8
9
 <ROOT>
  <EENCHILD>
    <SUBCHILD NAAM="test" WAARDE="1">
    <SUBCHILD NAAM="test" WAARDE="2">
    <SUBCHILD NAAM="test" WAARDE="3">
    <SUBCHILD NAAM="test2" WAARDE="1">
    <SUBCHILD NAAM="test2" WAARDE="2">
    <SUBCHILD NAAM="test2" WAARDE="3">
    ...

Wat ik nu wil is dat er in een tabel maar 1 keer de naam van een subchild wordt weergegeven, maar wel met alle waarden van de subchild. Dus:
code:
1
2
3
4
5
6
7
8
+---------------+-----+
| test      |  1  |
|          |  2  |
|          |  3  |
| test2    |  1  |
|          |  2  |
|          |     |
+---------------+-----+

Ik heb dus geprobeerd om met XPath de waarde te vergelijken tussen de subchild en de subchild daarvoor, maar helaas werkt dat niet...

Heeft iemand een oplossing of een hint voor de oplossing zodat ik verder kan gaan knutselen?

Verwijderd

Topicstarter
hmz, volgens mij kan deze trouwens beter naar /14 :)

  • cutter
  • Registratie: November 2000
  • Laatst online: 28-09-2025

cutter

Wannabe i7 fanboy

Shoot me als ie niet gemoved mocht worden, maar ik zie al die XSLT dingen in PW staan...

  • marcusk
  • Registratie: Februari 2001
  • Laatst online: 26-09-2023
Ik heb dus geprobeerd om met XPath de waarde te vergelijken tussen de subchild en de subchild daarvoor, maar helaas werkt dat niet...
Laat eens zien welke code je daarvoor gebruikt hebt. Op die manier zou het namelijk wel moeten werken.

  • brammetje
  • Registratie: Oktober 2000
  • Laatst online: 12-01-2025
mja, een beetje met position en <xsl:if> ofzo spelen en dan lukt het wel lijkt me :)

edit: postion :? :)

Verwijderd

Topicstarter
Op zaterdag 02 maart 2002 18:42 schreef marcusk het volgende:

[..]

Laat eens zien welke code je daarvoor gebruikt hebt. Op die manier zou het namelijk wel moeten werken.
ehrm, de code was inmiddels naar de /dev/null getrashed... :) heb nu namelijk een enorme lap xslt die wel moet werken voor de rest van mijn programma :)

/me denkt dat het tijd wordt om de xslt maar eens in delen op te hakken...

  • brammetje
  • Registratie: Oktober 2000
  • Laatst online: 12-01-2025
Op zaterdag 02 maart 2002 19:21 schreef pinguin het volgende:
ehrm, de code was inmiddels naar de /dev/null getrashed... :) heb nu namelijk een enorme lap xslt die wel moet werken voor de rest van mijn programma :)

/me denkt dat het tijd wordt om de xslt maar eens in delen op te hakken...
uhm.. je gebruikt toch wel templates heh?

die kan je simpel verdelen over verschillende files en simpeltjes includen.

Verwijderd

Topicstarter
Op zaterdag 02 maart 2002 19:48 schreef brammetje het volgende:

[..]

uhm.. je gebruikt toch wel templates heh?

die kan je simpel verdelen over verschillende files en simpeltjes includen.
weet ik ;)

Inmiddels ben ik ook uit mijn "vergelijking". Ik stel de vorige positie vast indien er een child aangeroepen wordt. Met een choose:when optie laat ik de naam vergelijken :).

Ik vind het alleen nogal omslachtig. Het lijkt mij dat je ook zonder de vorige positie te definieren een vergelijking moet kunnen maken met de vorige child :? Iets als preceding-sibling zou de oplossing moeten bieden volgens de XPath 1.0 specificatie...

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Een paar korte hints om het af te leren :P .

Hiervoor heb je eigenlijk groeperings-mogelijkheden nodig. Die zijn er nu nog niet, maar komen wel in XSLT 2.0. Tot die tijd moet je je zien te redden met het gebruik van positions() en alternatieve axis (jaja niet alles is een child ;) ). Voor een goede axis tutorial kan je zvon raadplegen (zie de faq).

Als je deze twee topics erbij pakt en goed kijkt wat er daar allemaal gebeurt, kom je er prima uit :) .

[topic=289102/1/25]
[topic=293980/1/25]

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


Verwijderd

Topicstarter
Op zaterdag 02 maart 2002 21:00 schreef mbravenboer het volgende:
Een paar korte hints om het af te leren :P .

Hiervoor heb je eigenlijk groeperings-mogelijkheden nodig. Die zijn er nu nog niet, maar komen wel in XSLT 2.0. Tot die tijd moet je je zien te redden met het gebruik van positions() en alternatieve axis (jaja niet alles is een child ;) ). Voor een goede axis tutorial kan je zvon raadplegen (zie de faq).

Als je deze twee topics erbij pakt en goed kijkt wat er daar allemaal gebeurt, kom je er prima uit :) .

[topic=289102/1/25]
[topic=293980/1/25]
ik had beide topic's al gelezen en daar vloeit mijn oplossing dus ook uit voort :)
Pagina: 1