ik ben een behoorlijke XML newbee en het lukt mij niet om in een tabel de tekst mooi opgemaakt te krijgen.
Het zijn twee oud-Nederlandse teksten, met een vertaling erbij. Ik wil de originele tekst naast de vertaling in een tabel krijgen. Het probleem is, dat de teksten dan aan een stuk doorlopen. De templates die ik heb aangemaakt voor de opmaak van de tekst, worden binnen de tabel genegeerd.
Als ik met xsl:for each de afzonderlijke regels <l> aanroep, wordt telkens alleen de eerste weergegeven, waarschijnlijk komt dat vanwege de opbouw van het XML bestand.
het XML bestand zit als volgt in elkaar:
De eerste template is een algemene, daarna volgen 2 tabellen-templates (voor elke tekst+vertaling één), daarna komen de overige templates.
Ik heb ook geprobeerd een extra <xsl:apply-templates/> ín de tabel te zetten, maar dan komt álle tekst in de tabel te staan, bij de tekst die al los aangeroepen wordt.
Dit is de XSLT:
De bestanden staan ook online:
http://www.clz.let.uu.nl/home/V.S.Ganesh/xml/embleem.xml
http://www.clz.let.uu.nl/home/V.S.Ganesh/xml/embleem.xsl
http://www.clz.let.uu.nl/home/V.S.Ganesh/xml/embleem.dtd
Ik heb al behoorlijk wat gezocht, ook de tutorials op w3schools.com bieden geen antwoord. Heeft er iemand een id? Ik heb weinig zin om voor iedere regel een losse template te gaan maken...
edit 1
byebye layout... sorrie
edit 2
had dit in PW gemoeten? nogmaals sorrie, zat te twijvelen...
Het zijn twee oud-Nederlandse teksten, met een vertaling erbij. Ik wil de originele tekst naast de vertaling in een tabel krijgen. Het probleem is, dat de teksten dan aan een stuk doorlopen. De templates die ik heb aangemaakt voor de opmaak van de tekst, worden binnen de tabel genegeerd.
Als ik met xsl:for each de afzonderlijke regels <l> aanroep, wordt telkens alleen de eerste weergegeven, waarschijnlijk komt dat vanwege de opbouw van het XML bestand.
het XML bestand zit als volgt in elkaar:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
| <?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="embleem.xsl"?>
<!DOCTYPE TEI.2 SYSTEM "embleem.dtd" [
<!ENTITY pic34 SYSTEM "34.jpg" NDATA jpeg>
<!ENTITY pic3 SYSTEM "3.jpg" NDATA jpeg>
<!ENTITY pic4 SYSTEM "4.jpg" NDATA jpeg>
<!NOTATION jpeg SYSTEM "plaatje">
<!ENTITY apt "'"> <!-- en dit dan? apt. volgens character agent -->
<!ENTITY apost "’"> <!-- apostrophe -->
]>
<TEI.2>
<teiHeader></teiHeader>
<text>
<front></front>
<body>
<group>
<div id="embleem3">
<figure entity="pic34">
<figureDesc>plaatje van 3 en 4</figureDesc>
</figure>
<lg type="motto" id="lg1">
<l id="lg1.1"><title>Dum cola foeminam, hoc fio.</title></l>
<l id="lg1.2.1">Mijn wijsheyt, mijn verstandt, is als twee oogen,</l>
<l id="lg1.2.2">Daer werd&apost; ick van geleyt: mijn hert, mijn groot gemoet,</l>
<l id="lg1.2.3">Mijn mannelick gewelt, en kan sich niet vertoogen,</l>
<l id="lg1.2.4">Als ghy my, o Ionckvrou, de fwaeren strijdt aendoet.</l>
<l id="lg1.2.5">Ick worde als ghy sijt. ick geef u lijf en sinnen,</l>
<l id="lg1.2.6">Ick volge naer u doen. Godin, daer ick op u bou,</l>
<l id="lg1.2.7">Ick kom soo na by, dat ick begin te spinnen,</l>
<l id="lg1.2.8">En daer ick was een man, daer ben ick nu een vrou.</l>
</lg>
<lg type="translations" id="lgTr1">
<note id="lgTr1.1"><title>Doordat ik een vrouw vereer, word ik een vrouw.</title></note>
<note id="lgTr1.2.1">Mijn wijsheid, mijn verstand is minder dan twee ogen,</note>
<note id="lgTr1.2.2">daar werd ik van ...... (geleyt): mijn hart, mijn groot gemoed,</note>
<note id="lgTr1.2.3">mijn mannelijk geweld, en kan zich niet vertogen,</note>
<note id="lgTr1.2.4">Als gij mij, o jonkvrouw, de zware strijd aangaat.</note>
<note id="lgTr1.2.5">Ik wordt zoals gij zijt. ik geef u lijf en zinnen,</note>
<note id="lgTr1.2.6">Ik volg naar uw doen. Godin, daar ik op u bouw,</note>
<note id="lgTr1.2.7">kom ik zo nabij, dat ik begin te spinnen,</note>
<note id="lgTr1.2.8">En daar ik was een man, daar ben ik nu een vrouw.</note>
</lg>
<linkGrp targorder="Y" targFunc="translated translation" type="translation">
<link targets="embleem3 embleem3Tr"/>
<link targets="lg1 lgTr1"/>
<link targets="lg1.1 lgTr1.1"/>
<link targets="lg1.1.2 lgTr1.1.2"/>
<link targets="lg1.1.3 lgTr1.1.3"/>
<link targets="lg1.1.4 lgTr1.1.4"/>
<link targets="lg1.1.5 lgTr1.1.5"/>
<link targets="lg1.1.6 lgTr1.1.6"/>
<link targets="lg1.1.7 lgTr1.1.7"/>
<link targets="lg1.1.8 lgTr1.1.8"/>
</linkGrp>
</div>
</group>
<div id="embleem4">
<lg type="motto" id="lg2">
<l id="lg2.1"><title>Exitus in dubio eft.</title></l>
<l id="lg2.2.1">Siet toch eens Venus kindt, en die sich daer beneven</l>
<l id="lg2.2.2">Gevoecht heeft op der aerdt, een Godt en oock een kindt,</l>
<l id="lg2.2.3">Die Hymen wirdt genaemt: wiens ambacht is te geven</l>
<l id="lg2.2.4">De man zijn soete lief, die hy wel heeft gesint</l>
<l id="lg2.2.5">Het is een wonder werck: zy dobbelen met steenen,</l>
<l id="lg2.2.6">Of zy&apost;t oock wesen sal: dat seer onseker is.</l>
<l id="lg2.2.7">Want als ghy meent te sijn seer vast en op de beenen,</l>
<l id="lg2.2.8">De steen die keert noch om, de saecke gaet noch mis.</l>
</lg>
<lg type="translations" id="lgTr2">
<note id="lgTr2.1"><title>De afloop is onzeker.</title></note>
<note id="lgTr2.2.1">Ziet toch eens Venus kind, en die zich daar beneden</note>
<note id="lgTr2.2.2">gevoegd heeft op de aarde, een God en ook een kind,</note>
<note id="lgTr2.2.3">die Hymen wordt genoemd: wiens ambacht is te geven.</note>
<note id="lgTr2.2.4">De man zijn zoete lief, die hem wel bevalt.</note>
<note id="lgTr2.2.5">Het is een wonder werk: zij dobbelen met stenen,</note>
<note id="lgTr2.2.6">of zij &apost;t ook wezen zal, dat zeer onzeker is.</note>
<note id="lgTr2.2.7">Want als gij zeer vast en op de benen meent te zijn,</note>
<note id="lgTr2.2.8">de steen die keert alsnog om, de zaken gaat toch mis.</note>
</lg>
<linkGrp targorder="Y" targFunc="translated translation" type="translation">
<link targets="embleem4 embleem4Tr"/>
<link targets="lg2 lgTr2"/>
<link targets="lg2.1 lgTr2.1"/>
<link targets="lg2.1.2 lgTr2.1.2"/>
<link targets="lg2.1.3 lgTr2.1.3"/>
<link targets="lg2.1.4 lgTr2.1.4"/>
<link targets="lg2.1.5 lgTr2.1.5"/>
<link targets="lg2.1.6 lgTr2.1.6"/>
<link targets="lg2.1.7 lgTr2.1.7"/>
<link targets="lg2.1.8 lgTr2.1.8"/>
</linkGrp>
</div>
</body>
<back></back>
</text>
</TEI.2> |
De eerste template is een algemene, daarna volgen 2 tabellen-templates (voor elke tekst+vertaling één), daarna komen de overige templates.
Ik heb ook geprobeerd een extra <xsl:apply-templates/> ín de tabel te zetten, maar dan komt álle tekst in de tabel te staan, bij de tekst die al los aangeroepen wordt.
Dit is de XSLT:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
| <?xml version="1.0"?>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="http://www.w3.org/TR/REC-html40">
<xsl:template match="/">
<html>
<head>
<style type="text/css">
a { font-family: "System"; font-size: 12px; color: #cccc66; text-decoration: underline}
a:hover { font-family: "System"; font-size: 12px; color: #FFFF00; text-decoration: none}
body { font-family: "Arial"; color: #FFFFFF; text-decoration: none; background-color: #606060; scrollbar-3dlight-color: #ffffff; scrollbar-arrow-color: #606060;
scrollbar-base-color: #ffffff; scrollbar-darkshadow-color: #FFFFFF;
scrollbar-face-color: #606060; scrollbar-highlight-color: #FFFFFF;
scrollbar-shadow-color: #FFFFFF }
TD { font-family: "Arial"; font-size: 14px; color: #FFFFFF; text-decoration: none}
TH { font-family: "System"; font-size: 12px; color: #FFFFFF; text-decoration: none}
TR { font-family: "System"; font-size: 12px; color: #FFFFFF; text-decoration: none}
</style>
</head>
<body><br/><br/><br/>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
<xsl:template match="group">
<table border="1"><br/><br/>
<th>[img]"3.jpg"[/img]<xsl:value-of select="figure"></xsl:value-of></img>
<br/><br/><xsl:value-of select="div/lg/l[@id='lg1.1']/title"/></th>
<th>[img]"3modern.jpg"[/img]<xsl:value-of select="figure"></xsl:value-of></img>
<br/><br/><xsl:value-of select="div/lg/note[@id='lgTr1.1']/title"/></th>
<tr>
<td width="50%"><xsl:value-of select="//lg [@type='motto']"/></td>
<td width="50%"><xsl:value-of select="//lg [@type='translations']"/></td>
</tr>
</table><br/><br/>
</xsl:template>
<xsl:template match="div [@id='embleem4']">
<table border="1"><br/><br/>
<th>[img]"4.jpg"[/img]<xsl:value-of select="figure"></xsl:value-of></img>
<br/><br/><xsl:value-of select="lg/l[@id='lg2.1']/title"/></th>
<th>[img]"4modern.jpg"[/img]<xsl:value-of select="figure"></xsl:value-of></img>
<br/><br/><xsl:value-of select="lg/note[@id='lgTr2.1']/title"/></th>
<tr>
<td width="50%"><xsl:value-of select="lg [@type='motto']"/></td>
<td width="50%"><xsl:value-of select="lg [@type='translations']"/></td>
</tr>
</table><br/><br/>
</xsl:template>
<xsl:template match="figure">
[img]"3.jpg"[/img]<xsl:apply-templates/></img>
</xsl:template>
<xsl:template match="title">
<b><br/><br/><xsl:apply-templates/><br/></b>
</xsl:template>
<xsl:template match="l">
<xsl:apply-templates/><br/>
</xsl:template>
<xsl:template match="note">
<xsl:apply-templates/><br/>
</xsl:template>
<xsl:template match="figureDesc">
<font color="#cococo"><xsl:apply-templates/></font>
</xsl:template>
</xsl:stylesheet> |
De bestanden staan ook online:
http://www.clz.let.uu.nl/home/V.S.Ganesh/xml/embleem.xml
http://www.clz.let.uu.nl/home/V.S.Ganesh/xml/embleem.xsl
http://www.clz.let.uu.nl/home/V.S.Ganesh/xml/embleem.dtd
Ik heb al behoorlijk wat gezocht, ook de tutorials op w3schools.com bieden geen antwoord. Heeft er iemand een id? Ik heb weinig zin om voor iedere regel een losse template te gaan maken...
edit 1
byebye layout... sorrie
edit 2
had dit in PW gemoeten? nogmaals sorrie, zat te twijvelen...
[ Voor 49% gewijzigd door schaduw op 12-06-2003 21:32 ]