metanorma-ieee 1.0.9 → 1.0.10
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/lib/isodoc/ieee/html/html_ieee_intro.html +0 -1
- data/lib/isodoc/ieee/html/word_ieee_intro.html +0 -8
- data/lib/isodoc/ieee/html_convert.rb +2 -2
- data/lib/isodoc/ieee/ieee.amendment.xsl +228 -80
- data/lib/isodoc/ieee/ieee.standard.xsl +228 -80
- data/lib/isodoc/ieee/word_cleanup.rb +4 -1
- data/lib/isodoc/ieee/word_convert.rb +14 -5
- data/lib/metanorma/ieee/ieee.rng +3 -8
- data/lib/metanorma/ieee/isodoc.rng +12 -7
- data/lib/metanorma/ieee/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 56f7f0388b6fb0a8842e97ea9c3c3edf6fa03cc9989f5ae31c0c9c30a5b2d88e
|
4
|
+
data.tar.gz: cfa588f4ad63ed775313e27afc4e981ed340a78c557badb9fc8b7da0d5d35ea4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: aca4e3edeb8aee38ade1db7f3ef6868ffd969f943d75a1ff435f14e1efe8fb72e5196ec57acae8cb10106b09d7e3c28f96fd783027f02ba5a347c533555e0bdc
|
7
|
+
data.tar.gz: 5b1a3a15c5b027a38779df25641a2edd44efec2bf7b44d1adaf41debdb2b707f8a4d7b9768eb7095640d2b0232b3bd17de2ac856f406eba972ac577c41315b6e
|
@@ -74,8 +74,8 @@ module IsoDoc
|
|
74
74
|
end
|
75
75
|
|
76
76
|
def clausedelimspace(node, out)
|
77
|
-
if node.at("./ancestor::xmlns:p[@type = 'officeorgrepmemberhdr'"\
|
78
|
-
"
|
77
|
+
if node.at("./ancestor::xmlns:p[@type = 'officeorgrepmemberhdr' " \
|
78
|
+
"or @type = 'officeorgrepmember']")
|
79
79
|
out.tab
|
80
80
|
else super
|
81
81
|
end
|
@@ -4437,6 +4437,7 @@
|
|
4437
4437
|
</xsl:attribute-set>
|
4438
4438
|
|
4439
4439
|
<xsl:attribute-set name="xref-style">
|
4440
|
+
<xsl:attribute name="keep-together.within-line">always</xsl:attribute>
|
4440
4441
|
|
4441
4442
|
<xsl:attribute name="color">blue</xsl:attribute>
|
4442
4443
|
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
@@ -6479,9 +6480,13 @@
|
|
6479
6480
|
<xsl:attribute name="padding-right">0.5mm</xsl:attribute>
|
6480
6481
|
</xsl:if>
|
6481
6482
|
|
6482
|
-
<
|
6483
|
-
<xsl:
|
6484
|
-
|
6483
|
+
<xsl:call-template name="insert_basic_link">
|
6484
|
+
<xsl:with-param name="element">
|
6485
|
+
<fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
|
6486
|
+
<xsl:value-of select="$current_fn_number_text"/>
|
6487
|
+
</fo:basic-link>
|
6488
|
+
</xsl:with-param>
|
6489
|
+
</xsl:call-template>
|
6485
6490
|
</fo:inline>
|
6486
6491
|
</xsl:variable>
|
6487
6492
|
|
@@ -6823,8 +6828,10 @@
|
|
6823
6828
|
<xsl:apply-templates select="preceding-sibling::*[1][local-name() = 'p' and @keep-with-next = 'true']/node()"/>
|
6824
6829
|
<xsl:text> </xsl:text>
|
6825
6830
|
<xsl:apply-templates select="*[local-name()='dt']/*"/>
|
6826
|
-
<xsl:text
|
6827
|
-
|
6831
|
+
<xsl:if test="*[local-name()='dd']/node()[normalize-space() != ''][1][self::text()]">
|
6832
|
+
<xsl:text> </xsl:text>
|
6833
|
+
</xsl:if>
|
6834
|
+
<xsl:apply-templates select="*[local-name()='dd']/node()" mode="inline"/>
|
6828
6835
|
</fo:block>
|
6829
6836
|
|
6830
6837
|
</xsl:when> <!-- END: only one component -->
|
@@ -7311,8 +7318,18 @@
|
|
7311
7318
|
</xsl:if>
|
7312
7319
|
</xsl:template>
|
7313
7320
|
|
7314
|
-
<xsl:template match="*[local-name()='dd']/*
|
7315
|
-
<
|
7321
|
+
<xsl:template match="*[local-name()='dd']/*" mode="inline">
|
7322
|
+
<xsl:variable name="is_inline_element_after_where">
|
7323
|
+
<xsl:if test="(local-name() = 'p') and not(preceding-sibling::node()[normalize-space() != ''])">true</xsl:if>
|
7324
|
+
</xsl:variable>
|
7325
|
+
<xsl:choose>
|
7326
|
+
<xsl:when test="$is_inline_element_after_where = 'true'">
|
7327
|
+
<fo:inline><xsl:text> </xsl:text><xsl:apply-templates/></fo:inline>
|
7328
|
+
</xsl:when>
|
7329
|
+
<xsl:otherwise>
|
7330
|
+
<xsl:apply-templates select="."/>
|
7331
|
+
</xsl:otherwise>
|
7332
|
+
</xsl:choose>
|
7316
7333
|
</xsl:template>
|
7317
7334
|
|
7318
7335
|
<!-- virtual html table for dl/[dt and dd] for IF (Intermediate Format) -->
|
@@ -8742,6 +8759,79 @@
|
|
8742
8759
|
<xsl:value-of select="."/><xsl:value-of select="$zero_width_space"/>
|
8743
8760
|
</xsl:template>
|
8744
8761
|
|
8762
|
+
<!-- special case for:
|
8763
|
+
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
8764
|
+
<mstyle displaystyle="true">
|
8765
|
+
<msup>
|
8766
|
+
<mi color="#00000000">C</mi>
|
8767
|
+
<mtext>R</mtext>
|
8768
|
+
</msup>
|
8769
|
+
<msubsup>
|
8770
|
+
<mtext>C</mtext>
|
8771
|
+
<mi>n</mi>
|
8772
|
+
<mi>k</mi>
|
8773
|
+
</msubsup>
|
8774
|
+
</mstyle>
|
8775
|
+
</math>
|
8776
|
+
-->
|
8777
|
+
<xsl:template match="mathml:msup/mathml:mi[. = '' or . = ''][not(preceding-sibling::*)][following-sibling::mathml:mtext]" mode="mathml">
|
8778
|
+
<xsl:copy>
|
8779
|
+
<xsl:copy-of select="@*"/>
|
8780
|
+
<xsl:variable name="next_mtext" select="ancestor::mathml:msup/following-sibling::*[1][self::mathml:msubsup or self::mathml:msub or self::mathml:msup]/mathml:mtext"/>
|
8781
|
+
<xsl:if test="string-length($next_mtext) != ''">
|
8782
|
+
<xsl:attribute name="color">#00000000</xsl:attribute>
|
8783
|
+
</xsl:if>
|
8784
|
+
<xsl:apply-templates/>
|
8785
|
+
<xsl:value-of select="$next_mtext"/>
|
8786
|
+
</xsl:copy>
|
8787
|
+
</xsl:template>
|
8788
|
+
|
8789
|
+
<!-- special case for:
|
8790
|
+
<msup>
|
8791
|
+
<mtext/>
|
8792
|
+
<mn>1</mn>
|
8793
|
+
</msup>
|
8794
|
+
convert to (add mspace after mtext and enclose them into mrow):
|
8795
|
+
<msup>
|
8796
|
+
<mrow>
|
8797
|
+
<mtext/>
|
8798
|
+
<mspace height="1.47ex"/>
|
8799
|
+
</mrow>
|
8800
|
+
<mn>1</mn>
|
8801
|
+
</msup>
|
8802
|
+
-->
|
8803
|
+
<xsl:template match="mathml:msup/mathml:mtext[not(preceding-sibling::*)]" mode="mathml">
|
8804
|
+
<mathml:mrow>
|
8805
|
+
<xsl:copy-of select="."/>
|
8806
|
+
<mathml:mspace height="1.47ex"/>
|
8807
|
+
</mathml:mrow>
|
8808
|
+
</xsl:template>
|
8809
|
+
|
8810
|
+
<!-- add space around vertical line -->
|
8811
|
+
<xsl:template match="mathml:mo[normalize-space(text()) = '|']" mode="mathml">
|
8812
|
+
<xsl:copy>
|
8813
|
+
<xsl:apply-templates select="@*" mode="mathml"/>
|
8814
|
+
<xsl:if test="not(@lspace)">
|
8815
|
+
<xsl:attribute name="lspace">0.4em</xsl:attribute>
|
8816
|
+
</xsl:if>
|
8817
|
+
<xsl:if test="not(@rspace)">
|
8818
|
+
<xsl:attribute name="rspace">0.4em</xsl:attribute>
|
8819
|
+
</xsl:if>
|
8820
|
+
<xsl:apply-templates mode="mathml"/>
|
8821
|
+
</xsl:copy>
|
8822
|
+
</xsl:template>
|
8823
|
+
|
8824
|
+
<!-- decrease fontsize for 'Circled Times' char -->
|
8825
|
+
<xsl:template match="mathml:mo[normalize-space(text()) = '⊗']" mode="mathml">
|
8826
|
+
<xsl:copy>
|
8827
|
+
<xsl:apply-templates select="@*" mode="mathml"/>
|
8828
|
+
<xsl:if test="not(@fontsize)">
|
8829
|
+
<xsl:attribute name="fontsize">55%</xsl:attribute>
|
8830
|
+
</xsl:if>
|
8831
|
+
<xsl:apply-templates mode="mathml"/>
|
8832
|
+
</xsl:copy>
|
8833
|
+
</xsl:template>
|
8834
|
+
|
8745
8835
|
<!-- Examples:
|
8746
8836
|
<stem type="AsciiMath">x = 1</stem>
|
8747
8837
|
<stem type="AsciiMath"><asciimath>x = 1</asciimath></stem>
|
@@ -8811,19 +8901,23 @@
|
|
8811
8901
|
<xsl:apply-templates/>
|
8812
8902
|
</xsl:when>
|
8813
8903
|
<xsl:otherwise>
|
8814
|
-
<
|
8815
|
-
<xsl:
|
8816
|
-
<
|
8817
|
-
<xsl:
|
8818
|
-
<xsl:
|
8819
|
-
|
8820
|
-
|
8821
|
-
|
8822
|
-
|
8823
|
-
|
8824
|
-
|
8825
|
-
|
8826
|
-
|
8904
|
+
<xsl:call-template name="insert_basic_link">
|
8905
|
+
<xsl:with-param name="element">
|
8906
|
+
<fo:basic-link external-destination="{$target}" fox:alt-text="{$target}">
|
8907
|
+
<xsl:choose>
|
8908
|
+
<xsl:when test="normalize-space(.) = ''">
|
8909
|
+
<xsl:call-template name="add-zero-spaces-link-java">
|
8910
|
+
<xsl:with-param name="text" select="$target_text"/>
|
8911
|
+
</xsl:call-template>
|
8912
|
+
</xsl:when>
|
8913
|
+
<xsl:otherwise>
|
8914
|
+
<!-- output text from <link>text</link> -->
|
8915
|
+
<xsl:apply-templates/>
|
8916
|
+
</xsl:otherwise>
|
8917
|
+
</xsl:choose>
|
8918
|
+
</fo:basic-link>
|
8919
|
+
</xsl:with-param>
|
8920
|
+
</xsl:call-template>
|
8827
8921
|
</xsl:otherwise>
|
8828
8922
|
</xsl:choose>
|
8829
8923
|
</fo:inline>
|
@@ -8886,12 +8980,16 @@
|
|
8886
8980
|
</xsl:template>
|
8887
8981
|
|
8888
8982
|
<xsl:template match="*[local-name() = 'xref']">
|
8889
|
-
<
|
8890
|
-
<xsl:
|
8891
|
-
<
|
8892
|
-
|
8893
|
-
|
8894
|
-
|
8983
|
+
<xsl:call-template name="insert_basic_link">
|
8984
|
+
<xsl:with-param name="element">
|
8985
|
+
<fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
|
8986
|
+
<xsl:if test="parent::*[local-name() = 'add']">
|
8987
|
+
<xsl:call-template name="append_add-style"/>
|
8988
|
+
</xsl:if>
|
8989
|
+
<xsl:apply-templates/>
|
8990
|
+
</fo:basic-link>
|
8991
|
+
</xsl:with-param>
|
8992
|
+
</xsl:call-template>
|
8895
8993
|
</xsl:template>
|
8896
8994
|
|
8897
8995
|
<!-- ====== -->
|
@@ -9278,7 +9376,7 @@
|
|
9278
9376
|
<xsl:value-of select="$images/images/image[@id = current()/@id]/@src"/>
|
9279
9377
|
</xsl:when>
|
9280
9378
|
<xsl:when test="not(starts-with(@src, 'data:'))">
|
9281
|
-
<xsl:value-of select="concat('url(file
|
9379
|
+
<xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
|
9282
9380
|
</xsl:when>
|
9283
9381
|
<xsl:otherwise>
|
9284
9382
|
<xsl:value-of select="@src"/>
|
@@ -9300,7 +9398,7 @@
|
|
9300
9398
|
</xsl:when>
|
9301
9399
|
<xsl:when test="not(starts-with(@src, 'data:'))">
|
9302
9400
|
<xsl:variable name="src">
|
9303
|
-
<xsl:value-of select="concat('url(file
|
9401
|
+
<xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
|
9304
9402
|
</xsl:variable>
|
9305
9403
|
<xsl:variable name="file" select="java:java.io.File.new(@src)"/>
|
9306
9404
|
<xsl:variable name="bufferedImage" select="java:javax.imageio.ImageIO.read($file)"/>
|
@@ -9686,15 +9784,19 @@
|
|
9686
9784
|
<xsl:param name="dest"/>
|
9687
9785
|
<fo:block-container position="absolute" left="{$left}px" top="{$top}px" width="{$width}px" height="{$height}px">
|
9688
9786
|
<fo:block font-size="1pt">
|
9689
|
-
<
|
9690
|
-
<
|
9691
|
-
<fo:
|
9692
|
-
|
9693
|
-
<
|
9694
|
-
|
9695
|
-
|
9696
|
-
|
9697
|
-
|
9787
|
+
<xsl:call-template name="insert_basic_link">
|
9788
|
+
<xsl:with-param name="element">
|
9789
|
+
<fo:basic-link internal-destination="{$dest}" fox:alt-text="svg link">
|
9790
|
+
<fo:inline-container inline-progression-dimension="100%">
|
9791
|
+
<fo:block-container height="{$height - 1}px" width="100%">
|
9792
|
+
<!-- DEBUG <xsl:if test="local-name()='polygon'">
|
9793
|
+
<xsl:attribute name="background-color">magenta</xsl:attribute>
|
9794
|
+
</xsl:if> -->
|
9795
|
+
<fo:block> </fo:block></fo:block-container>
|
9796
|
+
</fo:inline-container>
|
9797
|
+
</fo:basic-link>
|
9798
|
+
</xsl:with-param>
|
9799
|
+
</xsl:call-template>
|
9698
9800
|
</fo:block>
|
9699
9801
|
</fo:block-container>
|
9700
9802
|
</xsl:template>
|
@@ -11251,14 +11353,18 @@
|
|
11251
11353
|
</xsl:template>
|
11252
11354
|
|
11253
11355
|
<xsl:template match="*[local-name() = 'origin']">
|
11254
|
-
<
|
11255
|
-
<xsl:
|
11256
|
-
<
|
11257
|
-
|
11258
|
-
|
11259
|
-
|
11260
|
-
|
11261
|
-
|
11356
|
+
<xsl:call-template name="insert_basic_link">
|
11357
|
+
<xsl:with-param name="element">
|
11358
|
+
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
11359
|
+
<xsl:if test="normalize-space(@citeas) = ''">
|
11360
|
+
<xsl:attribute name="fox:alt-text"><xsl:value-of select="@bibitemid"/></xsl:attribute>
|
11361
|
+
</xsl:if>
|
11362
|
+
<fo:inline xsl:use-attribute-sets="origin-style">
|
11363
|
+
<xsl:apply-templates/>
|
11364
|
+
</fo:inline>
|
11365
|
+
</fo:basic-link>
|
11366
|
+
</xsl:with-param>
|
11367
|
+
</xsl:call-template>
|
11262
11368
|
</xsl:template>
|
11263
11369
|
|
11264
11370
|
<!-- not using, see https://github.com/glossarist/iev-document/issues/23 -->
|
@@ -11332,9 +11438,13 @@
|
|
11332
11438
|
<xsl:if test="../*[local-name() = 'author']">
|
11333
11439
|
<xsl:text>, </xsl:text>
|
11334
11440
|
</xsl:if>
|
11335
|
-
<
|
11336
|
-
<xsl:
|
11337
|
-
|
11441
|
+
<xsl:call-template name="insert_basic_link">
|
11442
|
+
<xsl:with-param name="element">
|
11443
|
+
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
11444
|
+
<xsl:apply-templates/>
|
11445
|
+
</fo:basic-link>
|
11446
|
+
</xsl:with-param>
|
11447
|
+
</xsl:call-template>
|
11338
11448
|
</xsl:template>
|
11339
11449
|
|
11340
11450
|
<xsl:template match="*[local-name() = 'author']">
|
@@ -11388,25 +11498,29 @@
|
|
11388
11498
|
<xsl:attribute name="text-decoration">none</xsl:attribute>
|
11389
11499
|
</xsl:if>
|
11390
11500
|
|
11391
|
-
<
|
11392
|
-
<xsl:
|
11393
|
-
<
|
11394
|
-
|
11395
|
-
|
11501
|
+
<xsl:call-template name="insert_basic_link">
|
11502
|
+
<xsl:with-param name="element">
|
11503
|
+
<fo:basic-link fox:alt-text="{@citeas}">
|
11504
|
+
<xsl:if test="normalize-space(@citeas) = ''">
|
11505
|
+
<xsl:attribute name="fox:alt-text"><xsl:value-of select="."/></xsl:attribute>
|
11506
|
+
</xsl:if>
|
11507
|
+
<xsl:if test="@type = 'inline'">
|
11396
11508
|
|
11397
|
-
|
11509
|
+
</xsl:if>
|
11398
11510
|
|
11399
|
-
|
11400
|
-
|
11401
|
-
|
11402
|
-
|
11403
|
-
|
11404
|
-
|
11405
|
-
|
11406
|
-
|
11511
|
+
<xsl:choose>
|
11512
|
+
<xsl:when test="$external-destination != ''"> <!-- external hyperlink -->
|
11513
|
+
<xsl:attribute name="external-destination"><xsl:value-of select="$external-destination"/></xsl:attribute>
|
11514
|
+
</xsl:when>
|
11515
|
+
<xsl:otherwise>
|
11516
|
+
<xsl:attribute name="internal-destination"><xsl:value-of select="@bibitemid"/></xsl:attribute>
|
11517
|
+
</xsl:otherwise>
|
11518
|
+
</xsl:choose>
|
11407
11519
|
|
11408
|
-
|
11409
|
-
|
11520
|
+
<xsl:apply-templates/>
|
11521
|
+
</fo:basic-link>
|
11522
|
+
</xsl:with-param>
|
11523
|
+
</xsl:call-template>
|
11410
11524
|
|
11411
11525
|
</fo:inline>
|
11412
11526
|
</xsl:when>
|
@@ -11649,7 +11763,10 @@
|
|
11649
11763
|
<xsl:variable name="ul_labels" select="xalan:nodeset($ul_labels_)"/>
|
11650
11764
|
|
11651
11765
|
<xsl:template name="setULLabel">
|
11652
|
-
<xsl:variable name="
|
11766
|
+
<xsl:variable name="list_level__">
|
11767
|
+
<xsl:value-of select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
|
11768
|
+
</xsl:variable>
|
11769
|
+
<xsl:variable name="list_level_" select="number($list_level__)"/>
|
11653
11770
|
<xsl:variable name="list_level">
|
11654
11771
|
<xsl:choose>
|
11655
11772
|
<xsl:when test="$list_level_ <= 3"><xsl:value-of select="$list_level_"/></xsl:when>
|
@@ -11782,9 +11899,11 @@
|
|
11782
11899
|
</fo:block-container>
|
11783
11900
|
</xsl:when>
|
11784
11901
|
<xsl:otherwise>
|
11785
|
-
|
11786
|
-
|
11787
|
-
|
11902
|
+
|
11903
|
+
<fo:block>
|
11904
|
+
<xsl:apply-templates select="." mode="list"/>
|
11905
|
+
</fo:block>
|
11906
|
+
|
11788
11907
|
</xsl:otherwise>
|
11789
11908
|
</xsl:choose>
|
11790
11909
|
</xsl:template>
|
@@ -12484,24 +12603,32 @@
|
|
12484
12603
|
<xsl:for-each select="*[local-name() = 'tab']">
|
12485
12604
|
<xsl:variable name="current_id" select="generate-id()"/>
|
12486
12605
|
<fo:table-cell>
|
12487
|
-
<fo:block>
|
12488
|
-
<
|
12489
|
-
<xsl:
|
12490
|
-
<
|
12491
|
-
<xsl:
|
12492
|
-
|
12493
|
-
|
12494
|
-
|
12495
|
-
|
12606
|
+
<fo:block line-height-shift-adjustment="disregard-shifts">
|
12607
|
+
<xsl:call-template name="insert_basic_link">
|
12608
|
+
<xsl:with-param name="element">
|
12609
|
+
<fo:basic-link internal-destination="{$target}" fox:alt-text="{.}">
|
12610
|
+
<xsl:for-each select="following-sibling::node()[not(self::*[local-name() = 'tab']) and preceding-sibling::*[local-name() = 'tab'][1][generate-id() = $current_id]]">
|
12611
|
+
<xsl:choose>
|
12612
|
+
<xsl:when test="self::text()"><xsl:value-of select="."/></xsl:when>
|
12613
|
+
<xsl:otherwise><xsl:apply-templates select="."/></xsl:otherwise>
|
12614
|
+
</xsl:choose>
|
12615
|
+
</xsl:for-each>
|
12616
|
+
</fo:basic-link>
|
12617
|
+
</xsl:with-param>
|
12618
|
+
</xsl:call-template>
|
12496
12619
|
</fo:block>
|
12497
12620
|
</fo:table-cell>
|
12498
12621
|
</xsl:for-each>
|
12499
12622
|
<!-- last column - for page numbers -->
|
12500
12623
|
<fo:table-cell text-align="right" font-size="10pt" font-weight="bold" font-family="Arial">
|
12501
12624
|
<fo:block>
|
12502
|
-
<
|
12503
|
-
<
|
12504
|
-
|
12625
|
+
<xsl:call-template name="insert_basic_link">
|
12626
|
+
<xsl:with-param name="element">
|
12627
|
+
<fo:basic-link internal-destination="{$target}" fox:alt-text="{.}">
|
12628
|
+
<fo:page-number-citation ref-id="{$target}"/>
|
12629
|
+
</fo:basic-link>
|
12630
|
+
</xsl:with-param>
|
12631
|
+
</xsl:call-template>
|
12505
12632
|
</fo:block>
|
12506
12633
|
</fo:table-cell>
|
12507
12634
|
</xsl:template>
|
@@ -12543,6 +12670,27 @@
|
|
12543
12670
|
<!-- End Table of Contents (ToC) processing -->
|
12544
12671
|
<!-- =================== -->
|
12545
12672
|
|
12673
|
+
<!-- insert fo:basic-link, if external-destination or internal-destination is non-empty, otherwise insert fo:inline -->
|
12674
|
+
<xsl:template name="insert_basic_link">
|
12675
|
+
<xsl:param name="element"/>
|
12676
|
+
<xsl:variable name="element_node" select="xalan:nodeset($element)"/>
|
12677
|
+
<xsl:variable name="external-destination" select="normalize-space(count($element_node/fo:basic-link/@external-destination[. != '']) = 1)"/>
|
12678
|
+
<xsl:variable name="internal-destination" select="normalize-space(count($element_node/fo:basic-link/@internal-destination[. != '']) = 1)"/>
|
12679
|
+
<xsl:choose>
|
12680
|
+
<xsl:when test="$external-destination = 'true' or $internal-destination = 'true'">
|
12681
|
+
<xsl:copy-of select="$element_node"/>
|
12682
|
+
</xsl:when>
|
12683
|
+
<xsl:otherwise>
|
12684
|
+
<fo:inline>
|
12685
|
+
<xsl:for-each select="$element_node/fo:basic-link/@*[local-name() != 'external-destination' and local-name() != 'internal-destination' and local-name() != 'alt-text']">
|
12686
|
+
<xsl:attribute name="{local-name()}"><xsl:value-of select="."/></xsl:attribute>
|
12687
|
+
</xsl:for-each>
|
12688
|
+
<xsl:copy-of select="$element_node/fo:basic-link/node()"/>
|
12689
|
+
</fo:inline>
|
12690
|
+
</xsl:otherwise>
|
12691
|
+
</xsl:choose>
|
12692
|
+
</xsl:template>
|
12693
|
+
|
12546
12694
|
<xsl:template match="*[local-name() = 'variant-title']"/> <!-- [@type = 'sub'] -->
|
12547
12695
|
<xsl:template match="*[local-name() = 'variant-title'][@type = 'sub']" mode="subtitle">
|
12548
12696
|
<fo:inline padding-right="5mm"> </fo:inline>
|
@@ -4437,6 +4437,7 @@
|
|
4437
4437
|
</xsl:attribute-set>
|
4438
4438
|
|
4439
4439
|
<xsl:attribute-set name="xref-style">
|
4440
|
+
<xsl:attribute name="keep-together.within-line">always</xsl:attribute>
|
4440
4441
|
|
4441
4442
|
<xsl:attribute name="color">blue</xsl:attribute>
|
4442
4443
|
<xsl:attribute name="text-decoration">underline</xsl:attribute>
|
@@ -6479,9 +6480,13 @@
|
|
6479
6480
|
<xsl:attribute name="padding-right">0.5mm</xsl:attribute>
|
6480
6481
|
</xsl:if>
|
6481
6482
|
|
6482
|
-
<
|
6483
|
-
<xsl:
|
6484
|
-
|
6483
|
+
<xsl:call-template name="insert_basic_link">
|
6484
|
+
<xsl:with-param name="element">
|
6485
|
+
<fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
|
6486
|
+
<xsl:value-of select="$current_fn_number_text"/>
|
6487
|
+
</fo:basic-link>
|
6488
|
+
</xsl:with-param>
|
6489
|
+
</xsl:call-template>
|
6485
6490
|
</fo:inline>
|
6486
6491
|
</xsl:variable>
|
6487
6492
|
|
@@ -6823,8 +6828,10 @@
|
|
6823
6828
|
<xsl:apply-templates select="preceding-sibling::*[1][local-name() = 'p' and @keep-with-next = 'true']/node()"/>
|
6824
6829
|
<xsl:text> </xsl:text>
|
6825
6830
|
<xsl:apply-templates select="*[local-name()='dt']/*"/>
|
6826
|
-
<xsl:text
|
6827
|
-
|
6831
|
+
<xsl:if test="*[local-name()='dd']/node()[normalize-space() != ''][1][self::text()]">
|
6832
|
+
<xsl:text> </xsl:text>
|
6833
|
+
</xsl:if>
|
6834
|
+
<xsl:apply-templates select="*[local-name()='dd']/node()" mode="inline"/>
|
6828
6835
|
</fo:block>
|
6829
6836
|
|
6830
6837
|
</xsl:when> <!-- END: only one component -->
|
@@ -7311,8 +7318,18 @@
|
|
7311
7318
|
</xsl:if>
|
7312
7319
|
</xsl:template>
|
7313
7320
|
|
7314
|
-
<xsl:template match="*[local-name()='dd']/*
|
7315
|
-
<
|
7321
|
+
<xsl:template match="*[local-name()='dd']/*" mode="inline">
|
7322
|
+
<xsl:variable name="is_inline_element_after_where">
|
7323
|
+
<xsl:if test="(local-name() = 'p') and not(preceding-sibling::node()[normalize-space() != ''])">true</xsl:if>
|
7324
|
+
</xsl:variable>
|
7325
|
+
<xsl:choose>
|
7326
|
+
<xsl:when test="$is_inline_element_after_where = 'true'">
|
7327
|
+
<fo:inline><xsl:text> </xsl:text><xsl:apply-templates/></fo:inline>
|
7328
|
+
</xsl:when>
|
7329
|
+
<xsl:otherwise>
|
7330
|
+
<xsl:apply-templates select="."/>
|
7331
|
+
</xsl:otherwise>
|
7332
|
+
</xsl:choose>
|
7316
7333
|
</xsl:template>
|
7317
7334
|
|
7318
7335
|
<!-- virtual html table for dl/[dt and dd] for IF (Intermediate Format) -->
|
@@ -8742,6 +8759,79 @@
|
|
8742
8759
|
<xsl:value-of select="."/><xsl:value-of select="$zero_width_space"/>
|
8743
8760
|
</xsl:template>
|
8744
8761
|
|
8762
|
+
<!-- special case for:
|
8763
|
+
<math xmlns="http://www.w3.org/1998/Math/MathML">
|
8764
|
+
<mstyle displaystyle="true">
|
8765
|
+
<msup>
|
8766
|
+
<mi color="#00000000">C</mi>
|
8767
|
+
<mtext>R</mtext>
|
8768
|
+
</msup>
|
8769
|
+
<msubsup>
|
8770
|
+
<mtext>C</mtext>
|
8771
|
+
<mi>n</mi>
|
8772
|
+
<mi>k</mi>
|
8773
|
+
</msubsup>
|
8774
|
+
</mstyle>
|
8775
|
+
</math>
|
8776
|
+
-->
|
8777
|
+
<xsl:template match="mathml:msup/mathml:mi[. = '' or . = ''][not(preceding-sibling::*)][following-sibling::mathml:mtext]" mode="mathml">
|
8778
|
+
<xsl:copy>
|
8779
|
+
<xsl:copy-of select="@*"/>
|
8780
|
+
<xsl:variable name="next_mtext" select="ancestor::mathml:msup/following-sibling::*[1][self::mathml:msubsup or self::mathml:msub or self::mathml:msup]/mathml:mtext"/>
|
8781
|
+
<xsl:if test="string-length($next_mtext) != ''">
|
8782
|
+
<xsl:attribute name="color">#00000000</xsl:attribute>
|
8783
|
+
</xsl:if>
|
8784
|
+
<xsl:apply-templates/>
|
8785
|
+
<xsl:value-of select="$next_mtext"/>
|
8786
|
+
</xsl:copy>
|
8787
|
+
</xsl:template>
|
8788
|
+
|
8789
|
+
<!-- special case for:
|
8790
|
+
<msup>
|
8791
|
+
<mtext/>
|
8792
|
+
<mn>1</mn>
|
8793
|
+
</msup>
|
8794
|
+
convert to (add mspace after mtext and enclose them into mrow):
|
8795
|
+
<msup>
|
8796
|
+
<mrow>
|
8797
|
+
<mtext/>
|
8798
|
+
<mspace height="1.47ex"/>
|
8799
|
+
</mrow>
|
8800
|
+
<mn>1</mn>
|
8801
|
+
</msup>
|
8802
|
+
-->
|
8803
|
+
<xsl:template match="mathml:msup/mathml:mtext[not(preceding-sibling::*)]" mode="mathml">
|
8804
|
+
<mathml:mrow>
|
8805
|
+
<xsl:copy-of select="."/>
|
8806
|
+
<mathml:mspace height="1.47ex"/>
|
8807
|
+
</mathml:mrow>
|
8808
|
+
</xsl:template>
|
8809
|
+
|
8810
|
+
<!-- add space around vertical line -->
|
8811
|
+
<xsl:template match="mathml:mo[normalize-space(text()) = '|']" mode="mathml">
|
8812
|
+
<xsl:copy>
|
8813
|
+
<xsl:apply-templates select="@*" mode="mathml"/>
|
8814
|
+
<xsl:if test="not(@lspace)">
|
8815
|
+
<xsl:attribute name="lspace">0.4em</xsl:attribute>
|
8816
|
+
</xsl:if>
|
8817
|
+
<xsl:if test="not(@rspace)">
|
8818
|
+
<xsl:attribute name="rspace">0.4em</xsl:attribute>
|
8819
|
+
</xsl:if>
|
8820
|
+
<xsl:apply-templates mode="mathml"/>
|
8821
|
+
</xsl:copy>
|
8822
|
+
</xsl:template>
|
8823
|
+
|
8824
|
+
<!-- decrease fontsize for 'Circled Times' char -->
|
8825
|
+
<xsl:template match="mathml:mo[normalize-space(text()) = '⊗']" mode="mathml">
|
8826
|
+
<xsl:copy>
|
8827
|
+
<xsl:apply-templates select="@*" mode="mathml"/>
|
8828
|
+
<xsl:if test="not(@fontsize)">
|
8829
|
+
<xsl:attribute name="fontsize">55%</xsl:attribute>
|
8830
|
+
</xsl:if>
|
8831
|
+
<xsl:apply-templates mode="mathml"/>
|
8832
|
+
</xsl:copy>
|
8833
|
+
</xsl:template>
|
8834
|
+
|
8745
8835
|
<!-- Examples:
|
8746
8836
|
<stem type="AsciiMath">x = 1</stem>
|
8747
8837
|
<stem type="AsciiMath"><asciimath>x = 1</asciimath></stem>
|
@@ -8811,19 +8901,23 @@
|
|
8811
8901
|
<xsl:apply-templates/>
|
8812
8902
|
</xsl:when>
|
8813
8903
|
<xsl:otherwise>
|
8814
|
-
<
|
8815
|
-
<xsl:
|
8816
|
-
<
|
8817
|
-
<xsl:
|
8818
|
-
<xsl:
|
8819
|
-
|
8820
|
-
|
8821
|
-
|
8822
|
-
|
8823
|
-
|
8824
|
-
|
8825
|
-
|
8826
|
-
|
8904
|
+
<xsl:call-template name="insert_basic_link">
|
8905
|
+
<xsl:with-param name="element">
|
8906
|
+
<fo:basic-link external-destination="{$target}" fox:alt-text="{$target}">
|
8907
|
+
<xsl:choose>
|
8908
|
+
<xsl:when test="normalize-space(.) = ''">
|
8909
|
+
<xsl:call-template name="add-zero-spaces-link-java">
|
8910
|
+
<xsl:with-param name="text" select="$target_text"/>
|
8911
|
+
</xsl:call-template>
|
8912
|
+
</xsl:when>
|
8913
|
+
<xsl:otherwise>
|
8914
|
+
<!-- output text from <link>text</link> -->
|
8915
|
+
<xsl:apply-templates/>
|
8916
|
+
</xsl:otherwise>
|
8917
|
+
</xsl:choose>
|
8918
|
+
</fo:basic-link>
|
8919
|
+
</xsl:with-param>
|
8920
|
+
</xsl:call-template>
|
8827
8921
|
</xsl:otherwise>
|
8828
8922
|
</xsl:choose>
|
8829
8923
|
</fo:inline>
|
@@ -8886,12 +8980,16 @@
|
|
8886
8980
|
</xsl:template>
|
8887
8981
|
|
8888
8982
|
<xsl:template match="*[local-name() = 'xref']">
|
8889
|
-
<
|
8890
|
-
<xsl:
|
8891
|
-
<
|
8892
|
-
|
8893
|
-
|
8894
|
-
|
8983
|
+
<xsl:call-template name="insert_basic_link">
|
8984
|
+
<xsl:with-param name="element">
|
8985
|
+
<fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
|
8986
|
+
<xsl:if test="parent::*[local-name() = 'add']">
|
8987
|
+
<xsl:call-template name="append_add-style"/>
|
8988
|
+
</xsl:if>
|
8989
|
+
<xsl:apply-templates/>
|
8990
|
+
</fo:basic-link>
|
8991
|
+
</xsl:with-param>
|
8992
|
+
</xsl:call-template>
|
8895
8993
|
</xsl:template>
|
8896
8994
|
|
8897
8995
|
<!-- ====== -->
|
@@ -9278,7 +9376,7 @@
|
|
9278
9376
|
<xsl:value-of select="$images/images/image[@id = current()/@id]/@src"/>
|
9279
9377
|
</xsl:when>
|
9280
9378
|
<xsl:when test="not(starts-with(@src, 'data:'))">
|
9281
|
-
<xsl:value-of select="concat('url(file
|
9379
|
+
<xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
|
9282
9380
|
</xsl:when>
|
9283
9381
|
<xsl:otherwise>
|
9284
9382
|
<xsl:value-of select="@src"/>
|
@@ -9300,7 +9398,7 @@
|
|
9300
9398
|
</xsl:when>
|
9301
9399
|
<xsl:when test="not(starts-with(@src, 'data:'))">
|
9302
9400
|
<xsl:variable name="src">
|
9303
|
-
<xsl:value-of select="concat('url(file
|
9401
|
+
<xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
|
9304
9402
|
</xsl:variable>
|
9305
9403
|
<xsl:variable name="file" select="java:java.io.File.new(@src)"/>
|
9306
9404
|
<xsl:variable name="bufferedImage" select="java:javax.imageio.ImageIO.read($file)"/>
|
@@ -9686,15 +9784,19 @@
|
|
9686
9784
|
<xsl:param name="dest"/>
|
9687
9785
|
<fo:block-container position="absolute" left="{$left}px" top="{$top}px" width="{$width}px" height="{$height}px">
|
9688
9786
|
<fo:block font-size="1pt">
|
9689
|
-
<
|
9690
|
-
<
|
9691
|
-
<fo:
|
9692
|
-
|
9693
|
-
<
|
9694
|
-
|
9695
|
-
|
9696
|
-
|
9697
|
-
|
9787
|
+
<xsl:call-template name="insert_basic_link">
|
9788
|
+
<xsl:with-param name="element">
|
9789
|
+
<fo:basic-link internal-destination="{$dest}" fox:alt-text="svg link">
|
9790
|
+
<fo:inline-container inline-progression-dimension="100%">
|
9791
|
+
<fo:block-container height="{$height - 1}px" width="100%">
|
9792
|
+
<!-- DEBUG <xsl:if test="local-name()='polygon'">
|
9793
|
+
<xsl:attribute name="background-color">magenta</xsl:attribute>
|
9794
|
+
</xsl:if> -->
|
9795
|
+
<fo:block> </fo:block></fo:block-container>
|
9796
|
+
</fo:inline-container>
|
9797
|
+
</fo:basic-link>
|
9798
|
+
</xsl:with-param>
|
9799
|
+
</xsl:call-template>
|
9698
9800
|
</fo:block>
|
9699
9801
|
</fo:block-container>
|
9700
9802
|
</xsl:template>
|
@@ -11251,14 +11353,18 @@
|
|
11251
11353
|
</xsl:template>
|
11252
11354
|
|
11253
11355
|
<xsl:template match="*[local-name() = 'origin']">
|
11254
|
-
<
|
11255
|
-
<xsl:
|
11256
|
-
<
|
11257
|
-
|
11258
|
-
|
11259
|
-
|
11260
|
-
|
11261
|
-
|
11356
|
+
<xsl:call-template name="insert_basic_link">
|
11357
|
+
<xsl:with-param name="element">
|
11358
|
+
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
11359
|
+
<xsl:if test="normalize-space(@citeas) = ''">
|
11360
|
+
<xsl:attribute name="fox:alt-text"><xsl:value-of select="@bibitemid"/></xsl:attribute>
|
11361
|
+
</xsl:if>
|
11362
|
+
<fo:inline xsl:use-attribute-sets="origin-style">
|
11363
|
+
<xsl:apply-templates/>
|
11364
|
+
</fo:inline>
|
11365
|
+
</fo:basic-link>
|
11366
|
+
</xsl:with-param>
|
11367
|
+
</xsl:call-template>
|
11262
11368
|
</xsl:template>
|
11263
11369
|
|
11264
11370
|
<!-- not using, see https://github.com/glossarist/iev-document/issues/23 -->
|
@@ -11332,9 +11438,13 @@
|
|
11332
11438
|
<xsl:if test="../*[local-name() = 'author']">
|
11333
11439
|
<xsl:text>, </xsl:text>
|
11334
11440
|
</xsl:if>
|
11335
|
-
<
|
11336
|
-
<xsl:
|
11337
|
-
|
11441
|
+
<xsl:call-template name="insert_basic_link">
|
11442
|
+
<xsl:with-param name="element">
|
11443
|
+
<fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
|
11444
|
+
<xsl:apply-templates/>
|
11445
|
+
</fo:basic-link>
|
11446
|
+
</xsl:with-param>
|
11447
|
+
</xsl:call-template>
|
11338
11448
|
</xsl:template>
|
11339
11449
|
|
11340
11450
|
<xsl:template match="*[local-name() = 'author']">
|
@@ -11388,25 +11498,29 @@
|
|
11388
11498
|
<xsl:attribute name="text-decoration">none</xsl:attribute>
|
11389
11499
|
</xsl:if>
|
11390
11500
|
|
11391
|
-
<
|
11392
|
-
<xsl:
|
11393
|
-
<
|
11394
|
-
|
11395
|
-
|
11501
|
+
<xsl:call-template name="insert_basic_link">
|
11502
|
+
<xsl:with-param name="element">
|
11503
|
+
<fo:basic-link fox:alt-text="{@citeas}">
|
11504
|
+
<xsl:if test="normalize-space(@citeas) = ''">
|
11505
|
+
<xsl:attribute name="fox:alt-text"><xsl:value-of select="."/></xsl:attribute>
|
11506
|
+
</xsl:if>
|
11507
|
+
<xsl:if test="@type = 'inline'">
|
11396
11508
|
|
11397
|
-
|
11509
|
+
</xsl:if>
|
11398
11510
|
|
11399
|
-
|
11400
|
-
|
11401
|
-
|
11402
|
-
|
11403
|
-
|
11404
|
-
|
11405
|
-
|
11406
|
-
|
11511
|
+
<xsl:choose>
|
11512
|
+
<xsl:when test="$external-destination != ''"> <!-- external hyperlink -->
|
11513
|
+
<xsl:attribute name="external-destination"><xsl:value-of select="$external-destination"/></xsl:attribute>
|
11514
|
+
</xsl:when>
|
11515
|
+
<xsl:otherwise>
|
11516
|
+
<xsl:attribute name="internal-destination"><xsl:value-of select="@bibitemid"/></xsl:attribute>
|
11517
|
+
</xsl:otherwise>
|
11518
|
+
</xsl:choose>
|
11407
11519
|
|
11408
|
-
|
11409
|
-
|
11520
|
+
<xsl:apply-templates/>
|
11521
|
+
</fo:basic-link>
|
11522
|
+
</xsl:with-param>
|
11523
|
+
</xsl:call-template>
|
11410
11524
|
|
11411
11525
|
</fo:inline>
|
11412
11526
|
</xsl:when>
|
@@ -11649,7 +11763,10 @@
|
|
11649
11763
|
<xsl:variable name="ul_labels" select="xalan:nodeset($ul_labels_)"/>
|
11650
11764
|
|
11651
11765
|
<xsl:template name="setULLabel">
|
11652
|
-
<xsl:variable name="
|
11766
|
+
<xsl:variable name="list_level__">
|
11767
|
+
<xsl:value-of select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
|
11768
|
+
</xsl:variable>
|
11769
|
+
<xsl:variable name="list_level_" select="number($list_level__)"/>
|
11653
11770
|
<xsl:variable name="list_level">
|
11654
11771
|
<xsl:choose>
|
11655
11772
|
<xsl:when test="$list_level_ <= 3"><xsl:value-of select="$list_level_"/></xsl:when>
|
@@ -11782,9 +11899,11 @@
|
|
11782
11899
|
</fo:block-container>
|
11783
11900
|
</xsl:when>
|
11784
11901
|
<xsl:otherwise>
|
11785
|
-
|
11786
|
-
|
11787
|
-
|
11902
|
+
|
11903
|
+
<fo:block>
|
11904
|
+
<xsl:apply-templates select="." mode="list"/>
|
11905
|
+
</fo:block>
|
11906
|
+
|
11788
11907
|
</xsl:otherwise>
|
11789
11908
|
</xsl:choose>
|
11790
11909
|
</xsl:template>
|
@@ -12484,24 +12603,32 @@
|
|
12484
12603
|
<xsl:for-each select="*[local-name() = 'tab']">
|
12485
12604
|
<xsl:variable name="current_id" select="generate-id()"/>
|
12486
12605
|
<fo:table-cell>
|
12487
|
-
<fo:block>
|
12488
|
-
<
|
12489
|
-
<xsl:
|
12490
|
-
<
|
12491
|
-
<xsl:
|
12492
|
-
|
12493
|
-
|
12494
|
-
|
12495
|
-
|
12606
|
+
<fo:block line-height-shift-adjustment="disregard-shifts">
|
12607
|
+
<xsl:call-template name="insert_basic_link">
|
12608
|
+
<xsl:with-param name="element">
|
12609
|
+
<fo:basic-link internal-destination="{$target}" fox:alt-text="{.}">
|
12610
|
+
<xsl:for-each select="following-sibling::node()[not(self::*[local-name() = 'tab']) and preceding-sibling::*[local-name() = 'tab'][1][generate-id() = $current_id]]">
|
12611
|
+
<xsl:choose>
|
12612
|
+
<xsl:when test="self::text()"><xsl:value-of select="."/></xsl:when>
|
12613
|
+
<xsl:otherwise><xsl:apply-templates select="."/></xsl:otherwise>
|
12614
|
+
</xsl:choose>
|
12615
|
+
</xsl:for-each>
|
12616
|
+
</fo:basic-link>
|
12617
|
+
</xsl:with-param>
|
12618
|
+
</xsl:call-template>
|
12496
12619
|
</fo:block>
|
12497
12620
|
</fo:table-cell>
|
12498
12621
|
</xsl:for-each>
|
12499
12622
|
<!-- last column - for page numbers -->
|
12500
12623
|
<fo:table-cell text-align="right" font-size="10pt" font-weight="bold" font-family="Arial">
|
12501
12624
|
<fo:block>
|
12502
|
-
<
|
12503
|
-
<
|
12504
|
-
|
12625
|
+
<xsl:call-template name="insert_basic_link">
|
12626
|
+
<xsl:with-param name="element">
|
12627
|
+
<fo:basic-link internal-destination="{$target}" fox:alt-text="{.}">
|
12628
|
+
<fo:page-number-citation ref-id="{$target}"/>
|
12629
|
+
</fo:basic-link>
|
12630
|
+
</xsl:with-param>
|
12631
|
+
</xsl:call-template>
|
12505
12632
|
</fo:block>
|
12506
12633
|
</fo:table-cell>
|
12507
12634
|
</xsl:template>
|
@@ -12543,6 +12670,27 @@
|
|
12543
12670
|
<!-- End Table of Contents (ToC) processing -->
|
12544
12671
|
<!-- =================== -->
|
12545
12672
|
|
12673
|
+
<!-- insert fo:basic-link, if external-destination or internal-destination is non-empty, otherwise insert fo:inline -->
|
12674
|
+
<xsl:template name="insert_basic_link">
|
12675
|
+
<xsl:param name="element"/>
|
12676
|
+
<xsl:variable name="element_node" select="xalan:nodeset($element)"/>
|
12677
|
+
<xsl:variable name="external-destination" select="normalize-space(count($element_node/fo:basic-link/@external-destination[. != '']) = 1)"/>
|
12678
|
+
<xsl:variable name="internal-destination" select="normalize-space(count($element_node/fo:basic-link/@internal-destination[. != '']) = 1)"/>
|
12679
|
+
<xsl:choose>
|
12680
|
+
<xsl:when test="$external-destination = 'true' or $internal-destination = 'true'">
|
12681
|
+
<xsl:copy-of select="$element_node"/>
|
12682
|
+
</xsl:when>
|
12683
|
+
<xsl:otherwise>
|
12684
|
+
<fo:inline>
|
12685
|
+
<xsl:for-each select="$element_node/fo:basic-link/@*[local-name() != 'external-destination' and local-name() != 'internal-destination' and local-name() != 'alt-text']">
|
12686
|
+
<xsl:attribute name="{local-name()}"><xsl:value-of select="."/></xsl:attribute>
|
12687
|
+
</xsl:for-each>
|
12688
|
+
<xsl:copy-of select="$element_node/fo:basic-link/node()"/>
|
12689
|
+
</fo:inline>
|
12690
|
+
</xsl:otherwise>
|
12691
|
+
</xsl:choose>
|
12692
|
+
</xsl:template>
|
12693
|
+
|
12546
12694
|
<xsl:template match="*[local-name() = 'variant-title']"/> <!-- [@type = 'sub'] -->
|
12547
12695
|
<xsl:template match="*[local-name() = 'variant-title'][@type = 'sub']" mode="subtitle">
|
12548
12696
|
<fo:inline padding-right="5mm"> </fo:inline>
|
@@ -38,6 +38,9 @@ module IsoDoc
|
|
38
38
|
|
39
39
|
def make_WordToC(docxml, level)
|
40
40
|
toc = ""
|
41
|
+
if source = docxml.at("//div[@class = 'TOC']")
|
42
|
+
toc = to_xml(source.children)
|
43
|
+
end
|
41
44
|
xpath = (1..level).each.map do |i|
|
42
45
|
"//h#{i}[not(ancestor::*[@class = 'WordSection2'])]"
|
43
46
|
end.join (" | ")
|
@@ -70,7 +73,7 @@ module IsoDoc
|
|
70
73
|
if hdr.at("./ancestor::div[@class = 'Annex']")
|
71
74
|
hdr.delete("class")
|
72
75
|
hdr["style"] = "mso-list:l13 level#{idx} lfo33;"
|
73
|
-
elsif hdr.at("./ancestor::div[@class = 'Section3']")
|
76
|
+
elsif hdr.at("./ancestor::div[@class = 'Section3' or @class = 'WordSectionContents']")
|
74
77
|
hdr.name = "p"
|
75
78
|
hdr["class"] = "IEEEStdsLevel#{idx}frontmatter"
|
76
79
|
else
|
@@ -47,12 +47,11 @@ module IsoDoc
|
|
47
47
|
ulstyle: "l11", olstyle: "l16" }
|
48
48
|
end
|
49
49
|
|
50
|
-
def abstract(
|
51
|
-
f = isoxml.at(ns("//preface/abstract")) || return
|
50
|
+
def abstract(clause, out)
|
52
51
|
page_break(out)
|
53
|
-
out.div **attr_code(id:
|
54
|
-
clause_name(
|
55
|
-
|
52
|
+
out.div **attr_code(id: clause["id"], class: "abstract") do |s|
|
53
|
+
clause_name(clause, clause.at(ns("./title")), s, { class: "AbstractTitle" })
|
54
|
+
clause.elements.each { |e| parse(e, s) unless e.name == "title" }
|
56
55
|
end
|
57
56
|
end
|
58
57
|
|
@@ -176,6 +175,16 @@ module IsoDoc
|
|
176
175
|
end
|
177
176
|
end
|
178
177
|
|
178
|
+
def table_of_contents(clause, out)
|
179
|
+
out.div class: "WordSectionContents" do |div|
|
180
|
+
clause_name(clause, clause.at(ns("./title")), div,
|
181
|
+
{ class: "IEEEStdsLevel1frontmatter" })
|
182
|
+
clause.elements.each do |e|
|
183
|
+
parse(e, div) unless e.name == "title"
|
184
|
+
end
|
185
|
+
end
|
186
|
+
end
|
187
|
+
|
179
188
|
include BaseConvert
|
180
189
|
include Init
|
181
190
|
end
|
data/lib/metanorma/ieee/ieee.rng
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<grammar ns=
|
2
|
+
<grammar ns='https://www.metanorma.org/ns/ieee' xmlns="http://relaxng.org/ns/structure/1.0">
|
3
3
|
<!--
|
4
|
+
VERSION v1.2.1
|
4
5
|
Currently we inherit from a namespaced grammar, isostandard. Until we inherit from isodoc,
|
5
6
|
we cannot have a new default namespace: we will end up with a grammar with two different
|
6
7
|
namespaces, one for isostandard and one for csand additions. And we do not want that.
|
@@ -29,13 +30,7 @@
|
|
29
30
|
</include>
|
30
31
|
<define name="ieee-standard">
|
31
32
|
<element name="ieee-standard">
|
32
|
-
<
|
33
|
-
<attribute name="type">
|
34
|
-
<choice>
|
35
|
-
<value>semantic</value>
|
36
|
-
<value>presentation</value>
|
37
|
-
</choice>
|
38
|
-
</attribute>
|
33
|
+
<ref name="Root-Attributes"/>
|
39
34
|
<ref name="bibdata"/>
|
40
35
|
<zeroOrMore>
|
41
36
|
<ref name="termdocsource"/>
|
@@ -17,6 +17,7 @@
|
|
17
17
|
these elements; we just want one namespace for any child grammars
|
18
18
|
of this.
|
19
19
|
-->
|
20
|
+
<!-- VERSION v1.2.1 -->
|
20
21
|
<grammar xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
|
21
22
|
<include href="reqt.rng"/>
|
22
23
|
<include href="basicdoc.rng">
|
@@ -1349,15 +1350,19 @@
|
|
1349
1350
|
</choice>
|
1350
1351
|
</element>
|
1351
1352
|
</define>
|
1353
|
+
<define name="Root-Attributes">
|
1354
|
+
<attribute name="version"/>
|
1355
|
+
<attribute name="schema-version"/>
|
1356
|
+
<attribute name="type">
|
1357
|
+
<choice>
|
1358
|
+
<value>semantic</value>
|
1359
|
+
<value>presentation</value>
|
1360
|
+
</choice>
|
1361
|
+
</attribute>
|
1362
|
+
</define>
|
1352
1363
|
<define name="standard-document">
|
1353
1364
|
<element name="standard-document">
|
1354
|
-
<
|
1355
|
-
<attribute name="type">
|
1356
|
-
<choice>
|
1357
|
-
<value>semantic</value>
|
1358
|
-
<value>presentation</value>
|
1359
|
-
</choice>
|
1360
|
-
</attribute>
|
1365
|
+
<ref name="Root-Attributes"/>
|
1361
1366
|
<ref name="bibdata"/>
|
1362
1367
|
<optional>
|
1363
1368
|
<ref name="misccontainer"/>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-ieee
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-04-
|
11
|
+
date: 2023-04-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: metanorma-standoc
|