]> git.lyx.org Git - lyx.git/blob - lib/docbook/xhtml/biblio.xsl
Release notes
[lyx.git] / lib / docbook / xhtml / biblio.xsl
1 <?xml version="1.0" encoding="ASCII"?><!--This file was created automatically by html2xhtml--><!--from the HTML stylesheets.--><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:d="http://docbook.org/ns/docbook" xmlns="http://www.w3.org/1999/xhtml" exclude-result-prefixes="d" version="1.0">
2
3 <!-- ********************************************************************
4
5      This file is part of the XSL DocBook Stylesheet distribution.
6      See ../README or http://cdn.docbook.org/release/xsl/current/ for
7      copyright and other information.
8
9      ******************************************************************** -->
10
11 <!-- ==================================================================== -->
12
13 <xsl:template match="d:bibliography">
14   <xsl:call-template name="id.warning"/>
15
16   <div>
17     <xsl:call-template name="common.html.attributes">
18       <xsl:with-param name="inherit" select="1"/>
19     </xsl:call-template>
20     <xsl:call-template name="id.attribute">
21       <xsl:with-param name="conditional" select="0"/>
22     </xsl:call-template>
23
24     <xsl:call-template name="bibliography.titlepage"/>
25
26     <xsl:apply-templates/>
27
28     <xsl:if test="not(parent::d:article)">
29       <xsl:call-template name="process.footnotes"/>
30     </xsl:if>
31   </div>
32 </xsl:template>
33
34 <xsl:template match="d:bibliography/d:bibliographyinfo"/>
35 <xsl:template match="d:bibliography/d:info"/>
36 <xsl:template match="d:bibliography/d:title"/>
37 <xsl:template match="d:bibliography/d:subtitle"/>
38 <xsl:template match="d:bibliography/d:titleabbrev"/>
39
40 <!-- ==================================================================== -->
41
42 <xsl:template match="d:bibliodiv">
43   <xsl:call-template name="id.warning"/>
44
45   <div>
46     <xsl:call-template name="common.html.attributes">
47       <xsl:with-param name="inherit" select="0"/>
48     </xsl:call-template>
49     <xsl:call-template name="id.attribute">
50       <xsl:with-param name="conditional" select="0"/>
51     </xsl:call-template>
52     <xsl:apply-templates/>
53   </div>
54 </xsl:template>
55
56 <xsl:template match="d:bibliodiv/d:title">
57   <h3>
58     <xsl:call-template name="common.html.attributes"/>
59     <xsl:call-template name="anchor">
60       <xsl:with-param name="node" select=".."/>
61       <xsl:with-param name="conditional" select="0"/>
62     </xsl:call-template>
63     <xsl:apply-templates/>
64   </h3>
65 </xsl:template>
66
67 <!-- ==================================================================== -->
68
69 <xsl:template match="d:bibliolist">
70   <div>
71     <xsl:call-template name="common.html.attributes">
72       <xsl:with-param name="inherit" select="0"/>
73     </xsl:call-template>
74     <xsl:call-template name="id.attribute"/>
75     <xsl:call-template name="anchor"/>
76     <xsl:if test="d:blockinfo/d:title|d:info/d:title|d:title">
77       <xsl:call-template name="formal.object.heading"/>
78     </xsl:if>
79     <xsl:apply-templates select="*[not(self::d:blockinfo)                                    and not(self::d:info)                                    and not(self::d:title)                                    and not(self::d:titleabbrev)                                    and not(self::d:biblioentry)                                    and not(self::d:bibliomixed)]"/>
80     <xsl:apply-templates select="d:biblioentry|d:bibliomixed"/>
81   </div>
82 </xsl:template>
83
84 <!-- ==================================================================== -->
85
86 <xsl:template match="d:biblioentry">
87   <xsl:param name="label">
88     <xsl:call-template name="biblioentry.label"/>
89   </xsl:param>
90
91   <xsl:variable name="id">
92     <xsl:call-template name="object.id"/>
93   </xsl:variable>
94
95   <xsl:choose>
96     <xsl:when test="string(.) = ''">
97       <xsl:variable name="bib" select="document($bibliography.collection,.)"/>
98       <xsl:variable name="entry" select="$bib/d:bibliography//                                          *[@id=$id or @xml:id=$id][1]"/>
99       <xsl:choose>
100         <xsl:when test="$entry">
101           <xsl:choose>
102             <xsl:when test="$bibliography.numbered != 0">
103               <xsl:apply-templates select="$entry">
104                 <xsl:with-param name="label" select="$label"/>
105               </xsl:apply-templates>
106             </xsl:when>
107             <xsl:otherwise>
108               <xsl:apply-templates select="$entry"/>
109             </xsl:otherwise>
110           </xsl:choose>
111         </xsl:when>
112         <xsl:otherwise>
113           <xsl:message>
114             <xsl:text>No bibliography entry: </xsl:text>
115             <xsl:value-of select="$id"/>
116             <xsl:text> found in </xsl:text>
117             <xsl:value-of select="$bibliography.collection"/>
118           </xsl:message>
119           <div>
120             <xsl:call-template name="common.html.attributes"/>
121             <xsl:call-template name="id.attribute"/>
122             <xsl:call-template name="anchor"/>
123             <p>
124               <xsl:copy-of select="$label"/>
125               <xsl:text>Error: no bibliography entry: </xsl:text>
126               <xsl:value-of select="$id"/>
127               <xsl:text> found in </xsl:text>
128               <xsl:value-of select="$bibliography.collection"/>
129             </p>
130           </div>
131         </xsl:otherwise>
132       </xsl:choose>
133     </xsl:when>
134     <xsl:otherwise>
135       <div>
136         <xsl:call-template name="common.html.attributes"/>
137         <xsl:call-template name="id.attribute">
138           <xsl:with-param name="conditional" select="0"/>
139         </xsl:call-template>
140         <xsl:call-template name="anchor">
141           <xsl:with-param name="conditional" select="0"/>
142         </xsl:call-template>
143         <p>
144           <xsl:copy-of select="$label"/>
145           <xsl:choose>
146             <xsl:when test="$bibliography.style = 'iso690'">
147               <xsl:call-template name="iso690.makecitation"/>
148             </xsl:when>
149             <xsl:otherwise>
150               <xsl:apply-templates mode="bibliography.mode"/>
151             </xsl:otherwise>
152           </xsl:choose>
153         </p>
154       </div>
155     </xsl:otherwise>
156   </xsl:choose>
157 </xsl:template>
158
159 <xsl:template match="d:bibliomixed">
160   <xsl:param name="label">
161     <xsl:call-template name="biblioentry.label"/>
162   </xsl:param>
163
164   <xsl:variable name="id">
165     <xsl:call-template name="object.id"/>
166   </xsl:variable>
167
168   <xsl:choose>
169     <xsl:when test="string(.) = ''">
170       <xsl:variable name="bib" select="document($bibliography.collection,.)"/>
171       <xsl:variable name="entry" select="$bib/d:bibliography//                                          *[@id=$id or @xml:id=$id][1]"/>
172       <xsl:choose>
173         <xsl:when test="$entry">
174           <xsl:choose>
175             <xsl:when test="$bibliography.numbered != 0">
176               <xsl:apply-templates select="$entry">
177                 <xsl:with-param name="label" select="$label"/>
178               </xsl:apply-templates>
179             </xsl:when>
180             <xsl:otherwise>
181               <xsl:apply-templates select="$entry"/>
182             </xsl:otherwise>
183           </xsl:choose>
184         </xsl:when>
185         <xsl:otherwise>
186           <xsl:message>
187             <xsl:text>No bibliography entry: </xsl:text>
188             <xsl:value-of select="$id"/>
189             <xsl:text> found in </xsl:text>
190             <xsl:value-of select="$bibliography.collection"/>
191           </xsl:message>
192           <div>
193             <xsl:call-template name="common.html.attributes"/>
194             <xsl:call-template name="id.attribute"/>
195             <xsl:call-template name="anchor"/>
196             <p>
197               <xsl:copy-of select="$label"/>
198               <xsl:text>Error: no bibliography entry: </xsl:text>
199               <xsl:value-of select="$id"/>
200               <xsl:text> found in </xsl:text>
201               <xsl:value-of select="$bibliography.collection"/>
202             </p>
203           </div>
204         </xsl:otherwise>
205       </xsl:choose>
206     </xsl:when>
207     <xsl:otherwise>
208       <div>
209         <xsl:call-template name="common.html.attributes"/>
210         <xsl:call-template name="id.attribute">
211           <xsl:with-param name="conditional" select="0"/>
212         </xsl:call-template>
213         <xsl:call-template name="anchor">
214           <xsl:with-param name="conditional" select="0"/>
215         </xsl:call-template>
216         <p>
217           <xsl:call-template name="common.html.attributes"/>
218           <xsl:copy-of select="$label"/>
219           <xsl:apply-templates mode="bibliomixed.mode"/>
220         </p>
221       </div>
222     </xsl:otherwise>
223   </xsl:choose>
224 </xsl:template>
225
226 <xsl:template name="biblioentry.label">
227   <xsl:param name="node" select="."/>
228
229   <xsl:choose>
230     <xsl:when test="$bibliography.numbered != 0">
231       <xsl:text>[</xsl:text>
232       <xsl:number from="d:bibliography" count="d:biblioentry|d:bibliomixed" level="any" format="1"/>
233       <xsl:text>] </xsl:text>
234     </xsl:when>
235     <xsl:when test="local-name($node/child::*[1]) = 'abbrev'">
236       <xsl:text>[</xsl:text>
237       <xsl:apply-templates select="$node/d:abbrev[1]"/>
238       <xsl:text>] </xsl:text>
239     </xsl:when>
240     <xsl:when test="$node/@xreflabel">
241       <xsl:text>[</xsl:text>
242       <xsl:value-of select="$node/@xreflabel"/>
243       <xsl:text>] </xsl:text>
244     </xsl:when>
245     <xsl:when test="$node/@id">
246       <xsl:text>[</xsl:text>
247       <xsl:value-of select="$node/@id"/>
248       <xsl:text>] </xsl:text>
249     </xsl:when>
250     <xsl:when test="$node/@xml:id">
251       <xsl:text>[</xsl:text>
252       <xsl:value-of select="$node/@xml:id"/>
253       <xsl:text>] </xsl:text>
254     </xsl:when>
255     <xsl:otherwise><!-- nop --></xsl:otherwise>
256   </xsl:choose>
257 </xsl:template>
258
259 <!-- ==================================================================== -->
260
261 <xsl:template match="*" mode="bibliography.mode">
262   <xsl:apply-templates select="."/><!-- try the default mode -->
263 </xsl:template>
264
265 <xsl:template match="d:abbrev" mode="bibliography.mode">
266   <xsl:if test="preceding-sibling::*">
267     <xsl:apply-templates mode="bibliography.mode"/>
268   </xsl:if>
269 </xsl:template>
270
271 <xsl:template match="d:abstract" mode="bibliography.mode">
272   <!-- suppressed -->
273 </xsl:template>
274
275 <xsl:template match="d:address" mode="bibliography.mode">
276   <span>
277     <xsl:call-template name="common.html.attributes"/>
278     <xsl:call-template name="id.attribute"/>
279     <xsl:apply-templates mode="bibliography.mode"/>
280     <xsl:copy-of select="$biblioentry.item.separator"/>
281   </span>
282 </xsl:template>
283
284 <xsl:template match="d:affiliation" mode="bibliography.mode">
285   <span>
286     <xsl:call-template name="common.html.attributes"/>
287     <xsl:call-template name="id.attribute"/>
288     <xsl:apply-templates mode="bibliography.mode"/>
289     <xsl:copy-of select="$biblioentry.item.separator"/>
290   </span>
291 </xsl:template>
292
293 <xsl:template match="d:shortaffil" mode="bibliography.mode">
294   <span>
295     <xsl:call-template name="common.html.attributes"/>
296     <xsl:call-template name="id.attribute"/>
297     <xsl:apply-templates mode="bibliography.mode"/>
298     <xsl:copy-of select="$biblioentry.item.separator"/>
299   </span>
300 </xsl:template>
301
302 <xsl:template match="d:jobtitle" mode="bibliography.mode">
303   <span>
304     <xsl:call-template name="common.html.attributes"/>
305     <xsl:call-template name="id.attribute"/>
306     <xsl:apply-templates mode="bibliography.mode"/>
307     <xsl:copy-of select="$biblioentry.item.separator"/>
308   </span>
309 </xsl:template>
310
311 <xsl:template match="d:artheader|d:articleinfo|d:info" mode="bibliography.mode">
312   <span>
313     <xsl:call-template name="common.html.attributes"/>
314     <xsl:call-template name="id.attribute"/>
315     <xsl:apply-templates mode="bibliography.mode"/>
316     <xsl:copy-of select="$biblioentry.item.separator"/>
317   </span>
318 </xsl:template>
319
320 <xsl:template match="d:artpagenums" mode="bibliography.mode">
321   <span>
322     <xsl:call-template name="common.html.attributes"/>
323     <xsl:call-template name="id.attribute"/>
324     <xsl:apply-templates mode="bibliography.mode"/>
325     <xsl:copy-of select="$biblioentry.item.separator"/>
326   </span>
327 </xsl:template>
328
329 <xsl:template match="d:author" mode="bibliography.mode">
330   <span>
331     <xsl:call-template name="common.html.attributes"/>
332     <xsl:call-template name="id.attribute"/>
333     <xsl:choose>
334       <xsl:when test="d:orgname">
335         <xsl:apply-templates select="d:orgname" mode="bibliography.mode"/>
336       </xsl:when>
337       <xsl:otherwise>
338         <xsl:call-template name="person.name"/>
339         <xsl:copy-of select="$biblioentry.item.separator"/>
340       </xsl:otherwise>
341     </xsl:choose>
342   </span>
343 </xsl:template>
344
345 <xsl:template match="d:authorblurb|d:personblurb" mode="bibliography.mode">
346   <!-- suppressed -->
347 </xsl:template>
348
349 <xsl:template match="d:authorgroup" mode="bibliography.mode">
350   <span>
351     <xsl:call-template name="common.html.attributes"/>
352     <xsl:call-template name="id.attribute"/>
353     <xsl:call-template name="person.name.list"/>
354     <xsl:copy-of select="$biblioentry.item.separator"/>
355   </span>
356 </xsl:template>
357
358 <xsl:template match="d:authorinitials" mode="bibliography.mode">
359   <span>
360     <xsl:call-template name="common.html.attributes"/>
361     <xsl:call-template name="id.attribute"/>
362     <xsl:apply-templates mode="bibliography.mode"/>
363     <xsl:copy-of select="$biblioentry.item.separator"/>
364   </span>
365 </xsl:template>
366
367 <xsl:template match="d:bibliomisc" mode="bibliography.mode">
368   <span>
369     <xsl:call-template name="common.html.attributes"/>
370     <xsl:call-template name="id.attribute"/>
371     <xsl:apply-templates mode="bibliography.mode"/>
372     <xsl:copy-of select="$biblioentry.item.separator"/>
373   </span>
374 </xsl:template>
375
376 <xsl:template match="d:bibliomset" mode="bibliography.mode">
377   <span>
378     <xsl:call-template name="common.html.attributes"/>
379     <xsl:call-template name="id.attribute"/>
380     <xsl:apply-templates mode="bibliography.mode"/>
381     <xsl:copy-of select="$biblioentry.item.separator"/>
382   </span>
383 </xsl:template>
384
385 <!-- ================================================== -->
386
387 <xsl:template match="d:biblioset" mode="bibliography.mode">
388   <span>
389     <xsl:call-template name="common.html.attributes"/>
390     <xsl:call-template name="id.attribute"/>
391     <xsl:apply-templates mode="bibliography.mode"/>
392   </span>
393 </xsl:template>
394
395 <xsl:template match="d:biblioset/d:title|d:biblioset/d:citetitle" mode="bibliography.mode">
396   <xsl:variable name="relation" select="../@relation"/>
397   <xsl:choose>
398     <xsl:when test="$relation='article' or @pubwork='article'">
399       <xsl:call-template name="gentext.startquote"/>
400       <xsl:apply-templates/>
401       <xsl:call-template name="gentext.endquote"/>
402     </xsl:when>
403     <xsl:otherwise>
404       <em><xsl:apply-templates/></em>
405     </xsl:otherwise>
406   </xsl:choose>
407   <xsl:copy-of select="$biblioentry.item.separator"/>
408 </xsl:template>
409
410 <!-- ================================================== -->
411
412 <xsl:template match="d:citetitle" mode="bibliography.mode">
413   <span>
414     <xsl:call-template name="common.html.attributes"/>
415     <xsl:call-template name="id.attribute"/>
416     <xsl:choose>
417       <xsl:when test="@pubwork = 'article'">
418         <xsl:call-template name="gentext.startquote"/>
419         <xsl:call-template name="inline.charseq"/>
420         <xsl:call-template name="gentext.endquote"/>
421       </xsl:when>
422       <xsl:otherwise>
423         <xsl:call-template name="inline.italicseq"/>
424       </xsl:otherwise>
425     </xsl:choose>
426     <xsl:copy-of select="$biblioentry.item.separator"/>
427   </span>
428 </xsl:template>
429
430 <xsl:template match="d:collab" mode="bibliography.mode">
431   <span>
432     <xsl:call-template name="common.html.attributes"/>
433     <xsl:call-template name="id.attribute"/>
434     <xsl:apply-templates mode="bibliography.mode"/>
435     <xsl:copy-of select="$biblioentry.item.separator"/>
436   </span>
437 </xsl:template>
438
439 <xsl:template match="d:collabname" mode="bibliography.mode">
440   <span>
441     <xsl:call-template name="common.html.attributes"/>
442     <xsl:call-template name="id.attribute"/>
443     <xsl:apply-templates mode="bibliography.mode"/>
444     <xsl:copy-of select="$biblioentry.item.separator"/>
445   </span>
446 </xsl:template>
447
448 <xsl:template match="d:confgroup" mode="bibliography.mode">
449   <span>
450     <xsl:call-template name="common.html.attributes"/>
451     <xsl:call-template name="id.attribute"/>
452     <xsl:apply-templates mode="bibliography.mode"/>
453     <xsl:copy-of select="$biblioentry.item.separator"/>
454   </span>
455 </xsl:template>
456
457 <xsl:template match="d:confdates" mode="bibliography.mode">
458   <span>
459     <xsl:call-template name="common.html.attributes"/>
460     <xsl:call-template name="id.attribute"/>
461     <xsl:apply-templates mode="bibliography.mode"/>
462     <xsl:copy-of select="$biblioentry.item.separator"/>
463   </span>
464 </xsl:template>
465
466 <xsl:template match="d:conftitle" mode="bibliography.mode">
467   <span>
468     <xsl:call-template name="common.html.attributes"/>
469     <xsl:call-template name="id.attribute"/>
470     <xsl:apply-templates mode="bibliography.mode"/>
471     <xsl:copy-of select="$biblioentry.item.separator"/>
472   </span>
473 </xsl:template>
474
475 <xsl:template match="d:confnum" mode="bibliography.mode">
476   <span>
477     <xsl:call-template name="common.html.attributes"/>
478     <xsl:call-template name="id.attribute"/>
479     <xsl:apply-templates mode="bibliography.mode"/>
480     <xsl:copy-of select="$biblioentry.item.separator"/>
481   </span>
482 </xsl:template>
483
484 <xsl:template match="d:confsponsor" mode="bibliography.mode">
485   <span>
486     <xsl:call-template name="common.html.attributes"/>
487     <xsl:call-template name="id.attribute"/>
488     <xsl:apply-templates mode="bibliography.mode"/>
489     <xsl:copy-of select="$biblioentry.item.separator"/>
490   </span>
491 </xsl:template>
492
493 <xsl:template match="d:contractnum" mode="bibliography.mode">
494   <span>
495     <xsl:call-template name="common.html.attributes"/>
496     <xsl:call-template name="id.attribute"/>
497     <xsl:apply-templates mode="bibliography.mode"/>
498     <xsl:copy-of select="$biblioentry.item.separator"/>
499   </span>
500 </xsl:template>
501
502 <xsl:template match="d:contractsponsor" mode="bibliography.mode">
503   <span>
504     <xsl:call-template name="common.html.attributes"/>
505     <xsl:call-template name="id.attribute"/>
506     <xsl:apply-templates mode="bibliography.mode"/>
507     <xsl:copy-of select="$biblioentry.item.separator"/>
508   </span>
509 </xsl:template>
510
511 <xsl:template match="d:contrib" mode="bibliography.mode">
512   <span>
513     <xsl:call-template name="common.html.attributes"/>
514     <xsl:call-template name="id.attribute"/>
515     <xsl:apply-templates mode="bibliography.mode"/>
516     <xsl:copy-of select="$biblioentry.item.separator"/>
517   </span>
518 </xsl:template>
519
520 <!-- ================================================== -->
521
522 <xsl:template match="d:copyright" mode="bibliography.mode">
523   <span>
524     <xsl:call-template name="common.html.attributes"/>
525     <xsl:call-template name="id.attribute"/>
526     <xsl:call-template name="gentext">
527       <xsl:with-param name="key" select="'Copyright'"/>
528     </xsl:call-template>
529     <xsl:call-template name="gentext.space"/>
530     <xsl:call-template name="dingbat">
531       <xsl:with-param name="dingbat">copyright</xsl:with-param>
532     </xsl:call-template>
533     <xsl:call-template name="gentext.space"/>
534     <xsl:apply-templates select="d:year" mode="bibliography.mode"/>
535     <xsl:if test="d:holder">
536       <xsl:call-template name="gentext.space"/>
537       <xsl:apply-templates select="d:holder" mode="bibliography.mode"/>
538     </xsl:if>
539     <xsl:copy-of select="$biblioentry.item.separator"/>
540   </span>
541 </xsl:template>
542
543 <xsl:template match="d:year" mode="bibliography.mode">
544   <xsl:apply-templates/><xsl:text>, </xsl:text>
545 </xsl:template>
546
547 <xsl:template match="d:year[position()=last()]" mode="bibliography.mode">
548   <xsl:apply-templates/>
549 </xsl:template>
550
551 <xsl:template match="d:holder" mode="bibliography.mode">
552   <xsl:apply-templates/>
553 </xsl:template>
554
555 <!-- ================================================== -->
556
557 <xsl:template match="d:corpauthor" mode="bibliography.mode">
558   <span>
559     <xsl:call-template name="common.html.attributes"/>
560     <xsl:call-template name="id.attribute"/>
561     <xsl:apply-templates mode="bibliography.mode"/>
562     <xsl:copy-of select="$biblioentry.item.separator"/>
563   </span>
564 </xsl:template>
565
566 <xsl:template match="d:corpcredit" mode="bibliography.mode">
567   <span>
568     <xsl:call-template name="common.html.attributes"/>
569     <xsl:call-template name="id.attribute"/>
570     <xsl:apply-templates mode="bibliography.mode"/>
571     <xsl:copy-of select="$biblioentry.item.separator"/>
572   </span>
573 </xsl:template>
574
575 <xsl:template match="d:corpname" mode="bibliography.mode">
576   <span>
577     <xsl:call-template name="common.html.attributes"/>
578     <xsl:call-template name="id.attribute"/>
579     <xsl:apply-templates mode="bibliography.mode"/>
580     <xsl:copy-of select="$biblioentry.item.separator"/>
581   </span>
582 </xsl:template>
583
584 <xsl:template match="d:date" mode="bibliography.mode">
585   <span>
586     <xsl:call-template name="common.html.attributes"/>
587     <xsl:call-template name="id.attribute"/>
588     <xsl:apply-templates mode="bibliography.mode"/>
589     <xsl:copy-of select="$biblioentry.item.separator"/>
590   </span>
591 </xsl:template>
592
593 <xsl:template match="d:edition" mode="bibliography.mode">
594   <span>
595     <xsl:call-template name="common.html.attributes"/>
596     <xsl:call-template name="id.attribute"/>
597     <xsl:apply-templates mode="bibliography.mode"/>
598     <xsl:copy-of select="$biblioentry.item.separator"/>
599   </span>
600 </xsl:template>
601
602 <xsl:template match="d:editor" mode="bibliography.mode">
603   <span>
604     <xsl:call-template name="common.html.attributes"/>
605     <xsl:call-template name="id.attribute"/>
606     <xsl:call-template name="person.name"/>
607     <xsl:copy-of select="$biblioentry.item.separator"/>
608   </span>
609 </xsl:template>
610
611 <xsl:template match="d:firstname" mode="bibliography.mode">
612   <span>
613     <xsl:call-template name="common.html.attributes"/>
614     <xsl:call-template name="id.attribute"/>
615     <xsl:apply-templates mode="bibliography.mode"/>
616     <xsl:copy-of select="$biblioentry.item.separator"/>
617   </span>
618 </xsl:template>
619
620 <xsl:template match="d:honorific" mode="bibliography.mode">
621   <span>
622     <xsl:call-template name="common.html.attributes"/>
623     <xsl:call-template name="id.attribute"/>
624     <xsl:apply-templates mode="bibliography.mode"/>
625     <xsl:copy-of select="$biblioentry.item.separator"/>
626   </span>
627 </xsl:template>
628
629 <xsl:template match="d:indexterm" mode="bibliography.mode">
630   <span>
631     <xsl:call-template name="common.html.attributes"/>
632     <xsl:call-template name="id.attribute"/>
633     <xsl:apply-templates mode="bibliography.mode"/>
634     <xsl:copy-of select="$biblioentry.item.separator"/>
635   </span>
636 </xsl:template>
637
638 <xsl:template match="d:invpartnumber" mode="bibliography.mode">
639   <span>
640     <xsl:call-template name="common.html.attributes"/>
641     <xsl:call-template name="id.attribute"/>
642     <xsl:apply-templates mode="bibliography.mode"/>
643     <xsl:copy-of select="$biblioentry.item.separator"/>
644   </span>
645 </xsl:template>
646
647 <xsl:template match="d:isbn" mode="bibliography.mode">
648   <span>
649     <xsl:call-template name="common.html.attributes"/>
650     <xsl:call-template name="id.attribute"/>
651     <xsl:apply-templates mode="bibliography.mode"/>
652     <xsl:copy-of select="$biblioentry.item.separator"/>
653   </span>
654 </xsl:template>
655
656 <xsl:template match="d:issn" mode="bibliography.mode">
657   <span>
658     <xsl:call-template name="common.html.attributes"/>
659     <xsl:call-template name="id.attribute"/>
660     <xsl:apply-templates mode="bibliography.mode"/>
661     <xsl:copy-of select="$biblioentry.item.separator"/>
662   </span>
663 </xsl:template>
664
665 <xsl:template match="d:issuenum" mode="bibliography.mode">
666   <span>
667     <xsl:call-template name="common.html.attributes"/>
668     <xsl:call-template name="id.attribute"/>
669     <xsl:apply-templates mode="bibliography.mode"/>
670     <xsl:copy-of select="$biblioentry.item.separator"/>
671   </span>
672 </xsl:template>
673
674 <xsl:template match="d:lineage" mode="bibliography.mode">
675   <span>
676     <xsl:call-template name="common.html.attributes"/>
677     <xsl:call-template name="id.attribute"/>
678     <xsl:apply-templates mode="bibliography.mode"/>
679     <xsl:copy-of select="$biblioentry.item.separator"/>
680   </span>
681 </xsl:template>
682
683 <xsl:template match="d:orgname" mode="bibliography.mode">
684   <span>
685     <xsl:call-template name="common.html.attributes"/>
686     <xsl:call-template name="id.attribute"/>
687     <xsl:apply-templates mode="bibliography.mode"/>
688     <xsl:copy-of select="$biblioentry.item.separator"/>
689   </span>
690 </xsl:template>
691
692 <xsl:template match="d:orgdiv" mode="bibliography.mode">
693   <span>
694     <xsl:call-template name="common.html.attributes"/>
695     <xsl:call-template name="id.attribute"/>
696     <xsl:apply-templates mode="bibliography.mode"/>
697     <xsl:copy-of select="$biblioentry.item.separator"/>
698   </span>
699 </xsl:template>
700
701 <xsl:template match="d:othercredit" mode="bibliography.mode">
702   <span>
703     <xsl:call-template name="common.html.attributes"/>
704     <xsl:call-template name="id.attribute"/>
705     <xsl:apply-templates mode="bibliography.mode"/>
706     <xsl:copy-of select="$biblioentry.item.separator"/>
707   </span>
708 </xsl:template>
709
710 <xsl:template match="d:othername" mode="bibliography.mode">
711   <span>
712     <xsl:call-template name="common.html.attributes"/>
713     <xsl:call-template name="id.attribute"/>
714     <xsl:apply-templates mode="bibliography.mode"/>
715     <xsl:copy-of select="$biblioentry.item.separator"/>
716   </span>
717 </xsl:template>
718
719 <xsl:template match="d:pagenums" mode="bibliography.mode">
720   <span>
721     <xsl:call-template name="common.html.attributes"/>
722     <xsl:call-template name="id.attribute"/>
723     <xsl:apply-templates mode="bibliography.mode"/>
724     <xsl:copy-of select="$biblioentry.item.separator"/>
725   </span>
726 </xsl:template>
727
728 <xsl:template match="d:printhistory" mode="bibliography.mode">
729   <!-- suppressed -->
730 </xsl:template>
731
732 <xsl:template match="d:productname" mode="bibliography.mode">
733   <span>
734     <xsl:call-template name="common.html.attributes"/>
735     <xsl:call-template name="id.attribute"/>
736     <xsl:apply-templates mode="bibliography.mode"/>
737     <xsl:copy-of select="$biblioentry.item.separator"/>
738   </span>
739 </xsl:template>
740
741 <xsl:template match="d:productnumber" mode="bibliography.mode">
742   <span>
743     <xsl:call-template name="common.html.attributes"/>
744     <xsl:call-template name="id.attribute"/>
745     <xsl:apply-templates mode="bibliography.mode"/>
746     <xsl:copy-of select="$biblioentry.item.separator"/>
747   </span>
748 </xsl:template>
749
750 <xsl:template match="d:pubdate" mode="bibliography.mode">
751   <span>
752     <xsl:call-template name="common.html.attributes"/>
753     <xsl:call-template name="id.attribute"/>
754     <xsl:apply-templates mode="bibliography.mode"/>
755     <xsl:copy-of select="$biblioentry.item.separator"/>
756   </span>
757 </xsl:template>
758
759 <xsl:template match="d:publisher" mode="bibliography.mode">
760   <span>
761     <xsl:call-template name="common.html.attributes"/>
762     <xsl:call-template name="id.attribute"/>
763     <xsl:apply-templates mode="bibliography.mode"/>
764   </span>
765 </xsl:template>
766
767 <xsl:template match="d:publishername" mode="bibliography.mode">
768   <span>
769     <xsl:call-template name="common.html.attributes"/>
770     <xsl:call-template name="id.attribute"/>
771     <xsl:apply-templates mode="bibliography.mode"/>
772     <xsl:copy-of select="$biblioentry.item.separator"/>
773   </span>
774 </xsl:template>
775
776 <xsl:template match="d:pubsnumber" mode="bibliography.mode">
777   <span>
778     <xsl:call-template name="common.html.attributes"/>
779     <xsl:call-template name="id.attribute"/>
780     <xsl:apply-templates mode="bibliography.mode"/>
781     <xsl:copy-of select="$biblioentry.item.separator"/>
782   </span>
783 </xsl:template>
784
785 <xsl:template match="d:releaseinfo" mode="bibliography.mode">
786   <span>
787     <xsl:call-template name="common.html.attributes"/>
788     <xsl:call-template name="id.attribute"/>
789     <xsl:apply-templates mode="bibliography.mode"/>
790     <xsl:copy-of select="$biblioentry.item.separator"/>
791   </span>
792 </xsl:template>
793
794 <xsl:template match="d:revhistory" mode="bibliography.mode">
795   <!-- suppressed; how could this be represented? -->
796 </xsl:template>
797
798 <xsl:template match="d:seriesinfo" mode="bibliography.mode">
799   <span>
800     <xsl:call-template name="common.html.attributes"/>
801     <xsl:call-template name="id.attribute"/>
802     <xsl:apply-templates mode="bibliography.mode"/>
803   </span>
804 </xsl:template>
805
806 <xsl:template match="d:seriesvolnums" mode="bibliography.mode">
807   <span>
808     <xsl:call-template name="common.html.attributes"/>
809     <xsl:call-template name="id.attribute"/>
810     <xsl:apply-templates mode="bibliography.mode"/>
811     <xsl:copy-of select="$biblioentry.item.separator"/>
812   </span>
813 </xsl:template>
814
815 <xsl:template match="d:subtitle" mode="bibliography.mode">
816   <span>
817     <xsl:call-template name="common.html.attributes"/>
818     <xsl:call-template name="id.attribute"/>
819     <xsl:apply-templates mode="bibliography.mode"/>
820     <xsl:copy-of select="$biblioentry.item.separator"/>
821   </span>
822 </xsl:template>
823
824 <xsl:template match="d:surname" mode="bibliography.mode">
825   <span>
826     <xsl:call-template name="common.html.attributes"/>
827     <xsl:call-template name="id.attribute"/>
828     <xsl:apply-templates mode="bibliography.mode"/>
829     <xsl:copy-of select="$biblioentry.item.separator"/>
830   </span>
831 </xsl:template>
832
833 <xsl:template match="d:title" mode="bibliography.mode">
834   <span>
835     <xsl:call-template name="common.html.attributes"/>
836     <xsl:call-template name="id.attribute"/>
837     <em><xsl:apply-templates mode="bibliography.mode"/></em>
838     <xsl:copy-of select="$biblioentry.item.separator"/>
839   </span>
840 </xsl:template>
841
842 <xsl:template match="d:titleabbrev" mode="bibliography.mode">
843   <span>
844     <xsl:call-template name="common.html.attributes"/>
845     <xsl:call-template name="id.attribute"/>
846     <xsl:apply-templates mode="bibliography.mode"/>
847     <xsl:copy-of select="$biblioentry.item.separator"/>
848   </span>
849 </xsl:template>
850
851 <xsl:template match="d:volumenum" mode="bibliography.mode">
852   <span>
853     <xsl:call-template name="common.html.attributes"/>
854     <xsl:call-template name="id.attribute"/>
855     <xsl:apply-templates mode="bibliography.mode"/>
856     <xsl:copy-of select="$biblioentry.item.separator"/>
857   </span>
858 </xsl:template>
859
860 <xsl:template match="d:bibliocoverage|d:biblioid|d:bibliorelation|d:bibliosource" mode="bibliography.mode">
861   <span>
862     <xsl:call-template name="common.html.attributes"/>
863     <xsl:call-template name="id.attribute"/>
864     <xsl:apply-templates mode="bibliography.mode"/>
865     <xsl:copy-of select="$biblioentry.item.separator"/>
866   </span>
867 </xsl:template>
868
869 <!-- See FR #1934434 and http://doi.org -->
870 <xsl:template match="d:biblioid[@class='doi']" mode="bibliography.mode">
871   <span>
872     <xsl:call-template name="common.html.attributes"/>
873     <xsl:call-template name="id.attribute"/>
874     <a href="{concat('http://dx.doi.org/', .)}">doi:<xsl:value-of select="."/></a>
875   </span>
876 </xsl:template>
877
878 <!-- ==================================================================== -->
879
880 <xsl:template match="*" mode="bibliomixed.mode">
881   <xsl:apply-templates select="."/><!-- try the default mode -->
882 </xsl:template>
883
884 <xsl:template match="d:abbrev" mode="bibliomixed.mode">
885   <xsl:if test="preceding-sibling::*">
886     <xsl:apply-templates mode="bibliomixed.mode"/>
887   </xsl:if>
888 </xsl:template>
889
890 <xsl:template match="d:abstract" mode="bibliomixed.mode">
891   <span>
892     <xsl:call-template name="common.html.attributes"/>
893     <xsl:call-template name="id.attribute"/>
894     <xsl:apply-templates mode="bibliomixed.mode"/>
895   </span>
896 </xsl:template>
897
898 <xsl:template match="d:address" mode="bibliomixed.mode">
899   <span>
900     <xsl:call-template name="common.html.attributes"/>
901     <xsl:call-template name="id.attribute"/>
902     <xsl:apply-templates mode="bibliomixed.mode"/>
903   </span>
904 </xsl:template>
905
906 <xsl:template match="d:affiliation" mode="bibliomixed.mode">
907   <span>
908     <xsl:call-template name="common.html.attributes"/>
909     <xsl:call-template name="id.attribute"/>
910     <xsl:apply-templates mode="bibliomixed.mode"/>
911   </span>
912 </xsl:template>
913
914 <xsl:template match="d:shortaffil" mode="bibliomixed.mode">
915   <span>
916     <xsl:call-template name="common.html.attributes"/>
917     <xsl:call-template name="id.attribute"/>
918     <xsl:apply-templates mode="bibliomixed.mode"/>
919   </span>
920 </xsl:template>
921
922 <xsl:template match="d:jobtitle" mode="bibliomixed.mode">
923   <span>
924     <xsl:call-template name="common.html.attributes"/>
925     <xsl:call-template name="id.attribute"/>
926     <xsl:apply-templates mode="bibliomixed.mode"/>
927   </span>
928 </xsl:template>
929
930 <xsl:template match="d:artpagenums" mode="bibliomixed.mode">
931   <span>
932     <xsl:call-template name="common.html.attributes"/>
933     <xsl:call-template name="id.attribute"/>
934     <xsl:apply-templates mode="bibliomixed.mode"/>
935   </span>
936 </xsl:template>
937
938 <xsl:template match="d:author" mode="bibliomixed.mode">
939   <span>
940     <xsl:call-template name="common.html.attributes"/>
941     <xsl:call-template name="id.attribute"/>
942     <xsl:choose>
943       <xsl:when test="d:orgname">
944         <xsl:apply-templates select="d:orgname" mode="bibliomixed.mode"/>
945       </xsl:when>
946       <xsl:otherwise>
947         <xsl:call-template name="person.name"/>
948       </xsl:otherwise>
949     </xsl:choose>
950   </span>
951 </xsl:template>
952
953 <xsl:template match="d:authorblurb|d:personblurb" mode="bibliomixed.mode">
954   <span>
955     <xsl:call-template name="common.html.attributes"/>
956     <xsl:call-template name="id.attribute"/>
957     <xsl:apply-templates mode="bibliomixed.mode"/>
958   </span>
959 </xsl:template>
960
961 <xsl:template match="d:authorgroup" mode="bibliomixed.mode">
962   <span>
963     <xsl:call-template name="common.html.attributes"/>
964     <xsl:call-template name="id.attribute"/>
965     <xsl:apply-templates mode="bibliomixed.mode"/>
966   </span>
967 </xsl:template>
968
969 <xsl:template match="d:authorinitials" mode="bibliomixed.mode">
970   <span>
971     <xsl:call-template name="common.html.attributes"/>
972     <xsl:call-template name="id.attribute"/>
973     <xsl:apply-templates mode="bibliomixed.mode"/>
974   </span>
975 </xsl:template>
976
977 <xsl:template match="d:bibliomisc" mode="bibliomixed.mode">
978   <span>
979     <xsl:call-template name="common.html.attributes"/>
980     <xsl:call-template name="id.attribute"/>
981     <xsl:apply-templates mode="bibliomixed.mode"/>
982   </span>
983 </xsl:template>
984
985 <!-- ================================================== -->
986
987 <xsl:template match="d:bibliomset" mode="bibliomixed.mode">
988   <span>
989     <xsl:call-template name="common.html.attributes"/>
990     <xsl:call-template name="id.attribute"/>
991     <xsl:apply-templates mode="bibliomixed.mode"/>
992   </span>
993 </xsl:template>
994
995 <xsl:template match="d:bibliomset/d:title|d:bibliomset/d:citetitle" mode="bibliomixed.mode">
996   <xsl:variable name="relation" select="../@relation"/>
997   <xsl:choose>
998     <xsl:when test="$relation='article' or @pubwork='article'">
999       <xsl:call-template name="gentext.startquote"/>
1000       <xsl:apply-templates/>
1001       <xsl:call-template name="gentext.endquote"/>
1002     </xsl:when>
1003     <xsl:otherwise>
1004       <em><xsl:apply-templates/></em>
1005     </xsl:otherwise>
1006   </xsl:choose>
1007 </xsl:template>
1008
1009 <!-- ================================================== -->
1010
1011 <xsl:template match="d:biblioset" mode="bibliomixed.mode">
1012   <span>
1013     <xsl:call-template name="common.html.attributes"/>
1014     <xsl:call-template name="id.attribute"/>
1015     <xsl:apply-templates mode="bibliomixed.mode"/>
1016   </span>
1017 </xsl:template>
1018
1019 <xsl:template match="d:citetitle" mode="bibliomixed.mode">
1020   <span>
1021     <xsl:call-template name="common.html.attributes"/>
1022     <xsl:call-template name="id.attribute"/>
1023     <xsl:choose>
1024       <xsl:when test="@pubwork = 'article'">
1025         <xsl:call-template name="gentext.startquote"/>
1026         <xsl:call-template name="inline.charseq"/>
1027         <xsl:call-template name="gentext.endquote"/>
1028       </xsl:when>
1029       <xsl:otherwise>
1030         <xsl:call-template name="inline.italicseq"/>
1031       </xsl:otherwise>
1032     </xsl:choose>
1033   </span>
1034 </xsl:template>
1035
1036
1037 <xsl:template match="d:collab" mode="bibliomixed.mode">
1038   <span>
1039     <xsl:call-template name="common.html.attributes"/>
1040     <xsl:call-template name="id.attribute"/>
1041     <xsl:apply-templates mode="bibliomixed.mode"/>
1042   </span>
1043 </xsl:template>
1044
1045 <xsl:template match="d:confgroup" mode="bibliomixed.mode">
1046   <span>
1047     <xsl:call-template name="common.html.attributes"/>
1048     <xsl:call-template name="id.attribute"/>
1049     <xsl:apply-templates mode="bibliomixed.mode"/>
1050   </span>
1051 </xsl:template>
1052
1053 <xsl:template match="d:contractnum" mode="bibliomixed.mode">
1054   <span>
1055     <xsl:call-template name="common.html.attributes"/>
1056     <xsl:call-template name="id.attribute"/>
1057     <xsl:apply-templates mode="bibliomixed.mode"/>
1058   </span>
1059 </xsl:template>
1060
1061 <xsl:template match="d:contractsponsor" mode="bibliomixed.mode">
1062   <span>
1063     <xsl:call-template name="common.html.attributes"/>
1064     <xsl:call-template name="id.attribute"/>
1065     <xsl:apply-templates mode="bibliomixed.mode"/>
1066   </span>
1067 </xsl:template>
1068
1069 <xsl:template match="d:contrib" mode="bibliomixed.mode">
1070   <span>
1071     <xsl:call-template name="common.html.attributes"/>
1072     <xsl:call-template name="id.attribute"/>
1073     <xsl:apply-templates mode="bibliomixed.mode"/>
1074   </span>
1075 </xsl:template>
1076
1077 <xsl:template match="d:copyright" mode="bibliomixed.mode">
1078   <span>
1079     <xsl:call-template name="common.html.attributes"/>
1080     <xsl:call-template name="id.attribute"/>
1081     <xsl:apply-templates mode="bibliomixed.mode"/>
1082   </span>
1083 </xsl:template>
1084
1085 <xsl:template match="d:corpauthor" mode="bibliomixed.mode">
1086   <span>
1087     <xsl:call-template name="common.html.attributes"/>
1088     <xsl:call-template name="id.attribute"/>
1089     <xsl:apply-templates mode="bibliomixed.mode"/>
1090   </span>
1091 </xsl:template>
1092
1093 <xsl:template match="d:corpcredit" mode="bibliomixed.mode">
1094   <span>
1095     <xsl:call-template name="common.html.attributes"/>
1096     <xsl:call-template name="id.attribute"/>
1097     <xsl:apply-templates mode="bibliomixed.mode"/>
1098   </span>
1099 </xsl:template>
1100
1101 <xsl:template match="d:corpname" mode="bibliomixed.mode">
1102   <span>
1103     <xsl:call-template name="common.html.attributes"/>
1104     <xsl:call-template name="id.attribute"/>
1105     <xsl:apply-templates mode="bibliomixed.mode"/>
1106   </span>
1107 </xsl:template>
1108
1109 <xsl:template match="d:date" mode="bibliomixed.mode">
1110   <span>
1111     <xsl:call-template name="common.html.attributes"/>
1112     <xsl:call-template name="id.attribute"/>
1113     <xsl:apply-templates mode="bibliomixed.mode"/>
1114   </span>
1115 </xsl:template>
1116
1117 <xsl:template match="d:edition" mode="bibliomixed.mode">
1118   <span>
1119     <xsl:call-template name="common.html.attributes"/>
1120     <xsl:call-template name="id.attribute"/>
1121     <xsl:apply-templates mode="bibliomixed.mode"/>
1122   </span>
1123 </xsl:template>
1124
1125 <xsl:template match="d:editor" mode="bibliomixed.mode">
1126   <span>
1127     <xsl:call-template name="common.html.attributes"/>
1128     <xsl:call-template name="id.attribute"/>
1129     <xsl:apply-templates mode="bibliomixed.mode"/>
1130   </span>
1131 </xsl:template>
1132
1133 <xsl:template match="d:firstname" mode="bibliomixed.mode">
1134   <span>
1135     <xsl:call-template name="common.html.attributes"/>
1136     <xsl:call-template name="id.attribute"/>
1137     <xsl:apply-templates mode="bibliomixed.mode"/>
1138   </span>
1139 </xsl:template>
1140
1141 <xsl:template match="d:honorific" mode="bibliomixed.mode">
1142   <span>
1143     <xsl:call-template name="common.html.attributes"/>
1144     <xsl:call-template name="id.attribute"/>
1145     <xsl:apply-templates mode="bibliomixed.mode"/>
1146   </span>
1147 </xsl:template>
1148
1149 <xsl:template match="d:indexterm" mode="bibliomixed.mode">
1150   <span>
1151     <xsl:call-template name="common.html.attributes"/>
1152     <xsl:call-template name="id.attribute"/>
1153     <xsl:apply-templates mode="bibliomixed.mode"/>
1154   </span>
1155 </xsl:template>
1156
1157 <xsl:template match="d:invpartnumber" mode="bibliomixed.mode">
1158   <span>
1159     <xsl:call-template name="common.html.attributes"/>
1160     <xsl:call-template name="id.attribute"/>
1161     <xsl:apply-templates mode="bibliomixed.mode"/>
1162   </span>
1163 </xsl:template>
1164
1165 <xsl:template match="d:isbn" mode="bibliomixed.mode">
1166   <span>
1167     <xsl:call-template name="common.html.attributes"/>
1168     <xsl:call-template name="id.attribute"/>
1169     <xsl:apply-templates mode="bibliomixed.mode"/>
1170   </span>
1171 </xsl:template>
1172
1173 <xsl:template match="d:issn" mode="bibliomixed.mode">
1174   <span>
1175     <xsl:call-template name="common.html.attributes"/>
1176     <xsl:call-template name="id.attribute"/>
1177     <xsl:apply-templates mode="bibliomixed.mode"/>
1178   </span>
1179 </xsl:template>
1180
1181 <xsl:template match="d:issuenum" mode="bibliomixed.mode">
1182   <span>
1183     <xsl:call-template name="common.html.attributes"/>
1184     <xsl:call-template name="id.attribute"/>
1185     <xsl:apply-templates mode="bibliomixed.mode"/>
1186   </span>
1187 </xsl:template>
1188
1189 <xsl:template match="d:lineage" mode="bibliomixed.mode">
1190   <span>
1191     <xsl:call-template name="common.html.attributes"/>
1192     <xsl:call-template name="id.attribute"/>
1193     <xsl:apply-templates mode="bibliomixed.mode"/>
1194   </span>
1195 </xsl:template>
1196
1197 <xsl:template match="d:orgname" mode="bibliomixed.mode">
1198   <span>
1199     <xsl:call-template name="common.html.attributes"/>
1200     <xsl:call-template name="id.attribute"/>
1201     <xsl:apply-templates mode="bibliomixed.mode"/>
1202   </span>
1203 </xsl:template>
1204
1205 <xsl:template match="d:othercredit" mode="bibliomixed.mode">
1206   <span>
1207     <xsl:call-template name="common.html.attributes"/>
1208     <xsl:call-template name="id.attribute"/>
1209     <xsl:apply-templates mode="bibliomixed.mode"/>
1210   </span>
1211 </xsl:template>
1212
1213 <xsl:template match="d:othername" mode="bibliomixed.mode">
1214   <span>
1215     <xsl:call-template name="common.html.attributes"/>
1216     <xsl:call-template name="id.attribute"/>
1217     <xsl:apply-templates mode="bibliomixed.mode"/>
1218   </span>
1219 </xsl:template>
1220
1221 <xsl:template match="d:pagenums" mode="bibliomixed.mode">
1222   <span>
1223     <xsl:call-template name="common.html.attributes"/>
1224     <xsl:call-template name="id.attribute"/>
1225     <xsl:apply-templates mode="bibliomixed.mode"/>
1226   </span>
1227 </xsl:template>
1228
1229 <xsl:template match="d:printhistory" mode="bibliomixed.mode">
1230   <span>
1231     <xsl:call-template name="common.html.attributes"/>
1232     <xsl:call-template name="id.attribute"/>
1233     <xsl:apply-templates mode="bibliomixed.mode"/>
1234   </span>
1235 </xsl:template>
1236
1237 <xsl:template match="d:productname" mode="bibliomixed.mode">
1238   <span>
1239     <xsl:call-template name="common.html.attributes"/>
1240     <xsl:call-template name="id.attribute"/>
1241     <xsl:apply-templates mode="bibliomixed.mode"/>
1242   </span>
1243 </xsl:template>
1244
1245 <xsl:template match="d:productnumber" mode="bibliomixed.mode">
1246   <span>
1247     <xsl:call-template name="common.html.attributes"/>
1248     <xsl:call-template name="id.attribute"/>
1249     <xsl:apply-templates mode="bibliomixed.mode"/>
1250   </span>
1251 </xsl:template>
1252
1253 <xsl:template match="d:pubdate" mode="bibliomixed.mode">
1254   <span>
1255     <xsl:call-template name="common.html.attributes"/>
1256     <xsl:call-template name="id.attribute"/>
1257     <xsl:apply-templates mode="bibliomixed.mode"/>
1258   </span>
1259 </xsl:template>
1260
1261 <xsl:template match="d:publisher" mode="bibliomixed.mode">
1262   <span>
1263     <xsl:call-template name="common.html.attributes"/>
1264     <xsl:call-template name="id.attribute"/>
1265     <xsl:apply-templates mode="bibliomixed.mode"/>
1266   </span>
1267 </xsl:template>
1268
1269 <xsl:template match="d:publishername" mode="bibliomixed.mode">
1270   <span>
1271     <xsl:call-template name="common.html.attributes"/>
1272     <xsl:call-template name="id.attribute"/>
1273     <xsl:apply-templates mode="bibliomixed.mode"/>
1274   </span>
1275 </xsl:template>
1276
1277 <xsl:template match="d:pubsnumber" mode="bibliomixed.mode">
1278   <span>
1279     <xsl:call-template name="common.html.attributes"/>
1280     <xsl:call-template name="id.attribute"/>
1281     <xsl:apply-templates mode="bibliomixed.mode"/>
1282   </span>
1283 </xsl:template>
1284
1285 <xsl:template match="d:releaseinfo" mode="bibliomixed.mode">
1286   <span>
1287     <xsl:call-template name="common.html.attributes"/>
1288     <xsl:call-template name="id.attribute"/>
1289     <xsl:apply-templates mode="bibliomixed.mode"/>
1290   </span>
1291 </xsl:template>
1292
1293 <xsl:template match="d:revhistory" mode="bibliomixed.mode">
1294   <!-- suppressed; how could this be represented? -->
1295 </xsl:template>
1296
1297 <xsl:template match="d:seriesvolnums" mode="bibliomixed.mode">
1298   <span>
1299     <xsl:call-template name="common.html.attributes"/>
1300     <xsl:call-template name="id.attribute"/>
1301     <xsl:apply-templates mode="bibliomixed.mode"/>
1302   </span>
1303 </xsl:template>
1304
1305 <xsl:template match="d:subtitle" mode="bibliomixed.mode">
1306   <span>
1307     <xsl:call-template name="common.html.attributes"/>
1308     <xsl:call-template name="id.attribute"/>
1309     <xsl:apply-templates mode="bibliomixed.mode"/>
1310   </span>
1311 </xsl:template>
1312
1313 <xsl:template match="d:surname" mode="bibliomixed.mode">
1314   <span>
1315     <xsl:call-template name="common.html.attributes"/>
1316     <xsl:call-template name="id.attribute"/>
1317     <xsl:apply-templates mode="bibliomixed.mode"/>
1318   </span>
1319 </xsl:template>
1320
1321 <xsl:template match="d:title" mode="bibliomixed.mode">
1322   <span>
1323     <xsl:call-template name="common.html.attributes"/>
1324     <xsl:call-template name="id.attribute"/>
1325     <xsl:apply-templates mode="bibliomixed.mode"/>
1326   </span>
1327 </xsl:template>
1328
1329 <xsl:template match="d:titleabbrev" mode="bibliomixed.mode">
1330   <span>
1331     <xsl:call-template name="common.html.attributes"/>
1332     <xsl:call-template name="id.attribute"/>
1333     <xsl:apply-templates mode="bibliomixed.mode"/>
1334   </span>
1335 </xsl:template>
1336
1337 <xsl:template match="d:volumenum" mode="bibliomixed.mode">
1338   <span>
1339     <xsl:call-template name="common.html.attributes"/>
1340     <xsl:call-template name="id.attribute"/>
1341     <xsl:apply-templates mode="bibliomixed.mode"/>
1342   </span>
1343 </xsl:template>
1344
1345 <xsl:template match="d:bibliocoverage|d:biblioid|d:bibliorelation|d:bibliosource" mode="bibliomixed.mode">
1346   <span>
1347     <xsl:call-template name="common.html.attributes"/>
1348     <xsl:call-template name="id.attribute"/>
1349     <xsl:apply-templates mode="bibliomixed.mode"/>
1350   </span>
1351 </xsl:template>
1352
1353 <!-- See FR #1934434 and http://doi.org -->
1354 <xsl:template match="d:biblioid[@class='doi']" mode="bibliomixed.mode">
1355   <span>
1356     <xsl:call-template name="common.html.attributes"/>
1357     <xsl:call-template name="id.attribute"/>
1358     <a href="{concat('http://dx.doi.org/', .)}">doi:<xsl:value-of select="."/></a>
1359   </span>
1360 </xsl:template>
1361
1362 <!-- ==================================================================== -->
1363
1364 </xsl:stylesheet>