source: trunk/superbibmany01_xml.xsl @ 65

Last change on this file since 65 was 64, checked in by pinsard, 16 years ago

several bug fixes, improvement for conferences (but not complety ok), introducing test in makefile

  • Property svn:keywords set to Id
File size: 6.3 KB
Line 
1<?xml version="1.0" encoding="iso-8859-1"?>
2<xsl:stylesheet
3xmlns:d="http://docbook.org/ns/docbook"
4xmlns:xl="http://www.w3.org/1999/xlink"
5xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
6version="1.0"> 
7
8<!--
9module :
10produce one DocBook 5 with bibliograhy references of one author in each
11
12this DocBook will be chuncked for html output
13
14update :
15$Id$
16fplod 2008-04-30T14:52:20Z aedon.locean-ipsl.upmc.fr (Darwin)
17language inherited from biblio.xml
18fplod 2008-04-29T15:57:17Z aedon.locean-ipsl.upmc.fr (Darwin)
19chgt for dbk5 in
20fplod 2008-04-29T08:20:09Z aedon.locean-ipsl.upmc.fr (Darwin)
21chgt for dbk5 out
22fplod 2007-10-17T08:03:44Z aedon.locean-ipsl.upmc.fr (Darwin)
23improve sort (diacriticals)
24fplod 2007-05-18T14:57:52Z aedon.locean-ipsl.upmc.fr (Darwin)
25modif gestion id
26fplod 2007-05-16T15:19:57Z aedon.locean-ipsl.upmc.fr (Darwin)
27correction pour homonymes partiels
28fplod 2007-05-04T09:23:05Z aedon.locean-ipsl.upmc.fr (Darwin)
29création à partir de bibnemomaf02_xml.xsl mais liens externes
30-->
31
32<xsl:output
33 method="xml"
34 indent="yes"
35 omit-xml-declaration="no"/>
36
37
38<xsl:include href="firstname_id.xsl"/>
39<xsl:include href="surname_id.xsl"/>
40<xsl:include href="table_authors.xsl"/>
41<xsl:include href="biblioentry_xml.xsl"/>
42
43<xsl:variable name="list_author_ids" select="///d:author[not( self::node() = following::d:author )]"/>
44
45<xsl:template match="d:bibliography">
46
47<xsl:element name="article">
48<xsl:attribute name="version">5.0</xsl:attribute>
49<xsl:attribute name="xmlns">http://docbook.org/ns/docbook</xsl:attribute>
50<xsl:attribute name="xml:lang"><xsl:value-of select="@xml:lang"/></xsl:attribute>
51<title>NEMO - Publications - Papers by authors</title>
52<info>
53<authorgroup>
54<author><personname><firstname>Sébastien</firstname> <surname>Masson</surname></personname></author>
55<author><personname><firstname>Françoise</firstname> <surname>Pinsard</surname></personname></author>
56<!--++-->
57</authorgroup>
58<keywordset>
59<keyword>NEMO</keyword>
60</keywordset>
61<!-- ++ date -->
62</info>
63<para>
64 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
65<xsl:element name="link">
66 <xsl:attribute name="xl:href">
67  <xsl:value-of select="'../../one/main.php'"/>
68 </xsl:attribute>
69 <xsl:text>Nemo Survey main page</xsl:text>
70</xsl:element>.
71</para>
72<para>
73You can also see <quote>NEMO - Publications - Papers</quote> sorted by
74<xsl:element name="link">
75 <xsl:attribute name="xl:href">
76  <xsl:value-of select="'../../one/superbib01.html'"/>
77 </xsl:attribute>
78<xsl:text>years</xsl:text>
79</xsl:element>.
80</para>
81<xsl:call-template name="para_lastupdate_bib">
82 <xsl:with-param name="language" select="@xml:lang"/>
83 <xsl:with-param name="date" select="d:info/d:date"/>
84</xsl:call-template>
85
86<sect1 xml:id="intro">
87<title>Introduction</title>
88<para>
89This document provide bibliography sorted by author's id (<emphasis>SURNAME_f</emphasis>).
90</para>
91
92<xsl:call-template name="table_authors">
93<xsl:with-param name="linktype" select="'external'"/>
94</xsl:call-template>
95</sect1>
96
97<!-- loop on author_ids -->
98<xsl:for-each select="$list_author_ids">
99<xsl:sort order="ascending" data-type="text" select="translate(.,'abcdefghijklmnopqrstuvwxyz éèçàùëöñó', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_EECAUEONO')"/>
100<xsl:variable name="author_id2">
101<xsl:call-template name="surname_id">
102 <xsl:with-param name="surname" select="d:personname/d:surname"/>
103</xsl:call-template>
104<xsl:text>_</xsl:text>
105<xsl:call-template name="firstname_id">
106 <xsl:with-param name="firstname" select="d:personname/d:firstname"/>
107</xsl:call-template>
108</xsl:variable>
109<!--
110<xsl:message terminate="no">
111noeud courant <xsl:value-of select="name(.)"/>
112author <xsl:value-of select="."/>
113author_id2 <xsl:value-of select="$author_id2"/>
114</xsl:message>
115-->
116<xsl:call-template name="one_author_id">
117<xsl:with-param name="author_id" select="$author_id2"/>
118<xsl:with-param name="author_name" select="."/>
119</xsl:call-template>
120</xsl:for-each>
121
122</xsl:element>
123</xsl:template>
124
125<xsl:template match="d:info/d:date"/>
126<xsl:template match="d:bibliography/d:title"/>
127
128<xsl:template name="one_author_id">
129<xsl:param name="author_id"/>
130<xsl:param name="author_name"/>
131<!--
132<xsl:message terminate="no">
133call template avec <xsl:value-of select="$author_id"/>
134et <xsl:value-of select="$author_name"/>
135noeud courant <xsl:value-of select="name(.)"/>
136</xsl:message>
137-->
138<!--
139<xsl:message terminate="no">
140author_id_<xsl:value-of select="$author_id"/> : <xsl:value-of select="count(/descendant::d:biblioentry[descendant::d:surname=$author_id])"/>
1412 author_id_<xsl:value-of select="$author_id"/> : <xsl:value-of select="count(/descendant::d:biblioentry[descendant::d:author=$author_name])"/>
142</xsl:message>
143-->
144<xsl:element name="sect1">
145<xsl:attribute name="xml:id">
146<xsl:value-of select="$author_id"/>
147</xsl:attribute>
148<xsl:element name="title">
149<xsl:value-of select="$author_name"/>
150</xsl:element>
151  <xsl:element name="orderedlist">
152  <!--
153    <xsl:for-each select="/descendant::d:biblioentry[descendant::d:author=$author_name]">
154  -->
155   <xsl:for-each select="//d:biblioentry">
156    <xsl:sort order="descending" data-type="number" select="./d:biblioset/d:pubdate"/>
157
158    <xsl:for-each select="descendant::d:author">
159     <xsl:sort order="ascending" data-type="text" select="translate(./d:personname,'abcdefghijklmnopqrstuvwxyz éèçàùëöñó', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_EECAUEONO')"/>
160     <xsl:variable name="author_id2">
161<xsl:call-template name="surname_id">
162 <xsl:with-param name="surname" select="d:personname/d:surname"/>
163</xsl:call-template>
164<xsl:text>_</xsl:text>
165<xsl:call-template name="firstname_id">
166 <xsl:with-param name="firstname" select="d:personname/d:firstname"/>
167</xsl:call-template>
168     </xsl:variable>
169
170<!--
171     <xsl:message terminate="no">
172      ref #<xsl:value-of select="position()"/>
173      _id appel <xsl:value-of select="$author_id"/>
174      _id fabrique <xsl:value-of select="$author_id2"/>
175      egal ? <xsl:value-of select="$author_id2 = $author_id"/>
176     </xsl:message>
177-->
178     <xsl:if test="$author_id2 = $author_id">
179  <xsl:call-template name="one_biblioentry">
180   <xsl:with-param name="visu_modif" select="'visu'"/>
181   <xsl:with-param name="my_biblioentry" select="ancestor::d:biblioentry"/>
182  </xsl:call-template>
183     </xsl:if>
184    </xsl:for-each>
185   </xsl:for-each>
186  </xsl:element>
187 </xsl:element>
188</xsl:template>
189
190</xsl:stylesheet>
Note: See TracBrowser for help on using the repository browser.