dwc_agent 1.4.12 → 1.5.0.4

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f0eca9af87fc999b9d1e2313ea88df6bee1aec54a080e46fc8245abd3c41d615
4
- data.tar.gz: 38f98d4fc7b30a2f80521d7d064666f5da9f64889af7f08b15a852619d1ab3be
3
+ metadata.gz: cef90f0884c7b59a1c3aae50198ef043a282127ef4b883b326a0a4b1bfdcd337
4
+ data.tar.gz: a19a07304fdd82ddd1259080a503fea4d13d5d44b60b6edb651e799a5c473525
5
5
  SHA512:
6
- metadata.gz: 43dafd9ab3d3cf8513a579614d56429551803f15b39a814f25076d09d023f335c74fb8d22aaed49bbc2318587963972d74f035951221d5b12057fc7a0691ae57
7
- data.tar.gz: 35d99c98fd8d7334e5cdac7bf781f0ad85adb6fd0684ffa6c9c058264ade10d2a6b0b544ceec4c52ca64192833c3edcb896ed29e8f45c4df970680b6db719eaa
6
+ metadata.gz: bcbebc3c10b85a5a86d9d67b8dbcee31164b64c46e8626f26378b36df7a2493d0f96a527423910a8748bc45fee7a9fd6ac8633392d78882bf43ff55902e2781d
7
+ data.tar.gz: 2f7e75e44b207fc72f6c90e413ac047337362494122cfe9ce976f993fe48bd9a0407c47ff56c5991c591c1e3562e999a88cfedcb869bb2712bed787b4cd17799
@@ -16,7 +16,7 @@ module DwcAgent
16
16
  # @param parsed_namae [Object] the namae object
17
17
  # @return [Hash] the given, family hash
18
18
  def clean(parsed_namae)
19
- blank_name = { given: nil, family: nil, particle: nil }
19
+ blank_name = { title: nil, appellation: nil, given: nil, particle: nil, family: nil, suffix: nil }
20
20
 
21
21
  if parsed_namae.family && FAMILY_BLACKLIST.any?{ |s| s.casecmp(parsed_namae.family) == 0 }
22
22
  return blank_name
@@ -30,7 +30,7 @@ module DwcAgent
30
30
  return blank_name
31
31
  end
32
32
 
33
- if parsed_namae.given && parsed_namae.given.length > 25
33
+ if parsed_namae.given && parsed_namae.given.length > 35
34
34
  return blank_name
35
35
  end
36
36
 
@@ -84,6 +84,9 @@ module DwcAgent
84
84
  family = parsed_namae.family.gsub(/\.\z/, '').strip rescue nil
85
85
  given = parsed_namae.given.strip rescue nil
86
86
  particle = parsed_namae.particle.strip rescue nil
87
+ appellation = parsed_namae.appellation.strip rescue nil
88
+ suffix = parsed_namae.suffix.strip rescue nil
89
+ title = parsed_namae.title.strip rescue nil
87
90
 
88
91
  if !given.nil? && given.match(/[A-Z]\.[A-Za-z]{2,}/)
89
92
  given = given.gsub(".", ". ").strip
@@ -123,7 +126,7 @@ module DwcAgent
123
126
  return blank_name
124
127
  end
125
128
 
126
- { given: given, family: family, particle: particle }
129
+ { title: title, appellation: appellation, given: given, particle: particle, family: family, suffix: suffix }
127
130
  end
128
131
 
129
132
  end
@@ -49,7 +49,7 @@ module DwcAgent
49
49
  \d+\s+(?i:Nov|Novemb(er|re))\.?\b|
50
50
  \d+\s+(?i:Dec|D(e|é)cemb(er|re))\.?\b|
51
51
  \b[.-–,;:/]?\s*(?i:Alabama|Alaska|Arizona|Arkansas|California|Colorado|Connecticut|Delaware|Evergreen|Florida|Georgia|Hawaii|Idaho|Illinois|Indiana|Iowa|Kansas|Kentucky|Louisiana|Maine|Maryland|Massachusetts|Michigan|Minnesota|Mississippi|Missouri|Montana|Nebraska|Nevada|New\s+Hampshire|New\s+Jersey|New\s+Mexico|New\s+York|North\s+Carolina|North\s+Dakota|Ohio|Oklahoma|Oregon|Pennsylvania|Portland|Rhode\s+Island|South\s+Carolina|South\s+Dakota|St\s+Petersburg|Tennessee|Texas|Utah|Vermont|Virginia|Washington|West\s+Virginia|Wisconsin|Wyoming)\s+(?i:State)\s*\b|
52
- \b[.,;:/]?\s*?(?i:Afghanistan|Åland Islands|Albania|Algeria|American Samoa|Andorra|Angola|Anguilla|Antarctica|Antigua and Barbuda|Argentina|Armenia|Aruba|Australia|Austria|Azerbaijan|Bahamas|Bahrain|Bangladesh|Barbados|Belarus|Belgium|Belize|Benin|Bermuda|Bhutan|Bolivia \(Plurinational State of\)|Bonaire, Sint Eustatius and Saba|Bosnia and Herzegovina|Botswana|Bouvet Island|Brazil|British Indian Ocean Territory|Brunei Darussalam|Bulgaria|Burkina Faso|Burundi|Cabo Verde|Cambodia|Cameroon|Canada|Cayman Islands|Central African Republic|Chad|Chile|China|Christmas Island|Cocos \(Keeling\) Islands|Colombia|Comoros|Congo|Congo \(Democratic Republic of the\)|Cook Islands|Costa Rica|Côte d'Ivoire|Croatia|Cuba|Curaçao|Cyprus|Czechia|Denmark|Djibouti|Dominica|Dominican Republic|Ecuador|Egypt|El Salvador|Equatorial Guinea|Eritrea|Estonia|Ethiopia|Falkland Islands \(Malvinas\)|Faroe Islands|Fiji|Finland|France|French Guiana|French Polynesia|French Southern Territories|Gabon|Gambia|Georgia|Germany|Ghana|Gibraltar|Greece|Greenland|Grenada|Guadeloupe|Guam|Guatemala|Guernsey|Guinea|Guinea-Bissau|Guyana|Haiti|Heard Island and McDonald Islands|Holy See|Honduras|Hong Kong|Hungary|Iceland|India|Indonesia|Iran \(Islamic Republic of\)|Iraq|Ireland|Isle of Man|Israel|Italy|Jamaica|Japan|Jersey|Jordan|Kazakhstan|Kenya|Kiribati|Korea \(Democratic People\'s Republic of\)|Korea \(Republic of\)|Kuwait|Kyrgyzstan|Lao People\'s Democratic Republic|Latvia|Lebanon|Lesotho|Liberia|Libya|Liechtenstein|Lithuania|Luxembourg|Macao|Macedonia (the former Yugoslav Republic of)|Madagascar|Malawi|Malaysia|Maldives|Mali|Malta|Marshall Islands|Martinique|Mauritania|Mauritius|Mayotte|Mexico|Micronesia \(Federated States of\)|Moldova \(Republic of\)|Monaco|Mongolia|Montenegro|Montserrat|Morocco|Mozambique|Myanmar|Namibia|Nauru|Nepal|Netherlands|New Caledonia|New Zealand|Nicaragua|Niger|Nigeria|Niue|Norfolk Island|Northern Mariana Islands|Norway|Oman|Pakistan|Palau|Palestine, State of|Panama|Papua New Guinea|Paraguay|Peru|Philippines|Pitcairn|Poland|Portugal|Puerto Rico|Qatar|Réunion|Romania|Russian Federation|Rwanda|Saint Barthélemy|Saint Helena, Ascension and Tristan da Cunha|Saint Kitts and Nevis|Saint Lucia|Saint Martin \(French part\)|Saint Pierre and Miquelon|Saint Vincent and the Grenadines|Samoa|San Marino|Sao Tome and Principe|Saudi Arabia|Senegal|Serbia|Seychelles|Sierra Leone|Singapore|Sint Maarten \(Dutch part\)|Slovakia|Slovenia|Solomon Islands|Somalia|South Africa|South Georgia and the South Sandwich Islands|South Sudan|Spain|Sri Lanka|Sudan|Suriname|Svalbard and Jan Mayen|Swaziland|Sweden|Switzerland|Syrian Arab Republic|Taiwan|Tajikistan|Tanzania, United Republic of|Thailand|Timor-Leste|Togo|Tokelau|Tonga|Trinidad and Tobago|Tunisia|Turkey|Turkmenistan|Turks and Caicos Islands|Tuvalu|Uganda|Ukraine|United Arab Emirates|United Kingdom of Great Britain and Northern Ireland|United States of America|United States Minor Outlying Islands|Uruguay|Uzbekistan|Vanuatu|Venezuela \(Bolivarian Republic of\)|Viet Nam|Virgin Islands \(British\)|Virgin Islands \(U\.S\.\)|Wallis and Futuna|Western Sahara|Yemen|Zambia|Zimbabwe)|
52
+ \b[.,;:/]?\s*?(?i:Afghanistan|Åland Islands|Albania|Algeria|American Samoa|Andorra|Angola|Anguilla|Antarctica|Antigua and Barbuda|Argentina|Armenia|Aruba|Australia|Austria|Azerbaijan|Bahamas|Bahrain|Bangladesh|Barbados|Belarus|Belgium|Belize|Benin|Bermuda|Bhutan|Bolivia \(Plurinational State of\)|Bonaire, Sint Eustatius and Saba|Bosnia and Herzegovina|Botswana|Bouvet Island|Brazil|British Indian Ocean Territory|Brunei Darussalam|Bulgaria|Burkina Faso|Burundi|Cabo Verde|Cambodia|Cameroon|Canada|Cayman Islands|Central African Republic|Chad|Chile|China|Christmas Island|Cocos \(Keeling\) Islands|Colombia|Comoros|Congo|Congo \(Democratic Republic of the\)|Cook Islands|Costa Rica|Côte d'Ivoire|Croatia|Cuba|Curaçao|Cyprus|Czechia|Denmark|Djibouti|Dominica|Dominican Republic|Ecuador|Egypt|El Salvador|Equatorial Guinea|Eritrea|Estonia|Ethiopia|Falkland Islands \(Malvinas\)|Faroe Islands|Fiji|Finland|France|French Guiana|French Polynesia|French Southern Territories|Gabon|Gambia|Georgia|Germany|Ghana|Gibraltar|Greece|Greenland|Grenada|Guadeloupe|Guam|Guatemala|Guernsey|Guinea|Guinea-Bissau|Guyana|Haiti|Heard Island and McDonald Islands|Holy See|Honduras|Hong Kong|Hungary|Iceland|India|Indonesia|Iran \(Islamic Republic of\)|Iraq|Ireland|Isle of Man|Israel|Italy|Jamaica|Japan|Jersey|Jordan|Kazakhstan|Kenya|Kiribati|Korea \(Democratic People\'s Republic of\)|Korea \(Republic of\)|Kuwait|Kyrgyzstan|Lao People\'s Democratic Republic|Latvia|Lebanon|Lesotho|Liberia|Libya|Liechtenstein|Lithuania|Luxembourg|Macao|Macedonia (the former Yugoslav Republic of)|Madagascar|Malawi|Malaysia|Maldives|Mali|Malta|Marshall Islands|Martinique|Mauritania|Mauritius|Mayotte|Mexico|Micronesia \(Federated States of\)|Moldova \(Republic of\)|Monaco|Mongolia|Montenegro|Montserrat|Morocco|Mozambique|Myanmar|Namibia|Nauru|Nepal|Netherlands|New Caledonia|New Zealand|Nicaragua|Niger|Nigeria|Niue|Norfolk Island|Northern Mariana Islands|Norway|Oman|Pakistan|Palau|Palestine, State of|Panama|Papua New Guinea|Paraguay|Peru|Philippines|Pitcairn|Poland|Portugal|Puerto Rico|Qatar|Réunion|Romania|Russian Federation|Rwanda|Saint Barthélemy|Saint Helena, Ascension and Tristan da Cunha|Saint Kitts and Nevis|Saint Lucia|Saint Martin \(French part\)|Saint Pierre and Miquelon|Saint Vincent and the Grenadines|Samoa|San Marino|Sao Tome and Principe|Saudi Arabia|Senegal|Serbia|Seychelles|Sierra Leone|Singapore|Sint Maarten \(Dutch part\)|Slovakia|Slovenia|Solomon Islands|Somalia|South Africa|South Georgia and the South Sandwich Islands|South Sudan|Spain|Sri Lanka|Sudan|Suriname|Svalbard and Jan Mayen|Swaziland|Sweden|Switzerland|Syrian Arab Republic|Taiwan|Tajikistan|Tanzania, United Republic of|Thailand|Timor-Leste|Togo|Tokelau|Tonga|Trinidad and Tobago|Tunisia|Turkey|Turkmenistan|Turks and Caicos Islands|Tuvalu|Uganda|Ukraine|United Arab Emirates|United Kingdom of Great Britain and Northern Ireland|United States of America|United States Minor Outlying Islands|Uruguay|Uzbekistan|Vanuatu|Venezuela \(Bolivarian Republic of\)|Viet Nam|Virgin Islands \(British\)|Virgin Islands \(U\.S\.\)|Wallis and Futuna|Western Sahara|Yemen|Zambia|Zimbabwe)\b|
53
53
  (?i:autres?\s+de|probab|likely|possibl(e|y)|doubtful)|
54
54
  \b\s*(?i:maybe)\s*\b|
55
55
  \b\s*(?i:prob)\.\s*\b|
@@ -61,7 +61,7 @@ module DwcAgent
61
61
  (?i:see\s+notes?\s*(inside)?)|
62
62
  (?i:see\s+letter\s+enclosed)|
63
63
  (?i:(by)?\s+correspondance)|
64
- (?i:pers\.?\s+comm\.?)|
64
+ (?i:pers\.?\s*comm\.?)|
65
65
  (?i:crossed\s+out)|
66
66
  \(?(?i:source)\(?|
67
67
  (?i:according\s+to)|
@@ -113,19 +113,22 @@ module DwcAgent
113
113
  [–|ǀ∣|│&+\/;:]|
114
114
  \s+-\s+|
115
115
  \s+a\.\s+|
116
- \b(e|y|i|en|et|or|per|for)\s*\b|
116
+ \b(con|e|y|i|en|et|or|per|for)\s*\b|
117
117
  \b(?i:and|with)\s*\b|
118
118
  \b(?i:annotated(\s+by)?)\s*\b|
119
119
  \b(?i:coll\.)\s*\b|
120
120
  \b(?i:communicate?d(\s+to)?)\s*\b|
121
121
  \b(?i:conf\.?(\s+by)?|confirmed(\s+by)?)\s*\b|
122
+ \b(?i:confirmada)(\s+por)?\s*\b|
122
123
  \b(?i:checked?(\s+by)?)\s*\b|
123
124
  \b(?i:det\.?(\s+by)?)\s*\b|
124
125
  \b(?i:dupl?\.?(\s+by)?|duplicate(\s+by)?)\s*\b|
125
126
  \b(?i:ex\.?(\s+by)?|examined(\s+by)?)\s*\b|
126
127
  \b(?i:in?dentified(\s+by)?)\s*\b|
127
128
  \b(?i:in\s+part(\s+by)?)\s*\b|
129
+ \b(?i:och)\s*\b|
128
130
  \b(?i:prep\.?\s+(?i:by)?)\s*\b|
131
+ \b(?i:purchased?)(\s+by)?\s*\b|
129
132
  \b(?i:redet\.?(\s+by?)?)\s*\b|
130
133
  \b(?i:reidentified(\s+by)?)\s*\b|
131
134
  \b(?i:stet)\s*\b|
@@ -159,16 +162,18 @@ module DwcAgent
159
162
  }
160
163
 
161
164
  PHRASE_SUBS = {
162
- 'dr\.' => 'Dr. ',
163
- 'mr\.' => 'Mr. ',
164
- 'mrs\.' => 'Mrs. ',
165
- 'ms\.' => 'Ms. ',
166
- 'prof\.' => 'Prof. ',
167
- '\, ph\.d\.' => ' Ph.D.',
168
- '\, bro\.' => ' Bro.',
169
- ' jr\.,' => ' Jr.;',
165
+ ', ph.d.' => ' Ph.D.',
166
+ ', Ph.D.' => ' Ph.D.',
167
+ ', bro.' => ' Bro.',
168
+ ' jr.,' => ' Jr.;',
170
169
  ' jr,' => ' Jr.;',
171
- '-Jr' => ' Jr.'
170
+ '-jr' => ' Jr.',
171
+ '-Jr' => ' Jr.',
172
+ ', Jr.' => ' Jr.',
173
+ ',Jr.' => ' Jr.',
174
+ ', Sr.' => ' Sr.',
175
+ ',Sr.' => ' Sr.'
176
+
172
177
  }
173
178
 
174
179
  COMPLEX_SEPARATORS = %r{
@@ -274,4 +279,8 @@ module DwcAgent
274
279
 
275
280
  TITLE = /\s*\b(sir|count(ess)?|colonel|(gen|adm|col|maj|capt|cmdr|lt|sgt|cpl|pvt|prof|dr|md|ph\.?d|rev|mme|abbé|ptre|bro|esq)\.?|docteur|father|cantor|vicar|père|pastor|rabbi|reverend|pere|soeur|sister|professor)(\s+|$)/i
276
281
 
282
+ APPELLATION = /\s*\b((mrs?|ms|fr|hr)\.?|miss|herr|frau)(\s+|$)/i
283
+
284
+ SUFFIX = /\s*\b(JR|Jr|jr|SR|Sr|sr|[IVX]{2,})(\.|\b)/
285
+
277
286
  end
@@ -11,14 +11,16 @@ module DwcAgent
11
11
  options = {
12
12
  prefer_comma_as_separator: true,
13
13
  separator: SPLIT_BY,
14
- title: TITLE
14
+ title: TITLE,
15
+ appellation: APPELLATION,
16
+ suffix: SUFFIX
15
17
  }
16
18
  @namae = Namae::Parser.new(options)
17
19
 
18
20
  @strip_out_regex = Regexp.new STRIP_OUT.to_s
19
21
  @residual_terminators_regex = Regexp.new SPLIT_BY.to_s + %r{\s*\z}.to_s
20
22
  @char_subs_regex = Regexp.new [CHAR_SUBS.keys.join].to_s
21
- @phrase_subs_regex = Regexp.new((PHRASE_SUBS.keys.join('|')).to_s, Regexp::IGNORECASE)
23
+ @phrase_subs_regex = Regexp.new PHRASE_SUBS.keys.map{|a| Regexp.escape a }.join('|').to_s
22
24
  @complex_separators_regex = Regexp.new COMPLEX_SEPARATORS.to_s
23
25
  @add_separators_regex = Regexp.new %r{(\S{1}\.)([[:alpha:]]{2,})}.to_s
24
26
  end
@@ -2,9 +2,9 @@ module DwcAgent
2
2
  class Version
3
3
 
4
4
  MAJOR = 1
5
- MINOR = 4
6
- PATCH = 12
7
- BUILD = nil
5
+ MINOR = 5
6
+ PATCH = 0
7
+ BUILD = 4
8
8
 
9
9
  def self.version
10
10
  [MAJOR, MINOR, PATCH, BUILD].compact.join('.').freeze
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dwc_agent
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.12
4
+ version: 1.5.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - David P. Shorthouse
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-08-05 00:00:00.000000000 Z
11
+ date: 2020-08-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: namae