metanorma-standoc 1.0.8 → 1.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/.rubocop.yml +2 -7
 - data/Gemfile.lock +15 -15
 - data/README.adoc +315 -2
 - data/lib/asciidoctor/standoc/biblio.rng +10 -0
 - data/lib/asciidoctor/standoc/cleanup.rb +3 -15
 - data/lib/asciidoctor/standoc/cleanup_ref.rb +0 -10
 - data/lib/asciidoctor/standoc/front.rb +29 -4
 - data/lib/asciidoctor/standoc/isodoc.rng +3 -0
 - data/lib/metanorma/standoc/version.rb +1 -1
 - data/metanorma-standoc.gemspec +1 -1
 - data/spec/asciidoctor-standoc/base_spec.rb +55 -9
 - data/spec/asciidoctor-standoc/refs_spec.rb +0 -3
 - data/spec/spec_helper.rb +0 -3
 - metadata +4 -4
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 8fdc800133b8aec3e4931bada3fe492a537f19c2807767b5124c8f4e39b3649b
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: ead7bf5902bd28d515fbade4cf7093e1aa88ef5a22faf179f32dae4f42c6da17
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 2c51bf19c625ff3822b45ced863b8d27b231789b2d500abe68bc063b1f92be5f4f9b052bba8fc1d656386c336327ee7f08958cffefb36d12c60079a3dde725b1
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: d22b6b4f30f2cbff1b415190d12ed8c1c2d5a41d25ed5c6da7ed1d2738f5cdaa2dec58d0bb2c210ce2f2682792b4606eb48e6a47bd2f56835fee7c3b3ff2cf3c
         
     | 
    
        data/.rubocop.yml
    CHANGED
    
    | 
         @@ -3,13 +3,8 @@ 
     | 
|
| 
       3 
3 
     | 
    
         
             
            # All project-specific additions and overrides should be specified in this file.
         
     | 
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            inherit_from:
         
     | 
| 
       6 
     | 
    
         
            -
               
     | 
| 
       7 
     | 
    
         
            -
              - ".rubocop.tb.yml"
         
     | 
| 
       8 
     | 
    
         
            -
              # Overrides from Ribose
         
     | 
| 
       9 
     | 
    
         
            -
              - ".rubocop.ribose.yml"
         
     | 
| 
      
 6 
     | 
    
         
            +
              - https://raw.githubusercontent.com/riboseinc/oss-guides/master/ci/rubocop.yml
         
     | 
| 
       10 
7 
     | 
    
         
             
            AllCops:
         
     | 
| 
       11 
     | 
    
         
            -
               
     | 
| 
       12 
     | 
    
         
            -
              StyleGuideCopsOnly: false
         
     | 
| 
       13 
     | 
    
         
            -
              TargetRubyVersion: 2.5
         
     | 
| 
      
 8 
     | 
    
         
            +
              TargetRubyVersion: 2.3
         
     | 
| 
       14 
9 
     | 
    
         
             
            Rails:
         
     | 
| 
       15 
10 
     | 
    
         
             
              Enabled: true
         
     | 
    
        data/Gemfile.lock
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            PATH
         
     | 
| 
       2 
2 
     | 
    
         
             
              remote: .
         
     | 
| 
       3 
3 
     | 
    
         
             
              specs:
         
     | 
| 
       4 
     | 
    
         
            -
                metanorma-standoc (1.0. 
     | 
| 
      
 4 
     | 
    
         
            +
                metanorma-standoc (1.0.9)
         
     | 
| 
       5 
5 
     | 
    
         
             
                  asciidoctor (~> 1.5.7)
         
     | 
| 
       6 
6 
     | 
    
         
             
                  iev (~> 0.2.0)
         
     | 
| 
       7 
7 
     | 
    
         
             
                  isodoc (~> 0.9.0)
         
     | 
| 
         @@ -17,7 +17,7 @@ GEM 
     | 
|
| 
       17 
17 
     | 
    
         
             
                algoliasearch (1.23.2)
         
     | 
| 
       18 
18 
     | 
    
         
             
                  httpclient (~> 2.8, >= 2.8.3)
         
     | 
| 
       19 
19 
     | 
    
         
             
                  json (>= 1.5.1)
         
     | 
| 
       20 
     | 
    
         
            -
                asciidoctor (1.5. 
     | 
| 
      
 20 
     | 
    
         
            +
                asciidoctor (1.5.8)
         
     | 
| 
       21 
21 
     | 
    
         
             
                asciimath (1.0.6)
         
     | 
| 
       22 
22 
     | 
    
         
             
                ast (2.4.0)
         
     | 
| 
       23 
23 
     | 
    
         
             
                byebug (10.0.2)
         
     | 
| 
         @@ -31,7 +31,7 @@ GEM 
     | 
|
| 
       31 
31 
     | 
    
         
             
                  nokogiri (>= 1.4.3)
         
     | 
| 
       32 
32 
     | 
    
         
             
                ffi (1.9.25)
         
     | 
| 
       33 
33 
     | 
    
         
             
                formatador (0.2.5)
         
     | 
| 
       34 
     | 
    
         
            -
                gb-agencies (0.0. 
     | 
| 
      
 34 
     | 
    
         
            +
                gb-agencies (0.0.5)
         
     | 
| 
       35 
35 
     | 
    
         
             
                gbbib (0.4.1)
         
     | 
| 
       36 
36 
     | 
    
         
             
                  cnccs (~> 0.1.1)
         
     | 
| 
       37 
37 
     | 
    
         
             
                  gb-agencies (~> 0.0.1)
         
     | 
| 
         @@ -51,7 +51,7 @@ GEM 
     | 
|
| 
       51 
51 
     | 
    
         
             
                  guard-compat (~> 1.1)
         
     | 
| 
       52 
52 
     | 
    
         
             
                  rspec (>= 2.99.0, < 4.0)
         
     | 
| 
       53 
53 
     | 
    
         
             
                hashdiff (0.3.7)
         
     | 
| 
       54 
     | 
    
         
            -
                html2doc (0.8. 
     | 
| 
      
 54 
     | 
    
         
            +
                html2doc (0.8.6)
         
     | 
| 
       55 
55 
     | 
    
         
             
                  asciimath
         
     | 
| 
       56 
56 
     | 
    
         
             
                  htmlentities (~> 4.3.4)
         
     | 
| 
       57 
57 
     | 
    
         
             
                  image_size
         
     | 
| 
         @@ -78,12 +78,12 @@ GEM 
     | 
|
| 
       78 
78 
     | 
    
         
             
                  algoliasearch
         
     | 
| 
       79 
79 
     | 
    
         
             
                  iecbib (~> 0.2.1)
         
     | 
| 
       80 
80 
     | 
    
         
             
                  iso-bib-item (~> 0.4.2)
         
     | 
| 
       81 
     | 
    
         
            -
                isodoc (0.9. 
     | 
| 
      
 81 
     | 
    
         
            +
                isodoc (0.9.8)
         
     | 
| 
       82 
82 
     | 
    
         
             
                  asciimath
         
     | 
| 
       83 
     | 
    
         
            -
                  html2doc (~> 0.8. 
     | 
| 
      
 83 
     | 
    
         
            +
                  html2doc (~> 0.8.6)
         
     | 
| 
       84 
84 
     | 
    
         
             
                  htmlentities (~> 4.3.4)
         
     | 
| 
       85 
85 
     | 
    
         
             
                  liquid
         
     | 
| 
       86 
     | 
    
         
            -
                  metanorma (~> 0. 
     | 
| 
      
 86 
     | 
    
         
            +
                  metanorma (~> 0.3.0)
         
     | 
| 
       87 
87 
     | 
    
         
             
                  nokogiri
         
     | 
| 
       88 
88 
     | 
    
         
             
                  rake (~> 12.0)
         
     | 
| 
       89 
89 
     | 
    
         
             
                  roman-numerals
         
     | 
| 
         @@ -100,8 +100,8 @@ GEM 
     | 
|
| 
       100 
100 
     | 
    
         
             
                  rb-inotify (~> 0.9, >= 0.9.7)
         
     | 
| 
       101 
101 
     | 
    
         
             
                  ruby_dep (~> 1.2)
         
     | 
| 
       102 
102 
     | 
    
         
             
                lumberjack (1.0.13)
         
     | 
| 
       103 
     | 
    
         
            -
                metanorma (0. 
     | 
| 
       104 
     | 
    
         
            -
                method_source (0.9. 
     | 
| 
      
 103 
     | 
    
         
            +
                metanorma (0.3.0)
         
     | 
| 
      
 104 
     | 
    
         
            +
                method_source (0.9.2)
         
     | 
| 
       105 
105 
     | 
    
         
             
                mime-types (3.2.2)
         
     | 
| 
       106 
106 
     | 
    
         
             
                  mime-types-data (~> 3.2015)
         
     | 
| 
       107 
107 
     | 
    
         
             
                mime-types-data (3.2018.0812)
         
     | 
| 
         @@ -114,10 +114,10 @@ GEM 
     | 
|
| 
       114 
114 
     | 
    
         
             
                  shellany (~> 0.0)
         
     | 
| 
       115 
115 
     | 
    
         
             
                optout (0.0.2)
         
     | 
| 
       116 
116 
     | 
    
         
             
                parallel (1.12.1)
         
     | 
| 
       117 
     | 
    
         
            -
                parser (2.5. 
     | 
| 
      
 117 
     | 
    
         
            +
                parser (2.5.3.0)
         
     | 
| 
       118 
118 
     | 
    
         
             
                  ast (~> 2.4.0)
         
     | 
| 
       119 
119 
     | 
    
         
             
                powerpack (0.1.2)
         
     | 
| 
       120 
     | 
    
         
            -
                pry (0. 
     | 
| 
      
 120 
     | 
    
         
            +
                pry (0.12.1)
         
     | 
| 
       121 
121 
     | 
    
         
             
                  coderay (~> 1.1.0)
         
     | 
| 
       122 
122 
     | 
    
         
             
                  method_source (~> 0.9.0)
         
     | 
| 
       123 
123 
     | 
    
         
             
                public_suffix (3.0.3)
         
     | 
| 
         @@ -162,7 +162,7 @@ GEM 
     | 
|
| 
       162 
162 
     | 
    
         
             
                ruby_deep_clone (0.8.0)
         
     | 
| 
       163 
163 
     | 
    
         
             
                ruby_dep (1.5.0)
         
     | 
| 
       164 
164 
     | 
    
         
             
                safe_yaml (1.0.4)
         
     | 
| 
       165 
     | 
    
         
            -
                sass (3. 
     | 
| 
      
 165 
     | 
    
         
            +
                sass (3.7.2)
         
     | 
| 
       166 
166 
     | 
    
         
             
                  sass-listen (~> 4.0.0)
         
     | 
| 
       167 
167 
     | 
    
         
             
                sass-listen (4.0.0)
         
     | 
| 
       168 
168 
     | 
    
         
             
                  rb-fsevent (~> 0.9, >= 0.9.4)
         
     | 
| 
         @@ -178,7 +178,7 @@ GEM 
     | 
|
| 
       178 
178 
     | 
    
         
             
                simplecov-html (0.10.2)
         
     | 
| 
       179 
179 
     | 
    
         
             
                sterile (1.0.13)
         
     | 
| 
       180 
180 
     | 
    
         
             
                  nokogiri
         
     | 
| 
       181 
     | 
    
         
            -
                thor (0.20. 
     | 
| 
      
 181 
     | 
    
         
            +
                thor (0.20.3)
         
     | 
| 
       182 
182 
     | 
    
         
             
                thread_safe (0.3.6)
         
     | 
| 
       183 
183 
     | 
    
         
             
                timecop (0.9.1)
         
     | 
| 
       184 
184 
     | 
    
         
             
                unicode-display_width (1.4.0)
         
     | 
| 
         @@ -198,7 +198,7 @@ DEPENDENCIES 
     | 
|
| 
       198 
198 
     | 
    
         
             
              equivalent-xml (~> 0.6)
         
     | 
| 
       199 
199 
     | 
    
         
             
              guard (~> 2.14)
         
     | 
| 
       200 
200 
     | 
    
         
             
              guard-rspec (~> 4.7)
         
     | 
| 
       201 
     | 
    
         
            -
              metanorma (~> 0. 
     | 
| 
      
 201 
     | 
    
         
            +
              metanorma (~> 0.3.0)
         
     | 
| 
       202 
202 
     | 
    
         
             
              metanorma-standoc!
         
     | 
| 
       203 
203 
     | 
    
         
             
              rake (~> 12.0)
         
     | 
| 
       204 
204 
     | 
    
         
             
              rspec (~> 3.6)
         
     | 
| 
         @@ -209,4 +209,4 @@ DEPENDENCIES 
     | 
|
| 
       209 
209 
     | 
    
         
             
              webmock
         
     | 
| 
       210 
210 
     | 
    
         | 
| 
       211 
211 
     | 
    
         
             
            BUNDLED WITH
         
     | 
| 
       212 
     | 
    
         
            -
               1. 
     | 
| 
      
 212 
     | 
    
         
            +
               1.17.1
         
     | 
    
        data/README.adoc
    CHANGED
    
    | 
         @@ -8,6 +8,116 @@ WARNING: This gem is still under development. 
     | 
|
| 
       8 
8 
     | 
    
         | 
| 
       9 
9 
     | 
    
         
             
            Gem for serialising the https://github.com/riboseinc/metanorma-model-standoc[Metanorma Standoc] model. 
         
     | 
| 
       10 
10 
     | 
    
         | 
| 
      
 11 
     | 
    
         
            +
            == Functionality
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
            This gem processes Metanorma documents following a template for generating standards documents, according
         
     | 
| 
      
 14 
     | 
    
         
            +
            to a range of standards classes. This gem provides underlying generic functionality; behaviour specific
         
     | 
| 
      
 15 
     | 
    
         
            +
            to each standards class is refined in the gem specific to that standards class (e.g. https://github.com/riboseinc/metanorma-iso).
         
     | 
| 
      
 16 
     | 
    
         
            +
            The following outputs are generated.
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
            * Metanorma XML representation of the document, intended as a document model for 
         
     | 
| 
      
 19 
     | 
    
         
            +
            Standards. The Metanorma XML representation is processed in turn, to generate one or more of 
         
     | 
| 
      
 20 
     | 
    
         
            +
            the following outputs as end deliverables, depending on each standards class gem:
         
     | 
| 
      
 21 
     | 
    
         
            +
            * Microsoft Word output (`.doc`)
         
     | 
| 
      
 22 
     | 
    
         
            +
            * HTML output (`.html`)
         
     | 
| 
      
 23 
     | 
    
         
            +
            * PDF (`.pdf`)
         
     | 
| 
      
 24 
     | 
    
         
            +
             
     | 
| 
      
 25 
     | 
    
         
            +
            The following input formats are supported:
         
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
      
 27 
     | 
    
         
            +
            * http://asciidoctor.org/[Asciidoctor]
         
     | 
| 
      
 28 
     | 
    
         
            +
             
     | 
| 
      
 29 
     | 
    
         
            +
            This README provides an overview of the functionality of the gem; see also
         
     | 
| 
      
 30 
     | 
    
         
            +
            https://github.com/riboseinc/metanorma-iso/blob/master/docs/guidance.adoc[Guidance for authoring].
         
     | 
| 
      
 31 
     | 
    
         
            +
            https://github.com/riboseinc/metanorma-iso/blob/master/docs/quickstart.adoc[Quickstart guide]
         
     | 
| 
      
 32 
     | 
    
         
            +
            gives a summary overview.
         
     | 
| 
      
 33 
     | 
    
         
            +
             
     | 
| 
      
 34 
     | 
    
         
            +
            NOTE: http://asciimath.org[AsciiMathML] is used for mathematical formatting.
         
     | 
| 
      
 35 
     | 
    
         
            +
            The gem uses the https://github.com/asciidoctor/asciimath[Ruby AsciiMath parser],
         
     | 
| 
      
 36 
     | 
    
         
            +
            which is syntactically stricter than the common MathJax processor;
         
     | 
| 
      
 37 
     | 
    
         
            +
            if you do not get expected results, try bracketting terms your in AsciiMathML
         
     | 
| 
      
 38 
     | 
    
         
            +
            expressions.
         
     | 
| 
      
 39 
     | 
    
         
            +
             
     | 
| 
      
 40 
     | 
    
         
            +
            === Installation
         
     | 
| 
      
 41 
     | 
    
         
            +
             
     | 
| 
      
 42 
     | 
    
         
            +
            If you are using a Mac, the https://github.com/riboseinc/metanorma-macos-setup
         
     | 
| 
      
 43 
     | 
    
         
            +
            repository has instructions on setting up your machine to run Metanorma
         
     | 
| 
      
 44 
     | 
    
         
            +
            scripts such as this one. You need only run the following in a Terminal console:
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
      
 46 
     | 
    
         
            +
            [source,console]
         
     | 
| 
      
 47 
     | 
    
         
            +
            ----
         
     | 
| 
      
 48 
     | 
    
         
            +
            $ bash <(curl -s https://raw.githubusercontent.com/riboseinc/metanorma-macos-setup/master/metanorma-setup)
         
     | 
| 
      
 49 
     | 
    
         
            +
            $ gem install metanorma-standoc
         
     | 
| 
      
 50 
     | 
    
         
            +
            $ gem install metanorma-cli 
         
     | 
| 
      
 51 
     | 
    
         
            +
            ----
         
     | 
| 
      
 52 
     | 
    
         
            +
             
     | 
| 
      
 53 
     | 
    
         
            +
            The metanorma-cli gem is the command-line interface for the Metanorma tool suite
         
     | 
| 
      
 54 
     | 
    
         
            +
            (incorporating the `metanorma` executable seen above).
         
     | 
| 
      
 55 
     | 
    
         
            +
             
     | 
| 
      
 56 
     | 
    
         
            +
            == Approach
         
     | 
| 
      
 57 
     | 
    
         
            +
            === Document model
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
            The https://github.com/riboseinc/metanorma-model-iso[Metanorma document model] used in document generation
         
     | 
| 
      
 60 
     | 
    
         
            +
            intends to introduce rigour into the standards authoring process; existing 
         
     | 
| 
      
 61 
     | 
    
         
            +
            document templates do not support such rigour down to the element level. It also introduces
         
     | 
| 
      
 62 
     | 
    
         
            +
            flexibility by decoupling the document structure from its presentation.
         
     | 
| 
      
 63 
     | 
    
         
            +
             
     | 
| 
      
 64 
     | 
    
         
            +
            Formal definitions of standards prescribe the contents of standards to a level
         
     | 
| 
      
 65 
     | 
    
         
            +
            amenable to an explicit document model. The ISO International Standard format,
         
     | 
| 
      
 66 
     | 
    
         
            +
            ss prescribed in
         
     | 
| 
      
 67 
     | 
    
         
            +
            http://www.iec.ch/members_experts/refdocs/iec/isoiecdir-2%7Bed7.0%7Den.pdf[ISO/IEC DIR 2 "Principles and rules for the structure and drafting of ISO and IEC documents"],
         
     | 
| 
      
 68 
     | 
    
         
            +
            is one of the more detailed such prescriptions available. A formal document
         
     | 
| 
      
 69 
     | 
    
         
            +
            model would allow checking for consistency in format and content, and expedite
         
     | 
| 
      
 70 
     | 
    
         
            +
            authoring and quality control of ISO standards. Authoring standards through a
         
     | 
| 
      
 71 
     | 
    
         
            +
            more abstract formal model also permit enhanced functionality such as  
         
     | 
| 
      
 72 
     | 
    
         
            +
            cross-reference link checking and auto-numbering of sections, figures, tables and formulas.
         
     | 
| 
      
 73 
     | 
    
         
            +
            Outputting a document in different languages also becomes straightforward.
         
     | 
| 
      
 74 
     | 
    
         
            +
             
     | 
| 
      
 75 
     | 
    
         
            +
            === Asciidoctor
         
     | 
| 
      
 76 
     | 
    
         
            +
             
     | 
| 
      
 77 
     | 
    
         
            +
            Asciidoctor has been selected as the authoring tool to generate the document
         
     | 
| 
      
 78 
     | 
    
         
            +
            model representation of standards. It is a document formatting tool like
         
     | 
| 
      
 79 
     | 
    
         
            +
            Markdown and DocBook, which combines the relative ease of use of the former
         
     | 
| 
      
 80 
     | 
    
         
            +
            (using relatively lightweight markup), and the rigour and expressively of the
         
     | 
| 
      
 81 
     | 
    
         
            +
            latter (it has a well-defined syntax, and was in fact initially developed as a
         
     | 
| 
      
 82 
     | 
    
         
            +
            DocBook document authoring tool). Asciidoctor has built-in capability to output
         
     | 
| 
      
 83 
     | 
    
         
            +
            Text and HTML; so it can be used to preview the file as it is being
         
     | 
| 
      
 84 
     | 
    
         
            +
            authored. However the gem natively outputs HTML and Word output, so there should
         
     | 
| 
      
 85 
     | 
    
         
            +
            not be much need for this.
         
     | 
| 
      
 86 
     | 
    
         
            +
             
     | 
| 
      
 87 
     | 
    
         
            +
            Asciidoctor has some formatting constraints because of its own document model,
         
     | 
| 
      
 88 
     | 
    
         
            +
            that users need to be aware. For example, Asciidoc has a strict division between
         
     | 
| 
      
 89 
     | 
    
         
            +
            inline and block elements, which disallows certain kinds of nesting; so a list
         
     | 
| 
      
 90 
     | 
    
         
            +
            cannot be embedded within a paragraph, it can only constitute its own paragraph
         
     | 
| 
      
 91 
     | 
    
         
            +
            (though lists themselves can be nested within each other). Asciidoctor also disallows
         
     | 
| 
      
 92 
     | 
    
         
            +
            multiple paragraphs in footnotes, 
         
     | 
| 
      
 93 
     | 
    
         
            +
            http://discuss.asciidoctor.org/footnotes-with-paragraph-breaks-td4130.html[by design].
         
     | 
| 
      
 94 
     | 
    
         
            +
            (The document model does not impose this constraint, so you could edit the generated
         
     | 
| 
      
 95 
     | 
    
         
            +
            XML to break up paragraphs within a footnote.)
         
     | 
| 
      
 96 
     | 
    
         
            +
             
     | 
| 
      
 97 
     | 
    
         
            +
            == Different behaviour from native Asciidoctor
         
     | 
| 
      
 98 
     | 
    
         
            +
             
     | 
| 
      
 99 
     | 
    
         
            +
            === Autonumbering
         
     | 
| 
      
 100 
     | 
    
         
            +
             
     | 
| 
      
 101 
     | 
    
         
            +
            Autonumbering in Metanorma extends to formulas (which are encoded as "stem" blocks) and notes.
         
     | 
| 
      
 102 
     | 
    
         
            +
            Autonumbering is applied in the conversion from Metanorma XML to output formats (`isodoc`);
         
     | 
| 
      
 103 
     | 
    
         
            +
            by default it restarts for each annex, but is continuous for the main body of text.
         
     | 
| 
      
 104 
     | 
    
         
            +
             
     | 
| 
      
 105 
     | 
    
         
            +
            === Unsupported blocks
         
     | 
| 
      
 106 
     | 
    
         
            +
             
     | 
| 
      
 107 
     | 
    
         
            +
            Sidebars (`aside`) are not supported, and have been repurposed for reviewer comments.
         
     | 
| 
      
 108 
     | 
    
         
            +
            Page breaks (`thematic break`) are not supported; ASCII art/preformatted text (`literal`)
         
     | 
| 
      
 109 
     | 
    
         
            +
            are not supported in most standards classes.
         
     | 
| 
      
 110 
     | 
    
         
            +
             
     | 
| 
      
 111 
     | 
    
         
            +
            === Footnotes
         
     | 
| 
      
 112 
     | 
    
         
            +
             
     | 
| 
      
 113 
     | 
    
         
            +
            Table and figure footnotes are treated diffferently from all other footnotes: they are
         
     | 
| 
      
 114 
     | 
    
         
            +
            rendered at the bottom of the table or figure, and they are numbered separately.
         
     | 
| 
      
 115 
     | 
    
         
            +
             
     | 
| 
      
 116 
     | 
    
         
            +
            === References
         
     | 
| 
      
 117 
     | 
    
         
            +
             
     | 
| 
      
 118 
     | 
    
         
            +
            References to well-defined standards codes use the document identifiers for citations
         
     | 
| 
      
 119 
     | 
    
         
            +
            (e.g. `ISO 20483:2013`); generic references in bibliographies use bracketed numbers `[1]`.
         
     | 
| 
      
 120 
     | 
    
         
            +
             
     | 
| 
       11 
121 
     | 
    
         
             
            [[model_additions]]
         
     | 
| 
       12 
122 
     | 
    
         
             
            == Asciidoctor model additions
         
     | 
| 
       13 
123 
     | 
    
         | 
| 
         @@ -61,8 +171,8 @@ _paddy_ (<<paddy>>) from which the husk only has been removed 
     | 
|
| 
       61 
171 
     | 
    
         
             
            If the Terms and Definitions of a standard are partly or fully sourced from
         
     | 
| 
       62 
172 
     | 
    
         
             
            another standard, that standard is cited in a `source` attribute to the section,
         
     | 
| 
       63 
173 
     | 
    
         
             
            which is set to the reference anchor of the standard (given under the Normative
         
     | 
| 
       64 
     | 
    
         
            -
            Referencecs) 
     | 
| 
       65 
     | 
    
         
            -
             
     | 
| 
      
 174 
     | 
    
         
            +
            Referencecs).
         
     | 
| 
      
 175 
     | 
    
         
            +
            Any boilerplate of the Terms and Definitions section is adjusted accordingly.
         
     | 
| 
       66 
176 
     | 
    
         | 
| 
       67 
177 
     | 
    
         
             
            [source,asciidoctor]
         
     | 
| 
       68 
178 
     | 
    
         
             
            --
         
     | 
| 
         @@ -358,3 +468,206 @@ command line: 
     | 
|
| 
       358 
468 
     | 
    
         
             
            If PlantUML is not installed locally, the source PlantUML is incorporated into
         
     | 
| 
       359 
469 
     | 
    
         
             
            the output document as sourcecode. 
         
     | 
| 
       360 
470 
     | 
    
         | 
| 
      
 471 
     | 
    
         
            +
            == Bibliography integration
         
     | 
| 
      
 472 
     | 
    
         
            +
             
     | 
| 
      
 473 
     | 
    
         
            +
            Bibliographic entries for standards are expected to use the standard document
         
     | 
| 
      
 474 
     | 
    
         
            +
            identifier as the item label; e.g.
         
     | 
| 
      
 475 
     | 
    
         
            +
             
     | 
| 
      
 476 
     | 
    
         
            +
            [source,asciidoctor]
         
     | 
| 
      
 477 
     | 
    
         
            +
            --
         
     | 
| 
      
 478 
     | 
    
         
            +
            * [[[ref1,ISO 712]]], _Cereals and cereal products -- Determination of moisture content -- Reference method_
         
     | 
| 
      
 479 
     | 
    
         
            +
            --
         
     | 
| 
      
 480 
     | 
    
         
            +
             
     | 
| 
      
 481 
     | 
    
         
            +
            By default, the https://github.com/riboseinc/relaton[`relaton`] gem is used to look up the reference details for
         
     | 
| 
      
 482 
     | 
    
         
            +
            standards known to have online bibliographies. For bibliographic standards to be looked up via relaton,
         
     | 
| 
      
 483 
     | 
    
         
            +
            the standard document identifier needs to be encoded in a format recognised by relaton as a key:
         
     | 
| 
      
 484 
     | 
    
         
            +
             
     | 
| 
      
 485 
     | 
    
         
            +
            * For ISO: `ISO(identifier)`, or any identifier prefixed with `ISO`
         
     | 
| 
      
 486 
     | 
    
         
            +
            * For IEC: `IEC(identifier)`, or any identifier prefixed with `IEC`
         
     | 
| 
      
 487 
     | 
    
         
            +
            * For IETF: `IETF(identifier)` (e.g. `IETF(I-D.-burger-xcon-mmodels)`), or any identifier prefixed with `RFC`
         
     | 
| 
      
 488 
     | 
    
         
            +
            * For GB: `CN(identifier)` (e.g. `CN(JB/T 13368-2018)`)
         
     | 
| 
      
 489 
     | 
    
         
            +
             
     | 
| 
      
 490 
     | 
    
         
            +
            The full bibliographic details of the item are screenscraped from the online bibliography and inserted into the XML file 
         
     | 
| 
      
 491 
     | 
    
         
            +
            (although only the title of the reference is used in rendering).
         
     | 
| 
      
 492 
     | 
    
         
            +
             
     | 
| 
      
 493 
     | 
    
         
            +
            In addition, if any entries in Terms and Definitions cite the International Electrotechnical Vocabulary (IEV),
         
     | 
| 
      
 494 
     | 
    
         
            +
            the http://www.electropedia.org[IEV Electropedia] termbank is queried during validation, to confirm
         
     | 
| 
      
 495 
     | 
    
         
            +
            that the cited entries are the same as what is cited online; those queries are routed through the `iev` gem
         
     | 
| 
      
 496 
     | 
    
         
            +
             
     | 
| 
      
 497 
     | 
    
         
            +
            TODO: update
         
     | 
| 
      
 498 
     | 
    
         
            +
             
     | 
| 
      
 499 
     | 
    
         
            +
            [[cache]]
         
     | 
| 
      
 500 
     | 
    
         
            +
            The results of all `relaton` searches done to date, across all documents,
         
     | 
| 
      
 501 
     | 
    
         
            +
            are cached in the global cache file `~/.relaton-bib.pstore`,  
         
     | 
| 
      
 502 
     | 
    
         
            +
            so they do not need to be re-fetched each time a document is processed.
         
     | 
| 
      
 503 
     | 
    
         
            +
            (The web query takes a few seconds per reference.)
         
     | 
| 
      
 504 
     | 
    
         
            +
             
     | 
| 
      
 505 
     | 
    
         
            +
            The results of all `relaton` searches done to date in a given directory
         
     | 
| 
      
 506 
     | 
    
         
            +
            are stored in the same directory as the current document,
         
     | 
| 
      
 507 
     | 
    
         
            +
            as the file `{filename}.relaton.pstore`. The local cache overrides entries in
         
     | 
| 
      
 508 
     | 
    
         
            +
            the global cache, and can be manually edited. The local cache is only used
         
     | 
| 
      
 509 
     | 
    
         
            +
            if the `:local-cache:` or `:local-cache-only:` document attribute is set.
         
     | 
| 
      
 510 
     | 
    
         
            +
             
     | 
| 
      
 511 
     | 
    
         
            +
            If the document attribute `:no-isobib:` is set, the reference details for
         
     | 
| 
      
 512 
     | 
    
         
            +
            items are not looked up via `isobib`, and the `isobib` caches are not used.
         
     | 
| 
      
 513 
     | 
    
         
            +
            If the document attribute `:no-isobib-cache:` is set, the reference details for
         
     | 
| 
      
 514 
     | 
    
         
            +
            items are still looked up via `isobib`, but the `isobib` caches are not used.
         
     | 
| 
      
 515 
     | 
    
         
            +
             
     | 
| 
      
 516 
     | 
    
         
            +
            Any entry in the cache that corresponds to an undated ISO reference fetches its details
         
     | 
| 
      
 517 
     | 
    
         
            +
            from the latest available entry on the ISO web site. If the entry is more than 60
         
     | 
| 
      
 518 
     | 
    
         
            +
            days old, it is refetched.
         
     | 
| 
      
 519 
     | 
    
         
            +
             
     | 
| 
      
 520 
     | 
    
         
            +
            The results of all `iev` searches done to date across all documents are cached
         
     | 
| 
      
 521 
     | 
    
         
            +
            in the global cache fule `~/iev.pstore`, and the results of all `iev` searches
         
     | 
| 
      
 522 
     | 
    
         
            +
            done to date for the current document are stored in the same directory as the
         
     | 
| 
      
 523 
     | 
    
         
            +
            current document, in the file `(filename).iev.pstore`.
         
     | 
| 
      
 524 
     | 
    
         
            +
             
     | 
| 
      
 525 
     | 
    
         
            +
            == Document Attributes
         
     | 
| 
      
 526 
     | 
    
         
            +
             
     | 
| 
      
 527 
     | 
    
         
            +
            The gem relies on Asciidoctor document attributes to provide necessary
         
     | 
| 
      
 528 
     | 
    
         
            +
            metadata about the document. These include:
         
     | 
| 
      
 529 
     | 
    
         
            +
             
     | 
| 
      
 530 
     | 
    
         
            +
            `:nodoc:`:: Do not generate Word and HTML output, only generate XML output.
         
     | 
| 
      
 531 
     | 
    
         
            +
            Can be used as a command-line option (like all other document attributes):
         
     | 
| 
      
 532 
     | 
    
         
            +
            `asciidoctor -a nodoc -b iso -r "metanorma-iso" a.adoc`
         
     | 
| 
      
 533 
     | 
    
         
            +
             
     | 
| 
      
 534 
     | 
    
         
            +
            `:novalid:`:: Suppress validation.
         
     | 
| 
      
 535 
     | 
    
         
            +
             
     | 
| 
      
 536 
     | 
    
         
            +
            `:flush-caches:`:: If set, delete and reinitialise the <<cache,cache>> of `relaton` searches.
         
     | 
| 
      
 537 
     | 
    
         
            +
             
     | 
| 
      
 538 
     | 
    
         
            +
            `:no-isobib:`:: If set, do not use the `relaton` or `iev` gem functionality to look up
         
     | 
| 
      
 539 
     | 
    
         
            +
            ISO and IEV references online, nor the <<cache,cache>> of `relaton` and `iev` searches.
         
     | 
| 
      
 540 
     | 
    
         
            +
             
     | 
| 
      
 541 
     | 
    
         
            +
            `:no-isobib-cache:`:: If set, use the `relaton` and `iev` gem functionality to look up
         
     | 
| 
      
 542 
     | 
    
         
            +
            ISO and IEV references online, but do not use the <<cache,cache>> of `relaton` and `iev` searches.
         
     | 
| 
      
 543 
     | 
    
         
            +
             
     | 
| 
      
 544 
     | 
    
         
            +
            `:local-cache:`:: Use the local relaton and iev search caches to override the global `relaton` and `iev` search
         
     | 
| 
      
 545 
     | 
    
         
            +
            caches.
         
     | 
| 
      
 546 
     | 
    
         
            +
             
     | 
| 
      
 547 
     | 
    
         
            +
            `:local-cache-only:`:: Use the local relaton and iev search caches to the exclusion of the global `relaton` and `iev` search
         
     | 
| 
      
 548 
     | 
    
         
            +
            caches.
         
     | 
| 
      
 549 
     | 
    
         
            +
             
     | 
| 
      
 550 
     | 
    
         
            +
            `:i18nyaml:`:: Name of YAML file of internationalisation text, to use instead
         
     | 
| 
      
 551 
     | 
    
         
            +
            of the built-in English, French or Chinese text used to label parts of the document
         
     | 
| 
      
 552 
     | 
    
         
            +
            (e.g. "Table", "Foreword", boilerplate text for Normative References, etc.)
         
     | 
| 
      
 553 
     | 
    
         
            +
            Use if you wish to output an standard in a language other than those three.
         
     | 
| 
      
 554 
     | 
    
         
            +
            A sample YAML file for English, with "Foreword" replaced with "Frontispiece",
         
     | 
| 
      
 555 
     | 
    
         
            +
            is available at https://github.com/riboseinc/metanorma-iso/blob/master/spec/examples/english.yaml[]
         
     | 
| 
      
 556 
     | 
    
         
            +
             
     | 
| 
      
 557 
     | 
    
         
            +
            `:docnumber:`:: The numeric component of the document identifier (mandatory). The full identifier is formed by prefixing and suffixing this element with other strings derived from metadata.
         
     | 
| 
      
 558 
     | 
    
         
            +
             
     | 
| 
      
 559 
     | 
    
         
            +
            `:edition:`:: The document edition
         
     | 
| 
      
 560 
     | 
    
         
            +
             
     | 
| 
      
 561 
     | 
    
         
            +
            `:revdate:`:: The date the document was last updated
         
     | 
| 
      
 562 
     | 
    
         
            +
             
     | 
| 
      
 563 
     | 
    
         
            +
            `:copyright-year:`:: The year which will be claimed as when the copyright for
         
     | 
| 
      
 564 
     | 
    
         
            +
            the document was issued
         
     | 
| 
      
 565 
     | 
    
         
            +
             
     | 
| 
      
 566 
     | 
    
         
            +
            `:library-ics:` :: The ICS (International Categorization for Standards) number for the standard. There may be more than one ICS for a document; if so, they should be comma-delimited. (The ics identifier is added to the document metadata, but is not output to the current document templates.)
         
     | 
| 
      
 567 
     | 
    
         
            +
             
     | 
| 
      
 568 
     | 
    
         
            +
            `:title:` :: The title of the document
         
     | 
| 
      
 569 
     | 
    
         
            +
             
     | 
| 
      
 570 
     | 
    
         
            +
            `:doctype:`:: The document type; e.g. "standard", "guide", "report".
         
     | 
| 
      
 571 
     | 
    
         
            +
             
     | 
| 
      
 572 
     | 
    
         
            +
            `:status:` :: The status of the document; e.g. "draft", "published".
         
     | 
| 
      
 573 
     | 
    
         
            +
             
     | 
| 
      
 574 
     | 
    
         
            +
            `:technical-committee:`:: The name of the relevant technical committee
         
     | 
| 
      
 575 
     | 
    
         
            +
             
     | 
| 
      
 576 
     | 
    
         
            +
            `:draft:`:: The document draft (used in addition to document stage, for multiple iterations: expected format _X.Y_)
         
     | 
| 
      
 577 
     | 
    
         
            +
             
     | 
| 
      
 578 
     | 
    
         
            +
            `:issued-date:`::
         
     | 
| 
      
 579 
     | 
    
         
            +
            The date on which the standard was issued (authorised for publication by the issuing authority).
         
     | 
| 
      
 580 
     | 
    
         
            +
             
     | 
| 
      
 581 
     | 
    
         
            +
            `:published-date:`::
         
     | 
| 
      
 582 
     | 
    
         
            +
            The date on which the standard was published (distributed by the publisher).
         
     | 
| 
      
 583 
     | 
    
         
            +
             
     | 
| 
      
 584 
     | 
    
         
            +
            `:implemented-date:`::
         
     | 
| 
      
 585 
     | 
    
         
            +
            The date on which the standard became active.
         
     | 
| 
      
 586 
     | 
    
         
            +
             
     | 
| 
      
 587 
     | 
    
         
            +
            `:created-date:`::
         
     | 
| 
      
 588 
     | 
    
         
            +
            The date on which the first version of the standard was created.
         
     | 
| 
      
 589 
     | 
    
         
            +
             
     | 
| 
      
 590 
     | 
    
         
            +
            `:updated-date:`::
         
     | 
| 
      
 591 
     | 
    
         
            +
            The date on which the current version of the standard was updated.
         
     | 
| 
      
 592 
     | 
    
         
            +
             
     | 
| 
      
 593 
     | 
    
         
            +
            `:obsoleted-date:`::
         
     | 
| 
      
 594 
     | 
    
         
            +
            The date on which the standard was obsoleted/revoked.
         
     | 
| 
      
 595 
     | 
    
         
            +
             
     | 
| 
      
 596 
     | 
    
         
            +
            `:confirmed-date:`::
         
     | 
| 
      
 597 
     | 
    
         
            +
            The date on which the standard was reviewed and approved by the issuing authority.
         
     | 
| 
      
 598 
     | 
    
         
            +
             
     | 
| 
      
 599 
     | 
    
         
            +
            `:unchanged-date:`::
         
     | 
| 
      
 600 
     | 
    
         
            +
            The date on which the standard was last renewed without any changes in content.
         
     | 
| 
      
 601 
     | 
    
         
            +
             
     | 
| 
      
 602 
     | 
    
         
            +
            `:circulated-date:`::
         
     | 
| 
      
 603 
     | 
    
         
            +
            The date on which the unpublished standard was last circulated officially as a preprint. For standards, this is associated with the latest transition to a formally defined preparation stage, such as Working Draft or Committee Draft.
         
     | 
| 
      
 604 
     | 
    
         
            +
             
     | 
| 
      
 605 
     | 
    
         
            +
            `:date:`::
         
     | 
| 
      
 606 
     | 
    
         
            +
            An arbitrary date in the production of the standard. Content of the attribute should be a token, giving the type of date, then space, then the date itself. Multiple dates can be added as `:date_2:`, `date_3`, etc.
         
     | 
| 
      
 607 
     | 
    
         
            +
             
     | 
| 
      
 608 
     | 
    
         
            +
            `:uri:`:: The URI to which this standard is published.
         
     | 
| 
      
 609 
     | 
    
         
            +
            `:xml-uri:`:: The URI to which the (Metanorma) XML representation of this standard is published.
         
     | 
| 
      
 610 
     | 
    
         
            +
            `:html-uri:`:: The URI to which the HTML representation of this standard is published.
         
     | 
| 
      
 611 
     | 
    
         
            +
            `:pdf-uri:`:: The URI to which the PDF representation of this standard is published.
         
     | 
| 
      
 612 
     | 
    
         
            +
            `:doc-uri:`:: The URI to which the DOC representation of this standard is published.
         
     | 
| 
      
 613 
     | 
    
         
            +
            `:relaton-uri:`:: The URI to which the Relaton XML representation of this standard is published.
         
     | 
| 
      
 614 
     | 
    
         
            +
             
     | 
| 
      
 615 
     | 
    
         
            +
            `:language:` :: The language of the document (`en` or `fr`). Defaults to `en`.
         
     | 
| 
      
 616 
     | 
    
         
            +
             
     | 
| 
      
 617 
     | 
    
         
            +
            `:script:` :: The script of the document (defaults to `Latn`). Must be supplied as
         
     | 
| 
      
 618 
     | 
    
         
            +
            `Hans` for Simplified Chinese.
         
     | 
| 
      
 619 
     | 
    
         
            +
             
     | 
| 
      
 620 
     | 
    
         
            +
            `:publisher:`:: The standards agency publishing the standard; can be multiple
         
     | 
| 
      
 621 
     | 
    
         
            +
            (comma-delimited). Defaults to `ISO`.
         
     | 
| 
      
 622 
     | 
    
         
            +
             
     | 
| 
      
 623 
     | 
    
         
            +
            `:body-font:`:: Font for body text; will be inserted into CSS. Defaults to
         
     | 
| 
      
 624 
     | 
    
         
            +
            Cambria for Latin script, SimSun for Simplified Chinese.
         
     | 
| 
      
 625 
     | 
    
         
            +
             
     | 
| 
      
 626 
     | 
    
         
            +
            `:header-font:`:: Font for headers; will be inserted into CSS. Defaults to
         
     | 
| 
      
 627 
     | 
    
         
            +
            Cambria for Latin script, SimHei for Simplified Chinese.
         
     | 
| 
      
 628 
     | 
    
         
            +
             
     | 
| 
      
 629 
     | 
    
         
            +
            `:monospace-font`:: Font for monospace; will be inserted into CSS. Defaults to
         
     | 
| 
      
 630 
     | 
    
         
            +
            Courier New.
         
     | 
| 
      
 631 
     | 
    
         
            +
             
     | 
| 
      
 632 
     | 
    
         
            +
            `:htmlstylesheet`:: SCSS stylesheet to use for HTML output. Defaults to built in stylesheet,
         
     | 
| 
      
 633 
     | 
    
         
            +
            which adheres with ISO formatting requirements. Recommend against overriding this.
         
     | 
| 
      
 634 
     | 
    
         
            +
             
     | 
| 
      
 635 
     | 
    
         
            +
            `:htmlcoverpage`:: HTML template for cover page. Defaults to built in template. Recommend against overriding this.
         
     | 
| 
      
 636 
     | 
    
         
            +
             
     | 
| 
      
 637 
     | 
    
         
            +
            `:htmlintropage`:: HTML template for introductory section. Defaults to built in template. Recommend against overriding this.
         
     | 
| 
      
 638 
     | 
    
         
            +
             
     | 
| 
      
 639 
     | 
    
         
            +
            `:scripts`:: Javascript scripts for HTML output. Defaults to built in scripts. Recommend against overriding this.
         
     | 
| 
      
 640 
     | 
    
         
            +
            `:scripts-pdf`:: Javascript scripts for HTML > PDF output. Defaults to built in scripts. Recommend against overriding this.
         
     | 
| 
      
 641 
     | 
    
         
            +
             
     | 
| 
      
 642 
     | 
    
         
            +
            `:wordstylesheet`:: Primary SCSS stylesheet to use for Word output. Defaults to built in stylesheet,
         
     | 
| 
      
 643 
     | 
    
         
            +
            which adheres with ISO formatting requirements. Recommend against overriding this.
         
     | 
| 
      
 644 
     | 
    
         
            +
             
     | 
| 
      
 645 
     | 
    
         
            +
            `:standardstylesheet`:: Secondary SCSS stylesheet use for Word output. Defaults to built in stylesheet,
         
     | 
| 
      
 646 
     | 
    
         
            +
            which adheres with ISO formatting requirements. Recommend against overriding this.
         
     | 
| 
      
 647 
     | 
    
         
            +
             
     | 
| 
      
 648 
     | 
    
         
            +
            `:header`:: Header and footer file for Word output. Defaults to built in template. Recommend against overriding this.
         
     | 
| 
      
 649 
     | 
    
         
            +
             
     | 
| 
      
 650 
     | 
    
         
            +
            `:wordcoverpage`:: Word template for cover page. Defaults to built in template. Recommend against overriding this.
         
     | 
| 
      
 651 
     | 
    
         
            +
             
     | 
| 
      
 652 
     | 
    
         
            +
            `:wordintropage`:: Word template for introductory section. Defaults to built in template. Recommend against overriding this.
         
     | 
| 
      
 653 
     | 
    
         
            +
             
     | 
| 
      
 654 
     | 
    
         
            +
            `:ulstyle`:: Word CSS selector for unordered lists in supplied stylesheets. Defaults to value for built in stylesheet. Recommend against overriding this.
         
     | 
| 
      
 655 
     | 
    
         
            +
             
     | 
| 
      
 656 
     | 
    
         
            +
            `:olstyle`:: Word CSS selector for ordered lists in supplied stylesheets. Defaults to value for built in stylesheet. Recommend against overriding this.
         
     | 
| 
      
 657 
     | 
    
         
            +
             
     | 
| 
      
 658 
     | 
    
         
            +
            `:data-uri-image`:: Encode all images in HTML output as inline data-URIs.
         
     | 
| 
      
 659 
     | 
    
         
            +
             
     | 
| 
      
 660 
     | 
    
         
            +
            The attribute `:draft:`, if present, includes review notes in the XML output;
         
     | 
| 
      
 661 
     | 
    
         
            +
            these are otherwise suppressed.
         
     | 
| 
      
 662 
     | 
    
         
            +
             
     | 
| 
      
 663 
     | 
    
         
            +
            The document proper can reference the values of document attributes, which is convenient
         
     | 
| 
      
 664 
     | 
    
         
            +
            for reusability. For example,
         
     | 
| 
      
 665 
     | 
    
         
            +
             
     | 
| 
      
 666 
     | 
    
         
            +
            [source,asciidoc]
         
     | 
| 
      
 667 
     | 
    
         
            +
            --
         
     | 
| 
      
 668 
     | 
    
         
            +
            This document was prepared by Technical Committee ISO/TC {technical-committee-number}, _{technical-committee}_, Subcommittee SC {subcommittee-number}, _{subcommittee}_.
         
     | 
| 
      
 669 
     | 
    
         
            +
            --
         
     | 
| 
      
 670 
     | 
    
         
            +
             
     | 
| 
      
 671 
     | 
    
         
            +
            If the corresponding document attributes are not populated in the header, then the references
         
     | 
| 
      
 672 
     | 
    
         
            +
            themselves will not be populated.
         
     | 
| 
      
 673 
     | 
    
         
            +
             
     | 
| 
         @@ -476,6 +476,9 @@ 
     | 
|
| 
       476 
476 
     | 
    
         
             
                <zeroOrMore>
         
     | 
| 
       477 
477 
     | 
    
         
             
                  <ref name="docidentifier"/>
         
     | 
| 
       478 
478 
     | 
    
         
             
                </zeroOrMore>
         
     | 
| 
      
 479 
     | 
    
         
            +
                <optional>
         
     | 
| 
      
 480 
     | 
    
         
            +
                  <ref name="docnumber"/>
         
     | 
| 
      
 481 
     | 
    
         
            +
                </optional>
         
     | 
| 
       479 
482 
     | 
    
         
             
                <zeroOrMore>
         
     | 
| 
       480 
483 
     | 
    
         
             
                  <ref name="bdate"/>
         
     | 
| 
       481 
484 
     | 
    
         
             
                </zeroOrMore>
         
     | 
| 
         @@ -637,6 +640,8 @@ 
     | 
|
| 
       637 
640 
     | 
    
         
             
                      <value>transmitted</value>
         
     | 
| 
       638 
641 
     | 
    
         
             
                      <value>copied</value>
         
     | 
| 
       639 
642 
     | 
    
         
             
                      <value>unchanged</value>
         
     | 
| 
      
 643 
     | 
    
         
            +
                      <value>circulated</value>
         
     | 
| 
      
 644 
     | 
    
         
            +
                      <text/>
         
     | 
| 
       640 
645 
     | 
    
         
             
                    </choice>
         
     | 
| 
       641 
646 
     | 
    
         
             
                  </attribute>
         
     | 
| 
       642 
647 
     | 
    
         
             
                  <choice>
         
     | 
| 
         @@ -673,6 +678,11 @@ 
     | 
|
| 
       673 
678 
     | 
    
         
             
                  <text/>
         
     | 
| 
       674 
679 
     | 
    
         
             
                </element>
         
     | 
| 
       675 
680 
     | 
    
         
             
              </define>
         
     | 
| 
      
 681 
     | 
    
         
            +
              <define name="docnumber">
         
     | 
| 
      
 682 
     | 
    
         
            +
                <element name="docnumber">
         
     | 
| 
      
 683 
     | 
    
         
            +
                  <text/>
         
     | 
| 
      
 684 
     | 
    
         
            +
                </element>
         
     | 
| 
      
 685 
     | 
    
         
            +
              </define>
         
     | 
| 
       676 
686 
     | 
    
         
             
              <define name="bclassification">
         
     | 
| 
       677 
687 
     | 
    
         
             
                <element name="classification">
         
     | 
| 
       678 
688 
     | 
    
         
             
                  <optional>
         
     | 
| 
         @@ -43,25 +43,13 @@ module Asciidoctor 
     | 
|
| 
       43 
43 
     | 
    
         
             
                    xmldoc
         
     | 
| 
       44 
44 
     | 
    
         
             
                  end
         
     | 
| 
       45 
45 
     | 
    
         | 
| 
       46 
     | 
    
         
            -
                  # ISO as a prefix goes first
         
     | 
| 
       47 
46 
     | 
    
         
             
                  def docidentifier_cleanup(xmldoc)
         
     | 
| 
       48 
     | 
    
         
            -
                    id = xmldoc.at("//bibdata/docidentifier/project-number")
         
     | 
| 
       49 
     | 
    
         
            -
                    return unless id
         
     | 
| 
       50 
     | 
    
         
            -
             
     | 
| 
       51 
     | 
    
         
            -
                    prefix = []
         
     | 
| 
       52 
     | 
    
         
            -
                    xmldoc.xpath("//bibdata/contributor[role/@type = 'publisher']"\
         
     | 
| 
       53 
     | 
    
         
            -
                                 "/organization").each do |x|
         
     | 
| 
       54 
     | 
    
         
            -
                      x1 = x.at("abbreviation")&.text || x.at("name")&.text
         
     | 
| 
       55 
     | 
    
         
            -
                      x1 == "ISO" and prefix.unshift("ISO") or prefix << x1
         
     | 
| 
       56 
     | 
    
         
            -
                    end
         
     | 
| 
       57 
     | 
    
         
            -
             
     | 
| 
       58 
     | 
    
         
            -
                    id.content = prefix.join("/") + " " + id.text
         
     | 
| 
       59 
47 
     | 
    
         
             
                  end
         
     | 
| 
       60 
48 
     | 
    
         | 
| 
       61 
49 
     | 
    
         
             
                  TEXT_ELEMS =
         
     | 
| 
       62 
     | 
    
         
            -
                    %w{status language script version author name callout phone
         
     | 
| 
       63 
     | 
    
         
            -
                        
     | 
| 
       64 
     | 
    
         
            -
                       referenceTo docidentifier prefix initial addition surname forename
         
     | 
| 
      
 50 
     | 
    
         
            +
                    %w{status language script version author name callout phone email 
         
     | 
| 
      
 51 
     | 
    
         
            +
                       street city state country postcode identifier referenceFrom
         
     | 
| 
      
 52 
     | 
    
         
            +
                       referenceTo docidentifier docnumber prefix initial addition surname forename
         
     | 
| 
       65 
53 
     | 
    
         
             
                       title draft secretariat title-main title-intro title-part}.freeze
         
     | 
| 
       66 
54 
     | 
    
         | 
| 
       67 
55 
     | 
    
         
             
                  # it seems Nokogiri::XML is treating the content of <script> as cdata,
         
     | 
| 
         @@ -102,16 +102,6 @@ module Asciidoctor 
     | 
|
| 
       102 
102 
     | 
    
         
             
                    "name = 'International Organization for Standardization' or "\
         
     | 
| 
       103 
103 
     | 
    
         
             
                    "name = 'International Electrotechnical Commission']".freeze
         
     | 
| 
       104 
104 
     | 
    
         | 
| 
       105 
     | 
    
         
            -
                  def date_range(date)
         
     | 
| 
       106 
     | 
    
         
            -
                    from = date.at("./from")
         
     | 
| 
       107 
     | 
    
         
            -
                    to = date.at("./to")
         
     | 
| 
       108 
     | 
    
         
            -
                    on = date.at("./on")
         
     | 
| 
       109 
     | 
    
         
            -
                    return on.text if on
         
     | 
| 
       110 
     | 
    
         
            -
                    ret = "#{from.text}–"
         
     | 
| 
       111 
     | 
    
         
            -
                    ret += to.text if to
         
     | 
| 
       112 
     | 
    
         
            -
                    ret
         
     | 
| 
       113 
     | 
    
         
            -
                  end
         
     | 
| 
       114 
     | 
    
         
            -
             
     | 
| 
       115 
105 
     | 
    
         
             
                  def reference_names(xmldoc)
         
     | 
| 
       116 
106 
     | 
    
         
             
                    xmldoc.xpath("//bibitem[not(ancestor::bibitem)]").each do |ref|
         
     | 
| 
       117 
107 
     | 
    
         
             
                      isopub = ref.at(ISO_PUBLISHER_XPATH)
         
     | 
| 
         @@ -11,10 +11,11 @@ module Asciidoctor 
     | 
|
| 
       11 
11 
     | 
    
         
             
                module Front
         
     | 
| 
       12 
12 
     | 
    
         
             
                  def metadata_id(node, xml)
         
     | 
| 
       13 
13 
     | 
    
         
             
                    part, subpart = node&.attr("partnumber")&.split(/-/)
         
     | 
| 
       14 
     | 
    
         
            -
                     
     | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
     | 
    
         
            -
             
     | 
| 
       17 
     | 
    
         
            -
                     
     | 
| 
      
 14 
     | 
    
         
            +
                    id = node.attr("docnumber") || ""
         
     | 
| 
      
 15 
     | 
    
         
            +
                    id += "-#{part}" if part
         
     | 
| 
      
 16 
     | 
    
         
            +
                    id += "-#{subpart}" if subpart
         
     | 
| 
      
 17 
     | 
    
         
            +
                    xml.docidentifier id
         
     | 
| 
      
 18 
     | 
    
         
            +
                    xml.docnumber node.attr("docnumber")
         
     | 
| 
       18 
19 
     | 
    
         
             
                  end
         
     | 
| 
       19 
20 
     | 
    
         | 
| 
       20 
21 
     | 
    
         
             
                  def metadata_version(node, xml)
         
     | 
| 
         @@ -104,10 +105,34 @@ module Asciidoctor 
     | 
|
| 
       104 
105 
     | 
    
         
             
                    node.attr("relaton-uri") && xml.source(node.attr("relaton-uri"), type: "relaton")
         
     | 
| 
       105 
106 
     | 
    
         
             
                  end
         
     | 
| 
       106 
107 
     | 
    
         | 
| 
      
 108 
     | 
    
         
            +
                  def metadata_date1(node, xml, type)
         
     | 
| 
      
 109 
     | 
    
         
            +
                    date = node.attr("#{type}-date")
         
     | 
| 
      
 110 
     | 
    
         
            +
                    date and xml.date **{ type: type } do |d|
         
     | 
| 
      
 111 
     | 
    
         
            +
                      d.on date
         
     | 
| 
      
 112 
     | 
    
         
            +
                    end
         
     | 
| 
      
 113 
     | 
    
         
            +
                  end
         
     | 
| 
      
 114 
     | 
    
         
            +
             
     | 
| 
      
 115 
     | 
    
         
            +
                  DATETYPES = %w{ published accessed created implemented obsoleted
         
     | 
| 
      
 116 
     | 
    
         
            +
                                  confirmed updated issued circulated unchanged
         
     | 
| 
      
 117 
     | 
    
         
            +
                  }.freeze
         
     | 
| 
      
 118 
     | 
    
         
            +
             
     | 
| 
      
 119 
     | 
    
         
            +
                  def metadata_date(node, xml)
         
     | 
| 
      
 120 
     | 
    
         
            +
                    DATETYPES.each { |t| metadata_date1(node, xml, t) }
         
     | 
| 
      
 121 
     | 
    
         
            +
                    node.attributes.keys.each do |a|
         
     | 
| 
      
 122 
     | 
    
         
            +
                      next unless a == "date" || /^date_\d+$/.match(a)
         
     | 
| 
      
 123 
     | 
    
         
            +
                      type, date = node.attr(a).split(/ /, 2)
         
     | 
| 
      
 124 
     | 
    
         
            +
                      type or next
         
     | 
| 
      
 125 
     | 
    
         
            +
                      xml.date **{ type: type } do |d|
         
     | 
| 
      
 126 
     | 
    
         
            +
                        d.on date
         
     | 
| 
      
 127 
     | 
    
         
            +
                      end
         
     | 
| 
      
 128 
     | 
    
         
            +
                    end
         
     | 
| 
      
 129 
     | 
    
         
            +
                  end
         
     | 
| 
      
 130 
     | 
    
         
            +
             
     | 
| 
       107 
131 
     | 
    
         
             
                  def metadata(node, xml)
         
     | 
| 
       108 
132 
     | 
    
         
             
                    title node, xml
         
     | 
| 
       109 
133 
     | 
    
         
             
                    metadata_source(node, xml)
         
     | 
| 
       110 
134 
     | 
    
         
             
                    metadata_id(node, xml)
         
     | 
| 
      
 135 
     | 
    
         
            +
                    metadata_date(node, xml)
         
     | 
| 
       111 
136 
     | 
    
         
             
                    metadata_author(node, xml)
         
     | 
| 
       112 
137 
     | 
    
         
             
                    metadata_publisher(node, xml)
         
     | 
| 
       113 
138 
     | 
    
         
             
                    xml.language (node.attr("language") || "en")
         
     | 
    
        data/metanorma-standoc.gemspec
    CHANGED
    
    | 
         @@ -43,7 +43,7 @@ Gem::Specification.new do |spec| 
     | 
|
| 
       43 
43 
     | 
    
         
             
              spec.add_development_dependency "rubocop", "~> 0.50"
         
     | 
| 
       44 
44 
     | 
    
         
             
              spec.add_development_dependency "simplecov", "~> 0.15"
         
     | 
| 
       45 
45 
     | 
    
         
             
              spec.add_development_dependency "timecop", "~> 0.9"
         
     | 
| 
       46 
     | 
    
         
            -
              spec.add_development_dependency "metanorma", "~> 0. 
     | 
| 
      
 46 
     | 
    
         
            +
              spec.add_development_dependency "metanorma", "~> 0.3.0"
         
     | 
| 
       47 
47 
     | 
    
         
             
              spec.add_development_dependency "vcr"
         
     | 
| 
       48 
48 
     | 
    
         
             
              spec.add_development_dependency "webmock"
         
     | 
| 
       49 
49 
     | 
    
         
             
            end
         
     | 
| 
         @@ -43,6 +43,18 @@ RSpec.describe Asciidoctor::Standoc do 
     | 
|
| 
       43 
43 
     | 
    
         
             
                  :partnumber: 1
         
     | 
| 
       44 
44 
     | 
    
         
             
                  :edition: 2
         
     | 
| 
       45 
45 
     | 
    
         
             
                  :revdate: 2000-01-01
         
     | 
| 
      
 46 
     | 
    
         
            +
                  :published-date: 1000-01-01
         
     | 
| 
      
 47 
     | 
    
         
            +
                  :accessed-date: 1001-01-01
         
     | 
| 
      
 48 
     | 
    
         
            +
                  :created-date: 1002-01-01
         
     | 
| 
      
 49 
     | 
    
         
            +
                  :implemented-date: 1003-01-01
         
     | 
| 
      
 50 
     | 
    
         
            +
                  :obsoleted-date: 1004-01-01
         
     | 
| 
      
 51 
     | 
    
         
            +
                  :confirmed-date: 1005-01-01
         
     | 
| 
      
 52 
     | 
    
         
            +
                  :updated-date: 1006-01-01
         
     | 
| 
      
 53 
     | 
    
         
            +
                  :issued-date: 1007-01-01
         
     | 
| 
      
 54 
     | 
    
         
            +
                  :circulated-date: 1008-01-01
         
     | 
| 
      
 55 
     | 
    
         
            +
                  :unchanged-date: 1009-01-01
         
     | 
| 
      
 56 
     | 
    
         
            +
                  :date: Fred 1010-01-01
         
     | 
| 
      
 57 
     | 
    
         
            +
                  :date_2: Jack 1010-01-01
         
     | 
| 
       46 
58 
     | 
    
         
             
                  :draft: 3.4
         
     | 
| 
       47 
59 
     | 
    
         
             
                  :technical-committee: TC
         
     | 
| 
       48 
60 
     | 
    
         
             
                  :technical-committee-number: 1
         
     | 
| 
         @@ -75,9 +87,44 @@ RSpec.describe Asciidoctor::Standoc do 
     | 
|
| 
       75 
87 
     | 
    
         
             
            <standard-document xmlns="http://riboseinc.com/isoxml">
         
     | 
| 
       76 
88 
     | 
    
         
             
            <bibdata type="article">
         
     | 
| 
       77 
89 
     | 
    
         
             
            <title language="en" format="text/plain">Main Title — Title</title>
         
     | 
| 
       78 
     | 
    
         
            -
              <docidentifier>
         
     | 
| 
       79 
     | 
    
         
            -
             
     | 
| 
       80 
     | 
    
         
            -
               
     | 
| 
      
 90 
     | 
    
         
            +
              <docidentifier>1000-1</docidentifier>
         
     | 
| 
      
 91 
     | 
    
         
            +
              <docnumber>1000</docnumber>
         
     | 
| 
      
 92 
     | 
    
         
            +
              <date type="published">
         
     | 
| 
      
 93 
     | 
    
         
            +
              <on>1000-01-01</on>
         
     | 
| 
      
 94 
     | 
    
         
            +
            </date>
         
     | 
| 
      
 95 
     | 
    
         
            +
            <date type="accessed">
         
     | 
| 
      
 96 
     | 
    
         
            +
              <on>1001-01-01</on>
         
     | 
| 
      
 97 
     | 
    
         
            +
            </date>
         
     | 
| 
      
 98 
     | 
    
         
            +
            <date type="created">
         
     | 
| 
      
 99 
     | 
    
         
            +
              <on>1002-01-01</on>
         
     | 
| 
      
 100 
     | 
    
         
            +
            </date>
         
     | 
| 
      
 101 
     | 
    
         
            +
            <date type="implemented">
         
     | 
| 
      
 102 
     | 
    
         
            +
              <on>1003-01-01</on>
         
     | 
| 
      
 103 
     | 
    
         
            +
            </date>
         
     | 
| 
      
 104 
     | 
    
         
            +
            <date type="obsoleted">
         
     | 
| 
      
 105 
     | 
    
         
            +
              <on>1004-01-01</on>
         
     | 
| 
      
 106 
     | 
    
         
            +
            </date>
         
     | 
| 
      
 107 
     | 
    
         
            +
            <date type="confirmed">
         
     | 
| 
      
 108 
     | 
    
         
            +
              <on>1005-01-01</on>
         
     | 
| 
      
 109 
     | 
    
         
            +
            </date>
         
     | 
| 
      
 110 
     | 
    
         
            +
            <date type="updated">
         
     | 
| 
      
 111 
     | 
    
         
            +
              <on>1006-01-01</on>
         
     | 
| 
      
 112 
     | 
    
         
            +
            </date>
         
     | 
| 
      
 113 
     | 
    
         
            +
            <date type="issued">
         
     | 
| 
      
 114 
     | 
    
         
            +
              <on>1007-01-01</on>
         
     | 
| 
      
 115 
     | 
    
         
            +
            </date>
         
     | 
| 
      
 116 
     | 
    
         
            +
            <date type="circulated">
         
     | 
| 
      
 117 
     | 
    
         
            +
              <on>1008-01-01</on>
         
     | 
| 
      
 118 
     | 
    
         
            +
            </date>
         
     | 
| 
      
 119 
     | 
    
         
            +
            <date type="unchanged">
         
     | 
| 
      
 120 
     | 
    
         
            +
              <on>1009-01-01</on>
         
     | 
| 
      
 121 
     | 
    
         
            +
            </date>
         
     | 
| 
      
 122 
     | 
    
         
            +
            <date type="Fred">
         
     | 
| 
      
 123 
     | 
    
         
            +
              <on>1010-01-01</on>
         
     | 
| 
      
 124 
     | 
    
         
            +
            </date>
         
     | 
| 
      
 125 
     | 
    
         
            +
            <date type="Jack">
         
     | 
| 
      
 126 
     | 
    
         
            +
              <on>1010-01-01</on>
         
     | 
| 
      
 127 
     | 
    
         
            +
            </date>
         
     | 
| 
       81 
128 
     | 
    
         
             
              <language>en</language>
         
     | 
| 
       82 
129 
     | 
    
         
             
              <script>Latn</script>
         
     | 
| 
       83 
130 
     | 
    
         
             
              <status format="plain">published</status>
         
     | 
| 
         @@ -136,9 +183,8 @@ RSpec.describe Asciidoctor::Standoc do 
     | 
|
| 
       136 
183 
     | 
    
         
             
                     <source type="pdf">D</source>
         
     | 
| 
       137 
184 
     | 
    
         
             
                     <source type="doc">E</source>
         
     | 
| 
       138 
185 
     | 
    
         
             
                     <source type="relaton">F</source>
         
     | 
| 
       139 
     | 
    
         
            -
                     <docidentifier>
         
     | 
| 
       140 
     | 
    
         
            -
             
     | 
| 
       141 
     | 
    
         
            -
                     </docidentifier>
         
     | 
| 
      
 186 
     | 
    
         
            +
                     <docidentifier>1000-1-1</docidentifier>
         
     | 
| 
      
 187 
     | 
    
         
            +
                     <docnumber>1000</docnumber>
         
     | 
| 
       142 
188 
     | 
    
         
             
                     <contributor>
         
     | 
| 
       143 
189 
     | 
    
         
             
                       <role type="author"/>
         
     | 
| 
       144 
190 
     | 
    
         
             
                       <organization>
         
     | 
| 
         @@ -271,12 +317,12 @@ RSpec.describe Asciidoctor::Standoc do 
     | 
|
| 
       271 
317 
     | 
    
         
             
                expect(html).to match(%r[h1[^{]+\{[^{]+font-family: Comic Sans;]m)
         
     | 
| 
       272 
318 
     | 
    
         
             
                expect(html).to match(%r[an empty word cover page])
         
     | 
| 
       273 
319 
     | 
    
         
             
                expect(html).to match(%r[an empty word intro page])
         
     | 
| 
       274 
     | 
    
         
            -
                expect(html).to  
     | 
| 
      
 320 
     | 
    
         
            +
                expect(html).to include(%[Content-Location: file:///C:/Doc/test_files/header.html
         
     | 
| 
       275 
321 
     | 
    
         
             
            Content-Transfer-Encoding: base64
         
     | 
| 
       276 
322 
     | 
    
         
             
            Content-Type: text/html charset="utf-8"
         
     | 
| 
       277 
323 
     | 
    
         | 
| 
       278 
     | 
    
         
            -
             
     | 
| 
       279 
     | 
    
         
            -
             
     | 
| 
      
 324 
     | 
    
         
            +
            Ci8qIGFuIGVtcHR5IGhlYWRlciAqLwoKU1RBUlQgRE9DIElEOiA6IEVORCBET0MgSUQKCkZJTEVO
         
     | 
| 
      
 325 
     | 
    
         
            +
            QU1FOiB0ZXN0Cgo=
         
     | 
| 
       280 
326 
     | 
    
         
             
            ])
         
     | 
| 
       281 
327 
     | 
    
         
             
              end
         
     | 
| 
       282 
328 
     | 
    
         | 
| 
         @@ -512,9 +512,6 @@ RSpec.describe Asciidoctor::Standoc do 
     | 
|
| 
       512 
512 
     | 
    
         
             
                  <?xml version="1.0" encoding="UTF-8"?>
         
     | 
| 
       513 
513 
     | 
    
         
             
                  <standard-document xmlns="http://riboseinc.com/isoxml">
         
     | 
| 
       514 
514 
     | 
    
         
             
                  <bibdata type="article">
         
     | 
| 
       515 
     | 
    
         
            -
                    <docidentifier>
         
     | 
| 
       516 
     | 
    
         
            -
                      <project-number> </project-number>
         
     | 
| 
       517 
     | 
    
         
            -
                    </docidentifier>
         
     | 
| 
       518 
515 
     | 
    
         
             
                    <language>en</language>
         
     | 
| 
       519 
516 
     | 
    
         
             
                    <script>Latn</script>
         
     | 
| 
       520 
517 
     | 
    
         
             
                    <status format="plain">published</status>
         
     | 
    
        data/spec/spec_helper.rb
    CHANGED
    
    | 
         @@ -106,9 +106,6 @@ BLANK_HDR = <<~"HDR" 
     | 
|
| 
       106 
106 
     | 
    
         
             
            <?xml version="1.0" encoding="UTF-8"?>
         
     | 
| 
       107 
107 
     | 
    
         
             
            <standard-document xmlns="http://riboseinc.com/isoxml">
         
     | 
| 
       108 
108 
     | 
    
         
             
            <bibdata type="article">
         
     | 
| 
       109 
     | 
    
         
            -
              <docidentifier>
         
     | 
| 
       110 
     | 
    
         
            -
                <project-number> </project-number>
         
     | 
| 
       111 
     | 
    
         
            -
              </docidentifier>
         
     | 
| 
       112 
109 
     | 
    
         
             
              <language>en</language>
         
     | 
| 
       113 
110 
     | 
    
         
             
              <script>Latn</script>
         
     | 
| 
       114 
111 
     | 
    
         
             
              <status format="plain">published</status>
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: metanorma-standoc
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1.0. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.0.9
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Ribose Inc.
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2018- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2018-11-12 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: asciidoctor
         
     | 
| 
         @@ -240,14 +240,14 @@ dependencies: 
     | 
|
| 
       240 
240 
     | 
    
         
             
                requirements:
         
     | 
| 
       241 
241 
     | 
    
         
             
                - - "~>"
         
     | 
| 
       242 
242 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       243 
     | 
    
         
            -
                    version: 0. 
     | 
| 
      
 243 
     | 
    
         
            +
                    version: 0.3.0
         
     | 
| 
       244 
244 
     | 
    
         
             
              type: :development
         
     | 
| 
       245 
245 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       246 
246 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       247 
247 
     | 
    
         
             
                requirements:
         
     | 
| 
       248 
248 
     | 
    
         
             
                - - "~>"
         
     | 
| 
       249 
249 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       250 
     | 
    
         
            -
                    version: 0. 
     | 
| 
      
 250 
     | 
    
         
            +
                    version: 0.3.0
         
     | 
| 
       251 
251 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       252 
252 
     | 
    
         
             
              name: vcr
         
     | 
| 
       253 
253 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     |