isodoc 1.7.2 → 1.7.3
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/css.rb +3 -3
- data/lib/isodoc/function/reqt.rb +91 -85
- data/lib/isodoc/function/to_word_html.rb +1 -0
- data/lib/isodoc/presentation_function/inline.rb +1 -1
- data/lib/isodoc/version.rb +1 -1
- data/spec/assets/outputtest/iso.international-standard.xsl +2 -2
- data/spec/isodoc/blocks_spec.rb +31 -0
- data/spec/isodoc/inline_spec.rb +19 -37
- data/spec/isodoc/postproc_spec.rb +2 -2
- metadata +2 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 69357a32a0ea52a4575c37f79a94d8c0108a9a2f84654ce4dcbd58a472020b80
         | 
| 4 | 
            +
              data.tar.gz: 02605ddddc513099f73d724c0afffe084cbd6de3ad13cf4267d23772697f839d
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 4b35bc0f9b1fda5a62971decf1106655c8b7170dde78a8609b93cfeeafa800feceba3575fb4ed220eb117bf763d04de43786ea6843182bfda1b41b4fc271ae90
         | 
| 7 | 
            +
              data.tar.gz: 9a904c7285684c64b387654397d29a64db4e24604e68bb7a07a5c86c853eb89607b515aa47a8f59f5d6c4e08b0ffcf5f9381ae95e8a219060edd0c021cbe822a
         | 
    
        data/lib/isodoc/css.rb
    CHANGED
    
    | @@ -39,7 +39,7 @@ module IsoDoc | |
| 39 39 | 
             
                  {
         | 
| 40 40 | 
             
                    bodyfont: "Arial",
         | 
| 41 41 | 
             
                    headerfont: "Arial",
         | 
| 42 | 
            -
                    monospacefont: "Courier",
         | 
| 42 | 
            +
                    monospacefont: "Courier New",
         | 
| 43 43 | 
             
                  }
         | 
| 44 44 | 
             
                end
         | 
| 45 45 |  | 
| @@ -53,7 +53,7 @@ module IsoDoc | |
| 53 53 | 
             
                  {
         | 
| 54 54 | 
             
                    "bodyfont" => options[:bodyfont] || "Arial",
         | 
| 55 55 | 
             
                    "headerfont" => options[:headerfont] || "Arial",
         | 
| 56 | 
            -
                    "monospacefont" => options[:monospacefont] || "Courier",
         | 
| 56 | 
            +
                    "monospacefont" => options[:monospacefont] || "Courier New",
         | 
| 57 57 | 
             
                    "normalfontsize" => options[:normalfontsize],
         | 
| 58 58 | 
             
                    "monospacefontsize" => options[:monospacefontsize],
         | 
| 59 59 | 
             
                    "smallerfontsize" => options[:smallerfontsize],
         | 
| @@ -64,7 +64,7 @@ module IsoDoc | |
| 64 64 | 
             
                def scss_fontheader(is_html_css)
         | 
| 65 65 | 
             
                  b = options[:bodyfont] || "Arial"
         | 
| 66 66 | 
             
                  h = options[:headerfont] || "Arial"
         | 
| 67 | 
            -
                  m = options[:monospacefont] || "Courier"
         | 
| 67 | 
            +
                  m = options[:monospacefont] || "Courier New"
         | 
| 68 68 | 
             
                  ns = options[:normalfontsize] || (is_html_css ? "1.0em" : "12.0pt")
         | 
| 69 69 | 
             
                  ms = options[:monospacefontsize] || (is_html_css ? "0.8em" : "11.0pt")
         | 
| 70 70 | 
             
                  ss = options[:smallerfontsize] || (is_html_css ? "0.9em" : "10.0pt")
         | 
    
        data/lib/isodoc/function/reqt.rb
    CHANGED
    
    | @@ -1,115 +1,121 @@ | |
| 1 | 
            -
            module IsoDoc | 
| 2 | 
            -
              module  | 
| 3 | 
            -
                 | 
| 4 | 
            -
                   | 
| 5 | 
            -
             | 
| 1 | 
            +
            module IsoDoc
         | 
| 2 | 
            +
              module Function
         | 
| 3 | 
            +
                module Blocks
         | 
| 4 | 
            +
                  def recommendation_labels(node)
         | 
| 5 | 
            +
                    [node.at(ns("./label")), node.at(ns("./title")), node.at(ns("./name"))]
         | 
| 6 | 
            +
                  end
         | 
| 6 7 |  | 
| 7 | 
            -
             | 
| 8 | 
            -
             | 
| 9 | 
            -
             | 
| 10 | 
            -
             | 
| 11 | 
            -
             | 
| 12 | 
            -
             | 
| 13 | 
            -
             | 
| 14 | 
            -
             | 
| 15 | 
            -
             | 
| 16 | 
            -
             | 
| 8 | 
            +
                  def recommendation_name(node, out, _type)
         | 
| 9 | 
            +
                    label, title, lbl = recommendation_labels(node)
         | 
| 10 | 
            +
                    out.p **{ class: "RecommendationTitle" } do |b|
         | 
| 11 | 
            +
                      lbl&.children&.each { |n| parse(n, b) }
         | 
| 12 | 
            +
                      b << l10n(":")
         | 
| 13 | 
            +
                      if label || title
         | 
| 14 | 
            +
                        b.br
         | 
| 15 | 
            +
                        label&.children&.each { |n| parse(n, b) }
         | 
| 16 | 
            +
                        b << "#{clausedelim} " if label && title
         | 
| 17 | 
            +
                        title&.children&.each { |n| parse(n, b) }
         | 
| 18 | 
            +
                      end
         | 
| 17 19 | 
             
                    end
         | 
| 18 20 | 
             
                  end
         | 
| 19 | 
            -
                end
         | 
| 20 21 |  | 
| 21 | 
            -
             | 
| 22 | 
            -
             | 
| 23 | 
            -
             | 
| 24 | 
            -
             | 
| 25 | 
            -
             | 
| 26 | 
            -
             | 
| 27 | 
            -
             | 
| 28 | 
            -
                     | 
| 22 | 
            +
                  def recommendation_attributes1(node)
         | 
| 23 | 
            +
                    out = []
         | 
| 24 | 
            +
                    oblig = node["obligation"] and
         | 
| 25 | 
            +
                      out << l10n("#{@i18n.obligation}: #{oblig}")
         | 
| 26 | 
            +
                    node.xpath(ns("./subject")).each do |subj|
         | 
| 27 | 
            +
                      out << l10n("#{@i18n.subject}: #{subj.text}")
         | 
| 28 | 
            +
                    end
         | 
| 29 | 
            +
                    node.xpath(ns("./inherit")).each do |i|
         | 
| 30 | 
            +
                      out << recommendation_attr_parse(i, @i18n.inherits)
         | 
| 31 | 
            +
                    end
         | 
| 32 | 
            +
                    node.xpath(ns("./classification")).each do |c|
         | 
| 33 | 
            +
                      line = recommendation_attr_keyvalue(c, "tag", "value") and out << line
         | 
| 34 | 
            +
                    end
         | 
| 35 | 
            +
                    out
         | 
| 29 36 | 
             
                  end
         | 
| 30 | 
            -
             | 
| 31 | 
            -
             | 
| 37 | 
            +
             | 
| 38 | 
            +
                  def recommendation_attr_parse(node, label)
         | 
| 39 | 
            +
                    noko do |xml|
         | 
| 40 | 
            +
                      xml << "#{label}: "
         | 
| 41 | 
            +
                      node.children.each { |n| parse(n, xml) }
         | 
| 42 | 
            +
                    end.join
         | 
| 32 43 | 
             
                  end
         | 
| 33 | 
            -
                  out
         | 
| 34 | 
            -
                end
         | 
| 35 44 |  | 
| 36 | 
            -
             | 
| 37 | 
            -
             | 
| 38 | 
            -
                     | 
| 39 | 
            -
                     | 
| 40 | 
            -
                  end | 
| 41 | 
            -
                end
         | 
| 45 | 
            +
                  def recommendation_attr_keyvalue(node, key, value)
         | 
| 46 | 
            +
                    tag = node.at(ns("./#{key}")) or return nil
         | 
| 47 | 
            +
                    value = node.at(ns("./#{value}")) or return nil
         | 
| 48 | 
            +
                    "#{tag.text.capitalize}: #{value.text}"
         | 
| 49 | 
            +
                  end
         | 
| 42 50 |  | 
| 43 | 
            -
             | 
| 44 | 
            -
             | 
| 45 | 
            -
             | 
| 46 | 
            -
                  "#{tag.text.capitalize}: #{value.text}"
         | 
| 47 | 
            -
                end
         | 
| 51 | 
            +
                  def recommendation_attributes(node, out)
         | 
| 52 | 
            +
                    ret = recommendation_attributes1(node)
         | 
| 53 | 
            +
                    return if ret.empty?
         | 
| 48 54 |  | 
| 49 | 
            -
             | 
| 50 | 
            -
             | 
| 51 | 
            -
             | 
| 52 | 
            -
             | 
| 53 | 
            -
                    p.i do |i|
         | 
| 54 | 
            -
                      i << ret.join("<br/>")
         | 
| 55 | 
            +
                    out.p do |p|
         | 
| 56 | 
            +
                      p.i do |i|
         | 
| 57 | 
            +
                        i << ret.join("<br/>")
         | 
| 58 | 
            +
                      end
         | 
| 55 59 | 
             
                    end
         | 
| 56 60 | 
             
                  end
         | 
| 57 | 
            -
                end
         | 
| 58 61 |  | 
| 59 | 
            -
             | 
| 60 | 
            -
             | 
| 61 | 
            -
             | 
| 62 | 
            -
             | 
| 62 | 
            +
                  def reqt_metadata_node(node)
         | 
| 63 | 
            +
                    %w(label title subject classification tag value
         | 
| 64 | 
            +
                       inherit name).include? node.name
         | 
| 65 | 
            +
                  end
         | 
| 63 66 |  | 
| 64 | 
            -
             | 
| 65 | 
            -
             | 
| 66 | 
            -
             | 
| 67 | 
            +
                  def reqt_attrs(node, klass)
         | 
| 68 | 
            +
                    attr_code(class: klass, id: node["id"], style: keep_style(node))
         | 
| 69 | 
            +
                  end
         | 
| 67 70 |  | 
| 68 | 
            -
             | 
| 69 | 
            -
             | 
| 70 | 
            -
             | 
| 71 | 
            -
             | 
| 72 | 
            -
             | 
| 73 | 
            -
             | 
| 71 | 
            +
                  def recommendation_parse(node, out)
         | 
| 72 | 
            +
                    out.div **reqt_attrs(node, "recommend") do |t|
         | 
| 73 | 
            +
                      recommendation_name(node, t, @i18n.recommendation)
         | 
| 74 | 
            +
                      recommendation_attributes(node, out)
         | 
| 75 | 
            +
                      node.children.each do |n|
         | 
| 76 | 
            +
                        parse(n, t) unless reqt_metadata_node(n)
         | 
| 77 | 
            +
                      end
         | 
| 74 78 | 
             
                    end
         | 
| 75 79 | 
             
                  end
         | 
| 76 | 
            -
                end
         | 
| 77 80 |  | 
| 78 | 
            -
             | 
| 79 | 
            -
             | 
| 80 | 
            -
             | 
| 81 | 
            -
             | 
| 82 | 
            -
             | 
| 83 | 
            -
             | 
| 81 | 
            +
                  def requirement_parse(node, out)
         | 
| 82 | 
            +
                    out.div **reqt_attrs(node, "require") do |t|
         | 
| 83 | 
            +
                      recommendation_name(node, t, @i18n.requirement)
         | 
| 84 | 
            +
                      recommendation_attributes(node, out)
         | 
| 85 | 
            +
                      node.children.each do |n|
         | 
| 86 | 
            +
                        parse(n, t) unless reqt_metadata_node(n)
         | 
| 87 | 
            +
                      end
         | 
| 84 88 | 
             
                    end
         | 
| 85 89 | 
             
                  end
         | 
| 86 | 
            -
                end
         | 
| 87 90 |  | 
| 88 | 
            -
             | 
| 89 | 
            -
             | 
| 90 | 
            -
             | 
| 91 | 
            -
             | 
| 92 | 
            -
             | 
| 93 | 
            -
             | 
| 91 | 
            +
                  def permission_parse(node, out)
         | 
| 92 | 
            +
                    out.div **reqt_attrs(node, "permission") do |t|
         | 
| 93 | 
            +
                      recommendation_name(node, t, @i18n.permission)
         | 
| 94 | 
            +
                      recommendation_attributes(node, out)
         | 
| 95 | 
            +
                      node.children.each do |n|
         | 
| 96 | 
            +
                        parse(n, t) unless reqt_metadata_node(n)
         | 
| 97 | 
            +
                      end
         | 
| 94 98 | 
             
                    end
         | 
| 95 99 | 
             
                  end
         | 
| 96 | 
            -
                end
         | 
| 97 100 |  | 
| 98 | 
            -
             | 
| 99 | 
            -
             | 
| 100 | 
            -
             | 
| 101 | 
            -
             | 
| 101 | 
            +
                  def reqt_component_attrs(node)
         | 
| 102 | 
            +
                    klass = node.name
         | 
| 103 | 
            +
                    klass == "component" and klass = node["class"]
         | 
| 104 | 
            +
                    attr_code(class: "requirement-#{klass}",
         | 
| 105 | 
            +
                              style: keep_style(node))
         | 
| 106 | 
            +
                  end
         | 
| 102 107 |  | 
| 103 | 
            -
             | 
| 104 | 
            -
             | 
| 105 | 
            -
             | 
| 106 | 
            -
                     | 
| 107 | 
            -
                       | 
| 108 | 
            +
                  def requirement_component_parse(node, out)
         | 
| 109 | 
            +
                    return if node["exclude"] == "true"
         | 
| 110 | 
            +
             | 
| 111 | 
            +
                    out.div **reqt_component_attrs(node) do |div|
         | 
| 112 | 
            +
                      node.children.each do |n|
         | 
| 113 | 
            +
                        parse(n, div)
         | 
| 114 | 
            +
                      end
         | 
| 108 115 | 
             
                    end
         | 
| 109 116 | 
             
                  end
         | 
| 110 | 
            -
                end
         | 
| 111 117 |  | 
| 112 | 
            -
             | 
| 118 | 
            +
                  def requirement_skip_parse(node, out); end
         | 
| 113 119 | 
             
                end
         | 
| 114 120 | 
             
              end
         | 
| 115 121 | 
             
            end
         | 
| @@ -212,6 +212,7 @@ module IsoDoc | |
| 212 212 | 
             
                      when "measurement-target" then requirement_component_parse(node, out)
         | 
| 213 213 | 
             
                      when "verification" then requirement_component_parse(node, out)
         | 
| 214 214 | 
             
                      when "import" then requirement_component_parse(node, out)
         | 
| 215 | 
            +
                      when "component" then requirement_component_parse(node, out)
         | 
| 215 216 | 
             
                      when "index" then index_parse(node, out)
         | 
| 216 217 | 
             
                      when "index-xref" then index_xref_parse(node, out)
         | 
| 217 218 | 
             
                      when "termref" then termrefelem_parse(node, out)
         | 
| @@ -172,7 +172,7 @@ module IsoDoc | |
| 172 172 | 
             
                def concept_render(node, ital, ref)
         | 
| 173 173 | 
             
                  node&.at(ns("./refterm"))&.remove
         | 
| 174 174 | 
             
                  r = node.at(ns("./renderterm"))
         | 
| 175 | 
            -
                  r&.next = " "
         | 
| 175 | 
            +
                  r&.next = " " if node.at(ns("./xref | ./eref | ./termref")) && ref != "false"
         | 
| 176 176 | 
             
                  if ital == "true" then r&.name = "em"
         | 
| 177 177 | 
             
                  else r&.replace(r&.children)
         | 
| 178 178 | 
             
                  end
         | 
    
        data/lib/isodoc/version.rb
    CHANGED
    
    
| @@ -1436,7 +1436,7 @@ | |
| 1436 1436 | 
             
            	</xsl:template>
         | 
| 1437 1437 |  | 
| 1438 1438 | 
             
            	<xsl:template match="iso:sourcecode">
         | 
| 1439 | 
            -
            		<fo:block font-family="Courier" font-size="9pt" margin-bottom="12pt">
         | 
| 1439 | 
            +
            		<fo:block font-family="Courier New" font-size="9pt" margin-bottom="12pt">
         | 
| 1440 1440 | 
             
            			<xsl:choose>
         | 
| 1441 1441 | 
             
            				<xsl:when test="@lang = 'en'"/>
         | 
| 1442 1442 | 
             
            				<xsl:otherwise>
         | 
| @@ -2760,7 +2760,7 @@ | |
| 2760 2760 | 
             
            			<xsl:apply-templates/>
         | 
| 2761 2761 | 
             
            		</fo:inline>
         | 
| 2762 2762 | 
             
            	</xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='tt']">
         | 
| 2763 | 
            -
            		<fo:inline font-family="Courier" font-size="10pt">
         | 
| 2763 | 
            +
            		<fo:inline font-family="Courier New" font-size="10pt">
         | 
| 2764 2764 | 
             
            			<xsl:apply-templates/>
         | 
| 2765 2765 | 
             
            		</fo:inline>
         | 
| 2766 2766 | 
             
            	</xsl:template><xsl:template xmlns:iec="http://riboseinc.com/isoxml" xmlns:itu="https://open.ribose.com/standards/itu" xmlns:nist="http://www.nist.gov/metanorma" xmlns:un="https://open.ribose.com/standards/unece" xmlns:csd="https://www.calconnect.org/standards/csd" match="*[local-name()='del']">
         | 
    
        data/spec/isodoc/blocks_spec.rb
    CHANGED
    
    | @@ -1572,6 +1572,7 @@ RSpec.describe IsoDoc do | |
| 1572 1572 | 
             
                    <inherit>/ss/584/2015/level/1</inherit>
         | 
| 1573 1573 | 
             
                    <inherit><eref type="inline" bibitemid="rfc2616" citeas="RFC 2616">RFC 2616 (HTTP/1.1)</eref></inherit>
         | 
| 1574 1574 | 
             
                    <subject>user</subject>
         | 
| 1575 | 
            +
                    <subject>non-user</subject>
         | 
| 1575 1576 | 
             
                    <classification> <tag>control-class</tag> <value>Technical</value> </classification><classification> <tag>priority</tag> <value>P0</value> </classification><classification> <tag>family</tag> <value>System and Communications Protection</value> </classification><classification> <tag>family</tag> <value>System and Communications Protocols</value> </classification>
         | 
| 1576 1577 | 
             
                    <description>
         | 
| 1577 1578 | 
             
                      <p id="_">I recommend <em>this</em>.</p>
         | 
| @@ -1611,6 +1612,9 @@ RSpec.describe IsoDoc do | |
| 1611 1612 | 
             
                    <import exclude="true">
         | 
| 1612 1613 | 
             
                      <sourcecode id="_">success-response()</sourcecode>
         | 
| 1613 1614 | 
             
                    </import>
         | 
| 1615 | 
            +
                    <component exclude='false' class='component1'>
         | 
| 1616 | 
            +
                              <p id='_'>Hello</p>
         | 
| 1617 | 
            +
                            </component>
         | 
| 1614 1618 | 
             
                  </permission>
         | 
| 1615 1619 | 
             
                      </foreword></preface>
         | 
| 1616 1620 | 
             
                      <bibliography><references id="_bibliography" obligation="informative" normative="false" displayorder="2">
         | 
| @@ -1628,6 +1632,7 @@ RSpec.describe IsoDoc do | |
| 1628 1632 | 
             
                    <inherit>/ss/584/2015/level/1</inherit>
         | 
| 1629 1633 | 
             
                    <inherit><eref type="inline" bibitemid="rfc2616" citeas="RFC 2616">RFC 2616 (HTTP/1.1)</eref></inherit>
         | 
| 1630 1634 | 
             
                    <subject>user</subject>
         | 
| 1635 | 
            +
                    <subject>non-user</subject>
         | 
| 1631 1636 | 
             
                    <classification> <tag>control-class</tag> <value>Technical</value> </classification><classification> <tag>priority</tag> <value>P0</value> </classification><classification> <tag>family</tag> <value>System and Communications Protection</value> </classification><classification> <tag>family</tag> <value>System and Communications Protocols</value> </classification>
         | 
| 1632 1637 | 
             
                    <description>
         | 
| 1633 1638 | 
             
                      <p id="_">I recommend <em>this</em>.</p>
         | 
| @@ -1668,6 +1673,9 @@ RSpec.describe IsoDoc do | |
| 1668 1673 | 
             
                    <import exclude="true">
         | 
| 1669 1674 | 
             
                      <sourcecode id="_">success-response()</sourcecode>
         | 
| 1670 1675 | 
             
                    </import>
         | 
| 1676 | 
            +
                    <component exclude='false' class='component1'>
         | 
| 1677 | 
            +
                              <p id='_'>Hello</p>
         | 
| 1678 | 
            +
                            </component>
         | 
| 1671 1679 | 
             
                  </permission>
         | 
| 1672 1680 | 
             
                      </foreword></preface>
         | 
| 1673 1681 | 
             
                      <bibliography><references id="_bibliography" obligation="informative" normative="false"  displayorder='2'>
         | 
| @@ -1684,6 +1692,7 @@ RSpec.describe IsoDoc do | |
| 1684 1692 | 
             
                                <div class="permission" id='_' style='page-break-after: avoid;page-break-inside: avoid;'>
         | 
| 1685 1693 | 
             
                                <p class="RecommendationTitle">Permission 1:<br/>/ogc/recommendation/wfs/2</p>
         | 
| 1686 1694 | 
             
                                <p><i>Subject: user<br/>
         | 
| 1695 | 
            +
                                Subject: non-user<br/>
         | 
| 1687 1696 | 
             
                        Inherits: /ss/584/2015/level/1
         | 
| 1688 1697 | 
             
                        <br/>
         | 
| 1689 1698 | 
             
                        Inherits: <a href='#rfc2616'>RFC 2616 (HTTP/1.1)</a>
         | 
| @@ -1702,6 +1711,7 @@ RSpec.describe IsoDoc do | |
| 1702 1711 | 
             
                            <p id="_">The following code will be run for verification:</p>
         | 
| 1703 1712 | 
             
                            <pre id="_" class="prettyprint ">CoreRoot(success): HttpResponse<br/>      if (success)<br/>      recommendation(label: success-response)<br/>      end<br/>    </pre>
         | 
| 1704 1713 | 
             
                          </div>
         | 
| 1714 | 
            +
                          <div class='requirement-component1'> <p id='_'>Hello</p> </div>
         | 
| 1705 1715 | 
             
                        </div>
         | 
| 1706 1716 | 
             
                              </div>
         | 
| 1707 1717 | 
             
                              <p class="zzSTDTitle1"/>
         | 
| @@ -1770,6 +1780,9 @@ RSpec.describe IsoDoc do | |
| 1770 1780 | 
             
                    <import exclude="true">
         | 
| 1771 1781 | 
             
                      <sourcecode id="_">success-response()</sourcecode>
         | 
| 1772 1782 | 
             
                    </import>
         | 
| 1783 | 
            +
                    <component exclude='false' class='component1'>
         | 
| 1784 | 
            +
                              <p id='_'>Hello</p>
         | 
| 1785 | 
            +
                            </component>
         | 
| 1773 1786 | 
             
                  </requirement>
         | 
| 1774 1787 | 
             
                      </foreword></preface>
         | 
| 1775 1788 | 
             
                      </iso-standard>
         | 
| @@ -1824,6 +1837,9 @@ RSpec.describe IsoDoc do | |
| 1824 1837 | 
             
                            <import exclude='true'>
         | 
| 1825 1838 | 
             
                              <sourcecode id='_'>success-response()</sourcecode>
         | 
| 1826 1839 | 
             
                            </import>
         | 
| 1840 | 
            +
                            <component exclude='false' class='component1'>
         | 
| 1841 | 
            +
                              <p id='_'>Hello</p>
         | 
| 1842 | 
            +
                            </component>
         | 
| 1827 1843 | 
             
                          </requirement>
         | 
| 1828 1844 | 
             
                        </foreword>
         | 
| 1829 1845 | 
             
                      </preface>
         | 
| @@ -1851,6 +1867,7 @@ RSpec.describe IsoDoc do | |
| 1851 1867 | 
             
                                <p id="_">The following code will be run for verification:</p>
         | 
| 1852 1868 | 
             
                                <pre id="_" class="prettyprint ">CoreRoot(success): HttpResponse<br/>      if (success)<br/>      recommendation(label: success-response)<br/>      end<br/>    </pre>
         | 
| 1853 1869 | 
             
                              </div>
         | 
| 1870 | 
            +
                          <div class='requirement-component1'> <p id='_'>Hello</p> </div>
         | 
| 1854 1871 | 
             
                            </div>
         | 
| 1855 1872 | 
             
                                  </div>
         | 
| 1856 1873 | 
             
                                  <p class="zzSTDTitle1"/>
         | 
| @@ -1915,6 +1932,9 @@ RSpec.describe IsoDoc do | |
| 1915 1932 | 
             
                    <import exclude="true">
         | 
| 1916 1933 | 
             
                      <sourcecode id="_">success-response()</sourcecode>
         | 
| 1917 1934 | 
             
                    </import>
         | 
| 1935 | 
            +
                    <component exclude='false' class='component1'>
         | 
| 1936 | 
            +
                              <p id='_'>Hello</p>
         | 
| 1937 | 
            +
                            </component>
         | 
| 1918 1938 | 
             
                  </requirement>
         | 
| 1919 1939 | 
             
                      </foreword></preface>
         | 
| 1920 1940 | 
             
                      </iso-standard>
         | 
| @@ -1970,6 +1990,9 @@ RSpec.describe IsoDoc do | |
| 1970 1990 | 
             
                           <import exclude="true">
         | 
| 1971 1991 | 
             
                             <sourcecode id="_">success-response()</sourcecode>
         | 
| 1972 1992 | 
             
                           </import>
         | 
| 1993 | 
            +
                           <component exclude='false' class='component1'>
         | 
| 1994 | 
            +
                              <p id='_'>Hello</p>
         | 
| 1995 | 
            +
                            </component>
         | 
| 1973 1996 | 
             
                         </requirement>
         | 
| 1974 1997 | 
             
                             </foreword></preface>
         | 
| 1975 1998 | 
             
                             </iso-standard>
         | 
| @@ -2026,6 +2049,7 @@ RSpec.describe IsoDoc do | |
| 2026 2049 | 
             
                                           <br/>
         | 
| 2027 2050 | 
             
                                         </pre>
         | 
| 2028 2051 | 
             
                                       </div>
         | 
| 2052 | 
            +
                                      <div class='requirement-component1'> <p id='_'>Hello</p> </div>
         | 
| 2029 2053 | 
             
                                     </div>
         | 
| 2030 2054 | 
             
                                   </div>
         | 
| 2031 2055 | 
             
                                   <p class='zzSTDTitle1'/>
         | 
| @@ -2089,6 +2113,9 @@ RSpec.describe IsoDoc do | |
| 2089 2113 | 
             
                    <import exclude="true">
         | 
| 2090 2114 | 
             
                      <sourcecode id="_">success-response()</sourcecode>
         | 
| 2091 2115 | 
             
                    </import>
         | 
| 2116 | 
            +
                    <component exclude='false' class='component1'>
         | 
| 2117 | 
            +
                              <p id='_'>Hello</p>
         | 
| 2118 | 
            +
                            </component>
         | 
| 2092 2119 | 
             
                  </recommendation>
         | 
| 2093 2120 | 
             
                      </foreword></preface>
         | 
| 2094 2121 | 
             
                      </iso-standard>
         | 
| @@ -2151,6 +2178,9 @@ RSpec.describe IsoDoc do | |
| 2151 2178 | 
             
                             <import exclude='true'>
         | 
| 2152 2179 | 
             
                               <sourcecode id='_'>success-response()</sourcecode>
         | 
| 2153 2180 | 
             
                             </import>
         | 
| 2181 | 
            +
                             <component exclude='false' class='component1'>
         | 
| 2182 | 
            +
                              <p id='_'>Hello</p>
         | 
| 2183 | 
            +
                            </component>
         | 
| 2154 2184 | 
             
                           </recommendation>
         | 
| 2155 2185 | 
             
                         </foreword>
         | 
| 2156 2186 | 
             
                       </preface>
         | 
| @@ -2178,6 +2208,7 @@ RSpec.describe IsoDoc do | |
| 2178 2208 | 
             
                                <p id="_">The following code will be run for verification:</p>
         | 
| 2179 2209 | 
             
                                <pre id="_" class="prettyprint ">CoreRoot(success): HttpResponse<br/>      if (success)<br/>      recommendation(label: success-response)<br/>      end<br/>    </pre>
         | 
| 2180 2210 | 
             
                              </div>
         | 
| 2211 | 
            +
                                      <div class='requirement-component1'> <p id='_'>Hello</p> </div>
         | 
| 2181 2212 | 
             
                            </div>
         | 
| 2182 2213 | 
             
                                  </div>
         | 
| 2183 2214 | 
             
                                  <p class="zzSTDTitle1"/>
         | 
    
        data/spec/isodoc/inline_spec.rb
    CHANGED
    
    | @@ -419,30 +419,12 @@ RSpec.describe IsoDoc do | |
| 419 419 | 
             
                   <p>
         | 
| 420 420 | 
             
                   <ul>
         | 
| 421 421 | 
             
                   <li>
         | 
| 422 | 
            -
                   <concept ital="true"><refterm>term</refterm>
         | 
| 423 | 
            -
             | 
| 424 | 
            -
             | 
| 425 | 
            -
             | 
| 426 | 
            -
                     <li><concept ref=" | 
| 427 | 
            -
             | 
| 428 | 
            -
                       <xref target='clause1'/>
         | 
| 429 | 
            -
                     </concept></li>
         | 
| 430 | 
            -
                   <li><concept ital="true" ref="true"><refterm>term</refterm>
         | 
| 431 | 
            -
                       <renderterm>term</renderterm>
         | 
| 432 | 
            -
                       <xref target='clause1'/>
         | 
| 433 | 
            -
                     </concept></li>
         | 
| 434 | 
            -
                    <li><concept ital="false"><refterm>term</refterm>
         | 
| 435 | 
            -
                       <renderterm>term</renderterm>
         | 
| 436 | 
            -
                       <xref target='clause1'/>
         | 
| 437 | 
            -
                     </concept></li>
         | 
| 438 | 
            -
                     <li><concept ref="false"><refterm>term</refterm>
         | 
| 439 | 
            -
                       <renderterm>term</renderterm>
         | 
| 440 | 
            -
                       <xref target='clause1'/>
         | 
| 441 | 
            -
                     </concept></li>
         | 
| 442 | 
            -
                   <li><concept ital="false" ref="false"><refterm>term</refterm>
         | 
| 443 | 
            -
                       <renderterm>term</renderterm>
         | 
| 444 | 
            -
                       <xref target='clause1'/>
         | 
| 445 | 
            -
                     </concept></li>
         | 
| 422 | 
            +
                   <concept ital="true"><refterm>term</refterm><renderterm>term</renderterm><xref target='clause1'/></concept>,</li>
         | 
| 423 | 
            +
                     <li><concept ref="true"><refterm>term</refterm><renderterm>term</renderterm><xref target='clause1'/></concept>,</li>
         | 
| 424 | 
            +
                   <li><concept ital="true" ref="true"><refterm>term</refterm><renderterm>term</renderterm><xref target='clause1'/></concept>,</li>
         | 
| 425 | 
            +
                    <li><concept ital="false"><refterm>term</refterm><renderterm>term</renderterm><xref target='clause1'/></concept>,</li>
         | 
| 426 | 
            +
                     <li><concept ref="false"><refterm>term</refterm><renderterm>term</renderterm><xref target='clause1'/></concept>,</li>
         | 
| 427 | 
            +
                   <li><concept ital="false" ref="false"><refterm>term</refterm><renderterm>term</renderterm><xref target='clause1'/></concept>,</li>
         | 
| 446 428 | 
             
                    </ul></p>
         | 
| 447 429 | 
             
                     </foreword></preface>
         | 
| 448 430 | 
             
                   <sections>
         | 
| @@ -458,26 +440,26 @@ RSpec.describe IsoDoc do | |
| 458 440 | 
             
                    <li>
         | 
| 459 441 |  | 
| 460 442 | 
             
                        <em>term</em>
         | 
| 461 | 
            -
                        [term defined in <xref target="clause1">Clause 1</xref>]
         | 
| 443 | 
            +
                        [term defined in <xref target="clause1">Clause 1</xref>],
         | 
| 462 444 | 
             
                      </li>
         | 
| 463 445 | 
             
                      <li>
         | 
| 464 446 | 
             
                        <em>term</em>
         | 
| 465 | 
            -
                        [term defined in <xref target="clause1">Clause 1</xref>]
         | 
| 447 | 
            +
                        [term defined in <xref target="clause1">Clause 1</xref>],
         | 
| 466 448 | 
             
                      </li>
         | 
| 467 449 | 
             
                    <li>
         | 
| 468 450 | 
             
                        <em>term</em>
         | 
| 469 | 
            -
                        [term defined in <xref target="clause1">Clause 1</xref>]
         | 
| 451 | 
            +
                        [term defined in <xref target="clause1">Clause 1</xref>],
         | 
| 470 452 | 
             
                      </li>
         | 
| 471 453 | 
             
                     <li>
         | 
| 472 454 | 
             
                        term
         | 
| 473 | 
            -
                        [term defined in <xref target="clause1">Clause 1</xref>]
         | 
| 455 | 
            +
                        [term defined in <xref target="clause1">Clause 1</xref>],
         | 
| 474 456 | 
             
                      </li>
         | 
| 475 457 | 
             
                      <li>
         | 
| 476 | 
            -
                        <em>term</em | 
| 458 | 
            +
                        <em>term</em>,
         | 
| 477 459 |  | 
| 478 460 | 
             
                      </li>
         | 
| 479 461 | 
             
                    <li>
         | 
| 480 | 
            -
                        term
         | 
| 462 | 
            +
                        term,
         | 
| 481 463 |  | 
| 482 464 | 
             
                      </li>
         | 
| 483 465 | 
             
                     </ul></p>
         | 
| @@ -498,29 +480,29 @@ RSpec.describe IsoDoc do | |
| 498 480 | 
             
                                 <i>term</i>
         | 
| 499 481 | 
             
                                  [term defined in
         | 
| 500 482 | 
             
                                 <a href='#clause1'>Clause 1</a>
         | 
| 501 | 
            -
                                 ]
         | 
| 483 | 
            +
                                 ],
         | 
| 502 484 | 
             
                               </li>
         | 
| 503 485 | 
             
                               <li>
         | 
| 504 486 | 
             
                                 <i>term</i>
         | 
| 505 487 | 
             
                                  [term defined in
         | 
| 506 488 | 
             
                                 <a href='#clause1'>Clause 1</a>
         | 
| 507 | 
            -
                                 ]
         | 
| 489 | 
            +
                                 ],
         | 
| 508 490 | 
             
                               </li>
         | 
| 509 491 | 
             
                               <li>
         | 
| 510 492 | 
             
                                 <i>term</i>
         | 
| 511 493 | 
             
                                  [term defined in
         | 
| 512 494 | 
             
                                 <a href='#clause1'>Clause 1</a>
         | 
| 513 | 
            -
                                 ]
         | 
| 495 | 
            +
                                 ],
         | 
| 514 496 | 
             
                               </li>
         | 
| 515 497 | 
             
                               <li>
         | 
| 516 498 | 
             
                                  term [term defined in
         | 
| 517 499 | 
             
                                 <a href='#clause1'>Clause 1</a>
         | 
| 518 | 
            -
                                 ]
         | 
| 500 | 
            +
                                 ],
         | 
| 519 501 | 
             
                               </li>
         | 
| 520 502 | 
             
                               <li>
         | 
| 521 | 
            -
                                 <i>term</i | 
| 503 | 
            +
                                 <i>term</i>,
         | 
| 522 504 | 
             
                               </li>
         | 
| 523 | 
            -
                               <li> | 
| 505 | 
            +
                               <li>term,</li>
         | 
| 524 506 | 
             
                             </ul>
         | 
| 525 507 | 
             
                           </p>
         | 
| 526 508 | 
             
                         </div>
         | 
| @@ -532,7 +514,7 @@ RSpec.describe IsoDoc do | |
| 532 514 | 
             
                     </body>
         | 
| 533 515 | 
             
                   </html>
         | 
| 534 516 | 
             
                OUTPUT
         | 
| 535 | 
            -
                expect( | 
| 517 | 
            +
                expect((IsoDoc::PresentationXMLConvert.new({})
         | 
| 536 518 | 
             
                  .convert("test", input, true))).to be_equivalent_to xmlpp(presxml)
         | 
| 537 519 | 
             
                expect(xmlpp(IsoDoc::HtmlConvert.new({})
         | 
| 538 520 | 
             
                  .convert("test", presxml, true))).to be_equivalent_to xmlpp(output)
         | 
| @@ -245,7 +245,7 @@ RSpec.describe IsoDoc do | |
| 245 245 | 
             
                html = File.read("test.html")
         | 
| 246 246 | 
             
                expect(html).to match(/another empty stylesheet/)
         | 
| 247 247 | 
             
                expect(html).to match(/p \{[^}]*?font-family: Arial/m)
         | 
| 248 | 
            -
                expect(html).to match(/code \{[^}]*?font-family: Courier/m)
         | 
| 248 | 
            +
                expect(html).to match(/code \{[^}]*?font-family: Courier New/m)
         | 
| 249 249 | 
             
                expect(html).to match(/h1 \{[^}]*?font-family: Arial/m)
         | 
| 250 250 | 
             
                expect(html).to match(/p \{[^}]*?font-size: 1em;/m)
         | 
| 251 251 | 
             
                expect(html).to match(/code \{[^}]*?font-size: 0.8em/m)
         | 
| @@ -329,7 +329,7 @@ RSpec.describe IsoDoc do | |
| 329 329 | 
             
                word = File.read("test.doc")
         | 
| 330 330 | 
             
                expect(word).to match(/another empty stylesheet/)
         | 
| 331 331 | 
             
                expect(word).to match(/p \{[^}]*?font-family: Arial/m)
         | 
| 332 | 
            -
                expect(word).to match(/code \{[^}]*?font-family: Courier/m)
         | 
| 332 | 
            +
                expect(word).to match(/code \{[^}]*?font-family: Courier New/m)
         | 
| 333 333 | 
             
                expect(word).to match(/h1 \{[^}]*?font-family: Arial/m)
         | 
| 334 334 | 
             
                expect(word).to match(/p \{[^}]*?font-size: 12pt/m)
         | 
| 335 335 | 
             
                expect(word).to match(/code \{[^}]*?font-size: 11pt/m)
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: isodoc
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 1.7. | 
| 4 | 
            +
              version: 1.7.3
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Ribose Inc.
         | 
| 8 8 | 
             
            autorequire:
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2021-08- | 
| 11 | 
            +
            date: 2021-08-16 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: asciimath
         |