niso-jats 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (333) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/rake.yml +18 -0
  3. data/.github/workflows/release.yml +25 -0
  4. data/.gitignore +13 -0
  5. data/.gitmodules +3 -0
  6. data/.rspec +3 -0
  7. data/.rubocop.yml +21 -0
  8. data/CODE_OF_CONDUCT.md +84 -0
  9. data/Gemfile +14 -0
  10. data/README.adoc +73 -0
  11. data/Rakefile +12 -0
  12. data/bin/console +11 -0
  13. data/bin/setup +8 -0
  14. data/lib/niso/jats/abbrev.rb +29 -0
  15. data/lib/niso/jats/abbrev_journal_title.rb +23 -0
  16. data/lib/niso/jats/abstract.rb +31 -0
  17. data/lib/niso/jats/access_date.rb +25 -0
  18. data/lib/niso/jats/ack.rb +39 -0
  19. data/lib/niso/jats/addr_line.rb +91 -0
  20. data/lib/niso/jats/address.rb +45 -0
  21. data/lib/niso/jats/aff.rb +93 -0
  22. data/lib/niso/jats/aff_alternatives.rb +17 -0
  23. data/lib/niso/jats/alt_text.rb +23 -0
  24. data/lib/niso/jats/alt_title.rb +65 -0
  25. data/lib/niso/jats/alternatives.rb +49 -0
  26. data/lib/niso/jats/annotation.rb +23 -0
  27. data/lib/niso/jats/anonymous.rb +19 -0
  28. data/lib/niso/jats/answer.rb +109 -0
  29. data/lib/niso/jats/answer_set.rb +37 -0
  30. data/lib/niso/jats/app.rb +105 -0
  31. data/lib/niso/jats/app_group.rb +105 -0
  32. data/lib/niso/jats/array.rb +45 -0
  33. data/lib/niso/jats/article.rb +37 -0
  34. data/lib/niso/jats/article_categories.rb +21 -0
  35. data/lib/niso/jats/article_id.rb +25 -0
  36. data/lib/niso/jats/article_meta.rb +108 -0
  37. data/lib/niso/jats/article_title.rb +61 -0
  38. data/lib/niso/jats/article_version.rb +39 -0
  39. data/lib/niso/jats/article_version_alternatives.rb +17 -0
  40. data/lib/niso/jats/attrib.rb +61 -0
  41. data/lib/niso/jats/author_comment.rb +25 -0
  42. data/lib/niso/jats/author_notes.rb +29 -0
  43. data/lib/niso/jats/award_desc.rb +21 -0
  44. data/lib/niso/jats/award_group.rb +40 -0
  45. data/lib/niso/jats/award_id.rb +83 -0
  46. data/lib/niso/jats/award_name.rb +21 -0
  47. data/lib/niso/jats/back.rb +35 -0
  48. data/lib/niso/jats/basic_text.rb +48 -0
  49. data/lib/niso/jats/bio.rb +107 -0
  50. data/lib/niso/jats/block_alternatives.rb +27 -0
  51. data/lib/niso/jats/body.rb +89 -0
  52. data/lib/niso/jats/bold.rb +61 -0
  53. data/lib/niso/jats/boxed_text.rb +113 -0
  54. data/lib/niso/jats/break.rb +15 -0
  55. data/lib/niso/jats/caption.rb +27 -0
  56. data/lib/niso/jats/chapter_title.rb +81 -0
  57. data/lib/niso/jats/chem_struct.rb +95 -0
  58. data/lib/niso/jats/chem_struct_wrap.rb +65 -0
  59. data/lib/niso/jats/citation_alternatives.rb +23 -0
  60. data/lib/niso/jats/city.rb +23 -0
  61. data/lib/niso/jats/code.rb +95 -0
  62. data/lib/niso/jats/col.rb +31 -0
  63. data/lib/niso/jats/colgroup.rb +33 -0
  64. data/lib/niso/jats/collab.rb +123 -0
  65. data/lib/niso/jats/collab_alternatives.rb +17 -0
  66. data/lib/niso/jats/comment.rb +63 -0
  67. data/lib/niso/jats/compound_kwd.rb +29 -0
  68. data/lib/niso/jats/compound_kwd_part.rb +67 -0
  69. data/lib/niso/jats/compound_subject.rb +29 -0
  70. data/lib/niso/jats/compound_subject_part.rb +61 -0
  71. data/lib/niso/jats/conf_acronym.rb +23 -0
  72. data/lib/niso/jats/conf_date.rb +27 -0
  73. data/lib/niso/jats/conf_loc.rb +41 -0
  74. data/lib/niso/jats/conf_name.rb +23 -0
  75. data/lib/niso/jats/conf_num.rb +23 -0
  76. data/lib/niso/jats/conf_sponsor.rb +27 -0
  77. data/lib/niso/jats/conf_theme.rb +75 -0
  78. data/lib/niso/jats/conference.rb +37 -0
  79. data/lib/niso/jats/contrib.rb +67 -0
  80. data/lib/niso/jats/contrib_group.rb +43 -0
  81. data/lib/niso/jats/contrib_id.rb +29 -0
  82. data/lib/niso/jats/contributed_resource_group.rb +27 -0
  83. data/lib/niso/jats/copyright_holder.rb +31 -0
  84. data/lib/niso/jats/copyright_statement.rb +59 -0
  85. data/lib/niso/jats/copyright_year.rb +21 -0
  86. data/lib/niso/jats/corresp.rb +79 -0
  87. data/lib/niso/jats/count.rb +19 -0
  88. data/lib/niso/jats/country.rb +25 -0
  89. data/lib/niso/jats/counts.rb +29 -0
  90. data/lib/niso/jats/custom_meta.rb +35 -0
  91. data/lib/niso/jats/custom_meta_group.rb +23 -0
  92. data/lib/niso/jats/data_title.rb +65 -0
  93. data/lib/niso/jats/date.rb +35 -0
  94. data/lib/niso/jats/date_in_citation.rb +37 -0
  95. data/lib/niso/jats/day.rb +23 -0
  96. data/lib/niso/jats/def.rb +23 -0
  97. data/lib/niso/jats/def_head.rb +57 -0
  98. data/lib/niso/jats/def_item.rb +23 -0
  99. data/lib/niso/jats/def_list.rb +39 -0
  100. data/lib/niso/jats/degrees.rb +23 -0
  101. data/lib/niso/jats/disp_formula.rb +103 -0
  102. data/lib/niso/jats/disp_formula_group.rb +47 -0
  103. data/lib/niso/jats/disp_quote.rb +97 -0
  104. data/lib/niso/jats/edition.rb +29 -0
  105. data/lib/niso/jats/element_citation.rb +203 -0
  106. data/lib/niso/jats/elocation_id.rb +23 -0
  107. data/lib/niso/jats/email.rb +25 -0
  108. data/lib/niso/jats/equation_count.rb +17 -0
  109. data/lib/niso/jats/era.rb +23 -0
  110. data/lib/niso/jats/etal.rb +21 -0
  111. data/lib/niso/jats/event.rb +48 -0
  112. data/lib/niso/jats/event_desc.rb +49 -0
  113. data/lib/niso/jats/explanation.rb +107 -0
  114. data/lib/niso/jats/ext_link.rb +59 -0
  115. data/lib/niso/jats/extended_by.rb +31 -0
  116. data/lib/niso/jats/fax.rb +21 -0
  117. data/lib/niso/jats/fig.rb +87 -0
  118. data/lib/niso/jats/fig_count.rb +17 -0
  119. data/lib/niso/jats/fig_group.rb +59 -0
  120. data/lib/niso/jats/fixed_case.rb +61 -0
  121. data/lib/niso/jats/floats_group.rb +41 -0
  122. data/lib/niso/jats/fn.rb +32 -0
  123. data/lib/niso/jats/fn_group.rb +27 -0
  124. data/lib/niso/jats/fpage.rb +25 -0
  125. data/lib/niso/jats/front.rb +21 -0
  126. data/lib/niso/jats/front_stub.rb +108 -0
  127. data/lib/niso/jats/funding_group.rb +25 -0
  128. data/lib/niso/jats/funding_source.rb +85 -0
  129. data/lib/niso/jats/funding_statement.rb +59 -0
  130. data/lib/niso/jats/given_names.rb +19 -0
  131. data/lib/niso/jats/glossary.rb +97 -0
  132. data/lib/niso/jats/glyph_data.rb +29 -0
  133. data/lib/niso/jats/glyph_ref.rb +17 -0
  134. data/lib/niso/jats/gov.rb +53 -0
  135. data/lib/niso/jats/graphic.rb +61 -0
  136. data/lib/niso/jats/history.rb +17 -0
  137. data/lib/niso/jats/hr.rb +15 -0
  138. data/lib/niso/jats/index_term.rb +39 -0
  139. data/lib/niso/jats/index_term_range_end.rb +17 -0
  140. data/lib/niso/jats/inline_formula.rb +73 -0
  141. data/lib/niso/jats/inline_graphic.rb +33 -0
  142. data/lib/niso/jats/inline_media.rb +77 -0
  143. data/lib/niso/jats/inline_supplementary_material.rb +69 -0
  144. data/lib/niso/jats/institution.rb +31 -0
  145. data/lib/niso/jats/institution_id.rb +31 -0
  146. data/lib/niso/jats/institution_wrap.rb +19 -0
  147. data/lib/niso/jats/isbn.rb +25 -0
  148. data/lib/niso/jats/issn.rb +27 -0
  149. data/lib/niso/jats/issn_l.rb +21 -0
  150. data/lib/niso/jats/issue.rb +25 -0
  151. data/lib/niso/jats/issue_id.rb +29 -0
  152. data/lib/niso/jats/issue_part.rb +23 -0
  153. data/lib/niso/jats/issue_sponsor.rb +23 -0
  154. data/lib/niso/jats/issue_subtitle.rb +23 -0
  155. data/lib/niso/jats/issue_title.rb +23 -0
  156. data/lib/niso/jats/issue_title_group.rb +27 -0
  157. data/lib/niso/jats/italic.rb +61 -0
  158. data/lib/niso/jats/journal_id.rb +25 -0
  159. data/lib/niso/jats/journal_meta.rb +37 -0
  160. data/lib/niso/jats/journal_subtitle.rb +23 -0
  161. data/lib/niso/jats/journal_title.rb +23 -0
  162. data/lib/niso/jats/journal_title_group.rb +25 -0
  163. data/lib/niso/jats/kwd.rb +59 -0
  164. data/lib/niso/jats/kwd_group.rb +37 -0
  165. data/lib/niso/jats/label.rb +59 -0
  166. data/lib/niso/jats/license.rb +25 -0
  167. data/lib/niso/jats/license_p.rb +169 -0
  168. data/lib/niso/jats/license_paragraph.rb +17 -0
  169. data/lib/niso/jats/list.rb +35 -0
  170. data/lib/niso/jats/list_item.rb +29 -0
  171. data/lib/niso/jats/long_desc.rb +25 -0
  172. data/lib/niso/jats/lpage.rb +23 -0
  173. data/lib/niso/jats/media.rb +59 -0
  174. data/lib/niso/jats/meta_name.rb +17 -0
  175. data/lib/niso/jats/meta_value.rb +57 -0
  176. data/lib/niso/jats/milestone_end.rb +25 -0
  177. data/lib/niso/jats/milestone_start.rb +25 -0
  178. data/lib/niso/jats/mixed_citation.rb +205 -0
  179. data/lib/niso/jats/module_includer.rb +47 -0
  180. data/lib/niso/jats/monospace.rb +61 -0
  181. data/lib/niso/jats/month.rb +23 -0
  182. data/lib/niso/jats/name.rb +31 -0
  183. data/lib/niso/jats/name_alternatives.rb +19 -0
  184. data/lib/niso/jats/named_content.rb +169 -0
  185. data/lib/niso/jats/nested_kwd.rb +33 -0
  186. data/lib/niso/jats/nlm_citation.rb +85 -0
  187. data/lib/niso/jats/note.rb +27 -0
  188. data/lib/niso/jats/notes.rb +103 -0
  189. data/lib/niso/jats/object_id.rb +25 -0
  190. data/lib/niso/jats/on_behalf_of.rb +61 -0
  191. data/lib/niso/jats/open_access.rb +21 -0
  192. data/lib/niso/jats/option.rb +109 -0
  193. data/lib/niso/jats/overline.rb +61 -0
  194. data/lib/niso/jats/overline_end.rb +19 -0
  195. data/lib/niso/jats/overline_start.rb +17 -0
  196. data/lib/niso/jats/page_count.rb +17 -0
  197. data/lib/niso/jats/page_range.rb +23 -0
  198. data/lib/niso/jats/paragraph.rb +169 -0
  199. data/lib/niso/jats/part_title.rb +81 -0
  200. data/lib/niso/jats/patent.rb +25 -0
  201. data/lib/niso/jats/permissions.rb +23 -0
  202. data/lib/niso/jats/person_group.rb +45 -0
  203. data/lib/niso/jats/phone.rb +21 -0
  204. data/lib/niso/jats/postal_code.rb +23 -0
  205. data/lib/niso/jats/prefix.rb +23 -0
  206. data/lib/niso/jats/preformat.rb +81 -0
  207. data/lib/niso/jats/price.rb +47 -0
  208. data/lib/niso/jats/principal_award_recipient.rb +33 -0
  209. data/lib/niso/jats/principal_investigator.rb +29 -0
  210. data/lib/niso/jats/private_char.rb +27 -0
  211. data/lib/niso/jats/processing_meta.rb +31 -0
  212. data/lib/niso/jats/product.rb +215 -0
  213. data/lib/niso/jats/pub_date.rb +39 -0
  214. data/lib/niso/jats/pub_date_not_available.rb +17 -0
  215. data/lib/niso/jats/pub_history.rb +17 -0
  216. data/lib/niso/jats/pub_id.rb +27 -0
  217. data/lib/niso/jats/publisher.rb +21 -0
  218. data/lib/niso/jats/publisher_loc.rb +45 -0
  219. data/lib/niso/jats/publisher_name.rb +25 -0
  220. data/lib/niso/jats/question.rb +113 -0
  221. data/lib/niso/jats/question_preamble.rb +101 -0
  222. data/lib/niso/jats/question_wrap.rb +33 -0
  223. data/lib/niso/jats/question_wrap_group.rb +37 -0
  224. data/lib/niso/jats/rb.rb +43 -0
  225. data/lib/niso/jats/ref.rb +33 -0
  226. data/lib/niso/jats/ref_count.rb +17 -0
  227. data/lib/niso/jats/ref_list.rb +99 -0
  228. data/lib/niso/jats/related_article.rb +185 -0
  229. data/lib/niso/jats/related_object.rb +195 -0
  230. data/lib/niso/jats/resource_group.rb +23 -0
  231. data/lib/niso/jats/resource_id.rb +31 -0
  232. data/lib/niso/jats/resource_name.rb +49 -0
  233. data/lib/niso/jats/resource_wrap.rb +19 -0
  234. data/lib/niso/jats/response.rb +33 -0
  235. data/lib/niso/jats/restricted_by.rb +31 -0
  236. data/lib/niso/jats/role.rb +65 -0
  237. data/lib/niso/jats/roman.rb +61 -0
  238. data/lib/niso/jats/rp.rb +17 -0
  239. data/lib/niso/jats/rt.rb +23 -0
  240. data/lib/niso/jats/ruby.rb +23 -0
  241. data/lib/niso/jats/sans_serif.rb +97 -0
  242. data/lib/niso/jats/sc.rb +61 -0
  243. data/lib/niso/jats/season.rb +23 -0
  244. data/lib/niso/jats/sec.rb +103 -0
  245. data/lib/niso/jats/sec_meta.rb +27 -0
  246. data/lib/niso/jats/see.rb +79 -0
  247. data/lib/niso/jats/see_also.rb +87 -0
  248. data/lib/niso/jats/self_uri.rb +27 -0
  249. data/lib/niso/jats/series.rb +53 -0
  250. data/lib/niso/jats/series_text.rb +53 -0
  251. data/lib/niso/jats/series_title.rb +53 -0
  252. data/lib/niso/jats/sig.rb +67 -0
  253. data/lib/niso/jats/sig_block.rb +69 -0
  254. data/lib/niso/jats/size.rb +23 -0
  255. data/lib/niso/jats/source.rb +83 -0
  256. data/lib/niso/jats/speaker.rb +39 -0
  257. data/lib/niso/jats/speech.rb +27 -0
  258. data/lib/niso/jats/state.rb +23 -0
  259. data/lib/niso/jats/statement.rb +39 -0
  260. data/lib/niso/jats/std.rb +71 -0
  261. data/lib/niso/jats/std_organization.rb +31 -0
  262. data/lib/niso/jats/strike.rb +61 -0
  263. data/lib/niso/jats/string_conf.rb +91 -0
  264. data/lib/niso/jats/string_date.rb +37 -0
  265. data/lib/niso/jats/string_name.rb +35 -0
  266. data/lib/niso/jats/styled_content.rb +163 -0
  267. data/lib/niso/jats/sub.rb +61 -0
  268. data/lib/niso/jats/sub_article.rb +37 -0
  269. data/lib/niso/jats/subj_group.rb +33 -0
  270. data/lib/niso/jats/subject.rb +71 -0
  271. data/lib/niso/jats/subtitle.rb +65 -0
  272. data/lib/niso/jats/suffix.rb +23 -0
  273. data/lib/niso/jats/sup.rb +61 -0
  274. data/lib/niso/jats/supplement.rb +79 -0
  275. data/lib/niso/jats/supplementary_material.rb +93 -0
  276. data/lib/niso/jats/support_description.rb +23 -0
  277. data/lib/niso/jats/support_group.rb +25 -0
  278. data/lib/niso/jats/support_source.rb +85 -0
  279. data/lib/niso/jats/surname.rb +19 -0
  280. data/lib/niso/jats/table.rb +47 -0
  281. data/lib/niso/jats/table_count.rb +17 -0
  282. data/lib/niso/jats/table_wrap.rb +83 -0
  283. data/lib/niso/jats/table_wrap_foot.rb +27 -0
  284. data/lib/niso/jats/table_wrap_group.rb +51 -0
  285. data/lib/niso/jats/target.rb +53 -0
  286. data/lib/niso/jats/tbody.rb +29 -0
  287. data/lib/niso/jats/td.rb +169 -0
  288. data/lib/niso/jats/term.rb +89 -0
  289. data/lib/niso/jats/term_head.rb +57 -0
  290. data/lib/niso/jats/tex_math.rb +25 -0
  291. data/lib/niso/jats/textual_form.rb +61 -0
  292. data/lib/niso/jats/tfoot.rb +29 -0
  293. data/lib/niso/jats/th.rb +169 -0
  294. data/lib/niso/jats/thead.rb +29 -0
  295. data/lib/niso/jats/time_stamp.rb +21 -0
  296. data/lib/niso/jats/title.rb +71 -0
  297. data/lib/niso/jats/title_group.rb +25 -0
  298. data/lib/niso/jats/tr.rb +31 -0
  299. data/lib/niso/jats/trans_abstract.rb +31 -0
  300. data/lib/niso/jats/trans_source.rb +83 -0
  301. data/lib/niso/jats/trans_subtitle.rb +63 -0
  302. data/lib/niso/jats/trans_title.rb +65 -0
  303. data/lib/niso/jats/trans_title_group.rb +25 -0
  304. data/lib/niso/jats/underline.rb +63 -0
  305. data/lib/niso/jats/underline_end.rb +19 -0
  306. data/lib/niso/jats/underline_start.rb +17 -0
  307. data/lib/niso/jats/unstructured_kwd_group.rb +29 -0
  308. data/lib/niso/jats/uri.rb +31 -0
  309. data/lib/niso/jats/verse_group.rb +41 -0
  310. data/lib/niso/jats/verse_line.rb +89 -0
  311. data/lib/niso/jats/version.rb +5 -0
  312. data/lib/niso/jats/version_element.rb +29 -0
  313. data/lib/niso/jats/volume.rb +25 -0
  314. data/lib/niso/jats/volume_id.rb +29 -0
  315. data/lib/niso/jats/volume_issue_group.rb +39 -0
  316. data/lib/niso/jats/volume_series.rb +23 -0
  317. data/lib/niso/jats/word_count.rb +17 -0
  318. data/lib/niso/jats/x.rb +23 -0
  319. data/lib/niso/jats/xref.rb +59 -0
  320. data/lib/niso/jats/year.rb +27 -0
  321. data/lib/niso/jats.rb +14 -0
  322. data/lib/niso-jats.rb +1 -0
  323. data/lib/niso_jats.rb +5 -0
  324. data/niso-jats.gemspec +39 -0
  325. data/reference-docs/JATS-journalpublishing1-3-elements-modified-for-shale.xsd +9604 -0
  326. data/reference-docs/JATS-journalpublishing1-3-elements.xsd +9604 -0
  327. data/reference-docs/JATS-journalpublishing1-3.xsd.xml +45 -0
  328. data/reference-docs/mathml2.xsd +59 -0
  329. data/reference-docs/module-ali.xsd +46 -0
  330. data/reference-docs/xlink.xsd +100 -0
  331. data/reference-docs/xml.xsd +287 -0
  332. data/sig/niso/jats.rbs +6 -0
  333. metadata +434 -0
@@ -0,0 +1,47 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Niso
4
+ module Jats
5
+ class Price < Lutaml::Model::Serializable
6
+ attribute :content, :string
7
+ attribute :content_type, :string
8
+ attribute :currency, :string
9
+ attribute :id, :string
10
+ attribute :specific_use, :string
11
+ attribute :lang, :string
12
+ attribute :bold, Bold, collection: true
13
+ attribute :fixed_case, FixedCase, collection: true
14
+ attribute :italic, Italic, collection: true
15
+ attribute :monospace, Monospace, collection: true
16
+ attribute :overline, Overline, collection: true
17
+ attribute :roman, Roman, collection: true
18
+ attribute :sans_serif, SansSerif, collection: true
19
+ attribute :sc, Sc, collection: true
20
+ attribute :strike, Strike, collection: true
21
+ attribute :underline, Underline, collection: true
22
+ attribute :ruby, Ruby, collection: true
23
+
24
+ xml do
25
+ root "price"
26
+
27
+ map_content to: :content
28
+ map_attribute "content-type", to: :content_type
29
+ map_attribute "currency", to: :currency
30
+ map_attribute "id", to: :id
31
+ map_attribute "specific-use", to: :specific_use
32
+ map_attribute "lang", to: :lang, namespace: "http://www.w3.org/XML/1998/namespace", prefix: "xml"
33
+ map_element "bold", to: :bold
34
+ map_element "fixed-case", to: :fixed_case
35
+ map_element "italic", to: :italic
36
+ map_element "monospace", to: :monospace
37
+ map_element "overline", to: :overline
38
+ map_element "roman", to: :roman
39
+ map_element "sans-serif", to: :sans_serif
40
+ map_element "sc", to: :sc
41
+ map_element "strike", to: :strike
42
+ map_element "underline", to: :underline
43
+ map_element "ruby", to: :ruby
44
+ end
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Niso
4
+ module Jats
5
+ class PrincipalAwardRecipient < Lutaml::Model::Serializable
6
+ attribute :content, :string
7
+ attribute :id, :string
8
+ attribute :specific_use, :string
9
+ attribute :lang, :string
10
+ attribute :contrib_id, ContribId, collection: true
11
+ attribute :name, Name, collection: true
12
+ attribute :name_alternatives, NameAlternatives, collection: true
13
+ attribute :institution, Institution, collection: true
14
+ attribute :institution_wrap, InstitutionWrap, collection: true
15
+ attribute :string_name, StringName, collection: true
16
+
17
+ xml do
18
+ root "principal-award-recipient"
19
+
20
+ map_content to: :content
21
+ map_attribute "id", to: :id
22
+ map_attribute "specific-use", to: :specific_use
23
+ map_attribute "lang", to: :lang, namespace: "http://www.w3.org/XML/1998/namespace", prefix: "xml"
24
+ map_element "contrib-id", to: :contrib_id
25
+ map_element "name", to: :name
26
+ map_element "name-alternatives", to: :name_alternatives
27
+ map_element "institution", to: :institution
28
+ map_element "institution-wrap", to: :institution_wrap
29
+ map_element "string-name", to: :string_name
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Niso
4
+ module Jats
5
+ class PrincipalInvestigator < Lutaml::Model::Serializable
6
+ attribute :content, :string
7
+ attribute :id, :string
8
+ attribute :specific_use, :string
9
+ attribute :lang, :string
10
+ attribute :contrib_id, ContribId, collection: true
11
+ attribute :name, Name, collection: true
12
+ attribute :name_alternatives, NameAlternatives, collection: true
13
+ attribute :string_name, StringName, collection: true
14
+
15
+ xml do
16
+ root "principal-investigator"
17
+
18
+ map_content to: :content
19
+ map_attribute "id", to: :id
20
+ map_attribute "specific-use", to: :specific_use
21
+ map_attribute "lang", to: :lang, namespace: "http://www.w3.org/XML/1998/namespace", prefix: "xml"
22
+ map_element "contrib-id", to: :contrib_id
23
+ map_element "name", to: :name
24
+ map_element "name-alternatives", to: :name_alternatives
25
+ map_element "string-name", to: :string_name
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Niso
4
+ module Jats
5
+ class PrivateChar < Lutaml::Model::Serializable
6
+ attribute :description, :string
7
+ attribute :id, :string
8
+ attribute :name, :string
9
+ attribute :specific_use, :string
10
+ attribute :glyph_data, GlyphData
11
+ attribute :glyph_ref, GlyphRef
12
+ attribute :inline_graphic, InlineGraphic, collection: true
13
+
14
+ xml do
15
+ root "private-char"
16
+
17
+ map_attribute "description", to: :description
18
+ map_attribute "id", to: :id
19
+ map_attribute "name", to: :name
20
+ map_attribute "specific-use", to: :specific_use
21
+ map_element "glyph-data", to: :glyph_data
22
+ map_element "glyph-ref", to: :glyph_ref
23
+ map_element "inline-graphic", to: :inline_graphic
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Niso
4
+ module Jats
5
+ class ProcessingMeta < Lutaml::Model::Serializable
6
+ attribute :base_tagset, :string
7
+ attribute :id, :string
8
+ attribute :math_representation, :string
9
+ attribute :mathml_version, :string
10
+ attribute :table_model, :string
11
+ attribute :tagset_family, :string
12
+ attribute :restricted_by, RestrictedBy, collection: true
13
+ attribute :extended_by, ExtendedBy, collection: true
14
+ attribute :custom_meta_group, CustomMetaGroup, collection: true
15
+
16
+ xml do
17
+ root "processing-meta"
18
+
19
+ map_attribute "base-tagset", to: :base_tagset
20
+ map_attribute "id", to: :id
21
+ map_attribute "math-representation", to: :math_representation
22
+ map_attribute "mathml-version", to: :mathml_version
23
+ map_attribute "table-model", to: :table_model
24
+ map_attribute "tagset-family", to: :tagset_family
25
+ map_element "restricted-by", to: :restricted_by
26
+ map_element "extended-by", to: :extended_by
27
+ map_element "custom-meta-group", to: :custom_meta_group
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,215 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Niso
4
+ module Jats
5
+ class Product < Lutaml::Model::Serializable
6
+ attribute :content, :string
7
+ attribute :hreflang, :string
8
+ attribute :id, :string
9
+ attribute :product_type, :string
10
+ attribute :specific_use, :string
11
+ attribute :lang, :string
12
+ attribute :inline_supplementary_material, InlineSupplementaryMaterial,
13
+ collection: true
14
+ attribute :related_article, RelatedArticle, collection: true
15
+ attribute :related_object, RelatedObject, collection: true
16
+ attribute :break, Break, collection: true
17
+ attribute :bold, Bold, collection: true
18
+ attribute :fixed_case, FixedCase, collection: true
19
+ attribute :italic, Italic, collection: true
20
+ attribute :monospace, Monospace, collection: true
21
+ attribute :overline, Overline, collection: true
22
+ attribute :roman, Roman, collection: true
23
+ attribute :sans_serif, SansSerif, collection: true
24
+ attribute :sc, Sc, collection: true
25
+ attribute :strike, Strike, collection: true
26
+ attribute :underline, Underline, collection: true
27
+ attribute :ruby, Ruby, collection: true
28
+ attribute :alternatives, Alternatives, collection: true
29
+ attribute :inline_graphic, InlineGraphic, collection: true
30
+ attribute :inline_media, InlineMedia, collection: true
31
+ attribute :private_char, PrivateChar, collection: true
32
+ attribute :chem_struct, ChemStruct, collection: true
33
+ attribute :inline_formula, InlineFormula, collection: true
34
+ attribute :abbrev, Abbrev, collection: true
35
+ attribute :index_term, IndexTerm, collection: true
36
+ attribute :index_term_range_end, IndexTermRangeEnd, collection: true
37
+ attribute :milestone_end, MilestoneEnd, collection: true
38
+ attribute :milestone_start, MilestoneStart, collection: true
39
+ attribute :named_content, NamedContent, collection: true
40
+ attribute :styled_content, StyledContent, collection: true
41
+ attribute :price, Price, collection: true
42
+ attribute :annotation, Annotation, collection: true
43
+ attribute :article_title, ArticleTitle, collection: true
44
+ attribute :chapter_title, ChapterTitle, collection: true
45
+ attribute :collab, Collab, collection: true
46
+ attribute :collab_alternatives, CollabAlternatives, collection: true
47
+ attribute :comment, Comment, collection: true
48
+ attribute :conf_acronym, ConfAcronym, collection: true
49
+ attribute :conf_date, ConfDate, collection: true
50
+ attribute :conf_loc, ConfLoc, collection: true
51
+ attribute :conf_name, ConfName, collection: true
52
+ attribute :conf_sponsor, ConfSponsor, collection: true
53
+ attribute :data_title, DataTitle, collection: true
54
+ attribute :date, Date, collection: true
55
+ attribute :date_in_citation, DateInCitation, collection: true
56
+ attribute :day, Day, collection: true
57
+ attribute :edition, Edition, collection: true
58
+ attribute :email, Email, collection: true
59
+ attribute :elocation_id, ElocationId, collection: true
60
+ attribute :etal, Etal, collection: true
61
+ attribute :ext_link, ExtLink, collection: true
62
+ attribute :fpage, Fpage, collection: true
63
+ attribute :gov, Gov, collection: true
64
+ attribute :institution, Institution, collection: true
65
+ attribute :institution_wrap, InstitutionWrap, collection: true
66
+ attribute :isbn, Isbn, collection: true
67
+ attribute :issn, Issn, collection: true
68
+ attribute :issn_l, IssnL, collection: true
69
+ attribute :issue, Issue, collection: true
70
+ attribute :issue_id, IssueId, collection: true
71
+ attribute :issue_part, IssuePart, collection: true
72
+ attribute :issue_title, IssueTitle, collection: true
73
+ attribute :lpage, Lpage, collection: true
74
+ attribute :month, Month, collection: true
75
+ attribute :name, Name, collection: true
76
+ attribute :name_alternatives, NameAlternatives, collection: true
77
+ attribute :object_id, ObjectId, collection: true
78
+ attribute :page_range, PageRange, collection: true
79
+ attribute :part_title, PartTitle, collection: true
80
+ attribute :patent, Patent, collection: true
81
+ attribute :person_group, PersonGroup, collection: true
82
+ attribute :pub_id, PubId, collection: true
83
+ attribute :publisher_loc, PublisherLoc, collection: true
84
+ attribute :publisher_name, PublisherName, collection: true
85
+ attribute :role, Role, collection: true
86
+ attribute :season, Season, collection: true
87
+ attribute :series, Series, collection: true
88
+ attribute :size, Size, collection: true
89
+ attribute :source, Source, collection: true
90
+ attribute :std, Std, collection: true
91
+ attribute :string_date, StringDate, collection: true
92
+ attribute :string_name, StringName, collection: true
93
+ attribute :supplement, Supplement, collection: true
94
+ attribute :trans_source, TransSource, collection: true
95
+ attribute :trans_title, TransTitle, collection: true
96
+ attribute :uri, Uri, collection: true
97
+ attribute :version, VersionElement, collection: true
98
+ attribute :volume, Volume, collection: true
99
+ attribute :volume_id, VolumeId, collection: true
100
+ attribute :volume_series, VolumeSeries, collection: true
101
+ attribute :year, Year, collection: true
102
+ attribute :fn, Fn, collection: true
103
+ attribute :target, Target, collection: true
104
+ attribute :xref, Xref, collection: true
105
+ attribute :sub, Sub, collection: true
106
+ attribute :sup, Sup, collection: true
107
+
108
+ xml do
109
+ root "product"
110
+
111
+ map_content to: :content
112
+ map_attribute "hreflang", to: :hreflang
113
+ map_attribute "id", to: :id
114
+ map_attribute "product-type", to: :product_type
115
+ map_attribute "specific-use", to: :specific_use
116
+ map_attribute "lang", to: :lang, namespace: "http://www.w3.org/XML/1998/namespace", prefix: "xml"
117
+ map_element "inline-supplementary-material",
118
+ to: :inline_supplementary_material
119
+ map_element "related-article", to: :related_article
120
+ map_element "related-object", to: :related_object
121
+ map_element "break", to: :break
122
+ map_element "bold", to: :bold
123
+ map_element "fixed-case", to: :fixed_case
124
+ map_element "italic", to: :italic
125
+ map_element "monospace", to: :monospace
126
+ map_element "overline", to: :overline
127
+ map_element "roman", to: :roman
128
+ map_element "sans-serif", to: :sans_serif
129
+ map_element "sc", to: :sc
130
+ map_element "strike", to: :strike
131
+ map_element "underline", to: :underline
132
+ map_element "ruby", to: :ruby
133
+ map_element "alternatives", to: :alternatives
134
+ map_element "inline-graphic", to: :inline_graphic
135
+ map_element "inline-media", to: :inline_media
136
+ map_element "private-char", to: :private_char
137
+ map_element "chem-struct", to: :chem_struct
138
+ map_element "inline-formula", to: :inline_formula
139
+ map_element "abbrev", to: :abbrev
140
+ map_element "index-term", to: :index_term
141
+ map_element "index-term-range-end", to: :index_term_range_end
142
+ map_element "milestone-end", to: :milestone_end
143
+ map_element "milestone-start", to: :milestone_start
144
+ map_element "named-content", to: :named_content
145
+ map_element "styled-content", to: :styled_content
146
+ map_element "price", to: :price
147
+ map_element "annotation", to: :annotation
148
+ map_element "article-title", to: :article_title
149
+ map_element "chapter-title", to: :chapter_title
150
+ map_element "collab", to: :collab
151
+ map_element "collab-alternatives", to: :collab_alternatives
152
+ map_element "comment", to: :comment
153
+ map_element "conf-acronym", to: :conf_acronym
154
+ map_element "conf-date", to: :conf_date
155
+ map_element "conf-loc", to: :conf_loc
156
+ map_element "conf-name", to: :conf_name
157
+ map_element "conf-sponsor", to: :conf_sponsor
158
+ map_element "data-title", to: :data_title
159
+ map_element "date", to: :date
160
+ map_element "date-in-citation", to: :date_in_citation
161
+ map_element "day", to: :day
162
+ map_element "edition", to: :edition
163
+ map_element "email", to: :email
164
+ map_element "elocation-id", to: :elocation_id
165
+ map_element "etal", to: :etal
166
+ map_element "ext-link", to: :ext_link
167
+ map_element "fpage", to: :fpage
168
+ map_element "gov", to: :gov
169
+ map_element "institution", to: :institution
170
+ map_element "institution-wrap", to: :institution_wrap
171
+ map_element "isbn", to: :isbn
172
+ map_element "issn", to: :issn
173
+ map_element "issn-l", to: :issn_l
174
+ map_element "issue", to: :issue
175
+ map_element "issue-id", to: :issue_id
176
+ map_element "issue-part", to: :issue_part
177
+ map_element "issue-title", to: :issue_title
178
+ map_element "lpage", to: :lpage
179
+ map_element "month", to: :month
180
+ map_element "name", to: :name
181
+ map_element "name-alternatives", to: :name_alternatives
182
+ map_element "object-id", to: :object_id
183
+ map_element "page-range", to: :page_range
184
+ map_element "part-title", to: :part_title
185
+ map_element "patent", to: :patent
186
+ map_element "person-group", to: :person_group
187
+ map_element "pub-id", to: :pub_id
188
+ map_element "publisher-loc", to: :publisher_loc
189
+ map_element "publisher-name", to: :publisher_name
190
+ map_element "role", to: :role
191
+ map_element "season", to: :season
192
+ map_element "series", to: :series
193
+ map_element "size", to: :size
194
+ map_element "source", to: :source
195
+ map_element "std", to: :std
196
+ map_element "string-date", to: :string_date
197
+ map_element "string-name", to: :string_name
198
+ map_element "supplement", to: :supplement
199
+ map_element "trans-source", to: :trans_source
200
+ map_element "trans-title", to: :trans_title
201
+ map_element "uri", to: :uri
202
+ map_element "version", to: :version
203
+ map_element "volume", to: :volume
204
+ map_element "volume-id", to: :volume_id
205
+ map_element "volume-series", to: :volume_series
206
+ map_element "year", to: :year
207
+ map_element "fn", to: :fn
208
+ map_element "target", to: :target
209
+ map_element "xref", to: :xref
210
+ map_element "sub", to: :sub
211
+ map_element "sup", to: :sup
212
+ end
213
+ end
214
+ end
215
+ end
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Niso
4
+ module Jats
5
+ class PubDate < Lutaml::Model::Serializable
6
+ attribute :assigning_authority, :string
7
+ attribute :calendar, :string
8
+ attribute :date_type, :string
9
+ attribute :id, :string
10
+ attribute :iso_8601_date, :string
11
+ attribute :pub_type, :string
12
+ attribute :publication_format, :string
13
+ attribute :lang, :string
14
+ attribute :day, Day
15
+ attribute :month, Month
16
+ attribute :season, Season
17
+ attribute :year, Year
18
+ attribute :era, Era
19
+
20
+ xml do
21
+ root "pub-date"
22
+
23
+ map_attribute "assigning-authority", to: :assigning_authority
24
+ map_attribute "calendar", to: :calendar
25
+ map_attribute "date-type", to: :date_type
26
+ map_attribute "id", to: :id
27
+ map_attribute "iso-8601-date", to: :iso_8601_date
28
+ map_attribute "pub-type", to: :pub_type
29
+ map_attribute "publication-format", to: :publication_format
30
+ map_attribute "lang", to: :lang, namespace: "http://www.w3.org/XML/1998/namespace", prefix: "xml"
31
+ map_element "day", to: :day
32
+ map_element "month", to: :month
33
+ map_element "season", to: :season
34
+ map_element "year", to: :year
35
+ map_element "era", to: :era
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Niso
4
+ module Jats
5
+ class PubDateNotAvailable < Lutaml::Model::Serializable
6
+ attribute :id, :string
7
+ attribute :specific_use, :string
8
+
9
+ xml do
10
+ root "pub-date-not-available"
11
+
12
+ map_attribute "id", to: :id
13
+ map_attribute "specific-use", to: :specific_use
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Niso
4
+ module Jats
5
+ class PubHistory < Lutaml::Model::Serializable
6
+ attribute :id, :string
7
+ attribute :event, Event, collection: true
8
+
9
+ xml do
10
+ root "pub-history"
11
+
12
+ map_attribute "id", to: :id
13
+ map_element "event", to: :event
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Niso
4
+ module Jats
5
+ class PubId < Lutaml::Model::Serializable
6
+ attribute :content, :string
7
+ attribute :assigning_authority, :string
8
+ attribute :custom_type, :string
9
+ attribute :hreflang, :string
10
+ attribute :id, :string
11
+ attribute :pub_id_type, :string
12
+ attribute :specific_use, :string
13
+
14
+ xml do
15
+ root "pub-id"
16
+
17
+ map_content to: :content
18
+ map_attribute "assigning-authority", to: :assigning_authority
19
+ map_attribute "custom-type", to: :custom_type
20
+ map_attribute "hreflang", to: :hreflang
21
+ map_attribute "id", to: :id
22
+ map_attribute "pub-id-type", to: :pub_id_type
23
+ map_attribute "specific-use", to: :specific_use
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Niso
4
+ module Jats
5
+ class Publisher < Lutaml::Model::Serializable
6
+ attribute :content_type, :string
7
+ attribute :id, :string
8
+ attribute :publisher_name, PublisherName, collection: true
9
+ attribute :publisher_loc, PublisherLoc, collection: true
10
+
11
+ xml do
12
+ root "publisher"
13
+
14
+ map_attribute "content-type", to: :content_type
15
+ map_attribute "id", to: :id
16
+ map_element "publisher-name", to: :publisher_name
17
+ map_element "publisher-loc", to: :publisher_loc
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Niso
4
+ module Jats
5
+ class PublisherLoc < Lutaml::Model::Serializable
6
+ attribute :content, :string
7
+ attribute :id, :string
8
+ attribute :specific_use, :string
9
+ attribute :lang, :string
10
+ attribute :addr_line, AddrLine, collection: true
11
+ attribute :city, City, collection: true
12
+ attribute :country, Country, collection: true
13
+ attribute :fax, Fax, collection: true
14
+ attribute :institution, Institution, collection: true
15
+ attribute :institution_wrap, InstitutionWrap, collection: true
16
+ attribute :phone, Phone, collection: true
17
+ attribute :postal_code, PostalCode, collection: true
18
+ attribute :state, State, collection: true
19
+ attribute :email, Email, collection: true
20
+ attribute :ext_link, ExtLink, collection: true
21
+ attribute :uri, Uri, collection: true
22
+
23
+ xml do
24
+ root "publisher-loc"
25
+
26
+ map_content to: :content
27
+ map_attribute "id", to: :id
28
+ map_attribute "specific-use", to: :specific_use
29
+ map_attribute "lang", to: :lang, namespace: "http://www.w3.org/XML/1998/namespace", prefix: "xml"
30
+ map_element "addr-line", to: :addr_line
31
+ map_element "city", to: :city
32
+ map_element "country", to: :country
33
+ map_element "fax", to: :fax
34
+ map_element "institution", to: :institution
35
+ map_element "institution-wrap", to: :institution_wrap
36
+ map_element "phone", to: :phone
37
+ map_element "postal-code", to: :postal_code
38
+ map_element "state", to: :state
39
+ map_element "email", to: :email
40
+ map_element "ext-link", to: :ext_link
41
+ map_element "uri", to: :uri
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Niso
4
+ module Jats
5
+ class PublisherName < Lutaml::Model::Serializable
6
+ attribute :content, :string
7
+ attribute :id, :string
8
+ attribute :specific_use, :string
9
+ attribute :lang, :string
10
+ attribute :institution, Institution, collection: true
11
+ attribute :institution_wrap, InstitutionWrap, collection: true
12
+
13
+ xml do
14
+ root "publisher-name"
15
+
16
+ map_content to: :content
17
+ map_attribute "id", to: :id
18
+ map_attribute "specific-use", to: :specific_use
19
+ map_attribute "lang", to: :lang, namespace: "http://www.w3.org/XML/1998/namespace", prefix: "xml"
20
+ map_element "institution", to: :institution
21
+ map_element "institution-wrap", to: :institution_wrap
22
+ end
23
+ end
24
+ end
25
+ end