metanorma-ietf 3.4.2 → 3.4.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.
- checksums.yaml +4 -4
- data/lib/isodoc/ietf/blocks.rb +13 -0
- data/lib/isodoc/ietf/inline.rb +4 -1
- data/lib/isodoc/ietf/terms.rb +31 -1
- data/lib/metanorma/ietf/biblio.rng +15 -9
- data/lib/metanorma/ietf/version.rb +1 -1
- metadata +5 -5
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: b1ba51cb30f9a763118cd067b90a81ae8425ad6943c9c270daf87ba3d043de92
         | 
| 4 | 
            +
              data.tar.gz: a54742db1f6423d43d44dfc4388539ffb9da6e709c5d8b7f16954d2a0536eba8
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: c2a0a4d158e1c8cf8ecacc4eec7f27e17033f14782c6ba5c8aac1be90da247d475ebce115499957ae8641546af02cc76e27cc2b3b4bc5a9c06de9782a68e385f
         | 
| 7 | 
            +
              data.tar.gz: 3f2a5457aba6280d50be9f63d5555b33d04da66f098edb7af4dd150e345df380de7c16de43252c4180c65637ebe7d3da42f1f9ae427a698da43df3ae3cefc232
         | 
    
        data/lib/isodoc/ietf/blocks.rb
    CHANGED
    
    | @@ -86,6 +86,19 @@ module IsoDoc | |
| 86 86 | 
             
                    end
         | 
| 87 87 | 
             
                  end
         | 
| 88 88 |  | 
| 89 | 
            +
                  def li_parse(node, out)
         | 
| 90 | 
            +
                    out.li **attr_code(anchor: node["id"]) do |li|
         | 
| 91 | 
            +
                      if node["uncheckedcheckbox"] == "true"
         | 
| 92 | 
            +
                        li << '<span class="zzMoveToFollowing">' \
         | 
| 93 | 
            +
                              '<input type="checkbox" checked="checked"/></span>'
         | 
| 94 | 
            +
                      elsif node["checkedcheckbox"] == "true"
         | 
| 95 | 
            +
                        li << '<span class="zzMoveToFollowing">' \
         | 
| 96 | 
            +
                              '<input type="checkbox"/></span>'
         | 
| 97 | 
            +
                      end
         | 
| 98 | 
            +
                      node.children.each { |n| parse(n, li) }
         | 
| 99 | 
            +
                    end
         | 
| 100 | 
            +
                  end
         | 
| 101 | 
            +
             | 
| 89 102 | 
             
                  def note_label(node)
         | 
| 90 103 | 
             
                    n = @xrefs.get[node["id"]]
         | 
| 91 104 | 
             
                    n.nil? || n[:label].nil? || n[:label].empty? and
         | 
    
        data/lib/isodoc/ietf/inline.rb
    CHANGED
    
    | @@ -58,7 +58,10 @@ module IsoDoc | |
| 58 58 |  | 
| 59 59 | 
             
                  def stem_parse(node, out)
         | 
| 60 60 | 
             
                    stem = case node["type"]
         | 
| 61 | 
            -
                           when "MathML" | 
| 61 | 
            +
                           when "MathML"
         | 
| 62 | 
            +
                             a = node.at(ns("./asciimath"))&.remove
         | 
| 63 | 
            +
                             a&.children&.text ||
         | 
| 64 | 
            +
                             Plurimath::Math
         | 
| 62 65 | 
             
                             .parse(node.children.to_xml, "mathml").to_asciimath
         | 
| 63 66 | 
             
                           else HTMLEntities.new.encode(node.text)
         | 
| 64 67 | 
             
                           end
         | 
    
        data/lib/isodoc/ietf/terms.rb
    CHANGED
    
    | @@ -5,6 +5,10 @@ module IsoDoc | |
| 5 5 | 
             
                    @termdomain = termdomain
         | 
| 6 6 | 
             
                  end
         | 
| 7 7 |  | 
| 8 | 
            +
                  def semx_definition_parse(node, out)
         | 
| 9 | 
            +
                    definition_parse(node, out)
         | 
| 10 | 
            +
                  end
         | 
| 11 | 
            +
             | 
| 8 12 | 
             
                  def definition_parse(node, out)
         | 
| 9 13 | 
             
                    node.children.each { |n| parse(n, out) }
         | 
| 10 14 | 
             
                  end
         | 
| @@ -15,6 +19,10 @@ module IsoDoc | |
| 15 19 | 
             
                    para.children.each { |n| parse(n, out) }
         | 
| 16 20 | 
             
                  end
         | 
| 17 21 |  | 
| 22 | 
            +
                  def semx_deprecated_term_parse(node, out)
         | 
| 23 | 
            +
                    deprecated_term_parse(node, out)
         | 
| 24 | 
            +
                  end
         | 
| 25 | 
            +
             | 
| 18 26 | 
             
                  def deprecated_term_parse(node, out)
         | 
| 19 27 | 
             
                    name = node.at(ns(".//name"))
         | 
| 20 28 | 
             
                    out.t do |p|
         | 
| @@ -22,6 +30,10 @@ module IsoDoc | |
| 22 30 | 
             
                      name.children.each { |c| parse(c, p) }
         | 
| 23 31 | 
             
                    end
         | 
| 24 32 | 
             
                  end
         | 
| 33 | 
            +
                  
         | 
| 34 | 
            +
                  def semx_admitted_term_parse(node, out)
         | 
| 35 | 
            +
                    admitted_term_parse(node, out)
         | 
| 36 | 
            +
                  end
         | 
| 25 37 |  | 
| 26 38 | 
             
                  def admitted_term_parse(node, out)
         | 
| 27 39 | 
             
                    name = node.at(ns(".//name"))
         | 
| @@ -30,6 +42,10 @@ module IsoDoc | |
| 30 42 | 
             
                    end
         | 
| 31 43 | 
             
                  end
         | 
| 32 44 |  | 
| 45 | 
            +
                  def semx_term_parse(node, out)
         | 
| 46 | 
            +
                    term_parse(node, out)
         | 
| 47 | 
            +
                  end
         | 
| 48 | 
            +
             | 
| 33 49 | 
             
                  def term_parse(node, out)
         | 
| 34 50 | 
             
                    if domain = node.at(ns("./domain"))
         | 
| 35 51 | 
             
                      set_termdomain(domain.text)
         | 
| @@ -53,10 +69,20 @@ module IsoDoc | |
| 53 69 | 
             
                      set_termdomain("")
         | 
| 54 70 | 
             
                    end
         | 
| 55 71 | 
             
                    node.xpath(ns("./definition")).size > 1 and
         | 
| 56 | 
            -
                       | 
| 72 | 
            +
                      multidef(node)
         | 
| 57 73 | 
             
                    clause_parse(node, out)
         | 
| 58 74 | 
             
                  end
         | 
| 59 75 |  | 
| 76 | 
            +
                  def multidef(elem)
         | 
| 77 | 
            +
                    d = elem.at(ns("./definition"))
         | 
| 78 | 
            +
                  d = d.replace("<ol><li>#{to_xml(d.children)}</li></ol>").first
         | 
| 79 | 
            +
                  elem.xpath(ns("./definition")).each do |f|
         | 
| 80 | 
            +
                    f = f.replace("<li>#{to_xml(f.children)}</li>").first
         | 
| 81 | 
            +
                    d << f
         | 
| 82 | 
            +
                  end
         | 
| 83 | 
            +
                  d.wrap("<definition></definition>")
         | 
| 84 | 
            +
                  end
         | 
| 85 | 
            +
             | 
| 60 86 | 
             
                  def termdocsource_parse(_node, _out); end
         | 
| 61 87 |  | 
| 62 88 | 
             
                  def concept_parse(node, out)
         | 
| @@ -106,6 +132,10 @@ module IsoDoc | |
| 106 132 | 
             
                    end
         | 
| 107 133 | 
             
                  end
         | 
| 108 134 |  | 
| 135 | 
            +
                  def semx_termref_parse(node, out)
         | 
| 136 | 
            +
                    termref_parse(node, out)
         | 
| 137 | 
            +
                  end
         | 
| 138 | 
            +
             | 
| 109 139 | 
             
                  def termref_parse(elem, out)
         | 
| 110 140 | 
             
                    preprocess_termref(elem)
         | 
| 111 141 | 
             
                    elem.children = l10n("[#{@i18n.source}: #{to_xml(elem.children).strip}]")
         | 
| @@ -267,11 +267,11 @@ Detailed in https://www.relaton.org/model/creator/</a:documentation> | |
| 267 267 | 
             
                      <a:documentation>An identifier of the person according to an international identifier scheme</a:documentation>
         | 
| 268 268 | 
             
                    </ref>
         | 
| 269 269 | 
             
                  </zeroOrMore>
         | 
| 270 | 
            -
                  < | 
| 270 | 
            +
                  <optional>
         | 
| 271 271 | 
             
                    <ref name="contact">
         | 
| 272 272 | 
             
                      <a:documentation>Contact information for the person, including URI, address, phone number, and email</a:documentation>
         | 
| 273 273 | 
             
                    </ref>
         | 
| 274 | 
            -
                  </ | 
| 274 | 
            +
                  </optional>
         | 
| 275 275 | 
             
                </element>
         | 
| 276 276 | 
             
              </define>
         | 
| 277 277 | 
             
              <define name="fullname">
         | 
| @@ -454,11 +454,11 @@ real names (if the person is named with a pseudonym or user name); previous lega | |
| 454 454 | 
             
                    <a:documentation>An identifier of the organization according to an international identifier scheme</a:documentation>
         | 
| 455 455 | 
             
                  </ref>
         | 
| 456 456 | 
             
                </zeroOrMore>
         | 
| 457 | 
            -
                < | 
| 457 | 
            +
                <optional>
         | 
| 458 458 | 
             
                  <ref name="contact">
         | 
| 459 459 | 
             
                    <a:documentation>Contact information for the organization, including address, phone number, and email</a:documentation>
         | 
| 460 460 | 
             
                  </ref>
         | 
| 461 | 
            -
                </ | 
| 461 | 
            +
                </optional>
         | 
| 462 462 | 
             
                <optional>
         | 
| 463 463 | 
             
                  <ref name="logo">
         | 
| 464 464 | 
             
                    <a:documentation>A logo for the organization</a:documentation>
         | 
| @@ -540,12 +540,18 @@ real names (if the person is named with a pseudonym or user name); previous lega | |
| 540 540 | 
             
              <!-- TODO may change -->
         | 
| 541 541 | 
             
              <define name="contact">
         | 
| 542 542 | 
             
                <a:documentation>Contact information for a person or organization</a:documentation>
         | 
| 543 | 
            -
                < | 
| 543 | 
            +
                <zeroOrMore>
         | 
| 544 544 | 
             
                  <ref name="address"/>
         | 
| 545 | 
            +
                </zeroOrMore>
         | 
| 546 | 
            +
                <zeroOrMore>
         | 
| 545 547 | 
             
                  <ref name="phone"/>
         | 
| 548 | 
            +
                </zeroOrMore>
         | 
| 549 | 
            +
                <zeroOrMore>
         | 
| 546 550 | 
             
                  <ref name="email"/>
         | 
| 551 | 
            +
                </zeroOrMore>
         | 
| 552 | 
            +
                <zeroOrMore>
         | 
| 547 553 | 
             
                  <ref name="uri"/>
         | 
| 548 | 
            -
                </ | 
| 554 | 
            +
                </zeroOrMore>
         | 
| 549 555 | 
             
              </define>
         | 
| 550 556 | 
             
              <define name="phone">
         | 
| 551 557 | 
             
                <a:documentation>The phone number associated with a person or organization</a:documentation>
         | 
| @@ -1271,17 +1277,17 @@ for which this claim of validity is made, if applicable</a:documentation> | |
| 1271 1277 | 
             
              </define>
         | 
| 1272 1278 | 
             
              <define name="validityBegins">
         | 
| 1273 1279 | 
             
                <element name="validityBegins">
         | 
| 1274 | 
            -
                  <ref name=" | 
| 1280 | 
            +
                  <ref name="ISO8601Date"/>
         | 
| 1275 1281 | 
             
                </element>
         | 
| 1276 1282 | 
             
              </define>
         | 
| 1277 1283 | 
             
              <define name="validityEnds">
         | 
| 1278 1284 | 
             
                <element name="validityEnds">
         | 
| 1279 | 
            -
                  <ref name=" | 
| 1285 | 
            +
                  <ref name="ISO8601Date"/>
         | 
| 1280 1286 | 
             
                </element>
         | 
| 1281 1287 | 
             
              </define>
         | 
| 1282 1288 | 
             
              <define name="validityRevision">
         | 
| 1283 1289 | 
             
                <element name="revision">
         | 
| 1284 | 
            -
                  <ref name=" | 
| 1290 | 
            +
                  <ref name="ISO8601Date"/>
         | 
| 1285 1291 | 
             
                </element>
         | 
| 1286 1292 | 
             
              </define>
         | 
| 1287 1293 | 
             
              <define name="TypedTitleString">
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: metanorma-ietf
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 3.4. | 
| 4 | 
            +
              version: 3.4.4
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Ribose Inc.
         | 
| 8 | 
            -
            autorequire: | 
| 8 | 
            +
            autorequire:
         | 
| 9 9 | 
             
            bindir: exe
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2025-01-20 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: metanorma-ietf-data
         | 
| @@ -298,7 +298,7 @@ homepage: https://github.com/metanorma/metanorma-ietf | |
| 298 298 | 
             
            licenses:
         | 
| 299 299 | 
             
            - BSD-2-Clause
         | 
| 300 300 | 
             
            metadata: {}
         | 
| 301 | 
            -
            post_install_message: | 
| 301 | 
            +
            post_install_message:
         | 
| 302 302 | 
             
            rdoc_options: []
         | 
| 303 303 | 
             
            require_paths:
         | 
| 304 304 | 
             
            - lib
         | 
| @@ -314,7 +314,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 314 314 | 
             
                  version: '0'
         | 
| 315 315 | 
             
            requirements: []
         | 
| 316 316 | 
             
            rubygems_version: 3.3.27
         | 
| 317 | 
            -
            signing_key: | 
| 317 | 
            +
            signing_key:
         | 
| 318 318 | 
             
            specification_version: 4
         | 
| 319 319 | 
             
            summary: metanorma-ietf lets you write IETF documents, such as Internet-Drafts and
         | 
| 320 320 | 
             
              RFCs, in AsciiDoc.
         |