sts 0.6.2 → 0.6.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 (71) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop_todo.yml +1 -0
  3. data/TODO.finalize/00-overview.md +56 -0
  4. data/TODO.finalize/01-investigation-findings.md +39 -0
  5. data/TODO.finalize/02-delete-tbxisotml-fn-fngroup.md +20 -0
  6. data/TODO.finalize/03-repoint-isosts-call-sites.md +27 -0
  7. data/TODO.finalize/04-repoint-tbxisotml-call-sites.md +24 -0
  8. data/TODO.finalize/05-sts-regression-specs.md +27 -0
  9. data/TODO.finalize/06-lutaml-model-element-builder-fix.md +45 -0
  10. data/TODO.finalize/07-lutaml-model-specs.md +12 -0
  11. data/TODO.finalize/08-sts-ruby-pr.md +20 -0
  12. data/TODO.finalize/09-lutaml-model-pr.md +5 -0
  13. data/TODO.finalize/10-audit-other-duplicates.md +29 -0
  14. data/TODO.finalize/11-strengthen-anti-patterns-spec.md +24 -0
  15. data/TODO.sts-refactor/00-overview.md +22 -13
  16. data/TODO.sts-refactor/03-namespace-coupling.md +17 -15
  17. data/lib/sts/iso_sts/body.rb +2 -0
  18. data/lib/sts/iso_sts/bold.rb +1 -1
  19. data/lib/sts/iso_sts/copyright_holder.rb +6 -0
  20. data/lib/sts/iso_sts/copyright_statement.rb +6 -0
  21. data/lib/sts/iso_sts/copyright_year.rb +4 -0
  22. data/lib/sts/iso_sts/doc_number.rb +4 -1
  23. data/lib/sts/iso_sts/doc_type.rb +4 -1
  24. data/lib/sts/iso_sts/edition.rb +6 -0
  25. data/lib/sts/iso_sts/ext_link.rb +10 -0
  26. data/lib/sts/iso_sts/fpage.rb +2 -0
  27. data/lib/sts/iso_sts/graphic.rb +10 -0
  28. data/lib/sts/iso_sts/ics.rb +4 -1
  29. data/lib/sts/iso_sts/is_proof.rb +7 -2
  30. data/lib/sts/iso_sts/issue.rb +2 -0
  31. data/lib/sts/iso_sts/italic.rb +1 -1
  32. data/lib/sts/iso_sts/label.rb +4 -0
  33. data/lib/sts/iso_sts/lpage.rb +2 -0
  34. data/lib/sts/iso_sts/mixed_citation.rb +14 -2
  35. data/lib/sts/iso_sts/named_content.rb +2 -0
  36. data/lib/sts/iso_sts/originator.rb +4 -1
  37. data/lib/sts/iso_sts/page_range.rb +2 -0
  38. data/lib/sts/iso_sts/paragraph.rb +1 -1
  39. data/lib/sts/iso_sts/part_number.rb +4 -1
  40. data/lib/sts/iso_sts/proj_id.rb +4 -1
  41. data/lib/sts/iso_sts/pub_date.rb +2 -0
  42. data/lib/sts/iso_sts/pub_id.rb +2 -0
  43. data/lib/sts/iso_sts/release_version.rb +4 -1
  44. data/lib/sts/iso_sts/sdo.rb +4 -1
  45. data/lib/sts/iso_sts/sec.rb +2 -2
  46. data/lib/sts/iso_sts/secretariat.rb +4 -1
  47. data/lib/sts/iso_sts/standard.rb +2 -2
  48. data/lib/sts/iso_sts/std.rb +1 -1
  49. data/lib/sts/iso_sts/sub.rb +4 -0
  50. data/lib/sts/iso_sts/sup.rb +4 -0
  51. data/lib/sts/iso_sts/suppl_number.rb +4 -1
  52. data/lib/sts/iso_sts/suppl_type.rb +4 -1
  53. data/lib/sts/iso_sts/suppl_version.rb +4 -1
  54. data/lib/sts/iso_sts/td.rb +1 -1
  55. data/lib/sts/iso_sts/term_sec.rb +1 -1
  56. data/lib/sts/iso_sts/th.rb +1 -1
  57. data/lib/sts/iso_sts/title.rb +4 -0
  58. data/lib/sts/iso_sts/underline.rb +2 -0
  59. data/lib/sts/iso_sts/uri.rb +2 -0
  60. data/lib/sts/iso_sts/urn.rb +4 -1
  61. data/lib/sts/iso_sts/version.rb +4 -1
  62. data/lib/sts/iso_sts/volume.rb +2 -0
  63. data/lib/sts/iso_sts/year.rb +2 -0
  64. data/lib/sts/tbx_iso_tml/table_wrap_foot.rb +2 -2
  65. data/lib/sts/tbx_iso_tml/td.rb +1 -1
  66. data/lib/sts/tbx_iso_tml/th.rb +1 -1
  67. data/lib/sts/tbx_iso_tml.rb +0 -2
  68. data/lib/sts/version.rb +1 -1
  69. metadata +13 -3
  70. data/lib/sts/tbx_iso_tml/fn.rb +0 -20
  71. data/lib/sts/tbx_iso_tml/fn_group.rb +0 -18
@@ -8,6 +8,11 @@ module Sts
8
8
  attribute :specific_use, :string
9
9
  attribute :xml_lang, :string
10
10
  attribute :xlink_href, :string
11
+ attribute :xlink_type, :string
12
+ attribute :xlink_role, :string
13
+ attribute :xlink_title, :string
14
+ attribute :xlink_show, :string
15
+ attribute :xlink_actuate, :string
11
16
  attribute :content, :string
12
17
  attribute :bold, ::Sts::IsoSts::Bold
13
18
  attribute :italic, ::Sts::IsoSts::Italic
@@ -21,6 +26,11 @@ module Sts
21
26
  map_attribute "specific-use", to: :specific_use
22
27
  map_attribute "xml:lang", to: :xml_lang
23
28
  map_attribute "xlink:href", to: :xlink_href
29
+ map_attribute "xlink:type", to: :xlink_type
30
+ map_attribute "xlink:role", to: :xlink_role
31
+ map_attribute "xlink:title", to: :xlink_title
32
+ map_attribute "xlink:show", to: :xlink_show
33
+ map_attribute "xlink:actuate", to: :xlink_actuate
24
34
 
25
35
  map_content to: :content
26
36
 
@@ -8,6 +8,7 @@ module Sts
8
8
  attribute :seq, :string
9
9
  attribute :specific_use, :string
10
10
  attribute :xml_lang, :string
11
+ attribute :id, :string
11
12
 
12
13
  xml do
13
14
  element "fpage"
@@ -17,6 +18,7 @@ module Sts
17
18
  map_attribute "seq", to: :seq
18
19
  map_attribute "specific-use", to: :specific_use
19
20
  map_attribute "xml:lang", to: :xml_lang
21
+ map_attribute "id", to: :id
20
22
  end
21
23
  end
22
24
  end
@@ -13,7 +13,12 @@ module Sts
13
13
  attribute :mime_subtype, :string
14
14
  attribute :xlink_href, :string
15
15
  attribute :xlink_type, :string
16
+ attribute :xlink_role, :string
17
+ attribute :xlink_title, :string
18
+ attribute :xlink_show, :string
19
+ attribute :xlink_actuate, :string
16
20
  attribute :graphic_type, :string
21
+ attribute :originator, :string
17
22
  attribute :label, ::Sts::IsoSts::Label
18
23
  attribute :caption, ::Sts::IsoSts::Caption
19
24
  attribute :alt_text, ::Sts::IsoSts::AltText
@@ -33,7 +38,12 @@ module Sts
33
38
  map_attribute "mime-subtype", to: :mime_subtype
34
39
  map_attribute "xlink:href", to: :xlink_href
35
40
  map_attribute "xlink:type", to: :xlink_type
41
+ map_attribute "xlink:role", to: :xlink_role
42
+ map_attribute "xlink:title", to: :xlink_title
43
+ map_attribute "xlink:show", to: :xlink_show
44
+ map_attribute "xlink:actuate", to: :xlink_actuate
36
45
  map_attribute "type", to: :graphic_type
46
+ map_attribute "originator", to: :originator
37
47
 
38
48
  map_element "label", to: :label
39
49
  map_element "caption", to: :caption
@@ -2,14 +2,17 @@
2
2
 
3
3
  module Sts
4
4
  module IsoSts
5
- # ISOSTS declares <ics> as type="xs:string" -- no attributes.
5
+ # ISOSTS declares <ics> as type="xs:string". The @id follows the
6
+ # NisoSts convention established in 86948b9, not ISOSTS itself.
6
7
  class Ics < Lutaml::Model::Serializable
7
8
  attribute :content, :string
9
+ attribute :id, :string
8
10
 
9
11
  xml do
10
12
  element "ics"
11
13
 
12
14
  map_content to: :content
15
+ map_attribute "id", to: :id
13
16
  end
14
17
  end
15
18
  end
@@ -2,11 +2,16 @@
2
2
 
3
3
  module Sts
4
4
  module IsoSts
5
- # ISOSTS declares <is-proof> as an empty complexType: its presence is the
6
- # whole signal -- no attributes, no content.
5
+ # ISOSTS declares <is-proof> as an empty complexType: its presence carries
6
+ # no content. The @id follows the NisoSts convention established in 86948b9,
7
+ # not ISOSTS itself.
7
8
  class IsProof < Lutaml::Model::Serializable
9
+ attribute :id, :string
10
+
8
11
  xml do
9
12
  element "is-proof"
13
+
14
+ map_attribute "id", to: :id
10
15
  end
11
16
  end
12
17
  end
@@ -8,6 +8,7 @@ module Sts
8
8
  attribute :seq, :string
9
9
  attribute :specific_use, :string
10
10
  attribute :xml_lang, :string
11
+ attribute :id, :string
11
12
 
12
13
  xml do
13
14
  element "issue"
@@ -17,6 +18,7 @@ module Sts
17
18
  map_attribute "seq", to: :seq
18
19
  map_attribute "specific-use", to: :specific_use
19
20
  map_attribute "xml:lang", to: :xml_lang
21
+ map_attribute "id", to: :id
20
22
  end
21
23
  end
22
24
  end
@@ -22,7 +22,7 @@ module Sts
22
22
  attribute :sc, ::Sts::IsoSts::Sc, collection: true
23
23
  attribute :strike, ::Sts::IsoSts::Strike, collection: true
24
24
  attribute :underline, ::Sts::IsoSts::Underline, collection: true
25
- attribute :fn, ::Sts::TbxIsoTml::Fn, collection: true
25
+ attribute :fn, ::Sts::IsoSts::Fn, collection: true
26
26
 
27
27
  xml do
28
28
  element "italic"
@@ -4,6 +4,8 @@ module Sts
4
4
  module IsoSts
5
5
  class Label < Lutaml::Model::Serializable
6
6
  attribute :id, :string
7
+ attribute :alt, :string
8
+ attribute :xml_lang, :string
7
9
  attribute :content, :string, collection: true
8
10
  attribute :bold, ::Sts::IsoSts::Bold
9
11
  attribute :italic, ::Sts::IsoSts::Italic
@@ -19,6 +21,8 @@ module Sts
19
21
  xml do
20
22
  element "label"
21
23
  map_attribute "id", to: :id
24
+ map_attribute "alt", to: :alt
25
+ map_attribute "xml:lang", to: :xml_lang
22
26
  mixed_content
23
27
 
24
28
  map_content to: :content
@@ -7,6 +7,7 @@ module Sts
7
7
  attribute :content_type, :string
8
8
  attribute :specific_use, :string
9
9
  attribute :xml_lang, :string
10
+ attribute :id, :string
10
11
 
11
12
  xml do
12
13
  element "lpage"
@@ -15,6 +16,7 @@ module Sts
15
16
  map_attribute "content-type", to: :content_type
16
17
  map_attribute "specific-use", to: :specific_use
17
18
  map_attribute "xml:lang", to: :xml_lang
19
+ map_attribute "id", to: :id
18
20
  end
19
21
  end
20
22
  end
@@ -9,6 +9,12 @@ module Sts
9
9
  attribute :publication_format, :string
10
10
  attribute :specific_use, :string
11
11
  attribute :xml_lang, :string
12
+ attribute :xlink_type, :string
13
+ attribute :xlink_href, :string
14
+ attribute :xlink_role, :string
15
+ attribute :xlink_title, :string
16
+ attribute :xlink_show, :string
17
+ attribute :xlink_actuate, :string
12
18
  attribute :content, :string, collection: true
13
19
  attribute :bold, ::Sts::IsoSts::Bold, collection: true
14
20
  attribute :italic, ::Sts::IsoSts::Italic, collection: true
@@ -19,7 +25,7 @@ module Sts
19
25
  attribute :uri, ::Sts::IsoSts::Uri, collection: true
20
26
  attribute :named_content, ::Sts::IsoSts::NamedContent, collection: true
21
27
  attribute :styled_content, ::Sts::IsoSts::StyledContent, collection: true
22
- attribute :fn, ::Sts::TbxIsoTml::Fn, collection: true
28
+ attribute :fn, ::Sts::IsoSts::Fn, collection: true
23
29
  attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
24
30
  attribute :break, ::Sts::IsoSts::Break, collection: true
25
31
  attribute :person_group, ::Sts::NisoSts::PersonGroup, collection: true
@@ -35,7 +41,7 @@ module Sts
35
41
  attribute :publisher, ::Sts::NisoSts::Publisher
36
42
  attribute :pub_id, ::Sts::IsoSts::PubId, collection: true
37
43
 
38
- xml do
44
+ xml do # rubocop:disable Metrics/BlockLength
39
45
  element "mixed-citation"
40
46
  mixed_content
41
47
 
@@ -45,6 +51,12 @@ module Sts
45
51
  map_attribute "publication-format", to: :publication_format
46
52
  map_attribute "specific-use", to: :specific_use
47
53
  map_attribute "xml:lang", to: :xml_lang
54
+ map_attribute "xlink:type", to: :xlink_type
55
+ map_attribute "xlink:href", to: :xlink_href
56
+ map_attribute "xlink:role", to: :xlink_role
57
+ map_attribute "xlink:title", to: :xlink_title
58
+ map_attribute "xlink:show", to: :xlink_show
59
+ map_attribute "xlink:actuate", to: :xlink_actuate
48
60
 
49
61
  map_content to: :content
50
62
 
@@ -9,6 +9,7 @@ module Sts
9
9
  attribute :specific_use, :string
10
10
  attribute :xml_lang, :string
11
11
  attribute :xlink_href, :string
12
+ attribute :xlink_type, :string
12
13
  attribute :xlink_role, :string
13
14
  attribute :xlink_title, :string
14
15
  attribute :xlink_show, :string
@@ -29,6 +30,7 @@ module Sts
29
30
  map_attribute "specific-use", to: :specific_use
30
31
  map_attribute "xml:lang", to: :xml_lang
31
32
  map_attribute "xlink:href", to: :xlink_href
33
+ map_attribute "xlink:type", to: :xlink_type
32
34
  map_attribute "xlink:role", to: :xlink_role
33
35
  map_attribute "xlink:title", to: :xlink_title
34
36
  map_attribute "xlink:show", to: :xlink_show
@@ -2,14 +2,17 @@
2
2
 
3
3
  module Sts
4
4
  module IsoSts
5
- # ISOSTS declares <originator> as type="xs:string" -- no attributes.
5
+ # ISOSTS declares <originator> as type="xs:string". The @id follows the
6
+ # NisoSts convention established in 86948b9, not ISOSTS itself.
6
7
  class Originator < Lutaml::Model::Serializable
7
8
  attribute :content, :string
9
+ attribute :id, :string
8
10
 
9
11
  xml do
10
12
  element "originator"
11
13
 
12
14
  map_content to: :content
15
+ map_attribute "id", to: :id
13
16
  end
14
17
  end
15
18
  end
@@ -7,6 +7,7 @@ module Sts
7
7
  attribute :content_type, :string
8
8
  attribute :specific_use, :string
9
9
  attribute :xml_lang, :string
10
+ attribute :id, :string
10
11
 
11
12
  xml do
12
13
  element "page-range"
@@ -15,6 +16,7 @@ module Sts
15
16
  map_attribute "content-type", to: :content_type
16
17
  map_attribute "specific-use", to: :specific_use
17
18
  map_attribute "xml:lang", to: :xml_lang
19
+ map_attribute "id", to: :id
18
20
  end
19
21
  end
20
22
  end
@@ -24,7 +24,7 @@ module Sts
24
24
  collection: true
25
25
  attribute :non_normative_example, ::Sts::IsoSts::NonNormativeExample,
26
26
  collection: true
27
- attribute :fn, ::Sts::TbxIsoTml::Fn, collection: true
27
+ attribute :fn, ::Sts::IsoSts::Fn, collection: true
28
28
  attribute :styled_content, ::Sts::IsoSts::StyledContent, collection: true
29
29
  attribute :graphic, ::Sts::IsoSts::Graphic, collection: true
30
30
  attribute :math, Mml::V2::Math, collection: true
@@ -2,14 +2,17 @@
2
2
 
3
3
  module Sts
4
4
  module IsoSts
5
- # ISOSTS declares <part-number> as type="xs:string" -- no attributes.
5
+ # ISOSTS declares <part-number> as type="xs:string". The @id follows the
6
+ # NisoSts convention established in 86948b9, not ISOSTS itself.
6
7
  class PartNumber < Lutaml::Model::Serializable
7
8
  attribute :content, :string
9
+ attribute :id, :string
8
10
 
9
11
  xml do
10
12
  element "part-number"
11
13
 
12
14
  map_content to: :content
15
+ map_attribute "id", to: :id
13
16
  end
14
17
  end
15
18
  end
@@ -2,14 +2,17 @@
2
2
 
3
3
  module Sts
4
4
  module IsoSts
5
- # ISOSTS declares <proj-id> as type="xs:string" -- no attributes.
5
+ # ISOSTS declares <proj-id> as type="xs:string". The @id follows the
6
+ # NisoSts convention established in 86948b9, not ISOSTS itself.
6
7
  class ProjId < Lutaml::Model::Serializable
7
8
  attribute :content, :string
9
+ attribute :id, :string
8
10
 
9
11
  xml do
10
12
  element "proj-id"
11
13
 
12
14
  map_content to: :content
15
+ map_attribute "id", to: :id
13
16
  end
14
17
  end
15
18
  end
@@ -5,12 +5,14 @@ module Sts
5
5
  class PubDate < Lutaml::Model::Serializable
6
6
  attribute :content, :string
7
7
  attribute :pub_type, :string
8
+ attribute :id, :string
8
9
 
9
10
  xml do
10
11
  element "pub-date"
11
12
 
12
13
  map_content to: :content
13
14
  map_attribute "pub-type", to: :pub_type
15
+ map_attribute "id", to: :id
14
16
  end
15
17
  end
16
18
  end
@@ -6,6 +6,7 @@ module Sts
6
6
  attribute :content, :string
7
7
  attribute :pub_id_type, :string
8
8
  attribute :specific_use, :string
9
+ attribute :id, :string
9
10
 
10
11
  xml do
11
12
  element "pub-id"
@@ -13,6 +14,7 @@ module Sts
13
14
  map_content to: :content
14
15
  map_attribute "pub-id-type", to: :pub_id_type
15
16
  map_attribute "specific-use", to: :specific_use
17
+ map_attribute "id", to: :id
16
18
  end
17
19
  end
18
20
  end
@@ -2,14 +2,17 @@
2
2
 
3
3
  module Sts
4
4
  module IsoSts
5
- # ISOSTS declares <release-version> as type="xs:string" -- no attributes.
5
+ # ISOSTS declares <release-version> as type="xs:string". The @id follows the
6
+ # NisoSts convention established in 86948b9, not ISOSTS itself.
6
7
  class ReleaseVersion < Lutaml::Model::Serializable
7
8
  attribute :content, :string
9
+ attribute :id, :string
8
10
 
9
11
  xml do
10
12
  element "release-version"
11
13
 
12
14
  map_content to: :content
15
+ map_attribute "id", to: :id
13
16
  end
14
17
  end
15
18
  end
@@ -2,14 +2,17 @@
2
2
 
3
3
  module Sts
4
4
  module IsoSts
5
- # ISOSTS declares <sdo> as type="xs:string" -- no attributes.
5
+ # ISOSTS declares <sdo> as type="xs:string". The @id follows the
6
+ # NisoSts convention established in 86948b9, not ISOSTS itself.
6
7
  class Sdo < Lutaml::Model::Serializable
7
8
  attribute :content, :string
9
+ attribute :id, :string
8
10
 
9
11
  xml do
10
12
  element "sdo"
11
13
 
12
14
  map_content to: :content
15
+ map_attribute "id", to: :id
13
16
  end
14
17
  end
15
18
  end
@@ -34,7 +34,7 @@ module Sts
34
34
  attribute :sec, ::Sts::IsoSts::Sec, collection: true
35
35
  attribute :term_sec, ::Sts::IsoSts::TermSec, collection: true
36
36
  attribute :disp_quote, ::Sts::NisoSts::DispQuote, collection: true
37
- attribute :fn, ::Sts::TbxIsoTml::Fn, collection: true
37
+ attribute :fn, ::Sts::IsoSts::Fn, collection: true
38
38
  attribute :editing_instruction, ::Sts::NisoSts::EditingInstruction,
39
39
  collection: true
40
40
  attribute :boxed_text, ::Sts::NisoSts::BoxedText, collection: true
@@ -44,7 +44,7 @@ module Sts
44
44
  ordered
45
45
 
46
46
  map_attribute "id", to: :id
47
- map_attribute "lang", to: :xml_lang
47
+ map_attribute "xml:lang", to: :xml_lang
48
48
  map_attribute "sec-type", to: :sec_type
49
49
  map_attribute "specific-use", to: :specific_use
50
50
  map_attribute "originator", to: :originator
@@ -2,14 +2,17 @@
2
2
 
3
3
  module Sts
4
4
  module IsoSts
5
- # ISOSTS declares <secretariat> as type="xs:string" -- no attributes.
5
+ # ISOSTS declares <secretariat> as type="xs:string". The @id follows the
6
+ # NisoSts convention established in 86948b9, not ISOSTS itself.
6
7
  class Secretariat < Lutaml::Model::Serializable
7
8
  attribute :content, :string
9
+ attribute :id, :string
8
10
 
9
11
  xml do
10
12
  element "secretariat"
11
13
 
12
14
  map_content to: :content
15
+ map_attribute "id", to: :id
13
16
  end
14
17
  end
15
18
  end
@@ -4,7 +4,7 @@ module Sts
4
4
  module IsoSts
5
5
  class Standard < Lutaml::Model::Serializable
6
6
  attribute :id, :string
7
- attribute :lang, :string
7
+ attribute :xml_lang, :string
8
8
  attribute :dtd_version, :string
9
9
  attribute :specific_use, :string
10
10
  attribute :front, ::Sts::IsoSts::Front
@@ -21,7 +21,7 @@ module Sts
21
21
  ::Lutaml::Xml::W3c::XlinkNamespace,
22
22
  ]
23
23
  map_attribute "id", to: :id
24
- map_attribute "lang", to: :lang
24
+ map_attribute "xml:lang", to: :xml_lang
25
25
  map_attribute "dtd-version", to: :dtd_version
26
26
  map_attribute "specific-use", to: :specific_use
27
27
 
@@ -11,7 +11,7 @@ module Sts
11
11
  attribute :xml_lang, :string
12
12
  attribute :std_ref, ::Sts::IsoSts::StdRef, collection: true
13
13
  attribute :title, ::Sts::IsoSts::Title
14
- attribute :fn, ::Sts::TbxIsoTml::Fn, collection: true
14
+ attribute :fn, ::Sts::IsoSts::Fn, collection: true
15
15
  attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
16
16
  attribute :bold, ::Sts::IsoSts::Bold, collection: true
17
17
  attribute :italic, ::Sts::IsoSts::Italic, collection: true
@@ -4,10 +4,14 @@ module Sts
4
4
  module IsoSts
5
5
  class Sub < Lutaml::Model::Serializable
6
6
  attribute :id, :string
7
+ attribute :arrange, :string
8
+ attribute :specific_use, :string
7
9
  attribute :content, :string, collection: true
8
10
  xml do
9
11
  element "sub"
10
12
  map_attribute "id", to: :id
13
+ map_attribute "arrange", to: :arrange
14
+ map_attribute "specific-use", to: :specific_use
11
15
  mixed_content
12
16
 
13
17
  map_content to: :content
@@ -4,10 +4,14 @@ module Sts
4
4
  module IsoSts
5
5
  class Sup < Lutaml::Model::Serializable
6
6
  attribute :id, :string
7
+ attribute :arrange, :string
8
+ attribute :specific_use, :string
7
9
  attribute :content, :string, collection: true
8
10
  xml do
9
11
  element "sup"
10
12
  map_attribute "id", to: :id
13
+ map_attribute "arrange", to: :arrange
14
+ map_attribute "specific-use", to: :specific_use
11
15
  mixed_content
12
16
 
13
17
  map_content to: :content
@@ -2,14 +2,17 @@
2
2
 
3
3
  module Sts
4
4
  module IsoSts
5
- # ISOSTS declares <suppl-number> as type="xs:string" -- no attributes.
5
+ # ISOSTS declares <suppl-number> as type="xs:string". The @id follows the
6
+ # NisoSts convention established in 86948b9, not ISOSTS itself.
6
7
  class SupplNumber < Lutaml::Model::Serializable
7
8
  attribute :content, :string
9
+ attribute :id, :string
8
10
 
9
11
  xml do
10
12
  element "suppl-number"
11
13
 
12
14
  map_content to: :content
15
+ map_attribute "id", to: :id
13
16
  end
14
17
  end
15
18
  end
@@ -2,14 +2,17 @@
2
2
 
3
3
  module Sts
4
4
  module IsoSts
5
- # ISOSTS declares <suppl-type> as type="xs:string" -- no attributes.
5
+ # ISOSTS declares <suppl-type> as type="xs:string". The @id follows the
6
+ # NisoSts convention established in 86948b9, not ISOSTS itself.
6
7
  class SupplType < Lutaml::Model::Serializable
7
8
  attribute :content, :string
9
+ attribute :id, :string
8
10
 
9
11
  xml do
10
12
  element "suppl-type"
11
13
 
12
14
  map_content to: :content
15
+ map_attribute "id", to: :id
13
16
  end
14
17
  end
15
18
  end
@@ -2,14 +2,17 @@
2
2
 
3
3
  module Sts
4
4
  module IsoSts
5
- # ISOSTS declares <suppl-version> as type="xs:string" -- no attributes.
5
+ # ISOSTS declares <suppl-version> as type="xs:string". The @id follows the
6
+ # NisoSts convention established in 86948b9, not ISOSTS itself.
6
7
  class SupplVersion < Lutaml::Model::Serializable
7
8
  attribute :content, :string
9
+ attribute :id, :string
8
10
 
9
11
  xml do
10
12
  element "suppl-version"
11
13
 
12
14
  map_content to: :content
15
+ map_attribute "id", to: :id
13
16
  end
14
17
  end
15
18
  end
@@ -25,7 +25,7 @@ module Sts
25
25
  attribute :def_list, ::Sts::IsoSts::DefList, collection: true
26
26
  attribute :math, Mml::V2::Math, collection: true
27
27
  attribute :std, ::Sts::IsoSts::Std, collection: true
28
- attribute :fn, ::Sts::TbxIsoTml::Fn, collection: true
28
+ attribute :fn, ::Sts::IsoSts::Fn, collection: true
29
29
  attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
30
30
  attribute :bold, ::Sts::IsoSts::Bold, collection: true
31
31
  attribute :italic, ::Sts::IsoSts::Italic, collection: true
@@ -27,7 +27,7 @@ module Sts
27
27
  ordered
28
28
 
29
29
  map_attribute "id", to: :id
30
- map_attribute "lang", to: :xml_lang
30
+ map_attribute "xml:lang", to: :xml_lang
31
31
  map_attribute "sec-type", to: :sec_type
32
32
  map_attribute "specific-use", to: :specific_use
33
33
  map_attribute "originator", to: :originator
@@ -25,7 +25,7 @@ module Sts
25
25
  attribute :def_list, ::Sts::IsoSts::DefList, collection: true
26
26
  attribute :math, Mml::V2::Math, collection: true
27
27
  attribute :std, ::Sts::IsoSts::Std, collection: true
28
- attribute :fn, ::Sts::TbxIsoTml::Fn, collection: true
28
+ attribute :fn, ::Sts::IsoSts::Fn, collection: true
29
29
  attribute :xref, ::Sts::TbxIsoTml::Xref, collection: true
30
30
  attribute :bold, ::Sts::IsoSts::Bold, collection: true
31
31
  attribute :italic, ::Sts::IsoSts::Italic, collection: true
@@ -4,6 +4,8 @@ module Sts
4
4
  module IsoSts
5
5
  class Title < Lutaml::Model::Serializable
6
6
  attribute :id, :string
7
+ attribute :content_type, :string
8
+ attribute :specific_use, :string
7
9
  attribute :content, :string, collection: true
8
10
  attribute :bold, ::Sts::IsoSts::Bold, collection: true
9
11
  attribute :italic, ::Sts::IsoSts::Italic, collection: true
@@ -20,6 +22,8 @@ module Sts
20
22
  xml do
21
23
  element "title"
22
24
  map_attribute "id", to: :id
25
+ map_attribute "content-type", to: :content_type
26
+ map_attribute "specific-use", to: :specific_use
23
27
  mixed_content
24
28
 
25
29
  map_content to: :content
@@ -3,6 +3,7 @@
3
3
  module Sts
4
4
  module IsoSts
5
5
  class Underline < Lutaml::Model::Serializable
6
+ attribute :underline_style, :string
6
7
  attribute :specific_use, :string
7
8
  attribute :content, :string, collection: true
8
9
  attribute :bold, ::Sts::IsoSts::Bold, collection: true
@@ -14,6 +15,7 @@ module Sts
14
15
  element "underline"
15
16
  mixed_content
16
17
 
18
+ map_attribute "underline-style", to: :underline_style
17
19
  map_attribute "specific-use", to: :specific_use
18
20
  map_content to: :content
19
21
  map_element "bold", to: :bold
@@ -7,6 +7,7 @@ module Sts
7
7
  attribute :specific_use, :string
8
8
  attribute :xml_lang, :string
9
9
  attribute :xlink_href, :string
10
+ attribute :xlink_type, :string
10
11
  attribute :xlink_role, :string
11
12
  attribute :xlink_title, :string
12
13
  attribute :xlink_show, :string
@@ -21,6 +22,7 @@ module Sts
21
22
  map_attribute "specific-use", to: :specific_use
22
23
  map_attribute "xml:lang", to: :xml_lang
23
24
  map_attribute "xlink:href", to: :xlink_href
25
+ map_attribute "xlink:type", to: :xlink_type
24
26
  map_attribute "xlink:role", to: :xlink_role
25
27
  map_attribute "xlink:title", to: :xlink_title
26
28
  map_attribute "xlink:show", to: :xlink_show
@@ -2,14 +2,17 @@
2
2
 
3
3
  module Sts
4
4
  module IsoSts
5
- # ISOSTS declares <urn> as type="xs:string" -- no attributes.
5
+ # ISOSTS declares <urn> as type="xs:string". The @id follows the
6
+ # NisoSts convention established in 86948b9, not ISOSTS itself.
6
7
  class Urn < Lutaml::Model::Serializable
7
8
  attribute :content, :string
9
+ attribute :id, :string
8
10
 
9
11
  xml do
10
12
  element "urn"
11
13
 
12
14
  map_content to: :content
15
+ map_attribute "id", to: :id
13
16
  end
14
17
  end
15
18
  end