xsd 2.7.3 → 2.7.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c9c91e0e5bbb59fb9f8350cfc63af850aaf6aa7bdb7512c3735d297743838075
4
- data.tar.gz: 32c0ba7d54f5296ba378bfdc88a2f3f42d7c83c1e7101b9c59fdae1e7d3d72c0
3
+ metadata.gz: 153a03f87abecaab17a642bd1d822e102609c44f30a45bfdbd0ca4a52c6dc567
4
+ data.tar.gz: 7b7e50fb7e6915c7eb13a03d9d512b73e15e1d0abbbab5400e1f40703343ae2a
5
5
  SHA512:
6
- metadata.gz: 6ae295c6457d02e0ffbb3bd06e8ad69469f779f9d15694694942e7cd6099d07d3865b8ca77674b94d00ed53bb564ffa73a9e7f32744972ea6393c50e88cd2b4e
7
- data.tar.gz: c5b1a9aca305db447abd51117de1fbaee05da4bc3137b08a9f8bf775d3fe33fd56d1a25871a03bfaad41cd476e575bb09aaa4acc14c6c91c21d0cb8e81d72513
6
+ metadata.gz: 30c85bd21b725a01724e0c6b3239593d50a270a8f98c1c66af52a883a08d3f0fa91876c2f6ca4edf159ab4d6ee4eba4fbaec903cc967f3fefda757234379c6cb
7
+ data.tar.gz: e567f9b119ac0528ef8b91f4b0ef5619e0b5c008e3f6652a589e37ba85181ddd596271597819059181ec36f8adaee91b04c5aa2f6998a67e38c228da8ea41859
data/CHANGELOG.md CHANGED
@@ -1,8 +1,9 @@
1
- ## [2.7.3] - 2024-04-21
1
+ ## [2.7.5] - 2024-04-22
2
2
 
3
3
  - Return <xs:any> and <xs:anyAttribute> from collect_elements/collect_attributes
4
4
  - Make multiple_allowed? available on all definitions with max occurs
5
5
  - Don't return duplicated attributes from complex restriction
6
+ - Fix base_complex_type on restriction without base
6
7
 
7
8
  ## [2.6.3] - 2024-04-13
8
9
 
@@ -343,7 +343,7 @@ module XSD
343
343
  name = link[:property] ? send(link[:property]) : nil
344
344
  if name
345
345
  return @cache[method] = object_by_name(link[:type], name)
346
- elsif is_a?(Restriction) && method == :base_simple_type
346
+ elsif is_a?(Restriction) && %i[base_simple_type base_complex_type].include?(method)
347
347
  # handle restriction without base
348
348
  return nil
349
349
  end
@@ -120,7 +120,13 @@ module XSD
120
120
  restriction = simple_content.restriction
121
121
  if restriction
122
122
  if restriction.base
123
- restriction.base_simple_type&.data_type || strip_prefix(restriction.base)
123
+ if restriction.base_simple_type
124
+ restriction.base_simple_type.data_type
125
+ elsif restriction.base_complex_type
126
+ restriction.base_complex_type.data_type
127
+ else
128
+ strip_prefix(restriction.base)
129
+ end
124
130
  else
125
131
  restriction.simple_type&.data_type
126
132
  end
data/lib/xsd/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module XSD
4
- VERSION = '2.7.3'
4
+ VERSION = '2.7.5'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xsd
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.7.3
4
+ version: 2.7.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - d.arkhipov
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-04-20 00:00:00.000000000 Z
11
+ date: 2024-04-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: builder