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