Mercurial > hg > mpdl-group
annotate software/eXist/webapp/mpdl/presentation/functions-mpdl.xsl @ 11:d6f528ad5d96
TEI Unterst?tzung, Fehlerbehebungen, externe Objekte
author | Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de> |
---|---|
date | Fri, 11 Mar 2011 13:34:02 +0100 |
parents | 5589d865af7a |
children | 469d927b9ca7 |
rev | line source |
---|---|
7
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
1 <?xml version="1.0"?> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
2 <xsl:stylesheet version="2.0" |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
3 xmlns:xsl="http://www.w3.org/1999/XSL/Transform" |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
4 xmlns:xlink="http://www.w3.org/1999/xlink" |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
5 xmlns:mpdl="http://www.mpiwg-berlin.mpg.de/ns/mpdl"> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
6 |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
7 <xsl:function name="mpdl:showFigure"> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
8 <xsl:param name="digilibAvailable"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
9 <xsl:param name="figureFileName"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
10 <xsl:param name="figureNumber"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
11 <xsl:param name="figureCaption"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
12 <xsl:param name="figureDescription"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
13 <xsl:param name="figureVariables"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
14 <xsl:param name="class"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
15 <xsl:variable name="fullFigureFileName"> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
16 <xsl:choose> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
17 <xsl:when test="$figureFileName != ''"><xsl:value-of select="concat($figuresImageDirectory, '/', $figureFileName)"/></xsl:when> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
18 <xsl:otherwise><xsl:value-of select="$figuresImageDirectory"/></xsl:otherwise> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
19 </xsl:choose> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
20 </xsl:variable> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
21 <xsl:variable name="nausikaaURLDlInfo" select="concat('http://nausikaa2.mpiwg-berlin.mpg.de/digitallibrary/dlInfo-xml.jsp?fn=', $fullFigureFileName)"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
22 <xsl:variable name="testFigureResult"> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
23 <xsl:choose> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
24 <xsl:when test="$digilibAvailable = 'true'"><xsl:value-of select="unparsed-text($nausikaaURLDlInfo)"/></xsl:when> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
25 <xsl:otherwise><xsl:value-of select="''"/></xsl:otherwise> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
26 </xsl:choose> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
27 </xsl:variable> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
28 <xsl:variable name="testFigureResultParamImgFn" select="substring-before(substring-after($testFigureResult, 'parameter name="img.fn" value="'), '"')"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
29 <xsl:variable name="figureIsAvailable"> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
30 <xsl:choose> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
31 <xsl:when test="$testFigureResultParamImgFn = ''"><xsl:value-of select="'false'"/></xsl:when> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
32 <xsl:otherwise><xsl:value-of select="'true'"/></xsl:otherwise> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
33 </xsl:choose> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
34 </xsl:variable> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
35 <xsl:variable name="figureWidth"> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
36 <xsl:choose> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
37 <xsl:when test="$collectionName = 'archimedes' or contains($class, 'float none')"><xsl:value-of select="'400'"/></xsl:when> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
38 <xsl:when test="$collectionName = 'echo'"><xsl:value-of select="'200'"/></xsl:when> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
39 <xsl:otherwise><xsl:value-of select="'200'"/></xsl:otherwise> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
40 </xsl:choose> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
41 </xsl:variable> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
42 <xsl:variable name="figureHeight"> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
43 <xsl:choose> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
44 <xsl:when test="$collectionName = 'archimedes' or contains($class, 'float none')"><xsl:value-of select="'400'"/></xsl:when> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
45 <xsl:when test="$collectionName = 'echo'"><xsl:value-of select="'200'"/></xsl:when> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
46 <xsl:otherwise><xsl:value-of select="'200'"/></xsl:otherwise> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
47 </xsl:choose> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
48 </xsl:variable> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
49 <xsl:variable name="figureBorder" select="'border:1px;'"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
50 <xsl:variable name="style"> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
51 <xsl:choose> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
52 <xsl:when test="$figureIsAvailable = 'true'"><xsl:value-of select="$figureBorder"/></xsl:when> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
53 <xsl:otherwise><xsl:value-of select="concat($figureBorder, 'width:', $figureWidth, ';')"/></xsl:otherwise> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
54 </xsl:choose> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
55 </xsl:variable> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
56 <xsl:if test="$collectionName = 'archimedes'"><br/></xsl:if> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
57 <xsl:variable name="figureContent"> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
58 <xsl:choose> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
59 <xsl:when test="$digilibAvailable = 'false'"> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
60 <img title="Could not fetch figure by nausikaa2.rz-berlin.mpg.de: please try again later" alt="Could not fetch figure by nausikaa2.rz-berlin.mpg.de: please try again later" src="images/camera.png" width="30" height="30" border="0"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
61 </xsl:when> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
62 <xsl:when test="$figureIsAvailable = 'true' and $figureFileName != ''"> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
63 <a href="http://echo.mpiwg-berlin.mpg.de/zogilib?fn={$fullFigureFileName}"><img alt="figure: {$figureNumber}" src="http://nausikaa2.rz-berlin.mpg.de/digitallibrary/servlet/Scaler?fn={$fullFigureFileName}&dh={$figureHeight}&dw={$figureWidth}"/></a> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
64 </xsl:when> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
65 <xsl:when test="$figureIsAvailable = 'true' and $figureFileName = ''"> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
66 <a href="http://echo.mpiwg-berlin.mpg.de/zogilib?fn={$fullFigureFileName}&pn={$figureNumber}"><img alt="figure: {$figureNumber}" src="http://nausikaa2.rz-berlin.mpg.de/digitallibrary/servlet/Scaler?fn={$fullFigureFileName}&pn={$figureNumber}&dh={$figureHeight}&dw={$figureWidth}"/></a> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
67 </xsl:when> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
68 <xsl:otherwise> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
69 <img title="Figure: {$fullFigureFileName} not scanned" alt="Figure: {$fullFigureFileName} not scanned" src="images/camera.png" width="30" height="30" border="0"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
70 </xsl:otherwise> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
71 </xsl:choose> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
72 </xsl:variable> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
73 <xsl:variable name="figureText" select="concat('[Figure: ', $figureNumber, ']')"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
74 <div class="{$class}" style="{$style}"> |
11
d6f528ad5d96
TEI Unterst?tzung, Fehlerbehebungen, externe Objekte
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
7
diff
changeset
|
75 <xsl:if test="$figureCaption != ''"><xsl:sequence select="$figureCaption"/><br/></xsl:if> |
7
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
76 <xsl:sequence select="$figureContent"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
77 <br/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
78 <xsl:value-of select="$figureText"/> |
11
d6f528ad5d96
TEI Unterst?tzung, Fehlerbehebungen, externe Objekte
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
7
diff
changeset
|
79 <xsl:if test="$figureDescription != ''"><xsl:value-of select="': '"/><xsl:sequence select="$figureDescription"/></xsl:if> |
d6f528ad5d96
TEI Unterst?tzung, Fehlerbehebungen, externe Objekte
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
7
diff
changeset
|
80 <xsl:if test="$figureVariables != ''"><xsl:value-of select="'(Variables: '"/><xsl:sequence select="$figureVariables"/><xsl:value-of select="')'"/></xsl:if> |
7
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
81 </div> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
82 </xsl:function> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
83 |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
84 <xsl:function name="mpdl:showHandwritten"> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
85 <xsl:param name="fileName"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
86 <xsl:param name="href"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
87 <xsl:variable name="handwrittenText" select="'[Handwritten]'"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
88 <div class="handwritten"> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
89 <img title="Handwritten: {$href} not scanned" alt="Handwritten: {$href} not scanned" src="images/camera.png" width="30" height="30" border="0"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
90 <br/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
91 <xsl:value-of select="$handwrittenText"/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
92 <p/> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
93 </div> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
94 </xsl:function> |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
95 |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
96 |
5589d865af7a
Erstellung XQL/XSL Applikation
Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de>
parents:
diff
changeset
|
97 </xsl:stylesheet> |