Statistics
| Revision:

root / tmp / org.txm.core / src / groovy / org / txm / importer / graal / xsl / mdv_cms.xsl @ 187

History | View | Annotate | Download (6.1 kB)

1
<?xml version="1.0" encoding="UTF-8"?>
2

    
3
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"
4
    xmlns:tei="http://www.tei-c.org/ns/1.0" xmlns:me="http://www.menota.org/ns/1.0"
5
    xmlns:bfm="http://bfm.ens-lsh.fr/ns/1.0">
6

    
7
    <!-- Eléments communs à toutes les présentations -->
8

    
9
    <xsl:output method="html" encoding="UTF-8" version="4.0" indent="yes"/>
10

    
11
    <xsl:strip-space elements="*"/>
12

    
13
    <xsl:variable name="text_id">
14
        <xsl:value-of select="//tei:teiHeader//tei:title[@type='reference']"/>
15
    </xsl:variable>
16

    
17
    <xsl:template match="/">
18
        <html>
19
            <head> </head>
20
            <body>
21
                <xsl:apply-templates select="//tei:text"/>
22
                <xsl:apply-templates select="//tei:note" mode="final"/>
23
            </body>
24
        </html>
25
    </xsl:template>
26

    
27

    
28
    <xsl:template match="//tei:body/tei:div">
29
        <br/>
30
        <span style="font-family:Times;color:indigo">[<i>
31
                <xsl:value-of select="@type"/>
32
            </i>&#xa0;<xsl:value-of select="@n"/>]</span>
33
        <xsl:apply-templates/>
34
    </xsl:template>
35

    
36
    <xsl:template match="//tei:body/tei:div/tei:div">
37
        <br/>
38
        <span style="font-family:Times;color:indigo">[<i>
39
                <xsl:value-of select="@type"/>
40
            </i>&#xa0;<xsl:value-of select="@n"/>]</span>
41
        <br/>
42
        <xsl:apply-templates/>
43
    </xsl:template>
44

    
45
    <xsl:template match="tei:head">
46
        <span style="font-family:Arial; color:darkred">
47
            <xsl:apply-templates/>
48
        </span>
49
        <br/>
50
    </xsl:template>
51

    
52
    <xsl:template match="//tei:p">
53
        <p>
54
            <xsl:if test="@n"> [ § <xsl:value-of select="@n"/>]&#xa0; </xsl:if>
55
            <xsl:apply-templates/>
56
        </p>
57
    </xsl:template>
58

    
59
    <xsl:template match="tei:pb">
60
        <br/>
61
        <br/>
62
        <span style="font-family:Times" id="{$text_id}-{@n}">[folio <xsl:value-of select="@n"/>] <a
63
                href="{$text_id}-compare.html#{$text_id}-{@n}">[autres facettes]</a>
64
            <xsl:if test="@facs">
65
                <xsl:text> </xsl:text>
66
                <a href="../{@facs}" target="_blank">[Image]</a>
67
            </xsl:if>
68
        </span>
69
        <xsl:if test="not(following-sibling::*[1][self::cb])">
70
            <br/>
71
        </xsl:if>
72
    </xsl:template>
73

    
74
    <xsl:template match="//tei:cb">
75
        <br/>
76
        <xsl:if test="not(preceding-sibling::*[1][self::pb])">
77
            <br/>
78
        </xsl:if>
79
        <span style="font-family:Times">[colonne <xsl:value-of select="@n"/>]</span>
80
        <br/>
81
    </xsl:template>
82

    
83
    <xsl:template match="tei:note">
84
        <xsl:variable name="note_num">
85
            <xsl:choose>
86
                <xsl:when test="@n">
87
                    <xsl:value-of select="@n"/>
88
                </xsl:when>
89
                <xsl:otherwise>
90
                    <xsl:value-of select="count(preceding::tei:note) + 1"/>
91
                </xsl:otherwise>
92
            </xsl:choose>
93
        </xsl:variable>
94
        <a style="font-size:75%;color:blue;font-family:Times" title="{.}" id="noteref_{$note_num}"
95
            href="#note_{$note_num}">
96
            <sup>[<xsl:value-of select="count(preceding::tei:note) + 1"/>]</sup>
97
        </a>
98
        <xsl:if test="following::*[1][self::tei:w]">
99
            <xsl:text> </xsl:text>
100
        </xsl:if>
101
    </xsl:template>
102

    
103
    <xsl:template match="tei:note" mode="final">
104
        <xsl:variable name="note_num">
105
            <xsl:choose>
106
                <xsl:when test="@n">
107
                    <xsl:value-of select="@n"/>
108
                </xsl:when>
109
                <xsl:otherwise>
110
                    <xsl:value-of select="position()"/>
111
                </xsl:otherwise>
112
            </xsl:choose>
113
        </xsl:variable>
114
        <span id="note_{$note_num}">
115
            <a href="#noteref_{$note_num}">[<xsl:value-of select="$note_num"/>]</a>
116
            (fol. <xsl:value-of select="preceding::tei:pb[1]/@n"/>, col. 
117
            <xsl:value-of select="preceding::tei:cb[1]/@n"/>, l. 
118
            <xsl:value-of select="preceding::tei:lb[1]/@n"/>) 
119
            <xsl:apply-templates/>
120
        </span>
121
        <br/>
122
    </xsl:template>
123

    
124
    <xsl:template match="tei:q">
125
        <span style="color:darkblue">
126
            <xsl:apply-templates/>
127
        </span>
128
    </xsl:template>
129

    
130

    
131
    <xsl:template match="tei:gap">
132
        <xsl:text> [...] </xsl:text>
133
    </xsl:template>
134
    
135
    
136
<!--    <xsl:template match="tei:q">
137
        <span style="background-color:khaki">
138
            <xsl:apply-templates/>
139
        </span>
140
    </xsl:template>-->
141
    
142
    <xsl:template match="tei:gap">
143
        <xsl:apply-templates/>
144
    </xsl:template>
145
    
146
    <xsl:template match="//tei:lb">
147
        <xsl:choose>
148
            <xsl:when
149
                test="position()=1 and not(ancestor::tei:seg)"/>
150
            <xsl:otherwise>
151
                <br/>
152
            </xsl:otherwise>
153
        </xsl:choose>
154
    </xsl:template>
155
    
156
    <xsl:template match="//tei:w">
157
        <span class="word" id="{@xml:id}" title="{@type}">
158
            <xsl:if
159
                test="starts-with(.,':') or starts-with(.,'!') or starts-with(.,'?') or starts-with(.,';')"
160
                >&#xa0;</xsl:if>
161
            <xsl:value-of select="."/>
162
            <xsl:choose>
163
                <xsl:when
164
                    test="following::*[1][starts-with(., ',') or starts-with(., '.') or starts-with(., ']') or starts-with(., ')') or starts-with(.,':') or starts-with(.,'!') or starts-with(.,'?') or starts-with(.,';')]"/>
165
                <xsl:when
166
                    test=".[string-length(.) = 0]"/>
167
                <xsl:when test="@bfm:aggl='elision'">'</xsl:when>
168
                <xsl:otherwise>
169
                    <xsl:text> </xsl:text>
170
                </xsl:otherwise>
171
            </xsl:choose>
172
        </span>
173
    </xsl:template>
174
    
175
    <xsl:template match="tei:sic" >
176
        <span style="text-decoration:line-through;color:red">
177
            <xsl:apply-templates mode="norm"/>
178
        </span>
179
    </xsl:template>
180
    
181
    <xsl:template match="tei:del"> </xsl:template>
182
    
183
    
184
    <xsl:template match="//tei:hi[@rend='sup']">
185
        <sup>
186
            <xsl:apply-templates/>
187
        </sup>
188
    </xsl:template>
189

    
190
    <!-- fin éléments communs -->
191

    
192

    
193
</xsl:stylesheet>