metanorma-ogc 2.6.0 → 2.6.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -6897,6 +6897,12 @@
6897
6897
  <xsl:for-each select="//*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'attachment']">
6898
6898
  <attachment filename="{@name}"/>
6899
6899
  </xsl:for-each>
6900
+ <xsl:if test="not(//*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'attachment'])">
6901
+ <xsl:for-each select="//*[local-name() = 'bibitem'][@hidden = 'true'][*[local-name() = 'uri'][@type = 'attachment']]">
6902
+ <xsl:variable name="attachment_path" select="*[local-name() = 'uri'][@type = 'attachment']"/>
6903
+ <attachment filename="{$attachment_path}"/>
6904
+ </xsl:for-each>
6905
+ </xsl:if>
6900
6906
  </xsl:variable>
6901
6907
  <xsl:variable name="pdfAttachmentsList" select="xalan:nodeset($pdfAttachmentsList_)"/>
6902
6908
 
@@ -6909,7 +6915,7 @@
6909
6915
  <xsl:value-of select="concat(normalize-space(@target), '.pdf')"/>
6910
6916
  </xsl:when>
6911
6917
  <!-- link to the PDF attachment -->
6912
- <xsl:when test="$pdfAttachmentsList//attachment[@filename = current()/@target]">
6918
+ <xsl:when test="@attachment = 'true' and $pdfAttachmentsList//attachment[@filename = current()/@target]">
6913
6919
  <xsl:value-of select="concat('url(embedded-file:', @target, ')')"/>
6914
6920
  </xsl:when>
6915
6921
  <!-- <xsl:when test="starts-with($target_normalized, '_') and contains($target_normalized, '_attachments/') and $pdfAttachmentsList//attachment[@filename = $target_attachment_name]">
@@ -7558,7 +7564,16 @@
7558
7564
  </xsl:variable>
7559
7565
  <xsl:variable name="img_src">
7560
7566
  <xsl:choose>
7561
- <xsl:when test="not(starts-with(@src, 'data:'))"><xsl:value-of select="concat($basepath, @src)"/></xsl:when>
7567
+ <xsl:when test="not(starts-with(@src, 'data:'))">
7568
+ <xsl:choose>
7569
+ <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
7570
+ <xsl:value-of select="@src"/>
7571
+ </xsl:when>
7572
+ <xsl:otherwise>
7573
+ <xsl:value-of select="concat($basepath, @src)"/>
7574
+ </xsl:otherwise>
7575
+ </xsl:choose>
7576
+ </xsl:when>
7562
7577
  <xsl:otherwise><xsl:value-of select="@src"/></xsl:otherwise>
7563
7578
  </xsl:choose>
7564
7579
  </xsl:variable>
@@ -7571,7 +7586,7 @@
7571
7586
  <!-- <xsl:message>width_effective=<xsl:value-of select="$width_effective"/></xsl:message>
7572
7587
  <xsl:message>indent_left=<xsl:value-of select="$indent_left"/></xsl:message>
7573
7588
  <xsl:message>image_width_effective=<xsl:value-of select="$image_width_effective"/> for <xsl:value-of select="ancestor::ogc:p[1]/@id"/></xsl:message> -->
7574
- <xsl:variable name="scale" select="java:org.metanorma.fop.Util.getImageScale($img_src, $image_width_effective, $height_effective)"/>
7589
+ <xsl:variable name="scale" select="java:org.metanorma.fop.utils.ImageUtils.getImageScale($img_src, $image_width_effective, $height_effective)"/>
7575
7590
  <xsl:value-of select="$scale"/>
7576
7591
  </xsl:template>
7577
7592
 
@@ -7590,7 +7605,14 @@
7590
7605
  <xsl:value-of select="concat('url(file:///',$basepath, $src_png, ')')"/>
7591
7606
  </xsl:when>
7592
7607
  <xsl:when test="not(starts-with(@src, 'data:'))">
7593
- <xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
7608
+ <xsl:choose>
7609
+ <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
7610
+ <xsl:value-of select="concat('url(file:///', @src, ')')"/>
7611
+ </xsl:when>
7612
+ <xsl:otherwise>
7613
+ <xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
7614
+ </xsl:otherwise>
7615
+ </xsl:choose>
7594
7616
  </xsl:when>
7595
7617
  <xsl:otherwise>
7596
7618
  <xsl:value-of select="@src"/>
@@ -7612,7 +7634,14 @@
7612
7634
  </xsl:when>
7613
7635
  <xsl:when test="not(starts-with(@src, 'data:'))">
7614
7636
  <xsl:variable name="src">
7615
- <xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
7637
+ <xsl:choose>
7638
+ <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
7639
+ <xsl:value-of select="concat('url(file:///', @src, ')')"/>
7640
+ </xsl:when>
7641
+ <xsl:otherwise>
7642
+ <xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
7643
+ </xsl:otherwise>
7644
+ </xsl:choose>
7616
7645
  </xsl:variable>
7617
7646
  <xsl:variable name="file" select="java:java.io.File.new(@src)"/>
7618
7647
  <xsl:variable name="bufferedImage" select="java:javax.imageio.ImageIO.read($file)"/>
@@ -12428,26 +12457,37 @@
12428
12457
  </x:xmpmeta>
12429
12458
  <!-- add attachments -->
12430
12459
  <xsl:for-each select="//*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'attachment']">
12431
- <xsl:choose>
12432
- <xsl:when test="normalize-space() != ''">
12433
- <xsl:variable name="src_attachment" select="java:replaceAll(java:java.lang.String.new(.),'(&#13;&#10;|&#13;|&#10;)', '')"/> <!-- remove line breaks -->
12434
- <pdf:embedded-file xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf" src="{$src_attachment}" filename="{@name}"/>
12435
- </xsl:when>
12436
- <xsl:otherwise>
12437
- <!-- _{filename}_attachments -->
12438
- <!-- <xsl:variable name="url" select="concat('url(file:///',$inputxml_basepath, '_', $inputxml_filename_prefix, '_attachments', '/', @name, ')')"/> -->
12439
- <xsl:variable name="url" select="concat('url(file:///',$inputxml_basepath , @name, ')')"/>
12440
- <pdf:embedded-file xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf" src="{$url}" filename="{@name}"/>
12441
- </xsl:otherwise>
12442
- </xsl:choose>
12460
+ <xsl:variable name="description" select="normalize-space(//*[local-name() = 'bibitem'][@hidden = 'true'][*[local-name() = 'uri'][@type = 'attachment'] = current()/@name]/*[local-name() = 'formattedref'])"/>
12461
+
12462
+ <pdf:embedded-file xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf" filename="{@name}">
12463
+ <xsl:attribute name="src">
12464
+ <xsl:choose>
12465
+ <xsl:when test="normalize-space() != ''">
12466
+ <xsl:variable name="src_attachment" select="java:replaceAll(java:java.lang.String.new(.),'(&#13;&#10;|&#13;|&#10;)', '')"/> <!-- remove line breaks -->
12467
+ <xsl:value-of select="$src_attachment"/>
12468
+ </xsl:when>
12469
+ <xsl:otherwise>
12470
+ <xsl:variable name="url" select="concat('url(file:///',$inputxml_basepath , @name, ')')"/>
12471
+ <xsl:value-of select="$url"/>
12472
+ </xsl:otherwise>
12473
+ </xsl:choose>
12474
+ </xsl:attribute>
12475
+ <xsl:if test="$description != ''">
12476
+ <xsl:attribute name="description"><xsl:value-of select="$description"/></xsl:attribute>
12477
+ </xsl:if>
12478
+ </pdf:embedded-file>
12443
12479
  </xsl:for-each>
12444
12480
  <!-- references to external attachments (no binary-encoded within the Metanorma XML file) -->
12445
12481
  <xsl:if test="not(//*[contains(local-name(), '-standard')]/*[local-name() = 'metanorma-extension']/*[local-name() = 'attachment'])">
12446
12482
  <xsl:for-each select="//*[local-name() = 'bibitem'][@hidden = 'true'][*[local-name() = 'uri'][@type = 'attachment']]">
12447
12483
  <xsl:variable name="attachment_path" select="*[local-name() = 'uri'][@type = 'attachment']"/>
12448
- <xsl:variable name="url" select="concat('url(file:///',$inputxml_basepath, $attachment_path, ')')"/>
12449
- <xsl:variable name="filename_embedded" select="substring-after($attachment_path, concat('_', $inputxml_filename_prefix, '_attachments', '/'))"/>
12450
- <pdf:embedded-file xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf" src="{$url}" filename="{$filename_embedded}"/>
12484
+ <xsl:variable name="url" select="concat('url(file:///',$basepath, $attachment_path, ')')"/>
12485
+ <xsl:variable name="description" select="normalize-space(*[local-name() = 'formattedref'])"/>
12486
+ <pdf:embedded-file xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf" src="{$url}" filename="{$attachment_path}">
12487
+ <xsl:if test="$description != ''">
12488
+ <xsl:attribute name="description"><xsl:value-of select="$description"/></xsl:attribute>
12489
+ </xsl:if>
12490
+ </pdf:embedded-file>
12451
12491
  </xsl:for-each>
12452
12492
  </xsl:if>
12453
12493
  </xsl:template> <!-- addPDFUAmeta -->
@@ -12825,7 +12865,14 @@
12825
12865
  <xsl:value-of select="$src"/>
12826
12866
  </xsl:when>
12827
12867
  <xsl:otherwise>
12828
- <xsl:value-of select="concat('url(file:///',$basepath, $src, ')')"/>
12868
+ <xsl:choose>
12869
+ <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
12870
+ <xsl:value-of select="concat('url(file:///', @src, ')')"/>
12871
+ </xsl:when>
12872
+ <xsl:otherwise>
12873
+ <xsl:value-of select="concat('url(file:///',$basepath, $src, ')')"/>
12874
+ </xsl:otherwise>
12875
+ </xsl:choose>
12829
12876
  </xsl:otherwise>
12830
12877
  </xsl:choose>
12831
12878
  </xsl:template>
@@ -64,7 +64,7 @@ module IsoDoc
64
64
  end
65
65
 
66
66
  def header_strip(hdr)
67
- hdr = hdr.to_s.gsub(/<\/?p[^>]*>/, "")
67
+ hdr = hdr.to_s.gsub(/<\/?p[^<>]*>/, "")
68
68
  super
69
69
  end
70
70
 
@@ -1000,14 +1000,14 @@
1000
1000
  <define name="PureTextElement">
1001
1001
  <choice>
1002
1002
  <text/>
1003
- <ref name="em"/>
1004
- <ref name="strong"/>
1003
+ <ref name="pure_em"/>
1004
+ <ref name="pure_strong"/>
1005
1005
  <ref name="sub"/>
1006
1006
  <ref name="sup"/>
1007
- <ref name="tt"/>
1008
- <ref name="underline"/>
1009
- <ref name="strike"/>
1010
- <ref name="smallcap"/>
1007
+ <ref name="pure_tt"/>
1008
+ <ref name="pure_underline"/>
1009
+ <ref name="pure_strike"/>
1010
+ <ref name="pure_smallcap"/>
1011
1011
  <ref name="br"/>
1012
1012
  </choice>
1013
1013
  </define>
@@ -1031,6 +1031,13 @@
1031
1031
  </zeroOrMore>
1032
1032
  </element>
1033
1033
  </define>
1034
+ <define name="pure_em">
1035
+ <element name="em">
1036
+ <zeroOrMore>
1037
+ <ref name="PureTextElement"/>
1038
+ </zeroOrMore>
1039
+ </element>
1040
+ </define>
1034
1041
  <define name="strong">
1035
1042
  <element name="strong">
1036
1043
  <zeroOrMore>
@@ -1046,6 +1053,13 @@
1046
1053
  </zeroOrMore>
1047
1054
  </element>
1048
1055
  </define>
1056
+ <define name="pure_strong">
1057
+ <element name="strong">
1058
+ <zeroOrMore>
1059
+ <ref name="PureTextElement"/>
1060
+ </zeroOrMore>
1061
+ </element>
1062
+ </define>
1049
1063
  <define name="tt">
1050
1064
  <element name="tt">
1051
1065
  <zeroOrMore>
@@ -1060,6 +1074,13 @@
1060
1074
  </zeroOrMore>
1061
1075
  </element>
1062
1076
  </define>
1077
+ <define name="pure_tt">
1078
+ <element name="tt">
1079
+ <zeroOrMore>
1080
+ <ref name="PureTextElement"/>
1081
+ </zeroOrMore>
1082
+ </element>
1083
+ </define>
1063
1084
  <define name="keyword">
1064
1085
  <element name="keyword">
1065
1086
  <zeroOrMore>
@@ -1090,13 +1111,42 @@
1090
1111
  <zeroOrMore>
1091
1112
  <choice>
1092
1113
  <ref name="PureTextElement"/>
1114
+ <ref name="stem"/>
1115
+ <ref name="eref"/>
1116
+ <ref name="xref"/>
1117
+ <ref name="hyperlink"/>
1093
1118
  <ref name="index"/>
1094
1119
  <ref name="index-xref"/>
1095
1120
  </choice>
1096
1121
  </zeroOrMore>
1097
1122
  </element>
1098
1123
  </define>
1124
+ <define name="pure_strike">
1125
+ <element name="strike">
1126
+ <zeroOrMore>
1127
+ <ref name="PureTextElement"/>
1128
+ </zeroOrMore>
1129
+ </element>
1130
+ </define>
1099
1131
  <define name="underline">
1132
+ <element name="underline">
1133
+ <optional>
1134
+ <attribute name="style"/>
1135
+ </optional>
1136
+ <zeroOrMore>
1137
+ <choice>
1138
+ <ref name="PureTextElement"/>
1139
+ <ref name="stem"/>
1140
+ <ref name="eref"/>
1141
+ <ref name="xref"/>
1142
+ <ref name="hyperlink"/>
1143
+ <ref name="index"/>
1144
+ <ref name="index-xref"/>
1145
+ </choice>
1146
+ </zeroOrMore>
1147
+ </element>
1148
+ </define>
1149
+ <define name="pure_underline">
1100
1150
  <element name="underline">
1101
1151
  <optional>
1102
1152
  <attribute name="style"/>
@@ -1107,6 +1157,21 @@
1107
1157
  </element>
1108
1158
  </define>
1109
1159
  <define name="smallcap">
1160
+ <element name="smallcap">
1161
+ <zeroOrMore>
1162
+ <choice>
1163
+ <ref name="PureTextElement"/>
1164
+ <ref name="stem"/>
1165
+ <ref name="eref"/>
1166
+ <ref name="xref"/>
1167
+ <ref name="hyperlink"/>
1168
+ <ref name="index"/>
1169
+ <ref name="index-xref"/>
1170
+ </choice>
1171
+ </zeroOrMore>
1172
+ </element>
1173
+ </define>
1174
+ <define name="pure_smallcap">
1110
1175
  <element name="smallcap">
1111
1176
  <zeroOrMore>
1112
1177
  <ref name="PureTextElement"/>
@@ -1204,7 +1204,9 @@
1204
1204
  <optional>
1205
1205
  <ref name="formattedref"/>
1206
1206
  </optional>
1207
- <ref name="btitle"/>
1207
+ <oneOrMore>
1208
+ <ref name="btitle"/>
1209
+ </oneOrMore>
1208
1210
  <optional>
1209
1211
  <ref name="bplace"/>
1210
1212
  </optional>
@@ -662,6 +662,9 @@
662
662
  <value>LatexMath</value>
663
663
  </choice>
664
664
  </attribute>
665
+ <optional>
666
+ <attribute name="number-format"/>
667
+ </optional>
665
668
  <attribute name="block">
666
669
  <data type="boolean"/>
667
670
  </attribute>
@@ -66,6 +66,9 @@
66
66
  <ref name="MultilingualRenderingType"/>
67
67
  </attribute>
68
68
  </optional>
69
+ <optional>
70
+ <attribute name="class"/>
71
+ </optional>
69
72
  <optional>
70
73
  <ref name="reqtitle"/>
71
74
  </optional>
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Ogc
3
- VERSION = "2.6.0".freeze
3
+ VERSION = "2.6.1".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-ogc
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.6.0
4
+ version: 2.6.1
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-08-19 00:00:00.000000000 Z
11
+ date: 2024-09-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: iso-639
@@ -234,7 +234,6 @@ files:
234
234
  - ".rubocop.yml"
235
235
  - CODE_OF_CONDUCT.md
236
236
  - Gemfile
237
- - Gemfile.devel
238
237
  - LICENSE
239
238
  - README.adoc
240
239
  - lib/isodoc/ogc.rb
data/Gemfile.devel DELETED
@@ -1,4 +0,0 @@
1
- #gem "metanorma-plugin-glossarist", git: "https://github.com/metanorma/metanorma-plugin-glossarist"
2
- gem "isodoc", git: "https://github.com/metanorma/isodoc", branch: "main"
3
- #gem "metanorma-cli"
4
- #gem "ruby-prof"