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$ 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<xsl:template name="inline.charseq"> 16 <xsl:param name="content"> 17 <xsl:if test="@id"> 18 <a name="{@id}"/> 19 </xsl:if> 20 <xsl:apply-templates/> 21 </xsl:param> 22 <xsl:copy-of select="$content"/> 23</xsl:template> 24 25<xsl:template name="inline.monoseq"> 26 <xsl:param name="content"> 27 <xsl:if test="@id"> 28 <a name="{@id}"/> 29 </xsl:if> 30 <xsl:apply-templates/> 31 </xsl:param> 32 <tt><xsl:copy-of select="$content"/></tt> 33</xsl:template> 34 35<xsl:template name="inline.boldseq"> 36 <xsl:param name="content"> 37 <xsl:if test="@id"> 38 <a name="{@id}"/> 39 </xsl:if> 40 <xsl:apply-templates/> 41 </xsl:param> 42 <!-- don't put <b> inside figure, example, or table titles --> 43 <xsl:choose> 44 <xsl:when test="local-name(..) = 'title' 45 and (local-name(../..) = 'figure' 46 or local-name(../..) = 'example' 47 or local-name(../..) = 'table')"> 48 <xsl:copy-of select="$content"/> 49 </xsl:when> 50 <xsl:otherwise> 51 <b><xsl:copy-of select="$content"/></b> 52 </xsl:otherwise> 53 </xsl:choose> 54</xsl:template> 55 56<xsl:template name="inline.italicseq"> 57 <xsl:param name="content"> 58 <xsl:if test="@id"> 59 <a name="{@id}"/> 60 </xsl:if> 61 <xsl:apply-templates/> 62 </xsl:param> 63 <i><xsl:copy-of select="$content"/></i> 64</xsl:template> 65 66<xsl:template name="inline.boldmonoseq"> 67 <xsl:param name="content"> 68 <xsl:if test="@id"> 69 <a name="{@id}"/> 70 </xsl:if> 71 <xsl:apply-templates/> 72 </xsl:param> 73 <!-- don't put <b> inside figure, example, or table titles --> 74 <!-- or other titles that may already be represented with <b>'s. --> 75 <xsl:choose> 76 <xsl:when test="local-name(..) = 'title' 77 and (local-name(../..) = 'figure' 78 or local-name(../..) = 'example' 79 or local-name(../..) = 'table' 80 or local-name(../..) = 'formalpara')"> 81 <tt><xsl:copy-of select="$content"/></tt> 82 </xsl:when> 83 <xsl:otherwise> 84 <b><tt><xsl:copy-of select="$content"/></tt></b> 85 </xsl:otherwise> 86 </xsl:choose> 87</xsl:template> 88 89<xsl:template name="inline.italicmonoseq"> 90 <xsl:param name="content"> 91 <xsl:if test="@id"> 92 <a name="{@id}"/> 93 </xsl:if> 94 <xsl:apply-templates/> 95 </xsl:param> 96 <i><tt><xsl:copy-of select="$content"/></tt></i> 97</xsl:template> 98 99<xsl:template name="inline.superscriptseq"> 100 <xsl:param name="content"> 101 <xsl:if test="@id"> 102 <a name="{@id}"/> 103 </xsl:if> 104 <xsl:apply-templates/> 105 </xsl:param> 106 <sup><xsl:copy-of select="$content"/></sup> 107</xsl:template> 108 109<xsl:template name="inline.subscriptseq"> 110 <xsl:param name="content"> 111 <xsl:if test="@id"> 112 <a name="{@id}"/> 113 </xsl:if> 114 <xsl:apply-templates/> 115 </xsl:param> 116 <sub><xsl:copy-of select="$content"/></sub> 117</xsl:template> 118 119<!-- ==================================================================== --> 120<!-- some special cases --> 121 122<xsl:template match="author"> 123 <span class="{name(.)}"><xsl:call-template name="person.name"/></span> 124</xsl:template> 125 126<xsl:template match="editor"> 127 <span class="{name(.)}"><xsl:call-template name="person.name"/></span> 128</xsl:template> 129 130<xsl:template match="othercredit"> 131 <span class="{name(.)}"><xsl:call-template name="person.name"/></span> 132</xsl:template> 133 134<xsl:template match="authorinitials"> 135 <xsl:call-template name="inline.charseq"/> 136</xsl:template> 137 138<!-- ==================================================================== --> 139 140<xsl:template match="accel"> 141 <xsl:call-template name="inline.charseq"/> 142</xsl:template> 143 144<xsl:template match="action"> 145 <xsl:call-template name="inline.charseq"/> 146</xsl:template> 147 148<xsl:template match="application"> 149 <xsl:call-template name="inline.charseq"/> 150</xsl:template> 151 152<xsl:template match="classname"> 153 <xsl:call-template name="inline.monoseq"/> 154</xsl:template> 155 156<xsl:template match="exceptionname"> 157 <xsl:call-template name="inline.monoseq"/> 158</xsl:template> 159 160<xsl:template match="interfacename"> 161 <xsl:call-template name="inline.monoseq"/> 162</xsl:template> 163 164<xsl:template match="methodname"> 165 <xsl:call-template name="inline.monoseq"/> 166</xsl:template> 167 168<xsl:template match="command"> 169 <xsl:call-template name="inline.boldseq"/> 170</xsl:template> 171 172<xsl:template match="computeroutput"> 173 <xsl:call-template name="inline.monoseq"/> 174</xsl:template> 175 176<xsl:template match="constant"> 177 <xsl:call-template name="inline.monoseq"/> 178</xsl:template> 179 180<xsl:template match="database"> 181 <xsl:call-template name="inline.charseq"/> 182</xsl:template> 183 184<xsl:template match="errorcode"> 185 <xsl:call-template name="inline.charseq"/> 186</xsl:template> 187 188<xsl:template match="errorname"> 189 <xsl:call-template name="inline.charseq"/> 190</xsl:template> 191 192<xsl:template match="errortype"> 193 <xsl:call-template name="inline.charseq"/> 194</xsl:template> 195 196<xsl:template match="envar"> 197 <xsl:call-template name="inline.monoseq"/> 198</xsl:template> 199 200<xsl:template match="filename"> 201 <xsl:call-template name="inline.monoseq"/> 202</xsl:template> 203 204<xsl:template match="function"> 205 <xsl:choose> 206 <xsl:when test="$function.parens != '0' 207 and (parameter or function or replaceable)"> 208 <xsl:variable name="nodes" select="text()|*"/> 209 <xsl:call-template name="inline.monoseq"> 210 <xsl:with-param name="content"> 211 <xsl:apply-templates select="$nodes[1]"/> 212 </xsl:with-param> 213 </xsl:call-template> 214 <xsl:text>(</xsl:text> 215 <xsl:apply-templates select="$nodes[position()>1]"/> 216 <xsl:text>)</xsl:text> 217 </xsl:when> 218 <xsl:otherwise> 219 <xsl:call-template name="inline.monoseq"/> 220 </xsl:otherwise> 221 </xsl:choose> 222</xsl:template> 223 224<xsl:template match="function/parameter" priority="2"> 225 <xsl:call-template name="inline.italicmonoseq"/> 226 <xsl:if test="following-sibling::*"> 227 <xsl:text>, </xsl:text> 228 </xsl:if> 229</xsl:template> 230 231<xsl:template match="function/replaceable" priority="2"> 232 <xsl:call-template name="inline.italicmonoseq"/> 233 <xsl:if test="following-sibling::*"> 234 <xsl:text>, </xsl:text> 235 </xsl:if> 236</xsl:template> 237 238<xsl:template match="guibutton"> 239 <xsl:call-template name="inline.charseq"/> 240</xsl:template> 241 242<xsl:template match="guiicon"> 243 <xsl:call-template name="inline.charseq"/> 244</xsl:template> 245 246<xsl:template match="guilabel"> 247 <xsl:call-template name="inline.charseq"/> 248</xsl:template> 249 250<xsl:template match="guimenu"> 251 <xsl:call-template name="inline.charseq"/> 252</xsl:template> 253 254<xsl:template match="guimenuitem"> 255 <xsl:call-template name="inline.charseq"/> 256</xsl:template> 257 258<xsl:template match="guisubmenu"> 259 <xsl:call-template name="inline.charseq"/> 260</xsl:template> 261 262<xsl:template match="hardware"> 263 <xsl:call-template name="inline.charseq"/> 264</xsl:template> 265 266<xsl:template match="interface"> 267 <xsl:call-template name="inline.charseq"/> 268</xsl:template> 269 270<xsl:template match="interfacedefinition"> 271 <xsl:call-template name="inline.charseq"/> 272</xsl:template> 273 274<xsl:template match="keycap"> 275 <xsl:call-template name="inline.boldseq"/> 276</xsl:template> 277 278<xsl:template match="keycode"> 279 <xsl:call-template name="inline.charseq"/> 280</xsl:template> 281 282<xsl:template match="keysym"> 283 <xsl:call-template name="inline.charseq"/> 284</xsl:template> 285 286<xsl:template match="literal"> 287 <xsl:call-template name="inline.monoseq"/> 288</xsl:template> 289 290<xsl:template match="medialabel"> 291 <xsl:call-template name="inline.italicseq"/> 292</xsl:template> 293 294<xsl:template match="shortcut"> 295 <xsl:call-template name="inline.boldseq"/> 296</xsl:template> 297 298<xsl:template match="mousebutton"> 299 <xsl:call-template name="inline.charseq"/> 300</xsl:template> 301 302<xsl:template match="option"> 303 <xsl:call-template name="inline.monoseq"/> 304</xsl:template> 305 306<xsl:template match="parameter"> 307 <xsl:call-template name="inline.italicmonoseq"/> 308</xsl:template> 309 310<xsl:template match="property"> 311 <xsl:call-template name="inline.charseq"/> 312</xsl:template> 313 314<xsl:template match="prompt"> 315 <xsl:call-template name="inline.monoseq"/> 316</xsl:template> 317 318<xsl:template match="replaceable" priority="1"> 319 <xsl:call-template name="inline.italicmonoseq"/> 320</xsl:template> 321 322<xsl:template match="returnvalue"> 323 <xsl:call-template name="inline.charseq"/> 324</xsl:template> 325 326<xsl:template match="structfield"> 327 <xsl:call-template name="inline.italicmonoseq"/> 328</xsl:template> 329 330<xsl:template match="structname"> 331 <xsl:call-template name="inline.charseq"/> 332</xsl:template> 333 334<xsl:template match="symbol"> 335 <xsl:call-template name="inline.charseq"/> 336</xsl:template> 337 338<xsl:template match="systemitem"> 339 <xsl:call-template name="inline.monoseq"/> 340</xsl:template> 341 342<xsl:template match="token"> 343 <xsl:call-template name="inline.charseq"/> 344</xsl:template> 345 346<xsl:template match="type"> 347 <xsl:call-template name="inline.charseq"/> 348</xsl:template> 349 350<xsl:template match="userinput"> 351 <xsl:call-template name="inline.boldmonoseq"/> 352</xsl:template> 353 354<xsl:template match="abbrev"> 355 <xsl:call-template name="inline.charseq"/> 356</xsl:template> 357 358<xsl:template match="acronym"> 359 <xsl:call-template name="inline.charseq"/> 360</xsl:template> 361 362<xsl:template match="citerefentry"> 363 <xsl:choose> 364 <xsl:when test="$citerefentry.link != '0'"> 365 <a> 366 <xsl:attribute name="href"> 367 <xsl:call-template name="generate.citerefentry.link"/> 368 </xsl:attribute> 369 <xsl:call-template name="inline.charseq"/> 370 </a> 371 </xsl:when> 372 <xsl:otherwise> 373 <xsl:call-template name="inline.charseq"/> 374 </xsl:otherwise> 375 </xsl:choose> 376</xsl:template> 377 378<xsl:template name="generate.citerefentry.link"> 379 <!-- nop --> 380</xsl:template> 381 382<xsl:template name="x.generate.citerefentry.link"> 383 <xsl:text>http://example.com/cgi-bin/man.cgi?</xsl:text> 384 <xsl:value-of select="refentrytitle"/> 385 <xsl:text>(</xsl:text> 386 <xsl:value-of select="manvolnum"/> 387 <xsl:text>)</xsl:text> 388</xsl:template> 389 390<xsl:template match="citetitle"> 391 <xsl:call-template name="inline.italicseq"/> 392</xsl:template> 393 394<xsl:template match="emphasis"> 395 <xsl:choose> 396 <xsl:when test="@role='bold'"> 397 <xsl:call-template name="inline.boldseq"/> 398 </xsl:when> 399 <xsl:otherwise> 400 <xsl:call-template name="inline.italicseq"/> 401 </xsl:otherwise> 402 </xsl:choose> 403</xsl:template> 404 405<xsl:template match="foreignphrase"> 406 <xsl:call-template name="inline.italicseq"/> 407</xsl:template> 408 409<xsl:template match="markup"> 410 <xsl:call-template name="inline.charseq"/> 411</xsl:template> 412 413<xsl:template match="phrase"> 414 <xsl:call-template name="inline.charseq"/> 415</xsl:template> 416 417<xsl:template match="quote"> 418 <xsl:variable name="depth"> 419 <xsl:call-template name="dot.count"> 420 <xsl:with-param name="string"><xsl:number level="multiple"/></xsl:with-param> 421 </xsl:call-template> 422 </xsl:variable> 423 <xsl:choose> 424 <xsl:when test="$depth mod 2 = 0"> 425 <xsl:call-template name="gentext.startquote"/> 426 <xsl:call-template name="inline.charseq"/> 427 <xsl:call-template name="gentext.endquote"/> 428 </xsl:when> 429 <xsl:otherwise> 430 <xsl:call-template name="gentext.nestedstartquote"/> 431 <xsl:call-template name="inline.charseq"/> 432 <xsl:call-template name="gentext.nestedendquote"/> 433 </xsl:otherwise> 434 </xsl:choose> 435</xsl:template> 436 437<xsl:template match="varname"> 438 <xsl:call-template name="inline.monoseq"/> 439</xsl:template> 440 441<xsl:template match="wordasword"> 442 <xsl:call-template name="inline.italicseq"/> 443</xsl:template> 444 445<xsl:template match="lineannotation"> 446 <xsl:call-template name="inline.charseq"/> 447</xsl:template> 448 449<xsl:template match="superscript"> 450 <xsl:call-template name="inline.superscriptseq"/> 451</xsl:template> 452 453<xsl:template match="subscript"> 454 <xsl:call-template name="inline.subscriptseq"/> 455</xsl:template> 456 457<xsl:template match="trademark"> 458 <xsl:call-template name="inline.charseq"/> 459 <xsl:choose> 460 <xsl:when test="@class = 'copyright' 461 or @class = 'registered'"> 462 <xsl:call-template name="dingbat"> 463 <xsl:with-param name="dingbat" select="@class"/> 464 </xsl:call-template> 465 </xsl:when> 466 <xsl:when test="@class = 'service'"> 467 <sup>SM</sup> 468 </xsl:when> 469 <xsl:otherwise> 470 <xsl:call-template name="dingbat"> 471 <xsl:with-param name="dingbat" select="'trademark'"/> 472 </xsl:call-template> 473 </xsl:otherwise> 474 </xsl:choose> 475</xsl:template> 476 477<xsl:template match="firstterm"> 478 <xsl:call-template name="inline.italicseq"/> 479</xsl:template> 480 481<xsl:template match="glossterm"> 482 <xsl:choose> 483 <xsl:when test="@linkend"> 484 <xsl:variable name="targets" select="id(@linkend)"/> 485 <xsl:variable name="target" select="$targets[1]"/> 486 487 <xsl:call-template name="check.id.unique"> 488 <xsl:with-param name="linkend" select="@linkend"/> 489 </xsl:call-template> 490 491 <a> 492 <xsl:if test="@id"> 493 <xsl:attribute name="name"> 494 <xsl:value-of select="@id"/> 495 </xsl:attribute> 496 </xsl:if> 497 498 <xsl:attribute name="href"> 499 <xsl:call-template name="href.target"> 500 <xsl:with-param name="object" select="$target"/> 501 </xsl:call-template> 502 </xsl:attribute> 503 504 <xsl:call-template name="inline.italicseq"/> 505 </a> 506 </xsl:when> 507 <xsl:otherwise> 508 <xsl:call-template name="inline.italicseq"/> 509 </xsl:otherwise> 510 </xsl:choose> 511</xsl:template> 512 513<xsl:template match="sgmltag"> 514 <xsl:call-template name="format.sgmltag"/> 515</xsl:template> 516 517<xsl:template name="format.sgmltag"> 518 <xsl:param name="class"> 519 <xsl:choose> 520 <xsl:when test="@class"> 521 <xsl:value-of select="@class"/> 522 </xsl:when> 523 <xsl:otherwise>element</xsl:otherwise> 524 </xsl:choose> 525 </xsl:param> 526 527 <xsl:choose> 528 <xsl:when test="$class='attribute'"> 529 <xsl:call-template name="inline.monoseq"/> 530 </xsl:when> 531 <xsl:when test="$class='attvalue'"> 532 <xsl:call-template name="inline.monoseq"/> 533 </xsl:when> 534 <xsl:when test="$class='element'"> 535 <xsl:call-template name="inline.monoseq"/> 536 </xsl:when> 537 <xsl:when test="$class='endtag'"> 538 <xsl:call-template name="inline.monoseq"> 539 <xsl:with-param name="content"> 540 <xsl:text></</xsl:text> 541 <xsl:apply-templates/> 542 <xsl:text>></xsl:text> 543 </xsl:with-param> 544 </xsl:call-template> 545 </xsl:when> 546 <xsl:when test="$class='genentity'"> 547 <xsl:call-template name="inline.monoseq"> 548 <xsl:with-param name="content"> 549 <xsl:text>&</xsl:text> 550 <xsl:apply-templates/> 551 <xsl:text>;</xsl:text> 552 </xsl:with-param> 553 </xsl:call-template> 554 </xsl:when> 555 <xsl:when test="$class='numcharref'"> 556 <xsl:call-template name="inline.monoseq"> 557 <xsl:with-param name="content"> 558 <xsl:text>&#</xsl:text> 559 <xsl:apply-templates/> 560 <xsl:text>;</xsl:text> 561 </xsl:with-param> 562 </xsl:call-template> 563 </xsl:when> 564 <xsl:when test="$class='paramentity'"> 565 <xsl:call-template name="inline.monoseq"> 566 <xsl:with-param name="content"> 567 <xsl:text>%</xsl:text> 568 <xsl:apply-templates/> 569 <xsl:text>;</xsl:text> 570 </xsl:with-param> 571 </xsl:call-template> 572 </xsl:when> 573 <xsl:when test="$class='pi'"> 574 <xsl:call-template name="inline.monoseq"> 575 <xsl:with-param name="content"> 576 <xsl:text><?</xsl:text> 577 <xsl:apply-templates/> 578 <xsl:text>></xsl:text> 579 </xsl:with-param> 580 </xsl:call-template> 581 </xsl:when> 582 <xsl:when test="$class='xmlpi'"> 583 <xsl:call-template name="inline.monoseq"> 584 <xsl:with-param name="content"> 585 <xsl:text><?</xsl:text> 586 <xsl:apply-templates/> 587 <xsl:text>?></xsl:text> 588 </xsl:with-param> 589 </xsl:call-template> 590 </xsl:when> 591 <xsl:when test="$class='starttag'"> 592 <xsl:call-template name="inline.monoseq"> 593 <xsl:with-param name="content"> 594 <xsl:text><</xsl:text> 595 <xsl:apply-templates/> 596 <xsl:text>></xsl:text> 597 </xsl:with-param> 598 </xsl:call-template> 599 </xsl:when> 600 <xsl:when test="$class='emptytag'"> 601 <xsl:call-template name="inline.monoseq"> 602 <xsl:with-param name="content"> 603 <xsl:text><</xsl:text> 604 <xsl:apply-templates/> 605 <xsl:text>/></xsl:text> 606 </xsl:with-param> 607 </xsl:call-template> 608 </xsl:when> 609 <xsl:when test="$class='sgmlcomment'"> 610 <xsl:call-template name="inline.monoseq"> 611 <xsl:with-param name="content"> 612 <xsl:text><!--</xsl:text> 613 <xsl:apply-templates/> 614 <xsl:text>--></xsl:text> 615 </xsl:with-param> 616 </xsl:call-template> 617 </xsl:when> 618 <xsl:otherwise> 619 <xsl:call-template name="inline.charseq"/> 620 </xsl:otherwise> 621 </xsl:choose> 622</xsl:template> 623 624<xsl:template match="email"> 625 <xsl:call-template name="inline.monoseq"> 626 <xsl:with-param name="content"> 627 <xsl:text><</xsl:text> 628 <a> 629 <xsl:attribute name="href">mailto:<xsl:value-of select="."/></xsl:attribute> 630 <xsl:apply-templates/> 631 </a> 632 <xsl:text>></xsl:text> 633 </xsl:with-param> 634 </xsl:call-template> 635</xsl:template> 636 637<xsl:template match="keycombo"> 638 <xsl:variable name="action" select="@action"/> 639 <xsl:variable name="joinchar"> 640 <xsl:choose> 641 <xsl:when test="$action='seq'"><xsl:text> </xsl:text></xsl:when> 642 <xsl:when test="$action='simul'">+</xsl:when> 643 <xsl:when test="$action='press'">-</xsl:when> 644 <xsl:when test="$action='click'">-</xsl:when> 645 <xsl:when test="$action='double-click'">-</xsl:when> 646 <xsl:when test="$action='other'"></xsl:when> 647 <xsl:otherwise>-</xsl:otherwise> 648 </xsl:choose> 649 </xsl:variable> 650 <xsl:for-each select="./*"> 651 <xsl:if test="position()>1"><xsl:value-of select="$joinchar"/></xsl:if> 652 <xsl:apply-templates/> 653 </xsl:for-each> 654</xsl:template> 655 656<!-- ==================================================================== --> 657 658<xsl:template match="menuchoice"> 659 <xsl:variable name="shortcut" select="/shortcut"/> 660 <xsl:call-template name="process.menuchoice"/> 661 <xsl:if test="$shortcut"> 662 <xsl:text> (</xsl:text> 663 <xsl:apply-templates select="$shortcut"/> 664 <xsl:text>)</xsl:text> 665 </xsl:if> 666</xsl:template> 667 668<xsl:template name="process.menuchoice"> 669 <xsl:param name="nodelist" select="guibutton|guiicon|guilabel|guimenu|guimenuitem|guisubmenu|interface"/><!-- not(shortcut) --> 670 <xsl:param name="count" select="1"/> 671 672 <xsl:choose> 673 <xsl:when test="$count>count($nodelist)"></xsl:when> 674 <xsl:when test="$count=1"> 675 <xsl:apply-templates select="$nodelist[$count=position()]"/> 676 <xsl:call-template name="process.menuchoice"> 677 <xsl:with-param name="nodelist" select="$nodelist"/> 678 <xsl:with-param name="count" select="$count+1"/> 679 </xsl:call-template> 680 </xsl:when> 681 <xsl:otherwise> 682 <xsl:variable name="node" select="$nodelist[$count=position()]"/> 683 <xsl:choose> 684 <xsl:when test="name($node)='guimenuitem' 685 or name($node)='guisubmenu'"> 686 <xsl:text>-></xsl:text> 687 </xsl:when> 688 <xsl:otherwise>+</xsl:otherwise> 689 </xsl:choose> 690 <xsl:apply-templates select="$node"/> 691 <xsl:call-template name="process.menuchoice"> 692 <xsl:with-param name="nodelist" select="$nodelist"/> 693 <xsl:with-param name="count" select="$count+1"/> 694 </xsl:call-template> 695 </xsl:otherwise> 696 </xsl:choose> 697</xsl:template> 698 699<!-- ==================================================================== --> 700 701<xsl:template match="optional"> 702 <xsl:value-of select="$arg.choice.opt.open.str"/> 703 <xsl:call-template name="inline.charseq"/> 704 <xsl:value-of select="$arg.choice.opt.close.str"/> 705</xsl:template> 706 707<xsl:template match="citation"> 708 <!-- todo: biblio-citation-check --> 709 <xsl:text>[</xsl:text> 710 <xsl:call-template name="inline.charseq"/> 711 <xsl:text>]</xsl:text> 712</xsl:template> 713 714<!-- ==================================================================== --> 715 716<xsl:template match="comment|remark"> 717 <xsl:if test="$show.comments != 0"> 718 <i><xsl:call-template name="inline.charseq"/></i> 719 </xsl:if> 720</xsl:template> 721 722<!-- ==================================================================== --> 723 724<xsl:template match="productname"> 725 <xsl:call-template name="inline.charseq"/> 726 <xsl:if test="@class"> 727 <xsl:call-template name="dingbat"> 728 <xsl:with-param name="dingbat" select="@class"/> 729 </xsl:call-template> 730 </xsl:if> 731</xsl:template> 732 733<xsl:template match="productnumber"> 734 <xsl:call-template name="inline.charseq"/> 735</xsl:template> 736 737<!-- ==================================================================== --> 738 739<xsl:template match="pob|street|city|state|postcode|country|otheraddr"> 740 <xsl:call-template name="inline.charseq"/> 741</xsl:template> 742 743<xsl:template match="phone|fax"> 744 <xsl:call-template name="inline.charseq"/> 745</xsl:template> 746 747<!-- in Addresses, for example --> 748<xsl:template match="honorific|firstname|surname|lineage|othername"> 749 <xsl:call-template name="inline.charseq"/> 750</xsl:template> 751 752<!-- ==================================================================== --> 753 754</xsl:stylesheet> 755 756