[XSLT] Elementen doorelkaar *

Pagina: 1
Acties:

  • DanceTrend
  • Registratie: Maart 2001
  • Laatst online: 17-01 12:31
Ik heb het volgende XML document:
code:
1
2
3
4
5
6
7
8
9
10
11
12
<hoofdstuk>
 <substuk>
  <titel>Mooie titel</titel>
  <para>Blablabla</para>
  <para>Nog meer geblaat</para>
  <lijst>
   <item>Item 1 van een lijst</item>
   <item>Item 2 van een lijst</item>
  </lijst>
  <para>Nog meer para</para>
 </substuk>
</hoofdstuk>

en dan bij elk hoofdstuk weer anders (dus logischerwijs niet altijd een <lijst> op dezelfde plek zeg maar).

Hoe zorg ik nou met XSLT ervoor dat een lijst op dezelfde plek blijft staan? Als ik:
code:
1
2
3
4
5
6
7
<xsl:template match="para">
 <p>...paracontent...</p>
</xsl:template>

<xsl:template match="lijst">
 <p>...lijst...</p>
</xsl:template>

doe, dan komt de lijst dus eronder te staan.. Ik dacht ook al aan <xsl:for-each> maar dat schiet volgens mij ook niet op.. :S Kan iemand mij helpen? thx :)

[ Voor 17% gewijzigd door DanceTrend op 08-06-2005 15:52 ]


  • TheNameless
  • Registratie: September 2001
  • Laatst online: 07-02-2025

TheNameless

Jazzballet is vet!

Ik snap niet helemaal wat je bedoelt, maar ik denk dat je wilt dat een lijst pas geprocessed moet worden wanneer hij er staat :?

Dan zou je namelijk zo iets krijgen, als ik het me goed herinner:
code:
1
2
3
4
5
6
7
8
9
10
11
12
<xsl:template match='substuk'>
  <xsl:value-of select='titel'/>
  <xsl:apply-templates/>
</xsl:template>

<xsl:template match="para">
 <p>...paracontent...</p>
</xsl:template>

<xsl:template match="lijst">
 <p>...lijst...</p>
</xsl:template>

[ Voor 21% gewijzigd door TheNameless op 08-06-2005 16:26 ]

Ducati: making mechanics out of riders since 1946


  • DanceTrend
  • Registratie: Maart 2001
  • Laatst online: 17-01 12:31
Ja als ik dat doe komt het <lijst> element dus helemaal onderaan, aangezien ie eerst alle <para> elementen processed, en daarna de <lijst> elementen.

Wat ik dus bedoel is dat ie een <para> element processed als ie een <para> element tegenkomt en een <lijst> element als ie een <lijst> element tegenkomt :) En dus niet eerst alle <para>- en daarna alle <lijst>elementen...

  • momania
  • Registratie: Mei 2000
  • Nu online

momania

iPhone 30! Bam!

Dus je wilt de opmaak volgorde op basis van de volgorde van de de xml zelf doen :?

Is dat niet een beetje een rare gedachte, aangezien je dan dus je GUI steeds qua layout veranderd?

Neem je whisky mee, is het te weinig... *zucht*


  • chris
  • Registratie: September 2001
  • Laatst online: 11-03-2022
Waarom is dat raar? In html is dat toch ook zo? Ik moet er niet aan denken dat ik een aantal <p />'s onder elkaar heb en dat ze opeens in een andere volgorde eruit komen. Verder wat MayaFreak zegt.

  • momania
  • Registratie: Mei 2000
  • Nu online

momania

iPhone 30! Bam!

chris schreef op woensdag 08 juni 2005 @ 17:11:
Waarom is dat raar? In html is dat toch ook zo?
Nou, net wat ik zeg:

Je xslt bepaald de opmaak van je pagina. Je xml is alleen maar data input voor je xslt.
Het is dus een rare gedachte dat je een deel van de opmaak (de volgorde in dit geval dus) afhankelijk wil hebben van de volgorde van tags in de xml.

Neem je whisky mee, is het te weinig... *zucht*


  • DanceTrend
  • Registratie: Maart 2001
  • Laatst online: 17-01 12:31
Oke, het is al opgelost. Ik deed veel te moeilijk en maakte geen gebruik van "gewoon" <xsl:apply-templates/> :X

Maar niet voor nix [n00b] in de titel ;) Thanks :)

[ Voor 8% gewijzigd door DanceTrend op 08-06-2005 17:27 ]


  • chris
  • Registratie: September 2001
  • Laatst online: 11-03-2022
momania schreef op woensdag 08 juni 2005 @ 17:25:
De xslt bepaald de opmaak van je pagina. Je xml is alleen maar data input voor je xslt.
Het is dus een rare gedachte dat je een deel van de opmaak (de volgorde in dit geval dus) afhankelijk wil hebben van de volgorde van tags in de xml.
Tuurlijk niet! Neem nou xhtml, dat is ook xml. Daar wil je toch ook dat de volgorde van de tags behouden blijft? Dit is echt wel erg belangrijk in xml.
Pagina: 1