sts 0.5.2 → 0.5.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.
Files changed (446) 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/GAPS.guidelines.iso-sts-ed2.1/01-maintenance.md +19 -0
  7. data/GAPS.guidelines.iso-sts-ed2.1/03-general.md +75 -0
  8. data/GAPS.guidelines.iso-sts-ed2.1/04-structure.md +75 -0
  9. data/GAPS.guidelines.iso-sts-ed2.1/05-content.md +63 -0
  10. data/GAPS.guidelines.iso-sts-ed2.1/06-tables.md +53 -0
  11. data/GAPS.guidelines.iso-sts-ed2.1/07-formulae.md +41 -0
  12. data/GAPS.guidelines.iso-sts-ed2.1/08-figures.md +45 -0
  13. data/GAPS.guidelines.iso-sts-ed2.1/09-terms.md +56 -0
  14. data/GAPS.guidelines.iso-sts-ed2.1/10-references.md +56 -0
  15. data/GAPS.guidelines.iso-sts-ed2.1/annex-a-multilingual.md +79 -0
  16. data/GAPS.guidelines.niso-sts-v1.0/01-introduction-scope.md +27 -0
  17. data/GAPS.guidelines.niso-sts-v1.0/02-document-structure.md +100 -0
  18. data/GAPS.guidelines.niso-sts-v1.0/03-front-matter.md +149 -0
  19. data/GAPS.guidelines.niso-sts-v1.0/04-body-content.md +209 -0
  20. data/GAPS.guidelines.niso-sts-v1.0/05-tables-figures.md +152 -0
  21. data/GAPS.guidelines.niso-sts-v1.0/06-math-formulae.md +128 -0
  22. data/GAPS.guidelines.niso-sts-v1.0/07-references.md +113 -0
  23. data/GAPS.guidelines.niso-sts-v1.0/08-terminology.md +127 -0
  24. data/GAPS.guidelines.niso-sts-v1.0/09-metadata.md +113 -0
  25. data/GAPS.guidelines.niso-sts-v1.0/10-iso-iec-variant.md +141 -0
  26. data/GAPS.guidelines.niso-sts-v1.0/SUMMARY.md +96 -0
  27. data/GAPS.guidelines.schema-xref.md +101 -0
  28. data/Gemfile +2 -1
  29. data/TODO.sts-refactor/00-overview.md +172 -0
  30. data/TODO.sts-refactor/01-mathml-delegation.md +153 -0
  31. data/TODO.sts-refactor/02-type-resolution.md +122 -0
  32. data/TODO.sts-refactor/03-namespace-coupling.md +158 -0
  33. data/TODO.sts-refactor/04-register-versioning.md +180 -0
  34. data/TODO.sts-refactor/05-missing-elements.md +195 -0
  35. data/TODO.sts-refactor/06-missing-attributes.md +152 -0
  36. data/TODO.sts-refactor/07-incomplete-models.md +180 -0
  37. data/TODO.sts-refactor/08-isoiec-profile.md +169 -0
  38. data/TODO.sts-refactor/09-autoload-cleanup.md +88 -0
  39. data/TODO.sts-refactor/10-test-coverage.md +164 -0
  40. data/TODO.sts-refactor/11-duplicate-models.md +168 -0
  41. data/lib/sts/iso_sts/annex_type.rb +2 -0
  42. data/lib/sts/iso_sts/app.rb +26 -1
  43. data/lib/sts/iso_sts/app_group.rb +1 -0
  44. data/lib/sts/iso_sts/array.rb +1 -0
  45. data/lib/sts/iso_sts/back.rb +1 -0
  46. data/lib/sts/iso_sts/body.rb +4 -0
  47. data/lib/sts/iso_sts/bold.rb +23 -11
  48. data/lib/sts/iso_sts/break.rb +3 -0
  49. data/lib/sts/iso_sts/caption.rb +1 -0
  50. data/lib/sts/iso_sts/comm_ref.rb +2 -0
  51. data/lib/sts/iso_sts/content_language.rb +22 -0
  52. data/lib/sts/iso_sts/copyright_holder.rb +4 -2
  53. data/lib/sts/iso_sts/copyright_statement.rb +4 -2
  54. data/lib/sts/iso_sts/copyright_year.rb +3 -0
  55. data/lib/sts/iso_sts/def.rb +1 -0
  56. data/lib/sts/iso_sts/def_item.rb +1 -0
  57. data/lib/sts/iso_sts/def_list.rb +1 -0
  58. data/lib/sts/iso_sts/disp_formula.rb +5 -1
  59. data/lib/sts/iso_sts/doc_ref.rb +2 -0
  60. data/lib/sts/iso_sts/document_identification.rb +3 -0
  61. data/lib/sts/iso_sts/edition.rb +2 -0
  62. data/lib/sts/iso_sts/ext_link.rb +1 -1
  63. data/lib/sts/iso_sts/fig.rb +1 -0
  64. data/lib/sts/iso_sts/fn.rb +1 -0
  65. data/lib/sts/iso_sts/fn_group.rb +1 -0
  66. data/lib/sts/iso_sts/front.rb +5 -0
  67. data/lib/sts/iso_sts/graphic.rb +5 -0
  68. data/lib/sts/iso_sts/inline_formula.rb +1 -1
  69. data/lib/sts/iso_sts/iso_meta.rb +4 -3
  70. data/lib/sts/iso_sts/italic.rb +23 -11
  71. data/lib/sts/iso_sts/label.rb +7 -5
  72. data/lib/sts/iso_sts/language.rb +2 -0
  73. data/lib/sts/iso_sts/list.rb +1 -0
  74. data/lib/sts/iso_sts/list_item.rb +7 -4
  75. data/lib/sts/iso_sts/mathml2/math.rb +20 -18
  76. data/lib/sts/iso_sts/meta_date.rb +20 -0
  77. data/lib/sts/iso_sts/mixed_citation.rb +35 -11
  78. data/lib/sts/iso_sts/monospace.rb +26 -0
  79. data/lib/sts/iso_sts/named_content.rb +44 -0
  80. data/lib/sts/iso_sts/nat_meta.rb +5 -4
  81. data/lib/sts/iso_sts/non_normative_example.rb +5 -0
  82. data/lib/sts/iso_sts/non_normative_note.rb +1 -0
  83. data/lib/sts/iso_sts/page_count.rb +2 -0
  84. data/lib/sts/iso_sts/paragraph.rb +34 -22
  85. data/lib/sts/iso_sts/permissions.rb +3 -0
  86. data/lib/sts/iso_sts/preformat.rb +8 -5
  87. data/lib/sts/iso_sts/ref.rb +1 -0
  88. data/lib/sts/iso_sts/ref_list.rb +1 -0
  89. data/lib/sts/iso_sts/reg_meta.rb +5 -4
  90. data/lib/sts/iso_sts/release_date.rb +2 -0
  91. data/lib/sts/iso_sts/sc.rb +26 -0
  92. data/lib/sts/iso_sts/sec.rb +12 -2
  93. data/lib/sts/iso_sts/secretariat.rb +2 -0
  94. data/lib/sts/iso_sts/standard.rb +6 -0
  95. data/lib/sts/iso_sts/standard_cross_reference.rb +5 -2
  96. data/lib/sts/iso_sts/standard_identification.rb +3 -0
  97. data/lib/sts/iso_sts/standard_ref.rb +16 -0
  98. data/lib/sts/iso_sts/std.rb +7 -5
  99. data/lib/sts/iso_sts/std_ref.rb +2 -0
  100. data/lib/sts/iso_sts/strike.rb +26 -0
  101. data/lib/sts/iso_sts/styled_content.rb +19 -15
  102. data/lib/sts/iso_sts/sub.rb +2 -0
  103. data/lib/sts/iso_sts/sup.rb +2 -0
  104. data/lib/sts/iso_sts/table.rb +1 -0
  105. data/lib/sts/iso_sts/table_wrap.rb +1 -0
  106. data/lib/sts/iso_sts/table_wrap_foot.rb +3 -0
  107. data/lib/sts/iso_sts/td.rb +32 -14
  108. data/lib/sts/iso_sts/term.rb +6 -6
  109. data/lib/sts/iso_sts/term_sec.rb +1 -0
  110. data/lib/sts/iso_sts/th.rb +32 -14
  111. data/lib/sts/iso_sts/title.rb +17 -7
  112. data/lib/sts/iso_sts/title_compl.rb +2 -0
  113. data/lib/sts/iso_sts/title_full.rb +2 -0
  114. data/lib/sts/iso_sts/title_intro.rb +2 -0
  115. data/lib/sts/iso_sts/title_main.rb +2 -0
  116. data/lib/sts/iso_sts/title_wrap.rb +1 -0
  117. data/lib/sts/iso_sts/tr.rb +1 -0
  118. data/lib/sts/iso_sts/underline.rb +26 -0
  119. data/lib/sts/iso_sts/uri.rb +32 -0
  120. data/lib/sts/iso_sts/xref.rb +3 -3
  121. data/lib/sts/iso_sts.rb +11 -0
  122. data/lib/sts/mathml.rb +21 -0
  123. data/lib/sts/namespaces.rb +3 -0
  124. data/lib/sts/niso_sts/abstract.rb +3 -0
  125. data/lib/sts/niso_sts/access_date.rb +2 -0
  126. data/lib/sts/niso_sts/accrediting_organization.rb +2 -0
  127. data/lib/sts/niso_sts/ack.rb +1 -1
  128. data/lib/sts/niso_sts/addr_line.rb +2 -0
  129. data/lib/sts/niso_sts/address.rb +3 -0
  130. data/lib/sts/niso_sts/adoption.rb +1 -1
  131. data/lib/sts/niso_sts/adoption_front.rb +1 -0
  132. data/lib/sts/niso_sts/aff_alternatives.rb +3 -0
  133. data/lib/sts/niso_sts/alt_text.rb +2 -0
  134. data/lib/sts/niso_sts/alt_title.rb +2 -0
  135. data/lib/sts/niso_sts/alternatives.rb +3 -4
  136. data/lib/sts/niso_sts/annotation.rb +1 -3
  137. data/lib/sts/niso_sts/anonymous.rb +3 -0
  138. data/lib/sts/niso_sts/app.rb +16 -1
  139. data/lib/sts/niso_sts/app_group.rb +5 -0
  140. data/lib/sts/niso_sts/article_title.rb +2 -0
  141. data/lib/sts/niso_sts/attrib.rb +2 -0
  142. data/lib/sts/niso_sts/author_comment.rb +1 -3
  143. data/lib/sts/niso_sts/author_notes.rb +1 -1
  144. data/lib/sts/niso_sts/authorization.rb +2 -0
  145. data/lib/sts/niso_sts/award_group.rb +23 -4
  146. data/lib/sts/niso_sts/award_id.rb +6 -0
  147. data/lib/sts/niso_sts/back.rb +25 -6
  148. data/lib/sts/niso_sts/bio.rb +1 -3
  149. data/lib/sts/niso_sts/body.rb +38 -0
  150. data/lib/sts/niso_sts/boxed_text.rb +41 -3
  151. data/lib/sts/niso_sts/break.rb +14 -0
  152. data/lib/sts/niso_sts/caption.rb +15 -1
  153. data/lib/sts/niso_sts/chapter_title.rb +2 -0
  154. data/lib/sts/niso_sts/chem_struct.rb +2 -0
  155. data/lib/sts/niso_sts/chem_struct_wrap.rb +1 -0
  156. data/lib/sts/niso_sts/citation_alternatives.rb +3 -0
  157. data/lib/sts/niso_sts/city.rb +2 -0
  158. data/lib/sts/niso_sts/code.rb +111 -0
  159. data/lib/sts/niso_sts/collab.rb +8 -0
  160. data/lib/sts/niso_sts/collab_alternatives.rb +3 -0
  161. data/lib/sts/niso_sts/comm_ref_group.rb +3 -0
  162. data/lib/sts/niso_sts/comment.rb +2 -0
  163. data/lib/sts/niso_sts/compound_subject.rb +29 -0
  164. data/lib/sts/niso_sts/compound_subject_part.rb +39 -0
  165. data/lib/sts/niso_sts/conf_acronym.rb +2 -0
  166. data/lib/sts/niso_sts/conf_date.rb +2 -0
  167. data/lib/sts/niso_sts/conf_loc.rb +2 -0
  168. data/lib/sts/niso_sts/conf_name.rb +2 -0
  169. data/lib/sts/niso_sts/conf_num.rb +2 -0
  170. data/lib/sts/niso_sts/conf_sponsor.rb +2 -0
  171. data/lib/sts/niso_sts/conf_theme.rb +2 -0
  172. data/lib/sts/niso_sts/conference.rb +3 -0
  173. data/lib/sts/niso_sts/content_language.rb +2 -0
  174. data/lib/sts/niso_sts/contrib.rb +1 -0
  175. data/lib/sts/niso_sts/contrib_group.rb +1 -0
  176. data/lib/sts/niso_sts/contrib_id.rb +2 -0
  177. data/lib/sts/niso_sts/copyright_holder.rb +2 -0
  178. data/lib/sts/niso_sts/copyright_statement.rb +2 -0
  179. data/lib/sts/niso_sts/copyright_year.rb +2 -0
  180. data/lib/sts/niso_sts/country.rb +2 -0
  181. data/lib/sts/niso_sts/counts.rb +3 -0
  182. data/lib/sts/niso_sts/custom_meta.rb +3 -0
  183. data/lib/sts/niso_sts/custom_meta_group.rb +3 -0
  184. data/lib/sts/niso_sts/data_title.rb +29 -0
  185. data/lib/sts/niso_sts/date.rb +3 -0
  186. data/lib/sts/niso_sts/date_in_citation.rb +2 -0
  187. data/lib/sts/niso_sts/day.rb +2 -0
  188. data/lib/sts/niso_sts/def.rb +3 -0
  189. data/lib/sts/niso_sts/def_head.rb +18 -0
  190. data/lib/sts/niso_sts/def_item.rb +13 -0
  191. data/lib/sts/niso_sts/def_list.rb +25 -3
  192. data/lib/sts/niso_sts/degrees.rb +2 -0
  193. data/lib/sts/niso_sts/disp_formula_group.rb +1 -4
  194. data/lib/sts/niso_sts/disp_quote.rb +3 -1
  195. data/lib/sts/niso_sts/display_formula.rb +47 -2
  196. data/lib/sts/niso_sts/doc_number.rb +2 -0
  197. data/lib/sts/niso_sts/doc_type.rb +2 -0
  198. data/lib/sts/niso_sts/document_identification.rb +1 -0
  199. data/lib/sts/niso_sts/editing_instruction.rb +9 -5
  200. data/lib/sts/niso_sts/edition.rb +2 -0
  201. data/lib/sts/niso_sts/element_citation.rb +1 -1
  202. data/lib/sts/niso_sts/elocation_id.rb +2 -0
  203. data/lib/sts/niso_sts/email.rb +2 -0
  204. data/lib/sts/niso_sts/equation_count.rb +2 -0
  205. data/lib/sts/niso_sts/era.rb +2 -0
  206. data/lib/sts/niso_sts/ext_link.rb +32 -2
  207. data/lib/sts/niso_sts/fax.rb +2 -0
  208. data/lib/sts/niso_sts/fig_count.rb +2 -0
  209. data/lib/sts/niso_sts/fig_group.rb +1 -0
  210. data/lib/sts/niso_sts/figure.rb +14 -1
  211. data/lib/sts/niso_sts/floats_group.rb +3 -4
  212. data/lib/sts/niso_sts/fn.rb +2 -1
  213. data/lib/sts/niso_sts/fn_group.rb +3 -0
  214. data/lib/sts/niso_sts/fpage.rb +2 -0
  215. data/lib/sts/niso_sts/front.rb +16 -0
  216. data/lib/sts/niso_sts/funding_group.rb +1 -0
  217. data/lib/sts/niso_sts/funding_source.rb +2 -0
  218. data/lib/sts/niso_sts/given_names.rb +2 -0
  219. data/lib/sts/niso_sts/glossary.rb +1 -1
  220. data/lib/sts/niso_sts/gov.rb +2 -0
  221. data/lib/sts/niso_sts/graphic.rb +6 -0
  222. data/lib/sts/niso_sts/hr.rb +3 -0
  223. data/lib/sts/niso_sts/ics.rb +5 -0
  224. data/lib/sts/niso_sts/ics_desc.rb +2 -0
  225. data/lib/sts/niso_sts/ics_wrap.rb +9 -0
  226. data/lib/sts/niso_sts/index.rb +32 -0
  227. data/lib/sts/niso_sts/index_div.rb +30 -0
  228. data/lib/sts/niso_sts/index_entry.rb +32 -0
  229. data/lib/sts/niso_sts/index_term.rb +1 -0
  230. data/lib/sts/niso_sts/index_title_group.rb +22 -0
  231. data/lib/sts/niso_sts/inline_formula.rb +38 -2
  232. data/lib/sts/niso_sts/inline_media.rb +50 -0
  233. data/lib/sts/niso_sts/institution.rb +2 -0
  234. data/lib/sts/niso_sts/institution_id.rb +2 -0
  235. data/lib/sts/niso_sts/institution_wrap.rb +3 -0
  236. data/lib/sts/niso_sts/intro.rb +2 -0
  237. data/lib/sts/niso_sts/is_proof.rb +2 -0
  238. data/lib/sts/niso_sts/isbn.rb +2 -0
  239. data/lib/sts/niso_sts/issn.rb +2 -0
  240. data/lib/sts/niso_sts/issn_l.rb +2 -0
  241. data/lib/sts/niso_sts/issue.rb +2 -0
  242. data/lib/sts/niso_sts/kwd_group.rb +9 -0
  243. data/lib/sts/niso_sts/label.rb +7 -2
  244. data/lib/sts/niso_sts/legend.rb +39 -0
  245. data/lib/sts/niso_sts/license.rb +2 -0
  246. data/lib/sts/niso_sts/license_p.rb +2 -0
  247. data/lib/sts/niso_sts/list.rb +9 -2
  248. data/lib/sts/niso_sts/list_item.rb +9 -4
  249. data/lib/sts/niso_sts/long_desc.rb +2 -0
  250. data/lib/sts/niso_sts/lpage.rb +2 -0
  251. data/lib/sts/niso_sts/main.rb +2 -0
  252. data/lib/sts/niso_sts/media.rb +1 -0
  253. data/lib/sts/niso_sts/meta_date.rb +2 -0
  254. data/lib/sts/niso_sts/meta_note.rb +1 -1
  255. data/lib/sts/niso_sts/metadata_iso.rb +1 -1
  256. data/lib/sts/niso_sts/metadata_std.rb +16 -8
  257. data/lib/sts/niso_sts/milestone_end.rb +1 -3
  258. data/lib/sts/niso_sts/milestone_start.rb +1 -3
  259. data/lib/sts/niso_sts/mixed_citation.rb +22 -0
  260. data/lib/sts/niso_sts/mml_content.rb +0 -2
  261. data/lib/sts/niso_sts/monospace.rb +9 -0
  262. data/lib/sts/niso_sts/month.rb +2 -0
  263. data/lib/sts/niso_sts/name.rb +3 -0
  264. data/lib/sts/niso_sts/name_alternatives.rb +5 -0
  265. data/lib/sts/niso_sts/named_content.rb +51 -1
  266. data/lib/sts/niso_sts/nat_meta.rb +3 -0
  267. data/lib/sts/niso_sts/nested_kwd.rb +3 -0
  268. data/lib/sts/niso_sts/nlm_citation.rb +1 -1
  269. data/lib/sts/niso_sts/non_normative_example.rb +15 -2
  270. data/lib/sts/niso_sts/non_normative_note.rb +14 -2
  271. data/lib/sts/niso_sts/normative_example.rb +1 -1
  272. data/lib/sts/niso_sts/normative_note.rb +3 -1
  273. data/lib/sts/niso_sts/note.rb +1 -1
  274. data/lib/sts/niso_sts/notes.rb +1 -1
  275. data/lib/sts/niso_sts/notes_group.rb +1 -0
  276. data/lib/sts/niso_sts/object_id.rb +4 -0
  277. data/lib/sts/niso_sts/on_behalf_of.rb +2 -0
  278. data/lib/sts/niso_sts/open_access.rb +3 -4
  279. data/lib/sts/niso_sts/originator.rb +2 -0
  280. data/lib/sts/niso_sts/page_count.rb +2 -0
  281. data/lib/sts/niso_sts/page_range.rb +2 -0
  282. data/lib/sts/niso_sts/paragraph.rb +39 -7
  283. data/lib/sts/niso_sts/part_number.rb +2 -0
  284. data/lib/sts/niso_sts/part_of_speech.rb +2 -0
  285. data/lib/sts/niso_sts/patent.rb +2 -0
  286. data/lib/sts/niso_sts/permissions.rb +7 -1
  287. data/lib/sts/niso_sts/phone.rb +2 -0
  288. data/lib/sts/niso_sts/postal_code.rb +2 -0
  289. data/lib/sts/niso_sts/prefix.rb +2 -0
  290. data/lib/sts/niso_sts/preformat.rb +15 -0
  291. data/lib/sts/niso_sts/price.rb +2 -0
  292. data/lib/sts/niso_sts/principal_award_recipient.rb +2 -0
  293. data/lib/sts/niso_sts/principal_investigator.rb +2 -0
  294. data/lib/sts/niso_sts/private_char.rb +3 -3
  295. data/lib/sts/niso_sts/processing_meta.rb +54 -0
  296. data/lib/sts/niso_sts/product.rb +2 -0
  297. data/lib/sts/niso_sts/proj_id.rb +2 -0
  298. data/lib/sts/niso_sts/pub_date.rb +4 -0
  299. data/lib/sts/niso_sts/pub_id.rb +2 -0
  300. data/lib/sts/niso_sts/publisher.rb +3 -0
  301. data/lib/sts/niso_sts/publisher_loc.rb +2 -0
  302. data/lib/sts/niso_sts/publisher_name.rb +2 -0
  303. data/lib/sts/niso_sts/ref_count.rb +2 -0
  304. data/lib/sts/niso_sts/reference.rb +1 -0
  305. data/lib/sts/niso_sts/reference_list.rb +6 -1
  306. data/lib/sts/niso_sts/reference_standard.rb +4 -2
  307. data/lib/sts/niso_sts/reg_meta.rb +3 -0
  308. data/lib/sts/niso_sts/related_term.rb +2 -0
  309. data/lib/sts/niso_sts/release_date.rb +11 -6
  310. data/lib/sts/niso_sts/release_version.rb +2 -0
  311. data/lib/sts/niso_sts/release_version_id.rb +2 -0
  312. data/lib/sts/niso_sts/role.rb +35 -0
  313. data/lib/sts/niso_sts/ruby.rb +1 -0
  314. data/lib/sts/niso_sts/sdo.rb +2 -0
  315. data/lib/sts/niso_sts/season.rb +2 -0
  316. data/lib/sts/niso_sts/sec_meta.rb +26 -0
  317. data/lib/sts/niso_sts/secretariat.rb +2 -0
  318. data/lib/sts/niso_sts/section.rb +47 -4
  319. data/lib/sts/niso_sts/see_also_entry.rb +26 -0
  320. data/lib/sts/niso_sts/see_entry.rb +26 -0
  321. data/lib/sts/niso_sts/self_uri.rb +2 -0
  322. data/lib/sts/niso_sts/series.rb +2 -0
  323. data/lib/sts/niso_sts/series_text.rb +2 -0
  324. data/lib/sts/niso_sts/series_title.rb +2 -0
  325. data/lib/sts/niso_sts/sig.rb +2 -0
  326. data/lib/sts/niso_sts/size.rb +2 -0
  327. data/lib/sts/niso_sts/source.rb +29 -0
  328. data/lib/sts/niso_sts/speaker.rb +2 -0
  329. data/lib/sts/niso_sts/speech.rb +1 -1
  330. data/lib/sts/niso_sts/standard.rb +3 -0
  331. data/lib/sts/niso_sts/standard_identification.rb +3 -1
  332. data/lib/sts/niso_sts/state.rb +2 -0
  333. data/lib/sts/niso_sts/statement.rb +1 -1
  334. data/lib/sts/niso_sts/std_doc_meta.rb +50 -11
  335. data/lib/sts/niso_sts/std_id.rb +2 -0
  336. data/lib/sts/niso_sts/std_id_group.rb +3 -0
  337. data/lib/sts/niso_sts/std_org.rb +1 -0
  338. data/lib/sts/niso_sts/std_org_abbrev.rb +2 -0
  339. data/lib/sts/niso_sts/std_org_group.rb +3 -0
  340. data/lib/sts/niso_sts/std_org_name.rb +2 -0
  341. data/lib/sts/niso_sts/std_organization.rb +2 -0
  342. data/lib/sts/niso_sts/string_conf.rb +2 -0
  343. data/lib/sts/niso_sts/string_date.rb +2 -0
  344. data/lib/sts/niso_sts/string_name.rb +2 -0
  345. data/lib/sts/niso_sts/styled_content.rb +39 -0
  346. data/lib/sts/niso_sts/sub.rb +11 -0
  347. data/lib/sts/niso_sts/subj_group.rb +11 -0
  348. data/lib/sts/niso_sts/subtitle.rb +2 -0
  349. data/lib/sts/niso_sts/suffix.rb +2 -0
  350. data/lib/sts/niso_sts/sup.rb +13 -0
  351. data/lib/sts/niso_sts/suppl_number.rb +2 -0
  352. data/lib/sts/niso_sts/suppl_type.rb +2 -0
  353. data/lib/sts/niso_sts/suppl_version.rb +2 -0
  354. data/lib/sts/niso_sts/supplementary_material.rb +1 -0
  355. data/lib/sts/niso_sts/surname.rb +2 -0
  356. data/lib/sts/niso_sts/table_count.rb +2 -0
  357. data/lib/sts/niso_sts/table_wrap_group.rb +32 -0
  358. data/lib/sts/niso_sts/term_display.rb +22 -0
  359. data/lib/sts/niso_sts/term_display_string.rb +22 -0
  360. data/lib/sts/niso_sts/term_head.rb +2 -0
  361. data/lib/sts/niso_sts/term_section.rb +3 -3
  362. data/lib/sts/niso_sts/term_source.rb +2 -0
  363. data/lib/sts/niso_sts/tex_math.rb +2 -0
  364. data/lib/sts/niso_sts/textual_form.rb +2 -0
  365. data/lib/sts/niso_sts/time_stamp.rb +2 -0
  366. data/lib/sts/niso_sts/title.rb +26 -0
  367. data/lib/sts/niso_sts/title_wrap.rb +2 -0
  368. data/lib/sts/niso_sts/toc.rb +32 -0
  369. data/lib/sts/niso_sts/toc_div.rb +30 -0
  370. data/lib/sts/niso_sts/toc_entry.rb +30 -0
  371. data/lib/sts/niso_sts/toc_title_group.rb +22 -0
  372. data/lib/sts/niso_sts/trans_abstract.rb +1 -0
  373. data/lib/sts/niso_sts/trans_source.rb +2 -0
  374. data/lib/sts/niso_sts/trans_title.rb +2 -0
  375. data/lib/sts/niso_sts/trans_title_group.rb +3 -0
  376. data/lib/sts/niso_sts/underline.rb +5 -0
  377. data/lib/sts/niso_sts/uri.rb +4 -0
  378. data/lib/sts/niso_sts/urn.rb +2 -0
  379. data/lib/sts/niso_sts/verse_group.rb +1 -1
  380. data/lib/sts/niso_sts/verse_line.rb +2 -0
  381. data/lib/sts/niso_sts/version.rb +2 -0
  382. data/lib/sts/niso_sts/volume.rb +2 -0
  383. data/lib/sts/niso_sts/volume_id.rb +2 -0
  384. data/lib/sts/niso_sts/volume_issue_group.rb +3 -4
  385. data/lib/sts/niso_sts/volume_series.rb +2 -0
  386. data/lib/sts/niso_sts/word_count.rb +2 -0
  387. data/lib/sts/niso_sts/year.rb +2 -0
  388. data/lib/sts/niso_sts.rb +35 -10
  389. data/lib/sts/profiles/iso_iec/constraints.rb +43 -0
  390. data/lib/sts/profiles/iso_iec/validator.rb +73 -0
  391. data/lib/sts/profiles/iso_iec.rb +10 -0
  392. data/lib/sts/profiles.rb +7 -0
  393. data/lib/sts/tbx_iso_tml/bold.rb +30 -1
  394. data/lib/sts/tbx_iso_tml/caption.rb +3 -0
  395. data/lib/sts/tbx_iso_tml/col.rb +10 -0
  396. data/lib/sts/tbx_iso_tml/cross_reference.rb +2 -0
  397. data/lib/sts/tbx_iso_tml/definition.rb +18 -2
  398. data/lib/sts/tbx_iso_tml/entailed_term.rb +2 -0
  399. data/lib/sts/tbx_iso_tml/example.rb +9 -3
  400. data/lib/sts/tbx_iso_tml/external_graphic.rb +2 -0
  401. data/lib/sts/tbx_iso_tml/external_source.rb +2 -0
  402. data/lib/sts/tbx_iso_tml/fn.rb +3 -2
  403. data/lib/sts/tbx_iso_tml/fn_group.rb +3 -0
  404. data/lib/sts/tbx_iso_tml/geographical_usage.rb +3 -0
  405. data/lib/sts/tbx_iso_tml/grammatical_gender.rb +2 -0
  406. data/lib/sts/tbx_iso_tml/grammatical_number.rb +2 -0
  407. data/lib/sts/tbx_iso_tml/italic.rb +27 -1
  408. data/lib/sts/tbx_iso_tml/lang_set.rb +2 -0
  409. data/lib/sts/tbx_iso_tml/mfenced.rb +2 -0
  410. data/lib/sts/tbx_iso_tml/mfrac.rb +2 -2
  411. data/lib/sts/tbx_iso_tml/mi.rb +3 -2
  412. data/lib/sts/tbx_iso_tml/mrow.rb +2 -2
  413. data/lib/sts/tbx_iso_tml/mspace.rb +2 -0
  414. data/lib/sts/tbx_iso_tml/mstyle.rb +2 -2
  415. data/lib/sts/tbx_iso_tml/msub.rb +2 -0
  416. data/lib/sts/tbx_iso_tml/msup.rb +4 -1
  417. data/lib/sts/tbx_iso_tml/munder.rb +3 -0
  418. data/lib/sts/tbx_iso_tml/munderover.rb +2 -0
  419. data/lib/sts/tbx_iso_tml/normative_authorization.rb +2 -0
  420. data/lib/sts/tbx_iso_tml/note.rb +11 -7
  421. data/lib/sts/tbx_iso_tml/part_of_speech.rb +2 -0
  422. data/lib/sts/tbx_iso_tml/pronunciation.rb +3 -0
  423. data/lib/sts/tbx_iso_tml/see.rb +2 -0
  424. data/lib/sts/tbx_iso_tml/semantics.rb +2 -0
  425. data/lib/sts/tbx_iso_tml/source.rb +6 -0
  426. data/lib/sts/tbx_iso_tml/subject_field.rb +2 -0
  427. data/lib/sts/tbx_iso_tml/sup.rb +3 -2
  428. data/lib/sts/tbx_iso_tml/table.rb +1 -0
  429. data/lib/sts/tbx_iso_tml/table_wrap.rb +3 -1
  430. data/lib/sts/tbx_iso_tml/table_wrap_foot.rb +3 -0
  431. data/lib/sts/tbx_iso_tml/tbody.rb +9 -1
  432. data/lib/sts/tbx_iso_tml/td.rb +122 -17
  433. data/lib/sts/tbx_iso_tml/term.rb +9 -5
  434. data/lib/sts/tbx_iso_tml/term_type.rb +2 -0
  435. data/lib/sts/tbx_iso_tml/tfoot.rb +5 -1
  436. data/lib/sts/tbx_iso_tml/th.rb +133 -18
  437. data/lib/sts/tbx_iso_tml/thead.rb +9 -1
  438. data/lib/sts/tbx_iso_tml/tr.rb +16 -0
  439. data/lib/sts/tbx_iso_tml/xref.rb +2 -2
  440. data/lib/sts/version.rb +1 -1
  441. data/lib/sts.rb +1 -2
  442. data/reference-docs/Guidelines for coding ed.2.1.pdf +0 -0
  443. data/reference-docs/NISO-STS-1-2-compare-1-0.pdf +0 -0
  444. data/reference-docs/NISOSTS-guidelines-v1.0.pdf +0 -0
  445. metadata +76 -3
  446. data/lib/sts/niso_sts/mathml.rb +0 -69
@@ -10,12 +10,14 @@ module Sts
10
10
  attribute :xml_lang, :string
11
11
  attribute :preformat_type, :string
12
12
  attribute :originator, :string
13
+ attribute :xml_space, :string
13
14
  attribute :content, :string, collection: true
14
- attribute :bold, ::Sts::IsoSts::Bold
15
- attribute :italic, ::Sts::IsoSts::Italic
16
- attribute :ext_link, ::Sts::NisoSts::ExtLink
17
- attribute :uri, ::Sts::NisoSts::Uri
18
- attribute :styled_content, ::Sts::IsoSts::StyledContent
15
+ attribute :bold, ::Sts::IsoSts::Bold, collection: true
16
+ attribute :italic, ::Sts::IsoSts::Italic, collection: true
17
+ attribute :underline, ::Sts::IsoSts::Underline, collection: true
18
+ attribute :ext_link, ::Sts::IsoSts::ExtLink, collection: true
19
+ attribute :uri, ::Sts::IsoSts::Uri, collection: true
20
+ attribute :styled_content, ::Sts::IsoSts::StyledContent, collection: true
19
21
 
20
22
  xml do
21
23
  element "preformat"
@@ -28,6 +30,7 @@ module Sts
28
30
  map_attribute "xml:lang", to: :xml_lang
29
31
  map_attribute "preformat-type", to: :preformat_type
30
32
  map_attribute "originator", to: :originator
33
+ map_attribute "xml:space", to: :xml_space
31
34
 
32
35
  map_content to: :content
33
36
 
@@ -16,6 +16,7 @@ module Sts
16
16
 
17
17
  xml do
18
18
  element "ref"
19
+ ordered
19
20
 
20
21
  map_attribute "id", to: :id
21
22
  map_attribute "content-type", to: :content_type
@@ -16,6 +16,7 @@ module Sts
16
16
 
17
17
  xml do
18
18
  element "ref-list"
19
+ ordered
19
20
 
20
21
  map_attribute "id", to: :id
21
22
  map_attribute "content-type", to: :content_type
@@ -8,11 +8,11 @@ module Sts
8
8
  attribute :title_wrap, ::Sts::IsoSts::TitleWrap, collection: true
9
9
  attribute :doc_ident, ::Sts::IsoSts::DocumentIdentification
10
10
  attribute :std_ident, ::Sts::IsoSts::StandardIdentification
11
- attribute :content_language, ::Sts::NisoSts::ContentLanguage,
11
+ attribute :content_language, ::Sts::IsoSts::ContentLanguage,
12
12
  collection: true
13
- attribute :std_ref, ::Sts::NisoSts::StandardRef, collection: true
13
+ attribute :std_ref, ::Sts::IsoSts::StandardRef, collection: true
14
14
  attribute :doc_ref, :string
15
- attribute :release_date, ::Sts::NisoSts::ReleaseDate
15
+ attribute :release_date, ::Sts::IsoSts::ReleaseDate
16
16
  attribute :comm_ref, :string
17
17
  attribute :secretariat, ::Sts::NisoSts::Secretariat, collection: true
18
18
  attribute :ics, ::Sts::NisoSts::Ics, collection: true
@@ -22,13 +22,14 @@ module Sts
22
22
  collection: true
23
23
  attribute :custom_meta_group, ::Sts::NisoSts::CustomMetaGroup,
24
24
  collection: true
25
- attribute :meta_date, ::Sts::NisoSts::MetaDate, collection: true
25
+ attribute :meta_date, ::Sts::IsoSts::MetaDate, collection: true
26
26
  attribute :pub_date, ::Sts::NisoSts::PubDate
27
27
  attribute :wi_number, :string
28
28
  attribute :release_version_id, ::Sts::NisoSts::ReleaseVersionId
29
29
 
30
30
  xml do
31
31
  element "reg-meta"
32
+ ordered
32
33
 
33
34
  map_attribute "id", to: :id
34
35
  map_attribute "originator", to: :originator
@@ -3,9 +3,11 @@
3
3
  module Sts
4
4
  module IsoSts
5
5
  class ReleaseDate < Lutaml::Model::Serializable
6
+ attribute :id, :string
6
7
  attribute :content, :string, collection: true
7
8
  xml do
8
9
  element "release-date"
10
+ map_attribute "id", to: :id
9
11
  mixed_content
10
12
 
11
13
  map_content to: :content
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sts
4
+ module IsoSts
5
+ class Sc < Lutaml::Model::Serializable
6
+ attribute :specific_use, :string
7
+ attribute :content, :string, collection: true
8
+ attribute :bold, ::Sts::IsoSts::Bold, collection: true
9
+ attribute :italic, ::Sts::IsoSts::Italic, collection: true
10
+ attribute :sub, ::Sts::IsoSts::Sub, collection: true
11
+ attribute :sup, ::Sts::IsoSts::Sup, collection: true
12
+
13
+ xml do
14
+ element "sc"
15
+ mixed_content
16
+
17
+ map_attribute "specific-use", to: :specific_use
18
+ map_content to: :content
19
+ map_element "bold", to: :bold
20
+ map_element "italic", to: :italic
21
+ map_element "sub", to: :sub
22
+ map_element "sup", to: :sup
23
+ end
24
+ end
25
+ end
26
+ end
@@ -29,13 +29,19 @@ module Sts
29
29
  attribute :ref_list, ::Sts::IsoSts::RefList, collection: true
30
30
  attribute :fn_group, ::Sts::IsoSts::FnGroup, collection: true
31
31
  attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
32
- attribute :ext_link, ::Sts::NisoSts::ExtLink, collection: true
33
- attribute :uri, ::Sts::NisoSts::Uri, collection: true
32
+ attribute :ext_link, ::Sts::IsoSts::ExtLink, collection: true
33
+ attribute :uri, ::Sts::IsoSts::Uri, collection: true
34
34
  attribute :sec, ::Sts::IsoSts::Sec, collection: true
35
35
  attribute :term_sec, ::Sts::IsoSts::TermSec, collection: true
36
+ attribute :disp_quote, ::Sts::NisoSts::DispQuote, collection: true
37
+ attribute :fn, ::Sts::TbxIsoTml::Fn, collection: true
38
+ attribute :editing_instruction, ::Sts::NisoSts::EditingInstruction,
39
+ collection: true
40
+ attribute :boxed_text, ::Sts::NisoSts::BoxedText, collection: true
36
41
 
37
42
  xml do # rubocop:disable Metrics/BlockLength
38
43
  element "sec"
44
+ ordered
39
45
 
40
46
  map_attribute "id", to: :id
41
47
  map_attribute "lang", to: :xml_lang
@@ -66,6 +72,10 @@ module Sts
66
72
  map_element "uri", to: :uri
67
73
  map_element "sec", to: :sec
68
74
  map_element "term-sec", to: :term_sec
75
+ map_element "disp-quote", to: :disp_quote
76
+ map_element "fn", to: :fn
77
+ map_element "editing-instruction", to: :editing_instruction
78
+ map_element "boxed-text", to: :boxed_text
69
79
  end
70
80
  end
71
81
  end
@@ -3,9 +3,11 @@
3
3
  module Sts
4
4
  module IsoSts
5
5
  class Secretariat < Lutaml::Model::Serializable
6
+ attribute :id, :string
6
7
  attribute :content, :string, collection: true
7
8
  xml do
8
9
  element "secretariat"
10
+ map_attribute "id", to: :id
9
11
  mixed_content
10
12
 
11
13
  map_content to: :content
@@ -13,6 +13,12 @@ module Sts
13
13
 
14
14
  xml do
15
15
  element "standard"
16
+ ordered
17
+ namespace_scope [
18
+ ::Sts::Namespaces::MathmlNamespace,
19
+ ::Sts::Namespaces::TbxNamespace,
20
+ ::Lutaml::Xml::W3c::XlinkNamespace,
21
+ ]
16
22
  map_attribute "id", to: :id
17
23
  map_attribute "lang", to: :lang
18
24
  map_attribute "dtd-version", to: :dtd_version
@@ -3,13 +3,16 @@
3
3
  module Sts
4
4
  module IsoSts
5
5
  class StandardCrossReference < Lutaml::Model::Serializable
6
+ attribute :id, :string
6
7
  attribute :type, :string
7
8
  attribute :std_ident, ::Sts::IsoSts::StandardIdentification
8
- attribute :std_ref, ::Sts::NisoSts::StandardRef
9
- attribute :release_date, ::Sts::NisoSts::ReleaseDate
9
+ attribute :std_ref, ::Sts::IsoSts::StandardRef
10
+ attribute :release_date, ::Sts::IsoSts::ReleaseDate
10
11
 
11
12
  xml do
12
13
  element "std-xref"
14
+ map_attribute "id", to: :id
15
+ ordered
13
16
 
14
17
  map_attribute "type", to: :type
15
18
 
@@ -3,6 +3,7 @@
3
3
  module Sts
4
4
  module IsoSts
5
5
  class StandardIdentification < Lutaml::Model::Serializable
6
+ attribute :id, :string
6
7
  attribute :originator, ::Sts::NisoSts::Originator
7
8
  attribute :doc_type, ::Sts::NisoSts::DocType
8
9
  attribute :doc_number, ::Sts::NisoSts::DocNumber
@@ -15,6 +16,8 @@ module Sts
15
16
 
16
17
  xml do
17
18
  element "std-ident"
19
+ map_attribute "id", to: :id
20
+ ordered
18
21
 
19
22
  map_element "originator", to: :originator
20
23
  map_element "doc-type", to: :doc_type
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sts
4
+ module IsoSts
5
+ class StandardRef < Lutaml::Model::Serializable
6
+ attribute :type, :string
7
+ attribute :value, :string
8
+
9
+ xml do
10
+ element "std-ref"
11
+ map_attribute "type", to: :type
12
+ map_content to: :value
13
+ end
14
+ end
15
+ end
16
+ end
@@ -3,21 +3,23 @@
3
3
  module Sts
4
4
  module IsoSts
5
5
  class Std < Lutaml::Model::Serializable
6
+ attribute :id, :string
6
7
  attribute :type, :string
7
8
  attribute :std_id, :string
8
9
  attribute :content_type, :string
9
10
  attribute :specific_use, :string
10
11
  attribute :xml_lang, :string
11
- attribute :std_ref, ::Sts::IsoSts::StdRef
12
+ attribute :std_ref, ::Sts::IsoSts::StdRef, collection: true
12
13
  attribute :title, ::Sts::IsoSts::Title
13
14
  attribute :fn, ::Sts::TbxIsoTml::Fn, collection: true
14
- attribute :xref, ::Sts::TbxIsoTml::Xref
15
- attribute :bold, ::Sts::IsoSts::Bold
16
- attribute :italic, ::Sts::IsoSts::Italic
17
- attribute :named_content, ::Sts::NisoSts::NamedContent
15
+ attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
16
+ attribute :bold, ::Sts::IsoSts::Bold, collection: true
17
+ attribute :italic, ::Sts::IsoSts::Italic, collection: true
18
+ attribute :named_content, ::Sts::IsoSts::NamedContent
18
19
  attribute :content, :string, collection: true
19
20
  xml do
20
21
  element "std"
22
+ map_attribute "id", to: :id
21
23
  mixed_content
22
24
 
23
25
  map_attribute "type", to: :type
@@ -3,6 +3,7 @@
3
3
  module Sts
4
4
  module IsoSts
5
5
  class StdRef < Lutaml::Model::Serializable
6
+ attribute :id, :string
6
7
  attribute :type, :string
7
8
  attribute :originator, ::Sts::NisoSts::Originator
8
9
  attribute :doc_type, ::Sts::NisoSts::DocType
@@ -15,6 +16,7 @@ module Sts
15
16
  attribute :content, :string, collection: true
16
17
  xml do
17
18
  element "std-ref"
19
+ map_attribute "id", to: :id
18
20
  mixed_content
19
21
 
20
22
  map_attribute "type", to: :type
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sts
4
+ module IsoSts
5
+ class Strike < Lutaml::Model::Serializable
6
+ attribute :specific_use, :string
7
+ attribute :content, :string, collection: true
8
+ attribute :bold, ::Sts::IsoSts::Bold, collection: true
9
+ attribute :italic, ::Sts::IsoSts::Italic, collection: true
10
+ attribute :sub, ::Sts::IsoSts::Sub, collection: true
11
+ attribute :sup, ::Sts::IsoSts::Sup, collection: true
12
+
13
+ xml do
14
+ element "strike"
15
+ mixed_content
16
+
17
+ map_attribute "specific-use", to: :specific_use
18
+ map_content to: :content
19
+ map_element "bold", to: :bold
20
+ map_element "italic", to: :italic
21
+ map_element "sub", to: :sub
22
+ map_element "sup", to: :sup
23
+ end
24
+ end
25
+ end
26
+ end
@@ -3,6 +3,7 @@
3
3
  module Sts
4
4
  module IsoSts
5
5
  class StyledContent < Lutaml::Model::Serializable
6
+ attribute :id, :string
6
7
  attribute :style, :string
7
8
  attribute :style_type, :string
8
9
  attribute :alt, :string
@@ -11,24 +12,26 @@ module Sts
11
12
  attribute :content, :string, collection: true
12
13
  attribute :bold, ::Sts::IsoSts::Bold, collection: true
13
14
  attribute :italic, ::Sts::IsoSts::Italic, collection: true
14
- attribute :sub, ::Sts::NisoSts::Sub
15
- attribute :sup, ::Sts::NisoSts::Sup
16
- attribute :xref, ::Sts::TbxIsoTml::Xref
17
- attribute :ext_link, ::Sts::NisoSts::ExtLink
18
- attribute :uri, ::Sts::NisoSts::Uri
19
- attribute :inline_formula, ::Sts::IsoSts::InlineFormula
20
- attribute :disp_formula, ::Sts::IsoSts::DispFormula
21
- attribute :std, ::Sts::IsoSts::Std
22
- attribute :named_content, ::Sts::NisoSts::NamedContent
23
- attribute :monospace, ::Sts::NisoSts::Monospace
24
- attribute :sc, ::Sts::NisoSts::Sc
25
- attribute :strike, ::Sts::NisoSts::Strike
26
- attribute :underline, ::Sts::NisoSts::Underline
27
- attribute :ruby, ::Sts::NisoSts::Ruby
28
- attribute :break, ::Sts::IsoSts::Break
15
+ attribute :sub, ::Sts::IsoSts::Sub, collection: true
16
+ attribute :sup, ::Sts::IsoSts::Sup, collection: true
17
+ attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
18
+ attribute :ext_link, ::Sts::IsoSts::ExtLink, collection: true
19
+ attribute :uri, ::Sts::IsoSts::Uri, collection: true
20
+ attribute :inline_formula, ::Sts::IsoSts::InlineFormula, collection: true
21
+ attribute :disp_formula, ::Sts::IsoSts::DispFormula, collection: true
22
+ attribute :std, ::Sts::IsoSts::Std, collection: true
23
+ attribute :named_content, ::Sts::IsoSts::NamedContent, collection: true
24
+ attribute :monospace, ::Sts::IsoSts::Monospace, collection: true
25
+ attribute :sc, ::Sts::IsoSts::Sc, collection: true
26
+ attribute :strike, ::Sts::IsoSts::Strike, collection: true
27
+ attribute :underline, ::Sts::IsoSts::Underline, collection: true
28
+ attribute :ruby, ::Sts::NisoSts::Ruby, collection: true
29
+ attribute :break, ::Sts::IsoSts::Break, collection: true
30
+ attribute :styled_content, ::Sts::IsoSts::StyledContent, collection: true
29
31
 
30
32
  xml do
31
33
  element "styled-content"
34
+ map_attribute "id", to: :id
32
35
  mixed_content
33
36
 
34
37
  map_attribute "style", to: :style
@@ -56,6 +59,7 @@ module Sts
56
59
  map_element "underline", to: :underline
57
60
  map_element "ruby", to: :ruby
58
61
  map_element "break", to: :break
62
+ map_element "styled-content", to: :styled_content
59
63
  end
60
64
  end
61
65
  end
@@ -3,9 +3,11 @@
3
3
  module Sts
4
4
  module IsoSts
5
5
  class Sub < Lutaml::Model::Serializable
6
+ attribute :id, :string
6
7
  attribute :content, :string, collection: true
7
8
  xml do
8
9
  element "sub"
10
+ map_attribute "id", to: :id
9
11
  mixed_content
10
12
 
11
13
  map_content to: :content
@@ -3,9 +3,11 @@
3
3
  module Sts
4
4
  module IsoSts
5
5
  class Sup < Lutaml::Model::Serializable
6
+ attribute :id, :string
6
7
  attribute :content, :string, collection: true
7
8
  xml do
8
9
  element "sup"
10
+ map_attribute "id", to: :id
9
11
  mixed_content
10
12
 
11
13
  map_content to: :content
@@ -22,6 +22,7 @@ module Sts
22
22
 
23
23
  xml do
24
24
  element "table"
25
+ ordered
25
26
 
26
27
  map_attribute "id", to: :id
27
28
  map_attribute "content-type", to: :content_type
@@ -25,6 +25,7 @@ module Sts
25
25
 
26
26
  xml do
27
27
  element "table-wrap"
28
+ ordered
28
29
 
29
30
  map_attribute "id", to: :id
30
31
  map_attribute "position", to: :position
@@ -3,6 +3,7 @@
3
3
  module Sts
4
4
  module IsoSts
5
5
  class TableWrapFoot < Lutaml::Model::Serializable
6
+ attribute :id, :string
6
7
  attribute :title, ::Sts::IsoSts::Title
7
8
  attribute :paragraph, ::Sts::IsoSts::Paragraph, collection: true
8
9
  attribute :non_normative_note, ::Sts::IsoSts::NonNormativeNote
@@ -14,6 +15,8 @@ module Sts
14
15
 
15
16
  xml do
16
17
  element "table-wrap-foot"
18
+ map_attribute "id", to: :id
19
+ ordered
17
20
 
18
21
  map_element "title", to: :title
19
22
  map_element "p", to: :paragraph
@@ -18,20 +18,30 @@ module Sts
18
18
  attribute :valign, :string
19
19
  attribute :content, :string, collection: true
20
20
  attribute :paragraph, ::Sts::IsoSts::Paragraph, collection: true
21
- attribute :fig, ::Sts::IsoSts::Fig
22
- attribute :graphic, ::Sts::IsoSts::Graphic
23
- attribute :disp_formula, ::Sts::IsoSts::DispFormula
24
- attribute :list, ::Sts::IsoSts::List
25
- attribute :def_list, ::Sts::IsoSts::DefList
26
- attribute :math, ::Sts::IsoSts::Mathml2::Math
27
- attribute :std, ::Sts::IsoSts::Std
28
- attribute :fn, ::Sts::TbxIsoTml::Fn
29
- attribute :xref, ::Sts::TbxIsoTml::Xref
30
- attribute :bold, ::Sts::IsoSts::Bold
31
- attribute :italic, ::Sts::IsoSts::Italic
32
- attribute :non_normative_note, ::Sts::IsoSts::NonNormativeNote
33
- attribute :non_normative_example, ::Sts::IsoSts::NonNormativeExample
34
- attribute :styled_content, ::Sts::IsoSts::StyledContent
21
+ attribute :fig, ::Sts::IsoSts::Fig, collection: true
22
+ attribute :graphic, ::Sts::IsoSts::Graphic, collection: true
23
+ attribute :disp_formula, ::Sts::IsoSts::DispFormula, collection: true
24
+ attribute :list, ::Sts::IsoSts::List, collection: true
25
+ attribute :def_list, ::Sts::IsoSts::DefList, collection: true
26
+ attribute :math, Mml::V3::Math, collection: true
27
+ attribute :std, ::Sts::IsoSts::Std, collection: true
28
+ attribute :fn, ::Sts::TbxIsoTml::Fn, collection: true
29
+ attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
30
+ attribute :bold, ::Sts::IsoSts::Bold, collection: true
31
+ attribute :italic, ::Sts::IsoSts::Italic, collection: true
32
+ attribute :non_normative_note, ::Sts::IsoSts::NonNormativeNote,
33
+ collection: true
34
+ attribute :non_normative_example, ::Sts::IsoSts::NonNormativeExample,
35
+ collection: true
36
+ attribute :styled_content, ::Sts::IsoSts::StyledContent, collection: true
37
+ attribute :brk, ::Sts::IsoSts::Break, collection: true
38
+ attribute :underline, ::Sts::IsoSts::Underline, collection: true
39
+ attribute :sub, ::Sts::IsoSts::Sub, collection: true
40
+ attribute :sup, ::Sts::IsoSts::Sup, collection: true
41
+ attribute :ext_link, ::Sts::IsoSts::ExtLink, collection: true
42
+ attribute :monospace, ::Sts::IsoSts::Monospace, collection: true
43
+ attribute :sc, ::Sts::IsoSts::Sc, collection: true
44
+ attribute :strike, ::Sts::IsoSts::Strike, collection: true
35
45
 
36
46
  xml do # rubocop:disable Metrics/BlockLength
37
47
  element "td"
@@ -68,6 +78,14 @@ module Sts
68
78
  map_element "non-normative-note", to: :non_normative_note
69
79
  map_element "non-normative-example", to: :non_normative_example
70
80
  map_element "styled-content", to: :styled_content
81
+ map_element "break", to: :brk
82
+ map_element "underline", to: :underline
83
+ map_element "sub", to: :sub
84
+ map_element "sup", to: :sup
85
+ map_element "ext-link", to: :ext_link
86
+ map_element "monospace", to: :monospace
87
+ map_element "sc", to: :sc
88
+ map_element "strike", to: :strike
71
89
  end
72
90
  end
73
91
  end
@@ -10,14 +10,14 @@ module Sts
10
10
  attribute :content, :string, collection: true
11
11
  attribute :bold, ::Sts::IsoSts::Bold
12
12
  attribute :italic, ::Sts::IsoSts::Italic
13
- attribute :sub, ::Sts::NisoSts::Sub
14
- attribute :sup, ::Sts::NisoSts::Sup
13
+ attribute :sub, ::Sts::IsoSts::Sub
14
+ attribute :sup, ::Sts::IsoSts::Sup
15
15
  attribute :xref, ::Sts::TbxIsoTml::Xref
16
- attribute :ext_link, ::Sts::NisoSts::ExtLink
17
- attribute :uri, ::Sts::NisoSts::Uri
18
- attribute :named_content, ::Sts::NisoSts::NamedContent
16
+ attribute :ext_link, ::Sts::IsoSts::ExtLink
17
+ attribute :uri, ::Sts::IsoSts::Uri
18
+ attribute :named_content, ::Sts::IsoSts::NamedContent
19
19
  attribute :styled_content, ::Sts::IsoSts::StyledContent
20
- attribute :math, ::Sts::IsoSts::Mathml2::Math
20
+ attribute :math, Mml::V3::Math
21
21
 
22
22
  xml do
23
23
  element "term"
@@ -24,6 +24,7 @@ module Sts
24
24
 
25
25
  xml do
26
26
  element "term-sec"
27
+ ordered
27
28
 
28
29
  map_attribute "id", to: :id
29
30
  map_attribute "lang", to: :xml_lang
@@ -18,20 +18,30 @@ module Sts
18
18
  attribute :valign, :string
19
19
  attribute :content, :string, collection: true
20
20
  attribute :paragraph, ::Sts::IsoSts::Paragraph, collection: true
21
- attribute :fig, ::Sts::IsoSts::Fig
22
- attribute :graphic, ::Sts::IsoSts::Graphic
23
- attribute :disp_formula, ::Sts::IsoSts::DispFormula
24
- attribute :list, ::Sts::IsoSts::List
25
- attribute :def_list, ::Sts::IsoSts::DefList
26
- attribute :math, ::Sts::IsoSts::Mathml2::Math
27
- attribute :std, ::Sts::IsoSts::Std
28
- attribute :fn, ::Sts::TbxIsoTml::Fn
29
- attribute :xref, ::Sts::TbxIsoTml::Xref
30
- attribute :bold, ::Sts::IsoSts::Bold
31
- attribute :italic, ::Sts::IsoSts::Italic
32
- attribute :non_normative_note, ::Sts::IsoSts::NonNormativeNote
33
- attribute :non_normative_example, ::Sts::IsoSts::NonNormativeExample
34
- attribute :styled_content, ::Sts::IsoSts::StyledContent
21
+ attribute :fig, ::Sts::IsoSts::Fig, collection: true
22
+ attribute :graphic, ::Sts::IsoSts::Graphic, collection: true
23
+ attribute :disp_formula, ::Sts::IsoSts::DispFormula, collection: true
24
+ attribute :list, ::Sts::IsoSts::List, collection: true
25
+ attribute :def_list, ::Sts::IsoSts::DefList, collection: true
26
+ attribute :math, Mml::V3::Math, collection: true
27
+ attribute :std, ::Sts::IsoSts::Std, collection: true
28
+ attribute :fn, ::Sts::TbxIsoTml::Fn, collection: true
29
+ attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
30
+ attribute :bold, ::Sts::IsoSts::Bold, collection: true
31
+ attribute :italic, ::Sts::IsoSts::Italic, collection: true
32
+ attribute :non_normative_note, ::Sts::IsoSts::NonNormativeNote,
33
+ collection: true
34
+ attribute :non_normative_example, ::Sts::IsoSts::NonNormativeExample,
35
+ collection: true
36
+ attribute :styled_content, ::Sts::IsoSts::StyledContent, collection: true
37
+ attribute :brk, ::Sts::IsoSts::Break, collection: true
38
+ attribute :underline, ::Sts::IsoSts::Underline, collection: true
39
+ attribute :sub, ::Sts::IsoSts::Sub, collection: true
40
+ attribute :sup, ::Sts::IsoSts::Sup, collection: true
41
+ attribute :ext_link, ::Sts::IsoSts::ExtLink, collection: true
42
+ attribute :monospace, ::Sts::IsoSts::Monospace, collection: true
43
+ attribute :sc, ::Sts::IsoSts::Sc, collection: true
44
+ attribute :strike, ::Sts::IsoSts::Strike, collection: true
35
45
 
36
46
  xml do # rubocop:disable Metrics/BlockLength
37
47
  element "th"
@@ -68,6 +78,14 @@ module Sts
68
78
  map_element "non-normative-note", to: :non_normative_note
69
79
  map_element "non-normative-example", to: :non_normative_example
70
80
  map_element "styled-content", to: :styled_content
81
+ map_element "break", to: :brk
82
+ map_element "underline", to: :underline
83
+ map_element "sub", to: :sub
84
+ map_element "sup", to: :sup
85
+ map_element "ext-link", to: :ext_link
86
+ map_element "monospace", to: :monospace
87
+ map_element "sc", to: :sc
88
+ map_element "strike", to: :strike
71
89
  end
72
90
  end
73
91
  end
@@ -3,17 +3,23 @@
3
3
  module Sts
4
4
  module IsoSts
5
5
  class Title < Lutaml::Model::Serializable
6
+ attribute :id, :string
6
7
  attribute :content, :string, collection: true
7
- attribute :bold, ::Sts::IsoSts::Bold
8
- attribute :italic, ::Sts::IsoSts::Italic
9
- attribute :sub, ::Sts::NisoSts::Sub
10
- attribute :sup, ::Sts::NisoSts::Sup
11
- attribute :xref, ::Sts::TbxIsoTml::Xref
12
- attribute :break, ::Sts::IsoSts::Break
13
- attribute :styled_content, ::Sts::IsoSts::StyledContent
8
+ attribute :bold, ::Sts::IsoSts::Bold, collection: true
9
+ attribute :italic, ::Sts::IsoSts::Italic, collection: true
10
+ attribute :sub, ::Sts::IsoSts::Sub, collection: true
11
+ attribute :sup, ::Sts::IsoSts::Sup, collection: true
12
+ attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
13
+ attribute :break, ::Sts::IsoSts::Break, collection: true
14
+ attribute :styled_content, ::Sts::IsoSts::StyledContent, collection: true
15
+ attribute :monospace, ::Sts::IsoSts::Monospace, collection: true
16
+ attribute :sc, ::Sts::IsoSts::Sc, collection: true
17
+ attribute :inline_formula, ::Sts::IsoSts::InlineFormula, collection: true
18
+ attribute :std, ::Sts::IsoSts::Std, collection: true
14
19
 
15
20
  xml do
16
21
  element "title"
22
+ map_attribute "id", to: :id
17
23
  mixed_content
18
24
 
19
25
  map_content to: :content
@@ -24,6 +30,10 @@ module Sts
24
30
  map_element "xref", to: :xref
25
31
  map_element "break", to: :break
26
32
  map_element "styled-content", to: :styled_content
33
+ map_element "monospace", to: :monospace
34
+ map_element "sc", to: :sc
35
+ map_element "inline-formula", to: :inline_formula
36
+ map_element "std", to: :std
27
37
  end
28
38
  end
29
39
  end
@@ -3,6 +3,7 @@
3
3
  module Sts
4
4
  module IsoSts
5
5
  class TitleCompl < Lutaml::Model::Serializable
6
+ attribute :id, :string
6
7
  attribute :content, :string, collection: true
7
8
  attribute :bold, ::Sts::IsoSts::Bold
8
9
  attribute :italic, ::Sts::IsoSts::Italic
@@ -10,6 +11,7 @@ module Sts
10
11
 
11
12
  xml do
12
13
  element "compl"
14
+ map_attribute "id", to: :id
13
15
  mixed_content
14
16
 
15
17
  map_content to: :content
@@ -3,6 +3,7 @@
3
3
  module Sts
4
4
  module IsoSts
5
5
  class TitleFull < Lutaml::Model::Serializable
6
+ attribute :id, :string
6
7
  attribute :content, :string, collection: true
7
8
  attribute :bold, ::Sts::IsoSts::Bold
8
9
  attribute :italic, ::Sts::IsoSts::Italic
@@ -10,6 +11,7 @@ module Sts
10
11
 
11
12
  xml do
12
13
  element "full"
14
+ map_attribute "id", to: :id
13
15
  mixed_content
14
16
 
15
17
  map_content to: :content