sts 0.5.2 → 0.5.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.
Files changed (197) hide show
  1. checksums.yaml +4 -4
  2. data/.gitmodules +3 -0
  3. data/.rubocop.yml +3 -0
  4. data/.rubocop_todo.yml +17 -3
  5. data/CLAUDE.md +72 -0
  6. data/Gemfile +1 -1
  7. data/lib/sts/content_groups/helpers.rb +27 -0
  8. data/lib/sts/enum_values.rb +17 -0
  9. data/lib/sts/iso_sts/app.rb +26 -1
  10. data/lib/sts/iso_sts/app_group.rb +1 -0
  11. data/lib/sts/iso_sts/array.rb +1 -0
  12. data/lib/sts/iso_sts/back.rb +1 -0
  13. data/lib/sts/iso_sts/body.rb +4 -0
  14. data/lib/sts/iso_sts/bold.rb +23 -11
  15. data/lib/sts/iso_sts/caption.rb +1 -0
  16. data/lib/sts/iso_sts/content_groups/highlight_elements.rb +285 -0
  17. data/lib/sts/iso_sts/def.rb +1 -0
  18. data/lib/sts/iso_sts/def_item.rb +1 -0
  19. data/lib/sts/iso_sts/def_list.rb +1 -0
  20. data/lib/sts/iso_sts/disp_formula.rb +5 -1
  21. data/lib/sts/iso_sts/document_identification.rb +1 -0
  22. data/lib/sts/iso_sts/fig.rb +1 -0
  23. data/lib/sts/iso_sts/fn.rb +1 -0
  24. data/lib/sts/iso_sts/fn_group.rb +1 -0
  25. data/lib/sts/iso_sts/front.rb +3 -0
  26. data/lib/sts/iso_sts/graphic.rb +5 -0
  27. data/lib/sts/iso_sts/inline_formula.rb +1 -1
  28. data/lib/sts/iso_sts/iso_meta.rb +2 -1
  29. data/lib/sts/iso_sts/italic.rb +23 -11
  30. data/lib/sts/iso_sts/list.rb +1 -0
  31. data/lib/sts/iso_sts/list_item.rb +7 -4
  32. data/lib/sts/iso_sts/mathml2/math.rb +20 -18
  33. data/lib/sts/iso_sts/mixed_citation.rb +34 -10
  34. data/lib/sts/iso_sts/nat_meta.rb +1 -0
  35. data/lib/sts/iso_sts/non_normative_example.rb +5 -0
  36. data/lib/sts/iso_sts/non_normative_note.rb +1 -0
  37. data/lib/sts/iso_sts/paragraph.rb +32 -20
  38. data/lib/sts/iso_sts/permissions.rb +1 -0
  39. data/lib/sts/iso_sts/preformat.rb +8 -5
  40. data/lib/sts/iso_sts/ref.rb +1 -0
  41. data/lib/sts/iso_sts/ref_list.rb +1 -0
  42. data/lib/sts/iso_sts/reg_meta.rb +1 -0
  43. data/lib/sts/iso_sts/sec.rb +10 -0
  44. data/lib/sts/iso_sts/standard.rb +6 -0
  45. data/lib/sts/iso_sts/standard_cross_reference.rb +1 -0
  46. data/lib/sts/iso_sts/standard_identification.rb +1 -0
  47. data/lib/sts/iso_sts/std.rb +4 -4
  48. data/lib/sts/iso_sts/styled_content.rb +17 -15
  49. data/lib/sts/iso_sts/table.rb +1 -0
  50. data/lib/sts/iso_sts/table_wrap.rb +1 -0
  51. data/lib/sts/iso_sts/table_wrap_foot.rb +1 -0
  52. data/lib/sts/iso_sts/td.rb +32 -14
  53. data/lib/sts/iso_sts/term.rb +1 -1
  54. data/lib/sts/iso_sts/term_sec.rb +1 -0
  55. data/lib/sts/iso_sts/th.rb +32 -14
  56. data/lib/sts/iso_sts/title.rb +15 -7
  57. data/lib/sts/iso_sts/title_wrap.rb +1 -0
  58. data/lib/sts/iso_sts/tr.rb +1 -0
  59. data/lib/sts/iso_sts.rb +2 -0
  60. data/lib/sts/{niso_sts/mathml.rb → mathml.rb} +1 -3
  61. data/lib/sts/namespaces.rb +1 -0
  62. data/lib/sts/niso_sts/abstract.rb +1 -0
  63. data/lib/sts/niso_sts/ack.rb +1 -1
  64. data/lib/sts/niso_sts/address.rb +1 -0
  65. data/lib/sts/niso_sts/adoption.rb +1 -1
  66. data/lib/sts/niso_sts/adoption_front.rb +1 -0
  67. data/lib/sts/niso_sts/alternatives.rb +1 -4
  68. data/lib/sts/niso_sts/annotation.rb +1 -3
  69. data/lib/sts/niso_sts/app.rb +14 -1
  70. data/lib/sts/niso_sts/app_group.rb +5 -0
  71. data/lib/sts/niso_sts/author_comment.rb +1 -3
  72. data/lib/sts/niso_sts/author_notes.rb +1 -1
  73. data/lib/sts/niso_sts/award_group.rb +1 -0
  74. data/lib/sts/niso_sts/back.rb +5 -4
  75. data/lib/sts/niso_sts/bio.rb +1 -3
  76. data/lib/sts/niso_sts/body.rb +36 -0
  77. data/lib/sts/niso_sts/boxed_text.rb +5 -1
  78. data/lib/sts/niso_sts/break.rb +11 -0
  79. data/lib/sts/niso_sts/caption.rb +7 -1
  80. data/lib/sts/niso_sts/chem_struct_wrap.rb +1 -0
  81. data/lib/sts/niso_sts/citation_alternatives.rb +1 -0
  82. data/lib/sts/niso_sts/collab.rb +8 -0
  83. data/lib/sts/niso_sts/conference.rb +1 -0
  84. data/lib/sts/niso_sts/content_groups/body_elements.rb +50 -0
  85. data/lib/sts/niso_sts/content_groups/citation_elements.rb +74 -0
  86. data/lib/sts/niso_sts/content_groups/emphasized_text.rb +67 -0
  87. data/lib/sts/niso_sts/content_groups/highlight_elements.rb +51 -0
  88. data/lib/sts/niso_sts/content_groups/inside_cell.rb +116 -0
  89. data/lib/sts/niso_sts/content_groups/p_elements.rb +41 -0
  90. data/lib/sts/niso_sts/content_groups/para_level.rb +67 -0
  91. data/lib/sts/niso_sts/content_groups/styled_content_elements.rb +93 -0
  92. data/lib/sts/niso_sts/content_groups/table_group_attributes.rb +62 -0
  93. data/lib/sts/niso_sts/content_groups.rb +8 -0
  94. data/lib/sts/niso_sts/contrib.rb +1 -0
  95. data/lib/sts/niso_sts/contrib_group.rb +1 -0
  96. data/lib/sts/niso_sts/counts.rb +1 -0
  97. data/lib/sts/niso_sts/custom_meta.rb +1 -0
  98. data/lib/sts/niso_sts/date.rb +1 -0
  99. data/lib/sts/niso_sts/def_item.rb +9 -0
  100. data/lib/sts/niso_sts/def_list.rb +6 -1
  101. data/lib/sts/niso_sts/disp_formula_group.rb +3 -4
  102. data/lib/sts/niso_sts/disp_quote.rb +1 -1
  103. data/lib/sts/niso_sts/display_formula.rb +12 -0
  104. data/lib/sts/niso_sts/document_identification.rb +1 -0
  105. data/lib/sts/niso_sts/editing_instruction.rb +1 -3
  106. data/lib/sts/niso_sts/element_citation.rb +1 -1
  107. data/lib/sts/niso_sts/ext_link.rb +16 -2
  108. data/lib/sts/niso_sts/fig_group.rb +1 -0
  109. data/lib/sts/niso_sts/figure.rb +14 -1
  110. data/lib/sts/niso_sts/floats_group.rb +1 -4
  111. data/lib/sts/niso_sts/fn.rb +2 -1
  112. data/lib/sts/niso_sts/front.rb +1 -0
  113. data/lib/sts/niso_sts/funding_group.rb +1 -0
  114. data/lib/sts/niso_sts/glossary.rb +1 -1
  115. data/lib/sts/niso_sts/graphic.rb +2 -0
  116. data/lib/sts/niso_sts/ics.rb +2 -0
  117. data/lib/sts/niso_sts/index_term.rb +1 -0
  118. data/lib/sts/niso_sts/inline_formula.rb +11 -0
  119. data/lib/sts/niso_sts/institution_wrap.rb +1 -0
  120. data/lib/sts/niso_sts/kwd_group.rb +1 -0
  121. data/lib/sts/niso_sts/label.rb +3 -2
  122. data/lib/sts/niso_sts/list.rb +7 -2
  123. data/lib/sts/niso_sts/list_item.rb +7 -2
  124. data/lib/sts/niso_sts/media.rb +1 -0
  125. data/lib/sts/niso_sts/meta_note.rb +1 -1
  126. data/lib/sts/niso_sts/metadata_iso.rb +1 -1
  127. data/lib/sts/niso_sts/metadata_std.rb +16 -6
  128. data/lib/sts/niso_sts/milestone_end.rb +1 -3
  129. data/lib/sts/niso_sts/milestone_start.rb +1 -3
  130. data/lib/sts/niso_sts/mixed_citation.rb +22 -0
  131. data/lib/sts/niso_sts/monospace.rb +9 -0
  132. data/lib/sts/niso_sts/name.rb +1 -0
  133. data/lib/sts/niso_sts/nat_meta.rb +1 -0
  134. data/lib/sts/niso_sts/nested_kwd.rb +1 -0
  135. data/lib/sts/niso_sts/nlm_citation.rb +1 -1
  136. data/lib/sts/niso_sts/non_normative_example.rb +15 -2
  137. data/lib/sts/niso_sts/non_normative_note.rb +12 -2
  138. data/lib/sts/niso_sts/normative_example.rb +1 -1
  139. data/lib/sts/niso_sts/normative_note.rb +1 -1
  140. data/lib/sts/niso_sts/note.rb +1 -1
  141. data/lib/sts/niso_sts/notes.rb +1 -1
  142. data/lib/sts/niso_sts/notes_group.rb +1 -0
  143. data/lib/sts/niso_sts/open_access.rb +1 -4
  144. data/lib/sts/niso_sts/paragraph.rb +37 -7
  145. data/lib/sts/niso_sts/permissions.rb +1 -0
  146. data/lib/sts/niso_sts/preformat.rb +15 -0
  147. data/lib/sts/niso_sts/private_char.rb +1 -3
  148. data/lib/sts/niso_sts/pub_date.rb +2 -0
  149. data/lib/sts/niso_sts/publisher.rb +1 -0
  150. data/lib/sts/niso_sts/reference.rb +1 -0
  151. data/lib/sts/niso_sts/reference_list.rb +6 -1
  152. data/lib/sts/niso_sts/reference_standard.rb +2 -0
  153. data/lib/sts/niso_sts/reg_meta.rb +1 -0
  154. data/lib/sts/niso_sts/release_date.rb +9 -6
  155. data/lib/sts/niso_sts/ruby.rb +1 -0
  156. data/lib/sts/niso_sts/section.rb +39 -4
  157. data/lib/sts/niso_sts/speech.rb +1 -1
  158. data/lib/sts/niso_sts/standard.rb +3 -0
  159. data/lib/sts/niso_sts/standard_identification.rb +1 -1
  160. data/lib/sts/niso_sts/statement.rb +1 -1
  161. data/lib/sts/niso_sts/std_doc_meta.rb +1 -0
  162. data/lib/sts/niso_sts/std_org.rb +1 -0
  163. data/lib/sts/niso_sts/styled_content.rb +37 -0
  164. data/lib/sts/niso_sts/sub.rb +11 -0
  165. data/lib/sts/niso_sts/subj_group.rb +1 -0
  166. data/lib/sts/niso_sts/sup.rb +13 -0
  167. data/lib/sts/niso_sts/supplementary_material.rb +1 -0
  168. data/lib/sts/niso_sts/term_display.rb +1 -0
  169. data/lib/sts/niso_sts/term_section.rb +3 -3
  170. data/lib/sts/niso_sts/title.rb +20 -0
  171. data/lib/sts/niso_sts/trans_abstract.rb +1 -0
  172. data/lib/sts/niso_sts/underline.rb +5 -0
  173. data/lib/sts/niso_sts/uri.rb +2 -0
  174. data/lib/sts/niso_sts/verse_group.rb +1 -1
  175. data/lib/sts/niso_sts/volume_issue_group.rb +1 -4
  176. data/lib/sts/tbx_iso_tml/bold.rb +28 -1
  177. data/lib/sts/tbx_iso_tml/col.rb +10 -0
  178. data/lib/sts/tbx_iso_tml/definition.rb +16 -2
  179. data/lib/sts/tbx_iso_tml/example.rb +9 -1
  180. data/lib/sts/tbx_iso_tml/fn.rb +3 -2
  181. data/lib/sts/tbx_iso_tml/italic.rb +25 -1
  182. data/lib/sts/tbx_iso_tml/msup.rb +2 -1
  183. data/lib/sts/tbx_iso_tml/note.rb +11 -7
  184. data/lib/sts/tbx_iso_tml/source.rb +4 -0
  185. data/lib/sts/tbx_iso_tml/table.rb +1 -0
  186. data/lib/sts/tbx_iso_tml/table_wrap.rb +3 -0
  187. data/lib/sts/tbx_iso_tml/table_wrap_foot.rb +1 -0
  188. data/lib/sts/tbx_iso_tml/tbody.rb +9 -1
  189. data/lib/sts/tbx_iso_tml/td.rb +22 -8
  190. data/lib/sts/tbx_iso_tml/term.rb +9 -5
  191. data/lib/sts/tbx_iso_tml/tfoot.rb +5 -1
  192. data/lib/sts/tbx_iso_tml/th.rb +27 -6
  193. data/lib/sts/tbx_iso_tml/thead.rb +9 -1
  194. data/lib/sts/tbx_iso_tml/tr.rb +16 -0
  195. data/lib/sts/version.rb +1 -1
  196. data/lib/sts.rb +10 -0
  197. metadata +19 -3
@@ -6,6 +6,12 @@ module Sts
6
6
  attribute :id, :string
7
7
  attribute :specific_use, :string
8
8
  attribute :content, :string, collection: true
9
+ attribute :bold, ::Sts::TbxIsoTml::Bold, collection: true
10
+ attribute :italic, ::Sts::TbxIsoTml::Italic, collection: true
11
+ attribute :underline, ::Sts::NisoSts::Underline, collection: true
12
+ attribute :monospace, ::Sts::NisoSts::Monospace, collection: true
13
+ attribute :styled_content, ::Sts::NisoSts::StyledContent, collection: true
14
+
9
15
  xml do
10
16
  element "sub"
11
17
  mixed_content
@@ -13,6 +19,11 @@ module Sts
13
19
  map_attribute "id", to: :id
14
20
  map_attribute "specific-use", to: :specific_use
15
21
  map_content to: :content
22
+ map_element "bold", to: :bold
23
+ map_element "italic", to: :italic
24
+ map_element "underline", to: :underline
25
+ map_element "monospace", to: :monospace
26
+ map_element "styled-content", to: :styled_content
16
27
  end
17
28
  end
18
29
  end
@@ -11,6 +11,7 @@ module Sts
11
11
 
12
12
  xml do
13
13
  element "subj-group"
14
+ ordered
14
15
 
15
16
  map_attribute "subj-group-type", to: :subj_group_type
16
17
  map_attribute "xml:lang", to: :xml_lang
@@ -6,6 +6,13 @@ module Sts
6
6
  attribute :id, :string
7
7
  attribute :specific_use, :string
8
8
  attribute :content, :string, collection: true
9
+ attribute :bold, ::Sts::TbxIsoTml::Bold, collection: true
10
+ attribute :italic, ::Sts::TbxIsoTml::Italic, collection: true
11
+ attribute :underline, ::Sts::NisoSts::Underline, collection: true
12
+ attribute :monospace, ::Sts::NisoSts::Monospace, collection: true
13
+ attribute :styled_content, ::Sts::NisoSts::StyledContent, collection: true
14
+ attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
15
+
9
16
  xml do
10
17
  element "sup"
11
18
  mixed_content
@@ -13,6 +20,12 @@ module Sts
13
20
  map_attribute "id", to: :id
14
21
  map_attribute "specific-use", to: :specific_use
15
22
  map_content to: :content
23
+ map_element "bold", to: :bold
24
+ map_element "italic", to: :italic
25
+ map_element "underline", to: :underline
26
+ map_element "monospace", to: :monospace
27
+ map_element "styled-content", to: :styled_content
28
+ map_element "xref", to: :xref
16
29
  end
17
30
  end
18
31
  end
@@ -22,6 +22,7 @@ module Sts
22
22
 
23
23
  xml do
24
24
  element "supplementary-material"
25
+ ordered
25
26
 
26
27
  map_attribute "id", to: :id
27
28
  map_attribute "content-type", to: :content_type
@@ -9,6 +9,7 @@ module Sts
9
9
 
10
10
  xml do
11
11
  element "term-display"
12
+ ordered
12
13
 
13
14
  map_element "p", to: :p
14
15
  map_element "non-normative-note", to: :non_normative_note
@@ -6,12 +6,12 @@ module Sts
6
6
  attribute :id, :string
7
7
  attribute :sec_type, :string
8
8
  attribute :label, ::Sts::NisoSts::Label
9
- attribute :term_entry, ::Sts::TbxIsoTml::TermEntry # , collection: true
10
- attribute :term_display, ::Sts::NisoSts::TermDisplay # , collection: true
9
+ attribute :term_entry, ::Sts::TbxIsoTml::TermEntry, collection: true
10
+ attribute :term_display, ::Sts::NisoSts::TermDisplay, collection: true
11
11
 
12
12
  xml do
13
13
  element "term-sec"
14
- mixed_content
14
+ ordered
15
15
  map_attribute "id", to: :id
16
16
  map_attribute "sec-type", to: :sec_type
17
17
 
@@ -5,6 +5,16 @@ module Sts
5
5
  class Title < Lutaml::Model::Serializable
6
6
  attribute :content, :string, collection: true
7
7
  attribute :inline_formula, Sts::NisoSts::InlineFormula, collection: true
8
+ attribute :std, Sts::NisoSts::ReferenceStandard, collection: true
9
+ attribute :xref, Sts::TbxIsoTml::Xref, collection: true
10
+ attribute :bold, Sts::TbxIsoTml::Bold, collection: true
11
+ attribute :italic, Sts::TbxIsoTml::Italic, collection: true
12
+ attribute :sub, Sts::NisoSts::Sub, collection: true
13
+ attribute :sup, Sts::NisoSts::Sup, collection: true
14
+ attribute :break, Sts::NisoSts::Break, collection: true
15
+ attribute :styled_content, Sts::NisoSts::StyledContent, collection: true
16
+ attribute :monospace, Sts::NisoSts::Monospace, collection: true
17
+ attribute :sc, Sts::NisoSts::Sc, collection: true
8
18
 
9
19
  xml do
10
20
  element "title"
@@ -12,6 +22,16 @@ module Sts
12
22
 
13
23
  map_content to: :content
14
24
  map_element "inline-formula", to: :inline_formula
25
+ map_element "std", to: :std
26
+ map_element "xref", to: :xref
27
+ map_element "bold", to: :bold
28
+ map_element "italic", to: :italic
29
+ map_element "sub", to: :sub
30
+ map_element "sup", to: :sup
31
+ map_element "break", to: :break
32
+ map_element "styled-content", to: :styled_content
33
+ map_element "monospace", to: :monospace
34
+ map_element "sc", to: :sc
15
35
  end
16
36
  end
17
37
  end
@@ -11,6 +11,7 @@ module Sts
11
11
 
12
12
  xml do
13
13
  element "trans-abstract"
14
+ ordered
14
15
 
15
16
  map_attribute "id", to: :id
16
17
  map_attribute "abstract-type", to: :abstract_type
@@ -7,6 +7,9 @@ module Sts
7
7
  attribute :specific_use, :string
8
8
  attribute :toggle, :string
9
9
  attribute :content, :string, collection: true
10
+ attribute :std, ::Sts::NisoSts::ReferenceStandard, collection: true
11
+ attribute :underline, ::Sts::NisoSts::Underline, collection: true
12
+
10
13
  xml do
11
14
  element "underline"
12
15
  mixed_content
@@ -15,6 +18,8 @@ module Sts
15
18
  map_attribute "specific-use", to: :specific_use
16
19
  map_attribute "toggle", to: :toggle
17
20
  map_content to: :content
21
+ map_element "std", to: :std
22
+ map_element "underline", to: :underline
18
23
  end
19
24
  end
20
25
  end
@@ -4,6 +4,7 @@ module Sts
4
4
  module NisoSts
5
5
  class Uri < Lutaml::Model::Serializable
6
6
  attribute :content, :string, collection: true
7
+ attribute :xlink_type, :string
7
8
  attribute :bold, ::Sts::TbxIsoTml::Bold, collection: true
8
9
  attribute :italic, ::Sts::TbxIsoTml::Italic, collection: true
9
10
 
@@ -11,6 +12,7 @@ module Sts
11
12
  element "uri"
12
13
  mixed_content
13
14
 
15
+ map_attribute "xlink:type", to: :xlink_type
14
16
  map_content to: :content
15
17
  map_element "bold", to: :bold
16
18
  map_element "italic", to: :italic
@@ -13,7 +13,7 @@ module Sts
13
13
 
14
14
  xml do
15
15
  element "verse-group"
16
- mixed_content
16
+ ordered
17
17
 
18
18
  map_attribute "id", to: :id
19
19
  map_attribute "content-type", to: :content_type
@@ -3,12 +3,9 @@
3
3
  module Sts
4
4
  module NisoSts
5
5
  class VolumeIssueGroup < Lutaml::Model::Serializable
6
- attribute :content, :string, collection: true
7
6
  xml do
8
7
  element "volume-issue-group"
9
- mixed_content
10
-
11
- map_content to: :content
8
+ ordered
12
9
  end
13
10
  end
14
11
  end
@@ -3,12 +3,39 @@
3
3
  module Sts
4
4
  module TbxIsoTml
5
5
  class Bold < Lutaml::Model::Serializable
6
- attribute :value, :string
6
+ attribute :value, :string, collection: true
7
+ attribute :italic, ::Sts::TbxIsoTml::Italic, collection: true
8
+ attribute :sub, ::Sts::NisoSts::Sub, collection: true
9
+ attribute :sup, ::Sts::NisoSts::Sup, collection: true
10
+ attribute :monospace, ::Sts::NisoSts::Monospace, collection: true
11
+ attribute :sc, ::Sts::NisoSts::Sc, collection: true
12
+ attribute :std_ref, ::Sts::NisoSts::StandardRef, collection: true
13
+ attribute :underline, ::Sts::NisoSts::Underline, collection: true
14
+ attribute :strike, ::Sts::NisoSts::Strike, collection: true
15
+ attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
16
+ attribute :ext_link, ::Sts::NisoSts::ExtLink, collection: true
17
+ attribute :fn, ::Sts::NisoSts::Fn, collection: true
18
+ attribute :styled_content, ::Sts::NisoSts::StyledContent, collection: true
19
+ attribute :bold, ::Sts::TbxIsoTml::Bold, collection: true
7
20
 
8
21
  xml do
9
22
  element "bold"
23
+ mixed_content
10
24
 
11
25
  map_content to: :value
26
+ map_element "italic", to: :italic
27
+ map_element "sub", to: :sub
28
+ map_element "sup", to: :sup
29
+ map_element "monospace", to: :monospace
30
+ map_element "sc", to: :sc
31
+ map_element "std-ref", to: :std_ref
32
+ map_element "underline", to: :underline
33
+ map_element "strike", to: :strike
34
+ map_element "xref", to: :xref
35
+ map_element "ext-link", to: :ext_link
36
+ map_element "fn", to: :fn
37
+ map_element "styled-content", to: :styled_content
38
+ map_element "bold", to: :bold
12
39
  end
13
40
  end
14
41
  end
@@ -3,7 +3,12 @@
3
3
  module Sts
4
4
  module TbxIsoTml
5
5
  class Col < Lutaml::Model::Serializable
6
+ attribute :id, :string
7
+ attribute :content_type, :string
8
+ attribute :style, :string
6
9
  attribute :width, :string
10
+ attribute :align, :string
11
+ attribute :valign, :string
7
12
  attribute :char, :string
8
13
  attribute :charoff, :string
9
14
  attribute :span, :string
@@ -11,7 +16,12 @@ module Sts
11
16
  xml do
12
17
  element "col"
13
18
 
19
+ map_attribute "id", to: :id
20
+ map_attribute "content-type", to: :content_type
21
+ map_attribute "style", to: :style
14
22
  map_attribute "width", to: :width
23
+ map_attribute "align", to: :align
24
+ map_attribute "valign", to: :valign
15
25
  map_attribute "char", to: :char, value_map: { to: { empty: :empty } }
16
26
  map_attribute "charoff", to: :charoff
17
27
  map_attribute "span", to: :span
@@ -6,11 +6,18 @@ module Sts
6
6
  attribute :entailed_term, ::Sts::TbxIsoTml::EntailedTerm, collection: true
7
7
  attribute :note, ::Sts::TbxIsoTml::Note
8
8
  attribute :value, :string, collection: true
9
- attribute :italic, ::Sts::TbxIsoTml::Italic
9
+ attribute :italic, ::Sts::TbxIsoTml::Italic, collection: true
10
10
  attribute :math, ::Sts::TbxIsoTml::Math
11
- attribute :sub, :string
11
+ attribute :sub, ::Sts::NisoSts::Sub, collection: true
12
12
  attribute :list, ::Sts::NisoSts::List, collection: true
13
13
  attribute :std, ::Sts::NisoSts::ReferenceStandard, collection: true
14
+ attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
15
+ attribute :inline_formula, ::Sts::NisoSts::InlineFormula, collection: true
16
+ attribute :bold, ::Sts::TbxIsoTml::Bold, collection: true
17
+ attribute :sup, ::Sts::NisoSts::Sup, collection: true
18
+ attribute :monospace, ::Sts::NisoSts::Monospace, collection: true
19
+ attribute :ext_link, ::Sts::NisoSts::ExtLink, collection: true
20
+ attribute :styled_content, ::Sts::NisoSts::StyledContent, collection: true
14
21
 
15
22
  xml do
16
23
  element "definition"
@@ -22,9 +29,16 @@ module Sts
22
29
  map_element "note", to: :note
23
30
  map_element "italic", to: :italic
24
31
  map_element "sub", to: :sub
32
+ map_element "sup", to: :sup
25
33
  map_element "list", to: :list
26
34
  map_element "std", to: :std
27
35
  map_element "math", to: :math
36
+ map_element "xref", to: :xref
37
+ map_element "inline-formula", to: :inline_formula
38
+ map_element "bold", to: :bold
39
+ map_element "monospace", to: :monospace
40
+ map_element "ext-link", to: :ext_link
41
+ map_element "styled-content", to: :styled_content
28
42
  end
29
43
  end
30
44
  end
@@ -8,7 +8,11 @@ module Sts
8
8
  attribute :id, :string
9
9
  attribute :value, :string, collection: true
10
10
  attribute :entailed_term, ::Sts::TbxIsoTml::EntailedTerm, collection: true
11
- attribute :inline_formula, ::Sts::NisoSts::InlineFormula
11
+ attribute :inline_formula, ::Sts::NisoSts::InlineFormula, collection: true
12
+ attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
13
+ attribute :std, ::Sts::NisoSts::ReferenceStandard, collection: true
14
+ attribute :italic, ::Sts::TbxIsoTml::Italic, collection: true
15
+ attribute :bold, ::Sts::TbxIsoTml::Bold, collection: true
12
16
 
13
17
  xml do
14
18
  element "example"
@@ -21,6 +25,10 @@ module Sts
21
25
 
22
26
  map_element "entailedTerm", to: :entailed_term
23
27
  map_element "inline-formula", to: :inline_formula
28
+ map_element "xref", to: :xref
29
+ map_element "std", to: :std
30
+ map_element "italic", to: :italic
31
+ map_element "bold", to: :bold
24
32
  end
25
33
  end
26
34
  end
@@ -4,11 +4,12 @@ module Sts
4
4
  module TbxIsoTml
5
5
  class Fn < Lutaml::Model::Serializable
6
6
  attribute :id, :string
7
- attribute :label, :string
8
- attribute :p, ::Sts::NisoSts::Paragraph
7
+ attribute :label, ::Sts::NisoSts::Label
8
+ attribute :p, ::Sts::NisoSts::Paragraph, collection: true
9
9
 
10
10
  xml do
11
11
  element "fn"
12
+ ordered
12
13
 
13
14
  map_attribute "id", to: :id
14
15
  map_element "label", to: :label
@@ -4,14 +4,38 @@ module Sts
4
4
  module TbxIsoTml
5
5
  class Italic < Lutaml::Model::Serializable
6
6
  attribute :value, :string, collection: true
7
- attribute :sub, :string
7
+ attribute :bold, ::Sts::TbxIsoTml::Bold, collection: true
8
+ attribute :sub, ::Sts::NisoSts::Sub, collection: true
9
+ attribute :sup, ::Sts::NisoSts::Sup, collection: true
10
+ attribute :monospace, ::Sts::NisoSts::Monospace, collection: true
11
+ attribute :sc, ::Sts::NisoSts::Sc, collection: true
12
+ attribute :std_ref, ::Sts::NisoSts::StandardRef, collection: true
13
+ attribute :underline, ::Sts::NisoSts::Underline, collection: true
14
+ attribute :strike, ::Sts::NisoSts::Strike, collection: true
15
+ attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
16
+ attribute :ext_link, ::Sts::NisoSts::ExtLink, collection: true
17
+ attribute :fn, ::Sts::NisoSts::Fn, collection: true
18
+ attribute :styled_content, ::Sts::NisoSts::StyledContent, collection: true
19
+ attribute :italic, ::Sts::TbxIsoTml::Italic, collection: true
8
20
 
9
21
  xml do
10
22
  element "italic"
11
23
  mixed_content
12
24
 
13
25
  map_content to: :value
26
+ map_element "bold", to: :bold
14
27
  map_element "sub", to: :sub
28
+ map_element "sup", to: :sup
29
+ map_element "monospace", to: :monospace
30
+ map_element "sc", to: :sc
31
+ map_element "std-ref", to: :std_ref
32
+ map_element "underline", to: :underline
33
+ map_element "strike", to: :strike
34
+ map_element "xref", to: :xref
35
+ map_element "ext-link", to: :ext_link
36
+ map_element "fn", to: :fn
37
+ map_element "styled-content", to: :styled_content
38
+ map_element "italic", to: :italic
15
39
  end
16
40
  end
17
41
  end
@@ -4,12 +4,13 @@ module Sts
4
4
  module TbxIsoTml
5
5
  class Msup < Lutaml::Model::Serializable
6
6
  attribute :mstyle, ::Sts::TbxIsoTml::Mstyle
7
- attribute :mrow, ::Sts::TbxIsoTml::Mrow
7
+ attribute :mrow, ::Sts::TbxIsoTml::Mrow, collection: true
8
8
  attribute :mi, :string
9
9
  attribute :mn, :string, collection: true
10
10
 
11
11
  xml do
12
12
  element "msup"
13
+ ordered
13
14
  namespace ::Sts::Namespaces::MathmlNamespace
14
15
 
15
16
  map_element "mstyle", to: :mstyle
@@ -4,31 +4,35 @@ module Sts
4
4
  module TbxIsoTml
5
5
  class Note < Lutaml::Model::Serializable
6
6
  attribute :id, :string
7
- attribute :value, :string, collection: true
8
7
  attribute :table_wrap, ::Sts::TbxIsoTml::TableWrap
9
8
  attribute :entailed_term, ::Sts::TbxIsoTml::EntailedTerm, collection: true
10
9
  attribute :math, ::Sts::TbxIsoTml::Math, collection: true
11
- attribute :xref, ::Sts::TbxIsoTml::Xref
12
- attribute :list, ::Sts::NisoSts::List
13
- attribute :std, ::Sts::NisoSts::ReferenceStandard
14
- attribute :sup, ::Sts::TbxIsoTml::Sup
10
+ attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
11
+ attribute :list, ::Sts::NisoSts::List, collection: true
12
+ attribute :std, ::Sts::NisoSts::ReferenceStandard, collection: true
13
+ attribute :sup, ::Sts::TbxIsoTml::Sup, collection: true
14
+ attribute :sub, ::Sts::NisoSts::Sub, collection: true
15
15
  attribute :italic, ::Sts::TbxIsoTml::Italic, collection: true
16
+ attribute :bold, ::Sts::TbxIsoTml::Bold, collection: true
17
+ attribute :inline_formula, ::Sts::NisoSts::InlineFormula, collection: true
16
18
 
17
19
  xml do
18
20
  element "note"
19
- mixed_content
21
+ ordered
20
22
  namespace ::Sts::Namespaces::TbxNamespace
21
23
 
22
24
  map_attribute "id", to: :id
23
- map_content to: :value
24
25
  map_element "entailedTerm", to: :entailed_term
25
26
  map_element "list", to: :list
26
27
  map_element "table-wrap", to: :table_wrap
27
28
  map_element "std", to: :std
28
29
  map_element "sup", to: :sup
30
+ map_element "sub", to: :sub
29
31
  map_element "italic", to: :italic
32
+ map_element "bold", to: :bold
30
33
  map_element "xref", to: :xref
31
34
  map_element "math", to: :math
35
+ map_element "inline-formula", to: :inline_formula
32
36
  end
33
37
  end
34
38
  end
@@ -5,6 +5,8 @@ module Sts
5
5
  class Source < Lutaml::Model::Serializable
6
6
  attribute :value, :string, collection: true
7
7
  attribute :italic, ::Sts::TbxIsoTml::Italic
8
+ attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
9
+ attribute :sup, ::Sts::TbxIsoTml::Sup, collection: true
8
10
 
9
11
  xml do
10
12
  element "source"
@@ -13,6 +15,8 @@ module Sts
13
15
 
14
16
  map_content to: :value
15
17
  map_element "italic", to: :italic
18
+ map_element "xref", to: :xref
19
+ map_element "sup", to: :sup
16
20
  end
17
21
  end
18
22
  end
@@ -22,6 +22,7 @@ module Sts
22
22
 
23
23
  xml do
24
24
  element "table"
25
+ ordered
25
26
 
26
27
  map_attribute "border", to: :border
27
28
  map_attribute "rules", to: :rules
@@ -12,6 +12,7 @@ module Sts
12
12
  attribute :content_type, :string
13
13
  attribute :originator, :string
14
14
  attribute :table, ::Sts::TbxIsoTml::Table, collection: true
15
+ attribute :graphic, ::Sts::NisoSts::Graphic, collection: true
15
16
  attribute :table_wrap_foot, ::Sts::TbxIsoTml::TableWrapFoot
16
17
 
17
18
  # TODO: This require will cause a loop when defined in header
@@ -19,6 +20,7 @@ module Sts
19
20
 
20
21
  xml do
21
22
  element "table-wrap"
23
+ ordered
22
24
 
23
25
  map_attribute "id", to: :id
24
26
  map_attribute "orientation", to: :orientation
@@ -31,6 +33,7 @@ module Sts
31
33
  map_element "label", to: :label
32
34
  map_element "caption", to: :caption
33
35
  map_element "table", to: :table
36
+ map_element "graphic", to: :graphic
34
37
  map_element "table-wrap-foot", to: :table_wrap_foot
35
38
  end
36
39
  end
@@ -13,6 +13,7 @@ module Sts
13
13
 
14
14
  xml do
15
15
  element "table-wrap-foot"
16
+ ordered
16
17
 
17
18
  map_element "fn-group", to: :fn_group
18
19
  map_element "attrib", to: :attrib
@@ -3,14 +3,22 @@
3
3
  module Sts
4
4
  module TbxIsoTml
5
5
  class Tbody < Lutaml::Model::Serializable
6
- attribute :tr, ::Sts::TbxIsoTml::Tr, collection: true
6
+ attribute :id, :string
7
+ attribute :content_type, :string
8
+ attribute :style, :string
9
+ attribute :align, :string
7
10
  attribute :char, :string
8
11
  attribute :charoff, :string
9
12
  attribute :valign, :string
13
+ attribute :tr, ::Sts::TbxIsoTml::Tr, collection: true
10
14
 
11
15
  xml do
12
16
  element "tbody"
13
17
 
18
+ map_attribute "id", to: :id
19
+ map_attribute "content-type", to: :content_type
20
+ map_attribute "style", to: :style
21
+ map_attribute "align", to: :align
14
22
  map_attribute "char", to: :char, value_map: { to: { empty: :empty } }
15
23
  map_attribute "charoff", to: :charoff
16
24
  map_attribute "valign", to: :valign
@@ -7,8 +7,8 @@ module Sts
7
7
  attribute :align, :string
8
8
  attribute :scope, :string
9
9
  attribute :style, :string
10
- attribute :bold, ::Sts::TbxIsoTml::Bold
11
- attribute :italic, ::Sts::TbxIsoTml::Italic
10
+ attribute :bold, ::Sts::TbxIsoTml::Bold, collection: true
11
+ attribute :italic, ::Sts::TbxIsoTml::Italic, collection: true
12
12
  attribute :content_type, :string
13
13
  attribute :char, :string
14
14
  attribute :charoff, :string
@@ -23,13 +23,20 @@ module Sts
23
23
  attribute :non_normative_note,
24
24
  ::Sts::NisoSts::NonNormativeNote,
25
25
  collection: true
26
- attribute :list, ::Sts::NisoSts::List
26
+ attribute :list, ::Sts::NisoSts::List, collection: true
27
27
  attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
28
- attribute :std, ::Sts::NisoSts::ReferenceStandard
29
- attribute :graphic, ::Sts::NisoSts::Graphic
30
- attribute :def_list, ::Sts::NisoSts::DefList
31
- attribute :paragraph, ::Sts::NisoSts::Paragraph
32
- attribute :fn, ::Sts::TbxIsoTml::Fn
28
+ attribute :std, ::Sts::NisoSts::ReferenceStandard, collection: true
29
+ attribute :graphic, ::Sts::NisoSts::Graphic, collection: true
30
+ attribute :def_list, ::Sts::NisoSts::DefList, collection: true
31
+ attribute :paragraph, ::Sts::NisoSts::Paragraph, collection: true
32
+ attribute :fn, ::Sts::TbxIsoTml::Fn, collection: true
33
+ attribute :styled_content, ::Sts::NisoSts::StyledContent, collection: true
34
+ attribute :uri, ::Sts::NisoSts::Uri, collection: true
35
+ attribute :monospace, ::Sts::NisoSts::Monospace, collection: true
36
+ attribute :underline, ::Sts::NisoSts::Underline, collection: true
37
+ attribute :sup, ::Sts::NisoSts::Sup, collection: true
38
+ attribute :sub, ::Sts::NisoSts::Sub, collection: true
39
+ attribute :break, ::Sts::TbxIsoTml::TableBreak
33
40
 
34
41
  xml do # rubocop:disable Metrics/BlockLength
35
42
  element "td"
@@ -62,6 +69,13 @@ module Sts
62
69
  map_element "def-list", to: :def_list
63
70
  map_element "p", to: :paragraph
64
71
  map_element "fn", to: :fn
72
+ map_element "styled-content", to: :styled_content
73
+ map_element "uri", to: :uri
74
+ map_element "monospace", to: :monospace
75
+ map_element "underline", to: :underline
76
+ map_element "sup", to: :sup
77
+ map_element "sub", to: :sub
78
+ map_element "break", to: :break
65
79
  end
66
80
  end
67
81
  end
@@ -6,12 +6,14 @@ module Sts
6
6
  attribute :id, :string
7
7
  attribute :script, :string
8
8
  attribute :value, :string, collection: true
9
- attribute :italic, ::Sts::TbxIsoTml::Italic
10
- attribute :bold, :string
11
- attribute :sub, :string
12
- attribute :math, ::Sts::TbxIsoTml::Math
13
- attribute :xref, ::Sts::TbxIsoTml::Xref
9
+ attribute :italic, ::Sts::TbxIsoTml::Italic, collection: true
10
+ attribute :bold, ::Sts::TbxIsoTml::Bold, collection: true
11
+ attribute :sub, ::Sts::NisoSts::Sub, collection: true
12
+ attribute :sup, ::Sts::NisoSts::Sup, collection: true
13
+ attribute :math, ::Sts::TbxIsoTml::Math, collection: true
14
+ attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
14
15
  attribute :inline_formula, ::Sts::NisoSts::InlineFormula, collection: true
16
+ attribute :std, ::Sts::NisoSts::ReferenceStandard, collection: true
15
17
 
16
18
  xml do
17
19
  element "term"
@@ -24,8 +26,10 @@ module Sts
24
26
  map_element "italic", to: :italic
25
27
  map_element "bold", to: :bold
26
28
  map_element "sub", to: :sub
29
+ map_element "sup", to: :sup
27
30
  map_element "xref", to: :xref
28
31
  map_element "math", to: :math
32
+ map_element "std", to: :std
29
33
  map_content to: :value
30
34
  end
31
35
  end
@@ -3,17 +3,21 @@
3
3
  module Sts
4
4
  module TbxIsoTml
5
5
  class Tfoot < Lutaml::Model::Serializable
6
- attribute :tr, ::Sts::TbxIsoTml::Tr, collection: true
6
+ attribute :id, :string
7
7
  attribute :content_type, :string
8
+ attribute :style, :string
8
9
  attribute :align, :string
9
10
  attribute :char, :string
10
11
  attribute :charoff, :string
11
12
  attribute :valign, :string
13
+ attribute :tr, ::Sts::TbxIsoTml::Tr, collection: true
12
14
 
13
15
  xml do
14
16
  element "tfoot"
15
17
 
18
+ map_attribute "id", to: :id
16
19
  map_attribute "content-type", to: :content_type
20
+ map_attribute "style", to: :style
17
21
  map_attribute "align", to: :align
18
22
  map_attribute "char", to: :char, value_map: { to: { empty: :empty } }
19
23
  map_attribute "charoff", to: :charoff