metanorma-taste 1.0.8 → 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/.rubocop.yml +14 -6
- data/Create-Taste.adoc +22 -15
- data/README.adoc +6 -1
- data/data/csa/csa.standard.xsl +161 -26
- data/data/pdfa/config.yaml +9 -8
- data/data/pdfa/copyright.adoc +4 -14
- data/data/pdfa/htmlcoverpage.html +38 -11
- data/data/pdfa/htmlstylesheet-override.scss +213 -12
- data/data/pdfa/i18n.yaml +29 -2
- data/data/pdfa/pdfa.xsl +537 -189
- data/data/wmo/config.yaml +22 -0
- data/data/wmo/copyright.adoc +12 -0
- data/data/wmo/i18n.yaml +5 -0
- data/data/wmo/logo-wmo.svg +213 -0
- data/lib/metanorma/taste/stage.rb +2 -2
- data/lib/metanorma/taste/stage_config.rb +2 -2
- data/lib/metanorma/taste/version.rb +1 -1
- metadata +8 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 66c6fca3398a09bd581387f5a36fccc1a04151b8f616ac8bce1a301c687a2447
|
|
4
|
+
data.tar.gz: 7d1147c97d3e40c7e9b26367216822877c509911b281e70cdf907972e7fe2586
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: '086f36349333fceefdb181e8095fb0f8f658dc6c54717f04e9ae80c1fd770045177fffd090a72769e69e42984da69cf477a5d2a2c0476d48a412c4024a87ffad'
|
|
7
|
+
data.tar.gz: 7156be9b7217c51494e65fc3e7607a6b043a78b345187879d61cf361ac4b44693bd550759f5c47596bb42a6eaac3f57122b381fb643d9092d3dbb037c4520c35
|
data/.rubocop.yml
CHANGED
|
@@ -1,14 +1,22 @@
|
|
|
1
1
|
# Auto-generated by Cimas: Do not edit it manually!
|
|
2
2
|
# See https://github.com/metanorma/cimas
|
|
3
3
|
inherit_from:
|
|
4
|
-
- .
|
|
5
|
-
|
|
4
|
+
- https://raw.githubusercontent.com/riboseinc/oss-guides/main/ci/rubocop.yml
|
|
5
|
+
|
|
6
|
+
# Rubocop plugins enabled centrally so every metanorma-org gem picks them up
|
|
7
|
+
# on cimas sync — best practice belongs at the shared-template layer, not
|
|
8
|
+
# per-repo. Per ronaldtse feedback on metanorma/ci#332.
|
|
9
|
+
plugins:
|
|
10
|
+
- rubocop-rspec
|
|
11
|
+
- rubocop-performance
|
|
12
|
+
- rubocop-rake
|
|
6
13
|
|
|
7
14
|
# local repo-specific modifications
|
|
8
15
|
# ...
|
|
9
16
|
|
|
10
17
|
AllCops:
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
18
|
+
# 3.3 matches the org-wide minimum being pushed via #274 (Raise minimum
|
|
19
|
+
# Ruby version to 3.3 due to EOL of 3.2 on 2026-03-31). Was 3.4 before
|
|
20
|
+
# this commit — 3.4 was above the org's stated minimum and would have
|
|
21
|
+
# applied Rubocop rules that fail-close on gems still targeting 3.3.
|
|
22
|
+
TargetRubyVersion: 3.3
|
data/Create-Taste.adoc
CHANGED
|
@@ -172,27 +172,34 @@ doctypes:
|
|
|
172
172
|
|
|
173
173
|
===== 5.2 Stage
|
|
174
174
|
|
|
175
|
-
A limited number of tastes (
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
175
|
+
A limited number of tastes (for example, PDFA) also provide a list of stage values. Like the doctype, each stage is a struct: a `taste` value,
|
|
176
|
+
for the taste's label of the stage, and a `base` value, for the corresponding stage in the base flavor to be used in processing. A stage may
|
|
177
|
+
optionally give an `abbrev` (its abbreviation), and the boolean values `default` (whether it is the default stage applied to documents, legal
|
|
178
|
+
for only one stage) and `published` (whether it constitutes a published stage, which may apply to more than one stage). So a taste might
|
|
179
|
+
declare the following stages:
|
|
180
180
|
|
|
181
181
|
[source,asciidoc]
|
|
182
182
|
----
|
|
183
183
|
stages:
|
|
184
|
-
proposal
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
184
|
+
- taste: proposal
|
|
185
|
+
base: proposal
|
|
186
|
+
- taste: working-draft
|
|
187
|
+
base: working-draft
|
|
188
|
+
abbrev: wd
|
|
189
|
+
- taste: committee-draft
|
|
190
|
+
base: committee-draft
|
|
191
|
+
abbrev: cd
|
|
192
|
+
- taste: draft-standard
|
|
193
|
+
base: draft
|
|
194
|
+
abbrev: d
|
|
195
|
+
- taste: final-draft
|
|
196
|
+
base: final-draft
|
|
197
|
+
- taste: published
|
|
198
|
+
base: published
|
|
193
199
|
default: true
|
|
194
200
|
published: true
|
|
195
|
-
withdrawn
|
|
201
|
+
- taste: withdrawn
|
|
202
|
+
base: withdrawn
|
|
196
203
|
published: true
|
|
197
204
|
----
|
|
198
205
|
|
data/README.adoc
CHANGED
|
@@ -189,6 +189,11 @@ currently available:
|
|
|
189
189
|
|`iso`
|
|
190
190
|
|International Organization of Legal Metrology specifications and standards with OIML branding and copyright
|
|
191
191
|
|
|
192
|
+
|`wmo`
|
|
193
|
+
|World Meteorological Organization
|
|
194
|
+
|`iho`
|
|
195
|
+
|World Meteorological Organization specifications (e.g. S-411) with WMO branding and copyright, built on the IHO document structure
|
|
196
|
+
|
|
192
197
|
|
|
193
198
|
|===
|
|
194
199
|
|
|
@@ -286,7 +291,7 @@ doctypes: # Array of doctypes built over base flavour doctypes
|
|
|
286
291
|
stages: # Array of stages built over base flavour stages
|
|
287
292
|
- taste: string # Taste-specific machine-readable stage name
|
|
288
293
|
base: string # Base Metanorma flavor machine-readable stage name
|
|
289
|
-
|
|
294
|
+
abbrev: string # Abbreviation of stage
|
|
290
295
|
default: boolean # Whether the stage is the default stage to be applied to a document
|
|
291
296
|
published: boolean # Whether the stage is to be considered published
|
|
292
297
|
committees: # Hash of predefined editorial groups for the SDO
|
data/data/csa/csa.standard.xsl
CHANGED
|
@@ -445,6 +445,19 @@
|
|
|
445
445
|
</xsl:for-each>
|
|
446
446
|
</fo:block>
|
|
447
447
|
</xsl:if>
|
|
448
|
+
|
|
449
|
+
<!-- List of Examples -->
|
|
450
|
+
<xsl:if test="$contents/mnx:doc[@num = $num]//mnx:examples/mnx:example">
|
|
451
|
+
<xsl:call-template name="insertListOf_Title">
|
|
452
|
+
<xsl:with-param name="title" select="$title-list-examples"/>
|
|
453
|
+
</xsl:call-template>
|
|
454
|
+
<fo:block role="TOC">
|
|
455
|
+
<xsl:for-each select="$contents/mnx:doc[@num = $num]//mnx:examples/mnx:example">
|
|
456
|
+
<xsl:call-template name="insertListOf_Item"/>
|
|
457
|
+
</xsl:for-each>
|
|
458
|
+
</fo:block>
|
|
459
|
+
</xsl:if>
|
|
460
|
+
|
|
448
461
|
</fo:block>
|
|
449
462
|
</xsl:if>
|
|
450
463
|
</fo:block-container>
|
|
@@ -455,6 +468,7 @@
|
|
|
455
468
|
|
|
456
469
|
<xsl:template match="mn:preface//mn:clause[@type = 'toc']/mn:fmt-title" priority="3">
|
|
457
470
|
<fo:block xsl:use-attribute-sets="toc-title-style">
|
|
471
|
+
<xsl:call-template name="refine_toc-title-style"/>
|
|
458
472
|
<xsl:apply-templates/>
|
|
459
473
|
</fo:block>
|
|
460
474
|
</xsl:template>
|
|
@@ -893,6 +907,16 @@
|
|
|
893
907
|
</xsl:if>
|
|
894
908
|
</xsl:variable>
|
|
895
909
|
|
|
910
|
+
<xsl:variable name="title-list-examples">
|
|
911
|
+
<xsl:variable name="toc_example_title" select="//mn:metanorma/mn:metanorma-extension/mn:toc[@type='example']/mn:title"/>
|
|
912
|
+
<xsl:value-of select="$toc_example_title"/>
|
|
913
|
+
<xsl:if test="normalize-space($toc_example_title) = ''">
|
|
914
|
+
<xsl:call-template name="getLocalizedString">
|
|
915
|
+
<xsl:with-param name="key">toc_examples</xsl:with-param>
|
|
916
|
+
</xsl:call-template>
|
|
917
|
+
</xsl:if>
|
|
918
|
+
</xsl:variable>
|
|
919
|
+
|
|
896
920
|
<xsl:variable name="title-list-recommendations">
|
|
897
921
|
<xsl:variable name="toc_requirement_title" select="//mn:metanorma/mn:metanorma-extension/mn:toc[@type='requirement']/mn:title"/>
|
|
898
922
|
<xsl:value-of select="$toc_requirement_title"/>
|
|
@@ -6261,6 +6285,12 @@
|
|
|
6261
6285
|
<style name="{$key}-left"><xsl:value-of select="$value"/></style>
|
|
6262
6286
|
<style name="{$key}-bottom"><xsl:value-of select="$value"/></style>
|
|
6263
6287
|
</xsl:if>
|
|
6288
|
+
<xsl:if test="$key = 'page-break-inside' and $value = 'avoid'">
|
|
6289
|
+
<style name="keep-together.within-page">always</style>
|
|
6290
|
+
</xsl:if>
|
|
6291
|
+
<xsl:if test="$key = 'page-break-after' and $value = 'always'">
|
|
6292
|
+
<style name="break-after">page</style>
|
|
6293
|
+
</xsl:if>
|
|
6264
6294
|
</xsl:for-each>
|
|
6265
6295
|
</xsl:variable>
|
|
6266
6296
|
<xsl:variable name="styles" select="xalan:nodeset($styles_)"/>
|
|
@@ -6304,6 +6334,11 @@
|
|
|
6304
6334
|
|
|
6305
6335
|
<fo:block role="SKIP">
|
|
6306
6336
|
|
|
6337
|
+
<xsl:variable name="styles">
|
|
6338
|
+
<styles><xsl:call-template name="setTableStyles"/></styles>
|
|
6339
|
+
</xsl:variable>
|
|
6340
|
+
<xsl:copy-of select="xalan:nodeset($styles)/styles/@break-after"/>
|
|
6341
|
+
|
|
6307
6342
|
<xsl:if test="$isGenerateTableIF = 'true'">
|
|
6308
6343
|
<xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
|
|
6309
6344
|
</xsl:if>
|
|
@@ -8453,11 +8488,27 @@
|
|
|
8453
8488
|
<!-- ====== -->
|
|
8454
8489
|
<!-- ====== -->
|
|
8455
8490
|
|
|
8456
|
-
<xsl:attribute-set name="quote-style">
|
|
8491
|
+
<xsl:attribute-set name="quote-container-style">
|
|
8457
8492
|
<xsl:attribute name="margin-left">12mm</xsl:attribute>
|
|
8458
8493
|
<xsl:attribute name="margin-right">12mm</xsl:attribute>
|
|
8459
|
-
<xsl:attribute name="
|
|
8494
|
+
<xsl:attribute name="role">SKIP</xsl:attribute>
|
|
8495
|
+
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
|
8460
8496
|
<xsl:attribute name="margin-left">13mm</xsl:attribute>
|
|
8497
|
+
</xsl:attribute-set>
|
|
8498
|
+
|
|
8499
|
+
<xsl:template name="refine_quote-container-style">
|
|
8500
|
+
<xsl:if test="parent::mn:note">
|
|
8501
|
+
<xsl:if test="not(ancestor::mn:table)">
|
|
8502
|
+
<xsl:attribute name="margin-left">5mm</xsl:attribute>
|
|
8503
|
+
</xsl:if>
|
|
8504
|
+
</xsl:if>
|
|
8505
|
+
</xsl:template>
|
|
8506
|
+
|
|
8507
|
+
<xsl:attribute-set name="quote-style">
|
|
8508
|
+
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
|
8509
|
+
<xsl:attribute name="margin-right">0mm</xsl:attribute>
|
|
8510
|
+
<xsl:attribute name="margin-top">12pt</xsl:attribute>
|
|
8511
|
+
|
|
8461
8512
|
</xsl:attribute-set> <!-- quote-style -->
|
|
8462
8513
|
|
|
8463
8514
|
<xsl:template name="refine_quote-style">
|
|
@@ -8465,7 +8516,8 @@
|
|
|
8465
8516
|
|
|
8466
8517
|
<xsl:attribute-set name="quote-source-style">
|
|
8467
8518
|
<xsl:attribute name="text-align">right</xsl:attribute>
|
|
8468
|
-
<xsl:attribute name="margin-right"
|
|
8519
|
+
<xsl:attribute name="margin-right">-12mm</xsl:attribute>
|
|
8520
|
+
<xsl:attribute name="margin-right">13mm</xsl:attribute>
|
|
8469
8521
|
</xsl:attribute-set> <!-- quote-source-style -->
|
|
8470
8522
|
|
|
8471
8523
|
<xsl:template name="refine_quote-source-style">
|
|
@@ -8488,12 +8540,9 @@
|
|
|
8488
8540
|
|
|
8489
8541
|
<xsl:call-template name="setBlockSpanAll"/>
|
|
8490
8542
|
|
|
8491
|
-
<xsl:
|
|
8492
|
-
<xsl:
|
|
8493
|
-
|
|
8494
|
-
</xsl:if>
|
|
8495
|
-
</xsl:if>
|
|
8496
|
-
<fo:block-container margin-left="0mm" role="SKIP">
|
|
8543
|
+
<fo:block-container xsl:use-attribute-sets="quote-container-style">
|
|
8544
|
+
<xsl:call-template name="refine_quote-container-style"/>
|
|
8545
|
+
|
|
8497
8546
|
<fo:block-container xsl:use-attribute-sets="quote-style" role="SKIP">
|
|
8498
8547
|
|
|
8499
8548
|
<xsl:call-template name="refine_quote-style"/>
|
|
@@ -8505,14 +8554,16 @@
|
|
|
8505
8554
|
</fo:block-container>
|
|
8506
8555
|
</fo:block-container>
|
|
8507
8556
|
<xsl:if test="mn:author or mn:fmt-source or mn:attribution">
|
|
8508
|
-
<fo:block
|
|
8509
|
-
<xsl:
|
|
8510
|
-
|
|
8511
|
-
|
|
8512
|
-
|
|
8513
|
-
|
|
8514
|
-
|
|
8515
|
-
|
|
8557
|
+
<fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
|
|
8558
|
+
<fo:block xsl:use-attribute-sets="quote-source-style">
|
|
8559
|
+
<xsl:call-template name="refine_quote-source-style"/>
|
|
8560
|
+
<!-- — ISO, ISO 7301:2011, Clause 1 -->
|
|
8561
|
+
<xsl:apply-templates select="mn:author"/>
|
|
8562
|
+
<xsl:apply-templates select="mn:fmt-source"/>
|
|
8563
|
+
<!-- added for https://github.com/metanorma/isodoc/issues/607 -->
|
|
8564
|
+
<xsl:apply-templates select="mn:attribution/mn:p/node()"/>
|
|
8565
|
+
</fo:block>
|
|
8566
|
+
</fo:block-container>
|
|
8516
8567
|
</xsl:if>
|
|
8517
8568
|
|
|
8518
8569
|
</fo:block-container>
|
|
@@ -12002,7 +12053,7 @@
|
|
|
12002
12053
|
<xsl:template name="refine_toc-pagenumber-style">
|
|
12003
12054
|
</xsl:template>
|
|
12004
12055
|
|
|
12005
|
-
<!-- List of Figures, Tables -->
|
|
12056
|
+
<!-- List of Figures, Tables, Examples -->
|
|
12006
12057
|
<xsl:attribute-set name="toc-listof-title-style">
|
|
12007
12058
|
<xsl:attribute name="provisional-distance-between-starts">3mm</xsl:attribute>
|
|
12008
12059
|
</xsl:attribute-set>
|
|
@@ -12105,6 +12156,9 @@
|
|
|
12105
12156
|
<xsl:if test="(//mn:metanorma/mn:metanorma-extension/mn:toc[@type='figure']/mn:title) or normalize-space($always) = 'true'">
|
|
12106
12157
|
<xsl:call-template name="processFigures_Contents"/>
|
|
12107
12158
|
</xsl:if>
|
|
12159
|
+
<xsl:if test="(//mn:metanorma/mn:metanorma-extension/mn:toc[@type='example']/mn:title)">
|
|
12160
|
+
<xsl:call-template name="processExamples_Contents"/>
|
|
12161
|
+
</xsl:if>
|
|
12108
12162
|
</xsl:template>
|
|
12109
12163
|
|
|
12110
12164
|
<xsl:template name="processTables_Contents">
|
|
@@ -12151,7 +12205,29 @@
|
|
|
12151
12205
|
</mnx:figures>
|
|
12152
12206
|
</xsl:template>
|
|
12153
12207
|
|
|
12154
|
-
<xsl:template
|
|
12208
|
+
<xsl:template name="processExamples_Contents">
|
|
12209
|
+
<mnx:examples>
|
|
12210
|
+
<xsl:for-each select="//mn:example[@id and mn:fmt-name and not(@unnumbered = 'true') and normalize-space(@id) != '']">
|
|
12211
|
+
<xsl:choose>
|
|
12212
|
+
<xsl:when test="mn:fmt-name">
|
|
12213
|
+
<xsl:variable name="fmt_name">
|
|
12214
|
+
<xsl:apply-templates select="mn:fmt-name" mode="update_xml_step1"/>
|
|
12215
|
+
</xsl:variable>
|
|
12216
|
+
<mnx:example id="{@id}" alt-text="{normalize-space($fmt_name)}">
|
|
12217
|
+
<xsl:copy-of select="$fmt_name"/>
|
|
12218
|
+
</mnx:example>
|
|
12219
|
+
</xsl:when>
|
|
12220
|
+
<xsl:otherwise>
|
|
12221
|
+
<mnx:example id="{@id}" alt-text="{mn:name}">
|
|
12222
|
+
<xsl:copy-of select="mn:name"/>
|
|
12223
|
+
</mnx:example>
|
|
12224
|
+
</xsl:otherwise>
|
|
12225
|
+
</xsl:choose>
|
|
12226
|
+
</xsl:for-each>
|
|
12227
|
+
</mnx:examples>
|
|
12228
|
+
</xsl:template>
|
|
12229
|
+
|
|
12230
|
+
<xsl:template match="mn:figure/mn:name | mnx:figure/mn:name | mn:table/mn:name | mnx:table/mn:name | mn:example/mn:name | mnx:example/mn:name | mn:permission/mn:name | mnx:permission/mn:name | mn:recommendation/mn:name | mnx:recommendation/mn:name | mn:requirement/mn:name | mnx:requirement/mn:name" mode="contents">
|
|
12155
12231
|
<xsl:if test="not(following-sibling::*[1][self::mn:fmt-name])">
|
|
12156
12232
|
<xsl:apply-templates mode="contents"/>
|
|
12157
12233
|
<xsl:text> </xsl:text>
|
|
@@ -12160,40 +12236,40 @@
|
|
|
12160
12236
|
|
|
12161
12237
|
<xsl:template match="mn:title[following-sibling::*[1][self::mn:fmt-title]]" mode="contents"/>
|
|
12162
12238
|
|
|
12163
|
-
<xsl:template match="mn:figure/mn:fmt-name | mnx:figure/mn:fmt-name | mn:table/mn:fmt-name | mnx:table/mn:fmt-name | mn:permission/mn:fmt-name | mnx:permission/mn:fmt-name | mn:recommendation/mn:fmt-name | mnx:recommendation/mn:fmt-name | mn:requirement/mn:fmt-name | mnx:requirement/mn:fmt-name" mode="contents">
|
|
12239
|
+
<xsl:template match="mn:figure/mn:fmt-name | mnx:figure/mn:fmt-name | mn:table/mn:fmt-name | mnx:table/mn:fmt-name | mn:example/mn:fmt-name | mnx:example/mn:fmt-name | mn:permission/mn:fmt-name | mnx:permission/mn:fmt-name | mn:recommendation/mn:fmt-name | mnx:recommendation/mn:fmt-name | mn:requirement/mn:fmt-name | mnx:requirement/mn:fmt-name" mode="contents">
|
|
12164
12240
|
<xsl:apply-templates mode="contents"/>
|
|
12165
12241
|
<xsl:text> </xsl:text>
|
|
12166
12242
|
</xsl:template>
|
|
12167
12243
|
|
|
12168
|
-
<xsl:template match="mn:figure/mn:name | mnx:figure/mn:name | mn:table/mn:name | mnx:table/mn:name | mn:permission/mn:name | mnx:permission/mn:name | mn:recommendation/mn:name | mnx:recommendation/mn:name | mn:requirement/mn:name | mnx:requirement/mn:name | mn:sourcecode/mn:name" mode="bookmarks">
|
|
12244
|
+
<xsl:template match="mn:figure/mn:name | mnx:figure/mn:name | mn:table/mn:name | mnx:table/mn:name | mn:example/mn:name | mnx:example/mn:name | mn:permission/mn:name | mnx:permission/mn:name | mn:recommendation/mn:name | mnx:recommendation/mn:name | mn:requirement/mn:name | mnx:requirement/mn:name | mn:sourcecode/mn:name" mode="bookmarks">
|
|
12169
12245
|
<xsl:if test="not(following-sibling::*[1][self::mn:fmt-name])">
|
|
12170
12246
|
<xsl:apply-templates mode="bookmarks"/>
|
|
12171
12247
|
<xsl:text> </xsl:text>
|
|
12172
12248
|
</xsl:if>
|
|
12173
12249
|
</xsl:template>
|
|
12174
12250
|
|
|
12175
|
-
<xsl:template match="mn:figure/mn:fmt-name | mnx:figure/mn:fmt-name | mn:table/mn:fmt-name | mnx:table/mn:fmt-name | mn:permission/mn:fmt-name | mnx:permission/mn:fmt-name | mn:recommendation/mn:fmt-name | mnx:recommendation/mn:fmt-name | mn:requirement/mn:fmt-name | mnx:requirement/mn:fmt-name | mn:sourcecode/mn:fmt-name | mnx:sourcecode/mn:fmt-name" mode="bookmarks">
|
|
12251
|
+
<xsl:template match="mn:figure/mn:fmt-name | mnx:figure/mn:fmt-name | mn:table/mn:fmt-name | mnx:table/mn:fmt-name | mn:example/mn:fmt-name | mnx:example/mn:fmt-name | mn:permission/mn:fmt-name | mnx:permission/mn:fmt-name | mn:recommendation/mn:fmt-name | mnx:recommendation/mn:fmt-name | mn:requirement/mn:fmt-name | mnx:requirement/mn:fmt-name | mn:sourcecode/mn:fmt-name | mnx:sourcecode/mn:fmt-name" mode="bookmarks">
|
|
12176
12252
|
<xsl:apply-templates mode="bookmarks"/>
|
|
12177
12253
|
<xsl:text> </xsl:text>
|
|
12178
12254
|
</xsl:template>
|
|
12179
12255
|
|
|
12180
|
-
<xsl:template match="*[self::mn:figure or self::mn:table or self::mn:permission or self::mn:recommendation or self::mn:requirement]/mn:name/text() | *[self::mnx:figure or self::mnx:table or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement]/mn:name/text()" mode="contents" priority="2">
|
|
12256
|
+
<xsl:template match="*[self::mn:figure or self::mn:table or self::mn:example or self::mn:permission or self::mn:recommendation or self::mn:requirement]/mn:name/text() | *[self::mnx:figure or self::mnx:table or self::mnx:example or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement]/mn:name/text()" mode="contents" priority="2">
|
|
12181
12257
|
<xsl:if test="not(../following-sibling::*[1][self::mn:fmt-name])">
|
|
12182
12258
|
<xsl:value-of select="."/>
|
|
12183
12259
|
</xsl:if>
|
|
12184
12260
|
</xsl:template>
|
|
12185
12261
|
|
|
12186
|
-
<xsl:template match="*[self::mn:figure or self::mn:table or self::mn:permission or self::mn:recommendation or self::mn:requirement]/mn:fmt-name/text() | *[self::mnx:figure or self::mnx:table or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement]/mn:fmt-name/text()" mode="contents" priority="2">
|
|
12262
|
+
<xsl:template match="*[self::mn:figure or self::mn:table or self::mn:example or self::mn:permission or self::mn:recommendation or self::mn:requirement]/mn:fmt-name/text() | *[self::mnx:figure or self::mnx:table or self::mnx:example or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement]/mn:fmt-name/text()" mode="contents" priority="2">
|
|
12187
12263
|
<xsl:value-of select="."/>
|
|
12188
12264
|
</xsl:template>
|
|
12189
12265
|
|
|
12190
|
-
<xsl:template match="*[self::mn:figure or self::mn:table or self::mn:permission or self::mn:recommendation or self::mn:requirement or self::mn:sourcecode]/mn:name//text() | *[self::mnx:figure or self::mnx:table or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement or self::mnx:sourcecode]/mn:name//text()" mode="bookmarks" priority="2">
|
|
12266
|
+
<xsl:template match="*[self::mn:figure or self::mn:table or self::mn:example or self::mn:permission or self::mn:recommendation or self::mn:requirement or self::mn:sourcecode]/mn:name//text() | *[self::mnx:figure or self::mnx:table or self::mnx:example or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement or self::mnx:sourcecode]/mn:name//text()" mode="bookmarks" priority="2">
|
|
12191
12267
|
<xsl:if test="not(../following-sibling::*[1][self::mn:fmt-name])">
|
|
12192
12268
|
<xsl:value-of select="."/>
|
|
12193
12269
|
</xsl:if>
|
|
12194
12270
|
</xsl:template>
|
|
12195
12271
|
|
|
12196
|
-
<xsl:template match="*[self::mn:figure or self::mn:table or self::mn:permission or self::mn:recommendation or self::mn:requirement or self::mn:sourcecode]/mn:fmt-name//text() | *[self::mnx:figure or self::mnx:table or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement or self::mnx:sourcecode]/mn:fmt-name//text()" mode="bookmarks" priority="2">
|
|
12272
|
+
<xsl:template match="*[self::mn:figure or self::mn:table or self::mn:example or self::mn:permission or self::mn:recommendation or self::mn:requirement or self::mn:sourcecode]/mn:fmt-name//text() | *[self::mnx:figure or self::mnx:table or self::mnx:example or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement or self::mnx:sourcecode]/mn:fmt-name//text()" mode="bookmarks" priority="2">
|
|
12197
12273
|
<xsl:value-of select="."/>
|
|
12198
12274
|
</xsl:template>
|
|
12199
12275
|
|
|
@@ -12426,6 +12502,11 @@
|
|
|
12426
12502
|
<xsl:with-param name="lang" select="@lang"/>
|
|
12427
12503
|
</xsl:call-template>
|
|
12428
12504
|
|
|
12505
|
+
<xsl:call-template name="insertExampleBookmarks">
|
|
12506
|
+
<xsl:with-param name="contents" select="mnx:contents"/>
|
|
12507
|
+
<xsl:with-param name="lang" select="@lang"/>
|
|
12508
|
+
</xsl:call-template>
|
|
12509
|
+
|
|
12429
12510
|
</fo:bookmark>
|
|
12430
12511
|
|
|
12431
12512
|
</xsl:for-each>
|
|
@@ -12444,6 +12525,11 @@
|
|
|
12444
12525
|
<xsl:with-param name="lang" select="@lang"/>
|
|
12445
12526
|
</xsl:call-template>
|
|
12446
12527
|
|
|
12528
|
+
<xsl:call-template name="insertExampleBookmarks">
|
|
12529
|
+
<xsl:with-param name="contents" select="mnx:contents"/>
|
|
12530
|
+
<xsl:with-param name="lang" select="@lang"/>
|
|
12531
|
+
</xsl:call-template>
|
|
12532
|
+
|
|
12447
12533
|
</xsl:for-each>
|
|
12448
12534
|
</xsl:otherwise>
|
|
12449
12535
|
</xsl:choose>
|
|
@@ -12460,6 +12546,11 @@
|
|
|
12460
12546
|
<xsl:with-param name="lang" select="@lang"/>
|
|
12461
12547
|
</xsl:call-template>
|
|
12462
12548
|
|
|
12549
|
+
<xsl:call-template name="insertExampleBookmarks">
|
|
12550
|
+
<xsl:with-param name="contents" select="$contents_nodes/mnx:contents"/>
|
|
12551
|
+
<xsl:with-param name="lang" select="@lang"/>
|
|
12552
|
+
</xsl:call-template>
|
|
12553
|
+
|
|
12463
12554
|
</xsl:otherwise>
|
|
12464
12555
|
</xsl:choose>
|
|
12465
12556
|
|
|
@@ -12540,6 +12631,46 @@
|
|
|
12540
12631
|
</fo:bookmark>
|
|
12541
12632
|
</xsl:if>
|
|
12542
12633
|
</xsl:template> <!-- insertTableBookmarks -->
|
|
12634
|
+
|
|
12635
|
+
<xsl:template name="insertExampleBookmarks">
|
|
12636
|
+
<xsl:param name="contents"/>
|
|
12637
|
+
<xsl:param name="lang"/>
|
|
12638
|
+
<xsl:variable name="contents_nodes" select="xalan:nodeset($contents)"/>
|
|
12639
|
+
<xsl:if test="$contents_nodes/mnx:example">
|
|
12640
|
+
<fo:bookmark internal-destination="{$contents_nodes/mnx:example[1]/@id}" starting-state="hide">
|
|
12641
|
+
<fo:bookmark-title>
|
|
12642
|
+
<xsl:choose>
|
|
12643
|
+
<xsl:when test="$lang = 'fr'">Exemples</xsl:when>
|
|
12644
|
+
<xsl:otherwise>Examples</xsl:otherwise>
|
|
12645
|
+
</xsl:choose>
|
|
12646
|
+
</fo:bookmark-title>
|
|
12647
|
+
<xsl:for-each select="$contents_nodes/mnx:example">
|
|
12648
|
+
<fo:bookmark internal-destination="{@id}">
|
|
12649
|
+
<fo:bookmark-title>
|
|
12650
|
+
<xsl:value-of select="normalize-space(mnx:title)"/>
|
|
12651
|
+
</fo:bookmark-title>
|
|
12652
|
+
</fo:bookmark>
|
|
12653
|
+
</xsl:for-each>
|
|
12654
|
+
</fo:bookmark>
|
|
12655
|
+
</xsl:if>
|
|
12656
|
+
<xsl:if test="$contents_nodes//mnx:examples/mnx:example">
|
|
12657
|
+
<fo:bookmark internal-destination="empty_bookmark" starting-state="hide">
|
|
12658
|
+
|
|
12659
|
+
<xsl:variable name="bookmark-title">
|
|
12660
|
+
<xsl:value-of select="$title-list-examples"/>
|
|
12661
|
+
</xsl:variable>
|
|
12662
|
+
|
|
12663
|
+
<fo:bookmark-title><xsl:value-of select="$bookmark-title"/></fo:bookmark-title>
|
|
12664
|
+
|
|
12665
|
+
<xsl:for-each select="$contents_nodes//mnx:examples/mnx:example">
|
|
12666
|
+
<fo:bookmark internal-destination="{@id}">
|
|
12667
|
+
<!-- <fo:bookmark-title><xsl:value-of select="normalize-space(.)"/></fo:bookmark-title> -->
|
|
12668
|
+
<fo:bookmark-title><xsl:apply-templates mode="bookmark_clean"/></fo:bookmark-title>
|
|
12669
|
+
</fo:bookmark>
|
|
12670
|
+
</xsl:for-each>
|
|
12671
|
+
</fo:bookmark>
|
|
12672
|
+
</xsl:if>
|
|
12673
|
+
</xsl:template> <!-- insertExampleBookmarks -->
|
|
12543
12674
|
<!-- End Bookmarks -->
|
|
12544
12675
|
|
|
12545
12676
|
<!-- ============================ -->
|
|
@@ -13522,6 +13653,10 @@
|
|
|
13522
13653
|
<fo:block break-after="page"/>
|
|
13523
13654
|
</xsl:template>
|
|
13524
13655
|
|
|
13656
|
+
<xsl:template match="mn:pagebreak[ancestor::mn:table]" priority="2">
|
|
13657
|
+
<fo:block break-after="page"/>
|
|
13658
|
+
</xsl:template>
|
|
13659
|
+
|
|
13525
13660
|
<xsl:variable name="font_main_root_style">
|
|
13526
13661
|
<root-style xsl:use-attribute-sets="root-style">
|
|
13527
13662
|
</root-style>
|
data/data/pdfa/config.yaml
CHANGED
|
@@ -15,18 +15,20 @@ base-override:
|
|
|
15
15
|
publisher: PDF Association
|
|
16
16
|
publisher_abbr: PDF Association
|
|
17
17
|
presentation-metadata-color-secondary: '#d03f4e' # PDFa logo red - good contrast for WCAG Level AA
|
|
18
|
-
presentation-metadata-backcover-text: pdfa.org
|
|
19
|
-
body-font: "'Source Sans
|
|
20
|
-
header-font: "'Source Sans
|
|
18
|
+
presentation-metadata-backcover-text: https://pdfa.org
|
|
19
|
+
body-font: "'Source Sans 3', 'Helvetica Neue', Helvetica, sans-serif"
|
|
20
|
+
header-font: "'Source Sans 3', 'Helvetica Neue', Helvetica, sans-serif"
|
|
21
|
+
monospace-font: "'Noto Sans Mono', Courier, monospace"
|
|
21
22
|
fonts: Source Sans 3;Source Sans 3 SemiBold;Source Sans Pro
|
|
22
23
|
output-extensions: xml,html,pdf
|
|
23
24
|
toclevels-html: 6
|
|
24
|
-
docidentifier:
|
|
25
|
+
docidentifier: '{{ doctype_abbr }}-{{ docnumeric | prepend: "000" | slice: -3,3 }} {% if draft %}v{{ draft }}{% endif %} {% if edition %}ed. {{ edition }}{% endif %}'
|
|
25
26
|
doctypes:
|
|
26
27
|
- taste: specification # Specification # The name goes into i18n.yaml
|
|
27
28
|
base: standard
|
|
29
|
+
abbrev: SPEC
|
|
28
30
|
override-attributes:
|
|
29
|
-
- presentation-metadata-color-secondary: '#
|
|
31
|
+
- presentation-metadata-color-secondary: '#4891af' # PDFa logo blue - insufficient contrast for WCAG Level AA
|
|
30
32
|
- taste: application-note # Application Note
|
|
31
33
|
base: report
|
|
32
34
|
abbrev: AN
|
|
@@ -45,12 +47,11 @@ doctypes:
|
|
|
45
47
|
stages:
|
|
46
48
|
- taste: draft
|
|
47
49
|
base: draft
|
|
48
|
-
|
|
50
|
+
abbrev: DRAFT
|
|
49
51
|
- taste: release-candidate
|
|
50
52
|
base: draft
|
|
51
|
-
|
|
53
|
+
abbrev: RC
|
|
52
54
|
- taste: published
|
|
53
55
|
base: published
|
|
54
56
|
default: true
|
|
55
57
|
published: true
|
|
56
|
-
|
data/data/pdfa/copyright.adoc
CHANGED
|
@@ -2,24 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
// This is authorized by the PDF Association.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
// Avoid heading tag
|
|
6
|
+
=== {blank}
|
|
6
7
|
|
|
7
8
|
Copyright (c) {{ docyear }} PDF Association
|
|
8
9
|
|
|
9
10
|
This work is licensed under the Creative Commons Attribution 4.0 International
|
|
10
|
-
License.
|
|
11
|
-
|
|
12
|
-
To view a copy of this license, visit
|
|
11
|
+
License. To view a copy of this license, visit
|
|
13
12
|
http://creativecommons.org/licenses/by/4.0/ or send a letter to Creative
|
|
14
13
|
Commons, PO Box 1866, Mountain View, CA 94042, USA.
|
|
15
14
|
|
|
16
|
-
PDF Association Inc. +
|
|
17
|
-
{blank} +
|
|
18
15
|
E-mail: copyright@pdfa.org +
|
|
19
|
-
|
|
20
|
-
Web: https://www.pdfa.org +
|
|
21
|
-
{blank} +
|
|
22
|
-
{blank}
|
|
16
|
+
Web: https://pdfa.org
|
|
23
17
|
|
|
24
18
|
Vendors own their respective copyrights and trademarks wherever they are
|
|
25
19
|
mentioned. Attention is drawn to the possibility that some of the elements of
|
|
@@ -43,7 +37,3 @@ any of the mentioned information, services, products, or providers.
|
|
|
43
37
|
=== {blank}
|
|
44
38
|
|
|
45
39
|
|
|
46
|
-
// [align=center]
|
|
47
|
-
// **PDF Association**:
|
|
48
|
-
|
|
49
|
-
// (c) PDF Association {{ docyear }} - All rights reserved
|
|
@@ -1,19 +1,46 @@
|
|
|
1
1
|
<div id='toggle'> <span>•</span> </div>
|
|
2
2
|
|
|
3
|
-
<div class="coverpage-container">
|
|
3
|
+
<div class="coverpage-container" style="padding-left: 22px"> <!-- padding-left required to avoid submarining left edge text below "toggle" div -->
|
|
4
4
|
|
|
5
|
-
<div class="logo">
|
|
6
|
-
|
|
7
|
-
</div>
|
|
5
|
+
<div class="logo">
|
|
6
|
+
<img src="{{ copublisher_logos[0] }}" alt="PDF Association logo"/>
|
|
7
|
+
</div>
|
|
8
8
|
|
|
9
|
-
<div>
|
|
10
|
-
|
|
11
|
-
</div>
|
|
9
|
+
<div>
|
|
10
|
+
<p class="doctitle-en">{{ doctitle }}</p>
|
|
11
|
+
</div>
|
|
12
12
|
|
|
13
|
-
<div
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
<div style="display: none;">
|
|
14
|
+
<!-- p>document.docid.id = {{ document.docid.id }}</p -->
|
|
15
|
+
<!-- p>document.docstatus.stage = {{ document.docstatus.stage }}</p -->
|
|
16
|
+
<!-- https://www.metanorma.org/develop/topics/metadata-and-boilerplate/#default-metadata -->
|
|
17
|
+
<p>doctype = {{ doctype }}</p>
|
|
18
|
+
<p>doctype_display = {{ doctype_display }}</p>
|
|
19
|
+
<p>doctype_abbr = {{ doctype_abbr }}</p>
|
|
20
|
+
<p>docidentifier = {{ docidentifier }}</p>
|
|
21
|
+
<p>docnumber = {{ docnumber }}</p>
|
|
22
|
+
<p>docnumeric = {{ docnumeric }}</p>
|
|
23
|
+
<p>docyear = {{ docyear }}</p>
|
|
24
|
+
<p>edition = {{ edition }}</p>
|
|
25
|
+
<p>edition_display = {{ edition_display }}</p>
|
|
26
|
+
<p>version = {{ version }}</p>
|
|
27
|
+
<p>version_display = {{ version_display }}</p>
|
|
28
|
+
<p>iteration = {{ iteration }}</p>
|
|
29
|
+
<p>draft = {{ draft }}</p>
|
|
30
|
+
<p>status = {{ status }}</p>
|
|
31
|
+
<p>stage = {{ stage }}</p>
|
|
32
|
+
<p>stage_display = {{ stage_display }}</p>
|
|
33
|
+
<p>stage_abbr = {{ stage_abbr }}</p>
|
|
34
|
+
<p>stageabbr = {{ stageabbr }}</p>
|
|
35
|
+
<p>statusabbr = {{ statusabbr }}</p>
|
|
36
|
+
<!-- p>doctype_abbreviated = {{ doctype_abbreviated }}</p -->
|
|
37
|
+
<!-- p>document.docstatus.stage.abbreviation = {{ document.docstatus.stage.abbreviation }}</p -->
|
|
17
38
|
</div>
|
|
18
39
|
|
|
40
|
+
<div class="docidentifier">
|
|
41
|
+
<p><b>
|
|
42
|
+
{{doctype_display}} : {{ docnumber }} {%if stage_display %} - <span style="color:red">{{stage_display}}</span>{% endif %}
|
|
43
|
+
</b></p>
|
|
44
|
+
</div>
|
|
45
|
+
<hr/>
|
|
19
46
|
</div>
|