metanorma-iso 1.7.4 → 1.8.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/rake.yml +3 -13
- data/.hound.yml +3 -1
- data/.rubocop.yml +3 -7
- data/lib/asciidoctor/iso/base.rb +14 -11
- data/lib/asciidoctor/iso/biblio.rng +1 -0
- data/lib/asciidoctor/iso/cleanup.rb +40 -24
- data/lib/asciidoctor/iso/front.rb +28 -16
- data/lib/asciidoctor/iso/front_id.rb +66 -50
- data/lib/asciidoctor/iso/isodoc.rng +321 -4
- data/lib/asciidoctor/iso/isostandard-amd.rng +3 -0
- data/lib/asciidoctor/iso/isostandard.rng +12 -0
- data/lib/asciidoctor/iso/section.rb +2 -1
- data/lib/asciidoctor/iso/validate.rb +22 -110
- data/lib/asciidoctor/iso/validate_image.rb +97 -0
- data/lib/asciidoctor/iso/validate_requirements.rb +26 -20
- data/lib/asciidoctor/iso/validate_section.rb +55 -29
- data/lib/asciidoctor/iso/validate_style.rb +36 -24
- data/lib/asciidoctor/iso/validate_title.rb +2 -4
- data/lib/isodoc/iso/base_convert.rb +8 -2
- data/lib/isodoc/iso/html/style-human.css +7 -0
- data/lib/isodoc/iso/html/style-iso.css +7 -0
- data/lib/isodoc/iso/html_convert.rb +0 -1
- data/lib/isodoc/iso/iso.amendment.xsl +680 -198
- data/lib/isodoc/iso/iso.international-standard.xsl +680 -198
- data/lib/isodoc/iso/metadata.rb +1 -0
- data/lib/isodoc/iso/presentation_xml_convert.rb +44 -33
- data/lib/isodoc/iso/sts_convert.rb +10 -13
- data/lib/isodoc/iso/word_convert.rb +0 -1
- data/lib/isodoc/iso/xref.rb +52 -34
- data/lib/metanorma/iso/processor.rb +1 -0
- data/lib/metanorma/iso/version.rb +1 -1
- data/metanorma-iso.gemspec +7 -7
- data/spec/asciidoctor/base_spec.rb +426 -305
- data/spec/asciidoctor/blocks_spec.rb +96 -34
- data/spec/asciidoctor/cleanup_spec.rb +383 -25
- data/spec/asciidoctor/section_spec.rb +0 -14
- data/spec/asciidoctor/validate_spec.rb +218 -83
- data/spec/isodoc/postproc_spec.rb +481 -438
- data/spec/spec_helper.rb +16 -15
- metadata +46 -46
- data/lib/isodoc/iso/html/scripts.html +0 -178
| @@ -54,14 +54,12 @@ module Asciidoctor | |
| 54 54 | 
             
                    doctypes = /International\sStandard | Technical\sSpecification |
         | 
| 55 55 | 
             
                    Publicly\sAvailable\sSpecification | Technical\sReport | Guide /xi
         | 
| 56 56 | 
             
                    title_main_en = title_lang_part(root, "main", "en")
         | 
| 57 | 
            -
                     | 
| 57 | 
            +
                    !title_main_en.nil? && doctypes.match(title_main_en.text) and
         | 
| 58 58 | 
             
                      @log.add("Style", title_main_en, "Main Title may name document type")
         | 
| 59 | 
            -
                    end
         | 
| 60 59 | 
             
                    title_intro_en = title_lang_part(root, "intro", "en")
         | 
| 61 | 
            -
                     | 
| 60 | 
            +
                    !title_intro_en.nil? && doctypes.match(title_intro_en.text) and
         | 
| 62 61 | 
             
                      @log.add("Style", title_intro_en,
         | 
| 63 62 | 
             
                               "Title Intro may name document type")
         | 
| 64 | 
            -
                    end
         | 
| 65 63 | 
             
                  end
         | 
| 66 64 |  | 
| 67 65 | 
             
                  # ISO/IEC DIR 2, 22.2
         | 
| @@ -15,6 +15,7 @@ module IsoDoc | |
| 15 15 |  | 
| 16 16 | 
             
                  def implicit_reference(b)
         | 
| 17 17 | 
             
                    return true if b&.at(ns("./docidentifier"))&.text == "IEV"
         | 
| 18 | 
            +
             | 
| 18 19 | 
             
                    super
         | 
| 19 20 | 
             
                  end
         | 
| 20 21 |  | 
| @@ -27,8 +28,9 @@ module IsoDoc | |
| 27 28 | 
             
                    end
         | 
| 28 29 | 
             
                  end
         | 
| 29 30 |  | 
| 30 | 
            -
                  def example_span_label( | 
| 31 | 
            +
                  def example_span_label(_node, div, name)
         | 
| 31 32 | 
             
                    return if name.nil?
         | 
| 33 | 
            +
             | 
| 32 34 | 
             
                    div.span **{ class: "example_label" } do |p|
         | 
| 33 35 | 
             
                      name.children.each { |n| parse(n, div) }
         | 
| 34 36 | 
             
                    end
         | 
| @@ -56,6 +58,7 @@ module IsoDoc | |
| 56 58 | 
             
                    node.elements.each do |e|
         | 
| 57 59 | 
             
                      next if e.name == "name"
         | 
| 58 60 | 
             
                      return true if e.name == "p"
         | 
| 61 | 
            +
             | 
| 59 62 | 
             
                      return false
         | 
| 60 63 | 
             
                    end
         | 
| 61 64 | 
             
                    false
         | 
| @@ -74,6 +77,7 @@ module IsoDoc | |
| 74 77 | 
             
                  def insertall_after_here(node, insert, name)
         | 
| 75 78 | 
             
                    node.children.each do |n|
         | 
| 76 79 | 
             
                      next unless n.name == name
         | 
| 80 | 
            +
             | 
| 77 81 | 
             
                      insert.next = n.remove
         | 
| 78 82 | 
             
                      insert = n
         | 
| 79 83 | 
             
                    end
         | 
| @@ -83,6 +87,7 @@ module IsoDoc | |
| 83 87 | 
             
                  def termexamples_before_termnotes(node)
         | 
| 84 88 | 
             
                    return unless node.at(ns("./termnote")) && node.at(ns("./termexample"))
         | 
| 85 89 | 
             
                    return unless insert = node.at(ns("./definition"))
         | 
| 90 | 
            +
             | 
| 86 91 | 
             
                    insert = insertall_after_here(node, insert, "termexample")
         | 
| 87 92 | 
             
                    insert = insertall_after_here(node, insert, "termnote")
         | 
| 88 93 | 
             
                  end
         | 
| @@ -110,6 +115,7 @@ module IsoDoc | |
| 110 115 | 
             
                    return super unless (dl&.xpath(ns("./dt"))&.size == 1 && 
         | 
| 111 116 | 
             
                                         dl&.at(ns("./dd"))&.elements&.size == 1 &&
         | 
| 112 117 | 
             
                                         dl&.at(ns("./dd/p")))
         | 
| 118 | 
            +
             | 
| 113 119 | 
             
                    out.span **{ class: "zzMoveToFollowing" } do |s|
         | 
| 114 120 | 
             
                      s << "#{@i18n.where} "
         | 
| 115 121 | 
             
                      dl.at(ns("./dt")).children.each { |n| parse(n, s) }
         | 
| @@ -149,7 +155,7 @@ module IsoDoc | |
| 149 155 |  | 
| 150 156 | 
             
                  def figure_name_parse(node, div, name)
         | 
| 151 157 | 
             
                    div.p **{ class: "FigureTitle", style: "text-align:center;" } do |p|
         | 
| 152 | 
            -
                      name | 
| 158 | 
            +
                      name&.children&.each { |n| parse(n, div) }
         | 
| 153 159 | 
             
                    end
         | 
| 154 160 | 
             
                  end
         | 
| 155 161 |  | 
| @@ -115,6 +115,13 @@ a.FootnoteRef + a.FootnoteRef:before { | |
| 115 115 | 
             
              content: ", ";
         | 
| 116 116 | 
             
              vertical-align: super; }
         | 
| 117 117 |  | 
| 118 | 
            +
            .addition {
         | 
| 119 | 
            +
              color: blue; }
         | 
| 120 | 
            +
             | 
| 121 | 
            +
            .deletion {
         | 
| 122 | 
            +
              color: red;
         | 
| 123 | 
            +
              text-decoration: line-through; }
         | 
| 124 | 
            +
             | 
| 118 125 | 
             
            #standard-band {
         | 
| 119 126 | 
             
              background-color: #0AC442; }
         | 
| 120 127 |  | 
| @@ -115,6 +115,13 @@ a.FootnoteRef + a.FootnoteRef:before { | |
| 115 115 | 
             
              content: ", ";
         | 
| 116 116 | 
             
              vertical-align: super; }
         | 
| 117 117 |  | 
| 118 | 
            +
            .addition {
         | 
| 119 | 
            +
              color: blue; }
         | 
| 120 | 
            +
             | 
| 121 | 
            +
            .deletion {
         | 
| 122 | 
            +
              color: red;
         | 
| 123 | 
            +
              text-decoration: line-through; }
         | 
| 124 | 
            +
             | 
| 118 125 | 
             
            #standard-band {
         | 
| 119 126 | 
             
              background-color: #0AC442; }
         | 
| 120 127 |  | 
| @@ -1,4 +1,4 @@ | |
| 1 | 
            -
            <?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:mathml="http://www.w3.org/1998/Math/MathML" xmlns:xalan="http://xml.apache.org/xalan" xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf" xmlns:java="http://xml.apache.org/xalan/java" exclude-result-prefixes="java" version="1.0">
         | 
| 1 | 
            +
            <?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:mathml="http://www.w3.org/1998/Math/MathML" xmlns:xalan="http://xml.apache.org/xalan" xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:java="http://xml.apache.org/xalan/java" exclude-result-prefixes="java" version="1.0">
         | 
| 2 2 |  | 
| 3 3 | 
             
            	<xsl:output method="xml" encoding="UTF-8" indent="no"/>
         | 
| 4 4 |  | 
| @@ -948,22 +948,24 @@ | |
| 948 948 | 
             
            																																				/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:workgroup/@type, ' ',
         | 
| 949 949 | 
             
            																																				/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:workgroup/@number)"/>
         | 
| 950 950 | 
             
            								 -->
         | 
| 951 | 
            -
             | 
| 952 | 
            -
             | 
| 953 | 
            -
            									 | 
| 954 | 
            -
            									< | 
| 955 | 
            -
            										<xsl:text | 
| 956 | 
            -
             | 
| 957 | 
            -
             | 
| 958 | 
            -
            										 | 
| 959 | 
            -
            										<xsl: | 
| 960 | 
            -
             | 
| 961 | 
            -
             | 
| 962 | 
            -
            										 | 
| 963 | 
            -
            										<xsl: | 
| 964 | 
            -
             | 
| 965 | 
            -
             | 
| 966 | 
            -
             | 
| 951 | 
            +
            								 
         | 
| 952 | 
            +
            								 <xsl:if test="/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:technical-committee[normalize-space(@number) != ''] or                   /iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:subcommittee[normalize-space(@number) != ''] or                  /iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:workgroup[normalize-space(@number) != '']">
         | 
| 953 | 
            +
            									<!-- ISO/TC 34/SC 4/WG 3 -->
         | 
| 954 | 
            +
            									<fo:block margin-bottom="12pt">
         | 
| 955 | 
            +
            										<xsl:text>ISO</xsl:text>
         | 
| 956 | 
            +
            										<xsl:for-each select="/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:technical-committee[normalize-space(@number) != '']">
         | 
| 957 | 
            +
            											<xsl:text>/TC </xsl:text><xsl:value-of select="@number"/>
         | 
| 958 | 
            +
            										</xsl:for-each>
         | 
| 959 | 
            +
            										<xsl:for-each select="/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:subcommittee[normalize-space(@number) != '']">
         | 
| 960 | 
            +
            											<xsl:text>/SC </xsl:text>
         | 
| 961 | 
            +
            											<xsl:value-of select="@number"/>
         | 
| 962 | 
            +
            										</xsl:for-each>
         | 
| 963 | 
            +
            										<xsl:for-each select="/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:workgroup[normalize-space(@number) != '']">
         | 
| 964 | 
            +
            											<xsl:text>/WG </xsl:text>
         | 
| 965 | 
            +
            											<xsl:value-of select="@number"/>
         | 
| 966 | 
            +
            										</xsl:for-each>
         | 
| 967 | 
            +
            									</fo:block>
         | 
| 968 | 
            +
            								</xsl:if>
         | 
| 967 969 | 
             
            								<!-- Secretariat: AFNOR  -->
         | 
| 968 970 |  | 
| 969 971 | 
             
            								<fo:block margin-bottom="100pt">
         | 
| @@ -1025,7 +1027,15 @@ | |
| 1025 1027 | 
             
            							<fo:block font-size="11pt" margin-bottom="8pt"><xsl:value-of select="$linebreak"/></fo:block>
         | 
| 1026 1028 | 
             
            							<fo:block-container font-size="40pt" text-align="center" margin-bottom="12pt" border="0.5pt solid black">
         | 
| 1027 1029 | 
             
            								<xsl:variable name="stage-title" select="substring-after(substring-before($docidentifierISO, ' '), '/')"/>
         | 
| 1028 | 
            -
            								< | 
| 1030 | 
            +
            								<xsl:choose>
         | 
| 1031 | 
            +
            									<xsl:when test="normalize-space($stage-title) != ''">
         | 
| 1032 | 
            +
            										<fo:block padding-top="2mm"><xsl:value-of select="$stage-title"/><xsl:text> stage</xsl:text></fo:block>
         | 
| 1033 | 
            +
            									</xsl:when>
         | 
| 1034 | 
            +
            									<xsl:otherwise>
         | 
| 1035 | 
            +
            										<xsl:attribute name="border">0pt solid white</xsl:attribute>
         | 
| 1036 | 
            +
            										<fo:block> </fo:block>
         | 
| 1037 | 
            +
            									</xsl:otherwise>
         | 
| 1038 | 
            +
            								</xsl:choose>
         | 
| 1029 1039 | 
             
            							</fo:block-container>
         | 
| 1030 1040 | 
             
            							<fo:block><xsl:value-of select="$linebreak"/></fo:block>
         | 
| 1031 1041 |  | 
| @@ -1415,7 +1425,7 @@ | |
| 1415 1425 | 
             
            		</xsl:if>
         | 
| 1416 1426 | 
             
            	</xsl:template>
         | 
| 1417 1427 |  | 
| 1418 | 
            -
             | 
| 1428 | 
            +
            	<xsl:template match="iso:p | iso:termsource | iso:termnote" mode="contents"/>
         | 
| 1419 1429 |  | 
| 1420 1430 | 
             
            	<xsl:template name="getListItemFormat">
         | 
| 1421 1431 | 
             
            		<xsl:choose>
         | 
| @@ -1742,61 +1752,7 @@ | |
| 1742 1752 | 
             
            		<xsl:apply-templates/>
         | 
| 1743 1753 | 
             
            	</xsl:template>
         | 
| 1744 1754 |  | 
| 1745 | 
            -
             | 
| 1746 | 
            -
            	
         | 
| 1747 | 
            -
            	<xsl:template match="iso:bibitem">
         | 
| 1748 | 
            -
            		<fo:block id="{@id}" margin-bottom="6pt"> <!-- 12 pt -->
         | 
| 1749 | 
            -
            			<xsl:variable name="docidentifier">
         | 
| 1750 | 
            -
            				<xsl:if test="iso:docidentifier">
         | 
| 1751 | 
            -
            					<xsl:choose>
         | 
| 1752 | 
            -
            						<xsl:when test="iso:docidentifier/@type = 'metanorma'"/>
         | 
| 1753 | 
            -
            						<xsl:otherwise><xsl:value-of select="iso:docidentifier"/></xsl:otherwise>
         | 
| 1754 | 
            -
            					</xsl:choose>
         | 
| 1755 | 
            -
            				</xsl:if>
         | 
| 1756 | 
            -
            			</xsl:variable>
         | 
| 1757 | 
            -
            			<xsl:value-of select="$docidentifier"/>
         | 
| 1758 | 
            -
            			<xsl:apply-templates select="iso:note"/>			
         | 
| 1759 | 
            -
            			<xsl:if test="normalize-space($docidentifier) != ''">, </xsl:if>
         | 
| 1760 | 
            -
            			<fo:inline font-style="italic">
         | 
| 1761 | 
            -
            				<xsl:choose>
         | 
| 1762 | 
            -
            					<xsl:when test="iso:title[@type = 'main' and @language = $lang]">
         | 
| 1763 | 
            -
            						<xsl:value-of select="iso:title[@type = 'main' and @language = $lang]"/>
         | 
| 1764 | 
            -
            					</xsl:when>
         | 
| 1765 | 
            -
            					<xsl:when test="iso:title[@type = 'main' and @language = 'en']">
         | 
| 1766 | 
            -
            						<xsl:value-of select="iso:title[@type = 'main' and @language = 'en']"/>
         | 
| 1767 | 
            -
            					</xsl:when>
         | 
| 1768 | 
            -
            					<xsl:otherwise>
         | 
| 1769 | 
            -
            						<xsl:value-of select="iso:title"/>
         | 
| 1770 | 
            -
            					</xsl:otherwise>
         | 
| 1771 | 
            -
            				</xsl:choose>
         | 
| 1772 | 
            -
            			</fo:inline>
         | 
| 1773 | 
            -
            		</fo:block>
         | 
| 1774 | 
            -
            	</xsl:template>
         | 
| 1775 | 
            -
            	
         | 
| 1776 | 
            -
            	
         | 
| 1777 | 
            -
            	<xsl:template match="iso:bibitem/iso:note" priority="2">
         | 
| 1778 | 
            -
            		<fo:footnote>
         | 
| 1779 | 
            -
            			<xsl:variable name="number">
         | 
| 1780 | 
            -
            				<xsl:number level="any" count="iso:bibitem/iso:note"/>
         | 
| 1781 | 
            -
            			</xsl:variable>
         | 
| 1782 | 
            -
            			<fo:inline font-size="8pt" keep-with-previous.within-line="always" baseline-shift="30%"> <!--85% vertical-align="super"-->
         | 
| 1783 | 
            -
            				<fo:basic-link internal-destination="{generate-id()}" fox:alt-text="footnote {$number}">
         | 
| 1784 | 
            -
            					<xsl:value-of select="$number"/><xsl:text>)</xsl:text>
         | 
| 1785 | 
            -
            				</fo:basic-link>
         | 
| 1786 | 
            -
            			</fo:inline>
         | 
| 1787 | 
            -
            			<fo:footnote-body>
         | 
| 1788 | 
            -
            				<fo:block font-size="10pt" margin-bottom="4pt" start-indent="0pt">
         | 
| 1789 | 
            -
            					<fo:inline id="{generate-id()}" keep-with-next.within-line="always" alignment-baseline="hanging" padding-right="3mm"><!-- font-size="60%"  -->
         | 
| 1790 | 
            -
            						<xsl:value-of select="$number"/><xsl:text>)</xsl:text>
         | 
| 1791 | 
            -
            					</fo:inline>
         | 
| 1792 | 
            -
            					<xsl:apply-templates/>
         | 
| 1793 | 
            -
            				</fo:block>
         | 
| 1794 | 
            -
            			</fo:footnote-body>
         | 
| 1795 | 
            -
            		</fo:footnote>
         | 
| 1796 | 
            -
            	</xsl:template>
         | 
| 1797 | 
            -
            	
         | 
| 1798 | 
            -
            	
         | 
| 1799 | 
            -
            	
         | 
| 1755 | 
            +
            		
         | 
| 1800 1756 | 
             
            	<xsl:template match="iso:ul | iso:ol" mode="ul_ol">
         | 
| 1801 1757 | 
             
            		<fo:list-block provisional-distance-between-starts="7mm" margin-top="8pt"> <!-- margin-bottom="8pt" -->
         | 
| 1802 1758 | 
             
            			<xsl:apply-templates/>
         | 
| @@ -1806,7 +1762,7 @@ | |
| 1806 1762 | 
             
            		</xsl:for-each>
         | 
| 1807 1763 | 
             
            	</xsl:template>
         | 
| 1808 1764 |  | 
| 1809 | 
            -
            	<xsl:template match="iso:ul | 
| 1765 | 
            +
            	<xsl:template match="iso:ul/iso:note |  iso:ol/iso:note | iso:ul/iso:li/iso:note |  iso:ol/iso:li/iso:note" priority="2"/>
         | 
| 1810 1766 |  | 
| 1811 1767 | 
             
            	<xsl:template match="iso:li">
         | 
| 1812 1768 | 
             
            		<fo:list-item id="{@id}">
         | 
| @@ -1818,7 +1774,10 @@ | |
| 1818 1774 | 
             
            			<fo:list-item-body start-indent="body-start()">
         | 
| 1819 1775 | 
             
            				<fo:block>
         | 
| 1820 1776 | 
             
            					<xsl:apply-templates/>
         | 
| 1821 | 
            -
            					<xsl:apply-templates select=".//iso:note" mode="process"/>
         | 
| 1777 | 
            +
            					<!-- <xsl:apply-templates select=".//iso:note" mode="process"/> -->
         | 
| 1778 | 
            +
            					<xsl:for-each select="./iso:note">
         | 
| 1779 | 
            +
            						<xsl:call-template name="note"/>
         | 
| 1780 | 
            +
            					</xsl:for-each>
         | 
| 1822 1781 | 
             
            				</fo:block>
         | 
| 1823 1782 | 
             
            			</fo:list-item-body>
         | 
| 1824 1783 | 
             
            		</fo:list-item>
         | 
| @@ -1828,6 +1787,10 @@ | |
| 1828 1787 | 
             
            		<xsl:call-template name="note"/>
         | 
| 1829 1788 | 
             
            	</xsl:template>
         | 
| 1830 1789 |  | 
| 1790 | 
            +
            	<xsl:template match="*" mode="process">
         | 
| 1791 | 
            +
            		<xsl:apply-templates select="."/>
         | 
| 1792 | 
            +
            	</xsl:template>
         | 
| 1793 | 
            +
            	
         | 
| 1831 1794 | 
             
            	<xsl:template match="iso:preferred">		
         | 
| 1832 1795 | 
             
            		<fo:block line-height="1.1">
         | 
| 1833 1796 | 
             
            			<fo:block font-weight="bold" keep-with-next="always">
         | 
| @@ -1855,6 +1818,34 @@ | |
| 1855 1818 | 
             
            	</xsl:template>
         | 
| 1856 1819 |  | 
| 1857 1820 |  | 
| 1821 | 
            +
            	<xsl:template match="iso:bibitem">
         | 
| 1822 | 
            +
            		<fo:block id="{@id}" margin-bottom="6pt">
         | 
| 1823 | 
            +
            			<xsl:call-template name="processBibitem"/>
         | 
| 1824 | 
            +
            		</fo:block>
         | 
| 1825 | 
            +
            	</xsl:template>
         | 
| 1826 | 
            +
            	
         | 
| 1827 | 
            +
            	
         | 
| 1828 | 
            +
            	<xsl:template match="iso:bibitem/iso:note" priority="2">
         | 
| 1829 | 
            +
            		<fo:footnote>
         | 
| 1830 | 
            +
            			<xsl:variable name="number">
         | 
| 1831 | 
            +
            				<xsl:number level="any" count="iso:bibitem/iso:note"/>
         | 
| 1832 | 
            +
            			</xsl:variable>
         | 
| 1833 | 
            +
            			<fo:inline font-size="8pt" keep-with-previous.within-line="always" baseline-shift="30%"> <!--85% vertical-align="super"-->
         | 
| 1834 | 
            +
            				<fo:basic-link internal-destination="{generate-id()}" fox:alt-text="footnote {$number}">
         | 
| 1835 | 
            +
            					<xsl:value-of select="$number"/><xsl:text>)</xsl:text>
         | 
| 1836 | 
            +
            				</fo:basic-link>
         | 
| 1837 | 
            +
            			</fo:inline>
         | 
| 1838 | 
            +
            			<fo:footnote-body>
         | 
| 1839 | 
            +
            				<fo:block font-size="10pt" margin-bottom="4pt" start-indent="0pt">
         | 
| 1840 | 
            +
            					<fo:inline id="{generate-id()}" keep-with-next.within-line="always" alignment-baseline="hanging" padding-right="3mm"><!-- font-size="60%"  -->
         | 
| 1841 | 
            +
            						<xsl:value-of select="$number"/><xsl:text>)</xsl:text>
         | 
| 1842 | 
            +
            					</fo:inline>
         | 
| 1843 | 
            +
            					<xsl:apply-templates/>
         | 
| 1844 | 
            +
            				</fo:block>
         | 
| 1845 | 
            +
            			</fo:footnote-body>
         | 
| 1846 | 
            +
            		</fo:footnote>
         | 
| 1847 | 
            +
            	</xsl:template>
         | 
| 1848 | 
            +
             | 
| 1858 1849 | 
             
            	<!-- Example: [1] ISO 9:1995, Information and documentation – Transliteration of Cyrillic characters into Latin characters – Slavic and non-Slavic languages -->
         | 
| 1859 1850 | 
             
            	<!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem"> -->
         | 
| 1860 1851 | 
             
            	<xsl:template match="iso:references[not(@normative='true')]/iso:bibitem">
         | 
| @@ -1869,60 +1860,24 @@ | |
| 1869 1860 | 
             
            				</fo:list-item-label>
         | 
| 1870 1861 | 
             
            				<fo:list-item-body start-indent="body-start()">
         | 
| 1871 1862 | 
             
            					<fo:block>
         | 
| 1872 | 
            -
            						<xsl: | 
| 1873 | 
            -
            							<xsl:if test="iso:docidentifier">
         | 
| 1874 | 
            -
            								<xsl:choose>
         | 
| 1875 | 
            -
            									<xsl:when test="iso:docidentifier/@type = 'metanorma'"/>
         | 
| 1876 | 
            -
            									<xsl:otherwise><xsl:value-of select="iso:docidentifier"/></xsl:otherwise>
         | 
| 1877 | 
            -
            								</xsl:choose>
         | 
| 1878 | 
            -
            							</xsl:if>
         | 
| 1879 | 
            -
            						</xsl:variable>
         | 
| 1880 | 
            -
            						<xsl:value-of select="$docidentifier"/>
         | 
| 1881 | 
            -
            						<xsl:apply-templates select="iso:note"/>
         | 
| 1882 | 
            -
            						<xsl:if test="normalize-space($docidentifier) != ''">, </xsl:if>
         | 
| 1883 | 
            -
            						<xsl:choose>
         | 
| 1884 | 
            -
            							<xsl:when test="iso:title[@type = 'main' and @language = $lang]">
         | 
| 1885 | 
            -
            								<xsl:apply-templates select="iso:title[@type = 'main' and @language = $lang]"/>
         | 
| 1886 | 
            -
            							</xsl:when>
         | 
| 1887 | 
            -
            							<xsl:when test="iso:title[@type = 'main' and @language = 'en']">
         | 
| 1888 | 
            -
            								<xsl:apply-templates select="iso:title[@type = 'main' and @language = 'en']"/>
         | 
| 1889 | 
            -
            							</xsl:when>
         | 
| 1890 | 
            -
            							<xsl:otherwise>
         | 
| 1891 | 
            -
            								<xsl:apply-templates select="iso:title"/>
         | 
| 1892 | 
            -
            							</xsl:otherwise>
         | 
| 1893 | 
            -
            						</xsl:choose>
         | 
| 1894 | 
            -
            						<xsl:apply-templates select="iso:formattedref"/>
         | 
| 1863 | 
            +
            						<xsl:call-template name="processBibitem"/>
         | 
| 1895 1864 | 
             
            					</fo:block>
         | 
| 1896 1865 | 
             
            				</fo:list-item-body>
         | 
| 1897 1866 | 
             
            			</fo:list-item>
         | 
| 1898 1867 | 
             
            		</fo:list-block>
         | 
| 1899 1868 | 
             
            	</xsl:template>
         | 
| 1900 1869 |  | 
| 1901 | 
            -
            	<!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem" mode="contents"/> -->
         | 
| 1902 | 
            -
            	<xsl:template match="iso:references | 
| 1870 | 
            +
            	<!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem" mode="contents"/> [not(@normative='true')] -->
         | 
| 1871 | 
            +
            	<xsl:template match="iso:references/iso:bibitem" mode="contents"/>
         | 
| 1903 1872 |  | 
| 1904 | 
            -
            	<!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem/iso:title"> -->
         | 
| 1905 | 
            -
            	<xsl:template match="iso: | 
| 1873 | 
            +
            	<!-- <xsl:template match="iso:references[@id = '_bibliography']/iso:bibitem/iso:title"> iso:references[not(@normative='true')]/ -->
         | 
| 1874 | 
            +
            	<xsl:template match="iso:bibitem/iso:title">
         | 
| 1906 1875 | 
             
            		<fo:inline font-style="italic">
         | 
| 1907 1876 | 
             
            			<xsl:apply-templates/>
         | 
| 1908 1877 | 
             
            		</fo:inline>
         | 
| 1909 1878 | 
             
            	</xsl:template>
         | 
| 1910 1879 |  | 
| 1911 1880 |  | 
| 1912 | 
            -
            	<xsl:template match="mathml:math" priority="2">
         | 
| 1913 | 
            -
            		<fo:inline font-family="Cambria Math">
         | 
| 1914 | 
            -
            			<xsl:variable name="mathml">
         | 
| 1915 | 
            -
            				<xsl:apply-templates select="." mode="mathml"/>
         | 
| 1916 | 
            -
            			</xsl:variable>
         | 
| 1917 | 
            -
            			<fo:instream-foreign-object fox:alt-text="Math">
         | 
| 1918 | 
            -
            				<!-- <xsl:copy-of select="."/> -->
         | 
| 1919 | 
            -
            				<xsl:copy-of select="xalan:nodeset($mathml)"/>
         | 
| 1920 | 
            -
            			</fo:instream-foreign-object>
         | 
| 1921 | 
            -
            		</fo:inline>
         | 
| 1922 | 
            -
            	</xsl:template>
         | 
| 1923 | 
            -
            	
         | 
| 1924 | 
            -
             | 
| 1925 | 
            -
            	
         | 
| 1926 1881 | 
             
            	<xsl:template match="iso:admonition">
         | 
| 1927 1882 | 
             
            		<fo:block margin-bottom="12pt" font-weight="bold"> <!-- text-align="center"  -->			
         | 
| 1928 1883 | 
             
            			<xsl:variable name="type">
         | 
| @@ -1964,7 +1919,24 @@ | |
| 1964 1919 | 
             
            	<!-- SVG images processing -->
         | 
| 1965 1920 | 
             
            	<!-- =================== -->
         | 
| 1966 1921 | 
             
            	<xsl:template match="*[local-name() = 'figure'][not(*[local-name() = 'image']) and *[local-name() = 'svg']]/*[local-name() = 'name']/*[local-name() = 'bookmark']" priority="2"/>
         | 
| 1967 | 
            -
            	<xsl:template match="*[local-name() = 'figure'][not(*[local-name() = 'image'])]/*[local-name() = 'svg']" priority="2">
         | 
| 1922 | 
            +
            	<xsl:template match="*[local-name() = 'figure'][not(*[local-name() = 'image'])]/*[local-name() = 'svg']" priority="2" name="image_svg">
         | 
| 1923 | 
            +
            		<xsl:param name="name"/>
         | 
| 1924 | 
            +
            		
         | 
| 1925 | 
            +
            		<xsl:variable name="svg_content">
         | 
| 1926 | 
            +
            			<xsl:apply-templates select="." mode="svg_update"/>
         | 
| 1927 | 
            +
            		</xsl:variable>
         | 
| 1928 | 
            +
            		
         | 
| 1929 | 
            +
            		<xsl:variable name="alt-text">
         | 
| 1930 | 
            +
            			<xsl:choose>
         | 
| 1931 | 
            +
            				<xsl:when test="normalize-space(../*[local-name() = 'name']) != ''">
         | 
| 1932 | 
            +
            					<xsl:value-of select="../*[local-name() = 'name']"/>
         | 
| 1933 | 
            +
            				</xsl:when>
         | 
| 1934 | 
            +
            				<xsl:when test="normalize-space($name) != ''">
         | 
| 1935 | 
            +
            					<xsl:value-of select="$name"/>
         | 
| 1936 | 
            +
            				</xsl:when>
         | 
| 1937 | 
            +
            				<xsl:otherwise>Figure</xsl:otherwise>
         | 
| 1938 | 
            +
            			</xsl:choose>
         | 
| 1939 | 
            +
            		</xsl:variable>
         | 
| 1968 1940 |  | 
| 1969 1941 | 
             
            		<xsl:choose>
         | 
| 1970 1942 | 
             
            			<xsl:when test=".//*[local-name() = 'a'][*[local-name() = 'rect'] or *[local-name() = 'polygon'] or *[local-name() = 'circle'] or *[local-name() = 'ellipse']]">
         | 
| @@ -2021,13 +1993,14 @@ | |
| 2021 1993 | 
             
            												</fo:block>
         | 
| 2022 1994 | 
             
            											</xsl:if>
         | 
| 2023 1995 | 
             
            											<fo:block text-depth="0" line-height="0" font-size="0">
         | 
| 2024 | 
            -
             | 
| 1996 | 
            +
             | 
| 1997 | 
            +
            												<fo:instream-foreign-object fox:alt-text="{$alt-text}">
         | 
| 2025 1998 | 
             
            													<xsl:attribute name="width">100%</xsl:attribute>
         | 
| 2026 1999 | 
             
            													<xsl:attribute name="content-height">100%</xsl:attribute>
         | 
| 2027 2000 | 
             
            													<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
         | 
| 2028 2001 | 
             
            													<xsl:attribute name="scaling">uniform</xsl:attribute>
         | 
| 2029 2002 |  | 
| 2030 | 
            -
            													<xsl:apply-templates select=" | 
| 2003 | 
            +
            													<xsl:apply-templates select="xalan:nodeset($svg_content)" mode="svg_remove_a"/>
         | 
| 2031 2004 | 
             
            												</fo:instream-foreign-object>
         | 
| 2032 2005 | 
             
            											</fo:block>
         | 
| 2033 2006 |  | 
| @@ -2045,7 +2018,7 @@ | |
| 2045 2018 | 
             
            			</xsl:when>
         | 
| 2046 2019 | 
             
            			<xsl:otherwise>
         | 
| 2047 2020 | 
             
            				<fo:block xsl:use-attribute-sets="image-style">
         | 
| 2048 | 
            -
            					<fo:instream-foreign-object fox:alt-text="{ | 
| 2021 | 
            +
            					<fo:instream-foreign-object fox:alt-text="{$alt-text}">
         | 
| 2049 2022 | 
             
            						<xsl:attribute name="width">100%</xsl:attribute>
         | 
| 2050 2023 | 
             
            						<xsl:attribute name="content-height">100%</xsl:attribute>
         | 
| 2051 2024 | 
             
            						<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
         | 
| @@ -2057,13 +2030,35 @@ | |
| 2057 2030 | 
             
            							<xsl:attribute name="width"><xsl:value-of select="$width"/>%</xsl:attribute>
         | 
| 2058 2031 | 
             
            						</xsl:if>
         | 
| 2059 2032 | 
             
            						<xsl:attribute name="scaling">uniform</xsl:attribute>
         | 
| 2060 | 
            -
            						<xsl:copy-of select=" | 
| 2033 | 
            +
            						<xsl:copy-of select="$svg_content"/>
         | 
| 2061 2034 | 
             
            					</fo:instream-foreign-object>
         | 
| 2062 2035 | 
             
            				</fo:block>
         | 
| 2063 2036 | 
             
            			</xsl:otherwise>
         | 
| 2064 2037 | 
             
            		</xsl:choose>
         | 
| 2065 2038 | 
             
            	</xsl:template>
         | 
| 2066 2039 |  | 
| 2040 | 
            +
            	<xsl:template match="@*|node()" mode="svg_update">
         | 
| 2041 | 
            +
            		<xsl:copy>
         | 
| 2042 | 
            +
            				<xsl:apply-templates select="@*|node()" mode="svg_update"/>
         | 
| 2043 | 
            +
            		</xsl:copy>
         | 
| 2044 | 
            +
            	</xsl:template>
         | 
| 2045 | 
            +
            	
         | 
| 2046 | 
            +
            	<xsl:template match="*[local-name() = 'image']/@href" mode="svg_update">
         | 
| 2047 | 
            +
            		<xsl:attribute name="href" namespace="http://www.w3.org/1999/xlink">
         | 
| 2048 | 
            +
            			<xsl:value-of select="."/>
         | 
| 2049 | 
            +
            		</xsl:attribute>
         | 
| 2050 | 
            +
            	</xsl:template>
         | 
| 2051 | 
            +
            	
         | 
| 2052 | 
            +
            	<xsl:template match="*[local-name() = 'figure']/*[local-name() = 'image'][@mimetype = 'image/svg+xml' and @src[not(starts-with(., 'data:image/'))]]" priority="2">
         | 
| 2053 | 
            +
            		<xsl:variable name="svg_content" select="document(@src)"/>
         | 
| 2054 | 
            +
            		<xsl:variable name="name" select="ancestor::*[local-name() = 'figure']/*[local-name() = 'name']"/>
         | 
| 2055 | 
            +
            		<xsl:for-each select="xalan:nodeset($svg_content)/node()">
         | 
| 2056 | 
            +
            			<xsl:call-template name="image_svg">
         | 
| 2057 | 
            +
            				<xsl:with-param name="name" select="$name"/>
         | 
| 2058 | 
            +
            			</xsl:call-template>
         | 
| 2059 | 
            +
            		</xsl:for-each>
         | 
| 2060 | 
            +
            	</xsl:template>
         | 
| 2061 | 
            +
            	
         | 
| 2067 2062 | 
             
            	<xsl:template match="@*|node()" mode="svg_remove_a">
         | 
| 2068 2063 | 
             
            		<xsl:copy>
         | 
| 2069 2064 | 
             
            				<xsl:apply-templates select="@*|node()" mode="svg_remove_a"/>
         | 
| @@ -2630,6 +2625,9 @@ | |
| 2630 2625 | 
             
            		<title-continued lang="en">(continued)</title-continued>
         | 
| 2631 2626 | 
             
            		<title-continued lang="fr">(continué)</title-continued>
         | 
| 2632 2627 |  | 
| 2628 | 
            +
            	</xsl:variable><xsl:variable name="bibdata">
         | 
| 2629 | 
            +
            		<xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']"/>
         | 
| 2630 | 
            +
            		<xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'localized-strings']"/>
         | 
| 2633 2631 | 
             
            	</xsl:variable><xsl:variable name="tab_zh"> </xsl:variable><xsl:template name="getTitle">
         | 
| 2634 2632 | 
             
            		<xsl:param name="name"/>
         | 
| 2635 2633 | 
             
            		<xsl:param name="lang"/>
         | 
| @@ -2655,13 +2653,16 @@ | |
| 2655 2653 | 
             
            		</xsl:choose>
         | 
| 2656 2654 | 
             
            	</xsl:template><xsl:variable name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable name="linebreak" select="'
'"/><xsl:attribute-set name="root-style">
         | 
| 2657 2655 |  | 
| 2656 | 
            +
            		
         | 
| 2658 2657 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="link-style">
         | 
| 2659 2658 |  | 
| 2659 | 
            +
            		
         | 
| 2660 2660 | 
             
            			<xsl:attribute name="color">blue</xsl:attribute>
         | 
| 2661 2661 | 
             
            			<xsl:attribute name="text-decoration">underline</xsl:attribute>
         | 
| 2662 2662 |  | 
| 2663 2663 |  | 
| 2664 2664 |  | 
| 2665 | 
            +
            		
         | 
| 2665 2666 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="sourcecode-style">
         | 
| 2666 2667 | 
             
            		<xsl:attribute name="white-space">pre</xsl:attribute>
         | 
| 2667 2668 | 
             
            		<xsl:attribute name="wrap-option">wrap</xsl:attribute>
         | 
| @@ -2728,6 +2729,7 @@ | |
| 2728 2729 |  | 
| 2729 2730 |  | 
| 2730 2731 |  | 
| 2732 | 
            +
            		
         | 
| 2731 2733 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="example-body-style">
         | 
| 2732 2734 |  | 
| 2733 2735 |  | 
| @@ -2737,6 +2739,7 @@ | |
| 2737 2739 |  | 
| 2738 2740 |  | 
| 2739 2741 | 
             
            			 <xsl:attribute name="padding-right">5mm</xsl:attribute>
         | 
| 2742 | 
            +
            			 <xsl:attribute name="keep-with-next">always</xsl:attribute>
         | 
| 2740 2743 |  | 
| 2741 2744 |  | 
| 2742 2745 |  | 
| @@ -2746,9 +2749,7 @@ | |
| 2746 2749 |  | 
| 2747 2750 |  | 
| 2748 2751 |  | 
| 2749 | 
            -
             | 
| 2750 | 
            -
            		
         | 
| 2751 | 
            -
            		
         | 
| 2752 | 
            +
            				
         | 
| 2752 2753 |  | 
| 2753 2754 |  | 
| 2754 2755 |  | 
| @@ -2783,6 +2784,7 @@ | |
| 2783 2784 |  | 
| 2784 2785 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="table-name-style">
         | 
| 2785 2786 | 
             
            		<xsl:attribute name="keep-with-next">always</xsl:attribute>
         | 
| 2787 | 
            +
            			
         | 
| 2786 2788 |  | 
| 2787 2789 |  | 
| 2788 2790 |  | 
| @@ -2801,6 +2803,7 @@ | |
| 2801 2803 |  | 
| 2802 2804 |  | 
| 2803 2805 |  | 
| 2806 | 
            +
            		
         | 
| 2804 2807 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="appendix-style">
         | 
| 2805 2808 |  | 
| 2806 2809 | 
             
            			<xsl:attribute name="font-size">12pt</xsl:attribute>
         | 
| @@ -2821,19 +2824,23 @@ | |
| 2821 2824 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="xref-style">
         | 
| 2822 2825 |  | 
| 2823 2826 |  | 
| 2827 | 
            +
            		
         | 
| 2824 2828 | 
             
            			<xsl:attribute name="color">blue</xsl:attribute>
         | 
| 2825 2829 | 
             
            			<xsl:attribute name="text-decoration">underline</xsl:attribute>
         | 
| 2826 2830 |  | 
| 2827 2831 |  | 
| 2832 | 
            +
            		
         | 
| 2828 2833 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="eref-style">
         | 
| 2829 2834 |  | 
| 2830 2835 |  | 
| 2831 2836 |  | 
| 2832 2837 |  | 
| 2838 | 
            +
            		
         | 
| 2833 2839 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="note-style">
         | 
| 2834 2840 |  | 
| 2835 2841 |  | 
| 2836 2842 |  | 
| 2843 | 
            +
            		
         | 
| 2837 2844 |  | 
| 2838 2845 |  | 
| 2839 2846 |  | 
| @@ -2857,6 +2864,7 @@ | |
| 2857 2864 |  | 
| 2858 2865 |  | 
| 2859 2866 |  | 
| 2867 | 
            +
            		
         | 
| 2860 2868 | 
             
            			<xsl:attribute name="padding-right">6mm</xsl:attribute>
         | 
| 2861 2869 |  | 
| 2862 2870 |  | 
| @@ -2886,6 +2894,7 @@ | |
| 2886 2894 |  | 
| 2887 2895 |  | 
| 2888 2896 |  | 
| 2897 | 
            +
            		
         | 
| 2889 2898 | 
             
            			<xsl:attribute name="font-size">10pt</xsl:attribute>
         | 
| 2890 2899 | 
             
            			<xsl:attribute name="margin-top">8pt</xsl:attribute>
         | 
| 2891 2900 | 
             
            			<xsl:attribute name="margin-bottom">8pt</xsl:attribute>
         | 
| @@ -2894,6 +2903,7 @@ | |
| 2894 2903 |  | 
| 2895 2904 |  | 
| 2896 2905 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="termnote-name-style">		
         | 
| 2906 | 
            +
            		
         | 
| 2897 2907 |  | 
| 2898 2908 |  | 
| 2899 2909 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="quote-style">		
         | 
| @@ -2920,18 +2930,22 @@ | |
| 2920 2930 |  | 
| 2921 2931 |  | 
| 2922 2932 |  | 
| 2933 | 
            +
            		
         | 
| 2923 2934 | 
             
            			<xsl:attribute name="margin-bottom">8pt</xsl:attribute>
         | 
| 2924 2935 |  | 
| 2936 | 
            +
            		
         | 
| 2925 2937 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="origin-style">
         | 
| 2926 2938 |  | 
| 2927 2939 |  | 
| 2928 2940 |  | 
| 2941 | 
            +
            		
         | 
| 2929 2942 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="term-style">
         | 
| 2930 2943 |  | 
| 2931 2944 | 
             
            			<xsl:attribute name="margin-bottom">10pt</xsl:attribute>
         | 
| 2932 2945 |  | 
| 2933 2946 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="figure-name-style">
         | 
| 2934 2947 |  | 
| 2948 | 
            +
            		
         | 
| 2935 2949 |  | 
| 2936 2950 |  | 
| 2937 2951 |  | 
| @@ -2964,10 +2978,12 @@ | |
| 2964 2978 |  | 
| 2965 2979 |  | 
| 2966 2980 |  | 
| 2981 | 
            +
            		
         | 
| 2967 2982 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="figure-pseudocode-p-style">
         | 
| 2968 2983 |  | 
| 2969 2984 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="image-graphic-style">
         | 
| 2970 2985 |  | 
| 2986 | 
            +
            		
         | 
| 2971 2987 | 
             
            			<xsl:attribute name="width">100%</xsl:attribute>
         | 
| 2972 2988 | 
             
            			<xsl:attribute name="content-height">scale-to-fit</xsl:attribute>
         | 
| 2973 2989 | 
             
            			<xsl:attribute name="scaling">uniform</xsl:attribute>
         | 
| @@ -2993,15 +3009,38 @@ | |
| 2993 3009 |  | 
| 2994 3010 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="admitted-style">
         | 
| 2995 3011 |  | 
| 2996 | 
            -
             | 
| 3012 | 
            +
            		
         | 
| 3013 | 
            +
            		
         | 
| 2997 3014 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="deprecates-style">
         | 
| 2998 3015 |  | 
| 3016 | 
            +
            		
         | 
| 2999 3017 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="definition-style">
         | 
| 3000 3018 |  | 
| 3001 3019 |  | 
| 3002 3020 | 
             
            			<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
         | 
| 3003 3021 |  | 
| 3004 | 
            -
             | 
| 3022 | 
            +
            		
         | 
| 3023 | 
            +
            	</xsl:attribute-set><xsl:variable name="color-added-text">
         | 
| 3024 | 
            +
            		<xsl:text>rgb(0, 255, 0)</xsl:text>
         | 
| 3025 | 
            +
            	</xsl:variable><xsl:attribute-set name="add-style">
         | 
| 3026 | 
            +
            		<xsl:attribute name="color">red</xsl:attribute>
         | 
| 3027 | 
            +
            		<xsl:attribute name="text-decoration">underline</xsl:attribute>
         | 
| 3028 | 
            +
            		<!-- <xsl:attribute name="color">black</xsl:attribute>
         | 
| 3029 | 
            +
            		<xsl:attribute name="background-color"><xsl:value-of select="$color-added-text"/></xsl:attribute>
         | 
| 3030 | 
            +
            		<xsl:attribute name="padding-top">1mm</xsl:attribute>
         | 
| 3031 | 
            +
            		<xsl:attribute name="padding-bottom">0.5mm</xsl:attribute> -->
         | 
| 3032 | 
            +
            	</xsl:attribute-set><xsl:variable name="color-deleted-text">
         | 
| 3033 | 
            +
            		<xsl:text>red</xsl:text>
         | 
| 3034 | 
            +
            	</xsl:variable><xsl:attribute-set name="del-style">
         | 
| 3035 | 
            +
            		<xsl:attribute name="color"><xsl:value-of select="$color-deleted-text"/></xsl:attribute>
         | 
| 3036 | 
            +
            		<xsl:attribute name="text-decoration">line-through</xsl:attribute>
         | 
| 3037 | 
            +
            	</xsl:attribute-set><xsl:attribute-set name="mathml-style">
         | 
| 3038 | 
            +
            		<xsl:attribute name="font-family">STIX Two Math</xsl:attribute>
         | 
| 3039 | 
            +
            		
         | 
| 3040 | 
            +
            			<xsl:attribute name="font-family">Cambria Math</xsl:attribute>
         | 
| 3041 | 
            +
            		
         | 
| 3042 | 
            +
            		
         | 
| 3043 | 
            +
            	</xsl:attribute-set><xsl:variable name="border-block-added">2.5pt solid rgb(0, 176, 80)</xsl:variable><xsl:variable name="border-block-deleted">2.5pt solid rgb(255, 0, 0)</xsl:variable><xsl:template name="processPrefaceSectionsDefault_Contents">
         | 
| 3005 3044 | 
             
            		<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='abstract']" mode="contents"/>
         | 
| 3006 3045 | 
             
            		<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='foreword']" mode="contents"/>
         | 
| 3007 3046 | 
             
            		<xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='introduction']" mode="contents"/>
         | 
| @@ -3046,16 +3085,17 @@ | |
| 3046 3085 | 
             
            		<xsl:call-template name="add-zero-spaces-java"/>
         | 
| 3047 3086 | 
             
            	</xsl:template><xsl:template match="*[local-name()='table']" name="table">
         | 
| 3048 3087 |  | 
| 3088 | 
            +
            		<xsl:variable name="table-preamble">
         | 
| 3089 | 
            +
            			
         | 
| 3090 | 
            +
            			
         | 
| 3091 | 
            +
            		</xsl:variable>
         | 
| 3092 | 
            +
            		
         | 
| 3049 3093 | 
             
            		<xsl:variable name="table">
         | 
| 3050 3094 |  | 
| 3051 3095 | 
             
            			<xsl:variable name="simple-table">	
         | 
| 3052 3096 | 
             
            				<xsl:call-template name="getSimpleTable"/>			
         | 
| 3053 3097 | 
             
            			</xsl:variable>
         | 
| 3054 3098 |  | 
| 3055 | 
            -
            			
         | 
| 3056 | 
            -
            			
         | 
| 3057 | 
            -
            			
         | 
| 3058 | 
            -
            			
         | 
| 3059 3099 | 
             
            			<!-- <xsl:if test="$namespace = 'bipm'">
         | 
| 3060 3100 | 
             
            				<fo:block> </fo:block>				
         | 
| 3061 3101 | 
             
            			</xsl:if> -->
         | 
| @@ -3066,7 +3106,7 @@ | |
| 3066 3106 |  | 
| 3067 3107 |  | 
| 3068 3108 |  | 
| 3069 | 
            -
            			<xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table) | 
| 3109 | 
            +
            			<xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)/*/tr[1]/td)"/>
         | 
| 3070 3110 |  | 
| 3071 3111 | 
             
            			<!-- <xsl:variable name="cols-count">
         | 
| 3072 3112 | 
             
            				<xsl:choose>
         | 
| @@ -3085,8 +3125,6 @@ | |
| 3085 3125 | 
             
            			<!-- cols-count=<xsl:copy-of select="$cols-count"/> -->
         | 
| 3086 3126 | 
             
            			<!-- cols-count2=<xsl:copy-of select="$cols-count2"/> -->
         | 
| 3087 3127 |  | 
| 3088 | 
            -
            			
         | 
| 3089 | 
            -
            			
         | 
| 3090 3128 | 
             
            			<xsl:variable name="colwidths">
         | 
| 3091 3129 | 
             
            				<xsl:if test="not(*[local-name()='colgroup']/*[local-name()='col'])">
         | 
| 3092 3130 | 
             
            					<xsl:call-template name="calculate-column-widths">
         | 
| @@ -3114,8 +3152,10 @@ | |
| 3114 3152 | 
             
            				</xsl:choose>
         | 
| 3115 3153 | 
             
            			</xsl:variable>
         | 
| 3116 3154 |  | 
| 3155 | 
            +
            			
         | 
| 3117 3156 | 
             
            			<fo:block-container margin-left="-{$margin-left}mm" margin-right="-{$margin-left}mm">			
         | 
| 3118 3157 |  | 
| 3158 | 
            +
            				
         | 
| 3119 3159 | 
             
            					<xsl:attribute name="font-size">10pt</xsl:attribute>
         | 
| 3120 3160 |  | 
| 3121 3161 |  | 
| @@ -3127,6 +3167,7 @@ | |
| 3127 3167 |  | 
| 3128 3168 |  | 
| 3129 3169 |  | 
| 3170 | 
            +
            				
         | 
| 3130 3171 | 
             
            					<xsl:attribute name="margin-top">12pt</xsl:attribute>
         | 
| 3131 3172 | 
             
            					<xsl:attribute name="margin-left">0mm</xsl:attribute>
         | 
| 3132 3173 | 
             
            					<xsl:attribute name="margin-right">0mm</xsl:attribute>
         | 
| @@ -3136,6 +3177,7 @@ | |
| 3136 3177 |  | 
| 3137 3178 |  | 
| 3138 3179 |  | 
| 3180 | 
            +
            				
         | 
| 3139 3181 | 
             
            				<xsl:variable name="table_width">
         | 
| 3140 3182 | 
             
            					<!-- for centered table always 100% (@width will be set for middle/second cell of outer table) -->
         | 
| 3141 3183 | 
             
            					100%
         | 
| @@ -3149,12 +3191,19 @@ | |
| 3149 3191 | 
             
            					<attribute name="margin-left"><xsl:value-of select="$margin-left"/>mm</attribute>
         | 
| 3150 3192 | 
             
            					<attribute name="margin-right"><xsl:value-of select="$margin-left"/>mm</attribute>
         | 
| 3151 3193 |  | 
| 3194 | 
            +
            					
         | 
| 3152 3195 | 
             
            						<attribute name="border">1.5pt solid black</attribute>
         | 
| 3153 3196 | 
             
            						<xsl:if test="*[local-name()='thead']">
         | 
| 3154 3197 | 
             
            							<attribute name="border-top">1pt solid black</attribute>
         | 
| 3155 3198 | 
             
            						</xsl:if>
         | 
| 3156 3199 |  | 
| 3157 3200 |  | 
| 3201 | 
            +
            						<xsl:if test="ancestor::*[local-name() = 'table']">
         | 
| 3202 | 
            +
            							<!-- for internal table in table cell -->
         | 
| 3203 | 
            +
            							<attribute name="border">0.5pt solid black</attribute>
         | 
| 3204 | 
            +
            						</xsl:if>
         | 
| 3205 | 
            +
            					
         | 
| 3206 | 
            +
            					
         | 
| 3158 3207 |  | 
| 3159 3208 |  | 
| 3160 3209 | 
             
            						<attribute name="margin-left">0mm</attribute>
         | 
| @@ -3249,7 +3298,8 @@ | |
| 3249 3298 | 
             
            			</fo:block-container>
         | 
| 3250 3299 | 
             
            		</xsl:variable>
         | 
| 3251 3300 |  | 
| 3252 | 
            -
            		
         | 
| 3301 | 
            +
            		<xsl:variable name="isAdded" select="@added"/>
         | 
| 3302 | 
            +
            		<xsl:variable name="isDeleted" select="@deleted"/>
         | 
| 3253 3303 |  | 
| 3254 3304 | 
             
            		<xsl:choose>
         | 
| 3255 3305 | 
             
            			<xsl:when test="@width">
         | 
| @@ -3263,7 +3313,14 @@ | |
| 3263 3313 | 
             
            						<fo:table-body>
         | 
| 3264 3314 | 
             
            							<fo:table-row>
         | 
| 3265 3315 | 
             
            								<fo:table-cell column-number="2">
         | 
| 3266 | 
            -
            									< | 
| 3316 | 
            +
            									<xsl:copy-of select="$table-preamble"/>
         | 
| 3317 | 
            +
            									<fo:block>
         | 
| 3318 | 
            +
            										<xsl:call-template name="setTrackChangesStyles">
         | 
| 3319 | 
            +
            											<xsl:with-param name="isAdded" select="$isAdded"/>
         | 
| 3320 | 
            +
            											<xsl:with-param name="isDeleted" select="$isDeleted"/>
         | 
| 3321 | 
            +
            										</xsl:call-template>
         | 
| 3322 | 
            +
            										<xsl:copy-of select="$table"/>
         | 
| 3323 | 
            +
            									</fo:block>
         | 
| 3267 3324 | 
             
            								</fo:table-cell>
         | 
| 3268 3325 | 
             
            							</fo:table-row>
         | 
| 3269 3326 | 
             
            						</fo:table-body>
         | 
| @@ -3274,18 +3331,46 @@ | |
| 3274 3331 |  | 
| 3275 3332 | 
             
            			</xsl:when>
         | 
| 3276 3333 | 
             
            			<xsl:otherwise>
         | 
| 3277 | 
            -
            				<xsl: | 
| 3334 | 
            +
            				<xsl:choose>
         | 
| 3335 | 
            +
            					<xsl:when test="$isAdded = 'true' or $isDeleted = 'true'">
         | 
| 3336 | 
            +
            						<xsl:copy-of select="$table-preamble"/>
         | 
| 3337 | 
            +
            						<fo:block>
         | 
| 3338 | 
            +
            							<xsl:call-template name="setTrackChangesStyles">
         | 
| 3339 | 
            +
            								<xsl:with-param name="isAdded" select="$isAdded"/>
         | 
| 3340 | 
            +
            								<xsl:with-param name="isDeleted" select="$isDeleted"/>
         | 
| 3341 | 
            +
            							</xsl:call-template>
         | 
| 3342 | 
            +
            							<xsl:copy-of select="$table"/>
         | 
| 3343 | 
            +
            						</fo:block>
         | 
| 3344 | 
            +
            					</xsl:when>
         | 
| 3345 | 
            +
            					<xsl:otherwise>
         | 
| 3346 | 
            +
            						<xsl:copy-of select="$table-preamble"/>
         | 
| 3347 | 
            +
            						<xsl:copy-of select="$table"/>
         | 
| 3348 | 
            +
            					</xsl:otherwise>
         | 
| 3349 | 
            +
            				</xsl:choose>
         | 
| 3278 3350 | 
             
            			</xsl:otherwise>
         | 
| 3279 3351 | 
             
            		</xsl:choose>
         | 
| 3280 3352 |  | 
| 3281 3353 | 
             
            	</xsl:template><xsl:template match="*[local-name()='table']/*[local-name() = 'name']"/><xsl:template match="*[local-name()='table']/*[local-name() = 'name']" mode="presentation">
         | 
| 3354 | 
            +
            		<xsl:param name="continued"/>
         | 
| 3282 3355 | 
             
            		<xsl:if test="normalize-space() != ''">
         | 
| 3283 3356 | 
             
            			<fo:block xsl:use-attribute-sets="table-name-style">
         | 
| 3284 3357 |  | 
| 3285 3358 | 
             
            					<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
         | 
| 3286 3359 |  | 
| 3287 3360 |  | 
| 3288 | 
            -
            				<xsl: | 
| 3361 | 
            +
            				<xsl:choose>
         | 
| 3362 | 
            +
            					<xsl:when test="$continued = 'true'"> 
         | 
| 3363 | 
            +
            						<!-- <xsl:if test="$namespace = 'bsi'"></xsl:if> -->
         | 
| 3364 | 
            +
            						
         | 
| 3365 | 
            +
            							<xsl:apply-templates/>
         | 
| 3366 | 
            +
            						
         | 
| 3367 | 
            +
            					</xsl:when>
         | 
| 3368 | 
            +
            					<xsl:otherwise>
         | 
| 3369 | 
            +
            						<xsl:apply-templates/>
         | 
| 3370 | 
            +
            					</xsl:otherwise>
         | 
| 3371 | 
            +
            				</xsl:choose>
         | 
| 3372 | 
            +
            				
         | 
| 3373 | 
            +
            				
         | 
| 3289 3374 | 
             
            			</fo:block>
         | 
| 3290 3375 | 
             
            		</xsl:if>
         | 
| 3291 3376 | 
             
            	</xsl:template><xsl:template name="calculate-columns-numbers">
         | 
| @@ -3337,7 +3422,7 @@ | |
| 3337 3422 | 
             
            						</xsl:for-each>
         | 
| 3338 3423 | 
             
            					</xsl:when>
         | 
| 3339 3424 | 
             
            					<xsl:otherwise>
         | 
| 3340 | 
            -
            						<xsl:for-each select="xalan:nodeset($table) | 
| 3425 | 
            +
            						<xsl:for-each select="xalan:nodeset($table)/*/tr">
         | 
| 3341 3426 | 
             
            							<xsl:variable name="td_text">
         | 
| 3342 3427 | 
             
            								<xsl:apply-templates select="td[$curr-col]" mode="td_text"/>
         | 
| 3343 3428 |  | 
| @@ -3429,18 +3514,23 @@ | |
| 3429 3514 | 
             
            			<xsl:apply-templates/>
         | 
| 3430 3515 | 
             
            		</fo:table-header>
         | 
| 3431 3516 | 
             
            	</xsl:template><xsl:template name="table-header-title">
         | 
| 3432 | 
            -
            		<xsl:param name="cols-count"/> | 
| 3517 | 
            +
            		<xsl:param name="cols-count"/>
         | 
| 3433 3518 | 
             
            		<!-- row for title -->
         | 
| 3434 3519 | 
             
            		<fo:table-row>
         | 
| 3435 3520 | 
             
            			<fo:table-cell number-columns-spanned="{$cols-count}" border-left="1.5pt solid white" border-right="1.5pt solid white" border-top="1.5pt solid white" border-bottom="1.5pt solid black">
         | 
| 3436 | 
            -
            				 | 
| 3521 | 
            +
            				
         | 
| 3522 | 
            +
            				<xsl:apply-templates select="ancestor::*[local-name()='table']/*[local-name()='name']" mode="presentation">
         | 
| 3523 | 
            +
            					<xsl:with-param name="continued">true</xsl:with-param>
         | 
| 3524 | 
            +
            				</xsl:apply-templates>
         | 
| 3437 3525 | 
             
            				<xsl:for-each select="ancestor::*[local-name()='table'][1]">
         | 
| 3438 3526 | 
             
            					<xsl:call-template name="fn_name_display"/>
         | 
| 3439 | 
            -
            				</xsl:for-each> | 
| 3440 | 
            -
            				 | 
| 3441 | 
            -
            					< | 
| 3442 | 
            -
             | 
| 3443 | 
            -
             | 
| 3527 | 
            +
            				</xsl:for-each>
         | 
| 3528 | 
            +
            				
         | 
| 3529 | 
            +
            					<fo:block text-align="right" font-style="italic">
         | 
| 3530 | 
            +
            						<xsl:text> </xsl:text>
         | 
| 3531 | 
            +
            						<fo:retrieve-table-marker retrieve-class-name="table_continued"/>
         | 
| 3532 | 
            +
            					</fo:block>
         | 
| 3533 | 
            +
            				
         | 
| 3444 3534 | 
             
            			</fo:table-cell>
         | 
| 3445 3535 | 
             
            		</fo:table-row>
         | 
| 3446 3536 | 
             
            	</xsl:template><xsl:template match="*[local-name()='thead']" mode="process_tbody">		
         | 
| @@ -3661,19 +3751,25 @@ | |
| 3661 3751 | 
             
            					<xsl:call-template name="getTitle">
         | 
| 3662 3752 | 
             
            						<xsl:with-param name="name" select="'title-continued'"/>
         | 
| 3663 3753 | 
             
            					</xsl:call-template>
         | 
| 3664 | 
            -
            				</xsl:variable> | 
| 3754 | 
            +
            				</xsl:variable>
         | 
| 3755 | 
            +
            				
         | 
| 3756 | 
            +
            				<xsl:variable name="title_start" select="ancestor::*[local-name()='table'][1]/*[local-name()='name']/node()[1][self::text()]"/>
         | 
| 3757 | 
            +
            				<xsl:variable name="table_number" select="substring-before($title_start, '—')"/>
         | 
| 3758 | 
            +
            				
         | 
| 3665 3759 | 
             
            				<fo:table-row height="0" keep-with-next.within-page="always">
         | 
| 3666 3760 | 
             
            					<fo:table-cell>
         | 
| 3667 | 
            -
            						 | 
| 3761 | 
            +
            						
         | 
| 3762 | 
            +
            						
         | 
| 3763 | 
            +
            							<fo:marker marker-class-name="table_continued"/>
         | 
| 3764 | 
            +
            						
         | 
| 3668 3765 | 
             
            						<fo:block/>
         | 
| 3669 3766 | 
             
            					</fo:table-cell>
         | 
| 3670 3767 | 
             
            				</fo:table-row>
         | 
| 3671 3768 | 
             
            				<fo:table-row height="0" keep-with-next.within-page="always">
         | 
| 3672 3769 | 
             
            					<fo:table-cell>
         | 
| 3673 | 
            -
             | 
| 3674 | 
            -
             | 
| 3675 | 
            -
             | 
| 3676 | 
            -
            							 <!-- </fo:inline> -->
         | 
| 3770 | 
            +
            						
         | 
| 3771 | 
            +
            						<fo:marker marker-class-name="table_continued">
         | 
| 3772 | 
            +
            								<xsl:value-of select="$title_continued"/>
         | 
| 3677 3773 | 
             
            						 </fo:marker>
         | 
| 3678 3774 | 
             
            						 <fo:block/>
         | 
| 3679 3775 | 
             
            					</fo:table-cell>
         | 
| @@ -3711,6 +3807,7 @@ | |
| 3711 3807 |  | 
| 3712 3808 |  | 
| 3713 3809 |  | 
| 3810 | 
            +
            					
         | 
| 3714 3811 | 
             
            				</xsl:if>
         | 
| 3715 3812 | 
             
            				<xsl:if test="$parent-name = 'tfoot'">
         | 
| 3716 3813 |  | 
| @@ -3735,12 +3832,14 @@ | |
| 3735 3832 | 
             
            			<xsl:attribute name="text-align">
         | 
| 3736 3833 | 
             
            				<xsl:choose>
         | 
| 3737 3834 | 
             
            					<xsl:when test="@align">
         | 
| 3738 | 
            -
            						<xsl: | 
| 3835 | 
            +
            						<xsl:call-template name="setAlignment"/>
         | 
| 3836 | 
            +
            						<!-- <xsl:value-of select="@align"/> -->
         | 
| 3739 3837 | 
             
            					</xsl:when>
         | 
| 3740 3838 | 
             
            					<xsl:otherwise>center</xsl:otherwise>
         | 
| 3741 3839 | 
             
            				</xsl:choose>
         | 
| 3742 3840 | 
             
            			</xsl:attribute>
         | 
| 3743 3841 |  | 
| 3842 | 
            +
            			
         | 
| 3744 3843 | 
             
            				<xsl:attribute name="padding-top">1mm</xsl:attribute>
         | 
| 3745 3844 |  | 
| 3746 3845 |  | 
| @@ -3753,6 +3852,10 @@ | |
| 3753 3852 |  | 
| 3754 3853 |  | 
| 3755 3854 |  | 
| 3855 | 
            +
            			
         | 
| 3856 | 
            +
            			<xsl:if test="$lang = 'ar'">
         | 
| 3857 | 
            +
            				<xsl:attribute name="padding-right">1mm</xsl:attribute>
         | 
| 3858 | 
            +
            			</xsl:if>
         | 
| 3756 3859 | 
             
            			<xsl:if test="@colspan">
         | 
| 3757 3860 | 
             
            				<xsl:attribute name="number-columns-spanned">
         | 
| 3758 3861 | 
             
            					<xsl:value-of select="@colspan"/>
         | 
| @@ -3784,16 +3887,21 @@ | |
| 3784 3887 | 
             
            			<xsl:attribute name="text-align">
         | 
| 3785 3888 | 
             
            				<xsl:choose>
         | 
| 3786 3889 | 
             
            					<xsl:when test="@align">
         | 
| 3787 | 
            -
            						<xsl: | 
| 3890 | 
            +
            						<xsl:call-template name="setAlignment"/>
         | 
| 3891 | 
            +
            						<!-- <xsl:value-of select="@align"/> -->
         | 
| 3788 3892 | 
             
            					</xsl:when>
         | 
| 3789 3893 | 
             
            					<xsl:otherwise>left</xsl:otherwise>
         | 
| 3790 3894 | 
             
            				</xsl:choose>
         | 
| 3791 3895 | 
             
            			</xsl:attribute>
         | 
| 3896 | 
            +
            			<xsl:if test="$lang = 'ar'">
         | 
| 3897 | 
            +
            				<xsl:attribute name="padding-right">1mm</xsl:attribute>
         | 
| 3898 | 
            +
            			</xsl:if>
         | 
| 3792 3899 | 
             
            			 <!--  and ancestor::*[local-name() = 'thead'] -->
         | 
| 3793 3900 | 
             
            				<xsl:attribute name="padding-top">0.5mm</xsl:attribute>
         | 
| 3794 3901 |  | 
| 3795 3902 |  | 
| 3796 3903 |  | 
| 3904 | 
            +
            			
         | 
| 3797 3905 | 
             
            				<xsl:if test="ancestor::*[local-name() = 'tfoot']">
         | 
| 3798 3906 | 
             
            					<xsl:attribute name="border">solid black 0</xsl:attribute>
         | 
| 3799 3907 | 
             
            				</xsl:if>
         | 
| @@ -3806,6 +3914,9 @@ | |
| 3806 3914 |  | 
| 3807 3915 |  | 
| 3808 3916 |  | 
| 3917 | 
            +
            			<xsl:if test=".//*[local-name() = 'table']">
         | 
| 3918 | 
            +
            				<xsl:attribute name="padding-right">1mm</xsl:attribute>
         | 
| 3919 | 
            +
            			</xsl:if>
         | 
| 3809 3920 | 
             
            			<xsl:if test="@colspan">
         | 
| 3810 3921 | 
             
            				<xsl:attribute name="number-columns-spanned">
         | 
| 3811 3922 | 
             
            					<xsl:value-of select="@colspan"/>
         | 
| @@ -3939,13 +4050,13 @@ | |
| 3939 4050 | 
             
            						</xsl:choose>
         | 
| 3940 4051 | 
             
            					</xsl:variable>
         | 
| 3941 4052 | 
             
            					<!-- <xsl:variable name="ns" select="substring-before(name(/*), '-')"/> -->
         | 
| 3942 | 
            -
            					<xsl:element name="{$ns}:table">
         | 
| 4053 | 
            +
            					<!-- <xsl:element name="{$ns}:table"> -->
         | 
| 3943 4054 | 
             
            						<xsl:for-each select="*[local-name() = 'dl'][1]">
         | 
| 3944 4055 | 
             
            							<tbody>
         | 
| 3945 4056 | 
             
            								<xsl:apply-templates mode="dl"/>
         | 
| 3946 4057 | 
             
            							</tbody>
         | 
| 3947 4058 | 
             
            						</xsl:for-each>
         | 
| 3948 | 
            -
            					</xsl:element>
         | 
| 4059 | 
            +
            					<!-- </xsl:element> -->
         | 
| 3949 4060 | 
             
            				</xsl:variable>
         | 
| 3950 4061 |  | 
| 3951 4062 | 
             
            				<xsl:call-template name="calculate-column-widths">
         | 
| @@ -4042,6 +4153,8 @@ | |
| 4042 4153 | 
             
            			<xsl:apply-templates/>
         | 
| 4043 4154 | 
             
            		</fo:inline>
         | 
| 4044 4155 | 
             
            	</xsl:template><xsl:template match="*[local-name()='dl']">
         | 
| 4156 | 
            +
            		<xsl:variable name="isAdded" select="@added"/>
         | 
| 4157 | 
            +
            		<xsl:variable name="isDeleted" select="@deleted"/>
         | 
| 4045 4158 | 
             
            		<fo:block-container>
         | 
| 4046 4159 |  | 
| 4047 4160 | 
             
            				<xsl:if test="not(ancestor::*[local-name() = 'quote'])">
         | 
| @@ -4058,6 +4171,12 @@ | |
| 4058 4171 | 
             
            				</xsl:attribute>
         | 
| 4059 4172 |  | 
| 4060 4173 | 
             
            			</xsl:if>
         | 
| 4174 | 
            +
            			
         | 
| 4175 | 
            +
            			<xsl:call-template name="setTrackChangesStyles">
         | 
| 4176 | 
            +
            				<xsl:with-param name="isAdded" select="$isAdded"/>
         | 
| 4177 | 
            +
            				<xsl:with-param name="isDeleted" select="$isDeleted"/>
         | 
| 4178 | 
            +
            			</xsl:call-template>
         | 
| 4179 | 
            +
            			
         | 
| 4061 4180 | 
             
            			<fo:block-container>
         | 
| 4062 4181 |  | 
| 4063 4182 | 
             
            					<xsl:attribute name="margin-left">0mm</xsl:attribute>
         | 
| @@ -4122,6 +4241,7 @@ | |
| 4122 4241 |  | 
| 4123 4242 |  | 
| 4124 4243 |  | 
| 4244 | 
            +
            							
         | 
| 4125 4245 | 
             
            							<xsl:variable name="title-key">
         | 
| 4126 4246 |  | 
| 4127 4247 | 
             
            									<xsl:call-template name="getLocalizedString">
         | 
| @@ -4179,11 +4299,11 @@ | |
| 4179 4299 | 
             
            										</xsl:choose>
         | 
| 4180 4300 | 
             
            									</xsl:variable>
         | 
| 4181 4301 | 
             
            									<!-- <xsl:variable name="ns" select="substring-before(name(/*), '-')"/> -->
         | 
| 4182 | 
            -
            									<xsl:element name="{$ns}:table">
         | 
| 4302 | 
            +
            									<!-- <xsl:element name="{$ns}:table"> -->
         | 
| 4183 4303 | 
             
            										<tbody>
         | 
| 4184 4304 | 
             
            											<xsl:apply-templates mode="dl"/>
         | 
| 4185 4305 | 
             
            										</tbody>
         | 
| 4186 | 
            -
            									</xsl:element>
         | 
| 4306 | 
            +
            									<!-- </xsl:element> -->
         | 
| 4187 4307 | 
             
            								</xsl:variable>
         | 
| 4188 4308 | 
             
            								<!-- html-table<xsl:copy-of select="$html-table"/> -->
         | 
| 4189 4309 | 
             
            								<xsl:variable name="colwidths">
         | 
| @@ -4410,6 +4530,8 @@ | |
| 4410 4530 |  | 
| 4411 4531 | 
             
            			<xsl:apply-templates/>
         | 
| 4412 4532 | 
             
            		</fo:inline>
         | 
| 4533 | 
            +
            	</xsl:template><xsl:template match="*[local-name()='padding']">
         | 
| 4534 | 
            +
            		<fo:inline padding-right="{@value}"> </fo:inline>
         | 
| 4413 4535 | 
             
            	</xsl:template><xsl:template match="*[local-name()='sup']">
         | 
| 4414 4536 | 
             
            		<fo:inline font-size="80%" vertical-align="super">
         | 
| 4415 4537 | 
             
            			<xsl:apply-templates/>
         | 
| @@ -4435,6 +4557,7 @@ | |
| 4435 4557 |  | 
| 4436 4558 |  | 
| 4437 4559 |  | 
| 4560 | 
            +
            				
         | 
| 4438 4561 |  | 
| 4439 4562 | 
             
            			</xsl:variable>
         | 
| 4440 4563 | 
             
            			<xsl:variable name="font-size" select="normalize-space($_font-size)"/>		
         | 
| @@ -4452,8 +4575,74 @@ | |
| 4452 4575 | 
             
            		<fo:inline text-decoration="underline">
         | 
| 4453 4576 | 
             
            			<xsl:apply-templates/>
         | 
| 4454 4577 | 
             
            		</fo:inline>
         | 
| 4578 | 
            +
            	</xsl:template><xsl:template match="*[local-name()='add']">
         | 
| 4579 | 
            +
            		<xsl:choose>
         | 
| 4580 | 
            +
            			<xsl:when test="@amendment">
         | 
| 4581 | 
            +
            				<fo:inline>
         | 
| 4582 | 
            +
            					<xsl:call-template name="insertTag">
         | 
| 4583 | 
            +
            						<xsl:with-param name="kind">A</xsl:with-param>
         | 
| 4584 | 
            +
            						<xsl:with-param name="value"><xsl:value-of select="@amendment"/></xsl:with-param>
         | 
| 4585 | 
            +
            					</xsl:call-template>
         | 
| 4586 | 
            +
            					<xsl:apply-templates/>
         | 
| 4587 | 
            +
            					<xsl:call-template name="insertTag">
         | 
| 4588 | 
            +
            						<xsl:with-param name="type">closing</xsl:with-param>
         | 
| 4589 | 
            +
            						<xsl:with-param name="kind">A</xsl:with-param>
         | 
| 4590 | 
            +
            						<xsl:with-param name="value"><xsl:value-of select="@amendment"/></xsl:with-param>
         | 
| 4591 | 
            +
            					</xsl:call-template>
         | 
| 4592 | 
            +
            				</fo:inline>
         | 
| 4593 | 
            +
            			</xsl:when>
         | 
| 4594 | 
            +
            			<xsl:when test="@corrigenda">
         | 
| 4595 | 
            +
            				<fo:inline>
         | 
| 4596 | 
            +
            					<xsl:call-template name="insertTag">
         | 
| 4597 | 
            +
            						<xsl:with-param name="kind">C</xsl:with-param>
         | 
| 4598 | 
            +
            						<xsl:with-param name="value"><xsl:value-of select="@corrigenda"/></xsl:with-param>
         | 
| 4599 | 
            +
            					</xsl:call-template>
         | 
| 4600 | 
            +
            					<xsl:apply-templates/>
         | 
| 4601 | 
            +
            					<xsl:call-template name="insertTag">
         | 
| 4602 | 
            +
            						<xsl:with-param name="type">closing</xsl:with-param>
         | 
| 4603 | 
            +
            						<xsl:with-param name="kind">C</xsl:with-param>
         | 
| 4604 | 
            +
            						<xsl:with-param name="value"><xsl:value-of select="@corrigenda"/></xsl:with-param>
         | 
| 4605 | 
            +
            					</xsl:call-template>
         | 
| 4606 | 
            +
            				</fo:inline>
         | 
| 4607 | 
            +
            			</xsl:when>
         | 
| 4608 | 
            +
            			<xsl:otherwise>
         | 
| 4609 | 
            +
            				<fo:inline xsl:use-attribute-sets="add-style">
         | 
| 4610 | 
            +
            					<xsl:apply-templates/>
         | 
| 4611 | 
            +
            				</fo:inline>
         | 
| 4612 | 
            +
            			</xsl:otherwise>
         | 
| 4613 | 
            +
            		</xsl:choose>
         | 
| 4614 | 
            +
            		
         | 
| 4615 | 
            +
            	</xsl:template><xsl:template name="insertTag">
         | 
| 4616 | 
            +
            		<xsl:param name="type"/>
         | 
| 4617 | 
            +
            		<xsl:param name="kind"/>
         | 
| 4618 | 
            +
            		<xsl:param name="value"/>
         | 
| 4619 | 
            +
            		<xsl:variable name="add_width" select="string-length($value) * 20"/>
         | 
| 4620 | 
            +
            		<xsl:variable name="maxwidth" select="60 + $add_width"/>
         | 
| 4621 | 
            +
            			<fo:instream-foreign-object fox:alt-text="OpeningTag" baseline-shift="-20%"><!-- alignment-baseline="middle" -->
         | 
| 4622 | 
            +
            				<!-- <xsl:attribute name="width">7mm</xsl:attribute>
         | 
| 4623 | 
            +
            				<xsl:attribute name="content-height">100%</xsl:attribute> -->
         | 
| 4624 | 
            +
            				<xsl:attribute name="height">5mm</xsl:attribute>
         | 
| 4625 | 
            +
            				<xsl:attribute name="content-width">100%</xsl:attribute>
         | 
| 4626 | 
            +
            				<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
         | 
| 4627 | 
            +
            				<xsl:attribute name="scaling">uniform</xsl:attribute>
         | 
| 4628 | 
            +
            				<svg xmlns="http://www.w3.org/2000/svg" width="{$maxwidth + 32}" height="80">
         | 
| 4629 | 
            +
            					<g>
         | 
| 4630 | 
            +
            						<xsl:if test="$type = 'closing'">
         | 
| 4631 | 
            +
            							<xsl:attribute name="transform">scale(-1 1) translate(-<xsl:value-of select="$maxwidth + 32"/>,0)</xsl:attribute>
         | 
| 4632 | 
            +
            						</xsl:if>
         | 
| 4633 | 
            +
            						<polyline points="0,0 {$maxwidth},0 {$maxwidth + 30},40 {$maxwidth},80 0,80 " stroke="black" stroke-width="5" fill="white"/>
         | 
| 4634 | 
            +
            						<line x1="0" y1="0" x2="0" y2="80" stroke="black" stroke-width="20"/>
         | 
| 4635 | 
            +
            					</g>
         | 
| 4636 | 
            +
            					<text font-family="Arial" x="15" y="57" font-size="40pt">
         | 
| 4637 | 
            +
            						<xsl:if test="$type = 'closing'">
         | 
| 4638 | 
            +
            							<xsl:attribute name="x">25</xsl:attribute>
         | 
| 4639 | 
            +
            						</xsl:if>
         | 
| 4640 | 
            +
            						<xsl:value-of select="$kind"/><tspan dy="10" font-size="30pt"><xsl:value-of select="$value"/></tspan>
         | 
| 4641 | 
            +
            					</text>
         | 
| 4642 | 
            +
            				</svg>
         | 
| 4643 | 
            +
            			</fo:instream-foreign-object>
         | 
| 4455 4644 | 
             
            	</xsl:template><xsl:template match="*[local-name()='del']">
         | 
| 4456 | 
            -
            		<fo:inline  | 
| 4645 | 
            +
            		<fo:inline xsl:use-attribute-sets="del-style">
         | 
| 4457 4646 | 
             
            			<xsl:apply-templates/>
         | 
| 4458 4647 | 
             
            		</fo:inline>
         | 
| 4459 4648 | 
             
            	</xsl:template><xsl:template match="*[local-name()='hi']">
         | 
| @@ -4750,11 +4939,15 @@ | |
| 4750 4939 | 
             
            		</xsl:apply-templates>
         | 
| 4751 4940 | 
             
            	</xsl:template><xsl:template name="getLang">
         | 
| 4752 4941 | 
             
            		<xsl:variable name="language_current" select="normalize-space(//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
         | 
| 4942 | 
            +
            		<xsl:variable name="language_current_2" select="normalize-space(xalan:nodeset($bibdata)//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
         | 
| 4753 4943 | 
             
            		<xsl:variable name="language">
         | 
| 4754 4944 | 
             
            			<xsl:choose>
         | 
| 4755 4945 | 
             
            				<xsl:when test="$language_current != ''">
         | 
| 4756 4946 | 
             
            					<xsl:value-of select="$language_current"/>
         | 
| 4757 4947 | 
             
            				</xsl:when>
         | 
| 4948 | 
            +
            				<xsl:when test="$language_current_2 != ''">
         | 
| 4949 | 
            +
            					<xsl:value-of select="$language_current_2"/>
         | 
| 4950 | 
            +
            				</xsl:when>
         | 
| 4758 4951 | 
             
            				<xsl:otherwise>
         | 
| 4759 4952 | 
             
            					<xsl:value-of select="//*[local-name()='bibdata']//*[local-name()='language']"/>
         | 
| 4760 4953 | 
             
            				</xsl:otherwise>
         | 
| @@ -4794,13 +4987,30 @@ | |
| 4794 4987 | 
             
            		<xsl:value-of select="java:toUpperCase(java:java.lang.String.new(substring($str, 1, 1)))"/>
         | 
| 4795 4988 | 
             
            		<xsl:value-of select="substring($str, 2)"/>		
         | 
| 4796 4989 | 
             
            	</xsl:template><xsl:template match="mathml:math">
         | 
| 4797 | 
            -
            		< | 
| 4990 | 
            +
            		<xsl:variable name="isAdded" select="@added"/>
         | 
| 4991 | 
            +
            		<xsl:variable name="isDeleted" select="@deleted"/>
         | 
| 4992 | 
            +
            		
         | 
| 4993 | 
            +
            		<fo:inline xsl:use-attribute-sets="mathml-style">
         | 
| 4994 | 
            +
            			
         | 
| 4995 | 
            +
            			
         | 
| 4996 | 
            +
            			<xsl:call-template name="setTrackChangesStyles">
         | 
| 4997 | 
            +
            				<xsl:with-param name="isAdded" select="$isAdded"/>
         | 
| 4998 | 
            +
            				<xsl:with-param name="isDeleted" select="$isDeleted"/>
         | 
| 4999 | 
            +
            			</xsl:call-template>
         | 
| 4798 5000 |  | 
| 4799 5001 | 
             
            			<xsl:variable name="mathml">
         | 
| 4800 5002 | 
             
            				<xsl:apply-templates select="." mode="mathml"/>
         | 
| 4801 5003 | 
             
            			</xsl:variable>
         | 
| 4802 5004 | 
             
            			<fo:instream-foreign-object fox:alt-text="Math">
         | 
| 4803 5005 |  | 
| 5006 | 
            +
            				
         | 
| 5007 | 
            +
            					<xsl:if test="count(ancestor::*[local-name() = 'table']) > 1">
         | 
| 5008 | 
            +
            						<xsl:attribute name="width">95%</xsl:attribute>
         | 
| 5009 | 
            +
            						<xsl:attribute name="content-height">100%</xsl:attribute>
         | 
| 5010 | 
            +
            						<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
         | 
| 5011 | 
            +
            						<xsl:attribute name="scaling">uniform</xsl:attribute>
         | 
| 5012 | 
            +
            					</xsl:if>
         | 
| 5013 | 
            +
            				
         | 
| 4804 5014 | 
             
            				<!-- <xsl:copy-of select="."/> -->
         | 
| 4805 5015 | 
             
            				<xsl:copy-of select="xalan:nodeset($mathml)"/>
         | 
| 4806 5016 | 
             
            			</fo:instream-foreign-object>			
         | 
| @@ -4821,6 +5031,16 @@ | |
| 4821 5031 | 
             
            		<mathml:mspace width="0.5ex"/>
         | 
| 4822 5032 | 
             
            	</xsl:template><xsl:template match="mathml:math/*[local-name()='unit']" mode="mathml"/><xsl:template match="mathml:math/*[local-name()='prefix']" mode="mathml"/><xsl:template match="mathml:math/*[local-name()='dimension']" mode="mathml"/><xsl:template match="mathml:math/*[local-name()='quantity']" mode="mathml"/><xsl:template match="*[local-name()='localityStack']"/><xsl:template match="*[local-name()='link']" name="link">
         | 
| 4823 5033 | 
             
            		<xsl:variable name="target">
         | 
| 5034 | 
            +
            			<xsl:choose>
         | 
| 5035 | 
            +
            				<xsl:when test="@updatetype = 'true'">
         | 
| 5036 | 
            +
            					<xsl:value-of select="concat(normalize-space(@target), '.pdf')"/>
         | 
| 5037 | 
            +
            				</xsl:when>
         | 
| 5038 | 
            +
            				<xsl:otherwise>
         | 
| 5039 | 
            +
            					<xsl:value-of select="normalize-space(@target)"/>
         | 
| 5040 | 
            +
            				</xsl:otherwise>
         | 
| 5041 | 
            +
            			</xsl:choose>
         | 
| 5042 | 
            +
            		</xsl:variable>
         | 
| 5043 | 
            +
            		<xsl:variable name="target_text">
         | 
| 4824 5044 | 
             
            			<xsl:choose>
         | 
| 4825 5045 | 
             
            				<xsl:when test="starts-with(normalize-space(@target), 'mailto:')">
         | 
| 4826 5046 | 
             
            					<xsl:value-of select="normalize-space(substring-after(@target, 'mailto:'))"/>
         | 
| @@ -4833,19 +5053,19 @@ | |
| 4833 5053 | 
             
            		<fo:inline xsl:use-attribute-sets="link-style">
         | 
| 4834 5054 |  | 
| 4835 5055 | 
             
            			<xsl:choose>
         | 
| 4836 | 
            -
            				<xsl:when test="$ | 
| 5056 | 
            +
            				<xsl:when test="$target_text = ''">
         | 
| 4837 5057 | 
             
            					<xsl:apply-templates/>
         | 
| 4838 5058 | 
             
            				</xsl:when>
         | 
| 4839 5059 | 
             
            				<xsl:otherwise>
         | 
| 4840 | 
            -
            					<fo:basic-link external-destination="{ | 
| 5060 | 
            +
            					<fo:basic-link external-destination="{$target}" fox:alt-text="{$target}">
         | 
| 4841 5061 | 
             
            						<xsl:choose>
         | 
| 4842 5062 | 
             
            							<xsl:when test="normalize-space(.) = ''">
         | 
| 4843 | 
            -
            								<!-- <xsl:value-of select="$target"/> -->
         | 
| 4844 5063 | 
             
            								<xsl:call-template name="add-zero-spaces-link-java">
         | 
| 4845 | 
            -
            									<xsl:with-param name="text" select="$ | 
| 5064 | 
            +
            									<xsl:with-param name="text" select="$target_text"/>
         | 
| 4846 5065 | 
             
            								</xsl:call-template>
         | 
| 4847 5066 | 
             
            							</xsl:when>
         | 
| 4848 5067 | 
             
            							<xsl:otherwise>
         | 
| 5068 | 
            +
            								<!-- output text from <link>text</link> -->
         | 
| 4849 5069 | 
             
            								<xsl:apply-templates/>
         | 
| 4850 5070 | 
             
            							</xsl:otherwise>
         | 
| 4851 5071 | 
             
            						</xsl:choose>
         | 
| @@ -4957,6 +5177,7 @@ | |
| 4957 5177 |  | 
| 4958 5178 |  | 
| 4959 5179 | 
             
            						<fo:inline xsl:use-attribute-sets="note-name-style">
         | 
| 5180 | 
            +
            							
         | 
| 4960 5181 | 
             
            							<xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
         | 
| 4961 5182 | 
             
            						</fo:inline>
         | 
| 4962 5183 | 
             
            						<xsl:apply-templates/>
         | 
| @@ -4983,6 +5204,7 @@ | |
| 4983 5204 | 
             
            	</xsl:template><xsl:template match="*[local-name() = 'termnote']">
         | 
| 4984 5205 | 
             
            		<fo:block id="{@id}" xsl:use-attribute-sets="termnote-style">			
         | 
| 4985 5206 | 
             
            			<fo:inline xsl:use-attribute-sets="termnote-name-style">
         | 
| 5207 | 
            +
            				
         | 
| 4986 5208 | 
             
            				<xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
         | 
| 4987 5209 | 
             
            			</fo:inline>
         | 
| 4988 5210 | 
             
            			<xsl:apply-templates/>
         | 
| @@ -5046,8 +5268,15 @@ | |
| 5046 5268 | 
             
            			</fo:inline>
         | 
| 5047 5269 | 
             
            		</xsl:if>
         | 
| 5048 5270 | 
             
            	</xsl:template><xsl:template match="*[local-name() = 'figure']" name="figure">
         | 
| 5271 | 
            +
            		<xsl:variable name="isAdded" select="@added"/>
         | 
| 5272 | 
            +
            		<xsl:variable name="isDeleted" select="@deleted"/>
         | 
| 5049 5273 | 
             
            		<fo:block-container id="{@id}">			
         | 
| 5050 5274 |  | 
| 5275 | 
            +
            			<xsl:call-template name="setTrackChangesStyles">
         | 
| 5276 | 
            +
            				<xsl:with-param name="isAdded" select="$isAdded"/>
         | 
| 5277 | 
            +
            				<xsl:with-param name="isDeleted" select="$isDeleted"/>
         | 
| 5278 | 
            +
            			</xsl:call-template>
         | 
| 5279 | 
            +
            			
         | 
| 5051 5280 | 
             
            			<fo:block>
         | 
| 5052 5281 | 
             
            				<xsl:apply-templates/>
         | 
| 5053 5282 | 
             
            			</fo:block>
         | 
| @@ -5055,7 +5284,10 @@ | |
| 5055 5284 | 
             
            			<xsl:for-each select="*[local-name() = 'note']">
         | 
| 5056 5285 | 
             
            				<xsl:call-template name="note"/>
         | 
| 5057 5286 | 
             
            			</xsl:for-each>
         | 
| 5058 | 
            -
            			 | 
| 5287 | 
            +
            			
         | 
| 5288 | 
            +
            			
         | 
| 5289 | 
            +
            				<xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
         | 
| 5290 | 
            +
            			
         | 
| 5059 5291 | 
             
            		</fo:block-container>
         | 
| 5060 5292 | 
             
            	</xsl:template><xsl:template match="*[local-name() = 'figure'][@class = 'pseudocode']">
         | 
| 5061 5293 | 
             
            		<fo:block id="{@id}">
         | 
| @@ -5067,37 +5299,122 @@ | |
| 5067 5299 | 
             
            			<xsl:apply-templates/>
         | 
| 5068 5300 | 
             
            		</fo:block>
         | 
| 5069 5301 | 
             
            	</xsl:template><xsl:template match="*[local-name() = 'image']">
         | 
| 5070 | 
            -
            		< | 
| 5071 | 
            -
             | 
| 5072 | 
            -
             | 
| 5073 | 
            -
            			<xsl: | 
| 5074 | 
            -
            				< | 
| 5075 | 
            -
            					<xsl: | 
| 5076 | 
            -
            						<xsl: | 
| 5077 | 
            -
            					</xsl: | 
| 5078 | 
            -
            					< | 
| 5079 | 
            -
             | 
| 5080 | 
            -
             | 
| 5081 | 
            -
             | 
| 5082 | 
            -
             | 
| 5083 | 
            -
             | 
| 5084 | 
            -
             | 
| 5085 | 
            -
             | 
| 5302 | 
            +
            		<xsl:variable name="isAdded" select="../@added"/>
         | 
| 5303 | 
            +
            		<xsl:variable name="isDeleted" select="../@deleted"/>
         | 
| 5304 | 
            +
            		<xsl:choose>
         | 
| 5305 | 
            +
            			<xsl:when test="ancestor::*[local-name() = 'title']">
         | 
| 5306 | 
            +
            				<fo:inline padding-left="1mm" padding-right="1mm">
         | 
| 5307 | 
            +
            					<xsl:variable name="src">
         | 
| 5308 | 
            +
            						<xsl:call-template name="image_src"/>
         | 
| 5309 | 
            +
            					</xsl:variable>
         | 
| 5310 | 
            +
            					<fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" vertical-align="middle"/>
         | 
| 5311 | 
            +
            				</fo:inline>
         | 
| 5312 | 
            +
            			</xsl:when>
         | 
| 5313 | 
            +
            			<xsl:otherwise>
         | 
| 5314 | 
            +
            				<fo:block xsl:use-attribute-sets="image-style">
         | 
| 5315 | 
            +
            					
         | 
| 5316 | 
            +
            					<xsl:variable name="src">
         | 
| 5317 | 
            +
            						<xsl:call-template name="image_src"/>
         | 
| 5318 | 
            +
            					</xsl:variable>
         | 
| 5319 | 
            +
            					
         | 
| 5320 | 
            +
            					<xsl:choose>
         | 
| 5321 | 
            +
            						<xsl:when test="$isDeleted = 'true'">
         | 
| 5322 | 
            +
            							<!-- enclose in svg -->
         | 
| 5323 | 
            +
            							<fo:instream-foreign-object fox:alt-text="Image {@alt}">
         | 
| 5324 | 
            +
            								<xsl:attribute name="width">100%</xsl:attribute>
         | 
| 5325 | 
            +
            								<xsl:attribute name="content-height">100%</xsl:attribute>
         | 
| 5326 | 
            +
            								<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
         | 
| 5327 | 
            +
            								<xsl:attribute name="scaling">uniform</xsl:attribute>
         | 
| 5328 | 
            +
            								
         | 
| 5329 | 
            +
            								
         | 
| 5330 | 
            +
            									<xsl:apply-templates select="." mode="cross_image"/>
         | 
| 5331 | 
            +
            									
         | 
| 5332 | 
            +
            							</fo:instream-foreign-object>
         | 
| 5333 | 
            +
            						</xsl:when>
         | 
| 5334 | 
            +
            						<xsl:otherwise>
         | 
| 5335 | 
            +
            							<fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" xsl:use-attribute-sets="image-graphic-style"/>
         | 
| 5336 | 
            +
            						</xsl:otherwise>
         | 
| 5337 | 
            +
            					</xsl:choose>
         | 
| 5338 | 
            +
            					
         | 
| 5339 | 
            +
            				</fo:block>
         | 
| 5340 | 
            +
            			</xsl:otherwise>
         | 
| 5341 | 
            +
            		</xsl:choose>
         | 
| 5342 | 
            +
            	</xsl:template><xsl:template name="image_src">
         | 
| 5343 | 
            +
            		<xsl:choose>
         | 
| 5344 | 
            +
            			<xsl:when test="@mimetype = 'image/svg+xml' and $images/images/image[@id = current()/@id]">
         | 
| 5345 | 
            +
            				<xsl:value-of select="$images/images/image[@id = current()/@id]/@src"/>
         | 
| 5346 | 
            +
            			</xsl:when>
         | 
| 5347 | 
            +
            			<xsl:when test="not(starts-with(@src, 'data:'))">
         | 
| 5348 | 
            +
            				<xsl:value-of select="concat('url(file:',$basepath, @src, ')')"/>
         | 
| 5349 | 
            +
            			</xsl:when>
         | 
| 5350 | 
            +
            			<xsl:otherwise>
         | 
| 5351 | 
            +
            				<xsl:value-of select="@src"/>
         | 
| 5352 | 
            +
            			</xsl:otherwise>
         | 
| 5353 | 
            +
            		</xsl:choose>
         | 
| 5354 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'image']" mode="cross_image">
         | 
| 5355 | 
            +
            		<xsl:choose>
         | 
| 5356 | 
            +
            			<xsl:when test="@mimetype = 'image/svg+xml' and $images/images/image[@id = current()/@id]">
         | 
| 5357 | 
            +
            				<xsl:variable name="src">
         | 
| 5358 | 
            +
            					<xsl:value-of select="$images/images/image[@id = current()/@id]/@src"/>
         | 
| 5359 | 
            +
            				</xsl:variable>
         | 
| 5360 | 
            +
            				<xsl:variable name="width" select="document($src)/@width"/>
         | 
| 5361 | 
            +
            				<xsl:variable name="height" select="document($src)/@height"/>
         | 
| 5362 | 
            +
            				<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" style="enable-background:new 0 0 595.28 841.89;" height="{$height}" width="{$width}" viewBox="0 0 {$width} {$height}" y="0px" x="0px" id="Layer_1" version="1.1">
         | 
| 5363 | 
            +
            					<image xlink:href="{$src}" style="overflow:visible;"/>
         | 
| 5364 | 
            +
            				</svg>
         | 
| 5365 | 
            +
            			</xsl:when>
         | 
| 5366 | 
            +
            			<xsl:when test="not(starts-with(@src, 'data:'))">
         | 
| 5367 | 
            +
            				<xsl:variable name="src">
         | 
| 5368 | 
            +
            					<xsl:value-of select="concat('url(file:',$basepath, @src, ')')"/>
         | 
| 5369 | 
            +
            				</xsl:variable>
         | 
| 5370 | 
            +
            				<xsl:variable name="file" select="java:java.io.File.new(@src)"/>
         | 
| 5371 | 
            +
            				<xsl:variable name="bufferedImage" select="java:javax.imageio.ImageIO.read($file)"/>
         | 
| 5372 | 
            +
            				<xsl:variable name="width" select="java:getWidth($bufferedImage)"/>
         | 
| 5373 | 
            +
            				<xsl:variable name="height" select="java:getHeight($bufferedImage)"/>
         | 
| 5374 | 
            +
            				<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" style="enable-background:new 0 0 595.28 841.89;" height="{$height}" width="{$width}" viewBox="0 0 {$width} {$height}" y="0px" x="0px" id="Layer_1" version="1.1">
         | 
| 5375 | 
            +
            					<image xlink:href="{$src}" style="overflow:visible;"/>
         | 
| 5376 | 
            +
            				</svg>
         | 
| 5377 | 
            +
            			</xsl:when>
         | 
| 5378 | 
            +
            			<xsl:otherwise>
         | 
| 5379 | 
            +
            				<xsl:variable name="base64String" select="substring-after(@src, 'base64,')"/>
         | 
| 5380 | 
            +
            				<xsl:variable name="decoder" select="java:java.util.Base64.getDecoder()"/>
         | 
| 5381 | 
            +
            				<xsl:variable name="fileContent" select="java:decode($decoder, $base64String)"/>
         | 
| 5382 | 
            +
            				<xsl:variable name="bis" select="java:java.io.ByteArrayInputStream.new($fileContent)"/>
         | 
| 5383 | 
            +
            				<xsl:variable name="bufferedImage" select="java:javax.imageio.ImageIO.read($bis)"/>
         | 
| 5384 | 
            +
            				<xsl:variable name="width" select="java:getWidth($bufferedImage)"/>
         | 
| 5385 | 
            +
            				<!-- width=<xsl:value-of select="$width"/> -->
         | 
| 5386 | 
            +
            				<xsl:variable name="height" select="java:getHeight($bufferedImage)"/>
         | 
| 5387 | 
            +
            				<!-- height=<xsl:value-of select="$height"/> -->
         | 
| 5388 | 
            +
            				<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" style="enable-background:new 0 0 595.28 841.89;" height="{$height}" width="{$width}" viewBox="0 0 {$width} {$height}" y="0px" x="0px" id="Layer_1" version="1.1">
         | 
| 5389 | 
            +
            					<image xlink:href="{@src}" height="{$height}" width="{$width}" style="overflow:visible;"/>
         | 
| 5390 | 
            +
            					<xsl:call-template name="svg_cross">
         | 
| 5391 | 
            +
            						<xsl:with-param name="width" select="$width"/>
         | 
| 5392 | 
            +
            						<xsl:with-param name="height" select="$height"/>
         | 
| 5393 | 
            +
            					</xsl:call-template>
         | 
| 5394 | 
            +
            				</svg>
         | 
| 5395 | 
            +
            			</xsl:otherwise>
         | 
| 5396 | 
            +
            		</xsl:choose>
         | 
| 5397 | 
            +
            		
         | 
| 5398 | 
            +
            	</xsl:template><xsl:template name="svg_cross">
         | 
| 5399 | 
            +
            		<xsl:param name="width"/>
         | 
| 5400 | 
            +
            		<xsl:param name="height"/>
         | 
| 5401 | 
            +
            		<line xmlns="http://www.w3.org/2000/svg" x1="0" y1="0" x2="{$width}" y2="{$height}" style="stroke: rgb(255, 0, 0); stroke-width:4px; "/>
         | 
| 5402 | 
            +
            		<line xmlns="http://www.w3.org/2000/svg" x1="0" y1="{$height}" x2="{$width}" y2="0" style="stroke: rgb(255, 0, 0); stroke-width:4px; "/>
         | 
| 5086 5403 | 
             
            	</xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] |                *[local-name() = 'table']/*[local-name() = 'name'] |               *[local-name() = 'permission']/*[local-name() = 'name'] |               *[local-name() = 'recommendation']/*[local-name() = 'name'] |               *[local-name() = 'requirement']/*[local-name() = 'name']" mode="contents">		
         | 
| 5087 5404 | 
             
            		<xsl:apply-templates mode="contents"/>
         | 
| 5088 5405 | 
             
            		<xsl:text> </xsl:text>
         | 
| 5089 5406 | 
             
            	</xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] |                *[local-name() = 'table']/*[local-name() = 'name'] |               *[local-name() = 'permission']/*[local-name() = 'name'] |               *[local-name() = 'recommendation']/*[local-name() = 'name'] |               *[local-name() = 'requirement']/*[local-name() = 'name']" mode="bookmarks">		
         | 
| 5090 5407 | 
             
            		<xsl:apply-templates mode="bookmarks"/>
         | 
| 5091 5408 | 
             
            		<xsl:text> </xsl:text>
         | 
| 5092 | 
            -
            	</xsl:template><xsl:template match="*[local-name() = 'name']/text()" mode="contents" priority="2">
         | 
| 5409 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']/text()" mode="contents" priority="2">
         | 
| 5093 5410 | 
             
            		<xsl:value-of select="."/>
         | 
| 5094 | 
            -
            	</xsl:template><xsl:template match="*[local-name() = 'name']/text()" mode="bookmarks" priority="2">
         | 
| 5411 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'figure' or local-name() = 'table' or local-name() = 'permission' or local-name() = 'recommendation' or local-name() = 'requirement']/*[local-name() = 'name']/text()" mode="bookmarks" priority="2">
         | 
| 5095 5412 | 
             
            		<xsl:value-of select="."/>
         | 
| 5096 5413 | 
             
            	</xsl:template><xsl:template match="node()" mode="contents">
         | 
| 5097 5414 | 
             
            		<xsl:apply-templates mode="contents"/>
         | 
| 5098 5415 | 
             
            	</xsl:template><xsl:template match="node()" mode="bookmarks">
         | 
| 5099 5416 | 
             
            		<xsl:apply-templates mode="bookmarks"/>
         | 
| 5100 | 
            -
            	</xsl:template><xsl:template match="*[local-name() = 'stem']" mode="contents">
         | 
| 5417 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'title' or local-name() = 'name']//*[local-name() = 'stem']" mode="contents">
         | 
| 5101 5418 | 
             
            		<xsl:apply-templates select="."/>
         | 
| 5102 5419 | 
             
            	</xsl:template><xsl:template match="*[local-name() = 'references'][@hidden='true']" mode="contents" priority="3"/><xsl:template match="*[local-name() = 'stem']" mode="bookmarks">
         | 
| 5103 5420 | 
             
            		<xsl:apply-templates mode="bookmarks"/>
         | 
| @@ -5296,6 +5613,8 @@ | |
| 5296 5613 | 
             
            				</fo:list-item-body>
         | 
| 5297 5614 | 
             
            			</fo:list-item>
         | 
| 5298 5615 | 
             
            		</fo:list-block>
         | 
| 5616 | 
            +
            	</xsl:template><xsl:template name="extractSection">
         | 
| 5617 | 
            +
            		<xsl:value-of select="*[local-name() = 'tab'][1]/preceding-sibling::node()"/>
         | 
| 5299 5618 | 
             
            	</xsl:template><xsl:template name="extractTitle">
         | 
| 5300 5619 | 
             
            		<xsl:choose>
         | 
| 5301 5620 | 
             
            				<xsl:when test="*[local-name() = 'tab']">
         | 
| @@ -5322,6 +5641,7 @@ | |
| 5322 5641 | 
             
            	</xsl:template><xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
         | 
| 5323 5642 |  | 
| 5324 5643 | 
             
            		<fo:block-container margin-left="0mm">
         | 
| 5644 | 
            +
            			<xsl:copy-of select="@id"/>
         | 
| 5325 5645 | 
             
            			<xsl:if test="parent::*[local-name() = 'note']">
         | 
| 5326 5646 | 
             
            				<xsl:attribute name="margin-left">
         | 
| 5327 5647 | 
             
            					<xsl:choose>
         | 
| @@ -5343,6 +5663,7 @@ | |
| 5343 5663 | 
             
            						9
         | 
| 5344 5664 |  | 
| 5345 5665 |  | 
| 5666 | 
            +
            						
         | 
| 5346 5667 |  | 
| 5347 5668 |  | 
| 5348 5669 |  | 
| @@ -5598,6 +5919,7 @@ | |
| 5598 5919 | 
             
            	</xsl:template><xsl:template match="*[local-name() = 'example']">
         | 
| 5599 5920 | 
             
            		<fo:block id="{@id}" xsl:use-attribute-sets="example-style">
         | 
| 5600 5921 |  | 
| 5922 | 
            +
            			
         | 
| 5601 5923 | 
             
            			<xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
         | 
| 5602 5924 |  | 
| 5603 5925 | 
             
            			<xsl:variable name="element">
         | 
| @@ -5625,6 +5947,7 @@ | |
| 5625 5947 | 
             
            		<xsl:variable name="element">
         | 
| 5626 5948 |  | 
| 5627 5949 | 
             
            			inline
         | 
| 5950 | 
            +
            			<xsl:if test="following-sibling::*[1][local-name() = 'table']">block</xsl:if> 
         | 
| 5628 5951 | 
             
            		</xsl:variable>		
         | 
| 5629 5952 | 
             
            		<xsl:choose>
         | 
| 5630 5953 | 
             
            			<xsl:when test="ancestor::*[local-name() = 'appendix']">
         | 
| @@ -5632,7 +5955,7 @@ | |
| 5632 5955 | 
             
            					<xsl:apply-templates/>
         | 
| 5633 5956 | 
             
            				</fo:inline>
         | 
| 5634 5957 | 
             
            			</xsl:when>
         | 
| 5635 | 
            -
            			<xsl:when test="normalize-space($element)  | 
| 5958 | 
            +
            			<xsl:when test="contains(normalize-space($element), 'block')">
         | 
| 5636 5959 | 
             
            				<fo:block xsl:use-attribute-sets="example-name-style">
         | 
| 5637 5960 | 
             
            					<xsl:apply-templates/>
         | 
| 5638 5961 | 
             
            				</fo:block>
         | 
| @@ -5669,7 +5992,7 @@ | |
| 5669 5992 | 
             
            				</fo:inline>
         | 
| 5670 5993 | 
             
            			</xsl:otherwise>
         | 
| 5671 5994 | 
             
            		</xsl:choose>	
         | 
| 5672 | 
            -
            	</xsl:template><xsl:template match="*[local-name() = 'termsource']">
         | 
| 5995 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'termsource']" name="termsource">
         | 
| 5673 5996 | 
             
            		<fo:block xsl:use-attribute-sets="termsource-style">
         | 
| 5674 5997 | 
             
            			<!-- Example: [SOURCE: ISO 5127:2017, 3.1.6.02] -->			
         | 
| 5675 5998 | 
             
            			<xsl:variable name="termsource_text">
         | 
| @@ -5678,13 +6001,15 @@ | |
| 5678 6001 |  | 
| 5679 6002 | 
             
            			<xsl:choose>
         | 
| 5680 6003 | 
             
            				<xsl:when test="starts-with(normalize-space($termsource_text), '[')">
         | 
| 5681 | 
            -
            					<xsl:apply-templates/>
         | 
| 6004 | 
            +
            					<!-- <xsl:apply-templates /> -->
         | 
| 6005 | 
            +
            					<xsl:copy-of select="$termsource_text"/>
         | 
| 5682 6006 | 
             
            				</xsl:when>
         | 
| 5683 6007 | 
             
            				<xsl:otherwise>					
         | 
| 5684 6008 |  | 
| 5685 6009 | 
             
            						<xsl:text>[</xsl:text>
         | 
| 5686 6010 |  | 
| 5687 | 
            -
            					<xsl:apply-templates/> | 
| 6011 | 
            +
            					<!-- <xsl:apply-templates />					 -->
         | 
| 6012 | 
            +
            					<xsl:copy-of select="$termsource_text"/>
         | 
| 5688 6013 |  | 
| 5689 6014 | 
             
            						<xsl:text>]</xsl:text>
         | 
| 5690 6015 |  | 
| @@ -5695,20 +6020,25 @@ | |
| 5695 6020 | 
             
            		<xsl:if test="normalize-space() != ''">
         | 
| 5696 6021 | 
             
            			<xsl:value-of select="."/>
         | 
| 5697 6022 | 
             
            		</xsl:if>
         | 
| 5698 | 
            -
            	</xsl:template><xsl: | 
| 6023 | 
            +
            	</xsl:template><xsl:variable name="localized.source">
         | 
| 6024 | 
            +
            		<xsl:call-template name="getLocalizedString">
         | 
| 6025 | 
            +
            				<xsl:with-param name="key">source</xsl:with-param>
         | 
| 6026 | 
            +
            			</xsl:call-template>
         | 
| 6027 | 
            +
            	</xsl:variable><xsl:template match="*[local-name() = 'origin']">
         | 
| 5699 6028 | 
             
            		<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
         | 
| 6029 | 
            +
            			<xsl:if test="normalize-space(@citeas) = ''">
         | 
| 6030 | 
            +
            				<xsl:attribute name="fox:alt-text"><xsl:value-of select="@bibitemid"/></xsl:attribute>
         | 
| 6031 | 
            +
            			</xsl:if>
         | 
| 5700 6032 |  | 
| 5701 6033 | 
             
            				<fo:inline>
         | 
| 5702 6034 |  | 
| 5703 6035 |  | 
| 6036 | 
            +
            						<xsl:value-of select="$localized.source"/>
         | 
| 6037 | 
            +
            						<xsl:text>: </xsl:text>
         | 
| 5704 6038 |  | 
| 5705 | 
            -
            						<xsl:call-template name="getLocalizedString">
         | 
| 5706 | 
            -
            							<xsl:with-param name="key">source</xsl:with-param>
         | 
| 5707 | 
            -
            						</xsl:call-template>
         | 
| 5708 6039 |  | 
| 5709 6040 |  | 
| 5710 6041 |  | 
| 5711 | 
            -
            					<xsl:text>: </xsl:text>
         | 
| 5712 6042 | 
             
            				</fo:inline>
         | 
| 5713 6043 |  | 
| 5714 6044 | 
             
            			<fo:inline xsl:use-attribute-sets="origin-style">
         | 
| @@ -5814,6 +6144,7 @@ | |
| 5814 6144 |  | 
| 5815 6145 |  | 
| 5816 6146 |  | 
| 6147 | 
            +
            			
         | 
| 5817 6148 | 
             
            				<xsl:choose>
         | 
| 5818 6149 | 
             
            					<xsl:when test="$depth = 2">3</xsl:when>
         | 
| 5819 6150 | 
             
            					<xsl:otherwise>4</xsl:otherwise>
         | 
| @@ -5856,7 +6187,8 @@ | |
| 5856 6187 | 
             
            				</fo:inline>
         | 
| 5857 6188 | 
             
            			</xsl:when>
         | 
| 5858 6189 | 
             
            			<xsl:otherwise>
         | 
| 5859 | 
            -
            				< | 
| 6190 | 
            +
            				<xsl:variable name="direction"><xsl:if test="$lang = 'ar'"><xsl:value-of select="$RLM"/></xsl:if></xsl:variable>
         | 
| 6191 | 
            +
            				<fo:inline padding-right="{$padding-right}mm"><xsl:value-of select="$direction"/></fo:inline>
         | 
| 5860 6192 | 
             
            			</xsl:otherwise>
         | 
| 5861 6193 | 
             
            		</xsl:choose>
         | 
| 5862 6194 |  | 
| @@ -5915,7 +6247,6 @@ | |
| 5915 6247 |  | 
| 5916 6248 |  | 
| 5917 6249 |  | 
| 5918 | 
            -
            			
         | 
| 5919 6250 | 
             
            			<xsl:apply-templates/>
         | 
| 5920 6251 | 
             
            		</fo:block>
         | 
| 5921 6252 |  | 
| @@ -5958,7 +6289,7 @@ | |
| 5958 6289 | 
             
            		<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
         | 
| 5959 6290 | 
             
            	</xsl:template><xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
         | 
| 5960 6291 | 
             
            		<xsl:choose>
         | 
| 5961 | 
            -
            			<xsl:when test="parent::*[local-name() = 'note']">
         | 
| 6292 | 
            +
            			<xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
         | 
| 5962 6293 | 
             
            				<fo:block-container>
         | 
| 5963 6294 | 
             
            					<xsl:attribute name="margin-left">
         | 
| 5964 6295 | 
             
            						<xsl:choose>
         | 
| @@ -5968,6 +6299,7 @@ | |
| 5968 6299 | 
             
            					</xsl:attribute>
         | 
| 5969 6300 |  | 
| 5970 6301 |  | 
| 6302 | 
            +
            					
         | 
| 5971 6303 | 
             
            					<fo:block-container margin-left="0mm">
         | 
| 5972 6304 | 
             
            						<fo:block>
         | 
| 5973 6305 | 
             
            							<xsl:apply-templates select="." mode="ul_ol"/>
         | 
| @@ -6169,6 +6501,36 @@ | |
| 6169 6501 |  | 
| 6170 6502 |  | 
| 6171 6503 |  | 
| 6504 | 
            +
            		
         | 
| 6505 | 
            +
            		
         | 
| 6506 | 
            +
            			<!-- start ISO bibtem processing -->
         | 
| 6507 | 
            +
            			<xsl:variable name="docidentifier">
         | 
| 6508 | 
            +
            				<xsl:if test="*[local-name() = 'docidentifier']">
         | 
| 6509 | 
            +
            					<xsl:choose>
         | 
| 6510 | 
            +
            						<xsl:when test="*[local-name() = 'docidentifier']/@type = 'metanorma'"/>
         | 
| 6511 | 
            +
            						<xsl:otherwise><xsl:value-of select="*[local-name() = 'docidentifier']"/></xsl:otherwise>
         | 
| 6512 | 
            +
            					</xsl:choose>
         | 
| 6513 | 
            +
            				</xsl:if>
         | 
| 6514 | 
            +
            			</xsl:variable>
         | 
| 6515 | 
            +
            			<xsl:value-of select="$docidentifier"/>
         | 
| 6516 | 
            +
            			<xsl:apply-templates select="*[local-name() = 'note']"/>			
         | 
| 6517 | 
            +
            			<xsl:if test="normalize-space($docidentifier) != ''">, </xsl:if>
         | 
| 6518 | 
            +
            			<xsl:choose>
         | 
| 6519 | 
            +
            				<xsl:when test="*[local-name() = 'title'][@type = 'main' and @language = $lang]">
         | 
| 6520 | 
            +
            					<xsl:apply-templates select="*[local-name() = 'title'][@type = 'main' and @language = $lang]"/>
         | 
| 6521 | 
            +
            				</xsl:when>
         | 
| 6522 | 
            +
            				<xsl:when test="*[local-name() = 'title'][@type = 'main' and @language = 'en']">
         | 
| 6523 | 
            +
            					<xsl:apply-templates select="*[local-name() = 'title'][@type = 'main' and @language = 'en']"/>
         | 
| 6524 | 
            +
            				</xsl:when>
         | 
| 6525 | 
            +
            				<xsl:otherwise>
         | 
| 6526 | 
            +
            					<xsl:apply-templates select="*[local-name() = 'title']"/>
         | 
| 6527 | 
            +
            				</xsl:otherwise>
         | 
| 6528 | 
            +
            			</xsl:choose>
         | 
| 6529 | 
            +
            			<xsl:apply-templates select="*[local-name() = 'formattedref']"/>
         | 
| 6530 | 
            +
            			<!-- end ISO bibitem processing -->
         | 
| 6531 | 
            +
            		
         | 
| 6532 | 
            +
            		
         | 
| 6533 | 
            +
            		
         | 
| 6172 6534 | 
             
            	</xsl:template><xsl:template name="processBibitemDocId">
         | 
| 6173 6535 | 
             
            		<xsl:variable name="_doc_ident" select="*[local-name() = 'docidentifier'][not(@type = 'DOI' or @type = 'metanorma' or @type = 'ISSN' or @type = 'ISBN' or @type = 'rfc-anchor')]"/>
         | 
| 6174 6536 | 
             
            		<xsl:choose>
         | 
| @@ -6225,6 +6587,70 @@ | |
| 6225 6587 | 
             
            		<xsl:value-of select="substring(.,1,1)"/>
         | 
| 6226 6588 | 
             
            	</xsl:template><xsl:template match="*[local-name() = 'title']" mode="title">
         | 
| 6227 6589 | 
             
            		<fo:inline><xsl:apply-templates/></fo:inline>
         | 
| 6590 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'form']">
         | 
| 6591 | 
            +
            		<fo:block>
         | 
| 6592 | 
            +
            			<xsl:apply-templates/>
         | 
| 6593 | 
            +
            		</fo:block>
         | 
| 6594 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'form']//*[local-name() = 'label']">
         | 
| 6595 | 
            +
            		<fo:inline><xsl:apply-templates/></fo:inline>
         | 
| 6596 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'form']//*[local-name() = 'input'][@type = 'text' or @type = 'date' or @type = 'file' or @type = 'password']">
         | 
| 6597 | 
            +
            		<fo:inline>
         | 
| 6598 | 
            +
            			<xsl:call-template name="text_input"/>
         | 
| 6599 | 
            +
            		</fo:inline>
         | 
| 6600 | 
            +
            	</xsl:template><xsl:template name="text_input">
         | 
| 6601 | 
            +
            		<xsl:variable name="count">
         | 
| 6602 | 
            +
            			<xsl:choose>
         | 
| 6603 | 
            +
            				<xsl:when test="normalize-space(@maxlength) != ''"><xsl:value-of select="@maxlength"/></xsl:when>
         | 
| 6604 | 
            +
            				<xsl:when test="normalize-space(@size) != ''"><xsl:value-of select="@size"/></xsl:when>
         | 
| 6605 | 
            +
            				<xsl:otherwise>10</xsl:otherwise>
         | 
| 6606 | 
            +
            			</xsl:choose>
         | 
| 6607 | 
            +
            		</xsl:variable>
         | 
| 6608 | 
            +
            		<xsl:call-template name="repeat">
         | 
| 6609 | 
            +
            			<xsl:with-param name="char" select="'_'"/>
         | 
| 6610 | 
            +
            			<xsl:with-param name="count" select="$count"/>
         | 
| 6611 | 
            +
            		</xsl:call-template>
         | 
| 6612 | 
            +
            		<xsl:text> </xsl:text>
         | 
| 6613 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'form']//*[local-name() = 'input'][@type = 'button']">
         | 
| 6614 | 
            +
            		<xsl:variable name="caption">
         | 
| 6615 | 
            +
            			<xsl:choose>
         | 
| 6616 | 
            +
            				<xsl:when test="normalize-space(@value) != ''"><xsl:value-of select="@value"/></xsl:when>
         | 
| 6617 | 
            +
            				<xsl:otherwise>BUTTON</xsl:otherwise>
         | 
| 6618 | 
            +
            			</xsl:choose>
         | 
| 6619 | 
            +
            		</xsl:variable>
         | 
| 6620 | 
            +
            		<fo:inline>[<xsl:value-of select="$caption"/>]</fo:inline>
         | 
| 6621 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'form']//*[local-name() = 'input'][@type = 'checkbox']">
         | 
| 6622 | 
            +
            		<fo:inline padding-right="1mm">
         | 
| 6623 | 
            +
            			<fo:instream-foreign-object fox:alt-text="Box" baseline-shift="-10%">
         | 
| 6624 | 
            +
            				<xsl:attribute name="height">3.5mm</xsl:attribute>
         | 
| 6625 | 
            +
            				<xsl:attribute name="content-width">100%</xsl:attribute>
         | 
| 6626 | 
            +
            				<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
         | 
| 6627 | 
            +
            				<xsl:attribute name="scaling">uniform</xsl:attribute>
         | 
| 6628 | 
            +
            				<svg xmlns="http://www.w3.org/2000/svg" width="80" height="80">
         | 
| 6629 | 
            +
            					<polyline points="0,0 80,0 80,80 0,80 0,0" stroke="black" stroke-width="5" fill="white"/>
         | 
| 6630 | 
            +
            				</svg>
         | 
| 6631 | 
            +
            			</fo:instream-foreign-object>
         | 
| 6632 | 
            +
            		</fo:inline>
         | 
| 6633 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'form']//*[local-name() = 'input'][@type = 'radio']">
         | 
| 6634 | 
            +
            		<fo:inline padding-right="1mm">
         | 
| 6635 | 
            +
            			<fo:instream-foreign-object fox:alt-text="Box" baseline-shift="-10%">
         | 
| 6636 | 
            +
            				<xsl:attribute name="height">3.5mm</xsl:attribute>
         | 
| 6637 | 
            +
            				<xsl:attribute name="content-width">100%</xsl:attribute>
         | 
| 6638 | 
            +
            				<xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
         | 
| 6639 | 
            +
            				<xsl:attribute name="scaling">uniform</xsl:attribute>
         | 
| 6640 | 
            +
            				<svg xmlns="http://www.w3.org/2000/svg" width="80" height="80">
         | 
| 6641 | 
            +
            					<circle cx="40" cy="40" r="30" stroke="black" stroke-width="5" fill="white"/>
         | 
| 6642 | 
            +
            					<circle cx="40" cy="40" r="15" stroke="black" stroke-width="5" fill="white"/>
         | 
| 6643 | 
            +
            				</svg>
         | 
| 6644 | 
            +
            			</fo:instream-foreign-object>
         | 
| 6645 | 
            +
            		</fo:inline>
         | 
| 6646 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'form']//*[local-name() = 'select']">
         | 
| 6647 | 
            +
            		<fo:inline>
         | 
| 6648 | 
            +
            			<xsl:call-template name="text_input"/>
         | 
| 6649 | 
            +
            		</fo:inline>
         | 
| 6650 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'form']//*[local-name() = 'textarea']">
         | 
| 6651 | 
            +
            		<fo:block-container border="1pt solid black" width="50%">
         | 
| 6652 | 
            +
            			<fo:block> </fo:block>
         | 
| 6653 | 
            +
            		</fo:block-container>
         | 
| 6228 6654 | 
             
            	</xsl:template><xsl:template name="convertDate">
         | 
| 6229 6655 | 
             
            		<xsl:param name="date"/>
         | 
| 6230 6656 | 
             
            		<xsl:param name="format" select="'short'"/>
         | 
| @@ -6432,6 +6858,9 @@ | |
| 6432 6858 | 
             
            						<xsl:when test="parent::*[local-name() = 'preface']">
         | 
| 6433 6859 | 
             
            							<xsl:value-of select="$level_total - 1"/>
         | 
| 6434 6860 | 
             
            						</xsl:when>
         | 
| 6861 | 
            +
            						<xsl:when test="ancestor::*[local-name() = 'preface'] and not(ancestor::*[local-name() = 'foreword']) and not(ancestor::*[local-name() = 'introduction'])"> <!-- for preface/clause -->
         | 
| 6862 | 
            +
            							<xsl:value-of select="$level_total - 1"/>
         | 
| 6863 | 
            +
            						</xsl:when>
         | 
| 6435 6864 | 
             
            						<xsl:when test="ancestor::*[local-name() = 'preface']">
         | 
| 6436 6865 | 
             
            							<xsl:value-of select="$level_total - 2"/>
         | 
| 6437 6866 | 
             
            						</xsl:when>
         | 
| @@ -6487,6 +6916,7 @@ | |
| 6487 6916 | 
             
            		<xsl:variable name="documentNS" select="namespace-uri(/*)"/>
         | 
| 6488 6917 | 
             
            		<xsl:variable name="XSLNS">			
         | 
| 6489 6918 |  | 
| 6919 | 
            +
            			
         | 
| 6490 6920 | 
             
            				<xsl:value-of select="document('')//*/namespace::iso"/>
         | 
| 6491 6921 |  | 
| 6492 6922 |  | 
| @@ -6556,17 +6986,69 @@ | |
| 6556 6986 | 
             
            			</xsl:call-template>
         | 
| 6557 6987 | 
             
            		</xsl:if>
         | 
| 6558 6988 | 
             
            	</xsl:template><xsl:template name="getLocalizedString">
         | 
| 6559 | 
            -
            		<xsl:param name="key"/> | 
| 6989 | 
            +
            		<xsl:param name="key"/>	
         | 
| 6560 6990 |  | 
| 6561 6991 | 
             
            		<xsl:variable name="curr_lang">
         | 
| 6562 6992 | 
             
            			<xsl:call-template name="getLang"/>
         | 
| 6563 6993 | 
             
            		</xsl:variable>
         | 
| 6564 6994 |  | 
| 6995 | 
            +
            		<xsl:variable name="data_value" select="normalize-space(xalan:nodeset($bibdata)//*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang])"/>
         | 
| 6996 | 
            +
            		
         | 
| 6565 6997 | 
             
            		<xsl:choose>
         | 
| 6998 | 
            +
            			<xsl:when test="$data_value != ''">
         | 
| 6999 | 
            +
            				<xsl:value-of select="$data_value"/>
         | 
| 7000 | 
            +
            			</xsl:when>
         | 
| 6566 7001 | 
             
            			<xsl:when test="/*/*[local-name() = 'localized-strings']/*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]">
         | 
| 6567 7002 | 
             
            				<xsl:value-of select="/*/*[local-name() = 'localized-strings']/*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
         | 
| 6568 7003 | 
             
            			</xsl:when>
         | 
| 6569 | 
            -
            			<xsl:otherwise | 
| 7004 | 
            +
            			<xsl:otherwise>
         | 
| 7005 | 
            +
            				<xsl:variable name="key_">
         | 
| 7006 | 
            +
            					<xsl:call-template name="capitalize">
         | 
| 7007 | 
            +
            						<xsl:with-param name="str" select="translate($key, '_', ' ')"/>
         | 
| 7008 | 
            +
            					</xsl:call-template>
         | 
| 7009 | 
            +
            				</xsl:variable>
         | 
| 7010 | 
            +
            				<xsl:value-of select="$key_"/>
         | 
| 7011 | 
            +
            			</xsl:otherwise>
         | 
| 6570 7012 | 
             
            		</xsl:choose>
         | 
| 6571 7013 |  | 
| 7014 | 
            +
            	</xsl:template><xsl:template name="setTrackChangesStyles">
         | 
| 7015 | 
            +
            		<xsl:param name="isAdded"/>
         | 
| 7016 | 
            +
            		<xsl:param name="isDeleted"/>
         | 
| 7017 | 
            +
            		<xsl:choose>
         | 
| 7018 | 
            +
            			<xsl:when test="local-name() = 'math'">
         | 
| 7019 | 
            +
            				<xsl:if test="$isAdded = 'true'">
         | 
| 7020 | 
            +
            					<xsl:attribute name="background-color"><xsl:value-of select="$color-added-text"/></xsl:attribute>
         | 
| 7021 | 
            +
            				</xsl:if>
         | 
| 7022 | 
            +
            				<xsl:if test="$isDeleted = 'true'">
         | 
| 7023 | 
            +
            					<xsl:attribute name="background-color"><xsl:value-of select="$color-deleted-text"/></xsl:attribute>
         | 
| 7024 | 
            +
            				</xsl:if>
         | 
| 7025 | 
            +
            			</xsl:when>
         | 
| 7026 | 
            +
            			<xsl:otherwise>
         | 
| 7027 | 
            +
            				<xsl:if test="$isAdded = 'true'">
         | 
| 7028 | 
            +
            					<xsl:attribute name="border"><xsl:value-of select="$border-block-added"/></xsl:attribute>
         | 
| 7029 | 
            +
            					<xsl:attribute name="padding">2mm</xsl:attribute>
         | 
| 7030 | 
            +
            				</xsl:if>
         | 
| 7031 | 
            +
            				<xsl:if test="$isDeleted = 'true'">
         | 
| 7032 | 
            +
            					<xsl:attribute name="border"><xsl:value-of select="$border-block-deleted"/></xsl:attribute>
         | 
| 7033 | 
            +
            					<xsl:if test="local-name() = 'table'">
         | 
| 7034 | 
            +
            						<xsl:attribute name="background-color">rgb(255, 185, 185)</xsl:attribute>
         | 
| 7035 | 
            +
            					</xsl:if>
         | 
| 7036 | 
            +
            					<!-- <xsl:attribute name="color"><xsl:value-of select="$color-deleted-text"/></xsl:attribute> -->
         | 
| 7037 | 
            +
            					<xsl:attribute name="padding">2mm</xsl:attribute>
         | 
| 7038 | 
            +
            				</xsl:if>
         | 
| 7039 | 
            +
            			</xsl:otherwise>
         | 
| 7040 | 
            +
            		</xsl:choose>
         | 
| 7041 | 
            +
            	</xsl:template><xsl:variable name="LRM" select="''"/><xsl:variable name="RLM" select="''"/><xsl:template name="setWritingMode">
         | 
| 7042 | 
            +
            		<xsl:if test="$lang = 'ar'">
         | 
| 7043 | 
            +
            			<xsl:attribute name="writing-mode">rl-tb</xsl:attribute>
         | 
| 7044 | 
            +
            		</xsl:if>
         | 
| 7045 | 
            +
            	</xsl:template><xsl:template name="setAlignment">
         | 
| 7046 | 
            +
            		<xsl:param name="align" select="normalize-space(@align)"/>
         | 
| 7047 | 
            +
            		<xsl:choose>
         | 
| 7048 | 
            +
            			<xsl:when test="$lang = 'ar' and $align = 'left'">start</xsl:when>
         | 
| 7049 | 
            +
            			<xsl:when test="$lang = 'ar' and $align = 'right'">end</xsl:when>
         | 
| 7050 | 
            +
            			<xsl:when test="$align != ''">
         | 
| 7051 | 
            +
            				<xsl:value-of select="$align"/>
         | 
| 7052 | 
            +
            			</xsl:when>
         | 
| 7053 | 
            +
            		</xsl:choose>
         | 
| 6572 7054 | 
             
            	</xsl:template></xsl:stylesheet>
         |