metanorma-document 0.2.7 → 0.2.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.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop_todo.yml +9 -412
  3. data/lib/metanorma/document/components/blocks/note_block.rb +1 -1
  4. data/lib/metanorma/document/components/inline/eref_element.rb +1 -1
  5. data/lib/metanorma/document/components/inline/fn_element.rb +1 -1
  6. data/lib/metanorma/document/components/lists/unordered_list.rb +2 -2
  7. data/lib/metanorma/document/components/multi_paragraph/admonition_block.rb +5 -2
  8. data/lib/metanorma/document/components/paragraphs/paragraph_block.rb +2 -2
  9. data/lib/metanorma/document/version.rb +1 -1
  10. data/lib/metanorma/html/base_renderer.rb +10 -11
  11. data/lib/metanorma/html/generator.rb +15 -22
  12. data/lib/metanorma/html/iso_renderer.rb +24 -1
  13. data/lib/metanorma/ietf_document/sections/ietf_annex_section.rb +1 -1
  14. data/lib/metanorma/ietf_document/sections/ietf_clause_section.rb +1 -1
  15. data/lib/metanorma/ietf_document/sections/ietf_content_section.rb +1 -1
  16. data/lib/metanorma/iso_document/metadata/doc_identifier.rb +1 -1
  17. data/lib/metanorma/iso_document/sections/iso_foreword_section.rb +2 -13
  18. data/lib/metanorma/iso_document/sections/iso_terms_section.rb +7 -16
  19. data/lib/metanorma/iso_document/terms/term_example.rb +2 -1
  20. data/lib/metanorma/iso_document/terms/term_note.rb +2 -1
  21. data/lib/metanorma/iso_document/terms/verbal_definition.rb +2 -1
  22. data/lib/metanorma/iso_document.rb +0 -1
  23. data/lib/metanorma/jis_document/sections/jis_annex_section.rb +1 -1
  24. data/lib/metanorma/standard_document/annotation_container.rb +25 -2
  25. data/lib/metanorma/standard_document/block_attributes.rb +42 -0
  26. data/lib/metanorma/standard_document/blocks/amend_content_block.rb +21 -3
  27. data/lib/metanorma/standard_document/blocks/standard_block_no_notes.rb +2 -2
  28. data/lib/metanorma/standard_document/boilerplate.rb +20 -2
  29. data/lib/metanorma/standard_document/sections/annex_section.rb +8 -36
  30. data/lib/metanorma/standard_document/sections/clause_hierarchical_section.rb +1 -1
  31. data/lib/metanorma/standard_document/sections/clause_section.rb +4 -34
  32. data/lib/metanorma/standard_document/sections/definition_section.rb +15 -21
  33. data/lib/metanorma/standard_document/sections/standard_content_section.rb +3 -22
  34. data/lib/metanorma/standard_document/sections/standard_hierarchical_section.rb +1 -1
  35. data/lib/metanorma/standard_document/sections/standard_references_section.rb +2 -2
  36. data/lib/metanorma/standard_document/sections/standard_section.rb +1 -1
  37. data/lib/metanorma/standard_document/sections/terms_section.rb +6 -16
  38. data/lib/metanorma/standard_document.rb +3 -0
  39. metadata +2 -3
  40. data/lib/metanorma/iso_document/raw_paragraph.rb +0 -23
@@ -11,14 +11,15 @@ module Metanorma
11
11
  # ( BasicBlock*, content-subsection* )
12
12
  class ContentSection < Lutaml::Model::Serializable
13
13
  include Metanorma::StandardDocument::BlockAttributes
14
+ include Metanorma::StandardDocument::PresentationAttributes
14
15
 
15
16
  # Section identity
16
17
  attribute :id, :string
17
18
  attribute :type, :string
18
19
  attribute :number, :string
19
20
  attribute :obligation, :string
20
- attribute :inline_header, :string
21
- attribute :unnumbered, :string
21
+ attribute :inline_header, :boolean
22
+ attribute :unnumbered, :boolean
22
23
  attribute :toc, :string
23
24
  attribute :class_attr, :string
24
25
  attribute :title,
@@ -27,26 +28,6 @@ module Metanorma
27
28
  # Nested content subsections (recursive)
28
29
  attribute :subsection, ContentSection, collection: true
29
30
 
30
- # Presentation-specific attributes
31
- attribute :anchor, :string
32
- attribute :semx_id, :string
33
- attribute :autonum, :string
34
- attribute :displayorder, :integer
35
- attribute :fmt_title,
36
- Metanorma::Document::Components::Inline::FmtTitleElement
37
- attribute :fmt_xref_label,
38
- Metanorma::Document::Components::Inline::FmtXrefLabelElement,
39
- collection: true
40
- attribute :variant_title,
41
- Metanorma::Document::Components::Inline::VariantTitleElement,
42
- collection: true
43
- attribute :fmt_annotation_start,
44
- Metanorma::Document::Components::Inline::FmtAnnotationStartElement,
45
- collection: true
46
- attribute :fmt_annotation_end,
47
- Metanorma::Document::Components::Inline::FmtAnnotationEndElement,
48
- collection: true
49
-
50
31
  xml do
51
32
  element "clause"
52
33
  ordered
@@ -12,7 +12,7 @@ module Metanorma
12
12
  attribute :original_id, :string
13
13
  attribute :autonum, :string
14
14
  attribute :displayorder, :integer
15
- attribute :inline_header, :string
15
+ attribute :inline_header, :boolean
16
16
 
17
17
  xml do
18
18
  element "standard-hierarchical-section"
@@ -17,9 +17,9 @@ module Metanorma
17
17
  # bibliographical references (as modelled in Relaton), along with
18
18
  # any prefatory text.
19
19
  class StandardReferencesSection < Metanorma::StandardDocument::Sections::StandardSection
20
- attribute :normative, :string
20
+ attribute :normative, :boolean
21
21
  attribute :obligation, :string
22
- attribute :hidden, :string
22
+ attribute :hidden, :boolean
23
23
  attribute :references, Metanorma::Document::Components::BibData::BibliographicItem,
24
24
  collection: true
25
25
  attribute :passthrough, Metanorma::StandardDocument::Blocks::Passthrough,
@@ -10,7 +10,7 @@ module Metanorma
10
10
  attribute :amend, Metanorma::StandardDocument::Blocks::AmendBlock
11
11
  attribute :number, :string
12
12
  attribute :branch_number, :string
13
- attribute :unnumbered, :string
13
+ attribute :unnumbered, :boolean
14
14
  attribute :obligation, :string
15
15
 
16
16
  attribute :semx_id, :string
@@ -13,13 +13,14 @@ module Metanorma
13
13
  # term+
14
14
  # }
15
15
  class TermsSection < Lutaml::Model::Serializable
16
+ include Metanorma::StandardDocument::PresentationAttributes
17
+
16
18
  attribute :id, :string
17
- attribute :anchor, :string
18
19
  attribute :type, :string
19
20
  attribute :number, :string
20
21
  attribute :obligation, :string
21
- attribute :inline_header, :string
22
- attribute :unnumbered, :string
22
+ attribute :inline_header, :boolean
23
+ attribute :unnumbered, :boolean
23
24
  attribute :toc, :string
24
25
  attribute :class_attr, :string
25
26
  attribute :title,
@@ -38,19 +39,6 @@ module Metanorma
38
39
  Metanorma::StandardDocument::Terms::Term,
39
40
  collection: true
40
41
 
41
- # Presentation-specific attributes
42
- attribute :semx_id, :string
43
- attribute :autonum, :string
44
- attribute :displayorder, :integer
45
- attribute :fmt_title,
46
- Metanorma::Document::Components::Inline::FmtTitleElement
47
- attribute :fmt_xref_label,
48
- Metanorma::Document::Components::Inline::FmtXrefLabelElement,
49
- collection: true
50
- attribute :variant_title,
51
- Metanorma::Document::Components::Inline::VariantTitleElement,
52
- collection: true
53
-
54
42
  xml do
55
43
  element "terms"
56
44
  ordered
@@ -64,6 +52,8 @@ module Metanorma
64
52
  map_element "p", to: :paragraphs
65
53
  map_element "ul", to: :unordered_lists
66
54
  map_element "term", to: :terms
55
+ map_element "fmt-annotation-start", to: :fmt_annotation_start
56
+ map_element "fmt-annotation-end", to: :fmt_annotation_end
67
57
  end
68
58
  end
69
59
  end
@@ -7,6 +7,9 @@ module Metanorma
7
7
  autoload :BlockAttributes, "metanorma/standard_document/block_attributes"
8
8
  autoload :BlockXmlMapping, "metanorma/standard_document/block_attributes"
9
9
  autoload :SectionXmlMapping, "metanorma/standard_document/block_attributes"
10
+ autoload :PresentationAttributes,
11
+ "metanorma/standard_document/block_attributes"
12
+ autoload :OrderedContent, "metanorma/standard_document/block_attributes"
10
13
  autoload :Blocks, "metanorma/standard_document/blocks"
11
14
  autoload :Boilerplate, "metanorma/standard_document/boilerplate"
12
15
  autoload :Elements, "metanorma/standard_document/elements"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-document
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.7
4
+ version: 0.2.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2026-05-21 00:00:00.000000000 Z
11
+ date: 2026-05-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: lutaml-model
@@ -604,7 +604,6 @@ files:
604
604
  - lib/metanorma/iso_document/metadata/title_main.rb
605
605
  - lib/metanorma/iso_document/metadata/title_part.rb
606
606
  - lib/metanorma/iso_document/metadata/title_part_prefix.rb
607
- - lib/metanorma/iso_document/raw_paragraph.rb
608
607
  - lib/metanorma/iso_document/root.rb
609
608
  - lib/metanorma/iso_document/sections.rb
610
609
  - lib/metanorma/iso_document/sections/colophon.rb
@@ -1,23 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Metanorma
4
- module IsoDocument
5
- # Paragraph with mixed inline content preserved as raw XML.
6
- # Used for contexts where <p> contains inline elements like
7
- # <concept>, <xref>, <em>, <strong>, <stem>, <fn>, <link>.
8
- class RawParagraph < Lutaml::Model::Serializable
9
- attribute :id, :string
10
- attribute :semx_id, :string
11
- attribute :original_id, :string
12
- attribute :content, :string
13
-
14
- xml do
15
- element "p"
16
- map_attribute "id", to: :id
17
- map_attribute "semx-id", to: :semx_id
18
- map_attribute "original-id", to: :original_id
19
- map_all_content to: :content
20
- end
21
- end
22
- end
23
- end