68. Araxis Merge File Comparison Report

Produced by Araxis Merge on Thu Oct 16 22:30:05 2008 UTC. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a reasonably standards compliant browser such as the latest version of Firefox or Internet Explorer. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

68.1 Files compared

# Location File Last Modified
1 Thu Oct 16 22:30:05 2008 UTC
2 C:\Documents and Settings\lauren\Desktop\ww-version-snapshots\ww-version-snapshots\2008.3\WebWorks\ePublisher Pro\Formats\Wiki - MediaWiki\Transforms content.xsl Mon Oct 13 05:52:00 2008 UTC

68.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 0 0
Changed 0 0
Inserted 1 2489
Removed 0 0

68.3 Comparison options

Whitespace All differences in whitespace within lines are ignored
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

68.4 Active regular expressions

No regular expressions were active.

68.5 Comparison detail

        1   <?xml vers ion="1.0"  encoding=" UTF-8"?>
        2   <xsl:style sheet vers ion="1.0"  xmlns="htt p://www.w3 .org/1999/ xhtml"
        3                                    xmlns:html ="http://w ww.w3.org/ 1999/xhtml "
        4                                    xmlns:xsl= "http://ww w.w3.org/1 999/XSL/Tr ansform"
        5                                    xmlns:msxs l="urn:sch emas-micro soft-com:x slt"
        6                                    xmlns:wwmo de="urn:We bWorks-Eng ine-Mode"
        7                                    xmlns:wwli nks="urn:W ebWorks-En gine-Links -Schema"
        8                                    xmlns:wwfi les="urn:W ebWorks-En gine-Files -Schema"
        9                                    xmlns:wwdo c="urn:Web Works-Docu ment-Schem a"
        10                                    xmlns:wwsp lits="urn: WebWorks-E ngine-Spli ts-Schema"
        11                                    xmlns:wwto c="urn:Web Works-Engi ne-TOC-Sch ema"
        12                                    xmlns:wwbe haviors="u rn:WebWork s-Behavior s-Schema"
        13                                    xmlns:wwno tes="urn:W ebWorks-Fo otnote-Sch ema"
        14                                    xmlns:wwpr oject="urn :WebWorks- Publish-Pr oject"
        15                                    xmlns:wwpa ge="urn:We bWorks-Pag e-Template -Schema"
        16                                    xmlns:wwlo cale="urn: WebWorks-L ocale-Sche ma"
        17                                    xmlns:wwpr ogress="ur n:WebWorks -XSLT-Exte nsion-Prog ress"
        18                                    xmlns:wwlo g="urn:Web Works-XSLT -Extension -Log"
        19                                    xmlns:wwfi lesystem=" urn:WebWor ks-XSLT-Ex tension-Fi leSystem"
        20                                    xmlns:wwur i="urn:Web Works-XSLT -Extension -URI"
        21                                    xmlns:wwst ring="urn: WebWorks-X SLT-Extens ion-String Utilities"
        22                                    xmlns:wwun its="urn:W ebWorks-XS LT-Extensi on-Units"
        23                                    xmlns:wwfi lesext="ur n:WebWorks -XSLT-Exte nsion-File s"
        24                                    xmlns:wwpr ojext="urn :WebWorks- XSLT-Exten sion-Proje ct"
        25                                    xmlns:wwim aging="urn :WebWorks- XSLT-Exten sion-Imagi ng"
        26                                    xmlns:wwex sldoc="urn :WebWorks- XSLT-Exten sion-Docum ent"
        27                                    exclude-re sult-prefi xes="xsl m sxsl wwmod e wwlinks  wwfiles ww doc wwspli ts wwtoc w wbehaviors  wwnotes w wproject w wpage wwlo cale wwpro gress wwlo g wwfilesy stem wwuri  wwstring  wwunits ww filesext w wprojext w wimaging w wexsldoc"
        28   >
        29    <xsl:key  name="wwsp lits-files -by-groupi d-type" ma tch="wwspl its:File"  use="conca t(@groupID , ':', @ty pe)" />
        30    <xsl:key  name="wwsp lits-frame s-by-id" m atch="wwsp lits:Frame " use="@id " />
        31    <xsl:key  name="wwto c-entry-by -id" match ="wwtoc:En try" use=" @id" />
        32    <xsl:key  name="wwbe haviors-pa ragraphs-b y-id" matc h="wwbehav iors:Parag raph" use= "@id" />
        33    <xsl:key  name="wwbe haviors-pa ragraphs-b y-relatedt opic" matc h="wwbehav iors:Parag raph" use= "@relatedt opic" />
        34    <xsl:key  name="wwbe haviors-fr ames-by-id " match="w wbehaviors :Frame" us e="@id" />
        35    <xsl:key  name="wwbe haviors-ta bles-by-id " match="w wbehaviors :Table" us e="@id" />
        36    <xsl:key  name="wwdo c-paragrap hs-by-id"  match="wwd oc:Paragra ph" use="@ id" />
        37    <xsl:key  name="wwno tes-notes- by-id" mat ch="wwnote s:Note" us e="@id" />
        38    <xsl:key  name="wwfi les-files- by-path" m atch="wwfi les:File"  use="@path " />
        39    <xsl:key  name="wwpr oject-prop erty-by-na me" match= "wwproject :Property"  use="@Nam e"/>
        40  
        41  
        42    <xsl:temp late name= "Breadcrum bs">
        43     <xsl:par am name="P aramPageRu le" />
        44     <xsl:par am name="P aramSplit"  />
        45     <xsl:par am name="P aramBreadc rumbTOCEnt ry" />
        46  
        47     <xsl:for -each sele ct="$Param Breadcrumb TOCEntry/. ./ancestor -or-self:: wwtoc:Entr y">
        48      <xsl:va riable nam e="VarTOCE ntry" sele ct="." />
        49  
        50      <!-- Em it entry - ->
        51      <!--             - ->
        52      <xsl:ch oose>
        53       <xsl:w hen test=" string-len gth($VarTO CEntry/@pa th) &gt; 0 ">
        54        <!--  Entry with  link -->
        55        <!--                   -->
        56        <xsl: variable n ame="VarRe lativePath " select=" wwuri:GetR elativeTo( $VarTOCEnt ry/@path,  $ParamSpli t/@path)"  />
        57  
        58        <html :span>
        59         <xsl :text>[[</ xsl:text>
        60         <xsl :call-temp late name= "MediaWiki -ProjectRo otedLink">
        61          <xs l:with-par am name="P aramLinkPa th" select ="$VarTOCE ntry/@path " />
        62          <xs l:with-par am name="P aramTarget OutputDire ctoryPath"  select="$ ParamSplit /@target-o utput-dire ctory-path " />
        63         </xs l:call-tem plate>
        64         <xsl :text>|</x sl:text>
        65         <xsl :call-temp late name= "Breadcrum bEntry">
        66          <xs l:with-par am name="P aramTOCEnt ry" select ="$VarTOCE ntry" />
        67         </xs l:call-tem plate>
        68         <xsl :text>]]</ xsl:text>
        69        </htm l:span>
        70  
        71       </xsl: when>
        72  
        73       <xsl:o therwise>
        74        <!--  Entry with out link - ->
        75        <!--                      - ->
        76        <xsl: call-templ ate name=" Breadcrumb Entry">
        77         <xsl :with-para m name="Pa ramTOCEntr y" select= "$VarTOCEn try" />
        78        </xsl :call-temp late>
        79       </xsl: otherwise>
        80      </xsl:c hoose>
        81  
        82      <!-- Em it separat or -->
        83      <!--                  -->
        84      <xsl:va riable nam e="VarBrea dcrumbsSep arator" se lect="$Par amPageRule /wwproject :Propertie s/wwprojec t:Property [@Name = ' breadcrumb s-separato r']/@Value " />
        85      <xsl:ch oose>
        86       <xsl:w hen test=" string-len gth($VarBr eadcrumbsS eparator)  &gt; 0">
        87        <xsl: value-of s elect="$Va rBreadcrum bsSeparato r" />
        88       </xsl: when>
        89  
        90       <xsl:o therwise>
        91        <xsl: text> : </ xsl:text>
        92       </xsl: otherwise>
        93      </xsl:c hoose>
        94     </xsl:fo r-each>
        95  
        96     <!-- Emi t entry -- >
        97     <!--             -- >
        98     <xsl:cal l-template  name="Bre adcrumbEnt ry">
        99      <xsl:wi th-param n ame="Param TOCEntry"  select="$P aramBreadc rumbTOCEnt ry" />
        100     </xsl:ca ll-templat e>
        101    </xsl:tem plate>
        102  
        103  
        104    <xsl:temp late name= "Breadcrum bEntry">
        105     <xsl:par am name="P aramTOCEnt ry" />
        106  
        107     <xsl:for -each sele ct="$Param TOCEntry/w wdoc:Parag raph/wwdoc :Number/ww doc:Text |  $ParamTOC Entry/wwdo c:Paragrap h/wwdoc:Te xtRun/wwdo c:Text">
        108      <xsl:va riable nam e="VarText " select=" ." />
        109  
        110      <xsl:va lue-of sel ect="$VarT ext/@value " />
        111     </xsl:fo r-each>
        112    </xsl:tem plate>
        113  
        114  
        115    <xsl:temp late name= "Content-C ontent">
        116     <xsl:par am name="P aramConten t" />
        117     <xsl:par am name="P aramSplits " />
        118     <xsl:par am name="P aramCargo"  />
        119     <xsl:par am name="P aramLinks"  />
        120     <xsl:par am name="P aramTOCDat a" />
        121     <xsl:par am name="P aramSplit"  />
        122  
        123     <!-- Con tent -->
        124     <!--          -->
        125     <xsl:app ly-templat es select= "$ParamCon tent" mode ="wwmode:c ontent">
        126      <xsl:wi th-param n ame="Param Splits" se lect="$Par amSplits"  />
        127      <xsl:wi th-param n ame="Param Cargo" sel ect="$Para mCargo" />
        128      <xsl:wi th-param n ame="Param Links" sel ect="$Para mLinks" />
        129      <xsl:wi th-param n ame="Param TOCData" s elect="$Pa ramTOCData " />
        130      <xsl:wi th-param n ame="Param Split" sel ect="$Para mSplit" />
        131     </xsl:ap ply-templa tes>
        132  
        133     <!-- Rel ated Topic s -->
        134     <!--                  -->
        135     <xsl:cal l-template  name="Rel atedTopics ">
        136      <xsl:wi th-param n ame="Param Content" s elect="$Pa ramContent " />
        137      <xsl:wi th-param n ame="Param Splits" se lect="$Par amSplits"  />
        138      <xsl:wi th-param n ame="Param Cargo" sel ect="$Para mCargo" />
        139      <xsl:wi th-param n ame="Param Links" sel ect="$Para mLinks" />
        140      <xsl:wi th-param n ame="Param Split" sel ect="$Para mSplit" />
        141     </xsl:ca ll-templat e>
        142    </xsl:tem plate>
        143  
        144  
        145    <xsl:temp late name= "RelatedTo pics">
        146     <xsl:par am name="P aramConten t" />
        147     <xsl:par am name="P aramSplits " />
        148     <xsl:par am name="P aramCargo"  />
        149     <xsl:par am name="P aramLinks"  />
        150     <xsl:par am name="P aramSplit"  />
        151  
        152     <xsl:var iable name ="VarRelat edTopicPar agraphsAsX ML">
        153      <xsl:ca ll-templat e name="Re latedTopic Paragraphs ">
        154       <xsl:w ith-param  name="Para mContent"  select="$P aramConten t" />
        155       <xsl:w ith-param  name="Para mCargo" se lect="$Par amCargo" / >
        156       <xsl:w ith-param  name="Para mSplit" se lect="$Par amSplit" / >
        157      </xsl:c all-templa te>
        158     </xsl:va riable>
        159     <xsl:var iable name ="VarRelat edTopicPar agraphs" s elect="msx sl:node-se t($VarRela tedTopicPa ragraphsAs XML)/wwdoc :Paragraph " />
        160  
        161     <xsl:if  test="coun t($VarRela tedTopicPa ragraphs)  &gt; 0">
        162      <html:h r />
        163      <html:d iv>
        164       <html: div style= "font-weig ht: bold;" >
        165        <xsl: value-of s elect="$Gl obalLocale /wwlocale: Locale/wwl ocale:Stri ngs/wwloca le:String[ @name = 'R elatedTopi cs']/@valu e" />
        166       </html :div>
        167  
        168       <xsl:f or-each se lect="$Var RelatedTop icParagrap hs">
        169        <xsl: variable n ame="VarRe latedTopic Paragraph"  select=". " />
        170  
        171        <xsl: variable n ame="VarOv errideRule " select=" wwprojext: GetOverrid eRule('Par agraph', $ VarRelated TopicParag raph/@styl ename, $Pa ramSplit/@ documentID , $VarRela tedTopicPa ragraph/@i d)" />
        172        <xsl: variable n ame="VarPa ragraphBeh avior" sel ect="$Para mCargo/wwb ehaviors:B ehaviors[1 ]" />
        173  
        174        <html :div style ="margin-l eft: 12pt; ">
        175         <xsl :call-temp late name= "Paragraph -Normal">
        176          <xs l:with-par am name="P aramSplits " select=" $ParamSpli ts" />
        177          <xs l:with-par am name="P aramCargo"  select="$ ParamCargo " />
        178          <xs l:with-par am name="P aramLinks"  select="$ ParamLinks " />
        179          <xs l:with-par am name="P aramSplit"  select="$ ParamSplit " />
        180          <xs l:with-par am name="P aramParagr aph" selec t="$VarRel atedTopicP aragraph"  />
        181          <xs l:with-par am name="P aramStyleN ame" selec t="$VarRel atedTopicP aragraph/@ stylename"  />
        182          <xs l:with-par am name="P aramOverri deRule" se lect="$Var OverrideRu le" />
        183          <xs l:with-par am name="P aramParagr aphBehavio r" select= "$VarParag raphBehavi or" />
        184         </xs l:call-tem plate>
        185        </htm l:div>
        186       </xsl: for-each>
        187      </html: div>
        188     </xsl:if >
        189    </xsl:tem plate>
        190  
        191  
        192    <xsl:temp late name= "RelatedTo picParagra phs">
        193     <xsl:par am name="P aramConten t" />
        194     <xsl:par am name="P aramCargo"  />
        195     <xsl:par am name="P aramSplit"  />
        196  
        197     <xsl:for -each sele ct="$Param Cargo/wwbe haviors:Be haviors[1] ">
        198      <xsl:va riable nam e="VarRela tedTopicBe haviorPara graphs" se lect="key( 'wwbehavio rs-paragra phs-by-rel atedtopic' , 'define' ) | key('w wbehaviors -paragraph s-by-relat edtopic',  'define-no -output')"  />
        199  
        200      <xsl:fo r-each sel ect="$VarR elatedTopi cBehaviorP aragraphs[ (@document position & gt;= $Para mSplit/@do cumentstar tposition)  and (@doc umentposit ion &lt;=  $ParamSpli t/@documen tendpositi on)]">
        201       <xsl:v ariable na me="VarBeh aviorParag raph" sele ct="." />
        202  
        203       <xsl:f or-each se lect="$Par amContent[ 1]">
        204        <xsl: for-each s elect="key ('wwdoc-pa ragraphs-b y-id', $Va rBehaviorP aragraph/@ id)[1]">
        205         <xsl :variable  name="VarP aragraph"  select="."  />
        206  
        207         <!--  Paragraph  has link?  -->
        208         <!--                        -->
        209         <xsl :variable  name="VarC hildLinks"  select="$ VarParagra ph//wwdoc: Link[count ($VarParag raph | anc estor::wwd oc:Paragra ph[1]) = 1 ]" />
        210         <xsl :variable  name="VarC hildLinksC ount" sele ct="count( $VarChildL inks)" />
        211         <xsl :if test=" $VarChildL inksCount  &gt; 0">
        212          <!- - Emit par agraph -->
        213          <!- -                 -->
        214          <ww doc:Paragr aph>
        215           <x sl:copy-of  select="$ VarParagra ph/@*" />
        216  
        217           <! -- Insure  link is de fined -->
        218           <! --                          -->
        219           <x sl:if test ="count($V arParagrap h/wwdoc:Li nk) = 0">
        220            < xsl:copy-o f select=" $VarChildL inks[1]" / >
        221           </ xsl:if>
        222  
        223           <x sl:copy-of  select="$ VarParagra ph/*" />
        224          </w wdoc:Parag raph>
        225         </xs l:if>
        226        </xsl :for-each>
        227       </xsl: for-each>
        228      </xsl:f or-each>
        229     </xsl:fo r-each>
        230    </xsl:tem plate>
        231  
        232  
        233    <xsl:temp late name= "Content-N otes">
        234     <xsl:par am name="P aramNotes"  />
        235     <xsl:par am name="P aramSplits " />
        236     <xsl:par am name="P aramCargo"  />
        237     <xsl:par am name="P aramLinks"  />
        238     <xsl:par am name="P aramTOCDat a" />
        239     <xsl:par am name="P aramSplit"  />
        240  
        241     <xsl:if  test="coun t($ParamNo tes[1]) =  1">
        242      <html:h r />
        243      <xsl:fo r-each sel ect="$Para mNotes">
        244       <xsl:v ariable na me="VarNot e" select= "." />
        245  
        246       <xsl:v ariable na me="VarNot eNumber" s elect="$Pa ramCargo/w wnotes:Not eNumbering /wwnotes:N ote[@id =  $VarNote/@ id]/@numbe r" />
        247  
        248       <xsl:i f test="st ring-lengt h($VarNote Number) &g t; 0">
        249        <html :div style ="display:  inline; f ont-size:  smaller; p adding-rig ht: 10px;" >
        250         <!--  Force on  one line - ->
        251         <!--                     - ->
        252         <wwe xsldoc:NoB reak />
        253  
        254         <htm l:span id= "ww{$VarNo te/@id}">
        255          <xs l:text>[[< /xsl:text>
        256          <xs l:text>#ww footnote_i nline_</xs l:text>
        257          <xs l:value-of  select="$ VarNote/@i d" />
        258  
        259          <xs l:text>|</ xsl:text>
        260  
        261           <x sl:value-o f select=" $VarNoteNu mber"/>
        262          <xs l:text>]]< /xsl:text>
        263         </ht ml:span>
        264  
        265         <!--  Force on  one line - ->
        266         <!--                     - ->
        267         <wwe xsldoc:NoB reak />
        268        </htm l:div>
        269  
        270        <xsl: apply-temp lates sele ct="$VarNo te/*" mode ="wwmode:c ontent">
        271         <xsl :with-para m name="Pa ramSplits"  select="$ ParamSplit s" />
        272         <xsl :with-para m name="Pa ramCargo"  select="$P aramCargo"  />
        273         <xsl :with-para m name="Pa ramLinks"  select="$P aramLinks"  />
        274         <xsl :with-para m name="Pa ramTOCData " select=" $ParamTOCD ata" />
        275         <xsl :with-para m name="Pa ramSplit"  select="$P aramSplit"  />
        276        </xsl :apply-tem plates>
        277       </xsl: if>
        278      </xsl:f or-each>
        279     </xsl:if >
        280    </xsl:tem plate>
        281  
        282  
        283    <xsl:temp late name= "Content-B ullet">
        284     <xsl:par am name="P aramSplits " />
        285     <xsl:par am name="P aramSplit"  />
        286     <xsl:par am name="P aramParagr aph" />
        287     <xsl:par am name="P aramCharac ter" />
        288     <xsl:par am name="P aramImage"  />
        289     <xsl:par am name="P aramSepara tor" />
        290     <xsl:par am name="P aramStyle"  />
        291  
        292     <xsl:cho ose>
        293      <xsl:wh en test="s tring-leng th($ParamS tyle) &gt;  0">
        294  
        295       <!-- G et rule -- >
        296       <!--           -- >
        297       <xsl:v ariable na me="VarRul e" select= "wwprojext :GetRule(' Character' , $ParamSt yle)" />
        298  
        299       <!-- R esolve pro ject prope rties -->
        300       <!--                               -->
        301       <xsl:v ariable na me="VarRes olvedConte xtProperti esAsXML">
        302        <xsl: call-templ ate name=" Properties -ResolveCo ntextRule" >
        303         <xsl :with-para m name="Pa ramDocumen tContext"  select="$P aramParagr aph" />
        304         <xsl :with-para m name="Pa ramPropert ies" selec t="$VarRul e/wwprojec t:Properti es/wwproje ct:Propert y" />
        305         <xsl :with-para m name="Pa ramStyleNa me" select ="$ParamSt yle" />
        306         <xsl :with-para m name="Pa ramStyleTy pe" select ="'Charact er'" />
        307         <xsl :with-para m name="Pa ramContext Style" sel ect="$Para mParagraph /wwdoc:Num ber[1]/wwd oc:Style"  />
        308        </xsl :call-temp late>
        309       </xsl: variable>
        310       <xsl:v ariable na me="VarRes olvedConte xtProperti es" select ="msxsl:no de-set($Va rResolvedC ontextProp ertiesAsXM L)/wwproje ct:Propert y" />
        311  
        312       <!-- C SS propert ies -->
        313       <!--                  -->
        314       <xsl:v ariable na me="VarCSS Properties AsXML">
        315        <xsl: call-templ ate name=" CSS-Transl ateProject Properties ">
        316         <xsl :with-para m name="Pa ramPropert ies" selec t="$VarRes olvedConte xtProperti es" />
        317         <xsl :with-para m name="Pa ramFromAbs oluteURI"  select="$P aramSplit/ @path" />
        318         <xsl :with-para m name="Pa ramSplits"  select="$ ParamSplit s" />
        319        </xsl :call-temp late>
        320       </xsl: variable>
        321       <xsl:v ariable na me="VarCSS Properties " select=" msxsl:node -set($VarC SSProperti esAsXML)/w wproject:P roperty" / >
        322  
        323       <!-- S tyle attri bute -->
        324       <!--                   -->
        325       <xsl:v ariable na me="VarSty leAttribut e">
        326        <xsl: call-templ ate name=" CSS-Inline Properties ">
        327         <xsl :with-para m name="Pa ramPropert ies" selec t="$VarCSS Properties " />
        328        </xsl :call-temp late>
        329       </xsl: variable>
        330  
        331       <xsl:v ariable na me="VarTag Property"  select="$V arRule/wwp roject:Pro perties/ww project:Pr operty[@Na me = 'tag' ]/@Value"  />
        332       <xsl:v ariable na me="VarTag ">
        333        <xsl: choose>
        334         <xsl :when test ="string-l ength($Var TagPropert y) &gt; 0" >
        335          <xs l:value-of  select="$ VarTagProp erty" />
        336         </xs l:when>
        337  
        338         <xsl :otherwise >
        339          <xs l:value-of  select="' span'" />
        340         </xs l:otherwis e>
        341        </xsl :choose>
        342       </xsl: variable>
        343  
        344       <xsl:e lement nam e="{$VarTa g}" namesp ace="{$Glo balDefault Namespace} ">
        345        <!--  Style attr ibute -->
        346        <!--                   -->
        347        <xsl: if test="s tring-leng th($VarSty leAttribut e) &gt; 0" >
        348         <xsl :attribute  name="sty le">
        349          <xs l:value-of  select="$ VarStyleAt tribute" / >
        350         </xs l:attribut e>
        351        </xsl :if>
        352  
        353        <xsl: if test="s tring-leng th($ParamI mage) &gt;  0">
        354         <!--  Get absol ute path f or imaging  info -->
        355         <!--                                        -->
        356         <xsl :variable  name="VarI mageFileSy stemPath"  select="ww filesystem :Combine(w wprojext:G etTargetOu tputDirect oryPath(),  wwprojext :GetGroupN ame($Param Split/@gro upID), $Pa ramImage)"  />
        357         <xsl :variable  name="VarI mageInfo"  select="ww imaging:Ge tInfo($Var ImageFileS ystemPath) " />
        358  
        359         <xsl :variable  name="VarI magePath">
        360          <xs l:call-tem plate name ="URI-Reso lveProject FileURI">
        361           <x sl:with-pa ram name=" ParamFromA bsoluteURI " select=" $ParamSpli t/@path" / >
        362           <x sl:with-pa ram name=" ParamSplit s" select= "$ParamSpl its" />
        363           <x sl:with-pa ram name=" ParamURI"  select="$P aramImage"  />
        364          </x sl:call-te mplate>
        365         </xs l:variable >
        366  
        367         <!--  Image -->
        368         <!--        -->
        369         <xsl :text>[[</ xsl:text>
        370          <xs l:call-tem plate name ="MediaWik i-ImageRoo tedLink">
        371           <x sl:with-pa ram name=" ParamLinkP ath" selec t="$VarIma gePath" />
        372           <x sl:with-pa ram name=" ParamOutpu tDirectory Path" sele ct="$Param Split/@tar get-output -directory -path" />
        373          </x sl:call-te mplate>
        374  
        375         <xsl :text>|</x sl:text>
        376  
        377         <xsl :value-of  select="$V arImageInf o/@width"  />
        378         <xsl :text>px</ xsl:text>
        379         <xsl :text>]]</ xsl:text>
        380        </xsl :if>
        381  
        382        <!--  Characters  -->
        383        <!--              -->
        384        <xsl: value-of s elect="$Pa ramCharact er" />
        385  
        386        <!--  Separator  -->
        387        <!--             -->
        388        <xsl: value-of s elect="$Pa ramSeparat or" />
        389       </xsl: element>
        390      </xsl:w hen>
        391  
        392      <xsl:ot herwise>
        393       <xsl:i f test="st ring-lengt h($ParamIm age) &gt;  0">
        394        <!--  Get absolu te path fo r imaging  info -->
        395        <!--                                        -->
        396        <xsl: variable n ame="VarIm ageFileSys temPath" s elect="wwf ilesystem: Combine(ww projext:Ge tTargetOut putDirecto ryPath(),  wwprojext: GetGroupNa me($ParamS plit/@grou pID), $Par amImage)"  />
        397        <xsl: variable n ame="VarIm ageInfo" s elect="wwi maging:Get Info($VarI mageFileSy stemPath)"  />
        398  
        399        <xsl: variable n ame="VarIm agePath">
        400         <xsl :call-temp late name= "URI-Resol veProjectF ileURI">
        401          <xs l:with-par am name="P aramFromAb soluteURI"  select="$ ParamSplit /@path" />
        402          <xs l:with-par am name="P aramSplits " select=" $ParamSpli ts" />
        403          <xs l:with-par am name="P aramURI" s elect="$Pa ramImage"  />
        404         </xs l:call-tem plate>
        405        </xsl :variable>
        406  
        407        <!--  Image -->
        408        <!--        -->
        409        <xsl: text>[[</x sl:text>
        410         <xsl :call-temp late name= "MediaWiki -ImageRoot edLink">
        411          <xs l:with-par am name="P aramLinkPa th" select ="$VarImag ePath" />
        412          <xs l:with-par am name="P aramOutput DirectoryP ath" selec t="$ParamS plit/@targ et-output- directory- path" />
        413         </xs l:call-tem plate>
        414  
        415        <xsl: text>|</xs l:text>
        416  
        417        <xsl: value-of s elect="$Va rImageInfo /@width" / >
        418        <xsl: text>px</x sl:text>
        419        <xsl: text>]]</x sl:text>
        420       </xsl: if>
        421  
        422       <!-- C haracters  -->
        423       <!--              -->
        424       <xsl:v alue-of se lect="$Par amCharacte r" />
        425  
        426       <!-- S eparator - ->
        427       <!--            - ->
        428       <xsl:v alue-of se lect="$Par amSeparato r" />
        429      </xsl:o therwise>
        430     </xsl:ch oose>
        431    </xsl:tem plate>
        432  
        433  
        434    <xsl:temp late name= "Notes-Num ber">
        435     <xsl:par am name="P aramNotes"  />
        436  
        437     <wwnotes :NoteNumbe ring versi on="1.0">
        438      <xsl:fo r-each sel ect="$Para mNotes">
        439       <xsl:v ariable na me="VarNot e" select= "." />
        440  
        441       <wwnot es:Note id ="{$VarNot e/@id}" nu mber="{pos ition()}"  />
        442      </xsl:f or-each>
        443     </wwnote s:NoteNumb ering>
        444    </xsl:tem plate>
        445  
        446  
        447    <xsl:temp late match ="wwdoc:Pa ragraph" m ode="wwmod e:content" >
        448     <xsl:par am name="P aramSplits " />
        449     <xsl:par am name="P aramCargo"  />
        450     <xsl:par am name="P aramLinks"  />
        451     <xsl:par am name="P aramTOCDat a" />
        452     <xsl:par am name="P aramSplit"  />
        453  
        454     <xsl:var iable name ="VarParag raph" sele ct="." />
        455  
        456     <!-- Abo rted? -->
        457     <!--           -->
        458     <xsl:if  test="not( wwprogress :Abort())" >
        459      <xsl:va riable nam e="VarOver rideRule"  select="ww projext:Ge tOverrideR ule('Parag raph', $Va rParagraph /@stylenam e, $ParamS plit/@docu mentID, $V arParagrap h/@id)" />
        460      <xsl:va riable nam e="VarGene rateOutput Option" se lect="$Var OverrideRu le/wwproje ct:Options /wwproject :Option[@N ame = 'gen erate-outp ut']/@Valu e" />
        461      <xsl:va riable nam e="VarGene rateOutput " select=" (string-le ngth($VarG enerateOut putOption)  = 0) or ( $VarGenera teOutputOp tion != 'f alse')" />
        462      <xsl:if  test="$Va rGenerateO utput">
        463       <!-- R elated Top ic Only or  Popup Onl y? -->
        464       <!--                                       -->
        465       <xsl:f or-each se lect="$Par amCargo/ww behaviors: Behaviors[ 1]">
        466        <xsl: variable n ame="VarPa ragraphBeh avior" sel ect="key(' wwbehavior s-paragrap hs-by-id',  $VarParag raph/@id)[ 1]" />
        467        <xsl: variable n ame="VarIn PopupPage"  select="c ount($Para mCargo/wwb ehaviors:P opupPage)  &gt; 0" />
        468        <xsl: variable n ame="VarPo pupOnly" s elect="($V arParagrap hBehavior/ @popup = ' define-no- output') o r ($VarPar agraphBeha vior/@popu p = 'appen d-no-outpu t')" />
        469        <xsl: variable n ame="VarRe latedTopic Only" sele ct="$VarPa ragraphBeh avior/@rel atedtopic  = 'define- no-output' " />
        470  
        471        <xsl: if test="$ VarInPopup Page or (n ot($VarPop upOnly) an d not($Var RelatedTop icOnly))">
        472         <!--  Paragraph  -->
        473         <!--             -->
        474         <xsl :call-temp late name= "Paragraph ">
        475          <xs l:with-par am name="P aramSplits " select=" $ParamSpli ts" />
        476          <xs l:with-par am name="P aramCargo"  select="$ ParamCargo " />
        477          <xs l:with-par am name="P aramLinks"  select="$ ParamLinks " />
        478          <xs l:with-par am name="P aramSplit"  select="$ ParamSplit " />
        479          <xs l:with-par am name="P aramParagr aph" selec t="$VarPar agraph" />
        480          <xs l:with-par am name="P aramStyleN ame" selec t="$VarPar agraph/@st ylename" / >
        481          <xs l:with-par am name="P aramOverri deRule" se lect="$Var OverrideRu le" />
        482          <xs l:with-par am name="P aramParagr aphBehavio r" select= "$VarParag raphBehavi or" />
        483         </xs l:call-tem plate>
        484  
        485         <!--  MiniTOC - ->
        486         <!--          - ->
        487         <xsl :if test=" not($VarIn PopupPage) ">
        488          <xs l:variable  name="Var MiniTOCSub Levels" se lect="$Var OverrideRu le/wwproje ct:Options /wwproject :Option[@N ame = 'min itoc-suble vels']/@Va lue" />
        489          <xs l:variable  name="Var MiniTOCSub LevelsNume ricPrefix"  select="w wunits:Num ericPrefix ($VarMiniT OCSubLevel s)" />
        490          <xs l:variable  name="Var MiniTOCSub LevelsGrea terThanZer o" select= "(string-l ength($Var MiniTOCSub LevelsNume ricPrefix)  &gt; 0) a nd (number ($VarMiniT OCSubLevel sNumericPr efix) &gt;  0)" />
        491          <xs l:if test= "($VarMini TOCSubLeve lsGreaterT hanZero) o r ($VarMin iTOCSubLev els = 'all ')">
        492           <x sl:for-eac h select=" $ParamTOCD ata[1]">
        493            < xsl:variab le name="V arTOCEntry " select=" key('wwtoc -entry-by- id', $VarP aragraph/@ id)[@docum entID = $P aramSplit/ @documentI D]" />
        494            < xsl:for-ea ch select= "$VarTOCEn try[1]">
        495              <xsl:call- template n ame="MiniT OC">
        496               <xsl:with -param nam e="ParamSp lit" selec t="$ParamS plit" />
        497               <xsl:with -param nam e="ParamTO CEntry" se lect="$Var TOCEntry[1 ]" />
        498               <xsl:with -param nam e="ParamEm itTOCEntry " select=" false()" / >
        499               <xsl:with -param nam e="ParamMi niTOCSubLe vels" sele ct="$VarMi niTOCSubLe vels" />
        500              </xsl:call -template>
        501            < /xsl:for-e ach>
        502           </ xsl:for-ea ch>
        503          </x sl:if>
        504         </xs l:if>
        505        </xsl :if>
        506       </xsl: for-each>
        507      </xsl:i f>
        508     </xsl:if >
        509    </xsl:tem plate>
        510  
        511  
        512    <xsl:temp late name= "MiniTOC">
        513     <xsl:par am name="P aramSplit"  />
        514     <xsl:par am name="P aramTOCEnt ry" />
        515     <xsl:par am name="P aramEmitTO CEntry" />
        516     <xsl:par am name="P aramMiniTO CSubLevels " />
        517  
        518     <xsl:if  test="($Pa ramEmitTOC Entry = tr ue()) or ( count($Par amTOCEntry /wwtoc:Ent ry[1]) = 1 )">
        519      <html:d iv style=" background -color: #D DDDDD; bor der-color:  #000000;  border-wid th: 1px; b order-styl e: solid;  padding: 8 px;">
        520       <!-- E mit top-le vel entry?  -->
        521       <!--                          -->
        522       <xsl:c hoose>
        523        <xsl: when test= "$ParamEmi tTOCEntry  = true()">
        524         <htm l:div styl e="margin- left:12 pt ;">
        525          <ht ml:div sty le="margin -left: 12p t;">
        526           <! -- Force o n one line  -->
        527           <! --                     -->
        528           <w wexsldoc:N oBreak />
        529  
        530           <! -- Paragra ph -->
        531           <! --            -->
        532           <x sl:call-te mplate nam e="MiniTOC Paragraph" >
        533            < xsl:with-p aram name= "ParamPara graph" sel ect="$Para mTOCEntry/ wwdoc:Para graph" />
        534           </ xsl:call-t emplate>
        535  
        536           <! -- Force o n one line  -->
        537           <! --                     -->
        538           <w wexsldoc:N oBreak />
        539          </h tml:div>
        540  
        541          <!- - Children  -->
        542          <!- -           -->
        543          <xs l:call-tem plate name ="MiniTOCE ntries">
        544           <x sl:with-pa ram name=" ParamRefer encePath"  select="$P aramSplit/ @path" />
        545           <x sl:with-pa ram name=" ParamParen t" select= "$ParamTOC Entry" />
        546           <x sl:with-pa ram name=" ParamMiniT OCSubLevel s" select= "$ParamMin iTOCSubLev els" />
        547           <x sl:with-pa ram name=" ParamSplit " select=" $ParamSpli t" />
        548          </x sl:call-te mplate>
        549         </ht ml:div>
        550        </xsl :when>
        551  
        552        <xsl: otherwise>
        553         <!--  Children  -->
        554         <!--            -->
        555         <xsl :call-temp late name= "MiniTOCEn tries">
        556          <xs l:with-par am name="P aramRefere ncePath" s elect="$Pa ramSplit/@ path" />
        557          <xs l:with-par am name="P aramParent " select=" $ParamTOCE ntry" />
        558          <xs l:with-par am name="P aramMiniTO CSubLevels " select=" $ParamMini TOCSubLeve ls" />
        559          <xs l:with-par am name="P aramSplit"  select="$ ParamSplit " />
        560         </xs l:call-tem plate>
        561        </xsl :otherwise >
        562       </xsl: choose>
        563      </html: div>
        564     </xsl:if >
        565    </xsl:tem plate>
        566  
        567  
        568    <xsl:temp late name= "MiniTOCEn tries">
        569     <xsl:par am name="P aramRefere ncePath" / >
        570     <xsl:par am name="P aramParent " />
        571     <xsl:par am name="P aramMiniTO CSubLevels " />
        572     <xsl:par am name="P aramSplit"  />
        573  
        574     <xsl:var iable name ="VarSubEn tries" sel ect="$Para mParent/ww toc:Entry"  />
        575  
        576     <xsl:for -each sele ct="$VarSu bEntries[1 ]">
        577      <html:d iv style=" margin-lef t: 12pt;">
        578  
        579      <xsl:fo r-each sel ect="$VarS ubEntries" >
        580       <xsl:v ariable na me="VarEnt ry" select ="." />
        581  
        582       <html: div style= "margin-le ft: 12pt;" >
        583        <!--  Force on o ne line -- >
        584        <!--                     -- >
        585        <wwex sldoc:NoBr eak />
        586  
        587        <xsl: choose>
        588         <xsl :when test ="string-l ength($Var Entry/@pat h) &gt; 0" >
        589  
        590          <ht ml:span>
        591  
        592          <!- - Force on  a single  line -->
        593          <!- -                          -->
        594          <ww exsldoc:No Break />
        595  
        596          <xs l:text>[[< /xsl:text>
        597          <xs l:call-tem plate name ="MediaWik i-ProjectR ootedLink" >
        598           <x sl:with-pa ram name=" ParamLinkP ath" selec t="concat( $VarEntry/ @path, '#' , $VarEntr y/@linkid) " />
        599           <x sl:with-pa ram name=" ParamTarge tOutputDir ectoryPath " select=" $ParamSpli t/@target- output-dir ectory-pat h" />
        600          </x sl:call-te mplate>
        601          <xs l:text>|</ xsl:text>
        602          <xs l:call-tem plate name ="MiniTOCP aragraph">
        603           <x sl:with-pa ram name=" ParamParag raph" sele ct="$VarEn try/wwdoc: Paragraph"  />
        604          </x sl:call-te mplate>
        605          <xs l:text>]]< /xsl:text>
        606  
        607          <!- - Force on  a single  line -->
        608          <!- -                          -->
        609          <ww exsldoc:No Break />
        610  
        611          </h tml:span>
        612         </xs l:when>
        613  
        614         <xsl :otherwise >
        615          <xs l:call-tem plate name ="MiniTOCP aragraph">
        616           <x sl:with-pa ram name=" ParamParag raph" sele ct="$VarEn try/wwdoc: Paragraph"  />
        617          </x sl:call-te mplate>
        618         </xs l:otherwis e>
        619        </xsl :choose>
        620  
        621        <!--  Force on o ne line -- >
        622        <!--                     -- >
        623        <wwex sldoc:NoBr eak />
        624       </html :div>
        625  
        626       <!-- R ecurse -->
        627       <!--          -->
        628       <xsl:c hoose>
        629        <xsl: when test= "$ParamMin iTOCSubLev els = 'all '">
        630         <xsl :call-temp late name= "MiniTOCEn tries">
        631          <xs l:with-par am name="P aramRefere ncePath" s elect="$Pa ramReferen cePath" />
        632          <xs l:with-par am name="P aramParent " select=" $VarEntry"  />
        633          <xs l:with-par am name="P aramMiniTO CSubLevels " select=" $ParamMini TOCSubLeve ls" />
        634          <xs l:with-par am name="P aramSplit"  select="$ ParamSplit " />
        635         </xs l:call-tem plate>
        636        </xsl :when>
        637  
        638        <xsl: when test= "($ParamMi niTOCSubLe vels - 1)  &gt; 0">
        639         <xsl :call-temp late name= "MiniTOCEn tries">
        640          <xs l:with-par am name="P aramRefere ncePath" s elect="$Pa ramReferen cePath" />
        641          <xs l:with-par am name="P aramParent " select=" $VarEntry"  />
        642          <xs l:with-par am name="P aramMiniTO CSubLevels " select=" $ParamMini TOCSubLeve ls - 1" />
        643          <xs l:with-par am name="P aramSplit"  select="$ ParamSplit " />
        644         </xs l:call-tem plate>
        645        </xsl :when>
        646       </xsl: choose>
        647      </xsl:f or-each>
        648  
        649      </html: div>
        650     </xsl:fo r-each>
        651    </xsl:tem plate>
        652  
        653  
        654    <xsl:temp late name= "MiniTOCPa ragraph">
        655     <xsl:par am name="P aramParagr aph" />
        656  
        657     <xsl:for -each sele ct="$Param Paragraph/ wwdoc:Numb er/wwdoc:T ext | $Par amParagrap h/wwdoc:Te xtRun/wwdo c:Text">
        658      <xsl:va lue-of sel ect="@valu e" />
        659     </xsl:fo r-each>
        660    </xsl:tem plate>
        661  
        662  
        663    <xsl:temp late name= "Paragraph ">
        664     <xsl:par am name="P aramSplits " />
        665     <xsl:par am name="P aramCargo"  />
        666     <xsl:par am name="P aramLinks"  />
        667     <xsl:par am name="P aramSplit"  />
        668     <xsl:par am name="P aramParagr aph" />
        669     <xsl:par am name="P aramStyleN ame" />
        670     <xsl:par am name="P aramOverri deRule" />
        671     <xsl:par am name="P aramParagr aphBehavio r" />
        672  
        673     <!-- Pre serve empt y? -->
        674     <!--                   -->
        675     <xsl:var iable name ="VarPrese rveEmptyOp tion" sele ct="$Param OverrideRu le/wwproje ct:Options /wwproject :Option[@N ame = 'pre serve-empt y']/@Value " />
        676     <xsl:var iable name ="VarPrese rveEmpty"  select="(s tring-leng th($VarPre serveEmpty Option) =  0) or ($Va rPreserveE mptyOption  = 'true') " />
        677  
        678     <!-- Non -empty tex t runs -->
        679     <!--                       -->
        680     <xsl:var iable name ="VarTextR uns" selec t="$ParamP aragraph/w wdoc:TextR un[count(c hild::wwdo c:Text[1]  | child::w wdoc:Frame [1] | chil d::wwdoc:N ote[1] | c hild::wwdo c:LineBrea k[1]) &gt;  0]" />
        681  
        682     <!-- Pro cess this  paragraph  at all? -- >
        683     <!--                                   -- >
        684     <xsl:if  test="($Va rPreserveE mpty) or ( count($Var TextRuns[1 ]) = 1)">
        685      <!-- Pa ss-through ? -->
        686      <!--                 -->
        687      <xsl:va riable nam e="VarPass Through">
        688       <xsl:c all-templa te name="C onditions- PassThroug h">
        689        <xsl: with-param  name="Par amConditio ns" select ="$ParamPa ragraph/ww doc:Condit ions" />
        690       </xsl: call-templ ate>
        691      </xsl:v ariable>
        692  
        693      <xsl:ch oose>
        694       <!-- P ass-throug h -->
        695       <!--                -->
        696       <xsl:w hen test=" $VarPassTh rough = 't rue'">
        697        <xsl: call-templ ate name=" Paragraph- PassThroug h">
        698         <xsl :with-para m name="Pa ramParagra ph" select ="$ParamPa ragraph" / >
        699        </xsl :call-temp late>
        700       </xsl: when>
        701  
        702       <xsl:o therwise>
        703        <xsl: call-templ ate name=" Paragraph- Normal">
        704         <xsl :with-para m name="Pa ramSplits"  select="$ ParamSplit s" />
        705         <xsl :with-para m name="Pa ramCargo"  select="$P aramCargo"  />
        706         <xsl :with-para m name="Pa ramLinks"  select="$P aramLinks"  />
        707         <xsl :with-para m name="Pa ramSplit"  select="$P aramSplit"  />
        708         <xsl :with-para m name="Pa ramParagra ph" select ="$ParamPa ragraph" / >
        709         <xsl :with-para m name="Pa ramStyleNa me" select ="$ParamSt yleName" / >
        710         <xsl :with-para m name="Pa ramOverrid eRule" sel ect="$Para mOverrideR ule" />
        711         <xsl :with-para m name="Pa ramParagra phBehavior " select=" $ParamPara graphBehav ior" />
        712        </xsl :call-temp late>
        713       </xsl: otherwise>
        714      </xsl:c hoose>
        715     </xsl:if >
        716    </xsl:tem plate>
        717  
        718  
        719    <xsl:temp late name= "Paragraph -PassThrou gh">
        720     <xsl:par am name="P aramParagr aph" />
        721  
        722     <wwexsld oc:Text di sable-outp ut-escapin g="yes">
        723      <xsl:fo r-each sel ect="$Para mParagraph /wwdoc:Tex tRun/wwdoc :Text">
        724       <xsl:v ariable na me="VarTex t" select= "." />
        725  
        726       <xsl:v alue-of se lect="$Var Text/@valu e" />
        727      </xsl:f or-each>
        728     </wwexsl doc:Text>
        729    </xsl:tem plate>
        730  
        731  
        732    <xsl:temp late name= "Paragraph -Normal">
        733     <xsl:par am name="P aramSplits " />
        734     <xsl:par am name="P aramCargo"  />
        735     <xsl:par am name="P aramLinks"  />
        736     <xsl:par am name="P aramSplit"  />
        737     <xsl:par am name="P aramParagr aph" />
        738     <xsl:par am name="P aramStyleN ame" />
        739     <xsl:par am name="P aramOverri deRule" />
        740     <xsl:par am name="P aramParagr aphBehavio r" />
        741  
        742     <!-- Res olve proje ct propert ies -->
        743     <!--                               -->
        744     <xsl:var iable name ="VarResol vedPropert iesAsXML">
        745      <xsl:ca ll-templat e name="Pr operties-R esolveOver rideRule">
        746       <xsl:w ith-param  name="Para mPropertie s" select= "$ParamOve rrideRule/ wwproject: Properties /wwproject :Property"  />
        747       <xsl:w ith-param  name="Para mContextSt yle" selec t="$ParamP aragraph/w wdoc:Style " />
        748      </xsl:c all-templa te>
        749     </xsl:va riable>
        750     <xsl:var iable name ="VarResol vedPropert ies" selec t="msxsl:n ode-set($V arResolved Properties AsXML)/wwp roject:Pro perty" />
        751  
        752     <!-- CSS  propertie s -->
        753     <!--                  -->
        754     <xsl:var iable name ="VarCSSPr opertiesAs XML">
        755      <xsl:ca ll-templat e name="CS S-Translat eProjectPr operties">
        756       <xsl:w ith-param  name="Para mPropertie s" select= "$VarResol vedPropert ies" />
        757       <xsl:w ith-param  name="Para mFromAbsol uteURI" se lect="$Par amSplit/@p ath" />
        758       <xsl:w ith-param  name="Para mSplits" s elect="$Pa ramSplits"  />
        759      </xsl:c all-templa te>
        760     </xsl:va riable>
        761     <xsl:var iable name ="VarCSSPr operties"  select="ms xsl:node-s et($VarCSS Properties AsXML)/wwp roject:Pro perty" />
        762  
        763     <xsl:var iable name ="VarConte xtRule" se lect="wwpr ojext:GetC ontextRule ('Paragrap h', $Param Paragraph/ @stylename , $ParamSp lit/@docum entID, $Pa ramParagra ph/@id)" / >
        764  
        765     <!-- Res olve proje ct propert ies -->
        766     <!--                               -->
        767     <xsl:var iable name ="VarResol vedContext Properties AsXML">
        768      <xsl:ca ll-templat e name="Pr operties-R esolveCont extRule">
        769       <xsl:w ith-param  name="Para mDocumentC ontext" se lect="$Par amParagrap h" />
        770       <xsl:w ith-param  name="Para mPropertie s" select= "$VarConte xtRule/wwp roject:Pro perties/ww project:Pr operty" />
        771       <xsl:w ith-param  name="Para mStyleName " select=" $ParamPara graph/@sty lename" />
        772       <xsl:w ith-param  name="Para mStyleType " select=" 'Paragraph '" />
        773       <xsl:w ith-param  name="Para mContextSt yle" selec t="$ParamP aragraph/w wdoc:Style " />
        774      </xsl:c all-templa te>
        775     </xsl:va riable>
        776     <xsl:var iable name ="VarResol vedContext Properties " select=" msxsl:node -set($VarR esolvedCon textProper tiesAsXML) /wwproject :Property"  />
        777  
        778     <!-- CSS  propertie s -->
        779     <!--                  -->
        780     <xsl:var iable name ="VarCSSCo ntextPrope rtiesAsXML ">
        781      <xsl:ca ll-templat e name="CS S-Translat eProjectPr operties">
        782       <xsl:w ith-param  name="Para mPropertie s" select= "$VarResol vedContext Properties " />
        783       <xsl:w ith-param  name="Para mFromAbsol uteURI" se lect="$Par amSplit/@p ath" />
        784       <xsl:w ith-param  name="Para mSplits" s elect="$Pa ramSplits"  />
        785      </xsl:c all-templa te>
        786     </xsl:va riable>
        787     <xsl:var iable name ="VarCSSCo ntextPrope rties" sel ect="msxsl :node-set( $VarCSSCon textProper tiesAsXML) /wwproject :Property"  />
        788  
        789     <!-- Use  numbering ? -->
        790     <!--                  -->
        791     <xsl:var iable name ="VarUseNu mberingOpt ion" selec t="$VarCon textRule/w wproject:O ptions/wwp roject:Opt ion[@Name  = 'use-num bering']/@ Value" />
        792     <xsl:var iable name ="VarUseNu mbering" s elect="(st ring-lengt h($VarUseN umberingOp tion) = 0)  or ($VarU seNumberin gOption =  'true')" / >
        793  
        794     <!-- Tex t Indent - ->
        795     <!--              - ->
        796     <xsl:var iable name ="VarTextI ndent">
        797      <xsl:if  test="$Va rUseNumber ing">
        798       <xsl:v ariable na me="VarOve rrideTextI ndent" sel ect="$VarC SSProperti es[@Name =  'text-ind ent']/@Val ue" />
        799       <xsl:c hoose>
        800        <xsl: when test= "string-le ngth($VarO verrideTex tIndent) & gt; 0">
        801         <xsl :value-of  select="$V arOverride TextIndent " />
        802        </xsl :when>
        803  
        804        <xsl: otherwise>
        805         <!--  Text inde nt defined ? -->
        806         <!--                         -->
        807         <xsl :variable  name="VarC ontextText Indent" se lect="$Var CSSContext Properties [@Name = ' text-inden t']/@Value " />
        808         <xsl :if test=" string-len gth($VarCo ntextTextI ndent) &gt ; 0">
        809          <xs l:value-of  select="$ VarContext TextIndent " />
        810         </xs l:if>
        811        </xsl :otherwise >
        812       </xsl: choose>
        813      </xsl:i f>
        814     </xsl:va riable>
        815  
        816     <xsl:var iable name ="VarTextI ndentNumer icPrefix"  select="ww units:Nume ricPrefix( $VarTextIn dent)" />
        817     <xsl:var iable name ="VarTextI ndentLessT hanZero" s elect="(st ring-lengt h($VarText IndentNume ricPrefix)  &gt; 0) a nd (number ($VarTextI ndentNumer icPrefix)  &lt; 0)" / >
        818  
        819     <!-- Use  bullet fr om UI? -->
        820     <!--                       -->
        821     <xsl:var iable name ="VarBulle tCharacter " select=" $VarContex tRule/wwpr oject:Prop erties/wwp roject:Pro perty[@Nam e = 'bulle t-characte r']/@Value " />
        822     <xsl:var iable name ="VarBulle tImage" se lect="$Var ContextRul e/wwprojec t:Properti es/wwproje ct:Propert y[@Name =  'bullet-im age']/@Val ue" />
        823     <xsl:var iable name ="VarBulle tSeparator " select=" $VarContex tRule/wwpr oject:Prop erties/wwp roject:Pro perty[@Nam e = 'bulle t-separato r']/@Value " />
        824     <xsl:var iable name ="VarBulle tStyle" se lect="$Var ContextRul e/wwprojec t:Properti es/wwproje ct:Propert y[@Name =  'bullet-st yle']/@Val ue" />
        825     <xsl:var iable name ="VarIgnor eDocumentN umber" sel ect="(stri ng-length( $VarBullet Character)  &gt; 0) o r (string- length($Va rBulletIma ge) &gt; 0 ) or (stri ng-length( $VarBullet Separator)  &gt; 0)"  />
        826  
        827     <!-- Is  numbered p aragraph - ->
        828     <!--                         - ->
        829     <xsl:var iable name ="VarIsNum beredParag raph" sele ct="($VarT extIndentL essThanZer o = true() ) and ((co unt($Param Paragraph/ wwdoc:Numb er[1]) = 1 ) or (stri ng-length( $VarBullet Character)  &gt; 0) o r (string- length($Va rBulletIma ge) &gt; 0 ) or (stri ng-length( $VarBullet Separator)  &gt; 0) o r (string- length($Va rBulletSty le) &gt; 0 ))" />
        830  
        831     <!-- Cit ation -->
        832     <!--           -->
        833     <xsl:var iable name ="VarCitat ion">
        834      <xsl:ca ll-templat e name="Be haviors-Op tions-Opti onMarker">
        835       <xsl:w ith-param  name="Para mContainer " select=" $ParamPara graph" />
        836       <xsl:w ith-param  name="Para mCargo" se lect="$Par amCargo" / >
        837       <xsl:w ith-param  name="Para mParagraph ID" select ="$ParamPa ragraph/@i d" />
        838       <xsl:w ith-param  name="Para mRule" sel ect="$VarC ontextRule " />
        839       <xsl:w ith-param  name="Para mOption" s elect="'ci tation'" / >
        840      </xsl:c all-templa te>
        841     </xsl:va riable>
        842  
        843     <!-- Tag  -->
        844     <!--      -->
        845     <xsl:var iable name ="VarTagPr operty" se lect="$Var ContextRul e/wwprojec t:Properti es/wwproje ct:Propert y[@Name =  'tag']/@Va lue" />
        846     <xsl:var iable name ="VarTag">
        847      <xsl:ch oose>
        848       <xsl:w hen test=" string-len gth($VarTa gProperty)  &gt; 0">
        849        <xsl: value-of s elect="$Va rTagProper ty" />
        850       </xsl: when>
        851  
        852       <xsl:o therwise>
        853        <xsl: value-of s elect="'di v'" />
        854       </xsl: otherwise>
        855      </xsl:c hoose>
        856     </xsl:va riable>
        857  
        858     <!-- Tag  to use fo r outer wr apper -->
        859     <!--                                 -->
        860     <xsl:var iable name ="VarOuter Tag">
        861      <xsl:ch oose>
        862       <xsl:w hen test=" $VarIsNumb eredParagr aph = true ()">
        863        <xsl: value-of s elect="'di v'" />
        864       </xsl: when>
        865  
        866       <xsl:o therwise>
        867        <xsl: value-of s elect="$Va rTag" />
        868       </xsl: otherwise>
        869      </xsl:c hoose>
        870     </xsl:va riable>
        871  
        872     <!-- Use  character  styles? - ->
        873     <!--                         - ->
        874     <xsl:var iable name ="VarUseCh aracterSty lesOption"  select="$ ParamOverr ideRule/ww project:Op tions/wwpr oject:Opti on[@Name =  'use-char acter-styl es']/@Valu e" />
        875     <xsl:var iable name ="VarUseCh aracterSty les" selec t="(string -length($V arUseChara cterStyles Option) =  0) or ($Va rUseCharac terStylesO ption = 't rue')" />
        876  
        877     <!-- Pre serve empt y? -->
        878     <!--                   -->
        879     <xsl:var iable name ="VarPrese rveEmptyOp tion" sele ct="$Param OverrideRu le/wwproje ct:Options /wwproject :Option[@N ame = 'pre serve-empt y']/@Value " />
        880     <xsl:var iable name ="VarPrese rveEmpty"  select="(s tring-leng th($VarPre serveEmpty Option) =  0) or ($Va rPreserveE mptyOption  = 'true') " />
        881  
        882     <!-- Beg in paragra ph emit -- >
        883     <!--                        -- >
        884     <xsl:ele ment name= "{$VarOute rTag}" nam espace="{$ GlobalDefa ultNamespa ce}">
        885      <!-- St yle attrib ute -->
        886      <!--                   -->
        887      <xsl:ch oose>
        888       <xsl:w hen test=" $VarIsNumb eredParagr aph = true ()">
        889        <xsl: variable n ame="VarSt yleAttribu teOuter">
        890         <xsl :call-temp late name= "CSS-Inlin ePropertie sOuter">
        891          <xs l:with-par am name="P aramProper ties" sele ct="$VarCS SContextPr operties"  />
        892          <xs l:with-par am name="P aramContex tPropertie s" select= "$VarCSSCo ntextPrope rties" />
        893         </xs l:call-tem plate>
        894        </xsl :variable>
        895  
        896        <xsl: if test="s tring-leng th($VarSty leAttribut eOuter) &g t; 0">
        897         <xsl :attribute  name="sty le">
        898          <xs l:value-of  select="$ VarStyleAt tributeOut er" />
        899         </xs l:attribut e>
        900        </xsl :if>
        901       </xsl: when>
        902  
        903       <xsl:o therwise>
        904        <xsl: variable n ame="VarSt yleAttribu te">
        905         <xsl :call-temp late name= "CSS-Inlin ePropertie s">
        906          <xs l:with-par am name="P aramProper ties" sele ct="$VarCS SContextPr operties"  />
        907         </xs l:call-tem plate>
        908        </xsl :variable>
        909  
        910        <xsl: if test="s tring-leng th($VarSty leAttribut e) &gt; 0" >
        911         <xsl :attribute  name="sty le">
        912          <xs l:value-of  select="$ VarStyleAt tribute" / >
        913         </xs l:attribut e>
        914        </xsl :if>
        915       </xsl: otherwise>
        916      </xsl:c hoose>
        917  
        918      <!-- Ci te attribu te -->
        919      <!--                  -->
        920      <xsl:if  test="str ing-length ($VarCitat ion) &gt;  0">
        921       <xsl:a ttribute n ame="cite" >
        922        <xsl: value-of s elect="$Va rCitation"  />
        923       </xsl: attribute>
        924      </xsl:i f>
        925  
        926      <!-- Us e numberin g? -->
        927      <!--                  -->
        928      <xsl:ch oose>
        929       <!-- U se Number  -->
        930       <!--              -->
        931       <xsl:w hen test=" $VarUseNum bering">
        932        <xsl: choose>
        933         <xsl :when test ="(count($ ParamParag raph/wwdoc :Number[1] ) &gt; 0)  or (string -length($V arBulletCh aracter) & gt; 0) or   (string-l ength($Var BulletImag e) &gt; 0)  or (strin g-length($ VarBulletS eparator)  &gt; 0)">
        934          <xs l:choose>
        935           <x sl:when te st="$VarTe xtIndentLe ssThanZero ">
        936            < html:table  border="0 " cellspac ing="0" ce llpadding= "0" width= "99%" summ ary="">
        937              <html:tr v align="bas eline">
        938               <xsl:vari able name= "VarTextIn dentNumber AsUnits" s elect="wwu nits:Numer icPrefix($ VarTextInd ent)" />
        939               <xsl:vari able name= "VarTextIn dentUnits"  select="w wunits:Uni tsSuffix($ VarTextInd ent)" />
        940  
        941               <html:td  style="{co ncat('widt h: ', 0 -  $VarTextIn dentNumber AsUnits, $ VarTextInd entUnits)} ">
        942                <!-- For ce single  line -->
        943                <!--                     -->
        944                <wwexsld oc:NoBreak  />
        945  
        946                 <!-- Fo rce single  line -->
        947                 <!--                     -->
        948                 <wwexsl doc:NoBrea k />
        949  
        950                 <xsl:el ement name ="{$VarTag }" namespa ce="{$Glob alDefaultN amespace}" >
        951                  <xsl:v ariable na me="VarSty leAttribut eInnerNumb er">
        952                   <xsl: call-templ ate name=" CSS-Inline Properties InnerNumbe r">
        953                    <xsl :with-para m name="Pa ramPropert ies" selec t="$VarCSS ContextPro perties" / >
        954                   </xsl :call-temp late>
        955                  </xsl: variable>
        956                  <xsl:i f test="st ring-lengt h($VarStyl eAttribute InnerNumbe r) &gt; 0" >
        957                   <xsl: attribute  name="styl e">
        958                    <xsl :value-of  select="$V arStyleAtt ributeInne rNumber" / >
        959                   </xsl :attribute >
        960                  </xsl: if>
        961  
        962                  <xsl:c all-templa te name="N umber">
        963                   <xsl: with-param  name="Par amSplits"  select="$P aramSplits " />
        964                   <xsl: with-param  name="Par amCargo" s elect="$Pa ramCargo"  />
        965                   <xsl: with-param  name="Par amLinks" s elect="$Pa ramLinks"  />
        966                   <xsl: with-param  name="Par amSplit" s elect="$Pa ramSplit"  />
        967                   <xsl: with-param  name="Par amParagrap h" select= "$ParamPar agraph" />
        968                   <xsl: with-param  name="Par amUseChara cterStyles " select=" $VarUseCha racterStyl es" />
        969                   <xsl: with-param  name="Par amIgnoreDo cumentNumb er" select ="$VarIgno reDocument Number" />
        970                   <xsl: with-param  name="Par amCharacte r" select= "$VarBulle tCharacter " />
        971                   <xsl: with-param  name="Par amImage" s elect="$Va rBulletIma ge" />
        972                   <xsl: with-param  name="Par amSeparato r" select= "$VarBulle tSeparator " />
        973                   <xsl: with-param  name="Par amStyle" s elect="$Va rBulletSty le" />
        974                  </xsl: call-templ ate>
        975                 </xsl:e lement>
        976  
        977                 <!-- Fo rce single  line -->
        978                 <!--                     -->
        979                 <wwexsl doc:NoBrea k />
        980  
        981                <!-- For ce single  line -->
        982                <!--                     -->
        983                <wwexsld oc:NoBreak  />
        984               </html:td >
        985  
        986               <html:td>
        987                <!-- For ce single  line -->
        988                <!--                     -->
        989                <wwexsld oc:NoBreak  />
        990  
        991                <!-- Emi t content  -->
        992                <!--                -->
        993                <xsl:ele ment name= "{$VarTag} " namespac e="{$Globa lDefaultNa mespace}">
        994                 <xsl:va riable nam e="VarStyl eAttribute InnerConte nt">
        995                  <xsl:c all-templa te name="C SS-InlineP ropertiesI nnerConten t">
        996                   <xsl: with-param  name="Par amProperti es" select ="$VarCSSC ontextProp erties" />
        997                  </xsl: call-templ ate>
        998                 </xsl:v ariable>
        999                 <xsl:if  test="str ing-length ($VarStyle AttributeI nnerConten t) &gt; 0" >
        1000                  <xsl:a ttribute n ame="style ">
        1001                   <xsl: value-of s elect="$Va rStyleAttr ibuteInner Content" / >
        1002                  </xsl: attribute>
        1003                 </xsl:i f>
        1004  
        1005                 <!-- Te xt Runs -- >
        1006                 <!--            -- >
        1007                 <xsl:ca ll-templat e name="Pa ragraphTex tRuns">
        1008                  <xsl:w ith-param  name="Para mSplits" s elect="$Pa ramSplits"  />
        1009                  <xsl:w ith-param  name="Para mCargo" se lect="$Par amCargo" / >
        1010                  <xsl:w ith-param  name="Para mLinks" se lect="$Par amLinks" / >
        1011                  <xsl:w ith-param  name="Para mSplit" se lect="$Par amSplit" / >
        1012                  <xsl:w ith-param  name="Para mPreserveE mpty" sele ct="$VarPr eserveEmpt y" />
        1013                  <xsl:w ith-param  name="Para mUseCharac terStyles"  select="$ VarUseChar acterStyle s" />
        1014                  <xsl:w ith-param  name="Para mParagraph " select=" $ParamPara graph" />
        1015                 </xsl:c all-templa te>
        1016                </xsl:el ement>
        1017  
        1018                <!-- For ce single  line -->
        1019                <!--                     -->
        1020                <wwexsld oc:NoBreak  />
        1021               </html:td >
        1022              </html:tr>
        1023            < /html:tabl e>
        1024           </ xsl:when>
        1025  
        1026           <x sl:otherwi se>
        1027            < xsl:call-t emplate na me="Number ">
        1028              <xsl:with- param name ="ParamSpl its" selec t="$ParamS plits" />
        1029              <xsl:with- param name ="ParamCar go" select ="$ParamCa rgo" />
        1030              <xsl:with- param name ="ParamLin ks" select ="$ParamLi nks" />
        1031              <xsl:with- param name ="ParamSpl it" select ="$ParamSp lit" />
        1032              <xsl:with- param name ="ParamPar agraph" se lect="$Par amParagrap h" />
        1033              <xsl:with- param name ="ParamUse CharacterS tyles" sel ect="$VarU seCharacte rStyles" / >
        1034              <xsl:with- param name ="ParamIgn oreDocumen tNumber" s elect="$Va rIgnoreDoc umentNumbe r" />
        1035              <xsl:with- param name ="ParamCha racter" se lect="$Var BulletChar acter" />
        1036              <xsl:with- param name ="ParamIma ge" select ="$VarBull etImage" / >
        1037              <xsl:with- param name ="ParamSep arator" se lect="$Var BulletSepa rator" />
        1038              <xsl:with- param name ="ParamSty le" select ="$VarBull etStyle" / >
        1039            < /xsl:call- template>
        1040  
        1041            < !-- Text R uns -->
        1042            < !--            -->
        1043            < xsl:call-t emplate na me="Paragr aphTextRun s">
        1044              <xsl:with- param name ="ParamSpl its" selec t="$ParamS plits" />
        1045              <xsl:with- param name ="ParamCar go" select ="$ParamCa rgo" />
        1046              <xsl:with- param name ="ParamLin ks" select ="$ParamLi nks" />
        1047              <xsl:with- param name ="ParamSpl it" select ="$ParamSp lit" />
        1048              <xsl:with- param name ="ParamPre serveEmpty " select=" $VarPreser veEmpty" / >
        1049              <xsl:with- param name ="ParamUse CharacterS tyles" sel ect="$VarU seCharacte rStyles" / >
        1050              <xsl:with- param name ="ParamPar agraph" se lect="$Par amParagrap h" />
        1051            < /xsl:call- template>
        1052           </ xsl:otherw ise>
        1053          </x sl:choose>
        1054         </xs l:when>
        1055  
        1056         <xsl :otherwise >
        1057          <!- - Text Run s -->
        1058          <!- -            -->
        1059          <xs l:call-tem plate name ="Paragrap hTextRuns" >
        1060           <x sl:with-pa ram name=" ParamSplit s" select= "$ParamSpl its" />
        1061           <x sl:with-pa ram name=" ParamCargo " select=" $ParamCarg o" />
        1062           <x sl:with-pa ram name=" ParamLinks " select=" $ParamLink s" />
        1063           <x sl:with-pa ram name=" ParamSplit " select=" $ParamSpli t" />
        1064           <x sl:with-pa ram name=" ParamPrese rveEmpty"  select="$V arPreserve Empty" />
        1065           <x sl:with-pa ram name=" ParamUseCh aracterSty les" selec t="$VarUse CharacterS tyles" />
        1066           <x sl:with-pa ram name=" ParamParag raph" sele ct="$Param Paragraph"  />
        1067          </x sl:call-te mplate>
        1068         </xs l:otherwis e>
        1069        </xsl :choose>
        1070       </xsl: when>
        1071  
        1072       <!-- S kip Number  -->
        1073       <!--               -->
        1074       <xsl:o therwise>
        1075        <!--  Text Runs  -->
        1076        <!--             -->
        1077        <xsl: call-templ ate name=" ParagraphT extRuns">
        1078         <xsl :with-para m name="Pa ramSplits"  select="$ ParamSplit s" />
        1079         <xsl :with-para m name="Pa ramCargo"  select="$P aramCargo"  />
        1080         <xsl :with-para m name="Pa ramLinks"  select="$P aramLinks"  />
        1081         <xsl :with-para m name="Pa ramSplit"  select="$P aramSplit"  />
        1082         <xsl :with-para m name="Pa ramPreserv eEmpty" se lect="$Var PreserveEm pty" />
        1083         <xsl :with-para m name="Pa ramUseChar acterStyle s" select= "$VarUseCh aracterSty les" />
        1084         <xsl :with-para m name="Pa ramParagra ph" select ="$ParamPa ragraph" / >
        1085        </xsl :call-temp late>
        1086       </xsl: otherwise>
        1087      </xsl:c hoose>
        1088  
        1089     <!-- End  paragraph  emit -->
        1090     <!--                      -->
        1091     </xsl:el ement>
        1092    </xsl:tem plate>
        1093  
        1094  
        1095    <xsl:temp late name= "Number">
        1096     <xsl:par am name="P aramSplits " />
        1097     <xsl:par am name="P aramCargo"  />
        1098     <xsl:par am name="P aramLinks"  />
        1099     <xsl:par am name="P aramSplit"  />
        1100     <xsl:par am name="P aramParagr aph" />
        1101     <xsl:par am name="P aramUseCha racterStyl es" />
        1102     <xsl:par am name="P aramIgnore DocumentNu mber" />
        1103     <xsl:par am name="P aramCharac ter" />
        1104     <xsl:par am name="P aramImage"  />
        1105     <xsl:par am name="P aramSepara tor" />
        1106     <xsl:par am name="P aramStyle"  />
        1107  
        1108     <xsl:cho ose>
        1109      <xsl:wh en test="$ ParamIgnor eDocumentN umber">
        1110       <xsl:c all-templa te name="C ontent-Bul let">
        1111        <xsl: with-param  name="Par amSplits"  select="$P aramSplits " />
        1112        <xsl: with-param  name="Par amSplit" s elect="$Pa ramSplit"  />
        1113        <xsl: with-param  name="Par amParagrap h" select= "$ParamPar agraph" />
        1114        <xsl: with-param  name="Par amCharacte r" select= "$ParamCha racter" />
        1115        <xsl: with-param  name="Par amImage" s elect="$Pa ramImage"  />
        1116        <xsl: with-param  name="Par amSeparato r" select= "$ParamSep arator" />
        1117        <xsl: with-param  name="Par amStyle" s elect="$Pa ramStyle"  />
        1118       </xsl: call-templ ate>
        1119      </xsl:w hen>
        1120  
        1121      <xsl:ot herwise>
        1122       <xsl:v ariable na me="VarBul letPropert iesAsXML">
        1123        <wwpr oject:Bull etProperti es>
        1124         <wwp roject:Pro perty Name ="bullet-s tyle" Valu e="{$Param Style}" />
        1125        </wwp roject:Bul letPropert ies>
        1126       </xsl: variable>
        1127       <xsl:v ariable na me="VarBul letPropert ies" selec t="msxsl:n ode-set($V arBulletPr opertiesAs XML)" />
        1128  
        1129       <xsl:v ariable na me="VarCar go" select ="$ParamCa rgo/*[loca l-name() ! = 'BulletP roperties' ]/.. | $Va rBulletPro perties" / >
        1130  
        1131       <xsl:c all-templa te name="T extRun">
        1132        <xsl: with-param  name="Par amSplits"  select="$P aramSplits " />
        1133        <xsl: with-param  name="Par amCargo" s elect="$Va rCargo" />
        1134        <xsl: with-param  name="Par amLinks" s elect="$Pa ramLinks"  />
        1135        <xsl: with-param  name="Par amSplit" s elect="$Pa ramSplit"  />
        1136        <xsl: with-param  name="Par amParagrap hID" selec t="$ParamP aragraph/@ id" />
        1137        <xsl: with-param  name="Par amUseChara cterStyles " select=" $ParamUseC haracterSt yles" />
        1138        <xsl: with-param  name="Par amTextRun"  select="$ ParamParag raph/wwdoc :Number[1] " />
        1139        <xsl: with-param  name="Par amPosition " select=" 0" />
        1140       </xsl: call-templ ate>
        1141      </xsl:o therwise>
        1142     </xsl:ch oose>
        1143    </xsl:tem plate>
        1144  
        1145  
        1146    <xsl:temp late name= "Paragraph TextRuns">
        1147     <xsl:par am name="P aramSplits " />
        1148     <xsl:par am name="P aramCargo"  />
        1149     <xsl:par am name="P aramLinks"  />
        1150     <xsl:par am name="P aramSplit"  />
        1151     <xsl:par am name="P aramPreser veEmpty" / >
        1152     <xsl:par am name="P aramUseCha racterStyl es" />
        1153     <xsl:par am name="P aramParagr aph" />
        1154  
        1155     <!-- Pre vent white space issu es with pr eformatted  text bloc ks -->
        1156     <!--                                                               -->
        1157     <wwexsld oc:NoBreak  />
        1158  
        1159     <!-- Non -empty tex t runs -->
        1160     <!--                       -->
        1161     <xsl:var iable name ="VarTextR uns" selec t="$ParamP aragraph/w wdoc:TextR un[count(c hild::wwdo c:Text[1]  | child::w wdoc:Frame [1] | chil d::wwdoc:N ote[1] | c hild::wwdo c:LineBrea k[1]) &gt;  0]" />
        1162  
        1163     <!-- Che ck for emp ty paragra phs -->
        1164     <!--                               -->
        1165     <xsl:cho ose>
        1166      <xsl:wh en test="c ount($VarT extRuns[1] ) = 1">
        1167       <!-- P aragraph h as content  -->
        1168       <!--                          -->
        1169       <xsl:f or-each se lect="$Var TextRuns">
        1170        <xsl: variable n ame="VarTe xtRun" sel ect="." />
        1171  
        1172        <xsl: call-templ ate name=" TextRun">
        1173         <xsl :with-para m name="Pa ramSplits"  select="$ ParamSplit s" />
        1174         <xsl :with-para m name="Pa ramCargo"  select="$P aramCargo"  />
        1175         <xsl :with-para m name="Pa ramLinks"  select="$P aramLinks"  />
        1176         <xsl :with-para m name="Pa ramSplit"  select="$P aramSplit"  />
        1177         <xsl :with-para m name="Pa ramParagra phID" sele ct="$Param Paragraph/ @id" />
        1178         <xsl :with-para m name="Pa ramUseChar acterStyle s" select= "$ParamUse CharacterS tyles" />
        1179         <xsl :with-para m name="Pa ramTextRun " select=" $VarTextRu n" />
        1180         <xsl :with-para m name="Pa ramPositio n" select= "position( )" />
        1181        </xsl :call-temp late>
        1182       </xsl: for-each>
        1183      </xsl:w hen>
        1184  
        1185      <xsl:ot herwise>
        1186       <!-- E mpty parag raph! -->
        1187       <!--                    -->
        1188       <xsl:i f test="$P aramPreser veEmpty">
        1189        <!--  Force on o ne line -- >
        1190        <!--                     -- >
        1191        <wwex sldoc:NoBr eak />
        1192  
        1193        <html :span id=" ww{$ParamP aragraph/@ id}">&#x00 A0;</html: span>
        1194  
        1195        <!--  Force on o ne line -- >
        1196        <!--                     -- >
        1197        <wwex sldoc:NoBr eak />
        1198       </xsl: if>
        1199      </xsl:o therwise>
        1200     </xsl:ch oose>
        1201    </xsl:tem plate>
        1202  
        1203  
        1204    <xsl:temp late name= "LinkInfo" >
        1205     <xsl:par am name="P aramSplits " />
        1206     <xsl:par am name="P aramLinks"  />
        1207     <xsl:par am name="P aramSplit"  />
        1208     <xsl:par am name="P aramDocume ntLink" />
        1209  
        1210     <xsl:ele ment name= "LinkInfo"  namespace ="urn:WebW orks-Engin e-Links-Sc hema">
        1211      <xsl:if  test="cou nt($ParamD ocumentLin k) &gt; 0" >
        1212       <!-- R esolve lin k -->
        1213       <!--                -->
        1214       <xsl:v ariable na me="VarRes olvedLinkI nfoAsXML">
        1215        <xsl: call-templ ate name=" Links-Reso lve">
        1216         <xsl :with-para m name="Pa ramAllowBa ggage" sel ect="$Para meterAllow Baggage" / >
        1217         <xsl :with-para m name="Pa ramAllowGr oupToGroup " select=" $Parameter AllowGroup ToGroup" / >
        1218         <xsl :with-para m name="Pa ramAllowUR L" select= "$Paramete rAllowURL"  />
        1219         <xsl :with-para m name="Pa ramBaggage SplitFileT ype" selec t="$Parame terBaggage SplitFileT ype" />
        1220         <xsl :with-para m name="Pa ramProject " select=" $GlobalPro ject" />
        1221         <xsl :with-para m name="Pa ramLinks"  select="$P aramLinks"  />
        1222         <xsl :with-para m name="Pa ramSplits"  select="$ ParamSplit s" />
        1223         <xsl :with-para m name="Pa ramSplitGr oupID" sel ect="$Para mSplit/@gr oupID" />
        1224         <xsl :with-para m name="Pa ramSplitDo cumentID"  select="$P aramSplit/ @documentI D" />
        1225         <xsl :with-para m name="Pa ramDocumen tLink" sel ect="$Para mDocumentL ink" />
        1226        </xsl :call-temp late>
        1227       </xsl: variable>
        1228       <xsl:v ariable na me="VarRes olvedLinkI nfo" selec t="msxsl:n ode-set($V arResolved LinkInfoAs XML)/wwlin ks:Resolve dLink" />
        1229  
        1230       <!-- @ title -->
        1231       <!--         -->
        1232       <xsl:i f test="st ring-lengt h($VarReso lvedLinkIn fo/@title)  &gt; 0">
        1233        <xsl: attribute  name="titl e">
        1234         <xsl :value-of  select="$V arResolved LinkInfo/@ title" />
        1235        </xsl :attribute >
        1236       </xsl: if>
        1237  
        1238       <xsl:c hoose>
        1239        <!--  Baggage -- >
        1240        <!--          -- >
        1241        <xsl: when test= "$VarResol vedLinkInf o/@type =  'baggage'" >
        1242         <xsl :attribute  name="hre f">
        1243          <xs l:call-tem plate name ="MediaWik i-ImageRoo tedLink">
        1244           <x sl:with-pa ram name=" ParamLinkP ath" selec t="$VarRes olvedLinkI nfo/@path"  />
        1245           <x sl:with-pa ram name=" ParamTarge tOutputDir ectoryPath " select=" $ParamSpli t/@target- output-dir ectory-pat h" />
        1246          </x sl:call-te mplate>
        1247         </xs l:attribut e>
        1248        </xsl :when>
        1249  
        1250        <!--  Document - ->
        1251        <!--           - ->
        1252        <xsl: when test= "($VarReso lvedLinkIn fo/@type =  'document ') or ($Va rResolvedL inkInfo/@t ype = 'gro up') or ($ VarResolve dLinkInfo/ @type = 'p roject')">
        1253         <xsl :attribute  name="hre f">
        1254          <xs l:call-tem plate name ="MediaWik i-ProjectR ootedLink" >
        1255           <x sl:with-pa ram name=" ParamLinkP ath" selec t="$VarRes olvedLinkI nfo/@path"  />
        1256           <x sl:with-pa ram name=" ParamTarge tOutputDir ectoryPath " select=" $ParamSpli t/@target- output-dir ectory-pat h" />
        1257          </x sl:call-te mplate>
        1258         </xs l:attribut e>
        1259        </xsl :when>
        1260  
        1261        <!--  URL -->
        1262        <!--      -->
        1263        <xsl: when test= "$VarResol vedLinkInf o/@type =  'url'">
        1264         <xsl :attribute  name="hre f">
        1265          <xs l:value-of  select="$ VarResolve dLinkInfo/ @url" />
        1266         </xs l:attribut e>
        1267  
        1268         <!--  External  URL Target  -->
        1269         <!--                        -->
        1270         <xsl :if test=" not(wwuri: IsFile($Va rResolvedL inkInfo/@u rl))">
        1271          <xs l:variable  name="Var Target" se lect="wwpr ojext:GetF ormatSetti ng('extern al-url-tar get')" />
        1272  
        1273          <xs l:if test= "(string-l ength($Var Target) &g t; 0) and  ($VarTarge t != 'none ')">
        1274           <x sl:attribu te name="t arget">
        1275            < xsl:value- of select= "$VarTarge t" />
        1276           </ xsl:attrib ute>
        1277          </x sl:if>
        1278         </xs l:if>
        1279        </xsl :when>
        1280       </xsl: choose>
        1281      </xsl:i f>
        1282     </xsl:el ement>
        1283    </xsl:tem plate>
        1284  
        1285  
        1286    <xsl:temp late name= "TextRun">
        1287     <xsl:par am name="P aramSplits " />
        1288     <xsl:par am name="P aramCargo"  />
        1289     <xsl:par am name="P aramLinks"  />
        1290     <xsl:par am name="P aramSplit"  />
        1291     <xsl:par am name="P aramParagr aphID" />
        1292     <xsl:par am name="P aramUseCha racterStyl es" />
        1293     <xsl:par am name="P aramTextRu n" />
        1294     <xsl:par am name="P aramPositi on" />
        1295  
        1296     <!-- Get  rule -->
        1297     <!--           -->
        1298     <xsl:var iable name ="VarRule"  select="w wprojext:G etRule('Ch aracter',  $ParamText Run/@style name)" />
        1299  
        1300     <!-- Gen erate outp ut? -->
        1301     <!---                   -->
        1302     <xsl:var iable name ="VarGener ateOutputO ption" sel ect="$VarR ule/wwproj ect:Option s/wwprojec t:Option[@ Name = 'ge nerate-out put']/@Val ue" />
        1303     <xsl:var iable name ="VarGener ateOutput"  select="( string-len gth($VarGe nerateOutp utOption)  = 0) or ($ VarGenerat eOutputOpt ion != 'fa lse')" />
        1304     <xsl:if  test="$Var GenerateOu tput">
        1305      <!-- Pa ss-through ? -->
        1306      <!--                 -->
        1307      <xsl:va riable nam e="VarPass Through">
        1308       <xsl:c all-templa te name="C onditions- PassThroug h">
        1309        <xsl: with-param  name="Par amConditio ns" select ="$ParamTe xtRun/wwdo c:Conditio ns" />
        1310       </xsl: call-templ ate>
        1311      </xsl:v ariable>
        1312  
        1313      <xsl:ch oose>
        1314       <xsl:w hen test=" $VarPassTh rough = 't rue'">
        1315        <xsl: call-templ ate name=" TextRun-Pa ssThrough" >
        1316         <xsl :with-para m name="Pa ramTextRun " select=" $ParamText Run" />
        1317        </xsl :call-temp late>
        1318       </xsl: when>
        1319  
        1320       <xsl:o therwise>
        1321        <xsl: call-templ ate name=" TextRun-No rmal">
        1322         <xsl :with-para m name="Pa ramSplits"  select="$ ParamSplit s" />
        1323         <xsl :with-para m name="Pa ramCargo"  select="$P aramCargo"  />
        1324         <xsl :with-para m name="Pa ramLinks"  select="$P aramLinks"  />
        1325         <xsl :with-para m name="Pa ramSplit"  select="$P aramSplit"  />
        1326         <xsl :with-para m name="Pa ramParagra phID" sele ct="$Param ParagraphI D" />
        1327         <xsl :with-para m name="Pa ramUseChar acterStyle s" select= "$ParamUse CharacterS tyles" />
        1328         <xsl :with-para m name="Pa ramTextRun " select=" $ParamText Run" />
        1329         <xsl :with-para m name="Pa ramRule" s elect="$Va rRule" />
        1330         <xsl :with-para m name="Pa ramPositio n" select= "$ParamPos ition" />
        1331        </xsl :call-temp late>
        1332       </xsl: otherwise>
        1333      </xsl:c hoose>
        1334     </xsl:if >
        1335    </xsl:tem plate>
        1336  
        1337  
        1338    <xsl:temp late name= "TextRun-P assThrough ">
        1339     <xsl:par am name="P aramTextRu n" />
        1340  
        1341     <wwexsld oc:Text di sable-outp ut-escapin g="yes">
        1342      <xsl:fo r-each sel ect="$Para mTextRun/w wdoc:Text" >
        1343       <xsl:v ariable na me="VarTex t" select= "." />
        1344  
        1345       <xsl:v alue-of se lect="$Var Text/@valu e" />
        1346      </xsl:f or-each>
        1347     </wwexsl doc:Text>
        1348    </xsl:tem plate>
        1349  
        1350  
        1351    <xsl:temp late name= "TextRun-N ormal">
        1352     <xsl:par am name="P aramSplits " />
        1353     <xsl:par am name="P aramCargo"  />
        1354     <xsl:par am name="P aramLinks"  />
        1355     <xsl:par am name="P aramSplit"  />
        1356     <xsl:par am name="P aramParagr aphID" />
        1357     <xsl:par am name="P aramUseCha racterStyl es" />
        1358     <xsl:par am name="P aramTextRu n" />
        1359     <xsl:par am name="P aramRule"  />
        1360     <xsl:par am name="P aramPositi on" />
        1361  
        1362     <xsl:cho ose>
        1363      <xsl:wh en test="( $ParamUseC haracterSt yles) and  ((string-l ength($Par amTextRun/ @stylename ) &gt; 0)  or (count( $ParamText Run/wwdoc: Style) = 1 ))">
        1364       <!-- R esolve pro ject prope rties -->
        1365       <!--                               -->
        1366       <xsl:v ariable na me="VarRes olvedConte xtProperti esAsXML">
        1367        <xsl: call-templ ate name=" Properties -ResolveCo ntextRule" >
        1368         <xsl :with-para m name="Pa ramDocumen tContext"  select="$P aramTextRu n" />
        1369         <xsl :with-para m name="Pa ramPropert ies" selec t="$ParamR ule/wwproj ect:Proper ties/wwpro ject:Prope rty" />
        1370         <xsl :with-para m name="Pa ramStyleNa me" select ="$ParamTe xtRun/@sty lename" />
        1371         <xsl :with-para m name="Pa ramStyleTy pe" select ="'Charact er'" />
        1372         <xsl :with-para m name="Pa ramContext Style" sel ect="$Para mTextRun/w wdoc:Style " />
        1373        </xsl :call-temp late>
        1374       </xsl: variable>
        1375       <xsl:v ariable na me="VarRes olvedConte xtProperti es" select ="msxsl:no de-set($Va rResolvedC ontextProp ertiesAsXM L)/wwproje ct:Propert y" />
        1376  
        1377       <!-- C SS propert ies -->
        1378       <!--                  -->
        1379       <xsl:v ariable na me="VarCSS ContextPro pertiesAsX ML">
        1380        <xsl: call-templ ate name=" CSS-Transl ateProject Properties ">
        1381         <xsl :with-para m name="Pa ramPropert ies" selec t="$VarRes olvedConte xtProperti es" />
        1382         <xsl :with-para m name="Pa ramFromAbs oluteURI"  select="$P aramSplit/ @path" />
        1383         <xsl :with-para m name="Pa ramSplits"  select="$ ParamSplit s" />
        1384        </xsl :call-temp late>
        1385       </xsl: variable>
        1386       <xsl:v ariable na me="VarCSS ContextPro perties" s elect="msx sl:node-se t($VarCSSC ontextProp ertiesAsXM L)/wwproje ct:Propert y" />
        1387  
        1388       <!-- A bbreviatio n -->
        1389       <!--                -->
        1390       <xsl:v ariable na me="VarAbb reviationT itle">
        1391        <xsl: call-templ ate name=" Behaviors- Options-Op tionMarker ">
        1392         <xsl :with-para m name="Pa ramContain er" select ="$ParamTe xtRun" />
        1393         <xsl :with-para m name="Pa ramCargo"  select="$P aramCargo"  />
        1394         <xsl :with-para m name="Pa ramParagra phID" sele ct="$Param ParagraphI D" />
        1395         <xsl :with-para m name="Pa ramRule" s elect="$Pa ramRule" / >
        1396         <xsl :with-para m name="Pa ramOption"  select="' abbreviati on'" />
        1397        </xsl :call-temp late>
        1398       </xsl: variable>
        1399  
        1400       <!-- A cronym -->
        1401       <!--          -->
        1402       <xsl:v ariable na me="VarAcr onymTitle" >
        1403        <xsl: call-templ ate name=" Behaviors- Options-Op tionMarker ">
        1404         <xsl :with-para m name="Pa ramContain er" select ="$ParamTe xtRun" />
        1405         <xsl :with-para m name="Pa ramCargo"  select="$P aramCargo"  />
        1406         <xsl :with-para m name="Pa ramParagra phID" sele ct="$Param ParagraphI D" />
        1407         <xsl :with-para m name="Pa ramRule" s elect="$Pa ramRule" / >
        1408         <xsl :with-para m name="Pa ramOption"  select="' acronym'"  />
        1409        </xsl :call-temp late>
        1410       </xsl: variable>
        1411  
        1412       <!-- C itation -- >
        1413       <!--           -- >
        1414       <xsl:v ariable na me="VarCit ation">
        1415        <xsl: call-templ ate name=" Behaviors- Options-Op tionMarker ">
        1416         <xsl :with-para m name="Pa ramContain er" select ="$ParamTe xtRun" />
        1417         <xsl :with-para m name="Pa ramCargo"  select="$P aramCargo"  />
        1418         <xsl :with-para m name="Pa ramParagra phID" sele ct="$Param ParagraphI D" />
        1419         <xsl :with-para m name="Pa ramRule" s elect="$Pa ramRule" / >
        1420         <xsl :with-para m name="Pa ramOption"  select="' citation'"  />
        1421        </xsl :call-temp late>
        1422       </xsl: variable>
        1423  
        1424       <!-- T ag -->
        1425       <!--      -->
        1426       <xsl:v ariable na me="VarTag Property"  select="$P aramRule/w wproject:P roperties/ wwproject: Property[@ Name = 'ta g']/@Value " />
        1427       <xsl:v ariable na me="VarTag ">
        1428        <xsl: choose>
        1429         <xsl :when test ="string-l ength($Var Abbreviati onTitle) & gt; 0">
        1430          <xs l:value-of  select="' abbr'" />
        1431         </xs l:when>
        1432         <xsl :when test ="string-l ength($Var AcronymTit le) &gt; 0 ">
        1433          <xs l:value-of  select="' acronym'"  />
        1434         </xs l:when>
        1435         <xsl :when test ="string-l ength($Var Citation)  &gt; 0">
        1436          <xs l:value-of  select="' q'" />
        1437         </xs l:when>
        1438  
        1439         <xsl :otherwise >
        1440          <xs l:choose>
        1441           <x sl:when te st="string -length($V arTagPrope rty) &gt;  0">
        1442            < xsl:value- of select= "$VarTagPr operty" />
        1443           </ xsl:when>
        1444  
        1445           <x sl:otherwi se>
        1446            < xsl:value- of select= "'span'" / >
        1447           </ xsl:otherw ise>
        1448          </x sl:choose>
        1449         </xs l:otherwis e>
        1450        </xsl :choose>
        1451       </xsl: variable>
        1452  
        1453       <!-- S tyle attri bute -->
        1454       <!--                   -->
        1455       <xsl:v ariable na me="VarSty leAttribut e">
        1456        <xsl: call-templ ate name=" CSS-Inline Properties ">
        1457         <xsl :with-para m name="Pa ramPropert ies" selec t="$VarCSS ContextPro perties" / >
        1458        </xsl :call-temp late>
        1459       </xsl: variable>
        1460  
        1461       <xsl:c hoose>
        1462        <xsl: when test= "(string-l ength($Par amTextRun/ @stylename ) &gt; 0)  or (string -length($V arStyleAtt ribute) &g t; 0)">
        1463         <!--  Character  Style -->
        1464         <!--                   -->
        1465         <xsl :element n ame="{$Var Tag}" name space="{$G lobalDefau ltNamespac e}">
        1466          <xs l:if test= "string-le ngth($VarS tyleAttrib ute) &gt;  0">
        1467           <x sl:attribu te name="s tyle">
        1468            < xsl:value- of select= "$VarStyle Attribute"  />
        1469           </ xsl:attrib ute>
        1470          </x sl:if>
        1471  
        1472          <!- - Abbrevia tion title  -->
        1473          <!- -                      -->
        1474          <xs l:if test= "string-le ngth($VarA bbreviatio nTitle) &g t; 0">
        1475           <x sl:attribu te name="t itle">
        1476            < xsl:value- of select= "$VarAbbre viationTit le" />
        1477           </ xsl:attrib ute>
        1478          </x sl:if>
        1479  
        1480          <!- - Acronym  title -->
        1481          <!- -                      -->
        1482          <xs l:if test= "string-le ngth($VarA cronymTitl e) &gt; 0" >
        1483           <x sl:attribu te name="t itle">
        1484            < xsl:value- of select= "$VarAcron ymTitle" / >
        1485           </ xsl:attrib ute>
        1486          </x sl:if>
        1487  
        1488          <!- - Cite att ribute -->
        1489          <!- -                 -->
        1490          <xs l:if test= "string-le ngth($VarC itation) & gt; 0">
        1491           <x sl:attribu te name="c ite">
        1492            < xsl:value- of select= "$VarCitat ion" />
        1493           </ xsl:attrib ute>
        1494          </x sl:if>
        1495  
        1496          <xs l:call-tem plate name ="TextRunC hildren">
        1497           <x sl:with-pa ram name=" ParamSplit s" select= "$ParamSpl its" />
        1498           <x sl:with-pa ram name=" ParamCargo " select=" $ParamCarg o" />
        1499           <x sl:with-pa ram name=" ParamLinks " select=" $ParamLink s" />
        1500           <x sl:with-pa ram name=" ParamSplit " select=" $ParamSpli t" />
        1501           <x sl:with-pa ram name=" ParamParag raphID" se lect="$Par amParagrap hID" />
        1502           <x sl:with-pa ram name=" ParamTextR un" select ="$ParamTe xtRun" />
        1503           <x sl:with-pa ram name=" ParamPosit ion" selec t="$ParamP osition" / >
        1504          </x sl:call-te mplate>
        1505         </xs l:element>
        1506        </xsl :when>
        1507  
        1508        <xsl: otherwise>
        1509         <!--  No style  -->
        1510         <!--            -->
        1511         <xsl :call-temp late name= "TextRunCh ildren">
        1512          <xs l:with-par am name="P aramSplits " select=" $ParamSpli ts" />
        1513          <xs l:with-par am name="P aramCargo"  select="$ ParamCargo " />
        1514          <xs l:with-par am name="P aramLinks"  select="$ ParamLinks " />
        1515          <xs l:with-par am name="P aramSplit"  select="$ ParamSplit " />
        1516          <xs l:with-par am name="P aramParagr aphID" sel ect="$Para mParagraph ID" />
        1517          <xs l:with-par am name="P aramTextRu n" select= "$ParamTex tRun" />
        1518          <xs l:with-par am name="P aramPositi on" select ="$ParamPo sition" />
        1519         </xs l:call-tem plate>
        1520        </xsl :otherwise >
        1521       </xsl: choose>
        1522      </xsl:w hen>
        1523  
        1524      <xsl:ot herwise>
        1525       <!-- N o style -- >
        1526       <!--           -- >
        1527       <xsl:c all-templa te name="T extRunChil dren">
        1528        <xsl: with-param  name="Par amSplits"  select="$P aramSplits " />
        1529        <xsl: with-param  name="Par amCargo" s elect="$Pa ramCargo"  />
        1530        <xsl: with-param  name="Par amLinks" s elect="$Pa ramLinks"  />
        1531        <xsl: with-param  name="Par amSplit" s elect="$Pa ramSplit"  />
        1532        <xsl: with-param  name="Par amParagrap hID" selec t="$ParamP aragraphID " />
        1533        <xsl: with-param  name="Par amTextRun"  select="$ ParamTextR un" />
        1534        <xsl: with-param  name="Par amPosition " select=" $ParamPosi tion" />
        1535       </xsl: call-templ ate>
        1536      </xsl:o therwise>
        1537     </xsl:ch oose>
        1538    </xsl:tem plate>
        1539  
        1540  
        1541    <xsl:temp late name= "TextRunCh ildren">
        1542     <xsl:par am name="P aramSplits " />
        1543     <xsl:par am name="P aramCargo"  />
        1544     <xsl:par am name="P aramLinks"  />
        1545     <xsl:par am name="P aramSplit"  />
        1546     <xsl:par am name="P aramParagr aphID" />
        1547     <xsl:par am name="P aramTextRu n" />
        1548     <xsl:par am name="P aramPositi on" />
        1549  
        1550     <!-- For ce anchor  on same li ne as cont aining spa n -->
        1551     <!--                                                   -->
        1552     <wwexsld oc:NoBreak  />
        1553  
        1554     <!-- Lin k? -->
        1555     <!--        -->
        1556     <xsl:var iable name ="VarLinkI nfoAsXML">
        1557      <xsl:ca ll-templat e name="Li nkInfo">
        1558       <xsl:w ith-param  name="Para mSplits" s elect="$Pa ramSplits"  />
        1559       <xsl:w ith-param  name="Para mLinks" se lect="$Par amLinks" / >
        1560       <xsl:w ith-param  name="Para mSplit" se lect="$Par amSplit" / >
        1561       <xsl:w ith-param  name="Para mDocumentL ink" selec t="$ParamT extRun/wwd oc:Link" / >
        1562      </xsl:c all-templa te>
        1563     </xsl:va riable>
        1564     <xsl:var iable name ="VarLinkI nfo" selec t="msxsl:n ode-set($V arLinkInfo AsXML)/wwl inks:LinkI nfo" />
        1565  
        1566     <!-- Han dle links  and first  textrun an chor -->
        1567     <!--                                           -->
        1568     <xsl:cho ose>
        1569      <xsl:wh en test="s tring-leng th($VarLin kInfo/@hre f) &gt; 0" >
        1570       <html: span id="w w{$ParamPa ragraphID} ">
        1571        <xsl: text>[[</x sl:text>
        1572        <xsl: value-of s elect="$Va rLinkInfo/ @href" />
        1573        <xsl: text>|</xs l:text>
        1574        <xsl: apply-temp lates sele ct="$Param TextRun/*"  mode="wwm ode:textru n">
        1575         <xsl :with-para m name="Pa ramSplits"  select="$ ParamSplit s" />
        1576         <xsl :with-para m name="Pa ramCargo"  select="$P aramCargo"  />
        1577         <xsl :with-para m name="Pa ramLinks"  select="$P aramLinks"  />
        1578         <xsl :with-para m name="Pa ramSplit"  select="$P aramSplit"  />
        1579        </xsl :apply-tem plates>
        1580        <xsl: text>]]</x sl:text>
        1581       </html :span>
        1582      </xsl:w hen>
        1583  
        1584      <xsl:wh en test="$ ParamPosit ion = 1">
        1585       <html: span id="w w{$ParamPa ragraphID} ">
        1586        <xsl: apply-temp lates sele ct="$Param TextRun/*"  mode="wwm ode:textru n">
        1587         <xsl :with-para m name="Pa ramSplits"  select="$ ParamSplit s" />
        1588         <xsl :with-para m name="Pa ramCargo"  select="$P aramCargo"  />
        1589         <xsl :with-para m name="Pa ramLinks"  select="$P aramLinks"  />
        1590         <xsl :with-para m name="Pa ramSplit"  select="$P aramSplit"  />
        1591        </xsl :apply-tem plates>
        1592       </html :span>
        1593      </xsl:w hen>
        1594  
        1595      <xsl:ot herwise>
        1596       <xsl:a pply-templ ates selec t="$ParamT extRun/*"  mode="wwmo de:textrun ">
        1597        <xsl: with-param  name="Par amSplits"  select="$P aramSplits " />
        1598        <xsl: with-param  name="Par amCargo" s elect="$Pa ramCargo"  />
        1599        <xsl: with-param  name="Par amLinks" s elect="$Pa ramLinks"  />
        1600        <xsl: with-param  name="Par amSplit" s elect="$Pa ramSplit"  />
        1601       </xsl: apply-temp lates>
        1602      </xsl:o therwise>
        1603     </xsl:ch oose>
        1604  
        1605     <!-- For ce anchor  on same li ne as cont aining spa n -->
        1606     <!--                                                   -->
        1607     <wwexsld oc:NoBreak  />
        1608    </xsl:tem plate>
        1609  
        1610  
        1611    <xsl:temp late match ="wwdoc:No te" mode=" wwmode:tex trun">
        1612     <xsl:par am name="P aramSplits " />
        1613     <xsl:par am name="P aramCargo"  />
        1614     <xsl:par am name="P aramLinks"  />
        1615     <xsl:par am name="P aramSplit"  />
        1616  
        1617     <xsl:var iable name ="VarConte xt" select ="." />
        1618  
        1619     <!-- Imp lement not es -->
        1620     <!--                   -->
        1621     <xsl:for -each sele ct="$Param Cargo/wwno tes:NoteNu mbering[1] ">
        1622      <xsl:va riable nam e="VarNote Number" se lect="key( 'wwnotes-n otes-by-id ', $VarCon text/@id)/ @number" / >
        1623  
        1624      <!-- Fo rce sup on  same line  as contai ning span  -->
        1625      <!--                                                -->
        1626      <wwexsl doc:NoBrea k />
        1627  
        1628      <html:s up>
        1629       <!-- F orce ancho r on same  line as co ntaining s up -->
        1630       <!--                                                  -->
        1631       <wwexs ldoc:NoBre ak />
        1632  
        1633       <html: span id="w wfootnote_ inline_{$V arContext/ @id}">
        1634        <xsl: text>[[</x sl:text>
        1635        <xsl: text>#ww</ xsl:text>
        1636        <xsl: value-of s elect="$Va rContext/@ id" />
        1637        <xsl: text>|</xs l:text>
        1638        <xsl: value-of s elect="$Va rNoteNumbe r" />
        1639        <xsl: text>]]</x sl:text>
        1640       </html :span>
        1641  
        1642       <!-- F orce ancho r on same  line as co ntaining s up -->
        1643       <!--                                                  -->
        1644       <wwexs ldoc:NoBre ak />
        1645      </html: sup>
        1646  
        1647      <!-- Fo rce anchor  on same l ine as con taining su p -->
        1648      <!--                                                  -->
        1649      <wwexsl doc:NoBrea k />
        1650     </xsl:fo r-each>
        1651    </xsl:tem plate>
        1652  
        1653  
        1654    <xsl:temp late match ="wwdoc:Li neBreak" m ode="wwmod e:textrun" >
        1655     <xsl:par am name="P aramSplits " />
        1656     <xsl:par am name="P aramCargo"  />
        1657     <xsl:par am name="P aramLinks"  />
        1658     <xsl:par am name="P aramSplit"  />
        1659  
        1660     <!-- Not  available  for Media Wiki -->
        1661     <!--                                -->
        1662    </xsl:tem plate>
        1663  
        1664  
        1665    <xsl:temp late match ="wwdoc:In dexMarker"  mode="wwm ode:textru n">
        1666     <xsl:par am name="P aramSplits " />
        1667     <xsl:par am name="P aramCargo"  />
        1668     <xsl:par am name="P aramLinks"  />
        1669     <xsl:par am name="P aramSplit"  />
        1670  
        1671     <!-- Ign ore index  markers -- >
        1672     <!--                        -- >
        1673    </xsl:tem plate>
        1674  
        1675  
        1676    <xsl:temp late match ="wwdoc:Ma rker" mode ="wwmode:t extrun">
        1677     <xsl:par am name="P aramSplits " />
        1678     <xsl:par am name="P aramCargo"  />
        1679     <xsl:par am name="P aramLinks"  />
        1680     <xsl:par am name="P aramSplit"  />
        1681  
        1682     <!-- Ign ore marker s -->
        1683     <!--                  -->
        1684    </xsl:tem plate>
        1685  
        1686  
        1687    <xsl:temp late match ="wwdoc:Te xt" mode=" wwmode:tex trun">
        1688     <xsl:par am name="P aramSplits " />
        1689     <xsl:par am name="P aramCargo"  />
        1690     <xsl:par am name="P aramLinks"  />
        1691     <xsl:par am name="P aramSplit"  />
        1692  
        1693     <xsl:val ue-of sele ct="@value " />
        1694    </xsl:tem plate>
        1695  
        1696  
        1697    <xsl:temp late match ="wwdoc:Ta ble" mode= "wwmode:co ntent">
        1698     <xsl:par am name="P aramSplits " />
        1699     <xsl:par am name="P aramCargo"  />
        1700     <xsl:par am name="P aramLinks"  />
        1701     <xsl:par am name="P aramTOCDat a" />
        1702     <xsl:par am name="P aramSplit"  />
        1703  
        1704     <xsl:var iable name ="VarTable " select=" ." />
        1705  
        1706     <!-- Abo rted? -->
        1707     <!--           -->
        1708     <xsl:if  test="not( wwprogress :Abort())" >
        1709      <xsl:va riable nam e="VarOver rideRule"  select="ww projext:Ge tOverrideR ule('Table ', $VarTab le/@stylen ame, $Para mSplit/@do cumentID,  $VarTable/ @id)" />
        1710      <xsl:va riable nam e="VarGene rateOutput Option" se lect="$Var OverrideRu le/wwproje ct:Options /wwproject :Option[@N ame = 'gen erate-outp ut']/@Valu e" />
        1711      <xsl:va riable nam e="VarGene rateOutput " select=" (string-le ngth($VarG enerateOut putOption)  = 0) or ( $VarGenera teOutputOp tion != 'f alse')" />
        1712      <xsl:if  test="$Va rGenerateO utput">
        1713  
        1714       <!-- G et behavio r -->
        1715       <!--                -->
        1716       <xsl:f or-each se lect="$Par amCargo/ww behaviors: Behaviors[ 1]">
        1717        <xsl: variable n ame="VarTa bleBehavio r" select= "key('wwbe haviors-ta bles-by-id ', $VarTab le/@id)[1] " />
        1718  
        1719        <!--  Table -->
        1720        <!--        -->
        1721        <xsl: call-templ ate name=" Table">
        1722         <xsl :with-para m name="Pa ramSplits"  select="$ ParamSplit s" />
        1723         <xsl :with-para m name="Pa ramCargo"  select="$P aramCargo"  />
        1724         <xsl :with-para m name="Pa ramLinks"  select="$P aramLinks"  />
        1725         <xsl :with-para m name="Pa ramTOCData " select=" $ParamTOCD ata" />
        1726         <xsl :with-para m name="Pa ramSplit"  select="$P aramSplit"  />
        1727         <xsl :with-para m name="Pa ramTable"  select="$V arTable" / >
        1728         <xsl :with-para m name="Pa ramStyleNa me" select ="$VarTabl e/@stylena me" />
        1729         <xsl :with-para m name="Pa ramTableBe havior" se lect="$Var TableBehav ior" />
        1730        </xsl :call-temp late>
        1731       </xsl: for-each>
        1732      </xsl:i f>
        1733     </xsl:if >
        1734    </xsl:tem plate>
        1735  
        1736  
        1737    <xsl:temp late name= "Table-Att ribute-In- Pixels">
        1738     <xsl:par am name="P aramValue"  />
        1739  
        1740     <xsl:cho ose>
        1741      <xsl:wh en test="s tring-leng th($ParamV alue) &gt;  0">
        1742       <!-- N ormalize v alue for H TML attrib ute-->
        1743       <!--                                       -->
        1744       <xsl:v ariable na me="VarVal ueToEmit">
        1745        <xsl: variable n ame="VarUn itsSuffix"  select="w wunits:Uni tsSuffix($ ParamValue )" />
        1746  
        1747        <xsl: choose>
        1748         <xsl :when test ="string-l ength($Var UnitsSuffi x) &gt; 0" >
        1749          <xs l:variable  name="Var NumPrefix"  select="w wunits:Num ericPrefix ($ParamVal ue)" />
        1750  
        1751          <xs l:value-of  select="w wunits:Con vert($VarN umPrefix,  $VarUnitsS uffix, 'px ')" />
        1752         </xs l:when>
        1753  
        1754         <xsl :otherwise >
        1755          <xs l:value-of  select="$ ParamValue " />
        1756         </xs l:otherwis e>
        1757        </xsl :choose>
        1758       </xsl: variable>
        1759  
        1760       <xsl:v alue-of se lect="$Var ValueToEmi t" />
        1761      </xsl:w hen>
        1762  
        1763      <xsl:ot herwise>
        1764       <xsl:v alue-of se lect="''"  />
        1765      </xsl:o therwise>
        1766     </xsl:ch oose>
        1767    </xsl:tem plate>
        1768  
        1769  
        1770    <xsl:temp late name= "Table">
        1771     <xsl:par am name="P aramSplits " />
        1772     <xsl:par am name="P aramCargo"  />
        1773     <xsl:par am name="P aramLinks"  />
        1774     <xsl:par am name="P aramTOCDat a" />
        1775     <xsl:par am name="P aramSplit"  />
        1776     <xsl:par am name="P aramTable"  />
        1777     <xsl:par am name="P aramStyleN ame" />
        1778     <xsl:par am name="P aramTableB ehavior" / >
        1779  
        1780     <!-- Not es -->
        1781     <!--        -->
        1782     <xsl:var iable name ="VarNotes " select=" $ParamTabl e//wwdoc:N ote[not(an cestor::ww doc:Frame) ]" />
        1783  
        1784     <!-- Not e numberin g -->
        1785     <!--                  -->
        1786     <xsl:var iable name ="VarNoteN umberingAs XML">
        1787      <xsl:ca ll-templat e name="No tes-Number ">
        1788       <xsl:w ith-param  name="Para mNotes" se lect="$Var Notes" />
        1789      </xsl:c all-templa te>
        1790     </xsl:va riable>
        1791     <xsl:var iable name ="VarNoteN umbering"  select="ms xsl:node-s et($VarNot eNumbering AsXML)" />
        1792  
        1793     <!-- Car go for rec ursion -->
        1794     <!--                       -->
        1795     <xsl:var iable name ="VarCargo " select=" $ParamCarg o/*[local- name() !=  'NoteNumbe ring']/..  | $VarNote Numbering"  />
        1796  
        1797     <xsl:var iable name ="VarConte xtRule" se lect="wwpr ojext:GetC ontextRule ('Table',  $ParamTabl e/@stylena me, $Param Split/@doc umentID, $ ParamTable /@id)" />
        1798  
        1799     <!-- Res olve proje ct propert ies -->
        1800     <!--                               -->
        1801     <xsl:var iable name ="VarResol vedContext Properties AsXML">
        1802      <xsl:ca ll-templat e name="Pr operties-R esolveCont extRule">
        1803       <xsl:w ith-param  name="Para mDocumentC ontext" se lect="$Par amTable" / >
        1804       <xsl:w ith-param  name="Para mPropertie s" select= "$VarConte xtRule/wwp roject:Pro perties/ww project:Pr operty" />
        1805       <xsl:w ith-param  name="Para mStyleName " select=" $ParamTabl e/@stylena me" />
        1806       <xsl:w ith-param  name="Para mStyleType " select=" 'Table'" / >
        1807       <xsl:w ith-param  name="Para mContextSt yle" selec t="$ParamT able/wwdoc :Style" />
        1808      </xsl:c all-templa te>
        1809     </xsl:va riable>
        1810     <xsl:var iable name ="VarResol vedContext Properties " select=" msxsl:node -set($VarR esolvedCon textProper tiesAsXML) /wwproject :Property"  />
        1811  
        1812     <!-- CSS  propertie s -->
        1813     <!--                  -->
        1814     <xsl:var iable name ="VarCSSPr opertiesAs XML">
        1815      <xsl:ca ll-templat e name="CS S-Translat eProjectPr operties">
        1816       <xsl:w ith-param  name="Para mPropertie s" select= "$VarResol vedContext Properties " />
        1817       <xsl:w ith-param  name="Para mFromAbsol uteURI" se lect="$Par amSplit/@p ath" />
        1818       <xsl:w ith-param  name="Para mSplits" s elect="$Pa ramSplits"  />
        1819      </xsl:c all-templa te>
        1820     </xsl:va riable>
        1821     <xsl:var iable name ="VarCSSPr operties"  select="ms xsl:node-s et($VarCSS Properties AsXML)/wwp roject:Pro perty" />
        1822  
        1823     <!-- Sty le attribu te -->
        1824     <!--                   -->
        1825     <xsl:var iable name ="VarStyle Attribute" >
        1826      <xsl:ca ll-templat e name="CS S-InlinePr operties">
        1827       <xsl:w ith-param  name="Para mPropertie s" select= "$VarCSSPr operties[( @Name != ' vertical-a lign')]" / >
        1828      </xsl:c all-templa te>
        1829     </xsl:va riable>
        1830  
        1831     <!-- Bor der -->
        1832     <!--         -->
        1833     <xsl:var iable name ="VarTable Border">
        1834      <xsl:ca ll-templat e name="Ta ble-Attrib ute-In-Pix els">
        1835       <xsl:w ith-param  name="Para mValue" se lect="$Var ResolvedCo ntextPrope rties[@Nam e = 'borde r']/@Value " />
        1836      </xsl:c all-templa te>
        1837     </xsl:va riable>
        1838  
        1839     <!-- Cel l padding  -->
        1840     <!--                -->
        1841     <xsl:var iable name ="VarTable CellPaddin g">
        1842      <xsl:ca ll-templat e name="Ta ble-Attrib ute-In-Pix els">
        1843       <xsl:w ith-param  name="Para mValue" se lect="$Var ResolvedCo ntextPrope rties[@Nam e = 'cell- padding']/ @Value" />
        1844      </xsl:c all-templa te>
        1845     </xsl:va riable>
        1846  
        1847     <!-- Cel l spacing  -->
        1848     <!--                -->
        1849     <xsl:var iable name ="VarTable CellSpacin g">
        1850      <xsl:ca ll-templat e name="Ta ble-Attrib ute-In-Pix els">
        1851       <xsl:w ith-param  name="Para mValue" se lect="$Var ResolvedCo ntextPrope rties[@Nam e = 'cell- spacing']/ @Value" />
        1852      </xsl:c all-templa te>
        1853     </xsl:va riable>
        1854  
        1855     <!-- Tab le vertica l alignmen t -->
        1856     <!--                             -->
        1857     <xsl:var iable name ="VarTable VerticalAl ignment">
        1858      <xsl:va riable nam e="VarTabl eVerticalA lignmentHi nt" select ="$VarReso lvedContex tPropertie s[@Name =  'vertical- align']/@V alue" />
        1859      <xsl:ch oose>
        1860       <xsl:w hen test=" string-len gth($VarTa bleVertica lAlignment Hint) &gt;  0">
        1861        <xsl: value-of s elect="$Va rTableVert icalAlignm entHint" / >
        1862       </xsl: when>
        1863       <xsl:o therwise>
        1864        <xsl: value-of s elect="''"  />
        1865       </xsl: otherwise>
        1866      </xsl:c hoose>
        1867     </xsl:va riable>
        1868  
        1869     <!-- Tab le summary  -->
        1870     <!--                 -->
        1871     <xsl:var iable name ="VarTable Summary">
        1872      <xsl:ca ll-templat e name="Ta bles-Summa ry">
        1873       <xsl:w ith-param  name="Para mTableBeha vior" sele ct="$Param TableBehav ior" />
        1874      </xsl:c all-templa te>
        1875     </xsl:va riable>
        1876  
        1877     <!-- Cap tion Side  -->
        1878     <!--                -->
        1879     <xsl:var iable name ="VarCapti onSide">
        1880      <xsl:va lue-of sel ect="$VarR esolvedCon textProper ties[@Name  = 'captio n-side']/@ Value" />
        1881     </xsl:va riable>
        1882  
        1883     <!-- Det ermine tab le cell wi dths -->
        1884     <!--                                -->
        1885     <xsl:var iable name ="VarTable CellWidths AsXML">
        1886      <xsl:va riable nam e="VarEmit TableWidth sOption" s elect="$Va rContextRu le/wwproje ct:Options /wwproject :Option[@N ame = 'tab le-use-doc ument-cell -widths']/ @Value" />
        1887      <xsl:va riable nam e="VarEmit TableWidth s" select= "$VarEmitT ableWidths Option = ' true'" />
        1888  
        1889      <xsl:if  test="$Va rEmitTable Widths">
        1890       <xsl:c all-templa te name="T able-CellW idths">
        1891        <xsl: with-param  name="Par amTable" s elect="$Pa ramTable"  />
        1892       </xsl: call-templ ate>
        1893      </xsl:i f>
        1894     </xsl:va riable>
        1895     <xsl:var iable name ="VarTable CellWidths " select=" msxsl:node -set($VarT ableCellWi dthsAsXML) /*" />
        1896  
        1897     <!-- Emi t <table>  element wi th attribu tes. -->
        1898     <!--                                           -->
        1899     <html:ta ble>
        1900  
        1901      <!-- st yle attrib ute -->
        1902      <!--                   -->
        1903      <xsl:if  test="str ing-length ($VarStyle Attribute)  &gt; 0">
        1904       <xsl:a ttribute n ame="style ">
        1905        <xsl: value-of s elect="$Va rStyleAttr ibute" />
        1906       </xsl: attribute>
        1907      </xsl:i f>
        1908  
        1909      <!-- bo rder attri bute -->
        1910      <!--                    -->
        1911      <xsl:if  test="str ing-length ($VarTable Border) &g t; 0">
        1912       <xsl:a ttribute n ame="borde r">
        1913        <xsl: value-of s elect="$Va rTableBord er" />
        1914       </xsl: attribute>
        1915      </xsl:i f>
        1916  
        1917      <!-- ce llpadding  attribute  -->
        1918      <!--                          -->
        1919      <xsl:if  test="str ing-length ($VarTable CellPaddin g) &gt; 0" >
        1920       <xsl:a ttribute n ame="cellp adding">
        1921        <xsl: value-of s elect="$Va rTableCell Padding" / >
        1922       </xsl: attribute>
        1923      </xsl:i f>
        1924  
        1925      <!-- ce llspacing  attribute  -->
        1926      <!--                          -->
        1927      <xsl:if  test="str ing-length ($VarTable CellSpacin g) &gt; 0" >
        1928       <xsl:a ttribute n ame="cells pacing">
        1929        <xsl: value-of s elect="$Va rTableCell Spacing" / >
        1930       </xsl: attribute>
        1931      </xsl:i f>
        1932  
        1933      <!-- su mmary attr ibute -->
        1934      <!--                     -->
        1935      <xsl:at tribute na me="summar y">
        1936       <xsl:v alue-of se lect="$Var TableSumma ry" />
        1937      </xsl:a ttribute>
        1938  
        1939      <!-- Ap ply captio n template s -->
        1940      <!--                            -->
        1941      <xsl:fo r-each sel ect="$Para mTable/wwd oc:Caption [1]">
        1942       <html: caption>
        1943  
        1944        <xsl: if test="s tring-leng th($VarCap tionSide)  &gt; 0">
        1945         <xsl :attribute  name="sty le">
        1946          <xs l:value-of  select="c oncat('cap tion-side:  ', $VarCa ptionSide) " />
        1947         </xs l:attribut e>
        1948        </xsl :if>
        1949  
        1950        <!--  Force on o ne line -- >
        1951        <!--                     -- >
        1952        <wwex sldoc:NoBr eak />
        1953  
        1954        <xsl: apply-temp lates sele ct="./*" m ode="wwmod e:content" >
        1955         <xsl :with-para m name="Pa ramSplits"  select="$ ParamSplit s" />
        1956         <xsl :with-para m name="Pa ramCargo"  select="$P aramCargo"  />
        1957         <xsl :with-para m name="Pa ramLinks"  select="$P aramLinks"  />
        1958         <xsl :with-para m name="Pa ramTOCData " select=" $ParamTOCD ata" />
        1959         <xsl :with-para m name="Pa ramSplit"  select="$P aramSplit"  />
        1960        </xsl :apply-tem plates>
        1961  
        1962        <!--  Force on o ne line -- >
        1963        <!--                     -- >
        1964        <wwex sldoc:NoBr eak />
        1965  
        1966       </html :caption>
        1967      </xsl:f or-each>
        1968  
        1969      <xsl:fo r-each sel ect="$Para mTable/wwd oc:TableHe ad|$ParamT able/wwdoc :TableBody |$ParamTab le/wwdoc:T ableFoot">
        1970       <xsl:v ariable na me="VarSec tion" sele ct="." />
        1971  
        1972       <!-- R esolve sec tion prope rties -->
        1973       <!--                               -->
        1974       <xsl:v ariable na me="VarRes olvedSecti onProperti esAsXML">
        1975        <xsl: call-templ ate name=" Properties -Table-Sec tion-Resol veContextR ule">
        1976         <xsl :with-para m name="Pa ramPropert ies" selec t="$VarCon textRule/w wproject:P roperties/ wwproject: Property"  />
        1977         <xsl :with-para m name="Pa ramDocumen tContext"  select="$P aramTable"  />
        1978         <xsl :with-para m name="Pa ramTable"  select="$P aramTable"  />
        1979         <xsl :with-para m name="Pa ramSection " select=" $VarSectio n" />
        1980        </xsl :call-temp late>
        1981       </xsl: variable>
        1982       <xsl:v ariable na me="VarRes olvedSecti onProperti es" select ="msxsl:no de-set($Va rResolvedS ectionProp ertiesAsXM L)/wwproje ct:Propert y" />
        1983  
        1984       <!-- P rocess sec tion rows  -->
        1985       <!--                         -->
        1986       <xsl:f or-each se lect="$Var Section/ww doc:TableR ow">
        1987        <xsl: variable n ame="VarTa bleRow" se lect="." / >
        1988        <xsl: variable n ame="VarRo wPosition"  select="p osition()"  />
        1989  
        1990        <html :tr>
        1991  
        1992         <!--  Handle ta ble level  vertical a lign at ro w level -- >
        1993         <!--                                                     -- >
        1994         <xsl :if test=" string-len gth($VarTa bleVertica lAlignment ) &gt; 0">
        1995          <xs l:attribut e name="st yle">
        1996           <x sl:value-o f select=" concat('ve rtical-ali gn: ', $Va rTableVert icalAlignm ent, ';')"  />
        1997          </x sl:attribu te>
        1998         </xs l:if>
        1999  
        2000         <xsl :for-each  select="$V arTableRow /wwdoc:Tab leCell">
        2001          <xs l:variable  name="Var TableCell"  select=". " />
        2002          <xs l:variable  name="Var CellPositi on" select ="position ()" />
        2003  
        2004          <!- - Resolve  cell prope rties -->
        2005          <!- -                           -->
        2006          <xs l:variable  name="Var ResolvedCe llProperti esAsXML">
        2007           <x sl:call-te mplate nam e="Propert ies-Table- Cell-Resol veProperti es">
        2008            < xsl:with-p aram name= "ParamSect ionPropert ies" selec t="$VarRes olvedSecti onProperti es" />
        2009            < xsl:with-p aram name= "ParamCell Style" sel ect="$VarT ableCell/w wdoc:Style " />
        2010            < xsl:with-p aram name= "ParamRowI ndex" sele ct="$VarRo wPosition"  />
        2011            < xsl:with-p aram name= "ParamColu mnIndex" s elect="$Va rCellPosit ion" />
        2012           </ xsl:call-t emplate>
        2013  
        2014           <! -- Width a ttribute - ->
        2015           <! --                  - ->
        2016           <x sl:for-eac h select=" $VarTableC ellWidths[ @id = $Var TableCell/ @id][1]">
        2017            < xsl:variab le name="V arTableCel lWidth" se lect="." / >
        2018  
        2019            < wwproject: Property N ame="width " Value="{ $VarTableC ellWidth/@ width}" />
        2020           </ xsl:for-ea ch>
        2021          </x sl:variabl e>
        2022          <xs l:variable  name="Var ResolvedCe llProperti es" select ="msxsl:no de-set($Va rResolvedC ellPropert iesAsXML)/ wwproject: Property"  />
        2023  
        2024          <!- - Valid CS S properti es -->
        2025          <!- -                        -->
        2026          <xs l:variable  name="Var TableCellC SSProperti esAsXML">
        2027           <x sl:call-te mplate nam e="CSS-Tra nslateProj ectPropert ies">
        2028            < xsl:with-p aram name= "ParamProp erties" se lect="$Var ResolvedCe llProperti es" />
        2029            < xsl:with-p aram name= "ParamFrom AbsoluteUR I" select= "$ParamSpl it/@path"  />
        2030            < xsl:with-p aram name= "ParamSpli ts" select ="$ParamSp lits" />
        2031           </ xsl:call-t emplate>
        2032          </x sl:variabl e>
        2033          <xs l:variable  name="Var TableCellC SSProperti es" select ="msxsl:no de-set($Va rTableCell CSSPropert iesAsXML)/ wwproject: Property"  />
        2034  
        2035          <!- - Inline C SS propert ies -->
        2036          <!- -                         -->
        2037          <xs l:variable  name="Var InlineCSSP roperties" >
        2038           <x sl:call-te mplate nam e="CSS-Inl inePropert ies">
        2039            < xsl:with-p aram name= "ParamProp erties" se lect="$Var TableCellC SSProperti es" />
        2040           </ xsl:call-t emplate>
        2041          </x sl:variabl e>
        2042  
        2043          <!- - Calculat e row span  -->
        2044          <!- -                      -->
        2045          <xs l:variable  name="Var RowSpan">
        2046           <x sl:variabl e name="Va rRowSpanHi nt" select ="$VarTabl eCell/wwdo c:Style/ww doc:Attrib ute[@name  = 'row-spa n']/@value " />
        2047           <x sl:choose>
        2048            < xsl:when t est="strin g-length($ VarRowSpan Hint) &gt;  0">
        2049              <xsl:value -of select ="$VarRowS panHint" / >
        2050            < /xsl:when>
        2051            < xsl:otherw ise>
        2052              <xsl:value -of select ="'0'" />
        2053            < /xsl:other wise>
        2054           </ xsl:choose >
        2055          </x sl:variabl e>
        2056  
        2057          <!- - Calculat e column s pan -->
        2058          <!- -                         -->
        2059          <xs l:variable  name="Var ColumnSpan ">
        2060           <x sl:variabl e name="Va rColumnSpa nHint" sel ect="$VarT ableCell/w wdoc:Style /wwdoc:Att ribute[@na me = 'colu mn-span']/ @value" />
        2061           <x sl:choose>
        2062            < xsl:when t est="strin g-length($ VarColumnS panHint) & gt; 0">
        2063              <xsl:value -of select ="$VarColu mnSpanHint " />
        2064            < /xsl:when>
        2065            < xsl:otherw ise>
        2066              <xsl:value -of select ="'0'" />
        2067            < /xsl:other wise>
        2068           </ xsl:choose >
        2069          </x sl:variabl e>
        2070  
        2071          <!- - Emit cel l -->
        2072          <!- -            -->
        2073          <ht ml:td>
        2074           <! -- Style a ttribute - ->
        2075           <! --                  - ->
        2076           <x sl:if test ="string-l ength($Var InlineCSSP roperties)  &gt; 0">
        2077            < xsl:attrib ute name=" style">
        2078              <xsl:value -of select ="$VarInli neCSSPrope rties" />
        2079            < /xsl:attri bute>
        2080           </ xsl:if>
        2081  
        2082           <! -- Row spa n attribut e -->
        2083           <! --                      -->
        2084           <x sl:if test ="number($ VarRowSpan ) &gt; 0">
        2085            < xsl:attrib ute name=" rowspan">
        2086              <xsl:value -of select ="$VarRowS pan" />
        2087            < /xsl:attri bute>
        2088           </ xsl:if>
        2089  
        2090           <! -- Column  span attri bute -->
        2091           <! --                         -->
        2092           <x sl:if test ="number($ VarColumnS pan) &gt;  0">
        2093            < xsl:attrib ute name=" colspan">
        2094              <xsl:value -of select ="$VarColu mnSpan" />
        2095            < /xsl:attri bute>
        2096           </ xsl:if>
        2097  
        2098           <! -- Recurse  -->
        2099           <! --          -->
        2100           <x sl:apply-t emplates s elect="./* " mode="ww mode:conte nt">
        2101            < xsl:with-p aram name= "ParamSpli ts" select ="$ParamSp lits" />
        2102            < xsl:with-p aram name= "ParamCarg o" select= "$VarCargo " />
        2103            < xsl:with-p aram name= "ParamLink s" select= "$ParamLin ks" />
        2104            < xsl:with-p aram name= "ParamTOCD ata" selec t="$ParamT OCData" />
        2105            < xsl:with-p aram name= "ParamSpli t" select= "$ParamSpl it" />
        2106           </ xsl:apply- templates>
        2107          </h tml:td>
        2108         </xs l:for-each >
        2109  
        2110        </htm l:tr>
        2111       </xsl: for-each>
        2112      </xsl:f or-each>
        2113  
        2114     </html:t able>
        2115  
        2116     <!-- Tab le Footnot es -->
        2117     <!--                   -->
        2118     <xsl:cal l-template  name="Con tent-Notes ">
        2119      <xsl:wi th-param n ame="Param Notes" sel ect="$VarN otes" />
        2120      <xsl:wi th-param n ame="Param Splits" se lect="$Par amSplits"  />
        2121      <xsl:wi th-param n ame="Param Cargo" sel ect="$VarC argo" />
        2122      <xsl:wi th-param n ame="Param Links" sel ect="$Para mLinks" />
        2123      <xsl:wi th-param n ame="Param TOCData" s elect="$Pa ramTOCData " />
        2124      <xsl:wi th-param n ame="Param Split" sel ect="$Para mSplit" />
        2125     </xsl:ca ll-templat e>
        2126    </xsl:tem plate>
        2127  
        2128  
        2129    <xsl:temp late match ="wwdoc:Fr ame" mode= "wwmode:co ntent">
        2130     <xsl:par am name="P aramSplits " />
        2131     <xsl:par am name="P aramCargo"  />
        2132     <xsl:par am name="P aramLinks"  />
        2133     <xsl:par am name="P aramTOCDat a" />
        2134     <xsl:par am name="P aramSplit"  />
        2135  
        2136     <!-- Abo rted? -->
        2137     <!--           -->
        2138     <xsl:if  test="not( wwprogress :Abort())" >
        2139      <xsl:ca ll-templat e name="Fr ame">
        2140       <xsl:w ith-param  name="Para mFrame" se lect="." / >
        2141       <xsl:w ith-param  name="Para mSplits" s elect="$Pa ramSplits"  />
        2142       <xsl:w ith-param  name="Para mCargo" se lect="$Par amCargo" / >
        2143       <xsl:w ith-param  name="Para mLinks" se lect="$Par amLinks" / >
        2144       <xsl:w ith-param  name="Para mSplit" se lect="$Par amSplit" / >
        2145      </xsl:c all-templa te>
        2146     </xsl:if >
        2147    </xsl:tem plate>
        2148  
        2149  
        2150    <xsl:temp late match ="wwdoc:Fr ame" mode= "wwmode:te xtrun">
        2151     <xsl:par am name="P aramSplits " />
        2152     <xsl:par am name="P aramCargo"  />
        2153     <xsl:par am name="P aramLinks"  />
        2154     <xsl:par am name="P aramSplit"  />
        2155  
        2156     <xsl:cal l-template  name="Fra me">
        2157      <xsl:wi th-param n ame="Param Frame" sel ect="." />
        2158      <xsl:wi th-param n ame="Param Splits" se lect="$Par amSplits"  />
        2159      <xsl:wi th-param n ame="Param Cargo" sel ect="$Para mCargo" />
        2160      <xsl:wi th-param n ame="Param Links" sel ect="$Para mLinks" />
        2161      <xsl:wi th-param n ame="Param Split" sel ect="$Para mSplit" />
        2162     </xsl:ca ll-templat e>
        2163    </xsl:tem plate>
        2164  
        2165  
        2166    <xsl:temp late name= "Frame">
        2167     <xsl:par am name="P aramFrame"  />
        2168     <xsl:par am name="P aramSplits " />
        2169     <xsl:par am name="P aramCargo"  />
        2170     <xsl:par am name="P aramLinks"  />
        2171     <xsl:par am name="P aramSplit"  />
        2172  
        2173     <!-- Get  splits fr ame -->
        2174     <!--                    -->
        2175     <xsl:for -each sele ct="$Param Splits[1]" >
        2176      <xsl:va riable nam e="VarSpli tsFrame" s elect="key ('wwsplits -frames-by -id', $Par amFrame/@i d)[@docume ntID = $Pa ramSplit/@ documentID ]" />
        2177  
        2178      <!-- Fr ame known?  -->
        2179      <!--                -->
        2180      <xsl:if  test="cou nt($VarSpl itsFrame)  = 1">
        2181       <!-- T humbnail?  -->
        2182       <!--              -->
        2183       <xsl:f or-each se lect="$Glo balFiles[1 ]">
        2184        <xsl: variable n ame="VarSp litsThumbn ail" selec t="$VarSpl itsFrame/w wsplits:Th umbnail" / >
        2185        <xsl: variable n ame="VarTh umbnailDef ined" sele ct="count( key('wwfil es-files-b y-path', $ VarSplitsT humbnail/@ path)[1])  &gt; 0" />
        2186  
        2187        <!--  Emit image  -->
        2188        <!--              -->
        2189        <xsl: choose>
        2190         <!--  Thumbnail  -->
        2191         <!--             -->
        2192         <xsl :when test ="$VarThum bnailDefin ed">
        2193          <!- - Emit mar kup -->
        2194          <!- -              -->
        2195          <xs l:call-tem plate name ="Frame-Ma rkup">
        2196           <x sl:with-pa ram name=" ParamFrame " select=" $ParamFram e" />
        2197           <x sl:with-pa ram name=" ParamSplit s" select= "$ParamSpl its" />
        2198           <x sl:with-pa ram name=" ParamCargo " select=" $ParamCarg o" />
        2199           <x sl:with-pa ram name=" ParamLinks " select=" $ParamLink s" />
        2200           <x sl:with-pa ram name=" ParamSplit " select=" $ParamSpli t" />
        2201           <x sl:with-pa ram name=" ParamSplit sFrame" se lect="$Var SplitsFram e" />
        2202           <x sl:with-pa ram name=" ParamThumb nail" sele ct="true() " />
        2203          </x sl:call-te mplate>
        2204         </xs l:when>
        2205  
        2206         <!--  Fullsize  -->
        2207         <!--            -->
        2208         <xsl :otherwise >
        2209          <!- - Note num bering -->
        2210          <!- -                 -->
        2211          <xs l:variable  name="Var Notes" sel ect="$Para mFrame//ww doc:Note"  />
        2212          <xs l:variable  name="Var NoteNumber ingAsXML">
        2213           <x sl:call-te mplate nam e="Notes-N umber">
        2214            < xsl:with-p aram name= "ParamNote s" select= "$VarNotes " />
        2215           </ xsl:call-t emplate>
        2216          </x sl:variabl e>
        2217          <xs l:variable  name="Var NoteNumber ing" selec t="msxsl:n ode-set($V arNoteNumb eringAsXML )" />
        2218  
        2219          <!- - Frame ca rgo -->
        2220          <!- -              -->
        2221          <xs l:variable  name="Var Cargo" sel ect="$Para mCargo/*[l ocal-name( ) != 'Note Numbering' ]/.. | $Va rNoteNumbe ring" />
        2222  
        2223          <!- - Emit mar kup -->
        2224          <!- -              -->
        2225          <xs l:call-tem plate name ="Frame-Ma rkup">
        2226           <x sl:with-pa ram name=" ParamFrame " select=" $ParamFram e" />
        2227           <x sl:with-pa ram name=" ParamSplit s" select= "$ParamSpl its" />
        2228           <x sl:with-pa ram name=" ParamCargo " select=" $VarCargo"  />
        2229           <x sl:with-pa ram name=" ParamLinks " select=" $ParamLink s" />
        2230           <x sl:with-pa ram name=" ParamSplit " select=" $ParamSpli t" />
        2231           <x sl:with-pa ram name=" ParamSplit sFrame" se lect="$Var SplitsFram e" />
        2232           <x sl:with-pa ram name=" ParamThumb nail" sele ct="false( )" />
        2233          </x sl:call-te mplate>
        2234         </xs l:otherwis e>
        2235        </xsl :choose>
        2236       </xsl: for-each>
        2237      </xsl:i f>
        2238     </xsl:fo r-each>
        2239    </xsl:tem plate>
        2240  
        2241  
        2242    <xsl:temp late name= "Frame-Mar kup">
        2243     <xsl:par am name="P aramFrame"  />
        2244     <xsl:par am name="P aramSplits " />
        2245     <xsl:par am name="P aramCargo"  />
        2246     <xsl:par am name="P aramLinks"  />
        2247     <xsl:par am name="P aramSplit"  />
        2248     <xsl:par am name="P aramSplits Frame" />
        2249     <xsl:par am name="P aramThumbn ail" />
        2250  
        2251     <!-- Con text Rule  -->
        2252     <!--                -->
        2253     <xsl:var iable name ="VarConte xtRule" se lect="wwpr ojext:GetC ontextRule ('Graphic' , $ParamSp litsFrame/ @stylename , $ParamSp litsFrame/ @documentI D, $ParamS plitsFrame /@id)" />
        2254  
        2255     <!-- Gen erate? -->
        2256     <!--            -->
        2257     <xsl:var iable name ="VarGener ateOutputO ption" sel ect="$VarC ontextRule /wwproject :Options/w wproject:O ption[@Nam e = 'gener ate-output ']/@Value"  />
        2258     <xsl:var iable name ="VarGener ateOutput"  select="( string-len gth($VarGe nerateOutp utOption)  = 0) or ($ VarGenerat eOutputOpt ion != 'fa lse')" />
        2259     <xsl:if  test="$Var GenerateOu tput">
        2260      <!-- De termine im age path - ->
        2261      <!--                        - ->
        2262      <xsl:va riable nam e="VarImag ePath">
        2263       <xsl:c hoose>
        2264        <xsl: when test= "$ParamThu mbnail">
        2265         <xsl :value-of  select="$P aramSplits Frame/wwsp lits:Thumb nail/@path " />
        2266        </xsl :when>
        2267  
        2268        <xsl: otherwise>
        2269         <xsl :value-of  select="$P aramSplits Frame/@pat h" />
        2270        </xsl :otherwise >
        2271       </xsl: choose>
        2272      </xsl:v ariable>
        2273  
        2274      <!-- Ac cess image  info -->
        2275      <!--                     -->
        2276      <xsl:va riable nam e="VarImag eInfo" sel ect="wwima ging:GetIn fo($VarIma gePath)" / >
        2277  
        2278      <!-- Em it image - ->
        2279      <!--             - ->
        2280      <xsl:ca ll-templat e name="Fr ame-Markup -All">
        2281       <xsl:w ith-param  name="Para mFrame" se lect="$Par amFrame" / >
        2282       <xsl:w ith-param  name="Para mSplits" s elect="$Pa ramSplits"  />
        2283       <xsl:w ith-param  name="Para mCargo" se lect="$Par amCargo" / >
        2284       <xsl:w ith-param  name="Para mLinks" se lect="$Par amLinks" / >
        2285       <xsl:w ith-param  name="Para mSplit" se lect="$Par amSplit" / >
        2286       <xsl:w ith-param  name="Para mSplitsFra me" select ="$ParamSp litsFrame"  />
        2287       <xsl:w ith-param  name="Para mContextRu le" select ="$VarCont extRule" / >
        2288       <xsl:w ith-param  name="Para mImageInfo " select=" $VarImageI nfo" />
        2289       <xsl:w ith-param  name="Para mThumbnail " select=" $ParamThum bnail" />
        2290      </xsl:c all-templa te>
        2291     </xsl:if >
        2292    </xsl:tem plate>
        2293  
        2294  
        2295    <xsl:temp late name= "Frame-Mar kup-All">
        2296     <xsl:par am name="P aramFrame"  />
        2297     <xsl:par am name="P aramSplits " />
        2298     <xsl:par am name="P aramCargo"  />
        2299     <xsl:par am name="P aramLinks"  />
        2300     <xsl:par am name="P aramSplit"  />
        2301     <xsl:par am name="P aramSplits Frame" />
        2302     <xsl:par am name="P aramContex tRule" />
        2303     <xsl:par am name="P aramImageI nfo" />
        2304     <xsl:par am name="P aramThumbn ail" />
        2305  
        2306     <!-- Acc ess frame  behavior - ->
        2307     <!--                         - ->
        2308     <xsl:for -each sele ct="$Param Cargo/wwbe haviors:Be haviors[1] ">
        2309      <xsl:va riable nam e="VarBeha viorFrame"  select="k ey('wwbeha viors-fram es-by-id',  $ParamFra me/@id)[1] " />
        2310  
        2311      <!-- Wi dth/Height  -->
        2312      <!--                -->
        2313      <xsl:va riable nam e="VarByRe ferenceGra phicsUseDo cumentDime nsionsOpti on" select ="$ParamCo ntextRule/ wwproject: Options/ww project:Op tion[@Name  = 'by-ref erence-use -document- dimensions ']/@Value"  />
        2314      <xsl:va riable nam e="VarByRe ferenceGra phicsUseDo cumentDime nsions" se lect="(str ing-length ($VarByRef erenceGrap hicsUseDoc umentDimen sionsOptio n) = 0) or  ($VarByRe ferenceGra phicsUseDo cumentDime nsionsOpti on = 'true ')" />
        2315  
        2316      <xsl:va riable nam e="VarWidt h">
        2317       <xsl:v ariable na me="VarEmi tWidth">
        2318        <xsl: variable n ame="VarWi dthPropert yHint" sel ect="$Para mContextRu le/wwproje ct:Propert ies/wwproj ect:Proper ty[@Name =  'width'][ 1]" />
        2319        
        2320        <xsl: choose>
        2321         <xsl :when test ="count($V arWidthPro pertyHint)  = 1 and ( $VarWidthP ropertyHin t/@Source  = 'DoNotEm it')">
        2322          <xs l:value-of  select="f alse()" />
        2323         </xs l:when>
        2324         <xsl :otherwise >
        2325          <xs l:value-of  select="t rue()" />
        2326         </xs l:otherwis e>
        2327        </xsl :choose>
        2328       </xsl: variable>
        2329       
        2330       <xsl:i f test="$V arEmitWidt h = 'true' ">
        2331        <xsl: choose>
        2332         <xsl :when test ="$ParamTh umbnail">
        2333          <xs l:value-of  select="n umber($Par amImageInf o/@width)"  />
        2334         </xs l:when>
        2335  
        2336         <xsl :when test ="$ParamSp litsFrame/ @byref = ' true'">
        2337          <xs l:choose>
        2338           <x sl:when te st="($VarB yReference GraphicsUs eDocumentD imensions)  or (numbe r($ParamIm ageInfo/@w idth) = 0) ">
        2339            < xsl:variab le name="V arByRefere nceFrame"  select="$P aramFrame/ /wwdoc:Fac et[@type =  'by-refer ence'][1]/ ../.." />
        2340  
        2341            < xsl:value- of select= "floor(wwu nits:Conve rt(wwunits :NumericPr efix($VarB yReference Frame/wwdo c:Attribut e[@name =  'width']/@ value), 'p t', 'px')) " />
        2342           </ xsl:when>
        2343  
        2344           <x sl:otherwi se>
        2345            < xsl:value- of select= "number($P aramImageI nfo/@width )" />
        2346           </ xsl:otherw ise>
        2347          </x sl:choose>
        2348         </xs l:when>
        2349  
        2350         <xsl :otherwise >
        2351          <xs l:value-of  select="n umber($Par amImageInf o/@width)"  />
        2352         </xs l:otherwis e>
        2353        </xsl :choose>
        2354       </xsl: if>
        2355      </xsl:v ariable>
        2356  
        2357      <xsl:va riable nam e="VarHeig ht">
        2358       <xsl:v ariable na me="VarEmi tHeight">
        2359        <xsl: variable n ame="VarHe ightProper tyHint" se lect="$Par amContextR ule/wwproj ect:Proper ties/wwpro ject:Prope rty[@Name  = 'height' ][1]" />
        2360        
        2361        <xsl: choose>
        2362         <xsl :when test ="count($V arHeightPr opertyHint ) = 1 and  ($VarHeigh tPropertyH int/@Sourc e = 'DoNot Emit')">
        2363          <xs l:value-of  select="f alse()" />
        2364         </xs l:when>
        2365         <xsl :otherwise >
        2366          <xs l:value-of  select="t rue()" />
        2367         </xs l:otherwis e>
        2368        </xsl :choose>
        2369       </xsl: variable>
        2370       
        2371       <xsl:i f test="$V arEmitHeig ht = 'true '">
        2372        <xsl: choose>
        2373         <xsl :when test ="$ParamTh umbnail">
        2374          <xs l:value-of  select="n umber($Par amImageInf o/@height) " />
        2375         </xs l:when>
        2376  
        2377         <xsl :when test ="$ParamSp litsFrame/ @byref = ' true'">
        2378          <xs l:choose>
        2379           <x sl:when te st="($VarB yReference GraphicsUs eDocumentD imensions)  or (numbe r($ParamIm ageInfo/@h eight) = 0 )">
        2380            < xsl:variab le name="V arByRefere nceFrame"  select="$P aramFrame/ /wwdoc:Fac et[@type =  'by-refer ence'][1]/ ../.." />
        2381  
        2382            < xsl:value- of select= "floor(wwu nits:Conve rt(wwunits :NumericPr efix($VarB yReference Frame/wwdo c:Attribut e[@name =  'height']/ @value), ' pt', 'px') )" />
        2383           </ xsl:when>
        2384  
        2385           <x sl:otherwi se>
        2386            < xsl:value- of select= "number($P aramImageI nfo/@heigh t)" />
        2387           </ xsl:otherw ise>
        2388          </x sl:choose>
        2389         </xs l:when>
        2390  
        2391         <xsl :otherwise >
        2392          <xs l:value-of  select="n umber($Par amImageInf o/@height) " />
        2393         </xs l:otherwis e>
        2394        </xsl :choose>
        2395       </xsl: if>
        2396      </xsl:v ariable>
        2397  
        2398      <!-- Al t Text -->
        2399      <!--           -->
        2400      <xsl:va riable nam e="VarAltT ext">
        2401       <xsl:c all-templa te name="I mages-AltT ext">
        2402        <xsl: with-param  name="Par amFrame" s elect="$Pa ramFrame"  />
        2403        <xsl: with-param  name="Par amBehavior Frame" sel ect="$VarB ehaviorFra me" />
        2404       </xsl: call-templ ate>
        2405      </xsl:v ariable>
        2406      
        2407      <!-- Ho rizontal a lignment - ->
        2408      <!--                        - ->
        2409      <xsl:va riable nam e="VarAlig nment">
        2410       <xsl:v ariable na me="VarAli gnProperty " select=" $ParamCont extRule/ww project:Pr operties/w wproject:P roperty[@N ame = 'flo at'][1]" / >
        2411  
        2412       <xsl:i f test="co unt($VarAl ignPropert y) = 1">
        2413        <xsl: value-of s elect="$Va rAlignProp erty/@Valu e" />
        2414       </xsl: if>
        2415      </xsl:v ariable>
        2416      
        2417      <!-- Ty pe of rend ering -->
        2418      <!--                     -->
        2419      <xsl:va riable nam e="VarType ">
        2420       <xsl:v ariable na me="VarTyp eProperty"  select="$ ParamConte xtRule/wwp roject:Pro perties/ww project:Pr operty[@Na me = 'disp lay'][1]"  />
        2421  
        2422       <xsl:c hoose>
        2423        <xsl: when test= "(count($V arTypeProp erty) = 1)  and ($Var TypeProper ty/@Value  = 'block') ">
        2424         <xsl :value-of  select="'f rame'" />
        2425        </xsl :when>
        2426        <xsl: otherwise>
        2427         <xsl :value-of  select="'t humb'" />
        2428        </xsl :otherwise >
        2429       </xsl: choose>
        2430      </xsl:v ariable>
        2431  
        2432      <!-- Gr aphic -->
        2433      <!--          -->
        2434      <xsl:te xt>[[</xsl :text>
        2435      <xsl:ca ll-templat e name="Me diaWiki-Im ageRootedL ink">
        2436       <xsl:w ith-param  name="Para mLinkPath"  select="$ ParamImage Info/@path " />
        2437       <xsl:w ith-param  name="Para mTargetOut putDirecto ryPath" se lect="$Par amSplit/@t arget-outp ut-directo ry-path" / >
        2438      </xsl:c all-templa te>
        2439      
        2440      <!-- Ty pe -->
        2441      <!--       -->
        2442      <xsl:te xt>|</xsl: text>
        2443      <xsl:va lue-of sel ect="$VarT ype" />
        2444      
        2445      <!-- Lo cation -->
        2446      <!--            -- >
        2447      <xsl:if  test="str ing-length ($VarAlign ment) &gt;  0">
        2448       <xsl:t ext>|</xsl :text>
        2449       <xsl:v alue-of se lect="$Var Alignment"  />
        2450      </xsl:i f>
        2451      
        2452      <!-- Si ze -->
        2453      <!--       -->
        2454      <xsl:if  test="$Va rType != ' frame'">
        2455       <xsl:i f test="$V arWidth &g t; 0">
        2456        <xsl: text>|</xs l:text>
        2457        <xsl: value-of s elect="$Va rWidth" />
        2458       </xsl: if>
        2459       
        2460       <xsl:i f test="($ VarHeight  &gt; 0) an d ($VarWid th &gt; 0) ">
        2461        <xsl: text>x</xs l:text>
        2462        <xsl: value-of s elect="$Va rHeight" / >
        2463       </xsl: if>
        2464       
        2465       <xsl:i f test="$V arWidth &g t; 0">
        2466        <xsl: text>px</x sl:text>
        2467       </xsl: if>
        2468      </xsl:i f>
        2469      
        2470      <!-- Al t text -->
        2471      <!--           -->
        2472      <xsl:if  test="str ing-length ($VarAltTe xt) &gt; 0 ">
        2473       <xsl:t ext>|</xsl :text>
        2474       <xsl:v alue-of se lect="$Var AltText" / >
        2475      </xsl:i f>
        2476      <xsl:te xt>]]</xsl :text>
        2477  
        2478      <xsl:va riable nam e="VarNote s" select= "$ParamFra me//wwdoc: Note" />
        2479      <xsl:ca ll-templat e name="Co ntent-Note s">
        2480       <xsl:w ith-param  name="Para mNotes" se lect="$Var Notes" />
        2481       <xsl:w ith-param  name="Para mSplits" s elect="$Pa ramSplits"  />
        2482       <xsl:w ith-param  name="Para mCargo" se lect="$Par amCargo" / >
        2483       <xsl:w ith-param  name="Para mLinks" se lect="$Par amLinks" / >
        2484       <xsl:w ith-param  name="Para mTOCData"  select="'' " />
        2485       <xsl:w ith-param  name="Para mSplit" se lect="$Par amSplit" / >
        2486      </xsl:c all-templa te>
        2487     </xsl:fo r-each>
        2488    </xsl:tem plate>
        2489   </xsl:styl esheet>