rfcxml 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (108) 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 +11 -0
  5. data/.rspec +3 -0
  6. data/.rubocop.yml +11 -0
  7. data/.rubocop_todo.yml +20 -0
  8. data/CODE_OF_CONDUCT.md +84 -0
  9. data/Gemfile +12 -0
  10. data/README.adoc +75 -0
  11. data/Rakefile +12 -0
  12. data/bin/console +11 -0
  13. data/bin/setup +8 -0
  14. data/lib/rfcxml/v3/abstract.rb +32 -0
  15. data/lib/rfcxml/v3/address.rb +31 -0
  16. data/lib/rfcxml/v3/annotation.rb +57 -0
  17. data/lib/rfcxml/v3/area.rb +17 -0
  18. data/lib/rfcxml/v3/artset.rb +23 -0
  19. data/lib/rfcxml/v3/artwork.rb +37 -0
  20. data/lib/rfcxml/v3/aside.rb +50 -0
  21. data/lib/rfcxml/v3/author.rb +38 -0
  22. data/lib/rfcxml/v3/back.rb +25 -0
  23. data/lib/rfcxml/v3/bcp14.rb +17 -0
  24. data/lib/rfcxml/v3/blockquote.rb +92 -0
  25. data/lib/rfcxml/v3/boilerplate.rb +19 -0
  26. data/lib/rfcxml/v3/br.rb +13 -0
  27. data/lib/rfcxml/v3/c.rb +33 -0
  28. data/lib/rfcxml/v3/city.rb +19 -0
  29. data/lib/rfcxml/v3/cityarea.rb +19 -0
  30. data/lib/rfcxml/v3/code.rb +19 -0
  31. data/lib/rfcxml/v3/contact.rb +36 -0
  32. data/lib/rfcxml/v3/country.rb +19 -0
  33. data/lib/rfcxml/v3/cref.rb +51 -0
  34. data/lib/rfcxml/v3/date.rb +23 -0
  35. data/lib/rfcxml/v3/dd.rb +92 -0
  36. data/lib/rfcxml/v3/displayreference.rb +19 -0
  37. data/lib/rfcxml/v3/dl.rb +35 -0
  38. data/lib/rfcxml/v3/dt.rb +58 -0
  39. data/lib/rfcxml/v3/em.rb +14 -0
  40. data/lib/rfcxml/v3/email.rb +19 -0
  41. data/lib/rfcxml/v3/eref.rb +21 -0
  42. data/lib/rfcxml/v3/extaddr.rb +19 -0
  43. data/lib/rfcxml/v3/facsimile.rb +17 -0
  44. data/lib/rfcxml/v3/figure.rb +57 -0
  45. data/lib/rfcxml/v3/format.rb +21 -0
  46. data/lib/rfcxml/v3/front.rb +49 -0
  47. data/lib/rfcxml/v3/iref.rb +23 -0
  48. data/lib/rfcxml/v3/keyword.rb +17 -0
  49. data/lib/rfcxml/v3/li.rb +97 -0
  50. data/lib/rfcxml/v3/link.rb +19 -0
  51. data/lib/rfcxml/v3/list.rb +27 -0
  52. data/lib/rfcxml/v3/middle.rb +19 -0
  53. data/lib/rfcxml/v3/name.rb +56 -0
  54. data/lib/rfcxml/v3/note.rb +37 -0
  55. data/lib/rfcxml/v3/ol.rb +33 -0
  56. data/lib/rfcxml/v3/organization.rb +25 -0
  57. data/lib/rfcxml/v3/phone.rb +17 -0
  58. data/lib/rfcxml/v3/pobox.rb +19 -0
  59. data/lib/rfcxml/v3/postal.rb +46 -0
  60. data/lib/rfcxml/v3/postal_line.rb +19 -0
  61. data/lib/rfcxml/v3/postamble.rb +33 -0
  62. data/lib/rfcxml/v3/preamble.rb +57 -0
  63. data/lib/rfcxml/v3/refcontent.rb +28 -0
  64. data/lib/rfcxml/v3/reference.rb +43 -0
  65. data/lib/rfcxml/v3/referencegroup.rb +25 -0
  66. data/lib/rfcxml/v3/references.rb +33 -0
  67. data/lib/rfcxml/v3/region.rb +19 -0
  68. data/lib/rfcxml/v3/relref.rb +29 -0
  69. data/lib/rfcxml/v3/rfc.rb +70 -0
  70. data/lib/rfcxml/v3/section.rb +78 -0
  71. data/lib/rfcxml/v3/series_info.rb +27 -0
  72. data/lib/rfcxml/v3/sortingcode.rb +19 -0
  73. data/lib/rfcxml/v3/sourcecode.rb +31 -0
  74. data/lib/rfcxml/v3/spanx.rb +19 -0
  75. data/lib/rfcxml/v3/street.rb +19 -0
  76. data/lib/rfcxml/v3/strong.rb +43 -0
  77. data/lib/rfcxml/v3/sub.rb +49 -0
  78. data/lib/rfcxml/v3/sup.rb +28 -0
  79. data/lib/rfcxml/v3/table.rb +37 -0
  80. data/lib/rfcxml/v3/tbody.rb +21 -0
  81. data/lib/rfcxml/v3/td.rb +89 -0
  82. data/lib/rfcxml/v3/text.rb +82 -0
  83. data/lib/rfcxml/v3/texttable.rb +41 -0
  84. data/lib/rfcxml/v3/tfoot.rb +21 -0
  85. data/lib/rfcxml/v3/th.rb +14 -0
  86. data/lib/rfcxml/v3/thead.rb +21 -0
  87. data/lib/rfcxml/v3/title.rb +25 -0
  88. data/lib/rfcxml/v3/toc.rb +19 -0
  89. data/lib/rfcxml/v3/tr.rb +24 -0
  90. data/lib/rfcxml/v3/tt.rb +53 -0
  91. data/lib/rfcxml/v3/ttcol.rb +34 -0
  92. data/lib/rfcxml/v3/u.rb +25 -0
  93. data/lib/rfcxml/v3/ul.rb +31 -0
  94. data/lib/rfcxml/v3/uri.rb +17 -0
  95. data/lib/rfcxml/v3/vspace.rb +17 -0
  96. data/lib/rfcxml/v3/workgroup.rb +17 -0
  97. data/lib/rfcxml/v3/xref.rb +41 -0
  98. data/lib/rfcxml/v3/xref_text.rb +30 -0
  99. data/lib/rfcxml/v3.rb +8 -0
  100. data/lib/rfcxml/version.rb +5 -0
  101. data/lib/rfcxml.rb +17 -0
  102. data/reference-docs/v3-modified.rnc +1145 -0
  103. data/reference-docs/v3.rnc +1145 -0
  104. data/reference-docs/v3.xsd +1410 -0
  105. data/reference-docs/xml.xsd +19 -0
  106. data/rfcxml.gemspec +47 -0
  107. data/sig/xml2rfc.rbs +4 -0
  108. metadata +264 -0
@@ -0,0 +1,92 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ require_relative "artset"
6
+ require_relative "artwork"
7
+ require_relative "bcp14"
8
+ require_relative "br"
9
+ require_relative "cref"
10
+ require_relative "dl"
11
+ require_relative "em"
12
+ require_relative "eref"
13
+ require_relative "figure"
14
+ require_relative "iref"
15
+ # require_relative "ol"
16
+ require_relative "relref"
17
+ require_relative "sourcecode"
18
+ require_relative "strong"
19
+ require_relative "sub"
20
+ require_relative "sup"
21
+ require_relative "text"
22
+ require_relative "tt"
23
+ require_relative "u"
24
+ require_relative "ul"
25
+ require_relative "xref"
26
+
27
+ module Rfcxml
28
+ module V3
29
+ class Ol < Lutaml::Model::Serializable; end
30
+ class Dl < Lutaml::Model::Serializable; end
31
+
32
+ class Blockquote < Lutaml::Model::Serializable
33
+ attribute :content, :string
34
+ attribute :anchor, :string
35
+ attribute :pn, :string
36
+ attribute :cite, :string
37
+ attribute :quoted_from, :string
38
+ attribute :artset, Artset, collection: true
39
+ attribute :artwork, Artwork, collection: true
40
+ attribute :dl, Dl, collection: true
41
+ attribute :figure, Figure, collection: true
42
+ attribute :ol, Ol, collection: true
43
+ attribute :sourcecode, Sourcecode, collection: true
44
+ attribute :t, Text, collection: true
45
+ attribute :ul, Ul, collection: true
46
+ attribute :bcp14, Bcp14, collection: true
47
+ attribute :br, Br, collection: true
48
+ attribute :cref, Cref, collection: true
49
+ attribute :em, Em, collection: true
50
+ attribute :eref, Eref, collection: true
51
+ attribute :iref, Iref, collection: true
52
+ attribute :relref, Relref, collection: true
53
+ attribute :strong, Strong, collection: true
54
+ attribute :sub, Sub, collection: true
55
+ attribute :sup, Sup, collection: true
56
+ attribute :tt, Tt, collection: true
57
+ attribute :u, U, collection: true
58
+ attribute :xref, Xref, collection: true
59
+
60
+ xml do
61
+ root "blockquote"
62
+
63
+ map_content to: :content
64
+ map_attribute "anchor", to: :anchor
65
+ map_attribute "pn", to: :pn
66
+ map_attribute "cite", to: :cite
67
+ map_attribute "quotedFrom", to: :quoted_from
68
+ map_element "artset", to: :artset
69
+ map_element "artwork", to: :artwork
70
+ map_element "dl", to: :dl
71
+ map_element "figure", to: :figure
72
+ map_element "ol", to: :ol
73
+ map_element "sourcecode", to: :sourcecode
74
+ map_element "t", to: :t
75
+ map_element "ul", to: :ul
76
+ map_element "bcp14", to: :bcp14
77
+ map_element "br", to: :br
78
+ map_element "cref", to: :cref
79
+ map_element "em", to: :em
80
+ map_element "eref", to: :eref
81
+ map_element "iref", to: :iref
82
+ map_element "relref", to: :relref
83
+ map_element "strong", to: :strong
84
+ map_element "sub", to: :sub
85
+ map_element "sup", to: :sup
86
+ map_element "tt", to: :tt
87
+ map_element "u", to: :u
88
+ map_element "xref", to: :xref
89
+ end
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ require_relative "section"
6
+
7
+ module Rfcxml
8
+ module V3
9
+ class Boilerplate < Lutaml::Model::Serializable
10
+ attribute :section, Section, collection: true
11
+
12
+ xml do
13
+ root "boilerplate"
14
+
15
+ map_element "section", to: :section
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ module Rfcxml
6
+ module V3
7
+ class Br < Lutaml::Model::Serializable
8
+ xml do
9
+ root "br"
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ require_relative "cref"
6
+ require_relative "eref"
7
+ require_relative "iref"
8
+ require_relative "spanx"
9
+ require_relative "xref"
10
+
11
+ module Rfcxml
12
+ module V3
13
+ class C < Lutaml::Model::Serializable
14
+ attribute :content, :string
15
+ attribute :cref, Cref, collection: true
16
+ attribute :eref, Eref, collection: true
17
+ attribute :iref, Iref, collection: true
18
+ attribute :spanx, Spanx, collection: true
19
+ attribute :xref, Xref, collection: true
20
+
21
+ xml do
22
+ root "c"
23
+
24
+ map_content to: :content
25
+ map_element "cref", to: :cref
26
+ map_element "eref", to: :eref
27
+ map_element "iref", to: :iref
28
+ map_element "spanx", to: :spanx
29
+ map_element "xref", to: :xref
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ module Rfcxml
6
+ module V3
7
+ class City < Lutaml::Model::Serializable
8
+ attribute :content, :string
9
+ attribute :ascii, :string
10
+
11
+ xml do
12
+ root "city"
13
+
14
+ map_content to: :content
15
+ map_attribute "ascii", to: :ascii
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ module Rfcxml
6
+ module V3
7
+ class Cityarea < Lutaml::Model::Serializable
8
+ attribute :content, :string
9
+ attribute :ascii, :string
10
+
11
+ xml do
12
+ root "cityarea"
13
+
14
+ map_content to: :content
15
+ map_attribute "ascii", to: :ascii
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ module Rfcxml
6
+ module V3
7
+ class Code < Lutaml::Model::Serializable
8
+ attribute :content, :string
9
+ attribute :ascii, :string
10
+
11
+ xml do
12
+ root "code"
13
+
14
+ map_content to: :content
15
+ map_attribute "ascii", to: :ascii
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ require_relative "address"
6
+ require_relative "organization"
7
+
8
+ module Rfcxml
9
+ module V3
10
+ class Contact < Lutaml::Model::Serializable
11
+ attribute :anchor, :string
12
+ attribute :initials, :string
13
+ attribute :ascii_initials, :string
14
+ attribute :surname, :string
15
+ attribute :ascii_surname, :string
16
+ attribute :fullname, :string
17
+ attribute :ascii_fullname, :string
18
+ attribute :organization, Organization
19
+ attribute :address, Address
20
+
21
+ xml do
22
+ root "contact"
23
+
24
+ map_attribute "anchor", to: :anchor
25
+ map_attribute "initials", to: :initials
26
+ map_attribute "asciiInitials", to: :ascii_initials
27
+ map_attribute "surname", to: :surname
28
+ map_attribute "asciiSurname", to: :ascii_surname
29
+ map_attribute "fullname", to: :fullname
30
+ map_attribute "asciiFullname", to: :ascii_fullname
31
+ map_element "organization", to: :organization
32
+ map_element "address", to: :address
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ module Rfcxml
6
+ module V3
7
+ class Country < Lutaml::Model::Serializable
8
+ attribute :content, :string
9
+ attribute :ascii, :string
10
+
11
+ xml do
12
+ root "country"
13
+
14
+ map_content to: :content
15
+ map_attribute "ascii", to: :ascii
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ require_relative "br"
6
+ require_relative "em"
7
+ require_relative "eref"
8
+ require_relative "relref"
9
+ require_relative "strong"
10
+ require_relative "sub"
11
+ require_relative "sup"
12
+ require_relative "tt"
13
+ require_relative "xref"
14
+
15
+ module Rfcxml
16
+ module V3
17
+ class Cref < Lutaml::Model::Serializable
18
+ attribute :content, :string
19
+ attribute :anchor, :string
20
+ attribute :source, :string
21
+ attribute :display, :string, default: -> { "true" }
22
+ attribute :br, Br, collection: true
23
+ attribute :em, Em, collection: true
24
+ attribute :eref, Eref, collection: true
25
+ attribute :relref, Relref, collection: true
26
+ attribute :strong, Strong, collection: true
27
+ attribute :sub, Sub, collection: true
28
+ attribute :sup, Sup, collection: true
29
+ attribute :tt, Tt, collection: true
30
+ attribute :xref, Xref, collection: true
31
+
32
+ xml do
33
+ root "cref"
34
+
35
+ map_content to: :content
36
+ map_attribute "anchor", to: :anchor
37
+ map_attribute "source", to: :source
38
+ map_attribute "display", to: :display
39
+ map_element "br", to: :br
40
+ map_element "em", to: :em
41
+ map_element "eref", to: :eref
42
+ map_element "relref", to: :relref
43
+ map_element "strong", to: :strong
44
+ map_element "sub", to: :sub
45
+ map_element "sup", to: :sup
46
+ map_element "tt", to: :tt
47
+ map_element "xref", to: :xref
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ module Rfcxml
6
+ module V3
7
+ class Date < Lutaml::Model::Serializable
8
+ attribute :content, :string
9
+ attribute :day, :string
10
+ attribute :month, :string
11
+ attribute :year, :string
12
+
13
+ xml do
14
+ root "date"
15
+
16
+ map_content to: :content
17
+ map_attribute "day", to: :day
18
+ map_attribute "month", to: :month
19
+ map_attribute "year", to: :year
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,92 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ require_relative "artset"
6
+ require_relative "artwork"
7
+ require_relative "aside"
8
+ require_relative "bcp14"
9
+ require_relative "br"
10
+ require_relative "cref"
11
+ require_relative "dl"
12
+ require_relative "em"
13
+ require_relative "eref"
14
+ require_relative "figure"
15
+ require_relative "iref"
16
+ require_relative "ol"
17
+ require_relative "relref"
18
+ require_relative "sourcecode"
19
+ require_relative "strong"
20
+ require_relative "sub"
21
+ require_relative "sup"
22
+ require_relative "text"
23
+ require_relative "table"
24
+ require_relative "tt"
25
+ require_relative "u"
26
+ require_relative "ul"
27
+ require_relative "xref"
28
+
29
+ module Rfcxml
30
+ module V3
31
+ class Dd < Lutaml::Model::Serializable
32
+ attribute :content, :string
33
+ attribute :anchor, :string
34
+ attribute :pn, :string
35
+ attribute :artset, Artset, collection: true
36
+ attribute :artwork, Artwork, collection: true
37
+ attribute :dl, Dl, collection: true
38
+ attribute :figure, Figure, collection: true
39
+ attribute :ol, Ol, collection: true
40
+ attribute :sourcecode, Sourcecode, collection: true
41
+ attribute :t, Text, collection: true
42
+ attribute :table, Table, collection: true
43
+ attribute :ul, Ul, collection: true
44
+ attribute :bcp14, Bcp14, collection: true
45
+ attribute :br, Br, collection: true
46
+ attribute :cref, Cref, collection: true
47
+ attribute :em, Em, collection: true
48
+ attribute :eref, Eref, collection: true
49
+ attribute :iref, Iref, collection: true
50
+ attribute :relref, Relref, collection: true
51
+ attribute :strong, Strong, collection: true
52
+ attribute :sub, Sub, collection: true
53
+ attribute :sup, Sup, collection: true
54
+ attribute :tt, Tt, collection: true
55
+ attribute :u, U, collection: true
56
+ attribute :xref, Xref, collection: true
57
+
58
+ attribute :aside, Aside, collection: true
59
+
60
+ xml do
61
+ root "dd", mixed: true
62
+
63
+ map_content to: :content
64
+ map_attribute "anchor", to: :anchor
65
+ map_attribute "pn", to: :pn
66
+ map_element "artset", to: :artset
67
+ map_element "artwork", to: :artwork
68
+ map_element "aside", to: :aside
69
+ map_element "dl", to: :dl
70
+ map_element "figure", to: :figure
71
+ map_element "ol", to: :ol
72
+ map_element "sourcecode", to: :sourcecode
73
+ map_element "t", to: :t
74
+ map_element "table", to: :table
75
+ map_element "ul", to: :ul
76
+ map_element "bcp14", to: :bcp14
77
+ map_element "br", to: :br
78
+ map_element "cref", to: :cref
79
+ map_element "em", to: :em
80
+ map_element "eref", to: :eref
81
+ map_element "iref", to: :iref
82
+ map_element "relref", to: :relref
83
+ map_element "strong", to: :strong
84
+ map_element "sub", to: :sub
85
+ map_element "sup", to: :sup
86
+ map_element "tt", to: :tt
87
+ map_element "u", to: :u
88
+ map_element "xref", to: :xref
89
+ end
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ module Rfcxml
6
+ module V3
7
+ class Displayreference < Lutaml::Model::Serializable
8
+ attribute :target, :string
9
+ attribute :to, :string
10
+
11
+ xml do
12
+ root "displayreference"
13
+
14
+ map_attribute "target", to: :target
15
+ map_attribute "to", to: :to
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ require_relative "dd"
6
+ require_relative "dt"
7
+
8
+ module Rfcxml
9
+ module V3
10
+ # class Dd < Lutaml::Model::Serializable; end
11
+ # class Dt < Lutaml::Model::Serializable; end
12
+
13
+ class Dl < Lutaml::Model::Serializable
14
+ attribute :anchor, :string
15
+ attribute :spacing, :string, default: -> { "normal" }
16
+ attribute :newline, :string, default: -> { "false" }
17
+ attribute :indent, :string, default: -> { "3" }
18
+ attribute :pn, :string
19
+ attribute :dt, Dt, collection: true
20
+ attribute :dd, Dd, collection: true
21
+
22
+ xml do
23
+ root "dl", mixed: true
24
+
25
+ map_attribute "anchor", to: :anchor
26
+ map_attribute "spacing", to: :spacing
27
+ map_attribute "newline", to: :newline
28
+ map_attribute "indent", to: :indent
29
+ map_attribute "pn", to: :pn
30
+ map_element "dt", to: :dt
31
+ map_element "dd", to: :dd
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,58 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ require_relative "bcp14"
6
+ require_relative "br"
7
+ require_relative "cref"
8
+ require_relative "em"
9
+ require_relative "eref"
10
+ require_relative "iref"
11
+ require_relative "relref"
12
+ require_relative "strong"
13
+ require_relative "sub"
14
+ require_relative "sup"
15
+ require_relative "tt"
16
+ require_relative "xref"
17
+
18
+ module Rfcxml
19
+ module V3
20
+ class Dt < Lutaml::Model::Serializable
21
+ attribute :content, :string
22
+ attribute :anchor, :string
23
+ attribute :pn, :string
24
+ attribute :bcp14, Bcp14, collection: true
25
+ attribute :br, Br, collection: true
26
+ attribute :cref, Cref, collection: true
27
+ attribute :em, Em, collection: true
28
+ attribute :eref, Eref, collection: true
29
+ attribute :iref, Iref, collection: true
30
+ attribute :relref, Relref, collection: true
31
+ attribute :strong, Strong, collection: true
32
+ attribute :sub, Sub, collection: true
33
+ attribute :sup, Sup, collection: true
34
+ attribute :tt, Tt, collection: true
35
+ attribute :xref, Xref, collection: true
36
+
37
+ xml do
38
+ root "dt"
39
+
40
+ map_content to: :content
41
+ map_attribute "anchor", to: :anchor
42
+ map_attribute "pn", to: :pn
43
+ map_element "bcp14", to: :bcp14
44
+ map_element "br", to: :br
45
+ map_element "cref", to: :cref
46
+ map_element "em", to: :em
47
+ map_element "eref", to: :eref
48
+ map_element "iref", to: :iref
49
+ map_element "relref", to: :relref
50
+ map_element "strong", to: :strong
51
+ map_element "sub", to: :sub
52
+ map_element "sup", to: :sup
53
+ map_element "tt", to: :tt
54
+ map_element "xref", to: :xref
55
+ end
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+ require_relative "strong"
5
+
6
+ module Rfcxml
7
+ module V3
8
+ class Em < Strong
9
+ xml do
10
+ root "em"
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ module Rfcxml
6
+ module V3
7
+ class Email < Lutaml::Model::Serializable
8
+ attribute :content, :string
9
+ attribute :ascii, :string
10
+
11
+ xml do
12
+ root "email"
13
+
14
+ map_content to: :content
15
+ map_attribute "ascii", to: :ascii
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ module Rfcxml
6
+ module V3
7
+ class Eref < Lutaml::Model::Serializable
8
+ attribute :content, :string
9
+ attribute :brackets, :string, default: -> { "none" }
10
+ attribute :target, :string
11
+
12
+ xml do
13
+ root "eref"
14
+
15
+ map_content to: :content
16
+ map_attribute "brackets", to: :brackets
17
+ map_attribute "target", to: :target
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ module Rfcxml
6
+ module V3
7
+ class Extaddr < Lutaml::Model::Serializable
8
+ attribute :content, :string
9
+ attribute :ascii, :string
10
+
11
+ xml do
12
+ root "extaddr"
13
+
14
+ map_content to: :content
15
+ map_attribute "ascii", to: :ascii
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "lutaml/model"
4
+
5
+ module Rfcxml
6
+ module V3
7
+ class Facsimile < Lutaml::Model::Serializable
8
+ attribute :content, :string
9
+
10
+ xml do
11
+ root "facsimile"
12
+
13
+ map_content to: :content
14
+ end
15
+ end
16
+ end
17
+ end