loc_mods 0.2.4 → 0.2.5

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 (73) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +2 -0
  3. data/.rubocop_todo.yml +83 -0
  4. data/lib/loc_mods/abstract.rb +9 -9
  5. data/lib/loc_mods/access_condition.rb +11 -11
  6. data/lib/loc_mods/alternative_name.rb +10 -10
  7. data/lib/loc_mods/area.rb +3 -3
  8. data/lib/loc_mods/cartographic_extension.rb +4 -4
  9. data/lib/loc_mods/cartographics.rb +8 -8
  10. data/lib/loc_mods/city_section.rb +3 -3
  11. data/lib/loc_mods/classification.rb +8 -8
  12. data/lib/loc_mods/cli.rb +1 -2
  13. data/lib/loc_mods/collection.rb +3 -3
  14. data/lib/loc_mods/copy_information.rb +5 -5
  15. data/lib/loc_mods/date.rb +8 -8
  16. data/lib/loc_mods/date_other.rb +4 -4
  17. data/lib/loc_mods/detail.rb +7 -7
  18. data/lib/loc_mods/edition.rb +4 -4
  19. data/lib/loc_mods/enumeration_and_chronology.rb +4 -4
  20. data/lib/loc_mods/extent.rb +4 -4
  21. data/lib/loc_mods/extent_definition.rb +7 -7
  22. data/lib/loc_mods/form.rb +5 -5
  23. data/lib/loc_mods/genre.rb +8 -8
  24. data/lib/loc_mods/geographic_code.rb +6 -6
  25. data/lib/loc_mods/hierarchical_geographic.rb +6 -6
  26. data/lib/loc_mods/hierarchical_part.rb +8 -8
  27. data/lib/loc_mods/holding_simple.rb +2 -2
  28. data/lib/loc_mods/identifier.rb +8 -8
  29. data/lib/loc_mods/item_identifier.rb +4 -4
  30. data/lib/loc_mods/language.rb +9 -9
  31. data/lib/loc_mods/language_term.rb +7 -7
  32. data/lib/loc_mods/location.rb +8 -8
  33. data/lib/loc_mods/name.rb +19 -19
  34. data/lib/loc_mods/name_part.rb +4 -4
  35. data/lib/loc_mods/non_sort.rb +4 -4
  36. data/lib/loc_mods/note.rb +7 -7
  37. data/lib/loc_mods/occupation.rb +6 -6
  38. data/lib/loc_mods/origin_info.rb +10 -10
  39. data/lib/loc_mods/part.rb +10 -10
  40. data/lib/loc_mods/physical_description.rb +10 -10
  41. data/lib/loc_mods/physical_description_note.rb +7 -7
  42. data/lib/loc_mods/physical_location.rb +5 -5
  43. data/lib/loc_mods/place.rb +3 -3
  44. data/lib/loc_mods/place_term.rb +7 -7
  45. data/lib/loc_mods/publisher.rb +6 -6
  46. data/lib/loc_mods/record.rb +4 -4
  47. data/lib/loc_mods/record_content_source.rb +4 -4
  48. data/lib/loc_mods/record_identifier.rb +4 -4
  49. data/lib/loc_mods/record_info.rb +9 -9
  50. data/lib/loc_mods/record_info_note.rb +8 -8
  51. data/lib/loc_mods/region.rb +3 -3
  52. data/lib/loc_mods/related_item.rb +10 -10
  53. data/lib/loc_mods/role.rb +2 -2
  54. data/lib/loc_mods/role_term.rb +4 -4
  55. data/lib/loc_mods/script_term.rb +4 -4
  56. data/lib/loc_mods/string_plus_language.rb +6 -6
  57. data/lib/loc_mods/string_plus_language_plus_authority.rb +6 -6
  58. data/lib/loc_mods/string_plus_language_plus_supplied.rb +4 -4
  59. data/lib/loc_mods/subject.rb +15 -15
  60. data/lib/loc_mods/subject_name.rb +14 -14
  61. data/lib/loc_mods/subject_title_info.rb +16 -16
  62. data/lib/loc_mods/table_of_contents.rb +9 -9
  63. data/lib/loc_mods/target_audience.rb +5 -5
  64. data/lib/loc_mods/temporal.rb +5 -5
  65. data/lib/loc_mods/text.rb +5 -5
  66. data/lib/loc_mods/title_info.rb +22 -22
  67. data/lib/loc_mods/type_of_resource.rb +8 -8
  68. data/lib/loc_mods/url.rb +8 -8
  69. data/lib/loc_mods/version.rb +1 -1
  70. data/lib/loc_mods.rb +7 -6
  71. metadata +5 -6
  72. data/lib/loc_mods/base_mapper.rb +0 -26
  73. data/lib/loc_mods/comparable_mapper.rb +0 -501
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c4e669e85342e73695662fb8685879a283bd8b166c44a180de849a1a868d5db3
4
- data.tar.gz: 93bd3bce5771da37094b7b2f4431c733fd5024be93fbde51900ea3e76a95af1b
3
+ metadata.gz: a2a4762188e137e5ea3515cbff8dcbfa6e2749c7eb1ca4921d230e20c2c066db
4
+ data.tar.gz: a510dd995107ef4b33dabcc0c8e9658948e3c4d7474d50fd2cbd8d2eaf1b7e31
5
5
  SHA512:
6
- metadata.gz: 3597a8790c984fb0e4666d334d44727952e46bed0822b8c999dc4bfa3a32669ebfdf6150cc6ab4c37762b7483dfb376f716b9437e27634d594852dc10732de65
7
- data.tar.gz: 3d44d27786cea8ddd7024065b9ea8f8c5a0b08eebf6aa93d35dc24c9575c67f21a9a3ed69887b667332fa9e20af84dd003739b6853ec41b92960bd587132a8fc
6
+ metadata.gz: 410d05bac6bde6ad26693359a2331c7b93ba4abcdabed33ad51f3f25dd9c08491be258ff0c9c2f4752f9b323cfd9b60102193af4535d30e92b7297679892439a
7
+ data.tar.gz: a70f2deb4dff1d8fd8f119e2d78b40330444caffa5f3d47fc6939ba51241a47fcbaf47eda8a64f35b002d7c7660c7f9c97debceda0c9019e2d8c7a13870785e2
data/.rubocop.yml CHANGED
@@ -1,3 +1,5 @@
1
+ inherit_from: .rubocop_todo.yml
2
+
1
3
  AllCops:
2
4
  TargetRubyVersion: 3.0
3
5
 
data/.rubocop_todo.yml ADDED
@@ -0,0 +1,83 @@
1
+ # This configuration was generated by
2
+ # `rubocop --auto-gen-config`
3
+ # on 2024-08-15 09:25:52 UTC using RuboCop version 1.65.1.
4
+ # The point is for the user to remove these configuration records
5
+ # one by one as the offenses are removed from the code base.
6
+ # Note that changes in the inspected code, or installation of new
7
+ # versions of RuboCop, may require this file to be generated again.
8
+
9
+ # Offense count: 1
10
+ # Configuration parameters: Severity, Include.
11
+ # Include: **/*.gemspec
12
+ Gemspec/RequiredRubyVersion:
13
+ Exclude:
14
+ - 'loc_mods.gemspec'
15
+
16
+ # Offense count: 4
17
+ # Configuration parameters: AllowedMethods.
18
+ # AllowedMethods: enums
19
+ Lint/ConstantDefinitionInBlock:
20
+ Exclude:
21
+ - 'spec/loc_mods/collection_spec.rb'
22
+
23
+ # Offense count: 8
24
+ # Configuration parameters: AllowedMethods, AllowedPatterns, CountRepeatedAttributes.
25
+ Metrics/AbcSize:
26
+ Max: 50
27
+
28
+ # Offense count: 2
29
+ # Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns.
30
+ # AllowedMethods: refine
31
+ Metrics/BlockLength:
32
+ Max: 66
33
+
34
+ # Offense count: 1
35
+ # Configuration parameters: CountComments, CountAsOne.
36
+ Metrics/ClassLength:
37
+ Max: 253
38
+
39
+ # Offense count: 6
40
+ # Configuration parameters: AllowedMethods, AllowedPatterns.
41
+ Metrics/CyclomaticComplexity:
42
+ Max: 15
43
+
44
+ # Offense count: 10
45
+ # Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns.
46
+ Metrics/MethodLength:
47
+ Max: 43
48
+
49
+ # Offense count: 5
50
+ # Configuration parameters: AllowedMethods, AllowedPatterns.
51
+ Metrics/PerceivedComplexity:
52
+ Max: 17
53
+
54
+ # Offense count: 1
55
+ # Configuration parameters: ForbiddenDelimiters.
56
+ # ForbiddenDelimiters: (?i-mx:(^|\s)(EO[A-Z]{1}|END)(\s|$))
57
+ Naming/HeredocDelimiterNaming:
58
+ Exclude:
59
+ - 'bin/update-nist-mods'
60
+
61
+ # Offense count: 1
62
+ Security/Open:
63
+ Exclude:
64
+ - 'bin/update-nist-mods'
65
+
66
+ # Offense count: 65
67
+ # Configuration parameters: AllowedConstants.
68
+ Style/Documentation:
69
+ Enabled: false
70
+
71
+ # Offense count: 1
72
+ # Configuration parameters: AllowedMethods.
73
+ # AllowedMethods: respond_to_missing?
74
+ Style/OptionalBooleanParameter:
75
+ Exclude:
76
+ - 'lib/loc_mods/comparable_mapper.rb'
77
+
78
+ # Offense count: 1
79
+ # This cop supports safe autocorrection (--autocorrect).
80
+ # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns.
81
+ # URISchemes: http, https
82
+ Layout/LineLength:
83
+ Max: 126
@@ -1,16 +1,16 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  module LocMods
6
- class Abstract < BaseMapper
7
- attribute :content, Shale::Type::String
8
- attribute :display_label, Shale::Type::String
9
- attribute :type, Shale::Type::String
10
- attribute :shareable, Shale::Type::Value
11
- attribute :alt_rep_group, Shale::Type::String
12
- attribute :alt_format, Shale::Type::Value
13
- attribute :content_type, Shale::Type::String
6
+ class Abstract < Lutaml::Model::Serializable
7
+ attribute :content, :string
8
+ attribute :display_label, :string
9
+ attribute :type, :string
10
+ attribute :shareable, :string
11
+ attribute :alt_rep_group, :string
12
+ attribute :alt_format, :string
13
+ attribute :content_type, :string
14
14
 
15
15
  xml do
16
16
  root "abstract"
@@ -1,18 +1,18 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  module LocMods
6
- class AccessCondition < BaseMapper
7
- attribute :content, Shale::Type::String
8
- attribute :display_label, Shale::Type::String
9
- attribute :lang, Shale::Type::String
10
- attribute :script, Shale::Type::String
11
- attribute :transliteration, Shale::Type::String
12
- attribute :type, Shale::Type::String
13
- attribute :alt_rep_group, Shale::Type::String
14
- attribute :alt_format, Shale::Type::Value
15
- attribute :content_type, Shale::Type::String
6
+ class AccessCondition < Lutaml::Model::Serializable
7
+ attribute :content, :string
8
+ attribute :display_label, :string
9
+ attribute :lang, :string
10
+ attribute :script, :string
11
+ attribute :transliteration, :string
12
+ attribute :type, :string
13
+ attribute :alt_rep_group, :string
14
+ attribute :alt_format, :string
15
+ attribute :content_type, :string
16
16
 
17
17
  xml do
18
18
  root "accessCondition"
@@ -1,23 +1,23 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  require_relative "identifier"
6
6
  require_relative "name_part"
7
7
  require_relative "role"
8
8
 
9
9
  module LocMods
10
- class AlternativeName < BaseMapper
11
- attribute :lang, Shale::Type::String
12
- attribute :script, Shale::Type::String
13
- attribute :transliteration, Shale::Type::String
14
- attribute :display_label, Shale::Type::String
15
- attribute :alt_type, Shale::Type::String
10
+ class AlternativeName < Lutaml::Model::Serializable
11
+ attribute :lang, :string
12
+ attribute :script, :string
13
+ attribute :transliteration, :string
14
+ attribute :display_label, :string
15
+ attribute :alt_type, :string
16
16
  attribute :name_part, NamePart, collection: true
17
- attribute :display_form, Shale::Type::String, collection: true
18
- attribute :affiliation, Shale::Type::String, collection: true
17
+ attribute :display_form, :string, collection: true
18
+ attribute :affiliation, :string, collection: true
19
19
  attribute :role, Role, collection: true
20
- attribute :description, Shale::Type::String, collection: true
20
+ attribute :description, :string, collection: true
21
21
  attribute :name_identifier, Identifier, collection: true
22
22
 
23
23
  xml do
data/lib/loc_mods/area.rb CHANGED
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  require_relative "hierarchical_part"
6
6
 
7
7
  module LocMods
8
- class Area < BaseMapper
8
+ class Area < Lutaml::Model::Serializable
9
9
  attribute :content, HierarchicalPart
10
- attribute :area_type, Shale::Type::Value
10
+ attribute :area_type, :string
11
11
 
12
12
  xml do
13
13
  root "area"
@@ -1,11 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  module LocMods
6
- class CartographicExtension < BaseMapper
7
- attribute :content, Shale::Type::String
8
- attribute :display_label, Shale::Type::String
6
+ class CartographicExtension < Lutaml::Model::Serializable
7
+ attribute :content, :string
8
+ attribute :display_label, :string
9
9
 
10
10
  xml do
11
11
  root "cartographicExtension"
@@ -1,17 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  require_relative "cartographic_extension"
6
6
 
7
7
  module LocMods
8
- class Cartographics < BaseMapper
9
- attribute :authority, Shale::Type::String
10
- attribute :authority_uri, Shale::Type::Value
11
- attribute :value_uri, Shale::Type::Value
12
- attribute :scale, Shale::Type::String
13
- attribute :projection, Shale::Type::String
14
- attribute :coordinates, Shale::Type::String, collection: true
8
+ class Cartographics < Lutaml::Model::Serializable
9
+ attribute :authority, :string
10
+ attribute :authority_uri, :string
11
+ attribute :value_uri, :string
12
+ attribute :scale, :string
13
+ attribute :projection, :string
14
+ attribute :coordinates, :string, collection: true
15
15
  attribute :cartographic_extension, CartographicExtension, collection: true
16
16
 
17
17
  xml do
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  require_relative "hierarchical_part"
6
6
 
7
7
  module LocMods
8
- class CitySection < BaseMapper
8
+ class CitySection < Lutaml::Model::Serializable
9
9
  attribute :content, HierarchicalPart
10
- attribute :city_section_type, Shale::Type::Value
10
+ attribute :city_section_type, :string
11
11
 
12
12
  xml do
13
13
  root "citySection"
@@ -1,15 +1,15 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  module LocMods
6
- class Classification < BaseMapper
7
- attribute :content, Shale::Type::String
8
- attribute :edition, Shale::Type::String
9
- attribute :display_label, Shale::Type::String
10
- attribute :alt_rep_group, Shale::Type::String
11
- attribute :usage, Shale::Type::Value
12
- attribute :generator, Shale::Type::String
6
+ class Classification < Lutaml::Model::Serializable
7
+ attribute :content, :string
8
+ attribute :edition, :string
9
+ attribute :display_label, :string
10
+ attribute :alt_rep_group, :string
11
+ attribute :usage, :string
12
+ attribute :generator, :string
13
13
 
14
14
  xml do
15
15
  root "classification"
data/lib/loc_mods/cli.rb CHANGED
@@ -1,6 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # lib/loc_mods/cli.rb
4
3
  require "thor"
5
4
  require "loc_mods"
6
5
 
@@ -73,7 +72,7 @@ module LocMods
73
72
  end
74
73
 
75
74
  def print_differences(record1, record2, show_unchanged, highlight_diff, use_colors)
76
- diff_score, diff_tree = LocMods::BaseMapper.diff_with_score(
75
+ diff_score, diff_tree = Lutaml::Model::Serialize.diff_with_score(
77
76
  record1,
78
77
  record2,
79
78
  show_unchanged: show_unchanged,
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  require_relative "record"
6
6
 
7
7
  module LocMods
8
- class Collection < BaseMapper
8
+ class Collection < Lutaml::Model::Serializable
9
9
  attribute :mods, Record, collection: true
10
- attribute :schema_location, Shale::Type::String
10
+ attribute :schema_location, :string
11
11
 
12
12
  xml do
13
13
  root "modsCollection"
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  require_relative "enumeration_and_chronology"
6
6
  require_relative "form"
@@ -8,11 +8,11 @@ require_relative "item_identifier"
8
8
  require_relative "note"
9
9
 
10
10
  module LocMods
11
- class CopyInformation < BaseMapper
11
+ class CopyInformation < Lutaml::Model::Serializable
12
12
  attribute :form, Form
13
- attribute :sub_location, Shale::Type::String, collection: true
14
- attribute :shelf_locator, Shale::Type::String, collection: true
15
- attribute :electronic_locator, Shale::Type::String, collection: true
13
+ attribute :sub_location, :string, collection: true
14
+ attribute :shelf_locator, :string, collection: true
15
+ attribute :electronic_locator, :string, collection: true
16
16
  attribute :note, Note, collection: true
17
17
  attribute :enumeration_and_chronology, EnumerationAndChronology,
18
18
  collection: true
data/lib/loc_mods/date.rb CHANGED
@@ -1,15 +1,15 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  module LocMods
6
- class Date < BaseMapper
7
- attribute :content, Shale::Type::String
8
- attribute :encoding, Shale::Type::String
9
- attribute :qualifier, Shale::Type::String
10
- attribute :point, Shale::Type::String
11
- attribute :key_date, Shale::Type::Value
12
- attribute :calendar, Shale::Type::String
6
+ class Date < Lutaml::Model::Serializable
7
+ attribute :content, :string
8
+ attribute :encoding, :string
9
+ attribute :qualifier, :string
10
+ attribute :point, :string
11
+ attribute :key_date, :string
12
+ attribute :calendar, :string
13
13
 
14
14
  xml do
15
15
  root "recordChangeDate"
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  require_relative "date"
6
6
 
7
7
  module LocMods
8
- class DateOther < BaseMapper
9
- attribute :content, Shale::Type::String
10
- attribute :type, Shale::Type::String
8
+ class DateOther < Lutaml::Model::Serializable
9
+ attribute :content, :string
10
+ attribute :type, :string
11
11
 
12
12
  xml do
13
13
  root "dateOther"
@@ -1,14 +1,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  module LocMods
6
- class Detail < BaseMapper
7
- attribute :type, Shale::Type::String
8
- attribute :level, Shale::Type::Integer
9
- attribute :number, Shale::Type::String, collection: true
10
- attribute :caption, Shale::Type::String, collection: true
11
- attribute :title, Shale::Type::String, collection: true
6
+ class Detail < Lutaml::Model::Serializable
7
+ attribute :type, :string
8
+ attribute :level, :integer
9
+ attribute :number, :string, collection: true
10
+ attribute :caption, :string, collection: true
11
+ attribute :title, :string, collection: true
12
12
 
13
13
  xml do
14
14
  root "detail"
@@ -1,12 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  module LocMods
6
6
  # LocMods::StringPlusLanguagePlusSupplied
7
- class Edition < BaseMapper
8
- attribute :content, Shale::Type::String
9
- attribute :supplied, Shale::Type::String
7
+ class Edition < Lutaml::Model::Serializable
8
+ attribute :content, :string
9
+ attribute :supplied, :string
10
10
 
11
11
  xml do
12
12
  root "edition"
@@ -1,11 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  module LocMods
6
- class EnumerationAndChronology < BaseMapper
7
- attribute :content, Shale::Type::String
8
- attribute :unit_type, Shale::Type::String
6
+ class EnumerationAndChronology < Lutaml::Model::Serializable
7
+ attribute :content, :string
8
+ attribute :unit_type, :string
9
9
 
10
10
  xml do
11
11
  root "enumerationAndChronology"
@@ -1,11 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  module LocMods
6
- class Extent < BaseMapper
7
- attribute :content, Shale::Type::String
8
- attribute :unit, Shale::Type::Value
6
+ class Extent < Lutaml::Model::Serializable
7
+ attribute :content, :string
8
+ attribute :unit, :string
9
9
 
10
10
  xml do
11
11
  root "extent"
@@ -1,14 +1,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  module LocMods
6
- class ExtentDefinition < BaseMapper
7
- attribute :unit, Shale::Type::String
8
- attribute :start, Shale::Type::String
9
- attribute :end, Shale::Type::String
10
- attribute :total, Shale::Type::Integer
11
- attribute :list, Shale::Type::String
6
+ class ExtentDefinition < Lutaml::Model::Serializable
7
+ attribute :unit, :string
8
+ attribute :start, :string
9
+ attribute :end, :string
10
+ attribute :total, :integer
11
+ attribute :list, :string
12
12
 
13
13
  xml do
14
14
  root "extentDefinition"
data/lib/loc_mods/form.rb CHANGED
@@ -1,12 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  module LocMods
6
- class Form < BaseMapper
7
- attribute :content, Shale::Type::String
8
- attribute :type, Shale::Type::String
9
- attribute :authority, Shale::Type::String
6
+ class Form < Lutaml::Model::Serializable
7
+ attribute :content, :string
8
+ attribute :type, :string
9
+ attribute :authority, :string
10
10
 
11
11
  xml do
12
12
  root "form"
@@ -1,15 +1,15 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  module LocMods
6
- class Genre < BaseMapper
7
- attribute :content, Shale::Type::String
8
- attribute :type, Shale::Type::String
9
- attribute :display_label, Shale::Type::String
10
- attribute :alt_rep_group, Shale::Type::String
11
- attribute :usage, Shale::Type::String
12
- attribute :authority, Shale::Type::String
6
+ class Genre < Lutaml::Model::Serializable
7
+ attribute :content, :string
8
+ attribute :type, :string
9
+ attribute :display_label, :string
10
+ attribute :alt_rep_group, :string
11
+ attribute :usage, :string
12
+ attribute :authority, :string
13
13
 
14
14
  xml do
15
15
  root "genre"
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  module LocMods
6
- class GeographicCode < BaseMapper
7
- attribute :content, Shale::Type::String
8
- attribute :authority_uri, Shale::Type::Value
9
- attribute :value_uri, Shale::Type::Value
10
- attribute :authority, Shale::Type::String
6
+ class GeographicCode < Lutaml::Model::Serializable
7
+ attribute :content, :string
8
+ attribute :authority_uri, :string
9
+ attribute :value_uri, :string
10
+ attribute :authority, :string
11
11
 
12
12
  xml do
13
13
  root "geographicCode"
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  require_relative "area"
6
6
  require_relative "city_section"
@@ -8,14 +8,14 @@ require_relative "hierarchical_part"
8
8
  require_relative "region"
9
9
 
10
10
  module LocMods
11
- class HierarchicalGeographic < BaseMapper
12
- attribute :authority, Shale::Type::String
13
- attribute :authority_uri, Shale::Type::Value
14
- attribute :value_uri, Shale::Type::Value
11
+ class HierarchicalGeographic < Lutaml::Model::Serializable
12
+ attribute :authority, :string
13
+ attribute :authority_uri, :string
14
+ attribute :value_uri, :string
15
15
  attribute :extra_terrestrial_area, HierarchicalPart, collection: true
16
16
  attribute :continent, HierarchicalPart, collection: true
17
17
  attribute :country, HierarchicalPart, collection: true
18
- attribute :province, Shale::Type::String, collection: true
18
+ attribute :province, :string, collection: true
19
19
  attribute :region, Region, collection: true
20
20
  attribute :state, HierarchicalPart, collection: true
21
21
  attribute :territory, HierarchicalPart, collection: true
@@ -1,15 +1,15 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  module LocMods
6
- class HierarchicalPart < BaseMapper
7
- attribute :content, Shale::Type::String
8
- attribute :level, Shale::Type::Value
9
- attribute :period, Shale::Type::Value
10
- attribute :authority, Shale::Type::String
11
- attribute :authority_uri, Shale::Type::Value
12
- attribute :value_uri, Shale::Type::Value
6
+ class HierarchicalPart < Lutaml::Model::Serializable
7
+ attribute :content, :string
8
+ attribute :level, :string
9
+ attribute :period, :string
10
+ attribute :authority, :string
11
+ attribute :authority_uri, :string
12
+ attribute :value_uri, :string
13
13
 
14
14
  xml do
15
15
  root "territory"
@@ -1,11 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "base_mapper"
3
+ require "lutaml/model"
4
4
 
5
5
  require_relative "copy_information"
6
6
 
7
7
  module LocMods
8
- class HoldingSimple < BaseMapper
8
+ class HoldingSimple < Lutaml::Model::Serializable
9
9
  attribute :copy_information, CopyInformation, collection: true
10
10
 
11
11
  xml do