rfcxml 0.2.0

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 (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