source: trunk/bibnemomaf02_xml.xsl @ 32

Last change on this file since 32 was 28, checked in by pinsard, 17 years ago

improve diacritical authors sort in table and lists

File size: 6.4 KB
Line 
1<?xml version="1.0" encoding="iso-8859-1"?>
2
3<!--
4module :
5sortir les références bibliographiques par personne
6
7source :
8/usr/home/fplod/incas/bibnemo/src/bibnemomaf/bibnemomaf02_xml.xsl sur aedon.locean-ipsl.upmc.fr
9
10update :
11fplod 2007-10-17T07:49:19Z aedon.locean-ipsl.upmc.fr (Darwin)
12improve sort (diacriticals)
13fplod 2007-05-18T14:31:33Z aedon.locean-ipsl.upmc.fr (Darwin)
14modif gestion id
15fplod 2007-05-16T15:15:36Z aedon.locean-ipsl.upmc.fr (Darwin)
16correction pour homonymes partiels
17fplod 2007-05-04T08:17:56Z aedon.locean-ipsl.upmc.fr (Darwin)
18externalisation de biblioentry
19fplod 2007-04-02T08:53:30Z aedon.locean-ipsl.upmc.fr (Darwin)
20journal dans biblioset
21fplod 2007-03-30T12:38:34Z aedon.locean-ipsl.upmc.fr (Darwin)
22creation
23-->
24
25<xsl:stylesheet
26 id="id" version="1.0"
27 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
28
29<xsl:output
30 method="xml"
31 indent="yes"
32 encoding="utf-8"
33 omit-xml-declaration="no"
34 doctype-public="-//OASIS//DTD DocBook XML V4.5//EN"
35 doctype-system="http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"/>
36
37<xsl:include href="firstname_id.xsl"/>
38<xsl:include href="surname_id.xsl"/>
39<xsl:include href="table_authors.xsl"/>
40<xsl:include href="biblioentry_xml.xsl"/>
41
42<xsl:variable name="list_author_ids" select="///author[not( self::node() = following::author )]"/>
43
44<xsl:template match="bibliography">
45
46<article lang="en">
47<title>NEMO - Publications - Papers by authors</title>
48<articleinfo>
49<authorgroup>
50<author><personname><firstname>Sébastien</firstname> <surname>Masson</surname></personname></author>
51<author><personname><firstname>Françoise</firstname> <surname>Pinsard</surname></personname></author>
52<!--++-->
53</authorgroup>
54<keywordset>
55<keyword>NEMO</keyword>
56</keywordset>
57<!-- ++ date -->
58</articleinfo>
59<highlights id="top">
60<para>
61 This page intents to provide an exhaustive list of the papers that have used NEMO or OPA and/or results from them. Obvioulsy many papers are missing. If you find omissions or mistakes please ask some modification via
62<xsl:element name="ulink">
63 <xsl:attribute name="url">
64  <xsl:value-of select="'./bibnemomain.php'"/>
65 </xsl:attribute>
66 <xsl:text>Nemo Survey main page</xsl:text>
67</xsl:element>.
68</para>
69</highlights>
70<para>
71You can also see <quote>NEMO - Publications - Papers</quote> sorted by
72<xsl:element name="ulink">
73 <xsl:attribute name="url">
74  <xsl:value-of select="'./bibnemomaf01.html'"/>
75 </xsl:attribute>
76<xsl:text>years</xsl:text>
77</xsl:element>.
78</para>
79<para>
80Last update of the bibliography databank : <xsl:value-of select="bibliographyinfo/date"/>
81</para>
82
83<sect1 id="intro">
84<title>Introduction</title>
85<para>
86This document provide bibliography sorted by author's id (<emphasis>SURNAME_f</emphasis>).
87</para>
88</sect1>
89
90<xsl:call-template name="table_authors">
91<xsl:with-param name="linktype" select="'internal'"/>
92</xsl:call-template>
93
94<!-- loop on author_ids -->
95<xsl:for-each select="$list_author_ids">
96<xsl:sort order="ascending" data-type="text" select="translate(.,'abcdefghijklmnopqrstuvwxyz éèçàùëöñó', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_EECAUEONO')"/>
97<xsl:variable name="author_id2">
98<xsl:call-template name="surname_id">
99 <xsl:with-param name="surname" select="personname/surname"/>
100</xsl:call-template>
101<xsl:text>_</xsl:text>
102<xsl:call-template name="firstname_id">
103 <xsl:with-param name="firstname" select="personname/firstname"/>
104</xsl:call-template>
105</xsl:variable>
106<!--
107<xsl:message terminate="no">
108noeud courant <xsl:value-of select="name(.)"/>
109author <xsl:value-of select="ancestor::author"/>
110author_id2 <xsl:value-of select="$author_id2"/>
111</xsl:message>
112-->
113<xsl:call-template name="one_author_id">
114<xsl:with-param name="author_id" select="$author_id2"/>
115<xsl:with-param name="author_name" select="."/>
116</xsl:call-template>
117</xsl:for-each>
118
119</article>
120</xsl:template>
121
122<xsl:template match="bibliographyinfo/date"/>
123<xsl:template match="bibliography/title"/>
124
125<xsl:template name="one_author_id">
126<xsl:param name="author_id"/>
127<xsl:param name="author_name"/>
128<!--
129<xsl:message terminate="no">
130call template avec <xsl:value-of select="$author_id"/>
131et <xsl:value-of select="$author_name"/>
132noeud courant <xsl:value-of select="name(.)"/>
133</xsl:message>
134-->
135<!--
136<xsl:message terminate="no">
137author_id_<xsl:value-of select="$author_id"/> : <xsl:value-of select="count(/descendant::biblioentry[descendant::surname=$author_id])"/>
1382 author_id_<xsl:value-of select="$author_id"/> : <xsl:value-of select="count(/descendant::biblioentry[descendant::author=$author_name])"/>
139</xsl:message>
140-->
141<xsl:element name="sect1">
142<xsl:attribute name="id">
143<xsl:value-of select="$author_id"/>
144</xsl:attribute>
145<xsl:element name="title">
146<xsl:value-of select="$author_name"/>
147<xsl:element name="ulink">
148<xsl:attribute name="url"><xsl:text>#top</xsl:text></xsl:attribute>
149<xsl:element name="inlinemediaobject">
150<xsl:element name="imageobject">
151<xsl:element name="imagedata">
152<xsl:attribute name="fileref">../../images/globalicondl11x10_up.gif</xsl:attribute>
153</xsl:element>
154     </xsl:element>
155     <xsl:element name="textobject">
156      <xsl:element name="phrase">
157       <xsl:text>top</xsl:text>
158      </xsl:element>
159     </xsl:element>
160    </xsl:element>
161   </xsl:element>
162  </xsl:element>
163  <xsl:element name="orderedlist">
164   <xsl:for-each select="//biblioentry">
165    <xsl:sort order="descending" data-type="number" select="./biblioset/pubdate"/>
166    <xsl:for-each select="descendant::author">
167     <xsl:sort order="ascending" data-type="text" select="./personname/surname"/>
168     <xsl:sort order="ascending" data-type="text" select="./personname/firstname"/>
169     <xsl:variable name="author_id2">
170<xsl:call-template name="surname_id">
171 <xsl:with-param name="surname" select="personname/surname"/>
172</xsl:call-template>
173      <xsl:text>_</xsl:text>
174<xsl:call-template name="firstname_id">
175 <xsl:with-param name="firstname" select="personname/firstname"/>
176</xsl:call-template>
177     </xsl:variable>
178
179<!--
180     <xsl:message terminate="no">
181      ref #<xsl:value-of select="position()"/>
182      _id appel <xsl:value-of select="$author_id"/>
183      _id fabrique <xsl:value-of select="$author_id2"/>
184      egal ? <xsl:value-of select="$author_id2 = $author_id"/>
185     </xsl:message>
186-->
187     <xsl:if test="$author_id2 = $author_id">
188  <xsl:call-template name="one_biblioentry">
189   <xsl:with-param name="visu_modif" select="'visu'"/>
190   <xsl:with-param name="my_biblioentry" select="ancestor::biblioentry"/>
191  </xsl:call-template>
192     </xsl:if>
193    </xsl:for-each>
194   </xsl:for-each>
195  </xsl:element>
196 </xsl:element>
197</xsl:template>
198
199</xsl:stylesheet>
Note: See TracBrowser for help on using the repository browser.