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