stanford-mods 3.1.0 → 3.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 22cc1cc8aafefb053ea3856e273e17be7089862160e91d87c483393b60c02aca
4
- data.tar.gz: dbeea673e2c79744215c278ebf2fa73b78de3de7f79602590948bf4ee117b1df
3
+ metadata.gz: 57865ef64be3774919a58f9771243fb7f5090b09867fae098d3fa5ae6e2523cf
4
+ data.tar.gz: 1a09641f450a3739c9c61598ec4ad7a4f1f7b410c804d12df6d50530fb249cb7
5
5
  SHA512:
6
- metadata.gz: fb3d7b5761a6e4811dd85b6d4972ce238e5b507e957d617b5e4a3935bcd3e9f791176d250418a198d2b68a63babfc58dcb9c39d1b8b4fbbbdd01eecc504fa8a2
7
- data.tar.gz: 3fe0f6181376c4cca9618a90e9a03244328f3a93a16ea55f1b5a72c7f842ddd0de8addbfb2da75efa4875bc4c04e4dd73caaad543745faf9461da7928566487e
6
+ metadata.gz: c86f9171a032d1349068b43f6cf1272fbdf4a24419a58f66040132d7de2ea745853707b803608ea3344a137e544eff0e7e291a7b9c3922c09fe0568c68409a5e
7
+ data.tar.gz: d031a52bb328ae6efa0e42e7050fc4f990295509e4ee0a4b4c1f93f51b2412049b16c87091f27b95a02ed95be1278ccd5cbcc11771f59272bf77f82d73bd3bb2
@@ -15,7 +15,7 @@ module Stanford
15
15
  # look for a keyDate and use it if there is one; otherwise pick earliest date
16
16
  # @param [Boolean] ignore_approximate true if approximate dates (per qualifier attribute) should be ignored; false if approximate dates should be included
17
17
  # @return [Integer] publication year as an Integer
18
- # @note for sorting: 5 B.C. => -5; 666 B.C. => -666
18
+ # @note for sorting: 5 BCE => -5; 666 BCE => -666
19
19
  def pub_year_int(fields = [:dateIssued, :dateCreated, :dateCaptured], ignore_approximate: false)
20
20
  fields.each do |date_key|
21
21
  values = mods_ng_xml.origin_info.send(date_key)
@@ -31,7 +31,7 @@ module Stanford
31
31
  # look for a keyDate and use it if there is one; otherwise pick earliest date
32
32
  # @param [Boolean] ignore_approximate true if approximate dates (per qualifier attribute) should be ignored; false if approximate dates should be included
33
33
  # @return [String] single String containing publication year for lexical sorting
34
- # @note for string sorting 5 B.C. = -5 => -995; 6 B.C. => -994, so 6 B.C. sorts before 5 B.C.
34
+ # @note for string sorting 5 BCE = -5 => -995; 6 BCE => -994, so 6 BCE sorts before 5 BCE
35
35
  # @deprecated use pub_year_int
36
36
  def pub_year_sort_str(fields = [:dateIssued, :dateCreated, :dateCaptured], ignore_approximate: false)
37
37
  fields.each do |date_key|
@@ -44,12 +44,12 @@ module Stanford
44
44
  end
45
45
 
46
46
  # return a single string intended for display of pub year
47
- # 0 < year < 1000: add A.D. suffix
48
- # year < 0: add B.C. suffix. ('-5' => '5 B.C.', '700 B.C.' => '700 B.C.')
47
+ # 0 < year < 1000: add CE suffix
48
+ # year < 0: add BCE suffix. ('-5' => '5 BCE', '700 BCE' => '700 BCE')
49
49
  # 195u => 195x
50
50
  # 19uu => 19xx
51
- # '-5' => '5 B.C.'
52
- # '700 B.C.' => '700 B.C.'
51
+ # '-5' => '5 BCE'
52
+ # '700 BCE' => '700 BCE'
53
53
  # '7th century' => '7th century'
54
54
  # date ranges?
55
55
  # prefer dateIssued (any) before dateCreated (any) before dateCaptured (any)
@@ -15,7 +15,7 @@ module Stanford
15
15
  @xml = xml
16
16
  end
17
17
 
18
- # get display value for year, generally an explicit year or "17th century" or "5 B.C." or "1950s" or '845 A.D.'
18
+ # get display value for year, generally an explicit year or "17th century" or "5 BCE" or "1950s" or '845 CE'
19
19
  # @return [String, nil] String value for year if we could parse one, nil otherwise
20
20
  def date_str_for_display
21
21
  date = xml&.as_object&.date
@@ -32,9 +32,9 @@ module Stanford
32
32
  if !self.class.year_int_valid? date.year
33
33
  xml.text
34
34
  elsif date.year < 1
35
- "#{date.year.abs + 1} B.C."
35
+ "#{date.year.abs + 1} BCE"
36
36
  elsif date.year < 1000
37
- "#{date.year} A.D."
37
+ "#{date.year} CE"
38
38
  else
39
39
  date.year.to_s
40
40
  end
@@ -49,7 +49,7 @@ module Stanford
49
49
 
50
50
  # get String sortable value year if we can parse date_str to get a year.
51
51
  # SearchWorks currently uses a string field for pub date sorting; thus so does Spotlight.
52
- # The values returned must *lexically* sort in chronological order, so the B.C. dates are tricky
52
+ # The values returned must *lexically* sort in chronological order, so the BCE dates are tricky
53
53
  # @return [String, nil] String sortable year if we could parse one, nil otherwise
54
54
  # note that these values must *lexically* sort to create a chronological sort.
55
55
  def sortable_year_string_from_date_str
@@ -149,7 +149,7 @@ module Stanford
149
149
  end
150
150
 
151
151
  # Element text reduced to digits and hyphen. Captures date ranges and
152
- # negative (B.C.) dates. Used for comparison/deduping.
152
+ # negative (BCE) dates. Used for comparison/deduping.
153
153
  def base_value
154
154
  if text =~ /^\[?1\d{3}-\d{2}\??\]?$/
155
155
  return text.sub(/(\d{2})(\d{2})-(\d{2})/, '\1\2-\1\3')
@@ -193,16 +193,16 @@ module Stanford
193
193
  when :year
194
194
  year = date.year
195
195
  if year < 1
196
- "#{year.abs + 1} B.C."
197
- # Any dates before the year 1000 are explicitly marked A.D.
196
+ "#{year.abs + 1} BCE"
197
+ # Any dates before the year 1000 are explicitly marked CE
198
198
  elsif year > 1 && year < 1000
199
- "#{year} A.D."
199
+ "#{year} CE"
200
200
  else
201
201
  year.to_s
202
202
  end
203
203
  when :century
204
204
  if date.year.negative?
205
- "#{((date.year / 100).abs + 1).ordinalize} century B.C."
205
+ "#{((date.year / 100).abs + 1).ordinalize} century BCE"
206
206
  else
207
207
  "#{((date.year / 100) + 1).ordinalize} century"
208
208
  end
@@ -211,7 +211,7 @@ module Stanford
211
211
  end
212
212
  end
213
213
 
214
- # Decoded date with "B.C." or "A.D." and qualifier markers. See (outdated):
214
+ # Decoded date with "BCE" or "CE" and qualifier markers. See (outdated):
215
215
  # https://consul.stanford.edu/display/chimera/MODS+display+rules#MODSdisplayrules-3b.%3CoriginInfo%3E
216
216
  def qualified_value
217
217
  qualified_format = case qualifier
@@ -250,7 +250,7 @@ module Stanford
250
250
  @start&.encoding || @stop&.encoding
251
251
  end
252
252
 
253
- # Decoded dates with "B.C." or "A.D." and qualifier markers applied to
253
+ # Decoded dates with "BCE" or "CE" and qualifier markers applied to
254
254
  # the entire range, or individually if dates differ.
255
255
  def qualified_value
256
256
  if @start&.qualifier == @stop&.qualifier
@@ -306,7 +306,7 @@ module Stanford
306
306
 
307
307
  dates = dates - duplicated_ranges
308
308
 
309
- # output formatted dates with qualifiers, A.D./B.C., etc.
309
+ # output formatted dates with qualifiers, CE/BCE, etc.
310
310
  dates.map(&:qualified_value)
311
311
  end
312
312
  end
@@ -1,6 +1,6 @@
1
1
  module Stanford
2
2
  module Mods
3
3
  # this is the Ruby Gem version
4
- VERSION = '3.1.0'.freeze
4
+ VERSION = '3.2.0'.freeze
5
5
  end
6
6
  end
@@ -700,7 +700,7 @@ SEARCHWORKS_IMPRINT_DATA = {
700
700
  <dateIssued encoding="marc" point="start" keyDate="yes">0850</dateIssued>
701
701
  <dateIssued encoding="marc" point="end">1499</dateIssued>
702
702
  <issuance>monographic</issuance>' +
703
- mods_origin_info_end_str => 'California, 850 A.D. - 1499',
703
+ mods_origin_info_end_str => 'California, 850 CE - 1499',
704
704
  # coll rec bd001pp3337
705
705
  # coll rec fn508pj9953
706
706
  mods_origin_info_start_str +
@@ -728,7 +728,7 @@ SEARCHWORKS_IMPRINT_DATA = {
728
728
  <dateCreated point="start" qualifier="approximate" keyDate="yes">850</dateCreated>
729
729
  <dateCreated point="end" qualifier="approximate">1499</dateCreated>
730
730
  <issuance>monographic</issuance>' +
731
- mods_origin_info_end_str => 'England, [ca. 850 A.D. - 1499]',
731
+ mods_origin_info_end_str => 'England, [ca. 850 CE - 1499]',
732
732
  # sc582cv9633
733
733
  mods_origin_info_start_str +
734
734
  '<dateCreated keydate="yes">1314</dateCreated>
@@ -1055,7 +1055,7 @@ SEARCHWORKS_IMPRINT_DATA = {
1055
1055
  <originInfo>
1056
1056
  <dateCreated encoding="edtf" point="start" keyDate="yes">-18</dateCreated>
1057
1057
  <dateCreated encoding="edtf" point="end">-17</dateCreated>' +
1058
- mods_origin_info_end_str => 'Spain; 19 B.C. - 18 B.C.',
1058
+ mods_origin_info_end_str => 'Spain; 19 BCE - 18 BCE',
1059
1059
  # bb408km1389
1060
1060
  mods_origin_info_start_str +
1061
1061
  ' <place supplied="yes">
@@ -1065,7 +1065,7 @@ SEARCHWORKS_IMPRINT_DATA = {
1065
1065
  <originInfo>
1066
1066
  <dateCreated encoding="edtf" point="start" keyDate="yes">-1</dateCreated>
1067
1067
  <dateCreated encoding="edtf" point="end">11</dateCreated>' +
1068
- mods_origin_info_end_str => 'Lyon (France); 2 B.C. - 11 A.D.',
1068
+ mods_origin_info_end_str => 'Lyon (France); 2 BCE - 11 CE',
1069
1069
  # cs470ng8064
1070
1070
  mods_origin_info_start_str +
1071
1071
  ' <place supplied="yes">
@@ -1075,7 +1075,7 @@ SEARCHWORKS_IMPRINT_DATA = {
1075
1075
  <originInfo>
1076
1076
  <dateCreated encoding="edtf" point="start" keyDate="yes">-1</dateCreated>
1077
1077
  <dateCreated encoding="edtf" point="end">0</dateCreated>' +
1078
- mods_origin_info_end_str => 'Antioch (Turkey) (?); 2 B.C. - 1 B.C.',
1078
+ mods_origin_info_end_str => 'Antioch (Turkey) (?); 2 BCE - 1 BCE',
1079
1079
  # vh834jh5059
1080
1080
  mods_origin_info_start_str +
1081
1081
  ' <place supplied="yes">
@@ -1085,7 +1085,7 @@ SEARCHWORKS_IMPRINT_DATA = {
1085
1085
  <originInfo>
1086
1086
  <dateCreated encoding="edtf" point="start" keyDate="yes">13</dateCreated>
1087
1087
  <dateCreated encoding="edtf" point="end">14</dateCreated>' +
1088
- mods_origin_info_end_str => 'Lyon (France); 13 A.D. - 14 A.D.',
1088
+ mods_origin_info_end_str => 'Lyon (France); 13 CE - 14 CE',
1089
1089
  # sk424bh9379
1090
1090
  mods_origin_info_start_str +
1091
1091
  ' <place supplied="yes">
@@ -1095,7 +1095,7 @@ SEARCHWORKS_IMPRINT_DATA = {
1095
1095
  <originInfo>
1096
1096
  <dateCreated encoding="edtf" point="start" keyDate="yes">34</dateCreated>
1097
1097
  <dateCreated encoding="edtf" point="end">35</dateCreated>' +
1098
- mods_origin_info_end_str => 'Alexandria (Egypt); 34 A.D. - 35 A.D.'
1098
+ mods_origin_info_end_str => 'Alexandria (Egypt); 34 CE - 35 CE'
1099
1099
  },
1100
1100
  # rigler
1101
1101
  'rumsey' =>
@@ -1235,7 +1235,7 @@ SEARCHWORKS_IMPRINT_DATA = {
1235
1235
  '<dateIssued encoding="marc" point="start">800</dateIssued>
1236
1236
  <dateIssued encoding="marc" point="end">1899</dateIssued>
1237
1237
  <issuance>monographic</issuance>' +
1238
- mods_origin_info_end_str => '800 A.D. - 1899',
1238
+ mods_origin_info_end_str => '800 CE - 1899',
1239
1239
  # dc882bs3541
1240
1240
  mods_origin_info_start_str +
1241
1241
  '<place>
@@ -1245,7 +1245,7 @@ SEARCHWORKS_IMPRINT_DATA = {
1245
1245
  <dateCreated encoding="w3cdtf" point="end" qualifier="approximate">0799</dateCreated>
1246
1246
  <dateCreated encoding="w3cdtf" keyDate="yes"/>
1247
1247
  <issuance>monographic</issuance>' +
1248
- mods_origin_info_end_str => 'Egypt, [ca. 700 A.D. - 799 A.D.]',
1248
+ mods_origin_info_end_str => 'Egypt, [ca. 700 CE - 799 CE]',
1249
1249
  # hg026ds6978
1250
1250
  mods_origin_info_start_str +
1251
1251
  '<place>
@@ -1253,7 +1253,7 @@ SEARCHWORKS_IMPRINT_DATA = {
1253
1253
  </place>
1254
1254
  <dateCreated encoding="w3cdtf" keyDate="yes">0816</dateCreated>
1255
1255
  <issuance>monographic</issuance>' +
1256
- mods_origin_info_end_str => 'Central Arab lands, 816 A.D.',
1256
+ mods_origin_info_end_str => 'Central Arab lands, 816 CE',
1257
1257
  # ch617yk2621
1258
1258
  mods_origin_info_start_str +
1259
1259
  '<place>
@@ -1273,7 +1273,7 @@ SEARCHWORKS_IMPRINT_DATA = {
1273
1273
  <dateCreated encoding="w3cdtf" point="end" qualifier="approximate">1000</dateCreated>
1274
1274
  <dateCreated encoding="w3cdtf" keyDate="yes"/>
1275
1275
  <issuance>monographic</issuance>' +
1276
- mods_origin_info_end_str => 'Byzantine Empire, [ca. 950 A.D. - 1000]',
1276
+ mods_origin_info_end_str => 'Byzantine Empire, [ca. 950 CE - 1000]',
1277
1277
  # hj537kj5737
1278
1278
  mods_origin_info_start_str +
1279
1279
  '<dateIssued>15th century CE</dateIssued>
@@ -607,7 +607,7 @@ SEARCHWORKS_PUB_DATE_DATA = {
607
607
  mods_origin_info_start_str +
608
608
  '<dateIssued encoding="marc" point="start" keyDate="yes">0850</dateIssued>' +
609
609
  '<dateIssued encoding="marc" point="end">1499</dateIssued>' +
610
- mods_origin_info_end_str => [850, '850 A.D. - 1499'],
610
+ mods_origin_info_end_str => [850, '850 CE - 1499'],
611
611
  # coll rec bd001pp3337
612
612
  mods_origin_info_start_str +
613
613
  '<dateIssued encoding="marc" keyDate="yes" point="start">1000</dateIssued>' +
@@ -637,7 +637,7 @@ SEARCHWORKS_PUB_DATE_DATA = {
637
637
  mods_origin_info_start_str +
638
638
  '<dateCreated point="start" qualifier="approximate" keyDate="yes">850</dateCreated>' +
639
639
  '<dateCreated point="end" qualifier="approximate">1499</dateCreated>' +
640
- mods_origin_info_end_str => [850, '850 A.D. - 1499'],
640
+ mods_origin_info_end_str => [850, '850 CE - 1499'],
641
641
  # sc582cv9633
642
642
  mods_origin_info_start_str +
643
643
  '<dateCreated keydate="yes">1314</dateCreated>' +
@@ -722,12 +722,12 @@ SEARCHWORKS_PUB_DATE_DATA = {
722
722
  mods_origin_info_start_str +
723
723
  '<dateCreated keyDate="yes" point="start" qualifier="approximate">199 B.C.</dateCreated>' +
724
724
  '<dateCreated keyDate="yes" point="end" qualifier="approximate">100 B.C.</dateCreated>' +
725
- mods_origin_info_end_str => [-198, '199 B.C. - 100 B.C.'],
725
+ mods_origin_info_end_str => [-198, '199 BCE - 100 BCE'],
726
726
  # ww728rz0477
727
727
  mods_origin_info_start_str +
728
728
  '<dateCreated keyDate="yes" point="start" qualifier="approximate">211 B.C.</dateCreated>' +
729
729
  '<dateCreated keyDate="yes" point="end" qualifier="approximate">150 B.C.</dateCreated>' +
730
- mods_origin_info_end_str => [-210, '211 B.C. - 150 B.C.']
730
+ mods_origin_info_end_str => [-210, '211 BCE - 150 BCE']
731
731
  },
732
732
  # pcc
733
733
  # peace
@@ -796,27 +796,27 @@ SEARCHWORKS_PUB_DATE_DATA = {
796
796
  mods_origin_info_start_str +
797
797
  '<dateCreated encoding="edtf" point="start" keyDate="yes">-18</dateCreated>' +
798
798
  '<dateCreated encoding="edtf" point="end">-17</dateCreated>' +
799
- mods_origin_info_end_str => [-18, '19 B.C. - 17 B.C.'],
799
+ mods_origin_info_end_str => [-18, '19 BCE - 17 BCE'],
800
800
  # bb408km1389
801
801
  mods_origin_info_start_str +
802
802
  '<dateCreated encoding="edtf" point="start" keyDate="yes">-1</dateCreated>' +
803
803
  '<dateCreated encoding="edtf" point="end">11</dateCreated>' +
804
- mods_origin_info_end_str => [-1, '2 B.C. - 11 A.D.'],
804
+ mods_origin_info_end_str => [-1, '2 BCE - 11 CE'],
805
805
  # cs470ng8064
806
806
  mods_origin_info_start_str +
807
807
  '<dateCreated encoding="edtf" point="start" keyDate="yes">-1</dateCreated>' +
808
808
  '<dateCreated encoding="edtf" point="end">0</dateCreated>' +
809
- mods_origin_info_end_str => [-1, '2 B.C. - 0 A.D.'],
809
+ mods_origin_info_end_str => [-1, '2 BCE - 0 CE'],
810
810
  # vh834jh5059
811
811
  mods_origin_info_start_str +
812
812
  '<dateCreated encoding="edtf" point="start" keyDate="yes">13</dateCreated>' +
813
813
  '<dateCreated encoding="edtf" point="end">14</dateCreated>' +
814
- mods_origin_info_end_str => [13, '13 A.D. - 14 A.D.'],
814
+ mods_origin_info_end_str => [13, '13 CE - 14 CE'],
815
815
  # sk424bh9379
816
816
  mods_origin_info_start_str +
817
817
  '<dateCreated encoding="edtf" point="start" keyDate="yes">34</dateCreated>' +
818
818
  '<dateCreated encoding="edtf" point="end">35</dateCreated>' +
819
- mods_origin_info_end_str => [34, '34 A.D. - 35 A.D.']
819
+ mods_origin_info_end_str => [34, '34 CE - 35 CE']
820
820
  },
821
821
  # rigler
822
822
  # rumsey
@@ -931,23 +931,23 @@ SEARCHWORKS_PUB_DATE_DATA = {
931
931
  mods_origin_info_start_str +
932
932
  '<dateIssued encoding="marc" point="start">800</dateIssued>' +
933
933
  '<dateIssued encoding="marc" point="start">1899</dateIssued>' +
934
- mods_origin_info_end_str => [800, '800 A.D.'],
934
+ mods_origin_info_end_str => [800, '800 CE'],
935
935
  # dc882bs3541
936
936
  mods_origin_info_start_str +
937
937
  '<dateCreated encoding="w3cdtf" point="start" qualifier="approximate" keyDate="yes">0700</dateCreated>' +
938
938
  '<dateCreated encoding="w3cdtf" point="end" qualifier="approximate">0799</dateCreated>' +
939
939
  '<dateCreated encoding="w3cdtf" keyDate="yes"/>' +
940
- mods_origin_info_end_str => [700, '700 A.D. - 799 A.D.'],
940
+ mods_origin_info_end_str => [700, '700 CE - 799 CE'],
941
941
  # hg026ds6978
942
942
  mods_origin_info_start_str +
943
943
  '<dateCreated encoding="w3cdtf" keyDate="yes">0816</dateCreated>' +
944
- mods_origin_info_end_str => [816, '816 A.D.'],
944
+ mods_origin_info_end_str => [816, '816 CE'],
945
945
  # ct437ht0445
946
946
  mods_origin_info_start_str +
947
947
  '<dateCreated encoding="w3cdtf" keyDate="yes" point="start" qualifier="approximate">0900</dateCreated>' +
948
948
  '<dateCreated encoding="w3cdtf" point="end" qualifier="approximate">0999</dateCreated>' +
949
949
  '<dateCreated encoding="w3cdtf" keyDate="yes"/>' +
950
- mods_origin_info_end_str => [900, '900 A.D. - 999 A.D.'],
950
+ mods_origin_info_end_str => [900, '900 CE - 999 CE'],
951
951
  # ch617yk2621
952
952
  mods_origin_info_start_str +
953
953
  '<dateCreated encoding="w3cdtf" keyDate="yes" point="start" qualifier="approximate">1000</dateCreated>' +
@@ -959,7 +959,7 @@ SEARCHWORKS_PUB_DATE_DATA = {
959
959
  '<dateCreated encoding="w3cdtf" keyDate="yes" point="start" qualifier="approximate">0950</dateCreated>' +
960
960
  '<dateCreated encoding="w3cdtf" point="end" qualifier="approximate">1000</dateCreated>' +
961
961
  '<dateCreated encoding="w3cdtf" keyDate="yes"/>' +
962
- mods_origin_info_end_str => [950, '950 A.D. - 1000'],
962
+ mods_origin_info_end_str => [950, '950 CE - 1000'],
963
963
  # hj537kj5737
964
964
  mods_origin_info_start_str +
965
965
  '<dateIssued>15th century CE</dateIssued>' +
@@ -156,7 +156,7 @@ SPOTLIGHT_PUB_DATE_DATA = {
156
156
  mods_origin_info_start_str +
157
157
  '<dateIssued encoding="marc" point="start" keyDate="yes">0850</dateIssued>' +
158
158
  '<dateIssued encoding="marc" point="end">1499</dateIssued>' +
159
- mods_origin_info_end_str => ['0850', '850 A.D.'],
159
+ mods_origin_info_end_str => ['0850', '850 CE'],
160
160
  # nc881qb8504
161
161
  mods_origin_info_start_str +
162
162
  '<dateCreated point="start" qualifier="approximate" keyDate="yes">1000</dateCreated>' +
@@ -236,12 +236,12 @@ SPOTLIGHT_PUB_DATE_DATA = {
236
236
  mods_origin_info_start_str +
237
237
  '<dateCreated keyDate="yes" point="start" qualifier="approximate">200 B.C.</dateCreated>' +
238
238
  '<dateCreated keyDate="yes" point="end" qualifier="approximate">180 B.C.</dateCreated>' +
239
- mods_origin_info_end_str => ['-801', '200 B.C.'],
239
+ mods_origin_info_end_str => ['-801', '200 BCE'],
240
240
  # ww728rz0477
241
241
  mods_origin_info_start_str +
242
242
  '<dateCreated keyDate="yes" point="start" qualifier="approximate">211 B.C.</dateCreated>' +
243
243
  '<dateCreated keyDate="yes" point="end" qualifier="approximate">150 B.C.</dateCreated>' +
244
- mods_origin_info_end_str => ['-790', '211 B.C.']
244
+ mods_origin_info_end_str => ['-790', '211 BCE']
245
245
  },
246
246
  'renaissance' =>
247
247
  { # key is mods_xml; values = [pub date sortable facet value, pub date single string facet value]
data/spec/imprint_spec.rb CHANGED
@@ -108,7 +108,7 @@ describe Stanford::Mods::Imprint do
108
108
  it 'presents centuries' do
109
109
  smods_rec.from_str <<-XML
110
110
  #{mods_origin_info_start_str}
111
- <dateIssued encoding="edtf">18XX</dateIssued>
111
+ <dateIssued encoding="edtf">18xx</dateIssued>
112
112
  #{mods_origin_info_end_str}
113
113
  XML
114
114
 
@@ -120,7 +120,7 @@ describe Stanford::Mods::Imprint do
120
120
  it 'presents decades' do
121
121
  smods_rec.from_str <<-XML
122
122
  #{mods_origin_info_start_str}
123
- <dateIssued encoding="edtf">147X</dateIssued>
123
+ <dateIssued encoding="edtf">147x</dateIssued>
124
124
  #{mods_origin_info_end_str}
125
125
  XML
126
126
 
@@ -129,7 +129,7 @@ describe Stanford::Mods::Imprint do
129
129
  expect(updated_element).to eq '1470s'
130
130
  end
131
131
 
132
- it 'adds A.D. to early years' do
132
+ it 'adds CE to early years' do
133
133
  smods_rec.from_str <<-XML
134
134
  #{mods_origin_info_start_str}
135
135
  <dateIssued encoding="edtf">988</dateIssued>
@@ -138,10 +138,10 @@ describe Stanford::Mods::Imprint do
138
138
 
139
139
  imp = stanford_mods_imprint(smods_rec)
140
140
  updated_element = imp.send(:date_str)
141
- expect(updated_element).to eq '988 A.D.'
141
+ expect(updated_element).to eq '988 CE'
142
142
  end
143
143
 
144
- it 'adds B.C. to B.C. years' do
144
+ it 'adds BCE to BCE years' do
145
145
  smods_rec.from_str <<-XML
146
146
  #{mods_origin_info_start_str}
147
147
  <dateIssued encoding="edtf">-5</dateIssued>
@@ -150,10 +150,10 @@ describe Stanford::Mods::Imprint do
150
150
 
151
151
  imp = stanford_mods_imprint(smods_rec)
152
152
  updated_element = imp.send(:date_str)
153
- expect(updated_element).to eq '6 B.C.'
153
+ expect(updated_element).to eq '6 BCE'
154
154
  end
155
155
 
156
- it 'has special handling for the year 0 (1 B.C.)' do
156
+ it 'has special handling for the year 0 (1 BCE)' do
157
157
  smods_rec.from_str <<-XML
158
158
  #{mods_origin_info_start_str}
159
159
  <dateIssued>0</dateIssued>
@@ -162,7 +162,7 @@ describe Stanford::Mods::Imprint do
162
162
 
163
163
  imp = stanford_mods_imprint(smods_rec)
164
164
  updated_element = imp.send(:date_str)
165
- expect(updated_element).to eq '1 B.C.'
165
+ expect(updated_element).to eq '1 BCE'
166
166
  end
167
167
 
168
168
  it 'presents years + months' do
@@ -211,7 +211,7 @@ describe Stanford::Mods::Imprint do
211
211
 
212
212
  imp = stanford_mods_imprint(smods_rec)
213
213
  updated_element = imp.send(:date_str)
214
- expect(updated_element).to eq '10th century B.C.'
214
+ expect(updated_element).to eq '10th century BCE'
215
215
  end
216
216
 
217
217
  it 'handles the approximate qualifier' do
@@ -235,13 +235,13 @@ describe Stanford::Mods::Imprint do
235
235
 
236
236
  imp = stanford_mods_imprint(smods_rec)
237
237
  updated_element = imp.send(:date_str)
238
- expect(updated_element).to eq '[322 A.D.?]'
238
+ expect(updated_element).to eq '[322 CE?]'
239
239
  end
240
240
 
241
241
  it 'handles the inferred qualifier' do
242
242
  smods_rec.from_str <<-XML
243
243
  #{mods_origin_info_start_str}
244
- <dateIssued encoding="edtf" qualifier="inferred">190X</dateIssued>
244
+ <dateIssued encoding="edtf" qualifier="inferred">190x</dateIssued>
245
245
  #{mods_origin_info_end_str}
246
246
  XML
247
247
 
@@ -89,7 +89,7 @@ describe "computations from /originInfo field" do
89
89
  context '#pub_year_int' do
90
90
  it_behaves_like "single pub date value", :pub_year_int, 0
91
91
  # papyri - the only Spotlight data with BC dates
92
- it '-200 for 200 B.C.' do
92
+ it '-199 for 200 B.C.' do
93
93
  # hd778hw9236
94
94
  mods_str = mods_origin_info_start_str +
95
95
  '<dateCreated keyDate="yes" point="start" qualifier="approximate">200 B.C.</dateCreated>' +
@@ -98,7 +98,7 @@ describe "computations from /originInfo field" do
98
98
  smods_rec.from_str(mods_str)
99
99
  expect(smods_rec.pub_year_int).to eq(-199)
100
100
  end
101
- it '-211 for 211 B.C.' do
101
+ it '-210 for 211 B.C.' do
102
102
  # ww728rz0477
103
103
  mods_str = mods_origin_info_start_str +
104
104
  '<dateCreated keyDate="yes" point="start" qualifier="approximate">211 B.C.</dateCreated>' +
@@ -16,7 +16,7 @@ Gem::Specification.new do |gem|
16
16
  gem.test_files = gem.files.grep(%r{^spec/})
17
17
  gem.require_paths = ["lib"]
18
18
 
19
- gem.add_dependency 'mods', '~> 3.0', '>= 3.0.1'
19
+ gem.add_dependency 'mods', '~> 3.0', '>= 3.0.3'
20
20
  # active_support for .ordinalize, eg. 1 -> 1st, 2 -> 2nd for centuries
21
21
  gem.add_dependency 'activesupport'
22
22
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stanford-mods
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.0
4
+ version: 3.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Naomi Dushay
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2022-05-23 00:00:00.000000000 Z
12
+ date: 2022-07-14 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: mods
@@ -20,7 +20,7 @@ dependencies:
20
20
  version: '3.0'
21
21
  - - ">="
22
22
  - !ruby/object:Gem::Version
23
- version: 3.0.1
23
+ version: 3.0.3
24
24
  type: :runtime
25
25
  prerelease: false
26
26
  version_requirements: !ruby/object:Gem::Requirement
@@ -30,7 +30,7 @@ dependencies:
30
30
  version: '3.0'
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 3.0.1
33
+ version: 3.0.3
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: activesupport
36
36
  requirement: !ruby/object:Gem::Requirement
@@ -217,7 +217,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
217
217
  - !ruby/object:Gem::Version
218
218
  version: '0'
219
219
  requirements: []
220
- rubygems_version: 3.2.32
220
+ rubygems_version: 3.3.7
221
221
  signing_key:
222
222
  specification_version: 4
223
223
  summary: Stanford specific wrangling of MODS metadata