Toon posts:

[XSL]childnodes op nieuwe lijn

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoe krijg ik het voor elkaar om een collectie childnodes elke keer te laten beginnen op een nieuwe lijn, i.p.v. dat ze achter elkaar gezet worden, want het lukt me nu voor geen meter.

voorbeeld van hoe de xml file er uitziet:
XML:
1
2
3
4
5
6
7
8
9
10
11
<artnrs>
<artno0>807221</artno0>
<artno1>807216</artno1>
<artno2>807222</artno2>
<artno3>807218</artno3>
<artno4>807219</artno4>
<artno5>807215</artno5>
<artno6>807217</artno6>
<artno7>807214</artno7>
<artno8>807220</artno8>
</artnrs>


En een snippet uit de stylesheet:
XML:
1
2
3
 <fo:block padding-top="14mm">
      <xsl:value-of select="artnrs[*]"/>
 </fo:block>


Dit zorgt er echter voor dat het er zo uitkomt:
code:
1
807221 807216 807222 etc etc.


Ik wil echter dat het er zo komt uit te zien:
code:
1
2
3
4
5
807221 
807216 
807222 
etc 
etc.


Wordt trouwens in een tabel geplaatst. Alvast bedankt

[ Voor 16% gewijzigd door Verwijderd op 08-11-2004 12:47 ]


  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

Gewoon een <br /> er tussen?

* André snapt het niet helemaal

Verwijderd

Topicstarter
André schreef op 08 november 2004 @ 12:47:
Gewoon een <br /> er tussen?

* André snapt het niet helemaal
Dat gaat dus niet werken aangezien er geen html, maar een pdf wordt gegenereerd, ik wil gewoon elke value van een childnode op een nieuwe lijn, maar ik kan hier dus niets over vinden.

  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

Dan zul je het PDF commando voor een newline moeten includen. We hebben:

code:
1
2
3
4
\r\n
vbCrLf 
chr$(10) + chr$(13)
<br />


En zo zal er ongetwijfeld ook 1 zijn voor PDF.

Verwijderd

André schreef op 08 november 2004 @ 13:01:
Dan zul je het PDF commando voor een newline moeten includen. We hebben:

code:
1
2
3
4
\r\n
vbCrLf 
chr$(10) + chr$(13)
<br />


En zo zal er ongetwijfeld ook 1 zijn voor PDF.
Psst.. \r = 13, \n = 10 ;)

  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

Verwijderd schreef op 08 november 2004 @ 13:25:
[...]

Psst.. \r = 13, \n = 10 ;)
Maar dan in een andere taal, zoals ik al duidelijk probeer te maken. Nu moet je nog weten wat een newline is in PDF 'taal'.

Verwijderd

Zo te zien probeer je een Formatting Object te genereren, dat is nog geen PDF.
(Maar wil er later een worden)

Anyway, je fout is in het XPATH stukje, je vraagt om *alle* artnrs tegelijk:

"artnrs• "

En die zet je allemaal samen (gezellig) in één fo-block.

Ik vermoed dat je eigenlijk één fo-block wilt *per* artno.

Bovendien zuigt je XML, wie doet dat nou, artno1-artno2-artno3 als tagnaam ...


Hope this helps

Verwijderd

Probeer dan zoiets te doen

code:
1
2
3
4
5
6
7
8
9
10
11
<articles>
<article priority="0">807221</article>
<article priority="1">807216</article>
<article priority="2">807222</article>
<article priority="3">807218</article>
<article priority="4">807219</article>
<article priority="5">807215</article>
<article priority="6">807217</article>
<article priority="7">807214</article>
<article priority="8">807220</article>
</articles>


Dan valt er ook nog wat meer met xpath te doen nl.

Verwijderd

Gordijnstok, waarvoor dient die "priority" dan nog?
De volgorde is toch al bepaald in de XML.

En een toevoeging aan mijn vorige reactie :
(mijn text ziet er heel anders uit dan toen ik 'm intikte)

De fout zit in de term " artnrs [ * ] "

Verwijderd

Topicstarter
Verwijderd schreef op 08 november 2004 @ 14:20:
Zo te zien probeer je een Formatting Object te genereren, dat is nog geen PDF.
(Maar wil er later een worden)

Anyway, je fout is in het XPATH stukje, je vraagt om *alle* artnrs tegelijk:

En die zet je allemaal samen (gezellig) in één fo-block.

Ik vermoed dat je eigenlijk één fo-block wilt *per* artno.

Bovendien zuigt je XML, wie doet dat nou, artno1-artno2-artno3 als tagnaam ...

Hope this helps
Goed, bedankt voor je reactie, helaas is het niet "mijn" XML maar een file die wordt gegenereerd uit een DB, ik ben alleen bezig om die data om te zetten naar PDF en dat gaat best aardig behalve dan het bovengenoemde probleem.

Ik ben nog niet zo lang bezig met dit soort werk en ik vroeg me af of er een mogelijkheid was om in die XPATH expressie iets toe te voegen zodat alle childnodes op een aparte lijn komen, dus idd in een aparte fo:block.

Verwijderd

Verwijderd schreef op 08 november 2004 @ 14:36:
Gordijnstok, waarvoor dient die "priority" dan nog?
De volgorde is toch al bepaald in de XML.

En een toevoeging aan mijn vorige reactie :
(mijn text ziet er heel anders uit dan toen ik 'm intikte)

De fout zit in de term " artnrs [ * ] "
Wellicht dat je de priority ook wilt mixen, en toch zo de fysieke prioriteit kunt meegeven :)

Verwijderd

Topicstarter
Ik heb het opgelost, badankt heren:
XML:
1
2
3
4
<xsl:for-each select="artnrs/*">
   <fo:block padding-top="1mm">
     <xsl:value-of select="."/>
   </fo:block>
Pagina: 1