metanorma-ieee 1.2.7 → 1.2.8

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 710f4bee007f0e7159c0d4fb92069b38e4f5626d3d34d1399b013d92db862bcb
4
- data.tar.gz: ea510070d80ec5b32961ccdc3d03f274d4368296f0cc4e4375d4a4e5686255d8
3
+ metadata.gz: 8652a600f137bcba7e10c492a92b7e6ab04371d339cf9a16894b1c77c59cc8e3
4
+ data.tar.gz: fe288e7f0403164869aeba0c2fdf99381a6f9a6b7c53c58bf5fa81d87df1ef0c
5
5
  SHA512:
6
- metadata.gz: 6faa187ccecea80276a1584f607f80a54e550ec836cca69699a8bb4335107d3ccc56aec1d1659eb99b531475cf4ddf5916efcb6c9cefe3082daaf59998011e0b
7
- data.tar.gz: 367816ece10ffea1106d3515276c0215820fc7b06b500ee97da72149a16720d00d3d770f12ac97e988298918be063286d8e7dcedf6745b66595b05eaf7515451
6
+ metadata.gz: e931643f63f511b2f8f8cfbb3bc92a29d7529ded0d16178e25e4502676a047f0a556c9ea954836db2a82365a12639855e81ceab5b311962a0dbebe16955c7ed0
7
+ data.tar.gz: 014ba75f62d4f7ffb0010bba6dcbab2d3ece5888ff5e5146ecd19cda17744ad61a8f9d0303eb910955ce46466d18a57db9c05f987a9f383263ec0a68d8a5eb8a
@@ -10078,10 +10078,11 @@
10078
10078
  </xsl:template>
10079
10079
 
10080
10080
  <xsl:template match="*[local-name() = 'image']">
10081
+ <xsl:param name="indent">0</xsl:param>
10081
10082
  <xsl:variable name="isAdded" select="../@added"/>
10082
10083
  <xsl:variable name="isDeleted" select="../@deleted"/>
10083
10084
  <xsl:choose>
10084
- <xsl:when test="ancestor::*[local-name() = 'title'] or not(parent::*[local-name() = 'figure']) or parent::*[local-name() = 'p']">
10085
+ <xsl:when test="ancestor::*[local-name() = 'title'] or not(parent::*[local-name() = 'figure']) or parent::*[local-name() = 'p']"> <!-- inline image ( 'image:path' in adoc, with one colon after image) -->
10085
10086
  <fo:inline padding-left="1mm" padding-right="1mm">
10086
10087
  <xsl:if test="not(parent::*[local-name() = 'figure']) or parent::*[local-name() = 'p']">
10087
10088
  <xsl:attribute name="padding-left">0mm</xsl:attribute>
@@ -10090,7 +10091,43 @@
10090
10091
  <xsl:variable name="src">
10091
10092
  <xsl:call-template name="image_src"/>
10092
10093
  </xsl:variable>
10093
- <fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" vertical-align="middle"/>
10094
+
10095
+ <xsl:variable name="scale">
10096
+ <xsl:call-template name="getImageScale">
10097
+ <xsl:with-param name="indent" select="$indent"/>
10098
+ </xsl:call-template>
10099
+ </xsl:variable>
10100
+
10101
+ <!-- debug scale='<xsl:value-of select="$scale"/>', indent='<xsl:value-of select="$indent"/>' -->
10102
+
10103
+ <!-- <fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" vertical-align="middle"/> -->
10104
+ <fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" vertical-align="middle">
10105
+
10106
+ <xsl:variable name="width">
10107
+ <xsl:call-template name="setImageWidth"/>
10108
+ </xsl:variable>
10109
+ <xsl:if test="$width != ''">
10110
+ <xsl:attribute name="width"><xsl:value-of select="$width"/></xsl:attribute>
10111
+ </xsl:if>
10112
+ <xsl:variable name="height">
10113
+ <xsl:call-template name="setImageHeight"/>
10114
+ </xsl:variable>
10115
+ <xsl:if test="$height != ''">
10116
+ <xsl:attribute name="height"><xsl:value-of select="$height"/></xsl:attribute>
10117
+ </xsl:if>
10118
+
10119
+ <xsl:if test="$width = '' and $height = ''">
10120
+ <xsl:if test="number($scale) &lt; 100">
10121
+ <xsl:attribute name="content-width"><xsl:value-of select="number($scale)"/>%</xsl:attribute>
10122
+ <!-- <xsl:attribute name="content-width">scale-to-fit</xsl:attribute>
10123
+ <xsl:attribute name="content-height">100%</xsl:attribute>
10124
+ <xsl:attribute name="width">100%</xsl:attribute>
10125
+ <xsl:attribute name="scaling">uniform</xsl:attribute> -->
10126
+ </xsl:if>
10127
+ </xsl:if>
10128
+
10129
+ </fo:external-graphic>
10130
+
10094
10131
  </fo:inline>
10095
10132
  </xsl:when>
10096
10133
  <xsl:otherwise>
@@ -10111,25 +10148,23 @@
10111
10148
  <xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
10112
10149
  <xsl:attribute name="scaling">uniform</xsl:attribute>
10113
10150
 
10114
- <xsl:apply-templates select="." mode="cross_image"/>
10151
+ <xsl:apply-templates select="." mode="cross_image"/>
10115
10152
 
10116
10153
  </fo:instream-foreign-object>
10117
10154
  </xsl:when>
10118
10155
  <xsl:otherwise>
10156
+ <!-- <fo:block>debug block image:
10157
+ <xsl:variable name="scale">
10158
+ <xsl:call-template name="getImageScale">
10159
+ <xsl:with-param name="indent" select="$indent"/>
10160
+ </xsl:call-template>
10161
+ </xsl:variable>
10162
+ <xsl:value-of select="concat('scale=', $scale,', indent=', $indent)"/>
10163
+ </fo:block> -->
10119
10164
  <fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" xsl:use-attribute-sets="image-graphic-style">
10120
10165
  <xsl:if test="not(@mimetype = 'image/svg+xml') and (../*[local-name() = 'name'] or parent::*[local-name() = 'figure'][@unnumbered = 'true']) and not(ancestor::*[local-name() = 'table'])">
10121
10166
 
10122
- <xsl:if test="@width != '' and @width != 'auto' and @width != 'text-width' and @width != 'full-page-width' and @width != 'narrow'">
10123
- <xsl:attribute name="width">
10124
- <xsl:value-of select="@width"/>
10125
- </xsl:attribute>
10126
- </xsl:if>
10127
-
10128
- <xsl:if test="@height != '' and @height != 'auto'">
10129
- <xsl:attribute name="height">
10130
- <xsl:value-of select="@height"/>
10131
- </xsl:attribute>
10132
- </xsl:if>
10167
+ <xsl:call-template name="setImageWidthHeight"/>
10133
10168
 
10134
10169
  <xsl:choose>
10135
10170
  <xsl:when test="@width != '' and @width != 'auto' and @height != '' and @height != 'auto'">
@@ -10137,24 +10172,18 @@
10137
10172
  </xsl:when>
10138
10173
  <xsl:otherwise>
10139
10174
 
10140
- <xsl:variable name="img_src">
10141
- <xsl:choose>
10142
- <xsl:when test="not(starts-with(@src, 'data:'))"><xsl:value-of select="concat($basepath, @src)"/></xsl:when>
10143
- <xsl:otherwise><xsl:value-of select="@src"/></xsl:otherwise>
10144
- </xsl:choose>
10175
+ <xsl:variable name="scale">
10176
+ <xsl:call-template name="getImageScale">
10177
+ <xsl:with-param name="indent" select="$indent"/>
10178
+ </xsl:call-template>
10145
10179
  </xsl:variable>
10146
10180
 
10147
- <xsl:variable name="image_width_effective">
10148
-
10149
- <xsl:value-of select="$width_effective"/>
10150
-
10181
+ <xsl:variable name="scaleRatio">
10182
+ 1
10151
10183
  </xsl:variable>
10152
10184
 
10153
- <xsl:variable name="scale" select="java:org.metanorma.fop.Util.getImageScale($img_src, $image_width_effective, $height_effective)"/>
10154
10185
  <xsl:if test="number($scale) &lt; 100">
10155
-
10156
- <xsl:attribute name="content-width"><xsl:value-of select="$scale"/>%</xsl:attribute>
10157
-
10186
+ <xsl:attribute name="content-width"><xsl:value-of select="number($scale) * number($scaleRatio)"/>%</xsl:attribute>
10158
10187
  </xsl:if>
10159
10188
  </xsl:otherwise>
10160
10189
  </xsl:choose>
@@ -10170,6 +10199,62 @@
10170
10199
  </xsl:choose>
10171
10200
  </xsl:template>
10172
10201
 
10202
+ <xsl:template name="setImageWidth">
10203
+ <xsl:if test="@width != '' and @width != 'auto' and @width != 'text-width' and @width != 'full-page-width' and @width != 'narrow'">
10204
+ <xsl:value-of select="@width"/>
10205
+ </xsl:if>
10206
+ </xsl:template>
10207
+ <xsl:template name="setImageHeight">
10208
+ <xsl:if test="@height != '' and @height != 'auto'">
10209
+ <xsl:value-of select="@height"/>
10210
+ </xsl:if>
10211
+ </xsl:template>
10212
+ <xsl:template name="setImageWidthHeight">
10213
+ <xsl:variable name="width">
10214
+ <xsl:call-template name="setImageWidth"/>
10215
+ </xsl:variable>
10216
+ <xsl:if test="$width != ''">
10217
+ <xsl:attribute name="width">
10218
+ <xsl:value-of select="$width"/>
10219
+ </xsl:attribute>
10220
+ </xsl:if>
10221
+ <xsl:variable name="height">
10222
+ <xsl:call-template name="setImageHeight"/>
10223
+ </xsl:variable>
10224
+ <xsl:if test="$height != ''">
10225
+ <xsl:attribute name="height">
10226
+ <xsl:value-of select="$height"/>
10227
+ </xsl:attribute>
10228
+ </xsl:if>
10229
+ </xsl:template>
10230
+
10231
+ <xsl:template name="getImageScale">
10232
+ <xsl:param name="indent"/>
10233
+ <xsl:variable name="indent_left">
10234
+ <xsl:choose>
10235
+ <xsl:when test="$indent != ''"><xsl:value-of select="$indent"/></xsl:when>
10236
+ <xsl:otherwise>0</xsl:otherwise>
10237
+ </xsl:choose>
10238
+ </xsl:variable>
10239
+ <xsl:variable name="img_src">
10240
+ <xsl:choose>
10241
+ <xsl:when test="not(starts-with(@src, 'data:'))"><xsl:value-of select="concat($basepath, @src)"/></xsl:when>
10242
+ <xsl:otherwise><xsl:value-of select="@src"/></xsl:otherwise>
10243
+ </xsl:choose>
10244
+ </xsl:variable>
10245
+
10246
+ <xsl:variable name="image_width_effective">
10247
+
10248
+ <xsl:value-of select="$width_effective - number($indent_left)"/>
10249
+
10250
+ </xsl:variable>
10251
+ <!-- <xsl:message>width_effective=<xsl:value-of select="$width_effective"/></xsl:message>
10252
+ <xsl:message>indent_left=<xsl:value-of select="$indent_left"/></xsl:message>
10253
+ <xsl:message>image_width_effective=<xsl:value-of select="$image_width_effective"/> for <xsl:value-of select="ancestor::ogc:p[1]/@id"/></xsl:message> -->
10254
+ <xsl:variable name="scale" select="java:org.metanorma.fop.Util.getImageScale($img_src, $image_width_effective, $height_effective)"/>
10255
+ <xsl:value-of select="$scale"/>
10256
+ </xsl:template>
10257
+
10173
10258
  <xsl:template name="image_src">
10174
10259
  <xsl:choose>
10175
10260
  <xsl:when test="@mimetype = 'image/svg+xml' and $images/images/image[@id = current()/@id]">
@@ -12850,6 +12935,7 @@
12850
12935
  </xsl:template>
12851
12936
 
12852
12937
  <xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
12938
+ <xsl:param name="indent">0</xsl:param>
12853
12939
  <xsl:choose>
12854
12940
  <xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
12855
12941
  <fo:block-container role="SKIP">
@@ -12864,7 +12950,9 @@
12864
12950
 
12865
12951
  <fo:block-container margin-left="0mm" role="SKIP">
12866
12952
  <fo:block>
12867
- <xsl:apply-templates select="." mode="list"/>
12953
+ <xsl:apply-templates select="." mode="list">
12954
+ <xsl:with-param name="indent" select="$indent"/>
12955
+ </xsl:apply-templates>
12868
12956
  </fo:block>
12869
12957
  </fo:block-container>
12870
12958
  </fo:block-container>
@@ -12872,7 +12960,9 @@
12872
12960
  <xsl:otherwise>
12873
12961
 
12874
12962
  <fo:block role="SKIP">
12875
- <xsl:apply-templates select="." mode="list"/>
12963
+ <xsl:apply-templates select="." mode="list">
12964
+ <xsl:with-param name="indent" select="$indent"/>
12965
+ </xsl:apply-templates>
12876
12966
  </fo:block>
12877
12967
 
12878
12968
  </xsl:otherwise>
@@ -12957,6 +13047,13 @@
12957
13047
  </xsl:template>
12958
13048
 
12959
13049
  <xsl:template match="*[local-name()='li']">
13050
+ <xsl:param name="indent">0</xsl:param>
13051
+ <!-- <fo:list-item xsl:use-attribute-sets="list-item-style">
13052
+ <fo:list-item-label end-indent="label-end()"><fo:block>x</fo:block></fo:list-item-label>
13053
+ <fo:list-item-body start-indent="body-start()" xsl:use-attribute-sets="list-item-body-style">
13054
+ <fo:block>debug li indent=<xsl:value-of select="$indent"/></fo:block>
13055
+ </fo:list-item-body>
13056
+ </fo:list-item> -->
12960
13057
  <fo:list-item xsl:use-attribute-sets="list-item-style">
12961
13058
  <xsl:copy-of select="@id"/>
12962
13059
 
@@ -12981,7 +13078,9 @@
12981
13078
 
12982
13079
  <xsl:call-template name="refine_list-item-body-style"/>
12983
13080
 
12984
- <xsl:apply-templates/>
13081
+ <xsl:apply-templates>
13082
+ <xsl:with-param name="indent" select="$indent"/>
13083
+ </xsl:apply-templates>
12985
13084
 
12986
13085
  <!-- <xsl:apply-templates select="node()[not(local-name() = 'note')]" />
12987
13086
 
@@ -10078,10 +10078,11 @@
10078
10078
  </xsl:template>
10079
10079
 
10080
10080
  <xsl:template match="*[local-name() = 'image']">
10081
+ <xsl:param name="indent">0</xsl:param>
10081
10082
  <xsl:variable name="isAdded" select="../@added"/>
10082
10083
  <xsl:variable name="isDeleted" select="../@deleted"/>
10083
10084
  <xsl:choose>
10084
- <xsl:when test="ancestor::*[local-name() = 'title'] or not(parent::*[local-name() = 'figure']) or parent::*[local-name() = 'p']">
10085
+ <xsl:when test="ancestor::*[local-name() = 'title'] or not(parent::*[local-name() = 'figure']) or parent::*[local-name() = 'p']"> <!-- inline image ( 'image:path' in adoc, with one colon after image) -->
10085
10086
  <fo:inline padding-left="1mm" padding-right="1mm">
10086
10087
  <xsl:if test="not(parent::*[local-name() = 'figure']) or parent::*[local-name() = 'p']">
10087
10088
  <xsl:attribute name="padding-left">0mm</xsl:attribute>
@@ -10090,7 +10091,43 @@
10090
10091
  <xsl:variable name="src">
10091
10092
  <xsl:call-template name="image_src"/>
10092
10093
  </xsl:variable>
10093
- <fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" vertical-align="middle"/>
10094
+
10095
+ <xsl:variable name="scale">
10096
+ <xsl:call-template name="getImageScale">
10097
+ <xsl:with-param name="indent" select="$indent"/>
10098
+ </xsl:call-template>
10099
+ </xsl:variable>
10100
+
10101
+ <!-- debug scale='<xsl:value-of select="$scale"/>', indent='<xsl:value-of select="$indent"/>' -->
10102
+
10103
+ <!-- <fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" vertical-align="middle"/> -->
10104
+ <fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" vertical-align="middle">
10105
+
10106
+ <xsl:variable name="width">
10107
+ <xsl:call-template name="setImageWidth"/>
10108
+ </xsl:variable>
10109
+ <xsl:if test="$width != ''">
10110
+ <xsl:attribute name="width"><xsl:value-of select="$width"/></xsl:attribute>
10111
+ </xsl:if>
10112
+ <xsl:variable name="height">
10113
+ <xsl:call-template name="setImageHeight"/>
10114
+ </xsl:variable>
10115
+ <xsl:if test="$height != ''">
10116
+ <xsl:attribute name="height"><xsl:value-of select="$height"/></xsl:attribute>
10117
+ </xsl:if>
10118
+
10119
+ <xsl:if test="$width = '' and $height = ''">
10120
+ <xsl:if test="number($scale) &lt; 100">
10121
+ <xsl:attribute name="content-width"><xsl:value-of select="number($scale)"/>%</xsl:attribute>
10122
+ <!-- <xsl:attribute name="content-width">scale-to-fit</xsl:attribute>
10123
+ <xsl:attribute name="content-height">100%</xsl:attribute>
10124
+ <xsl:attribute name="width">100%</xsl:attribute>
10125
+ <xsl:attribute name="scaling">uniform</xsl:attribute> -->
10126
+ </xsl:if>
10127
+ </xsl:if>
10128
+
10129
+ </fo:external-graphic>
10130
+
10094
10131
  </fo:inline>
10095
10132
  </xsl:when>
10096
10133
  <xsl:otherwise>
@@ -10111,25 +10148,23 @@
10111
10148
  <xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
10112
10149
  <xsl:attribute name="scaling">uniform</xsl:attribute>
10113
10150
 
10114
- <xsl:apply-templates select="." mode="cross_image"/>
10151
+ <xsl:apply-templates select="." mode="cross_image"/>
10115
10152
 
10116
10153
  </fo:instream-foreign-object>
10117
10154
  </xsl:when>
10118
10155
  <xsl:otherwise>
10156
+ <!-- <fo:block>debug block image:
10157
+ <xsl:variable name="scale">
10158
+ <xsl:call-template name="getImageScale">
10159
+ <xsl:with-param name="indent" select="$indent"/>
10160
+ </xsl:call-template>
10161
+ </xsl:variable>
10162
+ <xsl:value-of select="concat('scale=', $scale,', indent=', $indent)"/>
10163
+ </fo:block> -->
10119
10164
  <fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" xsl:use-attribute-sets="image-graphic-style">
10120
10165
  <xsl:if test="not(@mimetype = 'image/svg+xml') and (../*[local-name() = 'name'] or parent::*[local-name() = 'figure'][@unnumbered = 'true']) and not(ancestor::*[local-name() = 'table'])">
10121
10166
 
10122
- <xsl:if test="@width != '' and @width != 'auto' and @width != 'text-width' and @width != 'full-page-width' and @width != 'narrow'">
10123
- <xsl:attribute name="width">
10124
- <xsl:value-of select="@width"/>
10125
- </xsl:attribute>
10126
- </xsl:if>
10127
-
10128
- <xsl:if test="@height != '' and @height != 'auto'">
10129
- <xsl:attribute name="height">
10130
- <xsl:value-of select="@height"/>
10131
- </xsl:attribute>
10132
- </xsl:if>
10167
+ <xsl:call-template name="setImageWidthHeight"/>
10133
10168
 
10134
10169
  <xsl:choose>
10135
10170
  <xsl:when test="@width != '' and @width != 'auto' and @height != '' and @height != 'auto'">
@@ -10137,24 +10172,18 @@
10137
10172
  </xsl:when>
10138
10173
  <xsl:otherwise>
10139
10174
 
10140
- <xsl:variable name="img_src">
10141
- <xsl:choose>
10142
- <xsl:when test="not(starts-with(@src, 'data:'))"><xsl:value-of select="concat($basepath, @src)"/></xsl:when>
10143
- <xsl:otherwise><xsl:value-of select="@src"/></xsl:otherwise>
10144
- </xsl:choose>
10175
+ <xsl:variable name="scale">
10176
+ <xsl:call-template name="getImageScale">
10177
+ <xsl:with-param name="indent" select="$indent"/>
10178
+ </xsl:call-template>
10145
10179
  </xsl:variable>
10146
10180
 
10147
- <xsl:variable name="image_width_effective">
10148
-
10149
- <xsl:value-of select="$width_effective"/>
10150
-
10181
+ <xsl:variable name="scaleRatio">
10182
+ 1
10151
10183
  </xsl:variable>
10152
10184
 
10153
- <xsl:variable name="scale" select="java:org.metanorma.fop.Util.getImageScale($img_src, $image_width_effective, $height_effective)"/>
10154
10185
  <xsl:if test="number($scale) &lt; 100">
10155
-
10156
- <xsl:attribute name="content-width"><xsl:value-of select="$scale"/>%</xsl:attribute>
10157
-
10186
+ <xsl:attribute name="content-width"><xsl:value-of select="number($scale) * number($scaleRatio)"/>%</xsl:attribute>
10158
10187
  </xsl:if>
10159
10188
  </xsl:otherwise>
10160
10189
  </xsl:choose>
@@ -10170,6 +10199,62 @@
10170
10199
  </xsl:choose>
10171
10200
  </xsl:template>
10172
10201
 
10202
+ <xsl:template name="setImageWidth">
10203
+ <xsl:if test="@width != '' and @width != 'auto' and @width != 'text-width' and @width != 'full-page-width' and @width != 'narrow'">
10204
+ <xsl:value-of select="@width"/>
10205
+ </xsl:if>
10206
+ </xsl:template>
10207
+ <xsl:template name="setImageHeight">
10208
+ <xsl:if test="@height != '' and @height != 'auto'">
10209
+ <xsl:value-of select="@height"/>
10210
+ </xsl:if>
10211
+ </xsl:template>
10212
+ <xsl:template name="setImageWidthHeight">
10213
+ <xsl:variable name="width">
10214
+ <xsl:call-template name="setImageWidth"/>
10215
+ </xsl:variable>
10216
+ <xsl:if test="$width != ''">
10217
+ <xsl:attribute name="width">
10218
+ <xsl:value-of select="$width"/>
10219
+ </xsl:attribute>
10220
+ </xsl:if>
10221
+ <xsl:variable name="height">
10222
+ <xsl:call-template name="setImageHeight"/>
10223
+ </xsl:variable>
10224
+ <xsl:if test="$height != ''">
10225
+ <xsl:attribute name="height">
10226
+ <xsl:value-of select="$height"/>
10227
+ </xsl:attribute>
10228
+ </xsl:if>
10229
+ </xsl:template>
10230
+
10231
+ <xsl:template name="getImageScale">
10232
+ <xsl:param name="indent"/>
10233
+ <xsl:variable name="indent_left">
10234
+ <xsl:choose>
10235
+ <xsl:when test="$indent != ''"><xsl:value-of select="$indent"/></xsl:when>
10236
+ <xsl:otherwise>0</xsl:otherwise>
10237
+ </xsl:choose>
10238
+ </xsl:variable>
10239
+ <xsl:variable name="img_src">
10240
+ <xsl:choose>
10241
+ <xsl:when test="not(starts-with(@src, 'data:'))"><xsl:value-of select="concat($basepath, @src)"/></xsl:when>
10242
+ <xsl:otherwise><xsl:value-of select="@src"/></xsl:otherwise>
10243
+ </xsl:choose>
10244
+ </xsl:variable>
10245
+
10246
+ <xsl:variable name="image_width_effective">
10247
+
10248
+ <xsl:value-of select="$width_effective - number($indent_left)"/>
10249
+
10250
+ </xsl:variable>
10251
+ <!-- <xsl:message>width_effective=<xsl:value-of select="$width_effective"/></xsl:message>
10252
+ <xsl:message>indent_left=<xsl:value-of select="$indent_left"/></xsl:message>
10253
+ <xsl:message>image_width_effective=<xsl:value-of select="$image_width_effective"/> for <xsl:value-of select="ancestor::ogc:p[1]/@id"/></xsl:message> -->
10254
+ <xsl:variable name="scale" select="java:org.metanorma.fop.Util.getImageScale($img_src, $image_width_effective, $height_effective)"/>
10255
+ <xsl:value-of select="$scale"/>
10256
+ </xsl:template>
10257
+
10173
10258
  <xsl:template name="image_src">
10174
10259
  <xsl:choose>
10175
10260
  <xsl:when test="@mimetype = 'image/svg+xml' and $images/images/image[@id = current()/@id]">
@@ -12850,6 +12935,7 @@
12850
12935
  </xsl:template>
12851
12936
 
12852
12937
  <xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
12938
+ <xsl:param name="indent">0</xsl:param>
12853
12939
  <xsl:choose>
12854
12940
  <xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
12855
12941
  <fo:block-container role="SKIP">
@@ -12864,7 +12950,9 @@
12864
12950
 
12865
12951
  <fo:block-container margin-left="0mm" role="SKIP">
12866
12952
  <fo:block>
12867
- <xsl:apply-templates select="." mode="list"/>
12953
+ <xsl:apply-templates select="." mode="list">
12954
+ <xsl:with-param name="indent" select="$indent"/>
12955
+ </xsl:apply-templates>
12868
12956
  </fo:block>
12869
12957
  </fo:block-container>
12870
12958
  </fo:block-container>
@@ -12872,7 +12960,9 @@
12872
12960
  <xsl:otherwise>
12873
12961
 
12874
12962
  <fo:block role="SKIP">
12875
- <xsl:apply-templates select="." mode="list"/>
12963
+ <xsl:apply-templates select="." mode="list">
12964
+ <xsl:with-param name="indent" select="$indent"/>
12965
+ </xsl:apply-templates>
12876
12966
  </fo:block>
12877
12967
 
12878
12968
  </xsl:otherwise>
@@ -12957,6 +13047,13 @@
12957
13047
  </xsl:template>
12958
13048
 
12959
13049
  <xsl:template match="*[local-name()='li']">
13050
+ <xsl:param name="indent">0</xsl:param>
13051
+ <!-- <fo:list-item xsl:use-attribute-sets="list-item-style">
13052
+ <fo:list-item-label end-indent="label-end()"><fo:block>x</fo:block></fo:list-item-label>
13053
+ <fo:list-item-body start-indent="body-start()" xsl:use-attribute-sets="list-item-body-style">
13054
+ <fo:block>debug li indent=<xsl:value-of select="$indent"/></fo:block>
13055
+ </fo:list-item-body>
13056
+ </fo:list-item> -->
12960
13057
  <fo:list-item xsl:use-attribute-sets="list-item-style">
12961
13058
  <xsl:copy-of select="@id"/>
12962
13059
 
@@ -12981,7 +13078,9 @@
12981
13078
 
12982
13079
  <xsl:call-template name="refine_list-item-body-style"/>
12983
13080
 
12984
- <xsl:apply-templates/>
13081
+ <xsl:apply-templates>
13082
+ <xsl:with-param name="indent" select="$indent"/>
13083
+ </xsl:apply-templates>
12985
13084
 
12986
13085
  <!-- <xsl:apply-templates select="node()[not(local-name() = 'note')]" />
12987
13086
 
@@ -95,7 +95,7 @@
95
95
  <text/>
96
96
  </element>
97
97
  </define>
98
- <define name="LocalizedString1">
98
+ <define name="LocalizedStringAttrs">
99
99
  <optional>
100
100
  <!-- multiple languages and scripts possible: comma delimit them if so -->
101
101
  <attribute name="language"/>
@@ -106,6 +106,10 @@
106
106
  <optional>
107
107
  <attribute name="script"/>
108
108
  </optional>
109
+ </define>
110
+ <define name="LocalizedString1">
111
+ <!-- multiple languages and scripts possible: comma delimit them if so -->
112
+ <ref name="LocalizedStringAttrs"/>
109
113
  <text/>
110
114
  </define>
111
115
  <define name="LocalizedString">
@@ -142,16 +146,8 @@
142
146
  <ref name="LocalizedStringOrXsAny"/>
143
147
  </define>
144
148
  <define name="LocalizedStringOrXsAny1">
145
- <optional>
146
- <!-- multiple languages and scripts possible: comma delimit them if so -->
147
- <attribute name="language"/>
148
- </optional>
149
- <optional>
150
- <attribute name="locale"/>
151
- </optional>
152
- <optional>
153
- <attribute name="script"/>
154
- </optional>
149
+ <!-- multiple languages and scripts possible: comma delimit them if so -->
150
+ <ref name="LocalizedStringAttrs"/>
155
151
  <oneOrMore>
156
152
  <choice>
157
153
  <text/>
@@ -208,6 +204,7 @@
208
204
  </define>
209
205
  <define name="roledescription">
210
206
  <element name="description">
207
+ <ref name="LocalizedStringAttrs"/>
211
208
  <oneOrMore>
212
209
  <ref name="TextElement"/>
213
210
  </oneOrMore>
@@ -335,6 +332,7 @@
335
332
  </define>
336
333
  <define name="affiliationdescription">
337
334
  <element name="description">
335
+ <ref name="LocalizedStringAttrs"/>
338
336
  <oneOrMore>
339
337
  <ref name="TextElement"/>
340
338
  </oneOrMore>
@@ -948,6 +946,7 @@
948
946
  <optional>
949
947
  <attribute name="type"/>
950
948
  </optional>
949
+ <ref name="LocalizedStringAttrs"/>
951
950
  <zeroOrMore>
952
951
  <ref name="TextElement"/>
953
952
  </zeroOrMore>
@@ -1041,15 +1040,7 @@
1041
1040
  <data type="boolean"/>
1042
1041
  </attribute>
1043
1042
  </optional>
1044
- <optional>
1045
- <attribute name="language"/>
1046
- </optional>
1047
- <optional>
1048
- <attribute name="locale"/>
1049
- </optional>
1050
- <optional>
1051
- <attribute name="script"/>
1052
- </optional>
1043
+ <ref name="LocalizedStringAttrs"/>
1053
1044
  <oneOrMore>
1054
1045
  <ref name="TextElement"/>
1055
1046
  </oneOrMore>
@@ -1277,6 +1268,7 @@
1277
1268
  <optional>
1278
1269
  <attribute name="type"/>
1279
1270
  </optional>
1271
+ <ref name="LocalizedStringAttrs"/>
1280
1272
  <oneOrMore>
1281
1273
  <ref name="TextElement"/>
1282
1274
  </oneOrMore>
@@ -1284,9 +1276,15 @@
1284
1276
  </define>
1285
1277
  <define name="bibabstract">
1286
1278
  <element name="abstract">
1287
- <oneOrMore>
1288
- <ref name="TextElement"/>
1289
- </oneOrMore>
1279
+ <ref name="LocalizedStringAttrs"/>
1280
+ <choice>
1281
+ <oneOrMore>
1282
+ <ref name="BasicBlock"/>
1283
+ </oneOrMore>
1284
+ <oneOrMore>
1285
+ <ref name="TextElement"/>
1286
+ </oneOrMore>
1287
+ </choice>
1290
1288
  </element>
1291
1289
  </define>
1292
1290
  <define name="copyright">
@@ -1391,6 +1389,7 @@
1391
1389
  </attribute>
1392
1390
  <optional>
1393
1391
  <element name="description">
1392
+ <ref name="LocalizedStringAttrs"/>
1394
1393
  <oneOrMore>
1395
1394
  <ref name="TextElement"/>
1396
1395
  </oneOrMore>
@@ -17,7 +17,7 @@
17
17
  these elements; we just want one namespace for any child grammars
18
18
  of this.
19
19
  -->
20
- <!-- VERSION v1.3.0 -->
20
+ <!-- VERSION v1.3.1 -->
21
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">
22
22
  <include href="reqt.rng"/>
23
23
  <include href="basicdoc.rng">
@@ -1346,38 +1346,41 @@
1346
1346
  </oneOrMore>
1347
1347
  </element>
1348
1348
  </define>
1349
+ <define name="Section-Attributes">
1350
+ <optional>
1351
+ <attribute name="id">
1352
+ <data type="ID"/>
1353
+ </attribute>
1354
+ </optional>
1355
+ <optional>
1356
+ <attribute name="language"/>
1357
+ </optional>
1358
+ <optional>
1359
+ <attribute name="script"/>
1360
+ </optional>
1361
+ <optional>
1362
+ <attribute name="inline-header">
1363
+ <data type="boolean"/>
1364
+ </attribute>
1365
+ </optional>
1366
+ <optional>
1367
+ <attribute name="number"/>
1368
+ </optional>
1369
+ <optional>
1370
+ <attribute name="branch-number"/>
1371
+ </optional>
1372
+ <optional>
1373
+ <attribute name="obligation">
1374
+ <choice>
1375
+ <value>normative</value>
1376
+ <value>informative</value>
1377
+ </choice>
1378
+ </attribute>
1379
+ </optional>
1380
+ </define>
1349
1381
  <define name="reference-clause">
1350
1382
  <element name="clause">
1351
- <optional>
1352
- <attribute name="id">
1353
- <data type="ID"/>
1354
- </attribute>
1355
- </optional>
1356
- <optional>
1357
- <attribute name="language"/>
1358
- </optional>
1359
- <optional>
1360
- <attribute name="script"/>
1361
- </optional>
1362
- <optional>
1363
- <attribute name="inline-header">
1364
- <data type="boolean"/>
1365
- </attribute>
1366
- </optional>
1367
- <optional>
1368
- <attribute name="number"/>
1369
- </optional>
1370
- <optional>
1371
- <attribute name="branch-number"/>
1372
- </optional>
1373
- <optional>
1374
- <attribute name="obligation">
1375
- <choice>
1376
- <value>normative</value>
1377
- <value>informative</value>
1378
- </choice>
1379
- </attribute>
1380
- </optional>
1383
+ <ref name="Section-Attributes"/>
1381
1384
  <optional>
1382
1385
  <ref name="section-title"/>
1383
1386
  </optional>
@@ -1566,36 +1569,7 @@
1566
1569
  </element>
1567
1570
  </define>
1568
1571
  <define name="Content-Section">
1569
- <optional>
1570
- <attribute name="id">
1571
- <data type="ID"/>
1572
- </attribute>
1573
- </optional>
1574
- <optional>
1575
- <attribute name="language"/>
1576
- </optional>
1577
- <optional>
1578
- <attribute name="script"/>
1579
- </optional>
1580
- <optional>
1581
- <attribute name="inline-header">
1582
- <data type="boolean"/>
1583
- </attribute>
1584
- </optional>
1585
- <optional>
1586
- <attribute name="obligation">
1587
- <choice>
1588
- <value>normative</value>
1589
- <value>informative</value>
1590
- </choice>
1591
- </attribute>
1592
- </optional>
1593
- <optional>
1594
- <attribute name="number"/>
1595
- </optional>
1596
- <optional>
1597
- <attribute name="branch-number"/>
1598
- </optional>
1572
+ <ref name="Section-Attributes"/>
1599
1573
  <optional>
1600
1574
  <attribute name="type"/>
1601
1575
  </optional>
@@ -1617,39 +1591,10 @@
1617
1591
  </element>
1618
1592
  </define>
1619
1593
  <define name="Clause-Section">
1620
- <optional>
1621
- <attribute name="id">
1622
- <data type="ID"/>
1623
- </attribute>
1624
- </optional>
1625
- <optional>
1626
- <attribute name="language"/>
1627
- </optional>
1628
- <optional>
1629
- <attribute name="script"/>
1630
- </optional>
1631
- <optional>
1632
- <attribute name="inline-header">
1633
- <data type="boolean"/>
1634
- </attribute>
1635
- </optional>
1636
- <optional>
1637
- <attribute name="obligation">
1638
- <choice>
1639
- <value>normative</value>
1640
- <value>informative</value>
1641
- </choice>
1642
- </attribute>
1643
- </optional>
1594
+ <ref name="Section-Attributes"/>
1644
1595
  <optional>
1645
1596
  <attribute name="type"/>
1646
1597
  </optional>
1647
- <optional>
1648
- <attribute name="number"/>
1649
- </optional>
1650
- <optional>
1651
- <attribute name="branch-number"/>
1652
- </optional>
1653
1598
  <optional>
1654
1599
  <ref name="section-title"/>
1655
1600
  </optional>
@@ -1730,34 +1675,10 @@
1730
1675
  </define>
1731
1676
  <define name="terms">
1732
1677
  <element name="terms">
1733
- <optional>
1734
- <attribute name="id">
1735
- <data type="ID"/>
1736
- </attribute>
1737
- </optional>
1738
- <optional>
1739
- <attribute name="language"/>
1740
- </optional>
1741
- <optional>
1742
- <attribute name="script"/>
1743
- </optional>
1678
+ <ref name="Section-Attributes"/>
1744
1679
  <optional>
1745
1680
  <attribute name="type"/>
1746
1681
  </optional>
1747
- <optional>
1748
- <attribute name="number"/>
1749
- </optional>
1750
- <optional>
1751
- <attribute name="branch-number"/>
1752
- </optional>
1753
- <optional>
1754
- <attribute name="obligation">
1755
- <choice>
1756
- <value>normative</value>
1757
- <value>informative</value>
1758
- </choice>
1759
- </attribute>
1760
- </optional>
1761
1682
  <optional>
1762
1683
  <ref name="section-title"/>
1763
1684
  </optional>
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module IEEE
3
- VERSION = "1.2.7".freeze
3
+ VERSION = "1.2.8".freeze
4
4
  end
5
5
  end
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.2.7
4
+ version: 1.2.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-04-08 00:00:00.000000000 Z
11
+ date: 2024-04-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-standoc