home *** CD-ROM | disk | FTP | other *** search
Wrap
<?xml version="1.0"?> <!-- Sybex body stylesheet Copyright (c) 2000 Maris Multimedia Ltd. http://www.maris.com/ Thank you for examining our code. --> <xsl:stylesheet xmlns:xsl="http://www.w3.org/XSL/Transform/1.0" xmlns="http://www.w3.org/TR/REC-html40" result-ns="" indent-result="yes"> <!-- main template: begin --> <xsl:template match="/"> <HTML> <![CDATA[<!-- Copyright (c) 2000 Maris Multimedia Ltd. http://www.maris.com/ Thank you for examining our code. -->]]> <HEAD> <TITLE><xsl:value-of select="/CHAPTER/TITLE" /><xsl:value-of select="/APPENDIX/TITLE" /><xsl:value-of select="/EXPLORATIONS/TITLE" /></TITLE> <LINK HREF="<?103?>&course=<?1008?>&file=media/content/css/style1.css" REL="STYLESHEET" TYPE="text/css" /> <LINK HREF="<?103?>&course=<?1008?>&file=media/content/css/font<?1006?>.css" REL="STYLESHEET" TYPE="text/css" /> <SCRIPT TYPE="text/javascript" LANGUAGE="JavaScript"><![CDATA[ //top.frames["iconbar"].document.applets["IconBar"].enableBackForward(); var ns = false; var ie = false; var layerRef,embedRef; if (document.layers) { ns = true; layerRef = "document.layers."; embedRef = "document.embeds."; } if (document.all) { ie = true; layerRef = "document.all."; styleRef = ".style"; } function imageObject(imageSrc) { this.imageObjectOut = new Image(); this.imageObjectOver = new Image(); this.imageObjectDown = new Image(); this.imageObjectOut.src = imageSrc + "out.gif"; this.imageObjectOver.src = imageSrc + "over.gif"; this.imageObjectDown.src = imageSrc + "down.gif"; } function imageObjectChange(imageName,imageObj,imageState) { eval("document."+imageName+".src="+imageObj+".imageObject"+imageState+".src;") } function getBrowser() { with (navigator) { if(parseInt(appVersion.substring(0, 2))>=4) { if (appName.indexOf('Microsoft')!=-1 && appVersion.indexOf('Win')!=-1) { return 0; } if (appName.indexOf('Netscape')!=-1 && appVersion.indexOf('Win')!=-1) { return 1; } if (appName.indexOf('Netscape')!=-1 && appVersion.indexOf('Mac')!=-1) { return 2; } } else { return 0; } } } var browser=getBrowser(); var times = new Array("×", "×", "<font face='symbol'>¥</font>"); var infin = new Array("<span class='symbol'>¥</span>", "<font face='symbol'>¥</font>", "<IMG SRC='<?103?>&file=media/content/graphics/0/infin<?1006?>.gif' BORDER='0'>"); var ge = new Array("<span class='symbol'>³</span>", "<font face='symbol'>³</font>", "<IMG SRC='<?103?>&file=media/content/graphics/0/ge<?1006?>.gif' BORDER='0'>"); var ap = new Array("<span class='symbol'>»</span>", "<font face='symbol'>»</font>", "<font face='symbol'>ª</font>"); var ne = new Array("<span class='symbol'>¹</span>", "<font face='symbol'>¹</font>", "<IMG SRC='<?103?>&file=media/content/graphics/0/noteq<?1006?>.gif' BORDER='0'>"); var cup = new Array("<span class='symbol'>È</span>", "<font face='symbol'>È</font>", "<font face='symbol'>»</font>"); var larr = new Array("<span class='symbol'>¬</span>", "<font face='symbol'>¬</font>", "<font face='symbol'>¨</font>"); var rarr = new Array("<span class='symbol'>®</span>", "<font face='symbol'>®</font>", "<font face='symbol'>Æ</font>"); var ang = new Array("<span class='symbol'>Ð</span>", "<font face='symbol'>Ð</font>", "<font face='symbol'></font>"); function playSound(in_Name) { if (ie) { if(eval(layerRef + in_Name)) { eval(layerRef + in_Name + ".DoPlayPause();"); } } else { eval(embedRef + in_Name + ".DoPlayPause();"); } } function gotoPage(in_Ref) { top.pageid=in_Ref; parent.location="<?11?>?sid=<?1003?>&msg=4&xml=/media/content/links.xml&xsl=/media/content/links.xsl&name=selector&select=LS/L[@Q='"+in_Ref+"']"; } var soundImage = new imageObject("<?11?>?sid=<?1003?>&msg=3&file=media/content/graphics/styles/sound"); var zoomImage = new imageObject("<?11?>?sid=<?1003?>&msg=3&file=media/content/graphics/styles/zoom"); var aNewWindow=null; // variable for new separate window in wich will be loading Flas var flash_Source,flash_Width,flash_Height; // load Flash in new separate window function loadMovie(movieFile,in_Width,in_Height) { var curLoc="<?103?>&file=media/content/zoom.htm"; var frameHeight=30; var movieWidth=screen.width-16; var movieHeight=screen.height-60-frameHeight; if((movieWidth/movieHeight)>(in_Width/in_Height)) { movieWidth=Math.floor((movieHeight/in_Height)*in_Width); } else { movieHeight=Math.floor((movieWidth/in_Width)*in_Height); } var movieLeft=(screen.width-16-movieWidth)/2; var movieTop=(screen.height-60-frameHeight-movieHeight)/2; flash_Source=movieFile; flash_Width=movieWidth; flash_Height=movieHeight; movieHeight+=frameHeight; var paramWin="width="+movieWidth+",height="+movieHeight+",left="+movieLeft+",top="+movieTop+",resizable=no,copyhistory=no,directories=no,location=no,menubar=no,scrollbars=no,status=no,toolbar=no"; // if aNewWindow has already some Flash in itself - close aNewWindow if (aNewWindow!=null) { if (ns) { if (!aNewWindow.closed) { aNewWindow.close(); } } else { aNewWindow.close(); } } aNewWindow=null; // open aNewWindow and load Flash in it aNewWindow=window.open(curLoc,"MovieWindow",paramWin); // load Flash stopSelfSound("FLASH"); } function unloadMovie() // when Html is leaving - close aNewWindow if it is not closed { if (aNewWindow!=null) { if (ns) { if (!aNewWindow.closed) { aNewWindow.close(); } } else { aNewWindow.close(); } } aNewWindow=null; } function stopSelfSound(in_Name) { if (ie) { if(eval(layerRef + in_Name)) { eval(layerRef + in_Name + '.TCallLabel("/drag","stop");'); } } else { eval(embedRef + in_Name + '.TCallLabel("/drag","stop");'); } } function stopSound() { if (aNewWindow!=null) { if (!aNewWindow.closed) { if (ie) { aNewWindow.frames['zoomf'].window.document.all.FLASH.TCallLabel("/drag","stop"); } else { aNewWindow.frames['zoomf'].window.document.embeds.FLASH.TCallLabel("/drag","stop"); } } } } ]]></SCRIPT> </HEAD> <BODY LEFTMARGIN="7" TOPMARGIN="7" MARGINWIDTH="7" MARGINHEIGHT="7" BGCOLOR="#FFFFFF" onUnload="javascript:unloadMovie();" onresize="javascript:if(navigator.appName.indexOf('Netscape')!=-1)self.location.reload();"> <xsl:apply-templates select="CHAPTER" name="selector" /> </BODY> </HTML> </xsl:template> <!-- main template: end --> <!-- chapter intro: begin --> <xsl:template match="CHAPTER | APPENDIX"> <xsl:apply-templates select="TITLE" /> <xsl:apply-templates select="CHAPTEROBJECTIVEBLOCK" /> <xsl:apply-templates select="PARA | LIST | RUNINBLOCK | PARACONTINUED | SLUG | NOTE | CODESNIPPET | TABULARDATA | TESTDATA | TABLE | TABLEB | WARNING | TIP | SIDEBARBLOCK | MSEXAMOBJECTIVE | QUOTE | COMMENT" /> </xsl:template> <xsl:template match="CHAPTER/TITLE | APPENDIX/TITLE"> <P><TABLE CELLPADDING="0" CELLSPACING="0" BORDER="0"> <TR> <xsl:apply-templates select="../AUDIO" /> <TD VALIGN="top"> </TD> <TD VALIGN="top"><H1 CLASS="chapterTitle"><A NAME="{../@ID}"></A><xsl:apply-templates /></H1></TD> </TR> </TABLE> <TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="96%" HEIGHT="2" BORDER="0" BGCOLOR="#000000"> <TR WIDTH="100%" HEIGHT="1" BGCOLOR="#000000"> <TD WIDTH="100%" HEIGHT="1" BGCOLOR="#000000"><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="1" HEIGHT="2" BORDER="0" /></TD> </TR></TABLE></P> </xsl:template> <xsl:template match="CHAPTER/CHAPTEROBJECTIVEBLOCK | APPENDIX/CHAPTEROBJECTIVEBLOCK"> <xsl:apply-templates select="CHAPTEROBJECTIVETITLE" /> <TABLE CELLPADDING="0" CELLSPACING="0" BORDER="0"> <xsl:apply-templates select="CHAPTEROBJECTIVE | CHAPTEROBJECTIVEBOLD | CHAPTERSUBOBJECTIVE" /> </TABLE> </xsl:template> <xsl:template match="CHAPTEROBJECTIVETITLE"> <H2 CLASS="chapterOBTitle"><xsl:apply-templates /></H2> </xsl:template> <xsl:template match="CHAPTEROBJECTIVE"> <TR> <TD CLASS="text" VALIGN="top"><IMG SRC="<?303 media/content/graphics/styles/check.gif?>" WIDTH="13" HEIGHT="17" BORDER="0" /></TD> <TD CLASS="text" VALIGN="top"><B><xsl:apply-templates /></B></TD> </TR> </xsl:template> <xsl:template match="CHAPTEROBJECTIVEBOLD"> <TR> <TD CLASS="text" VALIGN="top"><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="13" HEIGHT="17" BORDER="0" /></TD> <TD CLASS="text" VALIGN="top"><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="26" HEIGHT="17" BORDER="0" /><B><xsl:apply-templates /></B></TD> </TR> </xsl:template> <xsl:template match="CHAPTERSUBOBJECTIVE"> <TR> <TD CLASS="text" VALIGN="top"><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="13" HEIGHT="17" BORDER="0" /></TD> <TD CLASS="text" VALIGN="top"> <UL CLASS="text" TYPE="square"> <LI CLASS="text"><xsl:apply-templates /></LI> </UL> </TD> </TR> </xsl:template> <xsl:template match="CHAPTERSUBSUBOBJECTIVE"> <UL CLASS="text" TYPE="square"><BR/> <LI CLASS="text"><xsl:apply-templates /></LI> </UL> </xsl:template> <xsl:template match="CHAPTERSUBOBJECTIVE/CHAPTEROBJECTIVEBOLD"> <BR/><NBSP/><NBSP/><NBSP/><NBSP/><B CLASS="text"><xsl:apply-templates /></B> </xsl:template> <!-- chapter intro: end --> <!-- section: begin --> <xsl:template match="CHAPTER/SECTION | CHAPTER/TESTSECTION | APPENDIX/SECTION | APPENDIX/TESTSECTION | CHAPTER/SECTION[@CASESTUDY]"> <xsl:apply-templates select="TITLE" /> <xsl:apply-templates select="PARA | LIST | RUNINBLOCK | PARACONTINUED | SLUG | NOTE | CODESNIPPET | TABULARDATA | TESTDATA | TABLE | TABLEB | WARNING | TIP | SIDEBARBLOCK | MSEXAMOBJECTIVE | QUOTE | COMMENT | EXERCISEBLOCK" /> </xsl:template> <xsl:template match="CHAPTER/SECTION/SECTION | CHAPTER/TESTSECTION/TESTSECTION | APPENDIX/SECTION/SECTION | INTRODUCTION/SECTION | INTRODUCTION/ACKNOWLEDGMENTS | CHAPTER/SECTION/TESTSECTION | CHAPTER/SECTION[@CASESTUDY]/SECTION"> <xsl:if test="@POS != null"> <xsl:apply-templates select="../TITLE" /> <xsl:apply-templates select="../PARA | ../LIST | ../RUNINBLOCK | ../PARACONTINUED | ../SLUG | ../NOTE | ../CODESNIPPET | ../TABULARDATA | ../TESTDATA | ../TABLE | ../TABLEB | ../WARNING | ../TIP | ../SIDEBARBLOCK | ../MSEXAMOBJECTIVE | ../QUOTE | ../COMMENT" /> </xsl:if> <xsl:apply-templates select="TITLE" /> <xsl:apply-templates select="SECTION | PARA | LIST | RUNINBLOCK | PARACONTINUED | SLUG | NOTE | CODESNIPPET | TABULARDATA | TESTDATA | TABLE | TABLEB | WARNING | TIP | SIDEBARBLOCK | MSEXAMOBJECTIVE | QUOTE | COMMENT | EXERCISEBLOCK" /> </xsl:template> <xsl:template match="SECTION | TESTSECTION"> <xsl:apply-templates select="TITLE" /> <xsl:apply-templates select="SECTION | PARA | LIST | RUNINBLOCK | PARACONTINUED | SLUG | NOTE | CODESNIPPET | TABULARDATA | TESTDATA | TABLE | TABLEB | WARNING | TIP | SIDEBARBLOCK | MSEXAMOBJECTIVE | QUOTE | COMMENT | EXERCISEBLOCK" /> </xsl:template> <!-- exception --> <xsl:template match="CHAPTER/SECTION/SECTION[@EXCEPTION='1']"> <xsl:if test="@POS != null"> <xsl:apply-templates select="../TITLE" /> <xsl:apply-templates select="../PARA | ../LIST | ../RUNINBLOCK | ../PARACONTINUED | ../SLUG | ../NOTE | ../CODESNIPPET | ../TABULARDATA | ../TESTDATA | ../TABLE | ../TABLE | ../WARNING | ../TIP | ../SIDEBARBLOCK | ../MSEXAMOBJECTIVE | ../QUOTE | ../COMMENT" /> </xsl:if> <xsl:apply-templates select="TITLE" /> <xsl:apply-templates select="PARA | LIST | RUNINBLOCK | PARACONTINUED | SLUG | NOTE | CODESNIPPET | TABULARDATA | TESTDATA | TABLE | TABLEB | WARNING | TIP | SIDEBARBLOCK | MSEXAMOBJECTIVE | QUOTE | COMMENT" /> </xsl:template> <!-- section: end --> <!-- section title: begin --> <xsl:template match="CHAPTER/SECTION/TITLE | CHAPTER/TESTSECTION/TITLE | APPENDIX/SECTION/TITLE | APPENDIX/TESTSECTION/TITLE | INTRODUCTION/SECTION/TITLE | INTRODUCTION/ACKNOWLEDGMENTS/TITLE"> <H3 CLASS="sec1Title"><A NAME="{../@ID}"></A><xsl:apply-templates /></H3> </xsl:template> <xsl:template match="CHAPTER/SECTION/SECTION/TITLE | CHAPTER/TESTSECTION/TESTSECTION/TITLE | APPENDIX/SECTION/SECTION/TITLE | APPENDIX/TESTSECTION/TESTSECTION/TITLE | INTRODUCTION/SECTION/SECTION/TITLE | CHAPTER/SECTION/TESTSECTION/TITLE"> <H3 CLASS="sec2Title"><A NAME="{../@ID}"></A><xsl:apply-templates /></H3> </xsl:template> <xsl:template match="CHAPTER/SECTION/SECTION/SECTION/TITLE | APPENDIX/SECTION/SECTION/SECTION/TITLE | INTRODUCTION/SECTION/SECTION/SECTION/TITLE"> <H3 CLASS="sec3Title"><A NAME="{../@ID}"></A><xsl:apply-templates /></H3> </xsl:template> <xsl:template match="CHAPTER/SECTION/SECTION/SECTION/SECTION/TITLE | APPENDIX/SECTION/SECTION/SECTION/SECTION/TITLE | CHAPTER/SECTION/SECTION/SECTION/SECTION/SECTION/TITLE | CHAPTER/SECTION/SECTION/SECTION/SECTION/SECTION/SECTION/TITLE | INTRODUCTION/SECTION/SECTION/SECTION/SECTION/TITLE"> <H3 CLASS="sec4Title"><A NAME="{../@ID}"></A><xsl:apply-templates /></H3> </xsl:template> <!-- section title: end --> <!-- EXPLORATIONS and EXPLORATION: begin --> <xsl:template match="EXPLORATIONS"> <xsl:apply-templates select="EXPLORATION" /> </xsl:template> <xsl:template match="EXPLORATION"> <xsl:apply-templates select="TITLE" /> <xsl:apply-templates select="PARA | LIST | APPLET" /> </xsl:template> <xsl:template match="EXPLORATIONS/EXPLORATION/TITLE"> <H3 CLASS="sec1Title"><xsl:apply-templates /></H3> </xsl:template> <!-- EXPLORATIONS and EXPLORATION: end --> <!-- Applet: begin --> <xsl:template match="APPLET"> <APPLET NAME="{@CODE}" CODE="{@CODE}.class" ARCHIVE="<?11?>?sid=<?1003?>&msg=3&file=applets/{@ARCHIVE}" WIDTH="{@WIDTH}" HEIGHT="{@HEIGHT}"> <xsl:if test="@BORDER != null"><xsl:attribute name="BORDER"><xsl:value-of select="@BORDER" /></xsl:attribute></xsl:if> <xsl:for-each select="PARAM"> <PARAM NAME="{@NAME}" VALUE="{@VALUE}" /> </xsl:for-each> <PARAM NAME="mediabase" VALUE="<?11?>?sid=<?1003?>&msg=3&file=applets/" /> </APPLET> </xsl:template> <!-- Applet: end --> <!-- msexamobjective: begin --> <xsl:template match="MSEXAMOBJECTIVE"> <P><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%"><TR><TD BGCOLOR="#000000"><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="1"> <TR BGCOLOR="#FFFFFF"> <TD VALIGN="top" WIDTH="91"><IMG SRC="<?303 media/content/graphics/styles/meo.gif?>" WIDTH="91" HEIGHT="51" BORDER="0" /></TD> <TD CLASS="text" VALIGN="top" WIDTH="100%"><xsl:apply-templates select="OBJECTIVEROW" /></TD> </TR> </TABLE></TD></TR></TABLE></P> </xsl:template> <xsl:template match="OBJECTIVEROW"> <TABLE CELLPADDING="7" CELLSPACING="0" BORDER="0"> <xsl:apply-templates select="OBJECTIVE" /> </TABLE> </xsl:template> <xsl:template match="OBJECTIVEROW/OBJECTIVE"> <TR> <TD CLASS="text" VALIGN="top"><B><xsl:apply-templates /></B></TD> </TR> </xsl:template> <xsl:template match="OBJECTIVEROW/OBJECTIVE[@HIERARCHY='subordinate']"> <TR> <TD CLASS="text" VALIGN="top"> <UL CLASS="text" TYPE="square"> <LI CLASS="text"><xsl:apply-templates /></LI> </UL> </TD> </TR> </xsl:template> <!-- msexamobjective: end --> <!-- runinblock: begin --> <xsl:template match="RUNINBLOCK | SIDEBARRUNINBLOCK"> <BLOCKQUOTE CLASS="text"><xsl:apply-templates select="RUNINHEAD | SIDEBARRUNINHEAD | RUNINPARA | SIDEBARRUNINPARA | NOTE | LIST | RUNINBLOCK | TABULARDATA | PARA" /></BLOCKQUOTE> </xsl:template> <xsl:template match="RUNINHEAD | SIDEBARRUNINHEAD"> <B><xsl:apply-templates /> </B> </xsl:template> <xsl:template match="RUNINPARA | SIDEBARRUNINPARA"> <xsl:apply-templates /><BR/><BR/> </xsl:template> <!-- <xsl:template match="RUNINBLOCK"> <xsl:for-each select="RUNINPARA"> <xsl:if test="position()=1"><BLOCKQUOTE CLASS="text"><B><xsl:apply-templates select="../RUNINHEAD" /></B> <xsl:apply-templates /></BLOCKQUOTE></xsl:if> <xsl:if test="position()=2"><BLOCKQUOTE CLASS="text"><xsl:apply-templates /></BLOCKQUOTE></xsl:if> <xsl:if test="position()=3"><BLOCKQUOTE CLASS="text"><xsl:apply-templates /></BLOCKQUOTE></xsl:if> </xsl:for-each> <xsl:apply-templates select="NOTE | LIST | RUNINBLOCK | TABULARDATA | PARA" /> </xsl:template> <xsl:template match="RUNINBLOCK/LIST | RUNINBLOCK/RUNINBLOCK | RUNINBLOCK/PARA | RUNINBLOCK/TABULARDATA"> <BLOCKQUOTE CLASS="text"><xsl:apply-templates /></BLOCKQUOTE> </xsl:template> --> <!-- runinblock: end --> <!-- list: begin --> <xsl:template match="LIST | LIST[@MARK='bullet']"> <UL CLASS="text" TYPE="square"> <xsl:for-each select="LISTITEM | QUESTION | SIDEBARLISTBULLETED"> <LI CLASS="text"><xsl:apply-templates /></LI> </xsl:for-each> </UL> </xsl:template> <xsl:template match="LIST[@MARK='none']"> <UL CLASS="none"> <xsl:for-each select="LISTITEM"> <LI CLASS="text"><xsl:apply-templates /></LI> </xsl:for-each> </UL> </xsl:template> <xsl:template match="LIST[@MARK='number']"> <OL CLASS="text" TYPE="1"> <xsl:if test="@START != null"><xsl:attribute name="START"><xsl:value-of select="@START" /></xsl:attribute></xsl:if> <xsl:for-each select="LISTITEM | SIDEBARLISTNUMBERED"> <LI CLASS="text"><xsl:apply-templates /></LI> </xsl:for-each> </OL> </xsl:template> <xsl:template match="LIST[@MARK='alpha']"> <OL CLASS="text" TYPE="A"> <xsl:if test="@START != null"><xsl:attribute name="START"><xsl:value-of select="@START" /></xsl:attribute></xsl:if> <xsl:for-each select="LISTITEM | OPTION"> <LI CLASS="text"><xsl:apply-templates /></LI> </xsl:for-each> </OL> </xsl:template> <!-- list: end --> <!-- testdata: begin --> <xsl:template match="TESTDATA"> <OL CLASS="text" TYPE="1"> <xsl:for-each select="TESTBLOCK"> <LI CLASS="text"><xsl:apply-templates select="QUESTIONBLOCK/QUESTION | QUESTIONBLOCK/LIST | ANSWERBLOCK/ANSWER" /></LI> </xsl:for-each> </OL> <xsl:apply-templates select="TESTDATA/TESTBLOCK/QUESTIONBLOCK/LIST[@MARK='alpha']" /> </xsl:template> <!-- testdata: end --> <!-- image (Jpeg and Gif): begin --> <xsl:template match="IMAGE | image"> <IMG SRC="<?303 media?>/content/{@SRC}"> <xsl:if test="@BORDER != null"><xsl:attribute name="BORDER"><xsl:value-of select="@BORDER" /></xsl:attribute></xsl:if> <xsl:if test="@WIDTH != null"><xsl:attribute name="WIDTH"><xsl:value-of select="@WIDTH" /></xsl:attribute></xsl:if> <xsl:if test="@HEIGHT != null"><xsl:attribute name="HEIGHT"><xsl:value-of select="@HEIGHT" /></xsl:attribute></xsl:if> <xsl:if test="@ALIGN != null"><xsl:attribute name="ALIGN"><xsl:value-of select="@ALIGN" /></xsl:attribute></xsl:if> <xsl:if test="@VSPACE != null"><xsl:attribute name="VSPACE"><xsl:value-of select="@VSPACE" /></xsl:attribute></xsl:if> <xsl:if test="@HSPACE != null"><xsl:attribute name="HSPACE"><xsl:value-of select="@HSPACE" /></xsl:attribute></xsl:if> </IMG> </xsl:template> <!-- image (Jpeg and Gif): end --> <!-- math (Gif only): begin --> <xsl:template match="MATH | math"> <!-- <IMG SRC="<?303 media/content/?>{@SRC}.gif" BORDER="0"> --> <IMG SRC="<?103?>&course=<?1008?>&file=media/content/{@SRC}.gif"> <xsl:if test="@WIDTH != null"><xsl:attribute name="WIDTH"><xsl:value-of select="@WIDTH" /></xsl:attribute></xsl:if> <xsl:if test="@HEIGHT != null"><xsl:attribute name="HEIGHT"><xsl:value-of select="@HEIGHT" /></xsl:attribute></xsl:if> <xsl:if test="@ALIGN != null"><xsl:attribute name="ALIGN"><xsl:value-of select="@ALIGN" /></xsl:attribute></xsl:if> </IMG> </xsl:template> <!-- math (Gif only): end --> <!-- sybexsymbol: begin --> <xsl:template match="SYBEXSYMBOL"> <span class="symbol"><xsl:apply-templates /></span> </xsl:template> <!-- sybexsymbol: end --> <!-- ****** SPECIAL SYMBOLS ***** --> <!-- times sign --> <xsl:template match="TIMES"> <script type="text/javascript" language="JavaScript"><![CDATA[document.write(times[browser]);]]></script> </xsl:template> <!-- divide sign --> <xsl:template match="DIVIDE"> <xsl:text>÷</xsl:text> </xsl:template> <!-- difference sign --> <xsl:template match="MINUS"> <xsl:text></xsl:text> </xsl:template> <!-- non-break space sign --> <xsl:template match="NBSP"> <xsl:text> </xsl:text> </xsl:template> <!-- infinity sign --> <xsl:template match="INFIN"> <script type="text/javascript" language="JavaScript"><![CDATA[document.write(infin[browser]);]]></script> </xsl:template> <!-- union sign --> <xsl:template match="CUP"> <script type="text/javascript" language="JavaScript"><![CDATA[document.write(cup[browser]);]]></script> </xsl:template> <!-- infinity sign --> <xsl:template match="ANG"> <script type="text/javascript" language="JavaScript"><![CDATA[document.write(ang[browser]);]]></script> </xsl:template> <!-- plus-minus sign --> <xsl:template match="PLUSMN"> <span class="symbol">±</span> </xsl:template> <!-- less-than or equal sign --> <xsl:template match="LE"> <span class="symbol">£</span> </xsl:template> <!-- greater-than or equal sign --> <xsl:template match="GE"> <script type="text/javascript" language="JavaScript"><![CDATA[document.write(ge[browser]);]]></script> </xsl:template> <!-- less sign --> <xsl:template match="LT"> <span class="symbol"><</span> </xsl:template> <!-- more sign --> <xsl:template match="GT"> <span class="symbol">></span> </xsl:template> <!-- left arrow sign --> <xsl:template match="LARR"> <script type="text/javascript" language="JavaScript"><![CDATA[document.write(larr[browser]);]]></script> </xsl:template> <!-- right arrow sign --> <xsl:template match="RARR"> <script type="text/javascript" language="JavaScript"><![CDATA[document.write(rarr[browser]);]]></script> </xsl:template> <!-- tab sign --> <xsl:template match="TAB"> <xsl:text> </xsl:text> </xsl:template> <!-- nearly equal sign --> <xsl:template match="AP"> <script type="text/javascript" language="JavaScript"><![CDATA[document.write(ap[browser]);]]></script> </xsl:template> <!-- degree sign --> <xsl:template match="DGR"> <xsl:text>°</xsl:text> </xsl:template> <!-- check mark sign --> <xsl:template match="CHECK"> <IMG SRC="<?303 media/content/?>graphics/0/check<?1006?>.gif" BORDER="0" ALIGN="ABSMIDDLE" /> </xsl:template> <!-- right-pointing angle arrow sign --> <xsl:template match="ARR"> <IMG SRC="<?303 media/content/?>graphics/0/arr<?1006?>.gif" BORDER="0" ALIGN="ABSMIDDLE" /> </xsl:template> <!-- ************************************************* --> <!-- link to xml: begin --> <xsl:template match="L"> <A HREF="javascript:gotoPage('{@REF}');"><xsl:apply-templates /></A> </xsl:template> <!-- link to xml: end --> <!-- tabulardata: begin --> <xsl:template match="TABULARDATA | QUOTE"> <BLOCKQUOTE CLASS="text"> <xsl:apply-templates /> </BLOCKQUOTE> </xsl:template> <!-- tabulardata: end --> <!-- tabularbody: begin --> <xsl:template match="TABULARBODY"> <TABLE BORDER="0" CELLPADDING="6" CELLSPACING="0"> <xsl:if test="@WIDTH != null"><xsl:attribute name="WIDTH"><xsl:value-of select="@WIDTH" /></xsl:attribute></xsl:if> <xsl:if test="@HEIGHT != null"><xsl:attribute name="HEIGHT"><xsl:value-of select="@HEIGHT" /></xsl:attribute></xsl:if> <xsl:if test="@ALIGN != null"><xsl:attribute name="ALIGN"><xsl:value-of select="@ALIGN" /></xsl:attribute></xsl:if> <xsl:for-each select="TABULARROW"> <TR> <xsl:if test="@BGCOLOR != null"><xsl:attribute name="BGCOLOR"><xsl:value-of select="@BGCOLOR" /></xsl:attribute></xsl:if> <xsl:for-each select="TABULARENTRY"> <TD CLASS="text" VALIGN="top"> <xsl:if test="@WIDTH != null"><xsl:attribute name="WIDTH"><xsl:value-of select="@WIDTH" /></xsl:attribute></xsl:if> <xsl:if test="@HEIGHT != null"><xsl:attribute name="HEIGHT"><xsl:value-of select="@HEIGHT" /></xsl:attribute></xsl:if> <xsl:if test="@ALIGN != null"><xsl:attribute name="ALIGN"><xsl:value-of select="@ALIGN" /></xsl:attribute></xsl:if> <!-- <xsl:if test="@VALIGN != null"><xsl:attribute name="VALIGN"><xsl:value-of select="@VALIGN" /></xsl:attribute></xsl:if> --> <xsl:if test="@COLSPAN != null"><xsl:attribute name="COLSPAN"><xsl:value-of select="@COLSPAN" /></xsl:attribute></xsl:if> <xsl:if test="@ROWSPAN != null"><xsl:attribute name="ROWSPAN"><xsl:value-of select="@ROWSPAN" /></xsl:attribute></xsl:if> <xsl:if test="@REF != null"><A HREF="javascript:gotoPage('{@REF}');"><xsl:apply-templates /></A></xsl:if> <xsl:if test="@REF = null"><xsl:apply-templates /></xsl:if> </TD> </xsl:for-each> </TR> </xsl:for-each> </TABLE> </xsl:template> <!-- tabularbody: begin --> <!-- table: begin --> <xsl:template match="TABLE"> <P CLASS="text"><B>TABLE <xsl:value-of select="@NUM" /></B> <xsl:apply-templates select="TABLETITLE" /></P> <BLOCKQUOTE CLASS="text"> <TABLE BORDER="0" CELLPADDING="4" CELLSPACING="0" WIDTH="90%"> <TR><TD COLSPAN="{@TABLEENTRYNUM}" WIDTH="100%"> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%"><TR><TD WIDTH="100%" HEIGHT="2" BGCOLOR="#000000"><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="1" HEIGHT="2" BORDER="0" /></TD></TR></TABLE> </TD></TR> <xsl:apply-templates select="TABLEHEAD" /> <TR><TD COLSPAN="{@TABLEENTRYNUM}" WIDTH="100%"> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%"><TR><TD WIDTH="100%" HEIGHT="1" BGCOLOR="#000000"><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="1" HEIGHT="1" BORDER="0" /></TD></TR></TABLE> </TD></TR> <xsl:apply-templates select="TABLEBODY" /> <TR><TD COLSPAN="{@TABLEENTRYNUM}" WIDTH="100%"> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%"><TR><TD WIDTH="100%" HEIGHT="2" BGCOLOR="#000000"><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="1" HEIGHT="2" BORDER="0" /></TD></TR></TABLE> </TD></TR> </TABLE> </BLOCKQUOTE> </xsl:template> <xsl:template match="TABLEHEAD"> <TR> <xsl:for-each select="TABLEROW/TABLEENTRY"> <TD CLASS="text"> <xsl:if test="@WIDTH != null"><xsl:attribute name="WIDTH"><xsl:value-of select="@WIDTH" /></xsl:attribute></xsl:if> <xsl:if test="@COLSPAN != null"><xsl:attribute name="COLSPAN"><xsl:value-of select="@COLSPAN" /></xsl:attribute></xsl:if> <xsl:if test="@ROWSPAN != null"><xsl:attribute name="ROWSPAN"><xsl:value-of select="@ROWSPAN" /></xsl:attribute></xsl:if> <NOBR><B><xsl:apply-templates /></B></NOBR> </TD> </xsl:for-each> </TR> </xsl:template> <xsl:template match="TABLEBODY"> <xsl:for-each select="TABLEROW"> <TR> <xsl:for-each select="TABLEENTRY"> <TD CLASS="text" VALIGN="top"> <xsl:if test="@ALIGN != null"><xsl:attribute name="ALIGN"><xsl:value-of select="@ALIGN" /></xsl:attribute></xsl:if> <xsl:if test="@VALIGN != null"><xsl:attribute name="VALIGN"><xsl:value-of select="@VALIGN" /></xsl:attribute></xsl:if> <xsl:if test="@WIDTH != null"><xsl:attribute name="WIDTH"><xsl:value-of select="@WIDTH" /></xsl:attribute></xsl:if> <xsl:if test="@COLSPAN != null"><xsl:attribute name="COLSPAN"><xsl:value-of select="@COLSPAN" /></xsl:attribute></xsl:if> <xsl:if test="@ROWSPAN != null"><xsl:attribute name="ROWSPAN"><xsl:value-of select="@ROWSPAN" /></xsl:attribute></xsl:if> <xsl:apply-templates /> </TD> </xsl:for-each> </TR> </xsl:for-each> </xsl:template> <!-- table: end --> <!-- table[border='0']: begin --> <xsl:template match="TABLE[@MODE='nobord']"> <TABLE BORDER="0" CELLPADDING="4" CELLSPACING="0" WIDTH="80%"> <xsl:apply-templates select="HEAD" /> <xsl:apply-templates select="BODY" /> </TABLE> </xsl:template> <xsl:template match="HEAD"> <xsl:for-each select="ROW"> <TR> <xsl:for-each select="CELL"> <TD CLASS="text" VALIGN="top"> <xsl:if test="@ALIGN != null"><xsl:attribute name="ALIGN"><xsl:value-of select="@ALIGN" /></xsl:attribute></xsl:if> <xsl:if test="@VALIGN != null"><xsl:attribute name="VALIGN"><xsl:value-of select="@VALIGN" /></xsl:attribute></xsl:if> <xsl:if test="@WIDTH != null"><xsl:attribute name="WIDTH"><xsl:value-of select="@WIDTH" /></xsl:attribute></xsl:if> <xsl:if test="@COLSPAN != null"><xsl:attribute name="COLSPAN"><xsl:value-of select="@COLSPAN" /></xsl:attribute></xsl:if> <xsl:if test="@ROWSPAN != null"><xsl:attribute name="ROWSPAN"><xsl:value-of select="@ROWSPAN" /></xsl:attribute></xsl:if> <NOBR><UL CLASS="text" TYPE="square"><LI CLASS="text"><xsl:apply-templates /></LI></UL></NOBR> </TD> </xsl:for-each> </TR> </xsl:for-each> </xsl:template> <xsl:template match="BODY"> <xsl:for-each select="ROW"> <TR> <xsl:for-each select="CELL"> <TD CLASS="text" VALIGN="top"> <xsl:if test="@ALIGN != null"><xsl:attribute name="ALIGN"><xsl:value-of select="@ALIGN" /></xsl:attribute></xsl:if> <xsl:if test="@VALIGN != null"><xsl:attribute name="VALIGN"><xsl:value-of select="@VALIGN" /></xsl:attribute></xsl:if> <xsl:if test="@WIDTH != null"><xsl:attribute name="WIDTH"><xsl:value-of select="@WIDTH" /></xsl:attribute></xsl:if> <xsl:if test="@COLSPAN != null"><xsl:attribute name="COLSPAN"><xsl:value-of select="@COLSPAN" /></xsl:attribute></xsl:if> <xsl:if test="@ROWSPAN != null"><xsl:attribute name="ROWSPAN"><xsl:value-of select="@ROWSPAN" /></xsl:attribute></xsl:if> <NOBR><UL CLASS="text" TYPE="square"><LI CLASS="text"><xsl:apply-templates /></LI></UL></NOBR> </TD> </xsl:for-each> </TR> </xsl:for-each> </xsl:template> <!-- table[border='0']:: end --> <!-- tableb: begin --> <xsl:template match="TABLEB"> <P CLASS="text"><B>TABLE <xsl:value-of select="@NUM" /></B> <xsl:apply-templates select="TABLETITLE" /></P> <BLOCKQUOTE CLASS="text"> <TABLE BORDER="0" CELLPADDING="4" CELLSPACING="0" WIDTH="90%"> <TR><TD COLSPAN="{@TABLEENTRYNUM}" WIDTH="100%"> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%"><TR><TD WIDTH="100%" HEIGHT="2" BGCOLOR="#000000"><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="1" HEIGHT="2" BORDER="0" /></TD></TR></TABLE> </TD></TR> <xsl:apply-templates select="TABLEBODY" /> <TR><TD COLSPAN="{@TABLEENTRYNUM}" WIDTH="100%"> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%"><TR><TD WIDTH="100%" HEIGHT="2" BGCOLOR="#000000"><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="1" HEIGHT="2" BORDER="0" /></TD></TR></TABLE> </TD></TR> </TABLE> </BLOCKQUOTE> </xsl:template> <!-- tableb: end --> <!-- sidebarblock: begin --> <xsl:template match="SIDEBARBLOCK"> <BLOCKQUOTE CLASS="text"> <TABLE CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR><TD> <TABLE CELLPADDING="1" CELLSPACING="0" BORDER="0" BGCOLOR="#000000"><TR><TD> <TABLE CELLPADDING="0" CELLSPACING="0" BORDER="0" BGCOLOR="#FFFFFF"> <TR><TD BGCOLOR="#BDBDBD"> <TABLE CELLPADDING="4" CELLSPACING="0" BORDER="0"> <TR><TD CLASS="text"><B><xsl:apply-templates select="SIDEBARTITLE" /></B></TD></TR> </TABLE> </TD></TR> <TR><TD> <TABLE CELLPADDING="4" CELLSPACING="0" BORDER="0"> <TR><TD><xsl:apply-templates select="SIDEBAR | CODESNIPPET | SIDEBARCODESNIPPET | SIDEBARLIST | LIST | SIDEBARRUNINBLOCK | SLUG" /></TD></TR> </TABLE> </TD></TR> </TABLE> </TD></TR></TABLE> </TD></TR></TABLE> </BLOCKQUOTE> </xsl:template> <xsl:template match="SIDEBARLIST"> <BLOCKQUOTE CLASS="text"><xsl:apply-templates /></BLOCKQUOTE> </xsl:template> <!-- sidebarblock: end --> <!-- audio: begin --> <!-- <xsl:template match="AUDIO"> <TD VALIGN="top"><A HREF="javascript:playSound('sound{REAL/@NAME}');" onmouseout="javascript:imageObjectChange('sound{REAL/@NAME}Icon','soundImage','Out'); top.status=''; return true;" onmouseover="javascript:imageObjectChange('sound{REAL/@NAME}Icon','soundImage','Over'); top.status='Play/Pause narration'; return true;" onmousedown="javascript:imageObjectChange('sound{REAL/@NAME}Icon','soundImage','Down');" onmouseup="javascript:imageObjectChange('sound{REAL/@NAME}Icon','soundImage','Over');"><IMG NAME="sound{REAL/@NAME}Icon" SRC="<?303 media/content/graphics/styles/soundout.gif?>" WIDTH="22" HEIGHT="22" BORDER="0" ALT="Play/Pause narration" /></A><SPAN STYLE="visibility:hidden;"><OBJECT ID="sound{REAL/@NAME}" CLASSID="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" WIDTH="0" HEIGHT="0"><PARAM NAME="SRC" VALUE="<?303 media?>/content/{REAL/@SRC}" /><PARAM NAME="AUTOSTART" VALUE="{REAL/@AUTOSTART}" /><EMBED TYPE="audio/x-pn-realaudio-plugin" SRC="<?303 media?>/content/{REAL/@SRC}" HEIGHT="0" WIDTH="0" NAME="sound{REAL/@NAME}" AUTOSTART="{REAL/@AUTOSTART}" SWLIVECONNECT="true" /></OBJECT></SPAN></TD> </xsl:template> --> <!-- audio: end --> <!-- exerciseblock: begin --> <xsl:template match="EXERCISEBLOCK[@MODE='text']"> <P><TABLE CELLPADDING="4" CELLSPACING="0" BORDER="0" BGCOLOR="#000000" WIDTH="100%"><TR> <xsl:choose> <xsl:when test="@TIP='lab'"> <TD CLASS="whitetext"> LAB <xsl:value-of select="@NUM" /></TD> </xsl:when> <xsl:otherwise> <TD CLASS="whitetext"> EXERCISE <xsl:value-of select="@NUM" /></TD> </xsl:otherwise> </xsl:choose> <!-- <TD CLASS="whitetext"> EXERCISE <xsl:value-of select="@NUM" /></TD> --> </TR></TABLE></P> <BLOCKQUOTE CLASS="text"> <P><TABLE CELLPADDING="0" CELLSPACING="0" BORDER="0"> <TR> <!-- <xsl:apply-templates select="AUDIO" /> <TD VALIGN="top"> </TD> --> <TD VALIGN="top"><H3 CLASS="exeTitle"><xsl:apply-templates select="EXERCISETITLE" /></H3></TD> </TR> </TABLE></P> <xsl:apply-templates select="EXERCISE | EXERCISETITLESUB | EXERCISELIST | EXERCISELISTPARA | PARA" /> </BLOCKQUOTE> <P><TABLE CELLPADDING="0" CELLSPACING="0" BORDER="0" BGCOLOR="#000000" WIDTH="100%"><TR> <TD><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="1" HEIGHT="1" BORDER="0" /></TD> </TR></TABLE></P> </xsl:template> <xsl:template match="EXERCISETITLESUB"> <H3 CLASS="exeSubTitle"><xsl:apply-templates /></H3> </xsl:template> <xsl:template match="EXERCISELIST[@MARK='number']"> <OL CLASS="text" TYPE="1"> <xsl:if test="@START != null"><xsl:attribute name="START"><xsl:value-of select="@START" /></xsl:attribute></xsl:if> <xsl:for-each select="EXERCISELISTNUMBERED"> <LI CLASS="text"><P><xsl:apply-templates /></P></LI> </xsl:for-each> </OL> </xsl:template> <xsl:template match="EXERCISELISTPARA"> <UL CLASS="none"> <LI CLASS="text"><xsl:apply-templates /></LI> </UL> </xsl:template> <!-- exerciseblock: begin --> <!-- exerciseblock with flash: begin --> <xsl:template match="EXERCISEBLOCK"> <xsl:variable name="num"><xsl:value-of select="@NUM"/></xsl:variable> <P><TABLE CELLPADDING="4" CELLSPACING="0" BORDER="0" BGCOLOR="#000000" WIDTH="100%"><TR> <TD CLASS="whitetext"> EXERCISE <xsl:value-of select="@NUM" /></TD> </TR></TABLE></P> <P><TABLE CELLPADDING="0" CELLSPACING="0" BORDER="0"> <TR> <!-- <xsl:apply-templates select="AUDIO" /> <TD VALIGN="top"> </TD> --> <TD VALIGN="top"><H3 CLASS="exeTitle"><xsl:apply-templates select="EXERCISETITLE" /></H3></TD> </TR> </TABLE></P> <xsl:apply-templates select="EXERCISE | EXERCISETITLESUB | EXERCISELIST | EXERCISELISTPARA | PARA | TABLE | LIST" /> <xsl:if test="$num!=null"><P><xsl:apply-templates select="/CHAPTER/EXECOL/EXE[@NUM=$num] | /APPENDIX/EXECOL/EXE[@NUM=$num]" /></P></xsl:if> </xsl:template> <xsl:template match="EXE"> <xsl:apply-templates select="FLASH" /> <xsl:apply-templates select="WARNING" /> </xsl:template> <!-- exerciseblock with flash: begin --> <!-- casestudy: begin --> <xsl:template match="SECTION[@CASESTUDY] | SECTION[@CASESTUDY]/SECTION/SECTION"> <TABLE BORDER="0" CELLPADDING="4" CELLSPACING="0" WIDTH="100%" BGCOLOR="#EFEFEF"> <TR> <TD WIDTH="40" BGCOLOR="#AFAFAF" VALIGN="top"><IMG SRC="<?303 media/content/graphics/0/casestady.gif?>" WIDTH="24" HEIGHT="200" BORDER="0" /></TD> <TD WIDTH="100%" VALIGN="top"> <xsl:apply-templates select="TITLE" /> <xsl:apply-templates select="SECTION | PARA | LIST | RUNINBLOCK | PARACONTINUED | SLUG | NOTE | CODESNIPPET | TABULARDATA | TESTDATA | TABLE | TABLEB | WARNING | TIP | SIDEBARBLOCK | MSEXAMOBJECTIVE" /> </TD> </TR> </TABLE> </xsl:template> <xsl:template match="SECTION[@CASESTUDY]/SECTION"> <TABLE BORDER="0" CELLPADDING="4" CELLSPACING="0" WIDTH="100%" BGCOLOR="#EFEFEF"> <TR> <TD WIDTH="40" BGCOLOR="#AFAFAF" VALIGN="top"><IMG SRC="<?303 media/content/graphics/0/casestady.gif?>" WIDTH="24" HEIGHT="200" BORDER="0" /></TD> <TD WIDTH="100%" VALIGN="top"> <xsl:if test="@POS != null"> <xsl:apply-templates select="../TITLE" /> <xsl:apply-templates select="../PARA | ../LIST | ../RUNINBLOCK | ../PARACONTINUED | ../SLUG | ../NOTE | ../CODESNIPPET | ../TABULARDATA | ../TESTDATA | ../TABLE | ../TABLEB | ../WARNING | ../TIP | ../SIDEBARBLOCK | ../MSEXAMOBJECTIVE" /> </xsl:if> <xsl:apply-templates select="TITLE" /> <xsl:apply-templates select="SECTION | PARA | LIST | RUNINBLOCK | PARACONTINUED | SLUG | NOTE | CODESNIPPET | TABULARDATA | TESTDATA | TABLE | TABLEB | WARNING | TIP | SIDEBARBLOCK | MSEXAMOBJECTIVE" /> </TD> </TR> </TABLE> </xsl:template> <!-- casestudy: end --> <!-- slug: begin --> <xsl:template match="SLUG"> <xsl:variable name="num"><xsl:value-of select="@NUM"/></xsl:variable> <xsl:variable name="nonum"><xsl:value-of select="@NONUM"/></xsl:variable> <xsl:if test="$num!=null"><xsl:apply-templates select="/CHAPTER/FIGCOL/FIG[@NUM=$num] | /APPENDIX/FIGCOL/FIG[@NUM=$num]" /></xsl:if> <xsl:if test="$nonum!=null"><xsl:apply-templates select="/CHAPTER/FIGCOL/FIG[@NONUM=$nonum] | /APPENDIX/FIGCOL/FIG[@NONUM=$nonum]" /></xsl:if> </xsl:template> <xsl:template match="LISTITEM/SLUG | EXERCISELISTNUMBERED/SLUG"> <xsl:variable name="num"><xsl:value-of select="@NUM"/></xsl:variable> <xsl:variable name="nonum"><xsl:value-of select="@NONUM"/></xsl:variable> <xsl:if test="$num!=null"><xsl:apply-templates select="/CHAPTER/FIGCOL/FIG[@NUM=$num] | /APPENDIX/FIGCOL/FIG[@NUM=$num]" mode="listitem" /></xsl:if> <xsl:if test="$nonum!=null"><xsl:apply-templates select="/CHAPTER/FIGCOL/FIG[@NONUM=$nonum] | /APPENDIX/FIGCOL/FIG[@NONUM=$nonum]" mode="listitem" /></xsl:if> </xsl:template> <xsl:template match="FIG"> <BLOCKQUOTE CLASS="text"> <B>Figure <xsl:value-of select="@NUM" /></B> <xsl:apply-templates select="P" /> <xsl:apply-templates select="ILL" /> </BLOCKQUOTE> </xsl:template> <xsl:template match="FIG[@NONUM]"> <center><xsl:apply-templates select="ILL" /></center> </xsl:template> <!-- <xsl:template match="FIG[@NONUM]/ILL"> <center><xsl:apply-templates /></center> </xsl:template> --> <xsl:template match="FIG" mode="listitem"> <P CLASS="text"> <B>Figure <xsl:value-of select="@NUM" /></B> <xsl:apply-templates select="P" /> <xsl:apply-templates select="ILL" /> </P> </xsl:template> <xsl:template match="FIG[@NONUM]" mode="listitem"> <P CLASS="text"> <xsl:apply-templates select="ILL" /> </P> </xsl:template> <xsl:template match="FIG/P"> <xsl:apply-templates /> </xsl:template> <xsl:template match="ILL"> <TABLE CELLPADDING="1" CELLSPACING="0" BORDER="0" BGCOLOR="#000000"><TR><TD><TABLE CELLPADDING="0" CELLSPACING="0" BORDER="0" BGCOLOR="#FFFFFF"><TR><!-- illustration --> <TD><xsl:apply-templates /></TD> </TR></TABLE></TD></TR></TABLE> </xsl:template> <xsl:template match="ILL[IMAGE]"> <BR/><xsl:apply-templates /><BR/> </xsl:template> <!-- slug: end --> <!-- animation: begin --> <xsl:template match="ANIMATION"> <xsl:variable name="id"><xsl:value-of select="@ID"/></xsl:variable> <xsl:if test="$id!=null"><xsl:apply-templates select="/CHAPTER/ANIMACOL/ANIMA[@ID=$id]" /></xsl:if> </xsl:template> <xsl:template match="ANIMA"> <TABLE CELLPADDING="0" CELLSPACING="0" BORDER="0" WIDTH="100%"> <TR> <TD ALIGN="left" VALIGN="top"><H3 CLASS="sec2Title"><xsl:apply-templates select="TITLE" /></H3></TD> <TD> </TD> <TD ALIGN="right" VALIGN="top"><A HREF="javascript:loadMovie('<?103?>&course=<?1008?>&file=media/content/{ILL/FLASH/@SRC}',{ILL/FLASH/@WIDTH},{ILL/FLASH/@HEIGHT});" onmouseout="javascript:imageObjectChange('zoomIcon','zoomImage','Out'); top.status=''; return true;" onmouseover="javascript:imageObjectChange('zoomIcon','zoomImage','Over'); top.status='Enlarge'; return true;" onmousedown="javascript:imageObjectChange('zoomIcon','zoomImage','Down');" onmouseup="javascript:imageObjectChange('zoomIcon','zoomImage','Over');"><IMG NAME="zoomIcon" SRC="<?303 media/content/graphics/styles/zoomout.gif?>" WIDTH="18" HEIGHT="18" BORDER="0" ALT="Enlarge" /></A></TD> </TR> </TABLE> <xsl:apply-templates select="ILL/FLASH" /> </xsl:template> <!-- animation: end --> <!-- flash: begin --> <xsl:template match="FLASH | flash"> <OBJECT CLASSID="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" ID="FLASH" CODEBASE="http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0" WIDTH="{@WIDTH}" HEIGHT="{@HEIGHT}" BORDER="0"> <PARAM NAME="MOVIE" VALUE="<?303 media?>/content/{@SRC}" /> <PARAM NAME="LOOP" VALUE="{@LOOP}" /> <PARAM NAME="MENU" VALUE="{@MENU}" /> <PARAM NAME="QUALITY" VALUE="{@QUALITY}" /> <PARAM NAME="BGCOLOR" VALUE="{@BGCOLOR}" /> <EMBED NAME="FLASH" WIDTH="{@WIDTH}" HEIGHT="{@HEIGHT}" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" SRC="<?303 media?>/content/{@SRC}" BORDER="0" LOOP="{@LOOP}" MENU="{@MENU}" QUALITY="{@QUALITY}" BGCOLOR="{@BGCOLOR}" SWLIVECONNECT="true" /> </OBJECT> </xsl:template> <!-- flash: end --> <!-- note: begin --> <xsl:template match="NOTE"> <P><TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" BORDER="0" BGCOLOR="#CFCFCF"> <TR><TD WIDTH="100%" CLASS="text" VALIGN="top"> <TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" HEIGHT="2" BORDER="0" BGCOLOR="#0000FF"><TR WIDTH="100%" HEIGHT="2" BGCOLOR="#0000FF"><TD WIDTH="100%" HEIGHT="2" BGCOLOR="#0000FF"><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="1" HEIGHT="2" BORDER="0" /></TD></TR></TABLE> <TABLE CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR> <TD VALIGN="top"><IMG SRC="<?303 media/content/graphics/styles/note.gif?>" WIDTH="49" HEIGHT="38" BORDER="0" /></TD> <TD> <TABLE CELLPADDING="13" CELLSPACING="0" BORDER="0"><TR><TD CLASS="text"> <xsl:apply-templates /> </TD></TR></TABLE> </TD> </TR></TABLE> </TD></TR></TABLE></P> </xsl:template> <!-- note: end --> <!-- tip: begin --> <xsl:template match="TIP"> <P><TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" BORDER="0" BGCOLOR="#CFCFCF"> <TR><TD WIDTH="100%" CLASS="text" VALIGN="top"> <TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" HEIGHT="2" BORDER="0" BGCOLOR="#000000"><TR WIDTH="100%" HEIGHT="2" BGCOLOR="#000000"><TD WIDTH="100%" HEIGHT="2" BGCOLOR="#000000"><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="1" HEIGHT="2" BORDER="0" /></TD></TR></TABLE> <TABLE CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR> <TD VALIGN="top"><IMG SRC="<?303 media/content/graphics/styles/tip.gif?>" WIDTH="49" HEIGHT="38" BORDER="0" /></TD> <TD> <TABLE CELLPADDING="13" CELLSPACING="0" BORDER="0"><TR><TD CLASS="text"> <xsl:apply-templates /> </TD></TR></TABLE> </TD> </TR></TABLE> </TD></TR></TABLE></P> </xsl:template> <!-- tip: end --> <!-- warning: begin --> <xsl:template match="WARNING"> <P><TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" BORDER="0" BGCOLOR="#CFCFCF"> <TR><TD WIDTH="100%" CLASS="text" VALIGN="top"> <TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" HEIGHT="2" BORDER="0" BGCOLOR="#BF0000"><TR WIDTH="100%" HEIGHT="2" BGCOLOR="#BF0000"><TD WIDTH="100%" HEIGHT="2" BGCOLOR="#BF0000"><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="1" HEIGHT="2" BORDER="0" /></TD></TR></TABLE> <TABLE CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR> <TD VALIGN="top"><IMG SRC="<?303 media/content/graphics/styles/warning.gif?>" WIDTH="58" HEIGHT="38" BORDER="0" /></TD> <TD> <TABLE CELLPADDING="13" CELLSPACING="0" BORDER="0"><TR><TD CLASS="text"> <xsl:apply-templates /> </TD></TR></TABLE> </TD> </TR></TABLE> </TD></TR></TABLE></P> </xsl:template> <!-- warning: end --> <!-- codesnippet: begin --> <xsl:template match="CODESNIPPET"> <BLOCKQUOTE><TABLE CELLPADDING="6" CELLSPACING="0" BORDER="0" WIDTH="580" BGCOLOR="#333333"><TR> <TD> <PRE> <xsl:apply-templates /> </PRE> </TD> </TR></TABLE></BLOCKQUOTE> </xsl:template> <xsl:template match="SIDEBARCODESNIPPET"> <BLOCKQUOTE> <PRE CLASS="pre_black"> <xsl:apply-templates /> </PRE> </BLOCKQUOTE> </xsl:template> <xsl:template match="LISTITEM/CODESNIPPET"> <P><TABLE CELLPADDING="6" CELLSPACING="0" BORDER="0" WIDTH="580" BGCOLOR="#333333"><TR> <TD> <PRE> <xsl:apply-templates /> </PRE> </TD> </TR></TABLE></P> </xsl:template> <xsl:template match="CODELINE"> <xsl:apply-templates /> </xsl:template> <!-- codesnippet: end --> <!-- ANSWERBLOCK/ANSWER: begin --> <xsl:template match="ANSWERBLOCK/ANSWER"> <P CLASS="text"> <xsl:apply-templates /> <xsl:apply-templates select="../../EXPLANATION" /> </P> </xsl:template> <!-- ANSWERBLOCK/ANSWER: end --> <!-- paragraph: begin --> <xsl:template match="P | PARA |PARACONTINUED | QUESTIONBLOCK/QUESTION | SIDEBAR | EXERCISE"> <xsl:variable name="br"><xsl:value-of select="@BR" /></xsl:variable> <P CLASS="text"> <xsl:if test="@ALIGN != null"><xsl:attribute name="ALIGN"><xsl:value-of select="@ALIGN" /></xsl:attribute></xsl:if> <xsl:if test="@align != null"><xsl:attribute name="ALIGN"><xsl:value-of select="@align" /></xsl:attribute></xsl:if> <xsl:if test="@REF != null"> <A HREF="javascript:gotoPage('{@REF}');"><xsl:apply-templates /></A> </xsl:if> <xsl:if test="@REF = null"> <xsl:apply-templates /> </xsl:if> <xsl:if test="$br!=null"><BR CLEAR="{$br}" /></xsl:if> </P> </xsl:template> <!-- paragraph: end --> <!-- times italic font --> <xsl:template match="TI | ti"> <SPAN CLASS="timesItalic"><xsl:apply-templates /></SPAN> </xsl:template> <xsl:template match="HLIGHT | hlight"> <SPAN STYLE="color:{@COLOR};"><xsl:apply-templates /></SPAN> </xsl:template> <xsl:template match="SYMBOL | symbol"> <SPAN CLASS="symbol"><xsl:apply-templates /></SPAN> </xsl:template> <xsl:template match="CHAPTER/PARA/DROPCAP | APPENDIX/PARA/DROPCAP | INTRODUCTION/PARA/DROPCAP"> <SPAN STYLE="font-size:300%; font-weight:600;"><xsl:apply-templates /></SPAN> </xsl:template> <xsl:template match="CHAPTER/SECTION/PARA/DROPCAP | APPENDIX/SECTION/PARA/DROPCAP | INTRODUCTION/SECTION/PARA/DROPCAP | INTRODUCTION/ACKNOWLEDGMENTS/PARA/DROPCAP"> <SPAN STYLE="font-size:200%; font-weight:600;"><xsl:apply-templates /></SPAN> </xsl:template> <xsl:template match="BIG | big"> <SPAN CLASS="big"><xsl:apply-templates /></SPAN> </xsl:template> <xsl:template match="SMALL | small"> <SPAN CLASS="small"><xsl:apply-templates /></SPAN> </xsl:template> <xsl:template match="COMMENT"> <BLOCKQUOTE> <SPAN STYLE="COLOR:#000000; FONT-FAMILY:ARIAL,SANS-SERIF; FONT-WEIGHT:400; FONT-SIZE:10PX;"><xsl:apply-templates /></SPAN> </BLOCKQUOTE> </xsl:template> <xsl:template match="LEFT | left"> <LEFT><xsl:apply-templates /></LEFT> </xsl:template> <xsl:template match="CENTER | center"> <CENTER><xsl:apply-templates /></CENTER> </xsl:template> <xsl:template match="RIGHT | right"> <RIGHT><xsl:apply-templates /></RIGHT> </xsl:template> <xsl:template match="INLINECODE | INLINEURL"> <xsl:if test="@HREF != null"> <A HREF="{@HREF}"> <xsl:if test="@SHOW != null"> <xsl:if test="@SHOW = 'new'"> <xsl:attribute name="TARGET">_blank</xsl:attribute> </xsl:if> </xsl:if> <SPAN CLASS="courier"><xsl:apply-templates /></SPAN> </A> </xsl:if> <xsl:if test="@HREF = null"> <SPAN CLASS="courier"><xsl:apply-templates /> </SPAN></xsl:if> </xsl:template> <xsl:template match="USERINPUT"> <xsl:if test="@HREF != null"> <A HREF="{@HREF}"> <xsl:if test="@SHOW != null"> <xsl:if test="@SHOW = 'new'"> <xsl:attribute name="TARGET">_blank</xsl:attribute> </xsl:if> </xsl:if> <SPAN CLASS="courier"><xsl:apply-templates /></SPAN> </A> </xsl:if> <xsl:if test="@HREF = null"> <SPAN CLASS="courier"><B><xsl:apply-templates /></B></SPAN></xsl:if> </xsl:template> <xsl:template match="INLINECODEVARIABLE"> <SPAN CLASS="courier"><I><xsl:apply-templates /></I></SPAN> </xsl:template> <xsl:template match="INLINECODEUSERINPUTVARIABLE"> <SPAN CLASS="courier"><I><B><xsl:apply-templates /></B></I></SPAN> </xsl:template> <xsl:template match="SUP | sup | SUPERSCRIPT"> <SUP><xsl:apply-templates /></SUP> </xsl:template> <xsl:template match="INLINECODEUSERINPUT"> <SPAN CLASS="courier"><B><xsl:apply-templates /></B></SPAN> </xsl:template> <xsl:template match="CODELINE/INLINECODEUSERINPUT"> <B><xsl:apply-templates /></B> </xsl:template> <xsl:template match="SUB | sub"> <SUB><xsl:apply-templates /></SUB> </xsl:template> <xsl:template match="B | b | EMPHASIS[@FORMAT='bold']"> <B><xsl:apply-templates /></B> </xsl:template> <xsl:template match="I | i | KEYTERM | EMPHASIS | EMPHASIS[@FORMAT='italic'] | VARIABLE"> <I> <xsl:if test="@REF != null"> <A HREF="javascript:gotoPage('{@REF}');"><xsl:apply-templates /></A> </xsl:if> <xsl:if test="@REF = null"> <xsl:apply-templates /> </xsl:if> </I> </xsl:template> <xsl:template match="EMPHASIS[@FORMAT='bolditalic'] | USERINPUTVARIABLE"> <B><I><xsl:apply-templates /></I></B> </xsl:template> <xsl:template match="U | u"> <U><xsl:apply-templates /></U> </xsl:template> <xsl:template match="PRE | pre"> <PRE><xsl:apply-templates /></PRE> </xsl:template> <xsl:template match="BR | br"> <BR> <xsl:if test="@CLEAR != null"><xsl:attribute name="CLEAR"><xsl:value-of select="@CLEAR" /></xsl:attribute></xsl:if> <xsl:if test="@clear != null"><xsl:attribute name="CLEAR"><xsl:value-of select="@clear" /></xsl:attribute></xsl:if> </BR> </xsl:template> <xsl:template match="NOBR | nobr"> <NOBR> <xsl:if test="@REF != null"> <xsl:choose> <xsl:when test="@REF='G'"> <A HREF="<?11?>?sid=<?1003?>&msg=3&file=media/search/glossary_f.htm" target="_parent"><xsl:apply-templates /></A> </xsl:when> <xsl:otherwise> <A HREF="javascript:gotoPage('{@REF}');"><xsl:apply-templates /></A> </xsl:otherwise> </xsl:choose> </xsl:if> <xsl:if test="@REF = null"><xsl:apply-templates /></xsl:if> </NOBR> </xsl:template> <xsl:template match="BORDER"> <div CLASS="bordB" STYLE="width:{@WIDTH};"></div> </xsl:template> <xsl:template match="BORDERB"><!-- border bold --> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="{@WIDTH}"><TR><TD WIDTH="100%" HEIGHT="2" BGCOLOR="#000000"><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="1" HEIGHT="2" BORDER="0" /></TD></TR></TABLE> </xsl:template> <xsl:template match="BORDERT"><!-- border think --> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="{@WIDTH}"><TR><TD WIDTH="100%" HEIGHT="1" BGCOLOR="#000000"><IMG SRC="<?303 media/content/graphics/styles/pixel.gif?>" WIDTH="1" HEIGHT="1" BORDER="0" /></TD></TR></TABLE> </xsl:template> </xsl:stylesheet>