diff options
Diffstat (limited to 'stylesheets/lfs-xsl/docbook-xsl-snapshot/common')
25 files changed, 15727 insertions, 0 deletions
diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/common.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/common.xsl new file mode 100644 index 000000000..484e7ee2d --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/common.xsl @@ -0,0 +1,2028 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" + xmlns:dyn="http://exslt.org/dynamic" + xmlns:saxon="http://icl.com/saxon" + exclude-result-prefixes="doc dyn saxon" + version='1.0'> + +<!-- ******************************************************************** + $Id$ + ******************************************************************** + + This file is part of the XSL DocBook Stylesheet distribution. + See ../README or http://docbook.sf.net/release/xsl/current/ for + copyright and other information. + + This file contains general templates common to both the HTML and FO + versions of the DocBook stylesheets. + ******************************************************************** --> + +<doc:reference xmlns=""> +<referenceinfo> +<releaseinfo role="meta"> +$Id$ +</releaseinfo> +<author><surname>Walsh</surname> +<firstname>Norman</firstname></author> +<copyright><year>1999-2007</year> +<holder>Norman Walsh</holder> +</copyright> +</referenceinfo> +<title>Common Template Reference</title> + +<partintro id="partintro"> +<title>Introduction</title> + +<para>This is technical reference documentation for the “common” +templates in the DocBook XSL Stylesheets. The common templates are +“common” because they are shared across output formats (that is, +they’re not output-format-dependent).</para> + +<para>This documentation is not intended to be <quote>user</quote> +documentation. It is provided for developers writing +customization layers for the stylesheets, and for anyone who's +interested in <quote>how it works</quote>.</para> + +</partintro> + +</doc:reference> + +<!-- ==================================================================== --> +<!-- Establish strip/preserve whitespace rules --> + +<xsl:preserve-space elements="*"/> + +<xsl:strip-space elements=" +abstract affiliation anchor answer appendix area areaset areaspec +artheader article audiodata audioobject author authorblurb authorgroup +beginpage bibliodiv biblioentry bibliography biblioset blockquote book +bookbiblio bookinfo callout calloutlist caption caution chapter +citerefentry cmdsynopsis co collab colophon colspec confgroup +copyright dedication docinfo editor entrytbl epigraph equation +example figure footnote footnoteref formalpara funcprototype +funcsynopsis glossary glossdef glossdiv glossentry glosslist graphicco +group highlights imagedata imageobject imageobjectco important index +indexdiv indexentry indexterm info informalequation informalexample +informalfigure informaltable inlineequation inlinemediaobject +itemizedlist itermset keycombo keywordset legalnotice listitem lot +mediaobject mediaobjectco menuchoice msg msgentry msgexplan msginfo +msgmain msgrel msgset msgsub msgtext note objectinfo +orderedlist othercredit part partintro preface printhistory procedure +programlistingco publisher qandadiv qandaentry qandaset question +refentry reference refmeta refnamediv refsection refsect1 refsect1info refsect2 +refsect2info refsect3 refsect3info refsynopsisdiv refsynopsisdivinfo +revhistory revision row sbr screenco screenshot sect1 sect1info sect2 +sect2info sect3 sect3info sect4 sect4info sect5 sect5info section +sectioninfo seglistitem segmentedlist seriesinfo set setindex setinfo +shortcut sidebar simplelist simplesect spanspec step subject +subjectset substeps synopfragment table tbody textobject tfoot tgroup +thead tip toc tocchap toclevel1 toclevel2 toclevel3 toclevel4 +toclevel5 tocpart varargs variablelist varlistentry videodata +videoobject void warning subjectset + +classsynopsis +constructorsynopsis +destructorsynopsis +fieldsynopsis +methodparam +methodsynopsis +ooclass +ooexception +oointerface +simplemsgentry +manvolnum +"/> +<!-- ====================================================================== --> + +<doc:template name="is.component" xmlns=""> +<refpurpose>Tests if a given node is a component-level element</refpurpose> + +<refdescription id="is.component-desc"> +<para>This template returns '1' if the specified node is a component +(Chapter, Appendix, etc.), and '0' otherwise.</para> +</refdescription> + +<refparameter id="is.component-params"> +<variablelist> +<varlistentry><term>node</term> +<listitem> +<para>The node which is to be tested.</para> +</listitem> +</varlistentry> +</variablelist> +</refparameter> + +<refreturn id="is.component-returns"> +<para>This template returns '1' if the specified node is a component +(Chapter, Appendix, etc.), and '0' otherwise.</para> +</refreturn> +</doc:template> + +<xsl:template name="is.component"> + <xsl:param name="node" select="."/> + <xsl:choose> + <xsl:when test="local-name($node) = 'appendix' + or local-name($node) = 'article' + or local-name($node) = 'chapter' + or local-name($node) = 'preface' + or local-name($node) = 'bibliography' + or local-name($node) = 'glossary' + or local-name($node) = 'index'">1</xsl:when> + <xsl:otherwise>0</xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ====================================================================== --> + +<doc:template name="is.section" xmlns=""> +<refpurpose>Tests if a given node is a section-level element</refpurpose> + +<refdescription id="is.section-desc"> +<para>This template returns '1' if the specified node is a section +(Section, Sect1, Sect2, etc.), and '0' otherwise.</para> +</refdescription> + +<refparameter id="is.section-params"> +<variablelist> +<varlistentry><term>node</term> +<listitem> +<para>The node which is to be tested.</para> +</listitem> +</varlistentry> +</variablelist> +</refparameter> + +<refreturn id="is.section-returns"> +<para>This template returns '1' if the specified node is a section +(Section, Sect1, Sect2, etc.), and '0' otherwise.</para> +</refreturn> +</doc:template> + +<xsl:template name="is.section"> + <xsl:param name="node" select="."/> + <xsl:choose> + <xsl:when test="local-name($node) = 'section' + or local-name($node) = 'sect1' + or local-name($node) = 'sect2' + or local-name($node) = 'sect3' + or local-name($node) = 'sect4' + or local-name($node) = 'sect5' + or local-name($node) = 'refsect1' + or local-name($node) = 'refsect2' + or local-name($node) = 'refsect3' + or local-name($node) = 'simplesect'">1</xsl:when> + <xsl:otherwise>0</xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ====================================================================== --> + +<doc:template name="section.level" xmlns=""> +<refpurpose>Returns the hierarchical level of a section</refpurpose> + +<refdescription id="section.level-desc"> +<para>This template calculates the hierarchical level of a section. +The element <sgmltag>sect1</sgmltag> is at level 1, <sgmltag>sect2</sgmltag> is +at level 2, etc.</para> + +<para>Recursive sections are calculated down to the fifth level.</para> +</refdescription> + +<refparameter id="section.level-params"> +<variablelist> +<varlistentry><term>node</term> +<listitem> +<para>The section node for which the level should be calculated. +Defaults to the context node.</para> +</listitem> +</varlistentry> +</variablelist> +</refparameter> + +<refreturn id="section.level-returns"> +<para>The section level, <quote>1</quote>, <quote>2</quote>, etc. +</para> +</refreturn> +</doc:template> + +<xsl:template name="section.level"> + <xsl:param name="node" select="."/> + <xsl:choose> + <xsl:when test="local-name($node)='sect1'">1</xsl:when> + <xsl:when test="local-name($node)='sect2'">2</xsl:when> + <xsl:when test="local-name($node)='sect3'">3</xsl:when> + <xsl:when test="local-name($node)='sect4'">4</xsl:when> + <xsl:when test="local-name($node)='sect5'">5</xsl:when> + <xsl:when test="local-name($node)='section'"> + <xsl:choose> + <xsl:when test="$node/../../../../../../section">6</xsl:when> + <xsl:when test="$node/../../../../../section">5</xsl:when> + <xsl:when test="$node/../../../../section">4</xsl:when> + <xsl:when test="$node/../../../section">3</xsl:when> + <xsl:when test="$node/../../section">2</xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:when test="local-name($node)='refsect1' or + local-name($node)='refsect2' or + local-name($node)='refsect3' or + local-name($node)='refsection' or + local-name($node)='refsynopsisdiv'"> + <xsl:call-template name="refentry.section.level"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="local-name($node)='simplesect'"> + <xsl:choose> + <xsl:when test="$node/../../sect1">2</xsl:when> + <xsl:when test="$node/../../sect2">3</xsl:when> + <xsl:when test="$node/../../sect3">4</xsl:when> + <xsl:when test="$node/../../sect4">5</xsl:when> + <xsl:when test="$node/../../sect5">5</xsl:when> + <xsl:when test="$node/../../section"> + <xsl:choose> + <xsl:when test="$node/../../../../../section">5</xsl:when> + <xsl:when test="$node/../../../../section">4</xsl:when> + <xsl:when test="$node/../../../section">3</xsl:when> + <xsl:otherwise>2</xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> +</xsl:template><!-- section.level --> + +<doc:template name="qanda.section.level" xmlns=""> +<refpurpose>Returns the hierarchical level of a QandASet</refpurpose> + +<refdescription id="qanda.section.level-desc"> +<para>This template calculates the hierarchical level of a QandASet. +</para> +</refdescription> + +<refreturn id="qanda.section.level-returns"> +<para>The level, <quote>1</quote>, <quote>2</quote>, etc. +</para> +</refreturn> +</doc:template> + +<xsl:template name="qanda.section.level"> + <xsl:variable name="section" + select="(ancestor::section + |ancestor::simplesect + |ancestor::sect5 + |ancestor::sect4 + |ancestor::sect3 + |ancestor::sect2 + |ancestor::sect1 + |ancestor::refsect3 + |ancestor::refsect2 + |ancestor::refsect1)[last()]"/> + + <xsl:choose> + <xsl:when test="count($section) = '0'">1</xsl:when> + <xsl:otherwise> + <xsl:variable name="slevel"> + <xsl:call-template name="section.level"> + <xsl:with-param name="node" select="$section"/> + </xsl:call-template> + </xsl:variable> + <xsl:value-of select="$slevel + 1"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- Finds the total section depth of a section in a refentry --> +<xsl:template name="refentry.section.level"> + <xsl:param name="node" select="."/> + + <xsl:variable name="RElevel"> + <xsl:call-template name="refentry.level"> + <xsl:with-param name="node" select="$node/ancestor::refentry[1]"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="levelinRE"> + <xsl:choose> + <xsl:when test="local-name($node)='refsynopsisdiv'">1</xsl:when> + <xsl:when test="local-name($node)='refsect1'">1</xsl:when> + <xsl:when test="local-name($node)='refsect2'">2</xsl:when> + <xsl:when test="local-name($node)='refsect3'">3</xsl:when> + <xsl:when test="local-name($node)='refsection'"> + <xsl:choose> + <xsl:when test="$node/../../../../../refsection">5</xsl:when> + <xsl:when test="$node/../../../../refsection">4</xsl:when> + <xsl:when test="$node/../../../refsection">3</xsl:when> + <xsl:when test="$node/../../refsection">2</xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> + </xsl:when> + </xsl:choose> + </xsl:variable> + + <xsl:value-of select="$levelinRE + $RElevel"/> +</xsl:template> + +<!-- Finds the section depth of a refentry --> +<xsl:template name="refentry.level"> + <xsl:param name="node" select="."/> + <xsl:variable name="container" + select="($node/ancestor::section | + $node/ancestor::sect1 | + $node/ancestor::sect2 | + $node/ancestor::sect3 | + $node/ancestor::sect4 | + $node/ancestor::sect5)[last()]"/> + + <xsl:choose> + <xsl:when test="$container"> + <xsl:variable name="slevel"> + <xsl:call-template name="section.level"> + <xsl:with-param name="node" select="$container"/> + </xsl:call-template> + </xsl:variable> + <xsl:value-of select="$slevel + 1"/> + </xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="qandadiv.section.level"> + <xsl:variable name="section.level"> + <xsl:call-template name="qanda.section.level"/> + </xsl:variable> + <xsl:variable name="anc.divs" select="ancestor::qandadiv"/> + + <xsl:value-of select="count($anc.divs) + number($section.level)"/> +</xsl:template> + +<xsl:template name="question.answer.label"> + <xsl:variable name="deflabel"> + <xsl:choose> + <xsl:when test="ancestor-or-self::*[@defaultlabel]"> + <xsl:value-of select="(ancestor-or-self::*[@defaultlabel])[last()] + /@defaultlabel"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$qanda.defaultlabel"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="label" select="@label"/> + +<!-- + (hnr (hierarchical-number-recursive (normalize "qandadiv") node)) + + (parsect (ancestor-member node (section-element-list))) + + (defnum (if (and %qanda-inherit-numeration% + %section-autolabel%) + (if (node-list-empty? parsect) + (section-autolabel-prefix node) + (section-autolabel parsect)) + "")) + + (hnumber (let loop ((numlist hnr) (number defnum) + (sep (if (equal? defnum "") "" "."))) + (if (null? numlist) + number + (loop (cdr numlist) + (string-append number + sep + (number->string (car numlist))) + ".")))) + (cnumber (child-number (parent node))) + (number (string-append hnumber + (if (equal? hnumber "") + "" + ".") + (number->string cnumber)))) +--> + + <xsl:choose> + <xsl:when test="$deflabel = 'qanda'"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key"> + <xsl:choose> + <xsl:when test="local-name(.) = 'question'">question</xsl:when> + <xsl:when test="local-name(.) = 'answer'">answer</xsl:when> + <xsl:when test="local-name(.) = 'qandadiv'">qandadiv</xsl:when> + <xsl:otherwise>qandaset</xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="$deflabel = 'label'"> + <xsl:value-of select="$label"/> + </xsl:when> + <xsl:when test="$deflabel = 'number' + and local-name(.) = 'question'"> + <xsl:apply-templates select="ancestor::qandaset[1]" + mode="number"/> + <xsl:choose> + <xsl:when test="ancestor::qandadiv"> + <xsl:apply-templates select="ancestor::qandadiv[1]" + mode="number"/> + <xsl:apply-templates select="ancestor::qandaentry" + mode="number"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="ancestor::qandaentry" + mode="number"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <!-- nothing --> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="qandaset" mode="number"> + <!-- FIXME: --> +</xsl:template> + +<xsl:template match="qandadiv" mode="number"> + <xsl:number level="multiple" from="qandaset" format="1."/> +</xsl:template> + +<xsl:template match="qandaentry" mode="number"> + <xsl:choose> + <xsl:when test="ancestor::qandadiv"> + <xsl:number level="single" from="qandadiv" format="1."/> + </xsl:when> + <xsl:otherwise> + <xsl:number level="single" from="qandaset" format="1."/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ====================================================================== --> + +<xsl:template name="object.id"> + <xsl:param name="object" select="."/> + <xsl:choose> + <xsl:when test="$object/@id"> + <xsl:value-of select="$object/@id"/> + </xsl:when> + <xsl:when test="$object/@xml:id"> + <xsl:value-of select="$object/@xml:id"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="generate-id($object)"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="person.name"> + <!-- Formats a personal name. Handles corpauthor as a special case. --> + <xsl:param name="node" select="."/> + + <xsl:variable name="style"> + <xsl:choose> + <xsl:when test="$node/@role"> + <xsl:value-of select="$node/@role"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'styles'"/> + <xsl:with-param name="name" select="'person-name'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:choose> + <!-- the personname element is a specialcase --> + <xsl:when test="$node/personname"> + <xsl:call-template name="person.name"> + <xsl:with-param name="node" select="$node/personname"/> + </xsl:call-template> + </xsl:when> + + <!-- handle corpauthor as a special case...--> + <!-- * MikeSmith 2007-06: I'm wondering if the person.name template --> + <!-- * actually ever gets called to handle corpauthor.. maybe --> + <!-- * we don't actually need to check for corpauthor here. --> + <xsl:when test="local-name($node)='corpauthor'"> + <xsl:apply-templates select="$node"/> + </xsl:when> + + <xsl:otherwise> + <xsl:choose> + <!-- Handle case when personname contains only general markup (DocBook 5.0) --> + <xsl:when test="$node/self::personname and not($node/firstname or $node/honorific or $node/lineage or $node/othername or $node/surname)"> + <xsl:apply-templates select="$node/node()"/> + </xsl:when> + <xsl:when test="$style = 'family-given'"> + <xsl:call-template name="person.name.family-given"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$style = 'last-first'"> + <xsl:call-template name="person.name.last-first"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="person.name.first-last"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="person.name.family-given"> + <xsl:param name="node" select="."/> + + <!-- The family-given style applies a convention for identifying given --> + <!-- and family names in locales where it may be ambiguous --> + <xsl:apply-templates select="$node//surname[1]"/> + + <xsl:if test="$node//surname and $node//firstname"> + <xsl:text> </xsl:text> + </xsl:if> + + <xsl:apply-templates select="$node//firstname[1]"/> + + <xsl:text> [FAMILY Given]</xsl:text> +</xsl:template> + +<xsl:template name="person.name.last-first"> + <xsl:param name="node" select="."/> + + <xsl:apply-templates select="$node//surname[1]"/> + + <xsl:if test="$node//surname and $node//firstname"> + <xsl:text>, </xsl:text> + </xsl:if> + + <xsl:apply-templates select="$node//firstname[1]"/> +</xsl:template> + +<xsl:template name="person.name.first-last"> + <xsl:param name="node" select="."/> + + <xsl:if test="$node//honorific"> + <xsl:apply-templates select="$node//honorific[1]"/> + <xsl:value-of select="$punct.honorific"/> + </xsl:if> + + <xsl:if test="$node//firstname"> + <xsl:if test="$node//honorific"> + <xsl:text> </xsl:text> + </xsl:if> + <xsl:apply-templates select="$node//firstname[1]"/> + </xsl:if> + + <xsl:if test="$node//othername and $author.othername.in.middle != 0"> + <xsl:if test="$node//honorific or $node//firstname"> + <xsl:text> </xsl:text> + </xsl:if> + <xsl:apply-templates select="$node//othername[1]"/> + </xsl:if> + + <xsl:if test="$node//surname"> + <xsl:if test="$node//honorific or $node//firstname + or ($node//othername and $author.othername.in.middle != 0)"> + <xsl:text> </xsl:text> + </xsl:if> + <xsl:apply-templates select="$node//surname[1]"/> + </xsl:if> + + <xsl:if test="$node//lineage"> + <xsl:text>, </xsl:text> + <xsl:apply-templates select="$node//lineage[1]"/> + </xsl:if> +</xsl:template> + +<xsl:template name="person.name.list"> + <!-- Return a formatted string representation of the contents of + the current element. The current element must contain one or + more AUTHORs, CORPAUTHORs, OTHERCREDITs, and/or EDITORs. + + John Doe + or + John Doe and Jane Doe + or + John Doe, Jane Doe, and A. Nonymous + --> + <xsl:param name="person.list" + select="author|corpauthor|othercredit|editor"/> + <xsl:param name="person.count" select="count($person.list)"/> + <xsl:param name="count" select="1"/> + + <xsl:choose> + <xsl:when test="$count > $person.count"></xsl:when> + <xsl:otherwise> + <xsl:call-template name="person.name"> + <xsl:with-param name="node" select="$person.list[position()=$count]"/> + </xsl:call-template> + + <xsl:choose> + <xsl:when test="$person.count = 2 and $count = 1"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'authorgroup'"/> + <xsl:with-param name="name" select="'sep2'"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$person.count > 2 and $count+1 = $person.count"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'authorgroup'"/> + <xsl:with-param name="name" select="'seplast'"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$count < $person.count"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'authorgroup'"/> + <xsl:with-param name="name" select="'sep'"/> + </xsl:call-template> + </xsl:when> + </xsl:choose> + + <xsl:call-template name="person.name.list"> + <xsl:with-param name="person.list" select="$person.list"/> + <xsl:with-param name="person.count" select="$person.count"/> + <xsl:with-param name="count" select="$count+1"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template><!-- person.name.list --> + +<!-- === synopsis ======================================================= --> +<!-- The following definitions match those given in the reference + documentation for DocBook V3.0 +--> + +<xsl:variable name="arg.choice.opt.open.str">[</xsl:variable> +<xsl:variable name="arg.choice.opt.close.str">]</xsl:variable> +<xsl:variable name="arg.choice.req.open.str">{</xsl:variable> +<xsl:variable name="arg.choice.req.close.str">}</xsl:variable> +<xsl:variable name="arg.choice.plain.open.str"><xsl:text> </xsl:text></xsl:variable> +<xsl:variable name="arg.choice.plain.close.str"><xsl:text> </xsl:text></xsl:variable> +<xsl:variable name="arg.choice.def.open.str">[</xsl:variable> +<xsl:variable name="arg.choice.def.close.str">]</xsl:variable> +<xsl:variable name="arg.rep.repeat.str">...</xsl:variable> +<xsl:variable name="arg.rep.norepeat.str"></xsl:variable> +<xsl:variable name="arg.rep.def.str"></xsl:variable> +<xsl:variable name="arg.or.sep"> | </xsl:variable> +<xsl:variable name="cmdsynopsis.hanging.indent">4pi</xsl:variable> + +<!-- ====================================================================== --> + +<!-- +<xsl:template name="xref.g.subst"> + <xsl:param name="string"></xsl:param> + <xsl:param name="target" select="."/> + <xsl:variable name="subst">%g</xsl:variable> + + <xsl:choose> + <xsl:when test="contains($string, $subst)"> + <xsl:value-of select="substring-before($string, $subst)"/> + <xsl:call-template name="gentext.element.name"> + <xsl:with-param name="element.name" select="local-name($target)"/> + </xsl:call-template> + <xsl:call-template name="xref.g.subst"> + <xsl:with-param name="string" + select="substring-after($string, $subst)"/> + <xsl:with-param name="target" select="$target"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$string"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="xref.t.subst"> + <xsl:param name="string"></xsl:param> + <xsl:param name="target" select="."/> + <xsl:variable name="subst">%t</xsl:variable> + + <xsl:choose> + <xsl:when test="contains($string, $subst)"> + <xsl:call-template name="xref.g.subst"> + <xsl:with-param name="string" + select="substring-before($string, $subst)"/> + <xsl:with-param name="target" select="$target"/> + </xsl:call-template> + <xsl:call-template name="title.xref"> + <xsl:with-param name="target" select="$target"/> + </xsl:call-template> + <xsl:call-template name="xref.t.subst"> + <xsl:with-param name="string" + select="substring-after($string, $subst)"/> + <xsl:with-param name="target" select="$target"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="xref.g.subst"> + <xsl:with-param name="string" select="$string"/> + <xsl:with-param name="target" select="$target"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="xref.n.subst"> + <xsl:param name="string"></xsl:param> + <xsl:param name="target" select="."/> + <xsl:variable name="subst">%n</xsl:variable> + + <xsl:choose> + <xsl:when test="contains($string, $subst)"> + <xsl:call-template name="xref.t.subst"> + <xsl:with-param name="string" + select="substring-before($string, $subst)"/> + <xsl:with-param name="target" select="$target"/> + </xsl:call-template> + <xsl:call-template name="number.xref"> + <xsl:with-param name="target" select="$target"/> + </xsl:call-template> + <xsl:call-template name="xref.t.subst"> + <xsl:with-param name="string" + select="substring-after($string, $subst)"/> + <xsl:with-param name="target" select="$target"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="xref.t.subst"> + <xsl:with-param name="string" select="$string"/> + <xsl:with-param name="target" select="$target"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="subst.xref.text"> + <xsl:param name="xref.text"></xsl:param> + <xsl:param name="target" select="."/> + + <xsl:call-template name="xref.n.subst"> + <xsl:with-param name="string" select="$xref.text"/> + <xsl:with-param name="target" select="$target"/> + </xsl:call-template> +</xsl:template> +--> + +<!-- ====================================================================== --> + +<xsl:template name="filename-basename"> + <!-- We assume all filenames are really URIs and use "/" --> + <xsl:param name="filename"></xsl:param> + <xsl:param name="recurse" select="false()"/> + + <xsl:choose> + <xsl:when test="substring-after($filename, '/') != ''"> + <xsl:call-template name="filename-basename"> + <xsl:with-param name="filename" + select="substring-after($filename, '/')"/> + <xsl:with-param name="recurse" select="true()"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$filename"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="filename-extension"> + <xsl:param name="filename"></xsl:param> + <xsl:param name="recurse" select="false()"/> + + <!-- Make sure we only look at the base name... --> + <xsl:variable name="basefn"> + <xsl:choose> + <xsl:when test="$recurse"> + <xsl:value-of select="$filename"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="filename-basename"> + <xsl:with-param name="filename" select="$filename"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:choose> + <xsl:when test="substring-after($basefn, '.') != ''"> + <xsl:call-template name="filename-extension"> + <xsl:with-param name="filename" + select="substring-after($basefn, '.')"/> + <xsl:with-param name="recurse" select="true()"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$recurse"> + <xsl:value-of select="$basefn"/> + </xsl:when> + <xsl:otherwise></xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ====================================================================== --> + +<doc:template name="select.mediaobject" xmlns=""> +<refpurpose>Selects and processes an appropriate media object from a list</refpurpose> + +<refdescription id="select.mediaobject-desc"> +<para>This template takes a list of media objects (usually the +children of a mediaobject or inlinemediaobject) and processes +the "right" object.</para> + +<para>This template relies on a template named +"select.mediaobject.index" to determine which object +in the list is appropriate.</para> + +<para>If no acceptable object is located, nothing happens.</para> +</refdescription> + +<refparameter id="select.mediaobject-params"> +<variablelist> +<varlistentry><term>olist</term> +<listitem> +<para>The node list of potential objects to examine.</para> +</listitem> +</varlistentry> +</variablelist> +</refparameter> + +<refreturn id="select.mediaobject-returns"> +<para>Calls <xsl:apply-templates> on the selected object.</para> +</refreturn> +</doc:template> + +<xsl:template name="select.mediaobject"> + <xsl:param name="olist" + select="imageobject|imageobjectco + |videoobject|audioobject|textobject"/> + + <xsl:variable name="mediaobject.index"> + <xsl:call-template name="select.mediaobject.index"> + <xsl:with-param name="olist" select="$olist"/> + <xsl:with-param name="count" select="1"/> + </xsl:call-template> + </xsl:variable> + + <xsl:if test="$mediaobject.index != ''"> + <xsl:apply-templates select="$olist[position() = $mediaobject.index]"/> + </xsl:if> +</xsl:template> + +<!-- ====================================================================== --> + +<doc:template name="select.mediaobject.index" xmlns=""> +<refpurpose>Selects the position of the appropriate media object from a list</refpurpose> + +<refdescription id="select.mediaobject.index-desc"> +<para>This template takes a list of media objects (usually the +children of a mediaobject or inlinemediaobject) and determines +the "right" object. It returns the position of that object +to be used by the calling template.</para> + +<para>If the parameter <parameter>use.role.for.mediaobject</parameter> +is nonzero, then it first checks for an object with +a role attribute of the appropriate value. It takes the first +of those. Otherwise, it takes the first acceptable object +through a recursive pass through the list.</para> + +<para>This template relies on a template named "is.acceptable.mediaobject" +to determine if a given object is an acceptable graphic. The semantics +of media objects is that the first acceptable graphic should be used. +</para> + +<para>If no acceptable object is located, no index is returned.</para> +</refdescription> + +<refparameter id="select.mediaobject.index-params"> +<variablelist> +<varlistentry><term>olist</term> +<listitem> +<para>The node list of potential objects to examine.</para> +</listitem> +</varlistentry> +<varlistentry><term>count</term> +<listitem> +<para>The position in the list currently being considered by the +recursive process.</para> +</listitem> +</varlistentry> +</variablelist> +</refparameter> + +<refreturn id="select.mediaobject.index-returns"> +<para>Returns the position in the original list of the selected object.</para> +</refreturn> +</doc:template> + +<xsl:template name="select.mediaobject.index"> + <xsl:param name="olist" + select="imageobject|imageobjectco + |videoobject|audioobject|textobject"/> + <xsl:param name="count">1</xsl:param> + + <xsl:choose> + <!-- Test for objects preferred by role --> + <xsl:when test="$use.role.for.mediaobject != 0 + and $preferred.mediaobject.role != '' + and $olist[@role = $preferred.mediaobject.role]"> + + <!-- Get the first hit's position index --> + <xsl:for-each select="$olist"> + <xsl:if test="@role = $preferred.mediaobject.role and + not(preceding-sibling::*[@role = $preferred.mediaobject.role])"> + <xsl:value-of select="position()"/> + </xsl:if> + </xsl:for-each> + </xsl:when> + + <xsl:when test="$use.role.for.mediaobject != 0 + and $olist[@role = $stylesheet.result.type]"> + <!-- Get the first hit's position index --> + <xsl:for-each select="$olist"> + <xsl:if test="@role = $stylesheet.result.type and + not(preceding-sibling::*[@role = $stylesheet.result.type])"> + <xsl:value-of select="position()"/> + </xsl:if> + </xsl:for-each> + </xsl:when> + <!-- Accept 'html' for $stylesheet.result.type = 'xhtml' --> + <xsl:when test="$use.role.for.mediaobject != 0 + and $stylesheet.result.type = 'xhtml' + and $olist[@role = 'html']"> + <!-- Get the first hit's position index --> + <xsl:for-each select="$olist"> + <xsl:if test="@role = 'html' and + not(preceding-sibling::*[@role = 'html'])"> + <xsl:value-of select="position()"/> + </xsl:if> + </xsl:for-each> + </xsl:when> + + <!-- If no selection by role, and there is only one object, use it --> + <xsl:when test="count($olist) = 1 and $count = 1"> + <xsl:value-of select="$count"/> + </xsl:when> + + <xsl:otherwise> + <!-- Otherwise select first acceptable object --> + <xsl:if test="$count <= count($olist)"> + <xsl:variable name="object" select="$olist[position()=$count]"/> + + <xsl:variable name="useobject"> + <xsl:choose> + <!-- The phrase is used only when contains TeX Math and output is FO --> + <xsl:when test="local-name($object)='textobject' and $object/phrase + and $object/@role='tex' and $stylesheet.result.type = 'fo' + and $tex.math.in.alt != ''"> + <xsl:text>1</xsl:text> + </xsl:when> + <!-- The phrase is never used --> + <xsl:when test="local-name($object)='textobject' and $object/phrase"> + <xsl:text>0</xsl:text> + </xsl:when> + <xsl:when test="local-name($object)='textobject' + and $object/ancestor::equation "> + <!-- The first textobject is not a reasonable fallback + for equation image --> + <xsl:text>0</xsl:text> + </xsl:when> + <!-- The first textobject is a reasonable fallback --> + <xsl:when test="local-name($object)='textobject' + and $object[not(@role) or @role!='tex']"> + <xsl:text>1</xsl:text> + </xsl:when> + <!-- don't use graphic when output is FO, TeX Math is used + and there is math in alt element --> + <xsl:when test="$object/ancestor::equation and + $object/ancestor::equation/alt[@role='tex'] + and $stylesheet.result.type = 'fo' + and $tex.math.in.alt != ''"> + <xsl:text>0</xsl:text> + </xsl:when> + <!-- If there's only one object, use it --> + <xsl:when test="$count = 1 and count($olist) = 1"> + <xsl:text>1</xsl:text> + </xsl:when> + <!-- Otherwise, see if this one is a useable graphic --> + <xsl:otherwise> + <xsl:choose> + <!-- peek inside imageobjectco to simplify the test --> + <xsl:when test="local-name($object) = 'imageobjectco'"> + <xsl:call-template name="is.acceptable.mediaobject"> + <xsl:with-param name="object" select="$object/imageobject"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="is.acceptable.mediaobject"> + <xsl:with-param name="object" select="$object"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$useobject='1'"> + <xsl:value-of select="$count"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="select.mediaobject.index"> + <xsl:with-param name="olist" select="$olist"/> + <xsl:with-param name="count" select="$count + 1"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:if> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<doc:template name="is.acceptable.mediaobject" xmlns=""> +<refpurpose>Returns '1' if the specified media object is recognized</refpurpose> + +<refdescription id="is.acceptable.mediaobject-desc"> +<para>This template examines a media object and returns '1' if the +object is recognized as a graphic.</para> +</refdescription> + +<refparameter id="is.acceptable.mediaobject-params"> +<variablelist> +<varlistentry><term>object</term> +<listitem> +<para>The media object to consider.</para> +</listitem> +</varlistentry> +</variablelist> +</refparameter> + +<refreturn id="is.acceptable.mediaobject-returns"> +<para>0 or 1</para> +</refreturn> +</doc:template> + +<xsl:template name="is.acceptable.mediaobject"> + <xsl:param name="object"></xsl:param> + + <xsl:variable name="filename"> + <xsl:call-template name="mediaobject.filename"> + <xsl:with-param name="object" select="$object"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="ext"> + <xsl:call-template name="filename-extension"> + <xsl:with-param name="filename" select="$filename"/> + </xsl:call-template> + </xsl:variable> + + <!-- there will only be one --> + <xsl:variable name="data" select="$object/videodata + |$object/imagedata + |$object/audiodata"/> + + <xsl:variable name="format" select="$data/@format"/> + + <xsl:variable name="graphic.format"> + <xsl:if test="$format"> + <xsl:call-template name="is.graphic.format"> + <xsl:with-param name="format" select="$format"/> + </xsl:call-template> + </xsl:if> + </xsl:variable> + + <xsl:variable name="graphic.ext"> + <xsl:if test="$ext"> + <xsl:call-template name="is.graphic.extension"> + <xsl:with-param name="ext" select="$ext"/> + </xsl:call-template> + </xsl:if> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$use.svg = 0 and $format = 'SVG'">0</xsl:when> + <xsl:when xmlns:svg="http://www.w3.org/2000/svg" + test="$use.svg != 0 and $object/svg:*">1</xsl:when> + <xsl:when test="$graphic.format = '1'">1</xsl:when> + <xsl:when test="$graphic.ext = '1'">1</xsl:when> + <xsl:otherwise>0</xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="mediaobject.filename"> + <xsl:param name="object"></xsl:param> + + <xsl:variable name="data" select="$object/videodata + |$object/imagedata + |$object/audiodata + |$object"/> + + <xsl:variable name="filename"> + <xsl:choose> + <xsl:when test="$data[@fileref]"> + <xsl:apply-templates select="$data/@fileref"/> + </xsl:when> + <xsl:when test="$data[@entityref]"> + <xsl:value-of select="unparsed-entity-uri($data/@entityref)"/> + </xsl:when> + <xsl:otherwise></xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="real.ext"> + <xsl:call-template name="filename-extension"> + <xsl:with-param name="filename" select="$filename"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="ext"> + <xsl:choose> + <xsl:when test="$real.ext != ''"> + <xsl:value-of select="$real.ext"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$graphic.default.extension"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="graphic.ext"> + <xsl:call-template name="is.graphic.extension"> + <xsl:with-param name="ext" select="$ext"/> + </xsl:call-template> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$real.ext = ''"> + <xsl:choose> + <xsl:when test="$ext != ''"> + <xsl:value-of select="$filename"/> + <xsl:text>.</xsl:text> + <xsl:value-of select="$ext"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$filename"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:when test="not($graphic.ext)"> + <xsl:choose> + <xsl:when test="$graphic.default.extension != ''"> + <xsl:value-of select="$filename"/> + <xsl:text>.</xsl:text> + <xsl:value-of select="$graphic.default.extension"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$filename"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$filename"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ====================================================================== --> + +<doc:template name="check.id.unique" xmlns=""> +<refpurpose>Warn users about references to non-unique IDs</refpurpose> +<refdescription id="check.id.unique-desc"> +<para>If passed an ID in <varname>linkend</varname>, +<function>check.id.unique</function> prints +a warning message to the user if either the ID does not exist or +the ID is not unique.</para> +</refdescription> +</doc:template> + +<xsl:template name="check.id.unique"> + <xsl:param name="linkend"></xsl:param> + <xsl:if test="$linkend != ''"> + <xsl:variable name="targets" select="key('id',$linkend)"/> + <xsl:variable name="target" select="$targets[1]"/> + + <xsl:if test="count($targets)=0"> + <xsl:message> + <xsl:text>Error: no ID for constraint linkend: </xsl:text> + <xsl:value-of select="$linkend"/> + <xsl:text>.</xsl:text> + </xsl:message> + <!-- + <xsl:message> + <xsl:text>If the ID exists in your document, did your </xsl:text> + <xsl:text>XSLT Processor load the DTD?</xsl:text> + </xsl:message> + --> + </xsl:if> + + <xsl:if test="count($targets)>1"> + <xsl:message> + <xsl:text>Warning: multiple "IDs" for constraint linkend: </xsl:text> + <xsl:value-of select="$linkend"/> + <xsl:text>.</xsl:text> + </xsl:message> + </xsl:if> + </xsl:if> +</xsl:template> + +<doc:template name="check.idref.targets" xmlns=""> +<refpurpose>Warn users about incorrectly typed references</refpurpose> +<refdescription id="check.idref.targets-desc"> +<para>If passed an ID in <varname>linkend</varname>, +<function>check.idref.targets</function> makes sure that the element +pointed to by the link is one of the elements listed in +<varname>element-list</varname> and warns the user otherwise.</para> +</refdescription> +</doc:template> + +<xsl:template name="check.idref.targets"> + <xsl:param name="linkend"></xsl:param> + <xsl:param name="element-list"></xsl:param> + <xsl:if test="$linkend != ''"> + <xsl:variable name="targets" select="key('id',$linkend)"/> + <xsl:variable name="target" select="$targets[1]"/> + + <xsl:if test="count($target) > 0"> + <xsl:if test="not(contains(concat(' ', $element-list, ' '), local-name($target)))"> + <xsl:message> + <xsl:text>Error: linkend (</xsl:text> + <xsl:value-of select="$linkend"/> + <xsl:text>) points to "</xsl:text> + <xsl:value-of select="local-name($target)"/> + <xsl:text>" not (one of): </xsl:text> + <xsl:value-of select="$element-list"/> + </xsl:message> + </xsl:if> + </xsl:if> + </xsl:if> +</xsl:template> + +<!-- ====================================================================== --> +<!-- Procedure Step Numeration --> + +<xsl:param name="procedure.step.numeration.formats" select="'1aiAI'"/> + +<xsl:template name="procedure.step.numeration"> + <xsl:param name="context" select="."/> + <xsl:variable name="format.length" + select="string-length($procedure.step.numeration.formats)"/> + <xsl:choose> + <xsl:when test="local-name($context) = 'substeps'"> + <xsl:variable name="ssdepth" + select="count($context/ancestor::substeps)"/> + <xsl:variable name="sstype" select="($ssdepth mod $format.length)+2"/> + <xsl:choose> + <xsl:when test="$sstype > $format.length"> + <xsl:value-of select="substring($procedure.step.numeration.formats,1,1)"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="substring($procedure.step.numeration.formats,$sstype,1)"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:when test="local-name($context) = 'step'"> + <xsl:variable name="sdepth" + select="count($context/ancestor::substeps)"/> + <xsl:variable name="stype" select="($sdepth mod $format.length)+1"/> + <xsl:value-of select="substring($procedure.step.numeration.formats,$stype,1)"/> + </xsl:when> + <xsl:otherwise> + <xsl:message> + <xsl:text>Unexpected context in procedure.step.numeration: </xsl:text> + <xsl:value-of select="local-name($context)"/> + </xsl:message> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="step" mode="number"> + <xsl:param name="rest" select="''"/> + <xsl:param name="recursive" select="1"/> + <xsl:variable name="format"> + <xsl:call-template name="procedure.step.numeration"/> + </xsl:variable> + <xsl:variable name="num"> + <xsl:number count="step" format="{$format}"/> + </xsl:variable> + <xsl:choose> + <xsl:when test="$recursive != 0 and ancestor::step"> + <xsl:apply-templates select="ancestor::step[1]" mode="number"> + <xsl:with-param name="rest" select="concat('.', $num, $rest)"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="concat($num, $rest)"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ====================================================================== --> +<!-- OrderedList Numeration --> + +<xsl:template name="orderedlist-starting-number"> + <xsl:param name="list" select="."/> + + <!-- Need a neutral dbxxx --> + <xsl:variable name="pi-html-start"> + <xsl:call-template name="pi-attribute"> + <xsl:with-param name="pis" + select="$list/processing-instruction('dbhtml')"/> + <xsl:with-param name="attribute" select="'start'"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="pi-fo-start"> + <xsl:call-template name="pi-attribute"> + <xsl:with-param name="pis" + select="$list/processing-instruction('dbfo')"/> + <xsl:with-param name="attribute" select="'start'"/> + </xsl:call-template> + </xsl:variable> + + <xsl:choose> + <xsl:when test="not($list/@continuation = 'continues')"> + <xsl:choose> + <xsl:when test="@startingnumber"> + <xsl:value-of select="@startingnumber"/> + </xsl:when> + <xsl:when test="$pi-html-start != ''"> + <xsl:value-of select="$pi-html-start"/> + </xsl:when> + <xsl:when test="$pi-fo-start != ''"> + <xsl:value-of select="$pi-fo-start"/> + </xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:variable name="prevlist" + select="$list/preceding::orderedlist[1]"/> + <xsl:choose> + <xsl:when test="count($prevlist) = 0">2</xsl:when> + <xsl:otherwise> + <xsl:variable name="prevlength" select="count($prevlist/listitem)"/> + <xsl:variable name="prevstart"> + <xsl:call-template name="orderedlist-starting-number"> + <xsl:with-param name="list" select="$prevlist"/> + </xsl:call-template> + </xsl:variable> + <xsl:value-of select="$prevstart + $prevlength"/> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="orderedlist-item-number"> + <!-- context node must be a listitem in an orderedlist --> + <xsl:param name="node" select="."/> + + <xsl:choose> + <xsl:when test="$node/@override"> + <xsl:value-of select="$node/@override"/> + </xsl:when> + <xsl:when test="$node/preceding-sibling::listitem"> + <xsl:variable name="pnum"> + <xsl:call-template name="orderedlist-item-number"> + <xsl:with-param name="node" select="$node/preceding-sibling::listitem[1]"/> + </xsl:call-template> + </xsl:variable> + <xsl:value-of select="$pnum + 1"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="orderedlist-starting-number"> + <xsl:with-param name="list" select="parent::*"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="next.numeration"> + <xsl:param name="numeration" select="'default'"/> + <xsl:choose> + <!-- Change this list if you want to change the order of numerations --> + <xsl:when test="$numeration = 'arabic'">loweralpha</xsl:when> + <xsl:when test="$numeration = 'loweralpha'">lowerroman</xsl:when> + <xsl:when test="$numeration = 'lowerroman'">upperalpha</xsl:when> + <xsl:when test="$numeration = 'upperalpha'">upperroman</xsl:when> + <xsl:when test="$numeration = 'upperroman'">arabic</xsl:when> + <xsl:otherwise>arabic</xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="list.numeration"> + <xsl:param name="node" select="."/> + + <xsl:choose> + <xsl:when test="$node/@numeration"> + <xsl:value-of select="$node/@numeration"/> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="$node/ancestor::orderedlist"> + <xsl:call-template name="next.numeration"> + <xsl:with-param name="numeration"> + <xsl:call-template name="list.numeration"> + <xsl:with-param name="node" select="$node/ancestor::orderedlist[1]"/> + </xsl:call-template> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="next.numeration"/> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ====================================================================== --> +<!-- ItemizedList "Numeration" --> + +<xsl:template name="next.itemsymbol"> + <xsl:param name="itemsymbol" select="'default'"/> + <xsl:choose> + <!-- Change this list if you want to change the order of symbols --> + <xsl:when test="$itemsymbol = 'disc'">circle</xsl:when> + <xsl:when test="$itemsymbol = 'circle'">square</xsl:when> + <xsl:otherwise>disc</xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="list.itemsymbol"> + <xsl:param name="node" select="."/> + + <xsl:choose> + <xsl:when test="@override"> + <xsl:value-of select="@override"/> + </xsl:when> + <xsl:when test="$node/@mark"> + <xsl:value-of select="$node/@mark"/> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="$node/ancestor::itemizedlist"> + <xsl:call-template name="next.itemsymbol"> + <xsl:with-param name="itemsymbol"> + <xsl:call-template name="list.itemsymbol"> + <xsl:with-param name="node" select="$node/ancestor::itemizedlist[1]"/> + </xsl:call-template> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="next.itemsymbol"/> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ====================================================================== --> + +<doc:template name="copyright.years" xmlns=""> +<refpurpose>Print a set of years with collapsed ranges</refpurpose> + +<refdescription id="copyright.years-desc"> +<para>This template prints a list of year elements with consecutive +years printed as a range. In other words:</para> + +<screen><![CDATA[<year>1992</year> +<year>1993</year> +<year>1994</year>]]></screen> + +<para>is printed <quote>1992-1994</quote>, whereas:</para> + +<screen><![CDATA[<year>1992</year> +<year>1994</year>]]></screen> + +<para>is printed <quote>1992, 1994</quote>.</para> + +<para>This template assumes that all the year elements contain only +decimal year numbers, that the elements are sorted in increasing +numerical order, that there are no duplicates, and that all the years +are expressed in full <quote>century+year</quote> +(<quote>1999</quote> not <quote>99</quote>) notation.</para> +</refdescription> + +<refparameter id="copyright.years-params"> +<variablelist> +<varlistentry><term>years</term> +<listitem> +<para>The initial set of year elements.</para> +</listitem> +</varlistentry> +<varlistentry><term>print.ranges</term> +<listitem> +<para>If non-zero, multi-year ranges are collapsed. If zero, all years +are printed discretely.</para> +</listitem> +</varlistentry> +<varlistentry><term>single.year.ranges</term> +<listitem> +<para>If non-zero, two consecutive years will be printed as a range, +otherwise, they will be printed discretely. In other words, a single +year range is <quote>1991-1992</quote> but discretely it's +<quote>1991, 1992</quote>.</para> +</listitem> +</varlistentry> +</variablelist> +</refparameter> + +<refreturn id="copyright.years-returns"> +<para>This template returns the formatted list of years.</para> +</refreturn> +</doc:template> + +<xsl:template name="copyright.years"> + <xsl:param name="years"/> + <xsl:param name="print.ranges" select="1"/> + <xsl:param name="single.year.ranges" select="0"/> + <xsl:param name="firstyear" select="0"/> + <xsl:param name="nextyear" select="0"/> + + <!-- + <xsl:message terminate="no"> + <xsl:text>CY: </xsl:text> + <xsl:value-of select="count($years)"/> + <xsl:text>, </xsl:text> + <xsl:value-of select="$firstyear"/> + <xsl:text>, </xsl:text> + <xsl:value-of select="$nextyear"/> + <xsl:text>, </xsl:text> + <xsl:value-of select="$print.ranges"/> + <xsl:text>, </xsl:text> + <xsl:value-of select="$single.year.ranges"/> + <xsl:text> (</xsl:text> + <xsl:value-of select="$years[1]"/> + <xsl:text>)</xsl:text> + </xsl:message> + --> + + <xsl:choose> + <xsl:when test="$print.ranges = 0 and count($years) > 0"> + <xsl:choose> + <xsl:when test="count($years) = 1"> + <xsl:apply-templates select="$years[1]" mode="titlepage.mode"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="$years[1]" mode="titlepage.mode"/> + <xsl:text>, </xsl:text> + <xsl:call-template name="copyright.years"> + <xsl:with-param name="years" + select="$years[position() > 1]"/> + <xsl:with-param name="print.ranges" select="$print.ranges"/> + <xsl:with-param name="single.year.ranges" + select="$single.year.ranges"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:when test="count($years) = 0"> + <xsl:variable name="lastyear" select="$nextyear - 1"/> + <xsl:choose> + <xsl:when test="$firstyear = 0"> + <!-- there weren't any years at all --> + </xsl:when> + <xsl:when test="$firstyear = $lastyear"> + <xsl:value-of select="$firstyear"/> + </xsl:when> + <xsl:when test="$single.year.ranges = 0 + and $lastyear = $firstyear + 1"> + <xsl:value-of select="$firstyear"/> + <xsl:text>, </xsl:text> + <xsl:value-of select="$lastyear"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$firstyear"/> + <xsl:text>-</xsl:text> + <xsl:value-of select="$lastyear"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:when test="$firstyear = 0"> + <xsl:call-template name="copyright.years"> + <xsl:with-param name="years" + select="$years[position() > 1]"/> + <xsl:with-param name="firstyear" select="$years[1]"/> + <xsl:with-param name="nextyear" select="$years[1] + 1"/> + <xsl:with-param name="print.ranges" select="$print.ranges"/> + <xsl:with-param name="single.year.ranges" + select="$single.year.ranges"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$nextyear = $years[1]"> + <xsl:call-template name="copyright.years"> + <xsl:with-param name="years" + select="$years[position() > 1]"/> + <xsl:with-param name="firstyear" select="$firstyear"/> + <xsl:with-param name="nextyear" select="$nextyear + 1"/> + <xsl:with-param name="print.ranges" select="$print.ranges"/> + <xsl:with-param name="single.year.ranges" + select="$single.year.ranges"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <!-- we have years left, but they aren't in the current range --> + <xsl:choose> + <xsl:when test="$nextyear = $firstyear + 1"> + <xsl:value-of select="$firstyear"/> + <xsl:text>, </xsl:text> + </xsl:when> + <xsl:when test="$single.year.ranges = 0 + and $nextyear = $firstyear + 2"> + <xsl:value-of select="$firstyear"/> + <xsl:text>, </xsl:text> + <xsl:value-of select="$nextyear - 1"/> + <xsl:text>, </xsl:text> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$firstyear"/> + <xsl:text>-</xsl:text> + <xsl:value-of select="$nextyear - 1"/> + <xsl:text>, </xsl:text> + </xsl:otherwise> + </xsl:choose> + <xsl:call-template name="copyright.years"> + <xsl:with-param name="years" + select="$years[position() > 1]"/> + <xsl:with-param name="firstyear" select="$years[1]"/> + <xsl:with-param name="nextyear" select="$years[1] + 1"/> + <xsl:with-param name="print.ranges" select="$print.ranges"/> + <xsl:with-param name="single.year.ranges" + select="$single.year.ranges"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ====================================================================== --> + +<doc:template name="find.path.params" xmlns=""> +<refpurpose>Search in a table for the "best" match for the node</refpurpose> + +<refdescription id="find.path.params-desc"> +<para>This template searches in a table for the value that most-closely +(in the typical best-match sense of XSLT) matches the current (element) +node location.</para> +</refdescription> +</doc:template> + +<xsl:template name="find.path.params"> + <xsl:param name="node" select="."/> + <xsl:param name="table" select="''"/> + <xsl:param name="location"> + <xsl:call-template name="xpath.location"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> + + <xsl:variable name="value"> + <xsl:call-template name="lookup.key"> + <xsl:with-param name="key" select="$location"/> + <xsl:with-param name="table" select="$table"/> + </xsl:call-template> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$value != ''"> + <xsl:value-of select="$value"/> + </xsl:when> + <xsl:when test="contains($location, '/')"> + <xsl:call-template name="find.path.params"> + <xsl:with-param name="node" select="$node"/> + <xsl:with-param name="table" select="$table"/> + <xsl:with-param name="location" select="substring-after($location, '/')"/> + </xsl:call-template> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template name="relative-uri"> + <xsl:param name="filename" select="."/> + <xsl:param name="destdir" select="''"/> + + <xsl:variable name="srcurl"> + <xsl:call-template name="strippath"> + <xsl:with-param name="filename"> + <xsl:call-template name="xml.base.dirs"> + <xsl:with-param name="base.elem" + select="$filename/ancestor-or-self::* + [@xml:base != ''][1]"/> + </xsl:call-template> + <xsl:value-of select="$filename"/> + </xsl:with-param> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="srcurl.trimmed"> + <xsl:call-template name="trim.common.uri.paths"> + <xsl:with-param name="uriA" select="$srcurl"/> + <xsl:with-param name="uriB" select="$destdir"/> + <xsl:with-param name="return" select="'A'"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="destdir.trimmed"> + <xsl:call-template name="trim.common.uri.paths"> + <xsl:with-param name="uriA" select="$srcurl"/> + <xsl:with-param name="uriB" select="$destdir"/> + <xsl:with-param name="return" select="'B'"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="depth"> + <xsl:call-template name="count.uri.path.depth"> + <xsl:with-param name="filename" select="$destdir.trimmed"/> + </xsl:call-template> + </xsl:variable> + + <xsl:call-template name="copy-string"> + <xsl:with-param name="string" select="'../'"/> + <xsl:with-param name="count" select="$depth"/> + </xsl:call-template> + <xsl:value-of select="$srcurl.trimmed"/> + +</xsl:template> + +<!-- ===================================== --> + +<xsl:template name="xml.base.dirs"> + <xsl:param name="base.elem" select="NONODE"/> + + <!-- Recursively resolve xml:base attributes, up to a + full path with : in uri --> + <xsl:if test="$base.elem/ancestor::*[@xml:base != ''] and + not(contains($base.elem/@xml:base, ':'))"> + <xsl:call-template name="xml.base.dirs"> + <xsl:with-param name="base.elem" + select="$base.elem/ancestor::*[@xml:base != ''][1]"/> + </xsl:call-template> + </xsl:if> + <xsl:call-template name="getdir"> + <xsl:with-param name="filename" select="$base.elem/@xml:base"/> + </xsl:call-template> + +</xsl:template> + +<!-- ===================================== --> + +<xsl:template name="strippath"> + <xsl:param name="filename" select="''"/> + <xsl:choose> + <!-- Leading .. are not eliminated --> + <xsl:when test="starts-with($filename, '../')"> + <xsl:value-of select="'../'"/> + <xsl:call-template name="strippath"> + <xsl:with-param name="filename" select="substring-after($filename, '../')"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="contains($filename, '/../')"> + <xsl:call-template name="strippath"> + <xsl:with-param name="filename"> + <xsl:call-template name="getdir"> + <xsl:with-param name="filename" select="substring-before($filename, '/../')"/> + </xsl:call-template> + <xsl:value-of select="substring-after($filename, '/../')"/> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$filename"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ===================================== --> + +<xsl:template name="getdir"> + <xsl:param name="filename" select="''"/> + <xsl:if test="contains($filename, '/')"> + <xsl:value-of select="substring-before($filename, '/')"/> + <xsl:text>/</xsl:text> + <xsl:call-template name="getdir"> + <xsl:with-param name="filename" select="substring-after($filename, '/')"/> + </xsl:call-template> + </xsl:if> +</xsl:template> + +<!-- ===================================== --> + +<doc:template name="string.upper" xmlns=""> +<refpurpose>Converts a string to all uppercase letters</refpurpose> + +<refdescription id="string.upper-desc"> +<para>Given a string, this template does a language-aware conversion +of that string to all uppercase letters, based on the values of the +<literal>lowercase.alpha</literal> and +<literal>uppercase.alpha</literal> gentext keys for the current +locale. It affects only those characters found in the values of +<literal>lowercase.alpha</literal> and +<literal>uppercase.alpha</literal>. All other characters are left +unchanged.</para> +</refdescription> + +<refparameter id="string.upper-params"> +<variablelist> +<varlistentry><term>string</term> +<listitem> +<para>The string to convert to uppercase.</para> +</listitem> +</varlistentry> +</variablelist> +</refparameter> +</doc:template> +<xsl:template name="string.upper"> + <xsl:param name="string" select="''"/> + <xsl:variable name="lowercase.alpha"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'lowercase.alpha'"/> + </xsl:call-template> + </xsl:variable> + <xsl:variable name="uppercase.alpha"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'uppercase.alpha'"/> + </xsl:call-template> + </xsl:variable> + <xsl:value-of select="translate($string,$lowercase.alpha,$uppercase.alpha)"/> +</xsl:template> + +<!-- ===================================== --> + +<doc:template name="string.lower" xmlns=""> +<refpurpose>Converts a string to all lowercase letters</refpurpose> + +<refdescription id="string.lower-desc"> +<para>Given a string, this template does a language-aware conversion +of that string to all lowercase letters, based on the values of the +<literal>uppercase.alpha</literal> and +<literal>lowercase.alpha</literal> gentext keys for the current +locale. It affects only those characters found in the values of +<literal>uppercase.alpha</literal> and +<literal>lowercase.alpha</literal>. All other characters are left +unchanged.</para> +</refdescription> + +<refparameter id="string.lower-params"> +<variablelist> +<varlistentry><term>string</term> +<listitem> +<para>The string to convert to lowercase.</para> +</listitem> +</varlistentry> +</variablelist> +</refparameter> +</doc:template> +<xsl:template name="string.lower"> + <xsl:param name="string" select="''"/> + <xsl:variable name="uppercase.alpha"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'uppercase.alpha'"/> + </xsl:call-template> + </xsl:variable> + <xsl:variable name="lowercase.alpha"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'lowercase.alpha'"/> + </xsl:call-template> + </xsl:variable> + <xsl:value-of select="translate($string,$uppercase.alpha,$lowercase.alpha)"/> +</xsl:template> + +<!-- ===================================== --> + +<doc:template name="select.choice.separator" xmlns=""> + <refpurpose>Returns localized choice separator</refpurpose> + <refdescription id="select.choice.separator-desc"> + <para>This template enables auto-generation of an appropriate + localized "choice" separator (for example, "and" or "or") before + the final item in an inline list (though it could also be useful + for generating choice separators for non-inline lists).</para> + + <para>It currently works by evaluating a processing instruction + (PI) of the form <?dbchoice choice="foo"?> : + + <itemizedlist> + <listitem> + <simpara>if the value of the <sgmltag>choice</sgmltag> + pseudo-attribute is "and" or "or", returns a localized "and" + or "or"</simpara> + </listitem> + <listitem> + <simpara>otherwise returns the literal value of the + <sgmltag>choice</sgmltag> pseudo-attribute</simpara> + </listitem> + </itemizedlist> + + The latter is provided only as a temporary workaround because the + locale files do not currently have translations for the word + <wordasword>or</wordasword>. So if you want to generate a a + logical "or" separator in French (for example), you currently need + to do this: + + <literallayout><?dbchoice choice="ou"?></literallayout> + </para> + + <warning> + <para>The <sgmltag>dbchoice</sgmltag> processing instruction is + an unfortunate hack; support for it may disappear in the future + (particularly if and when a more appropriate means for marking + up "choice" lists becomes available in DocBook).</para> + </warning> + </refdescription> +</doc:template> +<xsl:template name="select.choice.separator"> + + <xsl:variable name="choice"> + <xsl:call-template name="pi-attribute"> + <xsl:with-param name="pis" select="processing-instruction('dbchoice')"/> + <xsl:with-param name="attribute">choice</xsl:with-param> + </xsl:call-template> + </xsl:variable> + + <xsl:choose> + <!-- if value of $choice is "and" or "or", translate to equivalent in --> + <!-- current locale --> + <xsl:when test="$choice = 'and' or $choice = 'or'"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="$choice"/> + </xsl:call-template> + </xsl:when> + <!-- otherwise, just output value of $choice, whatever it is --> + <xsl:otherwise> + <xsl:value-of select="$choice"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ===================================== --> + +<doc:template name="evaluate.info.profile" xmlns=""> + <refpurpose>Evaluates an info profile</refpurpose> + <refdescription id="evaluate.info.profile-desc"> + <para>This template evaluates an "info profile" matching the XPath + expression given by the <parameter>profile</parameter> + parameter. It relies on the XSLT <function>evaluate()</function> + extension function.</para> + + <para>The value of the <parameter>profile</parameter> parameter + can include the literal string <literal>$info</literal>. If found + in the value of the <parameter>profile</parameter> parameter, the + literal string <literal>$info</literal> string is replaced with + the value of the <parameter>info</parameter> parameter, which + should be a set of <replaceable>*info</replaceable> nodes; the + expression is then evaluated using the XSLT + <function>evaluate()</function> extension function.</para> + </refdescription> + <refparameter id="evaluate.info.profile-params"> + <variablelist> + <varlistentry> + <term>profile</term> + <listitem> + <para>A string representing an XPath expression </para> + </listitem> + </varlistentry> + <varlistentry> + <term>info</term> + <listitem> + <para>A set of *info nodes</para> + </listitem> + </varlistentry> + </variablelist> + </refparameter> + + <refreturn id="evaluate.info.profile-returns"> + <para>Returns a node (the result of evaluating the + <parameter>profile</parameter> parameter)</para> + </refreturn> +</doc:template> + <xsl:template name="evaluate.info.profile"> + <xsl:param name="profile"/> + <xsl:param name="info"/> + <xsl:choose> + <!-- * xsltproc and Xalan both support dyn:evaluate() --> + <xsl:when test="function-available('dyn:evaluate')"> + <xsl:apply-templates + select="dyn:evaluate($profile)" mode="get.refentry.metadata"/> + </xsl:when> + <!-- * Saxon has its own evaluate() & doesn't support dyn:evaluate() --> + <xsl:when test="function-available('saxon:evaluate')"> + <xsl:apply-templates + select="saxon:evaluate($profile)" mode="get.refentry.metadata"/> + </xsl:when> + <xsl:otherwise> + <xsl:message terminate="yes"> +Error: The "info profiling" mechanism currently requires an XSLT +engine that supports the evaluate() XSLT extension function. Your XSLT +engine does not support it. +</xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:template> + +</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/de.xml b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/de.xml new file mode 100644 index 000000000..79b2201b1 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/de.xml @@ -0,0 +1,653 @@ +<?xml version="1.0" encoding="utf-8"?> +<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="de" english-language-name="German"> + +<!-- * This file is generated automatically. --> +<!-- * To submit changes to this file upstream (to the DocBook Project) --> +<!-- * do not submit an edited version of this file. Instead, submit an --> +<!-- * edited version of the source file at the following location: --> +<!-- * --> +<!-- * https://svn.sourceforge.net/svnroot/docbook/trunk/gentext/locale/de.xml --> +<!-- * --> +<!-- * E-mail the edited de.xml source file to: --> +<!-- * --> +<!-- * docbook-developers@lists.sourceforge.net --> + +<!-- ******************************************************************** --> + +<!-- This file is part of the XSL DocBook Stylesheet distribution. --> +<!-- See ../README or http://docbook.sf.net/release/xsl/current/ for --> +<!-- copyright and other information. --> + +<!-- ******************************************************************** --> + +<l:gentext key="Abstract" text="Zusammenfassung"/> +<l:gentext key="abstract" text="Zusammenfassung"/> +<l:gentext key="Answer" text="A:"/> +<l:gentext key="answer" text="A:"/> +<l:gentext key="Appendix" text="Anhang"/> +<l:gentext key="appendix" text="Anhang"/> +<l:gentext key="Article" text="Artikel"/> +<l:gentext key="article" text="Artikel"/> +<l:gentext key="Author" text="Autor"/> +<l:gentext key="Bibliography" text="Literaturverzeichnis"/> +<l:gentext key="bibliography" text="Literaturverzeichnis"/> +<l:gentext key="Book" text="Buch"/> +<l:gentext key="book" text="Buch"/> +<l:gentext key="CAUTION" text="ACHTUNG"/> +<l:gentext key="Caution" text="Achtung"/> +<l:gentext key="caution" text="Achtung"/> +<l:gentext key="Chapter" text="Kapitel"/> +<l:gentext key="chapter" text="Kapitel"/> +<l:gentext key="Colophon" text="Kolophon"/> +<l:gentext key="colophon" text="Kolophon"/> +<l:gentext key="Copyright" text="Copyright"/> +<l:gentext key="copyright" text="Copyright"/> +<l:gentext key="Dedication" text="Widmung"/> +<l:gentext key="dedication" text="Widmung"/> +<l:gentext key="Edition" text="Ausgabe"/> +<l:gentext key="edition" text="Ausgabe"/> +<l:gentext key="Editor" text="Editor" lang="en"/> +<l:gentext key="Equation" text="Gleichung"/> +<l:gentext key="equation" text="Gleichung"/> +<l:gentext key="Example" text="Beispiel"/> +<l:gentext key="example" text="Beispiel"/> +<l:gentext key="Figure" text="Abbildung"/> +<l:gentext key="figure" text="Abbildung"/> +<l:gentext key="Glossary" text="Glossar"/> +<l:gentext key="glossary" text="Glossar"/> +<l:gentext key="GlossSee" text="Siehe"/> +<l:gentext key="glosssee" text="Siehe"/> +<l:gentext key="GlossSeeAlso" text="Siehe auch"/> +<l:gentext key="glossseealso" text="Siehe auch"/> +<l:gentext key="IMPORTANT" text="WICHTIG"/> +<l:gentext key="important" text="Wichtig"/> +<l:gentext key="Important" text="Wichtig"/> +<l:gentext key="Index" text="Stichwortverzeichnis"/> +<l:gentext key="index" text="Stichwortverzeichnis"/> +<l:gentext key="ISBN" text="ISBN"/> +<l:gentext key="isbn" text="ISBN"/> +<l:gentext key="LegalNotice" text="Rechtlicher Hinweis"/> +<l:gentext key="legalnotice" text="Rechtlicher Hinweis"/> +<l:gentext key="MsgAud" text="Zielgruppe"/> +<l:gentext key="msgaud" text="Zielgruppe"/> +<l:gentext key="MsgLevel" text="Dringlichkeit"/> +<l:gentext key="msglevel" text="Dringlichkeit"/> +<l:gentext key="MsgOrig" text="Ursprung"/> +<l:gentext key="msgorig" text="Ursprung"/> +<l:gentext key="NOTE" text="ANMERKUNG"/> +<l:gentext key="Note" text="Anmerkung"/> +<l:gentext key="note" text="Anmerkung"/> +<l:gentext key="Part" text="Teil"/> +<l:gentext key="part" text="Teil"/> +<l:gentext key="Preface" text="Vorwort"/> +<l:gentext key="preface" text="Vorwort"/> +<l:gentext key="Procedure" text="Prozedur"/> +<l:gentext key="procedure" text="Prozedur"/> +<l:gentext key="ProductionSet" text="Produktion"/> +<l:gentext key="PubDate" text="Veröffentlicht"/> +<l:gentext key="pubdate" text="Veröffentlicht"/> +<l:gentext key="Published" text="Veröffentlicht"/> +<l:gentext key="published" text="Veröffentlicht"/> +<l:gentext key="Publisher" text="Publisher" lang="en"/> +<l:gentext key="Qandadiv" text="F & A"/> +<l:gentext key="qandadiv" text="F & A"/> +<l:gentext key="QandASet" text="Frequently Asked Questions" lang="en"/> +<l:gentext key="Question" text="F:"/> +<l:gentext key="question" text="F:"/> +<l:gentext key="RefEntry" text=""/> +<l:gentext key="refentry" text=""/> +<l:gentext key="Reference" text="Verweis"/> +<l:gentext key="reference" text="Verweis"/> +<l:gentext key="References" text="References" lang="en"/> +<l:gentext key="RefName" text="Name"/> +<l:gentext key="refname" text="Name"/> +<l:gentext key="RefSection" text="Abschnitt"/> +<l:gentext key="refsection" text="Abschnitt"/> +<l:gentext key="RefSynopsisDiv" text="Synopsis"/> +<l:gentext key="refsynopsisdiv" text="Synopsis"/> +<l:gentext key="RevHistory" text="Versionsgeschichte"/> +<l:gentext key="revhistory" text="Versionsgeschichte"/> +<l:gentext key="revision" text="Version"/> +<l:gentext key="Revision" text="Version"/> +<l:gentext key="sect1" text="Abschnitt"/> +<l:gentext key="sect2" text="Abschnitt"/> +<l:gentext key="sect3" text="Abschnitt"/> +<l:gentext key="sect4" text="Abschnitt"/> +<l:gentext key="sect5" text="Abschnitt"/> +<l:gentext key="section" text="Abschnitt"/> +<l:gentext key="Section" text="Abschnitt"/> +<l:gentext key="see" text="Siehe"/> +<l:gentext key="See" text="Siehe"/> +<l:gentext key="seealso" text="Siehe auch"/> +<l:gentext key="Seealso" text="Siehe auch"/> +<l:gentext key="SeeAlso" text="Siehe auch"/> +<l:gentext key="set" text="Satz"/> +<l:gentext key="Set" text="Satz"/> +<l:gentext key="setindex" text="Stichwortverzeichnis"/> +<l:gentext key="SetIndex" text="Stichwortverzeichnis"/> +<l:gentext key="Sidebar" text="Randnotiz"/> +<l:gentext key="sidebar" text="randnotiz"/> +<l:gentext key="step" text="Schritt"/> +<l:gentext key="Step" text="Schritt"/> +<l:gentext key="table" text="Tabelle"/> +<l:gentext key="Table" text="Tabelle"/> +<l:gentext key="task" text="Task" lang="en"/> +<l:gentext key="Task" text="Task" lang="en"/> +<l:gentext key="tip" text="Tipp"/> +<l:gentext key="TIP" text="TIPP"/> +<l:gentext key="Tip" text="Tipp"/> +<l:gentext key="Warning" text="Warnung"/> +<l:gentext key="warning" text="Warnung"/> +<l:gentext key="WARNING" text="WARNUNG"/> +<l:gentext key="and" text="und"/> +<l:gentext key="by" text="von"/> +<l:gentext key="Edited" text="Herausgegeben"/> +<l:gentext key="edited" text="Herausgegeben"/> +<l:gentext key="Editedby" text="Herausgegeben von"/> +<l:gentext key="editedby" text="Herausgegeben von"/> +<l:gentext key="in" text="in"/> +<l:gentext key="lastlistcomma" text=""/> +<l:gentext key="listcomma" text=","/> +<l:gentext key="nonexistantelement" text="nicht existierendes Element"/> +<l:gentext key="notes" text="Fußnoten"/> +<l:gentext key="Notes" text="Fußnoten"/> +<l:gentext key="Pgs" text="Seiten"/> +<l:gentext key="pgs" text="Seiten"/> +<l:gentext key="Revisedby" text="Geändert durch: "/> +<l:gentext key="revisedby" text="Geändert durch: "/> +<l:gentext key="TableNotes" text="Bemerkungen"/> +<l:gentext key="tablenotes" text="Bemerkungen"/> +<l:gentext key="TableofContents" text="Inhaltsverzeichnis"/> +<l:gentext key="tableofcontents" text="Inhaltsverzeichnis"/> +<l:gentext key="unexpectedelementname" text="Unerwarteter Elementname"/> +<l:gentext key="unsupported" text="wird nicht unterstützt"/> +<l:gentext key="xrefto" text="xref auf"/> +<l:gentext key="Authors" text="Authors" lang="en"/> +<l:gentext key="copyeditor" text="Copy Editor" lang="en"/> +<l:gentext key="graphicdesigner" text="Graphic Designer" lang="en"/> +<l:gentext key="productioneditor" text="Production Editor" lang="en"/> +<l:gentext key="technicaleditor" text="Technical Editor" lang="en"/> +<l:gentext key="translator" text="Translator" lang="en"/> +<l:gentext key="listofequations" text="Gleichungen"/> +<l:gentext key="ListofEquations" text="Gleichungen"/> +<l:gentext key="ListofExamples" text="Beispiele"/> +<l:gentext key="listofexamples" text="Beispiele"/> +<l:gentext key="ListofFigures" text="Abbildungsverzeichnis"/> +<l:gentext key="listoffigures" text="Abbildungsverzeichnis"/> +<l:gentext key="ListofProcedures" text="List of Procedures" lang="en"/> +<l:gentext key="listofprocedures" text="List of Procedures" lang="en"/> +<l:gentext key="listoftables" text="Tabellenverzeichnis"/> +<l:gentext key="ListofTables" text="Tabellenverzeichnis"/> +<l:gentext key="ListofUnknown" text="???-Verzeichnis"/> +<l:gentext key="listofunknown" text="???-Verzeichnis"/> +<l:gentext key="nav-home" text="Zum Anfang"/> +<l:gentext key="nav-next" text="Weiter"/> +<l:gentext key="nav-next-sibling" text="Schnell weiter"/> +<l:gentext key="nav-prev" text="Zurück"/> +<l:gentext key="nav-prev-sibling" text="Schnell zurück"/> +<l:gentext key="nav-up" text="Nach oben"/> +<l:gentext key="nav-toc" text="InhV"/> +<l:gentext key="Draft" text="Entwurf"/> +<l:gentext key="above" text="oben"/> +<l:gentext key="below" text="unten"/> +<l:gentext key="sectioncalled" text="der Abschnitt namens"/> +<l:gentext key="index symbols" text="Symbole"/> +<l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyzäöüß"/> +<l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZÄÖÜß"/> +<l:gentext key="normalize.sort.input" text="AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ" lang="en"/> +<l:gentext key="normalize.sort.output" text="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ" lang="en"/> +<l:dingbat key="startquote" text="„"/> +<l:dingbat key="endquote" text="“"/> +<l:dingbat key="nestedstartquote" text="‚"/> +<l:dingbat key="nestedendquote" text="‘"/> +<l:dingbat key="singlestartquote" text="‚"/> +<l:dingbat key="singleendquote" text="‘"/> +<l:dingbat key="bullet" text="•"/> +<l:gentext key="hyphenation-character" text="-"/> +<l:gentext key="hyphenation-push-character-count" text="2"/> +<l:gentext key="hyphenation-remain-character-count" text="3"/> +<l:context name="styles"><l:template name="person-name" text="first-last"/> +</l:context> +<l:context name="title"><l:template name="abstract" text="%t"/> +<l:template name="answer" text="%t"/> +<l:template name="appendix" text="Anhang %n. %t"/> +<l:template name="article" text="%t"/> +<l:template name="authorblurb" text="%t"/> +<l:template name="bibliodiv" text="%t"/> +<l:template name="biblioentry" text="%t"/> +<l:template name="bibliography" text="%t"/> +<l:template name="bibliolist" text="%t" lang="en"/> +<l:template name="bibliomixed" text="%t"/> +<l:template name="bibliomset" text="%t"/> +<l:template name="biblioset" text="%t"/> +<l:template name="blockquote" text="%t"/> +<l:template name="book" text="%t"/> +<l:template name="calloutlist" text="%t"/> +<l:template name="caution" text="%t"/> +<l:template name="chapter" text="Kapitel %n. %t"/> +<l:template name="colophon" text="%t"/> +<l:template name="dedication" text="%t"/> +<l:template name="equation" text="Gleichung %n. %t"/> +<l:template name="example" text="Beispiel %n. %t"/> +<l:template name="figure" text="Abbildung %n. %t"/> +<l:template name="foil" text="%t" lang="en"/> +<l:template name="foilgroup" text="%t" lang="en"/> +<l:template name="formalpara" text="%t"/> +<l:template name="glossary" text="%t"/> +<l:template name="glossdiv" text="%t"/> +<l:template name="glosslist" text="%t" lang="en"/> +<l:template name="glossentry" text="%t"/> +<l:template name="important" text="%t"/> +<l:template name="index" text="%t"/> +<l:template name="indexdiv" text="%t"/> +<l:template name="itemizedlist" text="%t"/> +<l:template name="legalnotice" text="%t"/> +<l:template name="listitem" text=""/> +<l:template name="lot" text="%t"/> +<l:template name="msg" text="%t"/> +<l:template name="msgexplan" text="%t"/> +<l:template name="msgmain" text="%t"/> +<l:template name="msgrel" text="%t"/> +<l:template name="msgset" text="%t"/> +<l:template name="msgsub" text="%t"/> +<l:template name="note" text="%t"/> +<l:template name="orderedlist" text="%t"/> +<l:template name="part" text="Teil %n. %t"/> +<l:template name="partintro" text="%t"/> +<l:template name="preface" text="%t"/> +<l:template name="procedure" text="%t"/> +<l:template name="procedure.formal" text="Prozedur %n. %t"/> +<l:template name="productionset" text="%t"/> +<l:template name="productionset.formal" text="Produktion %n"/> +<l:template name="qandadiv" text="%t"/> +<l:template name="qandaentry" text="%t"/> +<l:template name="qandaset" text="%t"/> +<l:template name="question" text="F: %n"/> +<l:template name="refentry" text="%t"/> +<l:template name="reference" text="%t"/> +<l:template name="refsection" text="%t"/> +<l:template name="refsect1" text="%t"/> +<l:template name="refsect2" text="%t"/> +<l:template name="refsect3" text="%t"/> +<l:template name="refsynopsisdiv" text="%t"/> +<l:template name="refsynopsisdivinfo" text="%t"/> +<l:template name="segmentedlist" text="%t"/> +<l:template name="set" text="%t"/> +<l:template name="setindex" text="%t"/> +<l:template name="sidebar" text="%t"/> +<l:template name="step" text="%t"/> +<l:template name="table" text="Tabelle %n. %t"/> +<l:template name="task" text="%t"/> +<l:template name="tasksummary" text="%t" lang="en"/> +<l:template name="taskprerequisites" text="%t" lang="en"/> +<l:template name="taskrelated" text="%t" lang="en"/> +<l:template name="tip" text="%t"/> +<l:template name="toc" text="%t"/> +<l:template name="variablelist" text="%t"/> +<l:template name="varlistentry" text="" lang="en"/> +<l:template name="warning" text="%t"/> +</l:context> +<l:context name="title-unnumbered"><l:template name="appendix" text="%t"/> +<l:template name="article/appendix" text="%t"/> +<l:template name="bridgehead" text="%t"/> +<l:template name="chapter" text="%t"/> +<l:template name="sect1" text="%t"/> +<l:template name="sect2" text="%t"/> +<l:template name="sect3" text="%t"/> +<l:template name="sect4" text="%t"/> +<l:template name="sect5" text="%t"/> +<l:template name="section" text="%t"/> +<l:template name="simplesect" text="%t"/> +<l:template name="part" text="%t" lang="en"/> +</l:context> +<l:context name="title-numbered"><l:template name="appendix" text="Anhang %n. %t"/> +<l:template name="article/appendix" text="%n. %t"/> +<l:template name="bridgehead" text="%n. %t"/> +<l:template name="chapter" text="Kapitel %n. %t"/> +<l:template name="part" text="Teil %n. %t"/> +<l:template name="sect1" text="%n. %t"/> +<l:template name="sect2" text="%n. %t"/> +<l:template name="sect3" text="%n. %t"/> +<l:template name="sect4" text="%n. %t"/> +<l:template name="sect5" text="%n. %t"/> +<l:template name="section" text="%n. %t"/> +<l:template name="simplesect" text="%n. %t"/> +</l:context> +<l:context name="subtitle"><l:template name="appendix" text="%s"/> +<l:template name="article" text="%s"/> +<l:template name="bibliodiv" text="%s"/> +<l:template name="biblioentry" text="%s"/> +<l:template name="bibliography" text="%s"/> +<l:template name="bibliomixed" text="%s"/> +<l:template name="bibliomset" text="%s"/> +<l:template name="biblioset" text="%s"/> +<l:template name="book" text="%s"/> +<l:template name="chapter" text="%s"/> +<l:template name="colophon" text="%s"/> +<l:template name="dedication" text="%s"/> +<l:template name="glossary" text="%s"/> +<l:template name="glossdiv" text="%s"/> +<l:template name="index" text="%s"/> +<l:template name="indexdiv" text="%s"/> +<l:template name="lot" text="%s"/> +<l:template name="part" text="%s"/> +<l:template name="partintro" text="%s"/> +<l:template name="preface" text="%s"/> +<l:template name="refentry" text="%s"/> +<l:template name="reference" text="%s"/> +<l:template name="refsection" text="%s"/> +<l:template name="refsect1" text="%s"/> +<l:template name="refsect2" text="%s"/> +<l:template name="refsect3" text="%s"/> +<l:template name="refsynopsisdiv" text="%s"/> +<l:template name="sect1" text="%s"/> +<l:template name="sect2" text="%s"/> +<l:template name="sect3" text="%s"/> +<l:template name="sect4" text="%s"/> +<l:template name="sect5" text="%s"/> +<l:template name="section" text="%s"/> +<l:template name="set" text="%s"/> +<l:template name="setindex" text="%s"/> +<l:template name="sidebar" text="%s"/> +<l:template name="simplesect" text="%s"/> +<l:template name="toc" text="%s"/> +</l:context> +<l:context name="xref"><l:template name="abstract" text="%t"/> +<l:template name="answer" text="A: %n"/> +<l:template name="appendix" text="%t"/> +<l:template name="article" text="%t"/> +<l:template name="authorblurb" text="%t"/> +<l:template name="bibliodiv" text="%t"/> +<l:template name="bibliography" text="%t"/> +<l:template name="bibliomset" text="%t"/> +<l:template name="biblioset" text="%t"/> +<l:template name="blockquote" text="%t"/> +<l:template name="book" text="%t"/> +<l:template name="calloutlist" text="%t"/> +<l:template name="caution" text="%t"/> +<l:template name="chapter" text="%t"/> +<l:template name="colophon" text="%t"/> +<l:template name="constraintdef" text="%t"/> +<l:template name="dedication" text="%t"/> +<l:template name="equation" text="%t"/> +<l:template name="example" text="%t"/> +<l:template name="figure" text="%t"/> +<l:template name="foil" text="%t" lang="en"/> +<l:template name="foilgroup" text="%t" lang="en"/> +<l:template name="formalpara" text="%t"/> +<l:template name="glossary" text="%t"/> +<l:template name="glossdiv" text="%t"/> +<l:template name="important" text="%t"/> +<l:template name="index" text="%t"/> +<l:template name="indexdiv" text="%t"/> +<l:template name="itemizedlist" text="%t"/> +<l:template name="legalnotice" text="%t"/> +<l:template name="listitem" text="%n"/> +<l:template name="lot" text="%t"/> +<l:template name="msg" text="%t"/> +<l:template name="msgexplan" text="%t"/> +<l:template name="msgmain" text="%t"/> +<l:template name="msgrel" text="%t"/> +<l:template name="msgset" text="%t"/> +<l:template name="msgsub" text="%t"/> +<l:template name="note" text="%t"/> +<l:template name="orderedlist" text="%t"/> +<l:template name="part" text="%t"/> +<l:template name="partintro" text="%t"/> +<l:template name="preface" text="%t"/> +<l:template name="procedure" text="%t"/> +<l:template name="productionset" text="%t"/> +<l:template name="qandadiv" text="%t"/> +<l:template name="qandaentry" text="F: %n"/> +<l:template name="qandaset" text="%t"/> +<l:template name="question" text="F: %n"/> +<l:template name="reference" text="%t"/> +<l:template name="refsynopsisdiv" text="%t"/> +<l:template name="segmentedlist" text="%t"/> +<l:template name="set" text="%t"/> +<l:template name="setindex" text="%t"/> +<l:template name="sidebar" text="%t"/> +<l:template name="table" text="%t"/> +<l:template name="task" text="%t" lang="en"/> +<l:template name="tip" text="%t"/> +<l:template name="toc" text="%t"/> +<l:template name="variablelist" text="%t"/> +<l:template name="varlistentry" text="%n"/> +<l:template name="warning" text="%t"/> +<l:template name="olink.document.citation" text=" in %o" lang="en"/> +<l:template name="olink.page.citation" text=" (page %p)" lang="en"/> +<l:template name="page.citation" text=" [%p]"/> +<l:template name="page" text="(Seite %p)"/> +<l:template name="docname" text=" in %o" lang="en"/> +<l:template name="docnamelong" text=" in the document titled %o" lang="en"/> +<l:template name="pageabbrev" text="(S. %p)"/> +<l:template name="Page" text="Seite %p"/> +<l:template name="bridgehead" text="„%t“"/> +<l:template name="refsection" text="„%t“"/> +<l:template name="refsect1" text="„%t“"/> +<l:template name="refsect2" text="„%t“"/> +<l:template name="refsect3" text="„%t“"/> +<l:template name="sect1" text="„%t“"/> +<l:template name="sect2" text="„%t“"/> +<l:template name="sect3" text="„%t“"/> +<l:template name="sect4" text="„%t“"/> +<l:template name="sect5" text="„%t“"/> +<l:template name="section" text="„%t“"/> +<l:template name="simplesect" text="„%t“"/> +</l:context> +<l:context name="xref-number"><l:template name="answer" text="A: %n"/> +<l:template name="appendix" text="Anhang %n"/> +<l:template name="bridgehead" text="Abschnitt %n"/> +<l:template name="chapter" text="Kapitel %n"/> +<l:template name="equation" text="Gleichung %n"/> +<l:template name="example" text="Beispiel %n"/> +<l:template name="figure" text="Abbildung %n"/> +<l:template name="part" text="Teil %n"/> +<l:template name="procedure" text="Prozedur %n"/> +<l:template name="productionset" text="Produktion %n"/> +<l:template name="qandadiv" text="F & A %n"/> +<l:template name="qandaentry" text="F: %n"/> +<l:template name="question" text="F: %n"/> +<l:template name="sect1" text="Abschnitt %n"/> +<l:template name="sect2" text="Abschnitt %n"/> +<l:template name="sect3" text="Abschnitt %n"/> +<l:template name="sect4" text="Abschnitt %n"/> +<l:template name="sect5" text="Abschnitt %n"/> +<l:template name="section" text="Abschnitt %n"/> +<l:template name="table" text="Tabelle %n"/> +</l:context> +<l:context name="xref-number-and-title"><l:template name="appendix" text="Anhang %n, %t"/> +<l:template name="bridgehead" text="Abschnitt %n, „%t“"/> +<l:template name="chapter" text="Kapitel %n, %t"/> +<l:template name="equation" text="Gleichung %n, „%t“"/> +<l:template name="example" text="Beispiel %n, „%t“"/> +<l:template name="figure" text="Abbildung %n, „%t“"/> +<l:template name="part" text="Teil %n, „%t“"/> +<l:template name="procedure" text="Prozedur %n, „%t“"/> +<l:template name="productionset" text="Produktion %n, „%t“"/> +<l:template name="qandadiv" text="F & A %n, „%t“"/> +<l:template name="refsect1" text="der Abschnitt namens „%t“"/> +<l:template name="refsect2" text="der Abschnitt namens „%t“"/> +<l:template name="refsect3" text="der Abschnitt namens „%t“"/> +<l:template name="refsection" text="der Abschnitt namens „%t“"/> +<l:template name="sect1" text="Abschnitt %n, „%t“"/> +<l:template name="sect2" text="Abschnitt %n, „%t“"/> +<l:template name="sect3" text="Abschnitt %n, „%t“"/> +<l:template name="sect4" text="Abschnitt %n, „%t“"/> +<l:template name="sect5" text="Abschnitt %n, „%t“"/> +<l:template name="section" text="Abschnitt %n, „%t“"/> +<l:template name="simplesect" text="der Abschnitt namens „%t“"/> +<l:template name="table" text="Tabelle %n, „%t“"/> +</l:context> +<l:context name="authorgroup"><l:template name="sep" text=", "/> +<l:template name="sep2" text=" und "/> +<l:template name="seplast" text=" und "/> +</l:context> +<l:context name="glossary"><l:template name="see" text="Siehe %t"/> +<l:template name="seealso" text="Siehe auch %t"/> +</l:context> +<l:context name="msgset"><l:template name="MsgAud" text="Zielgruppe: "/> +<l:template name="MsgLevel" text="Dringlichkeit: "/> +<l:template name="MsgOrig" text="Ursprung: "/> +</l:context> +<l:context name="datetime"><l:template name="format" text="d.m.Y"/> +</l:context> +<l:context name="termdef"><l:template name="prefix" text="[Definition: " lang="en"/> +<l:template name="suffix" text="]" lang="en"/> +</l:context> +<l:context name="datetime-full"><l:template name="January" text="Januar"/> +<l:template name="February" text="Februar"/> +<l:template name="March" text="März"/> +<l:template name="April" text="April"/> +<l:template name="May" text="Mai"/> +<l:template name="June" text="Juni"/> +<l:template name="July" text="Juli"/> +<l:template name="August" text="August"/> +<l:template name="September" text="September"/> +<l:template name="October" text="Oktober"/> +<l:template name="November" text="November"/> +<l:template name="December" text="Dezember"/> +<l:template name="Monday" text="Montag"/> +<l:template name="Tuesday" text="Dienstag"/> +<l:template name="Wednesday" text="Mittwoch"/> +<l:template name="Thursday" text="Donnerstag"/> +<l:template name="Friday" text="Freitag"/> +<l:template name="Saturday" text="Samstag"/> +<l:template name="Sunday" text="Sonntag"/> +</l:context> +<l:context name="datetime-abbrev"><l:template name="Jan" text="Jan"/> +<l:template name="Feb" text="Feb"/> +<l:template name="Mar" text="Mar"/> +<l:template name="Apr" text="Apr"/> +<l:template name="May" text="Mai"/> +<l:template name="Jun" text="Jun"/> +<l:template name="Jul" text="Jul"/> +<l:template name="Aug" text="Aug"/> +<l:template name="Sep" text="Sep"/> +<l:template name="Oct" text="Okt"/> +<l:template name="Nov" text="Nov"/> +<l:template name="Dec" text="Dez"/> +<l:template name="Mon" text="Mo"/> +<l:template name="Tue" text="Di"/> +<l:template name="Wed" text="Mi"/> +<l:template name="Thu" text="Do"/> +<l:template name="Fri" text="Fr"/> +<l:template name="Sat" text="Sa"/> +<l:template name="Sun" text="So"/> +</l:context> +<l:context name="htmlhelp"><l:template name="langcode" text="0x0407 German (GERMANY)"/> +</l:context> +<l:context name="index"><l:template name="term-separator" text=", " lang="en"/> +<l:template name="number-separator" text=", " lang="en"/> +<l:template name="range-separator" text="-" lang="en"/> +</l:context> +<l:context name="iso690"><l:template name="lastfirst.sep" text=", " lang="en"/> +<l:template name="alt.person.two.sep" text=" – " lang="en"/> +<l:template name="alt.person.last.sep" text=" – " lang="en"/> +<l:template name="alt.person.more.sep" text=" – " lang="en"/> +<l:template name="primary.editor" text=" (ed.)" lang="en"/> +<l:template name="primary.many" text=", et al." lang="en"/> +<l:template name="primary.sep" text=". " lang="en"/> +<l:template name="submaintitle.sep" text=": " lang="en"/> +<l:template name="title.sep" text=". " lang="en"/> +<l:template name="othertitle.sep" text=", " lang="en"/> +<l:template name="medium1" text=" [" lang="en"/> +<l:template name="medium2" text="]" lang="en"/> +<l:template name="secondary.person.sep" text="; " lang="en"/> +<l:template name="secondary.sep" text=". " lang="en"/> +<l:template name="respons.sep" text=". " lang="en"/> +<l:template name="edition.sep" text=". " lang="en"/> +<l:template name="edition.serial.sep" text=", " lang="en"/> +<l:template name="issuing.range" text="-" lang="en"/> +<l:template name="issuing.div" text=", " lang="en"/> +<l:template name="issuing.sep" text=". " lang="en"/> +<l:template name="partnr.sep" text=". " lang="en"/> +<l:template name="placepubl.sep" text=": " lang="en"/> +<l:template name="publyear.sep" text=", " lang="en"/> +<l:template name="pubinfo.sep" text=". " lang="en"/> +<l:template name="spec.pubinfo.sep" text=", " lang="en"/> +<l:template name="upd.sep" text=", " lang="en"/> +<l:template name="datecit1" text=" [cited " lang="en"/> +<l:template name="datecit2" text="]" lang="en"/> +<l:template name="extent.sep" text=". " lang="en"/> +<l:template name="locs.sep" text=", " lang="en"/> +<l:template name="location.sep" text=". " lang="en"/> +<l:template name="serie.sep" text=". " lang="en"/> +<l:template name="notice.sep" text=". " lang="en"/> +<l:template name="access" text="Available " lang="en"/> +<l:template name="acctoo" text="Also available " lang="en"/> +<l:template name="onwww" text="from World Wide Web" lang="en"/> +<l:template name="oninet" text="from Internet" lang="en"/> +<l:template name="access.end" text=": " lang="en"/> +<l:template name="link1" text="<" lang="en"/> +<l:template name="link2" text=">" lang="en"/> +<l:template name="access.sep" text=". " lang="en"/> +<l:template name="isbn" text="ISBN " lang="en"/> +<l:template name="issn" text="ISSN " lang="en"/> +<l:template name="stdnum.sep" text=". " lang="en"/> +<l:template name="patcountry.sep" text=". " lang="en"/> +<l:template name="pattype.sep" text=", " lang="en"/> +<l:template name="patnum.sep" text=". " lang="en"/> +<l:template name="patdate.sep" text=". " lang="en"/> +</l:context><l:letters><l:l i="-1"/> +<l:l i="0">Symbole</l:l> +<l:l i="1">A</l:l> +<l:l i="1">a</l:l> +<l:l i="1">Ä</l:l> +<l:l i="1">ä</l:l> +<l:l i="2">B</l:l> +<l:l i="2">b</l:l> +<l:l i="3">C</l:l> +<l:l i="3">c</l:l> +<l:l i="4">D</l:l> +<l:l i="4">d</l:l> +<l:l i="5">E</l:l> +<l:l i="5">e</l:l> +<l:l i="6">F</l:l> +<l:l i="6">f</l:l> +<l:l i="7">G</l:l> +<l:l i="7">g</l:l> +<l:l i="8">H</l:l> +<l:l i="8">h</l:l> +<l:l i="9">I</l:l> +<l:l i="9">i</l:l> +<l:l i="10">J</l:l> +<l:l i="10">j</l:l> +<l:l i="11">K</l:l> +<l:l i="11">k</l:l> +<l:l i="12">L</l:l> +<l:l i="12">l</l:l> +<l:l i="13">M</l:l> +<l:l i="13">m</l:l> +<l:l i="14">N</l:l> +<l:l i="14">n</l:l> +<l:l i="15">O</l:l> +<l:l i="15">o</l:l> +<l:l i="15">Ö</l:l> +<l:l i="15">ö</l:l> +<l:l i="16">P</l:l> +<l:l i="16">p</l:l> +<l:l i="17">Q</l:l> +<l:l i="17">q</l:l> +<l:l i="18">R</l:l> +<l:l i="18">r</l:l> +<l:l i="19">S</l:l> +<l:l i="19">s</l:l> +<l:l i="20">T</l:l> +<l:l i="20">t</l:l> +<l:l i="21">U</l:l> +<l:l i="21">u</l:l> +<l:l i="21">Ü</l:l> +<l:l i="21">ü</l:l> +<l:l i="22">V</l:l> +<l:l i="22">v</l:l> +<l:l i="23">W</l:l> +<l:l i="23">w</l:l> +<l:l i="24">X</l:l> +<l:l i="24">x</l:l> +<l:l i="25">Y</l:l> +<l:l i="25">y</l:l> +<l:l i="26">Z</l:l> +<l:l i="26">z</l:l> +</l:letters> +</l:l10n> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/en.xml b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/en.xml new file mode 100644 index 000000000..a5ef40079 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/en.xml @@ -0,0 +1,1216 @@ +<?xml version="1.0" encoding="utf-8"?> +<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="en" english-language-name="English"> + +<!-- * This file is generated automatically. --> +<!-- * To submit changes to this file upstream (to the DocBook Project) --> +<!-- * do not submit an edited version of this file. Instead, submit an --> +<!-- * edited version of the source file at the following location: --> +<!-- * --> +<!-- * https://svn.sourceforge.net/svnroot/docbook/trunk/gentext/locale/en.xml --> +<!-- * --> +<!-- * E-mail the edited en.xml source file to: --> +<!-- * --> +<!-- * docbook-developers@lists.sourceforge.net --> + +<!-- ******************************************************************** --> + +<!-- This file is part of the XSL DocBook Stylesheet distribution. --> +<!-- See ../README or http://docbook.sf.net/release/xsl/current/ for --> +<!-- copyright and other information. --> + +<!-- ******************************************************************** --> + +<l:gentext key="Abstract" text="Abstract"/> +<l:gentext key="abstract" text="Abstract"/> +<l:gentext key="Answer" text="A:"/> +<l:gentext key="answer" text="A:"/> +<l:gentext key="Appendix" text="Appendix"/> +<l:gentext key="appendix" text="Appendix"/> +<l:gentext key="Article" text="Article"/> +<l:gentext key="article" text="Article"/> +<l:gentext key="Author" text="Author"/> +<l:gentext key="Bibliography" text="Bibliography"/> +<l:gentext key="bibliography" text="Bibliography"/> +<l:gentext key="Book" text="Book"/> +<l:gentext key="book" text="Book"/> +<l:gentext key="CAUTION" text="CAUTION"/> +<l:gentext key="Caution" text="Caution"/> +<l:gentext key="caution" text="Caution"/> +<l:gentext key="Chapter" text="Chapter"/> +<l:gentext key="chapter" text="Chapter"/> +<l:gentext key="Colophon" text="Colophon"/> +<l:gentext key="colophon" text="Colophon"/> +<l:gentext key="Copyright" text="Copyright"/> +<l:gentext key="copyright" text="Copyright"/> +<l:gentext key="Dedication" text="Dedication"/> +<l:gentext key="dedication" text="Dedication"/> +<l:gentext key="Edition" text="Edition"/> +<l:gentext key="edition" text="Edition"/> +<l:gentext key="Editor" text="Editor"/> +<l:gentext key="Equation" text="Equation"/> +<l:gentext key="equation" text="Equation"/> +<l:gentext key="Example" text="Example"/> +<l:gentext key="example" text="Example"/> +<l:gentext key="Figure" text="Figure"/> +<l:gentext key="figure" text="Figure"/> +<l:gentext key="Glossary" text="Glossary"/> +<l:gentext key="glossary" text="Glossary"/> +<l:gentext key="GlossSee" text="See"/> +<l:gentext key="glosssee" text="See"/> +<l:gentext key="GlossSeeAlso" text="See Also"/> +<l:gentext key="glossseealso" text="See Also"/> +<l:gentext key="IMPORTANT" text="IMPORTANT"/> +<l:gentext key="important" text="Important"/> +<l:gentext key="Important" text="Important"/> +<l:gentext key="Index" text="Index"/> +<l:gentext key="index" text="Index"/> +<l:gentext key="ISBN" text="ISBN"/> +<l:gentext key="isbn" text="ISBN"/> +<l:gentext key="LegalNotice" text="Legal Notice"/> +<l:gentext key="legalnotice" text="Legal Notice"/> +<l:gentext key="MsgAud" text="Audience"/> +<l:gentext key="msgaud" text="Audience"/> +<l:gentext key="MsgLevel" text="Level"/> +<l:gentext key="msglevel" text="Level"/> +<l:gentext key="MsgOrig" text="Origin"/> +<l:gentext key="msgorig" text="Origin"/> +<l:gentext key="NOTE" text="NOTE"/> +<l:gentext key="Note" text="Note"/> +<l:gentext key="note" text="Note"/> +<l:gentext key="Part" text="Part"/> +<l:gentext key="part" text="Part"/> +<l:gentext key="Preface" text="Preface"/> +<l:gentext key="preface" text="Preface"/> +<l:gentext key="Procedure" text="Procedure"/> +<l:gentext key="procedure" text="Procedure"/> +<l:gentext key="ProductionSet" text="Production"/> +<l:gentext key="PubDate" text="Publication Date"/> +<l:gentext key="pubdate" text="Publication date"/> +<l:gentext key="Published" text="Published"/> +<l:gentext key="published" text="Published"/> +<l:gentext key="Publisher" text="Publisher"/> +<l:gentext key="Qandadiv" text="Q & A"/> +<l:gentext key="qandadiv" text="Q & A"/> +<l:gentext key="QandASet" text="Frequently Asked Questions"/> +<l:gentext key="Question" text="Q:"/> +<l:gentext key="question" text="Q:"/> +<l:gentext key="RefEntry" text=""/> +<l:gentext key="refentry" text=""/> +<l:gentext key="Reference" text="Reference"/> +<l:gentext key="reference" text="Reference"/> +<l:gentext key="References" text="References"/> +<l:gentext key="RefName" text="Name"/> +<l:gentext key="refname" text="Name"/> +<l:gentext key="RefSection" text=""/> +<l:gentext key="refsection" text=""/> +<l:gentext key="RefSynopsisDiv" text="Synopsis"/> +<l:gentext key="refsynopsisdiv" text="Synopsis"/> +<l:gentext key="RevHistory" text="Revision History"/> +<l:gentext key="revhistory" text="Revision History"/> +<l:gentext key="revision" text="Revision"/> +<l:gentext key="Revision" text="Revision"/> +<l:gentext key="sect1" text="Section"/> +<l:gentext key="sect2" text="Section"/> +<l:gentext key="sect3" text="Section"/> +<l:gentext key="sect4" text="Section"/> +<l:gentext key="sect5" text="Section"/> +<l:gentext key="section" text="Section"/> +<l:gentext key="Section" text="Section"/> +<l:gentext key="see" text="see"/> +<l:gentext key="See" text="See"/> +<l:gentext key="seealso" text="see also"/> +<l:gentext key="Seealso" text="See also"/> +<l:gentext key="SeeAlso" text="See Also"/> +<l:gentext key="set" text="Set"/> +<l:gentext key="Set" text="Set"/> +<l:gentext key="setindex" text="Set Index"/> +<l:gentext key="SetIndex" text="Set Index"/> +<l:gentext key="Sidebar" text=""/> +<l:gentext key="sidebar" text="sidebar"/> +<l:gentext key="step" text="step"/> +<l:gentext key="Step" text="Step"/> +<l:gentext key="table" text="Table"/> +<l:gentext key="Table" text="Table"/> +<l:gentext key="task" text="Task"/> +<l:gentext key="Task" text="Task"/> +<l:gentext key="tip" text="Tip"/> +<l:gentext key="TIP" text="TIP"/> +<l:gentext key="Tip" text="Tip"/> +<l:gentext key="Warning" text="Warning"/> +<l:gentext key="warning" text="Warning"/> +<l:gentext key="WARNING" text="WARNING"/> +<l:gentext key="and" text="and"/> +<l:gentext key="by" text="by"/> +<l:gentext key="Edited" text="Edited"/> +<l:gentext key="edited" text="Edited"/> +<l:gentext key="Editedby" text="Edited by"/> +<l:gentext key="editedby" text="Edited by"/> +<l:gentext key="in" text="in"/> +<l:gentext key="lastlistcomma" text=","/> +<l:gentext key="listcomma" text=","/> +<l:gentext key="nonexistantelement" text="non-existant element"/> +<l:gentext key="notes" text="Notes"/> +<l:gentext key="Notes" text="Notes"/> +<l:gentext key="Pgs" text="Pgs."/> +<l:gentext key="pgs" text="Pgs."/> +<l:gentext key="Revisedby" text="Revised by: "/> +<l:gentext key="revisedby" text="Revised by: "/> +<l:gentext key="TableNotes" text="Notes"/> +<l:gentext key="tablenotes" text="Notes"/> +<l:gentext key="TableofContents" text="Table of Contents"/> +<l:gentext key="tableofcontents" text="Table of Contents"/> +<l:gentext key="unexpectedelementname" text="Unexpected element name"/> +<l:gentext key="unsupported" text="unsupported"/> +<l:gentext key="xrefto" text="xref to"/> +<l:gentext key="Authors" text="Authors"/> +<l:gentext key="copyeditor" text="Copy Editor"/> +<l:gentext key="graphicdesigner" text="Graphic Designer"/> +<l:gentext key="productioneditor" text="Production Editor"/> +<l:gentext key="technicaleditor" text="Technical Editor"/> +<l:gentext key="translator" text="Translator"/> +<l:gentext key="listofequations" text="List of Equations"/> +<l:gentext key="ListofEquations" text="List of Equations"/> +<l:gentext key="ListofExamples" text="List of Examples"/> +<l:gentext key="listofexamples" text="List of Examples"/> +<l:gentext key="ListofFigures" text="List of Figures"/> +<l:gentext key="listoffigures" text="List of Figures"/> +<l:gentext key="ListofProcedures" text="List of Procedures"/> +<l:gentext key="listofprocedures" text="List of Procedures"/> +<l:gentext key="listoftables" text="List of Tables"/> +<l:gentext key="ListofTables" text="List of Tables"/> +<l:gentext key="ListofUnknown" text="List of Unknown"/> +<l:gentext key="listofunknown" text="List of Unknown"/> +<l:gentext key="nav-home" text="Home"/> +<l:gentext key="nav-next" text="Next"/> +<l:gentext key="nav-next-sibling" text="Fast Forward"/> +<l:gentext key="nav-prev" text="Prev"/> +<l:gentext key="nav-prev-sibling" text="Fast Backward"/> +<l:gentext key="nav-up" text="Up"/> +<l:gentext key="nav-toc" text="ToC"/> +<l:gentext key="Draft" text="Draft"/> +<l:gentext key="above" text="above"/> +<l:gentext key="below" text="below"/> +<l:gentext key="sectioncalled" text="the section called"/> +<l:gentext key="index symbols" text="Symbols"/> +<l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/> +<l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/> +<l:gentext key="normalize.sort.input" text="AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ"/> +<l:gentext key="normalize.sort.output" text="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ"/> +<l:dingbat key="startquote" text="“"/> +<l:dingbat key="endquote" text="”"/> +<l:dingbat key="nestedstartquote" text="‘"/> +<l:dingbat key="nestedendquote" text="’"/> +<l:dingbat key="singlestartquote" text="‘"/> +<l:dingbat key="singleendquote" text="’"/> +<l:dingbat key="bullet" text="•"/> +<l:gentext key="hyphenation-character" text="-"/> +<l:gentext key="hyphenation-push-character-count" text="2"/> +<l:gentext key="hyphenation-remain-character-count" text="2"/> +<l:context name="styles"><l:template name="person-name" text="first-last"/> +</l:context> +<l:context name="title"><l:template name="abstract" text="%t"/> +<l:template name="answer" text="%t"/> +<l:template name="appendix" text="Appendix %n. %t"/> +<l:template name="article" text="%t"/> +<l:template name="authorblurb" text="%t"/> +<l:template name="bibliodiv" text="%t"/> +<l:template name="biblioentry" text="%t"/> +<l:template name="bibliography" text="%t"/> +<l:template name="bibliolist" text="%t"/> +<l:template name="bibliomixed" text="%t"/> +<l:template name="bibliomset" text="%t"/> +<l:template name="biblioset" text="%t"/> +<l:template name="blockquote" text="%t"/> +<l:template name="book" text="%t"/> +<l:template name="calloutlist" text="%t"/> +<l:template name="caution" text="%t"/> +<l:template name="chapter" text="Chapter %n. %t"/> +<l:template name="colophon" text="%t"/> +<l:template name="dedication" text="%t"/> +<l:template name="equation" text="Equation %n. %t"/> +<l:template name="example" text="Example %n. %t"/> +<l:template name="figure" text="Figure %n. %t"/> +<l:template name="foil" text="%t"/> +<l:template name="foilgroup" text="%t"/> +<l:template name="formalpara" text="%t"/> +<l:template name="glossary" text="%t"/> +<l:template name="glossdiv" text="%t"/> +<l:template name="glosslist" text="%t"/> +<l:template name="glossentry" text="%t"/> +<l:template name="important" text="%t"/> +<l:template name="index" text="%t"/> +<l:template name="indexdiv" text="%t"/> +<l:template name="itemizedlist" text="%t"/> +<l:template name="legalnotice" text="%t"/> +<l:template name="listitem" text=""/> +<l:template name="lot" text="%t"/> +<l:template name="msg" text="%t"/> +<l:template name="msgexplan" text="%t"/> +<l:template name="msgmain" text="%t"/> +<l:template name="msgrel" text="%t"/> +<l:template name="msgset" text="%t"/> +<l:template name="msgsub" text="%t"/> +<l:template name="note" text="%t"/> +<l:template name="orderedlist" text="%t"/> +<l:template name="part" text="Part %n. %t"/> +<l:template name="partintro" text="%t"/> +<l:template name="preface" text="%t"/> +<l:template name="procedure" text="%t"/> +<l:template name="procedure.formal" text="Procedure %n. %t"/> +<l:template name="productionset" text="%t"/> +<l:template name="productionset.formal" text="Production %n"/> +<l:template name="qandadiv" text="%t"/> +<l:template name="qandaentry" text="%t"/> +<l:template name="qandaset" text="%t"/> +<l:template name="question" text="%t"/> +<l:template name="refentry" text="%t"/> +<l:template name="reference" text="%t"/> +<l:template name="refsection" text="%t"/> +<l:template name="refsect1" text="%t"/> +<l:template name="refsect2" text="%t"/> +<l:template name="refsect3" text="%t"/> +<l:template name="refsynopsisdiv" text="%t"/> +<l:template name="refsynopsisdivinfo" text="%t"/> +<l:template name="segmentedlist" text="%t"/> +<l:template name="set" text="%t"/> +<l:template name="setindex" text="%t"/> +<l:template name="sidebar" text="%t"/> +<l:template name="step" text="%t"/> +<l:template name="table" text="Table %n. %t"/> +<l:template name="task" text="%t"/> +<l:template name="tasksummary" text="%t"/> +<l:template name="taskprerequisites" text="%t"/> +<l:template name="taskrelated" text="%t"/> +<l:template name="tip" text="%t"/> +<l:template name="toc" text="%t"/> +<l:template name="variablelist" text="%t"/> +<l:template name="varlistentry" text=""/> +<l:template name="warning" text="%t"/> +</l:context> +<l:context name="title-unnumbered"><l:template name="appendix" text="%t"/> +<l:template name="article/appendix" text="%t"/> +<l:template name="bridgehead" text="%t"/> +<l:template name="chapter" text="%t"/> +<l:template name="sect1" text="%t"/> +<l:template name="sect2" text="%t"/> +<l:template name="sect3" text="%t"/> +<l:template name="sect4" text="%t"/> +<l:template name="sect5" text="%t"/> +<l:template name="section" text="%t"/> +<l:template name="simplesect" text="%t"/> +<l:template name="part" text="%t"/> +</l:context> +<l:context name="title-numbered"><l:template name="appendix" text="Appendix %n. %t"/> +<l:template name="article/appendix" text="%n. %t"/> +<l:template name="bridgehead" text="%n. %t"/> +<l:template name="chapter" text="Chapter %n. %t"/> +<l:template name="part" text="Part %n. %t"/> +<l:template name="sect1" text="%n. %t"/> +<l:template name="sect2" text="%n. %t"/> +<l:template name="sect3" text="%n. %t"/> +<l:template name="sect4" text="%n. %t"/> +<l:template name="sect5" text="%n. %t"/> +<l:template name="section" text="%n. %t"/> +<l:template name="simplesect" text="%t"/> +</l:context> +<l:context name="subtitle"><l:template name="appendix" text="%s"/> +<l:template name="article" text="%s"/> +<l:template name="bibliodiv" text="%s"/> +<l:template name="biblioentry" text="%s"/> +<l:template name="bibliography" text="%s"/> +<l:template name="bibliomixed" text="%s"/> +<l:template name="bibliomset" text="%s"/> +<l:template name="biblioset" text="%s"/> +<l:template name="book" text="%s"/> +<l:template name="chapter" text="%s"/> +<l:template name="colophon" text="%s"/> +<l:template name="dedication" text="%s"/> +<l:template name="glossary" text="%s"/> +<l:template name="glossdiv" text="%s"/> +<l:template name="index" text="%s"/> +<l:template name="indexdiv" text="%s"/> +<l:template name="lot" text="%s"/> +<l:template name="part" text="%s"/> +<l:template name="partintro" text="%s"/> +<l:template name="preface" text="%s"/> +<l:template name="refentry" text="%s"/> +<l:template name="reference" text="%s"/> +<l:template name="refsection" text="%s"/> +<l:template name="refsect1" text="%s"/> +<l:template name="refsect2" text="%s"/> +<l:template name="refsect3" text="%s"/> +<l:template name="refsynopsisdiv" text="%s"/> +<l:template name="sect1" text="%s"/> +<l:template name="sect2" text="%s"/> +<l:template name="sect3" text="%s"/> +<l:template name="sect4" text="%s"/> +<l:template name="sect5" text="%s"/> +<l:template name="section" text="%s"/> +<l:template name="set" text="%s"/> +<l:template name="setindex" text="%s"/> +<l:template name="sidebar" text="%s"/> +<l:template name="simplesect" text="%s"/> +<l:template name="toc" text="%s"/> +</l:context> +<l:context name="xref"><l:template name="abstract" text="%t"/> +<l:template name="answer" text="A: %n"/> +<l:template name="appendix" text="%t"/> +<l:template name="article" text="%t"/> +<l:template name="authorblurb" text="%t"/> +<l:template name="bibliodiv" text="%t"/> +<l:template name="bibliography" text="%t"/> +<l:template name="bibliomset" text="%t"/> +<l:template name="biblioset" text="%t"/> +<l:template name="blockquote" text="%t"/> +<l:template name="book" text="%t"/> +<l:template name="calloutlist" text="%t"/> +<l:template name="caution" text="%t"/> +<l:template name="chapter" text="%t"/> +<l:template name="colophon" text="%t"/> +<l:template name="constraintdef" text="%t"/> +<l:template name="dedication" text="%t"/> +<l:template name="equation" text="%t"/> +<l:template name="example" text="%t"/> +<l:template name="figure" text="%t"/> +<l:template name="foil" text="%t"/> +<l:template name="foilgroup" text="%t"/> +<l:template name="formalpara" text="%t"/> +<l:template name="glossary" text="%t"/> +<l:template name="glossdiv" text="%t"/> +<l:template name="important" text="%t"/> +<l:template name="index" text="%t"/> +<l:template name="indexdiv" text="%t"/> +<l:template name="itemizedlist" text="%t"/> +<l:template name="legalnotice" text="%t"/> +<l:template name="listitem" text="%n"/> +<l:template name="lot" text="%t"/> +<l:template name="msg" text="%t"/> +<l:template name="msgexplan" text="%t"/> +<l:template name="msgmain" text="%t"/> +<l:template name="msgrel" text="%t"/> +<l:template name="msgset" text="%t"/> +<l:template name="msgsub" text="%t"/> +<l:template name="note" text="%t"/> +<l:template name="orderedlist" text="%t"/> +<l:template name="part" text="%t"/> +<l:template name="partintro" text="%t"/> +<l:template name="preface" text="%t"/> +<l:template name="procedure" text="%t"/> +<l:template name="productionset" text="%t"/> +<l:template name="qandadiv" text="%t"/> +<l:template name="qandaentry" text="Q: %n"/> +<l:template name="qandaset" text="%t"/> +<l:template name="question" text="Q: %n"/> +<l:template name="reference" text="%t"/> +<l:template name="refsynopsisdiv" text="%t"/> +<l:template name="segmentedlist" text="%t"/> +<l:template name="set" text="%t"/> +<l:template name="setindex" text="%t"/> +<l:template name="sidebar" text="%t"/> +<l:template name="table" text="%t"/> +<l:template name="task" text="%t"/> +<l:template name="tip" text="%t"/> +<l:template name="toc" text="%t"/> +<l:template name="variablelist" text="%t"/> +<l:template name="varlistentry" text="%n"/> +<l:template name="warning" text="%t"/> +<l:template name="olink.document.citation" text=" in %o"/> +<l:template name="olink.page.citation" text=" (page %p)"/> +<l:template name="page.citation" text=" [%p]"/> +<l:template name="page" text="(page %p)"/> +<l:template name="docname" text=" in %o"/> +<l:template name="docnamelong" text=" in the document titled %o"/> +<l:template name="pageabbrev" text="(p. %p)"/> +<l:template name="Page" text="Page %p"/> +<l:template name="bridgehead" text="the section called “%t”"/> +<l:template name="refsection" text="the section called “%t”"/> +<l:template name="refsect1" text="the section called “%t”"/> +<l:template name="refsect2" text="the section called “%t”"/> +<l:template name="refsect3" text="the section called “%t”"/> +<l:template name="sect1" text="the section called “%t”"/> +<l:template name="sect2" text="the section called “%t”"/> +<l:template name="sect3" text="the section called “%t”"/> +<l:template name="sect4" text="the section called “%t”"/> +<l:template name="sect5" text="the section called “%t”"/> +<l:template name="section" text="the section called “%t”"/> +<l:template name="simplesect" text="the section called “%t”"/> +</l:context> +<l:context name="xref-number"><l:template name="answer" text="A: %n"/> +<l:template name="appendix" text="Appendix %n"/> +<l:template name="bridgehead" text="Section %n"/> +<l:template name="chapter" text="Chapter %n"/> +<l:template name="equation" text="Equation %n"/> +<l:template name="example" text="Example %n"/> +<l:template name="figure" text="Figure %n"/> +<l:template name="part" text="Part %n"/> +<l:template name="procedure" text="Procedure %n"/> +<l:template name="productionset" text="Production %n"/> +<l:template name="qandadiv" text="Q & A %n"/> +<l:template name="qandaentry" text="Q: %n"/> +<l:template name="question" text="Q: %n"/> +<l:template name="sect1" text="Section %n"/> +<l:template name="sect2" text="Section %n"/> +<l:template name="sect3" text="Section %n"/> +<l:template name="sect4" text="Section %n"/> +<l:template name="sect5" text="Section %n"/> +<l:template name="section" text="Section %n"/> +<l:template name="table" text="Table %n"/> +</l:context> +<l:context name="xref-number-and-title"><l:template name="appendix" text="Appendix %n, %t"/> +<l:template name="bridgehead" text="Section %n, “%t”"/> +<l:template name="chapter" text="Chapter %n, %t"/> +<l:template name="equation" text="Equation %n, “%t”"/> +<l:template name="example" text="Example %n, “%t”"/> +<l:template name="figure" text="Figure %n, “%t”"/> +<l:template name="part" text="Part %n, “%t”"/> +<l:template name="procedure" text="Procedure %n, “%t”"/> +<l:template name="productionset" text="Production %n, “%t”"/> +<l:template name="qandadiv" text="Q & A %n, “%t”"/> +<l:template name="refsect1" text="the section called “%t”"/> +<l:template name="refsect2" text="the section called “%t”"/> +<l:template name="refsect3" text="the section called “%t”"/> +<l:template name="refsection" text="the section called “%t”"/> +<l:template name="sect1" text="Section %n, “%t”"/> +<l:template name="sect2" text="Section %n, “%t”"/> +<l:template name="sect3" text="Section %n, “%t”"/> +<l:template name="sect4" text="Section %n, “%t”"/> +<l:template name="sect5" text="Section %n, “%t”"/> +<l:template name="section" text="Section %n, “%t”"/> +<l:template name="simplesect" text="the section called “%t”"/> +<l:template name="table" text="Table %n, “%t”"/> +</l:context> +<l:context name="authorgroup"><l:template name="sep" text=", "/> +<l:template name="sep2" text=" and "/> +<l:template name="seplast" text=", and "/> +</l:context> +<l:context name="glossary"><l:template name="see" text="See %t"/> +<l:template name="seealso" text="See Also %t"/> +</l:context> +<l:context name="msgset"><l:template name="MsgAud" text="Audience: "/> +<l:template name="MsgLevel" text="Level: "/> +<l:template name="MsgOrig" text="Origin: "/> +</l:context> +<l:context name="datetime"><l:template name="format" text="m/d/Y"/> +</l:context> +<l:context name="termdef"><l:template name="prefix" text="[Definition: "/> +<l:template name="suffix" text="]"/> +</l:context> +<l:context name="datetime-full"><l:template name="January" text="January"/> +<l:template name="February" text="February"/> +<l:template name="March" text="March"/> +<l:template name="April" text="April"/> +<l:template name="May" text="May"/> +<l:template name="June" text="June"/> +<l:template name="July" text="July"/> +<l:template name="August" text="August"/> +<l:template name="September" text="September"/> +<l:template name="October" text="October"/> +<l:template name="November" text="November"/> +<l:template name="December" text="December"/> +<l:template name="Monday" text="Monday"/> +<l:template name="Tuesday" text="Tuesday"/> +<l:template name="Wednesday" text="Wednesday"/> +<l:template name="Thursday" text="Thursday"/> +<l:template name="Friday" text="Friday"/> +<l:template name="Saturday" text="Saturday"/> +<l:template name="Sunday" text="Sunday"/> +</l:context> +<l:context name="datetime-abbrev"><l:template name="Jan" text="Jan"/> +<l:template name="Feb" text="Feb"/> +<l:template name="Mar" text="Mar"/> +<l:template name="Apr" text="Apr"/> +<l:template name="May" text="May"/> +<l:template name="Jun" text="Jun"/> +<l:template name="Jul" text="Jul"/> +<l:template name="Aug" text="Aug"/> +<l:template name="Sep" text="Sep"/> +<l:template name="Oct" text="Oct"/> +<l:template name="Nov" text="Nov"/> +<l:template name="Dec" text="Dec"/> +<l:template name="Mon" text="Mon"/> +<l:template name="Tue" text="Tue"/> +<l:template name="Wed" text="Wed"/> +<l:template name="Thu" text="Thu"/> +<l:template name="Fri" text="Fri"/> +<l:template name="Sat" text="Sat"/> +<l:template name="Sun" text="Sun"/> +</l:context> +<l:context name="htmlhelp"><l:template name="langcode" text="0x0409 English (UNITED STATES)"/> +</l:context> +<l:context name="index"><l:template name="term-separator" text=", "/> +<l:template name="number-separator" text=", "/> +<l:template name="range-separator" text="-"/> +</l:context> +<l:context name="iso690"><l:template name="lastfirst.sep" text=", "/> +<l:template name="alt.person.two.sep" text=" – "/> +<l:template name="alt.person.last.sep" text=" – "/> +<l:template name="alt.person.more.sep" text=" – "/> +<l:template name="primary.editor" text=" (ed.)"/> +<l:template name="primary.many" text=", et al."/> +<l:template name="primary.sep" text=". "/> +<l:template name="submaintitle.sep" text=": "/> +<l:template name="title.sep" text=". "/> +<l:template name="othertitle.sep" text=", "/> +<l:template name="medium1" text=" ["/> +<l:template name="medium2" text="]"/> +<l:template name="secondary.person.sep" text="; "/> +<l:template name="secondary.sep" text=". "/> +<l:template name="respons.sep" text=". "/> +<l:template name="edition.sep" text=". "/> +<l:template name="edition.serial.sep" text=", "/> +<l:template name="issuing.range" text="-"/> +<l:template name="issuing.div" text=", "/> +<l:template name="issuing.sep" text=". "/> +<l:template name="partnr.sep" text=". "/> +<l:template name="placepubl.sep" text=": "/> +<l:template name="publyear.sep" text=", "/> +<l:template name="pubinfo.sep" text=". "/> +<l:template name="spec.pubinfo.sep" text=", "/> +<l:template name="upd.sep" text=", "/> +<l:template name="datecit1" text=" [cited "/> +<l:template name="datecit2" text="]"/> +<l:template name="extent.sep" text=". "/> +<l:template name="locs.sep" text=", "/> +<l:template name="location.sep" text=". "/> +<l:template name="serie.sep" text=". "/> +<l:template name="notice.sep" text=". "/> +<l:template name="access" text="Available "/> +<l:template name="acctoo" text="Also available "/> +<l:template name="onwww" text="from World Wide Web"/> +<l:template name="oninet" text="from Internet"/> +<l:template name="access.end" text=": "/> +<l:template name="link1" text="<"/> +<l:template name="link2" text=">"/> +<l:template name="access.sep" text=". "/> +<l:template name="isbn" text="ISBN "/> +<l:template name="issn" text="ISSN "/> +<l:template name="stdnum.sep" text=". "/> +<l:template name="patcountry.sep" text=". "/> +<l:template name="pattype.sep" text=", "/> +<l:template name="patnum.sep" text=". "/> +<l:template name="patdate.sep" text=". "/> +</l:context><l:letters><l:l i="-1"/> +<l:l i="0">Symbols</l:l> +<l:l i="10">A</l:l> +<l:l i="10">a</l:l> +<l:l i="10">À</l:l> +<l:l i="10">à</l:l> +<l:l i="10">Á</l:l> +<l:l i="10">á</l:l> +<l:l i="10">Â</l:l> +<l:l i="10">â</l:l> +<l:l i="10">Ã</l:l> +<l:l i="10">ã</l:l> +<l:l i="10">Ä</l:l> +<l:l i="10">ä</l:l> +<l:l i="10">Å</l:l> +<l:l i="10">å</l:l> +<l:l i="10">Ā</l:l> +<l:l i="10">ā</l:l> +<l:l i="10">Ă</l:l> +<l:l i="10">ă</l:l> +<l:l i="10">Ą</l:l> +<l:l i="10">ą</l:l> +<l:l i="10">Ǎ</l:l> +<l:l i="10">ǎ</l:l> +<l:l i="10">Ǟ</l:l> +<l:l i="10">ǟ</l:l> +<l:l i="10">Ǡ</l:l> +<l:l i="10">ǡ</l:l> +<l:l i="10">Ǻ</l:l> +<l:l i="10">ǻ</l:l> +<l:l i="10">Ȁ</l:l> +<l:l i="10">ȁ</l:l> +<l:l i="10">Ȃ</l:l> +<l:l i="10">ȃ</l:l> +<l:l i="10">Ȧ</l:l> +<l:l i="10">ȧ</l:l> +<l:l i="10">Ḁ</l:l> +<l:l i="10">ḁ</l:l> +<l:l i="10">ẚ</l:l> +<l:l i="10">Ạ</l:l> +<l:l i="10">ạ</l:l> +<l:l i="10">Ả</l:l> +<l:l i="10">ả</l:l> +<l:l i="10">Ấ</l:l> +<l:l i="10">ấ</l:l> +<l:l i="10">Ầ</l:l> +<l:l i="10">ầ</l:l> +<l:l i="10">Ẩ</l:l> +<l:l i="10">ẩ</l:l> +<l:l i="10">Ẫ</l:l> +<l:l i="10">ẫ</l:l> +<l:l i="10">Ậ</l:l> +<l:l i="10">ậ</l:l> +<l:l i="10">Ắ</l:l> +<l:l i="10">ắ</l:l> +<l:l i="10">Ằ</l:l> +<l:l i="10">ằ</l:l> +<l:l i="10">Ẳ</l:l> +<l:l i="10">ẳ</l:l> +<l:l i="10">Ẵ</l:l> +<l:l i="10">ẵ</l:l> +<l:l i="10">Ặ</l:l> +<l:l i="10">ặ</l:l> +<l:l i="20">B</l:l> +<l:l i="20">b</l:l> +<l:l i="20">ƀ</l:l> +<l:l i="20">Ɓ</l:l> +<l:l i="20">ɓ</l:l> +<l:l i="20">Ƃ</l:l> +<l:l i="20">ƃ</l:l> +<l:l i="20">Ḃ</l:l> +<l:l i="20">ḃ</l:l> +<l:l i="20">Ḅ</l:l> +<l:l i="20">ḅ</l:l> +<l:l i="20">Ḇ</l:l> +<l:l i="20">ḇ</l:l> +<l:l i="30">C</l:l> +<l:l i="30">c</l:l> +<l:l i="30">Ç</l:l> +<l:l i="30">ç</l:l> +<l:l i="30">Ć</l:l> +<l:l i="30">ć</l:l> +<l:l i="30">Ĉ</l:l> +<l:l i="30">ĉ</l:l> +<l:l i="30">Ċ</l:l> +<l:l i="30">ċ</l:l> +<l:l i="30">Č</l:l> +<l:l i="30">č</l:l> +<l:l i="30">Ƈ</l:l> +<l:l i="30">ƈ</l:l> +<l:l i="30">ɕ</l:l> +<l:l i="30">Ḉ</l:l> +<l:l i="30">ḉ</l:l> +<l:l i="40">D</l:l> +<l:l i="40">d</l:l> +<l:l i="40">Ď</l:l> +<l:l i="40">ď</l:l> +<l:l i="40">Đ</l:l> +<l:l i="40">đ</l:l> +<l:l i="40">Ɗ</l:l> +<l:l i="40">ɗ</l:l> +<l:l i="40">Ƌ</l:l> +<l:l i="40">ƌ</l:l> +<l:l i="40">Dž</l:l> +<l:l i="40">Dz</l:l> +<l:l i="40">ȡ</l:l> +<l:l i="40">ɖ</l:l> +<l:l i="40">Ḋ</l:l> +<l:l i="40">ḋ</l:l> +<l:l i="40">Ḍ</l:l> +<l:l i="40">ḍ</l:l> +<l:l i="40">Ḏ</l:l> +<l:l i="40">ḏ</l:l> +<l:l i="40">Ḑ</l:l> +<l:l i="40">ḑ</l:l> +<l:l i="40">Ḓ</l:l> +<l:l i="40">ḓ</l:l> +<l:l i="50">E</l:l> +<l:l i="50">e</l:l> +<l:l i="50">È</l:l> +<l:l i="50">è</l:l> +<l:l i="50">É</l:l> +<l:l i="50">é</l:l> +<l:l i="50">Ê</l:l> +<l:l i="50">ê</l:l> +<l:l i="50">Ë</l:l> +<l:l i="50">ë</l:l> +<l:l i="50">Ē</l:l> +<l:l i="50">ē</l:l> +<l:l i="50">Ĕ</l:l> +<l:l i="50">ĕ</l:l> +<l:l i="50">Ė</l:l> +<l:l i="50">ė</l:l> +<l:l i="50">Ę</l:l> +<l:l i="50">ę</l:l> +<l:l i="50">Ě</l:l> +<l:l i="50">ě</l:l> +<l:l i="50">Ȅ</l:l> +<l:l i="50">ȅ</l:l> +<l:l i="50">Ȇ</l:l> +<l:l i="50">ȇ</l:l> +<l:l i="50">Ȩ</l:l> +<l:l i="50">ȩ</l:l> +<l:l i="50">Ḕ</l:l> +<l:l i="50">ḕ</l:l> +<l:l i="50">Ḗ</l:l> +<l:l i="50">ḗ</l:l> +<l:l i="50">Ḙ</l:l> +<l:l i="50">ḙ</l:l> +<l:l i="50">Ḛ</l:l> +<l:l i="50">ḛ</l:l> +<l:l i="50">Ḝ</l:l> +<l:l i="50">ḝ</l:l> +<l:l i="50">Ẹ</l:l> +<l:l i="50">ẹ</l:l> +<l:l i="50">Ẻ</l:l> +<l:l i="50">ẻ</l:l> +<l:l i="50">Ẽ</l:l> +<l:l i="50">ẽ</l:l> +<l:l i="50">Ế</l:l> +<l:l i="50">ế</l:l> +<l:l i="50">Ề</l:l> +<l:l i="50">ề</l:l> +<l:l i="50">Ể</l:l> +<l:l i="50">ể</l:l> +<l:l i="50">Ễ</l:l> +<l:l i="50">ễ</l:l> +<l:l i="50">Ệ</l:l> +<l:l i="50">ệ</l:l> +<l:l i="60">F</l:l> +<l:l i="60">f</l:l> +<l:l i="60">Ƒ</l:l> +<l:l i="60">ƒ</l:l> +<l:l i="60">Ḟ</l:l> +<l:l i="60">ḟ</l:l> +<l:l i="70">G</l:l> +<l:l i="70">g</l:l> +<l:l i="70">Ĝ</l:l> +<l:l i="70">ĝ</l:l> +<l:l i="70">Ğ</l:l> +<l:l i="70">ğ</l:l> +<l:l i="70">Ġ</l:l> +<l:l i="70">ġ</l:l> +<l:l i="70">Ģ</l:l> +<l:l i="70">ģ</l:l> +<l:l i="70">Ɠ</l:l> +<l:l i="70">ɠ</l:l> +<l:l i="70">Ǥ</l:l> +<l:l i="70">ǥ</l:l> +<l:l i="70">Ǧ</l:l> +<l:l i="70">ǧ</l:l> +<l:l i="70">Ǵ</l:l> +<l:l i="70">ǵ</l:l> +<l:l i="70">Ḡ</l:l> +<l:l i="70">ḡ</l:l> +<l:l i="80">H</l:l> +<l:l i="80">h</l:l> +<l:l i="80">Ĥ</l:l> +<l:l i="80">ĥ</l:l> +<l:l i="80">Ħ</l:l> +<l:l i="80">ħ</l:l> +<l:l i="80">Ȟ</l:l> +<l:l i="80">ȟ</l:l> +<l:l i="80">ɦ</l:l> +<l:l i="80">Ḣ</l:l> +<l:l i="80">ḣ</l:l> +<l:l i="80">Ḥ</l:l> +<l:l i="80">ḥ</l:l> +<l:l i="80">Ḧ</l:l> +<l:l i="80">ḧ</l:l> +<l:l i="80">Ḩ</l:l> +<l:l i="80">ḩ</l:l> +<l:l i="80">Ḫ</l:l> +<l:l i="80">ḫ</l:l> +<l:l i="80">ẖ</l:l> +<l:l i="90">I</l:l> +<l:l i="90">i</l:l> +<l:l i="90">Ì</l:l> +<l:l i="90">ì</l:l> +<l:l i="90">Í</l:l> +<l:l i="90">í</l:l> +<l:l i="90">Î</l:l> +<l:l i="90">î</l:l> +<l:l i="90">Ï</l:l> +<l:l i="90">ï</l:l> +<l:l i="90">Ĩ</l:l> +<l:l i="90">ĩ</l:l> +<l:l i="90">Ī</l:l> +<l:l i="90">ī</l:l> +<l:l i="90">Ĭ</l:l> +<l:l i="90">ĭ</l:l> +<l:l i="90">Į</l:l> +<l:l i="90">į</l:l> +<l:l i="90">İ</l:l> +<l:l i="90">Ɨ</l:l> +<l:l i="90">ɨ</l:l> +<l:l i="90">Ǐ</l:l> +<l:l i="90">ǐ</l:l> +<l:l i="90">Ȉ</l:l> +<l:l i="90">ȉ</l:l> +<l:l i="90">Ȋ</l:l> +<l:l i="90">ȋ</l:l> +<l:l i="90">Ḭ</l:l> +<l:l i="90">ḭ</l:l> +<l:l i="90">Ḯ</l:l> +<l:l i="90">ḯ</l:l> +<l:l i="90">Ỉ</l:l> +<l:l i="90">ỉ</l:l> +<l:l i="90">Ị</l:l> +<l:l i="90">ị</l:l> +<l:l i="100">J</l:l> +<l:l i="100">j</l:l> +<l:l i="100">Ĵ</l:l> +<l:l i="100">ĵ</l:l> +<l:l i="100">ǰ</l:l> +<l:l i="100">ʝ</l:l> +<l:l i="110">K</l:l> +<l:l i="110">k</l:l> +<l:l i="110">Ķ</l:l> +<l:l i="110">ķ</l:l> +<l:l i="110">Ƙ</l:l> +<l:l i="110">ƙ</l:l> +<l:l i="110">Ǩ</l:l> +<l:l i="110">ǩ</l:l> +<l:l i="110">Ḱ</l:l> +<l:l i="110">ḱ</l:l> +<l:l i="110">Ḳ</l:l> +<l:l i="110">ḳ</l:l> +<l:l i="110">Ḵ</l:l> +<l:l i="110">ḵ</l:l> +<l:l i="120">L</l:l> +<l:l i="120">l</l:l> +<l:l i="120">Ĺ</l:l> +<l:l i="120">ĺ</l:l> +<l:l i="120">Ļ</l:l> +<l:l i="120">ļ</l:l> +<l:l i="120">Ľ</l:l> +<l:l i="120">ľ</l:l> +<l:l i="120">Ŀ</l:l> +<l:l i="120">ŀ</l:l> +<l:l i="120">Ł</l:l> +<l:l i="120">ł</l:l> +<l:l i="120">ƚ</l:l> +<l:l i="120">Lj</l:l> +<l:l i="120">ȴ</l:l> +<l:l i="120">ɫ</l:l> +<l:l i="120">ɬ</l:l> +<l:l i="120">ɭ</l:l> +<l:l i="120">Ḷ</l:l> +<l:l i="120">ḷ</l:l> +<l:l i="120">Ḹ</l:l> +<l:l i="120">ḹ</l:l> +<l:l i="120">Ḻ</l:l> +<l:l i="120">ḻ</l:l> +<l:l i="120">Ḽ</l:l> +<l:l i="120">ḽ</l:l> +<l:l i="130">M</l:l> +<l:l i="130">m</l:l> +<l:l i="130">ɱ</l:l> +<l:l i="130">Ḿ</l:l> +<l:l i="130">ḿ</l:l> +<l:l i="130">Ṁ</l:l> +<l:l i="130">ṁ</l:l> +<l:l i="130">Ṃ</l:l> +<l:l i="130">ṃ</l:l> +<l:l i="140">N</l:l> +<l:l i="140">n</l:l> +<l:l i="140">Ñ</l:l> +<l:l i="140">ñ</l:l> +<l:l i="140">Ń</l:l> +<l:l i="140">ń</l:l> +<l:l i="140">Ņ</l:l> +<l:l i="140">ņ</l:l> +<l:l i="140">Ň</l:l> +<l:l i="140">ň</l:l> +<l:l i="140">Ɲ</l:l> +<l:l i="140">ɲ</l:l> +<l:l i="140">ƞ</l:l> +<l:l i="140">Ƞ</l:l> +<l:l i="140">Nj</l:l> +<l:l i="140">Ǹ</l:l> +<l:l i="140">ǹ</l:l> +<l:l i="140">ȵ</l:l> +<l:l i="140">ɳ</l:l> +<l:l i="140">Ṅ</l:l> +<l:l i="140">ṅ</l:l> +<l:l i="140">Ṇ</l:l> +<l:l i="140">ṇ</l:l> +<l:l i="140">Ṉ</l:l> +<l:l i="140">ṉ</l:l> +<l:l i="140">Ṋ</l:l> +<l:l i="140">ṋ</l:l> +<l:l i="150">O</l:l> +<l:l i="150">o</l:l> +<l:l i="150">Ò</l:l> +<l:l i="150">ò</l:l> +<l:l i="150">Ó</l:l> +<l:l i="150">ó</l:l> +<l:l i="150">Ô</l:l> +<l:l i="150">ô</l:l> +<l:l i="150">Õ</l:l> +<l:l i="150">õ</l:l> +<l:l i="150">Ö</l:l> +<l:l i="150">ö</l:l> +<l:l i="150">Ø</l:l> +<l:l i="150">ø</l:l> +<l:l i="150">Ō</l:l> +<l:l i="150">ō</l:l> +<l:l i="150">Ŏ</l:l> +<l:l i="150">ŏ</l:l> +<l:l i="150">Ő</l:l> +<l:l i="150">ő</l:l> +<l:l i="150">Ɵ</l:l> +<l:l i="150">Ơ</l:l> +<l:l i="150">ơ</l:l> +<l:l i="150">Ǒ</l:l> +<l:l i="150">ǒ</l:l> +<l:l i="150">Ǫ</l:l> +<l:l i="150">ǫ</l:l> +<l:l i="150">Ǭ</l:l> +<l:l i="150">ǭ</l:l> +<l:l i="150">Ǿ</l:l> +<l:l i="150">ǿ</l:l> +<l:l i="150">Ȍ</l:l> +<l:l i="150">ȍ</l:l> +<l:l i="150">Ȏ</l:l> +<l:l i="150">ȏ</l:l> +<l:l i="150">Ȫ</l:l> +<l:l i="150">ȫ</l:l> +<l:l i="150">Ȭ</l:l> +<l:l i="150">ȭ</l:l> +<l:l i="150">Ȯ</l:l> +<l:l i="150">ȯ</l:l> +<l:l i="150">Ȱ</l:l> +<l:l i="150">ȱ</l:l> +<l:l i="150">Ṍ</l:l> +<l:l i="150">ṍ</l:l> +<l:l i="150">Ṏ</l:l> +<l:l i="150">ṏ</l:l> +<l:l i="150">Ṑ</l:l> +<l:l i="150">ṑ</l:l> +<l:l i="150">Ṓ</l:l> +<l:l i="150">ṓ</l:l> +<l:l i="150">Ọ</l:l> +<l:l i="150">ọ</l:l> +<l:l i="150">Ỏ</l:l> +<l:l i="150">ỏ</l:l> +<l:l i="150">Ố</l:l> +<l:l i="150">ố</l:l> +<l:l i="150">Ồ</l:l> +<l:l i="150">ồ</l:l> +<l:l i="150">Ổ</l:l> +<l:l i="150">ổ</l:l> +<l:l i="150">Ỗ</l:l> +<l:l i="150">ỗ</l:l> +<l:l i="150">Ộ</l:l> +<l:l i="150">ộ</l:l> +<l:l i="150">Ớ</l:l> +<l:l i="150">ớ</l:l> +<l:l i="150">Ờ</l:l> +<l:l i="150">ờ</l:l> +<l:l i="150">Ở</l:l> +<l:l i="150">ở</l:l> +<l:l i="150">Ỡ</l:l> +<l:l i="150">ỡ</l:l> +<l:l i="150">Ợ</l:l> +<l:l i="150">ợ</l:l> +<l:l i="160">P</l:l> +<l:l i="160">p</l:l> +<l:l i="160">Ƥ</l:l> +<l:l i="160">ƥ</l:l> +<l:l i="160">Ṕ</l:l> +<l:l i="160">ṕ</l:l> +<l:l i="160">Ṗ</l:l> +<l:l i="160">ṗ</l:l> +<l:l i="170">Q</l:l> +<l:l i="170">q</l:l> +<l:l i="170">ʠ</l:l> +<l:l i="180">R</l:l> +<l:l i="180">r</l:l> +<l:l i="180">Ŕ</l:l> +<l:l i="180">ŕ</l:l> +<l:l i="180">Ŗ</l:l> +<l:l i="180">ŗ</l:l> +<l:l i="180">Ř</l:l> +<l:l i="180">ř</l:l> +<l:l i="180">Ȑ</l:l> +<l:l i="180">ȑ</l:l> +<l:l i="180">Ȓ</l:l> +<l:l i="180">ȓ</l:l> +<l:l i="180">ɼ</l:l> +<l:l i="180">ɽ</l:l> +<l:l i="180">ɾ</l:l> +<l:l i="180">Ṙ</l:l> +<l:l i="180">ṙ</l:l> +<l:l i="180">Ṛ</l:l> +<l:l i="180">ṛ</l:l> +<l:l i="180">Ṝ</l:l> +<l:l i="180">ṝ</l:l> +<l:l i="180">Ṟ</l:l> +<l:l i="180">ṟ</l:l> +<l:l i="190">S</l:l> +<l:l i="190">s</l:l> +<l:l i="190">Ś</l:l> +<l:l i="190">ś</l:l> +<l:l i="190">Ŝ</l:l> +<l:l i="190">ŝ</l:l> +<l:l i="190">Ş</l:l> +<l:l i="190">ş</l:l> +<l:l i="190">Š</l:l> +<l:l i="190">š</l:l> +<l:l i="190">Ș</l:l> +<l:l i="190">ș</l:l> +<l:l i="190">ʂ</l:l> +<l:l i="190">Ṡ</l:l> +<l:l i="190">ṡ</l:l> +<l:l i="190">Ṣ</l:l> +<l:l i="190">ṣ</l:l> +<l:l i="190">Ṥ</l:l> +<l:l i="190">ṥ</l:l> +<l:l i="190">Ṧ</l:l> +<l:l i="190">ṧ</l:l> +<l:l i="190">Ṩ</l:l> +<l:l i="190">ṩ</l:l> +<l:l i="200">T</l:l> +<l:l i="200">t</l:l> +<l:l i="200">Ţ</l:l> +<l:l i="200">ţ</l:l> +<l:l i="200">Ť</l:l> +<l:l i="200">ť</l:l> +<l:l i="200">Ŧ</l:l> +<l:l i="200">ŧ</l:l> +<l:l i="200">ƫ</l:l> +<l:l i="200">Ƭ</l:l> +<l:l i="200">ƭ</l:l> +<l:l i="200">Ʈ</l:l> +<l:l i="200">ʈ</l:l> +<l:l i="200">Ț</l:l> +<l:l i="200">ț</l:l> +<l:l i="200">ȶ</l:l> +<l:l i="200">Ṫ</l:l> +<l:l i="200">ṫ</l:l> +<l:l i="200">Ṭ</l:l> +<l:l i="200">ṭ</l:l> +<l:l i="200">Ṯ</l:l> +<l:l i="200">ṯ</l:l> +<l:l i="200">Ṱ</l:l> +<l:l i="200">ṱ</l:l> +<l:l i="200">ẗ</l:l> +<l:l i="210">U</l:l> +<l:l i="210">u</l:l> +<l:l i="210">Ù</l:l> +<l:l i="210">ù</l:l> +<l:l i="210">Ú</l:l> +<l:l i="210">ú</l:l> +<l:l i="210">Û</l:l> +<l:l i="210">û</l:l> +<l:l i="210">Ü</l:l> +<l:l i="210">ü</l:l> +<l:l i="210">Ũ</l:l> +<l:l i="210">ũ</l:l> +<l:l i="210">Ū</l:l> +<l:l i="210">ū</l:l> +<l:l i="210">Ŭ</l:l> +<l:l i="210">ŭ</l:l> +<l:l i="210">Ů</l:l> +<l:l i="210">ů</l:l> +<l:l i="210">Ű</l:l> +<l:l i="210">ű</l:l> +<l:l i="210">Ų</l:l> +<l:l i="210">ų</l:l> +<l:l i="210">Ư</l:l> +<l:l i="210">ư</l:l> +<l:l i="210">Ǔ</l:l> +<l:l i="210">ǔ</l:l> +<l:l i="210">Ǖ</l:l> +<l:l i="210">ǖ</l:l> +<l:l i="210">Ǘ</l:l> +<l:l i="210">ǘ</l:l> +<l:l i="210">Ǚ</l:l> +<l:l i="210">ǚ</l:l> +<l:l i="210">Ǜ</l:l> +<l:l i="210">ǜ</l:l> +<l:l i="210">Ȕ</l:l> +<l:l i="210">ȕ</l:l> +<l:l i="210">Ȗ</l:l> +<l:l i="210">ȗ</l:l> +<l:l i="210">Ṳ</l:l> +<l:l i="210">ṳ</l:l> +<l:l i="210">Ṵ</l:l> +<l:l i="210">ṵ</l:l> +<l:l i="210">Ṷ</l:l> +<l:l i="210">ṷ</l:l> +<l:l i="210">Ṹ</l:l> +<l:l i="210">ṹ</l:l> +<l:l i="210">Ṻ</l:l> +<l:l i="210">ṻ</l:l> +<l:l i="210">Ụ</l:l> +<l:l i="210">ụ</l:l> +<l:l i="210">Ủ</l:l> +<l:l i="210">ủ</l:l> +<l:l i="210">Ứ</l:l> +<l:l i="210">ứ</l:l> +<l:l i="210">Ừ</l:l> +<l:l i="210">ừ</l:l> +<l:l i="210">Ử</l:l> +<l:l i="210">ử</l:l> +<l:l i="210">Ữ</l:l> +<l:l i="210">ữ</l:l> +<l:l i="210">Ự</l:l> +<l:l i="210">ự</l:l> +<l:l i="220">V</l:l> +<l:l i="220">v</l:l> +<l:l i="220">Ʋ</l:l> +<l:l i="220">ʋ</l:l> +<l:l i="220">Ṽ</l:l> +<l:l i="220">ṽ</l:l> +<l:l i="220">Ṿ</l:l> +<l:l i="220">ṿ</l:l> +<l:l i="230">W</l:l> +<l:l i="230">w</l:l> +<l:l i="230">Ŵ</l:l> +<l:l i="230">ŵ</l:l> +<l:l i="230">Ẁ</l:l> +<l:l i="230">ẁ</l:l> +<l:l i="230">Ẃ</l:l> +<l:l i="230">ẃ</l:l> +<l:l i="230">Ẅ</l:l> +<l:l i="230">ẅ</l:l> +<l:l i="230">Ẇ</l:l> +<l:l i="230">ẇ</l:l> +<l:l i="230">Ẉ</l:l> +<l:l i="230">ẉ</l:l> +<l:l i="230">ẘ</l:l> +<l:l i="240">X</l:l> +<l:l i="240">x</l:l> +<l:l i="240">Ẋ</l:l> +<l:l i="240">ẋ</l:l> +<l:l i="240">Ẍ</l:l> +<l:l i="240">ẍ</l:l> +<l:l i="250">Y</l:l> +<l:l i="250">y</l:l> +<l:l i="250">Ý</l:l> +<l:l i="250">ý</l:l> +<l:l i="250">ÿ</l:l> +<l:l i="250">Ÿ</l:l> +<l:l i="250">Ŷ</l:l> +<l:l i="250">ŷ</l:l> +<l:l i="250">Ƴ</l:l> +<l:l i="250">ƴ</l:l> +<l:l i="250">Ȳ</l:l> +<l:l i="250">ȳ</l:l> +<l:l i="250">Ẏ</l:l> +<l:l i="250">ẏ</l:l> +<l:l i="250">ẙ</l:l> +<l:l i="250">Ỳ</l:l> +<l:l i="250">ỳ</l:l> +<l:l i="250">Ỵ</l:l> +<l:l i="250">ỵ</l:l> +<l:l i="250">Ỷ</l:l> +<l:l i="250">ỷ</l:l> +<l:l i="250">Ỹ</l:l> +<l:l i="250">ỹ</l:l> +<l:l i="260">Z</l:l> +<l:l i="260">z</l:l> +<l:l i="260">Ź</l:l> +<l:l i="260">ź</l:l> +<l:l i="260">Ż</l:l> +<l:l i="260">ż</l:l> +<l:l i="260">Ž</l:l> +<l:l i="260">ž</l:l> +<l:l i="260">Ƶ</l:l> +<l:l i="260">ƶ</l:l> +<l:l i="260">Ȥ</l:l> +<l:l i="260">ȥ</l:l> +<l:l i="260">ʐ</l:l> +<l:l i="260">ʑ</l:l> +<l:l i="260">Ẑ</l:l> +<l:l i="260">ẑ</l:l> +<l:l i="260">Ẓ</l:l> +<l:l i="260">ẓ</l:l> +<l:l i="260">Ẕ</l:l> +<l:l i="260">ẕ</l:l> +</l:letters> +</l:l10n> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/entities.ent b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/entities.ent new file mode 100644 index 000000000..17f69d824 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/entities.ent @@ -0,0 +1,47 @@ +<!-- ******************************************************************** + $Id$ + ******************************************************************** + + This file contains common entity declarations used for + sorting by various templates. + + This file is part of the XSL DocBook Stylesheet distribution. + See ../README or http://docbook.sf.net/release/xsl/current/ for + copyright and other information. + + ******************************************************************** --> + +<!-- ==================================================================== --> + +<!ENTITY lowercase "'AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ'"> +<!ENTITY uppercase "'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ'"> + +<!ENTITY primary 'normalize-space(concat(primary/@sortas, primary[not(@sortas) or @sortas = ""]))'> +<!ENTITY secondary 'normalize-space(concat(secondary/@sortas, secondary[not(@sortas) or @sortas = ""]))'> +<!ENTITY tertiary 'normalize-space(concat(tertiary/@sortas, tertiary[not(@sortas) or @sortas = ""]))'> + + +<!ENTITY section '(ancestor-or-self::set|ancestor-or-self::book|ancestor-or-self::part|ancestor-or-self::reference|ancestor-or-self::partintro|ancestor-or-self::chapter|ancestor-or-self::appendix|ancestor-or-self::preface|ancestor-or-self::article|ancestor-or-self::section|ancestor-or-self::sect1|ancestor-or-self::sect2|ancestor-or-self::sect3|ancestor-or-self::sect4|ancestor-or-self::sect5|ancestor-or-self::refentry|ancestor-or-self::refsect1|ancestor-or-self::refsect2|ancestor-or-self::refsect3|ancestor-or-self::simplesect|ancestor-or-self::bibliography|ancestor-or-self::glossary|ancestor-or-self::index|ancestor-or-self::webpage)[last()]'> + +<!ENTITY section.id 'generate-id(§ion;)'> +<!ENTITY sep '" "'> + +<!ENTITY scope 'count(ancestor::node()|$scope) = count(ancestor::node()) and ($role = @role or $type = @type or (string-length($role) = 0 and string-length($type) = 0))'> + +<!ENTITY setup-language-variable ' +<xsl:variable name="language" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + <xsl:call-template name="l10n.language"/> +</xsl:variable> + +<xsl:variable name="lowercase" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key">normalize.sort.input</xsl:with-param> + </xsl:call-template> +</xsl:variable> + +<xsl:variable name="uppercase" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key">normalize.sort.output</xsl:with-param> + </xsl:call-template> +</xsl:variable> +'> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/es.xml b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/es.xml new file mode 100644 index 000000000..c6d6bb630 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/es.xml @@ -0,0 +1,663 @@ +<?xml version="1.0" encoding="utf-8"?> +<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="es" english-language-name="Spanish"> + +<!-- * This file is generated automatically. --> +<!-- * To submit changes to this file upstream (to the DocBook Project) --> +<!-- * do not submit an edited version of this file. Instead, submit an --> +<!-- * edited version of the source file at the following location: --> +<!-- * --> +<!-- * https://svn.sourceforge.net/svnroot/docbook/trunk/gentext/locale/es.xml --> +<!-- * --> +<!-- * E-mail the edited es.xml source file to: --> +<!-- * --> +<!-- * docbook-developers@lists.sourceforge.net --> + +<!-- ******************************************************************** --> + +<!-- This file is part of the XSL DocBook Stylesheet distribution. --> +<!-- See ../README or http://docbook.sf.net/release/xsl/current/ for --> +<!-- copyright and other information. --> + +<!-- ******************************************************************** --> + +<l:gentext key="Abstract" text="Resumen"/> +<l:gentext key="abstract" text="resumen"/> +<l:gentext key="Answer" text="R:"/> +<l:gentext key="answer" text="r:"/> +<l:gentext key="Appendix" text="Apéndice"/> +<l:gentext key="appendix" text="apéndice"/> +<l:gentext key="Article" text="Artículo"/> +<l:gentext key="article" text="artículo"/> +<l:gentext key="Author" text="Autor"/> +<l:gentext key="Bibliography" text="Bibliografía"/> +<l:gentext key="bibliography" text="bibliografía"/> +<l:gentext key="Book" text="Libro"/> +<l:gentext key="book" text="libro"/> +<l:gentext key="CAUTION" text="ATENCIÓN"/> +<l:gentext key="Caution" text="Atención"/> +<l:gentext key="caution" text="atención"/> +<l:gentext key="Chapter" text="Capítulo"/> +<l:gentext key="chapter" text="capítulo"/> +<l:gentext key="Colophon" text="Colofón"/> +<l:gentext key="colophon" text="colofón"/> +<l:gentext key="Copyright" text="Copyright"/> +<l:gentext key="copyright" text="copyright"/> +<l:gentext key="Dedication" text="Dedicatoria"/> +<l:gentext key="dedication" text="dedicatoria"/> +<l:gentext key="Edition" text="Edición"/> +<l:gentext key="edition" text="edición"/> +<l:gentext key="Editor" text="Editor" lang="en"/> +<l:gentext key="Equation" text="Ecuación"/> +<l:gentext key="equation" text="ecuación"/> +<l:gentext key="Example" text="Ejemplo"/> +<l:gentext key="example" text="ejemplo"/> +<l:gentext key="Figure" text="Figura"/> +<l:gentext key="figure" text="figura"/> +<l:gentext key="Glossary" text="Glosario"/> +<l:gentext key="glossary" text="glosario"/> +<l:gentext key="GlossSee" text="Ver"/> +<l:gentext key="glosssee" text="ver"/> +<l:gentext key="GlossSeeAlso" text="Ver también"/> +<l:gentext key="glossseealso" text="ver también"/> +<l:gentext key="IMPORTANT" text="IMPORTANTE"/> +<l:gentext key="important" text="importante"/> +<l:gentext key="Important" text="Importante"/> +<l:gentext key="Index" text="Índice"/> +<l:gentext key="index" text="índice"/> +<l:gentext key="ISBN" text="ISBN"/> +<l:gentext key="isbn" text="isbn"/> +<l:gentext key="LegalNotice" text="Aviso Legal"/> +<l:gentext key="legalnotice" text="aviso legal"/> +<l:gentext key="MsgAud" text="Audiencia"/> +<l:gentext key="msgaud" text="audiencia"/> +<l:gentext key="MsgLevel" text="Nivel"/> +<l:gentext key="msglevel" text="nivel"/> +<l:gentext key="MsgOrig" text="Origen"/> +<l:gentext key="msgorig" text="origen"/> +<l:gentext key="NOTE" text="NOTA"/> +<l:gentext key="Note" text="Nota"/> +<l:gentext key="note" text="nota"/> +<l:gentext key="Part" text="Parte"/> +<l:gentext key="part" text="parte"/> +<l:gentext key="Preface" text="Prefacio"/> +<l:gentext key="preface" text="prefacio"/> +<l:gentext key="Procedure" text="Procedimiento"/> +<l:gentext key="procedure" text="procedimiento"/> +<l:gentext key="ProductionSet" text="Producción"/> +<l:gentext key="PubDate" text="Fecha de publicación"/> +<l:gentext key="pubdate" text="fecha de publicación"/> +<l:gentext key="Published" text="Publicado"/> +<l:gentext key="published" text="publicado"/> +<l:gentext key="Publisher" text="Publisher" lang="en"/> +<l:gentext key="Qandadiv" text="P y R"/> +<l:gentext key="qandadiv" text="P y R"/> +<l:gentext key="QandASet" text="Frequently Asked Questions" lang="en"/> +<l:gentext key="Question" text="P:"/> +<l:gentext key="question" text="p:"/> +<l:gentext key="RefEntry" text="Entrada de referencia"/> +<l:gentext key="refentry" text="entrada de referencia"/> +<l:gentext key="Reference" text="Referencia"/> +<l:gentext key="reference" text="referencia"/> +<l:gentext key="References" text="References" lang="en"/> +<l:gentext key="RefName" text="Nombre de referencia"/> +<l:gentext key="refname" text="nombre de referencia"/> +<l:gentext key="RefSection" text="Sección de referencia"/> +<l:gentext key="refsection" text="sección de referencia"/> +<l:gentext key="RefSynopsisDiv" text="Sinopsis"/> +<l:gentext key="refsynopsisdiv" text="sinopsis"/> +<l:gentext key="RevHistory" text="Historial de revisiones"/> +<l:gentext key="revhistory" text="Historial de revisiones"/> +<l:gentext key="revision" text="revisión"/> +<l:gentext key="Revision" text="Revisión"/> +<l:gentext key="sect1" text="Sección"/> +<l:gentext key="sect2" text="Sección"/> +<l:gentext key="sect3" text="Sección"/> +<l:gentext key="sect4" text="Sección"/> +<l:gentext key="sect5" text="Sección"/> +<l:gentext key="section" text="sección"/> +<l:gentext key="Section" text="Sección"/> +<l:gentext key="see" text="ver"/> +<l:gentext key="See" text="Ver"/> +<l:gentext key="seealso" text="ver también"/> +<l:gentext key="Seealso" text="Ver también"/> +<l:gentext key="SeeAlso" text="Ver También"/> +<l:gentext key="set" text="conjunto"/> +<l:gentext key="Set" text="Conjunto"/> +<l:gentext key="setindex" text="índice del conjunto"/> +<l:gentext key="SetIndex" text="Índice del Conjunto"/> +<l:gentext key="Sidebar" text="Barra lateral"/> +<l:gentext key="sidebar" text="barra lateral"/> +<l:gentext key="step" text="paso"/> +<l:gentext key="Step" text="Paso"/> +<l:gentext key="table" text="tabla"/> +<l:gentext key="Table" text="Tabla"/> +<l:gentext key="task" text="Task" lang="en"/> +<l:gentext key="Task" text="Task" lang="en"/> +<l:gentext key="tip" text="sugerencia"/> +<l:gentext key="TIP" text="SUGERENCIA"/> +<l:gentext key="Tip" text="Sugerencia"/> +<l:gentext key="Warning" text="Aviso"/> +<l:gentext key="warning" text="aviso"/> +<l:gentext key="WARNING" text="AVISO"/> +<l:gentext key="and" text="y"/> +<l:gentext key="by" text="por"/> +<l:gentext key="Edited" text="Editado"/> +<l:gentext key="edited" text="editado"/> +<l:gentext key="Editedby" text="Editado por"/> +<l:gentext key="editedby" text="editado por"/> +<l:gentext key="in" text="en"/> +<l:gentext key="lastlistcomma" text=","/> +<l:gentext key="listcomma" text=","/> +<l:gentext key="nonexistantelement" text="elemento inexistente"/> +<l:gentext key="notes" text="notas"/> +<l:gentext key="Notes" text="Notas"/> +<l:gentext key="Pgs" text="Págs."/> +<l:gentext key="pgs" text="págs."/> +<l:gentext key="Revisedby" text="Revisado por: "/> +<l:gentext key="revisedby" text="revisado por: "/> +<l:gentext key="TableNotes" text="Notas de tabla"/> +<l:gentext key="tablenotes" text="notas de tabla"/> +<l:gentext key="TableofContents" text="Tabla de contenidos"/> +<l:gentext key="tableofcontents" text="tabla de contenidos"/> +<l:gentext key="unexpectedelementname" text="nombre de elemento inesperado"/> +<l:gentext key="unsupported" text="no soportado"/> +<l:gentext key="xrefto" text="referencia a"/> +<l:gentext key="Authors" text="Authors" lang="en"/> +<l:gentext key="copyeditor" text="Copy Editor" lang="en"/> +<l:gentext key="graphicdesigner" text="Graphic Designer" lang="en"/> +<l:gentext key="productioneditor" text="Production Editor" lang="en"/> +<l:gentext key="technicaleditor" text="Technical Editor" lang="en"/> +<l:gentext key="translator" text="Translator" lang="en"/> +<l:gentext key="listofequations" text="lista de ecuaciones"/> +<l:gentext key="ListofEquations" text="Lista de ecuaciones"/> +<l:gentext key="ListofExamples" text="Lista de ejemplos"/> +<l:gentext key="listofexamples" text="lista de ejemplos"/> +<l:gentext key="ListofFigures" text="Lista de figuras"/> +<l:gentext key="listoffigures" text="lista de figuras"/> +<l:gentext key="ListofProcedures" text="List of Procedures" lang="en"/> +<l:gentext key="listofprocedures" text="List of Procedures" lang="en"/> +<l:gentext key="listoftables" text="lista de tablas"/> +<l:gentext key="ListofTables" text="Lista de tablas"/> +<l:gentext key="ListofUnknown" text="Lista de desconocido"/> +<l:gentext key="listofunknown" text="lista de desconocido"/> +<l:gentext key="nav-home" text="Inicio"/> +<l:gentext key="nav-next" text="Siguiente"/> +<l:gentext key="nav-next-sibling" text="Avanzar"/> +<l:gentext key="nav-prev" text="Anterior"/> +<l:gentext key="nav-prev-sibling" text="Retroceder"/> +<l:gentext key="nav-up" text="Subir"/> +<l:gentext key="nav-toc" text="ToC" lang="en"/> +<l:gentext key="Draft" text="Borrador"/> +<l:gentext key="above" text="arriba"/> +<l:gentext key="below" text="abajo"/> +<l:gentext key="sectioncalled" text="sección llamada"/> +<l:gentext key="index symbols" text="Símbolos"/> +<l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyzáéíóúñ"/> +<l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZÁÉÍÓÚÑ"/> +<l:gentext key="normalize.sort.input" text="AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ" lang="en"/> +<l:gentext key="normalize.sort.output" text="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ" lang="en"/> +<l:dingbat key="startquote" text="“"/> +<l:dingbat key="endquote" text="”"/> +<l:dingbat key="nestedstartquote" text="‘"/> +<l:dingbat key="nestedendquote" text="’"/> +<l:dingbat key="singlestartquote" text="‘" lang="en"/> +<l:dingbat key="singleendquote" text="’" lang="en"/> +<l:dingbat key="bullet" text="•"/> +<l:gentext key="hyphenation-character" text="-" lang="en"/> +<l:gentext key="hyphenation-push-character-count" text="2" lang="en"/> +<l:gentext key="hyphenation-remain-character-count" text="2" lang="en"/> +<l:context name="styles"><l:template name="person-name" text="first-last"/> +</l:context> +<l:context name="title"><l:template name="abstract" text="%t"/> +<l:template name="answer" text="%t"/> +<l:template name="appendix" text="Apéndice %n. %t"/> +<l:template name="article" text="%t"/> +<l:template name="authorblurb" text="%t"/> +<l:template name="bibliodiv" text="%t"/> +<l:template name="biblioentry" text="%t"/> +<l:template name="bibliography" text="%t"/> +<l:template name="bibliolist" text="%t" lang="en"/> +<l:template name="bibliomixed" text="%t"/> +<l:template name="bibliomset" text="%t"/> +<l:template name="biblioset" text="%t"/> +<l:template name="blockquote" text="%t"/> +<l:template name="book" text="%t"/> +<l:template name="calloutlist" text="%t"/> +<l:template name="caution" text="%t"/> +<l:template name="chapter" text="Capítulo %n. %t"/> +<l:template name="colophon" text="%t"/> +<l:template name="dedication" text="%t"/> +<l:template name="equation" text="Ecuación %n. %t"/> +<l:template name="example" text="Ejemplo %n. %t"/> +<l:template name="figure" text="Figura %n. %t"/> +<l:template name="foil" text="%t" lang="en"/> +<l:template name="foilgroup" text="%t" lang="en"/> +<l:template name="formalpara" text="%t"/> +<l:template name="glossary" text="%t"/> +<l:template name="glossdiv" text="%t"/> +<l:template name="glosslist" text="%t" lang="en"/> +<l:template name="glossentry" text="%t" lang="en"/> +<l:template name="important" text="%t"/> +<l:template name="index" text="%t"/> +<l:template name="indexdiv" text="%t"/> +<l:template name="itemizedlist" text="%t"/> +<l:template name="legalnotice" text="%t"/> +<l:template name="listitem" text=""/> +<l:template name="lot" text="%t"/> +<l:template name="msg" text="%t"/> +<l:template name="msgexplan" text="%t"/> +<l:template name="msgmain" text="%t"/> +<l:template name="msgrel" text="%t"/> +<l:template name="msgset" text="%t"/> +<l:template name="msgsub" text="%t"/> +<l:template name="note" text="%t"/> +<l:template name="orderedlist" text="%t"/> +<l:template name="part" text="Parte %n. %t"/> +<l:template name="partintro" text="%t"/> +<l:template name="preface" text="%t"/> +<l:template name="procedure" text="%t"/> +<l:template name="procedure.formal" text="Procedimiento %n. %t"/> +<l:template name="productionset" text="%t"/> +<l:template name="productionset.formal" text="Producción %n"/> +<l:template name="qandadiv" text="%t"/> +<l:template name="qandaentry" text="%t"/> +<l:template name="qandaset" text="%t"/> +<l:template name="question" text="%t"/> +<l:template name="refentry" text="%t"/> +<l:template name="reference" text="%t"/> +<l:template name="refsection" text="%t"/> +<l:template name="refsect1" text="%t"/> +<l:template name="refsect2" text="%t"/> +<l:template name="refsect3" text="%t"/> +<l:template name="refsynopsisdiv" text="%t"/> +<l:template name="refsynopsisdivinfo" text="%t"/> +<l:template name="segmentedlist" text="%t"/> +<l:template name="set" text="%t"/> +<l:template name="setindex" text="%t"/> +<l:template name="sidebar" text="%t"/> +<l:template name="step" text="%t"/> +<l:template name="table" text="Tabla %n. %t"/> +<l:template name="task" text="%t" lang="en"/> +<l:template name="tasksummary" text="%t" lang="en"/> +<l:template name="taskprerequisites" text="%t" lang="en"/> +<l:template name="taskrelated" text="%t" lang="en"/> +<l:template name="tip" text="%t"/> +<l:template name="toc" text="%t"/> +<l:template name="variablelist" text="%t"/> +<l:template name="varlistentry" text="" lang="en"/> +<l:template name="warning" text="%t"/> +</l:context> +<l:context name="title-unnumbered"><l:template name="appendix" text="%t"/> +<l:template name="article/appendix" text="%t" lang="en"/> +<l:template name="bridgehead" text="%t"/> +<l:template name="chapter" text="%t"/> +<l:template name="sect1" text="%t"/> +<l:template name="sect2" text="%t"/> +<l:template name="sect3" text="%t"/> +<l:template name="sect4" text="%t"/> +<l:template name="sect5" text="%t"/> +<l:template name="section" text="%t"/> +<l:template name="simplesect" text="%t"/> +<l:template name="part" text="%t" lang="en"/> +</l:context> +<l:context name="title-numbered"><l:template name="appendix" text="Apéndice %n. %t"/> +<l:template name="article/appendix" text="%n. %t" lang="en"/> +<l:template name="bridgehead" text="%n. %t"/> +<l:template name="chapter" text="Capítulo %n. %t"/> +<l:template name="part" text="Parte %n. %t"/> +<l:template name="sect1" text="%n. %t"/> +<l:template name="sect2" text="%n. %t"/> +<l:template name="sect3" text="%n. %t"/> +<l:template name="sect4" text="%n. %t"/> +<l:template name="sect5" text="%n. %t"/> +<l:template name="section" text="%n. %t"/> +<l:template name="simplesect" text="%t"/> +</l:context> +<l:context name="subtitle"><l:template name="appendix" text="%s"/> +<l:template name="article" text="%s"/> +<l:template name="bibliodiv" text="%s"/> +<l:template name="biblioentry" text="%s"/> +<l:template name="bibliography" text="%s"/> +<l:template name="bibliomixed" text="%s"/> +<l:template name="bibliomset" text="%s"/> +<l:template name="biblioset" text="%s"/> +<l:template name="book" text="%s"/> +<l:template name="chapter" text="%s"/> +<l:template name="colophon" text="%s"/> +<l:template name="dedication" text="%s"/> +<l:template name="glossary" text="%s"/> +<l:template name="glossdiv" text="%s"/> +<l:template name="index" text="%s"/> +<l:template name="indexdiv" text="%s"/> +<l:template name="lot" text="%s"/> +<l:template name="part" text="%s"/> +<l:template name="partintro" text="%s"/> +<l:template name="preface" text="%s"/> +<l:template name="refentry" text="%s"/> +<l:template name="reference" text="%s"/> +<l:template name="refsection" text="%s"/> +<l:template name="refsect1" text="%s"/> +<l:template name="refsect2" text="%s"/> +<l:template name="refsect3" text="%s"/> +<l:template name="refsynopsisdiv" text="%s"/> +<l:template name="sect1" text="%s"/> +<l:template name="sect2" text="%s"/> +<l:template name="sect3" text="%s"/> +<l:template name="sect4" text="%s"/> +<l:template name="sect5" text="%s"/> +<l:template name="section" text="%s"/> +<l:template name="set" text="%s"/> +<l:template name="setindex" text="%s"/> +<l:template name="sidebar" text="%s"/> +<l:template name="simplesect" text="%s"/> +<l:template name="toc" text="%s"/> +</l:context> +<l:context name="xref"><l:template name="abstract" text="%t"/> +<l:template name="answer" text="R: %n"/> +<l:template name="appendix" text="%t"/> +<l:template name="article" text="%t"/> +<l:template name="authorblurb" text="%t"/> +<l:template name="bibliodiv" text="%t"/> +<l:template name="bibliography" text="%t"/> +<l:template name="bibliomset" text="%t"/> +<l:template name="biblioset" text="%t"/> +<l:template name="blockquote" text="%t"/> +<l:template name="book" text="%t"/> +<l:template name="calloutlist" text="%t"/> +<l:template name="caution" text="%t"/> +<l:template name="chapter" text="%t"/> +<l:template name="colophon" text="%t"/> +<l:template name="constraintdef" text="%t"/> +<l:template name="dedication" text="%t"/> +<l:template name="equation" text="%t"/> +<l:template name="example" text="%t"/> +<l:template name="figure" text="%t"/> +<l:template name="foil" text="%t" lang="en"/> +<l:template name="foilgroup" text="%t" lang="en"/> +<l:template name="formalpara" text="%t"/> +<l:template name="glossary" text="%t"/> +<l:template name="glossdiv" text="%t"/> +<l:template name="important" text="%t"/> +<l:template name="index" text="%t"/> +<l:template name="indexdiv" text="%t"/> +<l:template name="itemizedlist" text="%t"/> +<l:template name="legalnotice" text="%t"/> +<l:template name="listitem" text="%n"/> +<l:template name="lot" text="%t"/> +<l:template name="msg" text="%t"/> +<l:template name="msgexplan" text="%t"/> +<l:template name="msgmain" text="%t"/> +<l:template name="msgrel" text="%t"/> +<l:template name="msgset" text="%t"/> +<l:template name="msgsub" text="%t"/> +<l:template name="note" text="%t"/> +<l:template name="orderedlist" text="%t"/> +<l:template name="part" text="%t"/> +<l:template name="partintro" text="%t"/> +<l:template name="preface" text="%t"/> +<l:template name="procedure" text="%t"/> +<l:template name="productionset" text="%t"/> +<l:template name="qandadiv" text="%t"/> +<l:template name="qandaentry" text="P: %n"/> +<l:template name="qandaset" text="%t"/> +<l:template name="question" text="P: %n"/> +<l:template name="reference" text="%t"/> +<l:template name="refsynopsisdiv" text="%t"/> +<l:template name="segmentedlist" text="%t"/> +<l:template name="set" text="%t"/> +<l:template name="setindex" text="%t"/> +<l:template name="sidebar" text="%t"/> +<l:template name="table" text="%t"/> +<l:template name="task" text="%t" lang="en"/> +<l:template name="tip" text="%t"/> +<l:template name="toc" text="%t"/> +<l:template name="variablelist" text="%t"/> +<l:template name="varlistentry" text="%n"/> +<l:template name="warning" text="%t"/> +<l:template name="olink.document.citation" text=" in %o" lang="en"/> +<l:template name="olink.page.citation" text=" (page %p)" lang="en"/> +<l:template name="page.citation" text=" [%p]"/> +<l:template name="page" text="(page %p)" lang="en"/> +<l:template name="docname" text=" in %o" lang="en"/> +<l:template name="docnamelong" text=" in the document titled %o" lang="en"/> +<l:template name="pageabbrev" text="(p. %p)" lang="en"/> +<l:template name="Page" text="Page %p" lang="en"/> +<l:template name="bridgehead" text="“%t”"/> +<l:template name="refsection" text="“%t”"/> +<l:template name="refsect1" text="“%t”"/> +<l:template name="refsect2" text="“%t”"/> +<l:template name="refsect3" text="“%t”"/> +<l:template name="sect1" text="“%t”"/> +<l:template name="sect2" text="“%t”"/> +<l:template name="sect3" text="“%t”"/> +<l:template name="sect4" text="“%t”"/> +<l:template name="sect5" text="“%t”"/> +<l:template name="section" text="“%t”"/> +<l:template name="simplesect" text="“%t”"/> +</l:context> +<l:context name="xref-number"><l:template name="answer" text="R: %n"/> +<l:template name="appendix" text="Apéndice %n"/> +<l:template name="bridgehead" text="Sección %n"/> +<l:template name="chapter" text="Capítulo %n"/> +<l:template name="equation" text="Ecuación %n"/> +<l:template name="example" text="Ejemplo %n"/> +<l:template name="figure" text="Figura %n"/> +<l:template name="part" text="Parte %n"/> +<l:template name="procedure" text="Procedimiento %n"/> +<l:template name="productionset" text="Producción %n"/> +<l:template name="qandadiv" text="P y R %n"/> +<l:template name="qandaentry" text="P: %n"/> +<l:template name="question" text="P: %n"/> +<l:template name="sect1" text="Sección %n"/> +<l:template name="sect2" text="Sección %n"/> +<l:template name="sect3" text="Sección %n"/> +<l:template name="sect4" text="Sección %n"/> +<l:template name="sect5" text="Sección %n"/> +<l:template name="section" text="Sección %n"/> +<l:template name="table" text="Tabla %n"/> +</l:context> +<l:context name="xref-number-and-title"><l:template name="appendix" text="Apéndice %n, %t"/> +<l:template name="bridgehead" text="Sección %n, “%t”"/> +<l:template name="chapter" text="Capítulo %n, %t"/> +<l:template name="equation" text="Ecuación %n, “%t”"/> +<l:template name="example" text="Ejemplo %n, “%t”"/> +<l:template name="figure" text="Figura %n, “%t”"/> +<l:template name="part" text="Parte %n, “%t”"/> +<l:template name="procedure" text="Procedimiento %n, “%t”"/> +<l:template name="productionset" text="Producción %n, “%t”"/> +<l:template name="qandadiv" text="P y R %n, “%t”"/> +<l:template name="refsect1" text="sección llamada “%t”"/> +<l:template name="refsect2" text="sección llamada “%t”"/> +<l:template name="refsect3" text="sección llamada “%t”"/> +<l:template name="refsection" text="sección llamada “%t”"/> +<l:template name="sect1" text="Sección %n, “%t”"/> +<l:template name="sect2" text="Sección %n, “%t”"/> +<l:template name="sect3" text="Sección %n, “%t”"/> +<l:template name="sect4" text="Sección %n, “%t”"/> +<l:template name="sect5" text="Sección %n, “%t”"/> +<l:template name="section" text="Sección %n, “%t”"/> +<l:template name="simplesect" text="sección llamada “%t”"/> +<l:template name="table" text="Tabla %n, “%t”"/> +</l:context> +<l:context name="authorgroup"><l:template name="sep" text=", "/> +<l:template name="sep2" text=" y "/> +<l:template name="seplast" text=", y "/> +</l:context> +<l:context name="glossary"><l:template name="see" text="Ver %t"/> +<l:template name="seealso" text="Ver también %t"/> +</l:context> +<l:context name="msgset"><l:template name="MsgAud" text="Audiencia: "/> +<l:template name="MsgLevel" text="Nivel: "/> +<l:template name="MsgOrig" text="Origen: "/> +</l:context> +<l:context name="datetime"><l:template name="format" text="m/d/Y" lang="en"/> +</l:context> +<l:context name="termdef"><l:template name="prefix" text="[Definition: " lang="en"/> +<l:template name="suffix" text="]" lang="en"/> +</l:context> +<l:context name="datetime-full"><l:template name="January" text="January" lang="en"/> +<l:template name="February" text="February" lang="en"/> +<l:template name="March" text="March" lang="en"/> +<l:template name="April" text="April" lang="en"/> +<l:template name="May" text="May" lang="en"/> +<l:template name="June" text="June" lang="en"/> +<l:template name="July" text="July" lang="en"/> +<l:template name="August" text="August" lang="en"/> +<l:template name="September" text="September" lang="en"/> +<l:template name="October" text="October" lang="en"/> +<l:template name="November" text="November" lang="en"/> +<l:template name="December" text="December" lang="en"/> +<l:template name="Monday" text="Monday" lang="en"/> +<l:template name="Tuesday" text="Tuesday" lang="en"/> +<l:template name="Wednesday" text="Wednesday" lang="en"/> +<l:template name="Thursday" text="Thursday" lang="en"/> +<l:template name="Friday" text="Friday" lang="en"/> +<l:template name="Saturday" text="Saturday" lang="en"/> +<l:template name="Sunday" text="Sunday" lang="en"/> +</l:context> +<l:context name="datetime-abbrev"><l:template name="Jan" text="Jan" lang="en"/> +<l:template name="Feb" text="Feb" lang="en"/> +<l:template name="Mar" text="Mar" lang="en"/> +<l:template name="Apr" text="Apr" lang="en"/> +<l:template name="May" text="May" lang="en"/> +<l:template name="Jun" text="Jun" lang="en"/> +<l:template name="Jul" text="Jul" lang="en"/> +<l:template name="Aug" text="Aug" lang="en"/> +<l:template name="Sep" text="Sep" lang="en"/> +<l:template name="Oct" text="Oct" lang="en"/> +<l:template name="Nov" text="Nov" lang="en"/> +<l:template name="Dec" text="Dec" lang="en"/> +<l:template name="Mon" text="Mon" lang="en"/> +<l:template name="Tue" text="Tue" lang="en"/> +<l:template name="Wed" text="Wed" lang="en"/> +<l:template name="Thu" text="Thu" lang="en"/> +<l:template name="Fri" text="Fri" lang="en"/> +<l:template name="Sat" text="Sat" lang="en"/> +<l:template name="Sun" text="Sun" lang="en"/> +</l:context> +<l:context name="htmlhelp"><l:template name="langcode" text="0x040a Spanish (Traditional Sort)"/> +</l:context> +<l:context name="index"><l:template name="term-separator" text=", " lang="en"/> +<l:template name="number-separator" text=", " lang="en"/> +<l:template name="range-separator" text="-" lang="en"/> +</l:context> +<l:context name="iso690"><l:template name="lastfirst.sep" text=", " lang="en"/> +<l:template name="alt.person.two.sep" text=" – " lang="en"/> +<l:template name="alt.person.last.sep" text=" – " lang="en"/> +<l:template name="alt.person.more.sep" text=" – " lang="en"/> +<l:template name="primary.editor" text=" (ed.)" lang="en"/> +<l:template name="primary.many" text=", et al." lang="en"/> +<l:template name="primary.sep" text=". " lang="en"/> +<l:template name="submaintitle.sep" text=": " lang="en"/> +<l:template name="title.sep" text=". " lang="en"/> +<l:template name="othertitle.sep" text=", " lang="en"/> +<l:template name="medium1" text=" [" lang="en"/> +<l:template name="medium2" text="]" lang="en"/> +<l:template name="secondary.person.sep" text="; " lang="en"/> +<l:template name="secondary.sep" text=". " lang="en"/> +<l:template name="respons.sep" text=". " lang="en"/> +<l:template name="edition.sep" text=". " lang="en"/> +<l:template name="edition.serial.sep" text=", " lang="en"/> +<l:template name="issuing.range" text="-" lang="en"/> +<l:template name="issuing.div" text=", " lang="en"/> +<l:template name="issuing.sep" text=". " lang="en"/> +<l:template name="partnr.sep" text=". " lang="en"/> +<l:template name="placepubl.sep" text=": " lang="en"/> +<l:template name="publyear.sep" text=", " lang="en"/> +<l:template name="pubinfo.sep" text=". " lang="en"/> +<l:template name="spec.pubinfo.sep" text=", " lang="en"/> +<l:template name="upd.sep" text=", " lang="en"/> +<l:template name="datecit1" text=" [cited " lang="en"/> +<l:template name="datecit2" text="]" lang="en"/> +<l:template name="extent.sep" text=". " lang="en"/> +<l:template name="locs.sep" text=", " lang="en"/> +<l:template name="location.sep" text=". " lang="en"/> +<l:template name="serie.sep" text=". " lang="en"/> +<l:template name="notice.sep" text=". " lang="en"/> +<l:template name="access" text="Available " lang="en"/> +<l:template name="acctoo" text="Also available " lang="en"/> +<l:template name="onwww" text="from World Wide Web" lang="en"/> +<l:template name="oninet" text="from Internet" lang="en"/> +<l:template name="access.end" text=": " lang="en"/> +<l:template name="link1" text="<" lang="en"/> +<l:template name="link2" text=">" lang="en"/> +<l:template name="access.sep" text=". " lang="en"/> +<l:template name="isbn" text="ISBN " lang="en"/> +<l:template name="issn" text="ISSN " lang="en"/> +<l:template name="stdnum.sep" text=". " lang="en"/> +<l:template name="patcountry.sep" text=". " lang="en"/> +<l:template name="pattype.sep" text=", " lang="en"/> +<l:template name="patnum.sep" text=". " lang="en"/> +<l:template name="patdate.sep" text=". " lang="en"/> +</l:context><l:letters><l:l i="-1"/> +<l:l i="0">Símbolos</l:l> +<l:l i="1">A</l:l> +<l:l i="1">a</l:l> +<l:l i="1">á</l:l> +<l:l i="1">Á</l:l> +<l:l i="2">B</l:l> +<l:l i="2">b</l:l> +<l:l i="3">C</l:l> +<l:l i="3">c</l:l> +<l:l i="4">CH</l:l> +<l:l i="4">ch</l:l> +<l:l i="5">D</l:l> +<l:l i="5">d</l:l> +<l:l i="6">E</l:l> +<l:l i="6">e</l:l> +<l:l i="6">É</l:l> +<l:l i="6">é</l:l> +<l:l i="7">F</l:l> +<l:l i="7">f</l:l> +<l:l i="8">G</l:l> +<l:l i="8">g</l:l> +<l:l i="9">H</l:l> +<l:l i="9">h</l:l> +<l:l i="10">I</l:l> +<l:l i="10">i</l:l> +<l:l i="10">Í</l:l> +<l:l i="10">í</l:l> +<l:l i="11">J</l:l> +<l:l i="11">j</l:l> +<l:l i="12">K</l:l> +<l:l i="12">k</l:l> +<l:l i="13">L</l:l> +<l:l i="13">l</l:l> +<l:l i="14">LL</l:l> +<l:l i="14">ll</l:l> +<l:l i="15">M</l:l> +<l:l i="15">m</l:l> +<l:l i="16">N</l:l> +<l:l i="16">n</l:l> +<l:l i="17">Ñ</l:l> +<l:l i="17">ñ</l:l> +<l:l i="18">O</l:l> +<l:l i="18">o</l:l> +<l:l i="18">Ó</l:l> +<l:l i="18">ó</l:l> +<l:l i="19">P</l:l> +<l:l i="19">p</l:l> +<l:l i="20">Q</l:l> +<l:l i="20">q</l:l> +<l:l i="21">R</l:l> +<l:l i="21">r</l:l> +<l:l i="22">S</l:l> +<l:l i="22">s</l:l> +<l:l i="23">T</l:l> +<l:l i="23">t</l:l> +<l:l i="24">U</l:l> +<l:l i="24">u</l:l> +<l:l i="24">Ú</l:l> +<l:l i="24">ú</l:l> +<l:l i="25">V</l:l> +<l:l i="25">v</l:l> +<l:l i="26">W</l:l> +<l:l i="26">w</l:l> +<l:l i="27">X</l:l> +<l:l i="27">x</l:l> +<l:l i="28">Y</l:l> +<l:l i="28">y</l:l> +<l:l i="29">Z</l:l> +<l:l i="29">z</l:l> +</l:letters> +</l:l10n> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/fr.xml b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/fr.xml new file mode 100644 index 000000000..5d590f725 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/fr.xml @@ -0,0 +1,677 @@ +<?xml version="1.0" encoding="utf-8"?> +<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="fr" english-language-name="French"> + +<!-- * This file is generated automatically. --> +<!-- * To submit changes to this file upstream (to the DocBook Project) --> +<!-- * do not submit an edited version of this file. Instead, submit an --> +<!-- * edited version of the source file at the following location: --> +<!-- * --> +<!-- * https://svn.sourceforge.net/svnroot/docbook/trunk/gentext/locale/fr.xml --> +<!-- * --> +<!-- * E-mail the edited fr.xml source file to: --> +<!-- * --> +<!-- * docbook-developers@lists.sourceforge.net --> + +<!-- ******************************************************************** --> + +<!-- This file is part of the XSL DocBook Stylesheet distribution. --> +<!-- See ../README or http://docbook.sf.net/release/xsl/current/ for --> +<!-- copyright and other information. --> + +<!-- ******************************************************************** --> + +<l:gentext key="Abstract" text="Résumé"/> +<l:gentext key="abstract" text="Résumé"/> +<l:gentext key="Answer" text="R :"/> +<l:gentext key="answer" text="R :"/> +<l:gentext key="Appendix" text="Annexe"/> +<l:gentext key="appendix" text="annexe"/> +<l:gentext key="Article" text="Article"/> +<l:gentext key="article" text="Article"/> +<l:gentext key="Author" text="Auteur"/> +<l:gentext key="Bibliography" text="Bibliographie"/> +<l:gentext key="bibliography" text="Bibliographie"/> +<l:gentext key="Book" text="Livre"/> +<l:gentext key="book" text="Livre"/> +<l:gentext key="CAUTION" text="ATTENTION"/> +<l:gentext key="Caution" text="Attention"/> +<l:gentext key="caution" text="Attention"/> +<l:gentext key="Chapter" text="Chapitre"/> +<l:gentext key="chapter" text="chapitre"/> +<l:gentext key="Colophon" text="Achevé d'imprimer"/> +<l:gentext key="colophon" text="Achevé d'imprimer"/> +<l:gentext key="Copyright" text="Copyright"/> +<l:gentext key="copyright" text="Copyright"/> +<l:gentext key="Dedication" text="Dédicace"/> +<l:gentext key="dedication" text="Dédicace"/> +<l:gentext key="Edition" text="Édition"/> +<l:gentext key="edition" text="Édition"/> +<l:gentext key="Editor" text="Editor" lang="en"/> +<l:gentext key="Equation" text="Équation"/> +<l:gentext key="equation" text="Équation"/> +<l:gentext key="Example" text="Exemple"/> +<l:gentext key="example" text="Exemple"/> +<l:gentext key="Figure" text="Figure"/> +<l:gentext key="figure" text="Figure"/> +<l:gentext key="Glossary" text="Glossaire"/> +<l:gentext key="glossary" text="Glossaire"/> +<l:gentext key="GlossSee" text="Voir"/> +<l:gentext key="glosssee" text="Voir"/> +<l:gentext key="GlossSeeAlso" text="Voir aussi"/> +<l:gentext key="glossseealso" text="Voir aussi"/> +<l:gentext key="IMPORTANT" text="IMPORTANT"/> +<l:gentext key="important" text="Important"/> +<l:gentext key="Important" text="Important"/> +<l:gentext key="Index" text="Index"/> +<l:gentext key="index" text="Index"/> +<l:gentext key="ISBN" text="ISBN"/> +<l:gentext key="isbn" text="ISBN"/> +<l:gentext key="LegalNotice" text="Note légale"/> +<l:gentext key="legalnotice" text="Note légale"/> +<l:gentext key="MsgAud" text="Public visé"/> +<l:gentext key="msgaud" text="Public visé"/> +<l:gentext key="MsgLevel" text="Niveau"/> +<l:gentext key="msglevel" text="Niveau"/> +<l:gentext key="MsgOrig" text="Origine"/> +<l:gentext key="msgorig" text="Origine"/> +<l:gentext key="NOTE" text="NOTE"/> +<l:gentext key="Note" text="Note"/> +<l:gentext key="note" text="Note"/> +<l:gentext key="Part" text="Partie"/> +<l:gentext key="part" text="Partie"/> +<l:gentext key="Preface" text="Préface"/> +<l:gentext key="preface" text="Préface"/> +<l:gentext key="Procedure" text="Procédure"/> +<l:gentext key="procedure" text="Procédure"/> +<l:gentext key="ProductionSet" text="Production"/> +<l:gentext key="PubDate" text="Date de publication"/> +<l:gentext key="pubdate" text="Date de publication"/> +<l:gentext key="Published" text="Publié le"/> +<l:gentext key="published" text="Publié le"/> +<l:gentext key="Publisher" text="Publisher" lang="en"/> +<l:gentext key="Qandadiv" text="Q & R"/> +<l:gentext key="qandadiv" text="Q & R"/> +<l:gentext key="QandASet" text="Frequently Asked Questions" lang="en"/> +<l:gentext key="Question" text="Q :"/> +<l:gentext key="question" text="Q :"/> +<l:gentext key="RefEntry" text=""/> +<l:gentext key="refentry" text=""/> +<l:gentext key="Reference" text="Référence"/> +<l:gentext key="reference" text="Référence"/> +<l:gentext key="References" text="References" lang="en"/> +<l:gentext key="RefName" text="Nom"/> +<l:gentext key="refname" text="Nom"/> +<l:gentext key="RefSection" text=""/> +<l:gentext key="refsection" text=""/> +<l:gentext key="RefSynopsisDiv" text="Synopsis"/> +<l:gentext key="refsynopsisdiv" text="Synopsis"/> +<l:gentext key="RevHistory" text="Historique des versions"/> +<l:gentext key="revhistory" text="Historique des versions"/> +<l:gentext key="revision" text="Version"/> +<l:gentext key="Revision" text="Version"/> +<l:gentext key="sect1" text="Section"/> +<l:gentext key="sect2" text="Section"/> +<l:gentext key="sect3" text="Section"/> +<l:gentext key="sect4" text="Section"/> +<l:gentext key="sect5" text="Section"/> +<l:gentext key="section" text="section"/> +<l:gentext key="Section" text="Section"/> +<l:gentext key="see" text="voir"/> +<l:gentext key="See" text="Voir"/> +<l:gentext key="seealso" text="voir aussi"/> +<l:gentext key="Seealso" text="Voir aussi"/> +<l:gentext key="SeeAlso" text="Voir Aussi"/> +<l:gentext key="set" text="Ensemble"/> +<l:gentext key="Set" text="Ensemble"/> +<l:gentext key="setindex" text="Index"/> +<l:gentext key="SetIndex" text="Index"/> +<l:gentext key="Sidebar" text="Filet vertical"/> +<l:gentext key="sidebar" text="Filet vertical"/> +<l:gentext key="step" text="étape"/> +<l:gentext key="Step" text="Étape"/> +<l:gentext key="table" text="Tableau"/> +<l:gentext key="Table" text="Tableau"/> +<l:gentext key="task" text="Task" lang="en"/> +<l:gentext key="Task" text="Task" lang="en"/> +<l:gentext key="tip" text="ASTUCE"/> +<l:gentext key="TIP" text="ASTUCE"/> +<l:gentext key="Tip" text="Astuce"/> +<l:gentext key="Warning" text="Avertissement"/> +<l:gentext key="warning" text="AVERTISSEMENT"/> +<l:gentext key="WARNING" text="AVERTISSEMENT"/> +<l:gentext key="and" text="et"/> +<l:gentext key="by" text="par"/> +<l:gentext key="Edited" text="Publié"/> +<l:gentext key="edited" text="Publié"/> +<l:gentext key="Editedby" text="Publié par"/> +<l:gentext key="editedby" text="Publié par"/> +<l:gentext key="in" text="dans"/> +<l:gentext key="lastlistcomma" text=","/> +<l:gentext key="listcomma" text=","/> +<l:gentext key="nonexistantelement" text="Cet élément n'existe pas"/> +<l:gentext key="notes" text="Notes"/> +<l:gentext key="Notes" text="Notes"/> +<l:gentext key="Pgs" text="Pages"/> +<l:gentext key="pgs" text="Pages"/> +<l:gentext key="Revisedby" text="Revu et corrigé par : "/> +<l:gentext key="revisedby" text="Revu et corrigé par : "/> +<l:gentext key="TableNotes" text="Remarques"/> +<l:gentext key="tablenotes" text="Remarques"/> +<l:gentext key="TableofContents" text="Table des matières"/> +<l:gentext key="tableofcontents" text="Table des matières"/> +<l:gentext key="unexpectedelementname" text="Nom d'élément inattendu"/> +<l:gentext key="unsupported" text="Non reconnu par le système"/> +<l:gentext key="xrefto" text="Référence vers"/> +<l:gentext key="Authors" text="Authors" lang="en"/> +<l:gentext key="copyeditor" text="Copy Editor" lang="en"/> +<l:gentext key="graphicdesigner" text="Graphic Designer" lang="en"/> +<l:gentext key="productioneditor" text="Production Editor" lang="en"/> +<l:gentext key="technicaleditor" text="Technical Editor" lang="en"/> +<l:gentext key="translator" text="Translator" lang="en"/> +<l:gentext key="listofequations" text="Liste des équations"/> +<l:gentext key="ListofEquations" text="Liste des équations"/> +<l:gentext key="ListofExamples" text="Liste des exemples"/> +<l:gentext key="listofexamples" text="Liste des exemples"/> +<l:gentext key="ListofFigures" text="Liste des illustrations"/> +<l:gentext key="listoffigures" text="Liste des illustrations"/> +<l:gentext key="ListofProcedures" text="Liste des procédures"/> +<l:gentext key="listofprocedures" text="Liste des procédures"/> +<l:gentext key="listoftables" text="Liste des tableaux"/> +<l:gentext key="ListofTables" text="Liste des tableaux"/> +<l:gentext key="ListofUnknown" text="Liste inconnue"/> +<l:gentext key="listofunknown" text="Liste inconnue"/> +<l:gentext key="nav-home" text="Sommaire"/> +<l:gentext key="nav-next" text="Suivant"/> +<l:gentext key="nav-next-sibling" text="Avance rapide"/> +<l:gentext key="nav-prev" text="Précédent"/> +<l:gentext key="nav-prev-sibling" text="Arrière rapide"/> +<l:gentext key="nav-up" text="Niveau supérieur"/> +<l:gentext key="nav-toc" text="TdM"/> +<l:gentext key="Draft" text="Brouillon"/> +<l:gentext key="above" text="au-dessus"/> +<l:gentext key="below" text="au-dessous"/> +<l:gentext key="sectioncalled" text="la section intitulée"/> +<l:gentext key="index symbols" text="Symboles"/> +<l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyzâêîôûëïüàèùéçæœ"/> +<l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZÂÊÎÔÛËÏÜÀÈÙÉÇÆŒ"/> +<l:gentext key="normalize.sort.input" text="AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ" lang="en"/> +<l:gentext key="normalize.sort.output" text="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ" lang="en"/> +<l:dingbat key="startquote" text="« "/> +<l:dingbat key="endquote" text=" »"/> +<l:dingbat key="nestedstartquote" text="“"/> +<l:dingbat key="nestedendquote" text="”"/> +<l:dingbat key="singlestartquote" text="‹"/> +<l:dingbat key="singleendquote" text="›"/> +<l:dingbat key="bullet" text="•"/> +<l:gentext key="hyphenation-character" text="-"/> +<l:gentext key="hyphenation-push-character-count" text="2"/> +<l:gentext key="hyphenation-remain-character-count" text="2"/> +<l:context name="styles"><l:template name="person-name" text="first-last"/> +</l:context> +<l:context name="title"><l:template name="abstract" text="%t"/> +<l:template name="answer" text="%t"/> +<l:template name="appendix" text="Annexe %n. %t"/> +<l:template name="article" text="%t"/> +<l:template name="authorblurb" text="%t"/> +<l:template name="bibliodiv" text="%t"/> +<l:template name="biblioentry" text="%t"/> +<l:template name="bibliography" text="%t"/> +<l:template name="bibliolist" text="%t" lang="en"/> +<l:template name="bibliomixed" text="%t"/> +<l:template name="bibliomset" text="%t"/> +<l:template name="biblioset" text="%t"/> +<l:template name="blockquote" text="%t"/> +<l:template name="book" text="%t"/> +<l:template name="calloutlist" text="%t"/> +<l:template name="caution" text="%t"/> +<l:template name="chapter" text="Chapitre %n. %t"/> +<l:template name="colophon" text="%t"/> +<l:template name="dedication" text="%t"/> +<l:template name="equation" text="Équation %n. %t"/> +<l:template name="example" text="Exemple %n. %t"/> +<l:template name="figure" text="Figure %n. %t"/> +<l:template name="foil" text="%t" lang="en"/> +<l:template name="foilgroup" text="%t" lang="en"/> +<l:template name="formalpara" text="%t"/> +<l:template name="glossary" text="%t"/> +<l:template name="glossdiv" text="%t"/> +<l:template name="glosslist" text="%t" lang="en"/> +<l:template name="glossentry" text="%t"/> +<l:template name="important" text="%t"/> +<l:template name="index" text="%t"/> +<l:template name="indexdiv" text="%t"/> +<l:template name="itemizedlist" text="%t"/> +<l:template name="legalnotice" text="%t"/> +<l:template name="listitem" text=""/> +<l:template name="lot" text="%t"/> +<l:template name="msg" text="%t"/> +<l:template name="msgexplan" text="%t"/> +<l:template name="msgmain" text="%t"/> +<l:template name="msgrel" text="%t"/> +<l:template name="msgset" text="%t"/> +<l:template name="msgsub" text="%t"/> +<l:template name="note" text="%t"/> +<l:template name="orderedlist" text="%t"/> +<l:template name="part" text="%t"/> +<l:template name="partintro" text="%t"/> +<l:template name="preface" text="%t"/> +<l:template name="procedure" text="%t"/> +<l:template name="procedure.formal" text="Procédure %n. %t"/> +<l:template name="productionset" text="%t"/> +<l:template name="productionset.formal" text="Production %n"/> +<l:template name="qandadiv" text="%t"/> +<l:template name="qandaentry" text="%t"/> +<l:template name="qandaset" text="%t"/> +<l:template name="question" text="%t"/> +<l:template name="refentry" text="%t"/> +<l:template name="reference" text="%t"/> +<l:template name="refsection" text="%t"/> +<l:template name="refsect1" text="%t"/> +<l:template name="refsect2" text="%t"/> +<l:template name="refsect3" text="%t"/> +<l:template name="refsynopsisdiv" text="%t"/> +<l:template name="refsynopsisdivinfo" text="%t"/> +<l:template name="segmentedlist" text="%t"/> +<l:template name="set" text="%t"/> +<l:template name="setindex" text="%t"/> +<l:template name="sidebar" text="%t"/> +<l:template name="step" text="%t"/> +<l:template name="table" text="Tableau %n. %t"/> +<l:template name="task" text="%t"/> +<l:template name="tasksummary" text="%t" lang="en"/> +<l:template name="taskprerequisites" text="%t" lang="en"/> +<l:template name="taskrelated" text="%t" lang="en"/> +<l:template name="tip" text="%t"/> +<l:template name="toc" text="%t"/> +<l:template name="variablelist" text="%t"/> +<l:template name="varlistentry" text=""/> +<l:template name="warning" text="%t"/> +</l:context> +<l:context name="title-unnumbered"><l:template name="appendix" text="%t"/> +<l:template name="article/appendix" text="%t"/> +<l:template name="bridgehead" text="%t"/> +<l:template name="chapter" text="%t"/> +<l:template name="sect1" text="%t"/> +<l:template name="sect2" text="%t"/> +<l:template name="sect3" text="%t"/> +<l:template name="sect4" text="%t"/> +<l:template name="sect5" text="%t"/> +<l:template name="section" text="%t"/> +<l:template name="simplesect" text="%t"/> +<l:template name="part" text="%t" lang="en"/> +</l:context> +<l:context name="title-numbered"><l:template name="appendix" text="Annexe %n. %t"/> +<l:template name="article/appendix" text="%n. %t"/> +<l:template name="bridgehead" text="%n. %t"/> +<l:template name="chapter" text="Chapitre %n. %t"/> +<l:template name="part" text="Partie %n. %t"/> +<l:template name="sect1" text="%n. %t"/> +<l:template name="sect2" text="%n. %t"/> +<l:template name="sect3" text="%n. %t"/> +<l:template name="sect4" text="%n. %t"/> +<l:template name="sect5" text="%n. %t"/> +<l:template name="section" text="%n. %t"/> +<l:template name="simplesect" text="%t"/> +</l:context> +<l:context name="subtitle"><l:template name="appendix" text="%s"/> +<l:template name="article" text="%s"/> +<l:template name="bibliodiv" text="%s"/> +<l:template name="biblioentry" text="%s"/> +<l:template name="bibliography" text="%s"/> +<l:template name="bibliomixed" text="%s"/> +<l:template name="bibliomset" text="%s"/> +<l:template name="biblioset" text="%s"/> +<l:template name="book" text="%s"/> +<l:template name="chapter" text="%s"/> +<l:template name="colophon" text="%s"/> +<l:template name="dedication" text="%s"/> +<l:template name="glossary" text="%s"/> +<l:template name="glossdiv" text="%s"/> +<l:template name="index" text="%s"/> +<l:template name="indexdiv" text="%s"/> +<l:template name="lot" text="%s"/> +<l:template name="part" text="%s"/> +<l:template name="partintro" text="%s"/> +<l:template name="preface" text="%s"/> +<l:template name="refentry" text="%s"/> +<l:template name="reference" text="%s"/> +<l:template name="refsection" text="%s"/> +<l:template name="refsect1" text="%s"/> +<l:template name="refsect2" text="%s"/> +<l:template name="refsect3" text="%s"/> +<l:template name="refsynopsisdiv" text="%s"/> +<l:template name="sect1" text="%s"/> +<l:template name="sect2" text="%s"/> +<l:template name="sect3" text="%s"/> +<l:template name="sect4" text="%s"/> +<l:template name="sect5" text="%s"/> +<l:template name="section" text="%s"/> +<l:template name="set" text="%s"/> +<l:template name="setindex" text="%s"/> +<l:template name="sidebar" text="%s"/> +<l:template name="simplesect" text="%s"/> +<l:template name="toc" text="%s"/> +</l:context> +<l:context name="xref"><l:template name="abstract" text="%t"/> +<l:template name="answer" text="R : %n"/> +<l:template name="appendix" text="%t"/> +<l:template name="article" text="%t"/> +<l:template name="authorblurb" text="%t"/> +<l:template name="bibliodiv" text="%t"/> +<l:template name="bibliography" text="%t"/> +<l:template name="bibliomset" text="%t"/> +<l:template name="biblioset" text="%t"/> +<l:template name="blockquote" text="%t"/> +<l:template name="book" text="%t"/> +<l:template name="calloutlist" text="%t"/> +<l:template name="caution" text="%t"/> +<l:template name="chapter" text="%t"/> +<l:template name="colophon" text="%t"/> +<l:template name="constraintdef" text="%t"/> +<l:template name="dedication" text="%t"/> +<l:template name="equation" text="%t"/> +<l:template name="example" text="%t"/> +<l:template name="figure" text="%t"/> +<l:template name="foil" text="%t" lang="en"/> +<l:template name="foilgroup" text="%t" lang="en"/> +<l:template name="formalpara" text="%t"/> +<l:template name="glossary" text="%t"/> +<l:template name="glossdiv" text="%t"/> +<l:template name="important" text="%t"/> +<l:template name="index" text="%t"/> +<l:template name="indexdiv" text="%t"/> +<l:template name="itemizedlist" text="%t"/> +<l:template name="legalnotice" text="%t"/> +<l:template name="listitem" text="%n"/> +<l:template name="lot" text="%t"/> +<l:template name="msg" text="%t"/> +<l:template name="msgexplan" text="%t"/> +<l:template name="msgmain" text="%t"/> +<l:template name="msgrel" text="%t"/> +<l:template name="msgset" text="%t"/> +<l:template name="msgsub" text="%t"/> +<l:template name="note" text="%t"/> +<l:template name="orderedlist" text="%t"/> +<l:template name="part" text="%t"/> +<l:template name="partintro" text="%t"/> +<l:template name="preface" text="%t"/> +<l:template name="procedure" text="%t"/> +<l:template name="productionset" text="%t"/> +<l:template name="qandadiv" text="%t"/> +<l:template name="qandaentry" text="Q : %n"/> +<l:template name="qandaset" text="%t"/> +<l:template name="question" text="Q : %n"/> +<l:template name="reference" text="%t"/> +<l:template name="refsynopsisdiv" text="%t"/> +<l:template name="segmentedlist" text="%t"/> +<l:template name="set" text="%t"/> +<l:template name="setindex" text="%t"/> +<l:template name="sidebar" text="%t"/> +<l:template name="table" text="%t"/> +<l:template name="task" text="%t" lang="en"/> +<l:template name="tip" text="%t"/> +<l:template name="toc" text="%t"/> +<l:template name="variablelist" text="%t"/> +<l:template name="varlistentry" text="%n"/> +<l:template name="warning" text="%t"/> +<l:template name="olink.document.citation" text=" in %o" lang="en"/> +<l:template name="olink.page.citation" text=" (page %p)" lang="en"/> +<l:template name="page.citation" text=" [%p]"/> +<l:template name="page" text="(page %p)"/> +<l:template name="docname" text=" in %o" lang="en"/> +<l:template name="docnamelong" text=" in the document titled %o" lang="en"/> +<l:template name="pageabbrev" text="(p. %p)"/> +<l:template name="Page" text="Page %p"/> +<l:template name="bridgehead" text="la section intitulée « %t »"/> +<l:template name="refsection" text="la section intitulée « %t »"/> +<l:template name="refsect1" text="la section intitulée « %t »"/> +<l:template name="refsect2" text="la section intitulée « %t »"/> +<l:template name="refsect3" text="la section intitulée « %t »"/> +<l:template name="sect1" text="la section intitulée « %t »"/> +<l:template name="sect2" text="la section intitulée « %t »"/> +<l:template name="sect3" text="la section intitulée « %t »"/> +<l:template name="sect4" text="la section intitulée « %t »"/> +<l:template name="sect5" text="la section intitulée « %t »"/> +<l:template name="section" text="la section intitulée « %t »"/> +<l:template name="simplesect" text="la section intitulée « %t »"/> +</l:context> +<l:context name="xref-number"><l:template name="answer" text="R : %n"/> +<l:template name="appendix" text="Annexe %n"/> +<l:template name="bridgehead" text="Section %n"/> +<l:template name="chapter" text="Chapitre %n"/> +<l:template name="equation" text="Équation %n"/> +<l:template name="example" text="Exemple %n"/> +<l:template name="figure" text="Figure %n"/> +<l:template name="part" text="Partie %n"/> +<l:template name="procedure" text="Procédure %n"/> +<l:template name="productionset" text="Production %n"/> +<l:template name="qandadiv" text="Q & R %n"/> +<l:template name="qandaentry" text="Q : %n"/> +<l:template name="question" text="Q : %n"/> +<l:template name="sect1" text="Section %n"/> +<l:template name="sect2" text="Section %n"/> +<l:template name="sect3" text="Section %n"/> +<l:template name="sect4" text="Section %n"/> +<l:template name="sect5" text="Section %n"/> +<l:template name="section" text="Section %n"/> +<l:template name="table" text="Tableau %n"/> +</l:context> +<l:context name="xref-number-and-title"><l:template name="appendix" text="Annexe %n, %t"/> +<l:template name="bridgehead" text="Section %n, « %t »"/> +<l:template name="chapter" text="Chapitre %n, %t"/> +<l:template name="equation" text="Équation %n, « %t »"/> +<l:template name="example" text="Exemple %n, « %t »"/> +<l:template name="figure" text="Figure %n, « %t »"/> +<l:template name="part" text="Partie %n, « %t »"/> +<l:template name="procedure" text="Procédure %n, « %t »"/> +<l:template name="productionset" text="Production %n, « %t »"/> +<l:template name="qandadiv" text="Q & R %n, « %t »"/> +<l:template name="refsect1" text="la section intitulée « %t »"/> +<l:template name="refsect2" text="la section intitulée « %t »"/> +<l:template name="refsect3" text="la section intitulée « %t »"/> +<l:template name="refsection" text="la section intitulée « %t »"/> +<l:template name="sect1" text="Section %n, « %t »"/> +<l:template name="sect2" text="Section %n, « %t »"/> +<l:template name="sect3" text="Section %n, « %t »"/> +<l:template name="sect4" text="Section %n, « %t »"/> +<l:template name="sect5" text="Section %n, « %t »"/> +<l:template name="section" text="Section %n, « %t »"/> +<l:template name="simplesect" text="la section intitulée « %t »"/> +<l:template name="table" text="Tableau %n, « %t »"/> +</l:context> +<l:context name="authorgroup"><l:template name="sep" text=", "/> +<l:template name="sep2" text=" et "/> +<l:template name="seplast" text=", et "/> +</l:context> +<l:context name="glossary"><l:template name="see" text="Voir %t"/> +<l:template name="seealso" text="Voir aussi %t"/> +</l:context> +<l:context name="msgset"><l:template name="MsgAud" text="Public visé: "/> +<l:template name="MsgLevel" text="Niveau: "/> +<l:template name="MsgOrig" text="Origine: "/> +</l:context> +<l:context name="datetime"><l:template name="format" text="d/m/Y"/> +</l:context> +<l:context name="termdef"><l:template name="prefix" text="[Definition: " lang="en"/> +<l:template name="suffix" text="]" lang="en"/> +</l:context> +<l:context name="datetime-full"><l:template name="January" text="janvier"/> +<l:template name="February" text="février"/> +<l:template name="March" text="mars"/> +<l:template name="April" text="avril"/> +<l:template name="May" text="mai"/> +<l:template name="June" text="juin"/> +<l:template name="July" text="juillet"/> +<l:template name="August" text="août"/> +<l:template name="September" text="septembre"/> +<l:template name="October" text="octobre"/> +<l:template name="November" text="novembre"/> +<l:template name="December" text="décembre"/> +<l:template name="Monday" text="lundi"/> +<l:template name="Tuesday" text="mardi"/> +<l:template name="Wednesday" text="mercredi"/> +<l:template name="Thursday" text="jeudi"/> +<l:template name="Friday" text="vendredi"/> +<l:template name="Saturday" text="samedi"/> +<l:template name="Sunday" text="dimanche"/> +</l:context> +<l:context name="datetime-abbrev"><l:template name="Jan" text="jan"/> +<l:template name="Feb" text="fév"/> +<l:template name="Mar" text="mar"/> +<l:template name="Apr" text="avr"/> +<l:template name="May" text="mai"/> +<l:template name="Jun" text="jun"/> +<l:template name="Jul" text="jui"/> +<l:template name="Aug" text="aoû"/> +<l:template name="Sep" text="sep"/> +<l:template name="Oct" text="oct"/> +<l:template name="Nov" text="nov"/> +<l:template name="Dec" text="déc"/> +<l:template name="Mon" text="lun"/> +<l:template name="Tue" text="mar"/> +<l:template name="Wed" text="mer"/> +<l:template name="Thu" text="jeu"/> +<l:template name="Fri" text="ven"/> +<l:template name="Sat" text="sam"/> +<l:template name="Sun" text="dim"/> +</l:context> +<l:context name="htmlhelp"><l:template name="langcode" text="0x040c French (FRANCE)"/> +</l:context> +<l:context name="index"><l:template name="term-separator" text=", " lang="en"/> +<l:template name="number-separator" text=", " lang="en"/> +<l:template name="range-separator" text="-" lang="en"/> +</l:context> +<l:context name="iso690"><l:template name="lastfirst.sep" text=", " lang="en"/> +<l:template name="alt.person.two.sep" text=" – " lang="en"/> +<l:template name="alt.person.last.sep" text=" – " lang="en"/> +<l:template name="alt.person.more.sep" text=" – " lang="en"/> +<l:template name="primary.editor" text=" (ed.)" lang="en"/> +<l:template name="primary.many" text=", et al." lang="en"/> +<l:template name="primary.sep" text=". " lang="en"/> +<l:template name="submaintitle.sep" text=": " lang="en"/> +<l:template name="title.sep" text=". " lang="en"/> +<l:template name="othertitle.sep" text=", " lang="en"/> +<l:template name="medium1" text=" [" lang="en"/> +<l:template name="medium2" text="]" lang="en"/> +<l:template name="secondary.person.sep" text="; " lang="en"/> +<l:template name="secondary.sep" text=". " lang="en"/> +<l:template name="respons.sep" text=". " lang="en"/> +<l:template name="edition.sep" text=". " lang="en"/> +<l:template name="edition.serial.sep" text=", " lang="en"/> +<l:template name="issuing.range" text="-" lang="en"/> +<l:template name="issuing.div" text=", " lang="en"/> +<l:template name="issuing.sep" text=". " lang="en"/> +<l:template name="partnr.sep" text=". " lang="en"/> +<l:template name="placepubl.sep" text=": " lang="en"/> +<l:template name="publyear.sep" text=", " lang="en"/> +<l:template name="pubinfo.sep" text=". " lang="en"/> +<l:template name="spec.pubinfo.sep" text=", " lang="en"/> +<l:template name="upd.sep" text=", " lang="en"/> +<l:template name="datecit1" text=" [cited " lang="en"/> +<l:template name="datecit2" text="]" lang="en"/> +<l:template name="extent.sep" text=". " lang="en"/> +<l:template name="locs.sep" text=", " lang="en"/> +<l:template name="location.sep" text=". " lang="en"/> +<l:template name="serie.sep" text=". " lang="en"/> +<l:template name="notice.sep" text=". " lang="en"/> +<l:template name="access" text="Available " lang="en"/> +<l:template name="acctoo" text="Also available " lang="en"/> +<l:template name="onwww" text="from World Wide Web" lang="en"/> +<l:template name="oninet" text="from Internet" lang="en"/> +<l:template name="access.end" text=": " lang="en"/> +<l:template name="link1" text="<" lang="en"/> +<l:template name="link2" text=">" lang="en"/> +<l:template name="access.sep" text=". " lang="en"/> +<l:template name="isbn" text="ISBN " lang="en"/> +<l:template name="issn" text="ISSN " lang="en"/> +<l:template name="stdnum.sep" text=". " lang="en"/> +<l:template name="patcountry.sep" text=". " lang="en"/> +<l:template name="pattype.sep" text=", " lang="en"/> +<l:template name="patnum.sep" text=". " lang="en"/> +<l:template name="patdate.sep" text=". " lang="en"/> +</l:context><l:letters><l:l i="-1"/> +<l:l i="0">Symboles</l:l> +<l:l i="1">A</l:l> +<l:l i="1">a</l:l> +<l:l i="1">à</l:l> +<l:l i="1">À</l:l> +<l:l i="1">â</l:l> +<l:l i="1">Â</l:l> +<l:l i="1">Æ</l:l> +<l:l i="1">æ</l:l> +<l:l i="2">B</l:l> +<l:l i="2">b</l:l> +<l:l i="3">C</l:l> +<l:l i="3">c</l:l> +<l:l i="3">ç</l:l> +<l:l i="4">D</l:l> +<l:l i="4">d</l:l> +<l:l i="5">E</l:l> +<l:l i="5">e</l:l> +<l:l i="5">ê</l:l> +<l:l i="5">Ê</l:l> +<l:l i="5">é</l:l> +<l:l i="5">É</l:l> +<l:l i="5">è</l:l> +<l:l i="5">È</l:l> +<l:l i="5">ë</l:l> +<l:l i="5">Ë</l:l> +<l:l i="5">€</l:l> +<l:l i="6">F</l:l> +<l:l i="6">f</l:l> +<l:l i="7">G</l:l> +<l:l i="7">g</l:l> +<l:l i="8">H</l:l> +<l:l i="8">h</l:l> +<l:l i="9">I</l:l> +<l:l i="9">i</l:l> +<l:l i="9">Î</l:l> +<l:l i="9">î</l:l> +<l:l i="9">Ï</l:l> +<l:l i="9">ï</l:l> +<l:l i="10">J</l:l> +<l:l i="10">j</l:l> +<l:l i="11">K</l:l> +<l:l i="11">k</l:l> +<l:l i="12">L</l:l> +<l:l i="12">l</l:l> +<l:l i="13">M</l:l> +<l:l i="13">m</l:l> +<l:l i="14">N</l:l> +<l:l i="14">n</l:l> +<l:l i="15">O</l:l> +<l:l i="15">o</l:l> +<l:l i="15">Ö</l:l> +<l:l i="15">ö</l:l> +<l:l i="15">Œ</l:l> +<l:l i="15">œ</l:l> +<l:l i="16">P</l:l> +<l:l i="16">p</l:l> +<l:l i="17">Q</l:l> +<l:l i="17">q</l:l> +<l:l i="18">R</l:l> +<l:l i="18">r</l:l> +<l:l i="19">S</l:l> +<l:l i="19">s</l:l> +<l:l i="20">T</l:l> +<l:l i="20">t</l:l> +<l:l i="21">U</l:l> +<l:l i="21">u</l:l> +<l:l i="21">Ù</l:l> +<l:l i="21">ù</l:l> +<l:l i="21">Û</l:l> +<l:l i="21">û</l:l> +<l:l i="21">Ü</l:l> +<l:l i="21">ü</l:l> +<l:l i="22">V</l:l> +<l:l i="22">v</l:l> +<l:l i="23">W</l:l> +<l:l i="23">w</l:l> +<l:l i="24">X</l:l> +<l:l i="24">x</l:l> +<l:l i="25">Y</l:l> +<l:l i="25">y</l:l> +<l:l i="26">Z</l:l> +<l:l i="26">z</l:l> +</l:letters> +</l:l10n> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/gentext.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/gentext.xsl new file mode 100644 index 000000000..93f742d12 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/gentext.xsl @@ -0,0 +1,831 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" + exclude-result-prefixes="doc" + version='1.0'> + +<!-- ******************************************************************** + $Id$ + ******************************************************************** + + This file is part of the XSL DocBook Stylesheet distribution. + See ../README or http://docbook.sf.net/release/xsl/current/ for + copyright and other information. + + ******************************************************************** --> + +<!-- ==================================================================== --> + + +<xsl:template match="*" mode="object.title.template"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'title'"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + </xsl:with-param> + </xsl:call-template> +</xsl:template> + +<xsl:template match="chapter" mode="object.title.template"> + <xsl:choose> + <xsl:when test="string($chapter.autolabel) != 0"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'title-numbered'"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'title-unnumbered'"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + </xsl:with-param> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="appendix" mode="object.title.template"> + <xsl:choose> + <xsl:when test="string($appendix.autolabel) != 0"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'title-numbered'"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'title-unnumbered'"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + </xsl:with-param> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="part" mode="object.title.template"> + <xsl:choose> + <xsl:when test="string($part.autolabel) != 0"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'title-numbered'"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'title-unnumbered'"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + </xsl:with-param> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="section|sect1|sect2|sect3|sect4|sect5|simplesect + |bridgehead" + mode="object.title.template"> + <xsl:variable name="is.numbered"> + <xsl:call-template name="label.this.section"/> + </xsl:variable> + <xsl:choose> + <xsl:when test="$is.numbered != 0"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'title-numbered'"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'title-unnumbered'"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + </xsl:with-param> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="procedure" mode="object.title.template"> + <xsl:choose> + <xsl:when test="$formal.procedures != 0 and title"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'title'"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + <xsl:text>.formal</xsl:text> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'title'"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + </xsl:with-param> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ============================================================ --> + +<xsl:template match="*" mode="object.subtitle.template"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'subtitle'"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + </xsl:with-param> + </xsl:call-template> +</xsl:template> + +<!-- ============================================================ --> + +<xsl:template match="*" mode="is.autonumber"> + <xsl:value-of select="'0'"/> +</xsl:template> + +<xsl:template match="section|sect1|sect2|sect3|sect4|sect5" + mode="is.autonumber"> + <xsl:call-template name="label.this.section"/> +</xsl:template> + +<xsl:template match="figure|example|table|equation" mode="is.autonumber"> + <xsl:value-of select="'1'"/> +</xsl:template> + +<xsl:template match="appendix" mode="is.autonumber"> + <xsl:value-of select="$appendix.autolabel"/> +</xsl:template> + +<xsl:template match="chapter" mode="is.autonumber"> + <xsl:value-of select="$chapter.autolabel"/> +</xsl:template> + +<xsl:template match="part" mode="is.autonumber"> + <xsl:value-of select="$part.autolabel"/> +</xsl:template> + +<xsl:template match="preface" mode="is.autonumber"> + <xsl:value-of select="$preface.autolabel"/> +</xsl:template> + +<xsl:template match="question|answer" mode="is.autonumber"> + <xsl:choose> + <xsl:when test="$qanda.defaultlabel = 'number' + and not(label)"> + <xsl:value-of select="'1'"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="'0'"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="qandadiv" mode="is.autonumber"> + <xsl:value-of select="$qandadiv.autolabel"/> +</xsl:template> + +<xsl:template match="bridgehead" mode="is.autonumber"> + <xsl:value-of select="$section.autolabel"/> +</xsl:template> + +<xsl:template match="*" mode="object.xref.template"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="referrer"/> + + <!-- Is autonumbering on? --> + <xsl:variable name="autonumber"> + <xsl:apply-templates select="." mode="is.autonumber"/> + </xsl:variable> + + <xsl:variable name="number-and-title-template"> + <xsl:call-template name="gentext.template.exists"> + <xsl:with-param name="context" select="'xref-number-and-title'"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + </xsl:with-param> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="number-template"> + <xsl:call-template name="gentext.template.exists"> + <xsl:with-param name="context" select="'xref-number'"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + </xsl:with-param> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="context"> + <xsl:choose> + <xsl:when test="string($autonumber) != 0 + and $number-and-title-template != 0 + and $xref.with.number.and.title != 0"> + <xsl:value-of select="'xref-number-and-title'"/> + </xsl:when> + <xsl:when test="string($autonumber) != 0 + and $number-template != 0"> + <xsl:value-of select="'xref-number'"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="'xref'"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="$context"/> + <xsl:with-param name="name"> + <xsl:call-template name="xpath.location"/> + </xsl:with-param> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:call-template> + +</xsl:template> + + +<!-- ============================================================ --> + +<xsl:template match="*" mode="object.title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:variable name="template"> + <xsl:apply-templates select="." mode="object.title.template"/> + </xsl:variable> + +<!-- + <xsl:message> + <xsl:text>object.title.markup: </xsl:text> + <xsl:value-of select="local-name(.)"/> + <xsl:text>: </xsl:text> + <xsl:value-of select="$template"/> + </xsl:message> +--> + + <xsl:call-template name="substitute-markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + <xsl:with-param name="template" select="$template"/> + </xsl:call-template> +</xsl:template> + +<xsl:template match="*" mode="object.title.markup.textonly"> + <xsl:variable name="title"> + <xsl:apply-templates select="." mode="object.title.markup"/> + </xsl:variable> + <xsl:value-of select="normalize-space($title)"/> +</xsl:template> + +<!-- ============================================================ --> + +<xsl:template match="*" mode="object.titleabbrev.markup"> + <xsl:param name="allow-anchors" select="0"/> + + <!-- Just for consistency in template naming --> + + <xsl:apply-templates select="." mode="titleabbrev.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<!-- ============================================================ --> + +<xsl:template match="*" mode="object.subtitle.markup"> + <xsl:variable name="template"> + <xsl:apply-templates select="." mode="object.subtitle.template"/> + </xsl:variable> + + <xsl:call-template name="substitute-markup"> + <xsl:with-param name="template" select="$template"/> + </xsl:call-template> +</xsl:template> + +<!-- ============================================================ --> + +<xsl:template match="*" mode="object.xref.markup"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="referrer"/> + <xsl:param name="verbose" select="1"/> + + <xsl:variable name="template"> + <xsl:choose> + <xsl:when test="starts-with(normalize-space($xrefstyle), 'select:')"> + <xsl:call-template name="make.gentext.template"> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="starts-with(normalize-space($xrefstyle), 'template:')"> + <xsl:value-of select="substring-after(normalize-space($xrefstyle), 'template:')"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="." mode="object.xref.template"> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + +<!-- + <xsl:message> + <xsl:text>object.xref.markup: </xsl:text> + <xsl:value-of select="local-name(.)"/> + <xsl:text>(</xsl:text> + <xsl:value-of select="$xrefstyle"/> + <xsl:text>, </xsl:text> + <xsl:value-of select="$purpose"/> + <xsl:text>)</xsl:text> + <xsl:text>: [</xsl:text> + <xsl:value-of select="$template"/> + <xsl:text>]</xsl:text> + </xsl:message> +--> + + <xsl:if test="$template = '' and $verbose != 0"> + <xsl:message> + <xsl:text>object.xref.markup: empty xref template</xsl:text> + <xsl:text> for linkend="</xsl:text> + <xsl:value-of select="@id|@xml:id"/> + <xsl:text>" and @xrefstyle="</xsl:text> + <xsl:value-of select="$xrefstyle"/> + <xsl:text>"</xsl:text> + </xsl:message> + </xsl:if> + + <xsl:call-template name="substitute-markup"> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + <xsl:with-param name="template" select="$template"/> + <xsl:with-param name="verbose" select="$verbose"/> + </xsl:call-template> +</xsl:template> + +<xsl:template match="listitem" mode="object.xref.markup"> + <xsl:param name="verbose" select="1"/> + + <xsl:choose> + <xsl:when test="parent::orderedlist"> + <xsl:variable name="template"> + <xsl:apply-templates select="." mode="object.xref.template"/> + </xsl:variable> + <xsl:call-template name="substitute-markup"> + <xsl:with-param name="template" select="$template"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$verbose != 0"> + <xsl:message> + <xsl:text>Xref is only supported to listitems in an</xsl:text> + <xsl:text> orderedlist: </xsl:text> + <xsl:value-of select="@id|@xml:id"/> + </xsl:message> + <xsl:text>???</xsl:text> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template match="question" mode="object.xref.markup"> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="referrer"/> + + <xsl:variable name="deflabel"> + <xsl:choose> + <xsl:when test="ancestor-or-self::*[@defaultlabel]"> + <xsl:value-of select="(ancestor-or-self::*[@defaultlabel])[last()] + /@defaultlabel"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$qanda.defaultlabel"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="template"> + <xsl:choose> + <!-- This avoids double Q: Q: in xref when defaultlabel=qanda --> + <xsl:when test="$deflabel = 'qanda' and not(label)">%n</xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="." mode="object.xref.template"> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:call-template name="substitute-markup"> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + <xsl:with-param name="template" select="$template"/> + </xsl:call-template> +</xsl:template> + +<!-- ============================================================ --> + +<xsl:template name="substitute-markup"> + <xsl:param name="template" select="''"/> + <xsl:param name="allow-anchors" select="'0'"/> + <xsl:param name="title" select="''"/> + <xsl:param name="subtitle" select="''"/> + <xsl:param name="docname" select="''"/> + <xsl:param name="label" select="''"/> + <xsl:param name="pagenumber" select="''"/> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="referrer"/> + <xsl:param name="verbose"/> + + <xsl:choose> + <xsl:when test="contains($template, '%')"> + <xsl:value-of select="substring-before($template, '%')"/> + <xsl:variable name="candidate" + select="substring(substring-after($template, '%'), 1, 1)"/> + <xsl:choose> + <xsl:when test="$candidate = 't'"> + <xsl:apply-templates select="." mode="insert.title.markup"> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="title"> + <xsl:choose> + <xsl:when test="$title != ''"> + <xsl:copy-of select="$title"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="." mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + <xsl:with-param name="verbose" select="$verbose"/> + </xsl:apply-templates> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:apply-templates> + </xsl:when> + <xsl:when test="$candidate = 's'"> + <xsl:apply-templates select="." mode="insert.subtitle.markup"> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="subtitle"> + <xsl:choose> + <xsl:when test="$subtitle != ''"> + <xsl:copy-of select="$subtitle"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="." mode="subtitle.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:apply-templates> + </xsl:when> + <xsl:when test="$candidate = 'n'"> + <xsl:apply-templates select="." mode="insert.label.markup"> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="label"> + <xsl:choose> + <xsl:when test="$label != ''"> + <xsl:copy-of select="$label"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="." mode="label.markup"/> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:apply-templates> + </xsl:when> + <xsl:when test="$candidate = 'p'"> + <xsl:apply-templates select="." mode="insert.pagenumber.markup"> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="pagenumber"> + <xsl:choose> + <xsl:when test="$pagenumber != ''"> + <xsl:copy-of select="$pagenumber"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="." mode="pagenumber.markup"/> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:apply-templates> + </xsl:when> + <xsl:when test="$candidate = 'o'"> + <!-- olink target document title --> + <xsl:apply-templates select="." mode="insert.olink.docname.markup"> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="docname"> + <xsl:choose> + <xsl:when test="$docname != ''"> + <xsl:copy-of select="$docname"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="." mode="olink.docname.markup"/> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:apply-templates> + </xsl:when> + <xsl:when test="$candidate = 'd'"> + <xsl:apply-templates select="." mode="insert.direction.markup"> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="direction"> + <xsl:choose> + <xsl:when test="$referrer"> + <xsl:variable name="referent-is-below"> + <xsl:for-each select="preceding::xref"> + <xsl:if test="generate-id(.) = generate-id($referrer)">1</xsl:if> + </xsl:for-each> + </xsl:variable> + <xsl:choose> + <xsl:when test="$referent-is-below = ''"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'above'"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'below'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:message>Attempt to use %d in gentext with no referrer!</xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:apply-templates> + </xsl:when> + <xsl:when test="$candidate = '%' "> + <xsl:text>%</xsl:text> + </xsl:when> + <xsl:otherwise> + <xsl:text>%</xsl:text><xsl:value-of select="$candidate"/> + </xsl:otherwise> + </xsl:choose> + <!-- recurse with the rest of the template string --> + <xsl:variable name="rest" + select="substring($template, + string-length(substring-before($template, '%'))+3)"/> + <xsl:call-template name="substitute-markup"> + <xsl:with-param name="template" select="$rest"/> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + <xsl:with-param name="title" select="$title"/> + <xsl:with-param name="subtitle" select="$subtitle"/> + <xsl:with-param name="docname" select="$docname"/> + <xsl:with-param name="label" select="$label"/> + <xsl:with-param name="pagenumber" select="$pagenumber"/> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + <xsl:with-param name="verbose" select="$verbose"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$template"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ============================================================ --> + +<xsl:template name="make.gentext.template"> + <xsl:param name="xrefstyle" select="''"/> + <xsl:param name="purpose"/> + <xsl:param name="referrer"/> + <xsl:param name="lang"> + <xsl:call-template name="l10n.language"/> + </xsl:param> + <xsl:param name="target.elem" select="local-name(.)"/> + + <!-- parse xrefstyle to get parts --> + <xsl:variable name="parts" + select="substring-after(normalize-space($xrefstyle), 'select:')"/> + + <xsl:variable name="labeltype"> + <xsl:choose> + <xsl:when test="contains($parts, 'labelnumber')"> + <xsl:text>labelnumber</xsl:text> + </xsl:when> + <xsl:when test="contains($parts, 'labelname')"> + <xsl:text>labelname</xsl:text> + </xsl:when> + <xsl:when test="contains($parts, 'label')"> + <xsl:text>label</xsl:text> + </xsl:when> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="titletype"> + <xsl:choose> + <xsl:when test="contains($parts, 'quotedtitle')"> + <xsl:text>quotedtitle</xsl:text> + </xsl:when> + <xsl:when test="contains($parts, 'title')"> + <xsl:text>title</xsl:text> + </xsl:when> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="pagetype"> + <xsl:choose> + <xsl:when test="$insert.olink.page.number = 'no' and + local-name($referrer) = 'olink'"> + <!-- suppress page numbers --> + </xsl:when> + <xsl:when test="$insert.xref.page.number = 'no' and + local-name($referrer) != 'olink'"> + <!-- suppress page numbers --> + </xsl:when> + <xsl:when test="contains($parts, 'nopage')"> + <xsl:text>nopage</xsl:text> + </xsl:when> + <xsl:when test="contains($parts, 'pagenumber')"> + <xsl:text>pagenumber</xsl:text> + </xsl:when> + <xsl:when test="contains($parts, 'pageabbrev')"> + <xsl:text>pageabbrev</xsl:text> + </xsl:when> + <xsl:when test="contains($parts, 'Page')"> + <xsl:text>Page</xsl:text> + </xsl:when> + <xsl:when test="contains($parts, 'page')"> + <xsl:text>page</xsl:text> + </xsl:when> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="docnametype"> + <xsl:choose> + <xsl:when test="($olink.doctitle = 0 or + $olink.doctitle = 'no') and + local-name($referrer) = 'olink'"> + <!-- suppress docname --> + </xsl:when> + <xsl:when test="contains($parts, 'nodocname')"> + <xsl:text>nodocname</xsl:text> + </xsl:when> + <xsl:when test="contains($parts, 'docnamelong')"> + <xsl:text>docnamelong</xsl:text> + </xsl:when> + <xsl:when test="contains($parts, 'docname')"> + <xsl:text>docname</xsl:text> + </xsl:when> + </xsl:choose> + </xsl:variable> + + <xsl:if test="$labeltype != ''"> + <xsl:choose> + <xsl:when test="$labeltype = 'labelname'"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key"> + <xsl:choose> + <xsl:when test="local-name($referrer) = 'olink'"> + <xsl:value-of select="$target.elem"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="local-name(.)"/> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="$labeltype = 'labelnumber'"> + <xsl:text>%n</xsl:text> + </xsl:when> + <xsl:when test="$labeltype = 'label'"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'xref-number'"/> + <xsl:with-param name="name"> + <xsl:choose> + <xsl:when test="local-name($referrer) = 'olink'"> + <xsl:value-of select="$target.elem"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="xpath.location"/> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:call-template> + </xsl:when> + </xsl:choose> + + <xsl:choose> + <xsl:when test="$titletype != ''"> + <xsl:value-of select="$xref.label-title.separator"/> + </xsl:when> + <xsl:when test="$pagetype != ''"> + <xsl:value-of select="$xref.label-page.separator"/> + </xsl:when> + </xsl:choose> + </xsl:if> + + <xsl:if test="$titletype != ''"> + <xsl:choose> + <xsl:when test="$titletype = 'title'"> + <xsl:text>%t</xsl:text> + </xsl:when> + <xsl:when test="$titletype = 'quotedtitle'"> + <xsl:call-template name="gentext.dingbat"> + <xsl:with-param name="dingbat" select="'startquote'"/> + </xsl:call-template> + <xsl:text>%t</xsl:text> + <xsl:call-template name="gentext.dingbat"> + <xsl:with-param name="dingbat" select="'endquote'"/> + </xsl:call-template> + </xsl:when> + </xsl:choose> + + <xsl:choose> + <xsl:when test="$pagetype != '' and $pagetype != 'nopage'"> + <xsl:value-of select="$xref.title-page.separator"/> + </xsl:when> + </xsl:choose> + </xsl:if> + + <!-- special case: use regular xref template if just turning off page --> + <xsl:if test="($pagetype = 'nopage' or $docnametype = 'nodocname') + and local-name($referrer) != 'olink' + and $labeltype = '' + and $titletype = ''"> + <xsl:apply-templates select="." mode="object.xref.template"> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + </xsl:apply-templates> + </xsl:if> + + <xsl:if test="$pagetype != ''"> + <xsl:choose> + <xsl:when test="$pagetype = 'page'"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'xref'"/> + <xsl:with-param name="name" select="'page'"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$pagetype = 'Page'"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'xref'"/> + <xsl:with-param name="name" select="'Page'"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$pagetype = 'pageabbrev'"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'xref'"/> + <xsl:with-param name="name" select="'pageabbrev'"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$pagetype = 'pagenumber'"> + <xsl:text>%p</xsl:text> + </xsl:when> + </xsl:choose> + + </xsl:if> + + <!-- Add reference to other document title --> + <xsl:if test="$docnametype != '' and local-name($referrer) = 'olink'"> + <!-- Any separator should be in the gentext template --> + <xsl:choose> + <xsl:when test="$docnametype = 'docnamelong'"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'xref'"/> + <xsl:with-param name="name" select="'docnamelong'"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$docnametype = 'docname'"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'xref'"/> + <xsl:with-param name="name" select="'docname'"/> + </xsl:call-template> + </xsl:when> + </xsl:choose> + + </xsl:if> + +</xsl:template> + +</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/insertfile.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/insertfile.xsl new file mode 100644 index 000000000..c4e2d0d44 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/insertfile.xsl @@ -0,0 +1,111 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:xi="http://www.w3.org/2001/XInclude" + version='1.0'> + +<!-- ******************************************************************** + $Id$ + ******************************************************************** + + This file is part of the XSL DocBook Stylesheet distribution. + See ../README or http://docbook.sf.net/release/xsl/current/ for + copyright and other information. + + ******************************************************************** --> + +<xsl:param name="textdata.default.encoding"></xsl:param> + +<!-- * This stylesheet makes a copy of a source tree, replacing all --> +<!-- * instances of the following with corresponding Xinclude instances --> +<!-- * in the result tree. --> +<!-- * --> +<!-- * <textobject><textdata fileref="foo.txt"> --> +<!-- * <imagedata format="linespecific" fileref="foo.txt"> --> +<!-- * <inlinegraphic format="linespecific" fileref="foo.txt"> --> +<!-- * --> +<!-- * Those become: --> +<!-- * --> +<!-- * <xi:include href="foo.txt" parse="text"/> --> +<!-- * --> +<!-- * It also works as expected with entityref in place of fileref, --> +<!-- * and copies over the value of the <textdata>“encoding” atrribute (if --> +<!-- * found). It is basically intended as an alternative to using the --> +<!-- * DocBook XSLT Java insertfile() extension. --> + +<!-- ==================================================================== --> + +<xsl:template name="get.external.filename"> + <xsl:choose> + <xsl:when test="@entityref"> + <xsl:value-of select="unparsed-entity-uri(@entityref)"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="@fileref"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template match="textobject[child::textdata[@entityref|@fileref]]"> + <xsl:apply-templates select="textdata"/> +</xsl:template> + +<xsl:template match="textdata[@entityref|@fileref]"> + <xsl:variable name="filename"> + <xsl:call-template name="get.external.filename"/> + </xsl:variable> + <xsl:variable name="encoding"> + <xsl:choose> + <xsl:when test="@encoding"> + <xsl:value-of select="@encoding"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$textdata.default.encoding"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + <xi:include href="{$filename}" parse="text" encoding="{$encoding}"/> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template + match="inlinemediaobject + [child::imageobject + [child::imagedata + [@format = 'linespecific' and + (@entityref|@fileref)]]]"> + <xsl:apply-templates select="imageobject/imagedata"/> +</xsl:template> + +<xsl:template match="imagedata + [@format = 'linespecific' and + (@entityref|@fileref)]"> + <xsl:variable name="filename"> + <xsl:call-template name="get.external.filename"/> + </xsl:variable> + <xi:include href="{$filename}" parse="text" encoding="{$textdata.default.encoding}"/> +</xsl:template> + +<!-- ==================================================================== --> + +<xsl:template match="inlinegraphic + [@format = 'linespecific' and + (@entityref|@fileref)]"> + <xsl:variable name="filename"> + <xsl:call-template name="get.external.filename"/> + </xsl:variable> + <xi:include href="{$filename}" parse="text" encoding="{$textdata.default.encoding}"/> +</xsl:template> + +<!-- ==================================================================== --> + +<!-- * copy everything else into result tree as-is --> +<xsl:template match="node() | @*"> + <xsl:copy> + <xsl:apply-templates select="@* | node()"/> + </xsl:copy> +</xsl:template> + +</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/it.xml b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/it.xml new file mode 100644 index 000000000..a07b68eea --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/it.xml @@ -0,0 +1,1216 @@ +<?xml version="1.0" encoding="utf-8"?> +<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="it" english-language-name="Italian"> + +<!-- * This file is generated automatically. --> +<!-- * To submit changes to this file upstream (to the DocBook Project) --> +<!-- * do not submit an edited version of this file. Instead, submit an --> +<!-- * edited version of the source file at the following location: --> +<!-- * --> +<!-- * https://svn.sourceforge.net/svnroot/docbook/trunk/gentext/locale/it.xml --> +<!-- * --> +<!-- * E-mail the edited it.xml source file to: --> +<!-- * --> +<!-- * docbook-developers@lists.sourceforge.net --> + +<!-- ******************************************************************** --> + +<!-- This file is part of the XSL DocBook Stylesheet distribution. --> +<!-- See ../README or http://docbook.sf.net/release/xsl/current/ for --> +<!-- copyright and other information. --> + +<!-- ******************************************************************** --> + +<l:gentext key="Abstract" text="Estratto"/> +<l:gentext key="abstract" text="Estratto"/> +<l:gentext key="Answer" text="R:"/> +<l:gentext key="answer" text="R:"/> +<l:gentext key="Appendix" text="Appendice"/> +<l:gentext key="appendix" text="appendice"/> +<l:gentext key="Article" text="Articolo"/> +<l:gentext key="article" text="Articolo"/> +<l:gentext key="Author" text="Autori"/> +<l:gentext key="Bibliography" text="Bibliografia"/> +<l:gentext key="bibliography" text="Bibliografia"/> +<l:gentext key="Book" text="Libro"/> +<l:gentext key="book" text="Libro"/> +<l:gentext key="CAUTION" text="ATTENZIONE"/> +<l:gentext key="Caution" text="Attenzione"/> +<l:gentext key="caution" text="Attenzione"/> +<l:gentext key="Chapter" text="Capitolo"/> +<l:gentext key="chapter" text="capitolo"/> +<l:gentext key="Colophon" text="Colophon"/> +<l:gentext key="colophon" text="Colophon"/> +<l:gentext key="Copyright" text="Copyright"/> +<l:gentext key="copyright" text="Copyright"/> +<l:gentext key="Dedication" text="Dedica"/> +<l:gentext key="dedication" text="Dedica"/> +<l:gentext key="Edition" text="Edizione"/> +<l:gentext key="edition" text="Edizione"/> +<l:gentext key="Editor" text="Editor" lang="en"/> +<l:gentext key="Equation" text="Equazione"/> +<l:gentext key="equation" text="Equazione"/> +<l:gentext key="Example" text="Esempio"/> +<l:gentext key="example" text="Esempio"/> +<l:gentext key="Figure" text="Figura"/> +<l:gentext key="figure" text="Figura"/> +<l:gentext key="Glossary" text="Glossario"/> +<l:gentext key="glossary" text="Glossario"/> +<l:gentext key="GlossSee" text="Vedi"/> +<l:gentext key="glosssee" text="Vedi"/> +<l:gentext key="GlossSeeAlso" text="Vedi Anche"/> +<l:gentext key="glossseealso" text="Vedi Anche"/> +<l:gentext key="IMPORTANT" text="IMPORTANTE"/> +<l:gentext key="important" text="Importante"/> +<l:gentext key="Important" text="Importante"/> +<l:gentext key="Index" text="Indice"/> +<l:gentext key="index" text="Indice"/> +<l:gentext key="ISBN" text="ISBN"/> +<l:gentext key="isbn" text="ISBN"/> +<l:gentext key="LegalNotice" text="Note Legali"/> +<l:gentext key="legalnotice" text="Note Legali"/> +<l:gentext key="MsgAud" text="Pubblico"/> +<l:gentext key="msgaud" text="Pubblico"/> +<l:gentext key="MsgLevel" text="Livello"/> +<l:gentext key="msglevel" text="Livello"/> +<l:gentext key="MsgOrig" text="Origine"/> +<l:gentext key="msgorig" text="Origine"/> +<l:gentext key="NOTE" text="NOTA"/> +<l:gentext key="Note" text="Nota"/> +<l:gentext key="note" text="Nota"/> +<l:gentext key="Part" text="Parte"/> +<l:gentext key="part" text="Parte"/> +<l:gentext key="Preface" text="Prefazione"/> +<l:gentext key="preface" text="Prefazione"/> +<l:gentext key="Procedure" text="Procedura"/> +<l:gentext key="procedure" text="Procedura"/> +<l:gentext key="ProductionSet" text="Produzione"/> +<l:gentext key="PubDate" text="Data di pubblicazione"/> +<l:gentext key="pubdate" text="Data di pubblicazione"/> +<l:gentext key="Published" text="Pubblicato"/> +<l:gentext key="published" text="Pubblicato"/> +<l:gentext key="Publisher" text="Publisher" lang="en"/> +<l:gentext key="Qandadiv" text="D e R"/> +<l:gentext key="qandadiv" text="D e R"/> +<l:gentext key="QandASet" text="Frequently Asked Questions" lang="en"/> +<l:gentext key="Question" text="D:"/> +<l:gentext key="question" text="D:"/> +<l:gentext key="RefEntry" text=""/> +<l:gentext key="refentry" text=""/> +<l:gentext key="Reference" text="Riferimento"/> +<l:gentext key="reference" text="Riferimento"/> +<l:gentext key="References" text="Riferimenti"/> +<l:gentext key="RefName" text="Nome"/> +<l:gentext key="refname" text="Nome"/> +<l:gentext key="RefSection" text=""/> +<l:gentext key="refsection" text=""/> +<l:gentext key="RefSynopsisDiv" text="Sinossi"/> +<l:gentext key="refsynopsisdiv" text="Sinossi"/> +<l:gentext key="RevHistory" text="Diario delle Revisioni"/> +<l:gentext key="revhistory" text="Diario delle Revisioni"/> +<l:gentext key="revision" text="Revisione"/> +<l:gentext key="Revision" text="Revisione"/> +<l:gentext key="sect1" text="Sezione"/> +<l:gentext key="sect2" text="Sezione"/> +<l:gentext key="sect3" text="Sezione"/> +<l:gentext key="sect4" text="Sezione"/> +<l:gentext key="sect5" text="Sezione"/> +<l:gentext key="section" text="Sezione"/> +<l:gentext key="Section" text="Sezione"/> +<l:gentext key="see" text="Vd."/> +<l:gentext key="See" text="Vd."/> +<l:gentext key="seealso" text="Vd. Anche"/> +<l:gentext key="Seealso" text="Vd. anche"/> +<l:gentext key="SeeAlso" text="Vd. Anche"/> +<l:gentext key="set" text="Raccolta"/> +<l:gentext key="Set" text="Raccolta"/> +<l:gentext key="setindex" text="Indice Raccolta"/> +<l:gentext key="SetIndex" text="Indice Raccolta"/> +<l:gentext key="Sidebar" text=""/> +<l:gentext key="sidebar" text="nota a margine"/> +<l:gentext key="step" text="passo"/> +<l:gentext key="Step" text="Passo"/> +<l:gentext key="table" text="Tabella"/> +<l:gentext key="Table" text="Tabella"/> +<l:gentext key="task" text="Task" lang="en"/> +<l:gentext key="Task" text="Task" lang="en"/> +<l:gentext key="tip" text="Suggerimento"/> +<l:gentext key="TIP" text="SUGGERIMENTO"/> +<l:gentext key="Tip" text="Suggerimento"/> +<l:gentext key="Warning" text="Avvertimento"/> +<l:gentext key="warning" text="avvertimento"/> +<l:gentext key="WARNING" text="AVVERTIMENTO"/> +<l:gentext key="and" text="e"/> +<l:gentext key="by" text="di"/> +<l:gentext key="Edited" text="A cura"/> +<l:gentext key="edited" text="A cura"/> +<l:gentext key="Editedby" text="A cura di"/> +<l:gentext key="editedby" text="A cura di"/> +<l:gentext key="in" text="in"/> +<l:gentext key="lastlistcomma" text=","/> +<l:gentext key="listcomma" text=","/> +<l:gentext key="nonexistantelement" text="elemento non esistente"/> +<l:gentext key="notes" text="Note"/> +<l:gentext key="Notes" text="Note"/> +<l:gentext key="Pgs" text="pp."/> +<l:gentext key="pgs" text="pp."/> +<l:gentext key="Revisedby" text="Revisionato da: "/> +<l:gentext key="revisedby" text="Revisionato da: "/> +<l:gentext key="TableNotes" text="Note"/> +<l:gentext key="tablenotes" text="Note"/> +<l:gentext key="TableofContents" text="Sommario"/> +<l:gentext key="tableofcontents" text="Sommario"/> +<l:gentext key="unexpectedelementname" text="Nome elemento inaspettato"/> +<l:gentext key="unsupported" text="non supportato"/> +<l:gentext key="xrefto" text="riferimento a"/> +<l:gentext key="Authors" text="Autori"/> +<l:gentext key="copyeditor" text="Copy Editor" lang="en"/> +<l:gentext key="graphicdesigner" text="Designer Grafico"/> +<l:gentext key="productioneditor" text="Production Editor" lang="en"/> +<l:gentext key="technicaleditor" text="Technical Editor" lang="en"/> +<l:gentext key="translator" text="Traduttore"/> +<l:gentext key="listofequations" text="Lista delle Equazioni"/> +<l:gentext key="ListofEquations" text="Lista delle Equazioni"/> +<l:gentext key="ListofExamples" text="Lista degli Esempi"/> +<l:gentext key="listofexamples" text="Lista degli Esempi"/> +<l:gentext key="ListofFigures" text="Lista delle Figure"/> +<l:gentext key="listoffigures" text="Lista delle Figure"/> +<l:gentext key="ListofProcedures" text="Lista delle procedure"/> +<l:gentext key="listofprocedures" text="Lista delle procedure"/> +<l:gentext key="listoftables" text="Lista delle Tabelle"/> +<l:gentext key="ListofTables" text="Lista delle Tabelle"/> +<l:gentext key="ListofUnknown" text="Lista degli Sconosciuti"/> +<l:gentext key="listofunknown" text="Lista degli Sconosciuti"/> +<l:gentext key="nav-home" text="Partenza"/> +<l:gentext key="nav-next" text="Avanti"/> +<l:gentext key="nav-next-sibling" text="Salta Avanti"/> +<l:gentext key="nav-prev" text="Indietro"/> +<l:gentext key="nav-prev-sibling" text="Salta Indietro"/> +<l:gentext key="nav-up" text="Risali"/> +<l:gentext key="nav-toc" text="ToC" lang="en"/> +<l:gentext key="Draft" text="Bozza"/> +<l:gentext key="above" text="sopra"/> +<l:gentext key="below" text="sotto"/> +<l:gentext key="sectioncalled" text="la sezione chiamata"/> +<l:gentext key="index symbols" text="Simboli"/> +<l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/> +<l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/> +<l:gentext key="normalize.sort.input" text="AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ" lang="en"/> +<l:gentext key="normalize.sort.output" text="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ" lang="en"/> +<l:dingbat key="startquote" text="«"/> +<l:dingbat key="endquote" text="»"/> +<l:dingbat key="nestedstartquote" text="“"/> +<l:dingbat key="nestedendquote" text="”"/> +<l:dingbat key="singlestartquote" text="‘" lang="en"/> +<l:dingbat key="singleendquote" text="’" lang="en"/> +<l:dingbat key="bullet" text="•"/> +<l:gentext key="hyphenation-character" text="-" lang="en"/> +<l:gentext key="hyphenation-push-character-count" text="2" lang="en"/> +<l:gentext key="hyphenation-remain-character-count" text="2" lang="en"/> +<l:context name="styles"><l:template name="person-name" text="first-last"/> +</l:context> +<l:context name="title"><l:template name="abstract" text="%t"/> +<l:template name="answer" text="%t"/> +<l:template name="appendix" text="Appendice %n. %t"/> +<l:template name="article" text="%t"/> +<l:template name="authorblurb" text="%t"/> +<l:template name="bibliodiv" text="%t"/> +<l:template name="biblioentry" text="%t"/> +<l:template name="bibliography" text="%t"/> +<l:template name="bibliolist" text="%t" lang="en"/> +<l:template name="bibliomixed" text="%t"/> +<l:template name="bibliomset" text="%t"/> +<l:template name="biblioset" text="%t"/> +<l:template name="blockquote" text="%t"/> +<l:template name="book" text="%t"/> +<l:template name="calloutlist" text="%t"/> +<l:template name="caution" text="%t"/> +<l:template name="chapter" text="Capitolo %n. %t"/> +<l:template name="colophon" text="%t"/> +<l:template name="dedication" text="%t"/> +<l:template name="equation" text="Equazione %n. %t"/> +<l:template name="example" text="Esempio %n. %t"/> +<l:template name="figure" text="Figura %n. %t"/> +<l:template name="foil" text="%t" lang="en"/> +<l:template name="foilgroup" text="%t" lang="en"/> +<l:template name="formalpara" text="%t"/> +<l:template name="glossary" text="%t"/> +<l:template name="glossdiv" text="%t"/> +<l:template name="glosslist" text="%t" lang="en"/> +<l:template name="glossentry" text="%t" lang="en"/> +<l:template name="important" text="%t"/> +<l:template name="index" text="%t"/> +<l:template name="indexdiv" text="%t"/> +<l:template name="itemizedlist" text="%t"/> +<l:template name="legalnotice" text="%t"/> +<l:template name="listitem" text=""/> +<l:template name="lot" text="%t"/> +<l:template name="msg" text="%t"/> +<l:template name="msgexplan" text="%t"/> +<l:template name="msgmain" text="%t"/> +<l:template name="msgrel" text="%t"/> +<l:template name="msgset" text="%t"/> +<l:template name="msgsub" text="%t"/> +<l:template name="note" text="%t"/> +<l:template name="orderedlist" text="%t"/> +<l:template name="part" text="Parte %n. %t"/> +<l:template name="partintro" text="%t"/> +<l:template name="preface" text="%t"/> +<l:template name="procedure" text="%t"/> +<l:template name="procedure.formal" text="Procedura %n. %t"/> +<l:template name="productionset" text="%t"/> +<l:template name="productionset.formal" text="Produzione %n"/> +<l:template name="qandadiv" text="%t"/> +<l:template name="qandaentry" text="%t"/> +<l:template name="qandaset" text="%t"/> +<l:template name="question" text="%t"/> +<l:template name="refentry" text="%t"/> +<l:template name="reference" text="%t"/> +<l:template name="refsection" text="%t"/> +<l:template name="refsect1" text="%t"/> +<l:template name="refsect2" text="%t"/> +<l:template name="refsect3" text="%t"/> +<l:template name="refsynopsisdiv" text="%t"/> +<l:template name="refsynopsisdivinfo" text="%t"/> +<l:template name="segmentedlist" text="%t"/> +<l:template name="set" text="%t"/> +<l:template name="setindex" text="%t"/> +<l:template name="sidebar" text="%t"/> +<l:template name="step" text="%t"/> +<l:template name="table" text="Tabella %n. %t"/> +<l:template name="task" text="%t" lang="en"/> +<l:template name="tasksummary" text="%t" lang="en"/> +<l:template name="taskprerequisites" text="%t" lang="en"/> +<l:template name="taskrelated" text="%t" lang="en"/> +<l:template name="tip" text="%t"/> +<l:template name="toc" text="%t"/> +<l:template name="variablelist" text="%t"/> +<l:template name="varlistentry" text=""/> +<l:template name="warning" text="%t"/> +</l:context> +<l:context name="title-unnumbered"><l:template name="appendix" text="%t"/> +<l:template name="article/appendix" text="%t" lang="en"/> +<l:template name="bridgehead" text="%t"/> +<l:template name="chapter" text="%t"/> +<l:template name="sect1" text="%t"/> +<l:template name="sect2" text="%t"/> +<l:template name="sect3" text="%t"/> +<l:template name="sect4" text="%t"/> +<l:template name="sect5" text="%t"/> +<l:template name="section" text="%t"/> +<l:template name="simplesect" text="%t"/> +<l:template name="part" text="%t" lang="en"/> +</l:context> +<l:context name="title-numbered"><l:template name="appendix" text="Appendice %n. %t"/> +<l:template name="article/appendix" text="%n. %t" lang="en"/> +<l:template name="bridgehead" text="%n. %t"/> +<l:template name="chapter" text="Capitolo %n. %t"/> +<l:template name="part" text="Parte %n. %t"/> +<l:template name="sect1" text="%n. %t"/> +<l:template name="sect2" text="%n. %t"/> +<l:template name="sect3" text="%n. %t"/> +<l:template name="sect4" text="%n. %t"/> +<l:template name="sect5" text="%n. %t"/> +<l:template name="section" text="%n. %t"/> +<l:template name="simplesect" text="%t"/> +</l:context> +<l:context name="subtitle"><l:template name="appendix" text="%s"/> +<l:template name="article" text="%s"/> +<l:template name="bibliodiv" text="%s"/> +<l:template name="biblioentry" text="%s"/> +<l:template name="bibliography" text="%s"/> +<l:template name="bibliomixed" text="%s"/> +<l:template name="bibliomset" text="%s"/> +<l:template name="biblioset" text="%s"/> +<l:template name="book" text="%s"/> +<l:template name="chapter" text="%s"/> +<l:template name="colophon" text="%s"/> +<l:template name="dedication" text="%s"/> +<l:template name="glossary" text="%s"/> +<l:template name="glossdiv" text="%s"/> +<l:template name="index" text="%s"/> +<l:template name="indexdiv" text="%s"/> +<l:template name="lot" text="%s"/> +<l:template name="part" text="%s"/> +<l:template name="partintro" text="%s"/> +<l:template name="preface" text="%s"/> +<l:template name="refentry" text="%s"/> +<l:template name="reference" text="%s"/> +<l:template name="refsection" text="%s"/> +<l:template name="refsect1" text="%s"/> +<l:template name="refsect2" text="%s"/> +<l:template name="refsect3" text="%s"/> +<l:template name="refsynopsisdiv" text="%s"/> +<l:template name="sect1" text="%s"/> +<l:template name="sect2" text="%s"/> +<l:template name="sect3" text="%s"/> +<l:template name="sect4" text="%s"/> +<l:template name="sect5" text="%s"/> +<l:template name="section" text="%s"/> +<l:template name="set" text="%s"/> +<l:template name="setindex" text="%s"/> +<l:template name="sidebar" text="%s"/> +<l:template name="simplesect" text="%s"/> +<l:template name="toc" text="%s"/> +</l:context> +<l:context name="xref"><l:template name="abstract" text="%t"/> +<l:template name="answer" text="R: %n"/> +<l:template name="appendix" text="%t"/> +<l:template name="article" text="%t"/> +<l:template name="authorblurb" text="%t"/> +<l:template name="bibliodiv" text="%t"/> +<l:template name="bibliography" text="%t"/> +<l:template name="bibliomset" text="%t"/> +<l:template name="biblioset" text="%t"/> +<l:template name="blockquote" text="%t"/> +<l:template name="book" text="%t"/> +<l:template name="calloutlist" text="%t"/> +<l:template name="caution" text="%t"/> +<l:template name="chapter" text="%t"/> +<l:template name="colophon" text="%t"/> +<l:template name="constraintdef" text="%t"/> +<l:template name="dedication" text="%t"/> +<l:template name="equation" text="%t"/> +<l:template name="example" text="%t"/> +<l:template name="figure" text="%t"/> +<l:template name="foil" text="%t" lang="en"/> +<l:template name="foilgroup" text="%t" lang="en"/> +<l:template name="formalpara" text="%t"/> +<l:template name="glossary" text="%t"/> +<l:template name="glossdiv" text="%t"/> +<l:template name="important" text="%t"/> +<l:template name="index" text="%t"/> +<l:template name="indexdiv" text="%t"/> +<l:template name="itemizedlist" text="%t"/> +<l:template name="legalnotice" text="%t"/> +<l:template name="listitem" text="%n"/> +<l:template name="lot" text="%t"/> +<l:template name="msg" text="%t"/> +<l:template name="msgexplan" text="%t"/> +<l:template name="msgmain" text="%t"/> +<l:template name="msgrel" text="%t"/> +<l:template name="msgset" text="%t"/> +<l:template name="msgsub" text="%t"/> +<l:template name="note" text="%t"/> +<l:template name="orderedlist" text="%t"/> +<l:template name="part" text="%t"/> +<l:template name="partintro" text="%t"/> +<l:template name="preface" text="%t"/> +<l:template name="procedure" text="%t"/> +<l:template name="productionset" text="%t"/> +<l:template name="qandadiv" text="%t"/> +<l:template name="qandaentry" text="D: %n"/> +<l:template name="qandaset" text="%t"/> +<l:template name="question" text="D: %n"/> +<l:template name="reference" text="%t"/> +<l:template name="refsynopsisdiv" text="%t"/> +<l:template name="segmentedlist" text="%t"/> +<l:template name="set" text="%t"/> +<l:template name="setindex" text="%t"/> +<l:template name="sidebar" text="%t"/> +<l:template name="table" text="%t"/> +<l:template name="task" text="%t" lang="en"/> +<l:template name="tip" text="%t"/> +<l:template name="toc" text="%t"/> +<l:template name="variablelist" text="%t"/> +<l:template name="varlistentry" text="%n"/> +<l:template name="warning" text="%t"/> +<l:template name="olink.document.citation" text=" in %o" lang="en"/> +<l:template name="olink.page.citation" text=" (page %p)" lang="en"/> +<l:template name="page.citation" text=" [%p]"/> +<l:template name="page" text="(page %p)" lang="en"/> +<l:template name="docname" text=" in %o" lang="en"/> +<l:template name="docnamelong" text=" in the document titled %o" lang="en"/> +<l:template name="pageabbrev" text="(p. %p)" lang="en"/> +<l:template name="Page" text="Page %p" lang="en"/> +<l:template name="bridgehead" text="la sezione chiamata «%t»"/> +<l:template name="refsection" text="la sezione chiamata «%t»"/> +<l:template name="refsect1" text="la sezione chiamata «%t»"/> +<l:template name="refsect2" text="la sezione chiamata «%t»"/> +<l:template name="refsect3" text="la sezione chiamata «%t»"/> +<l:template name="sect1" text="la sezione chiamata «%t»"/> +<l:template name="sect2" text="la sezione chiamata «%t»"/> +<l:template name="sect3" text="la sezione chiamata «%t»"/> +<l:template name="sect4" text="la sezione chiamata «%t»"/> +<l:template name="sect5" text="la sezione chiamata «%t»"/> +<l:template name="section" text="la sezione chiamata «%t»"/> +<l:template name="simplesect" text="la sezione chiamata «%t»"/> +</l:context> +<l:context name="xref-number"><l:template name="answer" text="R: %n"/> +<l:template name="appendix" text="Appendice %n"/> +<l:template name="bridgehead" text="Sezione %n"/> +<l:template name="chapter" text="Capitolo %n"/> +<l:template name="equation" text="Equazione %n"/> +<l:template name="example" text="Esempio %n"/> +<l:template name="figure" text="Figura %n"/> +<l:template name="part" text="Parte %n"/> +<l:template name="procedure" text="Procedura %n"/> +<l:template name="productionset" text="Produzione %n"/> +<l:template name="qandadiv" text="D e R %n"/> +<l:template name="qandaentry" text="D: %n"/> +<l:template name="question" text="D: %n"/> +<l:template name="sect1" text="Sezione %n"/> +<l:template name="sect2" text="Sezione %n"/> +<l:template name="sect3" text="Sezione %n"/> +<l:template name="sect4" text="Sezione %n"/> +<l:template name="sect5" text="Sezione %n"/> +<l:template name="section" text="Sezione %n"/> +<l:template name="table" text="Tabella %n"/> +</l:context> +<l:context name="xref-number-and-title"><l:template name="appendix" text="Appendice %n, %t"/> +<l:template name="bridgehead" text="Sezione %n, «%t»"/> +<l:template name="chapter" text="Capitolo %n, %t"/> +<l:template name="equation" text="Equazione %n, «%t»"/> +<l:template name="example" text="Esempio %n, «%t»"/> +<l:template name="figure" text="Figura %n, «%t»"/> +<l:template name="part" text="Parte %n, «%t»"/> +<l:template name="procedure" text="Procedura %n, «%t»"/> +<l:template name="productionset" text="Produzione %n, «%t»"/> +<l:template name="qandadiv" text="D e R %n, «%t»"/> +<l:template name="refsect1" text="la sezione chiamata «%t»"/> +<l:template name="refsect2" text="la sezione chiamata «%t»"/> +<l:template name="refsect3" text="la sezione chiamata «%t»"/> +<l:template name="refsection" text="la sezione chiamata «%t»"/> +<l:template name="sect1" text="Sezione %n, «%t»"/> +<l:template name="sect2" text="Sezione %n, «%t»"/> +<l:template name="sect3" text="Sezione %n, «%t»"/> +<l:template name="sect4" text="Sezione %n, «%t»"/> +<l:template name="sect5" text="Sezione %n, «%t»"/> +<l:template name="section" text="Sezione %n, «%t»"/> +<l:template name="simplesect" text="la sezione chiamata «%t»"/> +<l:template name="table" text="Tabella %n, «%t»"/> +</l:context> +<l:context name="authorgroup"><l:template name="sep" text=", "/> +<l:template name="sep2" text=" e "/> +<l:template name="seplast" text=", e "/> +</l:context> +<l:context name="glossary"><l:template name="see" text="Vedi %t"/> +<l:template name="seealso" text="Vedi Anche %t"/> +</l:context> +<l:context name="msgset"><l:template name="MsgAud" text="Pubblico: "/> +<l:template name="MsgLevel" text="Livello: "/> +<l:template name="MsgOrig" text="Origine: "/> +</l:context> +<l:context name="datetime"><l:template name="format" text="d/m/Y"/> +</l:context> +<l:context name="termdef"><l:template name="prefix" text="[Definition: " lang="en"/> +<l:template name="suffix" text="]" lang="en"/> +</l:context> +<l:context name="datetime-full"><l:template name="January" text="gennaio"/> +<l:template name="February" text="febbraio"/> +<l:template name="March" text="marzo"/> +<l:template name="April" text="aprile"/> +<l:template name="May" text="maggio"/> +<l:template name="June" text="giugno"/> +<l:template name="July" text="luglio"/> +<l:template name="August" text="agosto"/> +<l:template name="September" text="settembre"/> +<l:template name="October" text="ottobre"/> +<l:template name="November" text="novembre"/> +<l:template name="December" text="dicembre"/> +<l:template name="Monday" text="lunedì"/> +<l:template name="Tuesday" text="martedì"/> +<l:template name="Wednesday" text="mercoledì"/> +<l:template name="Thursday" text="giovedì"/> +<l:template name="Friday" text="venerdì"/> +<l:template name="Saturday" text="sabato"/> +<l:template name="Sunday" text="domenica"/> +</l:context> +<l:context name="datetime-abbrev"><l:template name="Jan" text="gen"/> +<l:template name="Feb" text="feb"/> +<l:template name="Mar" text="mar"/> +<l:template name="Apr" text="apr"/> +<l:template name="May" text="mag"/> +<l:template name="Jun" text="giu"/> +<l:template name="Jul" text="lug"/> +<l:template name="Aug" text="ago"/> +<l:template name="Sep" text="set"/> +<l:template name="Oct" text="ott"/> +<l:template name="Nov" text="nov"/> +<l:template name="Dec" text="dic"/> +<l:template name="Mon" text="lun"/> +<l:template name="Tue" text="mar"/> +<l:template name="Wed" text="mer"/> +<l:template name="Thu" text="gio"/> +<l:template name="Fri" text="ven"/> +<l:template name="Sat" text="sab"/> +<l:template name="Sun" text="dom"/> +</l:context> +<l:context name="htmlhelp"><l:template name="langcode" text="0x0410 Italian"/> +</l:context> +<l:context name="index"><l:template name="term-separator" text=", " lang="en"/> +<l:template name="number-separator" text=", " lang="en"/> +<l:template name="range-separator" text="-" lang="en"/> +</l:context> +<l:context name="iso690"><l:template name="lastfirst.sep" text=", " lang="en"/> +<l:template name="alt.person.two.sep" text=" – " lang="en"/> +<l:template name="alt.person.last.sep" text=" – " lang="en"/> +<l:template name="alt.person.more.sep" text=" – " lang="en"/> +<l:template name="primary.editor" text=" (ed.)" lang="en"/> +<l:template name="primary.many" text=", et al." lang="en"/> +<l:template name="primary.sep" text=". " lang="en"/> +<l:template name="submaintitle.sep" text=": " lang="en"/> +<l:template name="title.sep" text=". " lang="en"/> +<l:template name="othertitle.sep" text=", " lang="en"/> +<l:template name="medium1" text=" [" lang="en"/> +<l:template name="medium2" text="]" lang="en"/> +<l:template name="secondary.person.sep" text="; " lang="en"/> +<l:template name="secondary.sep" text=". " lang="en"/> +<l:template name="respons.sep" text=". " lang="en"/> +<l:template name="edition.sep" text=". " lang="en"/> +<l:template name="edition.serial.sep" text=", " lang="en"/> +<l:template name="issuing.range" text="-" lang="en"/> +<l:template name="issuing.div" text=", " lang="en"/> +<l:template name="issuing.sep" text=". " lang="en"/> +<l:template name="partnr.sep" text=". " lang="en"/> +<l:template name="placepubl.sep" text=": " lang="en"/> +<l:template name="publyear.sep" text=", " lang="en"/> +<l:template name="pubinfo.sep" text=". " lang="en"/> +<l:template name="spec.pubinfo.sep" text=", " lang="en"/> +<l:template name="upd.sep" text=", " lang="en"/> +<l:template name="datecit1" text=" [cited " lang="en"/> +<l:template name="datecit2" text="]" lang="en"/> +<l:template name="extent.sep" text=". " lang="en"/> +<l:template name="locs.sep" text=", " lang="en"/> +<l:template name="location.sep" text=". " lang="en"/> +<l:template name="serie.sep" text=". " lang="en"/> +<l:template name="notice.sep" text=". " lang="en"/> +<l:template name="access" text="Available " lang="en"/> +<l:template name="acctoo" text="Also available " lang="en"/> +<l:template name="onwww" text="from World Wide Web" lang="en"/> +<l:template name="oninet" text="from Internet" lang="en"/> +<l:template name="access.end" text=": " lang="en"/> +<l:template name="link1" text="<" lang="en"/> +<l:template name="link2" text=">" lang="en"/> +<l:template name="access.sep" text=". " lang="en"/> +<l:template name="isbn" text="ISBN " lang="en"/> +<l:template name="issn" text="ISSN " lang="en"/> +<l:template name="stdnum.sep" text=". " lang="en"/> +<l:template name="patcountry.sep" text=". " lang="en"/> +<l:template name="pattype.sep" text=", " lang="en"/> +<l:template name="patnum.sep" text=". " lang="en"/> +<l:template name="patdate.sep" text=". " lang="en"/> +</l:context><l:letters lang="en"><l:l i="-1"/> +<l:l i="0">Symbols</l:l> +<l:l i="10">A</l:l> +<l:l i="10">a</l:l> +<l:l i="10">À</l:l> +<l:l i="10">à</l:l> +<l:l i="10">Á</l:l> +<l:l i="10">á</l:l> +<l:l i="10">Â</l:l> +<l:l i="10">â</l:l> +<l:l i="10">Ã</l:l> +<l:l i="10">ã</l:l> +<l:l i="10">Ä</l:l> +<l:l i="10">ä</l:l> +<l:l i="10">Å</l:l> +<l:l i="10">å</l:l> +<l:l i="10">Ā</l:l> +<l:l i="10">ā</l:l> +<l:l i="10">Ă</l:l> +<l:l i="10">ă</l:l> +<l:l i="10">Ą</l:l> +<l:l i="10">ą</l:l> +<l:l i="10">Ǎ</l:l> +<l:l i="10">ǎ</l:l> +<l:l i="10">Ǟ</l:l> +<l:l i="10">ǟ</l:l> +<l:l i="10">Ǡ</l:l> +<l:l i="10">ǡ</l:l> +<l:l i="10">Ǻ</l:l> +<l:l i="10">ǻ</l:l> +<l:l i="10">Ȁ</l:l> +<l:l i="10">ȁ</l:l> +<l:l i="10">Ȃ</l:l> +<l:l i="10">ȃ</l:l> +<l:l i="10">Ȧ</l:l> +<l:l i="10">ȧ</l:l> +<l:l i="10">Ḁ</l:l> +<l:l i="10">ḁ</l:l> +<l:l i="10">ẚ</l:l> +<l:l i="10">Ạ</l:l> +<l:l i="10">ạ</l:l> +<l:l i="10">Ả</l:l> +<l:l i="10">ả</l:l> +<l:l i="10">Ấ</l:l> +<l:l i="10">ấ</l:l> +<l:l i="10">Ầ</l:l> +<l:l i="10">ầ</l:l> +<l:l i="10">Ẩ</l:l> +<l:l i="10">ẩ</l:l> +<l:l i="10">Ẫ</l:l> +<l:l i="10">ẫ</l:l> +<l:l i="10">Ậ</l:l> +<l:l i="10">ậ</l:l> +<l:l i="10">Ắ</l:l> +<l:l i="10">ắ</l:l> +<l:l i="10">Ằ</l:l> +<l:l i="10">ằ</l:l> +<l:l i="10">Ẳ</l:l> +<l:l i="10">ẳ</l:l> +<l:l i="10">Ẵ</l:l> +<l:l i="10">ẵ</l:l> +<l:l i="10">Ặ</l:l> +<l:l i="10">ặ</l:l> +<l:l i="20">B</l:l> +<l:l i="20">b</l:l> +<l:l i="20">ƀ</l:l> +<l:l i="20">Ɓ</l:l> +<l:l i="20">ɓ</l:l> +<l:l i="20">Ƃ</l:l> +<l:l i="20">ƃ</l:l> +<l:l i="20">Ḃ</l:l> +<l:l i="20">ḃ</l:l> +<l:l i="20">Ḅ</l:l> +<l:l i="20">ḅ</l:l> +<l:l i="20">Ḇ</l:l> +<l:l i="20">ḇ</l:l> +<l:l i="30">C</l:l> +<l:l i="30">c</l:l> +<l:l i="30">Ç</l:l> +<l:l i="30">ç</l:l> +<l:l i="30">Ć</l:l> +<l:l i="30">ć</l:l> +<l:l i="30">Ĉ</l:l> +<l:l i="30">ĉ</l:l> +<l:l i="30">Ċ</l:l> +<l:l i="30">ċ</l:l> +<l:l i="30">Č</l:l> +<l:l i="30">č</l:l> +<l:l i="30">Ƈ</l:l> +<l:l i="30">ƈ</l:l> +<l:l i="30">ɕ</l:l> +<l:l i="30">Ḉ</l:l> +<l:l i="30">ḉ</l:l> +<l:l i="40">D</l:l> +<l:l i="40">d</l:l> +<l:l i="40">Ď</l:l> +<l:l i="40">ď</l:l> +<l:l i="40">Đ</l:l> +<l:l i="40">đ</l:l> +<l:l i="40">Ɗ</l:l> +<l:l i="40">ɗ</l:l> +<l:l i="40">Ƌ</l:l> +<l:l i="40">ƌ</l:l> +<l:l i="40">Dž</l:l> +<l:l i="40">Dz</l:l> +<l:l i="40">ȡ</l:l> +<l:l i="40">ɖ</l:l> +<l:l i="40">Ḋ</l:l> +<l:l i="40">ḋ</l:l> +<l:l i="40">Ḍ</l:l> +<l:l i="40">ḍ</l:l> +<l:l i="40">Ḏ</l:l> +<l:l i="40">ḏ</l:l> +<l:l i="40">Ḑ</l:l> +<l:l i="40">ḑ</l:l> +<l:l i="40">Ḓ</l:l> +<l:l i="40">ḓ</l:l> +<l:l i="50">E</l:l> +<l:l i="50">e</l:l> +<l:l i="50">È</l:l> +<l:l i="50">è</l:l> +<l:l i="50">É</l:l> +<l:l i="50">é</l:l> +<l:l i="50">Ê</l:l> +<l:l i="50">ê</l:l> +<l:l i="50">Ë</l:l> +<l:l i="50">ë</l:l> +<l:l i="50">Ē</l:l> +<l:l i="50">ē</l:l> +<l:l i="50">Ĕ</l:l> +<l:l i="50">ĕ</l:l> +<l:l i="50">Ė</l:l> +<l:l i="50">ė</l:l> +<l:l i="50">Ę</l:l> +<l:l i="50">ę</l:l> +<l:l i="50">Ě</l:l> +<l:l i="50">ě</l:l> +<l:l i="50">Ȅ</l:l> +<l:l i="50">ȅ</l:l> +<l:l i="50">Ȇ</l:l> +<l:l i="50">ȇ</l:l> +<l:l i="50">Ȩ</l:l> +<l:l i="50">ȩ</l:l> +<l:l i="50">Ḕ</l:l> +<l:l i="50">ḕ</l:l> +<l:l i="50">Ḗ</l:l> +<l:l i="50">ḗ</l:l> +<l:l i="50">Ḙ</l:l> +<l:l i="50">ḙ</l:l> +<l:l i="50">Ḛ</l:l> +<l:l i="50">ḛ</l:l> +<l:l i="50">Ḝ</l:l> +<l:l i="50">ḝ</l:l> +<l:l i="50">Ẹ</l:l> +<l:l i="50">ẹ</l:l> +<l:l i="50">Ẻ</l:l> +<l:l i="50">ẻ</l:l> +<l:l i="50">Ẽ</l:l> +<l:l i="50">ẽ</l:l> +<l:l i="50">Ế</l:l> +<l:l i="50">ế</l:l> +<l:l i="50">Ề</l:l> +<l:l i="50">ề</l:l> +<l:l i="50">Ể</l:l> +<l:l i="50">ể</l:l> +<l:l i="50">Ễ</l:l> +<l:l i="50">ễ</l:l> +<l:l i="50">Ệ</l:l> +<l:l i="50">ệ</l:l> +<l:l i="60">F</l:l> +<l:l i="60">f</l:l> +<l:l i="60">Ƒ</l:l> +<l:l i="60">ƒ</l:l> +<l:l i="60">Ḟ</l:l> +<l:l i="60">ḟ</l:l> +<l:l i="70">G</l:l> +<l:l i="70">g</l:l> +<l:l i="70">Ĝ</l:l> +<l:l i="70">ĝ</l:l> +<l:l i="70">Ğ</l:l> +<l:l i="70">ğ</l:l> +<l:l i="70">Ġ</l:l> +<l:l i="70">ġ</l:l> +<l:l i="70">Ģ</l:l> +<l:l i="70">ģ</l:l> +<l:l i="70">Ɠ</l:l> +<l:l i="70">ɠ</l:l> +<l:l i="70">Ǥ</l:l> +<l:l i="70">ǥ</l:l> +<l:l i="70">Ǧ</l:l> +<l:l i="70">ǧ</l:l> +<l:l i="70">Ǵ</l:l> +<l:l i="70">ǵ</l:l> +<l:l i="70">Ḡ</l:l> +<l:l i="70">ḡ</l:l> +<l:l i="80">H</l:l> +<l:l i="80">h</l:l> +<l:l i="80">Ĥ</l:l> +<l:l i="80">ĥ</l:l> +<l:l i="80">Ħ</l:l> +<l:l i="80">ħ</l:l> +<l:l i="80">Ȟ</l:l> +<l:l i="80">ȟ</l:l> +<l:l i="80">ɦ</l:l> +<l:l i="80">Ḣ</l:l> +<l:l i="80">ḣ</l:l> +<l:l i="80">Ḥ</l:l> +<l:l i="80">ḥ</l:l> +<l:l i="80">Ḧ</l:l> +<l:l i="80">ḧ</l:l> +<l:l i="80">Ḩ</l:l> +<l:l i="80">ḩ</l:l> +<l:l i="80">Ḫ</l:l> +<l:l i="80">ḫ</l:l> +<l:l i="80">ẖ</l:l> +<l:l i="90">I</l:l> +<l:l i="90">i</l:l> +<l:l i="90">Ì</l:l> +<l:l i="90">ì</l:l> +<l:l i="90">Í</l:l> +<l:l i="90">í</l:l> +<l:l i="90">Î</l:l> +<l:l i="90">î</l:l> +<l:l i="90">Ï</l:l> +<l:l i="90">ï</l:l> +<l:l i="90">Ĩ</l:l> +<l:l i="90">ĩ</l:l> +<l:l i="90">Ī</l:l> +<l:l i="90">ī</l:l> +<l:l i="90">Ĭ</l:l> +<l:l i="90">ĭ</l:l> +<l:l i="90">Į</l:l> +<l:l i="90">į</l:l> +<l:l i="90">İ</l:l> +<l:l i="90">Ɨ</l:l> +<l:l i="90">ɨ</l:l> +<l:l i="90">Ǐ</l:l> +<l:l i="90">ǐ</l:l> +<l:l i="90">Ȉ</l:l> +<l:l i="90">ȉ</l:l> +<l:l i="90">Ȋ</l:l> +<l:l i="90">ȋ</l:l> +<l:l i="90">Ḭ</l:l> +<l:l i="90">ḭ</l:l> +<l:l i="90">Ḯ</l:l> +<l:l i="90">ḯ</l:l> +<l:l i="90">Ỉ</l:l> +<l:l i="90">ỉ</l:l> +<l:l i="90">Ị</l:l> +<l:l i="90">ị</l:l> +<l:l i="100">J</l:l> +<l:l i="100">j</l:l> +<l:l i="100">Ĵ</l:l> +<l:l i="100">ĵ</l:l> +<l:l i="100">ǰ</l:l> +<l:l i="100">ʝ</l:l> +<l:l i="110">K</l:l> +<l:l i="110">k</l:l> +<l:l i="110">Ķ</l:l> +<l:l i="110">ķ</l:l> +<l:l i="110">Ƙ</l:l> +<l:l i="110">ƙ</l:l> +<l:l i="110">Ǩ</l:l> +<l:l i="110">ǩ</l:l> +<l:l i="110">Ḱ</l:l> +<l:l i="110">ḱ</l:l> +<l:l i="110">Ḳ</l:l> +<l:l i="110">ḳ</l:l> +<l:l i="110">Ḵ</l:l> +<l:l i="110">ḵ</l:l> +<l:l i="120">L</l:l> +<l:l i="120">l</l:l> +<l:l i="120">Ĺ</l:l> +<l:l i="120">ĺ</l:l> +<l:l i="120">Ļ</l:l> +<l:l i="120">ļ</l:l> +<l:l i="120">Ľ</l:l> +<l:l i="120">ľ</l:l> +<l:l i="120">Ŀ</l:l> +<l:l i="120">ŀ</l:l> +<l:l i="120">Ł</l:l> +<l:l i="120">ł</l:l> +<l:l i="120">ƚ</l:l> +<l:l i="120">Lj</l:l> +<l:l i="120">ȴ</l:l> +<l:l i="120">ɫ</l:l> +<l:l i="120">ɬ</l:l> +<l:l i="120">ɭ</l:l> +<l:l i="120">Ḷ</l:l> +<l:l i="120">ḷ</l:l> +<l:l i="120">Ḹ</l:l> +<l:l i="120">ḹ</l:l> +<l:l i="120">Ḻ</l:l> +<l:l i="120">ḻ</l:l> +<l:l i="120">Ḽ</l:l> +<l:l i="120">ḽ</l:l> +<l:l i="130">M</l:l> +<l:l i="130">m</l:l> +<l:l i="130">ɱ</l:l> +<l:l i="130">Ḿ</l:l> +<l:l i="130">ḿ</l:l> +<l:l i="130">Ṁ</l:l> +<l:l i="130">ṁ</l:l> +<l:l i="130">Ṃ</l:l> +<l:l i="130">ṃ</l:l> +<l:l i="140">N</l:l> +<l:l i="140">n</l:l> +<l:l i="140">Ñ</l:l> +<l:l i="140">ñ</l:l> +<l:l i="140">Ń</l:l> +<l:l i="140">ń</l:l> +<l:l i="140">Ņ</l:l> +<l:l i="140">ņ</l:l> +<l:l i="140">Ň</l:l> +<l:l i="140">ň</l:l> +<l:l i="140">Ɲ</l:l> +<l:l i="140">ɲ</l:l> +<l:l i="140">ƞ</l:l> +<l:l i="140">Ƞ</l:l> +<l:l i="140">Nj</l:l> +<l:l i="140">Ǹ</l:l> +<l:l i="140">ǹ</l:l> +<l:l i="140">ȵ</l:l> +<l:l i="140">ɳ</l:l> +<l:l i="140">Ṅ</l:l> +<l:l i="140">ṅ</l:l> +<l:l i="140">Ṇ</l:l> +<l:l i="140">ṇ</l:l> +<l:l i="140">Ṉ</l:l> +<l:l i="140">ṉ</l:l> +<l:l i="140">Ṋ</l:l> +<l:l i="140">ṋ</l:l> +<l:l i="150">O</l:l> +<l:l i="150">o</l:l> +<l:l i="150">Ò</l:l> +<l:l i="150">ò</l:l> +<l:l i="150">Ó</l:l> +<l:l i="150">ó</l:l> +<l:l i="150">Ô</l:l> +<l:l i="150">ô</l:l> +<l:l i="150">Õ</l:l> +<l:l i="150">õ</l:l> +<l:l i="150">Ö</l:l> +<l:l i="150">ö</l:l> +<l:l i="150">Ø</l:l> +<l:l i="150">ø</l:l> +<l:l i="150">Ō</l:l> +<l:l i="150">ō</l:l> +<l:l i="150">Ŏ</l:l> +<l:l i="150">ŏ</l:l> +<l:l i="150">Ő</l:l> +<l:l i="150">ő</l:l> +<l:l i="150">Ɵ</l:l> +<l:l i="150">Ơ</l:l> +<l:l i="150">ơ</l:l> +<l:l i="150">Ǒ</l:l> +<l:l i="150">ǒ</l:l> +<l:l i="150">Ǫ</l:l> +<l:l i="150">ǫ</l:l> +<l:l i="150">Ǭ</l:l> +<l:l i="150">ǭ</l:l> +<l:l i="150">Ǿ</l:l> +<l:l i="150">ǿ</l:l> +<l:l i="150">Ȍ</l:l> +<l:l i="150">ȍ</l:l> +<l:l i="150">Ȏ</l:l> +<l:l i="150">ȏ</l:l> +<l:l i="150">Ȫ</l:l> +<l:l i="150">ȫ</l:l> +<l:l i="150">Ȭ</l:l> +<l:l i="150">ȭ</l:l> +<l:l i="150">Ȯ</l:l> +<l:l i="150">ȯ</l:l> +<l:l i="150">Ȱ</l:l> +<l:l i="150">ȱ</l:l> +<l:l i="150">Ṍ</l:l> +<l:l i="150">ṍ</l:l> +<l:l i="150">Ṏ</l:l> +<l:l i="150">ṏ</l:l> +<l:l i="150">Ṑ</l:l> +<l:l i="150">ṑ</l:l> +<l:l i="150">Ṓ</l:l> +<l:l i="150">ṓ</l:l> +<l:l i="150">Ọ</l:l> +<l:l i="150">ọ</l:l> +<l:l i="150">Ỏ</l:l> +<l:l i="150">ỏ</l:l> +<l:l i="150">Ố</l:l> +<l:l i="150">ố</l:l> +<l:l i="150">Ồ</l:l> +<l:l i="150">ồ</l:l> +<l:l i="150">Ổ</l:l> +<l:l i="150">ổ</l:l> +<l:l i="150">Ỗ</l:l> +<l:l i="150">ỗ</l:l> +<l:l i="150">Ộ</l:l> +<l:l i="150">ộ</l:l> +<l:l i="150">Ớ</l:l> +<l:l i="150">ớ</l:l> +<l:l i="150">Ờ</l:l> +<l:l i="150">ờ</l:l> +<l:l i="150">Ở</l:l> +<l:l i="150">ở</l:l> +<l:l i="150">Ỡ</l:l> +<l:l i="150">ỡ</l:l> +<l:l i="150">Ợ</l:l> +<l:l i="150">ợ</l:l> +<l:l i="160">P</l:l> +<l:l i="160">p</l:l> +<l:l i="160">Ƥ</l:l> +<l:l i="160">ƥ</l:l> +<l:l i="160">Ṕ</l:l> +<l:l i="160">ṕ</l:l> +<l:l i="160">Ṗ</l:l> +<l:l i="160">ṗ</l:l> +<l:l i="170">Q</l:l> +<l:l i="170">q</l:l> +<l:l i="170">ʠ</l:l> +<l:l i="180">R</l:l> +<l:l i="180">r</l:l> +<l:l i="180">Ŕ</l:l> +<l:l i="180">ŕ</l:l> +<l:l i="180">Ŗ</l:l> +<l:l i="180">ŗ</l:l> +<l:l i="180">Ř</l:l> +<l:l i="180">ř</l:l> +<l:l i="180">Ȑ</l:l> +<l:l i="180">ȑ</l:l> +<l:l i="180">Ȓ</l:l> +<l:l i="180">ȓ</l:l> +<l:l i="180">ɼ</l:l> +<l:l i="180">ɽ</l:l> +<l:l i="180">ɾ</l:l> +<l:l i="180">Ṙ</l:l> +<l:l i="180">ṙ</l:l> +<l:l i="180">Ṛ</l:l> +<l:l i="180">ṛ</l:l> +<l:l i="180">Ṝ</l:l> +<l:l i="180">ṝ</l:l> +<l:l i="180">Ṟ</l:l> +<l:l i="180">ṟ</l:l> +<l:l i="190">S</l:l> +<l:l i="190">s</l:l> +<l:l i="190">Ś</l:l> +<l:l i="190">ś</l:l> +<l:l i="190">Ŝ</l:l> +<l:l i="190">ŝ</l:l> +<l:l i="190">Ş</l:l> +<l:l i="190">ş</l:l> +<l:l i="190">Š</l:l> +<l:l i="190">š</l:l> +<l:l i="190">Ș</l:l> +<l:l i="190">ș</l:l> +<l:l i="190">ʂ</l:l> +<l:l i="190">Ṡ</l:l> +<l:l i="190">ṡ</l:l> +<l:l i="190">Ṣ</l:l> +<l:l i="190">ṣ</l:l> +<l:l i="190">Ṥ</l:l> +<l:l i="190">ṥ</l:l> +<l:l i="190">Ṧ</l:l> +<l:l i="190">ṧ</l:l> +<l:l i="190">Ṩ</l:l> +<l:l i="190">ṩ</l:l> +<l:l i="200">T</l:l> +<l:l i="200">t</l:l> +<l:l i="200">Ţ</l:l> +<l:l i="200">ţ</l:l> +<l:l i="200">Ť</l:l> +<l:l i="200">ť</l:l> +<l:l i="200">Ŧ</l:l> +<l:l i="200">ŧ</l:l> +<l:l i="200">ƫ</l:l> +<l:l i="200">Ƭ</l:l> +<l:l i="200">ƭ</l:l> +<l:l i="200">Ʈ</l:l> +<l:l i="200">ʈ</l:l> +<l:l i="200">Ț</l:l> +<l:l i="200">ț</l:l> +<l:l i="200">ȶ</l:l> +<l:l i="200">Ṫ</l:l> +<l:l i="200">ṫ</l:l> +<l:l i="200">Ṭ</l:l> +<l:l i="200">ṭ</l:l> +<l:l i="200">Ṯ</l:l> +<l:l i="200">ṯ</l:l> +<l:l i="200">Ṱ</l:l> +<l:l i="200">ṱ</l:l> +<l:l i="200">ẗ</l:l> +<l:l i="210">U</l:l> +<l:l i="210">u</l:l> +<l:l i="210">Ù</l:l> +<l:l i="210">ù</l:l> +<l:l i="210">Ú</l:l> +<l:l i="210">ú</l:l> +<l:l i="210">Û</l:l> +<l:l i="210">û</l:l> +<l:l i="210">Ü</l:l> +<l:l i="210">ü</l:l> +<l:l i="210">Ũ</l:l> +<l:l i="210">ũ</l:l> +<l:l i="210">Ū</l:l> +<l:l i="210">ū</l:l> +<l:l i="210">Ŭ</l:l> +<l:l i="210">ŭ</l:l> +<l:l i="210">Ů</l:l> +<l:l i="210">ů</l:l> +<l:l i="210">Ű</l:l> +<l:l i="210">ű</l:l> +<l:l i="210">Ų</l:l> +<l:l i="210">ų</l:l> +<l:l i="210">Ư</l:l> +<l:l i="210">ư</l:l> +<l:l i="210">Ǔ</l:l> +<l:l i="210">ǔ</l:l> +<l:l i="210">Ǖ</l:l> +<l:l i="210">ǖ</l:l> +<l:l i="210">Ǘ</l:l> +<l:l i="210">ǘ</l:l> +<l:l i="210">Ǚ</l:l> +<l:l i="210">ǚ</l:l> +<l:l i="210">Ǜ</l:l> +<l:l i="210">ǜ</l:l> +<l:l i="210">Ȕ</l:l> +<l:l i="210">ȕ</l:l> +<l:l i="210">Ȗ</l:l> +<l:l i="210">ȗ</l:l> +<l:l i="210">Ṳ</l:l> +<l:l i="210">ṳ</l:l> +<l:l i="210">Ṵ</l:l> +<l:l i="210">ṵ</l:l> +<l:l i="210">Ṷ</l:l> +<l:l i="210">ṷ</l:l> +<l:l i="210">Ṹ</l:l> +<l:l i="210">ṹ</l:l> +<l:l i="210">Ṻ</l:l> +<l:l i="210">ṻ</l:l> +<l:l i="210">Ụ</l:l> +<l:l i="210">ụ</l:l> +<l:l i="210">Ủ</l:l> +<l:l i="210">ủ</l:l> +<l:l i="210">Ứ</l:l> +<l:l i="210">ứ</l:l> +<l:l i="210">Ừ</l:l> +<l:l i="210">ừ</l:l> +<l:l i="210">Ử</l:l> +<l:l i="210">ử</l:l> +<l:l i="210">Ữ</l:l> +<l:l i="210">ữ</l:l> +<l:l i="210">Ự</l:l> +<l:l i="210">ự</l:l> +<l:l i="220">V</l:l> +<l:l i="220">v</l:l> +<l:l i="220">Ʋ</l:l> +<l:l i="220">ʋ</l:l> +<l:l i="220">Ṽ</l:l> +<l:l i="220">ṽ</l:l> +<l:l i="220">Ṿ</l:l> +<l:l i="220">ṿ</l:l> +<l:l i="230">W</l:l> +<l:l i="230">w</l:l> +<l:l i="230">Ŵ</l:l> +<l:l i="230">ŵ</l:l> +<l:l i="230">Ẁ</l:l> +<l:l i="230">ẁ</l:l> +<l:l i="230">Ẃ</l:l> +<l:l i="230">ẃ</l:l> +<l:l i="230">Ẅ</l:l> +<l:l i="230">ẅ</l:l> +<l:l i="230">Ẇ</l:l> +<l:l i="230">ẇ</l:l> +<l:l i="230">Ẉ</l:l> +<l:l i="230">ẉ</l:l> +<l:l i="230">ẘ</l:l> +<l:l i="240">X</l:l> +<l:l i="240">x</l:l> +<l:l i="240">Ẋ</l:l> +<l:l i="240">ẋ</l:l> +<l:l i="240">Ẍ</l:l> +<l:l i="240">ẍ</l:l> +<l:l i="250">Y</l:l> +<l:l i="250">y</l:l> +<l:l i="250">Ý</l:l> +<l:l i="250">ý</l:l> +<l:l i="250">ÿ</l:l> +<l:l i="250">Ÿ</l:l> +<l:l i="250">Ŷ</l:l> +<l:l i="250">ŷ</l:l> +<l:l i="250">Ƴ</l:l> +<l:l i="250">ƴ</l:l> +<l:l i="250">Ȳ</l:l> +<l:l i="250">ȳ</l:l> +<l:l i="250">Ẏ</l:l> +<l:l i="250">ẏ</l:l> +<l:l i="250">ẙ</l:l> +<l:l i="250">Ỳ</l:l> +<l:l i="250">ỳ</l:l> +<l:l i="250">Ỵ</l:l> +<l:l i="250">ỵ</l:l> +<l:l i="250">Ỷ</l:l> +<l:l i="250">ỷ</l:l> +<l:l i="250">Ỹ</l:l> +<l:l i="250">ỹ</l:l> +<l:l i="260">Z</l:l> +<l:l i="260">z</l:l> +<l:l i="260">Ź</l:l> +<l:l i="260">ź</l:l> +<l:l i="260">Ż</l:l> +<l:l i="260">ż</l:l> +<l:l i="260">Ž</l:l> +<l:l i="260">ž</l:l> +<l:l i="260">Ƶ</l:l> +<l:l i="260">ƶ</l:l> +<l:l i="260">Ȥ</l:l> +<l:l i="260">ȥ</l:l> +<l:l i="260">ʐ</l:l> +<l:l i="260">ʑ</l:l> +<l:l i="260">Ẑ</l:l> +<l:l i="260">ẑ</l:l> +<l:l i="260">Ẓ</l:l> +<l:l i="260">ẓ</l:l> +<l:l i="260">Ẕ</l:l> +<l:l i="260">ẕ</l:l> +</l:letters> +</l:l10n> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/l10n.dtd b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/l10n.dtd new file mode 100644 index 000000000..1d6f8361e --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/l10n.dtd @@ -0,0 +1,63 @@ +<!ENTITY % prefix "l"> + +<!ENTITY % xmlns "xmlns:%prefix;"> +<!ENTITY % uri "'http://docbook.sourceforge.net/xmlns/l10n/1.0'"> + +<!ENTITY % i18n "%prefix;:i18n"> +<!ENTITY % l10n "%prefix;:l10n"> +<!ENTITY % gentext "%prefix;:gentext"> +<!ENTITY % dingbat "%prefix;:dingbat"> +<!ENTITY % context "%prefix;:context"> +<!ENTITY % template "%prefix;:template"> +<!ENTITY % letters "%prefix;:letters"> +<!ENTITY % l "%prefix;:l"> +<!ENTITY % lang "lang NMTOKEN #IMPLIED"> + +<!ELEMENT %i18n; ((%l10n;)+)> +<!ATTLIST %i18n; + %xmlns; CDATA #FIXED %uri; +> + +<!ELEMENT %l10n; (%gentext;|%dingbat;|%context;|%letters;)*> +<!ATTLIST %l10n; + %xmlns; CDATA #FIXED %uri; + language CDATA #REQUIRED + english-language-name CDATA #IMPLIED +> + +<!ELEMENT %gentext; EMPTY> +<!ATTLIST %gentext; + %lang; + key CDATA #REQUIRED + text CDATA #REQUIRED +> + +<!ELEMENT %dingbat; EMPTY> +<!ATTLIST %dingbat; + %lang; + key CDATA #REQUIRED + text CDATA #REQUIRED +> + +<!ELEMENT %context; ((%template;)+)> +<!ATTLIST %context; + name CDATA #REQUIRED +> + +<!ELEMENT %template; EMPTY> +<!ATTLIST %template; + %lang; + name CDATA #REQUIRED + text CDATA #REQUIRED + style CDATA #IMPLIED +> + +<!ELEMENT %letters; ((%l;)+)> +<!ATTLIST %letters; + %lang; +> + +<!ELEMENT %l; (#PCDATA)> +<!ATTLIST %l; + i CDATA #REQUIRED +> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/l10n.xml b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/l10n.xml new file mode 100644 index 000000000..47f68f233 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/l10n.xml @@ -0,0 +1,19 @@ +<?xml version='1.0'?> +<!DOCTYPE l:i18n SYSTEM "l10n.dtd" [ +<!ENTITY de SYSTEM "de.xml"> +<!ENTITY en SYSTEM "en.xml"> +<!ENTITY es SYSTEM "es.xml"> +<!ENTITY fr SYSTEM "fr.xml"> +<!ENTITY it SYSTEM "it.xml"> +<!ENTITY zh_cn SYSTEM "zh_cn.xml"> +<!ENTITY zh_tw SYSTEM "zh_tw.xml"> +]> +<l:i18n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0"> +&de; +&en; +&es; +&fr; +⁢ +&zh_cn; +&zh_tw; +</l:i18n> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/l10n.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/l10n.xsl new file mode 100644 index 000000000..62d6dcebc --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/l10n.xsl @@ -0,0 +1,441 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" + exclude-result-prefixes="l" + version='1.0'> + +<!-- ******************************************************************** + $Id$ + ******************************************************************** + + This file is part of the XSL DocBook Stylesheet distribution. + See ../README or http://docbook.sf.net/release/xsl/current/ for + copyright and other information. + + This file contains localization templates (for internationalization) + ******************************************************************** --> + +<xsl:param name="l10n.xml" select="document('../common/l10n.xml')"/> +<xsl:param name="local.l10n.xml" select="document('')"/> + +<xsl:template name="l10n.language"> + <xsl:param name="target" select="."/> + <xsl:param name="xref-context" select="false()"/> + + <xsl:variable name="mc-language"> + <xsl:choose> + <xsl:when test="$l10n.gentext.language != ''"> + <xsl:value-of select="$l10n.gentext.language"/> + </xsl:when> + + <xsl:when test="$xref-context or $l10n.gentext.use.xref.language != 0"> + <!-- can't do this one step: attributes are unordered! --> + <xsl:variable name="lang-scope" + select="$target/ancestor-or-self::* + [@lang or @xml:lang][1]"/> + <xsl:variable name="lang-attr" + select="($lang-scope/@lang | $lang-scope/@xml:lang)[1]"/> + <xsl:choose> + <xsl:when test="string($lang-attr) = ''"> + <xsl:value-of select="$l10n.gentext.default.language"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$lang-attr"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + + <xsl:otherwise> + <!-- can't do this one step: attributes are unordered! --> + <xsl:variable name="lang-scope" + select="$target/ancestor-or-self::* + [@lang or @xml:lang][1]"/> + <xsl:variable name="lang-attr" + select="($lang-scope/@lang | $lang-scope/@xml:lang)[1]"/> + + <xsl:choose> + <xsl:when test="string($lang-attr) = ''"> + <xsl:value-of select="$l10n.gentext.default.language"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$lang-attr"/> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="language" select="translate($mc-language, + 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', + 'abcdefghijklmnopqrstuvwxyz')"/> + + <xsl:variable name="adjusted.language"> + <xsl:choose> + <xsl:when test="contains($language,'-')"> + <xsl:value-of select="substring-before($language,'-')"/> + <xsl:text>_</xsl:text> + <xsl:value-of select="substring-after($language,'-')"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$language"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$l10n.xml/l:i18n/l:l10n[@language=$adjusted.language]"> + <xsl:value-of select="$adjusted.language"/> + </xsl:when> + <!-- try just the lang code without country --> + <xsl:when test="$l10n.xml/l:i18n/l:l10n[@language=substring-before($adjusted.language,'_')]"> + <xsl:value-of select="substring-before($adjusted.language,'_')"/> + </xsl:when> + <!-- or use the default --> + <xsl:otherwise> + <xsl:message> + <xsl:text>No localization exists for "</xsl:text> + <xsl:value-of select="$adjusted.language"/> + <xsl:text>" or "</xsl:text> + <xsl:value-of select="substring-before($adjusted.language,'_')"/> + <xsl:text>". Using default "</xsl:text> + <xsl:value-of select="$l10n.gentext.default.language"/> + <xsl:text>".</xsl:text> + </xsl:message> + <xsl:value-of select="$l10n.gentext.default.language"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="language.attribute"> + <xsl:param name="node" select="."/> + + <xsl:variable name="language"> + <xsl:choose> + <xsl:when test="$l10n.gentext.language != ''"> + <xsl:value-of select="$l10n.gentext.language"/> + </xsl:when> + + <xsl:otherwise> + <!-- can't do this one step: attributes are unordered! --> + <xsl:variable name="lang-scope" + select="$node/ancestor-or-self::* + [@lang or @xml:lang][1]"/> + <xsl:variable name="lang-attr" + select="($lang-scope/@lang | $lang-scope/@xml:lang)[1]"/> + + <xsl:choose> + <xsl:when test="string($lang-attr) = ''"> + <xsl:value-of select="$l10n.gentext.default.language"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$lang-attr"/> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:if test="$language != ''"> + <xsl:attribute name="lang"> + <xsl:choose> + <xsl:when test="$l10n.lang.value.rfc.compliant != 0"> + <xsl:value-of select="translate($language, '_', '-')"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$language"/> + </xsl:otherwise> + </xsl:choose> + </xsl:attribute> + </xsl:if> + + <!-- FIXME: This is sort of hack, but it was the easiest way to add at least partial support for dir attribute --> + <xsl:copy-of select="ancestor-or-self::*[@dir][1]/@dir"/> +</xsl:template> + +<xsl:template name="gentext"> + <xsl:param name="key" select="local-name(.)"/> + <xsl:param name="lang"> + <xsl:call-template name="l10n.language"/> + </xsl:param> + + <xsl:variable name="local.l10n.gentext" + select="($local.l10n.xml//l:i18n/l:l10n[@language=$lang]/l:gentext[@key=$key])[1]"/> + + <xsl:variable name="l10n.gentext" + select="($l10n.xml/l:i18n/l:l10n[@language=$lang]/l:gentext[@key=$key])[1]"/> + + <xsl:choose> + <xsl:when test="$local.l10n.gentext"> + <xsl:value-of select="$local.l10n.gentext/@text"/> + </xsl:when> + <xsl:when test="$l10n.gentext"> + <xsl:value-of select="$l10n.gentext/@text"/> + </xsl:when> + <xsl:otherwise> + <xsl:message> + <xsl:text>No "</xsl:text> + <xsl:value-of select="$lang"/> + <xsl:text>" localization of "</xsl:text> + <xsl:value-of select="$key"/> + <xsl:text>" exists</xsl:text> + <xsl:choose> + <xsl:when test="$lang = 'en'"> + <xsl:text>.</xsl:text> + </xsl:when> + <xsl:otherwise> + <xsl:text>; using "en".</xsl:text> + </xsl:otherwise> + </xsl:choose> + </xsl:message> + + <xsl:value-of select="($l10n.xml/l:i18n/l:l10n[@language='en']/l:gentext[@key=$key])[1]/@text"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="gentext.element.name"> + <xsl:param name="element.name" select="local-name(.)"/> + <xsl:param name="lang"> + <xsl:call-template name="l10n.language"/> + </xsl:param> + + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="$element.name"/> + <xsl:with-param name="lang" select="$lang"/> + </xsl:call-template> +</xsl:template> + +<xsl:template name="gentext.space"> + <xsl:text> </xsl:text> +</xsl:template> + +<xsl:template name="gentext.edited.by"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'Editedby'"/> + </xsl:call-template> +</xsl:template> + +<xsl:template name="gentext.by"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'by'"/> + </xsl:call-template> +</xsl:template> + +<xsl:template name="gentext.dingbat"> + <xsl:param name="dingbat">bullet</xsl:param> + <xsl:param name="lang"> + <xsl:call-template name="l10n.language"/> + </xsl:param> + + <xsl:variable name="local.l10n.dingbat" + select="($local.l10n.xml//l:i18n/l:l10n[@language=$lang]/l:dingbat[@key=$dingbat])[1]"/> + + <xsl:variable name="l10n.dingbat" + select="($l10n.xml/l:i18n/l:l10n[@language=$lang]/l:dingbat[@key=$dingbat])[1]"/> + + <xsl:choose> + <xsl:when test="$local.l10n.dingbat"> + <xsl:value-of select="$local.l10n.dingbat/@text"/> + </xsl:when> + <xsl:when test="$l10n.dingbat"> + <xsl:value-of select="$l10n.dingbat/@text"/> + </xsl:when> + <xsl:otherwise> + <xsl:message> + <xsl:text>No "</xsl:text> + <xsl:value-of select="$lang"/> + <xsl:text>" localization of dingbat </xsl:text> + <xsl:value-of select="$dingbat"/> + <xsl:text> exists; using "en".</xsl:text> + </xsl:message> + + <xsl:value-of select="($l10n.xml/l:i18n/l:l10n[@language='en']/l:dingbat[@key=$dingbat])[1]/@text"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="gentext.startquote"> + <xsl:call-template name="gentext.dingbat"> + <xsl:with-param name="dingbat">startquote</xsl:with-param> + </xsl:call-template> +</xsl:template> + +<xsl:template name="gentext.endquote"> + <xsl:call-template name="gentext.dingbat"> + <xsl:with-param name="dingbat">endquote</xsl:with-param> + </xsl:call-template> +</xsl:template> + +<xsl:template name="gentext.nestedstartquote"> + <xsl:call-template name="gentext.dingbat"> + <xsl:with-param name="dingbat">nestedstartquote</xsl:with-param> + </xsl:call-template> +</xsl:template> + +<xsl:template name="gentext.nestedendquote"> + <xsl:call-template name="gentext.dingbat"> + <xsl:with-param name="dingbat">nestedendquote</xsl:with-param> + </xsl:call-template> +</xsl:template> + +<xsl:template name="gentext.nav.prev"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'nav-prev'"/> + </xsl:call-template> +</xsl:template> + +<xsl:template name="gentext.nav.next"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'nav-next'"/> + </xsl:call-template> +</xsl:template> + +<xsl:template name="gentext.nav.home"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'nav-home'"/> + </xsl:call-template> +</xsl:template> + +<xsl:template name="gentext.nav.up"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'nav-up'"/> + </xsl:call-template> +</xsl:template> + +<!-- ============================================================ --> + +<xsl:template name="gentext.template"> + <xsl:param name="context" select="'default'"/> + <xsl:param name="name" select="'default'"/> + <xsl:param name="origname" select="$name"/> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="referrer"/> + <xsl:param name="lang"> + <xsl:call-template name="l10n.language"/> + </xsl:param> + <xsl:param name="verbose" select="1"/> + + <xsl:variable name="local.localization.node" + select="($local.l10n.xml//l:i18n/l:l10n[@language=$lang])[1]"/> + + <xsl:variable name="localization.node" + select="($l10n.xml/l:i18n/l:l10n[@language=$lang])[1]"/> + + <xsl:if test="count($localization.node) = 0 + and count($local.localization.node) = 0 + and $verbose != 0"> + <xsl:message> + <xsl:text>No "</xsl:text> + <xsl:value-of select="$lang"/> + <xsl:text>" localization exists.</xsl:text> + </xsl:message> + </xsl:if> + + <xsl:variable name="local.context.node" + select="$local.localization.node/l:context[@name=$context]"/> + + <xsl:variable name="context.node" + select="$localization.node/l:context[@name=$context]"/> + + <xsl:if test="count($context.node) = 0 + and count($local.context.node) = 0 + and $verbose != 0"> + <xsl:message> + <xsl:text>No context named "</xsl:text> + <xsl:value-of select="$context"/> + <xsl:text>" exists in the "</xsl:text> + <xsl:value-of select="$lang"/> + <xsl:text>" localization.</xsl:text> + </xsl:message> + </xsl:if> + + <xsl:variable name="local.template.node" + select="($local.context.node/l:template[@name=$name + and @style + and @style=$xrefstyle] + |$local.context.node/l:template[@name=$name + and not(@style)])[1]"/> + + <xsl:variable name="template.node" + select="($context.node/l:template[@name=$name + and @style + and @style=$xrefstyle] + |$context.node/l:template[@name=$name + and not(@style)])[1]"/> + + <xsl:choose> + <xsl:when test="$local.template.node/@text"> + <xsl:value-of select="$local.template.node/@text"/> + </xsl:when> + <xsl:when test="$template.node/@text"> + <xsl:value-of select="$template.node/@text"/> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="contains($name, '/')"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="$context"/> + <xsl:with-param name="name" select="substring-after($name, '/')"/> + <xsl:with-param name="origname" select="$origname"/> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + <xsl:with-param name="lang" select="$lang"/> + <xsl:with-param name="verbose" select="$verbose"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$verbose = 0"> + <!-- silence --> + </xsl:when> + <xsl:otherwise> + <xsl:message> + <xsl:text>No template for "</xsl:text> + <xsl:value-of select="$origname"/> + <xsl:text>" (or any of its leaves) exists +in the context named "</xsl:text> + <xsl:value-of select="$context"/> + <xsl:text>" in the "</xsl:text> + <xsl:value-of select="$lang"/> + <xsl:text>" localization.</xsl:text> + </xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- silently test if a gentext template exists --> + +<xsl:template name="gentext.template.exists"> + <xsl:param name="context" select="'default'"/> + <xsl:param name="name" select="'default'"/> + <xsl:param name="origname" select="$name"/> + <xsl:param name="purpose"/> + <xsl:param name="xrefstyle"/> + <xsl:param name="referrer"/> + <xsl:param name="lang"> + <xsl:call-template name="l10n.language"/> + </xsl:param> + + <xsl:variable name="template"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="$context"/> + <xsl:with-param name="name" select="$name"/> + <xsl:with-param name="origname" select="$origname"/> + <xsl:with-param name="purpose" select="$purpose"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="referrer" select="$referrer"/> + <xsl:with-param name="lang" select="$lang"/> + <xsl:with-param name="verbose" select="0"/> + </xsl:call-template> + </xsl:variable> + + <xsl:choose> + <xsl:when test="string-length($template) != 0">1</xsl:when> + <xsl:otherwise>0</xsl:otherwise> + </xsl:choose> +</xsl:template> + +</xsl:stylesheet> + diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/labels.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/labels.xsl new file mode 100644 index 000000000..98050d012 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/labels.xsl @@ -0,0 +1,850 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" + exclude-result-prefixes="doc" + version='1.0'> + +<!-- ******************************************************************** + $Id$ + ******************************************************************** + + This file is part of the XSL DocBook Stylesheet distribution. + See ../README or http://docbook.sf.net/release/xsl/current/ for + copyright and other information. + + ******************************************************************** --> + +<!-- ==================================================================== --> + +<!-- label markup --> + +<doc:mode mode="label.markup" xmlns=""> +<refpurpose>Provides access to element labels</refpurpose> +<refdescription id="label.markup-desc"> +<para>Processing an element in the +<literal role="mode">label.markup</literal> mode produces the +element label.</para> +<para>Trailing punctuation is not added to the label. +</para> +</refdescription> +</doc:mode> + +<xsl:template match="*" mode="intralabel.punctuation"> + <xsl:text>.</xsl:text> +</xsl:template> + +<xsl:template match="*" mode="label.markup"> + <xsl:param name="verbose" select="1"/> + <xsl:if test="$verbose"> + <xsl:message> + <xsl:text>Request for label of unexpected element: </xsl:text> + <xsl:value-of select="local-name(.)"/> + </xsl:message> + </xsl:if> +</xsl:template> + +<xsl:template match="set|book" mode="label.markup"> + <xsl:if test="@label"> + <xsl:value-of select="@label"/> + </xsl:if> +</xsl:template> + +<xsl:template match="part" mode="label.markup"> + <xsl:choose> + <xsl:when test="@label"> + <xsl:value-of select="@label"/> + </xsl:when> + <xsl:when test="string($part.autolabel) != 0"> + <xsl:variable name="format"> + <xsl:call-template name="autolabel.format"> + <xsl:with-param name="format" select="$part.autolabel"/> + </xsl:call-template> + </xsl:variable> + <xsl:number from="book" count="part" format="{$format}"/> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template match="partintro" mode="label.markup"> + <!-- no label --> +</xsl:template> + +<xsl:template match="preface" mode="label.markup"> + <xsl:choose> + <xsl:when test="@label"> + <xsl:value-of select="@label"/> + </xsl:when> + <xsl:when test="string($preface.autolabel) != 0"> + <xsl:if test="$component.label.includes.part.label != 0 and + ancestor::part"> + <xsl:variable name="part.label"> + <xsl:apply-templates select="ancestor::part" + mode="label.markup"/> + </xsl:variable> + <xsl:if test="$part.label != ''"> + <xsl:value-of select="$part.label"/> + <xsl:apply-templates select="ancestor::part" + mode="intralabel.punctuation"/> + </xsl:if> + </xsl:if> + <xsl:variable name="format"> + <xsl:call-template name="autolabel.format"> + <xsl:with-param name="format" select="$preface.autolabel"/> + </xsl:call-template> + </xsl:variable> + <xsl:choose> + <xsl:when test="$label.from.part != 0 and ancestor::part"> + <xsl:number from="part" count="preface" format="{$format}" level="any"/> + </xsl:when> + <xsl:otherwise> + <xsl:number from="book" count="preface" format="{$format}" level="any"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template match="chapter" mode="label.markup"> + <xsl:choose> + <xsl:when test="@label"> + <xsl:value-of select="@label"/> + </xsl:when> + <xsl:when test="string($chapter.autolabel) != 0"> + <xsl:if test="$component.label.includes.part.label != 0 and + ancestor::part"> + <xsl:variable name="part.label"> + <xsl:apply-templates select="ancestor::part" + mode="label.markup"/> + </xsl:variable> + <xsl:if test="$part.label != ''"> + <xsl:value-of select="$part.label"/> + <xsl:apply-templates select="ancestor::part" + mode="intralabel.punctuation"/> + </xsl:if> + </xsl:if> + <xsl:variable name="format"> + <xsl:call-template name="autolabel.format"> + <xsl:with-param name="format" select="$chapter.autolabel"/> + </xsl:call-template> + </xsl:variable> + <xsl:choose> + <xsl:when test="$label.from.part != 0 and ancestor::part"> + <xsl:number from="part" count="chapter" format="{$format}" level="any"/> + </xsl:when> + <xsl:otherwise> + <xsl:number from="book" count="chapter" format="{$format}" level="any"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template match="appendix" mode="label.markup"> + <xsl:choose> + <xsl:when test="@label"> + <xsl:value-of select="@label"/> + </xsl:when> + <xsl:when test="string($appendix.autolabel) != 0"> + <xsl:if test="$component.label.includes.part.label != 0 and + ancestor::part"> + <xsl:variable name="part.label"> + <xsl:apply-templates select="ancestor::part" + mode="label.markup"/> + </xsl:variable> + <xsl:if test="$part.label != ''"> + <xsl:value-of select="$part.label"/> + <xsl:apply-templates select="ancestor::part" + mode="intralabel.punctuation"/> + </xsl:if> + </xsl:if> + <xsl:variable name="format"> + <xsl:call-template name="autolabel.format"> + <xsl:with-param name="format" select="$appendix.autolabel"/> + </xsl:call-template> + </xsl:variable> + <xsl:choose> + <xsl:when test="$label.from.part != 0 and ancestor::part"> + <xsl:number from="part" count="appendix" format="{$format}" level="any"/> + </xsl:when> + <xsl:otherwise> + <xsl:number from="book|article" + count="appendix" format="{$format}" level="any"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template match="article" mode="label.markup"> + <xsl:if test="@label"> + <xsl:value-of select="@label"/> + </xsl:if> +</xsl:template> + +<xsl:template match="dedication|colophon" mode="label.markup"> + <xsl:if test="@label"> + <xsl:value-of select="@label"/> + </xsl:if> +</xsl:template> + +<xsl:template match="reference" mode="label.markup"> + <xsl:choose> + <xsl:when test="@label"> + <xsl:value-of select="@label"/> + </xsl:when> + <xsl:when test="string($reference.autolabel) != 0"> + <xsl:variable name="format"> + <xsl:call-template name="autolabel.format"> + <xsl:with-param name="format" select="$reference.autolabel"/> + </xsl:call-template> + </xsl:variable> + <xsl:number from="book" count="reference" format="{$format}" level="any"/> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template match="refentry" mode="label.markup"> + <xsl:if test="@label"> + <xsl:value-of select="@label"/> + </xsl:if> +</xsl:template> + +<xsl:template match="section" mode="label.markup"> + <!-- if this is a nested section, label the parent --> + <xsl:if test="local-name(..) = 'section'"> + <xsl:variable name="parent.section.label"> + <xsl:call-template name="label.this.section"> + <xsl:with-param name="section" select=".."/> + </xsl:call-template> + </xsl:variable> + <xsl:if test="$parent.section.label != '0'"> + <xsl:apply-templates select=".." mode="label.markup"/> + <xsl:apply-templates select=".." mode="intralabel.punctuation"/> + </xsl:if> + </xsl:if> + + <!-- if the parent is a component, maybe label that too --> + <xsl:variable name="parent.is.component"> + <xsl:call-template name="is.component"> + <xsl:with-param name="node" select=".."/> + </xsl:call-template> + </xsl:variable> + + <!-- does this section get labelled? --> + <xsl:variable name="label"> + <xsl:call-template name="label.this.section"> + <xsl:with-param name="section" select="."/> + </xsl:call-template> + </xsl:variable> + + <xsl:if test="$section.label.includes.component.label != 0 + and $parent.is.component != 0"> + <xsl:variable name="parent.label"> + <xsl:apply-templates select=".." mode="label.markup"/> + </xsl:variable> + <xsl:if test="$parent.label != ''"> + <xsl:apply-templates select=".." mode="label.markup"/> + <xsl:apply-templates select=".." mode="intralabel.punctuation"/> + </xsl:if> + </xsl:if> + +<!-- + <xsl:message> + test: <xsl:value-of select="$label"/>, <xsl:number count="section"/> + </xsl:message> +--> + + <xsl:choose> + <xsl:when test="@label"> + <xsl:value-of select="@label"/> + </xsl:when> + <xsl:when test="$label != 0"> + <xsl:variable name="format"> + <xsl:call-template name="autolabel.format"> + <xsl:with-param name="format" select="$section.autolabel"/> + </xsl:call-template> + </xsl:variable> + <xsl:number format="{$format}" count="section"/> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template match="sect1" mode="label.markup"> + <!-- if the parent is a component, maybe label that too --> + <xsl:variable name="parent.is.component"> + <xsl:call-template name="is.component"> + <xsl:with-param name="node" select=".."/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="component.label"> + <xsl:if test="$section.label.includes.component.label != 0 + and $parent.is.component != 0"> + <xsl:variable name="parent.label"> + <xsl:apply-templates select=".." mode="label.markup"/> + </xsl:variable> + <xsl:if test="$parent.label != ''"> + <xsl:apply-templates select=".." mode="label.markup"/> + <xsl:apply-templates select=".." mode="intralabel.punctuation"/> + </xsl:if> + </xsl:if> + </xsl:variable> + + + <xsl:variable name="is.numbered"> + <xsl:call-template name="label.this.section"/> + </xsl:variable> + + <xsl:choose> + <xsl:when test="@label"> + <xsl:value-of select="@label"/> + </xsl:when> + <xsl:when test="$is.numbered != 0"> + <xsl:variable name="format"> + <xsl:call-template name="autolabel.format"> + <xsl:with-param name="format" select="$section.autolabel"/> + </xsl:call-template> + </xsl:variable> + <xsl:copy-of select="$component.label"/> + <xsl:number format="{$format}" count="sect1"/> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template match="sect2|sect3|sect4|sect5" mode="label.markup"> + <!-- label the parent --> + <xsl:variable name="parent.section.label"> + <xsl:call-template name="label.this.section"> + <xsl:with-param name="section" select=".."/> + </xsl:call-template> + </xsl:variable> + <xsl:if test="$parent.section.label != '0'"> + <xsl:apply-templates select=".." mode="label.markup"/> + <xsl:apply-templates select=".." mode="intralabel.punctuation"/> + </xsl:if> + + <xsl:variable name="is.numbered"> + <xsl:call-template name="label.this.section"/> + </xsl:variable> + + <xsl:choose> + <xsl:when test="@label"> + <xsl:value-of select="@label"/> + </xsl:when> + <xsl:when test="$is.numbered != 0"> + <xsl:variable name="format"> + <xsl:call-template name="autolabel.format"> + <xsl:with-param name="format" select="$section.autolabel"/> + </xsl:call-template> + </xsl:variable> + <xsl:choose> + <xsl:when test="local-name(.) = 'sect2'"> + <xsl:number format="{$format}" count="sect2"/> + </xsl:when> + <xsl:when test="local-name(.) = 'sect3'"> + <xsl:number format="{$format}" count="sect3"/> + </xsl:when> + <xsl:when test="local-name(.) = 'sect4'"> + <xsl:number format="{$format}" count="sect4"/> + </xsl:when> + <xsl:when test="local-name(.) = 'sect5'"> + <xsl:number format="{$format}" count="sect5"/> + </xsl:when> + <xsl:otherwise> + <xsl:message>label.markup: this can't happen!</xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template match="bridgehead" mode="label.markup"> + <!-- FIXME: could we do a better job here? --> + <xsl:variable name="contsec" + select="(ancestor::section + |ancestor::simplesect + |ancestor::sect1 + |ancestor::sect2 + |ancestor::sect3 + |ancestor::sect4 + |ancestor::sect5 + |ancestor::refsect1 + |ancestor::refsect2 + |ancestor::refsect3 + |ancestor::chapter + |ancestor::appendix + |ancestor::preface)[last()]"/> + + <xsl:apply-templates select="$contsec" mode="label.markup"/> +</xsl:template> + +<xsl:template match="refsect1" mode="label.markup"> + <xsl:choose> + <xsl:when test="@label"> + <xsl:value-of select="@label"/> + </xsl:when> + <xsl:when test="$section.autolabel != 0"> + <xsl:variable name="format"> + <xsl:call-template name="autolabel.format"> + <xsl:with-param name="format" select="$section.autolabel"/> + </xsl:call-template> + </xsl:variable> + <xsl:number count="refsect1" format="{$format}"/> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template match="refsect2|refsect3" mode="label.markup"> + <!-- label the parent --> + <xsl:variable name="parent.label"> + <xsl:apply-templates select=".." mode="label.markup"/> + </xsl:variable> + <xsl:if test="$parent.label != ''"> + <xsl:apply-templates select=".." mode="label.markup"/> + <xsl:apply-templates select=".." mode="intralabel.punctuation"/> + </xsl:if> + + <xsl:choose> + <xsl:when test="@label"> + <xsl:value-of select="@label"/> + </xsl:when> + <xsl:when test="$section.autolabel != 0"> + <xsl:variable name="format"> + <xsl:call-template name="autolabel.format"> + <xsl:with-param name="format" select="$section.autolabel"/> + </xsl:call-template> + </xsl:variable> + <xsl:choose> + <xsl:when test="local-name(.) = 'refsect2'"> + <xsl:number count="refsect2" format="{$format}"/> + </xsl:when> + <xsl:otherwise> + <xsl:number count="refsect3" format="{$format}"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template match="simplesect" mode="label.markup"> + <!-- if this is a nested section, label the parent --> + <xsl:if test="local-name(..) = 'section' + or local-name(..) = 'sect1' + or local-name(..) = 'sect2' + or local-name(..) = 'sect3' + or local-name(..) = 'sect4' + or local-name(..) = 'sect5'"> + <xsl:variable name="parent.section.label"> + <xsl:apply-templates select=".." mode="label.markup"/> + </xsl:variable> + <xsl:if test="$parent.section.label != ''"> + <xsl:apply-templates select=".." mode="label.markup"/> + <xsl:apply-templates select=".." mode="intralabel.punctuation"/> + </xsl:if> + </xsl:if> + + <!-- if the parent is a component, maybe label that too --> + <xsl:variable name="parent.is.component"> + <xsl:call-template name="is.component"> + <xsl:with-param name="node" select=".."/> + </xsl:call-template> + </xsl:variable> + + <!-- does this section get labelled? --> + <xsl:variable name="label"> + <xsl:call-template name="label.this.section"> + <xsl:with-param name="section" select="."/> + </xsl:call-template> + </xsl:variable> + + <xsl:if test="$section.label.includes.component.label != 0 + and $parent.is.component != 0"> + <xsl:variable name="parent.label"> + <xsl:apply-templates select=".." mode="label.markup"/> + </xsl:variable> + <xsl:if test="$parent.label != ''"> + <xsl:apply-templates select=".." mode="label.markup"/> + <xsl:apply-templates select=".." mode="intralabel.punctuation"/> + </xsl:if> + </xsl:if> + + <xsl:choose> + <xsl:when test="@label"> + <xsl:value-of select="@label"/> + </xsl:when> + <xsl:when test="$label != 0"> + <xsl:variable name="format"> + <xsl:call-template name="autolabel.format"> + <xsl:with-param name="format" select="$section.autolabel"/> + </xsl:call-template> + </xsl:variable> + <xsl:number format="{$format}" count="simplesect"/> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template match="qandadiv" mode="label.markup"> + <xsl:variable name="lparent" select="(ancestor::set + |ancestor::book + |ancestor::chapter + |ancestor::appendix + |ancestor::preface + |ancestor::section + |ancestor::simplesect + |ancestor::sect1 + |ancestor::sect2 + |ancestor::sect3 + |ancestor::sect4 + |ancestor::sect5 + |ancestor::refsect1 + |ancestor::refsect2 + |ancestor::refsect3)[last()]"/> + + <xsl:variable name="lparent.prefix"> + <xsl:apply-templates select="$lparent" mode="label.markup"/> + </xsl:variable> + + <xsl:variable name="prefix"> + <xsl:if test="$qanda.inherit.numeration != 0"> + <xsl:if test="$lparent.prefix != ''"> + <xsl:apply-templates select="$lparent" mode="label.markup"/> + <xsl:apply-templates select="$lparent" mode="intralabel.punctuation"/> + </xsl:if> + </xsl:if> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$qandadiv.autolabel != 0"> + <xsl:variable name="format"> + <xsl:call-template name="autolabel.format"> + <xsl:with-param name="format" select="$qandadiv.autolabel"/> + </xsl:call-template> + </xsl:variable> + <xsl:value-of select="$prefix"/> + <xsl:number level="multiple" count="qandadiv" format="{$format}"/> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template match="question|answer" mode="label.markup"> + <xsl:variable name="lparent" select="(ancestor::set + |ancestor::book + |ancestor::chapter + |ancestor::appendix + |ancestor::preface + |ancestor::section + |ancestor::simplesect + |ancestor::sect1 + |ancestor::sect2 + |ancestor::sect3 + |ancestor::sect4 + |ancestor::sect5 + |ancestor::refsect1 + |ancestor::refsect2 + |ancestor::refsect3)[last()]"/> + + <xsl:variable name="lparent.prefix"> + <xsl:apply-templates select="$lparent" mode="label.markup"/> + </xsl:variable> + + <xsl:variable name="prefix"> + <xsl:if test="$qanda.inherit.numeration != 0"> + <xsl:choose> + <xsl:when test="ancestor::qandadiv"> + <xsl:apply-templates select="ancestor::qandadiv[1]" mode="label.markup"/> + <xsl:apply-templates select="ancestor::qandadiv[1]" + mode="intralabel.punctuation"/> + </xsl:when> + <xsl:when test="$lparent.prefix != ''"> + <xsl:apply-templates select="$lparent" mode="label.markup"/> + <xsl:apply-templates select="$lparent" mode="intralabel.punctuation"/> + </xsl:when> + </xsl:choose> + </xsl:if> + </xsl:variable> + + <xsl:variable name="inhlabel" + select="ancestor-or-self::qandaset/@defaultlabel[1]"/> + + <xsl:variable name="deflabel"> + <xsl:choose> + <xsl:when test="$inhlabel != ''"> + <xsl:value-of select="$inhlabel"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$qanda.defaultlabel"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="label" select="label"/> + + <xsl:choose> + <xsl:when test="count($label)>0"> + <xsl:apply-templates select="$label"/> + </xsl:when> + + <xsl:when test="$deflabel = 'qanda' and local-name(.) = 'question'"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'Question'"/> + </xsl:call-template> + </xsl:when> + + <xsl:when test="$deflabel = 'qanda' and local-name(.) = 'answer'"> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'Answer'"/> + </xsl:call-template> + </xsl:when> + + <xsl:when test="$deflabel = 'number' and local-name(.) = 'question'"> + <xsl:value-of select="$prefix"/> + <xsl:number level="multiple" count="qandaentry" format="1"/> + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template match="bibliography|glossary| + qandaset|index|setindex" mode="label.markup"> + <xsl:if test="@label"> + <xsl:value-of select="@label"/> + </xsl:if> +</xsl:template> + +<xsl:template match="figure|table|example" mode="label.markup"> + <xsl:variable name="pchap" + select="ancestor::chapter + |ancestor::appendix + |ancestor::article[ancestor::book]"/> + + <xsl:variable name="prefix"> + <xsl:if test="count($pchap) > 0"> + <xsl:apply-templates select="$pchap" mode="label.markup"/> + </xsl:if> + </xsl:variable> + + <xsl:choose> + <xsl:when test="@label"> + <xsl:value-of select="@label"/> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="$prefix != ''"> + <xsl:apply-templates select="$pchap" mode="label.markup"/> + <xsl:apply-templates select="$pchap" mode="intralabel.punctuation"/> + <xsl:number format="1" from="chapter|appendix" level="any"/> + </xsl:when> + <xsl:otherwise> + <xsl:number format="1" from="book|article" level="any"/> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="procedure" mode="label.markup"> + <xsl:variable name="pchap" + select="ancestor::chapter + |ancestor::appendix + |ancestor::article[ancestor::book]"/> + + <xsl:variable name="prefix"> + <xsl:if test="count($pchap) > 0"> + <xsl:apply-templates select="$pchap" mode="label.markup"/> + </xsl:if> + </xsl:variable> + + <xsl:choose> + <xsl:when test="@label"> + <xsl:value-of select="@label"/> + </xsl:when> + <xsl:when test="$formal.procedures = 0"> + <!-- No label --> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="count($pchap)>0"> + <xsl:if test="$prefix != ''"> + <xsl:apply-templates select="$pchap" mode="label.markup"/> + <xsl:apply-templates select="$pchap" mode="intralabel.punctuation"/> + </xsl:if> + <xsl:number count="procedure[title]" format="1" + from="chapter|appendix" level="any"/> + </xsl:when> + <xsl:otherwise> + <xsl:number count="procedure[title]" format="1" + from="book|article" level="any"/> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="equation" mode="label.markup"> + <xsl:variable name="pchap" + select="ancestor::chapter + |ancestor::appendix + |ancestor::article[ancestor::book]"/> + + <xsl:variable name="prefix"> + <xsl:if test="count($pchap) > 0"> + <xsl:apply-templates select="$pchap" mode="label.markup"/> + </xsl:if> + </xsl:variable> + + <xsl:choose> + <xsl:when test="@label"> + <xsl:value-of select="@label"/> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="count($pchap)>0"> + <xsl:if test="$prefix != ''"> + <xsl:apply-templates select="$pchap" mode="label.markup"/> + <xsl:apply-templates select="$pchap" mode="intralabel.punctuation"/> + </xsl:if> + <xsl:number format="1" count="equation[title or info/title]" + from="chapter|appendix" level="any"/> + </xsl:when> + <xsl:otherwise> + <xsl:number format="1" count="equation[title or info/title]" + from="book|article" level="any"/> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="orderedlist/listitem" mode="label.markup"> + <xsl:variable name="numeration"> + <xsl:call-template name="list.numeration"> + <xsl:with-param name="node" select="parent::orderedlist"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="type"> + <xsl:choose> + <xsl:when test="$numeration='arabic'">1</xsl:when> + <xsl:when test="$numeration='loweralpha'">a</xsl:when> + <xsl:when test="$numeration='lowerroman'">i</xsl:when> + <xsl:when test="$numeration='upperalpha'">A</xsl:when> + <xsl:when test="$numeration='upperroman'">I</xsl:when> + <!-- What!? This should never happen --> + <xsl:otherwise> + <xsl:message> + <xsl:text>Unexpected numeration: </xsl:text> + <xsl:value-of select="$numeration"/> + </xsl:message> + <xsl:value-of select="1."/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="item-number"> + <xsl:call-template name="orderedlist-item-number"/> + </xsl:variable> + + <xsl:number value="$item-number" format="{$type}"/> +</xsl:template> + +<xsl:template match="abstract" mode="label.markup"> + <!-- nop --> +</xsl:template> + +<xsl:template match="sidebar" mode="label.markup"> + <!-- nop --> +</xsl:template> + +<!-- ============================================================ --> + +<xsl:template name="label.this.section"> + <xsl:param name="section" select="."/> + + <xsl:variable name="level"> + <xsl:call-template name="section.level"/> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$level <= $section.autolabel.max.depth"> + <xsl:value-of select="$section.autolabel"/> + </xsl:when> + <xsl:otherwise>0</xsl:otherwise> + </xsl:choose> +</xsl:template> + +<doc:template name="label.this.section" xmlns=""> +<refpurpose>Returns true if $section should be labelled</refpurpose> +<refdescription id="label.this.section-desc"> +<para>Returns true if the specified section should be labelled. +By default, this template returns zero unless +the section level is less than or equal to the value of the +<literal>$section.autolabel.max.depth</literal> parameter, in +which case it returns +<literal>$section.autolabel</literal>. +Custom stylesheets may override it to get more selective behavior.</para> +</refdescription> +</doc:template> + +<!-- ============================================================ --> + +<xsl:template name="default.autolabel.format"> + <xsl:param name="context" select="."/> + <xsl:choose> + <xsl:when test="local-name($context) = 'appendix'"> + <xsl:value-of select="'A'"/> + </xsl:when> + <xsl:when test="local-name($context) = 'part'"> + <xsl:value-of select="'I'"/> + </xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="autolabel.format"> + <xsl:param name="context" select="."/> + <xsl:param name="format"/> + + <xsl:choose> + <xsl:when test="string($format) != 0"> + <xsl:choose> + <xsl:when test="string($format)='arabic' or $format='1'">1</xsl:when> + <xsl:when test="$format='loweralpha' or $format='a'"> + <xsl:value-of select="'a'"/> + </xsl:when> + <xsl:when test="$format='lowerroman' or $format='i'"> + <xsl:value-of select="'i'"/> + </xsl:when> + <xsl:when test="$format='upperalpha' or $format='A'"> + <xsl:value-of select="'A'"/> + </xsl:when> + <xsl:when test="$format='upperroman' or $format='I'"> + <xsl:value-of select="'I'"/> + </xsl:when> + <xsl:when test="$format='arabicindic' or $format='١'"> + <xsl:value-of select="'١'"/> + </xsl:when> + <xsl:otherwise> + <xsl:message> + <xsl:text>Unexpected </xsl:text><xsl:value-of select="local-name(.)"/><xsl:text>.autolabel value: </xsl:text> + <xsl:value-of select="$format"/><xsl:text>; using default.</xsl:text> + </xsl:message> + <xsl:call-template name="default.autolabel.format"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + </xsl:choose> +</xsl:template> + +<doc:template name="autolabel.format" xmlns=""> +<refpurpose>Returns format for autolabel parameters</refpurpose> +<refdescription id="autolabel.format-desc"> +<para>Returns format passed as parameter if non zero. Supported + format are 'arabic' or '1', 'loweralpha' or 'a', 'lowerroman' or 'i', + 'upperlapha' or 'A', 'upperroman' or 'I', 'arabicindic' or '١'. + If its not one of these then + returns the default format.</para> +</refdescription> +</doc:template> + +<!-- ============================================================ --> + +</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/olink.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/olink.xsl new file mode 100644 index 000000000..91849263a --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/olink.xsl @@ -0,0 +1,1149 @@ +<?xml version="1.0"?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + version="1.0"> + +<!-- Create keys for quickly looking up olink targets --> +<xsl:key name="targetdoc-key" match="document" use="@targetdoc" /> +<xsl:key name="targetptr-key" match="div|obj" + use="concat(ancestor::document/@targetdoc, '/', + @targetptr, '/', ancestor::document/@lang)" /> + +<!-- Return filename of database --> +<xsl:template name="select.target.database"> + <xsl:param name="targetdoc.att" select="''"/> + <xsl:param name="targetptr.att" select="''"/> + <xsl:param name="olink.lang" select="''"/> + + <!-- use root's xml:base if exists --> + <xsl:variable name="xml.base" select="/*/@xml:base"/> + + <!-- This selection can be customized if needed --> + <xsl:variable name="target.database.filename"> + <xsl:choose> + <xsl:when test="$xml.base != '' and + not(starts-with($target.database.document, 'file:/')) and + not(starts-with($target.database.document, '/'))"> + <xsl:call-template name="systemIdToBaseURI"> + <xsl:with-param name="systemId" select="$xml.base"/> + </xsl:call-template> + <xsl:value-of select="$target.database.document"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$target.database.document"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="target.database" + select="document($target.database.filename,/)"/> + + <xsl:choose> + <!-- Was the database document parameter not set? --> + <xsl:when test="$target.database.document = ''"> + <xsl:message> + <xsl:text>Olinks not processed: must specify a </xsl:text> + <xsl:text>$target.database.document parameter </xsl:text> + <xsl:text>when using olinks with targetdoc </xsl:text> + <xsl:text>and targetptr attributes.</xsl:text> + </xsl:message> + </xsl:when> + <!-- Did it not open? Should be a targetset element --> + <xsl:when test="not($target.database/*)"> + <xsl:message> + <xsl:text>Olink error: could not open target database '</xsl:text> + <xsl:value-of select="$target.database.filename"/> + <xsl:text>'.</xsl:text> + </xsl:message> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$target.database.filename"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="select.olink.key"> + <xsl:param name="targetdoc.att" select="''"/> + <xsl:param name="targetptr.att" select="''"/> + <xsl:param name="olink.lang" select="''"/> + <xsl:param name="target.database"/> + + <xsl:if test="$target.database/*"> + <xsl:variable name="olink.fallback.sequence"> + <xsl:call-template name="select.olink.lang.fallback"> + <xsl:with-param name="olink.lang" select="$olink.lang"/> + </xsl:call-template> + </xsl:variable> + + <!-- Recurse through the languages until you find a match --> + <xsl:call-template name="select.olink.key.in.lang"> + <xsl:with-param name="targetdoc.att" select="$targetdoc.att"/> + <xsl:with-param name="targetptr.att" select="$targetptr.att"/> + <xsl:with-param name="olink.lang" select="$olink.lang"/> + <xsl:with-param name="target.database" select="$target.database"/> + <xsl:with-param name="fallback.index" select="1"/> + <xsl:with-param name="olink.fallback.sequence" + select="$olink.fallback.sequence"/> + </xsl:call-template> + </xsl:if> + +</xsl:template> + +<!-- Locate olink key in a particular language --> +<xsl:template name="select.olink.key.in.lang"> + <xsl:param name="targetdoc.att" select="''"/> + <xsl:param name="targetptr.att" select="''"/> + <xsl:param name="olink.lang" select="''"/> + <xsl:param name="target.database"/> + <xsl:param name="fallback.index" select="1"/> + <xsl:param name="olink.fallback.sequence" select="''"/> + + <xsl:variable name="target.lang"> + <xsl:call-template name="select.target.lang"> + <xsl:with-param name="fallback.index" select="$fallback.index"/> + <xsl:with-param name="olink.fallback.sequence" + select="$olink.fallback.sequence"/> + </xsl:call-template> + </xsl:variable> + + <xsl:if test="$olink.debug != 0"> + <xsl:message><xsl:text>Olink debug: cases for targetdoc='</xsl:text> + <xsl:value-of select="$targetdoc.att"/> + <xsl:text>' and targetptr='</xsl:text> + <xsl:value-of select="$targetptr.att"/> + <xsl:text>' in language '</xsl:text> + <xsl:value-of select="$target.lang"/> + <xsl:text>'.</xsl:text> + </xsl:message> + </xsl:if> + + <!-- Customize these cases if you want different selection logic --> + <xsl:variable name="CaseA"> + <!-- targetdoc.att = not blank + targetptr.att = not blank + --> + <xsl:if test="$targetdoc.att != '' and + $targetptr.att != ''"> + <xsl:for-each select="$target.database"> + <xsl:variable name="key" + select="concat($targetdoc.att, '/', + $targetptr.att, '/', + $target.lang)"/> + <xsl:choose> + <xsl:when test="key('targetptr-key', $key)/@href != ''"> + <xsl:value-of select="$key"/> + <xsl:if test="$olink.debug != 0"> + <xsl:message>Olink debug: CaseA matched.</xsl:message> + </xsl:if> + </xsl:when> + <xsl:when test="$olink.debug != 0"> + <xsl:message>Olink debug: CaseA NOT matched</xsl:message> + </xsl:when> + </xsl:choose> + </xsl:for-each> + </xsl:if> + </xsl:variable> + + <xsl:variable name="CaseB"> + <!-- targetdoc.att = not blank + targetptr.att = not blank + prefer.internal.olink = not zero + current.docid = not blank + --> + <xsl:if test="$targetdoc.att != '' and + $targetptr.att != '' and + $current.docid != '' and + $prefer.internal.olink != 0"> + <xsl:for-each select="$target.database"> + <xsl:variable name="key" + select="concat($current.docid, '/', + $targetptr.att, '/', + $target.lang)"/> + <xsl:choose> + <xsl:when test="key('targetptr-key', $key)/@href != ''"> + <xsl:value-of select="$key"/> + <xsl:if test="$olink.debug != 0"> + <xsl:message>Olink debug: CaseB matched.</xsl:message> + </xsl:if> + </xsl:when> + <xsl:when test="$olink.debug != 0"> + <xsl:message>Olink debug: CaseB NOT matched</xsl:message> + </xsl:when> + </xsl:choose> + </xsl:for-each> + </xsl:if> + </xsl:variable> + + <xsl:variable name="CaseC"> + <!-- targetdoc.att = blank + targetptr.att = not blank + current.docid = not blank + --> + <xsl:if test="string-length($targetdoc.att) = 0 and + $targetptr.att != '' and + $current.docid != ''"> + <!-- Must use a for-each to change context for keys to work --> + <xsl:for-each select="$target.database"> + <xsl:variable name="key" + select="concat($current.docid, '/', + $targetptr.att, '/', + $target.lang)"/> + <xsl:choose> + <xsl:when test="key('targetptr-key', $key)/@href != ''"> + <xsl:value-of select="$key"/> + <xsl:if test="$olink.debug != 0"> + <xsl:message>Olink debug: CaseC matched.</xsl:message> + </xsl:if> + </xsl:when> + <xsl:when test="$olink.debug != 0"> + <xsl:message>Olink debug: CaseC NOT matched.</xsl:message> + </xsl:when> + </xsl:choose> + </xsl:for-each> + </xsl:if> + </xsl:variable> + + <xsl:variable name="CaseD"> + <!-- targetdoc.att = blank + targetptr.att = not blank + current.docid = blank + --> + <!-- This is possible if only one document in the database --> + <xsl:if test="string-length($targetdoc.att) = 0 and + $targetptr.att != '' and + string-length($current.docid) = 0 and + count($target.database//document) = 1"> + <xsl:for-each select="$target.database"> + <xsl:variable name="key" + select="concat(.//document/@targetdoc, '/', + $targetptr.att, '/', + $target.lang)"/> + <xsl:choose> + <xsl:when test="key('targetptr-key', $key)/@href != ''"> + <xsl:value-of select="$key"/> + <xsl:if test="$olink.debug != 0"> + <xsl:message>Olink debug: CaseD matched.</xsl:message> + </xsl:if> + </xsl:when> + <xsl:when test="$olink.debug != 0"> + <xsl:message>Olink debug: CaseD NOT matched</xsl:message> + </xsl:when> + </xsl:choose> + </xsl:for-each> + </xsl:if> + </xsl:variable> + + <xsl:variable name="CaseE"> + <!-- targetdoc.att = not blank + targetptr.att = blank + --> + <xsl:if test="$targetdoc.att != '' and + string-length($targetptr.att) = 0"> + + <!-- Try the document's root element id --> + <xsl:variable name="rootid"> + <xsl:choose> + <xsl:when test="$target.lang != ''"> + <xsl:value-of select="$target.database//document[@targetdoc = $targetdoc.att and @lang = $target.lang]/*[1]/@targetptr"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$target.database//document[@targetdoc = $targetdoc.att and not(@lang)]/*[1]/@targetptr"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:for-each select="$target.database"> + <xsl:variable name="key" + select="concat($targetdoc.att, '/', + $rootid, '/', + $target.lang)"/> + <xsl:choose> + <xsl:when test="key('targetptr-key', $key)/@href != ''"> + <xsl:value-of select="$key"/> + <xsl:if test="$olink.debug != 0"> + <xsl:message>Olink debug: CaseE matched.</xsl:message> + </xsl:if> + </xsl:when> + <xsl:when test="$olink.debug != 0"> + <xsl:message>Olink debug: CaseE NOT matched.</xsl:message> + </xsl:when> + </xsl:choose> + </xsl:for-each> + </xsl:if> + </xsl:variable> + + <xsl:variable name="CaseF"> + <!-- targetdoc.att = not blank + targetptr.att = blank + prefer.internal.olink = not zero + current.docid = not blank + --> + <xsl:if test="$targetdoc.att != '' and + string-length($targetptr.att) = 0 and + $current.docid != '' and + $prefer.internal.olink != 0"> + <!-- Try the document's root element id --> + <xsl:variable name="rootid"> + <xsl:choose> + <xsl:when test="$target.lang != ''"> + <xsl:value-of select="$target.database//document[@targetdoc = $current.docid and @lang = $target.lang]/*[1]/@targetptr"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$target.database//document[@targetdoc = $current.docid and not(@lang)]/*[1]/@targetptr"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:for-each select="$target.database"> + <xsl:variable name="key" + select="concat($current.docid, '/', + $rootid, '/', + $target.lang)"/> + <xsl:choose> + <xsl:when test="key('targetptr-key', $key)/@href != ''"> + <xsl:value-of select="$key"/> + <xsl:if test="$olink.debug != 0"> + <xsl:message>Olink debug: CaseF matched.</xsl:message> + </xsl:if> + </xsl:when> + <xsl:when test="$olink.debug != 0"> + <xsl:message>Olink debug: CaseF NOT matched.</xsl:message> + </xsl:when> + </xsl:choose> + </xsl:for-each> + </xsl:if> + </xsl:variable> + + <!-- Now select the best match. Customize the order if needed --> + <xsl:variable name="selected.key"> + <xsl:choose> + <xsl:when test="$CaseB != ''"> + <xsl:value-of select="$CaseB"/> + <xsl:if test="$olink.debug != 0"> + <xsl:message> + <xsl:text>Olink debug: CaseB key is the final selection: </xsl:text> + <xsl:value-of select="$CaseB"/> + </xsl:message> + </xsl:if> + </xsl:when> + <xsl:when test="$CaseA != ''"> + <xsl:value-of select="$CaseA"/> + <xsl:if test="$olink.debug != 0"> + <xsl:message> + <xsl:text>Olink debug: CaseA key is the final selection: </xsl:text> + <xsl:value-of select="$CaseA"/> + </xsl:message> + </xsl:if> + </xsl:when> + <xsl:when test="$CaseC != ''"> + <xsl:value-of select="$CaseC"/> + <xsl:if test="$olink.debug != 0"> + <xsl:message> + <xsl:text>Olink debug: CaseC key is the final selection: </xsl:text> + <xsl:value-of select="$CaseC"/> + </xsl:message> + </xsl:if> + </xsl:when> + <xsl:when test="$CaseD != ''"> + <xsl:value-of select="$CaseD"/> + <xsl:if test="$olink.debug != 0"> + <xsl:message> + <xsl:text>Olink debug: CaseD key is the final selection: </xsl:text> + <xsl:value-of select="$CaseD"/> + </xsl:message> + </xsl:if> + </xsl:when> + <xsl:when test="$CaseF != ''"> + <xsl:value-of select="$CaseF"/> + <xsl:if test="$olink.debug != 0"> + <xsl:message> + <xsl:text>Olink debug: CaseF key is the final selection: </xsl:text> + <xsl:value-of select="$CaseF"/> + </xsl:message> + </xsl:if> + </xsl:when> + <xsl:when test="$CaseE != ''"> + <xsl:value-of select="$CaseE"/> + <xsl:if test="$olink.debug != 0"> + <xsl:message> + <xsl:text>Olink debug: CaseE key is the final selection: </xsl:text> + <xsl:value-of select="$CaseE"/> + </xsl:message> + </xsl:if> + </xsl:when> + <xsl:otherwise> + <xsl:if test="$olink.debug != 0"> + <xsl:message> + <xsl:text>Olink debug: No case matched for lang '</xsl:text> + <xsl:value-of select="$target.lang"/> + <xsl:text>'.</xsl:text> + </xsl:message> + </xsl:if> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$selected.key != ''"> + <xsl:value-of select="$selected.key"/> + </xsl:when> + <xsl:when test="string-length($selected.key) = 0 and + string-length($target.lang) = 0"> + <!-- No match on last try, and we are done --> + </xsl:when> + <xsl:otherwise> + <!-- Recurse through next language --> + <xsl:call-template name="select.olink.key.in.lang"> + <xsl:with-param name="targetdoc.att" select="$targetdoc.att"/> + <xsl:with-param name="targetptr.att" select="$targetptr.att"/> + <xsl:with-param name="olink.lang" select="$olink.lang"/> + <xsl:with-param name="target.database" select="$target.database"/> + <xsl:with-param name="fallback.index" select="$fallback.index + 1"/> + <xsl:with-param name="olink.fallback.sequence" + select="$olink.fallback.sequence"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + +</xsl:template> + +<xsl:template name="select.target.lang"> + <xsl:param name="fallback.index" select="1"/> + <xsl:param name="olink.fallback.sequence" select="''"/> + + <!-- recurse backwards to find the lang matching the index --> + <xsl:variable name="firstlang" + select="substring-before($olink.fallback.sequence, ' ')"/> + <xsl:variable name="rest" + select="substring-after($olink.fallback.sequence, ' ')"/> + <xsl:choose> + <xsl:when test="$fallback.index = 1"> + <xsl:value-of select="$firstlang"/> + </xsl:when> + <xsl:when test="$fallback.index > 1"> + <xsl:call-template name="select.target.lang"> + <xsl:with-param name="fallback.index" select="$fallback.index - 1"/> + <xsl:with-param name="olink.fallback.sequence" + select="$rest"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="select.olink.lang.fallback"> + <xsl:param name="olink.lang" select="''"/> + + <!-- Prefer language of the olink element --> + <xsl:value-of select="concat(normalize-space(concat($olink.lang, ' ', + $olink.lang.fallback.sequence)), ' ')"/> +</xsl:template> + +<!-- Returns the complete olink href value if found --> +<xsl:template name="make.olink.href"> + <xsl:param name="olink.key" select="''"/> + <xsl:param name="target.database"/> + + <xsl:if test="$olink.key != ''"> + <xsl:variable name="target.href" > + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', $olink.key)/@href" /> + </xsl:for-each> + </xsl:variable> + + <xsl:variable name="targetdoc"> + <xsl:value-of select="substring-before($olink.key, '/')"/> + </xsl:variable> + + <!-- Does the target database use a sitemap? --> + <xsl:variable name="use.sitemap"> + <xsl:choose> + <xsl:when test="$target.database//sitemap">1</xsl:when> + <xsl:otherwise>0</xsl:otherwise> + </xsl:choose> + </xsl:variable> + + + <!-- Get the baseuri for this targetptr --> + <xsl:variable name="baseuri" > + <xsl:choose> + <!-- Does the database use a sitemap? --> + <xsl:when test="$use.sitemap != 0" > + <xsl:choose> + <!-- Was current.docid parameter set? --> + <xsl:when test="$current.docid != ''"> + <!-- Was it found in the database? --> + <xsl:variable name="currentdoc.key" > + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetdoc-key', + $current.docid)/@targetdoc" /> + </xsl:for-each> + </xsl:variable> + <xsl:choose> + <xsl:when test="$currentdoc.key != ''"> + <xsl:for-each select="$target.database" > + <xsl:call-template name="targetpath" > + <xsl:with-param name="dirnode" + select="key('targetdoc-key', $current.docid)/parent::dir"/> + <xsl:with-param name="targetdoc" select="$targetdoc"/> + </xsl:call-template> + </xsl:for-each > + </xsl:when> + <xsl:otherwise> + <xsl:message> + <xsl:text>Olink error: cannot compute relative </xsl:text> + <xsl:text>sitemap path because $current.docid '</xsl:text> + <xsl:value-of select="$current.docid"/> + <xsl:text>' not found in target database.</xsl:text> + </xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:message> + <xsl:text>Olink warning: cannot compute relative </xsl:text> + <xsl:text>sitemap path without $current.docid parameter</xsl:text> + </xsl:message> + </xsl:otherwise> + </xsl:choose> + <!-- In either case, add baseuri from its document entry--> + <xsl:variable name="docbaseuri"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetdoc-key', $targetdoc)/@baseuri" /> + </xsl:for-each> + </xsl:variable> + <xsl:if test="$docbaseuri != ''" > + <xsl:value-of select="$docbaseuri"/> + </xsl:if> + </xsl:when> + <!-- No database sitemap in use --> + <xsl:otherwise> + <!-- Just use any baseuri from its document entry --> + <xsl:variable name="docbaseuri"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetdoc-key', $targetdoc)/@baseuri" /> + </xsl:for-each> + </xsl:variable> + <xsl:if test="$docbaseuri != ''" > + <xsl:value-of select="$docbaseuri"/> + </xsl:if> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <!-- Form the href information --> + <xsl:if test="$baseuri != ''"> + <xsl:value-of select="$baseuri"/> + <xsl:if test="substring($target.href,1,1) != '#'"> + <!--xsl:text>/</xsl:text--> + </xsl:if> + </xsl:if> + <!-- optionally turn off frag for PDF references --> + <xsl:if test="not($insert.olink.pdf.frag = 0 and + translate(substring($baseuri, string-length($baseuri) - 3), + 'PDF', 'pdf') = '.pdf' + and starts-with($target.href, '#') )"> + <xsl:value-of select="$target.href"/> + </xsl:if> + </xsl:if> +</xsl:template> + +<!-- Computes the href of the object containing the olink element --> +<xsl:template name="olink.from.uri"> + <xsl:param name="target.database"/> + <xsl:param name="object" select="NotAnElement"/> + <xsl:param name="object.targetdoc" select="$current.docid"/> + <xsl:param name="object.lang" + select="concat($object/ancestor::*[last()]/@lang, + $object/ancestor::*[last()]/@xml:lang)"/> + + <xsl:variable name="parent.id"> + <xsl:call-template name="object.id"> + <xsl:with-param name="object" select="$object"/> + </xsl:call-template> + </xsl:variable> + + <!-- Get the olink key for the parent of olink element --> + <xsl:variable name="from.key"> + <xsl:call-template name="select.olink.key"> + <xsl:with-param name="targetdoc.att" select="$object.targetdoc"/> + <xsl:with-param name="targetptr.att" select="$parent.id"/> + <xsl:with-param name="olink.lang" select="$object.lang"/> + <xsl:with-param name="target.database" select="$target.database"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="from.olink.href"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', $from.key)/@href" /> + </xsl:for-each> + </xsl:variable> + + <xsl:choose> + <!-- we found the olink object --> + <xsl:when test="$from.olink.href != ''"> + <xsl:value-of select="$from.olink.href"/> + </xsl:when> + <xsl:when test="not($object/parent::*)"> + <xsl:value-of select="$from.olink.href"/> + </xsl:when> + <xsl:otherwise> + <!-- recurse upward in current document --> + <xsl:call-template name="olink.from.uri"> + <xsl:with-param name="target.database" select="$target.database"/> + <xsl:with-param name="object" select="$object/parent::*"/> + <xsl:with-param name="object.targetdoc" select="$object.targetdoc"/> + <xsl:with-param name="object.lang" select="$object.lang"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + +</xsl:template> + +<xsl:template name="olink.hottext"> + <xsl:param name="target.database"/> + <xsl:param name="olink.lang" select="''"/> + <xsl:param name="olink.key" select="''"/> + <xsl:param name="referrer" select="."/> + <xsl:param name="xrefstyle"> + <xsl:choose> + <xsl:when test="@role and not(@xrefstyle) + and $use.role.as.xrefstyle != 0"> + <xsl:value-of select="@role"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="@xrefstyle"/> + </xsl:otherwise> + </xsl:choose> + </xsl:param> + + <xsl:choose> + <!-- If it has elements or text (not just PI or comment) --> + <xsl:when test="child::text() or child::*"> + <xsl:apply-templates/> + </xsl:when> + <xsl:when test="$olink.key != ''"> + <!-- Get the xref text for this record --> + <xsl:variable name="xref.text" > + <xsl:for-each select="$target.database" > + <xsl:copy-of + select="key('targetptr-key', $olink.key)/xreftext/node()" /> + </xsl:for-each> + </xsl:variable> + + <xsl:variable name="xref.number" > + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', $olink.key)/@number" /> + </xsl:for-each> + </xsl:variable> + + <xsl:variable name="target.elem" > + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', $olink.key)/@element" /> + </xsl:for-each> + </xsl:variable> + + <xsl:variable name="lang"> + <xsl:variable name="candidate"> + <xsl:for-each select="$target.database" > + <xsl:value-of + select="key('targetptr-key', $olink.key)/@lang" /> + </xsl:for-each> + </xsl:variable> + <xsl:choose> + <xsl:when test="$candidate != ''"> + <xsl:value-of select="$candidate"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$olink.lang"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="targetdoc"> + <xsl:value-of select="substring-before($olink.key, '/')"/> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$xrefstyle != '' and + starts-with(normalize-space($xrefstyle), 'select:') and + (contains($xrefstyle, 'nodocname') or + contains($xrefstyle, 'nopage')) and + not(contains($xrefstyle, 'title')) and + not(contains($xrefstyle, 'label'))"> + <xsl:copy-of select="$xref.text"/> + </xsl:when> + <xsl:when test="$xrefstyle != ''"> + <xsl:if test="$olink.debug != 0"> + <xsl:message> + <xsl:text>xrefstyle is '</xsl:text> + <xsl:value-of select="$xrefstyle"/> + <xsl:text>'.</xsl:text> + </xsl:message> + </xsl:if> + <xsl:variable name="template"> + <xsl:choose> + <xsl:when test="starts-with(normalize-space($xrefstyle), + 'select:')"> + <xsl:call-template name="make.gentext.template"> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + <xsl:with-param name="purpose" select="'olink'"/> + <xsl:with-param name="referrer" select="."/> + <xsl:with-param name="target.elem" select="$target.elem"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="starts-with(normalize-space($xrefstyle), + 'template:')"> + <xsl:value-of select="substring-after( + normalize-space($xrefstyle), 'template:')"/> + </xsl:when> + <xsl:otherwise> + <!-- Look for Gentext template with @style attribute --> + <!-- Must compare to no style value because gentext.template + falls back to no style --> + + <xsl:variable name="xref-context"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'xref'"/> + <xsl:with-param name="name" select="$target.elem"/> + <xsl:with-param name="lang" select="$lang"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="styled-xref-context"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'xref'"/> + <xsl:with-param name="name" select="$target.elem"/> + <xsl:with-param name="lang" select="$lang"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="xref-number-context"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'xref-number'"/> + <xsl:with-param name="name" select="$target.elem"/> + <xsl:with-param name="lang" select="$lang"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="styled-xref-number-context"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'xref-number'"/> + <xsl:with-param name="name" select="$target.elem"/> + <xsl:with-param name="lang" select="$lang"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="xref-number-and-title-context"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" + select="'xref-number-and-title'"/> + <xsl:with-param name="name" select="$target.elem"/> + <xsl:with-param name="lang" select="$lang"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="styled-xref-number-and-title-context"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" + select="'xref-number-and-title'"/> + <xsl:with-param name="name" select="$target.elem"/> + <xsl:with-param name="lang" select="$lang"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + </xsl:call-template> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$xref-number-and-title-context != + $styled-xref-number-and-title-context and + $xref.number != '' and + $xref.with.number.and.title != 0"> + <xsl:value-of + select="$styled-xref-number-and-title-context"/> + </xsl:when> + <xsl:when test="$xref-number-context != + $styled-xref-number-context and + $xref.number != ''"> + <xsl:value-of select="$styled-xref-number-context"/> + </xsl:when> + <xsl:when test="$xref-context != $styled-xref-context"> + <xsl:value-of select="$styled-xref-context"/> + </xsl:when> + <xsl:when test="$xref-number-and-title-context != '' and + $xref.number != '' and + $xref.with.number.and.title != 0"> + <xsl:value-of + select="$xref-number-and-title-context"/> + <xsl:if test="$olink.debug"> + <xsl:message> + <xsl:text>Olink error: no gentext template</xsl:text> + <xsl:text> exists for xrefstyle '</xsl:text> + <xsl:value-of select="$xrefstyle"/> + <xsl:text>' for element '</xsl:text> + <xsl:value-of select="$target.elem"/> + <xsl:text>' in language '</xsl:text> + <xsl:value-of select="$lang"/> + <xsl:text>' in context 'xref-number-and-title</xsl:text> + <xsl:text>'. Using template without @style.</xsl:text> + </xsl:message> + </xsl:if> + </xsl:when> + <xsl:when test="$xref-number-context != '' and + $xref.number != ''"> + <xsl:value-of select="$xref-number-context"/> + <xsl:if test="$olink.debug"> + <xsl:message> + <xsl:text>Olink error: no gentext template</xsl:text> + <xsl:text> exists for xrefstyle '</xsl:text> + <xsl:value-of select="$xrefstyle"/> + <xsl:text>' for element '</xsl:text> + <xsl:value-of select="$target.elem"/> + <xsl:text>' in language '</xsl:text> + <xsl:value-of select="$lang"/> + <xsl:text>' in context 'xref-number</xsl:text> + <xsl:text>'. Using template without @style.</xsl:text> + </xsl:message> + </xsl:if> + </xsl:when> + <xsl:when test="$xref-context != ''"> + <xsl:value-of select="$xref-context"/> + <xsl:if test="$olink.debug"> + <xsl:message> + <xsl:text>Olink error: no gentext template</xsl:text> + <xsl:text> exists for xrefstyle '</xsl:text> + <xsl:value-of select="$xrefstyle"/> + <xsl:text>' for element '</xsl:text> + <xsl:value-of select="$target.elem"/> + <xsl:text>' in language '</xsl:text> + <xsl:value-of select="$lang"/> + <xsl:text>' in context 'xref</xsl:text> + <xsl:text>'. Using template without @style.</xsl:text> + </xsl:message> + </xsl:if> + </xsl:when> + <xsl:otherwise> + <xsl:message> + <xsl:text>Olink error: no gentext template</xsl:text> + <xsl:text> exists for xrefstyle '</xsl:text> + <xsl:value-of select="$xrefstyle"/> + <xsl:text>' for element '</xsl:text> + <xsl:value-of select="$target.elem"/> + <xsl:text>' in language '</xsl:text> + <xsl:value-of select="$lang"/> + <xsl:text>'. Trying '%t'.</xsl:text> + </xsl:message> + <xsl:value-of select="'%t'"/> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:if test="$olink.debug != 0"> + <xsl:message> + <xsl:text>Olink debug: xrefstyle template is '</xsl:text> + <xsl:value-of select="$template"/> + <xsl:text>'.</xsl:text> + </xsl:message> + </xsl:if> + + <xsl:call-template name="substitute-markup"> + <xsl:with-param name="template" select="$template"/> + <xsl:with-param name="title"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', $olink.key)/ttl" /> + </xsl:for-each> + </xsl:with-param> + <xsl:with-param name="label"> + <xsl:for-each select="$target.database" > + <xsl:value-of + select="key('targetptr-key', $olink.key)/@number" /> + </xsl:for-each> + </xsl:with-param> + <xsl:with-param name="pagenumber"> + <xsl:for-each select="$target.database" > + <xsl:value-of + select="key('targetptr-key', $olink.key)/@page" /> + </xsl:for-each> + </xsl:with-param> + <xsl:with-param name="docname"> + <xsl:for-each select="$target.database" > + <xsl:value-of + select="key('targetdoc-key', $targetdoc)/div[1]/ttl" /> + </xsl:for-each> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + + <xsl:when test="$use.local.olink.style != 0"> + + <xsl:variable name="template"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'xref'"/> + <xsl:with-param name="name" select="$target.elem"/> + <xsl:with-param name="lang" select="$lang"/> + </xsl:call-template> + </xsl:variable> + + <xsl:call-template name="substitute-markup"> + <xsl:with-param name="template" select="$template"/> + <xsl:with-param name="title"> + <xsl:for-each select="$target.database" > + <xsl:value-of select="key('targetptr-key', $olink.key)/ttl" /> + </xsl:for-each> + </xsl:with-param> + <xsl:with-param name="label"> + <xsl:for-each select="$target.database" > + <xsl:value-of + select="key('targetptr-key', $olink.key)/@number" /> + </xsl:for-each> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="$xref.text !=''"> + <xsl:copy-of select="$xref.text"/> + </xsl:when> + <xsl:otherwise> + <xsl:message> + <xsl:text>Olink error: no generated text for </xsl:text> + <xsl:text>targetdoc/targetptr/lang = '</xsl:text> + <xsl:value-of select="$olink.key"/> + <xsl:text>'.</xsl:text> + </xsl:message> + <xsl:text>????</xsl:text> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:when test="@targetdoc != '' or @targetptr != ''"> + <xsl:if test="$olink.key != ''"> + <xsl:message> + <xsl:text>Olink error: no generated text for </xsl:text> + <xsl:text>targetdoc/targetptr/lang = '</xsl:text> + <xsl:value-of select="$olink.key"/> + <xsl:text>'.</xsl:text> + </xsl:message> + </xsl:if> + <xsl:text>????</xsl:text> + </xsl:when> + <xsl:otherwise> + <!-- old style olink --> + <xsl:call-template name="olink.outline"> + <xsl:with-param name="outline.base.uri" + select="unparsed-entity-uri(@targetdocent)"/> + <xsl:with-param name="localinfo" select="@localinfo"/> + <xsl:with-param name="return" select="'xreftext'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="*" mode="olink.docname.markup"> + <!-- No-op for now --> +</xsl:template> + +<xsl:template name="targetpath"> + <xsl:param name="dirnode" /> + <xsl:param name="targetdoc" select="''"/> + +<!-- +<xsl:message>dirnode is <xsl:value-of select="$dirnode/@name"/></xsl:message> +<xsl:message>targetdoc is <xsl:value-of select="$targetdoc"/></xsl:message> +--> + <!-- recursive template generates path to olink target directory --> + <xsl:choose> + <!-- Have we arrived at the final path step? --> + <xsl:when test="$dirnode/child::document[@targetdoc = $targetdoc]"> + <!-- We are done --> + </xsl:when> + <!-- Have we reached the top without a match? --> + <xsl:when test="local-name($dirnode) != 'dir'" > + <xsl:message>Olink error: cannot locate targetdoc <xsl:value-of select="$targetdoc"/> in sitemap</xsl:message> + </xsl:when> + <!-- Is the target in a descendant? --> + <xsl:when test="$dirnode/descendant::document/@targetdoc = $targetdoc"> + <xsl:variable name="step" select="$dirnode/child::dir[descendant::document/@targetdoc = $targetdoc]"/> + <xsl:if test = "$step"> + <xsl:value-of select="$step/@name"/> + <xsl:text>/</xsl:text> + </xsl:if> + <!-- Now recurse with the child --> + <xsl:call-template name="targetpath" > + <xsl:with-param name="dirnode" select="$step"/> + <xsl:with-param name="targetdoc" select="$targetdoc"/> + </xsl:call-template> + </xsl:when> + <!-- Otherwise we need to move up a step --> + <xsl:otherwise> + <xsl:if test="$dirnode/parent::dir"> + <xsl:text>../</xsl:text> + </xsl:if> + <xsl:call-template name="targetpath" > + <xsl:with-param name="dirnode" select="$dirnode/parent::*"/> + <xsl:with-param name="targetdoc" select="$targetdoc"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="olink.page.citation"> + <xsl:param name="olink.key" select="''"/> + <xsl:param name="olink.lang" select="'en'"/> + <xsl:param name="target.database"/> + <xsl:param name="linkend" select="''"/> + <xsl:param name="xrefstyle"> + <xsl:choose> + <xsl:when test="@role and not(@xrefstyle) + and $use.role.as.xrefstyle != 0"> + <xsl:value-of select="@role"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="@xrefstyle"/> + </xsl:otherwise> + </xsl:choose> + </xsl:param> + + <xsl:variable name="targetdoc"> + <xsl:value-of select="substring-before($olink.key, '/')"/> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$linkend != ''"> + <xsl:call-template name="xref.page.citation"> + <xsl:with-param name="linkend" select="$linkend"/> + <xsl:with-param name="target" select="key('id', $linkend)"/> + <xsl:with-param name="xrefstyle" select="$xrefstyle"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="not(starts-with(normalize-space($xrefstyle), + 'select:') + and (contains($xrefstyle, 'page') + or contains($xrefstyle, 'Page'))) + and $current.docid != '' + and $current.docid != $targetdoc + and $insert.olink.page.number = 'yes' "> + + <xsl:variable name="page-number"> + <xsl:for-each select="$target.database" > + <xsl:value-of + select="key('targetptr-key', $olink.key)/@page" /> + </xsl:for-each> + </xsl:variable> + + <xsl:if test="$page-number != ''"> + <xsl:call-template name="substitute-markup"> + <xsl:with-param name="template"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="name" select="'olink.page.citation'"/> + <xsl:with-param name="context" select="'xref'"/> + <xsl:with-param name="lang" select="$olink.lang"/> + </xsl:call-template> + </xsl:with-param> + <xsl:with-param name="pagenumber" select="$page-number"/> + </xsl:call-template> + </xsl:if> + + </xsl:when> + </xsl:choose> +</xsl:template> + +<xsl:template name="olink.document.citation"> + <xsl:param name="olink.key" select="''"/> + <xsl:param name="olink.lang" select="'en'"/> + <xsl:param name="target.database"/> + <xsl:param name="xrefstyle"> + <xsl:choose> + <xsl:when test="@role and not(@xrefstyle) + and $use.role.as.xrefstyle != 0"> + <xsl:value-of select="@role"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="@xrefstyle"/> + </xsl:otherwise> + </xsl:choose> + </xsl:param> + + <xsl:variable name="page"> + <xsl:for-each select="$target.database" > + <xsl:value-of + select="key('targetptr-key', $olink.key)/@page" /> + </xsl:for-each> + </xsl:variable> + + <xsl:variable name="targetdoc"> + <xsl:value-of select="substring-before($olink.key, '/')"/> + </xsl:variable> + + <xsl:variable name="targetptr"> + <xsl:value-of + select="substring-before(substring-after($olink.key, '/'), '/')"/> + </xsl:variable> + + <!-- Don't add docname if pointing to root element --> + <xsl:variable name="rootptr"> + <xsl:for-each select="$target.database" > + <xsl:value-of + select="key('targetdoc-key', $targetdoc)/div[1]/@targetptr" /> + </xsl:for-each> + </xsl:variable> + + <xsl:variable name="docname"> + <xsl:for-each select="$target.database" > + <xsl:value-of + select="key('targetdoc-key', $targetdoc)/div[1]/ttl" /> + </xsl:for-each> + </xsl:variable> + + <xsl:if test="not(starts-with(normalize-space($xrefstyle), 'select:') + and (contains($xrefstyle, 'docname'))) + and ($olink.doctitle = 'yes' or $olink.doctitle = '1') + and $current.docid != '' + and $rootptr != $targetptr + and $current.docid != $targetdoc + and $docname != ''"> + <xsl:call-template name="substitute-markup"> + <xsl:with-param name="template"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="name" select="'olink.document.citation'"/> + <xsl:with-param name="context" select="'xref'"/> + <xsl:with-param name="lang" select="$olink.lang"/> + </xsl:call-template> + </xsl:with-param> + <xsl:with-param name="docname" select="$docname"/> + <xsl:with-param name="pagenumber" select="$page"/> + </xsl:call-template> + </xsl:if> +</xsl:template> + +<xsl:template name="xref.page.citation"> + <!-- Determine if this xref should have a page citation. + Context node is the xref or local olink element --> + <xsl:param name="linkend" select="@linkend"/> + <xsl:param name="target" select="key('id', $linkend)"/> + <xsl:param name="xrefstyle"> + <xsl:choose> + <xsl:when test="@role and not(@xrefstyle) + and $use.role.as.xrefstyle != 0"> + <xsl:value-of select="@role"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="@xrefstyle"/> + </xsl:otherwise> + </xsl:choose> + </xsl:param> + + <xsl:if test="not(starts-with(normalize-space($xrefstyle),'select:') + and (contains($xrefstyle, 'page') + or contains($xrefstyle, 'Page'))) + and ( $insert.xref.page.number = 'yes' + or $insert.xref.page.number = '1') + or local-name($target) = 'para'"> + <xsl:apply-templates select="$target" mode="page.citation"> + <xsl:with-param name="id" select="$linkend"/> + </xsl:apply-templates> + </xsl:if> +</xsl:template> + +</xsl:stylesheet> + diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/pi.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/pi.xsl new file mode 100644 index 000000000..cc2d6c264 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/pi.xsl @@ -0,0 +1,211 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" + xmlns:date="http://exslt.org/dates-and-times" + xmlns:exsl="http://exslt.org/common" + exclude-result-prefixes="doc date exsl" + extension-element-prefixes="date exsl" + version='1.0'> + +<!-- ******************************************************************** + $Id$ + ******************************************************************** + + This file is part of the XSL DocBook Stylesheet distribution. + See ../README or http://docbook.sf.net/release/xsl/current/ for + copyright and other information. + + This file contains general templates for processing processing + instructions common to both the HTML and FO versions of the + DocBook stylesheets. + ******************************************************************** --> + +<!-- Process PIs also on title pages --> +<xsl:template match="processing-instruction()" mode="titlepage.mode"> + <xsl:apply-templates select="."/> +</xsl:template> + +<xsl:template match="processing-instruction('dbtimestamp')"> + <xsl:variable name="format"> + <xsl:variable name="pi-format"> + <xsl:call-template name="pi-attribute"> + <xsl:with-param name="pis" select="."/> + <xsl:with-param name="attribute">format</xsl:with-param> + </xsl:call-template> + </xsl:variable> + <xsl:choose> + <xsl:when test="$pi-format != ''"> + <xsl:value-of select="$pi-format"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'datetime'"/> + <xsl:with-param name="name" select="'format'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="padding"> + <xsl:variable name="pi-padding"> + <xsl:call-template name="pi-attribute"> + <xsl:with-param name="pis" select="."/> + <xsl:with-param name="attribute">padding</xsl:with-param> + </xsl:call-template> + </xsl:variable> + <xsl:choose> + <xsl:when test="$pi-padding != ''"> + <xsl:value-of select="$pi-padding"/> + </xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="date"> + <xsl:choose> + <xsl:when test="function-available('date:date-time')"> + <xsl:value-of select="date:date-time()"/> + </xsl:when> + <xsl:when test="function-available('date:dateTime')"> + <!-- Xalan quirk --> + <xsl:value-of select="date:dateTime()"/> + </xsl:when> + </xsl:choose> + </xsl:variable> + + <xsl:choose> + <xsl:when test="function-available('date:date-time') or + function-available('date:dateTime')"> + <xsl:call-template name="datetime.format"> + <xsl:with-param name="date" select="$date"/> + <xsl:with-param name="format" select="$format"/> + <xsl:with-param name="padding" select="$padding"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:message> + Timestamp processing requires XSLT processor with EXSLT date support. + </xsl:message> + </xsl:otherwise> + </xsl:choose> + +</xsl:template> + +<xsl:template name="datetime.format"> + <xsl:param name="date"/> + <xsl:param name="format"/> + <xsl:param name="padding" select="1"/> + + <xsl:if test="$format != ''"> + <!-- replace any whitespace in the format string with a non-breaking space --> + <xsl:variable name="format-nbsp" + select="translate($format, + ' 	
', + '    ')"/> + <xsl:variable name="tokenized-format-string"> + <xsl:call-template name="str.tokenize.keep.delimiters"> + <xsl:with-param name="string" select="$format-nbsp"/> + <xsl:with-param name="delimiters" select="' ,./-()[]:'"/> + </xsl:call-template> + </xsl:variable> + + <xsl:choose> + <!-- include extra test for Xalan quirk --> + <xsl:when test="function-available('exsl:node-set') or + contains(system-property('xsl:vendor'),'Apache Software Foundation')"> + <!-- We must preserve context node in order to get valid language --> + <xsl:variable name="context" select="."/> + <xsl:for-each select="exsl:node-set($tokenized-format-string)/node()"> + <xsl:variable name="token"> + <xsl:value-of select="."/> + </xsl:variable> + <!-- Restore context node --> + <xsl:for-each select="$context"> + <xsl:choose> + <xsl:when test="$token = 'a'"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'datetime-abbrev'"/> + <xsl:with-param name="name" select="date:day-abbreviation($date)"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$token = 'A'"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'datetime-full'"/> + <xsl:with-param name="name" select="date:day-name($date)"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$token = 'b'"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'datetime-abbrev'"/> + <xsl:with-param name="name" select="date:month-abbreviation($date)"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$token = 'c'"> + <xsl:value-of select="date:date($date)"/> + <xsl:text> </xsl:text> + <xsl:value-of select="date:time($date)"/> + </xsl:when> + <xsl:when test="$token = 'B'"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'datetime-full'"/> + <xsl:with-param name="name" select="date:month-name($date)"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$token = 'd'"> + <xsl:if test="$padding = 1 and + string-length(date:day-in-month($date)) = 1">0</xsl:if> + <xsl:value-of select="date:day-in-month($date)"/> + </xsl:when> + <xsl:when test="$token = 'H'"> + <xsl:if test="$padding = 1 and string-length(date:hour-in-day($date)) = 1">0</xsl:if> + <xsl:value-of select="date:hour-in-day($date)"/> + </xsl:when> + <xsl:when test="$token = 'j'"> + <xsl:value-of select="date:day-in-year($date)"/> + </xsl:when> + <xsl:when test="$token = 'm'"> + <xsl:if test="$padding = 1 and string-length(date:month-in-year($date)) = 1">0</xsl:if> + <xsl:value-of select="date:month-in-year($date)"/> + </xsl:when> + <xsl:when test="$token = 'M'"> + <xsl:if test="string-length(date:minute-in-hour($date)) = 1">0</xsl:if> + <xsl:value-of select="date:minute-in-hour($date)"/> + </xsl:when> + <xsl:when test="$token = 'S'"> + <xsl:if test="string-length(date:second-in-minute($date)) = 1">0</xsl:if> + <xsl:value-of select="date:second-in-minute($date)"/> + </xsl:when> + <xsl:when test="$token = 'U'"> + <xsl:value-of select="date:week-in-year($date)"/> + </xsl:when> + <xsl:when test="$token = 'w'"> + <xsl:value-of select="date:day-in-week($date)"/> + </xsl:when> + <xsl:when test="$token = 'x'"> + <xsl:value-of select="date:date($date)"/> + </xsl:when> + <xsl:when test="$token = 'X'"> + <xsl:value-of select="date:time($date)"/> + </xsl:when> + <xsl:when test="$token = 'Y'"> + <xsl:value-of select="date:year($date)"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$token"/> + </xsl:otherwise> + </xsl:choose> + </xsl:for-each> + </xsl:for-each> + </xsl:when> + <xsl:otherwise> + <xsl:message> + Timestamp processing requires an XSLT processor with support + for the EXSLT node-set() function. + </xsl:message> + </xsl:otherwise> + </xsl:choose> + </xsl:if> + +</xsl:template> + +</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/refentry.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/refentry.xsl new file mode 100644 index 000000000..4373e4849 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/refentry.xsl @@ -0,0 +1,1288 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" + xmlns:date="http://exslt.org/dates-and-times" + exclude-result-prefixes="doc date" + version='1.0'> + +<!-- ******************************************************************** + $Id$ + ******************************************************************** + + This file is part of the XSL DocBook Stylesheet distribution. + See ../README or http://docbook.sf.net/release/xsl/current/ for + copyright and other information. + + ******************************************************************** --> + +<!-- ==================================================================== --> +<doc:reference xmlns=""> + <referenceinfo> + <releaseinfo role="meta"> + $Id$ + </releaseinfo> + <corpauthor>The DocBook Project</corpauthor> + <copyright> + <year>2005-2007</year> + <holder>The DocBook Project</holder> + </copyright> + </referenceinfo> + <title>Refentry Metadata-Gathering Template Reference</title> + + <partintro id="partintro"> + <title>Introduction</title> + + <para>This is technical reference documentation for the "refentry + metadata gathering" templates in the DocBook XSL Stylesheets.</para> + + <para>This is not intended to be user documentation. It is provided + for developers writing customization layers for the + stylesheets.</para> + + <note> + <para>Currently, only the manpages stylesheets make use of these + templates. They are, however, potentially useful elsewhere.</para> + </note> + + </partintro> + +</doc:reference> + +<!-- ==================================================================== --> +<doc:template name="get.refentry.metadata" xmlns=""> + <refpurpose>Gathers metadata from a refentry and its ancestors</refpurpose> + <refdescription id="get.refentry.metadata-desc"> + <para>Reference documentation for particular commands, functions, + etc., is sometimes viewed in isolation from its greater "context". For + example, users view Unix man pages as, well, individual pages, not as + part of a "book" of some kind. Therefore, it is sometimes necessary to + embed "context" information in output for each <sgmltag>refentry</sgmltag>.</para> + + <para>However, one problem is that different users mark up that + context information in different ways. Often (usually), the + context information is not actually part of the content of the + <sgmltag>refentry</sgmltag> itself, but instead part of the content of a + parent or ancestor element to the the <sgmltag>refentry</sgmltag>. And + even then, DocBook provides a variety of elements that users might + potentially use to mark up the same kind of information. One user + might use the <sgmltag>productnumber</sgmltag> element to mark up version + information about a particular product, while another might use + the <sgmltag>releaseinfo</sgmltag> element.</para> + + <para>Taking all that in mind, the + <function>get.refentry.metadata</function> template tries to gather + metadata from a <sgmltag>refentry</sgmltag> element and its ancestor + elements in an intelligent and user-configurable way. The basic + mechanism used in the XPath expressions throughout this stylesheet + is to select the relevant metadata from the *info element that is + closest to the actual <sgmltag>refentry</sgmltag> – either on the + <sgmltag>refentry</sgmltag> itself, or on its nearest ancestor.</para> + + <note> + <para>The <function>get.refentry.metadata</function> + template is actually just sort of a "driver" template; it + calls other templates that do the actual data collection, + then returns the data as a set.</para> + </note> + + </refdescription> + <refparameter id="get.refentry.metadata-params"> + <variablelist> + <varlistentry> + <term>refname</term> + <listitem> + <para>The first <sgmltag>refname</sgmltag> in the refentry</para> + </listitem> + </varlistentry> + <varlistentry> + <term>info</term> + <listitem> + <para>A set of info nodes (from a <sgmltag>refentry</sgmltag> + element and its ancestors)</para> + </listitem> + </varlistentry> + <varlistentry> + <term>prefs</term> + <listitem> + <para>A node containing user preferences (from global + stylesheet parameters)</para> + </listitem> + </varlistentry> + </variablelist> + </refparameter> + <refreturn id="get.refentry.metadata-returns"> + <para>Returns a node set with the following elements. The + descriptions are verbatim from the <literal>man(7)</literal> man + page. + <variablelist> + <varlistentry> + <term>title</term> + <listitem> + <para>the title of the man page (e.g., <literal>MAN</literal>)</para> + </listitem> + </varlistentry> + <varlistentry> + <term>section</term> + <listitem> + <para>the section number the man page should be placed in (e.g., + <literal>7</literal>)</para> + </listitem> + </varlistentry> + <varlistentry> + <term>date</term> + <listitem> + <para>the date of the last revision</para> + </listitem> + </varlistentry> + <varlistentry> + <term>source</term> + <listitem> + <para>the source of the command</para> + </listitem> + </varlistentry> + <varlistentry> + <term>manual</term> + <listitem> + <para>the title of the manual (e.g., <citetitle>Linux + Programmer's Manual</citetitle>)</para> + </listitem> + </varlistentry> + </variablelist> + </para> + </refreturn> +</doc:template> +<xsl:template name="get.refentry.metadata"> + <xsl:param name="refname"/> + <xsl:param name="info"/> + <xsl:param name="prefs"/> + <title> + <xsl:call-template name="get.refentry.title"> + <xsl:with-param name="refname" select="$refname"/> + </xsl:call-template> + </title> + <section> + <xsl:call-template name="get.refentry.section"> + <xsl:with-param name="refname" select="$refname"/> + </xsl:call-template> + </section> + <date> + <xsl:call-template name="get.refentry.date"> + <xsl:with-param name="info" select="$info"/> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param name="prefs" select="$prefs/DatePrefs"/> + </xsl:call-template> + </date> + <source> + <xsl:call-template name="get.refentry.source"> + <xsl:with-param name="info" select="$info"/> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param name="prefs" select="$prefs/SourcePrefs"/> + </xsl:call-template> + </source> + <manual> + <xsl:call-template name="get.refentry.manual"> + <xsl:with-param name="info" select="$info"/> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param name="prefs" select="$prefs/ManualPrefs"/> + </xsl:call-template> + </manual> +</xsl:template> + +<!-- ====================================================================== --> +<doc:template name="get.refentry.title" xmlns=""> + <refpurpose>Gets title metadata for a refentry</refpurpose> + <refdescription id="get.refentry.title-desc"> + <para>The <literal>man(7)</literal> man page describes this as "the + title of the man page (e.g., <literal>MAN</literal>). This differs + from <sgmltag>refname</sgmltag> in that, if the <sgmltag>refentry</sgmltag> has a + <sgmltag>refentrytitle</sgmltag>, we use that as the <sgmltag>title</sgmltag>; + otherwise, we just use first <sgmltag>refname</sgmltag> in the first + <sgmltag>refnamediv</sgmltag> in the source.</para> + </refdescription> + <refparameter id="get.refentry.title-params"> + <variablelist> + <varlistentry> + <term>refname</term> + <listitem> + <para>The first <sgmltag>refname</sgmltag> in the refentry</para> + </listitem> + </varlistentry> + </variablelist> + </refparameter> + <refreturn id="get.refentry.title-returns"> + <para>Returns a <sgmltag>title</sgmltag> node.</para></refreturn> +</doc:template> +<xsl:template name="get.refentry.title"> + <xsl:param name="refname"/> + <xsl:choose> + <xsl:when test="refmeta/refentrytitle"> + <xsl:copy> + <xsl:apply-templates select="refmeta/refentrytitle/node()"/> + </xsl:copy> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$refname"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ==================================================================== --> +<doc:template name="get.refentry.section" xmlns=""> + <refpurpose>Gets section metadata for a refentry</refpurpose> + <refdescription id="get.refentry.section-desc"> + <para>The <literal>man(7)</literal> man page describes this as "the + section number the man page should be placed in (e.g., + <literal>7</literal>)". If we do not find a <sgmltag>manvolnum</sgmltag> + specified in the source, and we find that the <sgmltag>refentry</sgmltag> is + for a function, we use the section number <literal>3</literal> + ["Library calls (functions within program libraries)"]; otherwise, we + default to using <literal>1</literal> ["Executable programs or shell + commands"].</para> + </refdescription> + <refparameter id="get.refentry.section-params"> + <variablelist> + <varlistentry> + <term>refname</term> + <listitem> + <para>The first <sgmltag>refname</sgmltag> in the refentry</para> + </listitem> + </varlistentry> + <varlistentry> + <term>quiet</term> + <listitem> + <para>If non-zero, no "missing" message is emitted</para> + </listitem> + </varlistentry> + </variablelist> + </refparameter> + <refreturn id="get.refentry.section-returns"> + <para>Returns a string representing a section number.</para></refreturn> +</doc:template> +<xsl:template name="get.refentry.section"> + <xsl:param name="refname"/> + <xsl:param name="quiet" select="0"/> + <xsl:choose> + <xsl:when test="refmeta/manvolnum"> + <xsl:value-of select="refmeta/manvolnum"/> + </xsl:when> + <xsl:otherwise> + <xsl:if test="$quiet = 0"> + <xsl:if test="$refentry.meta.get.quietly = 0"> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta manvol</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>no refentry/refmeta/manvolnum</xsl:text> + </xsl:with-param> + </xsl:call-template> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta manvol</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>see http://docbook.sf.net/el/manvolnum</xsl:text> + </xsl:with-param> + </xsl:call-template> + </xsl:if> + </xsl:if> + <xsl:choose> + <xsl:when test=".//funcsynopsis"> + <xsl:if test="$quiet = 0"> + <xsl:if test="$refentry.meta.get.quietly = 0"> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta manvol</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>Setting man section to 3</xsl:text> + </xsl:with-param> + </xsl:call-template> + </xsl:if> + </xsl:if> + <xsl:text>3</xsl:text> + </xsl:when> + <xsl:otherwise> + <xsl:text>1</xsl:text> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ==================================================================== --> +<doc:template name="get.refentry.date" xmlns=""> + <refpurpose>Gets date metadata for a refentry</refpurpose> + <refdescription id="get.refentry.date-desc"> + <para>The <literal>man(7)</literal> man page describes this as "the + date of the last revision". If we cannot find a date in the source, we + generate one.</para> + </refdescription> + <refparameter id="get.refentry.date-params"> + <variablelist> + <varlistentry> + <term>refname</term> + <listitem> + <para>The first <sgmltag>refname</sgmltag> in the refentry</para> + </listitem> + </varlistentry> + <varlistentry> + <term>info</term> + <listitem> + <para>A set of info nodes (from a <sgmltag>refentry</sgmltag> + element and its ancestors)</para> + </listitem> + </varlistentry> + <varlistentry> + <term>prefs</term> + <listitem> + <para>A node containing users preferences (from global stylesheet parameters)</para> + </listitem> + </varlistentry> + </variablelist> + </refparameter> + <refreturn id="get.refentry.date-returns"> + <para>Returns a <sgmltag>date</sgmltag> node.</para> + </refreturn> +</doc:template> +<xsl:template name="get.refentry.date"> + <xsl:param name="refname"/> + <xsl:param name="info"/> + <xsl:param name="prefs"/> + <xsl:variable name="Date"> + <xsl:choose> + <!-- * if profiling is enabled for date, and the date --> + <!-- * profile is non-empty, use it --> + <xsl:when test="not($prefs/@profileEnabled = 0) and + not($prefs/@profile = '')"> + <xsl:call-template name="evaluate.info.profile"> + <xsl:with-param name="profile" select="$prefs/@profile"/> + <xsl:with-param name="info" select="$info"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <!-- * either profiling is not enabled for date, or the--> + <!-- * date profile is empty, so we need to look for date --> + <!-- * in *info --> + <xsl:choose> + <!-- * look for date or pubdate in *info --> + <xsl:when test="$info/date/node() + |$info/pubdate/node()"> + <xsl:apply-templates + select="(($info[date])[last()]/date)[1]| + (($info[pubdate])[last()]/pubdate)[1]"/> + </xsl:when> + <xsl:otherwise> + <!-- * found no Date or Pubdate --> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + <xsl:choose> + <xsl:when test="not($Date = '')"> + <xsl:value-of select="$Date"/> + </xsl:when> + <!-- * We couldn't find a date, so we generate a date. --> + <!-- * And we make it an appropriately localized date. --> + <xsl:otherwise> + <xsl:if test="$refentry.meta.get.quietly = 0"> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta date</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>no date; using generated date</xsl:text> + </xsl:with-param> + </xsl:call-template> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta date</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>see http://docbook.sf.net/el/date</xsl:text> + </xsl:with-param> + </xsl:call-template> + </xsl:if> + <xsl:call-template name="datetime.format"> + <xsl:with-param name="date"> + <xsl:choose> + <xsl:when test="function-available('date:date-time')"> + <xsl:value-of select="date:date-time()"/> + </xsl:when> + <xsl:when test="function-available('date:dateTime')"> + <!-- Xalan quirk --> + <xsl:value-of select="date:dateTime()"/> + </xsl:when> + </xsl:choose> + </xsl:with-param> + <xsl:with-param name="format"> + <xsl:call-template name="gentext.template"> + <xsl:with-param name="context" select="'datetime'"/> + <xsl:with-param name="name" select="'format'"/> + </xsl:call-template> + </xsl:with-param> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ==================================================================== --> +<doc:template name="get.refentry.source" xmlns=""> + <refpurpose>Gets source metadata for a refentry</refpurpose> + <refdescription id="get.refentry.source-desc"> + <para>The <literal>man(7)</literal> man page describes this as "the + source of the command", and provides the following examples: + <itemizedlist> + <listitem> + <para>For binaries, use something like: GNU, NET-2, SLS + Distribution, MCC Distribution.</para> + </listitem> + <listitem> + <para>For system calls, use the version of the kernel that you are + currently looking at: Linux 0.99.11.</para> + </listitem> + <listitem> + <para>For library calls, use the source of the function: GNU, BSD + 4.3, Linux DLL 4.4.1.</para> + </listitem> + </itemizedlist> + </para> + + <para>The <literal>solbook(5)</literal> man page describes + something very much like what <literal>man(7)</literal> calls + "source", except that <literal>solbook(5)</literal> names it + "software" and describes it like this: + <blockquote> + <para>This is the name of the software product that the topic + discussed on the reference page belongs to. For example UNIX + commands are part of the <literal>SunOS x.x</literal> + release.</para> + </blockquote> + </para> + + <para>In practice, there are many pages that simply have a version + number in the "source" field. So, it looks like what we have is a + two-part field, + <replaceable>Name</replaceable> <replaceable>Version</replaceable>, + where: + <variablelist> + <varlistentry> + <term>Name</term> + <listitem> + <para>product name (e.g., BSD) or org. name (e.g., GNU)</para> + </listitem> + </varlistentry> + <varlistentry> + <term>Version</term> + <listitem> + <para>version name</para> + </listitem> + </varlistentry> + </variablelist> + Each part is optional. If the <replaceable>Name</replaceable> is a + product name, then the <replaceable>Version</replaceable> is probably + the version of the product. Or there may be no + <replaceable>Name</replaceable>, in which case, if there is a + <replaceable>Version</replaceable>, it is probably the version of the + item itself, not the product it is part of. Or, if the + <replaceable>Name</replaceable> is an organization name, then there + probably will be no <replaceable>Version</replaceable>. + </para> + </refdescription> + <refparameter id="get.refentry.source-params"> + <variablelist> + <varlistentry> + <term>refname</term> + <listitem> + <para>The first <sgmltag>refname</sgmltag> in the refentry</para> + </listitem> + </varlistentry> + <varlistentry> + <term>info</term> + <listitem> + <para>A set of info nodes (from a <sgmltag>refentry</sgmltag> + element and its ancestors)</para> + </listitem> + </varlistentry> + <varlistentry> + <term>prefs</term> + <listitem> + <para>A node containing users preferences (from global + stylesheet parameters)</para> + </listitem> + </varlistentry> + </variablelist> + </refparameter> + <refreturn id="get.refentry.source-returns"> + <para>Returns a <sgmltag>source</sgmltag> node.</para> + </refreturn> +</doc:template> +<xsl:template name="get.refentry.source"> + <xsl:param name="refname"/> + <xsl:param name="info"/> + <xsl:param name="prefs"/> + <xsl:variable name="Name"> + <xsl:if test="$prefs/Name/@suppress = 0"> + <xsl:call-template name="get.refentry.source.name"> + <xsl:with-param name="info" select="$info"/> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param name="prefs" select="$prefs/Name"/> + </xsl:call-template> + </xsl:if> + </xsl:variable> + <xsl:variable name="Version"> + <xsl:if test="$prefs/Version/@suppress = 0"> + <xsl:call-template name="get.refentry.version"> + <xsl:with-param name="info" select="$info"/> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param name="prefs" select="$prefs/Version"/> + </xsl:call-template> + </xsl:if> + </xsl:variable> + <xsl:choose> + <!-- * if we have a Name and/or Version, use either or both --> + <!-- * of those, in the form "Name Version" or just "Name" --> + <!-- * or just "Version" --> + <xsl:when test="not($Name = '') or not($Version = '')"> + <xsl:choose> + <xsl:when test="not($Name = '') and not($Version = '')"> + <xsl:copy-of select="$Name"/> + <xsl:text> </xsl:text> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="$Name"/> + </xsl:otherwise> + </xsl:choose> + <xsl:copy-of select="$Version"/> + </xsl:when> + <!-- * if no Name and no Version, use fallback (if any) --> + <xsl:when test="not($prefs/@fallback = '')"> + <xsl:variable name="source.fallback"> + <xsl:call-template name="evaluate.info.profile"> + <xsl:with-param name="profile" select="$prefs/@fallback"/> + <xsl:with-param name="info" select="$info"/> + </xsl:call-template> + </xsl:variable> + <xsl:choose> + <xsl:when test="not($source.fallback = '')"> + <xsl:value-of select="$source.fallback"/> + </xsl:when> + <xsl:otherwise> + <xsl:if test="$refentry.meta.get.quietly = 0"> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Warn</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta source</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>no valid fallback for source; leaving empty</xsl:text> + </xsl:with-param> + </xsl:call-template> + </xsl:if> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:if test="$refentry.meta.get.quietly = 0"> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Warn</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta source</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>no source fallback specified; leaving empty</xsl:text> + </xsl:with-param> + </xsl:call-template> + </xsl:if> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ==================================================================== --> +<doc:template name="get.refentry.source.name" xmlns=""> + <refpurpose>Gets source-name metadata for a refentry</refpurpose> + <refdescription id="get.refentry.source.name-desc"> + <para>A "source name" is one part of a (potentially) two-part + <replaceable>Name</replaceable> <replaceable>Version</replaceable> + source field. For more details, see the documentation for the + <function>get.refentry.source</function> template.</para> + </refdescription> + <refparameter id="get.refentry.source.name-params"> + <variablelist> + <varlistentry> + <term>refname</term> + <listitem> + <para>The first <sgmltag>refname</sgmltag> in the refentry</para> + </listitem> + </varlistentry> + <varlistentry> + <term>info</term> + <listitem> + <para>A set of info nodes (from a <sgmltag>refentry</sgmltag> + element and its ancestors)</para> + </listitem> + </varlistentry> + <varlistentry> + <term>prefs</term> + <listitem> + <para>A node containing users preferences (from global + stylesheet parameters)</para> + </listitem> + </varlistentry> + </variablelist> + </refparameter> + <refreturn id="get.refentry.source.name-returns"> + <para>Depending on what output method is used for the + current stylesheet, either returns a text node or possibly an element + node, containing "source name" data.</para> + </refreturn> +</doc:template> +<xsl:template name="get.refentry.source.name"> + <xsl:param name="refname"/> + <xsl:param name="info"/> + <xsl:param name="prefs"/> + <xsl:choose> + <!-- * if profiling is enabled for source.name, and the --> + <!-- * source.name profile is non-empty, use it --> + <xsl:when test="not($prefs/@profileEnabled = 0) and + not($prefs/@profile = '')"> + <xsl:call-template name="evaluate.info.profile"> + <xsl:with-param name="profile" select="$prefs/@profile"/> + <xsl:with-param name="info" select="$info"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <!-- * either profiling for source.name is not enabled, or--> + <!-- * the source.name profile is empty; so we need to look --> + <!-- * for a name to use --> + <xsl:choose> + <xsl:when test="refmeta/refmiscinfo[@class = 'source' or @class = 'software']"> + <xsl:apply-templates + select="refmeta/refmiscinfo[@class = 'source' or @class='software'][1]/node()"/> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="$info/productname"> + <xsl:call-template name="set.refentry.metadata"> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param + name="info" + select="($info[productname])[last()]"/> + <xsl:with-param + name="contents" + select="(($info[productname])[last()]/productname)[1]"/> + <xsl:with-param name="context">source</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="$info/corpname"> + <xsl:call-template name="set.refentry.metadata"> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param + name="info" + select="($info[corpname])[last()]"/> + <xsl:with-param + name="contents" + select="(($info[corpname])[last()]/corpname)[1]"/> + <xsl:with-param name="context">source</xsl:with-param> + <xsl:with-param name="preferred">productname</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="$info/corpcredit"> + <xsl:call-template name="set.refentry.metadata"> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param + name="info" + select="($info[corpcredit])[last()]"/> + <xsl:with-param + name="contents" + select="(($info[corpcredit])[last()]/corpcredit)[1]"/> + <xsl:with-param name="context">source</xsl:with-param> + <xsl:with-param name="preferred">productname</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="$info/corpauthor"> + <xsl:call-template name="set.refentry.metadata"> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param + name="info" + select="($info[corpauthor])[last()]"/> + <xsl:with-param + name="contents" + select="(($info[corpauthor])[last()]/corpauthor)[1]"/> + <xsl:with-param name="context">source</xsl:with-param> + <xsl:with-param name="preferred">productname</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="$info//orgname"> + <xsl:call-template name="set.refentry.metadata"> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param + name="info" + select="($info[//orgname])[last()]"/> + <xsl:with-param + name="contents" + select="(($info[//orgname])[last()]//orgname)[1]"/> + <xsl:with-param name="context">source</xsl:with-param> + <xsl:with-param name="preferred">productname</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="$info//publishername"> + <xsl:call-template name="set.refentry.metadata"> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param + name="info" + select="($info[//publishername])[last()]"/> + <xsl:with-param + name="contents" + select="(($info[//publishername])[last()]//publishername)[1]"/> + <xsl:with-param name="context">source</xsl:with-param> + <xsl:with-param name="preferred">productname</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:if test="$refentry.meta.get.quietly = 0"> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta source</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>no *info/productname or alternative</xsl:text> + </xsl:with-param> + </xsl:call-template> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta source</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>see http://docbook.sf.net/el/productname</xsl:text> + </xsl:with-param> + </xsl:call-template> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta source</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>no refentry/refmeta/refmiscinfo@class=source</xsl:text> + </xsl:with-param> + </xsl:call-template> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta source</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>see http://docbook.sf.net/el/refmiscinfo</xsl:text> + </xsl:with-param> + </xsl:call-template> + </xsl:if> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ==================================================================== --> +<doc:template name="get.refentry.version" xmlns=""> + <refpurpose>Gets version metadata for a refentry</refpurpose> + <refdescription id="get.refentry.version-desc"> + <para>A "version" is one part of a (potentially) two-part + <replaceable>Name</replaceable> <replaceable>Version</replaceable> + source field. For more details, see the documentation for the + <function>get.refentry.source</function> template.</para> + </refdescription> + <refparameter id="get.refentry.version-params"> + <variablelist> + <varlistentry> + <term>refname</term> + <listitem> + <para>The first <sgmltag>refname</sgmltag> in the refentry</para> + </listitem> + </varlistentry> + <varlistentry> + <term>info</term> + <listitem> + <para>A set of info nodes (from a <sgmltag>refentry</sgmltag> + element and its ancestors)</para> + </listitem> + </varlistentry> + <varlistentry> + <term>prefs</term> + <listitem> + <para>A node containing users preferences (from global + stylesheet parameters)</para> + </listitem> + </varlistentry> + </variablelist> + </refparameter> + <refreturn id="get.refentry.version-returns"> + <para>Depending on what output method is used for the + current stylesheet, either returns a text node or possibly an element + node, containing "version" data.</para> + </refreturn> +</doc:template> +<xsl:template name="get.refentry.version"> + <xsl:param name="refname"/> + <xsl:param name="info"/> + <xsl:param name="prefs"/> + <xsl:choose> + <!-- * if profiling is enabled for version, and the --> + <!-- * version profile is non-empty, use it --> + <xsl:when test="not($prefs/@profileEnabled = 0) and + not($prefs/@profile = '')"> + <xsl:call-template name="evaluate.info.profile"> + <xsl:with-param name="profile" select="$prefs/@profile"/> + <xsl:with-param name="info" select="$info"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <!-- * either profiling for source.name is not enabled, or--> + <!-- * the source.name profile is empty; so we need to look --> + <!-- * for a name to use --> + <xsl:choose> + <xsl:when test="refmeta/refmiscinfo[@class = 'version']"> + <xsl:apply-templates + select="refmeta/refmiscinfo[@class = 'version'][1]/node()"/> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="$info/productnumber"> + <xsl:call-template name="set.refentry.metadata"> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param + name="info" + select="($info[productnumber])[last()]"/> + <xsl:with-param + name="contents" + select="(($info[productnumber])[last()]/productnumber)[1]"/> + <xsl:with-param name="context">version</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="$info/edition"> + <xsl:call-template name="set.refentry.metadata"> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param + name="info" + select="($info[edition])[last()]"/> + <xsl:with-param + name="contents" + select="(($info[edition])[last()]/edition)[1]"/> + <xsl:with-param name="context">version</xsl:with-param> + <xsl:with-param name="preferred">productnumber</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="$info/releaseinfo"> + <xsl:call-template name="set.refentry.metadata"> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param + name="info" + select="($info[releaseinfo])[last()]"/> + <xsl:with-param + name="contents" + select="(($info[releaseinfo])[last()]/releaseinfo)[1]"/> + <xsl:with-param name="context">version</xsl:with-param> + <xsl:with-param name="preferred">productnumber</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:if test="$refentry.meta.get.quietly = 0"> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta version</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>no *info/productnumber or alternative</xsl:text> + </xsl:with-param> + </xsl:call-template> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta version</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>see http://docbook.sf.net/el/productnumber</xsl:text> + </xsl:with-param> + </xsl:call-template> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta version</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>no refentry/refmeta/refmiscinfo@class=version</xsl:text> + </xsl:with-param> + </xsl:call-template> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta version</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>see http://docbook.sf.net/el/refmiscinfo</xsl:text> + </xsl:with-param> + </xsl:call-template> + </xsl:if> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ==================================================================== --> +<doc:template name="get.refentry.manual" xmlns=""> + <refpurpose>Gets source metadata for a refentry</refpurpose> + <refdescription id="get.refentry.manual-desc"> + <para>The <literal>man(7)</literal> man page describes this as "the + title of the manual (e.g., <citetitle>Linux Programmer's + Manual</citetitle>)". Here are some examples from existing man pages: + <itemizedlist> + <listitem> + <para><citetitle>dpkg utilities</citetitle> + (<command>dpkg-name</command>)</para> + </listitem> + <listitem> + <para><citetitle>User Contributed Perl Documentation</citetitle> + (<command>GET</command>)</para> + </listitem> + <listitem> + <para><citetitle>GNU Development Tools</citetitle> + (<command>ld</command>)</para> + </listitem> + <listitem> + <para><citetitle>Emperor Norton Utilities</citetitle> + (<command>ddate</command>)</para> + </listitem> + <listitem> + <para><citetitle>Debian GNU/Linux manual</citetitle> + (<command>faked</command>)</para> + </listitem> + <listitem> + <para><citetitle>GIMP Manual Pages</citetitle> + (<command>gimp</command>)</para> + </listitem> + <listitem> + <para><citetitle>KDOC Documentation System</citetitle> + (<command>qt2kdoc</command>)</para> + </listitem> + </itemizedlist> + </para> + + <para>The <literal>solbook(5)</literal> man page describes + something very much like what <literal>man(7)</literal> calls + "manual", except that <literal>solbook(5)</literal> names it + "sectdesc" and describes it like this: + <blockquote> + <para>This is the section title of the reference page; for + example <literal>User Commands</literal>.</para> + </blockquote> + </para> + + </refdescription> + <refparameter id="get.refentry.manual-params"> + <variablelist> + <varlistentry> + <term>refname</term> + <listitem> + <para>The first <sgmltag>refname</sgmltag> in the refentry</para> + </listitem> + </varlistentry> + <varlistentry> + <term>info</term> + <listitem> + <para>A set of info nodes (from a <sgmltag>refentry</sgmltag> + element and its ancestors)</para> + </listitem> + </varlistentry> + <varlistentry> + <term>prefs</term> + <listitem> + <para>A node containing users preferences (from global + stylesheet parameters)</para> + </listitem> + </varlistentry> + </variablelist> + </refparameter> + <refreturn id="get.refentry.manual-returns"> + <para>Returns a <sgmltag>manual</sgmltag> node.</para> + </refreturn> +</doc:template> +<xsl:template name="get.refentry.manual"> + <xsl:param name="refname"/> + <xsl:param name="info"/> + <xsl:param name="prefs"/> + <xsl:variable name="Manual"> + <xsl:choose> + <!-- * if profiling is enabled for manual, and the manual --> + <!-- * profile is non-empty, use it --> + <xsl:when test="not($prefs/@profileEnabled = 0) and + not($prefs/@profile = '')"> + <xsl:call-template name="evaluate.info.profile"> + <xsl:with-param name="profile" select="$prefs/@profile"/> + <xsl:with-param name="info" select="$info"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="refmeta/refmiscinfo[@class = 'manual' or @class = 'sectdesc']"> + <xsl:apply-templates + select="refmeta/refmiscinfo[@class = 'manual' or @class = 'sectdesc'][1]/node()"/> + </xsl:when> + <xsl:otherwise> + <!-- * only in the case of choosing appropriate --> + <!-- * "manual" content do we select the furthest --> + <!-- * (first) matching element instead of the --> + <!-- * closest (last) matching one --> + <xsl:choose> + <xsl:when test="ancestor::*/title"> + <xsl:call-template name="set.refentry.metadata"> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param + name="info" + select="(ancestor::*[title])[1]"/> + <xsl:with-param + name="contents" + select="(ancestor::*[title])[1]/title"/> + <xsl:with-param name="context">manual</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="$info/title"> + <xsl:call-template name="set.refentry.metadata"> + <xsl:with-param name="refname" select="$refname"/> + <xsl:with-param + name="info" + select="($info[title])[1]"/> + <xsl:with-param + name="contents" + select="(($info[title])[1]/title)[1]"/> + <xsl:with-param name="context">manual</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:if test="$refentry.meta.get.quietly = 0"> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta manual</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>no titled ancestor of refentry</xsl:text> + </xsl:with-param> + </xsl:call-template> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta manual</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>no refentry/refmeta/refmiscinfo@class=manual</xsl:text> + </xsl:with-param> + </xsl:call-template> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta manual</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>see http://docbook.sf.net/el/refmiscinfo</xsl:text> + </xsl:with-param> + </xsl:call-template> + </xsl:if> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + <xsl:choose> + <xsl:when test="not($Manual = '')"> + <xsl:copy-of select="$Manual"/> + </xsl:when> + <!-- * if no Manual, use contents of specified Fallback (if any) --> + <xsl:when test="not($prefs/@fallback = '')"> + <xsl:variable name="manual.fallback"> + <xsl:call-template name="evaluate.info.profile"> + <xsl:with-param name="profile" select="$prefs/@fallback"/> + <xsl:with-param name="info" select="$info"/> + </xsl:call-template> + </xsl:variable> + <xsl:choose> + <xsl:when test="not($manual.fallback = '')"> + <xsl:value-of select="$manual.fallback"/> + </xsl:when> + <xsl:otherwise> + <xsl:if test="$refentry.meta.get.quietly = 0"> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Warn</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta manual</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>no valid fallback for manual; leaving empty</xsl:text> + </xsl:with-param> + </xsl:call-template> + </xsl:if> + </xsl:otherwise> + </xsl:choose> + + </xsl:when> + <xsl:otherwise> + <xsl:if test="$refentry.meta.get.quietly = 0"> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Warn</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc">meta manual</xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>no manual fallback specified; leaving empty</xsl:text> + </xsl:with-param> + </xsl:call-template> + </xsl:if> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ====================================================================== --> +<doc:template name="get.refentry.metadata.prefs" xmlns=""> + <refpurpose>Gets user preferences for refentry metadata gathering</refpurpose> + <refdescription id="get.refentry.metadata.prefs-desc"> + <para>The DocBook XSL stylesheets include several user-configurable + global stylesheet parameters for controlling <sgmltag>refentry</sgmltag> + metadata gathering. Those parameters are not read directly by the + other <sgmltag>refentry</sgmltag> metadata-gathering + templates. Instead, they are read only by the + <function>get.refentry.metadata.prefs</function> template, + which assembles them into a structure that is then passed to + the other <sgmltag>refentry</sgmltag> metadata-gathering + templates.</para> + + <para>So the, <function>get.refentry.metadata.prefs</function> + template is the only interface to collecting stylesheet parameters for + controlling <sgmltag>refentry</sgmltag> metadata gathering.</para> + </refdescription> + <refparameter id="get.refentry.metadata.prefs-params"> + <para>There are no local parameters for this template; however, it + does rely on a number of global parameters.</para> + </refparameter> + <refreturn id="get.refentry.metadata.prefs-returns"> + <para>Returns a <sgmltag>manual</sgmltag> node.</para> + </refreturn> +</doc:template> +<xsl:template name="get.refentry.metadata.prefs"> + <DatePrefs> + <xsl:attribute name="profile"> + <xsl:value-of select="$refentry.date.profile"/> + </xsl:attribute> + <xsl:attribute name="profileEnabled"> + <xsl:value-of select="$refentry.date.profile.enabled"/> + </xsl:attribute> + </DatePrefs> + <SourcePrefs> + <xsl:attribute name="fallback"> + <xsl:value-of select="$refentry.source.fallback.profile"/> + </xsl:attribute> + <Name> + <xsl:attribute name="profile"> + <xsl:value-of select="$refentry.source.name.profile"/> + </xsl:attribute> + <xsl:attribute name="profileEnabled"> + <xsl:value-of select="$refentry.source.name.profile.enabled"/> + </xsl:attribute> + <xsl:attribute name="suppress"> + <xsl:value-of select="$refentry.source.name.suppress"/> + </xsl:attribute> + </Name> + <Version> + <xsl:attribute name="profile"> + <xsl:value-of select="$refentry.version.profile"/> + </xsl:attribute> + <xsl:attribute name="profileEnabled"> + <xsl:value-of select="$refentry.version.profile.enabled"/> + </xsl:attribute> + <xsl:attribute name="suppress"> + <xsl:value-of select="$refentry.version.suppress"/> + </xsl:attribute> + </Version> + </SourcePrefs> + <ManualPrefs> + <xsl:attribute name="fallback"> + <xsl:value-of select="$refentry.manual.fallback.profile"/> + </xsl:attribute> + <xsl:attribute name="profile"> + <xsl:value-of select="$refentry.manual.profile"/> + </xsl:attribute> + <xsl:attribute name="profileEnabled"> + <xsl:value-of select="$refentry.manual.profile.enabled"/> + </xsl:attribute> + </ManualPrefs> +</xsl:template> + +<!-- ====================================================================== --> +<doc:template name="set.refentry.metadata" xmlns=""> + <refpurpose>Sets content of a refentry metadata item</refpurpose> + <refdescription id="set.refentry.metadata-desc"> + <para>The <function>set.refentry.metadata</function> template is + called each time a suitable source element is found for a certain + metadata field.</para> + </refdescription> + <refparameter id="set.refentry.metadata-params"> + <variablelist> + <varlistentry> + <term>refname</term> + <listitem> + <para>The first <sgmltag>refname</sgmltag> in the refentry</para> + </listitem> + </varlistentry> + <varlistentry> + <term>info</term> + <listitem> + <para>A single *info node that contains the selected source element.</para> + </listitem> + </varlistentry> + <varlistentry> + <term>contents</term> + <listitem> + <para>A node containing the selected source element.</para> + </listitem> + </varlistentry> + <varlistentry> + <term>context</term> + <listitem> + <para>A string describing the metadata context in which the + <function>set.refentry.metadata</function> template was + called: either "date", "source", "version", or "manual".</para> + </listitem> + </varlistentry> + </variablelist> + </refparameter> + <refreturn id="set.refentry.metadata-returns"> + <para>Returns formatted contents of a selected source element.</para></refreturn> +</doc:template> +<xsl:template name="set.refentry.metadata"> + <xsl:param name="refname"/> + <xsl:param name="info"/> + <xsl:param name="contents"/> + <xsl:param name="context"/> + <xsl:param name="preferred"/> + <xsl:if test="not($preferred = '')"> + <xsl:if test="$refentry.meta.get.quietly = 0"> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc" select="concat('meta ', $context)"/> + <xsl:with-param name="message" select="concat('No ', $preferred)"/> + </xsl:call-template> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc" select="concat('meta ', $context)"/> + <xsl:with-param name="message"> + <xsl:text>no refentry/refmeta/refmiscinfo@class=</xsl:text> + <xsl:value-of select="$context"/> + </xsl:with-param> + </xsl:call-template> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Note</xsl:with-param> + <xsl:with-param name="source" select="$refname"/> + <xsl:with-param name="context-desc" select="concat('meta ', $context)"/> + <xsl:with-param name="message" select="concat('Using ', local-name($contents))"/> + </xsl:call-template> + </xsl:if> + </xsl:if> + <xsl:value-of select="$contents"/> +</xsl:template> + +</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/stripns.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/stripns.xsl new file mode 100644 index 000000000..8ecb3d646 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/stripns.xsl @@ -0,0 +1,367 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:ng="http://docbook.org/docbook-ng" + xmlns:db="http://docbook.org/ns/docbook" + xmlns:saxon="http://icl.com/saxon" + xmlns:NodeInfo="http://org.apache.xalan.lib.NodeInfo" + xmlns:exsl="http://exslt.org/common" + exclude-result-prefixes="db ng exsl saxon NodeInfo" + version='1.0'> + +<!-- ******************************************************************** + $Id$ + ******************************************************************** + + This file is part of the XSL DocBook Stylesheet distribution. + See ../README or http://docbook.sf.net/release/xsl/current/ for + copyright and other information. + + This file contains general templates common to both the HTML and FO + versions of the DocBook stylesheets. + ******************************************************************** --> + +<xsl:import href="utility.xsl"/> + +<!-- * Get a title for current doc so that we let the user --> +<!-- * know what document we are processing at this point. --> +<xsl:variable name="doc.title"> + <xsl:call-template name="get.doc.title"/> +</xsl:variable> + +<!-- put an xml:base attribute on the root element --> +<xsl:template match="/*" mode="stripNS"> + <xsl:choose> + <xsl:when test="self::ng:* or self::db:*"> + <xsl:element name="{local-name(.)}"> + <xsl:copy-of select="@*[not(name(.) = 'xml:id') + and not(name(.) = 'version')]"/> + <xsl:if test="@xml:id"> + <xsl:attribute name="id"> + <xsl:value-of select="@xml:id"/> + </xsl:attribute> + </xsl:if> + + <xsl:call-template name="add-xml-base"/> + + <xsl:apply-templates mode="stripNS"/> + </xsl:element> + </xsl:when> + <xsl:otherwise> + <xsl:copy> + <xsl:copy-of select="@*[not(name(.) = 'xml:id') + and not(name(.) = 'version')]"/> + <xsl:if test="@xml:id"> + <xsl:attribute name="id"> + <xsl:value-of select="@xml:id"/> + </xsl:attribute> + </xsl:if> + + <xsl:call-template name="add-xml-base"/> + + <xsl:apply-templates mode="stripNS"/> + </xsl:copy> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="*" mode="stripNS"> + <xsl:choose> + <xsl:when test="self::ng:* or self::db:*"> + <xsl:element name="{local-name(.)}"> + <xsl:copy-of select="@*[not(name(.) = 'xml:id') + and not(name(.) = 'version')]"/> + <xsl:if test="@xml:id"> + <xsl:attribute name="id"> + <xsl:value-of select="@xml:id"/> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates mode="stripNS"/> + </xsl:element> + </xsl:when> + <xsl:otherwise> + <xsl:copy> + <xsl:copy-of select="@*[not(name(.) = 'xml:id') + and not(name(.) = 'version')]"/> + <xsl:if test="@xml:id"> + <xsl:attribute name="id"> + <xsl:value-of select="@xml:id"/> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates mode="stripNS"/> + </xsl:copy> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="db:info" mode="stripNS"> + <xsl:variable name="info"> + <xsl:choose> + <xsl:when test="parent::db:article + |parent::db:appendix + |parent::db:bibliography + |parent::db:book + |parent::db:chapter + |parent::db:glossary + |parent::db:index + |parent::db:part + |parent::db:preface + |parent::db:refentry + |parent::db:reference + |parent::db:refsect1 + |parent::db:refsect2 + |parent::db:refsect3 + |parent::db:refsection + |parent::db:refsynopsisdiv + |parent::db:sect1 + |parent::db:sect2 + |parent::db:sect3 + |parent::db:sect4 + |parent::db:sect5 + |parent::db:section + |parent::db:setindex + |parent::db:set + |parent::db:slides + |parent::db:sidebar"> + <xsl:value-of select="local-name(parent::*)"/> + <xsl:text>info</xsl:text> + </xsl:when> + <xsl:when test="parent::db:audioobject + |parent::db:imageobject + |parent::db:inlinemediaobject + |parent::db:mediaobject + |parent::db:mediaobjectco + |parent::db:textobject + |parent::db:videoobject"> + <xsl:text>objectinfo</xsl:text> + </xsl:when> + <xsl:otherwise>blockinfo</xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:element name="{$info}"> + <xsl:copy-of select="@*[not(name(.) = 'xml:id') + and not(name(.) = 'version')]"/> + <xsl:if test="@xml:id"> + <xsl:attribute name="id"> + <xsl:value-of select="@xml:id"/> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates mode="stripNS"/> + </xsl:element> + + <xsl:if test="(not(../db:title) and not(../ng:title)) + and ($info = 'prefaceinfo' + or $info = 'chapterinfo' + or $info = 'sectioninfo' + or $info = 'sect1info' + or $info = 'sect2info' + or $info = 'sect3info' + or $info = 'sect4info' + or $info = 'sect5info' + or $info = 'refsectioninfo' + or $info = 'refsect1info' + or $info = 'refsect2info' + or $info = 'refsect3info' + or $info = 'blockinfo' + or $info = 'appendixinfo')"> + <xsl:apply-templates select="db:title|ng:title" mode="stripNS"/> + </xsl:if> + +</xsl:template> + +<xsl:template match="ng:link|db:link" mode="stripNS"> + <xsl:variable xmlns:xlink="http://www.w3.org/1999/xlink" + name="href" select="@xlink:href|@href"/> + <xsl:choose> + <xsl:when test="$href != '' and not(starts-with($href,'#'))"> + <ulink url="{$href}"> + <xsl:for-each select="@*"> + <xsl:if test="local-name(.) != 'href' + and name(.) != 'version' + and name(.) != 'xml:id'"> + <xsl:copy/> + </xsl:if> + </xsl:for-each> + <xsl:if test="@xml:id"> + <xsl:attribute name="id"> + <xsl:value-of select="@xml:id"/> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates mode="stripNS"/> + </ulink> + </xsl:when> + <xsl:when test="$href != '' and starts-with($href,'#')"> + <link linkend="{substring-after($href,'#')}"> + <xsl:for-each select="@*"> + <xsl:if test="local-name(.) != 'href' + and name(.) != 'version' + and name(.) != 'xml:id'"> + <xsl:copy/> + </xsl:if> + </xsl:for-each> + <xsl:if test="@xml:id"> + <xsl:attribute name="id"> + <xsl:value-of select="@xml:id"/> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates mode="stripNS"/> + </link> + </xsl:when> + <xsl:otherwise> + <link> + <xsl:copy-of select="@*[not(name(.) = 'xml:id') + and not(name(.) = 'version')]"/> + <xsl:if test="@xml:id"> + <xsl:attribute name="id"> + <xsl:value-of select="@xml:id"/> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates mode="stripNS"/> + </link> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="ng:tag|db:tag" mode="stripNS"> + <sgmltag> + <xsl:copy-of select="@*[not(name(.) = 'xml:id') + and not(name(.) = 'version')]"/> + <xsl:apply-templates mode="stripNS"/> + </sgmltag> +</xsl:template> + +<xsl:template match="ng:textdata|db:textdata + |ng:imagedata|db:imagedata + |ng:videodata|db:videodata + |ng:audiodata|db:audiodata" mode="stripNS"> + <xsl:element name="{local-name(.)}"> + <xsl:copy-of select="@*[not(name(.) = 'xml:id') + and not(name(.) = 'version') + and not(name(.) = 'entityref')]"/> + <xsl:if test="@xml:id"> + <xsl:attribute name="id"> + <xsl:value-of select="@xml:id"/> + </xsl:attribute> + </xsl:if> + + <xsl:choose> + <xsl:when test="@entityref"> + <xsl:attribute name="fileref"> + <xsl:value-of select="unparsed-entity-uri(@entityref)"/> + </xsl:attribute> + </xsl:when> + </xsl:choose> + + <xsl:apply-templates mode="stripNS"/> + </xsl:element> +</xsl:template> + +<xsl:template name="add-xml-base"> + <xsl:if test="not(@xml:base)"> + <xsl:variable name="base"> + <xsl:choose> + <xsl:when test="function-available('saxon:systemId')"> + <xsl:value-of select="saxon:systemId()"/> + </xsl:when> + <xsl:when test="function-available('NodeInfo:systemId')"> + <xsl:value-of select="NodeInfo:systemId()"/> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Warn</xsl:with-param> + <xsl:with-param name="source" select="$doc.title"/> + <xsl:with-param name="context-desc"> + <xsl:text>no @xml:base</xsl:text> + </xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>cannot add @xml:base to node-set root element</xsl:text> + </xsl:with-param> + </xsl:call-template> + <xsl:call-template name="log.message"> + <xsl:with-param name="level">Warn</xsl:with-param> + <xsl:with-param name="source" select="$doc.title"/> + <xsl:with-param name="context-desc"> + <xsl:text>no @xml:base</xsl:text> + </xsl:with-param> + <xsl:with-param name="message"> + <xsl:text>relative paths may not work</xsl:text> + </xsl:with-param> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + <!-- debug + <xsl:message>base is <xsl:value-of select="$base"/></xsl:message> + --> + <xsl:if test="$base != ''"> + <xsl:attribute name="xml:base"> + <xsl:call-template name="systemIdToBaseURI"> + <xsl:with-param name="systemId"> + <!-- file: seems to confuse some processors. --> + <xsl:choose> + <!-- however, windows paths must use file:///c:/path --> + <xsl:when test="starts-with($base, 'file:///') and + substring($base, 10, 1) = ':'"> + <xsl:value-of select="$base"/> + </xsl:when> + <xsl:when test="starts-with($base, 'file:/') + and substring($base, 8, 1) = ':'"> + <xsl:value-of select="concat('file:///', + substring-after($base,'file:/'))"/> + </xsl:when> + <xsl:when test="starts-with($base, 'file:///')"> + <xsl:value-of select="substring-after($base,'file://')"/> + </xsl:when> + <xsl:when test="starts-with($base, 'file://')"> + <xsl:value-of select="substring-after($base,'file:/')"/> + </xsl:when> + <xsl:when test="starts-with($base, 'file:/')"> + <xsl:value-of select="substring-after($base,'file:')"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$base"/> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:call-template> + </xsl:attribute> + </xsl:if> + </xsl:if> +</xsl:template> + +<xsl:template name="systemIdToBaseURI"> + <xsl:param name="systemId" select="''"/> + <xsl:if test="contains($systemId,'/')"> + <xsl:value-of select="substring-before($systemId,'/')"/> + <xsl:text>/</xsl:text> + <xsl:call-template name="systemIdToBaseURI"> + <xsl:with-param name="systemId" + select="substring-after($systemId,'/')"/> + </xsl:call-template> + </xsl:if> +</xsl:template> + +<xsl:template match="comment()|processing-instruction()|text()" mode="stripNS"> + <xsl:copy/> +</xsl:template> + +<xsl:template match="/" priority="-1"> + <xsl:choose> + <xsl:when test="(function-available('exsl:node-set') or + contains(system-property('xsl:vendor'), + 'Apache Software Foundation')) + and (*/self::ng:* or */self::db:*)"> + <xsl:message>Stripping namespace from DocBook 5 document.</xsl:message> + <xsl:variable name="nons"> + <xsl:apply-templates mode="stripNS"/> + </xsl:variable> + <xsl:message>Processing stripped document.</xsl:message> + <xsl:apply-templates select="exsl:node-set($nons)"/> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="@* | node()"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/subtitles.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/subtitles.xsl new file mode 100644 index 000000000..09f7176ce --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/subtitles.xsl @@ -0,0 +1,155 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" + exclude-result-prefixes="doc" + version='1.0'> + +<!-- ******************************************************************** + $Id$ + ******************************************************************** + + This file is part of the XSL DocBook Stylesheet distribution. + See ../README or http://docbook.sf.net/release/xsl/current/ for + copyright and other information. + + ******************************************************************** --> + +<!-- ==================================================================== --> + +<!-- subtitle markup --> + +<doc:mode mode="subtitle.markup" xmlns=""> +<refpurpose>Provides access to element subtitles</refpurpose> +<refdescription id="subtitle.markup-desc"> +<para>Processing an element in the +<literal role="mode">subtitle.markup</literal> mode produces the +subtitle of the element. +</para> +</refdescription> +</doc:mode> + +<xsl:template match="*" mode="subtitle.markup"> + <xsl:message> + <xsl:text>Request for subtitle of unexpected element: </xsl:text> + <xsl:value-of select="local-name(.)"/> + </xsl:message> + <xsl:text>???SUBTITLE???</xsl:text> +</xsl:template> + +<xsl:template match="subtitle" mode="subtitle.markup"> + <xsl:param name="allow-anchors" select="'0'"/> + <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="set" mode="subtitle.markup"> + <xsl:param name="allow-anchors" select="'0'"/> + <xsl:apply-templates select="(setinfo/subtitle|info/subtitle|subtitle)[1]" + mode="subtitle.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="book" mode="subtitle.markup"> + <xsl:param name="allow-anchors" select="'0'"/> + <xsl:apply-templates select="(bookinfo/subtitle|info/subtitle|subtitle)[1]" + mode="subtitle.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="part" mode="subtitle.markup"> + <xsl:param name="allow-anchors" select="'0'"/> + <xsl:apply-templates select="(partinfo/subtitle + |docinfo/subtitle + |info/subtitle + |subtitle)[1]" + mode="subtitle.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="preface|chapter|appendix" mode="subtitle.markup"> + <xsl:param name="allow-anchors" select="'0'"/> + <xsl:apply-templates select="(docinfo/subtitle + |info/subtitle + |prefaceinfo/subtitle + |chapterinfo/subtitle + |appendixinfo/subtitle + |subtitle)[1]" + mode="subtitle.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="article" mode="subtitle.markup"> + <xsl:param name="allow-anchors" select="'0'"/> + <xsl:apply-templates select="(artheader/subtitle + |articleinfo/subtitle + |info/subtitle + |subtitle)[1]" + mode="subtitle.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="dedication|colophon" mode="subtitle.markup"> + <xsl:param name="allow-anchors" select="'0'"/> + <xsl:apply-templates select="(subtitle|info/subtitle)[1]" + mode="subtitle.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="reference" mode="subtitle.markup"> + <xsl:param name="allow-anchors" select="'0'"/> + <xsl:apply-templates select="(referenceinfo/subtitle + |docinfo/subtitle + |info/subtitle + |subtitle)[1]" + mode="subtitle.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="qandaset" mode="subtitle.markup"> + <xsl:param name="allow-anchors" select="'0'"/> + <xsl:apply-templates select="(blockinfo/subtitle|info/subtitle)[1]" + mode="subtitle.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="refentry" mode="subtitle.markup"> + <xsl:param name="allow-anchors" select="'0'"/> + <xsl:apply-templates select="(refentryinfo/subtitle + |info/subtitle + |docinfo/subtitle)[1]" + mode="subtitle.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="section + |sect1|sect2|sect3|sect4|sect5 + |refsect1|refsect2|refsect3 + |simplesect" + mode="subtitle.markup"> + <xsl:param name="allow-anchors" select="'0'"/> + <xsl:apply-templates select="(info/subtitle + |sectioninfo/subtitle + |sect1info/subtitle + |sect2info/subtitle + |sect3info/subtitle + |sect4info/subtitle + |sect5info/subtitle + |refsect1info/subtitle + |refsect2info/subtitle + |refsect3info/subtitle + |subtitle)[1]" + mode="subtitle.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +</xsl:stylesheet> + diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/table.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/table.xsl new file mode 100644 index 000000000..9c0c49844 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/table.xsl @@ -0,0 +1,514 @@ +<?xml version="1.0"?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" + exclude-result-prefixes="doc" + version="1.0"> + +<!-- ******************************************************************** + $Id$ + ******************************************************************** + + This file is part of the XSL DocBook Stylesheet distribution. + See ../README or http://docbook.sf.net/release/xsl/current/ for + copyright and other information. + + ******************************************************************** --> + +<!-- ==================================================================== --> + +<xsl:template name="blank.spans"> + <xsl:param name="cols" select="1"/> + <xsl:if test="$cols > 0"> + <xsl:text>0:</xsl:text> + <xsl:call-template name="blank.spans"> + <xsl:with-param name="cols" select="$cols - 1"/> + </xsl:call-template> + </xsl:if> +</xsl:template> + +<xsl:template name="calculate.following.spans"> + <xsl:param name="colspan" select="1"/> + <xsl:param name="spans" select="''"/> + + <xsl:choose> + <xsl:when test="$colspan > 0"> + <xsl:call-template name="calculate.following.spans"> + <xsl:with-param name="colspan" select="$colspan - 1"/> + <xsl:with-param name="spans" select="substring-after($spans,':')"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$spans"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="finaltd"> + <xsl:param name="spans"/> + <xsl:param name="col" select="0"/> + + <xsl:if test="$spans != ''"> + <xsl:choose> + <xsl:when test="starts-with($spans,'0:')"> + <xsl:call-template name="empty.table.cell"> + <xsl:with-param name="colnum" select="$col"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise></xsl:otherwise> + </xsl:choose> + + <xsl:call-template name="finaltd"> + <xsl:with-param name="spans" select="substring-after($spans,':')"/> + <xsl:with-param name="col" select="$col+1"/> + </xsl:call-template> + </xsl:if> +</xsl:template> + +<xsl:template name="sfinaltd"> + <xsl:param name="spans"/> + + <xsl:if test="$spans != ''"> + <xsl:choose> + <xsl:when test="starts-with($spans,'0:')">0:</xsl:when> + <xsl:otherwise> + <xsl:value-of select="substring-before($spans,':')-1"/> + <xsl:text>:</xsl:text> + </xsl:otherwise> + </xsl:choose> + + <xsl:call-template name="sfinaltd"> + <xsl:with-param name="spans" select="substring-after($spans,':')"/> + </xsl:call-template> + </xsl:if> +</xsl:template> + +<xsl:template name="entry.colnum"> + <xsl:param name="entry" select="."/> + + <xsl:choose> + <xsl:when test="$entry/@spanname"> + <xsl:variable name="spanname" select="$entry/@spanname"/> + <xsl:variable name="spanspec" + select="($entry/ancestor::tgroup/spanspec[@spanname=$spanname] + |$entry/ancestor::entrytbl/spanspec[@spanname=$spanname])[last()]"/> + <xsl:variable name="colspec" + select="($entry/ancestor::tgroup/colspec[@colname=$spanspec/@namest] + |$entry/ancestor::entrytbl/colspec[@colname=$spanspec/@namest])[last()]"/> + <xsl:call-template name="colspec.colnum"> + <xsl:with-param name="colspec" select="$colspec"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$entry/@colname"> + <xsl:variable name="colname" select="$entry/@colname"/> + <xsl:variable name="colspec" + select="($entry/ancestor::tgroup/colspec[@colname=$colname] + |$entry/ancestor::entrytbl/colspec[@colname=$colname])[last()]"/> + <xsl:call-template name="colspec.colnum"> + <xsl:with-param name="colspec" select="$colspec"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="$entry/@namest"> + <xsl:variable name="namest" select="$entry/@namest"/> + <xsl:variable name="colspec" + select="($entry/ancestor::tgroup/colspec[@colname=$namest] + |$entry/ancestor::entrytbl/colspec[@colname=$namest])[last()]"/> + <xsl:call-template name="colspec.colnum"> + <xsl:with-param name="colspec" select="$colspec"/> + </xsl:call-template> + </xsl:when> + <!-- no idea, return 0 --> + <xsl:otherwise>0</xsl:otherwise> + </xsl:choose> +</xsl:template> + +<doc:template name="entry.colnum" xmlns=""> +<refpurpose>Determine the column number in which a given entry occurs</refpurpose> +<refdescription id="entry.colnum-desc"> +<para>If an <sgmltag>entry</sgmltag> has a +<sgmltag class="attribute">colname</sgmltag> or +<sgmltag class="attribute">namest</sgmltag> attribute, this template +will determine the number of the column in which the entry should occur. +For other <sgmltag>entry</sgmltag>s, nothing is returned.</para> +</refdescription> +<refparameter id="entry.colnum-params"> +<variablelist> +<varlistentry><term>entry</term> +<listitem> +<para>The <sgmltag>entry</sgmltag>-element which is to be tested.</para> +</listitem> +</varlistentry> +</variablelist> +</refparameter> + +<refreturn id="entry.colnum-returns"> +<para>This template returns the column number if it can be determined, +or 0 (the empty string)</para> +</refreturn> +</doc:template> + +<xsl:template name="colspec.colnum"> + <xsl:param name="colspec" select="."/> + <xsl:choose> + <xsl:when test="$colspec/@colnum"> + <xsl:value-of select="$colspec/@colnum"/> + </xsl:when> + <xsl:when test="$colspec/preceding-sibling::colspec"> + <xsl:variable name="prec.colspec.colnum"> + <xsl:call-template name="colspec.colnum"> + <xsl:with-param name="colspec" + select="$colspec/preceding-sibling::colspec[1]"/> + </xsl:call-template> + </xsl:variable> + <xsl:value-of select="$prec.colspec.colnum + 1"/> + </xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="calculate.colspan"> + <xsl:param name="entry" select="."/> + <xsl:variable name="spanname" select="$entry/@spanname"/> + <xsl:variable name="spanspec" + select="($entry/ancestor::tgroup/spanspec[@spanname=$spanname] + |$entry/ancestor::entrytbl/spanspec[@spanname=$spanname])[last()]"/> + + <xsl:variable name="namest"> + <xsl:choose> + <xsl:when test="@spanname"> + <xsl:value-of select="$spanspec/@namest"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$entry/@namest"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="nameend"> + <xsl:choose> + <xsl:when test="@spanname"> + <xsl:value-of select="$spanspec/@nameend"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$entry/@nameend"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="scol"> + <xsl:call-template name="colspec.colnum"> + <xsl:with-param name="colspec" + select="($entry/ancestor::tgroup/colspec[@colname=$namest] + |$entry/ancestor::entrytbl/colspec[@colname=$namest])[last()]"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="ecol"> + <xsl:call-template name="colspec.colnum"> + <xsl:with-param name="colspec" + select="($entry/ancestor::tgroup/colspec[@colname=$nameend] + |$entry/ancestor::entrytbl/colspec[@colname=$nameend])[last()]"/> + </xsl:call-template> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$namest != '' and $nameend != ''"> + <xsl:choose> + <xsl:when test="number($ecol) >= number($scol)"> + <xsl:value-of select="number($ecol) - number($scol) + 1"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="number($scol) - number($ecol) + 1"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise>1</xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="calculate.rowsep"> + <xsl:param name="entry" select="."/> + <xsl:param name="colnum" select="0"/> + + <xsl:call-template name="inherited.table.attribute"> + <xsl:with-param name="entry" select="$entry"/> + <xsl:with-param name="colnum" select="$colnum"/> + <xsl:with-param name="attribute" select="'rowsep'"/> + </xsl:call-template> +</xsl:template> + +<xsl:template name="calculate.colsep"> + <xsl:param name="entry" select="."/> + <xsl:param name="colnum" select="0"/> + + <xsl:call-template name="inherited.table.attribute"> + <xsl:with-param name="entry" select="$entry"/> + <xsl:with-param name="colnum" select="$colnum"/> + <xsl:with-param name="attribute" select="'colsep'"/> + </xsl:call-template> +</xsl:template> + +<xsl:template name="inherited.table.attribute"> + <xsl:param name="entry" select="."/> + <xsl:param name="row" select="$entry/ancestor-or-self::row[1]"/> + <xsl:param name="colnum" select="0"/> + <xsl:param name="attribute" select="'colsep'"/> + + <xsl:variable name="tgroup" select="$row/parent::*/parent::tgroup[1]"/> + <xsl:variable name="tbody" select="$row/parent::*[1]"/> + + <xsl:variable name="table" select="($tgroup/ancestor::table + |$tgroup/ancestor::informaltable + |$entry/ancestor::entrytbl)[last()]"/> + + <xsl:variable name="entry.value"> + <xsl:call-template name="get-attribute"> + <xsl:with-param name="element" select="$entry"/> + <xsl:with-param name="attribute" select="$attribute"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="row.value"> + <xsl:call-template name="get-attribute"> + <xsl:with-param name="element" select="$row"/> + <xsl:with-param name="attribute" select="$attribute"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="span.value"> + <xsl:if test="$entry/@spanname"> + <xsl:variable name="spanname" select="$entry/@spanname"/> + <xsl:variable name="spanspec" + select="$tgroup/spanspec[@spanname=$spanname]"/> + <xsl:variable name="span.colspec" + select="$tgroup/colspec[@colname=$spanspec/@namest]"/> + + <xsl:variable name="spanspec.value"> + <xsl:call-template name="get-attribute"> + <xsl:with-param name="element" select="$spanspec"/> + <xsl:with-param name="attribute" select="$attribute"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="scolspec.value"> + <xsl:call-template name="get-attribute"> + <xsl:with-param name="element" select="$span.colspec"/> + <xsl:with-param name="attribute" select="$attribute"/> + </xsl:call-template> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$spanspec.value != ''"> + <xsl:value-of select="$spanspec.value"/> + </xsl:when> + <xsl:when test="$scolspec.value != ''"> + <xsl:value-of select="$scolspec.value"/> + </xsl:when> + <xsl:otherwise></xsl:otherwise> + </xsl:choose> + </xsl:if> + </xsl:variable> + + <xsl:variable name="namest.value"> + <xsl:if test="$entry/@namest"> + <xsl:variable name="namest" select="$entry/@namest"/> + <xsl:variable name="colspec" + select="$tgroup/colspec[@colname=$namest]"/> + + <xsl:variable name="inner.namest.value"> + <xsl:call-template name="get-attribute"> + <xsl:with-param name="element" select="$colspec"/> + <xsl:with-param name="attribute" select="$attribute"/> + </xsl:call-template> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$inner.namest.value"> + <xsl:value-of select="$inner.namest.value"/> + </xsl:when> + <xsl:otherwise></xsl:otherwise> + </xsl:choose> + </xsl:if> + </xsl:variable> + + <xsl:variable name="tgroup.value"> + <xsl:call-template name="get-attribute"> + <xsl:with-param name="element" select="$tgroup"/> + <xsl:with-param name="attribute" select="$attribute"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="tbody.value"> + <xsl:call-template name="get-attribute"> + <xsl:with-param name="element" select="$tbody"/> + <xsl:with-param name="attribute" select="$attribute"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="table.value"> + <xsl:call-template name="get-attribute"> + <xsl:with-param name="element" select="$table"/> + <xsl:with-param name="attribute" select="$attribute"/> + </xsl:call-template> + </xsl:variable> + + <xsl:variable name="default.value"> + <!-- This section used to say that rowsep and colsep have defaults based --> + <!-- on the frame setting. Further reflection and closer examination of the --> + <!-- CALS spec reveals I was mistaken. The default is "1" for rowsep and colsep. --> + <!-- For everything else, the default is the tgroup value --> + <xsl:choose> + <xsl:when test="$tgroup.value != ''"> + <xsl:value-of select="$tgroup.value"/> + </xsl:when> + <xsl:when test="$attribute = 'rowsep'">1</xsl:when> + <xsl:when test="$attribute = 'colsep'">1</xsl:when> + <xsl:otherwise><!-- empty --></xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:variable name="calc.colvalue"> + <xsl:if test="$colnum > 0"> + <xsl:call-template name="colnum.colspec"> + <xsl:with-param name="colnum" select="$colnum"/> + <xsl:with-param name="attribute" select="$attribute"/> + </xsl:call-template> + </xsl:if> + </xsl:variable> + + <xsl:choose> + <xsl:when test="$entry.value != ''"> + <xsl:value-of select="$entry.value"/> + </xsl:when> + <xsl:when test="$row.value != ''"> + <xsl:value-of select="$row.value"/> + </xsl:when> + <xsl:when test="$span.value != ''"> + <xsl:value-of select="$span.value"/> + </xsl:when> + <xsl:when test="$namest.value != ''"> + <xsl:value-of select="$namest.value"/> + </xsl:when> + <xsl:when test="$calc.colvalue != ''"> + <xsl:value-of select="$calc.colvalue"/> + </xsl:when> + <xsl:when test="$tbody.value != ''"> + <xsl:value-of select="$tbody.value"/> + </xsl:when> + <xsl:when test="$tgroup.value != ''"> + <xsl:value-of select="$tgroup.value"/> + </xsl:when> + <xsl:when test="$table.value != ''"> + <xsl:value-of select="$table.value"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="$default.value"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="colnum.colspec"> + <xsl:param name="colnum" select="0"/> + <xsl:param name="attribute" select="'colname'"/> + <xsl:param name="colspec.ancestor" + select="(ancestor::tgroup|ancestor::entrytbl) + [position() = last()]"/> + <xsl:param name="colspecs" select="$colspec.ancestor/colspec"/> + <xsl:param name="count" select="1"/> + + <xsl:choose> + <xsl:when test="not($colspecs) or $count > $colnum"> + <!-- nop --> + </xsl:when> + <xsl:when test="$colspecs[1]/@colnum"> + <xsl:choose> + <xsl:when test="$colspecs[1]/@colnum = $colnum"> + <xsl:call-template name="get-attribute"> + <xsl:with-param name="element" select="$colspecs[1]"/> + <xsl:with-param name="attribute" select="$attribute"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="colnum.colspec"> + <xsl:with-param name="colnum" select="$colnum"/> + <xsl:with-param name="attribute" select="$attribute"/> + <xsl:with-param name="colspecs" + select="$colspecs[position()>1]"/> + <xsl:with-param name="count" + select="$colspecs[1]/@colnum+1"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="$count = $colnum"> + <xsl:call-template name="get-attribute"> + <xsl:with-param name="element" select="$colspecs[1]"/> + <xsl:with-param name="attribute" select="$attribute"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="colnum.colspec"> + <xsl:with-param name="colnum" select="$colnum"/> + <xsl:with-param name="attribute" select="$attribute"/> + <xsl:with-param name="colspecs" + select="$colspecs[position()>1]"/> + <xsl:with-param name="count" select="$count+1"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="get-attribute"> + <xsl:param name="element" select="."/> + <xsl:param name="attribute" select="''"/> + + <xsl:for-each select="$element/@*"> + <xsl:if test="local-name(.) = $attribute"> + <xsl:value-of select="."/> + </xsl:if> + </xsl:for-each> +</xsl:template> + +<xsl:template name="consume-row"> + <xsl:param name="spans"/> + + <xsl:if test="contains($spans,':')"> + <xsl:value-of select="substring-before($spans,':') - 1"/> + <xsl:text>:</xsl:text> + <xsl:call-template name="consume-row"> + <xsl:with-param name="spans" select="substring-after($spans,':')"/> + </xsl:call-template> + </xsl:if> +</xsl:template> + +<!-- Returns the table style for the context element --> +<xsl:template name="tabstyle"> + <xsl:param name="node" select="."/> + + <xsl:variable name="tgroup" select="$node/tgroup[1] | + $node/ancestor-or-self::tgroup[1]"/> + + <xsl:variable name="table" + select="($node/ancestor-or-self::table | + $node/ancestor-or-self::informaltable)[1]"/> + + <xsl:variable name="tabstyle"> + <xsl:choose> + <xsl:when test="$table/@tabstyle != ''"> + <xsl:value-of select="normalize-space($table/@tabstyle)"/> + </xsl:when> + <xsl:when test="$tgroup/@tgroupstyle != ''"> + <xsl:value-of select="normalize-space($tgroup/@tgroupstyle)"/> + </xsl:when> + <xsl:otherwise> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:value-of select="$tabstyle"/> +</xsl:template> + +</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/targetdatabase.dtd b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/targetdatabase.dtd new file mode 100644 index 000000000..2ace1e003 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/targetdatabase.dtd @@ -0,0 +1,49 @@ +<!-- targetdatabase.dtd --> +<!-- A DTD for managing cross reference target information --> + +<!ELEMENT targetset (targetsetinfo?, sitemap*, document*) > + +<!ELEMENT targetsetinfo ANY > + +<!ELEMENT sitemap (dir) > + +<!ELEMENT dir ((dir|document)*) > +<!ATTLIST dir + name CDATA #REQUIRED +> + +<!ELEMENT document (div*) > +<!ATTLIST document + targetdoc CDATA #REQUIRED + uri CDATA #IMPLIED + baseuri CDATA #IMPLIED + href CDATA #IMPLIED + dir CDATA #IMPLIED +> + +<!ELEMENT div (ttl?, objttl?, xreftext?, (div|obj)*)> +<!ATTLIST div + targetptr CDATA #IMPLIED + element CDATA #IMPLIED + name CDATA #IMPLIED + number CDATA #IMPLIED + href CDATA #IMPLIED + lang CDATA #IMPLIED + page CDATA #IMPLIED +> + + +<!ELEMENT ttl ANY > +<!ELEMENT objttl ANY > +<!ELEMENT xreftext ANY > + +<!ELEMENT obj (ttl?, objttl?, xreftext?)> +<!ATTLIST obj + targetptr CDATA #IMPLIED + element CDATA #IMPLIED + name CDATA #IMPLIED + number CDATA #IMPLIED + href CDATA #IMPLIED + lang CDATA #IMPLIED + page CDATA #IMPLIED +> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/targets.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/targets.xsl new file mode 100644 index 000000000..daeeb1cc4 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/targets.xsl @@ -0,0 +1,272 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" + exclude-result-prefixes="doc" + version='1.0'> + +<!-- ******************************************************************** + $Id$ + ******************************************************************** + + This file is part of the XSL DocBook Stylesheet distribution. + See ../README or http://docbook.sf.net/release/xsl/current/ for + copyright and other information. + + ******************************************************************** --> + +<!-- ==================================================================== --> + +<!-- cross reference target collection --> + +<doc:mode mode="collect.targets" xmlns=""> +<refpurpose>Collects information for potential cross reference targets</refpurpose> +<refdescription id="collect.targets-desc"> +<para>Processing the root element in the +<literal role="mode">collect.targets</literal> mode produces +a set of target database elements that can be used by +the olink mechanism to resolve external cross references. +The collection process is controlled by the <literal> +collect.xref.targets</literal> parameter, which can be +<literal>yes</literal> to collect targets and process +the document for output, <literal>only</literal> to +only collect the targets, and <literal>no</literal> +(default) to not collect the targets and only process the document. +</para> +<para> +A <literal>targets.filename</literal> parameter must be +specified to receive the output if +<literal>collect.xref.targets</literal> is +set to <literal>yes</literal> so as to +redirect the target data to a file separate from the +document output. +</para> +</refdescription> +</doc:mode> + +<!-- ============================================================ --> + +<xsl:template match="*" mode="collect.targets"> + <xsl:choose> + <xsl:when test="$collect.xref.targets = 'yes' and $targets.filename = ''"> + <xsl:message> + Must specify a $targets.filename parameter when + $collect.xref.targets is set to 'yes'. + The xref targets were not collected. + </xsl:message> + </xsl:when> + <xsl:otherwise> + <xsl:choose> + <xsl:when test="$targets.filename"> + <xsl:call-template name="write.chunk"> + <xsl:with-param name="filename" select="$targets.filename"/> + <xsl:with-param name="method" select="'xml'"/> + <xsl:with-param name="encoding" select="'utf-8'"/> + <xsl:with-param name="omit-xml-declaration" select="'yes'"/> + <xsl:with-param name="doctype-public" select="''"/> + <xsl:with-param name="doctype-system" select="''"/> + <xsl:with-param name="indent" select="'no'"/> + <xsl:with-param name="quiet" select="0"/> + <xsl:with-param name="content"> + <xsl:apply-templates select="." mode="olink.mode"/> + </xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <!-- Else write to standard output --> + <xsl:apply-templates select="." mode="olink.mode"/> + </xsl:otherwise> + </xsl:choose> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template name="olink.href.target"> + <xsl:param name="nd" select="."/> + + <xsl:value-of select="$olink.base.uri"/> + <xsl:call-template name="href.target"> + <xsl:with-param name="object" select="$nd"/> + <xsl:with-param name="context" select="NOTANODE"/> + </xsl:call-template> +</xsl:template> + +<!-- Templates for extracting cross reference information + from a document for use in an xref database. +--> + +<xsl:template name="attrs"> + <xsl:param name="nd" select="."/> + + <xsl:attribute name="element"> + <xsl:value-of select="local-name(.)"/> + </xsl:attribute> + + <xsl:attribute name="href"> + <xsl:call-template name="olink.href.target"> + <xsl:with-param name="nd" select="$nd"/> + </xsl:call-template> + </xsl:attribute> + + <xsl:variable name="num"> + <xsl:apply-templates select="$nd" mode="label.markup"> + <xsl:with-param name="verbose" select="0"/> + </xsl:apply-templates> + </xsl:variable> + + <xsl:if test="$num"> + <xsl:attribute name="number"> + <xsl:value-of select="$num"/> + </xsl:attribute> + </xsl:if> + + <xsl:choose> + <xsl:when test="$nd/@id"> + <xsl:attribute name="targetptr"> + <xsl:value-of select="$nd/@id"/> + </xsl:attribute> + </xsl:when> + <xsl:when test="$nd/@xml:id"> + <xsl:attribute name="targetptr"> + <xsl:value-of select="$nd/@xml:id"/> + </xsl:attribute> + </xsl:when> + </xsl:choose> + + <xsl:if test="$nd/@lang"> + <xsl:attribute name="lang"> + <xsl:value-of select="$nd/@lang"/> + </xsl:attribute> + </xsl:if> + +</xsl:template> + +<xsl:template name="div"> + <xsl:param name="nd" select="."/> + + <div> + <xsl:call-template name="attrs"> + <xsl:with-param name="nd" select="$nd"/> + </xsl:call-template> + <ttl> + <xsl:apply-templates select="$nd" mode="title.markup"> + <xsl:with-param name="verbose" select="0"/> + </xsl:apply-templates> + </ttl> + <xreftext> + <xsl:choose> + <xsl:when test="$nd/@xreflabel"> + <xsl:call-template name="xref.xreflabel"> + <xsl:with-param name="target" select="$nd"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="$nd" mode="xref-to"> + <xsl:with-param name="verbose" select="0"/> + </xsl:apply-templates> + </xsl:otherwise> + </xsl:choose> + </xreftext> + <xsl:apply-templates mode="olink.mode"/> + </div> +</xsl:template> + +<xsl:template name="obj"> + <xsl:param name="nd" select="."/> + + <obj> + <xsl:call-template name="attrs"> + <xsl:with-param name="nd" select="$nd"/> + </xsl:call-template> + <ttl> + <xsl:apply-templates select="$nd" mode="title.markup"> + <xsl:with-param name="verbose" select="0"/> + </xsl:apply-templates> + </ttl> + <xreftext> + <xsl:choose> + <xsl:when test="$nd/@xreflabel"> + <xsl:call-template name="xref.xreflabel"> + <xsl:with-param name="target" select="$nd"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="$nd" mode="xref-to"> + <xsl:with-param name="verbose" select="0"/> + </xsl:apply-templates> + </xsl:otherwise> + </xsl:choose> + </xreftext> + </obj> +</xsl:template> + +<xsl:template match="text()|processing-instruction()|comment()" + mode="olink.mode"> + <!-- nop --> +</xsl:template> + +<!-- +<xsl:template match="*" mode="olink.mode"> +</xsl:template> +--> + +<xsl:template match="set" mode="olink.mode"> + <xsl:call-template name="div"/> +</xsl:template> + +<xsl:template match="book" mode="olink.mode"> + <xsl:call-template name="div"/> +</xsl:template> + +<xsl:template match="preface|chapter|appendix" mode="olink.mode"> + <xsl:call-template name="div"/> +</xsl:template> + +<xsl:template match="part|reference" mode="olink.mode"> + <xsl:call-template name="div"/> +</xsl:template> + +<xsl:template match="article" mode="olink.mode"> + <xsl:call-template name="div"/> +</xsl:template> + +<xsl:template match="bibliography|bibliodiv" mode="olink.mode"> + <xsl:call-template name="div"/> +</xsl:template> + +<xsl:template match="biblioentry|bibliomixed" mode="olink.mode"> + <xsl:call-template name="obj"/> +</xsl:template> + +<xsl:template match="refentry" mode="olink.mode"> + <xsl:call-template name="div"/> +</xsl:template> + +<xsl:template match="section|sect1|sect2|sect3|sect4|sect5" mode="olink.mode"> + <xsl:call-template name="div"/> +</xsl:template> + +<xsl:template match="refsection|refsect1|refsect2|refsect3" mode="olink.mode"> + <xsl:call-template name="div"/> +</xsl:template> + +<xsl:template match="figure|example|table" mode="olink.mode"> + <xsl:call-template name="obj"/> + <xsl:apply-templates mode="olink.mode"/> +</xsl:template> + +<xsl:template match="equation[title or info/title]" mode="olink.mode"> + <xsl:call-template name="obj"/> +</xsl:template> + +<xsl:template match="qandaset|qandaentry" mode="olink.mode"> + <xsl:call-template name="div"/> +</xsl:template> + +<xsl:template match="*" mode="olink.mode"> + <xsl:if test="@id or @xml:id"> + <xsl:call-template name="obj"/> + </xsl:if> + <xsl:apply-templates mode="olink.mode"/> +</xsl:template> + +</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/titles.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/titles.xsl new file mode 100644 index 000000000..35a570662 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/titles.xsl @@ -0,0 +1,740 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" + exclude-result-prefixes="doc" + version='1.0'> + +<!-- ******************************************************************** + $Id$ + ******************************************************************** + + This file is part of the XSL DocBook Stylesheet distribution. + See ../README or http://docbook.sf.net/release/xsl/current/ for + copyright and other information. + + ******************************************************************** --> + +<!-- ==================================================================== --> + +<!-- title markup --> + +<doc:mode mode="title.markup" xmlns=""> +<refpurpose>Provides access to element titles</refpurpose> +<refdescription id="title.markup-desc"> +<para>Processing an element in the +<literal role="mode">title.markup</literal> mode produces the +title of the element. This does not include the label. +</para> +</refdescription> +</doc:mode> + +<xsl:template match="*" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:param name="verbose" select="1"/> + <xsl:choose> + <!-- * FIXME: this should handle other *info elements as well --> + <!-- * but this is good enough for now. --> + <xsl:when test="title|info/title"> + <xsl:apply-templates select="title[1]|info/title[1]" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:when test="local-name(.) = 'partintro'"> + <!-- partintro's don't have titles, use the parent (part or reference) + title instead. --> + <xsl:apply-templates select="parent::*" mode="title.markup"/> + </xsl:when> + <xsl:otherwise> + <xsl:if test="$verbose != 0"> + <xsl:message> + <xsl:text>Request for title of element with no title: </xsl:text> + <xsl:value-of select="local-name(.)"/> + <xsl:choose> + <xsl:when test="@id"> + <xsl:text> (id="</xsl:text> + <xsl:value-of select="@id"/> + <xsl:text>")</xsl:text> + </xsl:when> + <xsl:when test="@xml:id"> + <xsl:text> (xml:id="</xsl:text> + <xsl:value-of select="@xml:id"/> + <xsl:text>")</xsl:text> + </xsl:when> + </xsl:choose> + </xsl:message> + </xsl:if> + <xsl:text>???TITLE???</xsl:text> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="title" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + + <xsl:choose> + <xsl:when test="$allow-anchors != 0"> + <xsl:apply-templates/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="no.anchor.mode"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- only occurs in HTML Tables! --> +<xsl:template match="caption" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + + <xsl:choose> + <xsl:when test="$allow-anchors != 0"> + <xsl:apply-templates/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="no.anchor.mode"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="set" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:apply-templates select="(setinfo/title|info/title|title)[1]" + mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="book" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:apply-templates select="(bookinfo/title|info/title|title)[1]" + mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="part" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:apply-templates select="(partinfo/title|info/title|docinfo/title|title)[1]" + mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="preface|chapter|appendix" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + +<!-- + <xsl:message> + <xsl:value-of select="local-name(.)"/> + <xsl:text> </xsl:text> + <xsl:value-of select="$allow-anchors"/> + </xsl:message> +--> + + <xsl:variable name="title" select="(docinfo/title + |info/title + |prefaceinfo/title + |chapterinfo/title + |appendixinfo/title + |title)[1]"/> + <xsl:apply-templates select="$title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="dedication" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:choose> + <xsl:when test="title"> + <xsl:apply-templates select="(title|info/title)[1]" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'Dedication'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="colophon" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:choose> + <xsl:when test="title"> + <xsl:apply-templates select="(title|info/title)[1]" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'Colophon'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="article" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:variable name="title" select="(artheader/title + |articleinfo/title + |info/title + |title)[1]"/> + + <xsl:apply-templates select="$title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="reference" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:apply-templates select="(referenceinfo/title|docinfo/title|info/title|title)[1]" + mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="refentry" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:variable name="refmeta" select=".//refmeta"/> + <xsl:variable name="refentrytitle" select="$refmeta//refentrytitle"/> + <xsl:variable name="refnamediv" select=".//refnamediv"/> + <xsl:variable name="refname" select="$refnamediv//refname"/> + <xsl:variable name="refdesc" select="$refnamediv//refdescriptor"/> + + <xsl:variable name="title"> + <xsl:choose> + <xsl:when test="$refentrytitle"> + <xsl:apply-templates select="$refentrytitle[1]" mode="title.markup"/> + </xsl:when> + <xsl:when test="$refdesc"> + <xsl:apply-templates select="$refdesc" mode="title.markup"/> + </xsl:when> + <xsl:when test="$refname"> + <xsl:apply-templates select="$refname[1]" mode="title.markup"/> + </xsl:when> + <xsl:otherwise>REFENTRY WITHOUT TITLE???</xsl:otherwise> + </xsl:choose> + </xsl:variable> + + <xsl:copy-of select="$title"/> +</xsl:template> + +<xsl:template match="refentrytitle|refname|refdescriptor" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:choose> + <xsl:when test="$allow-anchors != 0"> + <xsl:apply-templates/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="no.anchor.mode"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="section + |sect1|sect2|sect3|sect4|sect5 + |refsect1|refsect2|refsect3|refsection + |simplesect" + mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:variable name="title" select="(info/title + |sectioninfo/title + |sect1info/title + |sect2info/title + |sect3info/title + |sect4info/title + |sect5info/title + |refsect1info/title + |refsect2info/title + |refsect3info/title + |refsectioninfo/title + |title)[1]"/> + + <xsl:apply-templates select="$title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="bridgehead" mode="title.markup"> + <xsl:apply-templates mode="title.markup"/> +</xsl:template> + +<xsl:template match="refsynopsisdiv" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:choose> + <xsl:when test="title"> + <xsl:apply-templates select="title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'RefSynopsisDiv'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="bibliography" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:variable name="title" select="(bibliographyinfo/title|info/title|title)[1]"/> + <xsl:choose> + <xsl:when test="$title"> + <xsl:apply-templates select="$title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'Bibliography'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="glossary" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:variable name="title" select="(glossaryinfo/title|info/title|title)[1]"/> + <xsl:choose> + <xsl:when test="$title"> + <xsl:apply-templates select="$title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext.element.name"> + <xsl:with-param name="element.name" select="local-name(.)"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="glossdiv" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:variable name="title" select="(info/title|title)[1]"/> + <xsl:choose> + <xsl:when test="$title"> + <xsl:apply-templates select="$title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:message>ERROR: glossdiv missing its required title</xsl:message> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="glossentry" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:apply-templates select="glossterm" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="glossterm" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + + <xsl:choose> + <xsl:when test="$allow-anchors != 0"> + <xsl:apply-templates/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="no.anchor.mode"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="index" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:variable name="title" select="(indexinfo/title|info/title|title)[1]"/> + <xsl:choose> + <xsl:when test="$title"> + <xsl:apply-templates select="$title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'Index'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="setindex" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:variable name="title" select="(setindexinfo/title|info/title|title)[1]"/> + <xsl:choose> + <xsl:when test="$title"> + <xsl:apply-templates select="$title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'SetIndex'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="figure|example|equation" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:apply-templates select="title|info/title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="table" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:apply-templates select="(title|caption)[1]" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="procedure" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:apply-templates select="title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="task" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:apply-templates select="title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="sidebar" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:apply-templates select="(info/title|sidebarinfo/title|title)[1]" + mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> +</xsl:template> + +<xsl:template match="abstract" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:choose> + <xsl:when test="title|info/title"> + <xsl:apply-templates select="(title|info/title)[1]" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'Abstract'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="caution|tip|warning|important|note" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:variable name="title" select="(title|info/title)[1]"/> + <xsl:choose> + <xsl:when test="$title"> + <xsl:apply-templates select="$title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext"> + <xsl:with-param name="key"> + <xsl:choose> + <xsl:when test="local-name(.)='note'">Note</xsl:when> + <xsl:when test="local-name(.)='important'">Important</xsl:when> + <xsl:when test="local-name(.)='caution'">Caution</xsl:when> + <xsl:when test="local-name(.)='warning'">Warning</xsl:when> + <xsl:when test="local-name(.)='tip'">Tip</xsl:when> + </xsl:choose> + </xsl:with-param> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="question" mode="title.markup"> + <!-- questions don't have titles --> + <xsl:text>Question</xsl:text> +</xsl:template> + +<xsl:template match="answer" mode="title.markup"> + <!-- answers don't have titles --> + <xsl:text>Answer</xsl:text> +</xsl:template> + +<xsl:template match="qandaentry" mode="title.markup"> + <!-- qandaentrys are represented by the first question in them --> + <xsl:text>Question</xsl:text> +</xsl:template> + +<xsl:template match="qandaset" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:variable name="title" select="(info/title| + blockinfo/title| + title)[1]"/> + <xsl:choose> + <xsl:when test="$title"> + <xsl:apply-templates select="$title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'QandASet'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="legalnotice" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:choose> + <xsl:when test="title"> + <xsl:apply-templates select="title" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="gentext"> + <xsl:with-param name="key" select="'LegalNotice'"/> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ============================================================ --> + +<xsl:template match="*" mode="titleabbrev.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:param name="verbose" select="1"/> + + <xsl:choose> + <xsl:when test="titleabbrev"> + <xsl:apply-templates select="titleabbrev[1]" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="." mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + <xsl:with-param name="verbose" select="$verbose"/> + </xsl:apply-templates> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="book|preface|chapter|appendix" mode="titleabbrev.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:param name="verbose" select="1"/> + + <xsl:variable name="titleabbrev" select="(docinfo/titleabbrev + |bookinfo/titleabbrev + |info/titleabbrev + |prefaceinfo/titleabbrev + |chapterinfo/titleabbrev + |appendixinfo/titleabbrev + |titleabbrev)[1]"/> + + <xsl:choose> + <xsl:when test="$titleabbrev"> + <xsl:apply-templates select="$titleabbrev" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="." mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + <xsl:with-param name="verbose" select="$verbose"/> + </xsl:apply-templates> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="article" mode="titleabbrev.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:param name="verbose" select="1"/> + + <xsl:variable name="titleabbrev" select="(artheader/titleabbrev + |articleinfo/titleabbrev + |info/titleabbrev + |titleabbrev)[1]"/> + + <xsl:choose> + <xsl:when test="$titleabbrev"> + <xsl:apply-templates select="$titleabbrev" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="." mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + <xsl:with-param name="verbose" select="$verbose"/> + </xsl:apply-templates> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="section + |sect1|sect2|sect3|sect4|sect5 + |refsect1|refsect2|refsect3 + |simplesect" + mode="titleabbrev.markup"> + <xsl:param name="allow-anchors" select="0"/> + <xsl:param name="verbose" select="1"/> + + <xsl:variable name="titleabbrev" select="(info/titleabbrev + |sectioninfo/titleabbrev + |sect1info/titleabbrev + |sect2info/titleabbrev + |sect3info/titleabbrev + |sect4info/titleabbrev + |sect5info/titleabbrev + |refsect1info/titleabbrev + |refsect2info/titleabbrev + |refsect3info/titleabbrev + |titleabbrev)[1]"/> + + <xsl:choose> + <xsl:when test="$titleabbrev"> + <xsl:apply-templates select="$titleabbrev" mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + </xsl:apply-templates> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="." mode="title.markup"> + <xsl:with-param name="allow-anchors" select="$allow-anchors"/> + <xsl:with-param name="verbose" select="$verbose"/> + </xsl:apply-templates> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="titleabbrev" mode="title.markup"> + <xsl:param name="allow-anchors" select="0"/> + + <xsl:choose> + <xsl:when test="$allow-anchors != 0"> + <xsl:apply-templates/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates mode="no.anchor.mode"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ============================================================ --> + +<xsl:template match="*" mode="no.anchor.mode"> + <!-- Switch to normal mode if no links --> + <xsl:choose> + <xsl:when test="descendant-or-self::footnote or + descendant-or-self::anchor or + descendant-or-self::ulink or + descendant-or-self::link or + descendant-or-self::olink or + descendant-or-self::xref or + descendant-or-self::indexterm"> + + <xsl:apply-templates mode="no.anchor.mode"/> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="."/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<xsl:template match="footnote" mode="no.anchor.mode"> + <!-- nop, suppressed --> +</xsl:template> + +<xsl:template match="anchor" mode="no.anchor.mode"> + <!-- nop, suppressed --> +</xsl:template> + +<xsl:template match="ulink" mode="no.anchor.mode"> + <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="link" mode="no.anchor.mode"> + <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="olink" mode="no.anchor.mode"> + <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="indexterm" mode="no.anchor.mode"> + <!-- nop, suppressed --> +</xsl:template> + +<xsl:template match="xref" mode="no.anchor.mode"> + <xsl:variable name="targets" select="key('id',@linkend)"/> + <xsl:variable name="target" select="$targets[1]"/> + <xsl:variable name="refelem" select="local-name($target)"/> + + <xsl:call-template name="check.id.unique"> + <xsl:with-param name="linkend" select="@linkend"/> + </xsl:call-template> + + <xsl:choose> + <xsl:when test="count($target) = 0"> + <xsl:message> + <xsl:text>XRef to nonexistent id: </xsl:text> + <xsl:value-of select="@linkend"/> + </xsl:message> + <xsl:text>???</xsl:text> + </xsl:when> + + <xsl:when test="@endterm"> + <xsl:variable name="etargets" select="key('id',@endterm)"/> + <xsl:variable name="etarget" select="$etargets[1]"/> + <xsl:choose> + <xsl:when test="count($etarget) = 0"> + <xsl:message> + <xsl:value-of select="count($etargets)"/> + <xsl:text>Endterm points to nonexistent ID: </xsl:text> + <xsl:value-of select="@endterm"/> + </xsl:message> + <xsl:text>???</xsl:text> + </xsl:when> + <xsl:otherwise> + <xsl:apply-templates select="$etarget" mode="endterm"/> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + + <xsl:when test="$target/@xreflabel"> + <xsl:call-template name="xref.xreflabel"> + <xsl:with-param name="target" select="$target"/> + </xsl:call-template> + </xsl:when> + + <xsl:otherwise> + <xsl:apply-templates select="$target" mode="xref-to-prefix"/> + + <xsl:apply-templates select="$target" mode="xref-to"> + <xsl:with-param name="referrer" select="."/> + <xsl:with-param name="xrefstyle"> + <xsl:choose> + <xsl:when test="@role and not(@xrefstyle) and $use.role.as.xrefstyle != 0"> + <xsl:value-of select="@role"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="@xrefstyle"/> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + </xsl:apply-templates> + + <xsl:apply-templates select="$target" mode="xref-to-suffix"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +<!-- ============================================================ --> + +</xsl:stylesheet> + diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/utility.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/utility.xsl new file mode 100644 index 000000000..8f9fadd9f --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/utility.xsl @@ -0,0 +1,304 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" + xmlns:dyn="http://exslt.org/dynamic" + xmlns:saxon="http://icl.com/saxon" + exclude-result-prefixes="doc dyn saxon" + version='1.0'> + +<!-- ******************************************************************** + $Id$ + ******************************************************************** + + This file is part of the XSL DocBook Stylesheet distribution. + See ../README or http://docbook.sf.net/release/xsl/current/ for + copyright and other information. + + ******************************************************************** --> + +<doc:reference xmlns=""> +<referenceinfo> +<releaseinfo role="meta"> +$Id$ +</releaseinfo> +<corpauthor>The DocBook Project Development Team</corpauthor> +<copyright><year>2007</year> +<holder>The DocBook Project</holder> +</copyright> +</referenceinfo> +<title>Utility Template Reference</title> + +<partintro id="partintro"> +<title>Introduction</title> + +<para>This is technical reference documentation for the + miscellaneous utility templates in the DocBook XSL + Stylesheets.</para> + +<note> +<para>These templates are defined in a separate file from the set + of “common” templates because some of the comment templates + reference DocBook XSL stylesheet parameters, requiring the + entire set of parameters to be imported/included in any + stylesheet that imports/includes the common templates.</para> +<para>The utility templates don’t import or include any DocBook + XSL stylesheet parameters, so the utility templates can be used + without importing the whole set of parameters.</para> +</note> + +<para>The following documentation is not intended to be + <quote>user</quote> documentation. It is provided for developers + writing customization layers for the stylesheets, and for anyone + who's interested in <quote>how it works</quote>.</para> +</partintro> +</doc:reference> + +<!-- ====================================================================== --> + +<doc:template name="log.message" xmlns=""> + <refpurpose>Logs/emits formatted notes and warnings</refpurpose> + + <refdescription id="log.message-desc"> + <para>The <function>log.message</function> template is a utility + template for logging/emitting formatted messages – that is, + notes and warnings, along with a given log “level” and an + identifier for the “source” that the message relates to.</para> + </refdescription> + + <refparameter id="log.message-params"> + <variablelist> + <varlistentry> + <term>level</term> + <listitem> + <para>Text to log/emit in the message-level field to + indicate the message level + (<literal>Note</literal> or + <literal>Warning</literal>)</para> + </listitem> + </varlistentry> + <varlistentry> + <term>source</term> + <listitem> + <para>Text to log/emit in the source field to identify the + “source” to which the notification/warning relates. + This can be any arbitrary string, but because the + message lacks line and column numbers to identify the + exact part of the source document to which it + relates, the intention is that the value you pass + into the <literal>source</literal> parameter should + give the user some way to identify the portion of + their source document on which to take potentially + take action in response to the log message (for + example, to edit, change, or add content).</para> + <para>So the <literal>source</literal> value should be, + for example, an ID, book/chapter/article title, title + of some formal object, or even a string giving an + XPath expression.</para> + </listitem> + </varlistentry> + <varlistentry> + <term>context-desc</term> + <listitem> + <para>Text to log/emit in the context-description field to + describe the context for the message.</para> + </listitem> + </varlistentry> + <varlistentry> + <term>context-desc-field-length</term> + <listitem> + <para>Specifies length of the context-description field + (in characters); default is 12</para> + <para>If the text specified by the + <literal>context-desc</literal> parameter is longer + than the number of characters specified in + <literal>context-desc-field-length</literal>, it is + truncated to <literal>context-desc-field-length</literal> + (12 characters by default).</para> + <para>If the specified text is shorter than + <literal>context-desc-field-length</literal>, + it is right-padded out to + <literal>context-desc-field-length</literal> (12 by + default).</para> + <para>If no value has been specified for the + <literal>context-desc</literal> parameter, the field is + left empty and the text of the log message begins with + the value of the <literal>message</literal> + parameter.</para> + </listitem> + </varlistentry> + <varlistentry> + <term>message</term> + <listitem> + <para>Text to log/emit in the actual message field</para> + </listitem> + </varlistentry> + <varlistentry> + <term>message-field-length</term> + <listitem> + <para>Specifies length of the message + field (in characters); default is 45</para> + </listitem> + </varlistentry> + </variablelist> + </refparameter> + <refreturn id="log.message-returns"> + <para>Outputs a message (generally, to standard error).</para></refreturn> +</doc:template> +<xsl:template name="log.message"> + <xsl:param name="level"/> + <xsl:param name="source"/> + <xsl:param name="context-desc"/> + <xsl:param name="context-desc-field-length">12</xsl:param> + <xsl:param name="context-desc-padded"> + <xsl:if test="not($context-desc = '')"> + <xsl:call-template name="pad-string"> + <xsl:with-param name="leftRight">right</xsl:with-param> + <xsl:with-param name="padVar" + select="substring($context-desc, 1, $context-desc-field-length)"/> + <xsl:with-param name="length" select="$context-desc-field-length"/> + </xsl:call-template> + </xsl:if> + </xsl:param> + <xsl:param name="message"/> + <xsl:param name="message-field-length" select="45"/> + <xsl:param name="message-padded"> + <xsl:variable name="spaces-for-blank-level"> + <!-- * if the level field is blank, we'll need to pad out --> + <!-- * the message field with spaces to compensate --> + <xsl:choose> + <xsl:when test="$level = ''"> + <xsl:value-of select="4 + 2"/> + <!-- * 4 = hard-coded length of comment text ("Note" or "Warn") --> + <!-- * + 2 = length of colon-plus-space separator ": " --> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="0"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + <xsl:variable name="spaces-for-blank-context-desc"> + <!-- * if the context-description field is blank, we'll need --> + <!-- * to pad out the message field with spaces to compensate --> + <xsl:choose> + <xsl:when test="$context-desc = ''"> + <xsl:value-of select="$context-desc-field-length + 2"/> + <!-- * + 2 = length of colon-plus-space separator ": " --> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="0"/> + </xsl:otherwise> + </xsl:choose> + </xsl:variable> + <xsl:variable name="extra-spaces" + select="$spaces-for-blank-level + $spaces-for-blank-context-desc"/> + <xsl:call-template name="pad-string"> + <xsl:with-param name="leftRight">right</xsl:with-param> + <xsl:with-param name="padVar" + select="substring($message, 1, ($message-field-length + $extra-spaces))"/> + <xsl:with-param name="length" + select="$message-field-length + $extra-spaces"/> + </xsl:call-template> + </xsl:param> + <!-- * emit the actual log message --> + <xsl:message> + <xsl:if test="not($level = '')"> + <xsl:value-of select="$level"/> + <xsl:text>: </xsl:text> + </xsl:if> + <xsl:if test="not($context-desc = '')"> + <xsl:value-of select="$context-desc-padded"/> + <xsl:text>: </xsl:text> + </xsl:if> + <xsl:value-of select="$message-padded"/> + <xsl:text> </xsl:text> + <xsl:value-of select="$source"/> + </xsl:message> +</xsl:template> + +<!-- ===================================== --> +<doc:template name="get.doc.title" xmlns=""> + <refpurpose>Gets a title from the current document</refpurpose> + <refdescription id="get.doc.title-desc"> + <para>The <function>get.doc.title</function> template is a + utility template for returning the first title found in the + current document.</para> + </refdescription> + <refreturn id="get.doc.title-returns"> + <para>Returns a string containing some identifying title for the + current document .</para></refreturn> +</doc:template> +<xsl:template name="get.doc.title"> + <xsl:choose> + <xsl:when test="//*[local-name() = 'title' + or local-name() = 'refname']"> + <xsl:value-of select="//*[local-name() = 'title' + or local-name() = 'refname'][1]"/> + </xsl:when> + <xsl:when test="substring(local-name(*[1]), + string-length(local-name(*[1])-3) = 'info') + and *[1]/*[local-name() = 'title']"> + <xsl:value-of select="*[1]/*[local-name() = 'title'][1]"/> + </xsl:when> + </xsl:choose> +</xsl:template> + +<!-- ===================================== --> +<doc:template name="pad-string" xmlns=""> + <refpurpose>Right-pads or left-pads a string out to a certain length</refpurpose> + <refdescription id="pad-string-desc"> + <para>This function takes string <parameter>padVar</parameter> and + pads it out in the direction <parameter>rightLeft</parameter> to + the string-length <parameter>length</parameter>, using string + <parameter>padChar</parameter> (a space character by default) as + the padding string (note that <parameter>padChar</parameter> can + be a string; it is not limited to just being a single + character).</para> + <note> + <para>This function began as a copy of Nate Austin's + <function>prepend-pad</function> function in the <ulink + url="http://www.dpawson.co.uk/xsl/sect2/padding.html" >Padding + Content</ulink> section of Dave Pawson's <ulink + url="http://www.dpawson.co.uk/xsl/index.html" >XSLT + FAQ</ulink>.</para> + </note> + </refdescription> + <refreturn id="pad-string-returns"> + <para>Returns a (padded) string.</para></refreturn> +</doc:template> +<xsl:template name="pad-string"> + <!-- * recursive template to right/left pad the value with --> + <!-- * whatever padChar is passed in --> + <xsl:param name="padChar" select="' '"/> + <xsl:param name="leftRight">left</xsl:param> + <xsl:param name="padVar"/> + <xsl:param name="length"/> + <xsl:choose> + <xsl:when test="string-length($padVar) < $length"> + <xsl:call-template name="pad-string"> + <xsl:with-param name="padChar" select="$padChar"/> + <xsl:with-param name="leftRight" select="$leftRight"/> + <xsl:with-param name="padVar"> + <xsl:choose> + <!-- * determine whether string should be --> + <!-- * right- or left-padded --> + <xsl:when test="$leftRight = 'left'"> + <!-- * pad it to left --> + <xsl:value-of select="concat($padChar,$padVar)"/> + </xsl:when> + <xsl:otherwise> + <!-- * otherwise, right-pad the string --> + <xsl:value-of select="concat($padVar,$padChar)"/> + </xsl:otherwise> + </xsl:choose> + </xsl:with-param> + <xsl:with-param name="length" select="$length"/> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:value-of + select="substring($padVar,string-length($padVar) - $length + 1)"/> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + +</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/zh_cn.xml b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/zh_cn.xml new file mode 100644 index 000000000..9f1c8d431 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/zh_cn.xml @@ -0,0 +1,647 @@ +<?xml version="1.0" encoding="utf-8"?> +<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="zh_cn" english-language-name="Chinese Simplified"> + +<!-- * This file is generated automatically. --> +<!-- * To submit changes to this file upstream (to the DocBook Project) --> +<!-- * do not submit an edited version of this file. Instead, submit an --> +<!-- * edited version of the source file at the following location: --> +<!-- * --> +<!-- * https://svn.sourceforge.net/svnroot/docbook/trunk/gentext/locale/zh_cn.xml --> +<!-- * --> +<!-- * E-mail the edited zh_cn.xml source file to: --> +<!-- * --> +<!-- * docbook-developers@lists.sourceforge.net --> + +<!-- ******************************************************************** --> + +<!-- This file is part of the XSL DocBook Stylesheet distribution. --> +<!-- See ../README or http://docbook.sf.net/release/xsl/current/ for --> +<!-- copyright and other information. --> + +<!-- ******************************************************************** --> + +<l:gentext key="Abstract" text="摘要"/> +<l:gentext key="abstract" text="摘要"/> +<l:gentext key="Answer" text="答:"/> +<l:gentext key="answer" text="答:"/> +<l:gentext key="Appendix" text="附录"/> +<l:gentext key="appendix" text="附录"/> +<l:gentext key="Article" text="文章"/> +<l:gentext key="article" text="文章"/> +<l:gentext key="Author" text="Author" lang="en"/> +<l:gentext key="Bibliography" text="参考书目"/> +<l:gentext key="bibliography" text="参考书目"/> +<l:gentext key="Book" text="书"/> +<l:gentext key="book" text="书"/> +<l:gentext key="CAUTION" text="小心"/> +<l:gentext key="Caution" text="小心"/> +<l:gentext key="caution" text="小心"/> +<l:gentext key="Chapter" text="章"/> +<l:gentext key="chapter" text="章"/> +<l:gentext key="Colophon" text="Colophon"/> +<l:gentext key="colophon" text="Colophon"/> +<l:gentext key="Copyright" text="版权"/> +<l:gentext key="copyright" text="版权"/> +<l:gentext key="Dedication" text="题词"/> +<l:gentext key="dedication" text="题词"/> +<l:gentext key="Edition" text="版"/> +<l:gentext key="edition" text="版"/> +<l:gentext key="Editor" text="编者"/> +<l:gentext key="Equation" text="公式"/> +<l:gentext key="equation" text="公式"/> +<l:gentext key="Example" text="例"/> +<l:gentext key="example" text="例"/> +<l:gentext key="Figure" text="图"/> +<l:gentext key="figure" text="图"/> +<l:gentext key="Glossary" text="术语表"/> +<l:gentext key="glossary" text="术语表"/> +<l:gentext key="GlossSee" text="见"/> +<l:gentext key="glosssee" text="见"/> +<l:gentext key="GlossSeeAlso" text="参见"/> +<l:gentext key="glossseealso" text="参见"/> +<l:gentext key="IMPORTANT" text="重要"/> +<l:gentext key="important" text="重要"/> +<l:gentext key="Important" text="重要"/> +<l:gentext key="Index" text="索引"/> +<l:gentext key="index" text="索引"/> +<l:gentext key="ISBN" text="ISBN"/> +<l:gentext key="isbn" text="ISBN"/> +<l:gentext key="LegalNotice" text="法律通告"/> +<l:gentext key="legalnotice" text="法律通告"/> +<l:gentext key="MsgAud" text="受众"/> +<l:gentext key="msgaud" text="受众"/> +<l:gentext key="MsgLevel" text="级别"/> +<l:gentext key="msglevel" text="级别"/> +<l:gentext key="MsgOrig" text="出处"/> +<l:gentext key="msgorig" text="出处"/> +<l:gentext key="NOTE" text="注意"/> +<l:gentext key="Note" text="注意"/> +<l:gentext key="note" text="注意"/> +<l:gentext key="Part" text="部分"/> +<l:gentext key="part" text="部分"/> +<l:gentext key="Preface" text="前言"/> +<l:gentext key="preface" text="前言"/> +<l:gentext key="Procedure" text="过程"/> +<l:gentext key="procedure" text="过程"/> +<l:gentext key="ProductionSet" text="产品"/> +<l:gentext key="PubDate" text="出版日期"/> +<l:gentext key="pubdate" text="出版日期"/> +<l:gentext key="Published" text="出版方"/> +<l:gentext key="published" text="出版方"/> +<l:gentext key="Publisher" text="出版者"/> +<l:gentext key="Qandadiv" text="质保"/> +<l:gentext key="qandadiv" text="质保"/> +<l:gentext key="QandASet" text="常见问题"/> +<l:gentext key="Question" text="问:"/> +<l:gentext key="question" text="问:"/> +<l:gentext key="RefEntry" text=""/> +<l:gentext key="refentry" text=""/> +<l:gentext key="Reference" text="参考"/> +<l:gentext key="reference" text="参考"/> +<l:gentext key="References" text="参考"/> +<l:gentext key="RefName" text="名称"/> +<l:gentext key="refname" text="名称"/> +<l:gentext key="RefSection" text=""/> +<l:gentext key="refsection" text=""/> +<l:gentext key="RefSynopsisDiv" text="大纲"/> +<l:gentext key="refsynopsisdiv" text="大纲"/> +<l:gentext key="RevHistory" text="修订历史"/> +<l:gentext key="revhistory" text="修订历史"/> +<l:gentext key="revision" text="修订"/> +<l:gentext key="Revision" text="修订"/> +<l:gentext key="sect1" text="节"/> +<l:gentext key="sect2" text="节"/> +<l:gentext key="sect3" text="节"/> +<l:gentext key="sect4" text="节"/> +<l:gentext key="sect5" text="节"/> +<l:gentext key="section" text="节"/> +<l:gentext key="Section" text="节"/> +<l:gentext key="see" text="见"/> +<l:gentext key="See" text="见"/> +<l:gentext key="seealso" text="参见"/> +<l:gentext key="Seealso" text="参见"/> +<l:gentext key="SeeAlso" text="参见"/> +<l:gentext key="set" text="Set"/> +<l:gentext key="Set" text="Set"/> +<l:gentext key="setindex" text="Set Index"/> +<l:gentext key="SetIndex" text="Set Index"/> +<l:gentext key="Sidebar" text=""/> +<l:gentext key="sidebar" text="sidebar"/> +<l:gentext key="step" text="步骤"/> +<l:gentext key="Step" text="步骤"/> +<l:gentext key="table" text="表"/> +<l:gentext key="Table" text="表"/> +<l:gentext key="task" text="任务"/> +<l:gentext key="Task" text="任务"/> +<l:gentext key="tip" text="提示"/> +<l:gentext key="TIP" text="提示"/> +<l:gentext key="Tip" text="提示"/> +<l:gentext key="Warning" text="警告"/> +<l:gentext key="warning" text="警告"/> +<l:gentext key="WARNING" text="警告"/> +<l:gentext key="and" text="和"/> +<l:gentext key="by" text="由"/> +<l:gentext key="Edited" text="编辑时间"/> +<l:gentext key="edited" text="编辑时间"/> +<l:gentext key="Editedby" text="编辑者"/> +<l:gentext key="editedby" text="编辑者"/> +<l:gentext key="in" text="于"/> +<l:gentext key="lastlistcomma" text=""/> +<l:gentext key="listcomma" text="、"/> +<l:gentext key="nonexistantelement" text="不存在的元素"/> +<l:gentext key="notes" text="备注"/> +<l:gentext key="Notes" text="备注"/> +<l:gentext key="Pgs" text="页"/> +<l:gentext key="pgs" text="页"/> +<l:gentext key="Revisedby" text="修订者:"/> +<l:gentext key="revisedby" text="修订者:"/> +<l:gentext key="TableNotes" text="表注"/> +<l:gentext key="tablenotes" text="表注"/> +<l:gentext key="TableofContents" text="目录"/> +<l:gentext key="tableofcontents" text="目录"/> +<l:gentext key="unexpectedelementname" text="未预期的名称"/> +<l:gentext key="unsupported" text="不支持"/> +<l:gentext key="xrefto" text="xref to"/> +<l:gentext key="Authors" text="作者"/> +<l:gentext key="copyeditor" text="版权编辑"/> +<l:gentext key="graphicdesigner" text="美术编辑"/> +<l:gentext key="productioneditor" text="产品编辑"/> +<l:gentext key="technicaleditor" text="技术编辑"/> +<l:gentext key="translator" text="译者"/> +<l:gentext key="listofequations" text="公式清单"/> +<l:gentext key="ListofEquations" text="公式清单"/> +<l:gentext key="ListofExamples" text="范例清单"/> +<l:gentext key="listofexamples" text="范例清单"/> +<l:gentext key="ListofFigures" text="插图清单"/> +<l:gentext key="listoffigures" text="插图清单"/> +<l:gentext key="ListofProcedures" text="过程清单"/> +<l:gentext key="listofprocedures" text="过程清单"/> +<l:gentext key="listoftables" text="表格清单"/> +<l:gentext key="ListofTables" text="表格清单"/> +<l:gentext key="ListofUnknown" text="未知清单"/> +<l:gentext key="listofunknown" text="未知清单"/> +<l:gentext key="nav-home" text="起始页"/> +<l:gentext key="nav-next" text="下一页"/> +<l:gentext key="nav-next-sibling" text="快进"/> +<l:gentext key="nav-prev" text="上一页"/> +<l:gentext key="nav-prev-sibling" text="快退"/> +<l:gentext key="nav-up" text="上一级"/> +<l:gentext key="nav-toc" text="目录"/> +<l:gentext key="Draft" text="草稿"/> +<l:gentext key="above" text="以上"/> +<l:gentext key="below" text="以下"/> +<l:gentext key="sectioncalled" text="一节"/> +<l:gentext key="index symbols" text="符号"/> +<l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz"/> +<l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/> +<l:gentext key="normalize.sort.input" text="AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ" lang="en"/> +<l:gentext key="normalize.sort.output" text="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ" lang="en"/> +<l:dingbat key="startquote" text="“"/> +<l:dingbat key="endquote" text="”"/> +<l:dingbat key="nestedstartquote" text="‘"/> +<l:dingbat key="nestedendquote" text="’"/> +<l:dingbat key="singlestartquote" text="‘"/> +<l:dingbat key="singleendquote" text="’"/> +<l:dingbat key="bullet" text="·"/> +<l:gentext key="hyphenation-character" text="-"/> +<l:gentext key="hyphenation-push-character-count" text="2"/> +<l:gentext key="hyphenation-remain-character-count" text="2"/> +<l:context name="styles"><l:template name="person-name" text="first-last"/> +</l:context> +<l:context name="title"><l:template name="abstract" text="%t"/> +<l:template name="answer" text="%t"/> +<l:template name="appendix" text="附录 %n. %t"/> +<l:template name="article" text="%t"/> +<l:template name="authorblurb" text="%t"/> +<l:template name="bibliodiv" text="%t"/> +<l:template name="biblioentry" text="%t"/> +<l:template name="bibliography" text="%t"/> +<l:template name="bibliolist" text="%t"/> +<l:template name="bibliomixed" text="%t"/> +<l:template name="bibliomset" text="%t"/> +<l:template name="biblioset" text="%t"/> +<l:template name="blockquote" text="%t"/> +<l:template name="book" text="%t"/> +<l:template name="calloutlist" text="%t"/> +<l:template name="caution" text="%t"/> +<l:template name="chapter" text="第 %n 章 %t"/> +<l:template name="colophon" text="%t"/> +<l:template name="dedication" text="%t"/> +<l:template name="equation" text="公式 %n. %t"/> +<l:template name="example" text="例 %n. %t"/> +<l:template name="figure" text="图 %n. %t"/> +<l:template name="foil" text="%t" lang="en"/> +<l:template name="foilgroup" text="%t" lang="en"/> +<l:template name="formalpara" text="%t"/> +<l:template name="glossary" text="%t"/> +<l:template name="glossdiv" text="%t"/> +<l:template name="glosslist" text="%t"/> +<l:template name="glossentry" text="%t"/> +<l:template name="important" text="%t"/> +<l:template name="index" text="%t"/> +<l:template name="indexdiv" text="%t"/> +<l:template name="itemizedlist" text="%t"/> +<l:template name="legalnotice" text="%t"/> +<l:template name="listitem" text=""/> +<l:template name="lot" text="%t"/> +<l:template name="msg" text="%t"/> +<l:template name="msgexplan" text="%t"/> +<l:template name="msgmain" text="%t"/> +<l:template name="msgrel" text="%t"/> +<l:template name="msgset" text="%t"/> +<l:template name="msgsub" text="%t"/> +<l:template name="note" text="%t"/> +<l:template name="orderedlist" text="%t"/> +<l:template name="part" text="第 %n 部分 %t"/> +<l:template name="partintro" text="%t"/> +<l:template name="preface" text="%t"/> +<l:template name="procedure" text="%t"/> +<l:template name="procedure.formal" text="过程 %n. %t"/> +<l:template name="productionset" text="%t"/> +<l:template name="productionset.formal" text="产品 %n"/> +<l:template name="qandadiv" text="%t"/> +<l:template name="qandaentry" text="%t"/> +<l:template name="qandaset" text="%t"/> +<l:template name="question" text="%t"/> +<l:template name="refentry" text="%t"/> +<l:template name="reference" text="%t"/> +<l:template name="refsection" text="%t"/> +<l:template name="refsect1" text="%t"/> +<l:template name="refsect2" text="%t"/> +<l:template name="refsect3" text="%t"/> +<l:template name="refsynopsisdiv" text="%t"/> +<l:template name="refsynopsisdivinfo" text="%t"/> +<l:template name="segmentedlist" text="%t"/> +<l:template name="set" text="%t"/> +<l:template name="setindex" text="%t"/> +<l:template name="sidebar" text="%t"/> +<l:template name="step" text="%t"/> +<l:template name="table" text="表 %n. %t"/> +<l:template name="task" text="%t"/> +<l:template name="tasksummary" text="%t" lang="en"/> +<l:template name="taskprerequisites" text="%t" lang="en"/> +<l:template name="taskrelated" text="%t" lang="en"/> +<l:template name="tip" text="%t"/> +<l:template name="toc" text="%t"/> +<l:template name="variablelist" text="%t"/> +<l:template name="varlistentry" text=""/> +<l:template name="warning" text="%t"/> +</l:context> +<l:context name="title-unnumbered"><l:template name="appendix" text="%t"/> +<l:template name="article/appendix" text="%t"/> +<l:template name="bridgehead" text="%t"/> +<l:template name="chapter" text="%t"/> +<l:template name="sect1" text="%t"/> +<l:template name="sect2" text="%t"/> +<l:template name="sect3" text="%t"/> +<l:template name="sect4" text="%t"/> +<l:template name="sect5" text="%t"/> +<l:template name="section" text="%t"/> +<l:template name="simplesect" text="%t"/> +<l:template name="part" text="%t" lang="en"/> +</l:context> +<l:context name="title-numbered"><l:template name="appendix" text="附录 %n. %t"/> +<l:template name="article/appendix" text="%n. %t"/> +<l:template name="bridgehead" text="%n. %t"/> +<l:template name="chapter" text="第 %n 章 %t"/> +<l:template name="part" text="部分 %n. %t"/> +<l:template name="sect1" text="%n. %t"/> +<l:template name="sect2" text="%n. %t"/> +<l:template name="sect3" text="%n. %t"/> +<l:template name="sect4" text="%n. %t"/> +<l:template name="sect5" text="%n. %t"/> +<l:template name="section" text="%n. %t"/> +<l:template name="simplesect" text="%t"/> +</l:context> +<l:context name="subtitle"><l:template name="appendix" text="%s"/> +<l:template name="article" text="%s"/> +<l:template name="bibliodiv" text="%s"/> +<l:template name="biblioentry" text="%s"/> +<l:template name="bibliography" text="%s"/> +<l:template name="bibliomixed" text="%s"/> +<l:template name="bibliomset" text="%s"/> +<l:template name="biblioset" text="%s"/> +<l:template name="book" text="%s"/> +<l:template name="chapter" text="%s"/> +<l:template name="colophon" text="%s"/> +<l:template name="dedication" text="%s"/> +<l:template name="glossary" text="%s"/> +<l:template name="glossdiv" text="%s"/> +<l:template name="index" text="%s"/> +<l:template name="indexdiv" text="%s"/> +<l:template name="lot" text="%s"/> +<l:template name="part" text="%s"/> +<l:template name="partintro" text="%s"/> +<l:template name="preface" text="%s"/> +<l:template name="refentry" text="%s"/> +<l:template name="reference" text="%s"/> +<l:template name="refsection" text="%s"/> +<l:template name="refsect1" text="%s"/> +<l:template name="refsect2" text="%s"/> +<l:template name="refsect3" text="%s"/> +<l:template name="refsynopsisdiv" text="%s"/> +<l:template name="sect1" text="%s"/> +<l:template name="sect2" text="%s"/> +<l:template name="sect3" text="%s"/> +<l:template name="sect4" text="%s"/> +<l:template name="sect5" text="%s"/> +<l:template name="section" text="%s"/> +<l:template name="set" text="%s"/> +<l:template name="setindex" text="%s"/> +<l:template name="sidebar" text="%s"/> +<l:template name="simplesect" text="%s"/> +<l:template name="toc" text="%s"/> +</l:context> +<l:context name="xref"><l:template name="abstract" text="%t"/> +<l:template name="answer" text="答: %n"/> +<l:template name="appendix" text="%t"/> +<l:template name="article" text="%t"/> +<l:template name="authorblurb" text="%t"/> +<l:template name="bibliodiv" text="%t"/> +<l:template name="bibliography" text="%t"/> +<l:template name="bibliomset" text="%t"/> +<l:template name="biblioset" text="%t"/> +<l:template name="blockquote" text="%t"/> +<l:template name="book" text="%t"/> +<l:template name="calloutlist" text="%t"/> +<l:template name="caution" text="%t"/> +<l:template name="chapter" text="%t"/> +<l:template name="colophon" text="%t"/> +<l:template name="constraintdef" text="%t"/> +<l:template name="dedication" text="%t"/> +<l:template name="equation" text="%t"/> +<l:template name="example" text="%t"/> +<l:template name="figure" text="%t"/> +<l:template name="foil" text="%t" lang="en"/> +<l:template name="foilgroup" text="%t" lang="en"/> +<l:template name="formalpara" text="%t"/> +<l:template name="glossary" text="%t"/> +<l:template name="glossdiv" text="%t"/> +<l:template name="important" text="%t"/> +<l:template name="index" text="%t"/> +<l:template name="indexdiv" text="%t"/> +<l:template name="itemizedlist" text="%t"/> +<l:template name="legalnotice" text="%t"/> +<l:template name="listitem" text="%n"/> +<l:template name="lot" text="%t"/> +<l:template name="msg" text="%t"/> +<l:template name="msgexplan" text="%t"/> +<l:template name="msgmain" text="%t"/> +<l:template name="msgrel" text="%t"/> +<l:template name="msgset" text="%t"/> +<l:template name="msgsub" text="%t"/> +<l:template name="note" text="%t"/> +<l:template name="orderedlist" text="%t"/> +<l:template name="part" text="%t"/> +<l:template name="partintro" text="%t"/> +<l:template name="preface" text="%t"/> +<l:template name="procedure" text="%t"/> +<l:template name="productionset" text="%t"/> +<l:template name="qandadiv" text="%t"/> +<l:template name="qandaentry" text="问: %n"/> +<l:template name="qandaset" text="%t"/> +<l:template name="question" text="问: %n"/> +<l:template name="reference" text="%t"/> +<l:template name="refsynopsisdiv" text="%t"/> +<l:template name="segmentedlist" text="%t"/> +<l:template name="set" text="%t"/> +<l:template name="setindex" text="%t"/> +<l:template name="sidebar" text="%t"/> +<l:template name="table" text="%t"/> +<l:template name="task" text="%t" lang="en"/> +<l:template name="tip" text="%t"/> +<l:template name="toc" text="%t"/> +<l:template name="variablelist" text="%t"/> +<l:template name="varlistentry" text="%n"/> +<l:template name="warning" text="%t"/> +<l:template name="olink.document.citation" text=" in %o" lang="en"/> +<l:template name="olink.page.citation" text=" (page %p)" lang="en"/> +<l:template name="page.citation" text=" [%p]"/> +<l:template name="page" text="(第 %p 页)"/> +<l:template name="docname" text=" in %o" lang="en"/> +<l:template name="docnamelong" text=" in the document titled %o" lang="en"/> +<l:template name="pageabbrev" text="(第 %p 页)"/> +<l:template name="Page" text="第 %p 页"/> +<l:template name="bridgehead" text="“%t”一节"/> +<l:template name="refsection" text="“%t”一节"/> +<l:template name="refsect1" text="“%t”一节"/> +<l:template name="refsect2" text="“%t”一节"/> +<l:template name="refsect3" text="“%t”一节"/> +<l:template name="sect1" text="“%t”一节"/> +<l:template name="sect2" text="“%t”一节"/> +<l:template name="sect3" text="“%t”一节"/> +<l:template name="sect4" text="“%t”一节"/> +<l:template name="sect5" text="“%t”一节"/> +<l:template name="section" text="“%t”一节"/> +<l:template name="simplesect" text="“%t”一节"/> +</l:context> +<l:context name="xref-number"><l:template name="answer" text="答: %n"/> +<l:template name="appendix" text="附录 %n"/> +<l:template name="bridgehead" text="第 %n 节"/> +<l:template name="chapter" text="第 %n 章"/> +<l:template name="equation" text="公式 %n"/> +<l:template name="example" text="例 %n"/> +<l:template name="figure" text="图 %n"/> +<l:template name="part" text="第 %n 部分"/> +<l:template name="procedure" text="过程 %n"/> +<l:template name="productionset" text="产品 %n"/> +<l:template name="qandadiv" text="质保 %n"/> +<l:template name="qandaentry" text="问: %n"/> +<l:template name="question" text="问: %n"/> +<l:template name="sect1" text="第 %n 节"/> +<l:template name="sect2" text="第 %n 节"/> +<l:template name="sect3" text="第 %n 节"/> +<l:template name="sect4" text="第 %n 节"/> +<l:template name="sect5" text="第 %n 节"/> +<l:template name="section" text="第 %n 节"/> +<l:template name="table" text="表 %n"/> +</l:context> +<l:context name="xref-number-and-title"><l:template name="appendix" text="附录 %n, %t"/> +<l:template name="bridgehead" text="第 %n 节 “%t”"/> +<l:template name="chapter" text="第 %n 章 %t"/> +<l:template name="equation" text="公式 %n “%t”"/> +<l:template name="example" text="例 %n “%t”"/> +<l:template name="figure" text="图 %n “%t”"/> +<l:template name="part" text="第 %n 部分 “%t”"/> +<l:template name="procedure" text="过程 %n, “%t”"/> +<l:template name="productionset" text="产品 %n, “%t”"/> +<l:template name="qandadiv" text="质保 %n, “%t”"/> +<l:template name="refsect1" text="“%t”一节"/> +<l:template name="refsect2" text="“%t”一节"/> +<l:template name="refsect3" text="“%t”一节"/> +<l:template name="refsection" text="“%t”一节"/> +<l:template name="sect1" text="第 %n 节 “%t”"/> +<l:template name="sect2" text="第 %n 节 “%t”"/> +<l:template name="sect3" text="第 %n 节 “%t”"/> +<l:template name="sect4" text="第 %n 节 “%t”"/> +<l:template name="sect5" text="第 %n 节 “%t”"/> +<l:template name="section" text="第 %n 节 “%t”"/> +<l:template name="simplesect" text="“%t”一节"/> +<l:template name="table" text="表 %n “%t”"/> +</l:context> +<l:context name="authorgroup"><l:template name="sep" text="、"/> +<l:template name="sep2" text="和"/> +<l:template name="seplast" text="和"/> +</l:context> +<l:context name="glossary"><l:template name="see" text="见%t"/> +<l:template name="seealso" text="参见%t"/> +</l:context> +<l:context name="msgset"><l:template name="MsgAud" text="受众:"/> +<l:template name="MsgLevel" text="级别:"/> +<l:template name="MsgOrig" text="出处:"/> +</l:context> +<l:context name="datetime"><l:template name="format" text="Y-m-d"/> +</l:context> +<l:context name="termdef"><l:template name="prefix" text="[Definition: " lang="en"/> +<l:template name="suffix" text="]" lang="en"/> +</l:context> +<l:context name="datetime-full"><l:template name="January" text="一月"/> +<l:template name="February" text="二月"/> +<l:template name="March" text="三月"/> +<l:template name="April" text="四月"/> +<l:template name="May" text="五月"/> +<l:template name="June" text="六月"/> +<l:template name="July" text="七月"/> +<l:template name="August" text="八月"/> +<l:template name="September" text="九月"/> +<l:template name="October" text="十月"/> +<l:template name="November" text="十一月"/> +<l:template name="December" text="十二月"/> +<l:template name="Monday" text="星期一"/> +<l:template name="Tuesday" text="星期二"/> +<l:template name="Wednesday" text="星期三"/> +<l:template name="Thursday" text="星期四"/> +<l:template name="Friday" text="星期五"/> +<l:template name="Saturday" text="星期六"/> +<l:template name="Sunday" text="星期日"/> +</l:context> +<l:context name="datetime-abbrev"><l:template name="Jan" text="一月"/> +<l:template name="Feb" text="二月"/> +<l:template name="Mar" text="三月"/> +<l:template name="Apr" text="四月"/> +<l:template name="May" text="五月"/> +<l:template name="Jun" text="六月"/> +<l:template name="Jul" text="七月"/> +<l:template name="Aug" text="八月"/> +<l:template name="Sep" text="九月"/> +<l:template name="Oct" text="十月"/> +<l:template name="Nov" text="十一月"/> +<l:template name="Dec" text="十二月"/> +<l:template name="Mon" text="周一"/> +<l:template name="Tue" text="周二"/> +<l:template name="Wed" text="周三"/> +<l:template name="Thu" text="周四"/> +<l:template name="Fri" text="周五"/> +<l:template name="Sat" text="周六"/> +<l:template name="Sun" text="周日"/> +</l:context> +<l:context name="htmlhelp"><l:template name="langcode" text="0x0804 Chinese (CHINA)"/> +</l:context> +<l:context name="index"><l:template name="term-separator" text=", " lang="en"/> +<l:template name="number-separator" text=", " lang="en"/> +<l:template name="range-separator" text="-" lang="en"/> +</l:context> +<l:context name="iso690"><l:template name="lastfirst.sep" text=", " lang="en"/> +<l:template name="alt.person.two.sep" text=" – " lang="en"/> +<l:template name="alt.person.last.sep" text=" – " lang="en"/> +<l:template name="alt.person.more.sep" text=" – " lang="en"/> +<l:template name="primary.editor" text=" (ed.)" lang="en"/> +<l:template name="primary.many" text=", et al." lang="en"/> +<l:template name="primary.sep" text=". " lang="en"/> +<l:template name="submaintitle.sep" text=": " lang="en"/> +<l:template name="title.sep" text=". " lang="en"/> +<l:template name="othertitle.sep" text=", " lang="en"/> +<l:template name="medium1" text=" [" lang="en"/> +<l:template name="medium2" text="]" lang="en"/> +<l:template name="secondary.person.sep" text="; " lang="en"/> +<l:template name="secondary.sep" text=". " lang="en"/> +<l:template name="respons.sep" text=". " lang="en"/> +<l:template name="edition.sep" text=". " lang="en"/> +<l:template name="edition.serial.sep" text=", " lang="en"/> +<l:template name="issuing.range" text="-" lang="en"/> +<l:template name="issuing.div" text=", " lang="en"/> +<l:template name="issuing.sep" text=". " lang="en"/> +<l:template name="partnr.sep" text=". " lang="en"/> +<l:template name="placepubl.sep" text=": " lang="en"/> +<l:template name="publyear.sep" text=", " lang="en"/> +<l:template name="pubinfo.sep" text=". " lang="en"/> +<l:template name="spec.pubinfo.sep" text=", " lang="en"/> +<l:template name="upd.sep" text=", " lang="en"/> +<l:template name="datecit1" text=" [cited " lang="en"/> +<l:template name="datecit2" text="]" lang="en"/> +<l:template name="extent.sep" text=". " lang="en"/> +<l:template name="locs.sep" text=", " lang="en"/> +<l:template name="location.sep" text=". " lang="en"/> +<l:template name="serie.sep" text=". " lang="en"/> +<l:template name="notice.sep" text=". " lang="en"/> +<l:template name="access" text="Available " lang="en"/> +<l:template name="acctoo" text="Also available " lang="en"/> +<l:template name="onwww" text="from World Wide Web" lang="en"/> +<l:template name="oninet" text="from Internet" lang="en"/> +<l:template name="access.end" text=": " lang="en"/> +<l:template name="link1" text="<" lang="en"/> +<l:template name="link2" text=">" lang="en"/> +<l:template name="access.sep" text=". " lang="en"/> +<l:template name="isbn" text="ISBN " lang="en"/> +<l:template name="issn" text="ISSN " lang="en"/> +<l:template name="stdnum.sep" text=". " lang="en"/> +<l:template name="patcountry.sep" text=". " lang="en"/> +<l:template name="pattype.sep" text=", " lang="en"/> +<l:template name="patnum.sep" text=". " lang="en"/> +<l:template name="patdate.sep" text=". " lang="en"/> +</l:context><l:letters><l:l i="-1"/> +<l:l i="0">其它</l:l> +<l:l i="10">A</l:l> +<l:l i="10">a</l:l> +<l:l i="20">B</l:l> +<l:l i="20">b</l:l> +<l:l i="30">C</l:l> +<l:l i="30">c</l:l> +<l:l i="40">D</l:l> +<l:l i="40">d</l:l> +<l:l i="50">E</l:l> +<l:l i="50">e</l:l> +<l:l i="60">F</l:l> +<l:l i="60">f</l:l> +<l:l i="70">G</l:l> +<l:l i="70">g</l:l> +<l:l i="80">H</l:l> +<l:l i="80">h</l:l> +<l:l i="90">I</l:l> +<l:l i="90">i</l:l> +<l:l i="100">J</l:l> +<l:l i="100">j</l:l> +<l:l i="110">K</l:l> +<l:l i="110">k</l:l> +<l:l i="120">L</l:l> +<l:l i="120">l</l:l> +<l:l i="130">M</l:l> +<l:l i="130">m</l:l> +<l:l i="140">N</l:l> +<l:l i="140">n</l:l> +<l:l i="150">O</l:l> +<l:l i="150">o</l:l> +<l:l i="160">P</l:l> +<l:l i="160">p</l:l> +<l:l i="170">Q</l:l> +<l:l i="170">q</l:l> +<l:l i="180">R</l:l> +<l:l i="180">r</l:l> +<l:l i="190">S</l:l> +<l:l i="190">s</l:l> +<l:l i="200">T</l:l> +<l:l i="200">t</l:l> +<l:l i="210">U</l:l> +<l:l i="210">u</l:l> +<l:l i="220">V</l:l> +<l:l i="220">v</l:l> +<l:l i="230">W</l:l> +<l:l i="230">w</l:l> +<l:l i="240">X</l:l> +<l:l i="240">x</l:l> +<l:l i="250">Y</l:l> +<l:l i="250">y</l:l> +<l:l i="260">Z</l:l> +<l:l i="260">z</l:l> +</l:letters> +</l:l10n> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/zh_tw.xml b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/zh_tw.xml new file mode 100644 index 000000000..fbc52f415 --- /dev/null +++ b/stylesheets/lfs-xsl/docbook-xsl-snapshot/common/zh_tw.xml @@ -0,0 +1,1216 @@ +<?xml version="1.0" encoding="utf-8"?> +<l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="zh_tw" english-language-name="Chinese (Taiwan)"> + +<!-- * This file is generated automatically. --> +<!-- * To submit changes to this file upstream (to the DocBook Project) --> +<!-- * do not submit an edited version of this file. Instead, submit an --> +<!-- * edited version of the source file at the following location: --> +<!-- * --> +<!-- * https://svn.sourceforge.net/svnroot/docbook/trunk/gentext/locale/zh_tw.xml --> +<!-- * --> +<!-- * E-mail the edited zh_tw.xml source file to: --> +<!-- * --> +<!-- * docbook-developers@lists.sourceforge.net --> + +<!-- ******************************************************************** --> + +<!-- This file is part of the XSL DocBook Stylesheet distribution. --> +<!-- See ../README or http://docbook.sf.net/release/xsl/current/ for --> +<!-- copyright and other information. --> + +<!-- ******************************************************************** --> + +<l:gentext key="Abstract" text="摘要"/> +<l:gentext key="abstract" text="摘要"/> +<l:gentext key="Answer" text="答:"/> +<l:gentext key="answer" text="答:"/> +<l:gentext key="Appendix" text="附錄"/> +<l:gentext key="appendix" text="附錄"/> +<l:gentext key="Article" text="文章"/> +<l:gentext key="article" text="文章"/> +<l:gentext key="Author" text="Author" lang="en"/> +<l:gentext key="Bibliography" text="參考文獻"/> +<l:gentext key="bibliography" text="參考文獻"/> +<l:gentext key="Book" text="書目"/> +<l:gentext key="book" text="書目"/> +<l:gentext key="CAUTION" text="注意"/> +<l:gentext key="Caution" text="注意"/> +<l:gentext key="caution" text="注意"/> +<l:gentext key="Chapter" text="章"/> +<l:gentext key="chapter" text="章"/> +<l:gentext key="Colophon" text="版本記錄"/> +<l:gentext key="colophon" text="版本記錄"/> +<l:gentext key="Copyright" text="版權"/> +<l:gentext key="copyright" text="版權"/> +<l:gentext key="Dedication" text="奉獻"/> +<l:gentext key="dedication" text="奉獻"/> +<l:gentext key="Edition" text="版"/> +<l:gentext key="edition" text="版"/> +<l:gentext key="Editor" text="Editor" lang="en"/> +<l:gentext key="Equation" text="方程式"/> +<l:gentext key="equation" text="方程式"/> +<l:gentext key="Example" text="範例"/> +<l:gentext key="example" text="範例"/> +<l:gentext key="Figure" text="圖形"/> +<l:gentext key="figure" text="圖形"/> +<l:gentext key="Glossary" text="小辭彙"/> +<l:gentext key="glossary" text="小辭彙"/> +<l:gentext key="GlossSee" text="參見"/> +<l:gentext key="glosssee" text="參見"/> +<l:gentext key="GlossSeeAlso" text="另參見"/> +<l:gentext key="glossseealso" text="另參見"/> +<l:gentext key="IMPORTANT" text="重要"/> +<l:gentext key="important" text="重要"/> +<l:gentext key="Important" text="重要"/> +<l:gentext key="Index" text="索引"/> +<l:gentext key="index" text="索引"/> +<l:gentext key="ISBN" text="ISBN"/> +<l:gentext key="isbn" text="ISBN"/> +<l:gentext key="LegalNotice" text="法律聲明"/> +<l:gentext key="legalnotice" text="法律聲明"/> +<l:gentext key="MsgAud" text="讀者"/> +<l:gentext key="msgaud" text="讀者"/> +<l:gentext key="MsgLevel" text="程度"/> +<l:gentext key="msglevel" text="程度"/> +<l:gentext key="MsgOrig" text="出處"/> +<l:gentext key="msgorig" text="出處"/> +<l:gentext key="NOTE" text="注"/> +<l:gentext key="Note" text="注"/> +<l:gentext key="note" text="注"/> +<l:gentext key="Part" text="部"/> +<l:gentext key="part" text="部"/> +<l:gentext key="Preface" text="序言"/> +<l:gentext key="preface" text="序言"/> +<l:gentext key="Procedure" text="過程"/> +<l:gentext key="procedure" text="過程"/> +<l:gentext key="ProductionSet" text="Production"/> +<l:gentext key="PubDate" text="Publication Date" lang="en"/> +<l:gentext key="pubdate" text="Publication date" lang="en"/> +<l:gentext key="Published" text="出版"/> +<l:gentext key="published" text="出版"/> +<l:gentext key="Publisher" text="Publisher" lang="en"/> +<l:gentext key="Qandadiv" text="問:且答:"/> +<l:gentext key="qandadiv" text="問:且答:"/> +<l:gentext key="QandASet" text="Frequently Asked Questions" lang="en"/> +<l:gentext key="Question" text="問:"/> +<l:gentext key="question" text="問:"/> +<l:gentext key="RefEntry" text="參照項目"/> +<l:gentext key="refentry" text="參照項目"/> +<l:gentext key="Reference" text="參考"/> +<l:gentext key="reference" text="參考"/> +<l:gentext key="References" text="References" lang="en"/> +<l:gentext key="RefName" text="參考名"/> +<l:gentext key="refname" text="參考名"/> +<l:gentext key="RefSection" text="參照章節"/> +<l:gentext key="refsection" text="參照章節"/> +<l:gentext key="RefSynopsisDiv" text="大綱"/> +<l:gentext key="refsynopsisdiv" text="大綱"/> +<l:gentext key="RevHistory" text="修訂記錄"/> +<l:gentext key="revhistory" text="修訂記錄"/> +<l:gentext key="revision" text="修訂"/> +<l:gentext key="Revision" text="修訂"/> +<l:gentext key="sect1" text="Section"/> +<l:gentext key="sect2" text="Section"/> +<l:gentext key="sect3" text="Section"/> +<l:gentext key="sect4" text="Section"/> +<l:gentext key="sect5" text="Section"/> +<l:gentext key="section" text="節"/> +<l:gentext key="Section" text="節"/> +<l:gentext key="see" text="見"/> +<l:gentext key="See" text="見"/> +<l:gentext key="seealso" text="另見"/> +<l:gentext key="Seealso" text="另見"/> +<l:gentext key="SeeAlso" text="另見"/> +<l:gentext key="set" text="Set"/> +<l:gentext key="Set" text="Set"/> +<l:gentext key="setindex" text="Set Index"/> +<l:gentext key="SetIndex" text="Set Index"/> +<l:gentext key="Sidebar" text=""/> +<l:gentext key="sidebar" text=""/> +<l:gentext key="step" text="步驟"/> +<l:gentext key="Step" text="步驟"/> +<l:gentext key="table" text="表格"/> +<l:gentext key="Table" text="表格"/> +<l:gentext key="task" text="Task" lang="en"/> +<l:gentext key="Task" text="Task" lang="en"/> +<l:gentext key="tip" text="提示"/> +<l:gentext key="TIP" text="提示"/> +<l:gentext key="Tip" text="提示"/> +<l:gentext key="Warning" text="警告"/> +<l:gentext key="warning" text="警告"/> +<l:gentext key="WARNING" text="警告"/> +<l:gentext key="and" text="且"/> +<l:gentext key="by" text="由"/> +<l:gentext key="Edited" text="編輯"/> +<l:gentext key="edited" text="編輯"/> +<l:gentext key="Editedby" text="編輯"/> +<l:gentext key="editedby" text="編輯"/> +<l:gentext key="in" text="在"/> +<l:gentext key="lastlistcomma" text=","/> +<l:gentext key="listcomma" text=","/> +<l:gentext key="nonexistantelement" text="不存在的元素"/> +<l:gentext key="notes" text="注"/> +<l:gentext key="Notes" text="注"/> +<l:gentext key="Pgs" text="頁"/> +<l:gentext key="pgs" text="頁"/> +<l:gentext key="Revisedby" text="修訂"/> +<l:gentext key="revisedby" text="修訂"/> +<l:gentext key="TableNotes" text="注釋"/> +<l:gentext key="tablenotes" text="注釋"/> +<l:gentext key="TableofContents" text="內容目錄"/> +<l:gentext key="tableofcontents" text="內容目錄"/> +<l:gentext key="unexpectedelementname" text="非預期的元素名"/> +<l:gentext key="unsupported" text="未支援"/> +<l:gentext key="xrefto" text="參照"/> +<l:gentext key="Authors" text="Authors" lang="en"/> +<l:gentext key="copyeditor" text="Copy Editor" lang="en"/> +<l:gentext key="graphicdesigner" text="Graphic Designer" lang="en"/> +<l:gentext key="productioneditor" text="Production Editor" lang="en"/> +<l:gentext key="technicaleditor" text="Technical Editor" lang="en"/> +<l:gentext key="translator" text="Translator" lang="en"/> +<l:gentext key="listofequations" text="公式目錄"/> +<l:gentext key="ListofEquations" text="公式目錄"/> +<l:gentext key="ListofExamples" text="範例目錄"/> +<l:gentext key="listofexamples" text="範例目錄"/> +<l:gentext key="ListofFigures" text="附圖目錄"/> +<l:gentext key="listoffigures" text="附圖目錄"/> +<l:gentext key="ListofProcedures" text="List of Procedures" lang="en"/> +<l:gentext key="listofprocedures" text="List of Procedures" lang="en"/> +<l:gentext key="listoftables" text="附表目錄"/> +<l:gentext key="ListofTables" text="附表目錄"/> +<l:gentext key="ListofUnknown" text="其它內容目錄"/> +<l:gentext key="listofunknown" text="其它內容目錄"/> +<l:gentext key="nav-home" text="內容"/> +<l:gentext key="nav-next" text="下一頁"/> +<l:gentext key="nav-next-sibling" text="快速向後"/> +<l:gentext key="nav-prev" text="前一頁"/> +<l:gentext key="nav-prev-sibling" text="快速向前"/> +<l:gentext key="nav-up" text="上一層"/> +<l:gentext key="nav-toc" text="ToC" lang="en"/> +<l:gentext key="Draft" text="Draft"/> +<l:gentext key="above" text="above"/> +<l:gentext key="below" text="below"/> +<l:gentext key="sectioncalled" text="the section called"/> +<l:gentext key="index symbols" text="Symbols"/> +<l:gentext key="lowercase.alpha" text="abcdefghijklmnopqrstuvwxyz" lang="en"/> +<l:gentext key="uppercase.alpha" text="ABCDEFGHIJKLMNOPQRSTUVWXYZ" lang="en"/> +<l:gentext key="normalize.sort.input" text="AaÀàÁáÂâÃãÄäÅåĀāĂ㥹ǍǎǞǟǠǡǺǻȀȁȂȃȦȧḀḁẚẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặBbƀƁɓƂƃḂḃḄḅḆḇCcÇçĆćĈĉĊċČčƇƈɕḈḉDdĎďĐđƊɗƋƌDžDzȡɖḊḋḌḍḎḏḐḑḒḓEeÈèÉéÊêËëĒēĔĕĖėĘęĚěȄȅȆȇȨȩḔḕḖḗḘḙḚḛḜḝẸẹẺẻẼẽẾếỀềỂểỄễỆệFfƑƒḞḟGgĜĝĞğĠġĢģƓɠǤǥǦǧǴǵḠḡHhĤĥĦħȞȟɦḢḣḤḥḦḧḨḩḪḫẖIiÌìÍíÎîÏïĨĩĪīĬĭĮįİƗɨǏǐȈȉȊȋḬḭḮḯỈỉỊịJjĴĵǰʝKkĶķƘƙǨǩḰḱḲḳḴḵLlĹĺĻļĽľĿŀŁłƚLjȴɫɬɭḶḷḸḹḺḻḼḽMmɱḾḿṀṁṂṃNnÑñŃńŅņŇňƝɲƞȠNjǸǹȵɳṄṅṆṇṈṉṊṋOoÒòÓóÔôÕõÖöØøŌōŎŏŐőƟƠơǑǒǪǫǬǭǾǿȌȍȎȏȪȫȬȭȮȯȰȱṌṍṎṏṐṑṒṓỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợPpƤƥṔṕṖṗQqʠRrŔŕŖŗŘřȐȑȒȓɼɽɾṘṙṚṛṜṝṞṟSsŚśŜŝŞşŠšȘșʂṠṡṢṣṤṥṦṧṨṩTtŢţŤťŦŧƫƬƭƮʈȚțȶṪṫṬṭṮṯṰṱẗUuÙùÚúÛûÜüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜȔȕȖȗṲṳṴṵṶṷṸṹṺṻỤụỦủỨứỪừỬửỮữỰựVvƲʋṼṽṾṿWwŴŵẀẁẂẃẄẅẆẇẈẉẘXxẊẋẌẍYyÝýÿŸŶŷƳƴȲȳẎẏẙỲỳỴỵỶỷỸỹZzŹźŻżŽžƵƶȤȥʐʑẐẑẒẓẔẕẕ" lang="en"/> +<l:gentext key="normalize.sort.output" text="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPQQQRRRRRRRRRRRRRRRRRRRRRRRSSSSSSSSSSSSSSSSSSSSSSSTTTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVVVVVVVWWWWWWWWWWWWWWWXXXXXXYYYYYYYYYYYYYYYYYYYYYYYZZZZZZZZZZZZZZZZZZZZZ" lang="en"/> +<l:dingbat key="startquote" text="“"/> +<l:dingbat key="endquote" text="”"/> +<l:dingbat key="nestedstartquote" text="‘"/> +<l:dingbat key="nestedendquote" text="’"/> +<l:dingbat key="singlestartquote" text="‘" lang="en"/> +<l:dingbat key="singleendquote" text="’" lang="en"/> +<l:dingbat key="bullet" text="•"/> +<l:gentext key="hyphenation-character" text="-" lang="en"/> +<l:gentext key="hyphenation-push-character-count" text="2" lang="en"/> +<l:gentext key="hyphenation-remain-character-count" text="2" lang="en"/> +<l:context name="styles"><l:template name="person-name" text="first-last"/> +</l:context> +<l:context name="title"><l:template name="abstract" text="%t"/> +<l:template name="answer" text="%t"/> +<l:template name="appendix" text="附錄 %n. %t"/> +<l:template name="article" text="%t"/> +<l:template name="authorblurb" text="%t"/> +<l:template name="bibliodiv" text="%t"/> +<l:template name="biblioentry" text="%t"/> +<l:template name="bibliography" text="%t"/> +<l:template name="bibliolist" text="%t" lang="en"/> +<l:template name="bibliomixed" text="%t"/> +<l:template name="bibliomset" text="%t"/> +<l:template name="biblioset" text="%t"/> +<l:template name="blockquote" text="%t"/> +<l:template name="book" text="%t"/> +<l:template name="calloutlist" text="%t"/> +<l:template name="caution" text="%t"/> +<l:template name="chapter" text="章 %n. %t"/> +<l:template name="colophon" text="%t"/> +<l:template name="dedication" text="%t"/> +<l:template name="equation" text="方程式 %n. %t"/> +<l:template name="example" text="範例 %n. %t"/> +<l:template name="figure" text="圖形 %n. %t"/> +<l:template name="foil" text="%t" lang="en"/> +<l:template name="foilgroup" text="%t" lang="en"/> +<l:template name="formalpara" text="%t"/> +<l:template name="glossary" text="%t"/> +<l:template name="glossdiv" text="%t"/> +<l:template name="glosslist" text="%t" lang="en"/> +<l:template name="glossentry" text="%t" lang="en"/> +<l:template name="important" text="%t"/> +<l:template name="index" text="%t"/> +<l:template name="indexdiv" text="%t"/> +<l:template name="itemizedlist" text="%t"/> +<l:template name="legalnotice" text="%t"/> +<l:template name="listitem" text=""/> +<l:template name="lot" text="%t"/> +<l:template name="msg" text="%t"/> +<l:template name="msgexplan" text="%t"/> +<l:template name="msgmain" text="%t"/> +<l:template name="msgrel" text="%t"/> +<l:template name="msgset" text="%t"/> +<l:template name="msgsub" text="%t"/> +<l:template name="note" text="%t"/> +<l:template name="orderedlist" text="%t"/> +<l:template name="part" text="部 %n. %t"/> +<l:template name="partintro" text="%t"/> +<l:template name="preface" text="%t"/> +<l:template name="procedure" text="%t"/> +<l:template name="procedure.formal" text="過程 %n. %t"/> +<l:template name="productionset" text="%t"/> +<l:template name="productionset.formal" text="Production %n"/> +<l:template name="qandadiv" text="%t"/> +<l:template name="qandaentry" text="%t"/> +<l:template name="qandaset" text="%t"/> +<l:template name="question" text="%t"/> +<l:template name="refentry" text="%t"/> +<l:template name="reference" text="%t"/> +<l:template name="refsection" text="%t" lang="en"/> +<l:template name="refsect1" text="%t"/> +<l:template name="refsect2" text="%t"/> +<l:template name="refsect3" text="%t"/> +<l:template name="refsynopsisdiv" text="%t"/> +<l:template name="refsynopsisdivinfo" text="%t"/> +<l:template name="segmentedlist" text="%t"/> +<l:template name="set" text="%t"/> +<l:template name="setindex" text="%t"/> +<l:template name="sidebar" text="%t"/> +<l:template name="step" text="%t"/> +<l:template name="table" text="表格 %n. %t"/> +<l:template name="task" text="%t" lang="en"/> +<l:template name="tasksummary" text="%t" lang="en"/> +<l:template name="taskprerequisites" text="%t" lang="en"/> +<l:template name="taskrelated" text="%t" lang="en"/> +<l:template name="tip" text="%t"/> +<l:template name="toc" text="%t"/> +<l:template name="variablelist" text="%t"/> +<l:template name="varlistentry" text="" lang="en"/> +<l:template name="warning" text="%t"/> +</l:context> +<l:context name="title-unnumbered"><l:template name="appendix" text="%t"/> +<l:template name="article/appendix" text="%t" lang="en"/> +<l:template name="bridgehead" text="%t"/> +<l:template name="chapter" text="%t"/> +<l:template name="sect1" text="%t"/> +<l:template name="sect2" text="%t"/> +<l:template name="sect3" text="%t"/> +<l:template name="sect4" text="%t"/> +<l:template name="sect5" text="%t"/> +<l:template name="section" text="%t"/> +<l:template name="simplesect" text="%t"/> +<l:template name="part" text="%t" lang="en"/> +</l:context> +<l:context name="title-numbered"><l:template name="appendix" text="附錄 %n. %t"/> +<l:template name="article/appendix" text="%n. %t" lang="en"/> +<l:template name="bridgehead" text="%t"/> +<l:template name="chapter" text="章 %n. %t"/> +<l:template name="part" text="部 %n. %t"/> +<l:template name="sect1" text="%n. %t"/> +<l:template name="sect2" text="%n. %t"/> +<l:template name="sect3" text="%n. %t"/> +<l:template name="sect4" text="%n. %t"/> +<l:template name="sect5" text="%n. %t"/> +<l:template name="section" text="%n. %t"/> +<l:template name="simplesect" text="%n. %t"/> +</l:context> +<l:context name="subtitle"><l:template name="appendix" text="%s"/> +<l:template name="article" text="%s"/> +<l:template name="bibliodiv" text="%s"/> +<l:template name="biblioentry" text="%s"/> +<l:template name="bibliography" text="%s"/> +<l:template name="bibliomixed" text="%s"/> +<l:template name="bibliomset" text="%s"/> +<l:template name="biblioset" text="%s"/> +<l:template name="book" text="%s"/> +<l:template name="chapter" text="%s"/> +<l:template name="colophon" text="%s"/> +<l:template name="dedication" text="%s"/> +<l:template name="glossary" text="%s"/> +<l:template name="glossdiv" text="%s"/> +<l:template name="index" text="%s"/> +<l:template name="indexdiv" text="%s"/> +<l:template name="lot" text="%s"/> +<l:template name="part" text="%s"/> +<l:template name="partintro" text="%s"/> +<l:template name="preface" text="%s"/> +<l:template name="refentry" text="%s"/> +<l:template name="reference" text="%s"/> +<l:template name="refsection" text="%s" lang="en"/> +<l:template name="refsect1" text="%s"/> +<l:template name="refsect2" text="%s"/> +<l:template name="refsect3" text="%s"/> +<l:template name="refsynopsisdiv" text="%s"/> +<l:template name="sect1" text="%s"/> +<l:template name="sect2" text="%s"/> +<l:template name="sect3" text="%s"/> +<l:template name="sect4" text="%s"/> +<l:template name="sect5" text="%s"/> +<l:template name="section" text="%s"/> +<l:template name="set" text="%s"/> +<l:template name="setindex" text="%s"/> +<l:template name="sidebar" text="%s"/> +<l:template name="simplesect" text="%s"/> +<l:template name="toc" text="%s"/> +</l:context> +<l:context name="xref"><l:template name="abstract" text="%t"/> +<l:template name="answer" text="答: %n"/> +<l:template name="appendix" text="%t"/> +<l:template name="article" text="%t"/> +<l:template name="authorblurb" text="%t"/> +<l:template name="bibliodiv" text="%t"/> +<l:template name="bibliography" text="%t"/> +<l:template name="bibliomset" text="%t"/> +<l:template name="biblioset" text="%t"/> +<l:template name="blockquote" text="%t"/> +<l:template name="book" text="%t"/> +<l:template name="calloutlist" text="%t"/> +<l:template name="caution" text="%t"/> +<l:template name="chapter" text="%t"/> +<l:template name="colophon" text="%t"/> +<l:template name="constraintdef" text="%t"/> +<l:template name="dedication" text="%t"/> +<l:template name="equation" text="%t"/> +<l:template name="example" text="%t"/> +<l:template name="figure" text="%t"/> +<l:template name="foil" text="%t" lang="en"/> +<l:template name="foilgroup" text="%t" lang="en"/> +<l:template name="formalpara" text="%t"/> +<l:template name="glossary" text="%t"/> +<l:template name="glossdiv" text="%t"/> +<l:template name="important" text="%t"/> +<l:template name="index" text="%t"/> +<l:template name="indexdiv" text="%t"/> +<l:template name="itemizedlist" text="%t"/> +<l:template name="legalnotice" text="%t"/> +<l:template name="listitem" text="%n"/> +<l:template name="lot" text="%t"/> +<l:template name="msg" text="%t"/> +<l:template name="msgexplan" text="%t"/> +<l:template name="msgmain" text="%t"/> +<l:template name="msgrel" text="%t"/> +<l:template name="msgset" text="%t"/> +<l:template name="msgsub" text="%t"/> +<l:template name="note" text="%t"/> +<l:template name="orderedlist" text="%t"/> +<l:template name="part" text="%t"/> +<l:template name="partintro" text="%t"/> +<l:template name="preface" text="%t"/> +<l:template name="procedure" text="%t"/> +<l:template name="productionset" text="%t"/> +<l:template name="qandadiv" text="%t"/> +<l:template name="qandaentry" text="問: %n"/> +<l:template name="qandaset" text="%t"/> +<l:template name="question" text="問: %n"/> +<l:template name="reference" text="%t"/> +<l:template name="refsynopsisdiv" text="%t"/> +<l:template name="segmentedlist" text="%t"/> +<l:template name="set" text="%t"/> +<l:template name="setindex" text="%t"/> +<l:template name="sidebar" text="%t"/> +<l:template name="table" text="%t"/> +<l:template name="task" text="%t" lang="en"/> +<l:template name="tip" text="%t"/> +<l:template name="toc" text="%t"/> +<l:template name="variablelist" text="%t"/> +<l:template name="varlistentry" text="%n"/> +<l:template name="warning" text="%t"/> +<l:template name="olink.document.citation" text=" in %o" lang="en"/> +<l:template name="olink.page.citation" text=" (page %p)" lang="en"/> +<l:template name="page.citation" text=" [%p]"/> +<l:template name="page" text="(page %p)" lang="en"/> +<l:template name="docname" text=" in %o" lang="en"/> +<l:template name="docnamelong" text=" in the document titled %o" lang="en"/> +<l:template name="pageabbrev" text="(p. %p)" lang="en"/> +<l:template name="Page" text="Page %p" lang="en"/> +<l:template name="bridgehead" text="“%t”"/> +<l:template name="refsection" text="“%t”"/> +<l:template name="refsect1" text="“%t”"/> +<l:template name="refsect2" text="“%t”"/> +<l:template name="refsect3" text="“%t”"/> +<l:template name="sect1" text="“%t”"/> +<l:template name="sect2" text="“%t”"/> +<l:template name="sect3" text="“%t”"/> +<l:template name="sect4" text="“%t”"/> +<l:template name="sect5" text="“%t”"/> +<l:template name="section" text="“%t”"/> +<l:template name="simplesect" text="“%t”"/> +</l:context> +<l:context name="xref-number"><l:template name="answer" text="答: %n"/> +<l:template name="appendix" text="附錄 %n"/> +<l:template name="bridgehead" text="節 %n"/> +<l:template name="chapter" text="章 %n"/> +<l:template name="equation" text="方程式 %n"/> +<l:template name="example" text="範例 %n"/> +<l:template name="figure" text="圖形 %n"/> +<l:template name="part" text="部 %n"/> +<l:template name="procedure" text="過程 %n"/> +<l:template name="productionset" text="Production %n"/> +<l:template name="qandadiv" text="問:且答: %n"/> +<l:template name="qandaentry" text="問: %n"/> +<l:template name="question" text="問: %n"/> +<l:template name="sect1" text="節 %n"/> +<l:template name="sect2" text="節 %n"/> +<l:template name="sect3" text="節 %n"/> +<l:template name="sect4" text="節 %n"/> +<l:template name="sect5" text="節 %n"/> +<l:template name="section" text="節 %n"/> +<l:template name="table" text="表格 %n"/> +</l:context> +<l:context name="xref-number-and-title"><l:template name="appendix" text="附錄 %n, %t"/> +<l:template name="bridgehead" text="節 %n, “%t”"/> +<l:template name="chapter" text="章 %n, %t"/> +<l:template name="equation" text="方程式 %n, “%t”"/> +<l:template name="example" text="範例 %n, “%t”"/> +<l:template name="figure" text="圖形 %n, “%t”"/> +<l:template name="part" text="部 %n, “%t”"/> +<l:template name="procedure" text="過程 %n, “%t”"/> +<l:template name="productionset" text="Production %n, “%t”"/> +<l:template name="qandadiv" text="問:且答: %n, “%t”"/> +<l:template name="refsect1" text="the section called “%t”"/> +<l:template name="refsect2" text="the section called “%t”"/> +<l:template name="refsect3" text="the section called “%t”"/> +<l:template name="refsection" text="the section called “%t”"/> +<l:template name="sect1" text="節 %n, “%t”"/> +<l:template name="sect2" text="節 %n, “%t”"/> +<l:template name="sect3" text="節 %n, “%t”"/> +<l:template name="sect4" text="節 %n, “%t”"/> +<l:template name="sect5" text="節 %n, “%t”"/> +<l:template name="section" text="節 %n, “%t”"/> +<l:template name="simplesect" text="the section called “%t”"/> +<l:template name="table" text="表格 %n, “%t”"/> +</l:context> +<l:context name="authorgroup"><l:template name="sep" text=", "/> +<l:template name="sep2" text=" 且 "/> +<l:template name="seplast" text=", 且 "/> +</l:context> +<l:context name="glossary"><l:template name="see" text="參見 %t"/> +<l:template name="seealso" text="另參見 %t"/> +</l:context> +<l:context name="msgset"><l:template name="MsgAud" text="讀者: "/> +<l:template name="MsgLevel" text="程度: "/> +<l:template name="MsgOrig" text="出處: "/> +</l:context> +<l:context name="datetime"><l:template name="format" text="m/d/Y" lang="en"/> +</l:context> +<l:context name="termdef"><l:template name="prefix" text="[Definition: " lang="en"/> +<l:template name="suffix" text="]" lang="en"/> +</l:context> +<l:context name="datetime-full"><l:template name="January" text="January" lang="en"/> +<l:template name="February" text="February" lang="en"/> +<l:template name="March" text="March" lang="en"/> +<l:template name="April" text="April" lang="en"/> +<l:template name="May" text="May" lang="en"/> +<l:template name="June" text="June" lang="en"/> +<l:template name="July" text="July" lang="en"/> +<l:template name="August" text="August" lang="en"/> +<l:template name="September" text="September" lang="en"/> +<l:template name="October" text="October" lang="en"/> +<l:template name="November" text="November" lang="en"/> +<l:template name="December" text="December" lang="en"/> +<l:template name="Monday" text="Monday" lang="en"/> +<l:template name="Tuesday" text="Tuesday" lang="en"/> +<l:template name="Wednesday" text="Wednesday" lang="en"/> +<l:template name="Thursday" text="Thursday" lang="en"/> +<l:template name="Friday" text="Friday" lang="en"/> +<l:template name="Saturday" text="Saturday" lang="en"/> +<l:template name="Sunday" text="Sunday" lang="en"/> +</l:context> +<l:context name="datetime-abbrev"><l:template name="Jan" text="Jan" lang="en"/> +<l:template name="Feb" text="Feb" lang="en"/> +<l:template name="Mar" text="Mar" lang="en"/> +<l:template name="Apr" text="Apr" lang="en"/> +<l:template name="May" text="May" lang="en"/> +<l:template name="Jun" text="Jun" lang="en"/> +<l:template name="Jul" text="Jul" lang="en"/> +<l:template name="Aug" text="Aug" lang="en"/> +<l:template name="Sep" text="Sep" lang="en"/> +<l:template name="Oct" text="Oct" lang="en"/> +<l:template name="Nov" text="Nov" lang="en"/> +<l:template name="Dec" text="Dec" lang="en"/> +<l:template name="Mon" text="Mon" lang="en"/> +<l:template name="Tue" text="Tue" lang="en"/> +<l:template name="Wed" text="Wed" lang="en"/> +<l:template name="Thu" text="Thu" lang="en"/> +<l:template name="Fri" text="Fri" lang="en"/> +<l:template name="Sat" text="Sat" lang="en"/> +<l:template name="Sun" text="Sun" lang="en"/> +</l:context> +<l:context name="htmlhelp"><l:template name="langcode" text="0x0404 Chinese (TAIWAN)"/> +</l:context> +<l:context name="index"><l:template name="term-separator" text=", " lang="en"/> +<l:template name="number-separator" text=", " lang="en"/> +<l:template name="range-separator" text="-" lang="en"/> +</l:context> +<l:context name="iso690"><l:template name="lastfirst.sep" text=", " lang="en"/> +<l:template name="alt.person.two.sep" text=" – " lang="en"/> +<l:template name="alt.person.last.sep" text=" – " lang="en"/> +<l:template name="alt.person.more.sep" text=" – " lang="en"/> +<l:template name="primary.editor" text=" (ed.)" lang="en"/> +<l:template name="primary.many" text=", et al." lang="en"/> +<l:template name="primary.sep" text=". " lang="en"/> +<l:template name="submaintitle.sep" text=": " lang="en"/> +<l:template name="title.sep" text=". " lang="en"/> +<l:template name="othertitle.sep" text=", " lang="en"/> +<l:template name="medium1" text=" [" lang="en"/> +<l:template name="medium2" text="]" lang="en"/> +<l:template name="secondary.person.sep" text="; " lang="en"/> +<l:template name="secondary.sep" text=". " lang="en"/> +<l:template name="respons.sep" text=". " lang="en"/> +<l:template name="edition.sep" text=". " lang="en"/> +<l:template name="edition.serial.sep" text=", " lang="en"/> +<l:template name="issuing.range" text="-" lang="en"/> +<l:template name="issuing.div" text=", " lang="en"/> +<l:template name="issuing.sep" text=". " lang="en"/> +<l:template name="partnr.sep" text=". " lang="en"/> +<l:template name="placepubl.sep" text=": " lang="en"/> +<l:template name="publyear.sep" text=", " lang="en"/> +<l:template name="pubinfo.sep" text=". " lang="en"/> +<l:template name="spec.pubinfo.sep" text=", " lang="en"/> +<l:template name="upd.sep" text=", " lang="en"/> +<l:template name="datecit1" text=" [cited " lang="en"/> +<l:template name="datecit2" text="]" lang="en"/> +<l:template name="extent.sep" text=". " lang="en"/> +<l:template name="locs.sep" text=", " lang="en"/> +<l:template name="location.sep" text=". " lang="en"/> +<l:template name="serie.sep" text=". " lang="en"/> +<l:template name="notice.sep" text=". " lang="en"/> +<l:template name="access" text="Available " lang="en"/> +<l:template name="acctoo" text="Also available " lang="en"/> +<l:template name="onwww" text="from World Wide Web" lang="en"/> +<l:template name="oninet" text="from Internet" lang="en"/> +<l:template name="access.end" text=": " lang="en"/> +<l:template name="link1" text="<" lang="en"/> +<l:template name="link2" text=">" lang="en"/> +<l:template name="access.sep" text=". " lang="en"/> +<l:template name="isbn" text="ISBN " lang="en"/> +<l:template name="issn" text="ISSN " lang="en"/> +<l:template name="stdnum.sep" text=". " lang="en"/> +<l:template name="patcountry.sep" text=". " lang="en"/> +<l:template name="pattype.sep" text=", " lang="en"/> +<l:template name="patnum.sep" text=". " lang="en"/> +<l:template name="patdate.sep" text=". " lang="en"/> +</l:context><l:letters lang="en"><l:l i="-1"/> +<l:l i="0">Symbols</l:l> +<l:l i="10">A</l:l> +<l:l i="10">a</l:l> +<l:l i="10">À</l:l> +<l:l i="10">à</l:l> +<l:l i="10">Á</l:l> +<l:l i="10">á</l:l> +<l:l i="10">Â</l:l> +<l:l i="10">â</l:l> +<l:l i="10">Ã</l:l> +<l:l i="10">ã</l:l> +<l:l i="10">Ä</l:l> +<l:l i="10">ä</l:l> +<l:l i="10">Å</l:l> +<l:l i="10">å</l:l> +<l:l i="10">Ā</l:l> +<l:l i="10">ā</l:l> +<l:l i="10">Ă</l:l> +<l:l i="10">ă</l:l> +<l:l i="10">Ą</l:l> +<l:l i="10">ą</l:l> +<l:l i="10">Ǎ</l:l> +<l:l i="10">ǎ</l:l> +<l:l i="10">Ǟ</l:l> +<l:l i="10">ǟ</l:l> +<l:l i="10">Ǡ</l:l> +<l:l i="10">ǡ</l:l> +<l:l i="10">Ǻ</l:l> +<l:l i="10">ǻ</l:l> +<l:l i="10">Ȁ</l:l> +<l:l i="10">ȁ</l:l> +<l:l i="10">Ȃ</l:l> +<l:l i="10">ȃ</l:l> +<l:l i="10">Ȧ</l:l> +<l:l i="10">ȧ</l:l> +<l:l i="10">Ḁ</l:l> +<l:l i="10">ḁ</l:l> +<l:l i="10">ẚ</l:l> +<l:l i="10">Ạ</l:l> +<l:l i="10">ạ</l:l> +<l:l i="10">Ả</l:l> +<l:l i="10">ả</l:l> +<l:l i="10">Ấ</l:l> +<l:l i="10">ấ</l:l> +<l:l i="10">Ầ</l:l> +<l:l i="10">ầ</l:l> +<l:l i="10">Ẩ</l:l> +<l:l i="10">ẩ</l:l> +<l:l i="10">Ẫ</l:l> +<l:l i="10">ẫ</l:l> +<l:l i="10">Ậ</l:l> +<l:l i="10">ậ</l:l> +<l:l i="10">Ắ</l:l> +<l:l i="10">ắ</l:l> +<l:l i="10">Ằ</l:l> +<l:l i="10">ằ</l:l> +<l:l i="10">Ẳ</l:l> +<l:l i="10">ẳ</l:l> +<l:l i="10">Ẵ</l:l> +<l:l i="10">ẵ</l:l> +<l:l i="10">Ặ</l:l> +<l:l i="10">ặ</l:l> +<l:l i="20">B</l:l> +<l:l i="20">b</l:l> +<l:l i="20">ƀ</l:l> +<l:l i="20">Ɓ</l:l> +<l:l i="20">ɓ</l:l> +<l:l i="20">Ƃ</l:l> +<l:l i="20">ƃ</l:l> +<l:l i="20">Ḃ</l:l> +<l:l i="20">ḃ</l:l> +<l:l i="20">Ḅ</l:l> +<l:l i="20">ḅ</l:l> +<l:l i="20">Ḇ</l:l> +<l:l i="20">ḇ</l:l> +<l:l i="30">C</l:l> +<l:l i="30">c</l:l> +<l:l i="30">Ç</l:l> +<l:l i="30">ç</l:l> +<l:l i="30">Ć</l:l> +<l:l i="30">ć</l:l> +<l:l i="30">Ĉ</l:l> +<l:l i="30">ĉ</l:l> +<l:l i="30">Ċ</l:l> +<l:l i="30">ċ</l:l> +<l:l i="30">Č</l:l> +<l:l i="30">č</l:l> +<l:l i="30">Ƈ</l:l> +<l:l i="30">ƈ</l:l> +<l:l i="30">ɕ</l:l> +<l:l i="30">Ḉ</l:l> +<l:l i="30">ḉ</l:l> +<l:l i="40">D</l:l> +<l:l i="40">d</l:l> +<l:l i="40">Ď</l:l> +<l:l i="40">ď</l:l> +<l:l i="40">Đ</l:l> +<l:l i="40">đ</l:l> +<l:l i="40">Ɗ</l:l> +<l:l i="40">ɗ</l:l> +<l:l i="40">Ƌ</l:l> +<l:l i="40">ƌ</l:l> +<l:l i="40">Dž</l:l> +<l:l i="40">Dz</l:l> +<l:l i="40">ȡ</l:l> +<l:l i="40">ɖ</l:l> +<l:l i="40">Ḋ</l:l> +<l:l i="40">ḋ</l:l> +<l:l i="40">Ḍ</l:l> +<l:l i="40">ḍ</l:l> +<l:l i="40">Ḏ</l:l> +<l:l i="40">ḏ</l:l> +<l:l i="40">Ḑ</l:l> +<l:l i="40">ḑ</l:l> +<l:l i="40">Ḓ</l:l> +<l:l i="40">ḓ</l:l> +<l:l i="50">E</l:l> +<l:l i="50">e</l:l> +<l:l i="50">È</l:l> +<l:l i="50">è</l:l> +<l:l i="50">É</l:l> +<l:l i="50">é</l:l> +<l:l i="50">Ê</l:l> +<l:l i="50">ê</l:l> +<l:l i="50">Ë</l:l> +<l:l i="50">ë</l:l> +<l:l i="50">Ē</l:l> +<l:l i="50">ē</l:l> +<l:l i="50">Ĕ</l:l> +<l:l i="50">ĕ</l:l> +<l:l i="50">Ė</l:l> +<l:l i="50">ė</l:l> +<l:l i="50">Ę</l:l> +<l:l i="50">ę</l:l> +<l:l i="50">Ě</l:l> +<l:l i="50">ě</l:l> +<l:l i="50">Ȅ</l:l> +<l:l i="50">ȅ</l:l> +<l:l i="50">Ȇ</l:l> +<l:l i="50">ȇ</l:l> +<l:l i="50">Ȩ</l:l> +<l:l i="50">ȩ</l:l> +<l:l i="50">Ḕ</l:l> +<l:l i="50">ḕ</l:l> +<l:l i="50">Ḗ</l:l> +<l:l i="50">ḗ</l:l> +<l:l i="50">Ḙ</l:l> +<l:l i="50">ḙ</l:l> +<l:l i="50">Ḛ</l:l> +<l:l i="50">ḛ</l:l> +<l:l i="50">Ḝ</l:l> +<l:l i="50">ḝ</l:l> +<l:l i="50">Ẹ</l:l> +<l:l i="50">ẹ</l:l> +<l:l i="50">Ẻ</l:l> +<l:l i="50">ẻ</l:l> +<l:l i="50">Ẽ</l:l> +<l:l i="50">ẽ</l:l> +<l:l i="50">Ế</l:l> +<l:l i="50">ế</l:l> +<l:l i="50">Ề</l:l> +<l:l i="50">ề</l:l> +<l:l i="50">Ể</l:l> +<l:l i="50">ể</l:l> +<l:l i="50">Ễ</l:l> +<l:l i="50">ễ</l:l> +<l:l i="50">Ệ</l:l> +<l:l i="50">ệ</l:l> +<l:l i="60">F</l:l> +<l:l i="60">f</l:l> +<l:l i="60">Ƒ</l:l> +<l:l i="60">ƒ</l:l> +<l:l i="60">Ḟ</l:l> +<l:l i="60">ḟ</l:l> +<l:l i="70">G</l:l> +<l:l i="70">g</l:l> +<l:l i="70">Ĝ</l:l> +<l:l i="70">ĝ</l:l> +<l:l i="70">Ğ</l:l> +<l:l i="70">ğ</l:l> +<l:l i="70">Ġ</l:l> +<l:l i="70">ġ</l:l> +<l:l i="70">Ģ</l:l> +<l:l i="70">ģ</l:l> +<l:l i="70">Ɠ</l:l> +<l:l i="70">ɠ</l:l> +<l:l i="70">Ǥ</l:l> +<l:l i="70">ǥ</l:l> +<l:l i="70">Ǧ</l:l> +<l:l i="70">ǧ</l:l> +<l:l i="70">Ǵ</l:l> +<l:l i="70">ǵ</l:l> +<l:l i="70">Ḡ</l:l> +<l:l i="70">ḡ</l:l> +<l:l i="80">H</l:l> +<l:l i="80">h</l:l> +<l:l i="80">Ĥ</l:l> +<l:l i="80">ĥ</l:l> +<l:l i="80">Ħ</l:l> +<l:l i="80">ħ</l:l> +<l:l i="80">Ȟ</l:l> +<l:l i="80">ȟ</l:l> +<l:l i="80">ɦ</l:l> +<l:l i="80">Ḣ</l:l> +<l:l i="80">ḣ</l:l> +<l:l i="80">Ḥ</l:l> +<l:l i="80">ḥ</l:l> +<l:l i="80">Ḧ</l:l> +<l:l i="80">ḧ</l:l> +<l:l i="80">Ḩ</l:l> +<l:l i="80">ḩ</l:l> +<l:l i="80">Ḫ</l:l> +<l:l i="80">ḫ</l:l> +<l:l i="80">ẖ</l:l> +<l:l i="90">I</l:l> +<l:l i="90">i</l:l> +<l:l i="90">Ì</l:l> +<l:l i="90">ì</l:l> +<l:l i="90">Í</l:l> +<l:l i="90">í</l:l> +<l:l i="90">Î</l:l> +<l:l i="90">î</l:l> +<l:l i="90">Ï</l:l> +<l:l i="90">ï</l:l> +<l:l i="90">Ĩ</l:l> +<l:l i="90">ĩ</l:l> +<l:l i="90">Ī</l:l> +<l:l i="90">ī</l:l> +<l:l i="90">Ĭ</l:l> +<l:l i="90">ĭ</l:l> +<l:l i="90">Į</l:l> +<l:l i="90">į</l:l> +<l:l i="90">İ</l:l> +<l:l i="90">Ɨ</l:l> +<l:l i="90">ɨ</l:l> +<l:l i="90">Ǐ</l:l> +<l:l i="90">ǐ</l:l> +<l:l i="90">Ȉ</l:l> +<l:l i="90">ȉ</l:l> +<l:l i="90">Ȋ</l:l> +<l:l i="90">ȋ</l:l> +<l:l i="90">Ḭ</l:l> +<l:l i="90">ḭ</l:l> +<l:l i="90">Ḯ</l:l> +<l:l i="90">ḯ</l:l> +<l:l i="90">Ỉ</l:l> +<l:l i="90">ỉ</l:l> +<l:l i="90">Ị</l:l> +<l:l i="90">ị</l:l> +<l:l i="100">J</l:l> +<l:l i="100">j</l:l> +<l:l i="100">Ĵ</l:l> +<l:l i="100">ĵ</l:l> +<l:l i="100">ǰ</l:l> +<l:l i="100">ʝ</l:l> +<l:l i="110">K</l:l> +<l:l i="110">k</l:l> +<l:l i="110">Ķ</l:l> +<l:l i="110">ķ</l:l> +<l:l i="110">Ƙ</l:l> +<l:l i="110">ƙ</l:l> +<l:l i="110">Ǩ</l:l> +<l:l i="110">ǩ</l:l> +<l:l i="110">Ḱ</l:l> +<l:l i="110">ḱ</l:l> +<l:l i="110">Ḳ</l:l> +<l:l i="110">ḳ</l:l> +<l:l i="110">Ḵ</l:l> +<l:l i="110">ḵ</l:l> +<l:l i="120">L</l:l> +<l:l i="120">l</l:l> +<l:l i="120">Ĺ</l:l> +<l:l i="120">ĺ</l:l> +<l:l i="120">Ļ</l:l> +<l:l i="120">ļ</l:l> +<l:l i="120">Ľ</l:l> +<l:l i="120">ľ</l:l> +<l:l i="120">Ŀ</l:l> +<l:l i="120">ŀ</l:l> +<l:l i="120">Ł</l:l> +<l:l i="120">ł</l:l> +<l:l i="120">ƚ</l:l> +<l:l i="120">Lj</l:l> +<l:l i="120">ȴ</l:l> +<l:l i="120">ɫ</l:l> +<l:l i="120">ɬ</l:l> +<l:l i="120">ɭ</l:l> +<l:l i="120">Ḷ</l:l> +<l:l i="120">ḷ</l:l> +<l:l i="120">Ḹ</l:l> +<l:l i="120">ḹ</l:l> +<l:l i="120">Ḻ</l:l> +<l:l i="120">ḻ</l:l> +<l:l i="120">Ḽ</l:l> +<l:l i="120">ḽ</l:l> +<l:l i="130">M</l:l> +<l:l i="130">m</l:l> +<l:l i="130">ɱ</l:l> +<l:l i="130">Ḿ</l:l> +<l:l i="130">ḿ</l:l> +<l:l i="130">Ṁ</l:l> +<l:l i="130">ṁ</l:l> +<l:l i="130">Ṃ</l:l> +<l:l i="130">ṃ</l:l> +<l:l i="140">N</l:l> +<l:l i="140">n</l:l> +<l:l i="140">Ñ</l:l> +<l:l i="140">ñ</l:l> +<l:l i="140">Ń</l:l> +<l:l i="140">ń</l:l> +<l:l i="140">Ņ</l:l> +<l:l i="140">ņ</l:l> +<l:l i="140">Ň</l:l> +<l:l i="140">ň</l:l> +<l:l i="140">Ɲ</l:l> +<l:l i="140">ɲ</l:l> +<l:l i="140">ƞ</l:l> +<l:l i="140">Ƞ</l:l> +<l:l i="140">Nj</l:l> +<l:l i="140">Ǹ</l:l> +<l:l i="140">ǹ</l:l> +<l:l i="140">ȵ</l:l> +<l:l i="140">ɳ</l:l> +<l:l i="140">Ṅ</l:l> +<l:l i="140">ṅ</l:l> +<l:l i="140">Ṇ</l:l> +<l:l i="140">ṇ</l:l> +<l:l i="140">Ṉ</l:l> +<l:l i="140">ṉ</l:l> +<l:l i="140">Ṋ</l:l> +<l:l i="140">ṋ</l:l> +<l:l i="150">O</l:l> +<l:l i="150">o</l:l> +<l:l i="150">Ò</l:l> +<l:l i="150">ò</l:l> +<l:l i="150">Ó</l:l> +<l:l i="150">ó</l:l> +<l:l i="150">Ô</l:l> +<l:l i="150">ô</l:l> +<l:l i="150">Õ</l:l> +<l:l i="150">õ</l:l> +<l:l i="150">Ö</l:l> +<l:l i="150">ö</l:l> +<l:l i="150">Ø</l:l> +<l:l i="150">ø</l:l> +<l:l i="150">Ō</l:l> +<l:l i="150">ō</l:l> +<l:l i="150">Ŏ</l:l> +<l:l i="150">ŏ</l:l> +<l:l i="150">Ő</l:l> +<l:l i="150">ő</l:l> +<l:l i="150">Ɵ</l:l> +<l:l i="150">Ơ</l:l> +<l:l i="150">ơ</l:l> +<l:l i="150">Ǒ</l:l> +<l:l i="150">ǒ</l:l> +<l:l i="150">Ǫ</l:l> +<l:l i="150">ǫ</l:l> +<l:l i="150">Ǭ</l:l> +<l:l i="150">ǭ</l:l> +<l:l i="150">Ǿ</l:l> +<l:l i="150">ǿ</l:l> +<l:l i="150">Ȍ</l:l> +<l:l i="150">ȍ</l:l> +<l:l i="150">Ȏ</l:l> +<l:l i="150">ȏ</l:l> +<l:l i="150">Ȫ</l:l> +<l:l i="150">ȫ</l:l> +<l:l i="150">Ȭ</l:l> +<l:l i="150">ȭ</l:l> +<l:l i="150">Ȯ</l:l> +<l:l i="150">ȯ</l:l> +<l:l i="150">Ȱ</l:l> +<l:l i="150">ȱ</l:l> +<l:l i="150">Ṍ</l:l> +<l:l i="150">ṍ</l:l> +<l:l i="150">Ṏ</l:l> +<l:l i="150">ṏ</l:l> +<l:l i="150">Ṑ</l:l> +<l:l i="150">ṑ</l:l> +<l:l i="150">Ṓ</l:l> +<l:l i="150">ṓ</l:l> +<l:l i="150">Ọ</l:l> +<l:l i="150">ọ</l:l> +<l:l i="150">Ỏ</l:l> +<l:l i="150">ỏ</l:l> +<l:l i="150">Ố</l:l> +<l:l i="150">ố</l:l> +<l:l i="150">Ồ</l:l> +<l:l i="150">ồ</l:l> +<l:l i="150">Ổ</l:l> +<l:l i="150">ổ</l:l> +<l:l i="150">Ỗ</l:l> +<l:l i="150">ỗ</l:l> +<l:l i="150">Ộ</l:l> +<l:l i="150">ộ</l:l> +<l:l i="150">Ớ</l:l> +<l:l i="150">ớ</l:l> +<l:l i="150">Ờ</l:l> +<l:l i="150">ờ</l:l> +<l:l i="150">Ở</l:l> +<l:l i="150">ở</l:l> +<l:l i="150">Ỡ</l:l> +<l:l i="150">ỡ</l:l> +<l:l i="150">Ợ</l:l> +<l:l i="150">ợ</l:l> +<l:l i="160">P</l:l> +<l:l i="160">p</l:l> +<l:l i="160">Ƥ</l:l> +<l:l i="160">ƥ</l:l> +<l:l i="160">Ṕ</l:l> +<l:l i="160">ṕ</l:l> +<l:l i="160">Ṗ</l:l> +<l:l i="160">ṗ</l:l> +<l:l i="170">Q</l:l> +<l:l i="170">q</l:l> +<l:l i="170">ʠ</l:l> +<l:l i="180">R</l:l> +<l:l i="180">r</l:l> +<l:l i="180">Ŕ</l:l> +<l:l i="180">ŕ</l:l> +<l:l i="180">Ŗ</l:l> +<l:l i="180">ŗ</l:l> +<l:l i="180">Ř</l:l> +<l:l i="180">ř</l:l> +<l:l i="180">Ȑ</l:l> +<l:l i="180">ȑ</l:l> +<l:l i="180">Ȓ</l:l> +<l:l i="180">ȓ</l:l> +<l:l i="180">ɼ</l:l> +<l:l i="180">ɽ</l:l> +<l:l i="180">ɾ</l:l> +<l:l i="180">Ṙ</l:l> +<l:l i="180">ṙ</l:l> +<l:l i="180">Ṛ</l:l> +<l:l i="180">ṛ</l:l> +<l:l i="180">Ṝ</l:l> +<l:l i="180">ṝ</l:l> +<l:l i="180">Ṟ</l:l> +<l:l i="180">ṟ</l:l> +<l:l i="190">S</l:l> +<l:l i="190">s</l:l> +<l:l i="190">Ś</l:l> +<l:l i="190">ś</l:l> +<l:l i="190">Ŝ</l:l> +<l:l i="190">ŝ</l:l> +<l:l i="190">Ş</l:l> +<l:l i="190">ş</l:l> +<l:l i="190">Š</l:l> +<l:l i="190">š</l:l> +<l:l i="190">Ș</l:l> +<l:l i="190">ș</l:l> +<l:l i="190">ʂ</l:l> +<l:l i="190">Ṡ</l:l> +<l:l i="190">ṡ</l:l> +<l:l i="190">Ṣ</l:l> +<l:l i="190">ṣ</l:l> +<l:l i="190">Ṥ</l:l> +<l:l i="190">ṥ</l:l> +<l:l i="190">Ṧ</l:l> +<l:l i="190">ṧ</l:l> +<l:l i="190">Ṩ</l:l> +<l:l i="190">ṩ</l:l> +<l:l i="200">T</l:l> +<l:l i="200">t</l:l> +<l:l i="200">Ţ</l:l> +<l:l i="200">ţ</l:l> +<l:l i="200">Ť</l:l> +<l:l i="200">ť</l:l> +<l:l i="200">Ŧ</l:l> +<l:l i="200">ŧ</l:l> +<l:l i="200">ƫ</l:l> +<l:l i="200">Ƭ</l:l> +<l:l i="200">ƭ</l:l> +<l:l i="200">Ʈ</l:l> +<l:l i="200">ʈ</l:l> +<l:l i="200">Ț</l:l> +<l:l i="200">ț</l:l> +<l:l i="200">ȶ</l:l> +<l:l i="200">Ṫ</l:l> +<l:l i="200">ṫ</l:l> +<l:l i="200">Ṭ</l:l> +<l:l i="200">ṭ</l:l> +<l:l i="200">Ṯ</l:l> +<l:l i="200">ṯ</l:l> +<l:l i="200">Ṱ</l:l> +<l:l i="200">ṱ</l:l> +<l:l i="200">ẗ</l:l> +<l:l i="210">U</l:l> +<l:l i="210">u</l:l> +<l:l i="210">Ù</l:l> +<l:l i="210">ù</l:l> +<l:l i="210">Ú</l:l> +<l:l i="210">ú</l:l> +<l:l i="210">Û</l:l> +<l:l i="210">û</l:l> +<l:l i="210">Ü</l:l> +<l:l i="210">ü</l:l> +<l:l i="210">Ũ</l:l> +<l:l i="210">ũ</l:l> +<l:l i="210">Ū</l:l> +<l:l i="210">ū</l:l> +<l:l i="210">Ŭ</l:l> +<l:l i="210">ŭ</l:l> +<l:l i="210">Ů</l:l> +<l:l i="210">ů</l:l> +<l:l i="210">Ű</l:l> +<l:l i="210">ű</l:l> +<l:l i="210">Ų</l:l> +<l:l i="210">ų</l:l> +<l:l i="210">Ư</l:l> +<l:l i="210">ư</l:l> +<l:l i="210">Ǔ</l:l> +<l:l i="210">ǔ</l:l> +<l:l i="210">Ǖ</l:l> +<l:l i="210">ǖ</l:l> +<l:l i="210">Ǘ</l:l> +<l:l i="210">ǘ</l:l> +<l:l i="210">Ǚ</l:l> +<l:l i="210">ǚ</l:l> +<l:l i="210">Ǜ</l:l> +<l:l i="210">ǜ</l:l> +<l:l i="210">Ȕ</l:l> +<l:l i="210">ȕ</l:l> +<l:l i="210">Ȗ</l:l> +<l:l i="210">ȗ</l:l> +<l:l i="210">Ṳ</l:l> +<l:l i="210">ṳ</l:l> +<l:l i="210">Ṵ</l:l> +<l:l i="210">ṵ</l:l> +<l:l i="210">Ṷ</l:l> +<l:l i="210">ṷ</l:l> +<l:l i="210">Ṹ</l:l> +<l:l i="210">ṹ</l:l> +<l:l i="210">Ṻ</l:l> +<l:l i="210">ṻ</l:l> +<l:l i="210">Ụ</l:l> +<l:l i="210">ụ</l:l> +<l:l i="210">Ủ</l:l> +<l:l i="210">ủ</l:l> +<l:l i="210">Ứ</l:l> +<l:l i="210">ứ</l:l> +<l:l i="210">Ừ</l:l> +<l:l i="210">ừ</l:l> +<l:l i="210">Ử</l:l> +<l:l i="210">ử</l:l> +<l:l i="210">Ữ</l:l> +<l:l i="210">ữ</l:l> +<l:l i="210">Ự</l:l> +<l:l i="210">ự</l:l> +<l:l i="220">V</l:l> +<l:l i="220">v</l:l> +<l:l i="220">Ʋ</l:l> +<l:l i="220">ʋ</l:l> +<l:l i="220">Ṽ</l:l> +<l:l i="220">ṽ</l:l> +<l:l i="220">Ṿ</l:l> +<l:l i="220">ṿ</l:l> +<l:l i="230">W</l:l> +<l:l i="230">w</l:l> +<l:l i="230">Ŵ</l:l> +<l:l i="230">ŵ</l:l> +<l:l i="230">Ẁ</l:l> +<l:l i="230">ẁ</l:l> +<l:l i="230">Ẃ</l:l> +<l:l i="230">ẃ</l:l> +<l:l i="230">Ẅ</l:l> +<l:l i="230">ẅ</l:l> +<l:l i="230">Ẇ</l:l> +<l:l i="230">ẇ</l:l> +<l:l i="230">Ẉ</l:l> +<l:l i="230">ẉ</l:l> +<l:l i="230">ẘ</l:l> +<l:l i="240">X</l:l> +<l:l i="240">x</l:l> +<l:l i="240">Ẋ</l:l> +<l:l i="240">ẋ</l:l> +<l:l i="240">Ẍ</l:l> +<l:l i="240">ẍ</l:l> +<l:l i="250">Y</l:l> +<l:l i="250">y</l:l> +<l:l i="250">Ý</l:l> +<l:l i="250">ý</l:l> +<l:l i="250">ÿ</l:l> +<l:l i="250">Ÿ</l:l> +<l:l i="250">Ŷ</l:l> +<l:l i="250">ŷ</l:l> +<l:l i="250">Ƴ</l:l> +<l:l i="250">ƴ</l:l> +<l:l i="250">Ȳ</l:l> +<l:l i="250">ȳ</l:l> +<l:l i="250">Ẏ</l:l> +<l:l i="250">ẏ</l:l> +<l:l i="250">ẙ</l:l> +<l:l i="250">Ỳ</l:l> +<l:l i="250">ỳ</l:l> +<l:l i="250">Ỵ</l:l> +<l:l i="250">ỵ</l:l> +<l:l i="250">Ỷ</l:l> +<l:l i="250">ỷ</l:l> +<l:l i="250">Ỹ</l:l> +<l:l i="250">ỹ</l:l> +<l:l i="260">Z</l:l> +<l:l i="260">z</l:l> +<l:l i="260">Ź</l:l> +<l:l i="260">ź</l:l> +<l:l i="260">Ż</l:l> +<l:l i="260">ż</l:l> +<l:l i="260">Ž</l:l> +<l:l i="260">ž</l:l> +<l:l i="260">Ƶ</l:l> +<l:l i="260">ƶ</l:l> +<l:l i="260">Ȥ</l:l> +<l:l i="260">ȥ</l:l> +<l:l i="260">ʐ</l:l> +<l:l i="260">ʑ</l:l> +<l:l i="260">Ẑ</l:l> +<l:l i="260">ẑ</l:l> +<l:l i="260">Ẓ</l:l> +<l:l i="260">ẓ</l:l> +<l:l i="260">Ẕ</l:l> +<l:l i="260">ẕ</l:l> +</l:letters> +</l:l10n> |