Showing:

Documentation
Parameters
Used by
References
Supersedes
Imported from
Source
Stylesheet web.xsl
Documentation

Description

This software is dual-licensed: 1. Distributed under a Creative Commons Attribution-ShareAlike 3.0 Unported License http://creativecommons.org/licenses/by-sa/3.0/ 2. http://www.opensource.org/licenses/BSD-2-Clause All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. This software is provided by the copyright holders and contributors "as is" and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall the copyright holder or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.

Author: See AUTHORS

Id: $Id: web.xsl 9646 2011-11-05 23:39:08Z rahtz $

Copyright: 2008, TEI Consortium

Imported from
Stylesheet version 2.0
Template myi18n
Namespace No namespace
Used by
Template i18n
Supersedes
Template myi18n
Parameters
QName Namespace
word No namespace
Import precedence 9
Source
<xsl:template name="myi18n">
  <xsl:param name="word"/>
  <xsl:choose>
    <xsl:when test="$word='appendixWords'">
      <xsl:text>Annex</xsl:text>
    </xsl:when>
  </xsl:choose>
</xsl:template>
Stylesheet location web.xsl
Template processing-instruction()[name()='ISOerror']
Namespace No namespace
Match processing-instruction()[name()='ISOerror']
Mode #default
Import precedence 9
Source
<xsl:template match="processing-instruction()[name()='ISOerror']">
  <span style="border: solid red 1pt; color:red">
    <xsl:value-of select="."/>
  </span>
</xsl:template>
Stylesheet location web.xsl
Template tei:note[@place='comment']
Namespace No namespace
Match tei:note[@place='comment']
Mode #default
Import precedence 9
Source
<xsl:template match="tei:note[@place='comment']">
  <span style="border: solid red 1pt; color:red">
    <xsl:value-of select="."/>
  </span>
</xsl:template>
Stylesheet location web.xsl
Template divClassAttribute
Namespace No namespace
Used by
Template doDivBody
Supersedes
Parameters
QName Namespace
depth No namespace
Import precedence 9
Source
<xsl:template name="divClassAttribute">
  <xsl:param name="depth"/>
  <xsl:choose>
    <xsl:when test="@type">
      <xsl:attribute name="class">
        <xsl:value-of select="@type"/>
      </xsl:attribute>
    </xsl:when>
    <xsl:otherwise>
      <xsl:attribute name="class">
        <xsl:text>teidiv</xsl:text>
        <xsl:value-of select="$depth"/>
        <xsl:text> from-</xsl:text>
        <xsl:value-of select="local-name(ancestor::tei:body|ancestor::tei:front|ancestor::tei:back)"/>
      </xsl:attribute>
    </xsl:otherwise>
  </xsl:choose>
  <xsl:variable name="ident">
    <xsl:apply-templates mode="ident" select="."/>
  </xsl:variable>
  <xsl:attribute name="id">
    <xsl:value-of select="$ident"/>
  </xsl:attribute>
</xsl:template>
Stylesheet location web.xsl
Template tei:note[@place='foot']/tei:p
Namespace No namespace
Match tei:note[@place='foot']/tei:p
Mode #default
Import precedence 9
Source
<xsl:template match="tei:note[@place='foot']/tei:p">
  <xsl:apply-templates/>
</xsl:template>
Stylesheet location web.xsl
Template tei:note[@rend='example']
Namespace No namespace
Match tei:note[@rend='example']
Mode #default
Import precedence 9
Source
<xsl:template match="tei:note[@rend='example']">
  <p>EXAMPLE <xsl:apply-templates/>
  </p>
</xsl:template>
Stylesheet location web.xsl
Template tei:p[count(*)=1 and tei:gloss]
Namespace No namespace
Match tei:p[count(*)=1 and tei:gloss]
Mode #default
Import precedence 9
Source
<xsl:template match="tei:p[count(*)=1 and tei:gloss]">
  <p style="margin-left: 1em">
    <xsl:apply-templates/>
  </p>
</xsl:template>
Stylesheet location web.xsl
Template tei:num
Namespace No namespace
Match tei:num
Mode #default
References
Parameter numberFormat
Import precedence 9
Source
<xsl:template match="tei:num">
  <span class="isonum">
    <xsl:choose>
      <xsl:when test="$numberFormat='fr'">
        <xsl:value-of select="."/>
      </xsl:when>
      <xsl:otherwise>
        <xsl:value-of select="translate(.,', ','.,')"/>
      </xsl:otherwise>
    </xsl:choose>
  </span>
</xsl:template>
Stylesheet location web.xsl
Template tei:g[@ref='x:tab']
Namespace No namespace
Match tei:g[@ref='x:tab']
Mode #default
Import precedence 9
Source
<xsl:template match="tei:g[@ref='x:tab']">
  <xsl:text>	</xsl:text>
</xsl:template>
Stylesheet location web.xsl
Template tei:c[@iso:font]
Namespace No namespace
Match tei:c[@iso:font]
Mode #default
Import precedence 9
Source
<xsl:template match="tei:c[@iso:font]">
  <xsl:value-of select="@n"/>
</xsl:template>
Stylesheet location web.xsl
Template tei:seg[@iso:provision]
Namespace No namespace
Match tei:seg[@iso:provision]
Mode #default
Import precedence 9
Source
<xsl:template match="tei:seg[@iso:provision]">
  <span class="provision_{@iso:provision}">
    <xsl:apply-templates/>
  </span>
</xsl:template>
Stylesheet location web.xsl
Template block-element
Namespace No namespace
Used by
Parameters
QName Namespace Select
pPr No namespace
select No namespace .
style No namespace
Import precedence 9
Source
<xsl:template name="block-element">
  <xsl:param name="pPr"/>
  <xsl:param name="style"/>
  <xsl:param name="select" select="."/>
  <xsl:for-each select="$select">
    <p>
      <xsl:choose>
        <xsl:when test="not($style='')">
          <xsl:attribute name="class">
            <xsl:value-of select="$style"/>
          </xsl:attribute>
        </xsl:when>
        <xsl:when test="w:pPr/w:pStyle">
          <xsl:attribute name="class">
            <xsl:value-of select="w:pPr/w:pStyle/@w:val"/>
          </xsl:attribute>
        </xsl:when>
      </xsl:choose>
      <xsl:apply-templates/>
    </p>
  </xsl:for-each>
</xsl:template>
Stylesheet location web.xsl
Template generateError
Namespace No namespace
Used by
Templates tei:admin[@type='applicationSubset']checkSchematron; tei:admin[@type='businessUnitSubset']checkSchematron; tei:admin[@type='conceptOrigin']checkSchematron; tei:admin[@type='customerSubset']checkSchematron; tei:admin[@type='databaseType']checkSchematron; tei:admin[@type='domainExpert']checkSchematron; tei:admin[@type='elementWorkingStatus']checkSchematron; tei:admin[@type='entrySource']checkSchematron; tei:admin[@type='environmentSubset']checkSchematron; tei:admin[@type='indexHeading']checkSchematron; tei:admin[@type='keyword']checkSchematron; tei:admin[@type='originatingDatabase']checkSchematron; tei:admin[@type='originatingInstitution']checkSchematron; tei:admin[@type='originatingPerson']checkSchematron; tei:admin[@type='productSubset']checkSchematron; tei:admin[@type='projectSubset']checkSchematron; tei:admin[@type='searchTerm']checkSchematron; tei:admin[@type='securitySubset']checkSchematron; tei:admin[@type='sortKey']checkSchematron; tei:admin[@type='sourceIdentifier']checkSchematron; tei:admin[@type='subsetOwner']checkSchematron; tei:descripNote[@type='contextType']checkSchematron; tei:descripNote[@type='definitionType']checkSchematron; tei:descrip[@type='antonymConcept']checkSchematron; tei:descrip[@type='associatedConcept']checkSchematron; tei:descrip[@type='audio']checkSchematron; tei:descrip[@type='broaderConceptGeneric']checkSchematron; tei:descrip[@type='broaderConceptPartitive']checkSchematron; tei:descrip[@type='characteristic']checkSchematron; tei:descrip[@type='classificationCode']checkSchematron; tei:descrip[@type='conceptPosition']checkSchematron; tei:descrip[@type='context']checkSchematron; tei:descrip[@type='coordinateConceptGeneric']checkSchematron; tei:descrip[@type='coordinateConceptPartitive']checkSchematron; tei:descrip[@type='definition']checkSchematron; tei:descrip[@type='example']checkSchematron; tei:descrip[@type='explanation']checkSchematron; tei:descrip[@type='figure']checkSchematron; tei:descrip[@type='otherBinaryData']checkSchematron; tei:descrip[@type='quantity']checkSchematron; tei:descrip[@type='range']checkSchematron; tei:descrip[@type='relatedConcept']checkSchematron; tei:descrip[@type='relatedConceptBroader']checkSchematron; tei:descrip[@type='relatedConceptNarrower']checkSchematron; tei:descrip[@type='reliabilityCode']checkSchematron; tei:descrip[@type='sampleSentence']checkSchematron; tei:descrip[@type='sequentiallyRelatedConcept']checkSchematron; tei:descrip[@type='spatiallyRelatedConcept']checkSchematron; tei:descrip[@type='subjectField']checkSchematron; tei:descrip[@type='subordinateConceptGeneric']checkSchematron; tei:descrip[@type='subordinateConceptPartitive']checkSchematron; tei:descrip[@type='superordinateConceptGeneric']checkSchematron; tei:descrip[@type='superordinateConceptPartitive']checkSchematron; tei:descrip[@type='table']checkSchematron; tei:descrip[@type='temporallyRelatedConcept']checkSchematron; tei:descrip[@type='thesaurusDescriptor']checkSchematron; tei:descrip[@type='unit']checkSchematron; tei:descrip[@type='video']checkSchematron; tei:divcheckSchematron; tei:list[@type='termlist']/tei:itemcheckSchematron; tei:teiHeadercheckSchematron; tei:termNote[@type='abbreviatedFormFor']checkSchematron; tei:termNote[@type='administrativeStatus']checkSchematron; tei:termNote[@type='antonymTerm']checkSchematron; tei:termNote[@type='directionality']checkSchematron; tei:termNote[@type='etymology']checkSchematron; tei:termNote[@type='falseFriend']checkSchematron; tei:termNote[@type='frequency']checkSchematron; tei:termNote[@type='geographicalUsage']checkSchematron; tei:termNote[@type='grammaticalGender']checkSchematron; tei:termNote[@type='grammaticalNumber']checkSchematron; tei:termNote[@type='grammaticalValency']checkSchematron; tei:termNote[@type='homograph']checkSchematron; tei:termNote[@type='language-planningQualifier']checkSchematron; tei:termNote[@type='lionHotkey']checkSchematron; tei:termNote[@type='normativeAuthorization']checkSchematron; tei:termNote[@type='partOfSpeech']checkSchematron; tei:termNote[@type='processStatus']checkSchematron; tei:termNote[@type='pronunciation']checkSchematron; tei:termNote[@type='proprietaryRestriction']checkSchematron; tei:termNote[@type='register']checkSchematron; tei:termNote[@type='shortFormFor']checkSchematron; tei:termNote[@type='temporalQualifier']checkSchematron; tei:termNote[@type='termLocation']checkSchematron; tei:termNote[@type='termProvenance']checkSchematron; tei:termNote[@type='termStructure']checkSchematron; tei:termNote[@type='termType']checkSchematron; tei:termNote[@type='timeRestriction']checkSchematron; tei:textcheckSchematron
Parameters
QName Namespace
message No namespace
Import precedence 9
Source
<xsl:template name="generateError">
  <xsl:param name="message"/>
  <xsl:processing-instruction name="ISOerror">
    <xsl:value-of select="$message"/>
  </xsl:processing-instruction>
</xsl:template>
Stylesheet location web.xsl
Template copyIt
Namespace No namespace
Used by
Templates *checkSchematron; tei:admin[@type='applicationSubset']checkSchematron; tei:admin[@type='businessUnitSubset']checkSchematron; tei:admin[@type='conceptOrigin']checkSchematron; tei:admin[@type='customerSubset']checkSchematron; tei:admin[@type='databaseType']checkSchematron; tei:admin[@type='domainExpert']checkSchematron; tei:admin[@type='elementWorkingStatus']checkSchematron; tei:admin[@type='entrySource']checkSchematron; tei:admin[@type='environmentSubset']checkSchematron; tei:admin[@type='indexHeading']checkSchematron; tei:admin[@type='keyword']checkSchematron; tei:admin[@type='originatingDatabase']checkSchematron; tei:admin[@type='originatingInstitution']checkSchematron; tei:admin[@type='originatingPerson']checkSchematron; tei:admin[@type='productSubset']checkSchematron; tei:admin[@type='projectSubset']checkSchematron; tei:admin[@type='searchTerm']checkSchematron; tei:admin[@type='securitySubset']checkSchematron; tei:admin[@type='sortKey']checkSchematron; tei:admin[@type='sourceIdentifier']checkSchematron; tei:admin[@type='subsetOwner']checkSchematron; tei:descripNote[@type='contextType']checkSchematron; tei:descripNote[@type='definitionType']checkSchematron; tei:descrip[@type='antonymConcept']checkSchematron; tei:descrip[@type='associatedConcept']checkSchematron; tei:descrip[@type='audio']checkSchematron; tei:descrip[@type='broaderConceptGeneric']checkSchematron; tei:descrip[@type='broaderConceptPartitive']checkSchematron; tei:descrip[@type='characteristic']checkSchematron; tei:descrip[@type='classificationCode']checkSchematron; tei:descrip[@type='conceptPosition']checkSchematron; tei:descrip[@type='context']checkSchematron; tei:descrip[@type='coordinateConceptGeneric']checkSchematron; tei:descrip[@type='coordinateConceptPartitive']checkSchematron; tei:descrip[@type='definition']checkSchematron; tei:descrip[@type='example']checkSchematron; tei:descrip[@type='explanation']checkSchematron; tei:descrip[@type='figure']checkSchematron; tei:descrip[@type='otherBinaryData']checkSchematron; tei:descrip[@type='quantity']checkSchematron; tei:descrip[@type='range']checkSchematron; tei:descrip[@type='relatedConcept']checkSchematron; tei:descrip[@type='relatedConceptBroader']checkSchematron; tei:descrip[@type='relatedConceptNarrower']checkSchematron; tei:descrip[@type='reliabilityCode']checkSchematron; tei:descrip[@type='sampleSentence']checkSchematron; tei:descrip[@type='sequentiallyRelatedConcept']checkSchematron; tei:descrip[@type='spatiallyRelatedConcept']checkSchematron; tei:descrip[@type='subjectField']checkSchematron; tei:descrip[@type='subordinateConceptGeneric']checkSchematron; tei:descrip[@type='subordinateConceptPartitive']checkSchematron; tei:descrip[@type='superordinateConceptGeneric']checkSchematron; tei:descrip[@type='superordinateConceptPartitive']checkSchematron; tei:descrip[@type='table']checkSchematron; tei:descrip[@type='temporallyRelatedConcept']checkSchematron; tei:descrip[@type='thesaurusDescriptor']checkSchematron; tei:descrip[@type='unit']checkSchematron; tei:descrip[@type='video']checkSchematron; tei:divcheckSchematron; tei:list[@type='termlist']/tei:itemcheckSchematron; tei:teiHeadercheckSchematron; tei:termNote[@type='abbreviatedFormFor']checkSchematron; tei:termNote[@type='administrativeStatus']checkSchematron; tei:termNote[@type='antonymTerm']checkSchematron; tei:termNote[@type='directionality']checkSchematron; tei:termNote[@type='etymology']checkSchematron; tei:termNote[@type='falseFriend']checkSchematron; tei:termNote[@type='frequency']checkSchematron; tei:termNote[@type='geographicalUsage']checkSchematron; tei:termNote[@type='grammaticalGender']checkSchematron; tei:termNote[@type='grammaticalNumber']checkSchematron; tei:termNote[@type='grammaticalValency']checkSchematron; tei:termNote[@type='homograph']checkSchematron; tei:termNote[@type='language-planningQualifier']checkSchematron; tei:termNote[@type='lionHotkey']checkSchematron; tei:termNote[@type='normativeAuthorization']checkSchematron; tei:termNote[@type='partOfSpeech']checkSchematron; tei:termNote[@type='processStatus']checkSchematron; tei:termNote[@type='pronunciation']checkSchematron; tei:termNote[@type='proprietaryRestriction']checkSchematron; tei:termNote[@type='register']checkSchematron; tei:termNote[@type='shortFormFor']checkSchematron; tei:termNote[@type='temporalQualifier']checkSchematron; tei:termNote[@type='termLocation']checkSchematron; tei:termNote[@type='termProvenance']checkSchematron; tei:termNote[@type='termStructure']checkSchematron; tei:termNote[@type='termType']checkSchematron; tei:termNote[@type='timeRestriction']checkSchematron; tei:textcheckSchematron
Import precedence 9
Source
<xsl:template name="copyIt">
  <xsl:copy>
    <xsl:apply-templates select="@*" mode="checkSchematron"/>
    <xsl:apply-templates select="*|processing-instruction()|comment()|text()" mode="checkSchematron"/>
  </xsl:copy>
</xsl:template>
Stylesheet location web.xsl
Template copyMe
Namespace No namespace
Used by
Import precedence 9
Source
<xsl:template name="copyMe">
  <xsl:copy-of select="."/>
</xsl:template>
Stylesheet location web.xsl
Template text()
Namespace No namespace
Match text()
Mode #default
Import precedence 9
Source
<xsl:template match="text()">
  <xsl:value-of select="translate(.,'ߛ','-')"/>
</xsl:template>
Stylesheet location web.xsl
Template simpleRun
Namespace No namespace
Used by
Supersedes
Template simpleRun
Parameters
QName Namespace
italic No namespace
prefix No namespace
text No namespace
Import precedence 9
Source
<xsl:template name="simpleRun">
  <xsl:param name="text"/>
  <xsl:param name="prefix"/>
  <xsl:param name="italic"/>
  <xsl:value-of select="$prefix"/>
  <xsl:choose>
    <xsl:when test="$italic='true'">
      <i>
        <xsl:value-of select="$text"/>
      </i>
    </xsl:when>
    <xsl:otherwise>
      <xsl:value-of select="$text"/>
    </xsl:otherwise>
  </xsl:choose>
</xsl:template>
Stylesheet location web.xsl
Template tei:hi[@rend]
Namespace No namespace
Match tei:hi[@rend]
Mode #default
Import precedence 9
Priority 101
Source
<xsl:template match="tei:hi[@rend]" priority="101">
  <span>
    <xsl:if test="../@xml:lang">
      <xsl:attribute name="lang" select="../@xml:lang"/>
    </xsl:if>
    <xsl:variable name="style">
      <xsl:for-each select="tokenize(@iso:style,';')">
        <xsl:choose>
          <xsl:when test=".=''"/>
          <xsl:otherwise>
            <s>
              <xsl:value-of select="."/>
              <xsl:text>;</xsl:text>
            </s>
          </xsl:otherwise>
        </xsl:choose>
      </xsl:for-each>
      <xsl:for-each select="tokenize(@rend,' ')">
        <xsl:choose>
          <xsl:when test=".='bold'">
            <s>font-weight:bold;</s>
          </xsl:when>
          <xsl:when test=".='italic'">
            <s>font-style:italic;</s>
          </xsl:when>
          <xsl:when test=".='smallcaps'">
            <s>font-variant:small-caps;</s>
          </xsl:when>
          <xsl:when test=".='capsall'">
            <s>text-transform:capitalize;</s>
          </xsl:when>
          <xsl:when test=".='strikethrough'">
            <s>text-decoration:line-through;</s>
          </xsl:when>
          <xsl:when test=".='strikedoublethrough'">
            <s>text-decoration:line-through;</s>
          </xsl:when>
          <xsl:when test=".='underwavyline'">
            <s>text-decoration:wavy;</s>
          </xsl:when>
          <xsl:when test=".='underline'">
            <s>text-decoration:underline;</s>
          </xsl:when>
          <xsl:when test=".='underdoubleline'">
            <s>border-bottom: 3px double;</s>
          </xsl:when>
          <xsl:when test="starts-with(.,'color(')">
            <xsl:value-of select="translate(.,'()',':;')"/>
          </xsl:when>
          <xsl:when test=".='superscript'">
            <s>vertical-align: top;font-size: 70%;</s>
          </xsl:when>
          <xsl:when test=".='subscript'">
            <s>vertical-align: bottom;font-size: 70%;</s>
          </xsl:when>
          <xsl:when test="starts-with(.,'background(')">
            <s>background-color:<xsl:value-of select="substring-before(substring-after(.,'('),')')"/>
            </s>
          </xsl:when>
        </xsl:choose>
      </xsl:for-each>
      <xsl:if test="@its:dir">
        <d>
          <xsl:value-of select="@its:dir"/>
        </d>
      </xsl:if>
    </xsl:variable>
    <xsl:for-each select="$style">
      <xsl:if test="html:s">
        <xsl:attribute name="style">
          <xsl:value-of select="html:s"/>
        </xsl:attribute>
      </xsl:if>
      <xsl:if test="html:d">
        <xsl:attribute name="dir">
          <xsl:value-of select="html:d"/>
        </xsl:attribute>
      </xsl:if>
    </xsl:for-each>
    <xsl:apply-templates/>
  </span>
</xsl:template>
Stylesheet location web.xsl
Template makeHTMLHeading
Namespace No namespace
Used by
Templates pageHeader; stdheader
References
Key ISOMETA
Supersedes
Template makeHTMLHeading
Parameters
QName Namespace
class No namespace
level No namespace
text No namespace
Import precedence 9
Source
<xsl:template name="makeHTMLHeading">
  <xsl:param name="text"/>
  <xsl:param name="class">title</xsl:param>
  <xsl:param name="level">1</xsl:param>
  <xsl:if test="$class = 'maintitle'">
    <div class="healthwarning">This extract from an ISO document has been created for test purposes only. The design and layout are subject to change by ISO.</div>
  </xsl:if>
  <xsl:choose>
    <xsl:when test="key('ISOMETA','docReference')">
      <xsl:element name="h{$level}">
        <xsl:attribute name="class">
          <xsl:value-of select="$class"/>
        </xsl:attribute>
        <xsl:value-of select="substring-before(key('ISOMETA','docReference'),'(')"/>
        <br/>
        <xsl:value-of select="key('ISOMETA','fullTitle')"/>
      </xsl:element>
    </xsl:when>
    <xsl:otherwise>
      <xsl:copy-of select="$text"/>
    </xsl:otherwise>
  </xsl:choose>
</xsl:template>
Stylesheet location web.xsl
Template tei:titleStmt/tei:title
Namespace No namespace
Match tei:titleStmt/tei:title
Mode #default
Import precedence 9
Priority 99
Source
<xsl:template match="tei:titleStmt/tei:title" priority="99">
  <h1 class="maintitle">
    <xsl:apply-templates/>
  </h1>
</xsl:template>
Stylesheet location web.xsl
Template rendToClass
Namespace No namespace
Used by
Supersedes
Template rendToClass
Parameters
QName Namespace
default No namespace
id No namespace
Import precedence 9
Source
<xsl:template name="rendToClass">
  <xsl:param name="id">true</xsl:param>
  <xsl:param name="default">.</xsl:param>
  <xsl:if test="$id='true' and @xml:id">
    <xsl:attribute name="id">
      <xsl:value-of select="@xml:id"/>
    </xsl:attribute>
  </xsl:if>
  <xsl:if test="../@xml:lang">
    <xsl:attribute name="lang" select="../@xml:lang"/>
  </xsl:if>
  <xsl:variable name="style">
    <xsl:for-each select="tokenize(@iso:style,';')">
      <xsl:choose>
        <xsl:when test=".=''"/>
        <xsl:when test="starts-with(.,'direction')">
          <d>
            <xsl:value-of select="substring-after(.,':')"/>
          </d>
        </xsl:when>
        <xsl:otherwise>
          <s>
            <xsl:value-of select="."/>
            <xsl:text>;</xsl:text>
          </s>
        </xsl:otherwise>
      </xsl:choose>
    </xsl:for-each>
    <xsl:for-each select="tokenize(@rend,' ')">
      <c>
        <xsl:value-of select="."/>
      </c>
    </xsl:for-each>
    <xsl:for-each select="@type">
      <c>
        <xsl:value-of select="."/>
      </c>
    </xsl:for-each>
    <c>
      <xsl:value-of select="local-name()"/>
    </c>
  </xsl:variable>
  <xsl:for-each select="$style">
    <xsl:if test="html:s">
      <xsl:attribute name="style">
        <xsl:value-of select="html:s"/>
      </xsl:attribute>
    </xsl:if>
    <xsl:if test="html:d">
      <xsl:attribute name="dir">
        <xsl:value-of select="html:d"/>
      </xsl:attribute>
    </xsl:if>
    <xsl:if test="html:c">
      <xsl:attribute name="class">
        <xsl:value-of select="html:c[1]"/>
      </xsl:attribute>
    </xsl:if>
  </xsl:for-each>
</xsl:template>
Stylesheet location web.xsl