metanorma-ieee 1.0.9 → 1.0.10
Sign up to get free protection for your applications and to get access to all the features.
- 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
|