Statistics
| Revision:

root / tmp / org.txm.core / res / org / txm / xml / xsl / txm-edition-xtz-corpusakkadien-translit.xsl @ 187

History | View | Annotate | Download (7.6 kB)

1
<?xml version="1.0"?>
2
<xsl:stylesheet xmlns:edate="http://exslt.org/dates-and-times"
3
	xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:tei="http://www.tei-c.org/ns/1.0" xmlns:txm="http://textometrie.org/1.0"
4
	exclude-result-prefixes="#all" version="2.0">
5
	
6
	<xsl:output method="xml" encoding="UTF-8" omit-xml-declaration="no" indent="no"  doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
7
	
8
	<xsl:strip-space elements="*"/>
9
	
10
	<xsl:param name="editionpagetag">pb</xsl:param>
11
	
12
	<xsl:param name="textcontainer">text</xsl:param>
13
	
14
	<!--<xsl:param name="frontmatter"></xsl:param>
15
	
16
	<xsl:param name="backmatter">back</xsl:param>-->
17
	
18
	<xsl:variable name="inputtype">
19
		<xsl:choose>
20
			<xsl:when test="//tei:w//txm:form">xmltxm</xsl:when>
21
			<xsl:otherwise>xmlw</xsl:otherwise>
22
		</xsl:choose>
23
	</xsl:variable>
24
	
25
	<xsl:template match="/">
26
		<html>
27
			<head>
28
				<title><xsl:value-of select="//tei:text[1]/@id"/></title>
29
				<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
30
			</head>
31
			<body>
32
				<a class="txm-page" title="1"/>
33
				<div class="metadata-page">
34
					<h1><xsl:value-of select="//tei:text[1]/@id"></xsl:value-of></h1>
35
					<br/>
36
					<table>
37
						<xsl:for-each select="//tei:text[1]/@*">
38
							<tr>
39
								<td><xsl:value-of select="name()"/></td>
40
								<td><xsl:value-of select="."/></td>
41
							</tr>
42
						</xsl:for-each>
43
					</table>
44
					<br/>
45
					<br/>
46
				</div>
47
				<xsl:apply-templates select="descendant::*[local-name()=$textcontainer]"/>
48
				
49
				
50
			</body>
51
		</html>
52
	</xsl:template>
53
	
54
	<xsl:template match="//*[local-name()=$textcontainer]">
55
		<xsl:variable name="pbcount"></xsl:variable>
56
		
57
		<div class="text" style="margin-left:60px;">
58
			<xsl:apply-templates/>
59
		</div>
60
	</xsl:template>
61
	
62
		
63
	
64
	<xsl:template match="*">
65
		<xsl:choose>
66
			<xsl:when test="descendant::tei:p|descendant::tei:ab">
67
				<div>
68
					<xsl:call-template name="addClass"/>
69
					<xsl:apply-templates/></div>
70
				<xsl:text>&#xa;</xsl:text>
71
			</xsl:when>
72
			<xsl:otherwise><span>
73
				<xsl:call-template name="addClass"/>
74
				<xsl:if test="self::tei:add[@del]">
75
					<xsl:attribute name="title"><xsl:value-of select="@del"/></xsl:attribute>
76
				</xsl:if>
77
				<xsl:apply-templates/></span>
78
			</xsl:otherwise>
79
		</xsl:choose>
80
	</xsl:template>
81
	
82
	<xsl:template match="@*|processing-instruction()|comment()">
83

    
84
	</xsl:template>
85
	
86
	<xsl:template match="text()">
87
		<xsl:value-of select="normalize-space(.)"/>
88
	</xsl:template>
89
	
90
	<xsl:template name="addClass">
91
		<xsl:attribute name="class">
92
			<xsl:value-of select="local-name(.)"/>
93
			<xsl:if test="@type"><xsl:value-of select="concat('-',@type)"/></xsl:if>
94
			<xsl:if test="@subtype"><xsl:value-of select="concat('-',@subtype)"/></xsl:if>
95
			<xsl:if test="@rend"><xsl:value-of select="concat('-',@rend)"/></xsl:if>
96
		</xsl:attribute>                	
97
	</xsl:template>
98
	
99

    
100
	
101
	<xsl:template match="//word">
102
		<xsl:choose>
103
			<xsl:when test="@line = preceding::word[1]/@line"><xsl:text> </xsl:text></xsl:when>
104
			<xsl:otherwise><br/><xsl:text>&#xa;</xsl:text><span style="position:relative"><span class="linenumber" style="position:absolute;width:40px;left:-50px;padding-right:20px;text-align:right"><xsl:value-of select="@line"/>&#xa0;</span></span></xsl:otherwise>
105
		</xsl:choose>
106
		<span>
107
			<xsl:call-template name="addClass"/>
108
			<xsl:apply-templates/>
109
		</span>
110
	</xsl:template>
111
	
112
	
113
	
114
	<!-- Page breaks -->                
115
	<xsl:template match="//*[local-name()=$editionpagetag]">
116
		<xsl:variable name="editionpagetype">
117
			<xsl:choose>
118
				<xsl:when test="ancestor::tei:ab">editionpageverse</xsl:when>
119
				<xsl:otherwise>editionpage</xsl:otherwise>
120
			</xsl:choose>
121
		</xsl:variable>
122
		<xsl:variable name="pagenumber">
123
			<xsl:choose>
124
				<xsl:when test="@n"><xsl:value-of select="@n"/></xsl:when>
125
				<xsl:when test="@facs"><xsl:value-of select="substring-before(@facs,'.')"/></xsl:when>
126
				<xsl:otherwise>[NN]</xsl:otherwise>
127
			</xsl:choose>
128
		</xsl:variable>
129
		
130
		<xsl:variable name="page_id"><xsl:value-of select="count(preceding::*[local-name()=$editionpagetag])"/></xsl:variable>
131
		<xsl:if test="@break='no'"><span class="hyphen">-</span></xsl:if>
132
		<xsl:if test="//tei:note[not(@place='inline') and not(matches(@type,'intern|auto'))][following::*[local-name()=$editionpagetag][1][count(preceding::*[local-name()=$editionpagetag]) = $page_id]]">
133
			<xsl:text>&#xa;</xsl:text>
134
			<br/>
135
			<br/>			
136
			<span class="footnotes">
137
				<xsl:for-each select="//tei:note[not(@place='inline') and not(matches(@type,'intern|auto'))][following::*[local-name()=$editionpagetag][1][count(preceding::*[local-name()=$editionpagetag]) = $page_id]]">
138
					<xsl:variable name="note_count"><xsl:value-of select="count(preceding::tei:note[not(@place='inline')]) + 1"/></xsl:variable>
139
					<!--<p><xsl:value-of select="$note_count"/>. <a href="#noteref_{$note_count}" name="note_{$note_count}">[<xsl:value-of select="preceding::tei:cb[1]/@xml:id"/>, l. <xsl:value-of select="preceding::tei:lb[1]/@n"/>]</a><xsl:text> </xsl:text> <xsl:value-of select="."/></p>-->
140
					<span class="note">
141
						<span class="footnotenumber"><a href="#noteref_{$note_count}" name="note_{$note_count}"><xsl:value-of select="$note_count"/></a>. </span>
142
						<xsl:apply-templates mode="#current"/>
143
					</span>                                                                
144
				</xsl:for-each></span><xsl:text>&#xa;</xsl:text>                                                                
145
			
146
		</xsl:if>                                
147
		
148
		<xsl:text>&#xa;</xsl:text>
149
		<br/><xsl:text>&#xa;</xsl:text>
150
		<a class="txm-page" title="{count(preceding::*[local-name()=$editionpagetag]) + 2}"/>
151
		<span class="{$editionpagetype}"> - <xsl:value-of select="$pagenumber"/> - </span><br/><xsl:text>&#xa;</xsl:text>
152
	</xsl:template>
153
	
154
	<!-- Notes -->
155
<!--	<xsl:template match="tei:note[not(@place='inline') and not(matches(@type,'intern|auto'))]">
156
		<!-\-<span style="color:violet"> [<b>Note :</b> <xsl:apply-templates/>] </span>-\->	
157
		<xsl:variable name="note_count"><xsl:value-of select="count(preceding::tei:note[not(@place='inline') and not(matches(@type,'intern|auto'))]) + 1"/></xsl:variable>
158
		<a title="{.}" class="noteref" href="#note_{$note_count}" name="noteref_{$note_count}">[<xsl:value-of select="$note_count"/>]</a>
159
		<xsl:call-template name="spacing"/>                                
160
	</xsl:template>
161
-->	
162
	
163
	<xsl:template match="//w"><span class="w">
164
		<xsl:if test="@id">
165
			<xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
166
		</xsl:if>
167
		<xsl:attribute name="title">
168
			<xsl:choose>
169
				<xsl:when test="descendant::txm:ana">
170
					<xsl:for-each select="descendant::txm:ana">
171
						<xsl:value-of select="concat(substring(@type,2),': ',.,' ; ')"/>				
172
					</xsl:for-each>
173
					<xsl:value-of select="concat('translit : ',descendant::txm:form)"/>
174
				</xsl:when>
175
				<xsl:otherwise>
176
					<xsl:for-each select="@*">
177
						<xsl:value-of select="concat(name(),': ',.,' ; ')"/>				
178
					</xsl:for-each>
179
					<xsl:value-of select="concat('translit : ',.)"/>
180
				</xsl:otherwise>
181
			</xsl:choose>
182

    
183
		</xsl:attribute>
184
		<xsl:choose>
185
			<xsl:when test="descendant::txm:form">
186
				<xsl:apply-templates select="txm:form"/>
187
			</xsl:when>
188
			<xsl:otherwise>
189
				<xsl:value-of select="."/>
190
			</xsl:otherwise>
191
		</xsl:choose>
192
		
193
	</span>
194
		<xsl:if test="following-sibling::w">-</xsl:if>
195
	</xsl:template>
196
	
197
	
198
	                <xsl:template match="//txm:form">
199
	                		<xsl:value-of select="."/>
200
                </xsl:template>
201
                
202
	
203
	
204
</xsl:stylesheet>