metanorma-bipm 2.1.12 → 2.1.13

Sign up to get free protection for your applications and to get access to all the features.
@@ -3798,6 +3798,8 @@
3798
3798
  </xsl:if>
3799
3799
  </xsl:template>
3800
3800
 
3801
+ <xsl:strip-space elements="bipm:xref"/>
3802
+
3801
3803
  <!-- external parameters -->
3802
3804
 
3803
3805
  <xsl:param name="svg_images"/> <!-- svg images array -->
@@ -5193,17 +5195,22 @@
5193
5195
  </xsl:for-each>
5194
5196
  </xsl:template>
5195
5197
 
5198
+ <xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
5196
5199
  <xsl:variable name="tag_fo_inline_keep-together_within-line_open">###fo:inline keep-together_within-line###</xsl:variable>
5197
5200
  <xsl:variable name="tag_fo_inline_keep-together_within-line_close">###/fo:inline keep-together_within-line###</xsl:variable>
5198
5201
  <xsl:template match="text()" name="text">
5199
5202
 
5200
- <xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
5201
- <xsl:variable name="text" select="java:replaceAll(java:java.lang.String.new(.),$regex_standard_reference,concat($tag_fo_inline_keep-together_within-line_open,'$1',$tag_fo_inline_keep-together_within-line_close))"/>
5202
- <xsl:call-template name="replace_fo_inline_tags">
5203
- <xsl:with-param name="tag_open" select="$tag_fo_inline_keep-together_within-line_open"/>
5204
- <xsl:with-param name="tag_close" select="$tag_fo_inline_keep-together_within-line_close"/>
5205
- <xsl:with-param name="text" select="$text"/>
5206
- </xsl:call-template>
5203
+ <xsl:choose>
5204
+ <xsl:when test="ancestor::*[local-name() = 'table']"><xsl:value-of select="."/></xsl:when>
5205
+ <xsl:otherwise>
5206
+ <xsl:variable name="text" select="java:replaceAll(java:java.lang.String.new(.),$regex_standard_reference,concat($tag_fo_inline_keep-together_within-line_open,'$1',$tag_fo_inline_keep-together_within-line_close))"/>
5207
+ <xsl:call-template name="replace_fo_inline_tags">
5208
+ <xsl:with-param name="tag_open" select="$tag_fo_inline_keep-together_within-line_open"/>
5209
+ <xsl:with-param name="tag_close" select="$tag_fo_inline_keep-together_within-line_close"/>
5210
+ <xsl:with-param name="text" select="$text"/>
5211
+ </xsl:call-template>
5212
+ </xsl:otherwise>
5213
+ </xsl:choose>
5207
5214
 
5208
5215
  </xsl:template>
5209
5216
 
@@ -6272,7 +6279,7 @@
6272
6279
  <xsl:template match="*[local-name()='tr']">
6273
6280
  <fo:table-row xsl:use-attribute-sets="table-body-row-style">
6274
6281
 
6275
- <xsl:if test="*[local-name() = 'th']">
6282
+ <xsl:if test="count(*) = count(*[local-name() = 'th'])"> <!-- row contains 'th' only -->
6276
6283
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
6277
6284
  </xsl:if>
6278
6285
 
@@ -7291,7 +7298,8 @@
7291
7298
  <xsl:copy-of select="node()"/>
7292
7299
  </td>
7293
7300
  <td>
7294
- <xsl:copy-of select="following-sibling::*[local-name()='dd'][1]/node()[not(local-name() = 'dl')]"/>
7301
+ <!-- <xsl:copy-of select="following-sibling::*[local-name()='dd'][1]/node()[not(local-name() = 'dl')]"/> -->
7302
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]/node()[not(local-name() = 'dl')]" mode="dl_if"/>
7295
7303
  <!-- get paragraphs from nested 'dl' -->
7296
7304
  <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]/*[local-name() = 'dl']" mode="dl_if_nested"/>
7297
7305
  </td>
@@ -7299,6 +7307,53 @@
7299
7307
  </xsl:template>
7300
7308
  <xsl:template match="*[local-name()='dd']" mode="dl_if"/>
7301
7309
 
7310
+ <xsl:template match="*" mode="dl_if">
7311
+ <xsl:copy-of select="."/>
7312
+ </xsl:template>
7313
+
7314
+ <xsl:template match="*[local-name() = 'p']" mode="dl_if">
7315
+ <xsl:param name="indent"/>
7316
+ <p>
7317
+ <xsl:copy-of select="@*"/>
7318
+ <xsl:value-of select="$indent"/>
7319
+ <xsl:copy-of select="node()"/>
7320
+ </p>
7321
+
7322
+ </xsl:template>
7323
+
7324
+ <xsl:template match="*[local-name() = 'ul' or local-name() = 'ol']" mode="dl_if">
7325
+ <xsl:variable name="list_rendered_">
7326
+ <xsl:apply-templates select="."/>
7327
+ </xsl:variable>
7328
+ <xsl:variable name="list_rendered" select="xalan:nodeset($list_rendered_)"/>
7329
+
7330
+ <xsl:variable name="indent">
7331
+ <xsl:for-each select="($list_rendered//fo:block[not(.//fo:block)])[1]">
7332
+ <xsl:apply-templates select="ancestor::*[@provisional-distance-between-starts]/@provisional-distance-between-starts" mode="dl_if"/>
7333
+ </xsl:for-each>
7334
+ </xsl:variable>
7335
+
7336
+ <xsl:apply-templates mode="dl_if">
7337
+ <xsl:with-param name="indent" select="$indent"/>
7338
+ </xsl:apply-templates>
7339
+ </xsl:template>
7340
+
7341
+ <xsl:template match="*[local-name() = 'li']" mode="dl_if">
7342
+ <xsl:param name="indent"/>
7343
+ <xsl:apply-templates mode="dl_if">
7344
+ <xsl:with-param name="indent" select="$indent"/>
7345
+ </xsl:apply-templates>
7346
+ </xsl:template>
7347
+
7348
+ <xsl:template match="@provisional-distance-between-starts" mode="dl_if">
7349
+ <xsl:variable name="value" select="round(substring-before(.,'mm'))"/>
7350
+ <!-- emulate left indent for list item -->
7351
+ <xsl:call-template name="repeat">
7352
+ <xsl:with-param name="char" select="'x'"/>
7353
+ <xsl:with-param name="count" select="$value"/>
7354
+ </xsl:call-template>
7355
+ </xsl:template>
7356
+
7302
7357
  <xsl:template match="*[local-name()='dl']" mode="dl_if_nested">
7303
7358
  <xsl:for-each select="*[local-name() = 'dt']">
7304
7359
  <p>
@@ -7692,6 +7747,7 @@
7692
7747
  </word>
7693
7748
  <xsl:call-template name="tokenize_with_tags">
7694
7749
  <xsl:with-param name="text" select="substring-after($text, $separator)"/>
7750
+ <xsl:with-param name="tags" select="$tags"/>
7695
7751
  </xsl:call-template>
7696
7752
  </xsl:otherwise>
7697
7753
  </xsl:choose>
@@ -7731,8 +7787,18 @@
7731
7787
 
7732
7788
  <xsl:template name="add-zero-spaces-java">
7733
7789
  <xsl:param name="text" select="."/>
7734
- <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
7735
- <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| )','$1​')"/>
7790
+ <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space, arrow right -->
7791
+ <xsl:variable name="text1" select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| |→)','$1​')"/>
7792
+ <!-- add zero-width space (#x200B) after characters: 'great than' -->
7793
+ <xsl:variable name="text2" select="java:replaceAll(java:java.lang.String.new($text1), '(\u003e)(?!\u003e)', '$1​')"/><!-- negative lookahead: 'great than' not followed by 'great than' -->
7794
+ <!-- add zero-width space (#x200B) before characters: 'less than' -->
7795
+ <xsl:variable name="text3" select="java:replaceAll(java:java.lang.String.new($text2), '(?&lt;!\u003c)(\u003c)', '​$1')"/> <!-- (?<!\u003c)(\u003c) --> <!-- negative lookbehind: 'less than' not preceeded by 'less than' -->
7796
+ <!-- add zero-width space (#x200B) before character: { -->
7797
+ <xsl:variable name="text4" select="java:replaceAll(java:java.lang.String.new($text3), '(?&lt;!\W)(\{)', '​$1')"/> <!-- negative lookbehind: '{' not preceeded by 'punctuation char' -->
7798
+ <!-- add zero-width space (#x200B) after character: , -->
7799
+ <xsl:variable name="text5" select="java:replaceAll(java:java.lang.String.new($text4), '(\,)(?!\d)', '$1​')"/> <!-- negative lookahead: ',' not followed by digit -->
7800
+
7801
+ <xsl:value-of select="$text5"/>
7736
7802
  </xsl:template>
7737
7803
 
7738
7804
  <xsl:template name="add-zero-spaces-link-java">
@@ -7878,7 +7944,7 @@
7878
7944
  </xsl:copy>
7879
7945
  </xsl:template>
7880
7946
 
7881
- <xsl:template match="*[local-name()='th' or local-name() = 'td'][not(*[local-name()='br']) and not(*[local-name()='p'])]" mode="table-without-br">
7947
+ <xsl:template match="*[local-name()='th' or local-name() = 'td'][not(*[local-name()='br']) and not(*[local-name()='p']) and not(*[local-name()='sourcecode'])]" mode="table-without-br">
7882
7948
  <xsl:copy>
7883
7949
  <xsl:copy-of select="@*"/>
7884
7950
  <p>
@@ -7926,6 +7992,28 @@
7926
7992
  </xsl:for-each>
7927
7993
  </xsl:template>
7928
7994
 
7995
+ <xsl:template match="*[local-name()='th' or local-name()='td']/*[local-name() = 'sourcecode']" mode="table-without-br">
7996
+ <xsl:apply-templates mode="table-without-br"/>
7997
+ </xsl:template>
7998
+
7999
+ <xsl:template match="*[local-name()='th' or local-name()='td']/*[local-name() = 'sourcecode']/text()[contains(., '&#13;') or contains(., '&#10;')]" mode="table-without-br">
8000
+
8001
+ <xsl:variable name="sep">###SOURCECODE_NEWLINE###</xsl:variable>
8002
+ <xsl:variable name="sourcecode_text" select="java:replaceAll(java:java.lang.String.new(.),'(&#13;&#10;|&#13;|&#10;)', $sep)"/>
8003
+ <xsl:variable name="items">
8004
+ <xsl:call-template name="split">
8005
+ <xsl:with-param name="pText" select="$sourcecode_text"/>
8006
+ <xsl:with-param name="sep" select="$sep"/>
8007
+ <xsl:with-param name="normalize-space">false</xsl:with-param>
8008
+ </xsl:call-template>
8009
+ </xsl:variable>
8010
+ <xsl:for-each select="xalan:nodeset($items)/*">
8011
+ <p>
8012
+ <sourcecode><xsl:copy-of select="node()"/></sourcecode>
8013
+ </p>
8014
+ </xsl:for-each>
8015
+ </xsl:template>
8016
+
7929
8017
  <!-- remove redundant white spaces -->
7930
8018
  <xsl:template match="text()[not(ancestor::*[local-name() = 'sourcecode'])]" mode="table-without-br">
7931
8019
  <xsl:variable name="text" select="translate(.,'&#9;&#10;&#13;','')"/>
@@ -8236,6 +8324,7 @@
8236
8324
  <xsl:if test="ancestor::*[local-name() = 'sub']"><tag>sub</tag></xsl:if>
8237
8325
  <xsl:if test="ancestor::*[local-name() = 'sup']"><tag>sup</tag></xsl:if>
8238
8326
  <xsl:if test="ancestor::*[local-name() = 'tt']"><tag>tt</tag></xsl:if>
8327
+ <xsl:if test="ancestor::*[local-name() = 'sourcecode']"><tag>sourcecode</tag></xsl:if>
8239
8328
  <xsl:if test="ancestor::*[local-name() = 'keep-together_within-line']"><tag>keep-together_within-line</tag></xsl:if>
8240
8329
  </tags>
8241
8330
  </xsl:template>
@@ -8764,6 +8853,12 @@
8764
8853
 
8765
8854
  <fo:block-container margin-left="0mm">
8766
8855
 
8856
+ <!-- <xsl:if test="$namespace = 'iho'">
8857
+ <xsl:if test="ancestor::iho:td">
8858
+ <xsl:attribute name="font-size">12pt</xsl:attribute>
8859
+ </xsl:if>
8860
+ </xsl:if> -->
8861
+
8767
8862
  <fo:block>
8768
8863
 
8769
8864
  <xsl:if test="@parent-type = 'quote'">
@@ -9942,37 +10037,15 @@
9942
10037
  <!-- =============== -->
9943
10038
  <xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
9944
10039
 
9945
- <fo:block-container xsl:use-attribute-sets="sourcecode-container-style">
9946
-
9947
- <xsl:if test="not(ancestor::*[local-name() = 'li']) or ancestor::*[local-name() = 'example']">
9948
- <xsl:attribute name="margin-left">0mm</xsl:attribute>
9949
- </xsl:if>
9950
-
9951
- <xsl:if test="ancestor::*[local-name() = 'example']">
9952
- <xsl:attribute name="margin-right">0mm</xsl:attribute>
9953
- </xsl:if>
9954
-
9955
- <xsl:copy-of select="@id"/>
9956
-
9957
- <xsl:if test="parent::*[local-name() = 'note']">
9958
- <xsl:attribute name="margin-left">
9959
- <xsl:choose>
9960
- <xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
9961
- <xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
9962
- </xsl:choose>
9963
- </xsl:attribute>
10040
+ <xsl:variable name="sourcecode_attributes">
10041
+ <xsl:element name="sourcecode_attributes" use-attribute-sets="sourcecode-style">
10042
+ <xsl:variable name="_font-size">
9964
10043
 
9965
- </xsl:if>
9966
- <fo:block-container margin-left="0mm">
9967
-
9968
- <fo:block xsl:use-attribute-sets="sourcecode-style">
9969
- <xsl:variable name="_font-size">
9970
-
9971
- <!-- 9 -->
10044
+ <!-- 9 -->
9972
10045
 
9973
- <!-- <xsl:if test="$namespace = 'ieee'">
9974
- <xsl:if test="$current_template = 'standard'">8</xsl:if>
9975
- </xsl:if> -->
10046
+ <!-- <xsl:if test="$namespace = 'ieee'">
10047
+ <xsl:if test="$current_template = 'standard'">8</xsl:if>
10048
+ </xsl:if> -->
9976
10049
 
9977
10050
  </xsl:variable>
9978
10051
 
@@ -9987,14 +10060,60 @@
9987
10060
  </xsl:choose>
9988
10061
  </xsl:attribute>
9989
10062
  </xsl:if>
10063
+ </xsl:element>
10064
+ </xsl:variable>
9990
10065
 
10066
+ <xsl:choose>
10067
+ <xsl:when test="$isGenerateTableIF = 'true' and (ancestor::*[local-name() = 'td'] or ancestor::*[local-name() = 'th'])">
10068
+ <xsl:for-each select="xalan:nodeset($sourcecode_attributes)/sourcecode_attributes/@*">
10069
+ <xsl:attribute name="{local-name()}">
10070
+ <xsl:value-of select="."/>
10071
+ </xsl:attribute>
10072
+ </xsl:for-each>
9991
10073
  <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
9992
- </fo:block>
10074
+ </xsl:when>
9993
10075
 
9994
- <xsl:apply-templates select="*[local-name()='name']"/> <!-- show sourcecode's name AFTER content -->
10076
+ <xsl:otherwise>
10077
+ <fo:block-container xsl:use-attribute-sets="sourcecode-container-style">
9995
10078
 
9996
- </fo:block-container>
9997
- </fo:block-container>
10079
+ <xsl:if test="not(ancestor::*[local-name() = 'li']) or ancestor::*[local-name() = 'example']">
10080
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
10081
+ </xsl:if>
10082
+
10083
+ <xsl:if test="ancestor::*[local-name() = 'example']">
10084
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
10085
+ </xsl:if>
10086
+
10087
+ <xsl:copy-of select="@id"/>
10088
+
10089
+ <xsl:if test="parent::*[local-name() = 'note']">
10090
+ <xsl:attribute name="margin-left">
10091
+ <xsl:choose>
10092
+ <xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
10093
+ <xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
10094
+ </xsl:choose>
10095
+ </xsl:attribute>
10096
+
10097
+ </xsl:if>
10098
+ <fo:block-container margin-left="0mm">
10099
+
10100
+ <fo:block xsl:use-attribute-sets="sourcecode-style">
10101
+
10102
+ <xsl:for-each select="xalan:nodeset($sourcecode_attributes)/sourcecode_attributes/@*">
10103
+ <xsl:attribute name="{local-name()}">
10104
+ <xsl:value-of select="."/>
10105
+ </xsl:attribute>
10106
+ </xsl:for-each>
10107
+
10108
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
10109
+ </fo:block>
10110
+
10111
+ <xsl:apply-templates select="*[local-name()='name']"/> <!-- show sourcecode's name AFTER content -->
10112
+
10113
+ </fo:block-container>
10114
+ </fo:block-container>
10115
+ </xsl:otherwise>
10116
+ </xsl:choose>
9998
10117
  </xsl:template>
9999
10118
 
10000
10119
  <xsl:template match="*[local-name()='sourcecode']/text()" priority="2">
@@ -12223,7 +12342,9 @@
12223
12342
  <!-- ===================================== -->
12224
12343
  <!-- Update xml -->
12225
12344
  <!-- ===================================== -->
12345
+ <!-- =========================================================================== -->
12226
12346
  <!-- STEP1: Re-order elements in 'preface', 'sections' based on @displayorder -->
12347
+ <!-- =========================================================================== -->
12227
12348
  <xsl:template match="@*|node()" mode="update_xml_step1">
12228
12349
  <xsl:copy>
12229
12350
  <xsl:apply-templates select="@*|node()" mode="update_xml_step1"/>
@@ -12315,10 +12436,15 @@
12315
12436
  <xsl:template match="*[local-name() = 'span']" mode="update_xml_step1">
12316
12437
  <xsl:apply-templates mode="update_xml_step1"/>
12317
12438
  </xsl:template>
12318
-
12439
+ <!-- =========================================================================== -->
12319
12440
  <!-- END STEP1: Re-order elements in 'preface', 'sections' based on @displayorder -->
12441
+ <!-- =========================================================================== -->
12320
12442
 
12443
+ <!-- =========================================================================== -->
12321
12444
  <!-- XML UPDATE STEP: enclose standard's name into tag 'keep-together_within-line' -->
12445
+ <!-- keep-together_within-line for: a/b, aaa/b, a/bbb, /b -->
12446
+ <!-- keep-together_within-line for: a.b, aaa.b, a.bbb, .b in table's cell ONLY -->
12447
+ <!-- =========================================================================== -->
12322
12448
  <!-- Example: <keep-together_within-line>ISO 10303-51</keep-together_within-line> -->
12323
12449
  <xsl:template match="@*|node()" mode="update_xml_enclose_keep-together_within-line">
12324
12450
  <xsl:copy>
@@ -12334,10 +12460,15 @@
12334
12460
  <xsl:template match="text()[not(ancestor::*[local-name() = 'bibdata'] or ancestor::*[local-name() = 'link'][not(contains(.,' '))] or ancestor::*[local-name() = 'sourcecode'] or ancestor::*[local-name() = 'math'] or starts-with(., 'http://') or starts-with(., 'https://') or starts-with(., 'www.') )]" name="keep_together_standard_number" mode="update_xml_enclose_keep-together_within-line">
12335
12461
 
12336
12462
  <!-- enclose standard's number into tag 'keep-together_within-line' -->
12337
- <xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
12338
12463
  <xsl:variable name="tag_keep-together_within-line_open">###<xsl:value-of select="$element_name_keep-together_within-line"/>###</xsl:variable>
12339
12464
  <xsl:variable name="tag_keep-together_within-line_close">###/<xsl:value-of select="$element_name_keep-together_within-line"/>###</xsl:variable>
12340
- <xsl:variable name="text_" select="java:replaceAll(java:java.lang.String.new(.),$regex_standard_reference,concat($tag_keep-together_within-line_open,'$1',$tag_keep-together_within-line_close))"/>
12465
+ <xsl:variable name="text__" select="java:replaceAll(java:java.lang.String.new(.), $regex_standard_reference, concat($tag_keep-together_within-line_open,'$1',$tag_keep-together_within-line_close))"/>
12466
+ <xsl:variable name="text_">
12467
+ <xsl:choose>
12468
+ <xsl:when test="ancestor::*[local-name() = 'table']"><xsl:value-of select="."/></xsl:when> <!-- no need enclose standard's number into tag 'keep-together_within-line' in table cells -->
12469
+ <xsl:otherwise><xsl:value-of select="$text__"/></xsl:otherwise>
12470
+ </xsl:choose>
12471
+ </xsl:variable>
12341
12472
  <xsl:variable name="text"><text><xsl:call-template name="replace_text_tags">
12342
12473
  <xsl:with-param name="tag_open" select="$tag_keep-together_within-line_open"/>
12343
12474
  <xsl:with-param name="tag_close" select="$tag_keep-together_within-line_close"/>
@@ -12353,7 +12484,11 @@
12353
12484
  </xsl:variable>
12354
12485
 
12355
12486
  <!-- keep-together_within-line for: a/b, aaa/b, a/bbb, /b -->
12356
- <xsl:variable name="regex_solidus_units">((\b((\S{1,3}\/\S+)|(\S+\/\S{1,3}))\b)|(\/\S{1,3})\b)</xsl:variable>
12487
+ <!-- \S matches any non-whitespace character (equivalent to [^\r\n\t\f\v ]) -->
12488
+ <!-- <xsl:variable name="regex_solidus_units">((\b((\S{1,3}\/\S+)|(\S+\/\S{1,3}))\b)|(\/\S{1,3})\b)</xsl:variable> -->
12489
+ <!-- add &lt; and &gt; to \S -->
12490
+ <xsl:variable name="regex_S">[^\r\n\t\f\v \&lt;&gt;]</xsl:variable>
12491
+ <xsl:variable name="regex_solidus_units">((\b((<xsl:value-of select="$regex_S"/>{1,3}\/<xsl:value-of select="$regex_S"/>+)|(<xsl:value-of select="$regex_S"/>+\/<xsl:value-of select="$regex_S"/>{1,3}))\b)|(\/<xsl:value-of select="$regex_S"/>{1,3})\b)</xsl:variable>
12357
12492
  <xsl:variable name="text3">
12358
12493
  <text><xsl:for-each select="xalan:nodeset($text2)/text/node()">
12359
12494
  <xsl:choose>
@@ -12417,9 +12552,8 @@
12417
12552
  <xsl:otherwise><xsl:value-of select="$text"/></xsl:otherwise>
12418
12553
  </xsl:choose>
12419
12554
  </xsl:template>
12420
-
12421
12555
  <!-- ===================================== -->
12422
- <!-- End Update xml -->
12556
+ <!-- END XML UPDATE STEP: enclose standard's name into tag 'keep-together_within-line' -->
12423
12557
  <!-- ===================================== -->
12424
12558
 
12425
12559
  <!-- for correct rendering combining chars -->
@@ -87,9 +87,9 @@ module IsoDoc
87
87
  def list_people(xml, xpath)
88
88
  ret = []
89
89
  xml.xpath(ns(xpath)).each do |p|
90
- name = p&.at(ns("./name/completename"))&.text
91
- aff = p&.at(ns("./affiliation/organization/abbreviation"))&.text ||
92
- p&.at(ns("./affiliation/organization/name"))&.text
90
+ name = p.at(ns("./name/completename"))&.text
91
+ aff = p.at(ns("./affiliation/organization/abbreviation"))&.text ||
92
+ p.at(ns("./affiliation/organization/name"))&.text
93
93
  c = name || ""
94
94
  aff and c += " (#{aff})"
95
95
  ret << c
@@ -266,6 +266,12 @@ main {
266
266
  padding-left: 30px; }
267
267
  #toc .h3, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .h3 {
268
268
  padding-left: 50px; }
269
+ #toc .h4, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .h4 {
270
+ padding-left: 70px; }
271
+ #toc .h5, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .h5 {
272
+ padding-left: 90px; }
273
+ #toc .h6, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .h6 {
274
+ padding-left: 110px; }
269
275
  #toc .toc-active, #toc li:hover, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) .toc-active, #toc > ul :is(.h1, .h2, .h3, .h4, .h5, .h6) li:hover {
270
276
  background: #6C734A;
271
277
  box-shadow: inset -5px 0px 10px -5px #6C734A !important; }