metanorma-cli 1.3.3.1 → 1.3.4

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.
Files changed (950) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +62 -69
  3. data/gems/ruby/2.6.0/gems/fontist-1.2.0/Gemfile +4 -0
  4. data/gems/ruby/2.6.0/gems/fontist-1.2.0/LICENSE.txt +26 -0
  5. data/gems/ruby/2.6.0/gems/fontist-1.2.0/README.md +179 -0
  6. data/gems/ruby/2.6.0/gems/fontist-1.2.0/Rakefile +6 -0
  7. data/gems/ruby/2.6.0/gems/fontist-1.2.0/bin/console +11 -0
  8. data/gems/ruby/2.6.0/gems/fontist-1.2.0/bin/rspec +29 -0
  9. data/gems/ruby/2.6.0/gems/fontist-1.2.0/bin/setup +7 -0
  10. data/gems/ruby/2.6.0/gems/fontist-1.2.0/fontist.gemspec +32 -0
  11. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist.rb +48 -0
  12. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/errors.rb +10 -0
  13. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/font.rb +78 -0
  14. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/font_formula.rb +123 -0
  15. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formula.rb +90 -0
  16. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas.rb +15 -0
  17. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/andale_font.rb +79 -0
  18. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/arial_black_font.rb +78 -0
  19. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/cleartype_fonts.rb +226 -0
  20. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/comic_font.rb +77 -0
  21. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/courier_font.rb +80 -0
  22. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/euphemia_font.rb +85 -0
  23. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/georgia_font.rb +79 -0
  24. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/impact_font.rb +77 -0
  25. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/montserrat_font.rb +132 -0
  26. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/ms_truetype_fonts.rb +124 -0
  27. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/open_sans_fonts.rb +263 -0
  28. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/overpass_font.rb +73 -0
  29. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/source_fonts.rb +109 -0
  30. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/stix_fonts.rb +108 -0
  31. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/tahoma_font.rb +146 -0
  32. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/formulas/webding_font.rb +77 -0
  33. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/registry.rb +42 -0
  34. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/system.yml +17 -0
  35. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/system_font.rb +72 -0
  36. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/utils.rb +9 -0
  37. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/utils/downloader.rb +74 -0
  38. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/utils/dsl.rb +77 -0
  39. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/utils/exe_extractor.rb +72 -0
  40. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/utils/zip_extractor.rb +38 -0
  41. data/gems/ruby/2.6.0/gems/fontist-1.2.0/lib/fontist/version.rb +3 -0
  42. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fixtures/fonts/DejaVuSerif.ttf +0 -0
  43. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/font_formula_spec.rb +67 -0
  44. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/font_spec.rb +87 -0
  45. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formula_spec.rb +67 -0
  46. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/andale_font_spec.rb +29 -0
  47. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/arial_black_font_spec.rb +29 -0
  48. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/cleartype_fonts_spec.rb +38 -0
  49. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/comic_font_spec.rb +29 -0
  50. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/courier_font_spec.rb +29 -0
  51. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/euphemia_font_spec.rb +29 -0
  52. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/georgia_font_spec.rb +29 -0
  53. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/impact_font_spec.rb +29 -0
  54. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/montserrat_font_spec.rb +29 -0
  55. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/ms_truetype_fonts_spec.rb +29 -0
  56. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/open_sans_fonts_spec.rb +29 -0
  57. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/overpass_font_spec.rb +29 -0
  58. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/source_fonts_spec.rb +31 -0
  59. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/stix_fonts_spec.rb +29 -0
  60. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/tahoma_font_spec.rb +29 -0
  61. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/formulas/webding_font_spec.rb +29 -0
  62. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/registry_spec.rb +47 -0
  63. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/system_font_spec.rb +44 -0
  64. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist/utils/downloader_spec.rb +35 -0
  65. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/fontist_spec.rb +5 -0
  66. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/spec_helper.rb +22 -0
  67. data/gems/ruby/2.6.0/gems/fontist-1.2.0/spec/support/fontist_helper.rb +10 -0
  68. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/CODE_OF_CONDUCT.md +46 -0
  69. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/Gemfile +11 -0
  70. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/LICENSE +25 -0
  71. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/Rakefile +8 -0
  72. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/bin/rspec +18 -0
  73. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/isodoc.gemspec +51 -0
  74. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc-yaml/i18n-en.yaml +98 -0
  75. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc-yaml/i18n-fr.yaml +91 -0
  76. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc-yaml/i18n-zh-Hans.yaml +92 -0
  77. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc.rb +30 -0
  78. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/all.css +207 -0
  79. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/all.scss +6 -0
  80. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/bands.scss +79 -0
  81. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/blocks.css +0 -0
  82. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/blocks.scss +128 -0
  83. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/coverpage.css +0 -0
  84. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/coverpage.scss +7 -0
  85. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/defaults.css +0 -0
  86. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/defaults.scss +26 -0
  87. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/metanorma_word.css +34 -0
  88. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/metanorma_word.scss +30 -0
  89. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/nav.css +0 -0
  90. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/nav.scss +180 -0
  91. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/reset.css +105 -0
  92. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/reset.scss +129 -0
  93. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/typography.css +0 -0
  94. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/base_style/typography.scss +67 -0
  95. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/class_utils.rb +30 -0
  96. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/common.rb +29 -0
  97. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/convert.rb +250 -0
  98. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/function.rb +4 -0
  99. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/function/blocks.rb +208 -0
  100. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/function/blocks_example_note.rb +107 -0
  101. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/function/cleanup.rb +218 -0
  102. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/function/inline.rb +155 -0
  103. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/function/inline_simple.rb +72 -0
  104. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/function/lists.rb +94 -0
  105. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/function/references.rb +214 -0
  106. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/function/reqt.rb +115 -0
  107. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/function/section.rb +228 -0
  108. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/function/table.rb +108 -0
  109. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/function/terms.rb +78 -0
  110. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/function/to_word_html.rb +230 -0
  111. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/function/utils.rb +190 -0
  112. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/gem_tasks.rb +133 -0
  113. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/headlesshtml_convert.rb +45 -0
  114. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/html_convert.rb +30 -0
  115. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/html_function.rb +4 -0
  116. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/html_function/comments.rb +144 -0
  117. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/html_function/footnotes.rb +83 -0
  118. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/html_function/html.rb +115 -0
  119. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/html_function/postprocess.rb +243 -0
  120. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/i18n.rb +122 -0
  121. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/metadata.rb +235 -0
  122. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/metadata_date.rb +39 -0
  123. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/pdf_convert.rb +50 -0
  124. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/presentation_function/block.rb +138 -0
  125. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/presentation_function/inline.rb +131 -0
  126. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/presentation_function/section.rb +46 -0
  127. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/presentation_xml_convert.rb +62 -0
  128. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/sassc_importer.rb +11 -0
  129. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/version.rb +3 -0
  130. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/word_convert.rb +45 -0
  131. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/word_function.rb +4 -0
  132. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/word_function/body.rb +214 -0
  133. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/word_function/comments.rb +145 -0
  134. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/word_function/footnotes.rb +105 -0
  135. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/word_function/inline.rb +77 -0
  136. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/word_function/postprocess.rb +247 -0
  137. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/word_function/postprocess_cover.rb +79 -0
  138. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/word_function/table.rb +60 -0
  139. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/xref.rb +61 -0
  140. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/xref/xref_anchor.rb +56 -0
  141. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/xref/xref_counter.rb +74 -0
  142. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/xref/xref_gen.rb +117 -0
  143. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/xref/xref_gen_seq.rb +163 -0
  144. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/xref/xref_sect_gen.rb +151 -0
  145. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/lib/isodoc/xslfo_convert.rb +46 -0
  146. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/assets/html.scss +6 -0
  147. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/assets/i18n.yaml +16 -0
  148. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/assets/odf.emf +0 -0
  149. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/assets/odf.svg +4 -0
  150. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/assets/odf1.svg +4 -0
  151. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/assets/rice_image1 +0 -0
  152. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/assets/std.css +2 -0
  153. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/assets/word.css +2 -0
  154. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/isodoc/blocks_spec.rb +2643 -0
  155. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/isodoc/cleanup_spec.rb +1188 -0
  156. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/isodoc/footnotes_spec.rb +280 -0
  157. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/isodoc/i18n_spec.rb +1131 -0
  158. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/isodoc/inline_spec.rb +995 -0
  159. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/isodoc/lists_spec.rb +346 -0
  160. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/isodoc/metadata_spec.rb +342 -0
  161. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/isodoc/postproc_spec.rb +1536 -0
  162. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/isodoc/presentation_xml_spec.rb +20 -0
  163. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/isodoc/ref_spec.rb +427 -0
  164. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/isodoc/section_spec.rb +993 -0
  165. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/isodoc/table_spec.rb +454 -0
  166. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/isodoc/terms_spec.rb +268 -0
  167. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/isodoc/xref_spec.rb +2764 -0
  168. data/gems/ruby/2.6.0/gems/isodoc-1.2.1/spec/spec_helper.rb +74 -0
  169. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/CODE_OF_CONDUCT.md +74 -0
  170. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/Gemfile +11 -0
  171. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/LICENSE +25 -0
  172. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/Rakefile +8 -0
  173. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/bin/console +14 -0
  174. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/bin/rspec +18 -0
  175. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/bin/setup +8 -0
  176. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/asciidoctor/cc.rb +5 -0
  177. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/asciidoctor/cc/basicdoc.rng +1059 -0
  178. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/asciidoctor/cc/biblio.rng +1237 -0
  179. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/asciidoctor/cc/cc.rng +116 -0
  180. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/asciidoctor/cc/converter.rb +72 -0
  181. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/asciidoctor/cc/front.rb +93 -0
  182. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/asciidoctor/cc/isodoc.rng +1510 -0
  183. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/asciidoctor/cc/reqt.rng +194 -0
  184. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/asciidoctor/cc/validate.rb +29 -0
  185. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/asciidoctor/cc/validate_section.rb +124 -0
  186. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/base_convert.rb +21 -0
  187. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/csd.standard.xsl +3371 -0
  188. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/html/_coverpage.css +307 -0
  189. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/html/_coverpage.scss +130 -0
  190. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/html/cc.css +801 -0
  191. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/html/cc.scss +763 -0
  192. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/html/htmlstyle.css +1013 -0
  193. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/html/htmlstyle.scss +409 -0
  194. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/html/wordstyle.css +1253 -0
  195. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/html/wordstyle.scss +1156 -0
  196. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/html_convert.rb +53 -0
  197. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/i18n-en.yaml +2 -0
  198. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/i18n.rb +10 -0
  199. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/init.rb +23 -0
  200. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/metadata.rb +61 -0
  201. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/pdf_convert.rb +21 -0
  202. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/presentation_xml_convert.rb +19 -0
  203. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/word_convert.rb +40 -0
  204. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/isodoc/cc/xref.rb +6 -0
  205. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/metanorma-cc.rb +11 -0
  206. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/metanorma/cc.rb +29 -0
  207. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/metanorma/cc/processor.rb +49 -0
  208. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/lib/metanorma/cc/version.rb +5 -0
  209. data/gems/ruby/2.6.0/gems/metanorma-cc-1.5.0/metanorma-cc.gemspec +44 -0
  210. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/CODE_OF_CONDUCT.md +74 -0
  211. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/Gemfile +11 -0
  212. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/LICENSE +25 -0
  213. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/Rakefile +8 -0
  214. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/bin/console +14 -0
  215. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/bin/rspec +18 -0
  216. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/bin/setup +8 -0
  217. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/asciidoctor/csa.rb +5 -0
  218. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/asciidoctor/csa/basicdoc.rng +1059 -0
  219. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/asciidoctor/csa/biblio.rng +1237 -0
  220. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/asciidoctor/csa/converter.rb +139 -0
  221. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/asciidoctor/csa/csa.rng +115 -0
  222. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/asciidoctor/csa/isodoc.rng +1510 -0
  223. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/asciidoctor/csa/reqt.rng +194 -0
  224. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/asciidoctor/csa/validate.rb +22 -0
  225. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/base_convert.rb +23 -0
  226. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/csa.standard.xsl +3387 -0
  227. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/html/csa.css +801 -0
  228. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/html/csa.scss +763 -0
  229. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/html/htmlstyle.css +1070 -0
  230. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/html/htmlstyle.scss +806 -0
  231. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/html/wordstyle.css +1253 -0
  232. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/html/wordstyle.scss +1157 -0
  233. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/html_convert.rb +60 -0
  234. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/i18n-en.yaml +2 -0
  235. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/i18n.rb +10 -0
  236. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/init.rb +24 -0
  237. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/metadata.rb +51 -0
  238. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/pdf_convert.rb +22 -0
  239. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/presentation_xml_convert.rb +19 -0
  240. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/word_convert.rb +42 -0
  241. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/isodoc/csa/xref.rb +6 -0
  242. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/metanorma-csa.rb +11 -0
  243. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/metanorma/csa.rb +7 -0
  244. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/metanorma/csa/processor.rb +52 -0
  245. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/lib/metanorma/csa/version.rb +7 -0
  246. data/gems/ruby/2.6.0/gems/metanorma-csa-1.6.0/metanorma-csa.gemspec +52 -0
  247. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/CODE_OF_CONDUCT.md +74 -0
  248. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/Gemfile +10 -0
  249. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/LICENSE +25 -0
  250. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/Rakefile +23 -0
  251. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/asciidoctor-gb.gemspec.old +47 -0
  252. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/bin/console +14 -0
  253. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/bin/rspec +18 -0
  254. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/bin/setup +8 -0
  255. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/asciidoctor/gb.rb +5 -0
  256. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/asciidoctor/gb/basicdoc.rng +1059 -0
  257. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/asciidoctor/gb/biblio.rng +1237 -0
  258. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/asciidoctor/gb/cleanup.rb +130 -0
  259. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/asciidoctor/gb/converter.rb +146 -0
  260. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/asciidoctor/gb/front.rb +242 -0
  261. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/asciidoctor/gb/front_id.rb +57 -0
  262. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/asciidoctor/gb/gbstandard.rng +300 -0
  263. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/asciidoctor/gb/isodoc.rng +1510 -0
  264. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/asciidoctor/gb/isostandard.rng +533 -0
  265. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/asciidoctor/gb/reqt.rng +194 -0
  266. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/asciidoctor/gb/section_input.rb +42 -0
  267. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/asciidoctor/gb/validate.rb +132 -0
  268. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/base_convert.rb +211 -0
  269. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/cleanup.rb +79 -0
  270. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/common.rb +72 -0
  271. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/gb.recommendation.xsl +3739 -0
  272. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/_coverpage.css +193 -0
  273. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/_coverpage.scss +249 -0
  274. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/gb-logos/gb-issuer-default.svg +980 -0
  275. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/gb-logos/gb-standard-db.svg +1 -0
  276. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/gb-logos/gb-standard-gb.svg +1 -0
  277. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/gb-logos/gb-standard-gjb.svg +1 -0
  278. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/gb-logos/gb-standard-gm.svg +1 -0
  279. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/gb-logos/gb-standard-jjf.svg +1 -0
  280. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/gb-logos/gb-standard-zb.svg +13 -0
  281. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/gb.css +657 -0
  282. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/gb.scss +617 -0
  283. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/htmlcompliantstyle.css +1303 -0
  284. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/htmlcompliantstyle.scss +1004 -0
  285. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/htmlstyle.css +844 -0
  286. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/htmlstyle.scss +414 -0
  287. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/wordstyle.css +2932 -0
  288. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html/wordstyle.scss +2750 -0
  289. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/html_convert.rb +70 -0
  290. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/i18n-en.yaml +11 -0
  291. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/i18n-zh-Hans.yaml +11 -0
  292. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/i18n.rb +16 -0
  293. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/init.rb +29 -0
  294. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/metadata.rb +225 -0
  295. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/pdf_convert.rb +21 -0
  296. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/presentation_xml_convert.rb +26 -0
  297. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/word_convert.rb +126 -0
  298. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/isodoc/gb/xref.rb +6 -0
  299. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/metanorma-gb.rb +12 -0
  300. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/metanorma/gb.rb +7 -0
  301. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/metanorma/gb/processor.rb +73 -0
  302. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/lib/metanorma/gb/version.rb +5 -0
  303. data/gems/ruby/2.6.0/gems/metanorma-gb-1.5.1/metanorma-gb.gemspec +49 -0
  304. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/CODE_OF_CONDUCT.md +74 -0
  305. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/Gemfile +11 -0
  306. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/LICENSE +25 -0
  307. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/Rakefile +6 -0
  308. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/bin/console +14 -0
  309. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/bin/rspec +17 -0
  310. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/bin/setup +8 -0
  311. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/asciidoctor/generic.rb +7 -0
  312. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/asciidoctor/generic/basicdoc.rng +1059 -0
  313. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/asciidoctor/generic/biblio.rng +1237 -0
  314. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/asciidoctor/generic/converter.rb +219 -0
  315. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/asciidoctor/generic/generic.rng +79 -0
  316. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/asciidoctor/generic/isodoc.rng +1510 -0
  317. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/asciidoctor/generic/reqt.rng +194 -0
  318. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/asciidoctor/generic/rsd.rng +225 -0
  319. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/isodoc/generic.rb +11 -0
  320. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/isodoc/generic/base_convert.rb +43 -0
  321. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/isodoc/generic/html/generic.scss +766 -0
  322. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/isodoc/generic/html/htmlstyle.scss +710 -0
  323. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/isodoc/generic/html/wordstyle.scss +1157 -0
  324. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/isodoc/generic/html_convert.rb +65 -0
  325. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/isodoc/generic/init.rb +27 -0
  326. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/isodoc/generic/metadata.rb +59 -0
  327. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/isodoc/generic/pdf_convert.rb +66 -0
  328. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/isodoc/generic/presentation_xml_convert.rb +19 -0
  329. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/isodoc/generic/word_convert.rb +60 -0
  330. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/isodoc/generic/xref.rb +6 -0
  331. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/metanorma-generic.rb +8 -0
  332. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/metanorma/generic.rb +108 -0
  333. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/metanorma/generic/processor.rb +88 -0
  334. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/metanorma/generic/version.rb +5 -0
  335. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/metanorma-generic.gemspec +44 -0
  336. data/gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/metanorma.yml.example +61 -0
  337. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/CODE_OF_CONDUCT.md +74 -0
  338. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/Gemfile +7 -0
  339. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/LICENSE +25 -0
  340. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/Rakefile +8 -0
  341. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/bin/rspec +18 -0
  342. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/asciidoctor/iec/basicdoc.rng +1059 -0
  343. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/asciidoctor/iec/biblio.rng +1237 -0
  344. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/asciidoctor/iec/converter.rb +80 -0
  345. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/asciidoctor/iec/front.rb +220 -0
  346. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/asciidoctor/iec/iec.rng +43 -0
  347. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/asciidoctor/iec/isodoc.rng +1510 -0
  348. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/asciidoctor/iec/isostandard.rng +533 -0
  349. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/asciidoctor/iec/reqt.rng +194 -0
  350. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/base_convert.rb +147 -0
  351. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/html/htmlstyle.css +962 -0
  352. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/html/htmlstyle.scss +703 -0
  353. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/html/isodoc.css +845 -0
  354. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/html/isodoc.scss +836 -0
  355. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/html/wordstyle.css +2013 -0
  356. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/html/wordstyle.scss +1854 -0
  357. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/html_convert.rb +43 -0
  358. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/i18n-en.yaml +18 -0
  359. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/i18n-fr.yaml +18 -0
  360. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/i18n-zh-Hans.yaml +14 -0
  361. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/i18n.rb +19 -0
  362. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/iec.international-standard.xsl +4782 -0
  363. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/init.rb +29 -0
  364. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/metadata.rb +28 -0
  365. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/pdf_convert.rb +21 -0
  366. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/presentation_xml_convert.rb +35 -0
  367. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/word_convert.rb +188 -0
  368. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/isodoc/iec/xref.rb +45 -0
  369. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/metanorma-iec.rb +15 -0
  370. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/metanorma/iec.rb +8 -0
  371. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/metanorma/iec/processor.rb +49 -0
  372. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/lib/metanorma/iec/version.rb +6 -0
  373. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/metanorma-iec.gemspec +45 -0
  374. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/asciidoctor-iec/base_spec.rb +602 -0
  375. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/asciidoctor-iec/blocks_spec.rb +481 -0
  376. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/asciidoctor-iec/cleanup_spec.rb +440 -0
  377. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/asciidoctor-iec/iev_spec.rb +234 -0
  378. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/asciidoctor-iec/inline_spec.rb +164 -0
  379. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/asciidoctor-iec/lists_spec.rb +190 -0
  380. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/asciidoctor-iec/section_spec.rb +369 -0
  381. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/asciidoctor-iec/validate_spec.rb +20 -0
  382. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/assets/html.css +2 -0
  383. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/assets/word.css +2 -0
  384. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/isodoc/blocks_spec.rb +219 -0
  385. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/isodoc/i18n_spec.rb +648 -0
  386. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/isodoc/iev_spec.rb +564 -0
  387. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/isodoc/inline_spec.rb +287 -0
  388. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/isodoc/iso_spec.rb +217 -0
  389. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/isodoc/metadata_spec.rb +242 -0
  390. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/isodoc/postproc_spec.rb +299 -0
  391. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/isodoc/ref_spec.rb +376 -0
  392. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/isodoc/section_spec.rb +541 -0
  393. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/isodoc/terms_spec.rb +193 -0
  394. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/metanorma/processor_spec.rb +76 -0
  395. data/gems/ruby/2.6.0/gems/metanorma-iec-1.2.1/spec/spec_helper.rb +296 -0
  396. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/CODE_OF_CONDUCT.md +74 -0
  397. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/Gemfile +13 -0
  398. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/Guardfile +22 -0
  399. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/LICENSE +25 -0
  400. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/Rakefile +6 -0
  401. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/bin/asciidoctor-rfc2 +14 -0
  402. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/bin/asciidoctor-rfc2.bat +2 -0
  403. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/bin/asciidoctor-rfc3 +14 -0
  404. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/bin/console +14 -0
  405. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/bin/rspec +17 -0
  406. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/bin/setup +8 -0
  407. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/docs/installation.md +21 -0
  408. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/docs/navigation.md +7 -0
  409. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/docs/overview.md +5 -0
  410. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/asciidoctor/ietf/basicdoc.rng +1059 -0
  411. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/asciidoctor/ietf/biblio.rng +1237 -0
  412. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/asciidoctor/ietf/blocks.rb +78 -0
  413. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/asciidoctor/ietf/converter.rb +201 -0
  414. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/asciidoctor/ietf/front.rb +144 -0
  415. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/asciidoctor/ietf/ietf.rng +888 -0
  416. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/asciidoctor/ietf/isodoc.rng +1510 -0
  417. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/asciidoctor/ietf/reqt.rng +194 -0
  418. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/asciidoctor/ietf/validate.rb +84 -0
  419. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/isodoc/ietf/blocks.rb +227 -0
  420. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/isodoc/ietf/cleanup.rb +230 -0
  421. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/isodoc/ietf/footnotes.rb +70 -0
  422. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/isodoc/ietf/front.rb +236 -0
  423. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/isodoc/ietf/inline.rb +167 -0
  424. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/isodoc/ietf/metadata.rb +54 -0
  425. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/isodoc/ietf/references.rb +148 -0
  426. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/isodoc/ietf/reqt.rb +79 -0
  427. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/isodoc/ietf/rfc_convert.rb +82 -0
  428. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/isodoc/ietf/section.rb +175 -0
  429. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/isodoc/ietf/table.rb +43 -0
  430. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/isodoc/ietf/terms.rb +52 -0
  431. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/isodoc/ietf/xref.rb +20 -0
  432. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/metanorma-ietf.rb +8 -0
  433. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/metanorma/ietf.rb +8 -0
  434. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/metanorma/ietf/processor.rb +103 -0
  435. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/lib/metanorma/ietf/version.rb +5 -0
  436. data/gems/ruby/2.6.0/gems/metanorma-ietf-2.2.0/metanorma-ietf.gemspec +53 -0
  437. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/CODE_OF_CONDUCT.md +74 -0
  438. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/Gemfile +11 -0
  439. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/LICENSE +25 -0
  440. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/Rakefile +8 -0
  441. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/bin/console +14 -0
  442. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/bin/rspec +18 -0
  443. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/bin/setup +8 -0
  444. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/asciidoctor/iho.rb +4 -0
  445. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/asciidoctor/iho/basicdoc.rng +1059 -0
  446. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/asciidoctor/iho/biblio.rng +1237 -0
  447. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/asciidoctor/iho/converter.rb +105 -0
  448. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/asciidoctor/iho/iho.rng +144 -0
  449. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/asciidoctor/iho/isodoc.rng +1510 -0
  450. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/asciidoctor/iho/reqt.rng +194 -0
  451. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/base_convert.rb +20 -0
  452. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/html/htmlstyle.css +1007 -0
  453. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/html/htmlstyle.scss +757 -0
  454. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/html/iho.css +798 -0
  455. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/html/iho.scss +759 -0
  456. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/html/logo.svg +555 -0
  457. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/html/wordstyle.css +1252 -0
  458. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/html/wordstyle.scss +1155 -0
  459. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/html_convert.rb +34 -0
  460. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/iho.specification.xsl +3501 -0
  461. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/iho.standard.xsl +3501 -0
  462. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/init.rb +23 -0
  463. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/metadata.rb +26 -0
  464. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/pdf_convert.rb +23 -0
  465. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/presentation_xml_convert.rb +12 -0
  466. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/word_convert.rb +47 -0
  467. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/isodoc/iho/xref.rb +64 -0
  468. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/metanorma-iho.rb +13 -0
  469. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/metanorma/iho.rb +32 -0
  470. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/metanorma/iho/processor.rb +46 -0
  471. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/lib/metanorma/iho/version.rb +5 -0
  472. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/metanorma-iho.gemspec +44 -0
  473. data/gems/ruby/2.6.0/gems/metanorma-iho-0.2.0/metanorma.yml +56 -0
  474. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/CODE_OF_CONDUCT.md +46 -0
  475. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/Gemfile +14 -0
  476. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/LICENSE +25 -0
  477. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/Makefile +39 -0
  478. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/Rakefile +8 -0
  479. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/bin/rspec +18 -0
  480. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/base.rb +67 -0
  481. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/basicdoc.rng +1059 -0
  482. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/biblio.rng +1237 -0
  483. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/cleanup.rb +129 -0
  484. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/converter.rb +18 -0
  485. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/front.rb +138 -0
  486. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/front_id.rb +196 -0
  487. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/isodoc.rng +1510 -0
  488. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/isostandard-amd.rng +98 -0
  489. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/isostandard.rnc +176 -0
  490. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/isostandard.rng +533 -0
  491. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/macros.rb +21 -0
  492. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/reqt.rng +194 -0
  493. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/section.rb +46 -0
  494. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/term_lookup_cleanup.rb +86 -0
  495. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/validate.rb +194 -0
  496. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/validate_requirements.rb +105 -0
  497. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/validate_section.rb +185 -0
  498. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/validate_style.rb +150 -0
  499. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/asciidoctor/iso/validate_title.rb +99 -0
  500. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/base_convert.rb +156 -0
  501. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/html/htmlstyle.css +47 -0
  502. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/html/htmlstyle.scss +45 -0
  503. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/html/isodoc.css +862 -0
  504. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/html/isodoc.scss +851 -0
  505. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/html/style-human.css +968 -0
  506. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/html/style-human.scss +695 -0
  507. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/html/style-iso.css +996 -0
  508. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/html/style-iso.scss +712 -0
  509. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/html/wordstyle.css +1515 -0
  510. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/html/wordstyle.scss +1393 -0
  511. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/html_convert.rb +55 -0
  512. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/i18n-en.yaml +11 -0
  513. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/i18n-fr.yaml +10 -0
  514. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/i18n-zh-Hans.yaml +8 -0
  515. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/i18n.rb +19 -0
  516. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/init.rb +33 -0
  517. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/iso.amendment.xsl +4638 -0
  518. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/iso.international-standard.xsl +4638 -0
  519. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/metadata.rb +217 -0
  520. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/pdf_convert.rb +26 -0
  521. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/presentation_xml_convert.rb +111 -0
  522. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/sections.rb +61 -0
  523. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/sts_convert.rb +31 -0
  524. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/word_convert.rb +127 -0
  525. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/isodoc/iso/xref.rb +113 -0
  526. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/metanorma-iso.rb +14 -0
  527. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/metanorma/iso.rb +7 -0
  528. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/metanorma/iso/processor.rb +62 -0
  529. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/lib/metanorma/iso/version.rb +5 -0
  530. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/metanorma-iso.gemspec +50 -0
  531. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/asciidoctor-iso/amd_spec.rb +726 -0
  532. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/asciidoctor-iso/base_spec.rb +593 -0
  533. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/asciidoctor-iso/blocks_spec.rb +482 -0
  534. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/asciidoctor-iso/cleanup_spec.rb +995 -0
  535. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/asciidoctor-iso/inline_spec.rb +164 -0
  536. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/asciidoctor-iso/lists_spec.rb +190 -0
  537. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/asciidoctor-iso/macros_spec.rb +310 -0
  538. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/asciidoctor-iso/refs_spec.rb +286 -0
  539. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/asciidoctor-iso/section_spec.rb +357 -0
  540. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/asciidoctor-iso/table_spec.rb +307 -0
  541. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/asciidoctor-iso/validate_spec.rb +1127 -0
  542. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/assets/html.css +2 -0
  543. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/assets/i18n.yaml +2 -0
  544. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/assets/std.css +2 -0
  545. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/assets/word.css +2 -0
  546. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/examples/english.yaml +69 -0
  547. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/examples/rice.sh +4 -0
  548. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/isodoc/amd_spec.rb +808 -0
  549. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/isodoc/blocks_spec.rb +534 -0
  550. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/isodoc/i18n_spec.rb +954 -0
  551. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/isodoc/inline_spec.rb +331 -0
  552. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/isodoc/iso_spec.rb +384 -0
  553. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/isodoc/metadata_spec.rb +248 -0
  554. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/isodoc/postproc_spec.rb +708 -0
  555. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/isodoc/ref_spec.rb +346 -0
  556. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/isodoc/section_spec.rb +555 -0
  557. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/isodoc/table_spec.rb +426 -0
  558. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/isodoc/terms_spec.rb +202 -0
  559. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/isodoc/xref_spec.rb +1477 -0
  560. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/metanorma/processor_spec.rb +61 -0
  561. data/gems/ruby/2.6.0/gems/metanorma-iso-1.5.1/spec/spec_helper.rb +267 -0
  562. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/CODE_OF_CONDUCT.md +74 -0
  563. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/Gemfile +11 -0
  564. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/LICENSE +25 -0
  565. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/Rakefile +8 -0
  566. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/bin/console +14 -0
  567. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/bin/rspec +18 -0
  568. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/bin/setup +8 -0
  569. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/asciidoctor/itu.rb +7 -0
  570. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/asciidoctor/itu/basicdoc.rng +1059 -0
  571. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/asciidoctor/itu/biblio.rng +1237 -0
  572. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/asciidoctor/itu/cleanup.rb +205 -0
  573. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/asciidoctor/itu/converter.rb +143 -0
  574. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/asciidoctor/itu/front.rb +216 -0
  575. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/asciidoctor/itu/isodoc.rng +1510 -0
  576. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/asciidoctor/itu/itu.rng +264 -0
  577. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/asciidoctor/itu/macros.rb +27 -0
  578. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/asciidoctor/itu/reqt.rng +194 -0
  579. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/asciidoctor/itu/validate.rb +145 -0
  580. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu.rb +12 -0
  581. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/base_convert.rb +196 -0
  582. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/html/International_Telecommunication_Union_Logo.svg +1 -0
  583. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/html/_coverpage.css +349 -0
  584. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/html/_coverpage.scss +183 -0
  585. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/html/htmlstyle.css +1159 -0
  586. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/html/htmlstyle.scss +601 -0
  587. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/html/itu.css +1138 -0
  588. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/html/itu.scss +1097 -0
  589. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/html/wordstyle.css +1808 -0
  590. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/html/wordstyle.scss +1679 -0
  591. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/html_convert.rb +73 -0
  592. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/i18n-en.yaml +41 -0
  593. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/i18n.rb +14 -0
  594. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/init.rb +29 -0
  595. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/itu.recommendation-annex.xsl +3798 -0
  596. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/itu.recommendation.xsl +3798 -0
  597. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/itu.resolution.xsl +3798 -0
  598. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/metadata.rb +96 -0
  599. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/pdf_convert.rb +25 -0
  600. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/presentation_xml_convert.rb +55 -0
  601. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/ref.rb +130 -0
  602. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/terms.rb +64 -0
  603. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/word_convert.rb +238 -0
  604. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/isodoc/itu/xref.rb +175 -0
  605. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/metanorma-itu.rb +8 -0
  606. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/metanorma/itu.rb +9 -0
  607. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/metanorma/itu/processor.rb +53 -0
  608. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/lib/metanorma/itu/version.rb +5 -0
  609. data/gems/ruby/2.6.0/gems/metanorma-itu-1.2.0/metanorma-itu.gemspec +44 -0
  610. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/CODE_OF_CONDUCT.md +74 -0
  611. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/Gemfile +11 -0
  612. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/LICENSE +25 -0
  613. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/Rakefile +8 -0
  614. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/bin/console +14 -0
  615. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/bin/rspec +18 -0
  616. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/bin/setup +8 -0
  617. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/asciidoctor/m3aawg.rb +5 -0
  618. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/asciidoctor/m3aawg/basicdoc.rng +1059 -0
  619. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/asciidoctor/m3aawg/biblio.rng +1237 -0
  620. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/asciidoctor/m3aawg/converter.rb +142 -0
  621. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/asciidoctor/m3aawg/isodoc.rng +1510 -0
  622. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/asciidoctor/m3aawg/m3d.rng +109 -0
  623. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/asciidoctor/m3aawg/reqt.rng +194 -0
  624. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/asciidoctor/m3aawg/validate.rb +22 -0
  625. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/base_convert.rb +22 -0
  626. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/html/htmlstyle.css +1030 -0
  627. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/html/htmlstyle.scss +733 -0
  628. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/html/m3d.css +758 -0
  629. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/html/m3d.scss +742 -0
  630. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/html/wordstyle.css +1278 -0
  631. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/html/wordstyle.scss +1174 -0
  632. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/html_convert.rb +65 -0
  633. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/i18n-en.yaml +1 -0
  634. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/i18n.rb +10 -0
  635. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/init.rb +27 -0
  636. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/m3d.report.xsl +3408 -0
  637. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/metadata.rb +53 -0
  638. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/pdf_convert.rb +22 -0
  639. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/presentation_xml_convert.rb +19 -0
  640. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/word_convert.rb +63 -0
  641. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/isodoc/m3aawg/xref.rb +6 -0
  642. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/metanorma-m3aawg.rb +12 -0
  643. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/metanorma/m3aawg.rb +7 -0
  644. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/metanorma/m3aawg/processor.rb +50 -0
  645. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/lib/metanorma/m3aawg/version.rb +5 -0
  646. data/gems/ruby/2.6.0/gems/metanorma-m3aawg-1.5.0/metanorma-m3d.gemspec +47 -0
  647. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/CODE_OF_CONDUCT.md +74 -0
  648. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/Gemfile +11 -0
  649. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/LICENSE +25 -0
  650. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/Rakefile +8 -0
  651. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/bin/console +14 -0
  652. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/bin/rspec +18 -0
  653. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/bin/setup +8 -0
  654. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/asciidoctor/nist.rb +5 -0
  655. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/asciidoctor/nist/basicdoc.rng +1059 -0
  656. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/asciidoctor/nist/biblio.rng +1237 -0
  657. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/asciidoctor/nist/boilerplate.rb +107 -0
  658. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/asciidoctor/nist/cleanup.rb +206 -0
  659. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/asciidoctor/nist/converter.rb +218 -0
  660. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/asciidoctor/nist/front.rb +259 -0
  661. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/asciidoctor/nist/front_id.rb +124 -0
  662. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/asciidoctor/nist/isodoc.rng +1510 -0
  663. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/asciidoctor/nist/nist.rng +186 -0
  664. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/asciidoctor/nist/reqt.rng +194 -0
  665. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/asciidoctor/nist/validate.rb +95 -0
  666. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/base_convert.rb +185 -0
  667. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/common.xsl +1246 -0
  668. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/html/_coverpage.css +243 -0
  669. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/html/_coverpage.scss +328 -0
  670. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/html/htmlstyle.css +955 -0
  671. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/html/htmlstyle.scss +463 -0
  672. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/html/nist.css +1055 -0
  673. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/html/nist.scss +1010 -0
  674. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/html/nist_cswp.css +996 -0
  675. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/html/nist_cswp.scss +955 -0
  676. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/html/wordstyle.css +1440 -0
  677. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/html/wordstyle.scss +1348 -0
  678. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/html/wordstyle_cswp.css +1119 -0
  679. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/html/wordstyle_cswp.scss +1026 -0
  680. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/html_convert.rb +137 -0
  681. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/i18n-en.yaml +13 -0
  682. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/i18n.rb +10 -0
  683. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/init.rb +37 -0
  684. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/metadata.rb +236 -0
  685. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/metadata_id.rb +125 -0
  686. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/nist.cswp.xsl +3645 -0
  687. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/nist.sp.xsl +4726 -0
  688. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/pdf_convert.rb +22 -0
  689. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/presentation_xml_convert.rb +80 -0
  690. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/refs.rb +89 -0
  691. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/render.rb +255 -0
  692. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/render_contributors.rb +80 -0
  693. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/render_dates.rb +42 -0
  694. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/section.rb +58 -0
  695. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/word_convert.rb +173 -0
  696. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/word_convert_toc.rb +86 -0
  697. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/isodoc/nist/xref.rb +61 -0
  698. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/metanorma-nist.rb +14 -0
  699. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/metanorma/nist.rb +7 -0
  700. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/metanorma/nist/processor.rb +48 -0
  701. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/lib/metanorma/nist/version.rb +5 -0
  702. data/gems/ruby/2.6.0/gems/metanorma-nist-1.2.0/metanorma-nist.gemspec +47 -0
  703. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/CODE_OF_CONDUCT.md +74 -0
  704. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/Gemfile +11 -0
  705. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/LICENSE +25 -0
  706. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/README.adoc.old +187 -0
  707. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/Rakefile +8 -0
  708. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/bin/console +14 -0
  709. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/bin/rspec +17 -0
  710. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/bin/setup +8 -0
  711. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/asciidoctor/ogc.rb +7 -0
  712. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/asciidoctor/ogc/basicdoc.rng +1059 -0
  713. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/asciidoctor/ogc/biblio.rng +1237 -0
  714. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/asciidoctor/ogc/converter.rb +134 -0
  715. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/asciidoctor/ogc/front.rb +195 -0
  716. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/asciidoctor/ogc/isodoc.rng +1510 -0
  717. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/asciidoctor/ogc/ogc.rng +124 -0
  718. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/asciidoctor/ogc/reqt.rng +194 -0
  719. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/asciidoctor/ogc/validate.rb +108 -0
  720. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc.rb +12 -0
  721. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/base_convert.rb +79 -0
  722. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/biblio.rb +120 -0
  723. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/html/_coverpage.css +195 -0
  724. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/html/_coverpage.scss +247 -0
  725. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/html/htmlstyle.css +1084 -0
  726. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/html/htmlstyle.scss +599 -0
  727. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/html/ogc.css +835 -0
  728. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/html/ogc.scss +792 -0
  729. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/html/wordstyle.css +1253 -0
  730. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/html/wordstyle.scss +1155 -0
  731. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/html_convert.rb +89 -0
  732. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/i18n-en.yaml +11 -0
  733. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/i18n.rb +10 -0
  734. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/init.rb +32 -0
  735. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/metadata.rb +111 -0
  736. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.abstract-specification-topic.xsl +3802 -0
  737. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.best-practice.xsl +3802 -0
  738. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.change-request-supporting-document.xsl +3802 -0
  739. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.community-practice.xsl +3802 -0
  740. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.community-standard.xsl +3802 -0
  741. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.discussion-paper.xsl +3802 -0
  742. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.engineering-report.xsl +3802 -0
  743. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.other.xsl +3802 -0
  744. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.policy.xsl +3802 -0
  745. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.reference-model.xsl +3802 -0
  746. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.release-notes.xsl +3802 -0
  747. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.standard.xsl +3802 -0
  748. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.test-suite.xsl +3802 -0
  749. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.user-guide.xsl +3802 -0
  750. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/ogc.white-paper.xsl +3554 -0
  751. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/pdf_convert.rb +24 -0
  752. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/presentation_xml_convert.rb +137 -0
  753. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/reqt.rb +168 -0
  754. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/sections.rb +66 -0
  755. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/word_convert.rb +189 -0
  756. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/isodoc/ogc/xref.rb +156 -0
  757. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/metanorma-ogc.rb +8 -0
  758. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/metanorma/ogc.rb +12 -0
  759. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/metanorma/ogc/processor.rb +49 -0
  760. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/lib/metanorma/ogc/version.rb +5 -0
  761. data/gems/ruby/2.6.0/gems/metanorma-ogc-1.2.0/metanorma-ogc.gemspec +41 -0
  762. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/CODE_OF_CONDUCT.md +46 -0
  763. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/Gemfile +11 -0
  764. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/LICENSE +25 -0
  765. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/Makefile +39 -0
  766. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/Rakefile +8 -0
  767. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/bin/rspec +18 -0
  768. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/base.rb +242 -0
  769. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/basicdoc.rng +1059 -0
  770. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/biblio.rng +1237 -0
  771. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/blocks.rb +191 -0
  772. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/blocks_notes.rb +89 -0
  773. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/cleanup.rb +177 -0
  774. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/cleanup_block.rb +183 -0
  775. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/cleanup_boilerplate.rb +100 -0
  776. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/cleanup_footnotes.rb +87 -0
  777. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/cleanup_inline.rb +134 -0
  778. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/cleanup_ref.rb +247 -0
  779. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/cleanup_section.rb +221 -0
  780. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/cleanup_terms.rb +144 -0
  781. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/converter.rb +86 -0
  782. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/datamodel/attributes_table_preprocessor.rb +57 -0
  783. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/datamodel/diagram_preprocessor.rb +102 -0
  784. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/datamodel/plantuml_renderer.rb +408 -0
  785. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/front.rb +210 -0
  786. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/front_contributor.rb +99 -0
  787. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/inline.rb +233 -0
  788. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/isodoc.rng +1510 -0
  789. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/lists.rb +115 -0
  790. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/log.rb +50 -0
  791. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/macros.rb +179 -0
  792. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/macros_plantuml.rb +100 -0
  793. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/macros_yaml2text.rb +165 -0
  794. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/ref.rb +257 -0
  795. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/ref_sect.rb +124 -0
  796. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/reqt.rb +73 -0
  797. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/reqt.rng +194 -0
  798. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/section.rb +244 -0
  799. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/table.rb +70 -0
  800. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/utils.rb +194 -0
  801. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/validate.rb +97 -0
  802. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/validate_section.rb +51 -0
  803. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/views/datamodel/model_representation.adoc.erb +30 -0
  804. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/asciidoctor/standoc/views/datamodel/plantuml_representation.adoc.erb +20 -0
  805. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/metanorma-standoc.rb +10 -0
  806. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/metanorma/standoc.rb +11 -0
  807. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/metanorma/standoc/latexml_requirement.rb +62 -0
  808. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/metanorma/standoc/processor.rb +38 -0
  809. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/metanorma/standoc/requirement.rb +13 -0
  810. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/lib/metanorma/standoc/version.rb +5 -0
  811. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/metanorma-standoc.gemspec +56 -0
  812. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/base_spec.rb +519 -0
  813. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/blocks_spec.rb +1271 -0
  814. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/cleanup_spec.rb +3224 -0
  815. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/datamodel/attributes_table_preprocessor_spec.rb +111 -0
  816. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/datamodel/diagram_preprocessor_spec.rb +72 -0
  817. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/inline_spec.rb +308 -0
  818. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/isobib_cache_spec.rb +705 -0
  819. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/lists_spec.rb +205 -0
  820. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/macros_spec.rb +538 -0
  821. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/macros_yaml2text_spec.rb +565 -0
  822. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/refs_dl_spec.rb +850 -0
  823. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/refs_spec.rb +1648 -0
  824. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/section_spec.rb +983 -0
  825. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/table_spec.rb +307 -0
  826. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/asciidoctor-standoc/validate_spec.rb +328 -0
  827. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/assets/codes.yml +695 -0
  828. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/assets/html.scss +13 -0
  829. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/assets/i18n.yaml +17 -0
  830. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/assets/iso123.rxl +107 -0
  831. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/assets/std.css +2 -0
  832. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/assets/word.scss +13 -0
  833. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/AddressClassProfile.yml +90 -0
  834. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/AddressComponentProfile.yml +63 -0
  835. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/AddressComponentSpecification.yml +15 -0
  836. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/AddressProfile.yml +36 -0
  837. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/AttributeProfile.yml +32 -0
  838. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/InterchangeAddressClassProfile.yml +79 -0
  839. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/Localization copy.yml +23 -0
  840. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/Localization.yml +23 -0
  841. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/ProfileCompliantAddress.yml +36 -0
  842. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/ProfileCompliantAddressComponent.yml +15 -0
  843. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/Signature.yml +20 -0
  844. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/SignatureBlankDefinition.yml +20 -0
  845. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/TextDirectionCode copy.yml +16 -0
  846. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/TextDirectionCode.yml +16 -0
  847. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/Validity.yml +14 -0
  848. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/iso19160-1/Address.yml +22 -0
  849. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/models/iso19160-1/AddressComponent.yml +2 -0
  850. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/style.uml.inc +37 -0
  851. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/views/CommonModels.yml +9 -0
  852. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/datamodel/models/views/TopDown.yml +62 -0
  853. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/english.yaml +69 -0
  854. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/examples/rice.sh +4 -0
  855. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/metanorma/processor_spec.rb +92 -0
  856. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/spec_helper.rb +249 -0
  857. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/vcr_cassettes/dated_iso_ref_joint_iso_iec.yml +719 -0
  858. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/vcr_cassettes/isobib_get_123.yml +182 -0
  859. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/vcr_cassettes/isobib_get_123_1.yml +361 -0
  860. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/vcr_cassettes/isobib_get_123_2001.yml +182 -0
  861. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/vcr_cassettes/isobib_get_124.yml +182 -0
  862. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/vcr_cassettes/rfcbib_get_rfc8341.yml +109 -0
  863. data/gems/ruby/2.6.0/gems/metanorma-standoc-1.5.0/spec/vcr_cassettes/separates_iev_citations_by_top_level_clause.yml +436 -0
  864. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/CODE_OF_CONDUCT.md +74 -0
  865. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/Gemfile +11 -0
  866. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/LICENSE +25 -0
  867. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/Rakefile +8 -0
  868. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/bin/console +14 -0
  869. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/bin/rspec +17 -0
  870. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/bin/setup +8 -0
  871. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/asciidoctor/un.rb +7 -0
  872. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/asciidoctor/un/basicdoc.rng +1059 -0
  873. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/asciidoctor/un/biblio.rng +1237 -0
  874. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/asciidoctor/un/converter.rb +253 -0
  875. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/asciidoctor/un/isodoc.rng +1510 -0
  876. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/asciidoctor/un/reqt.rng +194 -0
  877. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/asciidoctor/un/un.rng +356 -0
  878. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/asciidoctor/un/validate.rb +23 -0
  879. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un.rb +11 -0
  880. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/base_convert.rb +35 -0
  881. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/html/htmlstyle.css +1096 -0
  882. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/html/htmlstyle.scss +881 -0
  883. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/html/unece.css +818 -0
  884. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/html/unece.scss +801 -0
  885. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/html/wordstyle.css +1237 -0
  886. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/html/wordstyle.scss +1140 -0
  887. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/html_convert.rb +112 -0
  888. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/i18n-en.yaml +2 -0
  889. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/i18n.rb +11 -0
  890. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/init.rb +29 -0
  891. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/metadata.rb +102 -0
  892. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/pdf_convert.rb +28 -0
  893. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/presentation_xml_convert.rb +53 -0
  894. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/un.plenary-attachment.xsl +3618 -0
  895. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/un.plenary.xsl +3618 -0
  896. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/un.recommendation.xsl +3605 -0
  897. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/word_convert.rb +174 -0
  898. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/isodoc/un/xref.rb +185 -0
  899. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/metanorma-un.rb +8 -0
  900. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/metanorma/un.rb +12 -0
  901. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/metanorma/un/UN_emblem_blue.svg +193 -0
  902. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/metanorma/un/input.rb +18 -0
  903. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/metanorma/un/processor.rb +49 -0
  904. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/lib/metanorma/un/version.rb +5 -0
  905. data/gems/ruby/2.6.0/gems/metanorma-un-0.5.0/metanorma-unece.gemspec +46 -0
  906. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/CHANGELOG.md +6 -0
  907. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/Gemfile +8 -0
  908. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/LICENSE +25 -0
  909. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/Rakefile +6 -0
  910. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/bin/console +11 -0
  911. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/bin/rspec +29 -0
  912. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/bin/setup +8 -0
  913. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/exe/relaton +21 -0
  914. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/i18n.yaml +1 -0
  915. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/lib/relaton-cli.rb +10 -0
  916. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/lib/relaton/bibcollection.rb +120 -0
  917. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/lib/relaton/bibdata.rb +90 -0
  918. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/lib/relaton/cli.rb +55 -0
  919. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/lib/relaton/cli/base_convertor.rb +141 -0
  920. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/lib/relaton/cli/command.rb +115 -0
  921. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/lib/relaton/cli/relaton_file.rb +276 -0
  922. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/lib/relaton/cli/version.rb +5 -0
  923. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/lib/relaton/cli/xml_convertor.rb +47 -0
  924. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/lib/relaton/cli/xml_to_html_renderer.rb +116 -0
  925. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/lib/relaton/cli/yaml_convertor.rb +99 -0
  926. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/lib/relaton/element_finder.rb +25 -0
  927. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/relaton-cli.gemspec +40 -0
  928. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/templates/_document.liquid +92 -0
  929. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/templates/_index.liquid +53 -0
  930. data/gems/ruby/2.6.0/gems/relaton-cli-1.2.1/templates/index-style.css +1017 -0
  931. data/gems/ruby/2.6.0/specifications/fontist-1.2.0.gemspec +51 -0
  932. data/gems/ruby/2.6.0/specifications/isodoc-1.2.1.gemspec +87 -0
  933. data/gems/ruby/2.6.0/specifications/metanorma-cc-1.5.0.gemspec +67 -0
  934. data/gems/ruby/2.6.0/specifications/metanorma-csa-1.6.0.gemspec +85 -0
  935. data/gems/ruby/2.6.0/specifications/metanorma-gb-1.5.1.gemspec +79 -0
  936. data/gems/ruby/2.6.0/specifications/metanorma-generic-1.6.0.gemspec +73 -0
  937. data/gems/ruby/2.6.0/specifications/metanorma-iec-1.2.1.gemspec +72 -0
  938. data/gems/ruby/2.6.0/specifications/metanorma-ietf-2.2.0.gemspec +73 -0
  939. data/gems/ruby/2.6.0/specifications/metanorma-iho-0.2.0.gemspec +73 -0
  940. data/gems/ruby/2.6.0/specifications/metanorma-iso-1.5.1.gemspec +81 -0
  941. data/gems/ruby/2.6.0/specifications/metanorma-itu-1.2.0.gemspec +79 -0
  942. data/gems/ruby/2.6.0/specifications/metanorma-m3aawg-1.5.0.gemspec +73 -0
  943. data/gems/ruby/2.6.0/specifications/metanorma-nist-1.2.0.gemspec +82 -0
  944. data/gems/ruby/2.6.0/specifications/metanorma-ogc-1.2.0.gemspec +70 -0
  945. data/gems/ruby/2.6.0/specifications/metanorma-standoc-1.5.0.gemspec +99 -0
  946. data/gems/ruby/2.6.0/specifications/metanorma-un-0.5.0.gemspec +76 -0
  947. data/gems/ruby/2.6.0/specifications/relaton-cli-1.2.1.gemspec +73 -0
  948. data/lib/metanorma/cli/version.rb +1 -1
  949. data/metanorma-cli.gemspec +18 -18
  950. metadata +981 -34
@@ -0,0 +1,3645 @@
1
+ <?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:mathml="http://www.w3.org/1998/Math/MathML" xmlns:xalan="http://xml.apache.org/xalan" xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" xmlns:java="http://xml.apache.org/xalan/java" exclude-result-prefixes="java" version="1.0">
2
+
3
+ <xsl:output version="1.0" method="xml" encoding="UTF-8" indent="no"/>
4
+
5
+
6
+
7
+ <xsl:param name="svg_images"/>
8
+ <xsl:variable name="images" select="document($svg_images)"/>
9
+
10
+
11
+
12
+ <xsl:variable name="pageWidth" select="'8.5in'"/>
13
+ <xsl:variable name="pageHeight" select="'11in'"/>
14
+
15
+ <xsl:variable name="debug">false</xsl:variable>
16
+
17
+ <xsl:variable name="title" select="/nist:nist-standard/nist:bibdata/nist:title[@language = 'en' and @type = 'main']"/>
18
+
19
+ <xsl:variable name="date">
20
+ <xsl:choose>
21
+ <xsl:when test="/nist:nist-standard/nist:bibdata/nist:date[@type='issued']">
22
+ <xsl:call-template name="formatDate">
23
+ <xsl:with-param name="date" select="/nist:nist-standard/nist:bibdata/nist:date[@type='issued']/nist:on"/>
24
+ </xsl:call-template>
25
+ </xsl:when>
26
+ <xsl:otherwise>
27
+ <xsl:call-template name="formatDate">
28
+ <xsl:with-param name="date" select="/nist:nist-standard/nist:bibdata/nist:date/nist:on"/>
29
+ </xsl:call-template>
30
+ </xsl:otherwise>
31
+ </xsl:choose>
32
+ </xsl:variable>
33
+ <xsl:variable name="color">rgb(36, 64, 97)</xsl:variable>
34
+ <xsl:variable name="seriestitle" select="/nist:nist-standard/nist:bibdata/nist:series[@type = 'main']/nist:title"/>
35
+ <!-- Example:
36
+ <item level="1" id="Foreword" display="true">Foreword</item>
37
+ <item id="term-script" display="false">3.2</item>
38
+ -->
39
+ <xsl:variable name="contents">
40
+ <contents>
41
+ <xsl:apply-templates select="/nist:nist-standard/nist:preface/nist:executivesummary" mode="contents"/>
42
+ <xsl:apply-templates select="/nist:nist-standard/nist:sections/*" mode="contents"/> <!-- /* Main sections -->
43
+ <xsl:apply-templates select="/nist:nist-standard/nist:annex" mode="contents"/>
44
+ <xsl:apply-templates select="/nist:nist-standard/nist:bibliography/nist:references" mode="contents"/>
45
+ </contents>
46
+ </xsl:variable>
47
+
48
+ <xsl:variable name="lang">
49
+ <xsl:call-template name="getLang"/>
50
+ </xsl:variable>
51
+
52
+ <xsl:template match="/">
53
+ <xsl:call-template name="namespaceCheck"/>
54
+ <fo:root font-family="Times New Roman, STIX2Math" font-size="12pt" xml:lang="{$lang}">
55
+ <fo:layout-master-set>
56
+ <!-- Cover pages -->
57
+ <fo:simple-page-master master-name="cover-page" page-width="{$pageWidth}" page-height="{$pageHeight}">
58
+ <fo:region-body margin-top="1.75in" margin-bottom="1in" margin-left="1in" margin-right="1in"/>
59
+ <fo:region-before region-name="header-cover" extent="1.75in"/>
60
+ <fo:region-after extent="1in"/>
61
+ <fo:region-start extent="1in"/>
62
+ <fo:region-end extent="1in"/>
63
+ </fo:simple-page-master>
64
+
65
+ <!-- Preface page(s) -->
66
+ <fo:simple-page-master master-name="preface" page-width="{$pageWidth}" page-height="{$pageHeight}">
67
+ <fo:region-body margin-top="1.15in" margin-bottom="1in" margin-left="1in" margin-right="1in"/>
68
+ <fo:region-before region-name="header-preface" extent="1.15in"/>
69
+ <fo:region-after region-name="footer" extent="1in"/>
70
+ <fo:region-start region-name="left" extent="1in"/>
71
+ <fo:region-end region-name="right" extent="1in"/>
72
+ </fo:simple-page-master>
73
+
74
+ <!-- Document pages -->
75
+ <fo:simple-page-master master-name="document" page-width="{$pageWidth}" page-height="{$pageHeight}">
76
+ <fo:region-body margin-top="1in" margin-bottom="1in" margin-left="1in" margin-right="1in"/>
77
+ <fo:region-before region-name="header" extent="1in"/>
78
+ <fo:region-after region-name="footer" extent="1in"/>
79
+ <fo:region-start region-name="left" extent="1in"/>
80
+ <fo:region-end region-name="right" extent="1in"/>
81
+ </fo:simple-page-master>
82
+
83
+ </fo:layout-master-set>
84
+
85
+ <xsl:call-template name="addPDFUAmeta"/>
86
+
87
+ <!-- cover page -->
88
+ <fo:page-sequence master-reference="cover-page" force-page-count="no-force">
89
+ <!-- header -->
90
+ <fo:static-content flow-name="header-cover" font-family="Times New Roman" font-size="11pt" font-weight="bold" font-style="italic">
91
+ <fo:block-container color="white" background-color="{$color}" margin-left="-1mm" margin-right="-1mm" margin-top="1in" display-align="after" height="5mm">
92
+ <fo:block text-align-last="justify" margin-left="1mm" margin-right="1mm" padding-left="0.5mm" padding-top="0.5mm">
93
+ <fo:inline padding-left="0.5mm"> <!-- font-size="7.5pt" -->
94
+ <!-- <xsl:call-template name="recursiveSmallCaps">
95
+ <xsl:with-param name="text" select="$seriestitle"/>
96
+ </xsl:call-template> -->
97
+ <xsl:value-of select="$seriestitle"/>
98
+ </fo:inline>
99
+ <fo:inline keep-together.within-line="always">
100
+ <fo:leader leader-pattern="space"/>
101
+ <xsl:text>csrc.nist.gov  </xsl:text>
102
+ <!-- <xsl:call-template name="recursiveSmallCaps">
103
+ <xsl:with-param name="text" select="'csrc.nist.gov&#xA0;&#xA0;'"/>
104
+ </xsl:call-template> -->
105
+ </fo:inline>
106
+ </fo:block>
107
+ </fo:block-container>
108
+ </fo:static-content>
109
+
110
+ <fo:flow flow-name="xsl-region-body" color="rgb(36, 64, 97)">
111
+ <!-- logo -->
112
+ <fo:block-container absolute-position="fixed" left="25.4mm" top="229mm">
113
+ <fo:block>
114
+ <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-NIST-Logo))}" width="57mm" content-height="25.4mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image"/>
115
+ </fo:block>
116
+ </fo:block-container>
117
+
118
+ <xsl:if test="contains(/nist:nist-standard/nist:bibdata/nist:status/nist:stage, 'draft')">
119
+ <!-- <fo:block-container absolute-position="fixed" left="20mm" top="170mm" fox:transform="rotate(-45)">
120
+ <fo:block font-family="Calibri" font-size="180pt" color="rgb(223, 223, 223)">DRAFT</fo:block>
121
+ </fo:block-container> -->
122
+ <fo:block-container absolute-position="fixed" left="0mm" top="0mm">
123
+ <fo:block line-height="0">
124
+ <fo:instream-foreign-object fox:alt-text="DRAFT">
125
+ <svg:svg xmlns:svg="http://www.w3.org/2000/svg" width="200mm" height="250mm">
126
+ <svg:g transform="rotate(-45) scale(0.6, 1)">
127
+ <svg:text x="-175mm" y="205mm" style="font-family:Calibri;font-size:260pt;font-weight:normal;fill:rgb(223, 223, 223);">
128
+ DRAFT
129
+ </svg:text>
130
+ </svg:g>
131
+ </svg:svg>
132
+ </fo:instream-foreign-object>
133
+ </fo:block>
134
+ </fo:block-container>
135
+ </xsl:if>
136
+
137
+
138
+ <fo:block>
139
+ <fo:block font-family="Arial" font-size="24pt" font-weight="bold" margin-top="12pt" margin-bottom="18pt" letter-spacing="-0.5pt" margin-right="-2mm">
140
+ <xsl:value-of select="$title"/>
141
+ </fo:block>
142
+ <fo:block margin-bottom="12pt"> </fo:block>
143
+ <fo:block margin-bottom="20pt"> </fo:block>
144
+
145
+ <!-- Authors list -->
146
+ <fo:block line-height="116%">
147
+ <xsl:for-each select="/nist:nist-standard/nist:bibdata/nist:contributor[nist:role/@type = 'author']">
148
+ <xsl:value-of select="nist:person/nist:name/nist:completename"/>
149
+ <xsl:variable name="org-name" select="nist:person/nist:affiliation/nist:organization/nist:name"/>
150
+ <xsl:variable name="org-address" select="nist:person/nist:affiliation/nist:organization/nist:address/nist:formattedAddress"/>
151
+ <xsl:if test="concat(following-sibling::nist:contributor[nist:role/@type = 'author'][1]/nist:person/nist:affiliation/nist:organization/nist:name, following-sibling::nist:contributor[nist:role/@type = 'author'][1]/nist:person/nist:affiliation/nist:organization/nist:address/nist:formattedAddress) != concat($org-name, $org-address)">
152
+
153
+ <xsl:for-each select="xalan:tokenize($org-name, ',')">
154
+ <fo:block>
155
+ <fo:inline font-style="italic">
156
+ <xsl:value-of select="."/>
157
+ <!-- <xsl:if test="normalize-space($org-address) != ''">
158
+ <fo:inline>, <xsl:value-of select="$org-address"/></fo:inline>
159
+ </xsl:if> -->
160
+ </fo:inline>
161
+ </fo:block>
162
+ </xsl:for-each>
163
+
164
+ <xsl:if test="normalize-space($org-address) != ''">
165
+ <fo:block>
166
+ <fo:inline font-style="italic">
167
+ <xsl:value-of select="$org-address"/>
168
+ </fo:inline>
169
+ </fo:block>
170
+ </xsl:if>
171
+ </xsl:if>
172
+ <xsl:value-of select="$linebreak"/>
173
+ </xsl:for-each>
174
+ </fo:block>
175
+ <fo:block margin-bottom="22pt"> </fo:block>
176
+ <fo:block margin-bottom="12pt"> <!-- font-size="14pt" -->
177
+ <xsl:value-of select="$date"/>
178
+ </fo:block>
179
+ <fo:block margin-bottom="12pt"> </fo:block>
180
+
181
+ <!-- <xsl:if test="/nist:nist-standard/nist:bibdata/nist:uri[@type = 'doi']">
182
+ <fo:block>
183
+ <xsl:text>This publication is available free of charge from:</xsl:text>
184
+ <xsl:value-of select="$linebreak"/>
185
+ <xsl:value-of select="/nist:nist-standard/nist:bibdata/nist:uri[@type = 'doi']"/>
186
+ </fo:block>
187
+ </xsl:if> -->
188
+
189
+ </fo:block>
190
+ </fo:flow>
191
+ </fo:page-sequence>
192
+
193
+
194
+ <fo:page-sequence master-reference="preface" initial-page-number="2" format="i" force-page-count="no-force" line-height="116%">
195
+
196
+ <fo:static-content flow-name="xsl-footnote-separator">
197
+ <fo:block margin-bottom="4mm">
198
+ <fo:leader leader-pattern="rule" leader-length="30%"/>
199
+ </fo:block>
200
+ </fo:static-content>
201
+ <xsl:call-template name="insertFooter"/>
202
+
203
+ <fo:flow flow-name="xsl-region-body">
204
+ <fo:block margin-top="18pt">
205
+
206
+ <!-- Abstract -->
207
+ <xsl:if test="/nist:nist-standard/nist:preface/nist:abstract">
208
+ <xsl:variable name="title-abstract">
209
+ <xsl:call-template name="getTitle">
210
+ <xsl:with-param name="name" select="'title-abstract'"/>
211
+ </xsl:call-template>
212
+ </xsl:variable>
213
+ <fo:block font-family="Arial" text-align="center" font-weight="bold" color="{$color}" margin-bottom="12pt"><xsl:value-of select="$title-abstract"/></fo:block>
214
+ <xsl:apply-templates select="/nist:nist-standard/nist:preface/nist:abstract"/>
215
+ </xsl:if>
216
+
217
+ <!-- Keywords -->
218
+ <xsl:if test="/nist:nist-standard/nist:bibdata/nist:keyword">
219
+ <fo:block font-family="Arial" text-align="center" font-weight="bold" color="{$color}" margin-bottom="12pt">
220
+ <xsl:variable name="title-keywords">
221
+ <xsl:call-template name="getTitle">
222
+ <xsl:with-param name="name" select="'title-keywords'"/>
223
+ </xsl:call-template>
224
+ </xsl:variable>
225
+ <xsl:value-of select="$title-keywords"/>
226
+ </fo:block>
227
+ <fo:block margin-bottom="12pt" text-align="justify">
228
+ <xsl:call-template name="insertKeywords">
229
+ <xsl:with-param name="charAtEnd"/>
230
+ <xsl:with-param name="charDelim">; </xsl:with-param>
231
+ </xsl:call-template>
232
+ <!-- <xsl:for-each select="/nist:nist-standard/nist:bibdata//nist:keyword">
233
+ <xsl:sort data-type="text" order="ascending"/>
234
+ <xsl:apply-templates/>
235
+ <xsl:choose>
236
+ <xsl:when test="position() != last()">; </xsl:when>
237
+ <xsl:otherwise></xsl:otherwise>
238
+ </xsl:choose>
239
+ </xsl:for-each> -->
240
+ </fo:block>
241
+ </xsl:if>
242
+
243
+ <xsl:if test="/nist:nist-standard/nist:preface/nist:acknowledgements">
244
+ <xsl:variable name="title-acknowledgements">
245
+ <xsl:call-template name="getTitle">
246
+ <xsl:with-param name="name" select="'title-acknowledgements'"/>
247
+ </xsl:call-template>
248
+ </xsl:variable>
249
+ <fo:block font-family="Arial" text-align="center" font-weight="bold" color="{$color}" margin-top="18pt" margin-bottom="12pt"><xsl:value-of select="$title-acknowledgements"/></fo:block>
250
+ <xsl:apply-templates select="/nist:nist-standard/nist:preface/nist:acknowledgements"/>
251
+ </xsl:if>
252
+
253
+
254
+ <!-- Disclaimer -->
255
+ <!-- Additional Information -->
256
+ <!-- Comments on this publication may be submitted to -->
257
+ <xsl:if test="/nist:nist-standard/nist:boilerplate/nist:legal-statement">
258
+ <xsl:apply-templates select="/nist:nist-standard/nist:boilerplate/nist:legal-statement"/>
259
+ </xsl:if>
260
+
261
+ <fo:block font-family="Arial" text-align="center" font-weight="bold" color="{$color}" margin-bottom="12pt">Feedback</fo:block>
262
+ <xsl:text>Feedback on this publication is welcome, and can be sent to: code-signing@nist.gov.</xsl:text>
263
+
264
+ <xsl:apply-templates select="/nist:nist-standard/nist:preface/nist:clause"/>
265
+
266
+ <fo:block break-after="page"/>
267
+
268
+ <!-- <xsl:apply-templates select="/nist:nist-standard/nist:preface/nist:foreword"/> -->
269
+
270
+ <!-- Executive summary -->
271
+ <!-- <xsl:apply-templates select="/nist:nist-standard/nist:preface/nist:executivesummary"/> -->
272
+
273
+ <xsl:if test="$debug = 'true'">
274
+ <xsl:text disable-output-escaping="yes">&lt;!--</xsl:text>
275
+ DEBUG
276
+ contents=<xsl:copy-of select="xalan:nodeset($contents)"/>
277
+ <xsl:text disable-output-escaping="yes">--&gt;</xsl:text>
278
+ </xsl:if>
279
+ <!-- CONTENTS -->
280
+ <!-- <fo:block break-after="page"/>
281
+ <fo:block-container font-family="Arial">
282
+ <fo:block font-family="Arial Black" font-size="12pt" margin-top="4pt" margin-bottom="12pt" text-align="center">Table of Contents</fo:block>
283
+ <xsl:for-each select="xalan:nodeset($contents)//item[not(@type = 'table') and not(@type = 'figure')]">
284
+ <xsl:if test="@display = 'true'">
285
+ <fo:block color="{$color}">
286
+ <xsl:attribute name="margin-top">6pt</xsl:attribute>
287
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
288
+ <xsl:if test="@level = 1">
289
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
290
+ </xsl:if>
291
+ <fo:block text-align-last="justify" margin-left="12mm" text-indent="-12mm">
292
+ <xsl:if test="@level &gt;= 2 and @section != ''">
293
+ <xsl:attribute name="margin-left">21.5mm</xsl:attribute>
294
+ </xsl:if>
295
+ <xsl:if test="@type = 'annex'">
296
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
297
+ </xsl:if>
298
+ <fo:basic-link internal-destination="{@id}" fox:alt-text="{@section}">
299
+ <xsl:if test="@section != '' and not(@display-section = 'false')">
300
+ <fo:inline>
301
+ <xsl:if test="not(@type = 'annex')">
302
+ <xsl:attribute name="padding-right">
303
+ <xsl:choose>
304
+ <xsl:when test="@level = 1">6mm</xsl:when>
305
+ <xsl:otherwise>5mm</xsl:otherwise>
306
+ </xsl:choose>
307
+ </xsl:attribute>
308
+ </xsl:if>
309
+ <xsl:value-of select="@section"/>
310
+ <xsl:choose>
311
+ <xsl:when test="@type = 'annex'">
312
+ <xsl:text> — </xsl:text>
313
+ </xsl:when>
314
+ <xsl:otherwise>
315
+ <xsl:text>. </xsl:text>
316
+ </xsl:otherwise>
317
+ </xsl:choose>
318
+ </fo:inline>
319
+ </xsl:if>
320
+ <xsl:value-of select="text()"/><xsl:text> </xsl:text>
321
+ <fo:inline keep-together.within-line="always">
322
+ <fo:leader leader-pattern="dots"/>
323
+ <fo:page-number-citation ref-id="{@id}"/>
324
+ </fo:inline>
325
+ </fo:basic-link>
326
+ </fo:block>
327
+ </fo:block>
328
+ </xsl:if>
329
+ </xsl:for-each>
330
+
331
+ <xsl:if test="xalan:nodeset($contents)//item[@type = 'figure']">
332
+ <fo:block font-size="12pt">&#xA0;</fo:block>
333
+ <fo:block font-size="12pt">&#xA0;</fo:block>
334
+ <fo:block font-size="12pt" font-weight="bold" text-align="center" margin-bottom="12pt">List of Figures</fo:block>
335
+ <xsl:for-each select="xalan:nodeset($contents)//item[@type = 'figure']">
336
+ <fo:block text-align-last="justify" margin-top="6pt" margin-bottom="6pt">
337
+ <fo:basic-link internal-destination="{@id}" fox:alt-text="{@section}">
338
+ <xsl:value-of select="@section"/>
339
+ <xsl:if test="text() != ''">
340
+ <xsl:text> — </xsl:text>
341
+ <xsl:value-of select="text()"/>
342
+ </xsl:if>
343
+ <fo:inline keep-together.within-line="always">
344
+ <fo:leader leader-pattern="dots"/>
345
+ <fo:page-number-citation ref-id="{@id}"/>
346
+ </fo:inline>
347
+ </fo:basic-link>
348
+ </fo:block>
349
+ </xsl:for-each>
350
+ </xsl:if>
351
+
352
+ <xsl:if test="xalan:nodeset($contents)//item[@type = 'table']">
353
+ <fo:block font-size="12pt">&#xA0;</fo:block>
354
+ <fo:block font-size="12pt">&#xA0;</fo:block>
355
+ <fo:block font-size="12pt" font-weight="bold" text-align="center" margin-bottom="12pt">List of Tables</fo:block>
356
+ <xsl:for-each select="xalan:nodeset($contents)//item[@type = 'table']">
357
+ <fo:block text-align-last="justify" margin-top="6pt" margin-bottom="6pt">
358
+ <fo:basic-link internal-destination="{@id}" fox:alt-text="{@section}">
359
+ <xsl:value-of select="@section"/>
360
+ <xsl:if test="text() != ''">
361
+ <xsl:text> — </xsl:text>
362
+ <xsl:value-of select="text()"/>
363
+ </xsl:if>
364
+ <fo:inline keep-together.within-line="always">
365
+ <fo:leader leader-pattern="dots"/>
366
+ <fo:page-number-citation ref-id="{@id}"/>
367
+ </fo:inline>
368
+ </fo:basic-link>
369
+ </fo:block>
370
+ </xsl:for-each>
371
+ </xsl:if>
372
+ </fo:block-container> -->
373
+ </fo:block>
374
+ </fo:flow>
375
+ </fo:page-sequence>
376
+
377
+ <!-- BODY -->
378
+ <fo:page-sequence master-reference="document" initial-page-number="1" force-page-count="no-force" line-height="116%">
379
+ <fo:static-content flow-name="xsl-footnote-separator">
380
+ <fo:block margin-bottom="4mm">
381
+ <fo:leader leader-pattern="rule" leader-length="30%"/>
382
+ </fo:block>
383
+ </fo:static-content>
384
+
385
+ <xsl:call-template name="insertHeaderFooter"/>
386
+
387
+ <fo:flow flow-name="xsl-region-body">
388
+ <!-- Clause(s) -->
389
+ <fo:block>
390
+ <xsl:apply-templates select="/nist:nist-standard/nist:sections/*"/>
391
+
392
+ <xsl:apply-templates select="/nist:nist-standard/nist:annex"/>
393
+
394
+ <!-- Bibliography -->
395
+ <xsl:apply-templates select="/nist:nist-standard/nist:bibliography/nist:references"/>
396
+
397
+ </fo:block>
398
+
399
+ </fo:flow>
400
+ </fo:page-sequence>
401
+
402
+
403
+ </fo:root>
404
+ </xsl:template>
405
+
406
+ <xsl:template match="node()">
407
+ <xsl:apply-templates/>
408
+ </xsl:template>
409
+
410
+ <!-- ============================= -->
411
+ <!-- CONTENTS -->
412
+ <!-- ============================= -->
413
+ <xsl:template match="node()" mode="contents">
414
+ <xsl:apply-templates mode="contents"/>
415
+ </xsl:template>
416
+
417
+ <!-- element with title -->
418
+ <xsl:template match="*[nist:title]" mode="contents">
419
+ <xsl:variable name="level">
420
+ <xsl:call-template name="getLevel">
421
+ <xsl:with-param name="depth" select="nist:title/@depth"/>
422
+ </xsl:call-template>
423
+ </xsl:variable>
424
+
425
+ <xsl:variable name="display">
426
+ <xsl:choose>
427
+ <xsl:when test="ancestor::nist:annex and $level &gt;= 2">false</xsl:when>
428
+ <xsl:when test="$level &gt; 3">false</xsl:when>
429
+ <xsl:otherwise>true</xsl:otherwise>
430
+ </xsl:choose>
431
+ </xsl:variable>
432
+
433
+
434
+ <xsl:if test="$display = 'true'">
435
+
436
+ <xsl:variable name="section">
437
+ <xsl:call-template name="getSection"/>
438
+ </xsl:variable>
439
+
440
+ <xsl:variable name="title">
441
+ <xsl:call-template name="getName"/>
442
+ </xsl:variable>
443
+
444
+ <xsl:variable name="type">
445
+ <xsl:value-of select="local-name()"/>
446
+ </xsl:variable>
447
+
448
+ <item id="{@id}" level="{$level}" section="{$section}" type="{$type}">
449
+ <xsl:apply-templates select="xalan:nodeset($title)" mode="contents_item"/>
450
+ </item>
451
+ <xsl:apply-templates mode="contents"/>
452
+ </xsl:if>
453
+
454
+ </xsl:template>
455
+
456
+
457
+
458
+ <xsl:template match="nist:bibitem" mode="contents"/>
459
+
460
+ <!-- ============================= -->
461
+ <!-- ============================= -->
462
+
463
+
464
+ <xsl:template match="/*/*[local-name() = 'preface']/*" priority="3">
465
+ <fo:block>
466
+ <xsl:call-template name="setId"/>
467
+ <xsl:apply-templates/>
468
+ </fo:block>
469
+ </xsl:template>
470
+
471
+ <!-- ============================= -->
472
+ <!-- Authority -->
473
+ <!-- ============================= -->
474
+ <xsl:template match="/nist:nist-standard/nist:boilerplate/nist:feedback-statement/nist:clause" priority="2">
475
+ <fo:block id="{@id}" font-family="Arial" font-size="12pt" space-before="6pt">
476
+ <xsl:apply-templates>
477
+ <xsl:with-param name="margin">12pt</xsl:with-param>
478
+ </xsl:apply-templates>
479
+ </fo:block>
480
+ </xsl:template>
481
+ <!-- ============================= -->
482
+ <!-- ============================= -->
483
+
484
+
485
+
486
+ <!-- ============================= -->
487
+ <!-- PARAGRAPHS -->
488
+ <!-- ============================= -->
489
+ <xsl:template match="nist:p">
490
+ <xsl:param name="margin"/>
491
+ <fo:block>
492
+ <xsl:attribute name="margin-bottom">
493
+ <xsl:choose>
494
+ <xsl:when test="(local-name(..) = 'td' or local-name(..) = 'th') and ancestor::nist:annex">0</xsl:when>
495
+ <xsl:when test="$margin != ''"><xsl:value-of select="$margin"/></xsl:when>
496
+ <xsl:otherwise>12pt</xsl:otherwise>
497
+ </xsl:choose>
498
+ </xsl:attribute>
499
+ <xsl:attribute name="text-align">
500
+ <xsl:choose>
501
+ <xsl:when test="@align"><xsl:value-of select="@align"/></xsl:when>
502
+ <xsl:when test="ancestor::nist:preface or ancestor::nist:boilerplate">justify</xsl:when>
503
+ <xsl:otherwise>left</xsl:otherwise>
504
+ </xsl:choose>
505
+ </xsl:attribute>
506
+ <xsl:apply-templates/>
507
+ </fo:block>
508
+ </xsl:template>
509
+
510
+
511
+ <xsl:template match="nist:admonition">
512
+ <fo:block-container border="1pt solid black" margin-left="-2mm" margin-right="-2mm" padding-top="6mm" padding-bottom="7mm" background-color="rgb(222,222,222)">
513
+ <fo:block margin-left="8mm" margin-right="8mm">
514
+ <fo:block font-size="11pt" font-weight="bold" text-align="center" margin-bottom="6pt" keep-with-next="always">
515
+ <xsl:choose>
516
+ <xsl:when test="@type='important'"><xsl:value-of select="java:toUpperCase(java:java.lang.String.new(@type))"/></xsl:when>
517
+ <xsl:when test="@type='tip'">
518
+ <xsl:apply-templates select="nist:name" mode="process"/>
519
+ </xsl:when>
520
+ <xsl:otherwise>
521
+ <xsl:apply-templates select="nist:name" mode="process"/>
522
+ </xsl:otherwise>
523
+ </xsl:choose>
524
+ </fo:block>
525
+ <xsl:apply-templates/>
526
+ </fo:block>
527
+ </fo:block-container>
528
+ <fo:block margin-bottom="6pt"> </fo:block>
529
+ </xsl:template>
530
+
531
+ <xsl:template match="nist:admonition/nist:name"/>
532
+ <xsl:template match="nist:admonition/nist:name" mode="process">
533
+ <xsl:apply-templates/>
534
+ </xsl:template>
535
+
536
+ <xsl:template match="nist:admonition/nist:p">
537
+ <fo:block><xsl:apply-templates/></fo:block>
538
+ </xsl:template>
539
+
540
+ <!-- ============================= -->
541
+ <!-- ============================= -->
542
+
543
+
544
+ <!-- ============================= -->
545
+ <!-- Bibliography -->
546
+ <!-- ============================= -->
547
+
548
+
549
+ <!-- Example: [ITU-T A.23] ITU-T A.23, Recommendation ITU-T A.23, Annex A (2014), Guide for ITU-T and ISO/IEC JTC 1 cooperation. -->
550
+ <xsl:template match="nist:bibitem">
551
+
552
+ <fo:list-block margin-bottom="12pt" provisional-distance-between-starts="12mm">
553
+ <fo:list-item>
554
+ <fo:list-item-label end-indent="label-end()">
555
+ <fo:block>
556
+ <fo:inline id="{@id}">
557
+ <!-- <xsl:number format="[1]"/> -->
558
+ <xsl:value-of select="nist:docidentifier"/>
559
+ </fo:inline>
560
+ </fo:block>
561
+ </fo:list-item-label>
562
+ <fo:list-item-body start-indent="body-start()">
563
+ <fo:block>
564
+ <xsl:choose>
565
+ <xsl:when test="nist:title[@type = 'main' and @language = 'en']">
566
+ <xsl:apply-templates select="nist:title[@type = 'main' and @language = 'en']"/>
567
+ </xsl:when>
568
+ <xsl:otherwise>
569
+ <xsl:apply-templates select="nist:title"/>
570
+ </xsl:otherwise>
571
+ </xsl:choose>
572
+ <xsl:apply-templates select="nist:formattedref"/>
573
+ </fo:block>
574
+ </fo:list-item-body>
575
+ </fo:list-item>
576
+ </fo:list-block>
577
+ </xsl:template>
578
+
579
+ <!-- ============================= -->
580
+ <!-- ============================= -->
581
+
582
+
583
+
584
+ <!-- ====== -->
585
+ <!-- title -->
586
+ <!-- ====== -->
587
+
588
+ <xsl:template match="nist:legal-statement//nist:title">
589
+ <fo:block font-family="Arial" font-size="12pt" font-weight="bold" text-align="center" margin-bottom="12pt" color="{$color}">
590
+ <xsl:apply-templates/>
591
+ </fo:block>
592
+ </xsl:template>
593
+
594
+ <xsl:template match="nist:executivesummary//nist:title">
595
+ <fo:block-container color="white" background-color="black" margin-bottom="12pt">
596
+ <fo:block font-family="Arial" font-size="12pt" font-weight="bold" text-align="left" margin-left="4mm" padding-top="1mm">
597
+ <xsl:apply-templates/>
598
+ </fo:block>
599
+ </fo:block-container>
600
+ </xsl:template>
601
+
602
+ <xsl:template match="nist:preface//nist:title" priority="3">
603
+ <fo:block font-family="Arial" font-size="12pt" font-weight="bold" text-align="center" space-before="12pt" margin-bottom="12pt" color="{$color}">
604
+ <xsl:apply-templates/>
605
+ </fo:block>
606
+ </xsl:template>
607
+
608
+ <xsl:template match="nist:references/nist:title">
609
+ <fo:block-container color="white" background-color="{$color}" margin-bottom="12pt" keep-with-next="always" height="5mm" margin-left="-0.5mm" margin-right="-0.5mm">
610
+ <fo:block font-family="Arial" font-size="12pt" font-weight="bold" margin-left="1mm" padding-top="0.3mm">
611
+ <xsl:apply-templates/>
612
+ </fo:block>
613
+ </fo:block-container>
614
+ </xsl:template>
615
+
616
+
617
+ <xsl:template match="nist:title">
618
+
619
+ <xsl:variable name="level">
620
+ <xsl:call-template name="getLevel"/>
621
+ </xsl:variable>
622
+
623
+ <xsl:variable name="font-size">
624
+ <xsl:choose>
625
+ <xsl:when test="$level = 1">12pt</xsl:when>
626
+ <xsl:when test="$level &gt;= 2">11pt</xsl:when>
627
+ <xsl:otherwise>11pt</xsl:otherwise>
628
+ </xsl:choose>
629
+ </xsl:variable>
630
+
631
+ <xsl:variable name="space-after">
632
+ <xsl:choose>
633
+ <xsl:when test="$level = 2">12pt</xsl:when>
634
+ <xsl:otherwise>6pt</xsl:otherwise>
635
+ </xsl:choose>
636
+ </xsl:variable>
637
+
638
+ <xsl:choose>
639
+ <xsl:when test="ancestor::nist:annex and $level &gt;= 3">
640
+ <fo:block font-family="Arial" font-size="11pt" font-weight="bold" margin-top="3pt" margin-bottom="12pt">
641
+ <xsl:apply-templates/>
642
+ </fo:block>
643
+ </xsl:when>
644
+ <xsl:when test="ancestor::nist:annex and $level &gt;= 2">
645
+ <fo:block font-family="Arial" font-size="12pt" font-weight="bold" text-align="center" margin-top="3pt" margin-bottom="12pt">
646
+ <xsl:apply-templates/>
647
+ </fo:block>
648
+ </xsl:when>
649
+ <xsl:when test="$level = 1">
650
+ <fo:block-container color="white" background-color="{$color}" margin-bottom="12pt" keep-with-next="always" height="6mm" margin-left="-2mm" margin-right="-2mm">
651
+ <fo:block font-family="Arial" font-size="{$font-size}" font-weight="bold" text-align="left" keep-with-next="always" margin-left="4mm" padding-top="1mm">
652
+ <xsl:apply-templates/>
653
+ </fo:block>
654
+ </fo:block-container>
655
+ </xsl:when>
656
+ <xsl:otherwise>
657
+ <fo:block font-family="Arial" font-size="{$font-size}" color="{$color}" font-weight="bold" text-align="left" space-after="{$space-after}" keep-with-next="always">
658
+ <xsl:apply-templates/>
659
+ </fo:block>
660
+ </xsl:otherwise>
661
+ </xsl:choose>
662
+ </xsl:template>
663
+
664
+ <!-- ====== -->
665
+ <!-- ====== -->
666
+
667
+
668
+ <xsl:template match="nist:p//nist:fn[not(ancestor::nist:table)] | nist:title/nist:fn | nist:table/nist:name/nist:fn" priority="2">
669
+ <fo:footnote>
670
+ <xsl:variable name="number">
671
+ <xsl:number level="any" count="nist:p//nist:fn[not(ancestor::nist:table)] | nist:title/nist:fn | nist:table/nist:name/nist:fn"/>
672
+ </xsl:variable>
673
+ <fo:inline font-size="60%" keep-with-previous.within-line="always" vertical-align="super">
674
+ <fo:basic-link internal-destination="footnote_{@reference}_{$number}" fox:alt-text="footnote {@reference} {$number}">
675
+ <xsl:value-of select="$number + count(//nist:bibitem/nist:note)"/>
676
+ </fo:basic-link>
677
+ </fo:inline>
678
+ <fo:footnote-body>
679
+ <fo:block-container margin-left="3mm">
680
+ <fo:block font-size="9pt" font-family="Times New Roman" font-style="normal" font-weight="normal" margin-left="-3mm" margin-top="6pt" margin-bottom="12pt" start-indent="0mm" text-indent="-2mm" line-height="10pt" page-break-inside="avoid">
681
+ <fo:inline id="footnote_{@reference}_{$number}" font-size="75%" keep-with-next.within-line="always" vertical-align="super" padding-right="1mm"> <!-- alignment-baseline="hanging" -->
682
+ <xsl:value-of select="$number + count(//nist:bibitem/nist:note)"/>
683
+ </fo:inline>
684
+ <xsl:for-each select="nist:p">
685
+ <xsl:apply-templates/>
686
+ </xsl:for-each>
687
+ </fo:block>
688
+ </fo:block-container>
689
+ </fo:footnote-body>
690
+ </fo:footnote>
691
+ </xsl:template>
692
+
693
+
694
+ <xsl:template match="*[local-name()='tt']" priority="2">
695
+ <xsl:variable name="element-name">
696
+ <xsl:choose>
697
+ <xsl:when test="normalize-space(ancestor::nist:p[1]//text()[not(parent::nist:tt)]) != ''">fo:inline</xsl:when>
698
+ <xsl:otherwise>fo:block</xsl:otherwise>
699
+ </xsl:choose>
700
+ </xsl:variable>
701
+ <xsl:element name="{$element-name}">
702
+ <xsl:attribute name="font-family">Courier</xsl:attribute>
703
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
704
+ <xsl:attribute name="text-align">center</xsl:attribute>
705
+ <xsl:apply-templates/>
706
+ </xsl:element>
707
+ </xsl:template>
708
+
709
+
710
+ <!-- Examples:
711
+ [b-ASM] b-ASM, http://www.eecs.umich.edu/gasm/ (accessed 20 March 2018).
712
+ [b-Börger & Stärk] b-Börger & Stärk, Börger, E., and Stärk, R. S. (2003), Abstract State Machines: A Method for High-Level System Design and Analysis, Springer-Verlag.
713
+ -->
714
+ <xsl:template match="nist:annex//nist:bibitem">
715
+ <fo:block id="{@id}" margin-top="6pt" margin-left="12mm" text-indent="-12mm">
716
+ <xsl:if test="nist:formattedref">
717
+ <xsl:choose>
718
+ <xsl:when test="nist:docidentifier[@type = 'metanorma']">
719
+ <xsl:attribute name="margin-left">0</xsl:attribute>
720
+ <xsl:attribute name="text-indent">0</xsl:attribute>
721
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
722
+ <!-- create list -->
723
+ <fo:list-block>
724
+ <fo:list-item>
725
+ <fo:list-item-label end-indent="label-end()">
726
+ <fo:block>
727
+ <xsl:apply-templates select="nist:docidentifier[@type = 'metanorma']" mode="process"/>
728
+ </fo:block>
729
+ </fo:list-item-label>
730
+ <fo:list-item-body start-indent="body-start()">
731
+ <fo:block margin-left="3mm">
732
+ <xsl:apply-templates select="nist:formattedref"/>
733
+ </fo:block>
734
+ </fo:list-item-body>
735
+ </fo:list-item>
736
+ </fo:list-block>
737
+ </xsl:when>
738
+ <xsl:otherwise>
739
+ <xsl:apply-templates select="nist:formattedref"/>
740
+ <xsl:apply-templates select="nist:docidentifier[@type != 'metanorma' or not(@type)]" mode="process"/>
741
+ </xsl:otherwise>
742
+ </xsl:choose>
743
+
744
+
745
+ </xsl:if>
746
+ <xsl:if test="nist:title">
747
+ <xsl:for-each select="nist:contributor">
748
+ <xsl:value-of select="nist:organization/nist:name"/>
749
+ <xsl:if test="position() != last()">, </xsl:if>
750
+ </xsl:for-each>
751
+ <xsl:text> (</xsl:text>
752
+
753
+ <xsl:value-of select="$date"/>
754
+ <xsl:text>) </xsl:text>
755
+ <fo:inline font-style="italic"><xsl:value-of select="nist:title"/></fo:inline>
756
+ <xsl:if test="nist:contributor[nist:role/@type='publisher']/nist:organization/nist:name">
757
+ <xsl:text> (</xsl:text><xsl:value-of select="nist:contributor[nist:role/@type='publisher']/nist:organization/nist:name"/><xsl:text>)</xsl:text>
758
+ </xsl:if>
759
+ <xsl:text>, </xsl:text>
760
+ <xsl:value-of select="$date"/>
761
+ <xsl:text>. </xsl:text>
762
+ <xsl:value-of select="nist:docidentifier"/>
763
+ <xsl:value-of select="$linebreak"/>
764
+ <xsl:value-of select="nist:uri"/>
765
+ </xsl:if>
766
+ </fo:block>
767
+ </xsl:template>
768
+
769
+ <xsl:template match="nist:annex//nist:bibitem//nist:formattedref">
770
+ <xsl:apply-templates/>
771
+ </xsl:template>
772
+
773
+ <xsl:template match="nist:docidentifier[@type = 'metanorma']" mode="process">
774
+ <xsl:apply-templates/>
775
+ </xsl:template>
776
+ <xsl:template match="nist:docidentifier[@type != 'metanorma' or not(@type)]" mode="process">
777
+ <xsl:text> [</xsl:text><xsl:apply-templates/><xsl:text>]</xsl:text>
778
+ </xsl:template>
779
+ <xsl:template match="nist:docidentifier"/>
780
+
781
+
782
+ <xsl:template match="nist:ul | nist:ol">
783
+ <fo:list-block>
784
+ <xsl:apply-templates/>
785
+ </fo:list-block>
786
+ <xsl:apply-templates select="./nist:note" mode="process"/>
787
+ </xsl:template>
788
+
789
+ <xsl:template match="nist:ul//nist:note | nist:ol//nist:note" priority="2"/>
790
+ <xsl:template match="nist:ul//nist:note/nist:p | nist:ol//nist:note/nist:p" mode="process">
791
+ <fo:block font-size="11pt" margin-top="4pt">
792
+ <xsl:apply-templates select="../nist:name" mode="presentation"/>
793
+ <xsl:apply-templates/>
794
+ </fo:block>
795
+ </xsl:template>
796
+
797
+ <xsl:template match="nist:li">
798
+ <xsl:variable name="level">
799
+ <xsl:variable name="numtmp">
800
+ <xsl:number level="multiple" count="nist:ol"/>
801
+ </xsl:variable>
802
+ <!-- level example: 1.1
803
+ calculate counts of '.' in numtmp value - level of nested lists
804
+ -->
805
+ <xsl:value-of select="string-length($numtmp) - string-length(translate($numtmp, '.', '')) + 1"/>
806
+ </xsl:variable>
807
+ <fo:list-item>
808
+ <fo:list-item-label end-indent="label-end()">
809
+ <fo:block>
810
+ <xsl:choose>
811
+ <!-- <xsl:when test="local-name(..) = 'ul'">&#x2014;</xsl:when>--> <!-- dash -->
812
+ <xsl:when test="local-name(..) = 'ul'">•</xsl:when>
813
+ <xsl:otherwise> <!-- for ordered lists -->
814
+ <xsl:choose>
815
+ <xsl:when test="../@type = 'arabic'">
816
+ <xsl:number format="a)"/>
817
+ </xsl:when>
818
+ <xsl:when test="../@type = 'alphabet'">
819
+ <xsl:number format="1)"/>
820
+ </xsl:when>
821
+ <xsl:when test="ancestor::*[nist:annex]">
822
+ <xsl:choose>
823
+ <xsl:when test="$level = 1">
824
+ <xsl:number format="a)"/>
825
+ </xsl:when>
826
+ <xsl:when test="$level = 2">
827
+ <xsl:number format="i)"/>
828
+ </xsl:when>
829
+ <xsl:otherwise>
830
+ <xsl:number format="1.)"/>
831
+ </xsl:otherwise>
832
+ </xsl:choose>
833
+ </xsl:when>
834
+ <xsl:otherwise>
835
+ <xsl:number format="1."/>
836
+ </xsl:otherwise>
837
+ </xsl:choose>
838
+ </xsl:otherwise>
839
+ </xsl:choose>
840
+ </fo:block>
841
+ </fo:list-item-label>
842
+ <fo:list-item-body start-indent="body-start()">
843
+ <fo:block>
844
+ <xsl:apply-templates/>
845
+ <xsl:apply-templates select=".//nist:note" mode="process"/>
846
+ </fo:block>
847
+ </fo:list-item-body>
848
+ </fo:list-item>
849
+ </xsl:template>
850
+
851
+ <xsl:template match="nist:li//nist:p">
852
+ <xsl:variable name="num"><xsl:number/></xsl:variable>
853
+ <fo:block margin-bottom="6pt">
854
+ <xsl:if test="$num &gt;= 2">
855
+ <xsl:attribute name="font-size">11pt</xsl:attribute>
856
+ </xsl:if>
857
+ <xsl:apply-templates/>
858
+ </fo:block>
859
+ </xsl:template>
860
+
861
+ <xsl:template match="nist:link" priority="2">
862
+ <xsl:if test="ancestor::*[local-name()='formattedref']">
863
+ <xsl:value-of select="$linebreak"/>
864
+ </xsl:if>
865
+ <fo:inline color="blue" text-decoration="underline">
866
+ <xsl:call-template name="link"/>
867
+ </fo:inline>
868
+ </xsl:template>
869
+
870
+
871
+
872
+ <xsl:template match="nist:formula/nist:stem" name="formula-nist" priority="2">
873
+ <fo:block margin-top="6pt"> <!-- text-align="center" -->
874
+ <fo:table table-layout="fixed" width="100%">
875
+ <fo:table-column column-width="95%"/>
876
+ <fo:table-column column-width="5%"/>
877
+ <fo:table-body>
878
+ <fo:table-row>
879
+ <fo:table-cell>
880
+ <fo:block text-align="center">
881
+ <xsl:if test="ancestor::nist:annex">
882
+ <xsl:attribute name="text-align">left</xsl:attribute>
883
+ <xsl:attribute name="margin-left">7mm</xsl:attribute>
884
+ </xsl:if>
885
+ <xsl:apply-templates/>
886
+ </fo:block>
887
+ </fo:table-cell>
888
+ <fo:table-cell> <!-- display-align="center" -->
889
+ <fo:block text-align="right">
890
+ <xsl:apply-templates select="../nist:name" mode="presentation"/>
891
+ </fo:block>
892
+ </fo:table-cell>
893
+ </fo:table-row>
894
+ </fo:table-body>
895
+ </fo:table>
896
+ </fo:block>
897
+ </xsl:template>
898
+
899
+
900
+ <xsl:template match="nist:formula" mode="process">
901
+ <xsl:call-template name="formula-nist"/>
902
+ </xsl:template>
903
+
904
+
905
+
906
+
907
+ <xsl:template match="nist:terms[nist:term[nist:preferred and nist:definition]]">
908
+ <fo:block id="{@id}">
909
+ <fo:table width="100%" table-layout="fixed">
910
+ <fo:table-column column-width="22%"/>
911
+ <fo:table-column column-width="78%"/>
912
+ <fo:table-body>
913
+ <xsl:apply-templates mode="table"/>
914
+ </fo:table-body>
915
+ </fo:table>
916
+ </fo:block>
917
+ </xsl:template>
918
+ <xsl:template match="nist:term" mode="table">
919
+ <fo:table-row id="{@id}">
920
+ <fo:table-cell padding-right="1mm">
921
+ <fo:block margin-bottom="12pt">
922
+ <xsl:apply-templates select="nist:preferred"/>
923
+ </fo:block>
924
+ </fo:table-cell>
925
+ <fo:table-cell>
926
+ <fo:block margin-bottom="12pt">
927
+ <xsl:apply-templates select="nist:*[local-name(.) != 'preferred']"/>
928
+ </fo:block>
929
+ </fo:table-cell>
930
+ </fo:table-row>
931
+ </xsl:template>
932
+ <xsl:template match="nist:preferred">
933
+ <fo:inline>
934
+ <xsl:apply-templates/>
935
+ </fo:inline>
936
+ </xsl:template>
937
+ <xsl:template match="nist:definition/nist:p" priority="2">
938
+ <fo:block>
939
+ <xsl:apply-templates/>
940
+ </fo:block>
941
+ </xsl:template>
942
+
943
+
944
+
945
+ <xsl:template match="nist:quote" priority="2">
946
+ <fo:block-container margin-left="7mm" margin-right="7mm">
947
+ <xsl:apply-templates/>
948
+ <xsl:apply-templates select="nist:author" mode="process"/>
949
+ </fo:block-container>
950
+ </xsl:template>
951
+
952
+ <xsl:template match="nist:quote/nist:author" priority="2"/>
953
+ <xsl:template match="nist:quote/nist:p" priority="2">
954
+ <fo:block text-align="justify" margin-bottom="12pt">
955
+ <xsl:apply-templates/>
956
+ </fo:block>
957
+ </xsl:template>
958
+ <xsl:template match="nist:quote/nist:author" mode="process" priority="2">
959
+ <fo:block text-align="right" margin-left="0.5in" margin-right="0.5in">
960
+ <fo:inline>— </fo:inline>
961
+ <xsl:apply-templates/>
962
+ </fo:block>
963
+ </xsl:template>
964
+
965
+ <xsl:template name="insertHeaderFooter">
966
+ <xsl:call-template name="insertHeader"/>
967
+ <xsl:call-template name="insertFooter"/>
968
+ </xsl:template>
969
+
970
+ <xsl:template name="insertHeader">
971
+ <fo:static-content flow-name="header" font-family="Arial" font-size="7.5pt">
972
+ <fo:block-container height="1in" display-align="before" color="{$color}">
973
+ <fo:block padding-top="0.5in" margin-bottom="7pt" line-height="115%"> <!-- text-align-last="justify" -->
974
+ <fo:table table-layout="fixed" width="100%">
975
+ <fo:table-column column-width="70%"/>
976
+ <fo:table-column column-width="30%"/>
977
+ <fo:table-body>
978
+ <fo:table-row>
979
+ <fo:table-cell>
980
+ <fo:block>
981
+ <xsl:call-template name="recursiveSmallCaps">
982
+ <xsl:with-param name="text" select="$seriestitle"/>
983
+ </xsl:call-template>
984
+ </fo:block>
985
+ </fo:table-cell>
986
+ <fo:table-cell>
987
+ <fo:block text-align="right">
988
+ <xsl:call-template name="recursiveSmallCaps">
989
+ <xsl:with-param name="text" select="$title"/>
990
+ </xsl:call-template>
991
+ </fo:block>
992
+ </fo:table-cell>
993
+ </fo:table-row>
994
+ </fo:table-body>
995
+ </fo:table>
996
+ </fo:block>
997
+ </fo:block-container>
998
+ </fo:static-content>
999
+ </xsl:template>
1000
+
1001
+ <xsl:template name="insertFooter">
1002
+ <fo:static-content flow-name="footer" font-size="11pt">
1003
+ <fo:block-container height="1in" display-align="after" color="{$color}">
1004
+ <fo:block text-align="center" padding-bottom="0.65in"><fo:page-number/></fo:block>
1005
+ </fo:block-container>
1006
+ </fo:static-content>
1007
+ </xsl:template>
1008
+
1009
+ <xsl:variable name="Image-NIST-Logo">
1010
+ <xsl:text>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</xsl:text>
1011
+ </xsl:variable>
1012
+
1013
+
1014
+ <!-- convert YYYY-MM-DD to (Month YYYY) -->
1015
+ <xsl:template name="formatDate">
1016
+ <xsl:param name="date"/>
1017
+ <xsl:variable name="year" select="substring($date, 1, 4)"/>
1018
+ <xsl:variable name="month" select="substring($date, 6, 2)"/>
1019
+ <xsl:variable name="day" select="substring($date, 9)"/>
1020
+ <xsl:variable name="monthStr">
1021
+ <xsl:choose>
1022
+ <xsl:when test="$month = '01'">January</xsl:when>
1023
+ <xsl:when test="$month = '02'">February</xsl:when>
1024
+ <xsl:when test="$month = '03'">March</xsl:when>
1025
+ <xsl:when test="$month = '04'">April</xsl:when>
1026
+ <xsl:when test="$month = '05'">May</xsl:when>
1027
+ <xsl:when test="$month = '06'">June</xsl:when>
1028
+ <xsl:when test="$month = '07'">July</xsl:when>
1029
+ <xsl:when test="$month = '08'">August</xsl:when>
1030
+ <xsl:when test="$month = '09'">September</xsl:when>
1031
+ <xsl:when test="$month = '10'">October</xsl:when>
1032
+ <xsl:when test="$month = '11'">November</xsl:when>
1033
+ <xsl:when test="$month = '12'">December</xsl:when>
1034
+ </xsl:choose>
1035
+ </xsl:variable>
1036
+ <xsl:variable name="result" select="normalize-space(concat($monthStr, ' ', $day, ', ', $year))"/>
1037
+ <xsl:value-of select="$result"/>
1038
+ </xsl:template>
1039
+
1040
+
1041
+ <xsl:variable name="titles" select="xalan:nodeset($titles_)"/><xsl:variable name="titles_">
1042
+
1043
+ <title-annex lang="en">Annex </title-annex>
1044
+ <title-annex lang="fr">Annexe </title-annex>
1045
+
1046
+ <title-annex lang="zh">Annex </title-annex>
1047
+
1048
+
1049
+
1050
+ <title-edition lang="en">
1051
+
1052
+ <xsl:text>Edition </xsl:text>
1053
+
1054
+
1055
+ </title-edition>
1056
+
1057
+
1058
+ <title-toc lang="en">
1059
+
1060
+
1061
+ <xsl:text>Table of Contents</xsl:text>
1062
+
1063
+
1064
+ </title-toc>
1065
+ <title-toc lang="fr">Sommaire</title-toc>
1066
+
1067
+ <title-toc lang="zh">Contents</title-toc>
1068
+
1069
+
1070
+
1071
+ <title-page lang="en">Page</title-page>
1072
+ <title-page lang="fr">Page</title-page>
1073
+
1074
+ <title-key lang="en">Key</title-key>
1075
+ <title-key lang="fr">Légende</title-key>
1076
+
1077
+ <title-where lang="en">where</title-where>
1078
+ <title-where lang="fr">où</title-where>
1079
+
1080
+ <title-descriptors lang="en">Descriptors</title-descriptors>
1081
+
1082
+ <title-part lang="en">
1083
+
1084
+
1085
+ </title-part>
1086
+ <title-part lang="fr">
1087
+
1088
+
1089
+ </title-part>
1090
+ <title-part lang="zh">第 # 部分:</title-part>
1091
+
1092
+ <title-modified lang="en">modified</title-modified>
1093
+ <title-modified lang="fr">modifiée</title-modified>
1094
+
1095
+ <title-modified lang="zh">modified</title-modified>
1096
+
1097
+
1098
+
1099
+ <title-source lang="en">SOURCE</title-source>
1100
+
1101
+ <title-keywords lang="en">Keywords</title-keywords>
1102
+
1103
+ <title-deprecated lang="en">DEPRECATED</title-deprecated>
1104
+ <title-deprecated lang="fr">DEPRECATED</title-deprecated>
1105
+
1106
+ <title-list-tables lang="en">List of Tables</title-list-tables>
1107
+
1108
+ <title-list-figures lang="en">List of Figures</title-list-figures>
1109
+
1110
+ <title-list-recommendations lang="en">List of Recommendations</title-list-recommendations>
1111
+
1112
+ <title-acknowledgements lang="en">Acknowledgements</title-acknowledgements>
1113
+
1114
+ <title-abstract lang="en">Abstract</title-abstract>
1115
+
1116
+ <title-summary lang="en">Summary</title-summary>
1117
+
1118
+ <title-in lang="en">in </title-in>
1119
+
1120
+ <title-partly-supercedes lang="en">Partly Supercedes </title-partly-supercedes>
1121
+ <title-partly-supercedes lang="zh">部分代替 </title-partly-supercedes>
1122
+
1123
+ <title-completion-date lang="en">Completion date for this manuscript</title-completion-date>
1124
+ <title-completion-date lang="zh">本稿完成日期</title-completion-date>
1125
+
1126
+ <title-issuance-date lang="en">Issuance Date: #</title-issuance-date>
1127
+ <title-issuance-date lang="zh"># 发布</title-issuance-date>
1128
+
1129
+ <title-implementation-date lang="en">Implementation Date: #</title-implementation-date>
1130
+ <title-implementation-date lang="zh"># 实施</title-implementation-date>
1131
+
1132
+ <title-obligation-normative lang="en">normative</title-obligation-normative>
1133
+ <title-obligation-normative lang="zh">规范性附录</title-obligation-normative>
1134
+
1135
+ <title-caution lang="en">CAUTION</title-caution>
1136
+ <title-caution lang="zh">注意</title-caution>
1137
+
1138
+ <title-warning lang="en">WARNING</title-warning>
1139
+ <title-warning lang="zh">警告</title-warning>
1140
+
1141
+ <title-amendment lang="en">AMENDMENT</title-amendment>
1142
+ </xsl:variable><xsl:variable name="tab_zh"> </xsl:variable><xsl:template name="getTitle">
1143
+ <xsl:param name="name"/>
1144
+ <xsl:variable name="lang">
1145
+ <xsl:call-template name="getLang"/>
1146
+ </xsl:variable>
1147
+ <xsl:variable name="title_" select="$titles/*[local-name() = $name][@lang = $lang]"/>
1148
+ <xsl:choose>
1149
+ <xsl:when test="normalize-space($title_) != ''">
1150
+ <xsl:value-of select="$title_"/>
1151
+ </xsl:when>
1152
+ <xsl:otherwise>
1153
+ <xsl:value-of select="$titles/*[local-name() = $name][@lang = 'en']"/>
1154
+ </xsl:otherwise>
1155
+ </xsl:choose>
1156
+ </xsl:template><xsl:variable name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable name="linebreak" select="'&#8232;'"/><xsl:attribute-set name="link-style">
1157
+
1158
+
1159
+ </xsl:attribute-set><xsl:attribute-set name="sourcecode-style">
1160
+ <xsl:attribute name="white-space">pre</xsl:attribute>
1161
+ <xsl:attribute name="wrap-option">wrap</xsl:attribute>
1162
+
1163
+
1164
+
1165
+
1166
+
1167
+ <xsl:attribute name="font-family">Courier</xsl:attribute>
1168
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
1169
+ <xsl:attribute name="margin-top">6pt</xsl:attribute>
1170
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
1171
+
1172
+
1173
+
1174
+
1175
+ </xsl:attribute-set><xsl:attribute-set name="permission-style">
1176
+
1177
+ </xsl:attribute-set><xsl:attribute-set name="permission-name-style">
1178
+
1179
+ </xsl:attribute-set><xsl:attribute-set name="permission-label-style">
1180
+
1181
+ </xsl:attribute-set><xsl:attribute-set name="requirement-style">
1182
+
1183
+ </xsl:attribute-set><xsl:attribute-set name="requirement-name-style">
1184
+
1185
+ </xsl:attribute-set><xsl:attribute-set name="requirement-label-style">
1186
+
1187
+ </xsl:attribute-set><xsl:attribute-set name="requirement-subject-style">
1188
+ </xsl:attribute-set><xsl:attribute-set name="requirement-inherit-style">
1189
+ </xsl:attribute-set><xsl:attribute-set name="recommendation-style">
1190
+
1191
+
1192
+ </xsl:attribute-set><xsl:attribute-set name="recommendation-name-style">
1193
+
1194
+
1195
+ </xsl:attribute-set><xsl:attribute-set name="recommendation-label-style">
1196
+
1197
+ </xsl:attribute-set><xsl:attribute-set name="termexample-style">
1198
+
1199
+
1200
+
1201
+
1202
+
1203
+
1204
+
1205
+ </xsl:attribute-set><xsl:attribute-set name="example-style">
1206
+
1207
+
1208
+
1209
+
1210
+
1211
+
1212
+
1213
+
1214
+ <xsl:attribute name="font-size">11pt</xsl:attribute>
1215
+ <xsl:attribute name="margin-top">12pt</xsl:attribute>
1216
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1217
+ <xsl:attribute name="margin-left">15mm</xsl:attribute>
1218
+
1219
+
1220
+
1221
+ </xsl:attribute-set><xsl:attribute-set name="example-body-style">
1222
+
1223
+
1224
+ </xsl:attribute-set><xsl:attribute-set name="example-name-style">
1225
+
1226
+
1227
+
1228
+
1229
+
1230
+
1231
+
1232
+
1233
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
1234
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
1235
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1236
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
1237
+
1238
+
1239
+
1240
+
1241
+
1242
+
1243
+
1244
+
1245
+ </xsl:attribute-set><xsl:attribute-set name="example-p-style">
1246
+
1247
+
1248
+
1249
+
1250
+
1251
+
1252
+
1253
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1254
+
1255
+
1256
+
1257
+
1258
+
1259
+ </xsl:attribute-set><xsl:attribute-set name="termexample-name-style">
1260
+
1261
+
1262
+
1263
+
1264
+ </xsl:attribute-set><xsl:attribute-set name="table-name-style">
1265
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
1266
+
1267
+
1268
+
1269
+
1270
+
1271
+
1272
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
1273
+ <xsl:attribute name="text-align">center</xsl:attribute>
1274
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
1275
+ <xsl:attribute name="font-family">Arial</xsl:attribute>
1276
+ <xsl:attribute name="font-size">9pt</xsl:attribute>
1277
+
1278
+
1279
+
1280
+
1281
+
1282
+ </xsl:attribute-set><xsl:attribute-set name="appendix-style">
1283
+
1284
+
1285
+
1286
+ </xsl:attribute-set><xsl:attribute-set name="appendix-example-style">
1287
+
1288
+
1289
+
1290
+ </xsl:attribute-set><xsl:attribute-set name="xref-style">
1291
+
1292
+
1293
+ <xsl:attribute name="color">blue</xsl:attribute>
1294
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
1295
+
1296
+ </xsl:attribute-set><xsl:attribute-set name="eref-style">
1297
+
1298
+
1299
+
1300
+ <xsl:attribute name="color">blue</xsl:attribute>
1301
+
1302
+ </xsl:attribute-set><xsl:attribute-set name="note-style">
1303
+
1304
+
1305
+
1306
+
1307
+
1308
+
1309
+
1310
+
1311
+
1312
+ <xsl:attribute name="font-size">11pt</xsl:attribute>
1313
+ <xsl:attribute name="space-before">4pt</xsl:attribute>
1314
+
1315
+
1316
+
1317
+
1318
+
1319
+
1320
+
1321
+ </xsl:attribute-set><xsl:attribute-set name="note-name-style">
1322
+
1323
+
1324
+
1325
+
1326
+
1327
+
1328
+
1329
+
1330
+
1331
+
1332
+ </xsl:attribute-set><xsl:attribute-set name="note-p-style">
1333
+
1334
+
1335
+
1336
+
1337
+
1338
+
1339
+
1340
+
1341
+
1342
+
1343
+ <xsl:attribute name="space-before">4pt</xsl:attribute>
1344
+
1345
+
1346
+
1347
+
1348
+ </xsl:attribute-set><xsl:attribute-set name="termnote-style">
1349
+
1350
+
1351
+
1352
+
1353
+ <xsl:attribute name="margin-top">4pt</xsl:attribute>
1354
+
1355
+
1356
+ </xsl:attribute-set><xsl:attribute-set name="quote-style">
1357
+
1358
+
1359
+
1360
+
1361
+
1362
+
1363
+ </xsl:attribute-set><xsl:attribute-set name="quote-source-style">
1364
+
1365
+
1366
+
1367
+ </xsl:attribute-set><xsl:attribute-set name="termsource-style">
1368
+
1369
+
1370
+
1371
+
1372
+
1373
+ </xsl:attribute-set><xsl:attribute-set name="origin-style">
1374
+
1375
+
1376
+ </xsl:attribute-set><xsl:attribute-set name="term-style">
1377
+
1378
+ </xsl:attribute-set><xsl:attribute-set name="figure-name-style">
1379
+
1380
+
1381
+
1382
+
1383
+
1384
+
1385
+
1386
+
1387
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
1388
+ <xsl:attribute name="text-align">center</xsl:attribute>
1389
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
1390
+ <xsl:attribute name="keep-with-previous">always</xsl:attribute>
1391
+
1392
+
1393
+
1394
+
1395
+
1396
+
1397
+
1398
+
1399
+
1400
+ </xsl:attribute-set><xsl:attribute-set name="formula-style">
1401
+
1402
+ </xsl:attribute-set><xsl:attribute-set name="image-style">
1403
+ <xsl:attribute name="text-align">center</xsl:attribute>
1404
+
1405
+
1406
+
1407
+
1408
+
1409
+ </xsl:attribute-set><xsl:attribute-set name="figure-pseudocode-p-style">
1410
+
1411
+ </xsl:attribute-set><xsl:attribute-set name="image-graphic-style">
1412
+
1413
+
1414
+
1415
+
1416
+ <xsl:attribute name="width">75%</xsl:attribute>
1417
+ <xsl:attribute name="content-height">100%</xsl:attribute>
1418
+ <xsl:attribute name="content-width">scale-to-fit</xsl:attribute>
1419
+ <xsl:attribute name="scaling">uniform</xsl:attribute>
1420
+
1421
+
1422
+ </xsl:attribute-set><xsl:attribute-set name="tt-style">
1423
+
1424
+
1425
+ </xsl:attribute-set><xsl:attribute-set name="sourcecode-name-style">
1426
+ <xsl:attribute name="font-size">11pt</xsl:attribute>
1427
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
1428
+ <xsl:attribute name="text-align">center</xsl:attribute>
1429
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1430
+ </xsl:attribute-set><xsl:attribute-set name="domain-style">
1431
+
1432
+ </xsl:attribute-set><xsl:attribute-set name="admitted-style">
1433
+
1434
+
1435
+ </xsl:attribute-set><xsl:attribute-set name="deprecates-style">
1436
+
1437
+ </xsl:attribute-set><xsl:attribute-set name="definition-style">
1438
+
1439
+
1440
+ </xsl:attribute-set><xsl:template match="text()">
1441
+ <xsl:value-of select="."/>
1442
+ </xsl:template><xsl:template match="*[local-name()='br']">
1443
+ <xsl:value-of select="$linebreak"/>
1444
+ </xsl:template><xsl:template match="*[local-name()='td']//text() | *[local-name()='th']//text() | *[local-name()='dt']//text() | *[local-name()='dd']//text()" priority="1">
1445
+ <!-- <xsl:call-template name="add-zero-spaces"/> -->
1446
+ <xsl:call-template name="add-zero-spaces-java"/>
1447
+ </xsl:template><xsl:template match="*[local-name()='table']">
1448
+
1449
+ <xsl:variable name="simple-table">
1450
+ <xsl:call-template name="getSimpleTable"/>
1451
+ </xsl:variable>
1452
+
1453
+
1454
+
1455
+
1456
+
1457
+ <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
1458
+
1459
+
1460
+
1461
+
1462
+
1463
+ <xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)//tr[1]/td)"/>
1464
+
1465
+ <!-- <xsl:variable name="cols-count">
1466
+ <xsl:choose>
1467
+ <xsl:when test="*[local-name()='thead']">
1468
+ <xsl:call-template name="calculate-columns-numbers">
1469
+ <xsl:with-param name="table-row" select="*[local-name()='thead']/*[local-name()='tr'][1]"/>
1470
+ </xsl:call-template>
1471
+ </xsl:when>
1472
+ <xsl:otherwise>
1473
+ <xsl:call-template name="calculate-columns-numbers">
1474
+ <xsl:with-param name="table-row" select="*[local-name()='tbody']/*[local-name()='tr'][1]"/>
1475
+ </xsl:call-template>
1476
+ </xsl:otherwise>
1477
+ </xsl:choose>
1478
+ </xsl:variable> -->
1479
+ <!-- cols-count=<xsl:copy-of select="$cols-count"/> -->
1480
+ <!-- cols-count2=<xsl:copy-of select="$cols-count2"/> -->
1481
+
1482
+
1483
+
1484
+ <xsl:variable name="colwidths">
1485
+ <xsl:call-template name="calculate-column-widths">
1486
+ <xsl:with-param name="cols-count" select="$cols-count"/>
1487
+ <xsl:with-param name="table" select="$simple-table"/>
1488
+ </xsl:call-template>
1489
+ </xsl:variable>
1490
+
1491
+ <!-- <xsl:variable name="colwidths2">
1492
+ <xsl:call-template name="calculate-column-widths">
1493
+ <xsl:with-param name="cols-count" select="$cols-count"/>
1494
+ </xsl:call-template>
1495
+ </xsl:variable> -->
1496
+
1497
+ <!-- cols-count=<xsl:copy-of select="$cols-count"/>
1498
+ colwidthsNew=<xsl:copy-of select="$colwidths"/>
1499
+ colwidthsOld=<xsl:copy-of select="$colwidths2"/>z -->
1500
+
1501
+ <xsl:variable name="margin-left">
1502
+ <xsl:choose>
1503
+ <xsl:when test="sum(xalan:nodeset($colwidths)//column) &gt; 75">15</xsl:when>
1504
+ <xsl:otherwise>0</xsl:otherwise>
1505
+ </xsl:choose>
1506
+ </xsl:variable>
1507
+
1508
+ <fo:block-container margin-left="-{$margin-left}mm" margin-right="-{$margin-left}mm">
1509
+
1510
+ <xsl:attribute name="space-after">6pt</xsl:attribute>
1511
+
1512
+
1513
+
1514
+
1515
+
1516
+
1517
+
1518
+
1519
+ <fo:table id="{@id}" table-layout="fixed" width="100%" margin-left="{$margin-left}mm" margin-right="{$margin-left}mm" table-omit-footer-at-break="true">
1520
+
1521
+
1522
+
1523
+
1524
+
1525
+
1526
+ <xsl:if test="ancestor::*[local-name()='annex'] or ancestor::*[local-name()='preface']">
1527
+ <xsl:attribute name="font-family">Times New Roman</xsl:attribute>
1528
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
1529
+ </xsl:if>
1530
+ <xsl:if test="not(ancestor::*[local-name()='annex'] or ancestor::*[local-name()='preface'])">
1531
+ <xsl:attribute name="font-family">Times New Roman</xsl:attribute>
1532
+ <xsl:attribute name="font-size">12pt</xsl:attribute>
1533
+ </xsl:if>
1534
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1535
+
1536
+
1537
+
1538
+
1539
+
1540
+
1541
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
1542
+ <xsl:choose>
1543
+ <xsl:when test=". = 1 or . = 0">
1544
+ <fo:table-column column-width="proportional-column-width(2)"/>
1545
+ </xsl:when>
1546
+ <xsl:otherwise>
1547
+ <fo:table-column column-width="proportional-column-width({.})"/>
1548
+ </xsl:otherwise>
1549
+ </xsl:choose>
1550
+ </xsl:for-each>
1551
+
1552
+ <xsl:choose>
1553
+ <xsl:when test="not(*[local-name()='tbody']) and *[local-name()='thead']">
1554
+ <xsl:apply-templates select="*[local-name()='thead']" mode="process_tbody"/>
1555
+ </xsl:when>
1556
+ <xsl:otherwise>
1557
+ <xsl:apply-templates/>
1558
+ </xsl:otherwise>
1559
+ </xsl:choose>
1560
+
1561
+ </fo:table>
1562
+
1563
+
1564
+
1565
+
1566
+
1567
+ </fo:block-container>
1568
+ </xsl:template><xsl:template match="*[local-name()='table']/*[local-name() = 'name']"/><xsl:template match="*[local-name()='table']/*[local-name() = 'name']" mode="presentation">
1569
+ <xsl:if test="normalize-space() != ''">
1570
+ <fo:block xsl:use-attribute-sets="table-name-style">
1571
+ <xsl:apply-templates/>
1572
+ </fo:block>
1573
+ </xsl:if>
1574
+ </xsl:template><xsl:template name="calculate-columns-numbers">
1575
+ <xsl:param name="table-row"/>
1576
+ <xsl:variable name="columns-count" select="count($table-row/*)"/>
1577
+ <xsl:variable name="sum-colspans" select="sum($table-row/*/@colspan)"/>
1578
+ <xsl:variable name="columns-with-colspan" select="count($table-row/*[@colspan])"/>
1579
+ <xsl:value-of select="$columns-count + $sum-colspans - $columns-with-colspan"/>
1580
+ </xsl:template><xsl:template name="calculate-column-widths">
1581
+ <xsl:param name="table"/>
1582
+ <xsl:param name="cols-count"/>
1583
+ <xsl:param name="curr-col" select="1"/>
1584
+ <xsl:param name="width" select="0"/>
1585
+
1586
+ <xsl:if test="$curr-col &lt;= $cols-count">
1587
+ <xsl:variable name="widths">
1588
+ <xsl:choose>
1589
+ <xsl:when test="not($table)"><!-- this branch is not using in production, for debug only -->
1590
+ <xsl:for-each select="*[local-name()='thead']//*[local-name()='tr']">
1591
+ <xsl:variable name="words">
1592
+ <xsl:call-template name="tokenize">
1593
+ <xsl:with-param name="text" select="translate(*[local-name()='th'][$curr-col],'- —:', ' ')"/>
1594
+ </xsl:call-template>
1595
+ </xsl:variable>
1596
+ <xsl:variable name="max_length">
1597
+ <xsl:call-template name="max_length">
1598
+ <xsl:with-param name="words" select="xalan:nodeset($words)"/>
1599
+ </xsl:call-template>
1600
+ </xsl:variable>
1601
+ <width>
1602
+ <xsl:value-of select="$max_length"/>
1603
+ </width>
1604
+ </xsl:for-each>
1605
+ <xsl:for-each select="*[local-name()='tbody']//*[local-name()='tr']">
1606
+ <xsl:variable name="words">
1607
+ <xsl:call-template name="tokenize">
1608
+ <xsl:with-param name="text" select="translate(*[local-name()='td'][$curr-col],'- —:', ' ')"/>
1609
+ </xsl:call-template>
1610
+ </xsl:variable>
1611
+ <xsl:variable name="max_length">
1612
+ <xsl:call-template name="max_length">
1613
+ <xsl:with-param name="words" select="xalan:nodeset($words)"/>
1614
+ </xsl:call-template>
1615
+ </xsl:variable>
1616
+ <width>
1617
+ <xsl:value-of select="$max_length"/>
1618
+ </width>
1619
+
1620
+ </xsl:for-each>
1621
+ </xsl:when>
1622
+ <xsl:otherwise>
1623
+ <xsl:for-each select="xalan:nodeset($table)//tr">
1624
+ <xsl:variable name="td_text">
1625
+ <xsl:apply-templates select="td[$curr-col]" mode="td_text"/>
1626
+ </xsl:variable>
1627
+ <xsl:variable name="words">
1628
+ <xsl:variable name="string_with_added_zerospaces">
1629
+ <xsl:call-template name="add-zero-spaces-java">
1630
+ <xsl:with-param name="text" select="$td_text"/>
1631
+ </xsl:call-template>
1632
+ </xsl:variable>
1633
+ <xsl:call-template name="tokenize">
1634
+ <!-- <xsl:with-param name="text" select="translate(td[$curr-col],'- —:', ' ')"/> -->
1635
+ <!-- 2009 thinspace -->
1636
+ <!-- <xsl:with-param name="text" select="translate(normalize-space($td_text),'- —:', ' ')"/> -->
1637
+ <xsl:with-param name="text" select="normalize-space(translate($string_with_added_zerospaces, '​', ' '))"/>
1638
+ </xsl:call-template>
1639
+ </xsl:variable>
1640
+ <xsl:variable name="max_length">
1641
+ <xsl:call-template name="max_length">
1642
+ <xsl:with-param name="words" select="xalan:nodeset($words)"/>
1643
+ </xsl:call-template>
1644
+ </xsl:variable>
1645
+ <width>
1646
+ <xsl:variable name="divider">
1647
+ <xsl:choose>
1648
+ <xsl:when test="td[$curr-col]/@divide">
1649
+ <xsl:value-of select="td[$curr-col]/@divide"/>
1650
+ </xsl:when>
1651
+ <xsl:otherwise>1</xsl:otherwise>
1652
+ </xsl:choose>
1653
+ </xsl:variable>
1654
+ <xsl:value-of select="$max_length div $divider"/>
1655
+ </width>
1656
+
1657
+ </xsl:for-each>
1658
+
1659
+ </xsl:otherwise>
1660
+ </xsl:choose>
1661
+ </xsl:variable>
1662
+
1663
+
1664
+ <column>
1665
+ <xsl:for-each select="xalan:nodeset($widths)//width">
1666
+ <xsl:sort select="." data-type="number" order="descending"/>
1667
+ <xsl:if test="position()=1">
1668
+ <xsl:value-of select="."/>
1669
+ </xsl:if>
1670
+ </xsl:for-each>
1671
+ </column>
1672
+ <xsl:call-template name="calculate-column-widths">
1673
+ <xsl:with-param name="cols-count" select="$cols-count"/>
1674
+ <xsl:with-param name="curr-col" select="$curr-col +1"/>
1675
+ <xsl:with-param name="table" select="$table"/>
1676
+ </xsl:call-template>
1677
+ </xsl:if>
1678
+ </xsl:template><xsl:template match="text()" mode="td_text">
1679
+ <xsl:variable name="zero-space">​</xsl:variable>
1680
+ <xsl:value-of select="translate(., $zero-space, ' ')"/><xsl:text> </xsl:text>
1681
+ </xsl:template><xsl:template match="*[local-name()='termsource']" mode="td_text">
1682
+ <xsl:value-of select="*[local-name()='origin']/@citeas"/>
1683
+ </xsl:template><xsl:template match="*[local-name()='link']" mode="td_text">
1684
+ <xsl:value-of select="@target"/>
1685
+ </xsl:template><xsl:template match="*[local-name()='table2']"/><xsl:template match="*[local-name()='thead']"/><xsl:template match="*[local-name()='thead']" mode="process">
1686
+ <xsl:param name="cols-count"/>
1687
+ <!-- font-weight="bold" -->
1688
+ <fo:table-header>
1689
+
1690
+ <xsl:apply-templates/>
1691
+ </fo:table-header>
1692
+ </xsl:template><xsl:template match="*[local-name()='thead']" mode="process_tbody">
1693
+ <fo:table-body>
1694
+ <xsl:apply-templates/>
1695
+ </fo:table-body>
1696
+ </xsl:template><xsl:template match="*[local-name()='tfoot']"/><xsl:template match="*[local-name()='tfoot']" mode="process">
1697
+ <xsl:apply-templates/>
1698
+ </xsl:template><xsl:template name="insertTableFooter">
1699
+ <xsl:param name="cols-count"/>
1700
+ <xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
1701
+ <xsl:if test="../*[local-name()='tfoot'] or $isNoteOrFnExist = 'true'">
1702
+
1703
+ <fo:table-footer>
1704
+
1705
+ <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/>
1706
+
1707
+ <!-- if there are note(s) or fn(s) then create footer row -->
1708
+ <xsl:if test="$isNoteOrFnExist = 'true'">
1709
+
1710
+
1711
+
1712
+ <fo:table-row>
1713
+ <fo:table-cell border="solid black 1pt" padding-left="1mm" padding-right="1mm" padding-top="1mm" number-columns-spanned="{$cols-count}">
1714
+
1715
+
1716
+
1717
+ <!-- fn will be processed inside 'note' processing -->
1718
+
1719
+
1720
+ <!-- except gb -->
1721
+
1722
+ <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
1723
+
1724
+
1725
+ <!-- horizontal row separator -->
1726
+
1727
+
1728
+ <!-- fn processing -->
1729
+ <xsl:call-template name="fn_display"/>
1730
+
1731
+ </fo:table-cell>
1732
+ </fo:table-row>
1733
+
1734
+ </xsl:if>
1735
+ </fo:table-footer>
1736
+
1737
+ </xsl:if>
1738
+ </xsl:template><xsl:template match="*[local-name()='tbody']">
1739
+
1740
+ <xsl:variable name="cols-count">
1741
+ <xsl:choose>
1742
+ <xsl:when test="../*[local-name()='thead']">
1743
+ <xsl:call-template name="calculate-columns-numbers">
1744
+ <xsl:with-param name="table-row" select="../*[local-name()='thead']/*[local-name()='tr'][1]"/>
1745
+ </xsl:call-template>
1746
+ </xsl:when>
1747
+ <xsl:otherwise>
1748
+ <xsl:call-template name="calculate-columns-numbers">
1749
+ <xsl:with-param name="table-row" select="./*[local-name()='tr'][1]"/>
1750
+ </xsl:call-template>
1751
+ </xsl:otherwise>
1752
+ </xsl:choose>
1753
+ </xsl:variable>
1754
+
1755
+ <xsl:apply-templates select="../*[local-name()='thead']" mode="process">
1756
+ <xsl:with-param name="cols-count" select="$cols-count"/>
1757
+ </xsl:apply-templates>
1758
+
1759
+ <xsl:call-template name="insertTableFooter">
1760
+ <xsl:with-param name="cols-count" select="$cols-count"/>
1761
+ </xsl:call-template>
1762
+
1763
+ <fo:table-body>
1764
+ <xsl:apply-templates/>
1765
+ <!-- <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/> -->
1766
+
1767
+ </fo:table-body>
1768
+
1769
+ </xsl:template><xsl:template match="*[local-name()='tr']">
1770
+ <xsl:variable name="parent-name" select="local-name(..)"/>
1771
+ <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
1772
+ <fo:table-row min-height="4mm">
1773
+ <xsl:if test="$parent-name = 'thead'">
1774
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
1775
+
1776
+ <xsl:attribute name="font-family">Arial</xsl:attribute>
1777
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
1778
+
1779
+
1780
+
1781
+
1782
+
1783
+ </xsl:if>
1784
+ <xsl:if test="$parent-name = 'tfoot'">
1785
+
1786
+
1787
+ </xsl:if>
1788
+
1789
+
1790
+ <xsl:apply-templates/>
1791
+ </fo:table-row>
1792
+ </xsl:template><xsl:template match="*[local-name()='th']">
1793
+ <fo:table-cell text-align="{@align}" font-weight="bold" border="solid black 1pt" padding-left="1mm" display-align="center">
1794
+
1795
+
1796
+
1797
+
1798
+ <xsl:attribute name="text-align">center</xsl:attribute>
1799
+ <xsl:attribute name="background-color">black</xsl:attribute>
1800
+ <xsl:attribute name="color">white</xsl:attribute>
1801
+
1802
+
1803
+
1804
+
1805
+
1806
+ <xsl:if test="@colspan">
1807
+ <xsl:attribute name="number-columns-spanned">
1808
+ <xsl:value-of select="@colspan"/>
1809
+ </xsl:attribute>
1810
+ </xsl:if>
1811
+ <xsl:if test="@rowspan">
1812
+ <xsl:attribute name="number-rows-spanned">
1813
+ <xsl:value-of select="@rowspan"/>
1814
+ </xsl:attribute>
1815
+ </xsl:if>
1816
+ <fo:block>
1817
+ <xsl:apply-templates/>
1818
+ </fo:block>
1819
+ </fo:table-cell>
1820
+ </xsl:template><xsl:template match="*[local-name()='td']">
1821
+ <fo:table-cell text-align="{@align}" display-align="center" border="solid black 1pt" padding-left="1mm">
1822
+
1823
+
1824
+
1825
+
1826
+
1827
+
1828
+
1829
+
1830
+
1831
+ <xsl:if test="ancestor::*[local-name()='thead']">
1832
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
1833
+ </xsl:if>
1834
+
1835
+ <xsl:if test="@colspan">
1836
+ <xsl:attribute name="number-columns-spanned">
1837
+ <xsl:value-of select="@colspan"/>
1838
+ </xsl:attribute>
1839
+ </xsl:if>
1840
+ <xsl:if test="@rowspan">
1841
+ <xsl:attribute name="number-rows-spanned">
1842
+ <xsl:value-of select="@rowspan"/>
1843
+ </xsl:attribute>
1844
+ </xsl:if>
1845
+ <fo:block>
1846
+
1847
+ <xsl:apply-templates/>
1848
+ </fo:block>
1849
+ </fo:table-cell>
1850
+ </xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='note']" priority="2"/><xsl:template match="*[local-name()='table']/*[local-name()='note']" mode="process">
1851
+
1852
+
1853
+ <fo:block font-size="10pt" margin-bottom="12pt">
1854
+
1855
+
1856
+
1857
+
1858
+ <fo:inline padding-right="2mm">
1859
+
1860
+
1861
+
1862
+
1863
+ <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
1864
+
1865
+ </fo:inline>
1866
+ <xsl:apply-templates mode="process"/>
1867
+ </fo:block>
1868
+
1869
+ </xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='note']/*[local-name()='name']" mode="process"/><xsl:template match="*[local-name()='table']/*[local-name()='note']/*[local-name()='p']" mode="process">
1870
+ <xsl:apply-templates/>
1871
+ </xsl:template><xsl:template name="fn_display">
1872
+ <xsl:variable name="references">
1873
+ <xsl:for-each select="..//*[local-name()='fn'][local-name(..) != 'name']">
1874
+ <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
1875
+
1876
+
1877
+ <xsl:apply-templates/>
1878
+ </fn>
1879
+ </xsl:for-each>
1880
+ </xsl:variable>
1881
+ <xsl:for-each select="xalan:nodeset($references)//fn">
1882
+ <xsl:variable name="reference" select="@reference"/>
1883
+ <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
1884
+ <fo:block margin-bottom="12pt">
1885
+
1886
+
1887
+
1888
+
1889
+ <fo:inline font-size="80%" padding-right="5mm" id="{@id}">
1890
+
1891
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
1892
+
1893
+
1894
+
1895
+
1896
+
1897
+
1898
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
1899
+
1900
+ <xsl:value-of select="@reference"/>
1901
+
1902
+ </fo:inline>
1903
+ <fo:inline>
1904
+
1905
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
1906
+
1907
+ <xsl:apply-templates/>
1908
+ </fo:inline>
1909
+ </fo:block>
1910
+ </xsl:if>
1911
+ </xsl:for-each>
1912
+ </xsl:template><xsl:template name="fn_name_display">
1913
+ <!-- <xsl:variable name="references">
1914
+ <xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
1915
+ <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
1916
+ <xsl:apply-templates />
1917
+ </fn>
1918
+ </xsl:for-each>
1919
+ </xsl:variable>
1920
+ $references=<xsl:copy-of select="$references"/> -->
1921
+ <xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
1922
+ <xsl:variable name="reference" select="@reference"/>
1923
+ <fo:block id="{@reference}_{ancestor::*[@id][1]/@id}"><xsl:value-of select="@reference"/></fo:block>
1924
+ <fo:block margin-bottom="12pt">
1925
+ <xsl:apply-templates/>
1926
+ </fo:block>
1927
+ </xsl:for-each>
1928
+ </xsl:template><xsl:template name="fn_display_figure">
1929
+ <xsl:variable name="key_iso">
1930
+ <!-- and (not(@class) or @class !='pseudocode') -->
1931
+ </xsl:variable>
1932
+ <xsl:variable name="references">
1933
+ <xsl:for-each select=".//*[local-name()='fn'][not(parent::*[local-name()='name'])]">
1934
+ <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
1935
+ <xsl:apply-templates/>
1936
+ </fn>
1937
+ </xsl:for-each>
1938
+ </xsl:variable>
1939
+
1940
+ <!-- current hierarchy is 'figure' element -->
1941
+ <xsl:variable name="following_dl_colwidths">
1942
+ <xsl:if test="*[local-name() = 'dl']"><!-- if there is a 'dl', then set the same columns width as for 'dl' -->
1943
+ <xsl:variable name="html-table">
1944
+ <xsl:variable name="ns" select="substring-before(name(/*), '-')"/>
1945
+ <xsl:element name="{$ns}:table">
1946
+ <xsl:for-each select="*[local-name() = 'dl'][1]">
1947
+ <tbody>
1948
+ <xsl:apply-templates mode="dl"/>
1949
+ </tbody>
1950
+ </xsl:for-each>
1951
+ </xsl:element>
1952
+ </xsl:variable>
1953
+
1954
+ <xsl:call-template name="calculate-column-widths">
1955
+ <xsl:with-param name="cols-count" select="2"/>
1956
+ <xsl:with-param name="table" select="$html-table"/>
1957
+ </xsl:call-template>
1958
+
1959
+ </xsl:if>
1960
+ </xsl:variable>
1961
+
1962
+
1963
+ <xsl:variable name="maxlength_dt">
1964
+ <xsl:for-each select="*[local-name() = 'dl'][1]">
1965
+ <xsl:call-template name="getMaxLength_dt"/>
1966
+ </xsl:for-each>
1967
+ </xsl:variable>
1968
+
1969
+ <xsl:if test="xalan:nodeset($references)//fn">
1970
+ <fo:block>
1971
+ <fo:table width="95%" table-layout="fixed">
1972
+ <xsl:if test="normalize-space($key_iso) = 'true'">
1973
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
1974
+
1975
+ </xsl:if>
1976
+ <xsl:choose>
1977
+ <!-- if there 'dl', then set same columns width -->
1978
+ <xsl:when test="xalan:nodeset($following_dl_colwidths)//column">
1979
+ <xsl:call-template name="setColumnWidth_dl">
1980
+ <xsl:with-param name="colwidths" select="$following_dl_colwidths"/>
1981
+ <xsl:with-param name="maxlength_dt" select="$maxlength_dt"/>
1982
+ </xsl:call-template>
1983
+ </xsl:when>
1984
+ <xsl:otherwise>
1985
+ <fo:table-column column-width="15%"/>
1986
+ <fo:table-column column-width="85%"/>
1987
+ </xsl:otherwise>
1988
+ </xsl:choose>
1989
+ <fo:table-body>
1990
+ <xsl:for-each select="xalan:nodeset($references)//fn">
1991
+ <xsl:variable name="reference" select="@reference"/>
1992
+ <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
1993
+ <fo:table-row>
1994
+ <fo:table-cell>
1995
+ <fo:block>
1996
+ <fo:inline font-size="80%" padding-right="5mm" vertical-align="super" id="{@id}">
1997
+
1998
+ <xsl:value-of select="@reference"/>
1999
+ </fo:inline>
2000
+ </fo:block>
2001
+ </fo:table-cell>
2002
+ <fo:table-cell>
2003
+ <fo:block text-align="justify" margin-bottom="12pt">
2004
+
2005
+ <xsl:if test="normalize-space($key_iso) = 'true'">
2006
+ <xsl:attribute name="margin-bottom">0</xsl:attribute>
2007
+ </xsl:if>
2008
+
2009
+ <xsl:apply-templates/>
2010
+ </fo:block>
2011
+ </fo:table-cell>
2012
+ </fo:table-row>
2013
+ </xsl:if>
2014
+ </xsl:for-each>
2015
+ </fo:table-body>
2016
+ </fo:table>
2017
+ </fo:block>
2018
+ </xsl:if>
2019
+
2020
+ </xsl:template><xsl:template match="*[local-name()='fn']">
2021
+ <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
2022
+ <fo:inline font-size="80%" keep-with-previous.within-line="always">
2023
+
2024
+
2025
+
2026
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
2027
+ <xsl:attribute name="color">blue</xsl:attribute>
2028
+
2029
+
2030
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
2031
+
2032
+ <fo:basic-link internal-destination="{@reference}_{ancestor::*[@id][1]/@id}" fox:alt-text="{@reference}"> <!-- @reference | ancestor::*[local-name()='clause'][1]/@id-->
2033
+
2034
+ <xsl:value-of select="@reference"/>
2035
+ </fo:basic-link>
2036
+ </fo:inline>
2037
+ </xsl:template><xsl:template match="*[local-name()='fn']/*[local-name()='p']">
2038
+ <fo:inline>
2039
+ <xsl:apply-templates/>
2040
+ </fo:inline>
2041
+ </xsl:template><xsl:template match="*[local-name()='dl']">
2042
+ <xsl:variable name="parent" select="local-name(..)"/>
2043
+
2044
+ <xsl:variable name="key_iso">
2045
+ <!-- and (not(../@class) or ../@class !='pseudocode') -->
2046
+ </xsl:variable>
2047
+
2048
+ <xsl:choose>
2049
+ <xsl:when test="$parent = 'formula' and count(*[local-name()='dt']) = 1"> <!-- only one component -->
2050
+
2051
+
2052
+ <fo:block margin-bottom="12pt" text-align="left">
2053
+
2054
+ <xsl:variable name="title-where">
2055
+ <xsl:call-template name="getTitle">
2056
+ <xsl:with-param name="name" select="'title-where'"/>
2057
+ </xsl:call-template>
2058
+ </xsl:variable>
2059
+ <xsl:value-of select="$title-where"/><xsl:text> </xsl:text>
2060
+ <xsl:apply-templates select="*[local-name()='dt']/*"/>
2061
+ <xsl:text/>
2062
+ <xsl:apply-templates select="*[local-name()='dd']/*" mode="inline"/>
2063
+ </fo:block>
2064
+
2065
+ </xsl:when>
2066
+ <xsl:when test="$parent = 'formula'"> <!-- a few components -->
2067
+ <fo:block margin-bottom="12pt" text-align="left">
2068
+
2069
+
2070
+
2071
+
2072
+ <xsl:variable name="title-where">
2073
+ <xsl:call-template name="getTitle">
2074
+ <xsl:with-param name="name" select="'title-where'"/>
2075
+ </xsl:call-template>
2076
+ </xsl:variable>
2077
+ <xsl:value-of select="$title-where"/>
2078
+ </fo:block>
2079
+ </xsl:when>
2080
+ <xsl:when test="$parent = 'figure' and (not(../@class) or ../@class !='pseudocode')">
2081
+ <fo:block font-weight="bold" text-align="left" margin-bottom="12pt" keep-with-next="always">
2082
+
2083
+
2084
+
2085
+ <xsl:variable name="title-key">
2086
+ <xsl:call-template name="getTitle">
2087
+ <xsl:with-param name="name" select="'title-key'"/>
2088
+ </xsl:call-template>
2089
+ </xsl:variable>
2090
+ <xsl:value-of select="$title-key"/>
2091
+ </fo:block>
2092
+ </xsl:when>
2093
+ </xsl:choose>
2094
+
2095
+ <!-- a few components -->
2096
+ <xsl:if test="not($parent = 'formula' and count(*[local-name()='dt']) = 1)">
2097
+ <fo:block>
2098
+
2099
+
2100
+
2101
+ <xsl:if test="not(.//*[local-name()='dt']//*[local-name()='stem'])">
2102
+ <xsl:attribute name="margin-left">5mm</xsl:attribute>
2103
+ </xsl:if>
2104
+
2105
+
2106
+ <fo:block>
2107
+
2108
+ <xsl:if test="not(.//*[local-name()='dt']//*[local-name()='stem'])">
2109
+ <xsl:attribute name="margin-left">-2.5mm</xsl:attribute>
2110
+ </xsl:if>
2111
+
2112
+
2113
+
2114
+
2115
+ <fo:table width="95%" table-layout="fixed">
2116
+
2117
+ <xsl:choose>
2118
+ <xsl:when test="normalize-space($key_iso) = 'true' and $parent = 'formula'">
2119
+ <!-- <xsl:attribute name="font-size">11pt</xsl:attribute> -->
2120
+ </xsl:when>
2121
+ <xsl:when test="normalize-space($key_iso) = 'true'">
2122
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
2123
+
2124
+ </xsl:when>
2125
+ </xsl:choose>
2126
+ <!-- create virtual html table for dl/[dt and dd] -->
2127
+ <xsl:variable name="html-table">
2128
+ <xsl:variable name="ns" select="substring-before(name(/*), '-')"/>
2129
+ <xsl:element name="{$ns}:table">
2130
+ <tbody>
2131
+ <xsl:apply-templates mode="dl"/>
2132
+ </tbody>
2133
+ </xsl:element>
2134
+ </xsl:variable>
2135
+ <!-- html-table<xsl:copy-of select="$html-table"/> -->
2136
+ <xsl:variable name="colwidths">
2137
+ <xsl:call-template name="calculate-column-widths">
2138
+ <xsl:with-param name="cols-count" select="2"/>
2139
+ <xsl:with-param name="table" select="$html-table"/>
2140
+ </xsl:call-template>
2141
+ </xsl:variable>
2142
+ <!-- colwidths=<xsl:value-of select="$colwidths"/> -->
2143
+ <xsl:variable name="maxlength_dt">
2144
+ <xsl:call-template name="getMaxLength_dt"/>
2145
+ </xsl:variable>
2146
+ <xsl:call-template name="setColumnWidth_dl">
2147
+ <xsl:with-param name="colwidths" select="$colwidths"/>
2148
+ <xsl:with-param name="maxlength_dt" select="$maxlength_dt"/>
2149
+ </xsl:call-template>
2150
+ <fo:table-body>
2151
+ <xsl:apply-templates>
2152
+ <xsl:with-param name="key_iso" select="normalize-space($key_iso)"/>
2153
+ </xsl:apply-templates>
2154
+ </fo:table-body>
2155
+ </fo:table>
2156
+ </fo:block>
2157
+ </fo:block>
2158
+ </xsl:if>
2159
+ </xsl:template><xsl:template name="setColumnWidth_dl">
2160
+ <xsl:param name="colwidths"/>
2161
+ <xsl:param name="maxlength_dt"/>
2162
+ <xsl:choose>
2163
+ <xsl:when test="ancestor::*[local-name()='dl']"><!-- second level, i.e. inlined table -->
2164
+ <fo:table-column column-width="50%"/>
2165
+ <fo:table-column column-width="50%"/>
2166
+ </xsl:when>
2167
+ <xsl:otherwise>
2168
+ <xsl:choose>
2169
+ <xsl:when test="normalize-space($maxlength_dt) != '' and number($maxlength_dt) &lt;= 2"> <!-- if dt contains short text like t90, a, etc -->
2170
+ <fo:table-column column-width="5%"/>
2171
+ <fo:table-column column-width="95%"/>
2172
+ </xsl:when>
2173
+ <xsl:when test="normalize-space($maxlength_dt) != '' and number($maxlength_dt) &lt;= 5"> <!-- if dt contains short text like t90, a, etc -->
2174
+ <fo:table-column column-width="10%"/>
2175
+ <fo:table-column column-width="90%"/>
2176
+ </xsl:when>
2177
+ <!-- <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] &gt; 1.7">
2178
+ <fo:table-column column-width="60%"/>
2179
+ <fo:table-column column-width="40%"/>
2180
+ </xsl:when> -->
2181
+ <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] &gt; 1.3">
2182
+ <fo:table-column column-width="50%"/>
2183
+ <fo:table-column column-width="50%"/>
2184
+ </xsl:when>
2185
+ <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] &gt; 0.5">
2186
+ <fo:table-column column-width="40%"/>
2187
+ <fo:table-column column-width="60%"/>
2188
+ </xsl:when>
2189
+ <xsl:otherwise>
2190
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
2191
+ <xsl:choose>
2192
+ <xsl:when test=". = 1 or . = 0">
2193
+ <fo:table-column column-width="proportional-column-width(2)"/>
2194
+ </xsl:when>
2195
+ <xsl:otherwise>
2196
+ <fo:table-column column-width="proportional-column-width({.})"/>
2197
+ </xsl:otherwise>
2198
+ </xsl:choose>
2199
+ </xsl:for-each>
2200
+ </xsl:otherwise>
2201
+ </xsl:choose>
2202
+ <!-- <fo:table-column column-width="15%"/>
2203
+ <fo:table-column column-width="85%"/> -->
2204
+ </xsl:otherwise>
2205
+ </xsl:choose>
2206
+ </xsl:template><xsl:template name="getMaxLength_dt">
2207
+ <xsl:for-each select="*[local-name()='dt']">
2208
+ <xsl:sort select="string-length(normalize-space(.))" data-type="number" order="descending"/>
2209
+ <xsl:if test="position() = 1">
2210
+ <xsl:value-of select="string-length(normalize-space(.))"/>
2211
+ </xsl:if>
2212
+ </xsl:for-each>
2213
+ </xsl:template><xsl:template match="*[local-name()='dl']/*[local-name()='note']" priority="2">
2214
+ <xsl:param name="key_iso"/>
2215
+
2216
+ <!-- <tr>
2217
+ <td>NOTE</td>
2218
+ <td>
2219
+ <xsl:apply-templates />
2220
+ </td>
2221
+ </tr>
2222
+ -->
2223
+ <fo:table-row>
2224
+ <fo:table-cell>
2225
+ <fo:block margin-top="6pt">
2226
+ <xsl:if test="normalize-space($key_iso) = 'true'">
2227
+ <xsl:attribute name="margin-top">0</xsl:attribute>
2228
+ </xsl:if>
2229
+ <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
2230
+ </fo:block>
2231
+ </fo:table-cell>
2232
+ <fo:table-cell>
2233
+ <fo:block>
2234
+ <xsl:apply-templates/>
2235
+ </fo:block>
2236
+ </fo:table-cell>
2237
+ </fo:table-row>
2238
+ </xsl:template><xsl:template match="*[local-name()='dt']" mode="dl">
2239
+ <tr>
2240
+ <td>
2241
+ <xsl:apply-templates/>
2242
+ </td>
2243
+ <td>
2244
+
2245
+ <xsl:if test="local-name(*[1]) != 'stem'">
2246
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
2247
+ </xsl:if>
2248
+
2249
+
2250
+ </td>
2251
+ </tr>
2252
+
2253
+ <xsl:if test="local-name(*[1]) = 'stem'">
2254
+ <tr>
2255
+ <td>
2256
+ <xsl:text> </xsl:text>
2257
+ </td>
2258
+ <td>
2259
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="dl_process"/>
2260
+ </td>
2261
+ </tr>
2262
+ </xsl:if>
2263
+
2264
+ </xsl:template><xsl:template match="*[local-name()='dt']">
2265
+ <xsl:param name="key_iso"/>
2266
+
2267
+ <fo:table-row>
2268
+ <fo:table-cell>
2269
+
2270
+ <fo:block margin-top="6pt">
2271
+
2272
+
2273
+ <xsl:if test="normalize-space($key_iso) = 'true'">
2274
+ <xsl:attribute name="margin-top">0</xsl:attribute>
2275
+
2276
+ </xsl:if>
2277
+
2278
+ <xsl:attribute name="margin-top">0</xsl:attribute>
2279
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
2280
+
2281
+
2282
+
2283
+
2284
+
2285
+ <xsl:apply-templates/>
2286
+ <!-- <xsl:if test="$namespace = 'gb'">
2287
+ <xsl:if test="ancestor::*[local-name()='formula']">
2288
+ <xsl:text>—</xsl:text>
2289
+ </xsl:if>
2290
+ </xsl:if> -->
2291
+ </fo:block>
2292
+ </fo:table-cell>
2293
+ <fo:table-cell>
2294
+ <fo:block>
2295
+
2296
+
2297
+ <xsl:if test="local-name(*[1]) != 'stem'">
2298
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
2299
+ </xsl:if>
2300
+
2301
+
2302
+ </fo:block>
2303
+ </fo:table-cell>
2304
+ </fo:table-row>
2305
+
2306
+ <xsl:if test="local-name(*[1]) = 'stem'">
2307
+ <fo:table-row>
2308
+ <fo:table-cell>
2309
+ <fo:block margin-top="6pt">
2310
+ <xsl:if test="normalize-space($key_iso) = 'true'">
2311
+ <xsl:attribute name="margin-top">0</xsl:attribute>
2312
+ </xsl:if>
2313
+ <xsl:text> </xsl:text>
2314
+ </fo:block>
2315
+ </fo:table-cell>
2316
+ <fo:table-cell>
2317
+ <fo:block>
2318
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
2319
+ </fo:block>
2320
+ </fo:table-cell>
2321
+ </fo:table-row>
2322
+ </xsl:if>
2323
+
2324
+ </xsl:template><xsl:template match="*[local-name()='dd']" mode="dl"/><xsl:template match="*[local-name()='dd']" mode="dl_process">
2325
+ <xsl:apply-templates/>
2326
+ </xsl:template><xsl:template match="*[local-name()='dd']"/><xsl:template match="*[local-name()='dd']" mode="process">
2327
+ <xsl:apply-templates/>
2328
+ </xsl:template><xsl:template match="*[local-name()='dd']/*[local-name()='p']" mode="inline">
2329
+ <fo:inline><xsl:text> </xsl:text><xsl:apply-templates/></fo:inline>
2330
+ </xsl:template><xsl:template match="*[local-name()='em']">
2331
+ <fo:inline font-style="italic">
2332
+ <xsl:apply-templates/>
2333
+ </fo:inline>
2334
+ </xsl:template><xsl:template match="*[local-name()='strong'] | *[local-name()='b']">
2335
+ <fo:inline font-weight="bold">
2336
+ <xsl:apply-templates/>
2337
+ </fo:inline>
2338
+ </xsl:template><xsl:template match="*[local-name()='sup']">
2339
+ <fo:inline font-size="80%" vertical-align="super">
2340
+ <xsl:apply-templates/>
2341
+ </fo:inline>
2342
+ </xsl:template><xsl:template match="*[local-name()='sub']">
2343
+ <fo:inline font-size="80%" vertical-align="sub">
2344
+ <xsl:apply-templates/>
2345
+ </fo:inline>
2346
+ </xsl:template><xsl:template match="*[local-name()='tt']">
2347
+ <fo:inline xsl:use-attribute-sets="tt-style">
2348
+ <xsl:apply-templates/>
2349
+ </fo:inline>
2350
+ </xsl:template><xsl:template match="*[local-name()='del']">
2351
+ <fo:inline font-size="10pt" color="red" text-decoration="line-through">
2352
+ <xsl:apply-templates/>
2353
+ </fo:inline>
2354
+ </xsl:template><xsl:template match="text()[ancestor::*[local-name()='smallcap']]">
2355
+ <xsl:variable name="text" select="normalize-space(.)"/>
2356
+ <fo:inline font-size="75%">
2357
+ <xsl:if test="string-length($text) &gt; 0">
2358
+ <xsl:call-template name="recursiveSmallCaps">
2359
+ <xsl:with-param name="text" select="$text"/>
2360
+ </xsl:call-template>
2361
+ </xsl:if>
2362
+ </fo:inline>
2363
+ </xsl:template><xsl:template name="recursiveSmallCaps">
2364
+ <xsl:param name="text"/>
2365
+ <xsl:variable name="char" select="substring($text,1,1)"/>
2366
+ <!-- <xsl:variable name="upperCase" select="translate($char, $lower, $upper)"/> -->
2367
+ <xsl:variable name="upperCase" select="java:toUpperCase(java:java.lang.String.new($char))"/>
2368
+ <xsl:choose>
2369
+ <xsl:when test="$char=$upperCase">
2370
+ <fo:inline font-size="{100 div 0.75}%">
2371
+ <xsl:value-of select="$upperCase"/>
2372
+ </fo:inline>
2373
+ </xsl:when>
2374
+ <xsl:otherwise>
2375
+ <xsl:value-of select="$upperCase"/>
2376
+ </xsl:otherwise>
2377
+ </xsl:choose>
2378
+ <xsl:if test="string-length($text) &gt; 1">
2379
+ <xsl:call-template name="recursiveSmallCaps">
2380
+ <xsl:with-param name="text" select="substring($text,2)"/>
2381
+ </xsl:call-template>
2382
+ </xsl:if>
2383
+ </xsl:template><xsl:template name="tokenize">
2384
+ <xsl:param name="text"/>
2385
+ <xsl:param name="separator" select="' '"/>
2386
+ <xsl:choose>
2387
+ <xsl:when test="not(contains($text, $separator))">
2388
+ <word>
2389
+ <xsl:variable name="str_no_en_chars" select="normalize-space(translate($text, $en_chars, ''))"/>
2390
+ <xsl:variable name="len_str_no_en_chars" select="string-length($str_no_en_chars)"/>
2391
+ <xsl:variable name="len_str_tmp" select="string-length(normalize-space($text))"/>
2392
+ <xsl:variable name="len_str">
2393
+ <xsl:choose>
2394
+ <xsl:when test="normalize-space(translate($text, $upper, '')) = ''"> <!-- english word in CAPITAL letters -->
2395
+ <xsl:value-of select="$len_str_tmp * 1.5"/>
2396
+ </xsl:when>
2397
+ <xsl:otherwise>
2398
+ <xsl:value-of select="$len_str_tmp"/>
2399
+ </xsl:otherwise>
2400
+ </xsl:choose>
2401
+ </xsl:variable>
2402
+
2403
+ <!-- <xsl:if test="$len_str_no_en_chars div $len_str &gt; 0.8">
2404
+ <xsl:message>
2405
+ div=<xsl:value-of select="$len_str_no_en_chars div $len_str"/>
2406
+ len_str=<xsl:value-of select="$len_str"/>
2407
+ len_str_no_en_chars=<xsl:value-of select="$len_str_no_en_chars"/>
2408
+ </xsl:message>
2409
+ </xsl:if> -->
2410
+ <!-- <len_str_no_en_chars><xsl:value-of select="$len_str_no_en_chars"/></len_str_no_en_chars>
2411
+ <len_str><xsl:value-of select="$len_str"/></len_str> -->
2412
+ <xsl:choose>
2413
+ <xsl:when test="$len_str_no_en_chars div $len_str &gt; 0.8"> <!-- means non-english string -->
2414
+ <xsl:value-of select="$len_str - $len_str_no_en_chars"/>
2415
+ </xsl:when>
2416
+ <xsl:otherwise>
2417
+ <xsl:value-of select="$len_str"/>
2418
+ </xsl:otherwise>
2419
+ </xsl:choose>
2420
+ </word>
2421
+ </xsl:when>
2422
+ <xsl:otherwise>
2423
+ <word>
2424
+ <xsl:value-of select="string-length(normalize-space(substring-before($text, $separator)))"/>
2425
+ </word>
2426
+ <xsl:call-template name="tokenize">
2427
+ <xsl:with-param name="text" select="substring-after($text, $separator)"/>
2428
+ </xsl:call-template>
2429
+ </xsl:otherwise>
2430
+ </xsl:choose>
2431
+ </xsl:template><xsl:template name="max_length">
2432
+ <xsl:param name="words"/>
2433
+ <xsl:for-each select="$words//word">
2434
+ <xsl:sort select="." data-type="number" order="descending"/>
2435
+ <xsl:if test="position()=1">
2436
+ <xsl:value-of select="."/>
2437
+ </xsl:if>
2438
+ </xsl:for-each>
2439
+ </xsl:template><xsl:template name="add-zero-spaces-java">
2440
+ <xsl:param name="text" select="."/>
2441
+ <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
2442
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| )','$1​')"/>
2443
+ </xsl:template><xsl:template name="add-zero-spaces">
2444
+ <xsl:param name="text" select="."/>
2445
+ <xsl:variable name="zero-space-after-chars">-</xsl:variable>
2446
+ <xsl:variable name="zero-space-after-dot">.</xsl:variable>
2447
+ <xsl:variable name="zero-space-after-colon">:</xsl:variable>
2448
+ <xsl:variable name="zero-space-after-equal">=</xsl:variable>
2449
+ <xsl:variable name="zero-space-after-underscore">_</xsl:variable>
2450
+ <xsl:variable name="zero-space">​</xsl:variable>
2451
+ <xsl:choose>
2452
+ <xsl:when test="contains($text, $zero-space-after-chars)">
2453
+ <xsl:value-of select="substring-before($text, $zero-space-after-chars)"/>
2454
+ <xsl:value-of select="$zero-space-after-chars"/>
2455
+ <xsl:value-of select="$zero-space"/>
2456
+ <xsl:call-template name="add-zero-spaces">
2457
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-chars)"/>
2458
+ </xsl:call-template>
2459
+ </xsl:when>
2460
+ <xsl:when test="contains($text, $zero-space-after-dot)">
2461
+ <xsl:value-of select="substring-before($text, $zero-space-after-dot)"/>
2462
+ <xsl:value-of select="$zero-space-after-dot"/>
2463
+ <xsl:value-of select="$zero-space"/>
2464
+ <xsl:call-template name="add-zero-spaces">
2465
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-dot)"/>
2466
+ </xsl:call-template>
2467
+ </xsl:when>
2468
+ <xsl:when test="contains($text, $zero-space-after-colon)">
2469
+ <xsl:value-of select="substring-before($text, $zero-space-after-colon)"/>
2470
+ <xsl:value-of select="$zero-space-after-colon"/>
2471
+ <xsl:value-of select="$zero-space"/>
2472
+ <xsl:call-template name="add-zero-spaces">
2473
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-colon)"/>
2474
+ </xsl:call-template>
2475
+ </xsl:when>
2476
+ <xsl:when test="contains($text, $zero-space-after-equal)">
2477
+ <xsl:value-of select="substring-before($text, $zero-space-after-equal)"/>
2478
+ <xsl:value-of select="$zero-space-after-equal"/>
2479
+ <xsl:value-of select="$zero-space"/>
2480
+ <xsl:call-template name="add-zero-spaces">
2481
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-equal)"/>
2482
+ </xsl:call-template>
2483
+ </xsl:when>
2484
+ <xsl:when test="contains($text, $zero-space-after-underscore)">
2485
+ <xsl:value-of select="substring-before($text, $zero-space-after-underscore)"/>
2486
+ <xsl:value-of select="$zero-space-after-underscore"/>
2487
+ <xsl:value-of select="$zero-space"/>
2488
+ <xsl:call-template name="add-zero-spaces">
2489
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-underscore)"/>
2490
+ </xsl:call-template>
2491
+ </xsl:when>
2492
+ <xsl:otherwise>
2493
+ <xsl:value-of select="$text"/>
2494
+ </xsl:otherwise>
2495
+ </xsl:choose>
2496
+ </xsl:template><xsl:template name="add-zero-spaces-equal">
2497
+ <xsl:param name="text" select="."/>
2498
+ <xsl:variable name="zero-space-after-equals">==========</xsl:variable>
2499
+ <xsl:variable name="zero-space-after-equal">=</xsl:variable>
2500
+ <xsl:variable name="zero-space">​</xsl:variable>
2501
+ <xsl:choose>
2502
+ <xsl:when test="contains($text, $zero-space-after-equals)">
2503
+ <xsl:value-of select="substring-before($text, $zero-space-after-equals)"/>
2504
+ <xsl:value-of select="$zero-space-after-equals"/>
2505
+ <xsl:value-of select="$zero-space"/>
2506
+ <xsl:call-template name="add-zero-spaces-equal">
2507
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-equals)"/>
2508
+ </xsl:call-template>
2509
+ </xsl:when>
2510
+ <xsl:when test="contains($text, $zero-space-after-equal)">
2511
+ <xsl:value-of select="substring-before($text, $zero-space-after-equal)"/>
2512
+ <xsl:value-of select="$zero-space-after-equal"/>
2513
+ <xsl:value-of select="$zero-space"/>
2514
+ <xsl:call-template name="add-zero-spaces-equal">
2515
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-equal)"/>
2516
+ </xsl:call-template>
2517
+ </xsl:when>
2518
+ <xsl:otherwise>
2519
+ <xsl:value-of select="$text"/>
2520
+ </xsl:otherwise>
2521
+ </xsl:choose>
2522
+ </xsl:template><xsl:template name="getSimpleTable">
2523
+ <xsl:variable name="simple-table">
2524
+
2525
+ <!-- Step 1. colspan processing -->
2526
+ <xsl:variable name="simple-table-colspan">
2527
+ <tbody>
2528
+ <xsl:apply-templates mode="simple-table-colspan"/>
2529
+ </tbody>
2530
+ </xsl:variable>
2531
+
2532
+ <!-- Step 2. rowspan processing -->
2533
+ <xsl:variable name="simple-table-rowspan">
2534
+ <xsl:apply-templates select="xalan:nodeset($simple-table-colspan)" mode="simple-table-rowspan"/>
2535
+ </xsl:variable>
2536
+
2537
+ <xsl:copy-of select="xalan:nodeset($simple-table-rowspan)"/>
2538
+
2539
+ <!-- <xsl:choose>
2540
+ <xsl:when test="current()//*[local-name()='th'][@colspan] or current()//*[local-name()='td'][@colspan] ">
2541
+
2542
+ </xsl:when>
2543
+ <xsl:otherwise>
2544
+ <xsl:copy-of select="current()"/>
2545
+ </xsl:otherwise>
2546
+ </xsl:choose> -->
2547
+ </xsl:variable>
2548
+ <xsl:copy-of select="$simple-table"/>
2549
+ </xsl:template><xsl:template match="*[local-name()='thead'] | *[local-name()='tbody']" mode="simple-table-colspan">
2550
+ <xsl:apply-templates mode="simple-table-colspan"/>
2551
+ </xsl:template><xsl:template match="*[local-name()='fn']" mode="simple-table-colspan"/><xsl:template match="*[local-name()='th'] | *[local-name()='td']" mode="simple-table-colspan">
2552
+ <xsl:choose>
2553
+ <xsl:when test="@colspan">
2554
+ <xsl:variable name="td">
2555
+ <xsl:element name="td">
2556
+ <xsl:attribute name="divide"><xsl:value-of select="@colspan"/></xsl:attribute>
2557
+ <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
2558
+ <xsl:apply-templates mode="simple-table-colspan"/>
2559
+ </xsl:element>
2560
+ </xsl:variable>
2561
+ <xsl:call-template name="repeatNode">
2562
+ <xsl:with-param name="count" select="@colspan"/>
2563
+ <xsl:with-param name="node" select="$td"/>
2564
+ </xsl:call-template>
2565
+ </xsl:when>
2566
+ <xsl:otherwise>
2567
+ <xsl:element name="td">
2568
+ <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
2569
+ <xsl:apply-templates mode="simple-table-colspan"/>
2570
+ </xsl:element>
2571
+ </xsl:otherwise>
2572
+ </xsl:choose>
2573
+ </xsl:template><xsl:template match="@colspan" mode="simple-table-colspan"/><xsl:template match="*[local-name()='tr']" mode="simple-table-colspan">
2574
+ <xsl:element name="tr">
2575
+ <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
2576
+ <xsl:apply-templates mode="simple-table-colspan"/>
2577
+ </xsl:element>
2578
+ </xsl:template><xsl:template match="@*|node()" mode="simple-table-colspan">
2579
+ <xsl:copy>
2580
+ <xsl:apply-templates select="@*|node()" mode="simple-table-colspan"/>
2581
+ </xsl:copy>
2582
+ </xsl:template><xsl:template name="repeatNode">
2583
+ <xsl:param name="count"/>
2584
+ <xsl:param name="node"/>
2585
+
2586
+ <xsl:if test="$count &gt; 0">
2587
+ <xsl:call-template name="repeatNode">
2588
+ <xsl:with-param name="count" select="$count - 1"/>
2589
+ <xsl:with-param name="node" select="$node"/>
2590
+ </xsl:call-template>
2591
+ <xsl:copy-of select="$node"/>
2592
+ </xsl:if>
2593
+ </xsl:template><xsl:template match="@*|node()" mode="simple-table-rowspan">
2594
+ <xsl:copy>
2595
+ <xsl:apply-templates select="@*|node()" mode="simple-table-rowspan"/>
2596
+ </xsl:copy>
2597
+ </xsl:template><xsl:template match="tbody" mode="simple-table-rowspan">
2598
+ <xsl:copy>
2599
+ <xsl:copy-of select="tr[1]"/>
2600
+ <xsl:apply-templates select="tr[2]" mode="simple-table-rowspan">
2601
+ <xsl:with-param name="previousRow" select="tr[1]"/>
2602
+ </xsl:apply-templates>
2603
+ </xsl:copy>
2604
+ </xsl:template><xsl:template match="tr" mode="simple-table-rowspan">
2605
+ <xsl:param name="previousRow"/>
2606
+ <xsl:variable name="currentRow" select="."/>
2607
+
2608
+ <xsl:variable name="normalizedTDs">
2609
+ <xsl:for-each select="xalan:nodeset($previousRow)//td">
2610
+ <xsl:choose>
2611
+ <xsl:when test="@rowspan &gt; 1">
2612
+ <xsl:copy>
2613
+ <xsl:attribute name="rowspan">
2614
+ <xsl:value-of select="@rowspan - 1"/>
2615
+ </xsl:attribute>
2616
+ <xsl:copy-of select="@*[not(name() = 'rowspan')]"/>
2617
+ <xsl:copy-of select="node()"/>
2618
+ </xsl:copy>
2619
+ </xsl:when>
2620
+ <xsl:otherwise>
2621
+ <xsl:copy-of select="$currentRow/td[1 + count(current()/preceding-sibling::td[not(@rowspan) or (@rowspan = 1)])]"/>
2622
+ </xsl:otherwise>
2623
+ </xsl:choose>
2624
+ </xsl:for-each>
2625
+ </xsl:variable>
2626
+
2627
+ <xsl:variable name="newRow">
2628
+ <xsl:copy>
2629
+ <xsl:copy-of select="$currentRow/@*"/>
2630
+ <xsl:copy-of select="xalan:nodeset($normalizedTDs)"/>
2631
+ </xsl:copy>
2632
+ </xsl:variable>
2633
+ <xsl:copy-of select="$newRow"/>
2634
+
2635
+ <xsl:apply-templates select="following-sibling::tr[1]" mode="simple-table-rowspan">
2636
+ <xsl:with-param name="previousRow" select="$newRow"/>
2637
+ </xsl:apply-templates>
2638
+ </xsl:template><xsl:template name="getLang">
2639
+ <xsl:variable name="language" select="//*[local-name()='bibdata']//*[local-name()='language']"/>
2640
+ <xsl:choose>
2641
+ <xsl:when test="$language = 'English'">en</xsl:when>
2642
+ <xsl:otherwise><xsl:value-of select="$language"/></xsl:otherwise>
2643
+ </xsl:choose>
2644
+ </xsl:template><xsl:template name="capitalizeWords">
2645
+ <xsl:param name="str"/>
2646
+ <xsl:variable name="str2" select="translate($str, '-', ' ')"/>
2647
+ <xsl:choose>
2648
+ <xsl:when test="contains($str2, ' ')">
2649
+ <xsl:variable name="substr" select="substring-before($str2, ' ')"/>
2650
+ <!-- <xsl:value-of select="translate(substring($substr, 1, 1), $lower, $upper)"/>
2651
+ <xsl:value-of select="substring($substr, 2)"/> -->
2652
+ <xsl:call-template name="capitalize">
2653
+ <xsl:with-param name="str" select="$substr"/>
2654
+ </xsl:call-template>
2655
+ <xsl:text> </xsl:text>
2656
+ <xsl:call-template name="capitalizeWords">
2657
+ <xsl:with-param name="str" select="substring-after($str2, ' ')"/>
2658
+ </xsl:call-template>
2659
+ </xsl:when>
2660
+ <xsl:otherwise>
2661
+ <!-- <xsl:value-of select="translate(substring($str2, 1, 1), $lower, $upper)"/>
2662
+ <xsl:value-of select="substring($str2, 2)"/> -->
2663
+ <xsl:call-template name="capitalize">
2664
+ <xsl:with-param name="str" select="$str2"/>
2665
+ </xsl:call-template>
2666
+ </xsl:otherwise>
2667
+ </xsl:choose>
2668
+ </xsl:template><xsl:template name="capitalize">
2669
+ <xsl:param name="str"/>
2670
+ <xsl:value-of select="java:toUpperCase(java:java.lang.String.new(substring($str, 1, 1)))"/>
2671
+ <xsl:value-of select="substring($str, 2)"/>
2672
+ </xsl:template><xsl:template match="mathml:math">
2673
+ <fo:inline font-family="STIX2Math">
2674
+ <fo:instream-foreign-object fox:alt-text="Math">
2675
+ <xsl:copy-of select="."/>
2676
+ </fo:instream-foreign-object>
2677
+ </fo:inline>
2678
+ </xsl:template><xsl:template match="*[local-name()='localityStack']"/><xsl:template match="*[local-name()='link']" name="link">
2679
+ <xsl:variable name="target">
2680
+ <xsl:choose>
2681
+ <xsl:when test="starts-with(normalize-space(@target), 'mailto:')">
2682
+ <xsl:value-of select="normalize-space(substring-after(@target, 'mailto:'))"/>
2683
+ </xsl:when>
2684
+ <xsl:otherwise>
2685
+ <xsl:value-of select="normalize-space(@target)"/>
2686
+ </xsl:otherwise>
2687
+ </xsl:choose>
2688
+ </xsl:variable>
2689
+ <fo:inline xsl:use-attribute-sets="link-style">
2690
+ <xsl:choose>
2691
+ <xsl:when test="$target = ''">
2692
+ <xsl:apply-templates/>
2693
+ </xsl:when>
2694
+ <xsl:otherwise>
2695
+ <fo:basic-link external-destination="{@target}" fox:alt-text="{@target}">
2696
+ <xsl:choose>
2697
+ <xsl:when test="normalize-space(.) = ''">
2698
+ <xsl:value-of select="$target"/>
2699
+ </xsl:when>
2700
+ <xsl:otherwise>
2701
+ <xsl:apply-templates/>
2702
+ </xsl:otherwise>
2703
+ </xsl:choose>
2704
+ </fo:basic-link>
2705
+ </xsl:otherwise>
2706
+ </xsl:choose>
2707
+ </fo:inline>
2708
+ </xsl:template><xsl:template match="*[local-name()='bookmark']">
2709
+ <fo:inline id="{@id}"/>
2710
+ </xsl:template><xsl:template match="*[local-name()='appendix']">
2711
+ <fo:block id="{@id}" xsl:use-attribute-sets="appendix-style">
2712
+ <xsl:apply-templates select="*[local-name()='title']" mode="process"/>
2713
+ </fo:block>
2714
+ <xsl:apply-templates/>
2715
+ </xsl:template><xsl:template match="*[local-name()='appendix']/*[local-name()='title']"/><xsl:template match="*[local-name()='appendix']/*[local-name()='title']" mode="process">
2716
+ <fo:inline><xsl:apply-templates/></fo:inline>
2717
+ </xsl:template><xsl:template match="*[local-name()='appendix']//*[local-name()='example']" priority="2">
2718
+ <fo:block id="{@id}" xsl:use-attribute-sets="appendix-example-style">
2719
+ <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
2720
+ </fo:block>
2721
+ <xsl:apply-templates/>
2722
+ </xsl:template><xsl:template match="*[local-name() = 'callout']">
2723
+ <fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}">&lt;<xsl:apply-templates/>&gt;</fo:basic-link>
2724
+ </xsl:template><xsl:template match="*[local-name() = 'annotation']">
2725
+ <xsl:variable name="annotation-id" select="@id"/>
2726
+ <xsl:variable name="callout" select="//*[@target = $annotation-id]/text()"/>
2727
+ <fo:block id="{$annotation-id}" white-space="nowrap">
2728
+ <fo:inline>
2729
+ <xsl:apply-templates>
2730
+ <xsl:with-param name="callout" select="concat('&lt;', $callout, '&gt; ')"/>
2731
+ </xsl:apply-templates>
2732
+ </fo:inline>
2733
+ </fo:block>
2734
+ </xsl:template><xsl:template match="*[local-name() = 'annotation']/*[local-name() = 'p']">
2735
+ <xsl:param name="callout"/>
2736
+ <fo:inline id="{@id}">
2737
+ <!-- for first p in annotation, put <x> -->
2738
+ <xsl:if test="not(preceding-sibling::*[local-name() = 'p'])"><xsl:value-of select="$callout"/></xsl:if>
2739
+ <xsl:apply-templates/>
2740
+ </fo:inline>
2741
+ </xsl:template><xsl:template match="*[local-name() = 'modification']">
2742
+ <xsl:variable name="title-modified">
2743
+ <xsl:call-template name="getTitle">
2744
+ <xsl:with-param name="name" select="'title-modified'"/>
2745
+ </xsl:call-template>
2746
+ </xsl:variable>
2747
+ <xsl:choose>
2748
+ <xsl:when test="$lang = 'zh'"><xsl:text>、</xsl:text><xsl:value-of select="$title-modified"/><xsl:text>—</xsl:text></xsl:when>
2749
+ <xsl:otherwise><xsl:text>, </xsl:text><xsl:value-of select="$title-modified"/><xsl:text> — </xsl:text></xsl:otherwise>
2750
+ </xsl:choose>
2751
+ <xsl:apply-templates/>
2752
+ </xsl:template><xsl:template match="*[local-name() = 'xref']">
2753
+ <fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
2754
+
2755
+ <xsl:apply-templates/>
2756
+ </fo:basic-link>
2757
+ </xsl:template><xsl:template match="*[local-name() = 'formula']" name="formula">
2758
+ <fo:block id="{@id}" xsl:use-attribute-sets="formula-style">
2759
+ <xsl:apply-templates/>
2760
+ </fo:block>
2761
+ </xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'dt']/*[local-name() = 'stem']">
2762
+ <fo:inline>
2763
+ <xsl:apply-templates/>
2764
+ </fo:inline>
2765
+ </xsl:template><xsl:template match="*[local-name() = 'admitted']/*[local-name() = 'stem']">
2766
+ <fo:inline>
2767
+ <xsl:apply-templates/>
2768
+ </fo:inline>
2769
+ </xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']" mode="presentation">
2770
+ <xsl:if test="normalize-space() != ''">
2771
+ <xsl:text>(</xsl:text><xsl:apply-templates/><xsl:text>)</xsl:text>
2772
+ </xsl:if>
2773
+ </xsl:template><xsl:template match="*[local-name() = 'note']" name="note">
2774
+
2775
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style">
2776
+
2777
+
2778
+
2779
+
2780
+ <fo:block-container margin-left="0mm">
2781
+
2782
+
2783
+
2784
+
2785
+
2786
+
2787
+
2788
+
2789
+ <fo:block>
2790
+
2791
+
2792
+
2793
+
2794
+ <fo:inline xsl:use-attribute-sets="note-name-style">
2795
+ <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
2796
+ </fo:inline>
2797
+ <xsl:apply-templates/>
2798
+ </fo:block>
2799
+
2800
+
2801
+ </fo:block-container>
2802
+ </fo:block-container>
2803
+
2804
+ </xsl:template><xsl:template match="*[local-name() = 'note']/*[local-name() = 'p']">
2805
+ <xsl:variable name="num"><xsl:number/></xsl:variable>
2806
+ <xsl:choose>
2807
+ <xsl:when test="$num = 1">
2808
+ <fo:inline xsl:use-attribute-sets="note-p-style">
2809
+ <xsl:apply-templates/>
2810
+ </fo:inline>
2811
+ </xsl:when>
2812
+ <xsl:otherwise>
2813
+ <fo:block xsl:use-attribute-sets="note-p-style">
2814
+ <xsl:apply-templates/>
2815
+ </fo:block>
2816
+ </xsl:otherwise>
2817
+ </xsl:choose>
2818
+ </xsl:template><xsl:template match="*[local-name() = 'termnote']">
2819
+ <fo:block id="{@id}" xsl:use-attribute-sets="termnote-style">
2820
+ <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
2821
+ <xsl:apply-templates/>
2822
+ </fo:block>
2823
+ </xsl:template><xsl:template match="*[local-name() = 'note']/*[local-name() = 'name'] | *[local-name() = 'termnote']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'note']/*[local-name() = 'name']" mode="presentation">
2824
+ <xsl:param name="sfx"/>
2825
+ <xsl:variable name="suffix">
2826
+ <xsl:choose>
2827
+ <xsl:when test="$sfx != ''">
2828
+ <xsl:value-of select="$sfx"/>
2829
+ </xsl:when>
2830
+ <xsl:otherwise>
2831
+
2832
+
2833
+ <xsl:text> – </xsl:text>
2834
+
2835
+ </xsl:otherwise>
2836
+ </xsl:choose>
2837
+ </xsl:variable>
2838
+ <xsl:if test="normalize-space() != ''">
2839
+ <xsl:apply-templates/>
2840
+ <xsl:value-of select="$suffix"/>
2841
+ </xsl:if>
2842
+ </xsl:template><xsl:template match="*[local-name() = 'termnote']/*[local-name() = 'name']" mode="presentation">
2843
+ <xsl:param name="sfx"/>
2844
+ <xsl:variable name="suffix">
2845
+ <xsl:choose>
2846
+ <xsl:when test="$sfx != ''">
2847
+ <xsl:value-of select="$sfx"/>
2848
+ </xsl:when>
2849
+ <xsl:otherwise>
2850
+
2851
+
2852
+ <xsl:text> – </xsl:text>
2853
+
2854
+ </xsl:otherwise>
2855
+ </xsl:choose>
2856
+ </xsl:variable>
2857
+ <xsl:if test="normalize-space() != ''">
2858
+ <xsl:apply-templates/>
2859
+ <xsl:value-of select="$suffix"/>
2860
+ </xsl:if>
2861
+ </xsl:template><xsl:template match="*[local-name() = 'termnote']/*[local-name() = 'p']">
2862
+ <fo:inline><xsl:apply-templates/></fo:inline>
2863
+ </xsl:template><xsl:template match="*[local-name() = 'terms']">
2864
+ <fo:block id="{@id}">
2865
+ <xsl:apply-templates/>
2866
+ </fo:block>
2867
+ </xsl:template><xsl:template match="*[local-name() = 'term']">
2868
+ <fo:block id="{@id}" xsl:use-attribute-sets="term-style">
2869
+
2870
+
2871
+
2872
+ <xsl:apply-templates/>
2873
+ </fo:block>
2874
+ </xsl:template><xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']" mode="presentation">
2875
+ <xsl:if test="normalize-space() != ''">
2876
+ <fo:inline>
2877
+ <xsl:apply-templates/>
2878
+ <!-- <xsl:if test="$namespace = 'gb' or $namespace = 'ogc'">
2879
+ <xsl:text>.</xsl:text>
2880
+ </xsl:if> -->
2881
+ </fo:inline>
2882
+ </xsl:if>
2883
+ </xsl:template><xsl:template match="*[local-name() = 'figure']">
2884
+ <fo:block-container id="{@id}">
2885
+ <fo:block>
2886
+ <xsl:apply-templates/>
2887
+ </fo:block>
2888
+ <xsl:call-template name="fn_display_figure"/>
2889
+ <xsl:for-each select="*[local-name() = 'note']">
2890
+ <xsl:call-template name="note"/>
2891
+ </xsl:for-each>
2892
+ <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
2893
+ </fo:block-container>
2894
+ </xsl:template><xsl:template match="*[local-name() = 'figure'][@class = 'pseudocode']">
2895
+ <fo:block id="{@id}">
2896
+ <xsl:apply-templates/>
2897
+ </fo:block>
2898
+ </xsl:template><xsl:template match="*[local-name() = 'figure'][@class = 'pseudocode']//*[local-name() = 'p']">
2899
+ <fo:block xsl:use-attribute-sets="figure-pseudocode-p-style">
2900
+ <xsl:apply-templates/>
2901
+ </fo:block>
2902
+ </xsl:template><xsl:template match="*[local-name() = 'image']">
2903
+ <fo:block xsl:use-attribute-sets="image-style">
2904
+
2905
+
2906
+ <xsl:variable name="src">
2907
+ <xsl:choose>
2908
+ <xsl:when test="@mimetype = 'image/svg+xml' and $images/images/image[@id = current()/@id]">
2909
+ <xsl:value-of select="$images/images/image[@id = current()/@id]/@src"/>
2910
+ </xsl:when>
2911
+ <xsl:otherwise>
2912
+ <xsl:value-of select="@src"/>
2913
+ </xsl:otherwise>
2914
+ </xsl:choose>
2915
+ </xsl:variable>
2916
+
2917
+ <fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" xsl:use-attribute-sets="image-graphic-style"/>
2918
+ </fo:block>
2919
+ </xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="contents">
2920
+ <xsl:apply-templates mode="contents"/>
2921
+ <xsl:text> </xsl:text>
2922
+ </xsl:template><xsl:template match="text()" mode="contents">
2923
+ <xsl:value-of select="."/>
2924
+ </xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'image']/*[local-name() = 'name']" mode="presentation">
2925
+ <xsl:if test="normalize-space() != ''">
2926
+ <fo:block xsl:use-attribute-sets="figure-name-style">
2927
+
2928
+ <xsl:if test="nist:dl">
2929
+ <xsl:attribute name="space-before">12pt</xsl:attribute>
2930
+ </xsl:if>
2931
+
2932
+ <xsl:apply-templates/>
2933
+ </fo:block>
2934
+ </xsl:if>
2935
+ </xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'fn']" priority="2"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'note']"/><xsl:template match="*[local-name() = 'title']" mode="contents_item">
2936
+ <xsl:apply-templates mode="contents_item"/>
2937
+ <!-- <xsl:text> </xsl:text> -->
2938
+ </xsl:template><xsl:template name="getSection">
2939
+ <xsl:value-of select="*[local-name() = 'title']/*[local-name() = 'tab'][1]/preceding-sibling::node()"/>
2940
+ </xsl:template><xsl:template name="getName">
2941
+ <xsl:choose>
2942
+ <xsl:when test="*[local-name() = 'title']/*[local-name() = 'tab']">
2943
+ <xsl:copy-of select="*[local-name() = 'title']/*[local-name() = 'tab'][1]/following-sibling::node()"/>
2944
+ </xsl:when>
2945
+ <xsl:otherwise>
2946
+ <xsl:copy-of select="*[local-name() = 'title']/node()"/>
2947
+ </xsl:otherwise>
2948
+ </xsl:choose>
2949
+ </xsl:template><xsl:template name="insertTitleAsListItem">
2950
+ <xsl:param name="provisional-distance-between-starts" select="'9.5mm'"/>
2951
+ <xsl:variable name="section">
2952
+ <xsl:for-each select="..">
2953
+ <xsl:call-template name="getSection"/>
2954
+ </xsl:for-each>
2955
+ </xsl:variable>
2956
+ <fo:list-block provisional-distance-between-starts="{$provisional-distance-between-starts}">
2957
+ <fo:list-item>
2958
+ <fo:list-item-label end-indent="label-end()">
2959
+ <fo:block>
2960
+ <xsl:value-of select="$section"/>
2961
+ </fo:block>
2962
+ </fo:list-item-label>
2963
+ <fo:list-item-body start-indent="body-start()">
2964
+ <fo:block>
2965
+ <xsl:choose>
2966
+ <xsl:when test="*[local-name() = 'tab']">
2967
+ <xsl:apply-templates select="*[local-name() = 'tab'][1]/following-sibling::node()"/>
2968
+ </xsl:when>
2969
+ <xsl:otherwise>
2970
+ <xsl:apply-templates/>
2971
+ </xsl:otherwise>
2972
+ </xsl:choose>
2973
+ </fo:block>
2974
+ </fo:list-item-body>
2975
+ </fo:list-item>
2976
+ </fo:list-block>
2977
+ </xsl:template><xsl:template name="extractTitle">
2978
+ <xsl:choose>
2979
+ <xsl:when test="*[local-name() = 'tab']">
2980
+ <xsl:apply-templates select="*[local-name() = 'tab'][1]/following-sibling::node()"/>
2981
+ </xsl:when>
2982
+ <xsl:otherwise>
2983
+ <xsl:apply-templates/>
2984
+ </xsl:otherwise>
2985
+ </xsl:choose>
2986
+ </xsl:template><xsl:template match="*[local-name() = 'fn']" mode="contents"/><xsl:template match="*[local-name() = 'fn']" mode="contents_item"/><xsl:template match="*[local-name() = 'tab']" mode="contents_item">
2987
+ <xsl:text> </xsl:text>
2988
+ </xsl:template><xsl:template match="*[local-name() = 'strong']" mode="contents_item">
2989
+ <xsl:copy>
2990
+ <xsl:apply-templates mode="contents_item"/>
2991
+ </xsl:copy>
2992
+ </xsl:template><xsl:template match="*[local-name() = 'br']" mode="contents_item">
2993
+ <xsl:text> </xsl:text>
2994
+ </xsl:template><xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
2995
+ <fo:block xsl:use-attribute-sets="sourcecode-style">
2996
+ <xsl:apply-templates/>
2997
+ </fo:block>
2998
+ <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
2999
+ </xsl:template><xsl:template match="*[local-name()='sourcecode']/text()">
3000
+ <xsl:variable name="text">
3001
+ <xsl:call-template name="add-zero-spaces-equal"/>
3002
+ </xsl:variable>
3003
+ <xsl:call-template name="add-zero-spaces">
3004
+ <xsl:with-param name="text" select="$text"/>
3005
+ </xsl:call-template>
3006
+ </xsl:template><xsl:template match="*[local-name() = 'sourcecode']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'sourcecode']/*[local-name() = 'name']" mode="presentation">
3007
+ <xsl:if test="normalize-space() != ''">
3008
+ <fo:block xsl:use-attribute-sets="sourcecode-name-style">
3009
+
3010
+ <xsl:apply-templates/>
3011
+ </fo:block>
3012
+ </xsl:if>
3013
+ </xsl:template><xsl:template match="*[local-name() = 'permission']">
3014
+ <fo:block id="{@id}" xsl:use-attribute-sets="permission-style">
3015
+ <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
3016
+ <xsl:apply-templates/>
3017
+ </fo:block>
3018
+ </xsl:template><xsl:template match="*[local-name() = 'permission']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'permission']/*[local-name() = 'name']" mode="presentation">
3019
+ <xsl:if test="normalize-space() != ''">
3020
+ <fo:block xsl:use-attribute-sets="permission-name-style">
3021
+ <xsl:apply-templates/>
3022
+
3023
+ </fo:block>
3024
+ </xsl:if>
3025
+ </xsl:template><xsl:template match="*[local-name() = 'permission']/*[local-name() = 'label']">
3026
+ <fo:block xsl:use-attribute-sets="permission-label-style">
3027
+ <xsl:apply-templates/>
3028
+ </fo:block>
3029
+ </xsl:template><xsl:template match="*[local-name() = 'requirement']">
3030
+ <fo:block id="{@id}" xsl:use-attribute-sets="requirement-style">
3031
+ <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
3032
+ <xsl:apply-templates select="*[local-name()='label']" mode="presentation"/>
3033
+ <xsl:apply-templates select="@obligation" mode="presentation"/>
3034
+ <xsl:apply-templates select="*[local-name()='subject']" mode="presentation"/>
3035
+ <xsl:apply-templates/>
3036
+ </fo:block>
3037
+ </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'name']" mode="presentation">
3038
+ <xsl:if test="normalize-space() != ''">
3039
+ <fo:block xsl:use-attribute-sets="requirement-name-style">
3040
+
3041
+ <xsl:apply-templates/>
3042
+
3043
+ </fo:block>
3044
+ </xsl:if>
3045
+ </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'label']"/><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'label']" mode="presentation">
3046
+ <fo:block xsl:use-attribute-sets="requirement-label-style">
3047
+ <xsl:apply-templates/>
3048
+ </fo:block>
3049
+ </xsl:template><xsl:template match="*[local-name() = 'requirement']/@obligation" mode="presentation">
3050
+ <fo:block>
3051
+ <fo:inline padding-right="3mm">Obligation</fo:inline><xsl:value-of select="."/>
3052
+ </fo:block>
3053
+ </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'subject']"/><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'subject']" mode="presentation">
3054
+ <fo:block xsl:use-attribute-sets="requirement-subject-style">
3055
+ <xsl:text>Target Type </xsl:text><xsl:apply-templates/>
3056
+ </fo:block>
3057
+ </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'inherit']">
3058
+ <fo:block xsl:use-attribute-sets="requirement-inherit-style">
3059
+ <xsl:text>Dependency </xsl:text><xsl:apply-templates/>
3060
+ </fo:block>
3061
+ </xsl:template><xsl:template match="*[local-name() = 'recommendation']">
3062
+ <fo:block id="{@id}" xsl:use-attribute-sets="recommendation-style">
3063
+ <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
3064
+ <xsl:apply-templates/>
3065
+ </fo:block>
3066
+ </xsl:template><xsl:template match="*[local-name() = 'recommendation']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'recommendation']/*[local-name() = 'name']" mode="presentation">
3067
+ <xsl:if test="normalize-space() != ''">
3068
+ <fo:block xsl:use-attribute-sets="recommendation-name-style">
3069
+ <xsl:apply-templates/>
3070
+
3071
+ </fo:block>
3072
+ </xsl:if>
3073
+ </xsl:template><xsl:template match="*[local-name() = 'recommendation']/*[local-name() = 'label']">
3074
+ <fo:block xsl:use-attribute-sets="recommendation-label-style">
3075
+ <xsl:apply-templates/>
3076
+ </fo:block>
3077
+ </xsl:template><xsl:template match="*[local-name() = 'termexample']">
3078
+ <fo:block id="{@id}" xsl:use-attribute-sets="termexample-style">
3079
+ <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
3080
+ <xsl:apply-templates/>
3081
+ </fo:block>
3082
+ </xsl:template><xsl:template match="*[local-name() = 'termexample']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'termexample']/*[local-name() = 'name']" mode="presentation">
3083
+ <xsl:if test="normalize-space() != ''">
3084
+ <fo:inline xsl:use-attribute-sets="termexample-name-style">
3085
+ <xsl:apply-templates/>
3086
+ </fo:inline>
3087
+ </xsl:if>
3088
+ </xsl:template><xsl:template match="*[local-name() = 'termexample']/*[local-name() = 'p']">
3089
+ <fo:inline><xsl:apply-templates/></fo:inline>
3090
+ </xsl:template><xsl:template match="*[local-name() = 'example']">
3091
+ <fo:block id="{@id}" xsl:use-attribute-sets="example-style">
3092
+
3093
+ <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
3094
+
3095
+ <xsl:variable name="element">
3096
+ block
3097
+
3098
+ </xsl:variable>
3099
+
3100
+ <xsl:choose>
3101
+ <xsl:when test="normalize-space($element) = 'block'">
3102
+ <fo:block xsl:use-attribute-sets="example-body-style">
3103
+ <xsl:apply-templates/>
3104
+ </fo:block>
3105
+ </xsl:when>
3106
+ <xsl:otherwise>
3107
+ <fo:inline>
3108
+ <xsl:apply-templates/>
3109
+ </fo:inline>
3110
+ </xsl:otherwise>
3111
+ </xsl:choose>
3112
+
3113
+ </fo:block>
3114
+ </xsl:template><xsl:template match="*[local-name() = 'example']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'example']/*[local-name() = 'name']" mode="presentation">
3115
+
3116
+ <xsl:variable name="element">
3117
+ block
3118
+
3119
+ </xsl:variable>
3120
+ <xsl:choose>
3121
+ <xsl:when test="ancestor::*[local-name() = 'appendix']">
3122
+ <fo:inline>
3123
+ <xsl:apply-templates/>
3124
+ </fo:inline>
3125
+ </xsl:when>
3126
+ <xsl:when test="normalize-space($element) = 'block'">
3127
+ <fo:block xsl:use-attribute-sets="example-name-style">
3128
+ <xsl:apply-templates/>
3129
+ </fo:block>
3130
+ </xsl:when>
3131
+ <xsl:otherwise>
3132
+ <fo:inline xsl:use-attribute-sets="example-name-style">
3133
+ <xsl:apply-templates/>
3134
+ </fo:inline>
3135
+ </xsl:otherwise>
3136
+ </xsl:choose>
3137
+
3138
+ </xsl:template><xsl:template match="*[local-name() = 'example']/*[local-name() = 'p']">
3139
+ <fo:block xsl:use-attribute-sets="example-p-style">
3140
+
3141
+ <xsl:variable name="num"><xsl:number/></xsl:variable>
3142
+ <xsl:if test="$num = 1">
3143
+ <xsl:attribute name="margin-left">5mm</xsl:attribute>
3144
+ </xsl:if>
3145
+
3146
+ <xsl:apply-templates/>
3147
+ </fo:block>
3148
+ </xsl:template><xsl:template match="*[local-name() = 'termsource']">
3149
+ <fo:block xsl:use-attribute-sets="termsource-style">
3150
+ <!-- Example: [SOURCE: ISO 5127:2017, 3.1.6.02] -->
3151
+ <xsl:variable name="termsource_text">
3152
+ <xsl:apply-templates/>
3153
+ </xsl:variable>
3154
+ <xsl:choose>
3155
+ <xsl:when test="starts-with(normalize-space($termsource_text), '[')">
3156
+ <xsl:apply-templates/>
3157
+ </xsl:when>
3158
+ <xsl:otherwise>
3159
+ <xsl:text>[</xsl:text>
3160
+ <xsl:apply-templates/>
3161
+ <xsl:text>]</xsl:text>
3162
+ </xsl:otherwise>
3163
+ </xsl:choose>
3164
+ </fo:block>
3165
+ </xsl:template><xsl:template match="*[local-name() = 'termsource']/text()">
3166
+ <xsl:if test="normalize-space() != ''">
3167
+ <xsl:value-of select="."/>
3168
+ </xsl:if>
3169
+ </xsl:template><xsl:template match="*[local-name() = 'origin']">
3170
+ <fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
3171
+
3172
+ <fo:inline xsl:use-attribute-sets="origin-style">
3173
+ <xsl:apply-templates/>
3174
+ </fo:inline>
3175
+ </fo:basic-link>
3176
+ </xsl:template><xsl:template match="*[local-name() = 'modification']/*[local-name() = 'p']">
3177
+ <fo:inline><xsl:apply-templates/></fo:inline>
3178
+ </xsl:template><xsl:template match="*[local-name() = 'modification']/text()">
3179
+ <xsl:if test="normalize-space() != ''">
3180
+ <xsl:value-of select="."/>
3181
+ </xsl:if>
3182
+ </xsl:template><xsl:template match="*[local-name() = 'quote']">
3183
+
3184
+ <fo:block xsl:use-attribute-sets="quote-style">
3185
+ <xsl:apply-templates select=".//*[local-name() = 'p']"/>
3186
+ </fo:block>
3187
+ <xsl:if test="*[local-name() = 'author'] or *[local-name() = 'source']">
3188
+ <fo:block xsl:use-attribute-sets="quote-source-style">
3189
+ <!-- — ISO, ISO 7301:2011, Clause 1 -->
3190
+ <xsl:apply-templates select="*[local-name() = 'author']"/>
3191
+ <xsl:apply-templates select="*[local-name() = 'source']"/>
3192
+ </fo:block>
3193
+ </xsl:if>
3194
+ </xsl:template><xsl:template match="*[local-name() = 'source']">
3195
+ <xsl:if test="../*[local-name() = 'author']">
3196
+ <xsl:text>, </xsl:text>
3197
+ </xsl:if>
3198
+ <fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
3199
+ <xsl:apply-templates/>
3200
+ </fo:basic-link>
3201
+ </xsl:template><xsl:template match="*[local-name() = 'author']">
3202
+ <xsl:text>— </xsl:text>
3203
+ <xsl:apply-templates/>
3204
+ </xsl:template><xsl:template match="*[local-name() = 'eref']">
3205
+ <fo:inline xsl:use-attribute-sets="eref-style">
3206
+ <xsl:if test="@type = 'footnote'">
3207
+
3208
+ <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
3209
+ <xsl:attribute name="font-size">80%</xsl:attribute>
3210
+ <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
3211
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
3212
+
3213
+
3214
+ </xsl:if>
3215
+
3216
+ <fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
3217
+
3218
+ <xsl:if test="@type = 'inline'">
3219
+
3220
+
3221
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
3222
+
3223
+ </xsl:if>
3224
+
3225
+
3226
+ <xsl:apply-templates/>
3227
+ </fo:basic-link>
3228
+ </fo:inline>
3229
+ </xsl:template><xsl:template match="*[local-name() = 'tab']">
3230
+ <!-- zero-space char -->
3231
+ <xsl:variable name="depth">
3232
+ <xsl:call-template name="getLevel">
3233
+ <xsl:with-param name="depth" select="../@depth"/>
3234
+ </xsl:call-template>
3235
+ </xsl:variable>
3236
+
3237
+ <xsl:variable name="padding">
3238
+
3239
+
3240
+
3241
+
3242
+
3243
+
3244
+
3245
+
3246
+
3247
+
3248
+
3249
+ <xsl:choose>
3250
+ <xsl:when test="$depth = 1 and local-name(..) != 'annex'">7.5</xsl:when>
3251
+ <xsl:otherwise>4</xsl:otherwise>
3252
+ </xsl:choose>
3253
+
3254
+
3255
+
3256
+
3257
+
3258
+
3259
+
3260
+ </xsl:variable>
3261
+
3262
+ <xsl:variable name="padding-right">
3263
+ <xsl:choose>
3264
+ <xsl:when test="normalize-space($padding) = ''">0</xsl:when>
3265
+ <xsl:otherwise>
3266
+ <xsl:value-of select="normalize-space($padding)"/>
3267
+ </xsl:otherwise>
3268
+ </xsl:choose>
3269
+ </xsl:variable>
3270
+
3271
+ <xsl:variable name="language" select="//*[local-name()='bibdata']//*[local-name()='language']"/>
3272
+
3273
+ <xsl:choose>
3274
+ <xsl:when test="$language = 'zh'">
3275
+ <fo:inline><xsl:value-of select="$tab_zh"/></fo:inline>
3276
+ </xsl:when>
3277
+ <xsl:when test="../../@inline-header = 'true'">
3278
+ <fo:inline font-size="90%">
3279
+ <xsl:call-template name="insertNonBreakSpaces">
3280
+ <xsl:with-param name="count" select="$padding-right"/>
3281
+ </xsl:call-template>
3282
+ </fo:inline>
3283
+ </xsl:when>
3284
+ <xsl:otherwise>
3285
+ <fo:inline padding-right="{$padding-right}mm">​</fo:inline>
3286
+ </xsl:otherwise>
3287
+ </xsl:choose>
3288
+
3289
+ </xsl:template><xsl:template name="insertNonBreakSpaces">
3290
+ <xsl:param name="count"/>
3291
+ <xsl:if test="$count &gt; 0">
3292
+ <xsl:text> </xsl:text>
3293
+ <xsl:call-template name="insertNonBreakSpaces">
3294
+ <xsl:with-param name="count" select="$count - 1"/>
3295
+ </xsl:call-template>
3296
+ </xsl:if>
3297
+ </xsl:template><xsl:template match="*[local-name() = 'domain']">
3298
+ <fo:inline xsl:use-attribute-sets="domain-style">&lt;<xsl:apply-templates/>&gt;</fo:inline>
3299
+ <xsl:text> </xsl:text>
3300
+ </xsl:template><xsl:template match="*[local-name() = 'admitted']">
3301
+ <fo:block xsl:use-attribute-sets="admitted-style">
3302
+ <xsl:apply-templates/>
3303
+ </fo:block>
3304
+ </xsl:template><xsl:template match="*[local-name() = 'deprecates']">
3305
+ <xsl:variable name="title-deprecated">
3306
+ <xsl:call-template name="getTitle">
3307
+ <xsl:with-param name="name" select="'title-deprecated'"/>
3308
+ </xsl:call-template>
3309
+ </xsl:variable>
3310
+ <fo:block xsl:use-attribute-sets="deprecates-style">
3311
+ <xsl:value-of select="$title-deprecated"/>: <xsl:apply-templates/>
3312
+ </fo:block>
3313
+ </xsl:template><xsl:template match="*[local-name() = 'definition']">
3314
+ <fo:block xsl:use-attribute-sets="definition-style">
3315
+ <xsl:apply-templates/>
3316
+ </fo:block>
3317
+ </xsl:template><xsl:template match="*[local-name() = 'definition'][preceding-sibling::*[local-name() = 'domain']]">
3318
+ <xsl:apply-templates/>
3319
+ </xsl:template><xsl:template match="*[local-name() = 'definition'][preceding-sibling::*[local-name() = 'domain']]/*[local-name() = 'p']">
3320
+ <fo:inline> <xsl:apply-templates/></fo:inline>
3321
+ <fo:block> </fo:block>
3322
+ </xsl:template><xsl:template match="/*/*[local-name() = 'sections']/*" priority="2">
3323
+
3324
+ <fo:block>
3325
+ <xsl:call-template name="setId"/>
3326
+
3327
+
3328
+
3329
+
3330
+
3331
+
3332
+
3333
+
3334
+
3335
+
3336
+ <xsl:apply-templates/>
3337
+ </fo:block>
3338
+
3339
+
3340
+ <xsl:if test="position() != last()">
3341
+ <fo:block break-after="page"/>
3342
+ </xsl:if>
3343
+
3344
+
3345
+ </xsl:template><xsl:template match="/*/*[local-name() = 'preface']/*" priority="2">
3346
+ <fo:block break-after="page"/>
3347
+ <fo:block>
3348
+ <xsl:call-template name="setId"/>
3349
+ <xsl:apply-templates/>
3350
+ </fo:block>
3351
+ </xsl:template><xsl:template match="*[local-name() = 'clause']">
3352
+ <fo:block>
3353
+ <xsl:call-template name="setId"/>
3354
+ <xsl:apply-templates/>
3355
+ </fo:block>
3356
+ </xsl:template><xsl:template match="*[local-name() = 'definitions']">
3357
+ <fo:block id="{@id}">
3358
+ <xsl:apply-templates/>
3359
+ </fo:block>
3360
+ </xsl:template><xsl:template match="/*/*[local-name() = 'bibliography']/*[local-name() = 'references'][@id = '_normative_references' or @id = '_references']">
3361
+
3362
+ <fo:block break-after="page"/>
3363
+
3364
+ <fo:block id="{@id}">
3365
+ <xsl:apply-templates/>
3366
+ </fo:block>
3367
+ </xsl:template><xsl:template match="*[local-name() = 'annex']">
3368
+ <fo:block break-after="page"/>
3369
+ <fo:block id="{@id}">
3370
+
3371
+ </fo:block>
3372
+ <xsl:apply-templates/>
3373
+ </xsl:template><xsl:template match="*[local-name() = 'review']">
3374
+ <!-- comment 2019-11-29 -->
3375
+ <!-- <fo:block font-weight="bold">Review:</fo:block>
3376
+ <xsl:apply-templates /> -->
3377
+ </xsl:template><xsl:template match="*[local-name() = 'name']/text()">
3378
+ <!-- 0xA0 to space replacement -->
3379
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
3380
+ </xsl:template><xsl:template match="*[local-name() = 'errata']">
3381
+ <!-- <row>
3382
+ <date>05-07-2013</date>
3383
+ <type>Editorial</type>
3384
+ <change>Changed CA-9 Priority Code from P1 to P2 in <xref target="tabled2"/>.</change>
3385
+ <pages>D-3</pages>
3386
+ </row>
3387
+ -->
3388
+ <fo:table table-layout="fixed" width="100%" font-size="10pt" border="1pt solid black">
3389
+ <fo:table-column column-width="20mm"/>
3390
+ <fo:table-column column-width="23mm"/>
3391
+ <fo:table-column column-width="107mm"/>
3392
+ <fo:table-column column-width="15mm"/>
3393
+ <fo:table-body>
3394
+ <fo:table-row font-family="Arial" text-align="center" font-weight="bold" background-color="black" color="white">
3395
+ <fo:table-cell border="1pt solid black"><fo:block>Date</fo:block></fo:table-cell>
3396
+ <fo:table-cell border="1pt solid black"><fo:block>Type</fo:block></fo:table-cell>
3397
+ <fo:table-cell border="1pt solid black"><fo:block>Change</fo:block></fo:table-cell>
3398
+ <fo:table-cell border="1pt solid black"><fo:block>Pages</fo:block></fo:table-cell>
3399
+ </fo:table-row>
3400
+ <xsl:apply-templates/>
3401
+ </fo:table-body>
3402
+ </fo:table>
3403
+ </xsl:template><xsl:template match="*[local-name() = 'errata']/*[local-name() = 'row']">
3404
+ <fo:table-row>
3405
+ <xsl:apply-templates/>
3406
+ </fo:table-row>
3407
+ </xsl:template><xsl:template match="*[local-name() = 'errata']/*[local-name() = 'row']/*">
3408
+ <fo:table-cell border="1pt solid black" padding-left="1mm" padding-top="0.5mm">
3409
+ <fo:block><xsl:apply-templates/></fo:block>
3410
+ </fo:table-cell>
3411
+ </xsl:template><xsl:template name="convertDate">
3412
+ <xsl:param name="date"/>
3413
+ <xsl:param name="format" select="'short'"/>
3414
+ <xsl:variable name="year" select="substring($date, 1, 4)"/>
3415
+ <xsl:variable name="month" select="substring($date, 6, 2)"/>
3416
+ <xsl:variable name="day" select="substring($date, 9, 2)"/>
3417
+ <xsl:variable name="monthStr">
3418
+ <xsl:choose>
3419
+ <xsl:when test="$month = '01'">January</xsl:when>
3420
+ <xsl:when test="$month = '02'">February</xsl:when>
3421
+ <xsl:when test="$month = '03'">March</xsl:when>
3422
+ <xsl:when test="$month = '04'">April</xsl:when>
3423
+ <xsl:when test="$month = '05'">May</xsl:when>
3424
+ <xsl:when test="$month = '06'">June</xsl:when>
3425
+ <xsl:when test="$month = '07'">July</xsl:when>
3426
+ <xsl:when test="$month = '08'">August</xsl:when>
3427
+ <xsl:when test="$month = '09'">September</xsl:when>
3428
+ <xsl:when test="$month = '10'">October</xsl:when>
3429
+ <xsl:when test="$month = '11'">November</xsl:when>
3430
+ <xsl:when test="$month = '12'">December</xsl:when>
3431
+ </xsl:choose>
3432
+ </xsl:variable>
3433
+ <xsl:variable name="result">
3434
+ <xsl:choose>
3435
+ <xsl:when test="$format = 'short' or $day = ''">
3436
+ <xsl:value-of select="normalize-space(concat($monthStr, ' ', $year))"/>
3437
+ </xsl:when>
3438
+ <xsl:otherwise>
3439
+ <xsl:value-of select="normalize-space(concat($monthStr, ' ', $day, ', ' , $year))"/>
3440
+ </xsl:otherwise>
3441
+ </xsl:choose>
3442
+ </xsl:variable>
3443
+ <xsl:value-of select="$result"/>
3444
+ </xsl:template><xsl:template name="insertKeywords">
3445
+ <xsl:param name="sorting" select="'true'"/>
3446
+ <xsl:param name="charAtEnd" select="'.'"/>
3447
+ <xsl:param name="charDelim" select="', '"/>
3448
+ <xsl:choose>
3449
+ <xsl:when test="$sorting = 'true' or $sorting = 'yes'">
3450
+ <xsl:for-each select="/*/*[local-name() = 'bibdata']//*[local-name() = 'keyword']">
3451
+ <xsl:sort data-type="text" order="ascending"/>
3452
+ <xsl:call-template name="insertKeyword">
3453
+ <xsl:with-param name="charAtEnd" select="$charAtEnd"/>
3454
+ <xsl:with-param name="charDelim" select="$charDelim"/>
3455
+ </xsl:call-template>
3456
+ </xsl:for-each>
3457
+ </xsl:when>
3458
+ <xsl:otherwise>
3459
+ <xsl:for-each select="/*/*[local-name() = 'bibdata']//*[local-name() = 'keyword']">
3460
+ <xsl:call-template name="insertKeyword">
3461
+ <xsl:with-param name="charAtEnd" select="$charAtEnd"/>
3462
+ <xsl:with-param name="charDelim" select="$charDelim"/>
3463
+ </xsl:call-template>
3464
+ </xsl:for-each>
3465
+ </xsl:otherwise>
3466
+ </xsl:choose>
3467
+ </xsl:template><xsl:template name="insertKeyword">
3468
+ <xsl:param name="charAtEnd"/>
3469
+ <xsl:param name="charDelim"/>
3470
+ <xsl:apply-templates/>
3471
+ <xsl:choose>
3472
+ <xsl:when test="position() != last()"><xsl:value-of select="$charDelim"/></xsl:when>
3473
+ <xsl:otherwise><xsl:value-of select="$charAtEnd"/></xsl:otherwise>
3474
+ </xsl:choose>
3475
+ </xsl:template><xsl:template name="addPDFUAmeta">
3476
+ <fo:declarations>
3477
+ <pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
3478
+ <pdf:dictionary type="normal" key="ViewerPreferences">
3479
+ <pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
3480
+ </pdf:dictionary>
3481
+ </pdf:catalog>
3482
+ <x:xmpmeta xmlns:x="adobe:ns:meta/">
3483
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
3484
+ <rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pdf="http://ns.adobe.com/pdf/1.3/" rdf:about="">
3485
+ <!-- Dublin Core properties go here -->
3486
+ <dc:title>
3487
+ <xsl:variable name="title">
3488
+
3489
+ <xsl:value-of select="/*/*[local-name() = 'bibdata']/*[local-name() = 'title'][@language = 'en' and @type = 'main']"/>
3490
+
3491
+
3492
+
3493
+
3494
+ </xsl:variable>
3495
+ <xsl:choose>
3496
+ <xsl:when test="normalize-space($title) != ''">
3497
+ <xsl:value-of select="$title"/>
3498
+ </xsl:when>
3499
+ <xsl:otherwise>
3500
+ <xsl:text> </xsl:text>
3501
+ </xsl:otherwise>
3502
+ </xsl:choose>
3503
+ </dc:title>
3504
+ <dc:creator>
3505
+
3506
+
3507
+ <xsl:for-each select="/*/*[local-name() = 'bibdata']/*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']">
3508
+ <xsl:value-of select="*[local-name() = 'person']/*[local-name() = 'name']/*[local-name() = 'completename']"/>
3509
+ <xsl:if test="position() != last()">; </xsl:if>
3510
+ </xsl:for-each>
3511
+
3512
+ </dc:creator>
3513
+ <dc:description>
3514
+ <xsl:variable name="abstract">
3515
+
3516
+
3517
+
3518
+ <xsl:copy-of select="/*/*[local-name() = 'preface']/*[local-name() = 'abstract']//text()"/>
3519
+
3520
+
3521
+ </xsl:variable>
3522
+ <xsl:value-of select="normalize-space($abstract)"/>
3523
+ </dc:description>
3524
+ <pdf:Keywords>
3525
+ <xsl:call-template name="insertKeywords"/>
3526
+ </pdf:Keywords>
3527
+ </rdf:Description>
3528
+ <rdf:Description xmlns:xmp="http://ns.adobe.com/xap/1.0/" rdf:about="">
3529
+ <!-- XMP properties go here -->
3530
+ <xmp:CreatorTool/>
3531
+ </rdf:Description>
3532
+ </rdf:RDF>
3533
+ </x:xmpmeta>
3534
+ </fo:declarations>
3535
+ </xsl:template><xsl:template name="getId">
3536
+ <xsl:choose>
3537
+ <xsl:when test="../@id">
3538
+ <xsl:value-of select="../@id"/>
3539
+ </xsl:when>
3540
+ <xsl:otherwise>
3541
+ <!-- <xsl:value-of select="concat(local-name(..), '_', text())"/> -->
3542
+ <xsl:value-of select="concat(generate-id(..), '_', text())"/>
3543
+ </xsl:otherwise>
3544
+ </xsl:choose>
3545
+ </xsl:template><xsl:template name="getLevel">
3546
+ <xsl:param name="depth"/>
3547
+ <xsl:choose>
3548
+ <xsl:when test="normalize-space(@depth) != ''">
3549
+ <xsl:value-of select="@depth"/>
3550
+ </xsl:when>
3551
+ <xsl:when test="normalize-space($depth) != ''">
3552
+ <xsl:value-of select="$depth"/>
3553
+ </xsl:when>
3554
+ <xsl:otherwise>
3555
+ <xsl:variable name="level_total" select="count(ancestor::*)"/>
3556
+ <xsl:variable name="level">
3557
+ <xsl:choose>
3558
+ <xsl:when test="parent::*[local-name() = 'preface']">
3559
+ <xsl:value-of select="$level_total - 1"/>
3560
+ </xsl:when>
3561
+ <xsl:when test="ancestor::*[local-name() = 'preface']">
3562
+ <xsl:value-of select="$level_total - 2"/>
3563
+ </xsl:when>
3564
+ <!-- <xsl:when test="parent::*[local-name() = 'sections']">
3565
+ <xsl:value-of select="$level_total - 1"/>
3566
+ </xsl:when> -->
3567
+ <xsl:when test="ancestor::*[local-name() = 'sections']">
3568
+ <xsl:value-of select="$level_total - 1"/>
3569
+ </xsl:when>
3570
+ <xsl:when test="ancestor::*[local-name() = 'bibliography']">
3571
+ <xsl:value-of select="$level_total - 1"/>
3572
+ </xsl:when>
3573
+ <xsl:when test="parent::*[local-name() = 'annex']">
3574
+ <xsl:value-of select="$level_total - 1"/>
3575
+ </xsl:when>
3576
+ <xsl:when test="ancestor::*[local-name() = 'annex']">
3577
+ <xsl:value-of select="$level_total"/>
3578
+ </xsl:when>
3579
+ <xsl:when test="local-name() = 'annex'">1</xsl:when>
3580
+ <xsl:when test="local-name(ancestor::*[1]) = 'annex'">1</xsl:when>
3581
+ <xsl:otherwise>
3582
+ <xsl:value-of select="$level_total - 1"/>
3583
+ </xsl:otherwise>
3584
+ </xsl:choose>
3585
+ </xsl:variable>
3586
+ <xsl:value-of select="$level"/>
3587
+ </xsl:otherwise>
3588
+ </xsl:choose>
3589
+ </xsl:template><xsl:template name="split">
3590
+ <xsl:param name="pText" select="."/>
3591
+ <xsl:param name="sep" select="','"/>
3592
+ <xsl:if test="string-length($pText) &gt;0">
3593
+ <item>
3594
+ <xsl:value-of select="normalize-space(substring-before(concat($pText, ','), $sep))"/>
3595
+ </item>
3596
+ <xsl:call-template name="split">
3597
+ <xsl:with-param name="pText" select="substring-after($pText, $sep)"/>
3598
+ <xsl:with-param name="sep" select="$sep"/>
3599
+ </xsl:call-template>
3600
+ </xsl:if>
3601
+ </xsl:template><xsl:template name="getDocumentId">
3602
+ <xsl:call-template name="getLang"/><xsl:value-of select="//*[local-name() = 'p'][1]/@id"/>
3603
+ </xsl:template><xsl:template name="namespaceCheck">
3604
+ <xsl:variable name="documentNS" select="namespace-uri(/*)"/>
3605
+ <xsl:variable name="XSLNS">
3606
+
3607
+
3608
+
3609
+
3610
+
3611
+ <xsl:value-of select="document('')//*/namespace::nist"/>
3612
+
3613
+
3614
+
3615
+
3616
+
3617
+
3618
+
3619
+
3620
+ </xsl:variable>
3621
+ <xsl:if test="$documentNS != $XSLNS">
3622
+ <xsl:message>[WARNING]: Document namespace: '<xsl:value-of select="$documentNS"/>' doesn't equal to xslt namespace '<xsl:value-of select="$XSLNS"/>'</xsl:message>
3623
+ </xsl:if>
3624
+ </xsl:template><xsl:template name="getLanguage">
3625
+ <xsl:param name="lang"/>
3626
+ <xsl:variable name="language" select="java:toLowerCase(java:java.lang.String.new($lang))"/>
3627
+ <xsl:choose>
3628
+ <xsl:when test="$language = 'en'">English</xsl:when>
3629
+ <xsl:when test="$language = 'fr'">French</xsl:when>
3630
+ <xsl:when test="$language = 'de'">Deutsch</xsl:when>
3631
+ <xsl:when test="$language = 'cn'">Chinese</xsl:when>
3632
+ <xsl:otherwise><xsl:value-of select="$language"/></xsl:otherwise>
3633
+ </xsl:choose>
3634
+ </xsl:template><xsl:template name="setId">
3635
+ <xsl:attribute name="id">
3636
+ <xsl:choose>
3637
+ <xsl:when test="@id">
3638
+ <xsl:value-of select="@id"/>
3639
+ </xsl:when>
3640
+ <xsl:otherwise>
3641
+ <xsl:value-of select="generate-id()"/>
3642
+ </xsl:otherwise>
3643
+ </xsl:choose>
3644
+ </xsl:attribute>
3645
+ </xsl:template></xsl:stylesheet>